@osdk/client 0.18.0-main-20240509175859 → 0.18.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +1 -4
- package/build/js/{chunk-A2SABUZJ.mjs → chunk-EF3KTHUA.browser.mjs} +2 -2
- package/build/js/chunk-EF3KTHUA.browser.mjs.map +1 -0
- package/build/js/{chunk-TX7QUIAZ.browser.mjs → chunk-GN5YGVT6.mjs} +2 -2
- package/build/js/chunk-GN5YGVT6.mjs.map +1 -0
- package/build/js/{chunk-ICZ7U7RI.cjs → chunk-S3VSFIJO.cjs} +2 -2
- package/build/js/chunk-S3VSFIJO.cjs.map +1 -0
- package/build/js/index.browser.mjs +1 -1
- package/build/js/index.cjs +3 -3
- package/build/js/index.mjs +1 -1
- package/build/js/public/unstable-do-not-use.browser.mjs +2 -2
- package/build/js/public/unstable-do-not-use.cjs +9 -9
- package/build/js/public/unstable-do-not-use.mjs +2 -2
- package/package.json +4 -4
- package/build/js/chunk-A2SABUZJ.mjs.map +0 -1
- package/build/js/chunk-ICZ7U7RI.cjs.map +0 -1
- package/build/js/chunk-TX7QUIAZ.browser.mjs.map +0 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,14 +1,11 @@
|
|
|
1
1
|
# @osdk/client
|
|
2
2
|
|
|
3
|
-
## 0.18.0
|
|
3
|
+
## 0.18.0
|
|
4
4
|
|
|
5
5
|
### Minor Changes
|
|
6
6
|
|
|
7
7
|
- d183d92: Deprecated get and added fetchOne as a replacement. They function exactly the same.
|
|
8
8
|
- c68983b: Add fetchOneWithErrors that will add a result wrapper when fetching one object. This wrapper will either contain the data value, or an error if an error was thrown.
|
|
9
|
-
|
|
10
|
-
### Patch Changes
|
|
11
|
-
|
|
12
9
|
- f810576: Separate unstable client features from regular import
|
|
13
10
|
|
|
14
11
|
## 0.17.0
|
|
@@ -1089,7 +1089,7 @@ var createStandardOntologyProviderFactory = (client) => {
|
|
|
1089
1089
|
};
|
|
1090
1090
|
|
|
1091
1091
|
// src/util/UserAgent.ts
|
|
1092
|
-
var USER_AGENT = `osdk-client/${"0.18.0
|
|
1092
|
+
var USER_AGENT = `osdk-client/${"0.18.0"}`;
|
|
1093
1093
|
|
|
1094
1094
|
// src/createMinimalClient.ts
|
|
1095
1095
|
function createMinimalClient(metadata, stack, tokenProvider, options = {}, fetchFn = global.fetch, objectSetFactory = createObjectSet) {
|
|
@@ -1145,4 +1145,4 @@ var createClient = createClientInternal.bind(void 0, createObjectSet);
|
|
|
1145
1145
|
|
|
1146
1146
|
export { ActionValidationError, augment, convertWireToOsdkObjects, createClient, createClientInternal, createObjectSet, getObjectTypeV2, loadAllOntologies, loadOntologyEntities };
|
|
1147
1147
|
//# sourceMappingURL=out.js.map
|
|
1148
|
-
//# sourceMappingURL=chunk-
|
|
1148
|
+
//# sourceMappingURL=chunk-EF3KTHUA.browser.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../internal.foundry/build/js/public/OntologiesV2_OntologyObjectSet.mjs","../../../internal.foundry/build/js/public/OntologiesV2_OntologyObjectV2.mjs","../../src/util/addUserAgent.ts","../../src/object/convertWireToOsdkObjects.ts","../../src/internal/conversions/legacyToModernSingleAggregationResult.ts","../../src/internal/conversions/modernToLegacyAggregationClause.ts","../../src/query/aggregations/GroupByClause.ts","../../src/internal/conversions/modernToLegacyGroupByClause.ts","../../src/internal/conversions/modernToLegacyWhereClause.ts","../../src/query/WhereClause.ts","../../src/object/fetchSingle.ts","../../src/object/aggregate.ts","../../src/util/WireObjectSet.ts","../../src/objectSet/createObjectSet.ts","../../src/object/Attachment.ts","../../src/object/Cache.ts","../../src/object/fetchPage.ts","../../src/actions/ActionValidationError.ts","../../../internal.foundry/build/js/public/OntologiesV2_Action.mjs","../../src/util/isOntologyObjectV2.ts","../../src/util/toDataValue.ts","../../src/actions/applyAction.ts","../../src/actions/createActionInvoker.ts","../../src/createMinimalClient.ts","../../src/ontology/StandardOntologyProvider.ts","../../../internal.foundry/build/js/public/OntologiesV2_OntologyV2.mjs","../../src/ontology/loadFullObjectMetadata.ts","../../../internal.foundry/build/js/public/OntologiesV2_ObjectTypeV2.mjs","../../src/generated/ontology-metadata/api/OntologyMetadataService/loadAllOntologies.ts","../../src/generated/ontology-metadata/api/OntologyMetadataService/loadOntologyEntities.ts","../../src/ontology/loadInterfaceDefinition.ts","../../src/util/UserAgent.ts","../../src/createClient.ts"],"names":["omniFetch","invariant","client","__UNSTABLE_wireInterfaceTypeV2ToSdkObjectDefinition","wireObjectTypeFullMetadataToSdkObjectTypeDefinition","conjureFetch"],"mappings":"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","sourcesContent":["import { omniFetch } from '@osdk/shared.net';\n\n// src/public/OntologiesV2_OntologyObjectSet.ts\nvar _getObjectSetV2 = [0, \"/v2/ontologies/{0}/objectSets/{1}\"];\nfunction getObjectSetV2($ctx, ...args) {\n return omniFetch($ctx, _getObjectSetV2, ...args);\n}\nvar _loadObjectSetV2 = [1, \"/v2/ontologies/{0}/objectSets/loadObjects\", 3];\nfunction loadObjectSetV2($ctx, ...args) {\n return omniFetch($ctx, _loadObjectSetV2, ...args);\n}\nvar _aggregateObjectSetV2 = [1, \"/v2/ontologies/{0}/objectSets/aggregate\", 3];\nfunction aggregateObjectSetV2($ctx, ...args) {\n return omniFetch($ctx, _aggregateObjectSetV2, ...args);\n}\nexport { aggregateObjectSetV2, getObjectSetV2, loadObjectSetV2 };","import { omniFetch } from '@osdk/shared.net';\n\n// src/public/OntologiesV2_OntologyObjectV2.ts\nvar _listObjectsV2 = [0, \"/v2/ontologies/{0}/objects/{1}\", 2];\nfunction listObjectsV2($ctx, ...args) {\n return omniFetch($ctx, _listObjectsV2, ...args);\n}\nvar _getObjectV2 = [0, \"/v2/ontologies/{0}/objects/{1}/{2}\", 2];\nfunction getObjectV2($ctx, ...args) {\n return omniFetch($ctx, _getObjectV2, ...args);\n}\nvar _countObjects = [1, \"/v2/ontologies/{0}/objects/{1}/count\", 2];\nfunction countObjects($ctx, ...args) {\n return omniFetch($ctx, _countObjects, ...args);\n}\nvar _searchObjectsV2 = [1, \"/v2/ontologies/{0}/objects/{1}/search\", 3];\nfunction searchObjectsV2($ctx, ...args) {\n return omniFetch($ctx, _searchObjectsV2, ...args);\n}\nvar _aggregateObjectsV2 = [1, \"/v2/ontologies/{0}/objects/{1}/aggregate\", 3];\nfunction aggregateObjectsV2($ctx, ...args) {\n return omniFetch($ctx, _aggregateObjectsV2, ...args);\n}\nvar _listInterfaceTypes = [0, \"/v2/ontologies/{0}/interfaceTypes\", 2];\nfunction listInterfaceTypes($ctx, ...args) {\n return omniFetch($ctx, _listInterfaceTypes, ...args);\n}\nvar _getInterfaceType = [0, \"/v2/ontologies/{0}/interfaceTypes/{1}\", 2];\nfunction getInterfaceType($ctx, ...args) {\n return omniFetch($ctx, _getInterfaceType, ...args);\n}\nvar _searchObjectsForInterface = [1, \"/v2/ontologies/{0}/interfaces/{1}/search\", 3];\nfunction searchObjectsForInterface($ctx, ...args) {\n return omniFetch($ctx, _searchObjectsForInterface, ...args);\n}\nvar _aggregateObjectsForInterface = [1, \"/v2/ontologies/{0}/interfaces/{1}/aggregate\", 3];\nfunction aggregateObjectsForInterface($ctx, ...args) {\n return omniFetch($ctx, _aggregateObjectsForInterface, ...args);\n}\nvar _listLinkedObjectsV2 = [0, \"/v2/ontologies/{0}/objects/{1}/{2}/links/{3}\", 2];\nfunction listLinkedObjectsV2($ctx, ...args) {\n return omniFetch($ctx, _listLinkedObjectsV2, ...args);\n}\nvar _getLinkedObjectV2 = [0, \"/v2/ontologies/{0}/objects/{1}/{2}/links/{3}/{4}\", 2];\nfunction getLinkedObjectV2($ctx, ...args) {\n return omniFetch($ctx, _getLinkedObjectV2, ...args);\n}\nvar _getAttachmentsV2 = [0, \"/v2/ontologies/{0}/objects/{1}/{2}/attachments/{3}\", 2];\nfunction getAttachmentsV2($ctx, ...args) {\n return omniFetch($ctx, _getAttachmentsV2, ...args);\n}\nvar _getAttachmentByRidV2 = [0, \"/v2/ontologies/{0}/objects/{1}/{2}/attachments/{3}/{4}\", 2];\nfunction getAttachmentByRidV2($ctx, ...args) {\n return omniFetch($ctx, _getAttachmentByRidV2, ...args);\n}\nvar _getAttachmentContentV2 = [0, \"/v2/ontologies/{0}/objects/{1}/{2}/attachments/{3}/content\", 2,, \"*/*\"];\nfunction getAttachmentContentV2($ctx, ...args) {\n return omniFetch($ctx, _getAttachmentContentV2, ...args);\n}\nvar _getAttachmentContentByRidV2 = [0, \"/v2/ontologies/{0}/objects/{1}/{2}/attachments/{3}/{4}/content\", 2,, \"*/*\"];\nfunction getAttachmentContentByRidV2($ctx, ...args) {\n return omniFetch($ctx, _getAttachmentContentByRidV2, ...args);\n}\nvar _getFirstPoint = [0, \"/v2/ontologies/{0}/objects/{1}/{2}/timeseries/{3}/firstPoint\", 2];\nfunction getFirstPoint($ctx, ...args) {\n return omniFetch($ctx, _getFirstPoint, ...args);\n}\nvar _getLastPoint = [0, \"/v2/ontologies/{0}/objects/{1}/{2}/timeseries/{3}/lastPoint\", 2];\nfunction getLastPoint($ctx, ...args) {\n return omniFetch($ctx, _getLastPoint, ...args);\n}\nvar _streamPoints = [1, \"/v2/ontologies/{0}/objects/{1}/{2}/timeseries/{3}/streamPoints\", 3,, \"*/*\"];\nfunction streamPoints($ctx, ...args) {\n return omniFetch($ctx, _streamPoints, ...args);\n}\nexport { aggregateObjectsForInterface, aggregateObjectsV2, countObjects, getAttachmentByRidV2, getAttachmentContentByRidV2, getAttachmentContentV2, getAttachmentsV2, getFirstPoint, getInterfaceType, getLastPoint, getLinkedObjectV2, getObjectV2, listInterfaceTypes, listLinkedObjectsV2, listObjectsV2, searchObjectsForInterface, searchObjectsV2, streamPoints };","/*\n * Copyright 2024 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { createFetchHeaderMutator } from \"@osdk/shared.net\";\nexport function addUserAgent(client, withMetadata) {\n if (withMetadata.osdkMetadata) {\n return {\n ...client,\n fetch: createFetchHeaderMutator(client.fetch, headers => {\n headers.set(\"Fetch-User-Agent\", withMetadata.osdkMetadata.extraUserAgent);\n return headers;\n })\n };\n }\n return client;\n}","/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport invariant from \"tiny-invariant\";\nimport { getWireObjectSet } from \"../objectSet/createObjectSet.js\";\nimport { Attachment } from \"./Attachment.js\";\nimport { createAsyncCache, createCache } from \"./Cache.js\";\nimport { fetchSingle, fetchSingleWithErrors } from \"./fetchSingle.js\";\nconst OriginClient = Symbol();\nconst UnderlyingObject = Symbol();\nconst InterfaceDefinitions = Symbol();\nclass LinkFetcherProxyHandler {\n constructor(objDef, primaryKey, client) {\n this.objDef = objDef;\n this.primaryKey = primaryKey;\n this.client = client;\n }\n get(_target, p) {\n const linkDef = this.objDef.links[p];\n if (linkDef == null) {\n return;\n }\n const objectSet = this.client.objectSetFactory(this.objDef, this.client).where({\n [this.objDef.primaryKeyApiName]: this.primaryKey\n }).pivotTo(p);\n if (!linkDef.multiplicity) {\n return {\n /** @deprecated */\n get: options => fetchSingle(this.client, this.objDef, options ?? {}, getWireObjectSet(objectSet)),\n fetchOne: options => fetchSingle(this.client, this.objDef, options ?? {}, getWireObjectSet(objectSet)),\n fetchOneWithErrors: options => fetchSingleWithErrors(this.client, this.objDef, options ?? {}, getWireObjectSet(objectSet))\n };\n } else {\n return objectSet;\n }\n }\n ownKeys() {\n return Object.keys(this.objDef.links);\n }\n getOwnPropertyDescriptor(target, p) {\n return {\n enumerable: true,\n configurable: true,\n get: () => {\n return this.get(target, p);\n }\n };\n }\n}\nfunction createPrototype(objDef, client) {\n if (process.env.NODE_ENV !== \"production\") {\n !(objDef.type === \"object\") ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"Expected object definition\") : invariant(false) : void 0;\n }\n const sharedPropertyDefs = {\n $as: {\n value: $as\n }\n };\n // we can get away with a single interface proto\n const interfaceProto = Object.defineProperties({}, sharedPropertyDefs);\n const objectProto = Object.defineProperties({}, {\n $link: {\n get: function () {\n return new Proxy({}, new LinkFetcherProxyHandler(objDef, this[\"$primaryKey\"], client));\n }\n },\n ...sharedPropertyDefs\n });\n\n // We use the exact same logic for both the interface rep and the underlying rep\n function $as(newDef) {\n if (typeof newDef === \"string\") {\n if (newDef === objDef.apiName) {\n return this[UnderlyingObject];\n }\n const def = objDef[InterfaceDefinitions][newDef];\n if (!def) {\n throw new Error(`Object does not implement interface '${newDef}'.`);\n }\n newDef = def;\n } else if (newDef.apiName === objDef.apiName) {\n return this[UnderlyingObject];\n }\n if (newDef.type !== \"interface\" && newDef.apiName !== this.$apiName) {\n throw new Error(`'${newDef.apiName}' is not an interface of '${this.$objectType}'.`);\n }\n const underlying = this[UnderlyingObject];\n const common = {\n enumerable: true,\n configurable: true\n };\n\n // if we use a proxy here instead we can probably pull off interfaces reflecting the underlying object even if its updated\n\n // we are defining every time because it creates properties in the exact same order\n // keeping the meta classes down to one per interface/objecttype pair\n return Object.create(interfaceProto, {\n $apiName: {\n value: newDef.apiName,\n ...common\n },\n $objectType: {\n value: objDef.apiName,\n ...common\n },\n $primaryKey: {\n value: this[\"$primaryKey\"],\n ...common\n },\n ...Object.fromEntries(Object.keys(newDef.properties).map(p => {\n const value = underlying[objDef.spts[p]];\n return [p, {\n value,\n enumerable: value !== undefined\n }];\n })),\n [UnderlyingObject]: {\n value: underlying\n }\n });\n }\n return objectProto;\n}\n\n// preprocess the ontology definition to more quickly apply object conversions when needed\nfunction createConverter(objDef) {\n const steps = [];\n for (const [key, value] of Object.entries(objDef.properties)) {\n // attachments need a wrapper to provide functionality and to identify them at serialization time\n if (value.type === \"attachment\") {\n steps.push(o => {\n if (o[key] != null) {\n if (Array.isArray(o[key])) {\n o[key] = o[key].map(a => new Attachment(a.rid));\n } else {\n o[key] = new Attachment(o[key].rid);\n }\n }\n });\n }\n }\n return steps.length > 0 ? o => {\n for (const step of steps) {\n step(o);\n }\n } : undefined;\n}\nconst protoConverterCache = createCache((client, objectDef) => {\n const proto = createPrototype(objectDef, client);\n const converter = createConverter(objectDef);\n return [proto, converter];\n});\nconst isAfterFeb2024OrNewApis = false;\n\n/**\n * If interfaceApiName is not undefined, converts the instances of the\n * interface into their respective\n * underlying concrete types and then returns the $as() representation\n * for the consumers.\n *\n * Otherwise just does the conversion\n *\n * May mutate in place for performance reasons. If you need a clean copy,\n * keep it first.\n *\n * However, you must use the returned value, which will be whatever is correct.\n *\n * @internal\n * @param interfaceApiName - if undefined\n */\nexport async function convertWireToOsdkObjects(client, objects, interfaceApiName, forceRemoveRid = false) {\n if (forceRemoveRid) {\n for (const obj of objects) {\n delete obj.__rid;\n }\n }\n fixObjectPropertiesInline(objects);\n\n /*\n We need to create a local cache for the life of this function.\n Because the user may have their global cache set to \"alwaysRevalidate\",\n we want to be able to avoid making N calls to load object/interface information.\n Our local cache will delegate to the global one but since it also caches,\n we can short circuit the `alwaysRevalidate` logic.\n This tradeoff is slightly less accurate than `alwaysRevalidate` but is close\n enough given we got back objects at T-3 and if the types are inconsistent for\n T-2 and T-1, then they are guarenteed wrong for T-3. No matter what\n the user will get a failure case here. So we avoid the extra work.\n */\n const localObjectCache = createLocalObjectCacheAndInitiatePreseed(objects, client);\n for (const obj of objects) {\n const objectDef = await localObjectCache.get(client, obj.$apiName);\n if (objectDef == null) {\n throw new Error(`Failed to find ontology definition for '${obj.$apiName}'`);\n }\n if (interfaceApiName !== undefined) {\n // API returns interface spt names but we cache by real values\n for (const [sptProp, regularProp] of Object.entries(objectDef.spts)) {\n if (sptProp in obj) {\n const value = obj[sptProp];\n delete obj[sptProp];\n if (value !== undefined) {\n obj[regularProp] = value;\n }\n }\n }\n }\n internalConvertObjectInPlace(objectDef, client, obj);\n }\n if (interfaceApiName) {\n return objects.map(o => o.$as(interfaceApiName));\n } else {\n // we did the conversion so we can cast\n return objects;\n }\n}\nfunction createLocalObjectCacheAndInitiatePreseed(objects, client) {\n // local cache delegates to the global one\n const localInterfaceCache = createAsyncCache((client, apiName) => client.ontologyProvider.getInterfaceDefinition(apiName));\n const localObjectCache = createAsyncCache(async (client, apiName) => {\n // first delegate to the global cache\n const objectDef = await client.ontologyProvider.getObjectDefinition(apiName);\n\n // ensure we have all of the interfaces loaded\n const interfaceDefs = Object.fromEntries((await Promise.all(objectDef.implements?.map(i => localInterfaceCache.get(client, i)) ?? [])).map(i => [i.apiName, i]));\n\n // save interfaces for later if not the first time\n if (objectDef[InterfaceDefinitions] == null) {\n Object.defineProperty(objectDef, InterfaceDefinitions, {\n value: interfaceDefs,\n enumerable: false,\n configurable: false,\n writable: false\n });\n }\n return objectDef;\n });\n const uniqueApiNames = new Set();\n for (const {\n $apiName\n } of objects) {\n if (uniqueApiNames.has($apiName)) continue;\n uniqueApiNames.add($apiName);\n // preseed the object cache without blocking\n // N.B localObjectCache will preseed the interface cache\n localObjectCache.get(client, $apiName);\n }\n return localObjectCache;\n}\nfunction fixObjectPropertiesInline(objs) {\n for (const obj of objs) {\n if (obj.__rid) {\n obj.$rid = obj.__rid;\n delete obj.__rid;\n }\n\n // Backend returns as __apiName but we want to stick to $ structure\n obj.$apiName = obj.__apiName;\n\n // for now these are the same but when we start doing interface projections the $objectType will always be underlying and\n // the $apiName will be for the current view (in current designs)\n obj.$objectType = obj.__apiName;\n\n // copying over for now as its always returned. In the future, this should just be inferred from underlying\n obj.$primaryKey = obj.__primaryKey;\n\n // After Feb 2024 (unless we have new apis):\n if (isAfterFeb2024OrNewApis) {\n delete obj.__apiName;\n delete obj.__primaryKey;\n } else {\n // Hide these from things like `console.log` so that people\n // don't think to use them.\n Object.defineProperties(obj, {\n \"__apiName\": {\n enumerable: false\n },\n \"__primaryKey\": {\n enumerable: false\n }\n });\n }\n }\n}\nfunction internalConvertObjectInPlace(objectDef, client, obj) {\n const [proto, converter] = protoConverterCache.get(client, objectDef);\n Object.setPrototypeOf(obj, proto);\n Object.defineProperties(obj, {\n [OriginClient]: {\n value: client\n },\n [UnderlyingObject]: {\n value: obj\n }\n });\n if (converter) {\n converter(obj);\n }\n}","/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport invariant from \"tiny-invariant\";\nexport function legacyToModernSingleAggregationResult(entry) {\n return entry.metrics.reduce((accumulator, curValue) => {\n const parts = curValue.name.split(\".\");\n if (parts[0] === \"count\") {\n return accumulator;\n }\n !(parts.length === 2) ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"assumed we were getting a `${key}.${type}`\") : invariant(false) : void 0;\n if (!(parts[0] in accumulator)) {\n accumulator[parts[0]] = {};\n }\n accumulator[parts[0]][parts[1]] = curValue.value;\n return accumulator;\n }, {});\n}","/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nexport function modernToLegacyAggregationClause(select) {\n return Object.entries(select).flatMap(([k, v]) => {\n if (k === \"$count\") {\n if (v) return {\n type: \"count\",\n name: \"count\"\n };\n return [];\n } else if (Array.isArray(v)) {\n return v.map(v2 => {\n return {\n type: v2,\n name: `${k}.${v2}`,\n field: k\n };\n });\n } else {\n return [{\n type: v,\n // FIXME v has additional possible values\n name: `${k}.${v}`,\n field: k\n }];\n }\n });\n}","/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nexport const DurationMapping = {\n \"sec\": \"SECONDS\",\n \"seconds\": \"SECONDS\",\n \"min\": \"MINUTES\",\n \"minute\": \"MINUTES\",\n \"minutes\": \"MINUTES\",\n \"hr\": \"HOURS\",\n \"hrs\": \"HOURS\",\n \"hour\": \"HOURS\",\n \"hours\": \"HOURS\",\n \"day\": \"DAYS\",\n \"days\": \"DAYS\",\n \"wk\": \"WEEKS\",\n \"week\": \"WEEKS\",\n \"weeks\": \"WEEKS\",\n \"mos\": \"MONTHS\",\n \"month\": \"MONTHS\",\n \"months\": \"MONTHS\",\n \"yr\": \"YEARS\",\n \"year\": \"YEARS\",\n \"years\": \"YEARS\",\n \"quarter\": \"QUARTERS\",\n \"quarters\": \"QUARTERS\"\n};","/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { DurationMapping } from \"../../query/aggregations/GroupByClause.js\";\nexport function modernToLegacyGroupByClause(groupByClause) {\n if (!groupByClause) return [];\n return Object.entries(groupByClause).flatMap(([field, type]) => {\n if (type === \"exact\") {\n return [{\n type,\n field\n }];\n } else if (\"exactWithLimit\" in type) {\n {\n return [{\n type: \"exact\",\n field,\n maxGroupCount: type.exactWithLimit\n }];\n }\n } else if (\"fixedWidth\" in type) {\n return [{\n type: \"fixedWidth\",\n field,\n fixedWidth: type.fixedWidth\n }];\n } else if (\"ranges\" in type) {\n return [{\n type: \"ranges\",\n field,\n ranges: type.ranges.map(range => convertRange(range))\n }];\n } else if (\"duration\" in type) {\n return [{\n type: \"duration\",\n field,\n value: type.duration[0],\n unit: DurationMapping[type.duration[1]]\n }];\n } else return [];\n });\n}\nfunction convertRange(range) {\n return {\n startValue: range[0],\n endValue: range[1]\n };\n}","/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport invariant from \"tiny-invariant\";\nimport { DistanceUnitMapping } from \"../../query/WhereClause.js\";\nexport function modernToLegacyWhereClause(whereClause) {\n if (\"$and\" in whereClause) {\n return {\n type: \"and\",\n value: whereClause.$and.map(modernToLegacyWhereClause)\n };\n } else if (\"$or\" in whereClause) {\n return {\n type: \"or\",\n value: whereClause.$or.map(modernToLegacyWhereClause)\n };\n } else if (\"$not\" in whereClause) {\n return {\n type: \"not\",\n value: modernToLegacyWhereClause(whereClause.$not)\n };\n }\n const parts = Object.entries(whereClause);\n if (parts.length === 1) {\n return handleWherePair(parts[0]);\n }\n return {\n type: \"and\",\n value: parts.map(handleWherePair)\n };\n}\nfunction makeGeoFilterBbox(field, bbox, filterType) {\n return {\n type: filterType === \"$within\" ? \"withinBoundingBox\" : \"intersectsBoundingBox\",\n field,\n value: {\n topLeft: {\n type: \"Point\",\n coordinates: [bbox[0], bbox[3]]\n },\n bottomRight: {\n type: \"Point\",\n coordinates: [bbox[2], bbox[1]]\n }\n }\n };\n}\nfunction makeGeoFilterPolygon(field, coordinates, filterType) {\n return {\n type: filterType,\n field,\n value: {\n type: \"Polygon\",\n coordinates\n }\n };\n}\nfunction handleWherePair([field, filter]) {\n !(filter != null) ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"Defined key values are only allowed when they are not undefined.\") : invariant(false) : void 0;\n if (typeof filter === \"string\" || typeof filter === \"number\" || typeof filter === \"boolean\") {\n return {\n type: \"eq\",\n field,\n value: filter\n };\n }\n const keysOfFilter = Object.keys(filter);\n\n // If any of the keys start with `$` then they must be the only one.\n // e.g. `where({ name: { $eq: \"foo\", $ne: \"bar\" } })` is invalid currently\n const hasDollarSign = keysOfFilter.some(key => key.startsWith(\"$\"));\n !(!hasDollarSign || keysOfFilter.length === 1) ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"WhereClause Filter with multiple clauses isn't allowed\") : invariant(false) : void 0;\n if (!hasDollarSign) {\n // Future case for structs\n throw new Error(`Unsupported filter. Did you forget to use a $-prefixed filter? (${JSON.stringify(filter)})`);\n }\n const firstKey = keysOfFilter[0];\n !(filter[firstKey] != null) ? process.env.NODE_ENV !== \"production\" ? invariant(false) : invariant(false) : void 0;\n if (firstKey === \"$ne\") {\n return {\n type: \"not\",\n value: {\n type: \"eq\",\n field,\n value: filter[firstKey]\n }\n };\n }\n if (firstKey === \"$within\") {\n const withinBody = filter[firstKey];\n if (Array.isArray(withinBody)) {\n return makeGeoFilterBbox(field, withinBody, firstKey);\n } else if (\"bbox\" in withinBody && !(\"type\" in withinBody)) {\n return makeGeoFilterBbox(field, withinBody.bbox, firstKey);\n } else if (\"distance\" in withinBody && \"of\" in withinBody) {\n return {\n type: \"withinDistanceOf\",\n field,\n value: {\n center: Array.isArray(withinBody.of) ? {\n type: \"Point\",\n coordinates: withinBody.of\n } : withinBody.of,\n distance: {\n value: withinBody.distance[0],\n unit: DistanceUnitMapping[withinBody.distance[1]]\n }\n }\n };\n } else {\n const coordinates = \"polygon\" in withinBody ? withinBody.polygon : withinBody.coordinates;\n return makeGeoFilterPolygon(field, coordinates, \"withinPolygon\");\n }\n }\n if (firstKey === \"$intersects\") {\n const intersectsBody = filter[firstKey];\n if (Array.isArray(intersectsBody)) {\n return makeGeoFilterBbox(field, intersectsBody, firstKey);\n } else if (\"bbox\" in intersectsBody && !(\"type\" in intersectsBody)) {\n return makeGeoFilterBbox(field, intersectsBody.bbox, firstKey);\n } else {\n const coordinates = \"polygon\" in intersectsBody ? intersectsBody.polygon : intersectsBody.coordinates;\n return makeGeoFilterPolygon(field, coordinates, \"intersectsPolygon\");\n }\n }\n return {\n type: firstKey.substring(1),\n field,\n value: filter[firstKey]\n };\n}","/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\n// We need to conditional here to force the union to be distributed\n\nexport const DistanceUnitMapping = {\n \"centimeter\": \"CENTIMETERS\",\n \"centimeters\": \"CENTIMETERS\",\n \"cm\": \"CENTIMETERS\",\n \"meter\": \"METERS\",\n \"meters\": \"METERS\",\n \"m\": \"METERS\",\n \"kilometer\": \"KILOMETERS\",\n \"kilometers\": \"KILOMETERS\",\n \"km\": \"KILOMETERS\",\n \"inch\": \"INCHES\",\n \"inches\": \"INCHES\",\n \"foot\": \"FEET\",\n \"feet\": \"FEET\",\n \"yard\": \"YARDS\",\n \"yards\": \"YARDS\",\n \"mile\": \"MILES\",\n \"miles\": \"MILES\",\n \"nautical_mile\": \"NAUTICAL_MILES\",\n \"nauticalMile\": \"NAUTICAL_MILES\",\n \"nautical miles\": \"NAUTICAL_MILES\"\n};\n\n// FIXME we need to represent all types","/*\n * Copyright 2024 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { PalantirApiError } from \"@osdk/shared.net\";\nimport { fetchPage } from \"./fetchPage.js\";\nexport async function fetchSingle(client, objectType, args, objectSet) {\n const result = await fetchPage(client, objectType, {\n ...args,\n pageSize: 1\n }, objectSet);\n if (result.data.length !== 1 || result.nextPageToken != null) {\n throw new PalantirApiError(`Expected a single result but got ${result.data.length} instead${result.nextPageToken != null ? \" with nextPageToken set\" : \"\"}`);\n }\n return result.data[0];\n}\nexport async function fetchSingleWithErrors(client, objectType, args, objectSet) {\n try {\n const result = await fetchSingle(client, objectType, args, objectSet);\n return {\n value: result\n };\n } catch (e) {\n if (e instanceof Error) {\n return {\n error: e\n };\n }\n return {\n error: e\n };\n }\n}","/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { aggregateObjectSetV2 } from \"@osdk/internal.foundry/OntologiesV2_OntologyObjectSet\";\nimport invariant from \"tiny-invariant\";\nimport { legacyToModernSingleAggregationResult, modernToLegacyAggregationClause, modernToLegacyGroupByClause, modernToLegacyWhereClause } from \"../internal/conversions/index.js\";\nimport { addUserAgent } from \"../util/addUserAgent.js\";\n/** @deprecated use `aggregate` */\nexport async function aggregateOrThrow(clientCtx, objectType, objectSet = {\n type: \"base\",\n objectType: objectType[\"apiName\"]\n}, req) {\n return aggregate(clientCtx, objectType, objectSet, req);\n}\nexport async function aggregate(clientCtx, objectType, objectSet = {\n type: \"base\",\n objectType: objectType[\"apiName\"]\n}, req) {\n const body = {\n aggregation: modernToLegacyAggregationClause(req.select),\n groupBy: [],\n where: undefined\n };\n if (req.groupBy) {\n body.groupBy = modernToLegacyGroupByClause(req.groupBy);\n }\n if (req.where) {\n body.where = modernToLegacyWhereClause(req.where);\n }\n const result = await aggregateObjectSetV2(addUserAgent(clientCtx, objectType), clientCtx.ontologyRid, {\n objectSet,\n groupBy: body.groupBy,\n aggregation: body.aggregation\n });\n if (!req.groupBy) {\n !(result.data.length === 1) ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"no group by clause should mean only one data result\") : invariant(false) : void 0;\n return {\n ...aggregationToCountResult(result.data[0]),\n ...legacyToModernSingleAggregationResult(result.data[0])\n };\n }\n const ret = result.data.map(entry => {\n return {\n $group: entry.group,\n ...aggregationToCountResult(entry),\n ...legacyToModernSingleAggregationResult(entry)\n };\n }); // fixme\n\n return ret; // FIXME\n}\nfunction aggregationToCountResult(entry) {\n for (const aggregateResult of entry.metrics) {\n if (aggregateResult.name === \"count\") {\n return {\n $count: aggregateResult.value\n };\n }\n }\n}","/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nconst WIRE_OBJECT_SET_TYPES = new Set([\"base\", \"filter\", \"intersect\", \"reference\", \"searchAround\", \"static\", \"subtract\", \"union\"]);\nexport function isWireObjectSet(o) {\n return o != null && typeof o === \"object\" && WIRE_OBJECT_SET_TYPES.has(o.type);\n}","/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { modernToLegacyWhereClause } from \"../internal/conversions/index.js\";\nimport { convertWireToOsdkObjects } from \"../object/convertWireToOsdkObjects.js\";\nimport { fetchPageInternal, fetchPageWithErrorsInternal } from \"../object/fetchPage.js\";\nimport { fetchSingle, fetchSingleWithErrors } from \"../object/fetchSingle.js\";\nimport { aggregate } from \"../object/index.js\";\nimport { isWireObjectSet } from \"../util/WireObjectSet.js\";\nfunction isObjectTypeDefinition(def) {\n return def.type === \"object\";\n}\nexport function isObjectSet(o) {\n return o != null && typeof o === \"object\" && isWireObjectSet(objectSetDefinitions.get(o));\n}\n\n/** @internal */\nexport function getWireObjectSet(objectSet) {\n return objectSetDefinitions.get(objectSet);\n}\nconst objectSetDefinitions = new WeakMap();\nexport function createObjectSet(objectType, clientCtx, objectSet = {\n type: \"base\",\n objectType: objectType[\"apiName\"]\n}) {\n const base = {\n aggregate: aggregate.bind(globalThis, clientCtx, objectType, objectSet),\n fetchPage: fetchPageInternal.bind(globalThis, clientCtx, objectType, objectSet),\n fetchPageWithErrors: fetchPageWithErrorsInternal.bind(globalThis, clientCtx, objectType, objectSet),\n where: clause => {\n return clientCtx.objectSetFactory(objectType, clientCtx, {\n type: \"filter\",\n objectSet: objectSet,\n where: modernToLegacyWhereClause(clause)\n });\n },\n pivotTo: function (type) {\n return createSearchAround(type)();\n },\n union: (...objectSets) => {\n return clientCtx.objectSetFactory(objectType, clientCtx, {\n type: \"union\",\n objectSets: [objectSet, ...objectSets.map(os => objectSetDefinitions.get(os))]\n });\n },\n intersect: (...objectSets) => {\n return clientCtx.objectSetFactory(objectType, clientCtx, {\n type: \"intersect\",\n objectSets: [objectSet, ...objectSets.map(os => objectSetDefinitions.get(os))]\n });\n },\n subtract: (...objectSets) => {\n return clientCtx.objectSetFactory(objectType, clientCtx, {\n type: \"subtract\",\n objectSets: [objectSet, ...objectSets.map(os => objectSetDefinitions.get(os))]\n });\n },\n asyncIter: async function* () {\n let nextPageToken = undefined;\n do {\n const result = await base.fetchPage({\n nextPageToken\n });\n for (const obj of await convertWireToOsdkObjects(clientCtx, result.data, undefined)) {\n yield obj;\n }\n } while (nextPageToken != null);\n },\n get: isObjectTypeDefinition(objectType) ? async (primaryKey, options) => {\n const withPk = {\n type: \"filter\",\n objectSet: objectSet,\n where: {\n type: \"eq\",\n field: objectType.primaryKeyApiName,\n value: primaryKey\n }\n };\n return await fetchSingle(clientCtx, objectType, options, withPk);\n } : undefined,\n fetchOne: isObjectTypeDefinition(objectType) ? async (primaryKey, options) => {\n const withPk = {\n type: \"filter\",\n objectSet: objectSet,\n where: {\n type: \"eq\",\n field: objectType.primaryKeyApiName,\n value: primaryKey\n }\n };\n return await fetchSingle(clientCtx, objectType, options, withPk);\n } : undefined,\n fetchOneWithErrors: isObjectTypeDefinition(objectType) ? async (primaryKey, options) => {\n const withPk = {\n type: \"filter\",\n objectSet: objectSet,\n where: {\n type: \"eq\",\n field: objectType.primaryKeyApiName,\n value: primaryKey\n }\n };\n return await fetchSingleWithErrors(clientCtx, objectType, options, withPk);\n } : undefined\n };\n function createSearchAround(link) {\n return () => {\n return clientCtx.objectSetFactory(objectType, clientCtx, {\n type: \"searchAround\",\n objectSet,\n link\n });\n };\n }\n objectSetDefinitions.set(base, objectSet);\n return base;\n}","/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nexport class Attachment {\n constructor(rid) {\n this.rid = rid;\n }\n}\nexport function isAttachment(o) {\n return o instanceof Attachment;\n}","/*\n * Copyright 2024 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\n/**\n * A simple cache that can be used to store values for a given client.\n */\n\n/**\n * A simple async cache that can be used to store values for a given client.\n */\n\n/**\n * Create a new cache without a factory function.\n */\n\n/**\n * Create a new cache with a factory function.\n * @param fn A factory function that will be used to create the value if it does not exist in the cache.\n */\n\nexport function createCache(fn) {\n // Given the way some consumers may use this, we may want to cache by\n // stack + ontologyApiName instead of the client object itself.\n const cache = new WeakMap();\n function get(client, key) {\n if (cache.get(client) == null) {\n cache.set(client, new Map());\n }\n let r = cache.get(client).get(key);\n if (r === undefined && fn !== undefined) {\n return set(client, key, fn(client, key));\n } else {\n return r;\n }\n }\n function set(client, key, value) {\n if (cache.get(client) == null) {\n cache.set(client, new Map());\n }\n cache.get(client).set(key, value);\n return value;\n }\n function remove(client, key) {\n if (cache.get(client) == null) return false;\n return cache.get(client).delete(key);\n }\n return {\n get,\n set,\n remove\n };\n}\n\n/**\n * Create a new cache with an async factory function.\n * @param fn A factory function that will be used to create the value if it does not exist in the cache.\n * @returns\n */\nexport function createAsyncCache(fn, createCacheLocal = createCache) {\n const cache = createCacheLocal();\n const inProgress = createCacheLocal();\n const ret = {\n getOrUndefined: function getOrUndefined(client, key) {\n return cache.get(client, key);\n },\n get: async function get(client, key) {\n return cache.get(client, key) ?? inProgress.get(client, key) ?? ret.set(client, key, fn(client, key));\n },\n set: async function set(client, k, v) {\n // the `.set` happens first to prevent races.\n try {\n const r = await inProgress.set(client, k, v); // returns v\n\n cache.set(client, k, r);\n inProgress.remove(client, k);\n return r;\n } catch (e) {\n // we don't want to cache failures\n inProgress.remove(client, k);\n throw e;\n }\n }\n };\n return ret;\n}","/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { loadObjectSetV2 } from \"@osdk/internal.foundry/OntologiesV2_OntologyObjectSet\";\nimport { searchObjectsForInterface } from \"@osdk/internal.foundry/OntologiesV2_OntologyObjectV2\";\nimport { addUserAgent } from \"../util/addUserAgent.js\";\nimport { convertWireToOsdkObjects } from \"./convertWireToOsdkObjects.js\";\nexport function augment(type, ...properties) {\n return {\n [type.apiName]: properties\n };\n}\n/** @internal */\nexport function objectSetToSearchJsonV2(objectSet, expectedApiName, existingWhere = undefined) {\n if (objectSet.type === \"base\") {\n if (objectSet.objectType !== expectedApiName) {\n throw new Error(`Expected objectSet.objectType to be ${expectedApiName}, but got ${objectSet.objectType}`);\n }\n return existingWhere;\n }\n if (objectSet.type === \"filter\") {\n return objectSetToSearchJsonV2(objectSet.objectSet, expectedApiName, existingWhere == null ? objectSet.where : {\n type: \"and\",\n value: [existingWhere, objectSet.where]\n });\n }\n throw new Error(`Unsupported objectSet type: ${objectSet.type}`);\n}\nasync function fetchInterfacePage(client, interfaceType, args, objectSet) {\n const result = await searchObjectsForInterface(addUserAgent(client, interfaceType), client.ontologyRid, interfaceType.apiName, applyFetchArgs(args, {\n augmentedProperties: args.augment ?? {},\n augmentedSharedPropertyTypes: {},\n otherInterfaceTypes: [],\n selectedObjectTypes: [],\n selectedSharedPropertyTypes: args.select ?? [],\n where: objectSetToSearchJsonV2(objectSet, interfaceType.apiName)\n }), {\n preview: true\n });\n result.data = await convertWireToOsdkObjects(client, result.data,\n // drop readonly\n interfaceType.apiName, !args.includeRid);\n return result;\n}\n\n/** @internal */\nexport async function fetchPageInternal(client, objectType, objectSet, args = {}) {\n if (objectType.type === \"interface\") {\n return await fetchInterfacePage(client, objectType, args, objectSet); // fixme\n } else {\n return await fetchObjectPage(client, objectType, args, objectSet); // fixme\n }\n}\n\n/** @internal */\nexport async function fetchPageWithErrorsInternal(client, objectType, objectSet, args = {}) {\n try {\n const result = await fetchPageInternal(client, objectType, objectSet, args);\n return {\n value: result\n };\n } catch (e) {\n if (e instanceof Error) {\n return {\n error: e\n };\n }\n return {\n error: e\n };\n }\n}\nexport async function fetchPage(client, objectType, args, objectSet = {\n type: \"base\",\n objectType: objectType[\"apiName\"]\n}) {\n return fetchPageInternal(client, objectType, objectSet, args);\n}\nexport async function fetchPageWithErrors(client, objectType, args, objectSet = {\n type: \"base\",\n objectType: objectType[\"apiName\"]\n}) {\n return fetchPageWithErrorsInternal(client, objectType, objectSet, args);\n}\nfunction applyFetchArgs(args, body) {\n if (args?.nextPageToken) {\n body.pageToken = args.nextPageToken;\n }\n if (args?.pageSize != null) {\n body.pageSize = args.pageSize;\n }\n if (args?.orderBy != null) {\n body.orderBy = {\n fields: Object.entries(args.orderBy).map(([field, direction]) => ({\n field,\n direction\n }))\n };\n }\n return body;\n}\nexport async function fetchObjectPage(client, objectType, args, objectSet) {\n const r = await loadObjectSetV2(addUserAgent(client, objectType), client.ontologyRid, applyFetchArgs(args, {\n objectSet,\n // We have to do the following case because LoadObjectSetRequestV2 isnt readonly\n select: args?.select ?? [],\n // FIXME?\n excludeRid: !args?.includeRid\n }));\n return Promise.resolve({\n data: await convertWireToOsdkObjects(client, r.data, undefined),\n nextPageToken: r.nextPageToken\n });\n}","/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nexport class ActionValidationError extends Error {\n constructor(validation) {\n super(\"Validation Error\");\n this.validation = validation;\n }\n}","import { omniFetch } from '@osdk/shared.net';\n\n// src/public/OntologiesV2_Action.ts\nvar _applyActionV2 = [1, \"/v2/ontologies/{0}/actions/{1}/apply\", 3];\nfunction applyActionV2($ctx, ...args) {\n return omniFetch($ctx, _applyActionV2, ...args);\n}\nvar _applyActionBatchV2 = [1, \"/v2/ontologies/{0}/actions/{1}/applyBatch\", 3];\nfunction applyActionBatchV2($ctx, ...args) {\n return omniFetch($ctx, _applyActionBatchV2, ...args);\n}\nvar _applyActionAsyncV2 = [1, \"/v2/ontologies/{0}/actions/{1}/applyAsync\", 3];\nfunction applyActionAsyncV2($ctx, ...args) {\n return omniFetch($ctx, _applyActionAsyncV2, ...args);\n}\nexport { applyActionAsyncV2, applyActionBatchV2, applyActionV2 };","/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nexport function isOntologyObjectV2(o) {\n return o && typeof o === \"object\" && typeof o.__apiName === \"string\" && o.__primaryKey != null;\n}","/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { isAttachment } from \"../object/Attachment.js\";\nimport { getWireObjectSet, isObjectSet } from \"../objectSet/createObjectSet.js\";\nimport { isOntologyObjectV2 } from \"./isOntologyObjectV2.js\";\nimport { isWireObjectSet } from \"./WireObjectSet.js\";\n\n/**\n * Marshall user-facing data into the wire DataValue type\n *\n * @see DataValue for the expected payloads\n */\nexport function toDataValue(value) {\n if (value == null) {\n // typeof null is 'object' so do this first\n return value;\n }\n\n // arrays and sets are both sent over the wire as arrays\n if (Array.isArray(value) || value instanceof Set) {\n return Array.from(value, toDataValue);\n }\n\n // attachments just send the rid directly\n if (isAttachment(value)) {\n return value.rid;\n }\n\n // objects just send the JSON'd primaryKey\n if (isOntologyObjectV2(value)) {\n return toDataValue(value.__primaryKey);\n }\n\n // object set (the rid as a string (passes through the last return), or the ObjectSet definition directly)\n if (isWireObjectSet(value)) {\n return value;\n }\n if (isObjectSet(value)) {\n return getWireObjectSet(value);\n }\n\n // TODO (during queries implementation)\n // two dimensional aggregation\n // three dimensional aggregation\n\n // struct\n if (typeof value === \"object\") {\n return Object.entries(value).reduce((acc, [key, structValue]) => {\n acc[key] = toDataValue(structValue);\n return acc;\n }, {});\n }\n\n // expected to pass through - boolean, byte, date, decimal, float, double, integer, long, short, string, timestamp\n return value;\n}","/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { applyActionV2 } from \"@osdk/internal.foundry/OntologiesV2_Action\";\nimport { addUserAgent } from \"../util/addUserAgent.js\";\nimport { toDataValue } from \"../util/toDataValue.js\";\nimport { ActionValidationError } from \"./ActionValidationError.js\";\n\n// cannot specify both validateOnly and returnEdits as true\n\nexport async function applyAction(client, action, parameters, options = {}) {\n const response = await applyActionV2(addUserAgent(client, action), client.ontologyRid, action.apiName, {\n parameters: remapActionParams(parameters),\n options: {\n mode: options?.validateOnly ? \"VALIDATE_ONLY\" : \"VALIDATE_AND_EXECUTE\",\n returnEdits: options?.returnEdits ? \"ALL\" : \"NONE\"\n }\n });\n if (options?.validateOnly) {\n return response.validation;\n }\n if (response.validation?.result === \"INVALID\") {\n throw new ActionValidationError(response.validation);\n }\n return options?.returnEdits ? response.edits : undefined;\n}\nfunction remapActionParams(params) {\n if (params == null) {\n return {};\n }\n const parameterMap = {};\n const remappedParams = Object.entries(params).reduce((acc, [key, value]) => {\n acc[key] = toDataValue(value);\n return acc;\n }, parameterMap);\n return remappedParams;\n}","/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { applyAction } from \"./applyAction.js\";\nexport function createActionInvoker(client, action) {\n return function (...args) {\n return applyAction(client, action, ...args);\n };\n}\nexport function createOldActionInvoker(client, ontology) {\n const proxy = new Proxy({}, {\n get: (_target, p, _receiver) => {\n if (typeof p === \"string\") {\n return createActionInvoker(client, ontology.actions[p]);\n }\n return undefined;\n },\n ownKeys(_target) {\n return Object.keys(ontology.actions);\n },\n getOwnPropertyDescriptor(_target, p) {\n if (typeof p === \"string\") {\n return {\n enumerable: ontology.actions[p] != null,\n configurable: true,\n value: proxy[p]\n };\n }\n }\n });\n return proxy;\n}","/*\n * Copyright 2024 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { createClientContext } from \"@osdk/shared.net\";\nimport { createObjectSet } from \"./objectSet/createObjectSet.js\";\nimport { createStandardOntologyProviderFactory } from \"./ontology/StandardOntologyProvider.js\";\nimport { USER_AGENT } from \"./util/UserAgent.js\";\nexport function createMinimalClient(metadata, stack, tokenProvider, options = {}, fetchFn = global.fetch, objectSetFactory = createObjectSet) {\n if (process?.env?.NODE_ENV !== \"production\") {\n try {\n new URL(stack);\n } catch (e) {\n const hint = !stack.startsWith(\"http://\") || !stack.startsWith(\"https://\") ? \". Did you forget to add 'http://' or 'https://'?\" : \"\";\n throw new Error(`Invalid stack URL: ${stack}${hint}`);\n }\n }\n const clientCtx = {\n ...createClientContext({\n metadata: {\n ...metadata,\n userAgent: \"\" // ontology specific user agent injected elsewhere\n }\n }, stack, tokenProvider, USER_AGENT, fetchFn),\n objectSetFactory,\n ontologyRid: metadata.ontologyRid,\n ontologyProvider: undefined,\n logger: options.logger\n };\n clientCtx.ontologyProvider = createStandardOntologyProviderFactory(options)(clientCtx);\n return clientCtx;\n}","/*\n * Copyright 2024 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { __UNSTABLE_wireInterfaceTypeV2ToSdkObjectDefinition, wireObjectTypeFullMetadataToSdkObjectTypeDefinition } from \"@osdk/generator-converters\";\nimport { listInterfaceTypes } from \"@osdk/internal.foundry/OntologiesV2_OntologyObjectV2\";\nimport { getOntologyFullMetadata } from \"@osdk/internal.foundry/OntologiesV2_OntologyV2\";\nimport deepEqual from \"fast-deep-equal\";\nimport { createAsyncCache } from \"../object/Cache.js\";\nimport { loadFullObjectMetadata } from \"./loadFullObjectMetadata.js\";\nimport { loadInterfaceDefinition } from \"./loadInterfaceDefinition.js\";\nconst alwaysRevalidateDefault = false;\n\n// SLLLLLLOOOOOOOWWWW\nasync function fullOntologyLoad(client) {\n return await Promise.all([listInterfaceTypes(client, client.ontologyRid, {\n pageSize: 200,\n preview: true\n }), getOntologyFullMetadata(client, client.ontologyRid)]);\n}\nexport const USE_FULL_ONTOLOGY = false;\nexport const createStandardOntologyProviderFactory = client => {\n const alwaysRevalidate = client.alwaysRevalidate ?? alwaysRevalidateDefault;\n return client => {\n let fullCache;\n async function initLocalCache(client, skipCache) {\n if (skipCache) {\n return await fullOntologyLoad(client);\n }\n if (!fullCache) {\n fullCache = fullOntologyLoad(client);\n }\n return await fullCache;\n }\n async function loadObject(client, key, skipCache = false) {\n if (USE_FULL_ONTOLOGY) {\n const fullCacheLocal = await initLocalCache(client, skipCache);\n return {\n ...wireObjectTypeFullMetadataToSdkObjectTypeDefinition(fullCacheLocal[1].objectTypes[key], true),\n implements: fullCacheLocal[0].data.map(i => i.apiName)\n };\n } else {\n return await loadFullObjectMetadata(client, key);\n }\n }\n async function loadInterface(client, key, skipCache = false) {\n if (USE_FULL_ONTOLOGY) {\n const fullCacheLocal = await initLocalCache(client, skipCache);\n return __UNSTABLE_wireInterfaceTypeV2ToSdkObjectDefinition(fullCacheLocal[1].interfaceTypes[key], true);\n } else {\n return loadInterfaceDefinition(client, key);\n }\n }\n function makeGetter(fn) {\n const cache = createAsyncCache((client, key) => fn(client, key, false));\n return async apiName => {\n const n = alwaysRevalidate ? await fn(client, apiName, true) : await cache.get(client, apiName);\n if (alwaysRevalidate) {\n const og = cache.getOrUndefined(client, apiName);\n if (deepEqual(og, n)) {\n return og; // ! because we can be sure `n` would throw if it were undefined\n } else {\n return cache.set(client, apiName, n);\n }\n }\n return n;\n };\n }\n return {\n getObjectDefinition: makeGetter(loadObject),\n getInterfaceDefinition: makeGetter(loadInterface),\n maybeSeed(definition) {\n // not using this for now\n }\n };\n };\n};","import { omniFetch } from '@osdk/shared.net';\n\n// src/public/OntologiesV2_OntologyV2.ts\nvar _listOntologiesV2 = [0, \"/v2/ontologies\"];\nfunction listOntologiesV2($ctx, ...args) {\n return omniFetch($ctx, _listOntologiesV2, ...args);\n}\nvar _getOntologyV2 = [0, \"/v2/ontologies/{0}\"];\nfunction getOntologyV2($ctx, ...args) {\n return omniFetch($ctx, _getOntologyV2, ...args);\n}\nvar _getOntologyFullMetadata = [0, \"/v2/ontologies/{0}/fullMetadata\"];\nfunction getOntologyFullMetadata($ctx, ...args) {\n return omniFetch($ctx, _getOntologyFullMetadata, ...args);\n}\nexport { getOntologyFullMetadata, getOntologyV2, listOntologiesV2 };","/*\n * Copyright 2024 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { wireObjectTypeFullMetadataToSdkObjectTypeDefinition } from \"@osdk/generator-converters\";\nimport { getObjectTypeV2, listOutgoingLinkTypesV2 } from \"@osdk/internal.foundry/OntologiesV2_ObjectTypeV2\";\nimport { listInterfaceTypes } from \"@osdk/internal.foundry/OntologiesV2_OntologyObjectV2\";\nimport invariant from \"tiny-invariant\";\nimport { loadAllOntologies } from \"../generated/ontology-metadata/api/OntologyMetadataService/loadAllOntologies.js\";\nimport { loadOntologyEntities } from \"../generated/ontology-metadata/api/OntologyMetadataService/loadOntologyEntities.js\";\nasync function loadAllOutgoingLinkTypes(client, objtype) {\n const linkTypes = [];\n let pageToken;\n do {\n const result = await listOutgoingLinkTypesV2(client, client.ontologyRid, objtype, {\n pageToken\n });\n pageToken = result.nextPageToken;\n linkTypes.push(...result.data);\n } while (pageToken != null);\n return linkTypes;\n}\nfunction makeConjureContext(client, servicePath) {\n return {\n baseUrl: client.stack,\n servicePath,\n fetchFn: client.fetch,\n tokenProvider: async () => await client.tokenProvider()\n };\n}\nexport async function loadFullObjectMetadata(client, objtype) {\n const conjureCtx = makeConjureContext(client, \"/ontology-metadata/api\");\n const [objectType, linkTypes, interfaceTypes, metadata] = await Promise.all([getObjectTypeV2(client, client.ontologyRid, objtype), loadAllOutgoingLinkTypes(client, objtype), listInterfaceTypes(client, client.ontologyRid, {\n pageSize: 200,\n preview: true\n }), await loadAllOntologies(conjureCtx, {})]);\n const sharedPropertyTypeMapping = await loadSptMap(conjureCtx, metadata, client.ontologyRid, objectType.rid);\n const full = {\n implementsInterfaces: interfaceTypes.data.map(i => i.apiName),\n implementsInterfaces2: {},\n // FIXME(interfaces)\n linkTypes,\n objectType,\n sharedPropertyTypeMapping\n };\n\n // TODO: reuse the loaded interface data!\n return wireObjectTypeFullMetadataToSdkObjectTypeDefinition(full, true);\n}\nasync function loadSptMap(ctx, ontologyMetadata, ontologyRid, objectRid) {\n const ontologyVersion = ontologyMetadata.ontologies[ontologyRid].currentOntologyVersion;\n const body = {\n objectTypeVersions: {\n [objectRid]: ontologyVersion\n },\n linkTypeVersions: {},\n loadRedacted: false,\n includeObjectTypesWithoutSearchableDatasources: true\n };\n const entities = await loadOntologyEntities(ctx, body);\n const objectType = entities.objectTypes[objectRid];\n !objectType ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"object type should be loaded\") : invariant(false) : void 0;\n const sptMap = {};\n for (const property of Object.values(objectType.propertyTypes)) {\n if (property.sharedPropertyTypeApiName && property.apiName) {\n sptMap[property.sharedPropertyTypeApiName] = property.apiName;\n }\n }\n return sptMap;\n}","import { omniFetch } from '@osdk/shared.net';\n\n// src/public/OntologiesV2_ObjectTypeV2.ts\nvar _listObjectTypesV2 = [0, \"/v2/ontologies/{0}/objectTypes\", 2];\nfunction listObjectTypesV2($ctx, ...args) {\n return omniFetch($ctx, _listObjectTypesV2, ...args);\n}\nvar _getObjectTypeV2 = [0, \"/v2/ontologies/{0}/objectTypes/{1}\"];\nfunction getObjectTypeV2($ctx, ...args) {\n return omniFetch($ctx, _getObjectTypeV2, ...args);\n}\nvar _listOutgoingLinkTypesV2 = [0, \"/v2/ontologies/{0}/objectTypes/{1}/outgoingLinkTypes\", 2];\nfunction listOutgoingLinkTypesV2($ctx, ...args) {\n return omniFetch($ctx, _listOutgoingLinkTypesV2, ...args);\n}\nvar _getOutgoingLinkTypeV2 = [0, \"/v2/ontologies/{0}/objectTypes/{1}/outgoingLinkTypes/{2}\"];\nfunction getOutgoingLinkTypeV2($ctx, ...args) {\n return omniFetch($ctx, _getOutgoingLinkTypeV2, ...args);\n}\nexport { getObjectTypeV2, getOutgoingLinkTypeV2, listObjectTypesV2, listOutgoingLinkTypesV2 };","/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { conjureFetch } from \"conjure-lite\";\n/**\n * Endpoint to load metadata about the Ontologies a user has access to. The response will contain\n * only Ontologies on which the user has `ontology:view-ontology`. Note that the returned\n * LoadAllOntologiesResponse may be empty if there is no Ontology yet.\n */\nexport async function loadAllOntologies(ctx, request) {\n return conjureFetch(ctx, `/ontology/ontology/ontologies/load/all`, \"POST\", request);\n}","/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { conjureFetch } from \"conjure-lite\";\n/**\n * Endpoint to batch load Ontology entities. The returned OntologyLoadResponse will only contain\n * entities that actually exist and are visible to the user. If the user has requested entities at\n * invalid ontology versions or entities that do not exist in the specified versions,\n * those will not be present in the response. If the user tries to load entities across multiple ontologies, the\n * call will fail with an exception.\n */\nexport async function loadOntologyEntities(ctx, request) {\n return conjureFetch(ctx, `/ontology/ontology/loadEntities`, \"POST\", request);\n}","/*\n * Copyright 2024 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { __UNSTABLE_wireInterfaceTypeV2ToSdkObjectDefinition } from \"@osdk/generator-converters\";\nimport { getInterfaceType } from \"@osdk/internal.foundry/OntologiesV2_OntologyObjectV2\";\nexport async function loadInterfaceDefinition(client, objtype) {\n const r = await getInterfaceType(client, client.ontologyRid, objtype, {\n preview: true\n });\n return __UNSTABLE_wireInterfaceTypeV2ToSdkObjectDefinition(r, true);\n}","/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nexport const USER_AGENT = `osdk-client/${process.env.PACKAGE_VERSION}`;","/*\n * Copyright 2024 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { createActionInvoker } from \"./actions/createActionInvoker.js\";\nimport { createMinimalClient } from \"./createMinimalClient.js\";\nimport { createObjectSet } from \"./objectSet/createObjectSet.js\";\nexport function createClientInternal(objectSetFactory,\n// first so i can bind\nstack, ontologyRid, tokenProvider, options = undefined, fetchFn = fetch) {\n const clientCtx = createMinimalClient({\n ontologyRid\n }, stack, tokenProvider, options, fetchFn, objectSetFactory);\n function clientFn(o) {\n if (o.type === \"object\" || o.type === \"interface\") {\n clientCtx.ontologyProvider.maybeSeed(o);\n return objectSetFactory(o, clientCtx);\n } else if (o.type === \"action\") {\n clientCtx.ontologyProvider.maybeSeed(o);\n return createActionInvoker(clientCtx, o);\n } else {\n throw new Error(\"not implemented\");\n }\n }\n const client = Object.defineProperties(clientFn, {\n ctx: {\n value: clientCtx\n }\n });\n return client;\n}\nexport const createClient = createClientInternal.bind(undefined, createObjectSet);"]}
|
|
@@ -1089,7 +1089,7 @@ var createStandardOntologyProviderFactory = (client) => {
|
|
|
1089
1089
|
};
|
|
1090
1090
|
|
|
1091
1091
|
// src/util/UserAgent.ts
|
|
1092
|
-
var USER_AGENT = `osdk-client/${"0.18.0
|
|
1092
|
+
var USER_AGENT = `osdk-client/${"0.18.0"}`;
|
|
1093
1093
|
|
|
1094
1094
|
// src/createMinimalClient.ts
|
|
1095
1095
|
function createMinimalClient(metadata, stack, tokenProvider, options = {}, fetchFn = global.fetch, objectSetFactory = createObjectSet) {
|
|
@@ -1145,4 +1145,4 @@ var createClient = createClientInternal.bind(void 0, createObjectSet);
|
|
|
1145
1145
|
|
|
1146
1146
|
export { ActionValidationError, augment, convertWireToOsdkObjects, createClient, createClientInternal, createObjectSet, getObjectTypeV2, loadAllOntologies, loadOntologyEntities };
|
|
1147
1147
|
//# sourceMappingURL=out.js.map
|
|
1148
|
-
//# sourceMappingURL=chunk-
|
|
1148
|
+
//# sourceMappingURL=chunk-GN5YGVT6.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../internal.foundry/build/js/public/OntologiesV2_OntologyObjectSet.mjs","../../../internal.foundry/build/js/public/OntologiesV2_OntologyObjectV2.mjs","../../src/util/addUserAgent.ts","../../src/object/convertWireToOsdkObjects.ts","../../src/internal/conversions/legacyToModernSingleAggregationResult.ts","../../src/internal/conversions/modernToLegacyAggregationClause.ts","../../src/query/aggregations/GroupByClause.ts","../../src/internal/conversions/modernToLegacyGroupByClause.ts","../../src/internal/conversions/modernToLegacyWhereClause.ts","../../src/query/WhereClause.ts","../../src/object/fetchSingle.ts","../../src/object/aggregate.ts","../../src/util/WireObjectSet.ts","../../src/objectSet/createObjectSet.ts","../../src/object/Attachment.ts","../../src/object/Cache.ts","../../src/object/fetchPage.ts","../../src/actions/ActionValidationError.ts","../../../internal.foundry/build/js/public/OntologiesV2_Action.mjs","../../src/util/isOntologyObjectV2.ts","../../src/util/toDataValue.ts","../../src/actions/applyAction.ts","../../src/actions/createActionInvoker.ts","../../src/createMinimalClient.ts","../../src/ontology/StandardOntologyProvider.ts","../../../internal.foundry/build/js/public/OntologiesV2_OntologyV2.mjs","../../src/ontology/loadFullObjectMetadata.ts","../../../internal.foundry/build/js/public/OntologiesV2_ObjectTypeV2.mjs","../../src/generated/ontology-metadata/api/OntologyMetadataService/loadAllOntologies.ts","../../src/generated/ontology-metadata/api/OntologyMetadataService/loadOntologyEntities.ts","../../src/ontology/loadInterfaceDefinition.ts","../../src/util/UserAgent.ts","../../src/createClient.ts"],"names":["omniFetch","invariant","client","__UNSTABLE_wireInterfaceTypeV2ToSdkObjectDefinition","wireObjectTypeFullMetadataToSdkObjectTypeDefinition","conjureFetch"],"mappings":"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","sourcesContent":["import { omniFetch } from '@osdk/shared.net';\n\n// src/public/OntologiesV2_OntologyObjectSet.ts\nvar _getObjectSetV2 = [0, \"/v2/ontologies/{0}/objectSets/{1}\"];\nfunction getObjectSetV2($ctx, ...args) {\n return omniFetch($ctx, _getObjectSetV2, ...args);\n}\nvar _loadObjectSetV2 = [1, \"/v2/ontologies/{0}/objectSets/loadObjects\", 3];\nfunction loadObjectSetV2($ctx, ...args) {\n return omniFetch($ctx, _loadObjectSetV2, ...args);\n}\nvar _aggregateObjectSetV2 = [1, \"/v2/ontologies/{0}/objectSets/aggregate\", 3];\nfunction aggregateObjectSetV2($ctx, ...args) {\n return omniFetch($ctx, _aggregateObjectSetV2, ...args);\n}\nexport { aggregateObjectSetV2, getObjectSetV2, loadObjectSetV2 };","import { omniFetch } from '@osdk/shared.net';\n\n// src/public/OntologiesV2_OntologyObjectV2.ts\nvar _listObjectsV2 = [0, \"/v2/ontologies/{0}/objects/{1}\", 2];\nfunction listObjectsV2($ctx, ...args) {\n return omniFetch($ctx, _listObjectsV2, ...args);\n}\nvar _getObjectV2 = [0, \"/v2/ontologies/{0}/objects/{1}/{2}\", 2];\nfunction getObjectV2($ctx, ...args) {\n return omniFetch($ctx, _getObjectV2, ...args);\n}\nvar _countObjects = [1, \"/v2/ontologies/{0}/objects/{1}/count\", 2];\nfunction countObjects($ctx, ...args) {\n return omniFetch($ctx, _countObjects, ...args);\n}\nvar _searchObjectsV2 = [1, \"/v2/ontologies/{0}/objects/{1}/search\", 3];\nfunction searchObjectsV2($ctx, ...args) {\n return omniFetch($ctx, _searchObjectsV2, ...args);\n}\nvar _aggregateObjectsV2 = [1, \"/v2/ontologies/{0}/objects/{1}/aggregate\", 3];\nfunction aggregateObjectsV2($ctx, ...args) {\n return omniFetch($ctx, _aggregateObjectsV2, ...args);\n}\nvar _listInterfaceTypes = [0, \"/v2/ontologies/{0}/interfaceTypes\", 2];\nfunction listInterfaceTypes($ctx, ...args) {\n return omniFetch($ctx, _listInterfaceTypes, ...args);\n}\nvar _getInterfaceType = [0, \"/v2/ontologies/{0}/interfaceTypes/{1}\", 2];\nfunction getInterfaceType($ctx, ...args) {\n return omniFetch($ctx, _getInterfaceType, ...args);\n}\nvar _searchObjectsForInterface = [1, \"/v2/ontologies/{0}/interfaces/{1}/search\", 3];\nfunction searchObjectsForInterface($ctx, ...args) {\n return omniFetch($ctx, _searchObjectsForInterface, ...args);\n}\nvar _aggregateObjectsForInterface = [1, \"/v2/ontologies/{0}/interfaces/{1}/aggregate\", 3];\nfunction aggregateObjectsForInterface($ctx, ...args) {\n return omniFetch($ctx, _aggregateObjectsForInterface, ...args);\n}\nvar _listLinkedObjectsV2 = [0, \"/v2/ontologies/{0}/objects/{1}/{2}/links/{3}\", 2];\nfunction listLinkedObjectsV2($ctx, ...args) {\n return omniFetch($ctx, _listLinkedObjectsV2, ...args);\n}\nvar _getLinkedObjectV2 = [0, \"/v2/ontologies/{0}/objects/{1}/{2}/links/{3}/{4}\", 2];\nfunction getLinkedObjectV2($ctx, ...args) {\n return omniFetch($ctx, _getLinkedObjectV2, ...args);\n}\nvar _getAttachmentsV2 = [0, \"/v2/ontologies/{0}/objects/{1}/{2}/attachments/{3}\", 2];\nfunction getAttachmentsV2($ctx, ...args) {\n return omniFetch($ctx, _getAttachmentsV2, ...args);\n}\nvar _getAttachmentByRidV2 = [0, \"/v2/ontologies/{0}/objects/{1}/{2}/attachments/{3}/{4}\", 2];\nfunction getAttachmentByRidV2($ctx, ...args) {\n return omniFetch($ctx, _getAttachmentByRidV2, ...args);\n}\nvar _getAttachmentContentV2 = [0, \"/v2/ontologies/{0}/objects/{1}/{2}/attachments/{3}/content\", 2,, \"*/*\"];\nfunction getAttachmentContentV2($ctx, ...args) {\n return omniFetch($ctx, _getAttachmentContentV2, ...args);\n}\nvar _getAttachmentContentByRidV2 = [0, \"/v2/ontologies/{0}/objects/{1}/{2}/attachments/{3}/{4}/content\", 2,, \"*/*\"];\nfunction getAttachmentContentByRidV2($ctx, ...args) {\n return omniFetch($ctx, _getAttachmentContentByRidV2, ...args);\n}\nvar _getFirstPoint = [0, \"/v2/ontologies/{0}/objects/{1}/{2}/timeseries/{3}/firstPoint\", 2];\nfunction getFirstPoint($ctx, ...args) {\n return omniFetch($ctx, _getFirstPoint, ...args);\n}\nvar _getLastPoint = [0, \"/v2/ontologies/{0}/objects/{1}/{2}/timeseries/{3}/lastPoint\", 2];\nfunction getLastPoint($ctx, ...args) {\n return omniFetch($ctx, _getLastPoint, ...args);\n}\nvar _streamPoints = [1, \"/v2/ontologies/{0}/objects/{1}/{2}/timeseries/{3}/streamPoints\", 3,, \"*/*\"];\nfunction streamPoints($ctx, ...args) {\n return omniFetch($ctx, _streamPoints, ...args);\n}\nexport { aggregateObjectsForInterface, aggregateObjectsV2, countObjects, getAttachmentByRidV2, getAttachmentContentByRidV2, getAttachmentContentV2, getAttachmentsV2, getFirstPoint, getInterfaceType, getLastPoint, getLinkedObjectV2, getObjectV2, listInterfaceTypes, listLinkedObjectsV2, listObjectsV2, searchObjectsForInterface, searchObjectsV2, streamPoints };","/*\n * Copyright 2024 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { createFetchHeaderMutator } from \"@osdk/shared.net\";\nexport function addUserAgent(client, withMetadata) {\n if (withMetadata.osdkMetadata) {\n return {\n ...client,\n fetch: createFetchHeaderMutator(client.fetch, headers => {\n headers.set(\"Fetch-User-Agent\", withMetadata.osdkMetadata.extraUserAgent);\n return headers;\n })\n };\n }\n return client;\n}","/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport invariant from \"tiny-invariant\";\nimport { getWireObjectSet } from \"../objectSet/createObjectSet.js\";\nimport { Attachment } from \"./Attachment.js\";\nimport { createAsyncCache, createCache } from \"./Cache.js\";\nimport { fetchSingle, fetchSingleWithErrors } from \"./fetchSingle.js\";\nconst OriginClient = Symbol();\nconst UnderlyingObject = Symbol();\nconst InterfaceDefinitions = Symbol();\nclass LinkFetcherProxyHandler {\n constructor(objDef, primaryKey, client) {\n this.objDef = objDef;\n this.primaryKey = primaryKey;\n this.client = client;\n }\n get(_target, p) {\n const linkDef = this.objDef.links[p];\n if (linkDef == null) {\n return;\n }\n const objectSet = this.client.objectSetFactory(this.objDef, this.client).where({\n [this.objDef.primaryKeyApiName]: this.primaryKey\n }).pivotTo(p);\n if (!linkDef.multiplicity) {\n return {\n /** @deprecated */\n get: options => fetchSingle(this.client, this.objDef, options ?? {}, getWireObjectSet(objectSet)),\n fetchOne: options => fetchSingle(this.client, this.objDef, options ?? {}, getWireObjectSet(objectSet)),\n fetchOneWithErrors: options => fetchSingleWithErrors(this.client, this.objDef, options ?? {}, getWireObjectSet(objectSet))\n };\n } else {\n return objectSet;\n }\n }\n ownKeys() {\n return Object.keys(this.objDef.links);\n }\n getOwnPropertyDescriptor(target, p) {\n return {\n enumerable: true,\n configurable: true,\n get: () => {\n return this.get(target, p);\n }\n };\n }\n}\nfunction createPrototype(objDef, client) {\n if (process.env.NODE_ENV !== \"production\") {\n !(objDef.type === \"object\") ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"Expected object definition\") : invariant(false) : void 0;\n }\n const sharedPropertyDefs = {\n $as: {\n value: $as\n }\n };\n // we can get away with a single interface proto\n const interfaceProto = Object.defineProperties({}, sharedPropertyDefs);\n const objectProto = Object.defineProperties({}, {\n $link: {\n get: function () {\n return new Proxy({}, new LinkFetcherProxyHandler(objDef, this[\"$primaryKey\"], client));\n }\n },\n ...sharedPropertyDefs\n });\n\n // We use the exact same logic for both the interface rep and the underlying rep\n function $as(newDef) {\n if (typeof newDef === \"string\") {\n if (newDef === objDef.apiName) {\n return this[UnderlyingObject];\n }\n const def = objDef[InterfaceDefinitions][newDef];\n if (!def) {\n throw new Error(`Object does not implement interface '${newDef}'.`);\n }\n newDef = def;\n } else if (newDef.apiName === objDef.apiName) {\n return this[UnderlyingObject];\n }\n if (newDef.type !== \"interface\" && newDef.apiName !== this.$apiName) {\n throw new Error(`'${newDef.apiName}' is not an interface of '${this.$objectType}'.`);\n }\n const underlying = this[UnderlyingObject];\n const common = {\n enumerable: true,\n configurable: true\n };\n\n // if we use a proxy here instead we can probably pull off interfaces reflecting the underlying object even if its updated\n\n // we are defining every time because it creates properties in the exact same order\n // keeping the meta classes down to one per interface/objecttype pair\n return Object.create(interfaceProto, {\n $apiName: {\n value: newDef.apiName,\n ...common\n },\n $objectType: {\n value: objDef.apiName,\n ...common\n },\n $primaryKey: {\n value: this[\"$primaryKey\"],\n ...common\n },\n ...Object.fromEntries(Object.keys(newDef.properties).map(p => {\n const value = underlying[objDef.spts[p]];\n return [p, {\n value,\n enumerable: value !== undefined\n }];\n })),\n [UnderlyingObject]: {\n value: underlying\n }\n });\n }\n return objectProto;\n}\n\n// preprocess the ontology definition to more quickly apply object conversions when needed\nfunction createConverter(objDef) {\n const steps = [];\n for (const [key, value] of Object.entries(objDef.properties)) {\n // attachments need a wrapper to provide functionality and to identify them at serialization time\n if (value.type === \"attachment\") {\n steps.push(o => {\n if (o[key] != null) {\n if (Array.isArray(o[key])) {\n o[key] = o[key].map(a => new Attachment(a.rid));\n } else {\n o[key] = new Attachment(o[key].rid);\n }\n }\n });\n }\n }\n return steps.length > 0 ? o => {\n for (const step of steps) {\n step(o);\n }\n } : undefined;\n}\nconst protoConverterCache = createCache((client, objectDef) => {\n const proto = createPrototype(objectDef, client);\n const converter = createConverter(objectDef);\n return [proto, converter];\n});\nconst isAfterFeb2024OrNewApis = false;\n\n/**\n * If interfaceApiName is not undefined, converts the instances of the\n * interface into their respective\n * underlying concrete types and then returns the $as() representation\n * for the consumers.\n *\n * Otherwise just does the conversion\n *\n * May mutate in place for performance reasons. If you need a clean copy,\n * keep it first.\n *\n * However, you must use the returned value, which will be whatever is correct.\n *\n * @internal\n * @param interfaceApiName - if undefined\n */\nexport async function convertWireToOsdkObjects(client, objects, interfaceApiName, forceRemoveRid = false) {\n if (forceRemoveRid) {\n for (const obj of objects) {\n delete obj.__rid;\n }\n }\n fixObjectPropertiesInline(objects);\n\n /*\n We need to create a local cache for the life of this function.\n Because the user may have their global cache set to \"alwaysRevalidate\",\n we want to be able to avoid making N calls to load object/interface information.\n Our local cache will delegate to the global one but since it also caches,\n we can short circuit the `alwaysRevalidate` logic.\n This tradeoff is slightly less accurate than `alwaysRevalidate` but is close\n enough given we got back objects at T-3 and if the types are inconsistent for\n T-2 and T-1, then they are guarenteed wrong for T-3. No matter what\n the user will get a failure case here. So we avoid the extra work.\n */\n const localObjectCache = createLocalObjectCacheAndInitiatePreseed(objects, client);\n for (const obj of objects) {\n const objectDef = await localObjectCache.get(client, obj.$apiName);\n if (objectDef == null) {\n throw new Error(`Failed to find ontology definition for '${obj.$apiName}'`);\n }\n if (interfaceApiName !== undefined) {\n // API returns interface spt names but we cache by real values\n for (const [sptProp, regularProp] of Object.entries(objectDef.spts)) {\n if (sptProp in obj) {\n const value = obj[sptProp];\n delete obj[sptProp];\n if (value !== undefined) {\n obj[regularProp] = value;\n }\n }\n }\n }\n internalConvertObjectInPlace(objectDef, client, obj);\n }\n if (interfaceApiName) {\n return objects.map(o => o.$as(interfaceApiName));\n } else {\n // we did the conversion so we can cast\n return objects;\n }\n}\nfunction createLocalObjectCacheAndInitiatePreseed(objects, client) {\n // local cache delegates to the global one\n const localInterfaceCache = createAsyncCache((client, apiName) => client.ontologyProvider.getInterfaceDefinition(apiName));\n const localObjectCache = createAsyncCache(async (client, apiName) => {\n // first delegate to the global cache\n const objectDef = await client.ontologyProvider.getObjectDefinition(apiName);\n\n // ensure we have all of the interfaces loaded\n const interfaceDefs = Object.fromEntries((await Promise.all(objectDef.implements?.map(i => localInterfaceCache.get(client, i)) ?? [])).map(i => [i.apiName, i]));\n\n // save interfaces for later if not the first time\n if (objectDef[InterfaceDefinitions] == null) {\n Object.defineProperty(objectDef, InterfaceDefinitions, {\n value: interfaceDefs,\n enumerable: false,\n configurable: false,\n writable: false\n });\n }\n return objectDef;\n });\n const uniqueApiNames = new Set();\n for (const {\n $apiName\n } of objects) {\n if (uniqueApiNames.has($apiName)) continue;\n uniqueApiNames.add($apiName);\n // preseed the object cache without blocking\n // N.B localObjectCache will preseed the interface cache\n localObjectCache.get(client, $apiName);\n }\n return localObjectCache;\n}\nfunction fixObjectPropertiesInline(objs) {\n for (const obj of objs) {\n if (obj.__rid) {\n obj.$rid = obj.__rid;\n delete obj.__rid;\n }\n\n // Backend returns as __apiName but we want to stick to $ structure\n obj.$apiName = obj.__apiName;\n\n // for now these are the same but when we start doing interface projections the $objectType will always be underlying and\n // the $apiName will be for the current view (in current designs)\n obj.$objectType = obj.__apiName;\n\n // copying over for now as its always returned. In the future, this should just be inferred from underlying\n obj.$primaryKey = obj.__primaryKey;\n\n // After Feb 2024 (unless we have new apis):\n if (isAfterFeb2024OrNewApis) {\n delete obj.__apiName;\n delete obj.__primaryKey;\n } else {\n // Hide these from things like `console.log` so that people\n // don't think to use them.\n Object.defineProperties(obj, {\n \"__apiName\": {\n enumerable: false\n },\n \"__primaryKey\": {\n enumerable: false\n }\n });\n }\n }\n}\nfunction internalConvertObjectInPlace(objectDef, client, obj) {\n const [proto, converter] = protoConverterCache.get(client, objectDef);\n Object.setPrototypeOf(obj, proto);\n Object.defineProperties(obj, {\n [OriginClient]: {\n value: client\n },\n [UnderlyingObject]: {\n value: obj\n }\n });\n if (converter) {\n converter(obj);\n }\n}","/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport invariant from \"tiny-invariant\";\nexport function legacyToModernSingleAggregationResult(entry) {\n return entry.metrics.reduce((accumulator, curValue) => {\n const parts = curValue.name.split(\".\");\n if (parts[0] === \"count\") {\n return accumulator;\n }\n !(parts.length === 2) ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"assumed we were getting a `${key}.${type}`\") : invariant(false) : void 0;\n if (!(parts[0] in accumulator)) {\n accumulator[parts[0]] = {};\n }\n accumulator[parts[0]][parts[1]] = curValue.value;\n return accumulator;\n }, {});\n}","/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nexport function modernToLegacyAggregationClause(select) {\n return Object.entries(select).flatMap(([k, v]) => {\n if (k === \"$count\") {\n if (v) return {\n type: \"count\",\n name: \"count\"\n };\n return [];\n } else if (Array.isArray(v)) {\n return v.map(v2 => {\n return {\n type: v2,\n name: `${k}.${v2}`,\n field: k\n };\n });\n } else {\n return [{\n type: v,\n // FIXME v has additional possible values\n name: `${k}.${v}`,\n field: k\n }];\n }\n });\n}","/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nexport const DurationMapping = {\n \"sec\": \"SECONDS\",\n \"seconds\": \"SECONDS\",\n \"min\": \"MINUTES\",\n \"minute\": \"MINUTES\",\n \"minutes\": \"MINUTES\",\n \"hr\": \"HOURS\",\n \"hrs\": \"HOURS\",\n \"hour\": \"HOURS\",\n \"hours\": \"HOURS\",\n \"day\": \"DAYS\",\n \"days\": \"DAYS\",\n \"wk\": \"WEEKS\",\n \"week\": \"WEEKS\",\n \"weeks\": \"WEEKS\",\n \"mos\": \"MONTHS\",\n \"month\": \"MONTHS\",\n \"months\": \"MONTHS\",\n \"yr\": \"YEARS\",\n \"year\": \"YEARS\",\n \"years\": \"YEARS\",\n \"quarter\": \"QUARTERS\",\n \"quarters\": \"QUARTERS\"\n};","/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { DurationMapping } from \"../../query/aggregations/GroupByClause.js\";\nexport function modernToLegacyGroupByClause(groupByClause) {\n if (!groupByClause) return [];\n return Object.entries(groupByClause).flatMap(([field, type]) => {\n if (type === \"exact\") {\n return [{\n type,\n field\n }];\n } else if (\"exactWithLimit\" in type) {\n {\n return [{\n type: \"exact\",\n field,\n maxGroupCount: type.exactWithLimit\n }];\n }\n } else if (\"fixedWidth\" in type) {\n return [{\n type: \"fixedWidth\",\n field,\n fixedWidth: type.fixedWidth\n }];\n } else if (\"ranges\" in type) {\n return [{\n type: \"ranges\",\n field,\n ranges: type.ranges.map(range => convertRange(range))\n }];\n } else if (\"duration\" in type) {\n return [{\n type: \"duration\",\n field,\n value: type.duration[0],\n unit: DurationMapping[type.duration[1]]\n }];\n } else return [];\n });\n}\nfunction convertRange(range) {\n return {\n startValue: range[0],\n endValue: range[1]\n };\n}","/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport invariant from \"tiny-invariant\";\nimport { DistanceUnitMapping } from \"../../query/WhereClause.js\";\nexport function modernToLegacyWhereClause(whereClause) {\n if (\"$and\" in whereClause) {\n return {\n type: \"and\",\n value: whereClause.$and.map(modernToLegacyWhereClause)\n };\n } else if (\"$or\" in whereClause) {\n return {\n type: \"or\",\n value: whereClause.$or.map(modernToLegacyWhereClause)\n };\n } else if (\"$not\" in whereClause) {\n return {\n type: \"not\",\n value: modernToLegacyWhereClause(whereClause.$not)\n };\n }\n const parts = Object.entries(whereClause);\n if (parts.length === 1) {\n return handleWherePair(parts[0]);\n }\n return {\n type: \"and\",\n value: parts.map(handleWherePair)\n };\n}\nfunction makeGeoFilterBbox(field, bbox, filterType) {\n return {\n type: filterType === \"$within\" ? \"withinBoundingBox\" : \"intersectsBoundingBox\",\n field,\n value: {\n topLeft: {\n type: \"Point\",\n coordinates: [bbox[0], bbox[3]]\n },\n bottomRight: {\n type: \"Point\",\n coordinates: [bbox[2], bbox[1]]\n }\n }\n };\n}\nfunction makeGeoFilterPolygon(field, coordinates, filterType) {\n return {\n type: filterType,\n field,\n value: {\n type: \"Polygon\",\n coordinates\n }\n };\n}\nfunction handleWherePair([field, filter]) {\n !(filter != null) ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"Defined key values are only allowed when they are not undefined.\") : invariant(false) : void 0;\n if (typeof filter === \"string\" || typeof filter === \"number\" || typeof filter === \"boolean\") {\n return {\n type: \"eq\",\n field,\n value: filter\n };\n }\n const keysOfFilter = Object.keys(filter);\n\n // If any of the keys start with `$` then they must be the only one.\n // e.g. `where({ name: { $eq: \"foo\", $ne: \"bar\" } })` is invalid currently\n const hasDollarSign = keysOfFilter.some(key => key.startsWith(\"$\"));\n !(!hasDollarSign || keysOfFilter.length === 1) ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"WhereClause Filter with multiple clauses isn't allowed\") : invariant(false) : void 0;\n if (!hasDollarSign) {\n // Future case for structs\n throw new Error(`Unsupported filter. Did you forget to use a $-prefixed filter? (${JSON.stringify(filter)})`);\n }\n const firstKey = keysOfFilter[0];\n !(filter[firstKey] != null) ? process.env.NODE_ENV !== \"production\" ? invariant(false) : invariant(false) : void 0;\n if (firstKey === \"$ne\") {\n return {\n type: \"not\",\n value: {\n type: \"eq\",\n field,\n value: filter[firstKey]\n }\n };\n }\n if (firstKey === \"$within\") {\n const withinBody = filter[firstKey];\n if (Array.isArray(withinBody)) {\n return makeGeoFilterBbox(field, withinBody, firstKey);\n } else if (\"bbox\" in withinBody && !(\"type\" in withinBody)) {\n return makeGeoFilterBbox(field, withinBody.bbox, firstKey);\n } else if (\"distance\" in withinBody && \"of\" in withinBody) {\n return {\n type: \"withinDistanceOf\",\n field,\n value: {\n center: Array.isArray(withinBody.of) ? {\n type: \"Point\",\n coordinates: withinBody.of\n } : withinBody.of,\n distance: {\n value: withinBody.distance[0],\n unit: DistanceUnitMapping[withinBody.distance[1]]\n }\n }\n };\n } else {\n const coordinates = \"polygon\" in withinBody ? withinBody.polygon : withinBody.coordinates;\n return makeGeoFilterPolygon(field, coordinates, \"withinPolygon\");\n }\n }\n if (firstKey === \"$intersects\") {\n const intersectsBody = filter[firstKey];\n if (Array.isArray(intersectsBody)) {\n return makeGeoFilterBbox(field, intersectsBody, firstKey);\n } else if (\"bbox\" in intersectsBody && !(\"type\" in intersectsBody)) {\n return makeGeoFilterBbox(field, intersectsBody.bbox, firstKey);\n } else {\n const coordinates = \"polygon\" in intersectsBody ? intersectsBody.polygon : intersectsBody.coordinates;\n return makeGeoFilterPolygon(field, coordinates, \"intersectsPolygon\");\n }\n }\n return {\n type: firstKey.substring(1),\n field,\n value: filter[firstKey]\n };\n}","/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\n// We need to conditional here to force the union to be distributed\n\nexport const DistanceUnitMapping = {\n \"centimeter\": \"CENTIMETERS\",\n \"centimeters\": \"CENTIMETERS\",\n \"cm\": \"CENTIMETERS\",\n \"meter\": \"METERS\",\n \"meters\": \"METERS\",\n \"m\": \"METERS\",\n \"kilometer\": \"KILOMETERS\",\n \"kilometers\": \"KILOMETERS\",\n \"km\": \"KILOMETERS\",\n \"inch\": \"INCHES\",\n \"inches\": \"INCHES\",\n \"foot\": \"FEET\",\n \"feet\": \"FEET\",\n \"yard\": \"YARDS\",\n \"yards\": \"YARDS\",\n \"mile\": \"MILES\",\n \"miles\": \"MILES\",\n \"nautical_mile\": \"NAUTICAL_MILES\",\n \"nauticalMile\": \"NAUTICAL_MILES\",\n \"nautical miles\": \"NAUTICAL_MILES\"\n};\n\n// FIXME we need to represent all types","/*\n * Copyright 2024 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { PalantirApiError } from \"@osdk/shared.net\";\nimport { fetchPage } from \"./fetchPage.js\";\nexport async function fetchSingle(client, objectType, args, objectSet) {\n const result = await fetchPage(client, objectType, {\n ...args,\n pageSize: 1\n }, objectSet);\n if (result.data.length !== 1 || result.nextPageToken != null) {\n throw new PalantirApiError(`Expected a single result but got ${result.data.length} instead${result.nextPageToken != null ? \" with nextPageToken set\" : \"\"}`);\n }\n return result.data[0];\n}\nexport async function fetchSingleWithErrors(client, objectType, args, objectSet) {\n try {\n const result = await fetchSingle(client, objectType, args, objectSet);\n return {\n value: result\n };\n } catch (e) {\n if (e instanceof Error) {\n return {\n error: e\n };\n }\n return {\n error: e\n };\n }\n}","/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { aggregateObjectSetV2 } from \"@osdk/internal.foundry/OntologiesV2_OntologyObjectSet\";\nimport invariant from \"tiny-invariant\";\nimport { legacyToModernSingleAggregationResult, modernToLegacyAggregationClause, modernToLegacyGroupByClause, modernToLegacyWhereClause } from \"../internal/conversions/index.js\";\nimport { addUserAgent } from \"../util/addUserAgent.js\";\n/** @deprecated use `aggregate` */\nexport async function aggregateOrThrow(clientCtx, objectType, objectSet = {\n type: \"base\",\n objectType: objectType[\"apiName\"]\n}, req) {\n return aggregate(clientCtx, objectType, objectSet, req);\n}\nexport async function aggregate(clientCtx, objectType, objectSet = {\n type: \"base\",\n objectType: objectType[\"apiName\"]\n}, req) {\n const body = {\n aggregation: modernToLegacyAggregationClause(req.select),\n groupBy: [],\n where: undefined\n };\n if (req.groupBy) {\n body.groupBy = modernToLegacyGroupByClause(req.groupBy);\n }\n if (req.where) {\n body.where = modernToLegacyWhereClause(req.where);\n }\n const result = await aggregateObjectSetV2(addUserAgent(clientCtx, objectType), clientCtx.ontologyRid, {\n objectSet,\n groupBy: body.groupBy,\n aggregation: body.aggregation\n });\n if (!req.groupBy) {\n !(result.data.length === 1) ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"no group by clause should mean only one data result\") : invariant(false) : void 0;\n return {\n ...aggregationToCountResult(result.data[0]),\n ...legacyToModernSingleAggregationResult(result.data[0])\n };\n }\n const ret = result.data.map(entry => {\n return {\n $group: entry.group,\n ...aggregationToCountResult(entry),\n ...legacyToModernSingleAggregationResult(entry)\n };\n }); // fixme\n\n return ret; // FIXME\n}\nfunction aggregationToCountResult(entry) {\n for (const aggregateResult of entry.metrics) {\n if (aggregateResult.name === \"count\") {\n return {\n $count: aggregateResult.value\n };\n }\n }\n}","/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nconst WIRE_OBJECT_SET_TYPES = new Set([\"base\", \"filter\", \"intersect\", \"reference\", \"searchAround\", \"static\", \"subtract\", \"union\"]);\nexport function isWireObjectSet(o) {\n return o != null && typeof o === \"object\" && WIRE_OBJECT_SET_TYPES.has(o.type);\n}","/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { modernToLegacyWhereClause } from \"../internal/conversions/index.js\";\nimport { convertWireToOsdkObjects } from \"../object/convertWireToOsdkObjects.js\";\nimport { fetchPageInternal, fetchPageWithErrorsInternal } from \"../object/fetchPage.js\";\nimport { fetchSingle, fetchSingleWithErrors } from \"../object/fetchSingle.js\";\nimport { aggregate } from \"../object/index.js\";\nimport { isWireObjectSet } from \"../util/WireObjectSet.js\";\nfunction isObjectTypeDefinition(def) {\n return def.type === \"object\";\n}\nexport function isObjectSet(o) {\n return o != null && typeof o === \"object\" && isWireObjectSet(objectSetDefinitions.get(o));\n}\n\n/** @internal */\nexport function getWireObjectSet(objectSet) {\n return objectSetDefinitions.get(objectSet);\n}\nconst objectSetDefinitions = new WeakMap();\nexport function createObjectSet(objectType, clientCtx, objectSet = {\n type: \"base\",\n objectType: objectType[\"apiName\"]\n}) {\n const base = {\n aggregate: aggregate.bind(globalThis, clientCtx, objectType, objectSet),\n fetchPage: fetchPageInternal.bind(globalThis, clientCtx, objectType, objectSet),\n fetchPageWithErrors: fetchPageWithErrorsInternal.bind(globalThis, clientCtx, objectType, objectSet),\n where: clause => {\n return clientCtx.objectSetFactory(objectType, clientCtx, {\n type: \"filter\",\n objectSet: objectSet,\n where: modernToLegacyWhereClause(clause)\n });\n },\n pivotTo: function (type) {\n return createSearchAround(type)();\n },\n union: (...objectSets) => {\n return clientCtx.objectSetFactory(objectType, clientCtx, {\n type: \"union\",\n objectSets: [objectSet, ...objectSets.map(os => objectSetDefinitions.get(os))]\n });\n },\n intersect: (...objectSets) => {\n return clientCtx.objectSetFactory(objectType, clientCtx, {\n type: \"intersect\",\n objectSets: [objectSet, ...objectSets.map(os => objectSetDefinitions.get(os))]\n });\n },\n subtract: (...objectSets) => {\n return clientCtx.objectSetFactory(objectType, clientCtx, {\n type: \"subtract\",\n objectSets: [objectSet, ...objectSets.map(os => objectSetDefinitions.get(os))]\n });\n },\n asyncIter: async function* () {\n let nextPageToken = undefined;\n do {\n const result = await base.fetchPage({\n nextPageToken\n });\n for (const obj of await convertWireToOsdkObjects(clientCtx, result.data, undefined)) {\n yield obj;\n }\n } while (nextPageToken != null);\n },\n get: isObjectTypeDefinition(objectType) ? async (primaryKey, options) => {\n const withPk = {\n type: \"filter\",\n objectSet: objectSet,\n where: {\n type: \"eq\",\n field: objectType.primaryKeyApiName,\n value: primaryKey\n }\n };\n return await fetchSingle(clientCtx, objectType, options, withPk);\n } : undefined,\n fetchOne: isObjectTypeDefinition(objectType) ? async (primaryKey, options) => {\n const withPk = {\n type: \"filter\",\n objectSet: objectSet,\n where: {\n type: \"eq\",\n field: objectType.primaryKeyApiName,\n value: primaryKey\n }\n };\n return await fetchSingle(clientCtx, objectType, options, withPk);\n } : undefined,\n fetchOneWithErrors: isObjectTypeDefinition(objectType) ? async (primaryKey, options) => {\n const withPk = {\n type: \"filter\",\n objectSet: objectSet,\n where: {\n type: \"eq\",\n field: objectType.primaryKeyApiName,\n value: primaryKey\n }\n };\n return await fetchSingleWithErrors(clientCtx, objectType, options, withPk);\n } : undefined\n };\n function createSearchAround(link) {\n return () => {\n return clientCtx.objectSetFactory(objectType, clientCtx, {\n type: \"searchAround\",\n objectSet,\n link\n });\n };\n }\n objectSetDefinitions.set(base, objectSet);\n return base;\n}","/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nexport class Attachment {\n constructor(rid) {\n this.rid = rid;\n }\n}\nexport function isAttachment(o) {\n return o instanceof Attachment;\n}","/*\n * Copyright 2024 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\n/**\n * A simple cache that can be used to store values for a given client.\n */\n\n/**\n * A simple async cache that can be used to store values for a given client.\n */\n\n/**\n * Create a new cache without a factory function.\n */\n\n/**\n * Create a new cache with a factory function.\n * @param fn A factory function that will be used to create the value if it does not exist in the cache.\n */\n\nexport function createCache(fn) {\n // Given the way some consumers may use this, we may want to cache by\n // stack + ontologyApiName instead of the client object itself.\n const cache = new WeakMap();\n function get(client, key) {\n if (cache.get(client) == null) {\n cache.set(client, new Map());\n }\n let r = cache.get(client).get(key);\n if (r === undefined && fn !== undefined) {\n return set(client, key, fn(client, key));\n } else {\n return r;\n }\n }\n function set(client, key, value) {\n if (cache.get(client) == null) {\n cache.set(client, new Map());\n }\n cache.get(client).set(key, value);\n return value;\n }\n function remove(client, key) {\n if (cache.get(client) == null) return false;\n return cache.get(client).delete(key);\n }\n return {\n get,\n set,\n remove\n };\n}\n\n/**\n * Create a new cache with an async factory function.\n * @param fn A factory function that will be used to create the value if it does not exist in the cache.\n * @returns\n */\nexport function createAsyncCache(fn, createCacheLocal = createCache) {\n const cache = createCacheLocal();\n const inProgress = createCacheLocal();\n const ret = {\n getOrUndefined: function getOrUndefined(client, key) {\n return cache.get(client, key);\n },\n get: async function get(client, key) {\n return cache.get(client, key) ?? inProgress.get(client, key) ?? ret.set(client, key, fn(client, key));\n },\n set: async function set(client, k, v) {\n // the `.set` happens first to prevent races.\n try {\n const r = await inProgress.set(client, k, v); // returns v\n\n cache.set(client, k, r);\n inProgress.remove(client, k);\n return r;\n } catch (e) {\n // we don't want to cache failures\n inProgress.remove(client, k);\n throw e;\n }\n }\n };\n return ret;\n}","/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { loadObjectSetV2 } from \"@osdk/internal.foundry/OntologiesV2_OntologyObjectSet\";\nimport { searchObjectsForInterface } from \"@osdk/internal.foundry/OntologiesV2_OntologyObjectV2\";\nimport { addUserAgent } from \"../util/addUserAgent.js\";\nimport { convertWireToOsdkObjects } from \"./convertWireToOsdkObjects.js\";\nexport function augment(type, ...properties) {\n return {\n [type.apiName]: properties\n };\n}\n/** @internal */\nexport function objectSetToSearchJsonV2(objectSet, expectedApiName, existingWhere = undefined) {\n if (objectSet.type === \"base\") {\n if (objectSet.objectType !== expectedApiName) {\n throw new Error(`Expected objectSet.objectType to be ${expectedApiName}, but got ${objectSet.objectType}`);\n }\n return existingWhere;\n }\n if (objectSet.type === \"filter\") {\n return objectSetToSearchJsonV2(objectSet.objectSet, expectedApiName, existingWhere == null ? objectSet.where : {\n type: \"and\",\n value: [existingWhere, objectSet.where]\n });\n }\n throw new Error(`Unsupported objectSet type: ${objectSet.type}`);\n}\nasync function fetchInterfacePage(client, interfaceType, args, objectSet) {\n const result = await searchObjectsForInterface(addUserAgent(client, interfaceType), client.ontologyRid, interfaceType.apiName, applyFetchArgs(args, {\n augmentedProperties: args.augment ?? {},\n augmentedSharedPropertyTypes: {},\n otherInterfaceTypes: [],\n selectedObjectTypes: [],\n selectedSharedPropertyTypes: args.select ?? [],\n where: objectSetToSearchJsonV2(objectSet, interfaceType.apiName)\n }), {\n preview: true\n });\n result.data = await convertWireToOsdkObjects(client, result.data,\n // drop readonly\n interfaceType.apiName, !args.includeRid);\n return result;\n}\n\n/** @internal */\nexport async function fetchPageInternal(client, objectType, objectSet, args = {}) {\n if (objectType.type === \"interface\") {\n return await fetchInterfacePage(client, objectType, args, objectSet); // fixme\n } else {\n return await fetchObjectPage(client, objectType, args, objectSet); // fixme\n }\n}\n\n/** @internal */\nexport async function fetchPageWithErrorsInternal(client, objectType, objectSet, args = {}) {\n try {\n const result = await fetchPageInternal(client, objectType, objectSet, args);\n return {\n value: result\n };\n } catch (e) {\n if (e instanceof Error) {\n return {\n error: e\n };\n }\n return {\n error: e\n };\n }\n}\nexport async function fetchPage(client, objectType, args, objectSet = {\n type: \"base\",\n objectType: objectType[\"apiName\"]\n}) {\n return fetchPageInternal(client, objectType, objectSet, args);\n}\nexport async function fetchPageWithErrors(client, objectType, args, objectSet = {\n type: \"base\",\n objectType: objectType[\"apiName\"]\n}) {\n return fetchPageWithErrorsInternal(client, objectType, objectSet, args);\n}\nfunction applyFetchArgs(args, body) {\n if (args?.nextPageToken) {\n body.pageToken = args.nextPageToken;\n }\n if (args?.pageSize != null) {\n body.pageSize = args.pageSize;\n }\n if (args?.orderBy != null) {\n body.orderBy = {\n fields: Object.entries(args.orderBy).map(([field, direction]) => ({\n field,\n direction\n }))\n };\n }\n return body;\n}\nexport async function fetchObjectPage(client, objectType, args, objectSet) {\n const r = await loadObjectSetV2(addUserAgent(client, objectType), client.ontologyRid, applyFetchArgs(args, {\n objectSet,\n // We have to do the following case because LoadObjectSetRequestV2 isnt readonly\n select: args?.select ?? [],\n // FIXME?\n excludeRid: !args?.includeRid\n }));\n return Promise.resolve({\n data: await convertWireToOsdkObjects(client, r.data, undefined),\n nextPageToken: r.nextPageToken\n });\n}","/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nexport class ActionValidationError extends Error {\n constructor(validation) {\n super(\"Validation Error\");\n this.validation = validation;\n }\n}","import { omniFetch } from '@osdk/shared.net';\n\n// src/public/OntologiesV2_Action.ts\nvar _applyActionV2 = [1, \"/v2/ontologies/{0}/actions/{1}/apply\", 3];\nfunction applyActionV2($ctx, ...args) {\n return omniFetch($ctx, _applyActionV2, ...args);\n}\nvar _applyActionBatchV2 = [1, \"/v2/ontologies/{0}/actions/{1}/applyBatch\", 3];\nfunction applyActionBatchV2($ctx, ...args) {\n return omniFetch($ctx, _applyActionBatchV2, ...args);\n}\nvar _applyActionAsyncV2 = [1, \"/v2/ontologies/{0}/actions/{1}/applyAsync\", 3];\nfunction applyActionAsyncV2($ctx, ...args) {\n return omniFetch($ctx, _applyActionAsyncV2, ...args);\n}\nexport { applyActionAsyncV2, applyActionBatchV2, applyActionV2 };","/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nexport function isOntologyObjectV2(o) {\n return o && typeof o === \"object\" && typeof o.__apiName === \"string\" && o.__primaryKey != null;\n}","/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { isAttachment } from \"../object/Attachment.js\";\nimport { getWireObjectSet, isObjectSet } from \"../objectSet/createObjectSet.js\";\nimport { isOntologyObjectV2 } from \"./isOntologyObjectV2.js\";\nimport { isWireObjectSet } from \"./WireObjectSet.js\";\n\n/**\n * Marshall user-facing data into the wire DataValue type\n *\n * @see DataValue for the expected payloads\n */\nexport function toDataValue(value) {\n if (value == null) {\n // typeof null is 'object' so do this first\n return value;\n }\n\n // arrays and sets are both sent over the wire as arrays\n if (Array.isArray(value) || value instanceof Set) {\n return Array.from(value, toDataValue);\n }\n\n // attachments just send the rid directly\n if (isAttachment(value)) {\n return value.rid;\n }\n\n // objects just send the JSON'd primaryKey\n if (isOntologyObjectV2(value)) {\n return toDataValue(value.__primaryKey);\n }\n\n // object set (the rid as a string (passes through the last return), or the ObjectSet definition directly)\n if (isWireObjectSet(value)) {\n return value;\n }\n if (isObjectSet(value)) {\n return getWireObjectSet(value);\n }\n\n // TODO (during queries implementation)\n // two dimensional aggregation\n // three dimensional aggregation\n\n // struct\n if (typeof value === \"object\") {\n return Object.entries(value).reduce((acc, [key, structValue]) => {\n acc[key] = toDataValue(structValue);\n return acc;\n }, {});\n }\n\n // expected to pass through - boolean, byte, date, decimal, float, double, integer, long, short, string, timestamp\n return value;\n}","/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { applyActionV2 } from \"@osdk/internal.foundry/OntologiesV2_Action\";\nimport { addUserAgent } from \"../util/addUserAgent.js\";\nimport { toDataValue } from \"../util/toDataValue.js\";\nimport { ActionValidationError } from \"./ActionValidationError.js\";\n\n// cannot specify both validateOnly and returnEdits as true\n\nexport async function applyAction(client, action, parameters, options = {}) {\n const response = await applyActionV2(addUserAgent(client, action), client.ontologyRid, action.apiName, {\n parameters: remapActionParams(parameters),\n options: {\n mode: options?.validateOnly ? \"VALIDATE_ONLY\" : \"VALIDATE_AND_EXECUTE\",\n returnEdits: options?.returnEdits ? \"ALL\" : \"NONE\"\n }\n });\n if (options?.validateOnly) {\n return response.validation;\n }\n if (response.validation?.result === \"INVALID\") {\n throw new ActionValidationError(response.validation);\n }\n return options?.returnEdits ? response.edits : undefined;\n}\nfunction remapActionParams(params) {\n if (params == null) {\n return {};\n }\n const parameterMap = {};\n const remappedParams = Object.entries(params).reduce((acc, [key, value]) => {\n acc[key] = toDataValue(value);\n return acc;\n }, parameterMap);\n return remappedParams;\n}","/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { applyAction } from \"./applyAction.js\";\nexport function createActionInvoker(client, action) {\n return function (...args) {\n return applyAction(client, action, ...args);\n };\n}\nexport function createOldActionInvoker(client, ontology) {\n const proxy = new Proxy({}, {\n get: (_target, p, _receiver) => {\n if (typeof p === \"string\") {\n return createActionInvoker(client, ontology.actions[p]);\n }\n return undefined;\n },\n ownKeys(_target) {\n return Object.keys(ontology.actions);\n },\n getOwnPropertyDescriptor(_target, p) {\n if (typeof p === \"string\") {\n return {\n enumerable: ontology.actions[p] != null,\n configurable: true,\n value: proxy[p]\n };\n }\n }\n });\n return proxy;\n}","/*\n * Copyright 2024 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { createClientContext } from \"@osdk/shared.net\";\nimport { createObjectSet } from \"./objectSet/createObjectSet.js\";\nimport { createStandardOntologyProviderFactory } from \"./ontology/StandardOntologyProvider.js\";\nimport { USER_AGENT } from \"./util/UserAgent.js\";\nexport function createMinimalClient(metadata, stack, tokenProvider, options = {}, fetchFn = global.fetch, objectSetFactory = createObjectSet) {\n if (process?.env?.NODE_ENV !== \"production\") {\n try {\n new URL(stack);\n } catch (e) {\n const hint = !stack.startsWith(\"http://\") || !stack.startsWith(\"https://\") ? \". Did you forget to add 'http://' or 'https://'?\" : \"\";\n throw new Error(`Invalid stack URL: ${stack}${hint}`);\n }\n }\n const clientCtx = {\n ...createClientContext({\n metadata: {\n ...metadata,\n userAgent: \"\" // ontology specific user agent injected elsewhere\n }\n }, stack, tokenProvider, USER_AGENT, fetchFn),\n objectSetFactory,\n ontologyRid: metadata.ontologyRid,\n ontologyProvider: undefined,\n logger: options.logger\n };\n clientCtx.ontologyProvider = createStandardOntologyProviderFactory(options)(clientCtx);\n return clientCtx;\n}","/*\n * Copyright 2024 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { __UNSTABLE_wireInterfaceTypeV2ToSdkObjectDefinition, wireObjectTypeFullMetadataToSdkObjectTypeDefinition } from \"@osdk/generator-converters\";\nimport { listInterfaceTypes } from \"@osdk/internal.foundry/OntologiesV2_OntologyObjectV2\";\nimport { getOntologyFullMetadata } from \"@osdk/internal.foundry/OntologiesV2_OntologyV2\";\nimport deepEqual from \"fast-deep-equal\";\nimport { createAsyncCache } from \"../object/Cache.js\";\nimport { loadFullObjectMetadata } from \"./loadFullObjectMetadata.js\";\nimport { loadInterfaceDefinition } from \"./loadInterfaceDefinition.js\";\nconst alwaysRevalidateDefault = false;\n\n// SLLLLLLOOOOOOOWWWW\nasync function fullOntologyLoad(client) {\n return await Promise.all([listInterfaceTypes(client, client.ontologyRid, {\n pageSize: 200,\n preview: true\n }), getOntologyFullMetadata(client, client.ontologyRid)]);\n}\nexport const USE_FULL_ONTOLOGY = false;\nexport const createStandardOntologyProviderFactory = client => {\n const alwaysRevalidate = client.alwaysRevalidate ?? alwaysRevalidateDefault;\n return client => {\n let fullCache;\n async function initLocalCache(client, skipCache) {\n if (skipCache) {\n return await fullOntologyLoad(client);\n }\n if (!fullCache) {\n fullCache = fullOntologyLoad(client);\n }\n return await fullCache;\n }\n async function loadObject(client, key, skipCache = false) {\n if (USE_FULL_ONTOLOGY) {\n const fullCacheLocal = await initLocalCache(client, skipCache);\n return {\n ...wireObjectTypeFullMetadataToSdkObjectTypeDefinition(fullCacheLocal[1].objectTypes[key], true),\n implements: fullCacheLocal[0].data.map(i => i.apiName)\n };\n } else {\n return await loadFullObjectMetadata(client, key);\n }\n }\n async function loadInterface(client, key, skipCache = false) {\n if (USE_FULL_ONTOLOGY) {\n const fullCacheLocal = await initLocalCache(client, skipCache);\n return __UNSTABLE_wireInterfaceTypeV2ToSdkObjectDefinition(fullCacheLocal[1].interfaceTypes[key], true);\n } else {\n return loadInterfaceDefinition(client, key);\n }\n }\n function makeGetter(fn) {\n const cache = createAsyncCache((client, key) => fn(client, key, false));\n return async apiName => {\n const n = alwaysRevalidate ? await fn(client, apiName, true) : await cache.get(client, apiName);\n if (alwaysRevalidate) {\n const og = cache.getOrUndefined(client, apiName);\n if (deepEqual(og, n)) {\n return og; // ! because we can be sure `n` would throw if it were undefined\n } else {\n return cache.set(client, apiName, n);\n }\n }\n return n;\n };\n }\n return {\n getObjectDefinition: makeGetter(loadObject),\n getInterfaceDefinition: makeGetter(loadInterface),\n maybeSeed(definition) {\n // not using this for now\n }\n };\n };\n};","import { omniFetch } from '@osdk/shared.net';\n\n// src/public/OntologiesV2_OntologyV2.ts\nvar _listOntologiesV2 = [0, \"/v2/ontologies\"];\nfunction listOntologiesV2($ctx, ...args) {\n return omniFetch($ctx, _listOntologiesV2, ...args);\n}\nvar _getOntologyV2 = [0, \"/v2/ontologies/{0}\"];\nfunction getOntologyV2($ctx, ...args) {\n return omniFetch($ctx, _getOntologyV2, ...args);\n}\nvar _getOntologyFullMetadata = [0, \"/v2/ontologies/{0}/fullMetadata\"];\nfunction getOntologyFullMetadata($ctx, ...args) {\n return omniFetch($ctx, _getOntologyFullMetadata, ...args);\n}\nexport { getOntologyFullMetadata, getOntologyV2, listOntologiesV2 };","/*\n * Copyright 2024 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { wireObjectTypeFullMetadataToSdkObjectTypeDefinition } from \"@osdk/generator-converters\";\nimport { getObjectTypeV2, listOutgoingLinkTypesV2 } from \"@osdk/internal.foundry/OntologiesV2_ObjectTypeV2\";\nimport { listInterfaceTypes } from \"@osdk/internal.foundry/OntologiesV2_OntologyObjectV2\";\nimport invariant from \"tiny-invariant\";\nimport { loadAllOntologies } from \"../generated/ontology-metadata/api/OntologyMetadataService/loadAllOntologies.js\";\nimport { loadOntologyEntities } from \"../generated/ontology-metadata/api/OntologyMetadataService/loadOntologyEntities.js\";\nasync function loadAllOutgoingLinkTypes(client, objtype) {\n const linkTypes = [];\n let pageToken;\n do {\n const result = await listOutgoingLinkTypesV2(client, client.ontologyRid, objtype, {\n pageToken\n });\n pageToken = result.nextPageToken;\n linkTypes.push(...result.data);\n } while (pageToken != null);\n return linkTypes;\n}\nfunction makeConjureContext(client, servicePath) {\n return {\n baseUrl: client.stack,\n servicePath,\n fetchFn: client.fetch,\n tokenProvider: async () => await client.tokenProvider()\n };\n}\nexport async function loadFullObjectMetadata(client, objtype) {\n const conjureCtx = makeConjureContext(client, \"/ontology-metadata/api\");\n const [objectType, linkTypes, interfaceTypes, metadata] = await Promise.all([getObjectTypeV2(client, client.ontologyRid, objtype), loadAllOutgoingLinkTypes(client, objtype), listInterfaceTypes(client, client.ontologyRid, {\n pageSize: 200,\n preview: true\n }), await loadAllOntologies(conjureCtx, {})]);\n const sharedPropertyTypeMapping = await loadSptMap(conjureCtx, metadata, client.ontologyRid, objectType.rid);\n const full = {\n implementsInterfaces: interfaceTypes.data.map(i => i.apiName),\n implementsInterfaces2: {},\n // FIXME(interfaces)\n linkTypes,\n objectType,\n sharedPropertyTypeMapping\n };\n\n // TODO: reuse the loaded interface data!\n return wireObjectTypeFullMetadataToSdkObjectTypeDefinition(full, true);\n}\nasync function loadSptMap(ctx, ontologyMetadata, ontologyRid, objectRid) {\n const ontologyVersion = ontologyMetadata.ontologies[ontologyRid].currentOntologyVersion;\n const body = {\n objectTypeVersions: {\n [objectRid]: ontologyVersion\n },\n linkTypeVersions: {},\n loadRedacted: false,\n includeObjectTypesWithoutSearchableDatasources: true\n };\n const entities = await loadOntologyEntities(ctx, body);\n const objectType = entities.objectTypes[objectRid];\n !objectType ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"object type should be loaded\") : invariant(false) : void 0;\n const sptMap = {};\n for (const property of Object.values(objectType.propertyTypes)) {\n if (property.sharedPropertyTypeApiName && property.apiName) {\n sptMap[property.sharedPropertyTypeApiName] = property.apiName;\n }\n }\n return sptMap;\n}","import { omniFetch } from '@osdk/shared.net';\n\n// src/public/OntologiesV2_ObjectTypeV2.ts\nvar _listObjectTypesV2 = [0, \"/v2/ontologies/{0}/objectTypes\", 2];\nfunction listObjectTypesV2($ctx, ...args) {\n return omniFetch($ctx, _listObjectTypesV2, ...args);\n}\nvar _getObjectTypeV2 = [0, \"/v2/ontologies/{0}/objectTypes/{1}\"];\nfunction getObjectTypeV2($ctx, ...args) {\n return omniFetch($ctx, _getObjectTypeV2, ...args);\n}\nvar _listOutgoingLinkTypesV2 = [0, \"/v2/ontologies/{0}/objectTypes/{1}/outgoingLinkTypes\", 2];\nfunction listOutgoingLinkTypesV2($ctx, ...args) {\n return omniFetch($ctx, _listOutgoingLinkTypesV2, ...args);\n}\nvar _getOutgoingLinkTypeV2 = [0, \"/v2/ontologies/{0}/objectTypes/{1}/outgoingLinkTypes/{2}\"];\nfunction getOutgoingLinkTypeV2($ctx, ...args) {\n return omniFetch($ctx, _getOutgoingLinkTypeV2, ...args);\n}\nexport { getObjectTypeV2, getOutgoingLinkTypeV2, listObjectTypesV2, listOutgoingLinkTypesV2 };","/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { conjureFetch } from \"conjure-lite\";\n/**\n * Endpoint to load metadata about the Ontologies a user has access to. The response will contain\n * only Ontologies on which the user has `ontology:view-ontology`. Note that the returned\n * LoadAllOntologiesResponse may be empty if there is no Ontology yet.\n */\nexport async function loadAllOntologies(ctx, request) {\n return conjureFetch(ctx, `/ontology/ontology/ontologies/load/all`, \"POST\", request);\n}","/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { conjureFetch } from \"conjure-lite\";\n/**\n * Endpoint to batch load Ontology entities. The returned OntologyLoadResponse will only contain\n * entities that actually exist and are visible to the user. If the user has requested entities at\n * invalid ontology versions or entities that do not exist in the specified versions,\n * those will not be present in the response. If the user tries to load entities across multiple ontologies, the\n * call will fail with an exception.\n */\nexport async function loadOntologyEntities(ctx, request) {\n return conjureFetch(ctx, `/ontology/ontology/loadEntities`, \"POST\", request);\n}","/*\n * Copyright 2024 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { __UNSTABLE_wireInterfaceTypeV2ToSdkObjectDefinition } from \"@osdk/generator-converters\";\nimport { getInterfaceType } from \"@osdk/internal.foundry/OntologiesV2_OntologyObjectV2\";\nexport async function loadInterfaceDefinition(client, objtype) {\n const r = await getInterfaceType(client, client.ontologyRid, objtype, {\n preview: true\n });\n return __UNSTABLE_wireInterfaceTypeV2ToSdkObjectDefinition(r, true);\n}","/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nexport const USER_AGENT = `osdk-client/${process.env.PACKAGE_VERSION}`;","/*\n * Copyright 2024 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { createActionInvoker } from \"./actions/createActionInvoker.js\";\nimport { createMinimalClient } from \"./createMinimalClient.js\";\nimport { createObjectSet } from \"./objectSet/createObjectSet.js\";\nexport function createClientInternal(objectSetFactory,\n// first so i can bind\nstack, ontologyRid, tokenProvider, options = undefined, fetchFn = fetch) {\n const clientCtx = createMinimalClient({\n ontologyRid\n }, stack, tokenProvider, options, fetchFn, objectSetFactory);\n function clientFn(o) {\n if (o.type === \"object\" || o.type === \"interface\") {\n clientCtx.ontologyProvider.maybeSeed(o);\n return objectSetFactory(o, clientCtx);\n } else if (o.type === \"action\") {\n clientCtx.ontologyProvider.maybeSeed(o);\n return createActionInvoker(clientCtx, o);\n } else {\n throw new Error(\"not implemented\");\n }\n }\n const client = Object.defineProperties(clientFn, {\n ctx: {\n value: clientCtx\n }\n });\n return client;\n}\nexport const createClient = createClientInternal.bind(undefined, createObjectSet);"]}
|
|
@@ -1096,7 +1096,7 @@ var createStandardOntologyProviderFactory = (client) => {
|
|
|
1096
1096
|
};
|
|
1097
1097
|
|
|
1098
1098
|
// src/util/UserAgent.ts
|
|
1099
|
-
var USER_AGENT = `osdk-client/${"0.18.0
|
|
1099
|
+
var USER_AGENT = `osdk-client/${"0.18.0"}`;
|
|
1100
1100
|
|
|
1101
1101
|
// src/createMinimalClient.ts
|
|
1102
1102
|
function createMinimalClient(metadata, stack, tokenProvider, options = {}, fetchFn = global.fetch, objectSetFactory = createObjectSet) {
|
|
@@ -1160,4 +1160,4 @@ exports.getObjectTypeV2 = getObjectTypeV2;
|
|
|
1160
1160
|
exports.loadAllOntologies = loadAllOntologies;
|
|
1161
1161
|
exports.loadOntologyEntities = loadOntologyEntities;
|
|
1162
1162
|
//# sourceMappingURL=out.js.map
|
|
1163
|
-
//# sourceMappingURL=chunk-
|
|
1163
|
+
//# sourceMappingURL=chunk-S3VSFIJO.cjs.map
|