@osdk/client 2.35.0 → 2.36.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.
Files changed (42) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/build/browser/Client.js +1 -1
  3. package/build/browser/Client.js.map +1 -1
  4. package/build/browser/scenarios/ScenarioClient.js +5 -3
  5. package/build/browser/scenarios/ScenarioClient.js.map +1 -1
  6. package/build/browser/scenarios/createScenario.js +3 -5
  7. package/build/browser/scenarios/createScenario.js.map +1 -1
  8. package/build/browser/scenarios/withScenario.js +2 -1
  9. package/build/browser/scenarios/withScenario.js.map +1 -1
  10. package/build/browser/util/UserAgent.js +2 -2
  11. package/build/cjs/{applyStreamingQuery-IWZCZA6J.cjs → applyStreamingQuery-RK2N6TJ5.cjs} +9 -9
  12. package/build/cjs/{applyStreamingQuery-IWZCZA6J.cjs.map → applyStreamingQuery-RK2N6TJ5.cjs.map} +1 -1
  13. package/build/cjs/{chunk-A4LQCGPA.cjs → chunk-53ODHT6J.cjs} +47 -47
  14. package/build/cjs/{chunk-A4LQCGPA.cjs.map → chunk-53ODHT6J.cjs.map} +1 -1
  15. package/build/cjs/{chunk-CWBZEZQC.cjs → chunk-QUF62D2S.cjs} +76 -76
  16. package/build/cjs/{chunk-CWBZEZQC.cjs.map → chunk-QUF62D2S.cjs.map} +1 -1
  17. package/build/cjs/{chunk-LWT7AZZD.cjs → chunk-VD4QAB27.cjs} +13 -13
  18. package/build/cjs/{chunk-LWT7AZZD.cjs.map → chunk-VD4QAB27.cjs.map} +1 -1
  19. package/build/cjs/{chunk-ZLUXOM2B.cjs → chunk-ZSQBDK7L.cjs} +2 -2
  20. package/build/cjs/{chunk-ZLUXOM2B.cjs.map → chunk-ZSQBDK7L.cjs.map} +1 -1
  21. package/build/cjs/index.cjs +11 -11
  22. package/build/cjs/public/experimental.cjs +6 -6
  23. package/build/cjs/public/internal.cjs +7 -7
  24. package/build/cjs/public/observable.cjs +5 -5
  25. package/build/cjs/public/unstable-do-not-use.cjs +14 -17
  26. package/build/cjs/public/unstable-do-not-use.cjs.map +1 -1
  27. package/build/cjs/public/unstable-do-not-use.d.cts +5 -3
  28. package/build/esm/Client.js +1 -1
  29. package/build/esm/Client.js.map +1 -1
  30. package/build/esm/scenarios/ScenarioClient.js +5 -3
  31. package/build/esm/scenarios/ScenarioClient.js.map +1 -1
  32. package/build/esm/scenarios/createScenario.js +3 -5
  33. package/build/esm/scenarios/createScenario.js.map +1 -1
  34. package/build/esm/scenarios/withScenario.js +2 -1
  35. package/build/esm/scenarios/withScenario.js.map +1 -1
  36. package/build/esm/util/UserAgent.js +2 -2
  37. package/build/types/Client.d.ts +1 -1
  38. package/build/types/scenarios/createScenario.d.ts +3 -2
  39. package/build/types/scenarios/createScenario.d.ts.map +1 -1
  40. package/build/types/scenarios/withScenario.d.ts +2 -1
  41. package/build/types/scenarios/withScenario.d.ts.map +1 -1
  42. package/package.json +6 -6
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/util/addUserAgentAndRequestContextHeaders.ts","../../src/util/augmentRequestContext.ts","../../../../node_modules/.pnpm/@osdk+foundry.ontologies@2.63.0/node_modules/@osdk/foundry.ontologies/build/esm/public/OntologyObjectSet.js","../../src/internal/conversions/extractNamespace.ts","../../src/util/extractObjectOrInterfaceType.ts","../../src/util/extractRdpDefinition.ts","../../src/util/objectSetUtils.ts","../../src/object/fetchPage.ts","../../src/internal/conversions/fullyQualifyPropName.ts","../../src/internal/conversions/makeGeoFilterBbox.ts","../../src/internal/conversions/makeGeoFilterPolygon.ts","../../src/internal/conversions/makeGeoFilterIntersects.ts","../../src/internal/conversions/makeGeoFilterWithin.ts","../../src/internal/conversions/toIntervalQuery.ts","../../src/internal/conversions/modernToLegacyWhereClause.ts","../../src/derivedProperties/derivedPropertyDefinitionFactory.ts","../../src/derivedProperties/createWithPropertiesObjectSet.ts","../../src/internal/conversions/modernToLegacyAggregationClause.ts","../../src/internal/conversions/legacyToModernSingleAggregationResult.ts","../../src/internal/conversions/modernToLegacyGroupByClause.ts","../../src/object/aggregate.ts","../../src/object/fetchSingle.ts","../../src/util/WireObjectSet.ts","../../src/objectSet/fetchLinksPage.ts","../../src/objectSet/createObjectSet.ts","../../../../node_modules/.pnpm/@osdk+foundry.ontologies@2.63.0/node_modules/@osdk/foundry.ontologies/build/esm/public/Attachment.js","../../src/Client.ts","../../src/public-utils/hydrateAttachmentFromRid.ts","../../src/object/validateMediaItemMetadata.ts","../../src/createMediaFromReference.ts"],"names":["createFetchHeaderMutator","USER_AGENT_HEADER","augment","foundryPlatformFetch","def","objOrInterfaceDef","linkDef","invariant","objectSets","objectSetTypes","filteredObjectTypes","definitions","DistanceUnitMapping","wrappedObjectSet","selectorResult","DurationMapping","aggregate","PalantirApiError","MediaSet_exports"],"mappings":"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","file":"chunk-ZLUXOM2B.cjs","sourcesContent":["/*\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 { USER_AGENT_HEADER } from \"@osdk/shared.client.impl\";\nimport { createFetchHeaderMutator } from \"@osdk/shared.net.fetch\";\nexport const addUserAgentAndRequestContextHeaders = (client, withMetadata) => ({\n ...client,\n fetch: createFetchHeaderMutator(client.fetch, headers => {\n headers.set(\"X-OSDK-Request-Context\", JSON.stringify(client.requestContext));\n if (withMetadata.osdkMetadata) {\n headers.set(USER_AGENT_HEADER, [headers.get(USER_AGENT_HEADER), withMetadata.osdkMetadata.extraUserAgent].filter(x => x && x?.length > 0).join(\" \"));\n }\n return headers;\n })\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/**\nReturns a client with its `requestContext` merged with the result of applying\n`augment` to its `requestContext`.\n\nThe second argument is an `Partial<RequestContext>`-returning `augment` function\ninstead of a `RequestContext` object to make referencing the current request\ncontext easier. For example, modifying the `fetchPage` function to add its name\nto the object set's called method chain could look like:\n```\naugmentRequestContext(\n clientContext,\n ctx => ({ methodChain: [...ctx.methodChain, \"fetchPage\"] })\n)\n```\nor\n```\naugmentRequestContext(\n clientContext,\n ({ methodChain }) => ({ methodChain: [...methodChain, \"fetchPage\"] })\n)\n```\ninstead of\n```\naugmentRequestContext(\n clientContext,\n { methodChain: [...clientContext.requestContext.methodChain, \"fetchPage\"] }\n)\n```\n*/\nexport const augmentRequestContext = (client, augment) => ({\n ...client,\n requestContext: {\n ...client.requestContext,\n ...augment(client.requestContext)\n }\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 */\nimport { foundryPlatformFetch as $foundryPlatformFetch } from \"@osdk/shared.net.platformapi\";\n//\nconst _createTemporary = [1, \"/v2/ontologies/{0}/objectSets/createTemporary\", 7];\n/**\n * Creates a temporary `ObjectSet` from the given definition. This `ObjectSet` expires after one hour.\n *\n * @beta\n *\n * Required Scopes: [api:ontologies-read, api:ontologies-write]\n * URL: /v2/ontologies/{ontology}/objectSets/createTemporary\n */\nexport function createTemporary($ctx, ...args) {\n return $foundryPlatformFetch($ctx, _createTemporary, ...args);\n}\nconst _get = [0, \"/v2/ontologies/{0}/objectSets/{1}\", 2];\n/**\n * Gets the definition of the `ObjectSet` with the given RID.\n *\n * @alpha\n *\n * Required Scopes: []\n * URL: /v2/ontologies/{ontology}/objectSets/{objectSetRid}\n */\nexport function get($ctx, ...args) {\n return $foundryPlatformFetch($ctx, _get, ...args);\n}\nconst _load = [1, \"/v2/ontologies/{0}/objectSets/loadObjects\", 7];\n/**\n * Load the ontology objects present in the `ObjectSet` from the provided object set definition.\n *\n * For Object Storage V1 backed objects, this endpoint returns a maximum of 10,000 objects. After 10,000 objects have been returned and if more objects\n * are available, attempting to load another page will result in an `ObjectsExceededLimit` error being returned. There is no limit on Object Storage V2 backed objects.\n *\n * Note that null value properties will not be returned.\n *\n * Vector properties will not be returned unless included in the `select` parameter.\n *\n * @public\n *\n * Required Scopes: [api:ontologies-read]\n * URL: /v2/ontologies/{ontology}/objectSets/loadObjects\n */\nexport function load($ctx, ...args) {\n return $foundryPlatformFetch($ctx, _load, ...args);\n}\nconst _loadMultipleObjectTypes = [1, \"/v2/ontologies/{0}/objectSets/loadObjectsMultipleObjectTypes\", 7];\n/**\n * Load the ontology objects present in the `ObjectSet` from the provided object set definition. The resulting\n * objects may be scoped to an object type, in which all the selected properties on the object type are returned, or scoped\n * to an interface, in which only the object type properties that implement the properties of any interfaces in its\n * scope are returned. For objects that are scoped to an interface in the result, a mapping from interface to\n * object implementation is returned in order to interpret the objects as the interfaces that they implement.\n *\n * For Object Storage V1 backed objects, this endpoint returns a maximum of 10,000 objects. After 10,000 objects have been returned and if more objects\n * are available, attempting to load another page will result in an `ObjectsExceededLimit` error being returned. There is no limit on Object Storage V2 backed objects.\n *\n * Note that null value properties will not be returned. In addition, property metadata (rid, apiName, and primaryKey)\n * will be prefixed with '$' instead of '\\_\\_' as is the case in `loadObjects`.\n *\n * Vector properties will not be returned unless included in the `select` parameter.\n *\n * @beta\n *\n * Required Scopes: [api:ontologies-read]\n * URL: /v2/ontologies/{ontology}/objectSets/loadObjectsMultipleObjectTypes\n */\nexport function loadMultipleObjectTypes($ctx, ...args) {\n return $foundryPlatformFetch($ctx, _loadMultipleObjectTypes, ...args);\n}\nconst _loadObjectsOrInterfaces = [1, \"/v2/ontologies/{0}/objectSets/loadObjectsOrInterfaces\", 7];\n/**\n * Load the ontology objects present in the `ObjectSet` from the provided object set definition. If the requested\n * object set contains interfaces and the object can be viewed as an interface, it will contain the properties\n * defined by the interface. If not, it will contain the properties defined by its object type. This allows directly\n * loading all objects of an interface where all objects are viewed as the interface, for example.\n *\n * Note that the result object set cannot contain a mix of objects with \"interface\" properties and \"object type\"\n * properties. Attempting to load an object set like this will result in an error.\n *\n * For Object Storage V1 backed objects, this endpoint returns a maximum of 10,000 objects. After 10,000 objects have been returned and if more objects\n * are available, attempting to load another page will result in an `ObjectsExceededLimit` error being returned. There is no limit on Object Storage V2 backed objects.\n *\n * Note that null value properties will not be returned. In addition, property metadata (rid, apiName, and primaryKey)\n * will be prefixed with '$' instead of '\\_\\_' as is the case in `/loadObjects`.\n *\n * Vector properties will not be returned unless included in the `select` parameter.\n *\n * @beta\n *\n * Required Scopes: [api:ontologies-read]\n * URL: /v2/ontologies/{ontology}/objectSets/loadObjectsOrInterfaces\n */\nexport function loadObjectsOrInterfaces($ctx, ...args) {\n return $foundryPlatformFetch($ctx, _loadObjectsOrInterfaces, ...args);\n}\nconst _aggregate = [1, \"/v2/ontologies/{0}/objectSets/aggregate\", 7];\n/**\n * Aggregates the ontology objects present in the `ObjectSet` from the provided object set definition.\n *\n * @public\n *\n * Required Scopes: [api:ontologies-read]\n * URL: /v2/ontologies/{ontology}/objectSets/aggregate\n */\nexport function aggregate($ctx, ...args) {\n return $foundryPlatformFetch($ctx, _aggregate, ...args);\n}\nconst _loadLinks = [1, \"/v2/ontologies/{0}/objectSets/loadLinks\", 7];\n/**\n * Loads the specified links from the defined object set.\n *\n * Links are defined as a link type API name and object locators for the source and target objects\n * where only the `__primaryKey` and `__apiName` properties are loaded.\n *\n * Links are grouped by source object locator; however, the links for a given source object may be\n * split over multiple entries with the same source object locator.\n *\n * Please keep these limitations in mind:\n *\n * * Links returned may be stale. For example, primary keys returned by this endpoint may not exist anymore.\n * * This endpoint requests links for 1,000 objects at a time. If, for any page of 1,000 objects, there are more\n * than 100,000 links present, results are limited to 100,000 links and should be considered partial.\n * * This endpoint does not support OSv1 links and will return an error if links provided are backed by OSv1.\n * * This endpoint currently does not support interface object sets or interface links, but support will be added in the near future.\n *\n * @alpha\n *\n * Required Scopes: [api:ontologies-read]\n * URL: /v2/ontologies/{ontology}/objectSets/loadLinks\n */\nexport function loadLinks($ctx, ...args) {\n return $foundryPlatformFetch($ctx, _loadLinks, ...args);\n}","/*\n * Copyright 2025 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 extractNamespace(fqApiName) {\n const last = fqApiName.lastIndexOf(\".\");\n if (last === -1) return [undefined, fqApiName];\n return [fqApiName.slice(0, last), fqApiName.slice(last + 1)];\n}","/*\n * Copyright 2025 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\";\n/* @internal\n* Returns the resultant interface or object type of the object set\n*/\nexport async function extractObjectOrInterfaceType(clientCtx, objectSet) {\n switch (objectSet.type) {\n case \"searchAround\":\n {\n const def = await extractObjectOrInterfaceType(clientCtx, objectSet.objectSet);\n if (def === undefined) {\n return undefined;\n }\n const objOrInterfaceDef = def.type === \"object\" ? await clientCtx.ontologyProvider.getObjectDefinition(def.apiName) : await clientCtx.ontologyProvider.getInterfaceDefinition(def.apiName);\n const linkDef = objOrInterfaceDef.links[objectSet.link];\n !linkDef ? process.env.NODE_ENV !== \"production\" ? invariant(false, `Missing link definition for '${objectSet.link}'`) : invariant(false) : void 0;\n return objOrInterfaceDef.type === \"object\" ? {\n apiName: objOrInterfaceDef.links[objectSet.link].targetType,\n type: \"object\"\n } : {\n apiName: objOrInterfaceDef.links[objectSet.link].targetTypeApiName,\n type: objOrInterfaceDef.links[objectSet.link].targetType\n };\n }\n case \"withProperties\":\n {\n return extractObjectOrInterfaceType(clientCtx, objectSet.objectSet);\n }\n case \"methodInput\":\n return undefined;\n case \"base\":\n return {\n type: \"object\",\n apiName: objectSet.objectType\n };\n case \"interfaceBase\":\n return {\n type: \"interface\",\n apiName: objectSet.interfaceType\n };\n case \"filter\":\n case \"asBaseObjectTypes\":\n case \"nearestNeighbors\":\n return extractObjectOrInterfaceType(clientCtx, objectSet.objectSet);\n case \"asType\":\n return {\n type: clientCtx.narrowTypeInterfaceOrObjectMapping[objectSet.entityType],\n apiName: objectSet.entityType\n };\n case \"intersect\":\n {\n const objectSets = objectSet.objectSets;\n const objectSetTypes = await Promise.all(objectSets.map(os => extractObjectOrInterfaceType(clientCtx, os)));\n const filteredObjectTypes = objectSetTypes.filter(Boolean);\n const firstInterfaceType = filteredObjectTypes.find(val => val?.type === \"interface\");\n !firstInterfaceType ? process.env.NODE_ENV !== \"production\" ? invariant(false, `Missing interface type in intersect objectset scope'`) : invariant(false) : void 0;\n return firstInterfaceType;\n }\n case \"subtract\":\n case \"union\":\n const objectSets = objectSet.objectSets;\n const objectSetTypes = await Promise.all(objectSets.map(os => extractObjectOrInterfaceType(clientCtx, os)));\n const filteredObjectTypes = objectSetTypes.filter(Boolean);\n const firstObjectType = filteredObjectTypes[0];\n !filteredObjectTypes.every(val => {\n return val?.apiName === firstObjectType?.apiName && val?.type === firstObjectType?.type;\n }) ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"Can only have one object type when doing subtract, union\") : invariant(false) : void 0;\n return filteredObjectTypes[0];\n case \"static\":\n case \"reference\":\n // Static and reference object sets are always intersected with a base object set, so we can just return undefined.\n return undefined;\n case \"interfaceLinkSearchAround\":\n const def = await extractObjectOrInterfaceType(clientCtx, objectSet.objectSet);\n if (def === undefined) {\n return undefined;\n }\n const objOrInterfaceDef = def.type === \"object\" ? await clientCtx.ontologyProvider.getObjectDefinition(def.apiName) : await clientCtx.ontologyProvider.getInterfaceDefinition(def.apiName);\n const linkDef = objOrInterfaceDef.links[objectSet.interfaceLink];\n !linkDef ? process.env.NODE_ENV !== \"production\" ? invariant(false, `Missing link definition for '${objectSet.interfaceLink}'`) : invariant(false) : void 0;\n return objOrInterfaceDef.type === \"object\" ? {\n apiName: objOrInterfaceDef.links[objectSet.interfaceLink].targetType,\n type: \"object\"\n } : {\n apiName: objOrInterfaceDef.links[objectSet.interfaceLink].targetTypeApiName,\n type: objOrInterfaceDef.links[objectSet.interfaceLink].targetType\n };\n // We don't have to worry about new object sets being added and doing a runtime break and breaking people since the OSDK is always constructing these.\n default:\n const _ = objectSet;\n !false ? process.env.NODE_ENV !== \"production\" ? invariant(false, `Unsupported object set type for deriving object or interface type,`) : invariant(false) : void 0;\n }\n}","/*\n * Copyright 2025 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 async function extractRdpDefinition(clientCtx, objectSet) {\n if (!hasWithProperties(objectSet)) {\n return {};\n }\n return (await extractRdpDefinitionInternal(clientCtx, objectSet, undefined)).definitions;\n}\nexport function hasWithProperties(objectSet) {\n if (objectSet.type === \"withProperties\") {\n return true;\n }\n if (\"objectSet\" in objectSet && objectSet.objectSet != null) {\n return hasWithProperties(objectSet.objectSet);\n }\n if (\"objectSets\" in objectSet && objectSet.objectSets != null) {\n return objectSet.objectSets.some(hasWithProperties);\n }\n return false;\n}\n\n/* @internal\n* Returns a tuple of the derived property definitions and the object type that the derived property is defined on.\n*/\nasync function extractRdpDefinitionInternal(clientCtx, objectSet, methodInputObjectType) {\n switch (objectSet.type) {\n case \"searchAround\":\n {\n const {\n definitions,\n childObjectType\n } = await extractRdpDefinitionInternal(clientCtx, objectSet.objectSet, methodInputObjectType);\n if (childObjectType === undefined || childObjectType === \"\") {\n return {\n definitions: {}\n };\n }\n const objDef = await clientCtx.ontologyProvider.getObjectDefinition(childObjectType);\n const linkDef = objDef.links[objectSet.link];\n !linkDef ? process.env.NODE_ENV !== \"production\" ? invariant(false, `Missing link definition for '${objectSet.link}'`) : invariant(false) : void 0;\n return {\n definitions,\n childObjectType: objDef.links[objectSet.link].targetType\n };\n }\n case \"withProperties\":\n {\n // These are the definitions and current object type for all object set operations prior to the definition (e.g. filter, pivotTo, etc.)\n const {\n definitions,\n childObjectType\n } = await extractRdpDefinitionInternal(clientCtx, objectSet.objectSet, methodInputObjectType);\n if (childObjectType === undefined || childObjectType === \"\") {\n return {\n definitions: {}\n };\n }\n for (const [name, definition] of Object.entries(objectSet.derivedProperties)) {\n if (definition.type !== \"selection\") {\n definitions[name] = {\n selectedOrCollectedPropertyType: undefined,\n definition\n };\n continue;\n }\n switch (definition.operation.type) {\n case \"collectList\":\n case \"collectSet\":\n case \"get\":\n // This is the object set construction for the derived property definition construction. We pass in childObjectType so that when we reach MethodInputObjectSet, we know where to start looking.\n const {\n childObjectType: operationLevelObjectType\n } = await extractRdpDefinitionInternal(clientCtx, definition.objectSet, childObjectType);\n if (operationLevelObjectType === undefined || operationLevelObjectType === \"\") {\n return {\n definitions: {}\n };\n }\n const objDef = await clientCtx.ontologyProvider.getObjectDefinition(operationLevelObjectType);\n definitions[name] = {\n selectedOrCollectedPropertyType: objDef.properties[definition.operation.selectedPropertyApiName],\n definition\n };\n break;\n default:\n definitions[name] = {\n selectedOrCollectedPropertyType: undefined,\n definition\n };\n }\n }\n return {\n definitions,\n childObjectType\n };\n }\n case \"methodInput\":\n return {\n definitions: {},\n childObjectType: methodInputObjectType\n };\n case \"base\":\n return {\n definitions: {},\n childObjectType: objectSet.objectType\n };\n case \"interfaceBase\":\n return {\n definitions: {},\n childObjectType: objectSet.interfaceType\n };\n case \"filter\":\n case \"asBaseObjectTypes\":\n case \"asType\":\n case \"nearestNeighbors\":\n return extractRdpDefinitionInternal(clientCtx, objectSet.objectSet, methodInputObjectType);\n // These will throw in OSS so we should throw here so no request is made\n case \"intersect\":\n case \"subtract\":\n case \"union\":\n const objectSets = objectSet.objectSets;\n const objectSetTypes = await Promise.all(objectSets.map(os => extractRdpDefinitionInternal(clientCtx, os, methodInputObjectType)));\n const definitions = objectSetTypes.reduce((acc, {\n definitions\n }) => ({\n ...acc,\n ...definitions\n }), {});\n !(Object.keys(definitions).length === 0) ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"Object sets combined using intersect, subtract, or union must not contain any derived property definitions\") : invariant(false) : void 0;\n const firstValidChildObjectType = objectSetTypes.find(({\n childObjectType\n }) => childObjectType != null)?.childObjectType;\n !objectSetTypes.every(({\n childObjectType\n }) => childObjectType === firstValidChildObjectType || childObjectType == null) ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"All object sets in an intersect, subtract, or union must have the same child object type\") : invariant(false) : void 0;\n return {\n definitions: {},\n childObjectType: firstValidChildObjectType\n };\n case \"static\":\n case \"reference\":\n // Static and reference object sets are always intersected with a base object set, so we can just return no child object type.\n return {\n definitions: {}\n };\n // We don't have to worry about new object sets being added and doing a runtime break and breaking people since the OSDK is always constructing these.\n case \"interfaceLinkSearchAround\":\n !false ? process.env.NODE_ENV !== \"production\" ? invariant(false, `Unsupported object set type for Runtime Derived Properties`) : invariant(false) : void 0;\n default:\n const _ = objectSet;\n !false ? process.env.NODE_ENV !== \"production\" ? invariant(false, `Unsupported object set type for Runtime Derived Properties`) : invariant(false) : void 0;\n }\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\nexport function resolveBaseObjectSetType(objectType) {\n return objectType.type === \"interface\" ? {\n type: \"interfaceBase\",\n interfaceType: objectType[\"apiName\"]\n } : {\n type: \"base\",\n objectType: objectType[\"apiName\"]\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 * as OntologyObjectSets from \"@osdk/foundry.ontologies/OntologyObjectSet\";\nimport invariant from \"tiny-invariant\";\nimport { extractNamespace } from \"../internal/conversions/extractNamespace.js\";\nimport { addUserAgentAndRequestContextHeaders } from \"../util/addUserAgentAndRequestContextHeaders.js\";\nimport { extractObjectOrInterfaceType } from \"../util/extractObjectOrInterfaceType.js\";\nimport { extractRdpDefinition } from \"../util/extractRdpDefinition.js\";\nimport { resolveBaseObjectSetType } from \"../util/objectSetUtils.js\";\n\n/**\n * Converts a PropertyModifierValue to the corresponding wire format loadLevel type.\n */\nfunction modifierToLoadLevelType(modifier) {\n switch (modifier) {\n case \"applyMainValue\":\n return \"extractMainValue\";\n case \"applyReducers\":\n return \"applyReducers\";\n case \"applyReducersAndExtractMainValue\":\n return \"applyReducersAndExtractMainValue\";\n default:\n {\n const _exhaustiveCheck = modifier;\n throw new Error(`Unknown modifier: ${_exhaustiveCheck}`);\n }\n }\n}\nexport function buildSelectV2(select, modifiers, allProperties) {\n const modifiersMap = modifiers ?? {};\n const modifierProps = new Set(Object.keys(modifiersMap));\n const hasModifiers = modifierProps.size > 0;\n const entries = [];\n if (select && select.length > 0) {\n for (const [prop, _] of Object.entries(modifiersMap)) {\n !select.includes(prop) ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"Modified properties must be included in $select when manually specifying properties\") : invariant(false) : void 0;\n }\n for (const prop of select) {\n if (modifierProps.has(prop)) {\n entries.push({\n type: \"propertyWithLoadLevel\",\n propertyIdentifier: {\n type: \"property\",\n apiName: prop\n },\n loadLevel: {\n type: modifierToLoadLevelType(modifiersMap[prop])\n }\n });\n } else {\n entries.push({\n type: \"property\",\n apiName: prop\n });\n }\n }\n } else if (hasModifiers && allProperties && allProperties.length > 0) {\n for (const prop of allProperties) {\n if (modifierProps.has(prop)) {\n entries.push({\n type: \"propertyWithLoadLevel\",\n propertyIdentifier: {\n type: \"property\",\n apiName: prop\n },\n loadLevel: {\n type: modifierToLoadLevelType(modifiersMap[prop])\n }\n });\n } else {\n entries.push({\n type: \"property\",\n apiName: prop\n });\n }\n }\n }\n return entries;\n}\nexport function augment(type, ...properties) {\n return {\n [type.apiName]: properties\n };\n}\n\n/** @internal */\nexport function objectSetToSearchJsonV2(objectSet, expectedApiName, existingWhere = undefined) {\n if (objectSet.type === \"base\" || objectSet.type === \"interfaceBase\") {\n if (objectSet.type === \"base\" && objectSet.objectType !== expectedApiName) {\n throw new Error(`Expected objectSet.objectType to be ${expectedApiName}, but got ${objectSet.objectType}`);\n }\n if (objectSet.type === \"interfaceBase\" && objectSet.interfaceType !== expectedApiName) {\n throw new Error(`Expected objectSet.objectType to be ${expectedApiName}, but got ${objectSet.interfaceType}`);\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}\n\n/** @internal */\nexport function resolveInterfaceObjectSet(objectSet, interfaceTypeApiName, args) {\n return args?.$includeAllBaseObjectProperties ? {\n type: \"intersect\",\n objectSets: [objectSet, {\n type: \"interfaceBase\",\n interfaceType: interfaceTypeApiName,\n includeAllBaseObjectProperties: true\n }]\n } : objectSet;\n}\n\n/** @internal */\nexport async function fetchStaticRidPage(client, rids, args) {\n const shouldLoadPropertySecurities = args.$loadPropertySecurityMetadata ?? false;\n const requestBody = await applyFetchArgs(args, {\n objectSet: {\n type: \"static\",\n objects: rids\n },\n select: args?.$select ?? [],\n excludeRid: !args?.$includeRid,\n snapshot: args.$snapshot ?? false,\n loadPropertySecurities: shouldLoadPropertySecurities\n }, client, {\n type: \"object\",\n apiName: \"\"\n });\n if (client.flushEdits != null) {\n await client.flushEdits();\n }\n const result = await OntologyObjectSets.loadMultipleObjectTypes(addUserAgentAndRequestContextHeaders(client, {\n osdkMetadata: undefined\n }), await client.ontologyRid, requestBody, {\n preview: true,\n transactionId: client.transactionId,\n scenarioRid: client.scenarioRid\n });\n return Promise.resolve({\n data: await client.objectFactory(client, result.data, undefined, {}, shouldLoadPropertySecurities ? result.propertySecurities : undefined, !args.$includeRid, args.$select, false, result.interfaceToObjectTypeMappings, result.interfaceToObjectTypeMappingsV2),\n nextPageToken: result.nextPageToken,\n totalCount: result.totalCount\n });\n}\nasync function fetchInterfacePage(client, interfaceType, args, objectSet) {\n const extractedInterfaceTypeApiName = (await extractObjectOrInterfaceType(client, objectSet))?.apiName ?? interfaceType.apiName;\n const resolvedInterfaceObjectSet = resolveInterfaceObjectSet(objectSet, extractedInterfaceTypeApiName, args);\n const shouldLoadPropertySecurities = args.$loadPropertySecurityMetadata ?? false;\n const modifiers = args.$applyModifiers;\n const hasModifiers = modifiers && Object.keys(modifiers).length > 0;\n const hasSelect = args?.$select && args.$select.length > 0;\n let allProperties;\n if (!hasSelect && hasModifiers) {\n const ifaceDef = await client.ontologyProvider.getInterfaceDefinition(interfaceType.apiName);\n allProperties = ifaceDef ? Object.keys(ifaceDef.properties) : undefined;\n }\n const selectV2 = buildSelectV2(args?.$select ? [...args.$select] : undefined, modifiers, allProperties);\n const requestBody = await buildAndRemapRequestBody(args, {\n objectSet: resolvedInterfaceObjectSet,\n select: [],\n selectV2,\n loadPropertySecurities: shouldLoadPropertySecurities,\n excludeRid: !args?.$includeRid,\n snapshot: args.$snapshot ?? false\n }, client, interfaceType);\n if (client.flushEdits != null) {\n await client.flushEdits();\n }\n const result = await OntologyObjectSets.loadMultipleObjectTypes(addUserAgentAndRequestContextHeaders(client, interfaceType), await client.ontologyRid, requestBody, {\n preview: true,\n branch: client.branch,\n transactionId: client.transactionId,\n scenarioRid: client.scenarioRid\n });\n return Promise.resolve({\n data: await client.objectFactory(client, result.data, extractedInterfaceTypeApiName, {}, shouldLoadPropertySecurities ? result.propertySecurities : undefined, !args.$includeRid, args.$select, false, result.interfaceToObjectTypeMappings, result.interfaceToObjectTypeMappingsV2),\n nextPageToken: result.nextPageToken,\n totalCount: result.totalCount\n });\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}\n\n/**\n * @param client\n * @param objectType\n * @param args\n * @param objectSet\n * @returns\n * @internal\n */\nexport async function fetchPage(client, objectType, args, objectSet = resolveBaseObjectSetType(objectType)) {\n return fetchPageInternal(client, objectType, objectSet, args);\n}\n\n/** @internal */\nexport async function fetchPageWithErrors(client, objectType, args, objectSet = resolveBaseObjectSetType(objectType)) {\n return fetchPageWithErrorsInternal(client, objectType, objectSet, args);\n}\nasync function buildAndRemapRequestBody(args, baseBody, client, objectType) {\n const requestBody = await applyFetchArgs(args, baseBody, client, objectType);\n if (requestBody.selectV2 != null && requestBody.selectV2.length > 0) {\n const remapped = remapSelectV2(objectType, requestBody.selectV2);\n return {\n ...requestBody,\n selectV2: remapped\n };\n }\n return requestBody;\n}\nfunction remapSelectV2(objectOrInterface, selectV2) {\n if (objectOrInterface == null) {\n return selectV2;\n }\n if (objectOrInterface.type !== \"interface\") {\n return selectV2;\n }\n const [objApiNamespace] = extractNamespace(objectOrInterface.apiName);\n if (objApiNamespace == null) {\n return selectV2;\n }\n return selectV2.map(entry => {\n if (entry.type === \"property\") {\n const [fieldApiNamespace, fieldShortName] = extractNamespace(entry.apiName);\n if (fieldApiNamespace == null) {\n return {\n type: \"property\",\n apiName: `${objApiNamespace}.${fieldShortName}`\n };\n }\n return entry;\n } else {\n const [fieldApiNamespace, fieldShortName] = extractNamespace(entry.propertyIdentifier.apiName);\n if (fieldApiNamespace == null) {\n return {\n ...entry,\n propertyIdentifier: {\n type: \"property\",\n apiName: `${objApiNamespace}.${fieldShortName}`\n }\n };\n }\n return entry;\n }\n });\n}\n\n/** @internal */\nexport function remapPropertyNames(objectOrInterface, propertyNames) {\n if (objectOrInterface == null) {\n return propertyNames;\n }\n if (objectOrInterface.type === \"interface\") {\n const [objApiNamespace] = extractNamespace(objectOrInterface.apiName);\n return propertyNames.map(name => {\n const [fieldApiNamespace, fieldShortName] = extractNamespace(name);\n return fieldApiNamespace == null && objApiNamespace != null ? `${objApiNamespace}.${fieldShortName}` : name;\n });\n }\n return propertyNames;\n}\nasync function applyFetchArgs(args, body, _client, objectType) {\n if (args?.$nextPageToken) {\n body.pageToken = args.$nextPageToken;\n }\n if (args?.$pageSize != null) {\n body.pageSize = args.$pageSize;\n }\n if (args?.$loadPropertySecurityMetadata) {\n body.loadPropertySecurities = true;\n }\n const orderBy = args?.$orderBy;\n if (orderBy) {\n if (orderBy === \"relevance\") {\n body.orderBy = {\n orderType: \"relevance\",\n fields: []\n };\n } else {\n const orderByEntries = Object.entries(orderBy);\n const fieldNames = orderByEntries.map(([field]) => field);\n const remappedFields = remapPropertyNames(objectType, fieldNames);\n body.orderBy = {\n fields: orderByEntries.map(([, direction], index) => ({\n field: remappedFields[index],\n direction\n }))\n };\n }\n }\n return body;\n}\n\n/** @internal */\nexport async function fetchObjectPage(client, objectType, args, objectSet) {\n // For simple object fetches, since we know the object type up front\n // we can parallelize network requests for loading metadata and loading the actual objects\n // In our object factory we await and block on loading the metadata, which if this call finishes, should already be cached on the client\n const modifiers = args.$applyModifiers;\n const hasModifiers = modifiers && Object.keys(modifiers).length > 0;\n const hasSelect = args?.$select && args.$select.length > 0;\n let allProperties;\n if (!hasSelect && hasModifiers) {\n const objDef = await client.ontologyProvider.getObjectDefinition(objectType.apiName);\n allProperties = objDef ? Object.keys(objDef.properties) : undefined;\n } else {\n // We have an empty catch here so that if this call errors before we await later, we won't have an unhandled promise rejection that would crash the process\n // Swallowing the error is ok because we await the metadata load in the objectFactory later anyways which eventually bubbles up the error to the user\n void client.ontologyProvider.getObjectDefinition(objectType.apiName).catch(() => {});\n }\n const shouldLoadPropertySecurities = args.$loadPropertySecurityMetadata ?? false;\n const selectV2 = buildSelectV2(args?.$select ? [...args.$select] : undefined, modifiers, allProperties);\n const requestBody = await buildAndRemapRequestBody(args, {\n objectSet,\n select: [],\n selectV2,\n loadPropertySecurities: shouldLoadPropertySecurities,\n excludeRid: !args?.$includeRid,\n snapshot: args.$snapshot ?? false\n }, client, objectType);\n if (client.flushEdits != null) {\n await client.flushEdits();\n }\n const r = await OntologyObjectSets.load(addUserAgentAndRequestContextHeaders(client, objectType), await client.ontologyRid, requestBody, {\n branch: client.branch,\n transactionId: client.transactionId,\n scenarioRid: client.scenarioRid\n });\n return Promise.resolve({\n data: await client.objectFactory(client, r.data, undefined, await extractRdpDefinition(client, objectSet), shouldLoadPropertySecurities ? r.propertySecurities : undefined, !args.$includeRid, args.$select, false),\n nextPageToken: r.nextPageToken,\n totalCount: r.totalCount\n });\n}","/*\n * Copyright 2025 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 { extractNamespace } from \"./extractNamespace.js\";\nexport function fullyQualifyPropName(fieldName, objectOrInterface) {\n if (objectOrInterface.type === \"interface\") {\n const [objApiNamespace] = extractNamespace(objectOrInterface.apiName);\n const [fieldApiNamespace, fieldShortName] = extractNamespace(fieldName);\n return fieldApiNamespace == null && objApiNamespace != null ? `${objApiNamespace}.${fieldShortName}` : fieldName;\n }\n return fieldName;\n}","/*\n * Copyright 2025 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 makeGeoFilterBbox(bbox, filterType, propertyIdentifier, field) {\n return {\n type: filterType === \"$within\" ? \"withinBoundingBox\" : \"intersectsBoundingBox\",\n /**\n * This is a bit ugly, but did this so that propertyIdentifier only shows up in the return object if its defined,\n * this makes it so we don't need to go update our entire test bed either to include a field which may change in near future.\n * Once we solidify that this is the way forward, I can remove field and clean this up\n */\n ...(propertyIdentifier != null && {\n propertyIdentifier\n }),\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}","/*\n * Copyright 2025 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 makeGeoFilterPolygon(coordinates, filterType, propertyIdentifier, field) {\n return {\n type: filterType,\n ...(propertyIdentifier != null && {\n propertyIdentifier\n }),\n field,\n value: {\n type: \"Polygon\",\n coordinates\n }\n };\n}","/*\n * Copyright 2025 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 { makeGeoFilterBbox } from \"./makeGeoFilterBbox.js\";\nimport { makeGeoFilterPolygon } from \"./makeGeoFilterPolygon.js\";\nexport function makeGeoFilterIntersects(intersectsBody, propertyIdentifier, field) {\n if (Array.isArray(intersectsBody)) {\n return makeGeoFilterBbox(intersectsBody, \"$intersects\", propertyIdentifier, field);\n } else if (\"$bbox\" in intersectsBody && intersectsBody.$bbox != null) {\n return makeGeoFilterBbox(intersectsBody.$bbox, \"$intersects\", propertyIdentifier, field);\n } else {\n const coordinates = \"$polygon\" in intersectsBody ? intersectsBody.$polygon : intersectsBody.coordinates;\n return makeGeoFilterPolygon(coordinates, \"intersectsPolygon\", propertyIdentifier, field);\n }\n}","/*\n * Copyright 2025 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 { DistanceUnitMapping } from \"@osdk/api\";\nimport { makeGeoFilterBbox } from \"./makeGeoFilterBbox.js\";\nimport { makeGeoFilterPolygon } from \"./makeGeoFilterPolygon.js\";\nexport function makeGeoFilterWithin(withinBody, propertyIdentifier, field) {\n if (Array.isArray(withinBody)) {\n return makeGeoFilterBbox(withinBody, \"$within\", propertyIdentifier, field);\n } else if (\"$bbox\" in withinBody && withinBody.$bbox != null) {\n return makeGeoFilterBbox(withinBody.$bbox, \"$within\", propertyIdentifier, field);\n } else if (\"$distance\" in withinBody && \"$of\" in withinBody && withinBody.$distance != null && withinBody.$of != null) {\n return {\n type: \"withinDistanceOf\",\n ...(propertyIdentifier != null && {\n propertyIdentifier\n }),\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(coordinates, \"withinPolygon\", propertyIdentifier, field);\n }\n}","/*\n * Copyright 2026 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 toIntervalQueryRule(rule) {\n if (rule.$match != null) {\n if (rule.$prefixOnLastTerm) {\n return {\n type: \"prefixOnLastToken\",\n query: rule.$match\n };\n }\n return {\n type: \"match\",\n query: rule.$match,\n ordered: rule.$ordered,\n maxGaps: rule.$maxGaps\n };\n }\n if (rule.$and != null) {\n return {\n type: \"allOf\",\n rules: rule.$and.map(toIntervalQueryRule),\n ordered: rule.$ordered,\n maxGaps: rule.$maxGaps\n };\n }\n if (rule.$or != null) {\n return {\n type: \"anyOf\",\n rules: rule.$or.map(toIntervalQueryRule)\n };\n }\n if (rule.$fuzzy != null) {\n return {\n type: \"fuzzy\",\n term: rule.$fuzzy,\n fuzziness: rule.$fuzziness\n };\n }\n const _ = rule;\n !false ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"Unknown interval rule type\") : invariant(false) : void 0;\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 { fullyQualifyPropName } from \"./fullyQualifyPropName.js\";\nimport { makeGeoFilterIntersects } from \"./makeGeoFilterIntersects.js\";\nimport { makeGeoFilterWithin } from \"./makeGeoFilterWithin.js\";\nimport { toIntervalQueryRule } from \"./toIntervalQuery.js\";\nfunction isAndClause(whereClause) {\n return \"$and\" in whereClause && whereClause.$and !== undefined;\n}\nfunction isOrClause(whereClause) {\n return \"$or\" in whereClause && whereClause.$or !== undefined;\n}\nfunction isNotClause(whereClause) {\n return \"$not\" in whereClause && whereClause.$not !== undefined;\n}\n\n/** @internal */\nexport function modernToLegacyWhereClause(whereClause, objectOrInterface, rdpNames) {\n const parts = Object.entries(whereClause).map(([key, value]) => ({\n [key]: value\n }));\n !(parts.length > 0) ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"Cannot convert an empty where clause to a filter. \" + \"Skip the .where() call entirely when no conditions are provided.\") : invariant(false) : void 0;\n if (parts.length === 1) {\n return modernToLegacyWhereClauseInner(whereClause, objectOrInterface, rdpNames);\n }\n return {\n type: \"and\",\n value: parts.map(v => modernToLegacyWhereClauseInner(v, objectOrInterface, rdpNames))\n };\n}\n\n/** @internal */\nexport function modernToLegacyWhereClauseInner(whereClause, objectOrInterface, rdpNames) {\n const parts = Object.entries(whereClause);\n !(parts.length === 1) ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"Invalid where clause provided.\") : invariant(false) : void 0;\n if (isAndClause(whereClause)) {\n return {\n type: \"and\",\n value: whereClause.$and.map(clause => modernToLegacyWhereClause(clause, objectOrInterface, rdpNames))\n };\n } else if (isOrClause(whereClause)) {\n return {\n type: \"or\",\n value: whereClause.$or.map(clause => modernToLegacyWhereClause(clause, objectOrInterface, rdpNames))\n };\n } else if (isNotClause(whereClause)) {\n return {\n type: \"not\",\n value: modernToLegacyWhereClause(whereClause.$not, objectOrInterface, rdpNames)\n };\n }\n return handleWherePair(parts[0], objectOrInterface, undefined, rdpNames);\n}\nfunction resolvePropertyIdentifier(fieldName, objectOrInterface, isTitleProperty, isPrimaryKeyProperty, isRdp, structFieldSelector) {\n if (isTitleProperty) {\n return {\n type: \"titleProperty\"\n };\n } else if (isPrimaryKeyProperty) {\n return {\n type: \"primaryKeyProperty\"\n };\n } else if (isRdp) {\n return {\n type: \"property\",\n apiName: fieldName\n };\n } else if (structFieldSelector != null) {\n return {\n type: \"structField\",\n ...structFieldSelector,\n propertyApiName: fullyQualifyPropName(structFieldSelector.propertyApiName, objectOrInterface)\n };\n }\n return undefined;\n}\nfunction handleWherePair([fieldName, filter], objectOrInterface, structFieldSelector, rdpNames) {\n !(filter != null) ? process.env.NODE_ENV !== \"production\" ? invariant(false, `Cannot filter on property \"${fieldName}\" with an undefined or null value. ` + `If the value might be undefined, check it before adding to the where clause.`) : invariant(false) : void 0;\n const isTitleProperty = fieldName === \"$title\";\n const isPrimaryKeyProperty = fieldName === \"$primaryKey\";\n const isSpecialProperty = isTitleProperty || isPrimaryKeyProperty;\n const isRdp = !structFieldSelector && !isSpecialProperty && rdpNames?.has(fieldName);\n const propertyIdentifier = resolvePropertyIdentifier(fieldName, objectOrInterface, isTitleProperty, isPrimaryKeyProperty, isRdp, structFieldSelector);\n const field = !isRdp && !isSpecialProperty && structFieldSelector == null ? fullyQualifyPropName(fieldName, objectOrInterface) : undefined;\n !(field == null || propertyIdentifier == null && (field != null || isRdp != null)) ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"Encountered error constructing where clause: field and propertyIdentifier cannot both be defined\") : invariant(false) : void 0;\n if (typeof filter === \"string\" || typeof filter === \"number\" || typeof filter === \"boolean\") {\n return {\n type: \"eq\",\n ...(propertyIdentifier != null && {\n propertyIdentifier\n }),\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, \"A WhereClause Filter with multiple clauses/fields is not allowed. Instead, use an 'or'/'and' clause to combine multiple filters.\") : invariant(false) : void 0;\n\n // Struct\n if (!hasDollarSign) {\n const structFilter = Object.entries(filter);\n !(structFilter.length === 1) ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"Cannot filter on more than one struct field in the same clause, need to use an and clause\") : invariant(false) : void 0;\n const structFieldApiName = keysOfFilter[0];\n return handleWherePair(Object.entries(filter)[0], objectOrInterface, {\n propertyApiName: fieldName,\n structFieldApiName\n }, rdpNames);\n }\n const firstKey = keysOfFilter[0];\n !(filter[firstKey] != null) ? process.env.NODE_ENV !== \"production\" ? invariant(false) : invariant(false) : void 0;\n if (firstKey === \"$contains\" && filter[firstKey] instanceof Object) {\n const containsValue = filter[firstKey];\n const containsKeys = Object.keys(containsValue);\n const isFilterObject = containsKeys.some(key => key.startsWith(\"$\"));\n if (isFilterObject) {\n return handleWherePair([fieldName, containsValue], objectOrInterface, structFieldSelector, rdpNames);\n } else {\n const structFilter = Object.entries(containsValue);\n !(structFilter.length === 1) ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"Cannot filter on more than one struct field in the same clause, need to use an and clause\") : invariant(false) : void 0;\n const structFieldApiName = structFilter[0][0];\n return handleWherePair(structFilter[0], objectOrInterface, {\n propertyApiName: fieldName,\n structFieldApiName\n });\n }\n }\n if (firstKey === \"$ne\") {\n return {\n type: \"not\",\n value: {\n type: \"eq\",\n ...(propertyIdentifier != null && {\n propertyIdentifier\n }),\n field,\n value: filter[firstKey]\n }\n };\n }\n if (firstKey === \"$within\") {\n return makeGeoFilterWithin(filter[firstKey], propertyIdentifier, field);\n }\n if (firstKey === \"$intersects\") {\n return makeGeoFilterIntersects(filter[firstKey], propertyIdentifier, field);\n }\n if (firstKey === \"$containsAllTerms\" || firstKey === \"$containsAnyTerm\") {\n return {\n type: firstKey.substring(1),\n ...(propertyIdentifier != null && {\n propertyIdentifier\n }),\n field,\n value: typeof filter[firstKey] === \"string\" ? filter[firstKey] : filter[firstKey].term,\n fuzzy: typeof filter[firstKey] === \"string\" ? false : filter[firstKey].fuzzySearch ?? false\n };\n }\n if (firstKey === \"$matchesRegex\") {\n return {\n type: \"regex\",\n ...(propertyIdentifier != null && {\n propertyIdentifier\n }),\n field,\n value: filter[firstKey]\n };\n }\n if (firstKey === \"$interval\") {\n return {\n type: \"interval\",\n ...(propertyIdentifier != null && {\n propertyIdentifier\n }),\n field,\n rule: toIntervalQueryRule(filter[firstKey])\n };\n }\n return {\n type: firstKey.substring(1),\n ...(propertyIdentifier != null && {\n propertyIdentifier\n }),\n field,\n value: filter[firstKey]\n };\n}","/*\n * Copyright 2025 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\";\n\n/** @internal */\nexport function derivedPropertyDefinitionFactory(wireDefinition, definitionMap) {\n const definition = {\n abs() {\n return derivedPropertyDefinitionFactory({\n type: \"absoluteValue\",\n property: wireDefinition\n }, definitionMap);\n },\n negate() {\n return derivedPropertyDefinitionFactory({\n type: \"negate\",\n property: wireDefinition\n }, definitionMap);\n },\n max(value) {\n return derivedPropertyDefinitionFactory({\n type: \"greatest\",\n properties: [wireDefinition, getDefinitionFromMap(value, definitionMap)]\n }, definitionMap);\n },\n min(value) {\n return derivedPropertyDefinitionFactory({\n type: \"least\",\n properties: [wireDefinition, getDefinitionFromMap(value, definitionMap)]\n }, definitionMap);\n },\n add(value) {\n return derivedPropertyDefinitionFactory({\n type: \"add\",\n properties: [wireDefinition, getDefinitionFromMap(value, definitionMap)]\n }, definitionMap);\n },\n subtract(value) {\n return derivedPropertyDefinitionFactory({\n \"type\": \"subtract\",\n \"left\": wireDefinition,\n \"right\": getDefinitionFromMap(value, definitionMap)\n }, definitionMap);\n },\n multiply(value) {\n return derivedPropertyDefinitionFactory({\n type: \"multiply\",\n properties: [wireDefinition, getDefinitionFromMap(value, definitionMap)]\n }, definitionMap);\n },\n divide(value) {\n return derivedPropertyDefinitionFactory({\n \"type\": \"divide\",\n \"left\": wireDefinition,\n \"right\": getDefinitionFromMap(value, definitionMap)\n }, definitionMap);\n },\n extractPart: part => {\n return derivedPropertyDefinitionFactory({\n type: \"extract\",\n part,\n property: wireDefinition\n }, definitionMap);\n }\n };\n definitionMap.set(definition, wireDefinition);\n return definition;\n}\nconst getDefinitionFromMap = (arg, definitionMap) => {\n if (typeof arg === \"object\") {\n const definition = definitionMap.get(arg);\n !definition ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"Derived Property is not defined\") : invariant(false) : void 0;\n return definition;\n } else if (typeof arg === \"number\") {\n !false ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"Literals for derived properties are not yet supported\") : invariant(false) : void 0;\n }\n !false ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"Invalid argument type for a derived property\") : invariant(false) : void 0;\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 invariant from \"tiny-invariant\";\nimport { modernToLegacyWhereClause } from \"../internal/conversions/modernToLegacyWhereClause.js\";\nimport { derivedPropertyDefinitionFactory } from \"./derivedPropertyDefinitionFactory.js\";\n\n/** @internal */\nexport function createWithPropertiesObjectSet(objectType, objectSet, definitionMap, fromBaseObjectSet = false) {\n return {\n pivotTo: link => {\n return createWithPropertiesObjectSet(objectType, {\n type: \"searchAround\",\n objectSet,\n link\n }, definitionMap);\n },\n where: clause => {\n if (clause == null || Object.keys(clause).length === 0) {\n return createWithPropertiesObjectSet(objectType, objectSet, definitionMap);\n }\n const rdpNames = new Set(definitionMap.keys());\n return createWithPropertiesObjectSet(objectType, {\n type: \"filter\",\n objectSet,\n where: modernToLegacyWhereClause(clause, objectType, rdpNames)\n }, definitionMap);\n },\n aggregate: (aggregation, opt) => {\n const splitAggregation = aggregation.split(\":\");\n !(splitAggregation.length === 2 || splitAggregation[0] === \"$count\") ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"Invalid aggregation format\") : invariant(false) : void 0;\n const [aggregationPropertyName, aggregationOperation] = splitAggregation;\n let aggregationOperationDefinition;\n switch (aggregationOperation) {\n case \"sum\":\n case \"avg\":\n case \"min\":\n case \"max\":\n case \"exactDistinct\":\n case \"approximateDistinct\":\n aggregationOperationDefinition = {\n type: aggregationOperation,\n selectedPropertyApiName: aggregationPropertyName\n };\n break;\n case \"approximatePercentile\":\n aggregationOperationDefinition = {\n type: \"approximatePercentile\",\n selectedPropertyApiName: aggregationPropertyName,\n approximatePercentile: opt?.percentile ?? .5\n };\n break;\n case \"collectSet\":\n case \"collectList\":\n aggregationOperationDefinition = {\n type: aggregationOperation,\n selectedPropertyApiName: aggregationPropertyName,\n limit: opt?.limit ?? 100\n };\n break;\n case undefined:\n if (aggregationPropertyName === \"$count\") {\n aggregationOperationDefinition = {\n type: \"count\"\n };\n break;\n }\n default:\n !false ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"Invalid aggregation operation \" + aggregationOperation) : invariant(false) : void 0;\n }\n const wrappedObjectSet = {\n type: \"selection\",\n objectSet,\n operation: aggregationOperationDefinition\n };\n const selectorResult = derivedPropertyDefinitionFactory(wrappedObjectSet, definitionMap);\n definitionMap.set(selectorResult, wrappedObjectSet);\n return selectorResult;\n },\n selectProperty: name => {\n if (fromBaseObjectSet) {\n const wrappedObjectSet = {\n type: \"property\",\n apiName: name\n };\n const selectorResult = derivedPropertyDefinitionFactory(wrappedObjectSet, definitionMap);\n definitionMap.set(selectorResult, wrappedObjectSet);\n return selectorResult;\n }\n const wrappedObjectSet = {\n type: \"selection\",\n objectSet,\n operation: {\n type: \"get\",\n selectedPropertyApiName: name\n }\n };\n const selectorResult = derivedPropertyDefinitionFactory(wrappedObjectSet, definitionMap);\n definitionMap.set(selectorResult, wrappedObjectSet);\n return selectorResult;\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 directionFieldMap = dir => dir === \"asc\" ? \"ASC\" : dir === \"desc\" ? \"DESC\" : undefined;\n\n/** @internal */\nexport function splitAggregationKey(key) {\n const colonPos = key.lastIndexOf(\":\");\n return {\n property: key.slice(0, colonPos),\n metric: key.slice(colonPos + 1)\n };\n}\n\n/** @internal */\nexport function modernToLegacyAggregationClause(select) {\n return Object.entries(select).flatMap(([propAndMetric, aggregationType]) => {\n if (propAndMetric === \"$count\") {\n return {\n type: \"count\",\n name: \"count\",\n direction: directionFieldMap(aggregationType)\n };\n }\n const {\n property,\n metric\n } = splitAggregationKey(propAndMetric);\n return [{\n type: metric,\n name: `${property}.${metric}`,\n direction: directionFieldMap(aggregationType),\n field: property\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 { splitAggregationKey } from \"./modernToLegacyAggregationClause.js\";\n\n/** @internal */\nexport function legacyToModernSingleAggregationResult(entry, select) {\n const result = {};\n\n // Seed the result with undefined for every selected metric so that\n // properties are always present, even when the server returns no metrics\n // (e.g. aggregating over 0 objects).\n for (const selectKey of Object.keys(select)) {\n if (selectKey === \"$count\") {\n continue;\n }\n const {\n property,\n metric\n } = splitAggregationKey(selectKey);\n (result[property] ??= {})[metric] = undefined;\n }\n for (const {\n name,\n value\n } of entry.metrics) {\n if (name === \"count\") {\n continue;\n }\n const [property, metricType] = name.split(\".\");\n if (result[property]) {\n // guard against an unknown metric name\n result[property][metricType] = value;\n }\n }\n return result;\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 \"@osdk/api\";\n/** @internal */\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 (\"$exact\" in type) {\n return [{\n type: \"exact\",\n field,\n maxGroupCount: type.$exact?.$limit ?? undefined,\n defaultValue: type.$exact.$defaultValue ?? undefined,\n includeNullValues: type.$exact.$includeNullValue === true ? true : undefined\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 * as OntologyObjectSets from \"@osdk/foundry.ontologies/OntologyObjectSet\";\nimport invariant from \"tiny-invariant\";\nimport { legacyToModernSingleAggregationResult } from \"../internal/conversions/legacyToModernSingleAggregationResult.js\";\nimport { modernToLegacyAggregationClause } from \"../internal/conversions/modernToLegacyAggregationClause.js\";\nimport { modernToLegacyGroupByClause } from \"../internal/conversions/modernToLegacyGroupByClause.js\";\nimport { addUserAgentAndRequestContextHeaders } from \"../util/addUserAgentAndRequestContextHeaders.js\";\nimport { resolveBaseObjectSetType } from \"../util/objectSetUtils.js\";\n\n/** @internal */\nexport async function aggregate(clientCtx, objectType, objectSet = resolveBaseObjectSetType(objectType), req) {\n const resolvedObjectSet = resolveBaseObjectSetType(objectType);\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 (clientCtx.flushEdits != null) {\n await clientCtx.flushEdits();\n }\n const result = await OntologyObjectSets.aggregate(addUserAgentAndRequestContextHeaders(clientCtx, objectType), await clientCtx.ontologyRid, {\n objectSet,\n groupBy: body.groupBy,\n aggregation: body.aggregation\n }, {\n branch: clientCtx.branch,\n transactionId: clientCtx.transactionId,\n scenarioRid: clientCtx.scenarioRid\n });\n if (!result.data || !Array.isArray(result.data)) {\n throw new Error(`Aggregation request failed: ${JSON.stringify(result)}`);\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], req.$select)\n };\n }\n const ret = result.data.map(entry => {\n return {\n $group: entry.group,\n ...aggregationToCountResult(entry),\n ...legacyToModernSingleAggregationResult(entry, req.$select)\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 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.errors\";\nimport { fetchPage } from \"./fetchPage.js\";\n\n/** @internal */\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}\n\n/** @internal */\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\nconst WIRE_OBJECT_SET_TYPES = new Set([\"base\", \"filter\", \"intersect\", \"reference\", \"searchAround\", \"static\", \"subtract\", \"union\", \"interfaceBase\"]);\n\n/** @internal */\nexport function isWireObjectSet(o) {\n return o != null && typeof o === \"object\" && WIRE_OBJECT_SET_TYPES.has(o.type);\n}","/*\n * Copyright 2025 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 * as OntologyObjectSets from \"@osdk/foundry.ontologies/OntologyObjectSet\";\n/** @internal */\nexport const fetchLinksPage = async (client, objectType, objectSet, links) => {\n if (objectType.type === \"interface\") {\n throw new Error(\"Interface object sets are not supported yet.\");\n }\n void client.ontologyProvider.getObjectDefinition(objectType.apiName).catch(() => {});\n const result = await OntologyObjectSets.loadLinks(client, await client.ontologyRid, {\n objectSet,\n links\n }, {\n branch: client.branch,\n preview: true\n });\n return remapLinksPage(result);\n};\n\n/** @internal */\nexport const remapLinksPage = wireLinksPage => {\n return {\n ...wireLinksPage,\n data: wireLinksPage.data.flatMap(({\n sourceObject,\n linkedObjects\n }) => linkedObjects.map(({\n targetObject,\n linkType\n }) => ({\n source: remapObjectLocator(sourceObject),\n target: remapObjectLocator(targetObject),\n linkType: linkType\n })))\n };\n};\n\n/** @internal */\nexport const remapObjectLocator = wireObjectLocator => ({\n $apiName: wireObjectLocator.__apiName,\n $primaryKey: wireObjectLocator.__primaryKey\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 { createWithPropertiesObjectSet } from \"../derivedProperties/createWithPropertiesObjectSet.js\";\nimport { modernToLegacyWhereClause } from \"../internal/conversions/modernToLegacyWhereClause.js\";\nimport { aggregate } from \"../object/aggregate.js\";\nimport { fetchPageInternal, fetchPageWithErrorsInternal } from \"../object/fetchPage.js\";\nimport { fetchSingle, fetchSingleWithErrors } from \"../object/fetchSingle.js\";\nimport { augmentRequestContext } from \"../util/augmentRequestContext.js\";\nimport { resolveBaseObjectSetType } from \"../util/objectSetUtils.js\";\nimport { isWireObjectSet } from \"../util/WireObjectSet.js\";\nimport { fetchLinksPage } from \"./fetchLinksPage.js\";\nconst a = {\n \"type\": \"interfaceLinkSearchAround\",\n \"interfaceLink\": \"lead\",\n \"objectSet\": {\n \"type\": \"asType\",\n \"entityType\": \"Person\",\n \"objectSet\": {\n \"type\": \"filter\",\n \"objectSet\": {\n \"type\": \"base\",\n \"objectType\": \"Employee\"\n },\n \"where\": {\n \"type\": \"eq\",\n \"field\": \"employeeNumber\",\n \"value\": \"657495107\"\n }\n }\n }\n};\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}\nexport function getWireObjectSet(objectSet) {\n return objectSetDefinitions.get(objectSet);\n}\n\n/** @internal exported for internal use only */\nexport const objectSetDefinitions = new WeakMap();\n\n/** @internal */\nexport function createObjectSet(objectType, clientCtx, objectSet = resolveBaseObjectSetType(objectType)) {\n const base = {\n aggregate: aggregate.bind(globalThis, augmentRequestContext(clientCtx, _ => ({\n finalMethodCall: \"aggregate\"\n })), objectType, objectSet),\n fetchPage: fetchPageInternal.bind(globalThis, augmentRequestContext(clientCtx, _ => ({\n finalMethodCall: \"fetchPage\"\n })), objectType, objectSet),\n fetchPageWithErrors: fetchPageWithErrorsInternal.bind(globalThis, augmentRequestContext(clientCtx, _ => ({\n finalMethodCall: \"fetchPageWithErrors\"\n })), objectType, objectSet),\n where: clause => {\n if (clause == null || Object.keys(clause).length === 0) {\n return clientCtx.objectSetFactory(objectType, clientCtx, objectSet);\n }\n return clientCtx.objectSetFactory(objectType, clientCtx, {\n type: \"filter\",\n objectSet,\n where: modernToLegacyWhereClause(clause, objectType)\n });\n },\n pivotTo(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 nearestNeighbors: (query, numNeighbors, property) => {\n const nearestNeighborsQuery = isTextQuery(query) ? {\n \"type\": \"text\",\n \"value\": query\n } : {\n \"type\": \"vector\",\n \"value\": query\n };\n return clientCtx.objectSetFactory(objectType, clientCtx, {\n type: \"nearestNeighbors\",\n objectSet,\n propertyIdentifier: {\n type: \"property\",\n apiName: property\n },\n numNeighbors,\n query: nearestNeighborsQuery\n });\n },\n async *asyncIter(args) {\n let $nextPageToken;\n do {\n const result = await fetchPageInternal(augmentRequestContext(clientCtx, _ => ({\n finalMethodCall: \"asyncIter\"\n })), objectType, objectSet, {\n ...args,\n $pageSize: 10000,\n $nextPageToken,\n $snapshot: true\n });\n $nextPageToken = result.nextPageToken;\n for (const obj of result.data) {\n yield obj;\n }\n } while ($nextPageToken != null);\n },\n fetchOne: isObjectTypeDefinition(objectType) ? async (primaryKey, options) => {\n return await fetchSingle(augmentRequestContext(clientCtx, _ => ({\n finalMethodCall: \"fetchOne\"\n })), objectType, options, await createWithPk(clientCtx, objectType, objectSet, primaryKey));\n } : undefined,\n fetchOneWithErrors: isObjectTypeDefinition(objectType) ? async (primaryKey, options) => {\n return await fetchSingleWithErrors(augmentRequestContext(clientCtx, _ => ({\n finalMethodCall: \"fetchOneWithErrors\"\n })), objectType, options, await createWithPk(clientCtx, objectType, objectSet, primaryKey));\n } : undefined,\n subscribe: (listener, opts) => {\n const pendingSubscribe = import(\"./ObjectSetListenerWebsocket.js\").then(({\n ObjectSetListenerWebsocket\n }) => ObjectSetListenerWebsocket.getInstance(clientCtx).subscribe(objectType, objectSet, listener, opts?.properties, opts?.includeRid));\n return {\n unsubscribe: async () => (await pendingSubscribe)()\n };\n },\n withProperties: clause => {\n const definitionMap = new Map();\n const derivedProperties = {};\n for (const key of Object.keys(clause)) {\n const derivedPropertyDefinition = clause[key](createWithPropertiesObjectSet(objectType, {\n type: \"methodInput\"\n }, definitionMap, true));\n derivedProperties[key] = definitionMap.get(derivedPropertyDefinition);\n }\n return clientCtx.objectSetFactory(objectType, clientCtx, {\n type: \"withProperties\",\n derivedProperties,\n objectSet\n });\n },\n narrowToType: objectTypeDef => {\n const existingMapping = clientCtx.narrowTypeInterfaceOrObjectMapping[objectTypeDef.apiName];\n !(!existingMapping || existingMapping === objectTypeDef.type) ? process.env.NODE_ENV !== \"production\" ? invariant(false, `${objectTypeDef.apiName} was previously used as an ${existingMapping}, but now used as a ${objectTypeDef.type}.`) : invariant(false) : void 0;\n clientCtx.narrowTypeInterfaceOrObjectMapping[objectTypeDef.apiName] = objectTypeDef.type;\n return clientCtx.objectSetFactory(objectTypeDef, clientCtx, {\n type: \"asType\",\n objectSet,\n entityType: objectTypeDef.apiName\n });\n },\n async *experimental_asyncIterLinks(links) {\n let $nextPageToken;\n do {\n const result = await fetchLinksPage(augmentRequestContext(clientCtx, _ => ({\n finalMethodCall: \"asyncIterLinks\"\n })), objectType, objectSet, links);\n $nextPageToken = result.nextPageToken;\n for (const obj of result.data) {\n yield obj;\n }\n } while ($nextPageToken != null);\n },\n $objectSetInternals: {\n def: objectType\n }\n };\n function createSearchAround(link) {\n return () => {\n return clientCtx.objectSetFactory(objectType, clientCtx, objectType.type === \"object\" ? {\n type: \"searchAround\",\n objectSet,\n link\n } : {\n type: \"interfaceLinkSearchAround\",\n objectSet,\n interfaceLink: link\n });\n };\n }\n objectSetDefinitions.set(base, objectSet);\n\n // we are using a type assertion because the marker symbol defined in BaseObjectSet isn't actually used\n // at runtime.\n return base;\n}\nasync function createWithPk(clientCtx, objectType, objectSet, primaryKey) {\n const objDef = await clientCtx.ontologyProvider.getObjectDefinition(objectType.apiName);\n const withPk = {\n type: \"filter\",\n objectSet,\n where: {\n type: \"eq\",\n field: objDef.primaryKeyApiName,\n value: primaryKey\n }\n };\n return withPk;\n}\nfunction isTextQuery(query) {\n return typeof query === \"string\";\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 */\nimport { foundryPlatformFetch as $foundryPlatformFetch } from \"@osdk/shared.net.platformapi\";\n//\nconst _upload = [1, \"/v2/ontologies/attachments/upload\", 7, \"*/*\"];\n/**\n * Upload an attachment to use in an action. Any attachment which has not been linked to an object via\n * an action within one hour after upload will be removed.\n * Previously mapped attachments which are not connected to any object anymore are also removed on\n * a biweekly basis.\n * The body of the request must contain the binary content of the file and the `Content-Type` header must be `application/octet-stream`.\n *\n * @public\n *\n * Required Scopes: [api:ontologies-write]\n * URL: /v2/ontologies/attachments/upload\n */\nexport function upload($ctx, ...args) {\n const headerParams = {\n ...args[2],\n \"Content-Type\": args[2]?.[\"Content-Type\"] ?? args[0].type,\n \"Content-Length\": args[0].size.toString()\n };\n return $foundryPlatformFetch($ctx, _upload, args[0], args[1], headerParams);\n}\nconst _uploadWithRid = [1, \"/v2/ontologies/attachments/upload/{0}\", 7, \"*/*\"];\n/**\n * This endpoint is identical to `/v2/ontologies/attachments/upload` but additionally accepts a previously\n * generated `AttachmentRid`.\n *\n * @alpha\n *\n * Required Scopes: [api:ontologies-write]\n * URL: /v2/ontologies/attachments/upload/{attachmentRid}\n */\nexport function uploadWithRid($ctx, ...args) {\n const headerParams = {\n ...args[3],\n \"Content-Type\": args[3]?.[\"Content-Type\"] ?? args[1].type,\n \"Content-Length\": args[1].size.toString()\n };\n return $foundryPlatformFetch($ctx, _uploadWithRid, args[0], args[1], args[2], headerParams);\n}\nconst _read = [0, \"/v2/ontologies/attachments/{0}/content\",,, \"*/*\"];\n/**\n * Get the content of an attachment.\n *\n * @public\n *\n * Required Scopes: [api:ontologies-read]\n * URL: /v2/ontologies/attachments/{attachmentRid}/content\n */\nexport function read($ctx, ...args) {\n return $foundryPlatformFetch($ctx, _read, ...args);\n}\nconst _get = [0, \"/v2/ontologies/attachments/{0}\"];\n/**\n * Get the metadata of an attachment.\n *\n * @public\n *\n * Required Scopes: [api:ontologies-read]\n * URL: /v2/ontologies/attachments/{attachmentRid}\n */\nexport function get($ctx, ...args) {\n return $foundryPlatformFetch($ctx, _get, ...args);\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// eslint-disable-next-line @typescript-eslint/consistent-type-imports\n\n// DO NOT EXPORT FROM PACKAGE\n/** @internal */\nexport const additionalContext = Symbol(\"additionalContext\");\n\n// BEGIN: THIS IS GENERATED CODE. DO NOT EDIT.\nconst MaxOsdkVersion = \"2.35.0\";\n// END: THIS IS GENERATED CODE. DO NOT EDIT.\n\nconst ErrorMessage = Symbol(\"ErrorMessage\");","/*\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 * as Attachments from \"@osdk/foundry.ontologies/Attachment\";\nimport { additionalContext } from \"../Client.js\";\n/**\n * Helper function to create an attachment type from a rid\n * @param client - An OSDK client.\n * @param rid - The rid of attachment in Foundry.\n * @returns An OSDK attachment object\n */\nexport function hydrateAttachmentFromRid(client, rid) {\n return hydrateAttachmentFromRidInternal(client[additionalContext], rid);\n}\n\n/** @internal */\nexport function hydrateAttachmentFromRidInternal(client, rid) {\n return {\n rid,\n async fetchContents() {\n return Attachments.read(client, rid);\n },\n async fetchMetadata() {\n const r = await Attachments.get(client, rid);\n return {\n ...r,\n sizeBytes: Number(r.sizeBytes)\n };\n }\n };\n}","/*\n * Copyright 2026 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 * Compile-time enforcement: every member of `MediaItemMetadata[\"type\"]` must appear as a key.\n * Adding a variant to the `MediaItemMetadata` union without updating this record fails to\n * compile, keeping the runtime allowlist below from silently drifting out of sync with the\n * type.\n */\nconst _knownVariantKeys = {\n document: true,\n imagery: true,\n audio: true,\n video: true,\n dicom: true,\n email: true,\n model3d: true,\n spreadsheet: true,\n untyped: true\n};\nconst KNOWN_VARIANTS = new Set(Object.keys(_knownVariantKeys));\n\n/**\n * Runtime guard around the platform `MediaSets.metadata` response. The platform may evolve\n * the `MediaItemMetadata` discriminated union faster than a pinned `@osdk/foundry.mediasets`\n * can track; without this check, an unknown `type` string would slip through the type cast\n * and silently break downstream `switch (itemMetadata.type)` narrowing in caller code.\n *\n * Known variants pass through unchanged. Unknown variants are wrapped as\n * `UnknownMediaItemMetadata` with the raw wire payload preserved on `raw`, so callers can\n * handle the forward-compat case explicitly instead of relying on a runtime throw.\n */\nexport function validateMediaItemMetadata(raw) {\n if (KNOWN_VARIANTS.has(raw.type)) {\n return raw;\n }\n return {\n type: \"unknown\",\n raw: raw\n };\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 { MediaSets } from \"@osdk/foundry.mediasets\";\nimport invariant from \"tiny-invariant\";\nimport { additionalContext } from \"./Client.js\";\nimport { validateMediaItemMetadata } from \"./object/validateMediaItemMetadata.js\";\nexport function createMediaFromReference(client, mediaReference) {\n return createMediaFromReferenceInternal(client[additionalContext], mediaReference);\n}\nexport function createMediaFromReferenceInternal(client, mediaReference) {\n const {\n mediaSetRid,\n mediaItemRid\n } = mediaReference.reference.mediaSetViewItem;\n const token = mediaReference.reference.mediaSetViewItem.token;\n return {\n async fetchContents() {\n return MediaSets.read(client, mediaSetRid, mediaItemRid, {\n preview: true\n }, token ? {\n ReadToken: token\n } : undefined);\n },\n async fetchMetadata() {\n const info = await MediaSets.info(client, mediaSetRid, mediaItemRid, {\n preview: true\n }, token ? {\n ReadToken: token\n } : undefined);\n !(info.sizeBytes != null) ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"Expected sizeBytes in media info\") : invariant(false) : void 0;\n !(info.mimeType != null) ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"Expected mimeType in media info\") : invariant(false) : void 0;\n return {\n path: info.path,\n sizeBytes: info.sizeBytes,\n mediaType: info.mimeType\n };\n },\n async fetchFullMetadata() {\n const raw = await MediaSets.metadata(client, mediaSetRid, mediaItemRid, {\n preview: true\n }, token ? {\n ReadToken: token\n } : undefined);\n return {\n itemMetadata: validateMediaItemMetadata(raw)\n };\n },\n getMediaReference() {\n return mediaReference;\n }\n };\n}"]}
1
+ {"version":3,"sources":["../../src/util/addUserAgentAndRequestContextHeaders.ts","../../src/util/augmentRequestContext.ts","../../../../node_modules/.pnpm/@osdk+foundry.ontologies@2.63.0/node_modules/@osdk/foundry.ontologies/build/esm/public/OntologyObjectSet.js","../../src/internal/conversions/extractNamespace.ts","../../src/util/extractObjectOrInterfaceType.ts","../../src/util/extractRdpDefinition.ts","../../src/util/objectSetUtils.ts","../../src/object/fetchPage.ts","../../src/internal/conversions/fullyQualifyPropName.ts","../../src/internal/conversions/makeGeoFilterBbox.ts","../../src/internal/conversions/makeGeoFilterPolygon.ts","../../src/internal/conversions/makeGeoFilterIntersects.ts","../../src/internal/conversions/makeGeoFilterWithin.ts","../../src/internal/conversions/toIntervalQuery.ts","../../src/internal/conversions/modernToLegacyWhereClause.ts","../../src/derivedProperties/derivedPropertyDefinitionFactory.ts","../../src/derivedProperties/createWithPropertiesObjectSet.ts","../../src/internal/conversions/modernToLegacyAggregationClause.ts","../../src/internal/conversions/legacyToModernSingleAggregationResult.ts","../../src/internal/conversions/modernToLegacyGroupByClause.ts","../../src/object/aggregate.ts","../../src/object/fetchSingle.ts","../../src/util/WireObjectSet.ts","../../src/objectSet/fetchLinksPage.ts","../../src/objectSet/createObjectSet.ts","../../../../node_modules/.pnpm/@osdk+foundry.ontologies@2.63.0/node_modules/@osdk/foundry.ontologies/build/esm/public/Attachment.js","../../src/Client.ts","../../src/public-utils/hydrateAttachmentFromRid.ts","../../src/object/validateMediaItemMetadata.ts","../../src/createMediaFromReference.ts"],"names":["createFetchHeaderMutator","USER_AGENT_HEADER","augment","foundryPlatformFetch","def","objOrInterfaceDef","linkDef","invariant","objectSets","objectSetTypes","filteredObjectTypes","definitions","DistanceUnitMapping","wrappedObjectSet","selectorResult","DurationMapping","aggregate","PalantirApiError","MediaSet_exports"],"mappings":"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","file":"chunk-ZSQBDK7L.cjs","sourcesContent":["/*\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 { USER_AGENT_HEADER } from \"@osdk/shared.client.impl\";\nimport { createFetchHeaderMutator } from \"@osdk/shared.net.fetch\";\nexport const addUserAgentAndRequestContextHeaders = (client, withMetadata) => ({\n ...client,\n fetch: createFetchHeaderMutator(client.fetch, headers => {\n headers.set(\"X-OSDK-Request-Context\", JSON.stringify(client.requestContext));\n if (withMetadata.osdkMetadata) {\n headers.set(USER_AGENT_HEADER, [headers.get(USER_AGENT_HEADER), withMetadata.osdkMetadata.extraUserAgent].filter(x => x && x?.length > 0).join(\" \"));\n }\n return headers;\n })\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/**\nReturns a client with its `requestContext` merged with the result of applying\n`augment` to its `requestContext`.\n\nThe second argument is an `Partial<RequestContext>`-returning `augment` function\ninstead of a `RequestContext` object to make referencing the current request\ncontext easier. For example, modifying the `fetchPage` function to add its name\nto the object set's called method chain could look like:\n```\naugmentRequestContext(\n clientContext,\n ctx => ({ methodChain: [...ctx.methodChain, \"fetchPage\"] })\n)\n```\nor\n```\naugmentRequestContext(\n clientContext,\n ({ methodChain }) => ({ methodChain: [...methodChain, \"fetchPage\"] })\n)\n```\ninstead of\n```\naugmentRequestContext(\n clientContext,\n { methodChain: [...clientContext.requestContext.methodChain, \"fetchPage\"] }\n)\n```\n*/\nexport const augmentRequestContext = (client, augment) => ({\n ...client,\n requestContext: {\n ...client.requestContext,\n ...augment(client.requestContext)\n }\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 */\nimport { foundryPlatformFetch as $foundryPlatformFetch } from \"@osdk/shared.net.platformapi\";\n//\nconst _createTemporary = [1, \"/v2/ontologies/{0}/objectSets/createTemporary\", 7];\n/**\n * Creates a temporary `ObjectSet` from the given definition. This `ObjectSet` expires after one hour.\n *\n * @beta\n *\n * Required Scopes: [api:ontologies-read, api:ontologies-write]\n * URL: /v2/ontologies/{ontology}/objectSets/createTemporary\n */\nexport function createTemporary($ctx, ...args) {\n return $foundryPlatformFetch($ctx, _createTemporary, ...args);\n}\nconst _get = [0, \"/v2/ontologies/{0}/objectSets/{1}\", 2];\n/**\n * Gets the definition of the `ObjectSet` with the given RID.\n *\n * @alpha\n *\n * Required Scopes: []\n * URL: /v2/ontologies/{ontology}/objectSets/{objectSetRid}\n */\nexport function get($ctx, ...args) {\n return $foundryPlatformFetch($ctx, _get, ...args);\n}\nconst _load = [1, \"/v2/ontologies/{0}/objectSets/loadObjects\", 7];\n/**\n * Load the ontology objects present in the `ObjectSet` from the provided object set definition.\n *\n * For Object Storage V1 backed objects, this endpoint returns a maximum of 10,000 objects. After 10,000 objects have been returned and if more objects\n * are available, attempting to load another page will result in an `ObjectsExceededLimit` error being returned. There is no limit on Object Storage V2 backed objects.\n *\n * Note that null value properties will not be returned.\n *\n * Vector properties will not be returned unless included in the `select` parameter.\n *\n * @public\n *\n * Required Scopes: [api:ontologies-read]\n * URL: /v2/ontologies/{ontology}/objectSets/loadObjects\n */\nexport function load($ctx, ...args) {\n return $foundryPlatformFetch($ctx, _load, ...args);\n}\nconst _loadMultipleObjectTypes = [1, \"/v2/ontologies/{0}/objectSets/loadObjectsMultipleObjectTypes\", 7];\n/**\n * Load the ontology objects present in the `ObjectSet` from the provided object set definition. The resulting\n * objects may be scoped to an object type, in which all the selected properties on the object type are returned, or scoped\n * to an interface, in which only the object type properties that implement the properties of any interfaces in its\n * scope are returned. For objects that are scoped to an interface in the result, a mapping from interface to\n * object implementation is returned in order to interpret the objects as the interfaces that they implement.\n *\n * For Object Storage V1 backed objects, this endpoint returns a maximum of 10,000 objects. After 10,000 objects have been returned and if more objects\n * are available, attempting to load another page will result in an `ObjectsExceededLimit` error being returned. There is no limit on Object Storage V2 backed objects.\n *\n * Note that null value properties will not be returned. In addition, property metadata (rid, apiName, and primaryKey)\n * will be prefixed with '$' instead of '\\_\\_' as is the case in `loadObjects`.\n *\n * Vector properties will not be returned unless included in the `select` parameter.\n *\n * @beta\n *\n * Required Scopes: [api:ontologies-read]\n * URL: /v2/ontologies/{ontology}/objectSets/loadObjectsMultipleObjectTypes\n */\nexport function loadMultipleObjectTypes($ctx, ...args) {\n return $foundryPlatformFetch($ctx, _loadMultipleObjectTypes, ...args);\n}\nconst _loadObjectsOrInterfaces = [1, \"/v2/ontologies/{0}/objectSets/loadObjectsOrInterfaces\", 7];\n/**\n * Load the ontology objects present in the `ObjectSet` from the provided object set definition. If the requested\n * object set contains interfaces and the object can be viewed as an interface, it will contain the properties\n * defined by the interface. If not, it will contain the properties defined by its object type. This allows directly\n * loading all objects of an interface where all objects are viewed as the interface, for example.\n *\n * Note that the result object set cannot contain a mix of objects with \"interface\" properties and \"object type\"\n * properties. Attempting to load an object set like this will result in an error.\n *\n * For Object Storage V1 backed objects, this endpoint returns a maximum of 10,000 objects. After 10,000 objects have been returned and if more objects\n * are available, attempting to load another page will result in an `ObjectsExceededLimit` error being returned. There is no limit on Object Storage V2 backed objects.\n *\n * Note that null value properties will not be returned. In addition, property metadata (rid, apiName, and primaryKey)\n * will be prefixed with '$' instead of '\\_\\_' as is the case in `/loadObjects`.\n *\n * Vector properties will not be returned unless included in the `select` parameter.\n *\n * @beta\n *\n * Required Scopes: [api:ontologies-read]\n * URL: /v2/ontologies/{ontology}/objectSets/loadObjectsOrInterfaces\n */\nexport function loadObjectsOrInterfaces($ctx, ...args) {\n return $foundryPlatformFetch($ctx, _loadObjectsOrInterfaces, ...args);\n}\nconst _aggregate = [1, \"/v2/ontologies/{0}/objectSets/aggregate\", 7];\n/**\n * Aggregates the ontology objects present in the `ObjectSet` from the provided object set definition.\n *\n * @public\n *\n * Required Scopes: [api:ontologies-read]\n * URL: /v2/ontologies/{ontology}/objectSets/aggregate\n */\nexport function aggregate($ctx, ...args) {\n return $foundryPlatformFetch($ctx, _aggregate, ...args);\n}\nconst _loadLinks = [1, \"/v2/ontologies/{0}/objectSets/loadLinks\", 7];\n/**\n * Loads the specified links from the defined object set.\n *\n * Links are defined as a link type API name and object locators for the source and target objects\n * where only the `__primaryKey` and `__apiName` properties are loaded.\n *\n * Links are grouped by source object locator; however, the links for a given source object may be\n * split over multiple entries with the same source object locator.\n *\n * Please keep these limitations in mind:\n *\n * * Links returned may be stale. For example, primary keys returned by this endpoint may not exist anymore.\n * * This endpoint requests links for 1,000 objects at a time. If, for any page of 1,000 objects, there are more\n * than 100,000 links present, results are limited to 100,000 links and should be considered partial.\n * * This endpoint does not support OSv1 links and will return an error if links provided are backed by OSv1.\n * * This endpoint currently does not support interface object sets or interface links, but support will be added in the near future.\n *\n * @alpha\n *\n * Required Scopes: [api:ontologies-read]\n * URL: /v2/ontologies/{ontology}/objectSets/loadLinks\n */\nexport function loadLinks($ctx, ...args) {\n return $foundryPlatformFetch($ctx, _loadLinks, ...args);\n}","/*\n * Copyright 2025 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 extractNamespace(fqApiName) {\n const last = fqApiName.lastIndexOf(\".\");\n if (last === -1) return [undefined, fqApiName];\n return [fqApiName.slice(0, last), fqApiName.slice(last + 1)];\n}","/*\n * Copyright 2025 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\";\n/* @internal\n* Returns the resultant interface or object type of the object set\n*/\nexport async function extractObjectOrInterfaceType(clientCtx, objectSet) {\n switch (objectSet.type) {\n case \"searchAround\":\n {\n const def = await extractObjectOrInterfaceType(clientCtx, objectSet.objectSet);\n if (def === undefined) {\n return undefined;\n }\n const objOrInterfaceDef = def.type === \"object\" ? await clientCtx.ontologyProvider.getObjectDefinition(def.apiName) : await clientCtx.ontologyProvider.getInterfaceDefinition(def.apiName);\n const linkDef = objOrInterfaceDef.links[objectSet.link];\n !linkDef ? process.env.NODE_ENV !== \"production\" ? invariant(false, `Missing link definition for '${objectSet.link}'`) : invariant(false) : void 0;\n return objOrInterfaceDef.type === \"object\" ? {\n apiName: objOrInterfaceDef.links[objectSet.link].targetType,\n type: \"object\"\n } : {\n apiName: objOrInterfaceDef.links[objectSet.link].targetTypeApiName,\n type: objOrInterfaceDef.links[objectSet.link].targetType\n };\n }\n case \"withProperties\":\n {\n return extractObjectOrInterfaceType(clientCtx, objectSet.objectSet);\n }\n case \"methodInput\":\n return undefined;\n case \"base\":\n return {\n type: \"object\",\n apiName: objectSet.objectType\n };\n case \"interfaceBase\":\n return {\n type: \"interface\",\n apiName: objectSet.interfaceType\n };\n case \"filter\":\n case \"asBaseObjectTypes\":\n case \"nearestNeighbors\":\n return extractObjectOrInterfaceType(clientCtx, objectSet.objectSet);\n case \"asType\":\n return {\n type: clientCtx.narrowTypeInterfaceOrObjectMapping[objectSet.entityType],\n apiName: objectSet.entityType\n };\n case \"intersect\":\n {\n const objectSets = objectSet.objectSets;\n const objectSetTypes = await Promise.all(objectSets.map(os => extractObjectOrInterfaceType(clientCtx, os)));\n const filteredObjectTypes = objectSetTypes.filter(Boolean);\n const firstInterfaceType = filteredObjectTypes.find(val => val?.type === \"interface\");\n !firstInterfaceType ? process.env.NODE_ENV !== \"production\" ? invariant(false, `Missing interface type in intersect objectset scope'`) : invariant(false) : void 0;\n return firstInterfaceType;\n }\n case \"subtract\":\n case \"union\":\n const objectSets = objectSet.objectSets;\n const objectSetTypes = await Promise.all(objectSets.map(os => extractObjectOrInterfaceType(clientCtx, os)));\n const filteredObjectTypes = objectSetTypes.filter(Boolean);\n const firstObjectType = filteredObjectTypes[0];\n !filteredObjectTypes.every(val => {\n return val?.apiName === firstObjectType?.apiName && val?.type === firstObjectType?.type;\n }) ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"Can only have one object type when doing subtract, union\") : invariant(false) : void 0;\n return filteredObjectTypes[0];\n case \"static\":\n case \"reference\":\n // Static and reference object sets are always intersected with a base object set, so we can just return undefined.\n return undefined;\n case \"interfaceLinkSearchAround\":\n const def = await extractObjectOrInterfaceType(clientCtx, objectSet.objectSet);\n if (def === undefined) {\n return undefined;\n }\n const objOrInterfaceDef = def.type === \"object\" ? await clientCtx.ontologyProvider.getObjectDefinition(def.apiName) : await clientCtx.ontologyProvider.getInterfaceDefinition(def.apiName);\n const linkDef = objOrInterfaceDef.links[objectSet.interfaceLink];\n !linkDef ? process.env.NODE_ENV !== \"production\" ? invariant(false, `Missing link definition for '${objectSet.interfaceLink}'`) : invariant(false) : void 0;\n return objOrInterfaceDef.type === \"object\" ? {\n apiName: objOrInterfaceDef.links[objectSet.interfaceLink].targetType,\n type: \"object\"\n } : {\n apiName: objOrInterfaceDef.links[objectSet.interfaceLink].targetTypeApiName,\n type: objOrInterfaceDef.links[objectSet.interfaceLink].targetType\n };\n // We don't have to worry about new object sets being added and doing a runtime break and breaking people since the OSDK is always constructing these.\n default:\n const _ = objectSet;\n !false ? process.env.NODE_ENV !== \"production\" ? invariant(false, `Unsupported object set type for deriving object or interface type,`) : invariant(false) : void 0;\n }\n}","/*\n * Copyright 2025 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 async function extractRdpDefinition(clientCtx, objectSet) {\n if (!hasWithProperties(objectSet)) {\n return {};\n }\n return (await extractRdpDefinitionInternal(clientCtx, objectSet, undefined)).definitions;\n}\nexport function hasWithProperties(objectSet) {\n if (objectSet.type === \"withProperties\") {\n return true;\n }\n if (\"objectSet\" in objectSet && objectSet.objectSet != null) {\n return hasWithProperties(objectSet.objectSet);\n }\n if (\"objectSets\" in objectSet && objectSet.objectSets != null) {\n return objectSet.objectSets.some(hasWithProperties);\n }\n return false;\n}\n\n/* @internal\n* Returns a tuple of the derived property definitions and the object type that the derived property is defined on.\n*/\nasync function extractRdpDefinitionInternal(clientCtx, objectSet, methodInputObjectType) {\n switch (objectSet.type) {\n case \"searchAround\":\n {\n const {\n definitions,\n childObjectType\n } = await extractRdpDefinitionInternal(clientCtx, objectSet.objectSet, methodInputObjectType);\n if (childObjectType === undefined || childObjectType === \"\") {\n return {\n definitions: {}\n };\n }\n const objDef = await clientCtx.ontologyProvider.getObjectDefinition(childObjectType);\n const linkDef = objDef.links[objectSet.link];\n !linkDef ? process.env.NODE_ENV !== \"production\" ? invariant(false, `Missing link definition for '${objectSet.link}'`) : invariant(false) : void 0;\n return {\n definitions,\n childObjectType: objDef.links[objectSet.link].targetType\n };\n }\n case \"withProperties\":\n {\n // These are the definitions and current object type for all object set operations prior to the definition (e.g. filter, pivotTo, etc.)\n const {\n definitions,\n childObjectType\n } = await extractRdpDefinitionInternal(clientCtx, objectSet.objectSet, methodInputObjectType);\n if (childObjectType === undefined || childObjectType === \"\") {\n return {\n definitions: {}\n };\n }\n for (const [name, definition] of Object.entries(objectSet.derivedProperties)) {\n if (definition.type !== \"selection\") {\n definitions[name] = {\n selectedOrCollectedPropertyType: undefined,\n definition\n };\n continue;\n }\n switch (definition.operation.type) {\n case \"collectList\":\n case \"collectSet\":\n case \"get\":\n // This is the object set construction for the derived property definition construction. We pass in childObjectType so that when we reach MethodInputObjectSet, we know where to start looking.\n const {\n childObjectType: operationLevelObjectType\n } = await extractRdpDefinitionInternal(clientCtx, definition.objectSet, childObjectType);\n if (operationLevelObjectType === undefined || operationLevelObjectType === \"\") {\n return {\n definitions: {}\n };\n }\n const objDef = await clientCtx.ontologyProvider.getObjectDefinition(operationLevelObjectType);\n definitions[name] = {\n selectedOrCollectedPropertyType: objDef.properties[definition.operation.selectedPropertyApiName],\n definition\n };\n break;\n default:\n definitions[name] = {\n selectedOrCollectedPropertyType: undefined,\n definition\n };\n }\n }\n return {\n definitions,\n childObjectType\n };\n }\n case \"methodInput\":\n return {\n definitions: {},\n childObjectType: methodInputObjectType\n };\n case \"base\":\n return {\n definitions: {},\n childObjectType: objectSet.objectType\n };\n case \"interfaceBase\":\n return {\n definitions: {},\n childObjectType: objectSet.interfaceType\n };\n case \"filter\":\n case \"asBaseObjectTypes\":\n case \"asType\":\n case \"nearestNeighbors\":\n return extractRdpDefinitionInternal(clientCtx, objectSet.objectSet, methodInputObjectType);\n // These will throw in OSS so we should throw here so no request is made\n case \"intersect\":\n case \"subtract\":\n case \"union\":\n const objectSets = objectSet.objectSets;\n const objectSetTypes = await Promise.all(objectSets.map(os => extractRdpDefinitionInternal(clientCtx, os, methodInputObjectType)));\n const definitions = objectSetTypes.reduce((acc, {\n definitions\n }) => ({\n ...acc,\n ...definitions\n }), {});\n !(Object.keys(definitions).length === 0) ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"Object sets combined using intersect, subtract, or union must not contain any derived property definitions\") : invariant(false) : void 0;\n const firstValidChildObjectType = objectSetTypes.find(({\n childObjectType\n }) => childObjectType != null)?.childObjectType;\n !objectSetTypes.every(({\n childObjectType\n }) => childObjectType === firstValidChildObjectType || childObjectType == null) ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"All object sets in an intersect, subtract, or union must have the same child object type\") : invariant(false) : void 0;\n return {\n definitions: {},\n childObjectType: firstValidChildObjectType\n };\n case \"static\":\n case \"reference\":\n // Static and reference object sets are always intersected with a base object set, so we can just return no child object type.\n return {\n definitions: {}\n };\n // We don't have to worry about new object sets being added and doing a runtime break and breaking people since the OSDK is always constructing these.\n case \"interfaceLinkSearchAround\":\n !false ? process.env.NODE_ENV !== \"production\" ? invariant(false, `Unsupported object set type for Runtime Derived Properties`) : invariant(false) : void 0;\n default:\n const _ = objectSet;\n !false ? process.env.NODE_ENV !== \"production\" ? invariant(false, `Unsupported object set type for Runtime Derived Properties`) : invariant(false) : void 0;\n }\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\nexport function resolveBaseObjectSetType(objectType) {\n return objectType.type === \"interface\" ? {\n type: \"interfaceBase\",\n interfaceType: objectType[\"apiName\"]\n } : {\n type: \"base\",\n objectType: objectType[\"apiName\"]\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 * as OntologyObjectSets from \"@osdk/foundry.ontologies/OntologyObjectSet\";\nimport invariant from \"tiny-invariant\";\nimport { extractNamespace } from \"../internal/conversions/extractNamespace.js\";\nimport { addUserAgentAndRequestContextHeaders } from \"../util/addUserAgentAndRequestContextHeaders.js\";\nimport { extractObjectOrInterfaceType } from \"../util/extractObjectOrInterfaceType.js\";\nimport { extractRdpDefinition } from \"../util/extractRdpDefinition.js\";\nimport { resolveBaseObjectSetType } from \"../util/objectSetUtils.js\";\n\n/**\n * Converts a PropertyModifierValue to the corresponding wire format loadLevel type.\n */\nfunction modifierToLoadLevelType(modifier) {\n switch (modifier) {\n case \"applyMainValue\":\n return \"extractMainValue\";\n case \"applyReducers\":\n return \"applyReducers\";\n case \"applyReducersAndExtractMainValue\":\n return \"applyReducersAndExtractMainValue\";\n default:\n {\n const _exhaustiveCheck = modifier;\n throw new Error(`Unknown modifier: ${_exhaustiveCheck}`);\n }\n }\n}\nexport function buildSelectV2(select, modifiers, allProperties) {\n const modifiersMap = modifiers ?? {};\n const modifierProps = new Set(Object.keys(modifiersMap));\n const hasModifiers = modifierProps.size > 0;\n const entries = [];\n if (select && select.length > 0) {\n for (const [prop, _] of Object.entries(modifiersMap)) {\n !select.includes(prop) ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"Modified properties must be included in $select when manually specifying properties\") : invariant(false) : void 0;\n }\n for (const prop of select) {\n if (modifierProps.has(prop)) {\n entries.push({\n type: \"propertyWithLoadLevel\",\n propertyIdentifier: {\n type: \"property\",\n apiName: prop\n },\n loadLevel: {\n type: modifierToLoadLevelType(modifiersMap[prop])\n }\n });\n } else {\n entries.push({\n type: \"property\",\n apiName: prop\n });\n }\n }\n } else if (hasModifiers && allProperties && allProperties.length > 0) {\n for (const prop of allProperties) {\n if (modifierProps.has(prop)) {\n entries.push({\n type: \"propertyWithLoadLevel\",\n propertyIdentifier: {\n type: \"property\",\n apiName: prop\n },\n loadLevel: {\n type: modifierToLoadLevelType(modifiersMap[prop])\n }\n });\n } else {\n entries.push({\n type: \"property\",\n apiName: prop\n });\n }\n }\n }\n return entries;\n}\nexport function augment(type, ...properties) {\n return {\n [type.apiName]: properties\n };\n}\n\n/** @internal */\nexport function objectSetToSearchJsonV2(objectSet, expectedApiName, existingWhere = undefined) {\n if (objectSet.type === \"base\" || objectSet.type === \"interfaceBase\") {\n if (objectSet.type === \"base\" && objectSet.objectType !== expectedApiName) {\n throw new Error(`Expected objectSet.objectType to be ${expectedApiName}, but got ${objectSet.objectType}`);\n }\n if (objectSet.type === \"interfaceBase\" && objectSet.interfaceType !== expectedApiName) {\n throw new Error(`Expected objectSet.objectType to be ${expectedApiName}, but got ${objectSet.interfaceType}`);\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}\n\n/** @internal */\nexport function resolveInterfaceObjectSet(objectSet, interfaceTypeApiName, args) {\n return args?.$includeAllBaseObjectProperties ? {\n type: \"intersect\",\n objectSets: [objectSet, {\n type: \"interfaceBase\",\n interfaceType: interfaceTypeApiName,\n includeAllBaseObjectProperties: true\n }]\n } : objectSet;\n}\n\n/** @internal */\nexport async function fetchStaticRidPage(client, rids, args) {\n const shouldLoadPropertySecurities = args.$loadPropertySecurityMetadata ?? false;\n const requestBody = await applyFetchArgs(args, {\n objectSet: {\n type: \"static\",\n objects: rids\n },\n select: args?.$select ?? [],\n excludeRid: !args?.$includeRid,\n snapshot: args.$snapshot ?? false,\n loadPropertySecurities: shouldLoadPropertySecurities\n }, client, {\n type: \"object\",\n apiName: \"\"\n });\n if (client.flushEdits != null) {\n await client.flushEdits();\n }\n const result = await OntologyObjectSets.loadMultipleObjectTypes(addUserAgentAndRequestContextHeaders(client, {\n osdkMetadata: undefined\n }), await client.ontologyRid, requestBody, {\n preview: true,\n transactionId: client.transactionId,\n scenarioRid: client.scenarioRid\n });\n return Promise.resolve({\n data: await client.objectFactory(client, result.data, undefined, {}, shouldLoadPropertySecurities ? result.propertySecurities : undefined, !args.$includeRid, args.$select, false, result.interfaceToObjectTypeMappings, result.interfaceToObjectTypeMappingsV2),\n nextPageToken: result.nextPageToken,\n totalCount: result.totalCount\n });\n}\nasync function fetchInterfacePage(client, interfaceType, args, objectSet) {\n const extractedInterfaceTypeApiName = (await extractObjectOrInterfaceType(client, objectSet))?.apiName ?? interfaceType.apiName;\n const resolvedInterfaceObjectSet = resolveInterfaceObjectSet(objectSet, extractedInterfaceTypeApiName, args);\n const shouldLoadPropertySecurities = args.$loadPropertySecurityMetadata ?? false;\n const modifiers = args.$applyModifiers;\n const hasModifiers = modifiers && Object.keys(modifiers).length > 0;\n const hasSelect = args?.$select && args.$select.length > 0;\n let allProperties;\n if (!hasSelect && hasModifiers) {\n const ifaceDef = await client.ontologyProvider.getInterfaceDefinition(interfaceType.apiName);\n allProperties = ifaceDef ? Object.keys(ifaceDef.properties) : undefined;\n }\n const selectV2 = buildSelectV2(args?.$select ? [...args.$select] : undefined, modifiers, allProperties);\n const requestBody = await buildAndRemapRequestBody(args, {\n objectSet: resolvedInterfaceObjectSet,\n select: [],\n selectV2,\n loadPropertySecurities: shouldLoadPropertySecurities,\n excludeRid: !args?.$includeRid,\n snapshot: args.$snapshot ?? false\n }, client, interfaceType);\n if (client.flushEdits != null) {\n await client.flushEdits();\n }\n const result = await OntologyObjectSets.loadMultipleObjectTypes(addUserAgentAndRequestContextHeaders(client, interfaceType), await client.ontologyRid, requestBody, {\n preview: true,\n branch: client.branch,\n transactionId: client.transactionId,\n scenarioRid: client.scenarioRid\n });\n return Promise.resolve({\n data: await client.objectFactory(client, result.data, extractedInterfaceTypeApiName, {}, shouldLoadPropertySecurities ? result.propertySecurities : undefined, !args.$includeRid, args.$select, false, result.interfaceToObjectTypeMappings, result.interfaceToObjectTypeMappingsV2),\n nextPageToken: result.nextPageToken,\n totalCount: result.totalCount\n });\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}\n\n/**\n * @param client\n * @param objectType\n * @param args\n * @param objectSet\n * @returns\n * @internal\n */\nexport async function fetchPage(client, objectType, args, objectSet = resolveBaseObjectSetType(objectType)) {\n return fetchPageInternal(client, objectType, objectSet, args);\n}\n\n/** @internal */\nexport async function fetchPageWithErrors(client, objectType, args, objectSet = resolveBaseObjectSetType(objectType)) {\n return fetchPageWithErrorsInternal(client, objectType, objectSet, args);\n}\nasync function buildAndRemapRequestBody(args, baseBody, client, objectType) {\n const requestBody = await applyFetchArgs(args, baseBody, client, objectType);\n if (requestBody.selectV2 != null && requestBody.selectV2.length > 0) {\n const remapped = remapSelectV2(objectType, requestBody.selectV2);\n return {\n ...requestBody,\n selectV2: remapped\n };\n }\n return requestBody;\n}\nfunction remapSelectV2(objectOrInterface, selectV2) {\n if (objectOrInterface == null) {\n return selectV2;\n }\n if (objectOrInterface.type !== \"interface\") {\n return selectV2;\n }\n const [objApiNamespace] = extractNamespace(objectOrInterface.apiName);\n if (objApiNamespace == null) {\n return selectV2;\n }\n return selectV2.map(entry => {\n if (entry.type === \"property\") {\n const [fieldApiNamespace, fieldShortName] = extractNamespace(entry.apiName);\n if (fieldApiNamespace == null) {\n return {\n type: \"property\",\n apiName: `${objApiNamespace}.${fieldShortName}`\n };\n }\n return entry;\n } else {\n const [fieldApiNamespace, fieldShortName] = extractNamespace(entry.propertyIdentifier.apiName);\n if (fieldApiNamespace == null) {\n return {\n ...entry,\n propertyIdentifier: {\n type: \"property\",\n apiName: `${objApiNamespace}.${fieldShortName}`\n }\n };\n }\n return entry;\n }\n });\n}\n\n/** @internal */\nexport function remapPropertyNames(objectOrInterface, propertyNames) {\n if (objectOrInterface == null) {\n return propertyNames;\n }\n if (objectOrInterface.type === \"interface\") {\n const [objApiNamespace] = extractNamespace(objectOrInterface.apiName);\n return propertyNames.map(name => {\n const [fieldApiNamespace, fieldShortName] = extractNamespace(name);\n return fieldApiNamespace == null && objApiNamespace != null ? `${objApiNamespace}.${fieldShortName}` : name;\n });\n }\n return propertyNames;\n}\nasync function applyFetchArgs(args, body, _client, objectType) {\n if (args?.$nextPageToken) {\n body.pageToken = args.$nextPageToken;\n }\n if (args?.$pageSize != null) {\n body.pageSize = args.$pageSize;\n }\n if (args?.$loadPropertySecurityMetadata) {\n body.loadPropertySecurities = true;\n }\n const orderBy = args?.$orderBy;\n if (orderBy) {\n if (orderBy === \"relevance\") {\n body.orderBy = {\n orderType: \"relevance\",\n fields: []\n };\n } else {\n const orderByEntries = Object.entries(orderBy);\n const fieldNames = orderByEntries.map(([field]) => field);\n const remappedFields = remapPropertyNames(objectType, fieldNames);\n body.orderBy = {\n fields: orderByEntries.map(([, direction], index) => ({\n field: remappedFields[index],\n direction\n }))\n };\n }\n }\n return body;\n}\n\n/** @internal */\nexport async function fetchObjectPage(client, objectType, args, objectSet) {\n // For simple object fetches, since we know the object type up front\n // we can parallelize network requests for loading metadata and loading the actual objects\n // In our object factory we await and block on loading the metadata, which if this call finishes, should already be cached on the client\n const modifiers = args.$applyModifiers;\n const hasModifiers = modifiers && Object.keys(modifiers).length > 0;\n const hasSelect = args?.$select && args.$select.length > 0;\n let allProperties;\n if (!hasSelect && hasModifiers) {\n const objDef = await client.ontologyProvider.getObjectDefinition(objectType.apiName);\n allProperties = objDef ? Object.keys(objDef.properties) : undefined;\n } else {\n // We have an empty catch here so that if this call errors before we await later, we won't have an unhandled promise rejection that would crash the process\n // Swallowing the error is ok because we await the metadata load in the objectFactory later anyways which eventually bubbles up the error to the user\n void client.ontologyProvider.getObjectDefinition(objectType.apiName).catch(() => {});\n }\n const shouldLoadPropertySecurities = args.$loadPropertySecurityMetadata ?? false;\n const selectV2 = buildSelectV2(args?.$select ? [...args.$select] : undefined, modifiers, allProperties);\n const requestBody = await buildAndRemapRequestBody(args, {\n objectSet,\n select: [],\n selectV2,\n loadPropertySecurities: shouldLoadPropertySecurities,\n excludeRid: !args?.$includeRid,\n snapshot: args.$snapshot ?? false\n }, client, objectType);\n if (client.flushEdits != null) {\n await client.flushEdits();\n }\n const r = await OntologyObjectSets.load(addUserAgentAndRequestContextHeaders(client, objectType), await client.ontologyRid, requestBody, {\n branch: client.branch,\n transactionId: client.transactionId,\n scenarioRid: client.scenarioRid\n });\n return Promise.resolve({\n data: await client.objectFactory(client, r.data, undefined, await extractRdpDefinition(client, objectSet), shouldLoadPropertySecurities ? r.propertySecurities : undefined, !args.$includeRid, args.$select, false),\n nextPageToken: r.nextPageToken,\n totalCount: r.totalCount\n });\n}","/*\n * Copyright 2025 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 { extractNamespace } from \"./extractNamespace.js\";\nexport function fullyQualifyPropName(fieldName, objectOrInterface) {\n if (objectOrInterface.type === \"interface\") {\n const [objApiNamespace] = extractNamespace(objectOrInterface.apiName);\n const [fieldApiNamespace, fieldShortName] = extractNamespace(fieldName);\n return fieldApiNamespace == null && objApiNamespace != null ? `${objApiNamespace}.${fieldShortName}` : fieldName;\n }\n return fieldName;\n}","/*\n * Copyright 2025 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 makeGeoFilterBbox(bbox, filterType, propertyIdentifier, field) {\n return {\n type: filterType === \"$within\" ? \"withinBoundingBox\" : \"intersectsBoundingBox\",\n /**\n * This is a bit ugly, but did this so that propertyIdentifier only shows up in the return object if its defined,\n * this makes it so we don't need to go update our entire test bed either to include a field which may change in near future.\n * Once we solidify that this is the way forward, I can remove field and clean this up\n */\n ...(propertyIdentifier != null && {\n propertyIdentifier\n }),\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}","/*\n * Copyright 2025 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 makeGeoFilterPolygon(coordinates, filterType, propertyIdentifier, field) {\n return {\n type: filterType,\n ...(propertyIdentifier != null && {\n propertyIdentifier\n }),\n field,\n value: {\n type: \"Polygon\",\n coordinates\n }\n };\n}","/*\n * Copyright 2025 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 { makeGeoFilterBbox } from \"./makeGeoFilterBbox.js\";\nimport { makeGeoFilterPolygon } from \"./makeGeoFilterPolygon.js\";\nexport function makeGeoFilterIntersects(intersectsBody, propertyIdentifier, field) {\n if (Array.isArray(intersectsBody)) {\n return makeGeoFilterBbox(intersectsBody, \"$intersects\", propertyIdentifier, field);\n } else if (\"$bbox\" in intersectsBody && intersectsBody.$bbox != null) {\n return makeGeoFilterBbox(intersectsBody.$bbox, \"$intersects\", propertyIdentifier, field);\n } else {\n const coordinates = \"$polygon\" in intersectsBody ? intersectsBody.$polygon : intersectsBody.coordinates;\n return makeGeoFilterPolygon(coordinates, \"intersectsPolygon\", propertyIdentifier, field);\n }\n}","/*\n * Copyright 2025 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 { DistanceUnitMapping } from \"@osdk/api\";\nimport { makeGeoFilterBbox } from \"./makeGeoFilterBbox.js\";\nimport { makeGeoFilterPolygon } from \"./makeGeoFilterPolygon.js\";\nexport function makeGeoFilterWithin(withinBody, propertyIdentifier, field) {\n if (Array.isArray(withinBody)) {\n return makeGeoFilterBbox(withinBody, \"$within\", propertyIdentifier, field);\n } else if (\"$bbox\" in withinBody && withinBody.$bbox != null) {\n return makeGeoFilterBbox(withinBody.$bbox, \"$within\", propertyIdentifier, field);\n } else if (\"$distance\" in withinBody && \"$of\" in withinBody && withinBody.$distance != null && withinBody.$of != null) {\n return {\n type: \"withinDistanceOf\",\n ...(propertyIdentifier != null && {\n propertyIdentifier\n }),\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(coordinates, \"withinPolygon\", propertyIdentifier, field);\n }\n}","/*\n * Copyright 2026 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 toIntervalQueryRule(rule) {\n if (rule.$match != null) {\n if (rule.$prefixOnLastTerm) {\n return {\n type: \"prefixOnLastToken\",\n query: rule.$match\n };\n }\n return {\n type: \"match\",\n query: rule.$match,\n ordered: rule.$ordered,\n maxGaps: rule.$maxGaps\n };\n }\n if (rule.$and != null) {\n return {\n type: \"allOf\",\n rules: rule.$and.map(toIntervalQueryRule),\n ordered: rule.$ordered,\n maxGaps: rule.$maxGaps\n };\n }\n if (rule.$or != null) {\n return {\n type: \"anyOf\",\n rules: rule.$or.map(toIntervalQueryRule)\n };\n }\n if (rule.$fuzzy != null) {\n return {\n type: \"fuzzy\",\n term: rule.$fuzzy,\n fuzziness: rule.$fuzziness\n };\n }\n const _ = rule;\n !false ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"Unknown interval rule type\") : invariant(false) : void 0;\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 { fullyQualifyPropName } from \"./fullyQualifyPropName.js\";\nimport { makeGeoFilterIntersects } from \"./makeGeoFilterIntersects.js\";\nimport { makeGeoFilterWithin } from \"./makeGeoFilterWithin.js\";\nimport { toIntervalQueryRule } from \"./toIntervalQuery.js\";\nfunction isAndClause(whereClause) {\n return \"$and\" in whereClause && whereClause.$and !== undefined;\n}\nfunction isOrClause(whereClause) {\n return \"$or\" in whereClause && whereClause.$or !== undefined;\n}\nfunction isNotClause(whereClause) {\n return \"$not\" in whereClause && whereClause.$not !== undefined;\n}\n\n/** @internal */\nexport function modernToLegacyWhereClause(whereClause, objectOrInterface, rdpNames) {\n const parts = Object.entries(whereClause).map(([key, value]) => ({\n [key]: value\n }));\n !(parts.length > 0) ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"Cannot convert an empty where clause to a filter. \" + \"Skip the .where() call entirely when no conditions are provided.\") : invariant(false) : void 0;\n if (parts.length === 1) {\n return modernToLegacyWhereClauseInner(whereClause, objectOrInterface, rdpNames);\n }\n return {\n type: \"and\",\n value: parts.map(v => modernToLegacyWhereClauseInner(v, objectOrInterface, rdpNames))\n };\n}\n\n/** @internal */\nexport function modernToLegacyWhereClauseInner(whereClause, objectOrInterface, rdpNames) {\n const parts = Object.entries(whereClause);\n !(parts.length === 1) ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"Invalid where clause provided.\") : invariant(false) : void 0;\n if (isAndClause(whereClause)) {\n return {\n type: \"and\",\n value: whereClause.$and.map(clause => modernToLegacyWhereClause(clause, objectOrInterface, rdpNames))\n };\n } else if (isOrClause(whereClause)) {\n return {\n type: \"or\",\n value: whereClause.$or.map(clause => modernToLegacyWhereClause(clause, objectOrInterface, rdpNames))\n };\n } else if (isNotClause(whereClause)) {\n return {\n type: \"not\",\n value: modernToLegacyWhereClause(whereClause.$not, objectOrInterface, rdpNames)\n };\n }\n return handleWherePair(parts[0], objectOrInterface, undefined, rdpNames);\n}\nfunction resolvePropertyIdentifier(fieldName, objectOrInterface, isTitleProperty, isPrimaryKeyProperty, isRdp, structFieldSelector) {\n if (isTitleProperty) {\n return {\n type: \"titleProperty\"\n };\n } else if (isPrimaryKeyProperty) {\n return {\n type: \"primaryKeyProperty\"\n };\n } else if (isRdp) {\n return {\n type: \"property\",\n apiName: fieldName\n };\n } else if (structFieldSelector != null) {\n return {\n type: \"structField\",\n ...structFieldSelector,\n propertyApiName: fullyQualifyPropName(structFieldSelector.propertyApiName, objectOrInterface)\n };\n }\n return undefined;\n}\nfunction handleWherePair([fieldName, filter], objectOrInterface, structFieldSelector, rdpNames) {\n !(filter != null) ? process.env.NODE_ENV !== \"production\" ? invariant(false, `Cannot filter on property \"${fieldName}\" with an undefined or null value. ` + `If the value might be undefined, check it before adding to the where clause.`) : invariant(false) : void 0;\n const isTitleProperty = fieldName === \"$title\";\n const isPrimaryKeyProperty = fieldName === \"$primaryKey\";\n const isSpecialProperty = isTitleProperty || isPrimaryKeyProperty;\n const isRdp = !structFieldSelector && !isSpecialProperty && rdpNames?.has(fieldName);\n const propertyIdentifier = resolvePropertyIdentifier(fieldName, objectOrInterface, isTitleProperty, isPrimaryKeyProperty, isRdp, structFieldSelector);\n const field = !isRdp && !isSpecialProperty && structFieldSelector == null ? fullyQualifyPropName(fieldName, objectOrInterface) : undefined;\n !(field == null || propertyIdentifier == null && (field != null || isRdp != null)) ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"Encountered error constructing where clause: field and propertyIdentifier cannot both be defined\") : invariant(false) : void 0;\n if (typeof filter === \"string\" || typeof filter === \"number\" || typeof filter === \"boolean\") {\n return {\n type: \"eq\",\n ...(propertyIdentifier != null && {\n propertyIdentifier\n }),\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, \"A WhereClause Filter with multiple clauses/fields is not allowed. Instead, use an 'or'/'and' clause to combine multiple filters.\") : invariant(false) : void 0;\n\n // Struct\n if (!hasDollarSign) {\n const structFilter = Object.entries(filter);\n !(structFilter.length === 1) ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"Cannot filter on more than one struct field in the same clause, need to use an and clause\") : invariant(false) : void 0;\n const structFieldApiName = keysOfFilter[0];\n return handleWherePair(Object.entries(filter)[0], objectOrInterface, {\n propertyApiName: fieldName,\n structFieldApiName\n }, rdpNames);\n }\n const firstKey = keysOfFilter[0];\n !(filter[firstKey] != null) ? process.env.NODE_ENV !== \"production\" ? invariant(false) : invariant(false) : void 0;\n if (firstKey === \"$contains\" && filter[firstKey] instanceof Object) {\n const containsValue = filter[firstKey];\n const containsKeys = Object.keys(containsValue);\n const isFilterObject = containsKeys.some(key => key.startsWith(\"$\"));\n if (isFilterObject) {\n return handleWherePair([fieldName, containsValue], objectOrInterface, structFieldSelector, rdpNames);\n } else {\n const structFilter = Object.entries(containsValue);\n !(structFilter.length === 1) ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"Cannot filter on more than one struct field in the same clause, need to use an and clause\") : invariant(false) : void 0;\n const structFieldApiName = structFilter[0][0];\n return handleWherePair(structFilter[0], objectOrInterface, {\n propertyApiName: fieldName,\n structFieldApiName\n });\n }\n }\n if (firstKey === \"$ne\") {\n return {\n type: \"not\",\n value: {\n type: \"eq\",\n ...(propertyIdentifier != null && {\n propertyIdentifier\n }),\n field,\n value: filter[firstKey]\n }\n };\n }\n if (firstKey === \"$within\") {\n return makeGeoFilterWithin(filter[firstKey], propertyIdentifier, field);\n }\n if (firstKey === \"$intersects\") {\n return makeGeoFilterIntersects(filter[firstKey], propertyIdentifier, field);\n }\n if (firstKey === \"$containsAllTerms\" || firstKey === \"$containsAnyTerm\") {\n return {\n type: firstKey.substring(1),\n ...(propertyIdentifier != null && {\n propertyIdentifier\n }),\n field,\n value: typeof filter[firstKey] === \"string\" ? filter[firstKey] : filter[firstKey].term,\n fuzzy: typeof filter[firstKey] === \"string\" ? false : filter[firstKey].fuzzySearch ?? false\n };\n }\n if (firstKey === \"$matchesRegex\") {\n return {\n type: \"regex\",\n ...(propertyIdentifier != null && {\n propertyIdentifier\n }),\n field,\n value: filter[firstKey]\n };\n }\n if (firstKey === \"$interval\") {\n return {\n type: \"interval\",\n ...(propertyIdentifier != null && {\n propertyIdentifier\n }),\n field,\n rule: toIntervalQueryRule(filter[firstKey])\n };\n }\n return {\n type: firstKey.substring(1),\n ...(propertyIdentifier != null && {\n propertyIdentifier\n }),\n field,\n value: filter[firstKey]\n };\n}","/*\n * Copyright 2025 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\";\n\n/** @internal */\nexport function derivedPropertyDefinitionFactory(wireDefinition, definitionMap) {\n const definition = {\n abs() {\n return derivedPropertyDefinitionFactory({\n type: \"absoluteValue\",\n property: wireDefinition\n }, definitionMap);\n },\n negate() {\n return derivedPropertyDefinitionFactory({\n type: \"negate\",\n property: wireDefinition\n }, definitionMap);\n },\n max(value) {\n return derivedPropertyDefinitionFactory({\n type: \"greatest\",\n properties: [wireDefinition, getDefinitionFromMap(value, definitionMap)]\n }, definitionMap);\n },\n min(value) {\n return derivedPropertyDefinitionFactory({\n type: \"least\",\n properties: [wireDefinition, getDefinitionFromMap(value, definitionMap)]\n }, definitionMap);\n },\n add(value) {\n return derivedPropertyDefinitionFactory({\n type: \"add\",\n properties: [wireDefinition, getDefinitionFromMap(value, definitionMap)]\n }, definitionMap);\n },\n subtract(value) {\n return derivedPropertyDefinitionFactory({\n \"type\": \"subtract\",\n \"left\": wireDefinition,\n \"right\": getDefinitionFromMap(value, definitionMap)\n }, definitionMap);\n },\n multiply(value) {\n return derivedPropertyDefinitionFactory({\n type: \"multiply\",\n properties: [wireDefinition, getDefinitionFromMap(value, definitionMap)]\n }, definitionMap);\n },\n divide(value) {\n return derivedPropertyDefinitionFactory({\n \"type\": \"divide\",\n \"left\": wireDefinition,\n \"right\": getDefinitionFromMap(value, definitionMap)\n }, definitionMap);\n },\n extractPart: part => {\n return derivedPropertyDefinitionFactory({\n type: \"extract\",\n part,\n property: wireDefinition\n }, definitionMap);\n }\n };\n definitionMap.set(definition, wireDefinition);\n return definition;\n}\nconst getDefinitionFromMap = (arg, definitionMap) => {\n if (typeof arg === \"object\") {\n const definition = definitionMap.get(arg);\n !definition ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"Derived Property is not defined\") : invariant(false) : void 0;\n return definition;\n } else if (typeof arg === \"number\") {\n !false ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"Literals for derived properties are not yet supported\") : invariant(false) : void 0;\n }\n !false ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"Invalid argument type for a derived property\") : invariant(false) : void 0;\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 invariant from \"tiny-invariant\";\nimport { modernToLegacyWhereClause } from \"../internal/conversions/modernToLegacyWhereClause.js\";\nimport { derivedPropertyDefinitionFactory } from \"./derivedPropertyDefinitionFactory.js\";\n\n/** @internal */\nexport function createWithPropertiesObjectSet(objectType, objectSet, definitionMap, fromBaseObjectSet = false) {\n return {\n pivotTo: link => {\n return createWithPropertiesObjectSet(objectType, {\n type: \"searchAround\",\n objectSet,\n link\n }, definitionMap);\n },\n where: clause => {\n if (clause == null || Object.keys(clause).length === 0) {\n return createWithPropertiesObjectSet(objectType, objectSet, definitionMap);\n }\n const rdpNames = new Set(definitionMap.keys());\n return createWithPropertiesObjectSet(objectType, {\n type: \"filter\",\n objectSet,\n where: modernToLegacyWhereClause(clause, objectType, rdpNames)\n }, definitionMap);\n },\n aggregate: (aggregation, opt) => {\n const splitAggregation = aggregation.split(\":\");\n !(splitAggregation.length === 2 || splitAggregation[0] === \"$count\") ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"Invalid aggregation format\") : invariant(false) : void 0;\n const [aggregationPropertyName, aggregationOperation] = splitAggregation;\n let aggregationOperationDefinition;\n switch (aggregationOperation) {\n case \"sum\":\n case \"avg\":\n case \"min\":\n case \"max\":\n case \"exactDistinct\":\n case \"approximateDistinct\":\n aggregationOperationDefinition = {\n type: aggregationOperation,\n selectedPropertyApiName: aggregationPropertyName\n };\n break;\n case \"approximatePercentile\":\n aggregationOperationDefinition = {\n type: \"approximatePercentile\",\n selectedPropertyApiName: aggregationPropertyName,\n approximatePercentile: opt?.percentile ?? .5\n };\n break;\n case \"collectSet\":\n case \"collectList\":\n aggregationOperationDefinition = {\n type: aggregationOperation,\n selectedPropertyApiName: aggregationPropertyName,\n limit: opt?.limit ?? 100\n };\n break;\n case undefined:\n if (aggregationPropertyName === \"$count\") {\n aggregationOperationDefinition = {\n type: \"count\"\n };\n break;\n }\n default:\n !false ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"Invalid aggregation operation \" + aggregationOperation) : invariant(false) : void 0;\n }\n const wrappedObjectSet = {\n type: \"selection\",\n objectSet,\n operation: aggregationOperationDefinition\n };\n const selectorResult = derivedPropertyDefinitionFactory(wrappedObjectSet, definitionMap);\n definitionMap.set(selectorResult, wrappedObjectSet);\n return selectorResult;\n },\n selectProperty: name => {\n if (fromBaseObjectSet) {\n const wrappedObjectSet = {\n type: \"property\",\n apiName: name\n };\n const selectorResult = derivedPropertyDefinitionFactory(wrappedObjectSet, definitionMap);\n definitionMap.set(selectorResult, wrappedObjectSet);\n return selectorResult;\n }\n const wrappedObjectSet = {\n type: \"selection\",\n objectSet,\n operation: {\n type: \"get\",\n selectedPropertyApiName: name\n }\n };\n const selectorResult = derivedPropertyDefinitionFactory(wrappedObjectSet, definitionMap);\n definitionMap.set(selectorResult, wrappedObjectSet);\n return selectorResult;\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 directionFieldMap = dir => dir === \"asc\" ? \"ASC\" : dir === \"desc\" ? \"DESC\" : undefined;\n\n/** @internal */\nexport function splitAggregationKey(key) {\n const colonPos = key.lastIndexOf(\":\");\n return {\n property: key.slice(0, colonPos),\n metric: key.slice(colonPos + 1)\n };\n}\n\n/** @internal */\nexport function modernToLegacyAggregationClause(select) {\n return Object.entries(select).flatMap(([propAndMetric, aggregationType]) => {\n if (propAndMetric === \"$count\") {\n return {\n type: \"count\",\n name: \"count\",\n direction: directionFieldMap(aggregationType)\n };\n }\n const {\n property,\n metric\n } = splitAggregationKey(propAndMetric);\n return [{\n type: metric,\n name: `${property}.${metric}`,\n direction: directionFieldMap(aggregationType),\n field: property\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 { splitAggregationKey } from \"./modernToLegacyAggregationClause.js\";\n\n/** @internal */\nexport function legacyToModernSingleAggregationResult(entry, select) {\n const result = {};\n\n // Seed the result with undefined for every selected metric so that\n // properties are always present, even when the server returns no metrics\n // (e.g. aggregating over 0 objects).\n for (const selectKey of Object.keys(select)) {\n if (selectKey === \"$count\") {\n continue;\n }\n const {\n property,\n metric\n } = splitAggregationKey(selectKey);\n (result[property] ??= {})[metric] = undefined;\n }\n for (const {\n name,\n value\n } of entry.metrics) {\n if (name === \"count\") {\n continue;\n }\n const [property, metricType] = name.split(\".\");\n if (result[property]) {\n // guard against an unknown metric name\n result[property][metricType] = value;\n }\n }\n return result;\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 \"@osdk/api\";\n/** @internal */\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 (\"$exact\" in type) {\n return [{\n type: \"exact\",\n field,\n maxGroupCount: type.$exact?.$limit ?? undefined,\n defaultValue: type.$exact.$defaultValue ?? undefined,\n includeNullValues: type.$exact.$includeNullValue === true ? true : undefined\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 * as OntologyObjectSets from \"@osdk/foundry.ontologies/OntologyObjectSet\";\nimport invariant from \"tiny-invariant\";\nimport { legacyToModernSingleAggregationResult } from \"../internal/conversions/legacyToModernSingleAggregationResult.js\";\nimport { modernToLegacyAggregationClause } from \"../internal/conversions/modernToLegacyAggregationClause.js\";\nimport { modernToLegacyGroupByClause } from \"../internal/conversions/modernToLegacyGroupByClause.js\";\nimport { addUserAgentAndRequestContextHeaders } from \"../util/addUserAgentAndRequestContextHeaders.js\";\nimport { resolveBaseObjectSetType } from \"../util/objectSetUtils.js\";\n\n/** @internal */\nexport async function aggregate(clientCtx, objectType, objectSet = resolveBaseObjectSetType(objectType), req) {\n const resolvedObjectSet = resolveBaseObjectSetType(objectType);\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 (clientCtx.flushEdits != null) {\n await clientCtx.flushEdits();\n }\n const result = await OntologyObjectSets.aggregate(addUserAgentAndRequestContextHeaders(clientCtx, objectType), await clientCtx.ontologyRid, {\n objectSet,\n groupBy: body.groupBy,\n aggregation: body.aggregation\n }, {\n branch: clientCtx.branch,\n transactionId: clientCtx.transactionId,\n scenarioRid: clientCtx.scenarioRid\n });\n if (!result.data || !Array.isArray(result.data)) {\n throw new Error(`Aggregation request failed: ${JSON.stringify(result)}`);\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], req.$select)\n };\n }\n const ret = result.data.map(entry => {\n return {\n $group: entry.group,\n ...aggregationToCountResult(entry),\n ...legacyToModernSingleAggregationResult(entry, req.$select)\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 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.errors\";\nimport { fetchPage } from \"./fetchPage.js\";\n\n/** @internal */\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}\n\n/** @internal */\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\nconst WIRE_OBJECT_SET_TYPES = new Set([\"base\", \"filter\", \"intersect\", \"reference\", \"searchAround\", \"static\", \"subtract\", \"union\", \"interfaceBase\"]);\n\n/** @internal */\nexport function isWireObjectSet(o) {\n return o != null && typeof o === \"object\" && WIRE_OBJECT_SET_TYPES.has(o.type);\n}","/*\n * Copyright 2025 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 * as OntologyObjectSets from \"@osdk/foundry.ontologies/OntologyObjectSet\";\n/** @internal */\nexport const fetchLinksPage = async (client, objectType, objectSet, links) => {\n if (objectType.type === \"interface\") {\n throw new Error(\"Interface object sets are not supported yet.\");\n }\n void client.ontologyProvider.getObjectDefinition(objectType.apiName).catch(() => {});\n const result = await OntologyObjectSets.loadLinks(client, await client.ontologyRid, {\n objectSet,\n links\n }, {\n branch: client.branch,\n preview: true\n });\n return remapLinksPage(result);\n};\n\n/** @internal */\nexport const remapLinksPage = wireLinksPage => {\n return {\n ...wireLinksPage,\n data: wireLinksPage.data.flatMap(({\n sourceObject,\n linkedObjects\n }) => linkedObjects.map(({\n targetObject,\n linkType\n }) => ({\n source: remapObjectLocator(sourceObject),\n target: remapObjectLocator(targetObject),\n linkType: linkType\n })))\n };\n};\n\n/** @internal */\nexport const remapObjectLocator = wireObjectLocator => ({\n $apiName: wireObjectLocator.__apiName,\n $primaryKey: wireObjectLocator.__primaryKey\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 { createWithPropertiesObjectSet } from \"../derivedProperties/createWithPropertiesObjectSet.js\";\nimport { modernToLegacyWhereClause } from \"../internal/conversions/modernToLegacyWhereClause.js\";\nimport { aggregate } from \"../object/aggregate.js\";\nimport { fetchPageInternal, fetchPageWithErrorsInternal } from \"../object/fetchPage.js\";\nimport { fetchSingle, fetchSingleWithErrors } from \"../object/fetchSingle.js\";\nimport { augmentRequestContext } from \"../util/augmentRequestContext.js\";\nimport { resolveBaseObjectSetType } from \"../util/objectSetUtils.js\";\nimport { isWireObjectSet } from \"../util/WireObjectSet.js\";\nimport { fetchLinksPage } from \"./fetchLinksPage.js\";\nconst a = {\n \"type\": \"interfaceLinkSearchAround\",\n \"interfaceLink\": \"lead\",\n \"objectSet\": {\n \"type\": \"asType\",\n \"entityType\": \"Person\",\n \"objectSet\": {\n \"type\": \"filter\",\n \"objectSet\": {\n \"type\": \"base\",\n \"objectType\": \"Employee\"\n },\n \"where\": {\n \"type\": \"eq\",\n \"field\": \"employeeNumber\",\n \"value\": \"657495107\"\n }\n }\n }\n};\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}\nexport function getWireObjectSet(objectSet) {\n return objectSetDefinitions.get(objectSet);\n}\n\n/** @internal exported for internal use only */\nexport const objectSetDefinitions = new WeakMap();\n\n/** @internal */\nexport function createObjectSet(objectType, clientCtx, objectSet = resolveBaseObjectSetType(objectType)) {\n const base = {\n aggregate: aggregate.bind(globalThis, augmentRequestContext(clientCtx, _ => ({\n finalMethodCall: \"aggregate\"\n })), objectType, objectSet),\n fetchPage: fetchPageInternal.bind(globalThis, augmentRequestContext(clientCtx, _ => ({\n finalMethodCall: \"fetchPage\"\n })), objectType, objectSet),\n fetchPageWithErrors: fetchPageWithErrorsInternal.bind(globalThis, augmentRequestContext(clientCtx, _ => ({\n finalMethodCall: \"fetchPageWithErrors\"\n })), objectType, objectSet),\n where: clause => {\n if (clause == null || Object.keys(clause).length === 0) {\n return clientCtx.objectSetFactory(objectType, clientCtx, objectSet);\n }\n return clientCtx.objectSetFactory(objectType, clientCtx, {\n type: \"filter\",\n objectSet,\n where: modernToLegacyWhereClause(clause, objectType)\n });\n },\n pivotTo(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 nearestNeighbors: (query, numNeighbors, property) => {\n const nearestNeighborsQuery = isTextQuery(query) ? {\n \"type\": \"text\",\n \"value\": query\n } : {\n \"type\": \"vector\",\n \"value\": query\n };\n return clientCtx.objectSetFactory(objectType, clientCtx, {\n type: \"nearestNeighbors\",\n objectSet,\n propertyIdentifier: {\n type: \"property\",\n apiName: property\n },\n numNeighbors,\n query: nearestNeighborsQuery\n });\n },\n async *asyncIter(args) {\n let $nextPageToken;\n do {\n const result = await fetchPageInternal(augmentRequestContext(clientCtx, _ => ({\n finalMethodCall: \"asyncIter\"\n })), objectType, objectSet, {\n ...args,\n $pageSize: 10000,\n $nextPageToken,\n $snapshot: true\n });\n $nextPageToken = result.nextPageToken;\n for (const obj of result.data) {\n yield obj;\n }\n } while ($nextPageToken != null);\n },\n fetchOne: isObjectTypeDefinition(objectType) ? async (primaryKey, options) => {\n return await fetchSingle(augmentRequestContext(clientCtx, _ => ({\n finalMethodCall: \"fetchOne\"\n })), objectType, options, await createWithPk(clientCtx, objectType, objectSet, primaryKey));\n } : undefined,\n fetchOneWithErrors: isObjectTypeDefinition(objectType) ? async (primaryKey, options) => {\n return await fetchSingleWithErrors(augmentRequestContext(clientCtx, _ => ({\n finalMethodCall: \"fetchOneWithErrors\"\n })), objectType, options, await createWithPk(clientCtx, objectType, objectSet, primaryKey));\n } : undefined,\n subscribe: (listener, opts) => {\n const pendingSubscribe = import(\"./ObjectSetListenerWebsocket.js\").then(({\n ObjectSetListenerWebsocket\n }) => ObjectSetListenerWebsocket.getInstance(clientCtx).subscribe(objectType, objectSet, listener, opts?.properties, opts?.includeRid));\n return {\n unsubscribe: async () => (await pendingSubscribe)()\n };\n },\n withProperties: clause => {\n const definitionMap = new Map();\n const derivedProperties = {};\n for (const key of Object.keys(clause)) {\n const derivedPropertyDefinition = clause[key](createWithPropertiesObjectSet(objectType, {\n type: \"methodInput\"\n }, definitionMap, true));\n derivedProperties[key] = definitionMap.get(derivedPropertyDefinition);\n }\n return clientCtx.objectSetFactory(objectType, clientCtx, {\n type: \"withProperties\",\n derivedProperties,\n objectSet\n });\n },\n narrowToType: objectTypeDef => {\n const existingMapping = clientCtx.narrowTypeInterfaceOrObjectMapping[objectTypeDef.apiName];\n !(!existingMapping || existingMapping === objectTypeDef.type) ? process.env.NODE_ENV !== \"production\" ? invariant(false, `${objectTypeDef.apiName} was previously used as an ${existingMapping}, but now used as a ${objectTypeDef.type}.`) : invariant(false) : void 0;\n clientCtx.narrowTypeInterfaceOrObjectMapping[objectTypeDef.apiName] = objectTypeDef.type;\n return clientCtx.objectSetFactory(objectTypeDef, clientCtx, {\n type: \"asType\",\n objectSet,\n entityType: objectTypeDef.apiName\n });\n },\n async *experimental_asyncIterLinks(links) {\n let $nextPageToken;\n do {\n const result = await fetchLinksPage(augmentRequestContext(clientCtx, _ => ({\n finalMethodCall: \"asyncIterLinks\"\n })), objectType, objectSet, links);\n $nextPageToken = result.nextPageToken;\n for (const obj of result.data) {\n yield obj;\n }\n } while ($nextPageToken != null);\n },\n $objectSetInternals: {\n def: objectType\n }\n };\n function createSearchAround(link) {\n return () => {\n return clientCtx.objectSetFactory(objectType, clientCtx, objectType.type === \"object\" ? {\n type: \"searchAround\",\n objectSet,\n link\n } : {\n type: \"interfaceLinkSearchAround\",\n objectSet,\n interfaceLink: link\n });\n };\n }\n objectSetDefinitions.set(base, objectSet);\n\n // we are using a type assertion because the marker symbol defined in BaseObjectSet isn't actually used\n // at runtime.\n return base;\n}\nasync function createWithPk(clientCtx, objectType, objectSet, primaryKey) {\n const objDef = await clientCtx.ontologyProvider.getObjectDefinition(objectType.apiName);\n const withPk = {\n type: \"filter\",\n objectSet,\n where: {\n type: \"eq\",\n field: objDef.primaryKeyApiName,\n value: primaryKey\n }\n };\n return withPk;\n}\nfunction isTextQuery(query) {\n return typeof query === \"string\";\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 */\nimport { foundryPlatformFetch as $foundryPlatformFetch } from \"@osdk/shared.net.platformapi\";\n//\nconst _upload = [1, \"/v2/ontologies/attachments/upload\", 7, \"*/*\"];\n/**\n * Upload an attachment to use in an action. Any attachment which has not been linked to an object via\n * an action within one hour after upload will be removed.\n * Previously mapped attachments which are not connected to any object anymore are also removed on\n * a biweekly basis.\n * The body of the request must contain the binary content of the file and the `Content-Type` header must be `application/octet-stream`.\n *\n * @public\n *\n * Required Scopes: [api:ontologies-write]\n * URL: /v2/ontologies/attachments/upload\n */\nexport function upload($ctx, ...args) {\n const headerParams = {\n ...args[2],\n \"Content-Type\": args[2]?.[\"Content-Type\"] ?? args[0].type,\n \"Content-Length\": args[0].size.toString()\n };\n return $foundryPlatformFetch($ctx, _upload, args[0], args[1], headerParams);\n}\nconst _uploadWithRid = [1, \"/v2/ontologies/attachments/upload/{0}\", 7, \"*/*\"];\n/**\n * This endpoint is identical to `/v2/ontologies/attachments/upload` but additionally accepts a previously\n * generated `AttachmentRid`.\n *\n * @alpha\n *\n * Required Scopes: [api:ontologies-write]\n * URL: /v2/ontologies/attachments/upload/{attachmentRid}\n */\nexport function uploadWithRid($ctx, ...args) {\n const headerParams = {\n ...args[3],\n \"Content-Type\": args[3]?.[\"Content-Type\"] ?? args[1].type,\n \"Content-Length\": args[1].size.toString()\n };\n return $foundryPlatformFetch($ctx, _uploadWithRid, args[0], args[1], args[2], headerParams);\n}\nconst _read = [0, \"/v2/ontologies/attachments/{0}/content\",,, \"*/*\"];\n/**\n * Get the content of an attachment.\n *\n * @public\n *\n * Required Scopes: [api:ontologies-read]\n * URL: /v2/ontologies/attachments/{attachmentRid}/content\n */\nexport function read($ctx, ...args) {\n return $foundryPlatformFetch($ctx, _read, ...args);\n}\nconst _get = [0, \"/v2/ontologies/attachments/{0}\"];\n/**\n * Get the metadata of an attachment.\n *\n * @public\n *\n * Required Scopes: [api:ontologies-read]\n * URL: /v2/ontologies/attachments/{attachmentRid}\n */\nexport function get($ctx, ...args) {\n return $foundryPlatformFetch($ctx, _get, ...args);\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// eslint-disable-next-line @typescript-eslint/consistent-type-imports\n\n// DO NOT EXPORT FROM PACKAGE\n/** @internal */\nexport const additionalContext = Symbol(\"additionalContext\");\n\n// BEGIN: THIS IS GENERATED CODE. DO NOT EDIT.\nconst MaxOsdkVersion = \"2.36.0\";\n// END: THIS IS GENERATED CODE. DO NOT EDIT.\n\nconst ErrorMessage = Symbol(\"ErrorMessage\");","/*\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 * as Attachments from \"@osdk/foundry.ontologies/Attachment\";\nimport { additionalContext } from \"../Client.js\";\n/**\n * Helper function to create an attachment type from a rid\n * @param client - An OSDK client.\n * @param rid - The rid of attachment in Foundry.\n * @returns An OSDK attachment object\n */\nexport function hydrateAttachmentFromRid(client, rid) {\n return hydrateAttachmentFromRidInternal(client[additionalContext], rid);\n}\n\n/** @internal */\nexport function hydrateAttachmentFromRidInternal(client, rid) {\n return {\n rid,\n async fetchContents() {\n return Attachments.read(client, rid);\n },\n async fetchMetadata() {\n const r = await Attachments.get(client, rid);\n return {\n ...r,\n sizeBytes: Number(r.sizeBytes)\n };\n }\n };\n}","/*\n * Copyright 2026 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 * Compile-time enforcement: every member of `MediaItemMetadata[\"type\"]` must appear as a key.\n * Adding a variant to the `MediaItemMetadata` union without updating this record fails to\n * compile, keeping the runtime allowlist below from silently drifting out of sync with the\n * type.\n */\nconst _knownVariantKeys = {\n document: true,\n imagery: true,\n audio: true,\n video: true,\n dicom: true,\n email: true,\n model3d: true,\n spreadsheet: true,\n untyped: true\n};\nconst KNOWN_VARIANTS = new Set(Object.keys(_knownVariantKeys));\n\n/**\n * Runtime guard around the platform `MediaSets.metadata` response. The platform may evolve\n * the `MediaItemMetadata` discriminated union faster than a pinned `@osdk/foundry.mediasets`\n * can track; without this check, an unknown `type` string would slip through the type cast\n * and silently break downstream `switch (itemMetadata.type)` narrowing in caller code.\n *\n * Known variants pass through unchanged. Unknown variants are wrapped as\n * `UnknownMediaItemMetadata` with the raw wire payload preserved on `raw`, so callers can\n * handle the forward-compat case explicitly instead of relying on a runtime throw.\n */\nexport function validateMediaItemMetadata(raw) {\n if (KNOWN_VARIANTS.has(raw.type)) {\n return raw;\n }\n return {\n type: \"unknown\",\n raw: raw\n };\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 { MediaSets } from \"@osdk/foundry.mediasets\";\nimport invariant from \"tiny-invariant\";\nimport { additionalContext } from \"./Client.js\";\nimport { validateMediaItemMetadata } from \"./object/validateMediaItemMetadata.js\";\nexport function createMediaFromReference(client, mediaReference) {\n return createMediaFromReferenceInternal(client[additionalContext], mediaReference);\n}\nexport function createMediaFromReferenceInternal(client, mediaReference) {\n const {\n mediaSetRid,\n mediaItemRid\n } = mediaReference.reference.mediaSetViewItem;\n const token = mediaReference.reference.mediaSetViewItem.token;\n return {\n async fetchContents() {\n return MediaSets.read(client, mediaSetRid, mediaItemRid, {\n preview: true\n }, token ? {\n ReadToken: token\n } : undefined);\n },\n async fetchMetadata() {\n const info = await MediaSets.info(client, mediaSetRid, mediaItemRid, {\n preview: true\n }, token ? {\n ReadToken: token\n } : undefined);\n !(info.sizeBytes != null) ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"Expected sizeBytes in media info\") : invariant(false) : void 0;\n !(info.mimeType != null) ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"Expected mimeType in media info\") : invariant(false) : void 0;\n return {\n path: info.path,\n sizeBytes: info.sizeBytes,\n mediaType: info.mimeType\n };\n },\n async fetchFullMetadata() {\n const raw = await MediaSets.metadata(client, mediaSetRid, mediaItemRid, {\n preview: true\n }, token ? {\n ReadToken: token\n } : undefined);\n return {\n itemMetadata: validateMediaItemMetadata(raw)\n };\n },\n getMediaReference() {\n return mediaReference;\n }\n };\n}"]}