synapse-react-client
Version:
[](https://badge.fury.io/js/synapse-react-client) [](https://github.com/prettier/prettie
293 lines (292 loc) • 7.64 kB
JavaScript
import { isTypeViaConcreteTypeFactory as t } from "../types/IsType.js";
import { EntityType as e } from "@sage-bionetworks/synapse-client";
import { TABLE_CONCRETE_TYPE_VALUES as _, VIEW_CONCRETE_TYPE_VALUES as f, TABLE_ENTITY_CONCRETE_TYPE_VALUE as n, SUBMISSION_VIEW_CONCRETE_TYPE_VALUE as w, MATERIALIZED_VIEW_CONCRETE_TYPE_VALUE as c, DATASET_CONCRETE_TYPE_VALUE as l, DATASET_COLLECTION_CONCRETE_TYPE_VALUE as u, ENTITY_VIEW_CONCRETE_TYPE_VALUE as E, VIRTUAL_TABLE_CONCRETE_TYPE_VALUE as T, FILE_ENTITY_CONCRETE_TYPE_VALUE as b, PROJECT_CONCRETE_TYPE_VALUE as k, FOLDER_CONCRETE_TYPE_VALUE as g, DOCKER_REPOSITORY_CONCRETE_TYPE_VALUE as C, LINK_CONCRETE_TYPE_VALUE as v, ENTITY_VIEW_TYPE_MASK_FILE as p } from "@sage-bionetworks/synapse-types";
function P(r) {
return r.node_type ? r.node_type : r.type === void 0 ? e.project : m(r.type);
}
function S(r) {
switch (r) {
case e.project:
case e.folder:
return !0;
case e.link:
case e.dockerrepo:
case e.file:
case e.recordset:
case e.table:
case e.submissionview:
case e.entityview:
case e.dataset:
case e.datasetcollection:
case e.materializedview:
case e.virtualtable:
return !1;
default:
throw new Error(`Unknown entity type: ${r}`);
}
}
function U(r) {
switch (r) {
case e.project:
case e.folder:
case e.link:
case e.dockerrepo:
case e.file:
case e.recordset:
return !1;
case e.table:
case e.submissionview:
case e.entityview:
case e.dataset:
case e.datasetcollection:
case e.materializedview:
case e.virtualtable:
return !0;
default:
throw new Error(`Unknown entity type: ${r}`);
}
}
function Y(r) {
switch (r) {
case e.project:
return "Project";
case e.folder:
return "Folder";
case e.file:
return "File";
case e.table:
return "Table";
case e.link:
return "Link";
case e.entityview:
return "View";
case e.dockerrepo:
return "Docker Repository";
case e.submissionview:
return "Submission View";
case e.dataset:
return "Dataset";
case e.datasetcollection:
return "Dataset Collection";
case e.materializedview:
return "Materialized View";
case e.virtualtable:
return "Virtual Table";
case e.recordset:
return "Record Set";
default:
return console.warn("Entity type could not be mapped to name:", r), "";
}
}
function m(r) {
if (Object.values(e).includes(r))
return r;
switch (r) {
case "org.sagebionetworks.repo.model.Project":
return e.project;
case "org.sagebionetworks.repo.model.Folder":
return e.folder;
case b:
return e.file;
case "org.sagebionetworks.repo.model.Link":
return e.link;
case "org.sagebionetworks.repo.model.docker.DockerRepository":
return e.dockerrepo;
case n:
return e.table;
case "org.sagebionetworks.repo.model.table.SubmissionView":
return e.submissionview;
case E:
return e.entityview;
case l:
return e.dataset;
case u:
return e.datasetcollection;
case c:
return e.materializedview;
case T:
return e.virtualtable;
case "org.sagebionetworks.repo.model.RecordSet":
return e.recordset;
default:
throw new Error(`Unknown entity type: ${r}`);
}
}
function D(r) {
switch (r) {
case e.project:
return "org.sagebionetworks.repo.model.Project";
case e.folder:
return "org.sagebionetworks.repo.model.Folder";
case e.file:
return "org.sagebionetworks.repo.model.FileEntity";
case e.link:
return "org.sagebionetworks.repo.model.Link";
case e.dockerrepo:
return "org.sagebionetworks.repo.model.docker.DockerRepository";
case e.table:
return "org.sagebionetworks.repo.model.table.TableEntity";
case e.submissionview:
return "org.sagebionetworks.repo.model.table.SubmissionView";
case e.entityview:
return "org.sagebionetworks.repo.model.table.EntityView";
case e.dataset:
return "org.sagebionetworks.repo.model.table.Dataset";
case e.datasetcollection:
return "org.sagebionetworks.repo.model.table.DatasetCollection";
case e.materializedview:
return "org.sagebionetworks.repo.model.table.MaterializedView";
case e.virtualtable:
return "org.sagebionetworks.repo.model.table.VirtualTable";
case e.recordset:
return "org.sagebionetworks.repo.model.RecordSet";
default:
throw new Error(`Unknown entity type: ${r}`);
}
}
function V(r) {
switch (r) {
case e.project:
case e.folder:
case e.link:
case e.dockerrepo:
case e.submissionview:
// SubmissionView implements VersionableEntity, but versions aren't supported
case e.materializedview:
// MaterializedView implements VersionableEntity, but versions aren't supported.
case e.virtualtable:
return !1;
case e.file:
case e.recordset:
case e.table:
case e.entityview:
case e.dataset:
case e.datasetcollection:
return !0;
default:
throw new Error(`Unknown entity type: ${r}`);
}
}
const L = t(
..._
), F = t(
...f
), h = t(
n
), j = t(w), z = t(c), y = t(
l
), R = t(u), K = (r) => y(r) || R(r), M = t(
E
);
function B(r) {
return (r.viewTypeMask & p) != 0;
}
function $(r) {
return r.viewTypeMask === p;
}
function N(r) {
return V(m(r.concreteType));
}
function W(r) {
return N(r) ? r.isLatestVersion ? L(r) ? y(r) ? "Draft" : "Current" : `${r.versionNumber.toString()} (Current)` : r.versionNumber.toString() : (console.warn("Entity isn't versionable:", r), "");
}
function x(r) {
return r.toLowerCase().startsWith("syn") ? r.toLowerCase() : `syn${r}`;
}
const o = [
"name",
"description",
"id",
"etag",
"createdOn",
"modifiedOn",
"createdBy",
"modifiedBy",
"parentId",
"concreteType"
], i = [
...o,
"versionNumber",
"versionLabel",
"versionComment",
"isLatestVersion"
], s = [...i, "columnIds", "isSearchEnabled"], a = [...s], d = [...a, "items"], H = {
[v]: [...o, "linksTo", "linksToClassName"],
[C]: [
...o,
"repositoryName",
"isManaged"
],
[b]: [
...i,
"dataFileHandleId",
"fileNameOverride"
],
[w]: [...a, "scopeIds"],
[l]: [
...d,
"size",
"checksum",
"count"
],
[u]: [...d],
[E]: [
...a,
"scopeIds",
"viewTypeMask",
"type"
],
[n]: s,
[c]: [...s, "definingSQL"],
[T]: [...s, "definingSQL"],
[g]: o,
[k]: [...o, "alias"],
"org.sagebionetworks.repo.model.RecordSet": [
...i,
"upsertKey",
"csvDescriptor"
],
"org.sagebionetworks.repo.model.Preview": [
/* unused */
],
"org.sagebionetworks.repo.model.ExampleEntity": [
/* unused */
]
}, J = {
ALL_TABLES: [
e.table,
e.entityview,
e.submissionview,
e.dataset,
e.datasetcollection,
e.materializedview,
e.virtualtable
],
CONTAINER: [e.project, e.folder]
};
export {
J as EntityTypeGroup,
D as convertToConcreteEntityType,
m as convertToEntityType,
H as entityJsonKeys,
Y as entityTypeToFriendlyName,
P as getEntityTypeFromHeader,
W as getVersionDisplay,
B as hasFilesInView,
S as isContainerType,
y as isDataset,
R as isDatasetCollection,
K as isEntityRefCollectionView,
M as isEntityView,
$ as isFileView,
z as isMaterializedView,
j as isSubmissionView,
L as isTable,
h as isTableEntity,
U as isTableType,
N as isVersionableEntity,
V as isVersionableEntityType,
F as isView,
x as normalizeSynPrefix
};
//# sourceMappingURL=EntityTypeUtils.js.map