@osdk/client 2.1.0-beta.29 → 2.1.0-beta.30

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.
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/Client.ts","../../src/public-utils/hydrateAttachmentFromRid.ts","../../src/object/fetchSingle.ts","../../src/internal/conversions/modernToLegacyWhereClause.ts","../../src/derivedProperties/createWithPropertiesObjectSet.ts","../../src/internal/conversions/legacyToModernSingleAggregationResult.ts","../../src/internal/conversions/modernToLegacyAggregationClause.ts","../../src/internal/conversions/modernToLegacyGroupByClause.ts","../../src/object/aggregate.ts","../../src/util/augmentRequestContext.ts","../../src/util/WireObjectSet.ts","../../src/objectSet/ObjectSetListenerWebsocket.ts","../../src/objectSet/createObjectSet.ts"],"names":["Attachment_exports","fetchPage","PalantirApiError","invariant","DistanceUnitMapping","DurationMapping","resolveBaseObjectSetType","OntologyObjectSet_exports","addUserAgentAndRequestContextHeaders","WebSocket","fetchPageInternal","fetchPageWithErrorsInternal"],"mappings":"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","file":"chunk-R4DO4ZKB.cjs","sourcesContent":["/*\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.1.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 OntologiesV2 from \"@osdk/internal.foundry.ontologiesv2\";\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 OntologiesV2.Attachments.read(client, rid);\n },\n async fetchMetadata() {\n const r = await OntologiesV2.Attachments.get(client, rid);\n return {\n ...r,\n sizeBytes: Number(r.sizeBytes)\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\nimport { DistanceUnitMapping } from \"@osdk/api\";\nimport invariant from \"tiny-invariant\";\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\n/** @internal */\nexport function modernToLegacyWhereClause(whereClause, objectOrInterface) {\n if (\"$and\" in whereClause) {\n return {\n type: \"and\",\n value: whereClause.$and.map(clause => modernToLegacyWhereClause(clause, objectOrInterface))\n };\n } else if (\"$or\" in whereClause) {\n return {\n type: \"or\",\n value: whereClause.$or.map(clause => modernToLegacyWhereClause(clause, objectOrInterface))\n };\n } else if (\"$not\" in whereClause) {\n return {\n type: \"not\",\n value: modernToLegacyWhereClause(whereClause.$not, objectOrInterface)\n };\n }\n const parts = Object.entries(whereClause);\n if (parts.length === 1) {\n return handleWherePair(parts[0], objectOrInterface);\n }\n return {\n type: \"and\",\n value: parts.map(v => handleWherePair(v, objectOrInterface))\n };\n}\nfunction 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}\nfunction 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}\nfunction handleWherePair([fieldName, filter], objectOrInterface, structFieldSelector) {\n !(filter != null) ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"Defined key values are only allowed when they are not undefined.\") : invariant(false) : void 0;\n const propertyIdentifier = structFieldSelector != null ? {\n type: \"structField\",\n ...structFieldSelector,\n propertyApiName: fullyQualifyPropName(structFieldSelector.propertyApiName, objectOrInterface)\n } : undefined;\n const field = structFieldSelector == null ? fullyQualifyPropName(fieldName, objectOrInterface) : undefined;\n if (typeof filter === \"string\" || typeof filter === \"number\" || typeof filter === \"boolean\") {\n propertyIdentifier;\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, \"WhereClause Filter with multiple clauses isn't allowed\") : invariant(false) : void 0;\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 });\n }\n const firstKey = keysOfFilter[0];\n !(filter[firstKey] != null) ? process.env.NODE_ENV !== \"production\" ? invariant(false) : invariant(false) : void 0;\n if (firstKey === \"$ne\") {\n return {\n type: \"not\",\n value: {\n type: \"eq\",\n ...(propertyIdentifier != null && {\n propertyIdentifier\n }),\n field,\n value: filter[firstKey]\n }\n };\n }\n if (firstKey === \"$within\") {\n const withinBody = filter[firstKey];\n if (Array.isArray(withinBody)) {\n return makeGeoFilterBbox(withinBody, firstKey, propertyIdentifier, field);\n } else if (\"$bbox\" in withinBody && withinBody.$bbox != null) {\n return makeGeoFilterBbox(withinBody.$bbox, firstKey, 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, fieldName);\n }\n }\n if (firstKey === \"$intersects\") {\n const intersectsBody = filter[firstKey];\n if (Array.isArray(intersectsBody)) {\n return makeGeoFilterBbox(intersectsBody, firstKey, propertyIdentifier, field);\n } else if (\"$bbox\" in intersectsBody && intersectsBody.$bbox != null) {\n return makeGeoFilterBbox(intersectsBody.$bbox, firstKey, propertyIdentifier, field);\n } else {\n const coordinates = \"$polygon\" in intersectsBody ? intersectsBody.$polygon : intersectsBody.coordinates;\n return makeGeoFilterPolygon(coordinates, \"intersectsPolygon\", propertyIdentifier, field);\n }\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 return {\n type: firstKey.substring(1),\n ...(propertyIdentifier != null && {\n propertyIdentifier\n }),\n field,\n value: filter[firstKey]\n };\n}\nfunction 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 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\";\nconst idCounter = 0;\n\n/** @internal */\nexport function createWithPropertiesObjectSet(objectType, objectSet, definitionMap) {\n const base = {\n pivotTo: link => {\n return createWithPropertiesObjectSet(objectType, {\n type: \"searchAround\",\n objectSet,\n link\n }, definitionMap);\n },\n where: clause => {\n return createWithPropertiesObjectSet(objectType, {\n type: \"filter\",\n objectSet: objectSet,\n where: modernToLegacyWhereClause(clause, objectType)\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 selectorResult = {\n type: {}\n };\n definitionMap.set(selectorResult, {\n type: \"selection\",\n objectSet: objectSet,\n operation: aggregationOperationDefinition\n });\n return selectorResult;\n },\n selectProperty: name => {\n const selectorResult = {\n type: {}\n };\n definitionMap.set(selectorResult, {\n type: \"selection\",\n objectSet: objectSet,\n operation: {\n type: \"get\",\n selectedPropertyApiName: name\n }\n });\n return selectorResult;\n }\n };\n return base;\n}","/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport invariant from \"tiny-invariant\";\n/** @internal */\nexport function legacyToModernSingleAggregationResult(entry) {\n return entry.metrics.reduce((accumulator, curValue) => {\n const parts = curValue.name.split(\".\");\n if (parts[0] === \"count\") {\n return accumulator;\n }\n !(parts.length === 2) ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"assumed we were getting a `${key}.${type}`\") : invariant(false) : void 0;\n const property = parts[0];\n const metricType = parts[1];\n if (!(property in accumulator)) {\n accumulator[property] = {}; // fixme?\n }\n accumulator[property][metricType] = curValue.value; // fixme?\n\n return accumulator;\n }, {});\n}","/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nconst directionFieldMap = dir => dir === \"asc\" ? \"ASC\" : dir === \"desc\" ? \"DESC\" : undefined;\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 colonPos = propAndMetric.lastIndexOf(\":\");\n const property = propAndMetric.slice(0, colonPos);\n const metric = propAndMetric.slice(colonPos + 1);\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 { 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 (\"$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 OntologiesV2 from \"@osdk/internal.foundry.ontologiesv2\";\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 const result = await OntologiesV2.OntologyObjectSets.aggregate(addUserAgentAndRequestContextHeaders(clientCtx, objectType), await clientCtx.ontologyRid, {\n objectSet,\n groupBy: body.groupBy,\n aggregation: body.aggregation\n });\n if (!req.$groupBy) {\n !(result.data.length === 1) ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"no group by clause should mean only one data result\") : invariant(false) : void 0;\n return {\n ...aggregationToCountResult(result.data[0]),\n ...legacyToModernSingleAggregationResult(result.data[0])\n };\n }\n const ret = result.data.map(entry => {\n return {\n $group: entry.group,\n ...aggregationToCountResult(entry),\n ...legacyToModernSingleAggregationResult(entry)\n };\n }); // fixme\n\n return ret; // FIXME\n}\nfunction aggregationToCountResult(entry) {\n for (const aggregateResult of entry.metrics) {\n if (aggregateResult.name === \"count\") {\n return {\n $count: aggregateResult.value\n };\n }\n }\n}","/*\n * Copyright 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 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\"]);\n\n/** @internal */\nexport function isWireObjectSet(o) {\n return o != null && typeof o === \"object\" && WIRE_OBJECT_SET_TYPES.has(o.type);\n}","/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport WebSocket from \"isomorphic-ws\";\nimport invariant from \"tiny-invariant\";\nconst MINIMUM_RECONNECT_DELAY_MS = 5 * 1000;\n\n/** Noop function to reduce conditional checks */\nfunction doNothing() {}\n\n/**\n * Converts an ObjectSetListener to one where all the functions are defined.\n */\nfunction fillOutListener({\n onChange = doNothing,\n onError = doNothing,\n onOutOfDate = doNothing,\n onSuccessfulSubscription = doNothing\n}) {\n return {\n onChange,\n onError,\n onOutOfDate,\n onSuccessfulSubscription\n };\n}\nfunction isReady(sub) {\n return sub.isReady != null;\n}\nfunction subscriptionIsDone(sub) {\n return sub.status === \"done\" || sub.status === \"error\";\n}\n\n/** @internal */\nexport class ObjectSetListenerWebsocket {\n static #instances = new WeakMap();\n // FIXME\n static getInstance(client) {\n let instance = ObjectSetListenerWebsocket.#instances.get(client.clientCacheKey);\n if (instance == null) {\n instance = new ObjectSetListenerWebsocket(client);\n ObjectSetListenerWebsocket.#instances.set(client.clientCacheKey, instance);\n }\n return instance;\n }\n #ws;\n #lastWsConnect = 0;\n #client;\n #logger;\n\n /**\n * map of requestId to all active subscriptions at the time of the request\n */\n #pendingSubscriptions = new Map();\n\n /**\n * Map of subscriptionId to Subscription. Note: the subscriptionId may be\n * temporary and not the actual subscriptionId from the server.\n */\n #subscriptions = new Map();\n #endedSubscriptions = new Set();\n #maybeDisconnectTimeout;\n\n // DO NOT CONSTRUCT DIRECTLY. ONLY EXPOSED AS A TESTING SEAM\n constructor(client, {\n minimumReconnectDelayMs = MINIMUM_RECONNECT_DELAY_MS\n } = {}) {\n this.MINIMUM_RECONNECT_DELAY_MS = minimumReconnectDelayMs;\n this.#client = client;\n this.#logger = client.logger?.child({}, {\n msgPrefix: \"<OSW> \"\n });\n !(client.baseUrl.startsWith(\"https://\") || client.baseUrl.startsWith(\"http://\")) ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"Stack must be a URL\") : invariant(false) : void 0;\n }\n async subscribe(objectType, objectSet, listener, properties = []) {\n const objOrInterfaceDef = objectType.type === \"object\" ? await this.#client.ontologyProvider.getObjectDefinition(objectType.apiName) : await this.#client.ontologyProvider.getInterfaceDefinition(objectType.apiName);\n let objectProperties = [];\n let referenceProperties = [];\n if (properties.length === 0) {\n properties = Object.keys(objOrInterfaceDef.properties);\n }\n objectProperties = properties.filter(p => objOrInterfaceDef.properties[p].type !== \"geotimeSeriesReference\");\n referenceProperties = properties.filter(p => objOrInterfaceDef.properties[p].type === \"geotimeSeriesReference\");\n const sub = {\n listener: fillOutListener(listener),\n objectSet,\n primaryKeyPropertyName: objOrInterfaceDef.type === \"interface\" ? undefined : objOrInterfaceDef.primaryKeyApiName,\n requestedProperties: objectProperties,\n requestedReferenceProperties: referenceProperties,\n status: \"preparing\",\n // Since we don't have a real subscription id yet but we need to keep\n // track of this reference, we can just use a random uuid.\n subscriptionId: `TMP-${nextUuid()}}`,\n interfaceApiName: objOrInterfaceDef.type === \"object\" ? undefined : objOrInterfaceDef.apiName\n };\n this.#subscriptions.set(sub.subscriptionId, sub);\n\n // actually prepares the subscription, ensures the ws is ready, and sends\n // a subscribe message. We don't want to block on this.\n void this.#initiateSubscribe(sub);\n return () => {\n this.#unsubscribe(sub);\n };\n }\n\n /**\n * Called at least once for every subscription.\n *\n * - Resets pending expiry\n * - Recreates temporary object set\n * - Triggers a full subscribe message\n *\n * @returns\n */\n async #initiateSubscribe(sub) {\n if (process.env.NODE_ENV !== \"production\") {\n this.#logger?.trace(\"#initiateSubscribe()\");\n }\n try {\n await this.#ensureWebsocket();\n\n // the consumer may have already unsubscribed before we are ready to request a subscription\n // so we have to acquire the pendingSubscription after the await.\n if (subscriptionIsDone(sub)) {\n return;\n }\n sub.isReady = true;\n // if we aren't open, then this happens after we #onConnect\n if (this.#ws?.readyState === WebSocket.OPEN) {\n this.#sendSubscribeMessage();\n }\n } catch (error) {\n this.#logger?.error(error, \"Error in #initiateSubscribe\");\n this.#tryCatchOnError(sub, true, error);\n }\n }\n #sendSubscribeMessage() {\n if (process.env.NODE_ENV !== \"production\") {\n this.#logger?.trace(\"#sendSubscribeMessage()\");\n }\n // If two calls to `.subscribe()` happen at once (or if the connection is reset),\n // we may have multiple subscriptions that don't have a subscriptionId yet,\n // so we filter those out.\n const readySubs = [...this.#subscriptions.values()].filter(isReady);\n const id = nextUuid();\n // responses come back as an array of subIds, so we need to know the sources\n this.#pendingSubscriptions.set(id, readySubs);\n\n // every subscribe message \"overwrites\" the previous ones that are not\n // re-included, so we have to reconstitute the entire list of subscriptions\n const subscribe = {\n id,\n requests: readySubs.map(({\n objectSet,\n requestedProperties,\n requestedReferenceProperties,\n interfaceApiName\n }) => {\n return {\n objectSet: objectSet,\n propertySet: requestedProperties,\n referenceSet: requestedReferenceProperties\n };\n })\n };\n if (process.env.NODE_ENV !== \"production\") {\n this.#logger?.trace({\n payload: subscribe\n }, \"sending subscribe message\");\n }\n this.#ws?.send(JSON.stringify(subscribe));\n }\n #unsubscribe(sub, newStatus = \"done\") {\n if (subscriptionIsDone(sub)) {\n // if we are already done, we don't need to do anything\n return;\n }\n sub.status = newStatus;\n\n // make sure listeners do nothing now\n sub.listener = fillOutListener({});\n this.#subscriptions.delete(sub.subscriptionId);\n this.#endedSubscriptions.add(sub.subscriptionId);\n this.#sendSubscribeMessage();\n\n // If we have no more subscriptions, we can disconnect the websocket\n // however we should wait a bit to see if we get any more subscriptions.\n // For example, when switching between react views, you may unsubscribe\n // in the old view and subscribe in the new view. We don't need to re-establish\n // the websocket connection in that case.\n if (this.#maybeDisconnectTimeout) {\n // We reset the timeout on every unsubscribe so its always at least 15s from\n // the last time we are empty. E.g.:\n // - 0s: Subscribe(A)\n // - 10s: Unsubscribe(A)\n // - 11s: Subscribe(B)\n // - 20s: Unsubscribe(B)\n // If we do not clear out the timeout we would disconnect at 25s but that would only be\n // 5s after the last subscription was removed instead of at 35s for the desired 15s.\n clearTimeout(this.#maybeDisconnectTimeout);\n }\n this.#maybeDisconnectTimeout = setTimeout(() => {\n this.#maybeDisconnectTimeout = undefined;\n if (this.#subscriptions.size === 0) {\n this.#cycleWebsocket();\n }\n }, 15_000 /* ms */);\n }\n async #ensureWebsocket() {\n if (this.#ws == null) {\n const {\n baseUrl,\n tokenProvider\n } = this.#client;\n const url = constructWebsocketUrl(baseUrl, await this.#client.ontologyRid);\n const token = await tokenProvider();\n\n // tokenProvider is async, there could potentially be a race to create the websocket.\n // Only the first call to reach here will find a null this.#ws, the rest will bail out\n if (this.#ws == null) {\n // TODO this can probably be exponential backoff with jitter\n // don't reconnect more quickly than MINIMUM_RECONNECT_DELAY\n const nextConnectTime = (this.#lastWsConnect ?? 0) + this.MINIMUM_RECONNECT_DELAY_MS;\n if (nextConnectTime > Date.now()) {\n await new Promise(resolve => {\n setTimeout(resolve, nextConnectTime - Date.now());\n });\n }\n this.#lastWsConnect = Date.now();\n\n // we again may have lost the race after our minimum backoff time\n if (this.#ws == null) {\n if (process.env.NODE_ENV !== \"production\") {\n this.#logger?.trace(\"Creating websocket\");\n }\n this.#ws = new WebSocket(url, [`Bearer-${token}`]);\n this.#ws.addEventListener(\"close\", this.#onClose);\n this.#ws.addEventListener(\"message\", this.#onMessage);\n this.#ws.addEventListener(\"open\", this.#onOpen);\n }\n }\n // Allow await-ing the websocket open event if it isn't open already.\n // This needs to happen even for callers that didn't just create this.#ws\n if (this.#ws.readyState === WebSocket.CONNECTING) {\n const ws = this.#ws;\n return new Promise((resolve, reject) => {\n function cleanup() {\n ws.removeEventListener(\"open\", open);\n ws.removeEventListener(\"error\", error);\n ws.removeEventListener(\"close\", cleanup);\n }\n function open() {\n cleanup();\n resolve();\n }\n function error(evt) {\n cleanup();\n reject(evt);\n }\n ws.addEventListener(\"open\", open);\n ws.addEventListener(\"error\", error);\n ws.addEventListener(\"close\", cleanup);\n });\n }\n }\n }\n #onOpen = () => {\n // resubscribe all of the listeners\n this.#sendSubscribeMessage();\n };\n #onMessage = async message => {\n const data = JSON.parse(message.data.toString());\n if (process.env.NODE_ENV !== \"production\") {\n this.#logger?.trace({\n payload: data\n }, \"received message from ws\");\n }\n switch (data.type) {\n case \"objectSetChanged\":\n return void this.#handleMessage_objectSetChanged(data);\n case \"refreshObjectSet\":\n return void this.#handleMessage_refreshObjectSet(data);\n case \"subscribeResponses\":\n return void this.#handleMessage_subscribeResponses(data);\n case \"subscriptionClosed\":\n {\n return void this.#handleMessage_subscriptionClosed(data);\n }\n default:\n const _ = data;\n !false ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"Unexpected message type\") : invariant(false) : void 0;\n }\n };\n #handleMessage_objectSetChanged = async payload => {\n const sub = this.#subscriptions.get(payload.id);\n if (sub == null) return;\n const objectUpdates = payload.updates.filter(update => update.type === \"object\");\n const referenceUpdates = payload.updates.filter(update => update.type === \"reference\");\n const osdkObjectsWithReferenceUpdates = await Promise.all(referenceUpdates.map(async o => {\n const osdkObjectArray = await this.#client.objectFactory2(this.#client, [{\n __apiName: o.objectType,\n __primaryKey: sub.primaryKeyPropertyName != null ? o.primaryKey[sub.primaryKeyPropertyName] : undefined,\n ...o.primaryKey,\n [o.property]: o.value\n }], sub.interfaceApiName, false, undefined, false, await this.#fetchInterfaceMapping(o.objectType, sub.interfaceApiName));\n const singleOsdkObject = osdkObjectArray[0] ?? undefined;\n return singleOsdkObject != null ? {\n object: singleOsdkObject,\n state: \"ADDED_OR_UPDATED\"\n } : undefined;\n }));\n for (const osdkObject of osdkObjectsWithReferenceUpdates) {\n if (osdkObject != null) {\n try {\n sub.listener.onChange?.(osdkObject);\n } catch (error) {\n this.#logger?.error(error, \"Error in onChange callback\");\n this.#tryCatchOnError(sub, false, error);\n }\n }\n }\n const osdkObjects = await Promise.all(objectUpdates.map(async o => {\n const keysToDelete = Object.keys(o.object).filter(key => sub.requestedReferenceProperties.includes(key));\n for (const key of keysToDelete) {\n delete o.object[key];\n }\n const osdkObjectArray = await this.#client.objectFactory2(this.#client, [o.object], sub.interfaceApiName, false, undefined, false, await this.#fetchInterfaceMapping(o.object.__apiName, sub.interfaceApiName));\n const singleOsdkObject = osdkObjectArray[0] ?? undefined;\n return singleOsdkObject != null ? {\n object: singleOsdkObject,\n state: o.state\n } : undefined;\n }));\n for (const osdkObject of osdkObjects) {\n if (osdkObject != null) {\n try {\n sub.listener.onChange?.(osdkObject);\n } catch (error) {\n this.#logger?.error(error, \"Error in onChange callback\");\n this.#tryCatchOnError(sub, false, error);\n }\n }\n }\n };\n async #fetchInterfaceMapping(objectTypeApiName, interfaceApiName) {\n if (interfaceApiName == null) return {};\n const interfaceMap = (await this.#client.ontologyProvider.getObjectDefinition(objectTypeApiName)).interfaceMap;\n return {\n [interfaceApiName]: {\n [objectTypeApiName]: interfaceMap[interfaceApiName]\n }\n };\n }\n #handleMessage_refreshObjectSet = payload => {\n const sub = this.#subscriptions.get(payload.id);\n !sub ? process.env.NODE_ENV !== \"production\" ? invariant(false, `Expected subscription id ${payload.id}`) : invariant(false) : void 0;\n try {\n sub.listener.onOutOfDate();\n } catch (error) {\n this.#logger?.error(error, \"Error in onOutOfDate callback\");\n this.#tryCatchOnError(sub, false, error);\n }\n };\n #handleMessage_subscribeResponses = payload => {\n const {\n id,\n responses\n } = payload;\n const subs = this.#pendingSubscriptions.get(id);\n !subs ? process.env.NODE_ENV !== \"production\" ? invariant(false, `should have a pending subscription for ${id}`) : invariant(false) : void 0;\n this.#pendingSubscriptions.delete(id);\n for (let i = 0; i < responses.length; i++) {\n const sub = subs[i];\n const response = responses[i];\n switch (response.type) {\n case \"error\":\n this.#tryCatchOnError(sub, true, response.errors);\n this.#unsubscribe(sub, \"error\");\n break;\n case \"qos\":\n // the server has requested that we tear down our websocket and reconnect to help load balance\n this.#cycleWebsocket();\n break;\n case \"success\":\n // `\"preparing\"` should only be the status on an initial subscribe.\n const shouldFireOutOfDate = sub.status === \"expired\" || sub.status === \"reconnecting\";\n if (process.env.NODE_ENV !== \"production\") {\n this.#logger?.trace({\n shouldFireOutOfDate\n }, \"success\");\n }\n sub.status = \"subscribed\";\n if (sub.subscriptionId !== response.id) {\n // might be the temporary one\n this.#subscriptions.delete(sub.subscriptionId);\n sub.subscriptionId = response.id;\n this.#subscriptions.set(sub.subscriptionId, sub); // future messages come by this subId\n }\n try {\n if (shouldFireOutOfDate) sub.listener.onOutOfDate();else sub.listener.onSuccessfulSubscription();\n } catch (error) {\n this.#logger?.error(error, \"Error in onOutOfDate or onSuccessfulSubscription callback\");\n this.#tryCatchOnError(sub, false, error);\n }\n break;\n default:\n this.#tryCatchOnError(sub, true, response);\n }\n }\n };\n #handleMessage_subscriptionClosed(payload) {\n const sub = this.#subscriptions.get(payload.id);\n if (sub == null && this.#endedSubscriptions.has(payload.id)) return;\n !sub ? process.env.NODE_ENV !== \"production\" ? invariant(false, `Expected subscription id ${payload.id}`) : invariant(false) : void 0;\n this.#tryCatchOnError(sub, true, payload.cause);\n this.#unsubscribe(sub, \"error\");\n }\n #onClose = event => {\n if (process.env.NODE_ENV !== \"production\") {\n this.#logger?.trace({\n event\n }, \"Received close event from ws\", event);\n }\n // TODO we should probably throttle this so we don't abuse the backend\n this.#cycleWebsocket();\n };\n #cycleWebsocket = () => {\n if (this.#ws) {\n this.#ws.removeEventListener(\"open\", this.#onOpen);\n this.#ws.removeEventListener(\"message\", this.#onMessage);\n this.#ws.removeEventListener(\"close\", this.#onClose);\n if (this.#ws.readyState !== WebSocket.CLOSING && this.#ws.readyState !== WebSocket.CLOSED) {\n this.#ws.close();\n }\n this.#ws = undefined;\n }\n\n // if we have any listeners that are still depending on us, go ahead and reopen the websocket\n if (this.#subscriptions.size > 0) {\n if (process.env.NODE_ENV !== \"production\") {\n for (const s of this.#subscriptions.values()) {\n !(s.status !== \"done\" && s.status !== \"error\") ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"should not have done/error subscriptions still\") : invariant(false) : void 0;\n }\n }\n for (const s of this.#subscriptions.values()) {\n if (s.status === \"subscribed\") s.status = \"reconnecting\";\n }\n\n // we don't care about the result of this (we want cycleWebsocket to be fire and forget)\n // just that it happens\n void this.#ensureWebsocket();\n }\n };\n #tryCatchOnError = (sub, subscriptionClosed, error) => {\n try {\n sub.listener.onError({\n subscriptionClosed: subscriptionClosed,\n error\n });\n } catch (onErrorError) {\n // eslint-disable-next-line no-console\n console.error(`Error encountered in an onError callback for an OSDK subscription`, onErrorError);\n // eslint-disable-next-line no-console\n console.error(`This onError call was triggered by an error in another callback`, error);\n // eslint-disable-next-line no-console\n console.error(`The subscription has been closed.`, error);\n if (!subscriptionClosed) {\n this.#logger?.error(error, \"Error in onError callback\");\n this.#unsubscribe(sub, \"error\");\n this.#tryCatchOnError(sub, true, onErrorError);\n }\n }\n };\n}\n\n/** @internal */\nexport function constructWebsocketUrl(baseUrl, ontologyRid) {\n const base = new URL(baseUrl);\n const url = new URL(`api/v2/ontologySubscriptions/ontologies/${ontologyRid}/streamSubscriptions`, base);\n url.protocol = url.protocol.replace(\"https\", \"wss\");\n return url;\n}\nlet uuidCounter = 0;\nfunction nextUuid() {\n return `00000000-0000-0000-0000-${(uuidCounter++).toString().padStart(12, \"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 { 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 { ObjectSetListenerWebsocket } from \"./ObjectSetListenerWebsocket.js\";\nfunction isObjectTypeDefinition(def) {\n return def.type === \"object\";\n}\n\n/* @internal */\nexport function isObjectSet(o) {\n return o != null && typeof o === \"object\" && isWireObjectSet(objectSetDefinitions.get(o));\n}\n\n/** @internal */\nexport function getWireObjectSet(objectSet) {\n return objectSetDefinitions.get(objectSet);\n}\nconst objectSetDefinitions = new WeakMap();\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 return clientCtx.objectSetFactory(objectType, clientCtx, {\n type: \"filter\",\n objectSet: objectSet,\n where: modernToLegacyWhereClause(clause, objectType)\n });\n },\n pivotTo: function (type) {\n return createSearchAround(type)();\n },\n union: (...objectSets) => {\n return clientCtx.objectSetFactory(objectType, clientCtx, {\n type: \"union\",\n objectSets: [objectSet, ...objectSets.map(os => objectSetDefinitions.get(os))]\n });\n },\n intersect: (...objectSets) => {\n return clientCtx.objectSetFactory(objectType, clientCtx, {\n type: \"intersect\",\n objectSets: [objectSet, ...objectSets.map(os => objectSetDefinitions.get(os))]\n });\n },\n subtract: (...objectSets) => {\n return clientCtx.objectSetFactory(objectType, clientCtx, {\n type: \"subtract\",\n objectSets: [objectSet, ...objectSets.map(os => objectSetDefinitions.get(os))]\n });\n },\n asyncIter: async function* (args) {\n let $nextPageToken = undefined;\n do {\n const result = await fetchPageInternal(augmentRequestContext(clientCtx, _ => ({\n finalMethodCall: \"asyncIter\"\n })), objectType, objectSet, {\n ...args,\n $nextPageToken\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 = ObjectSetListenerWebsocket.getInstance(clientCtx).subscribe(objectType, objectSet, listener, opts?.properties);\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));\n derivedProperties[key] = definitionMap.get(derivedPropertyDefinition);\n }\n return clientCtx.objectSetFactory(objectType, clientCtx, {\n type: \"withProperties\",\n derivedProperties: derivedProperties,\n objectSet: objectSet\n });\n },\n $objectSetInternals: {\n def: objectType\n }\n };\n function createSearchAround(link) {\n return () => {\n return clientCtx.objectSetFactory(objectType, clientCtx, {\n type: \"searchAround\",\n objectSet,\n link\n });\n };\n }\n objectSetDefinitions.set(base, objectSet);\n\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: objectSet,\n where: {\n type: \"eq\",\n field: objDef.primaryKeyApiName,\n value: primaryKey\n }\n };\n return withPk;\n}"]}
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var chunkJIK7S65P_cjs = require('./chunk-JIK7S65P.cjs');
3
+ var chunkR4DO4ZKB_cjs = require('./chunk-R4DO4ZKB.cjs');
4
4
  var chunkTCHGLBKJ_cjs = require('./chunk-TCHGLBKJ.cjs');
5
5
  var api = require('@osdk/api');
6
6
  var shared_net_errors = require('@osdk/shared.net.errors');
@@ -421,11 +421,11 @@ async function toDataValue(value, client) {
421
421
  if (isOsdkBaseObject(value)) {
422
422
  return await toDataValue(value.$primaryKey, client);
423
423
  }
424
- if (chunkJIK7S65P_cjs.isWireObjectSet(value)) {
424
+ if (chunkR4DO4ZKB_cjs.isWireObjectSet(value)) {
425
425
  return value;
426
426
  }
427
- if (chunkJIK7S65P_cjs.isObjectSet(value)) {
428
- return chunkJIK7S65P_cjs.getWireObjectSet(value);
427
+ if (chunkR4DO4ZKB_cjs.isObjectSet(value)) {
428
+ return chunkR4DO4ZKB_cjs.getWireObjectSet(value);
429
429
  }
430
430
  if (isMediaReference(value)) {
431
431
  return value;
@@ -448,7 +448,7 @@ async function toDataValue(value, client) {
448
448
 
449
449
  // src/actions/applyAction.ts
450
450
  async function applyAction(client, action, parameters, options = {}) {
451
- const clientWithHeaders = chunkTCHGLBKJ_cjs.addUserAgentAndRequestContextHeaders(chunkJIK7S65P_cjs.augmentRequestContext(client, (_) => ({
451
+ const clientWithHeaders = chunkTCHGLBKJ_cjs.addUserAgentAndRequestContextHeaders(chunkR4DO4ZKB_cjs.augmentRequestContext(client, (_) => ({
452
452
  finalMethodCall: "applyAction"
453
453
  })), action);
454
454
  if (Array.isArray(parameters)) {
@@ -759,7 +759,7 @@ var ClientRef = Symbol("ClientRef" );
759
759
 
760
760
  // src/object/convertWireToOsdkObjects/createOsdkInterface.ts
761
761
  function createOsdkInterface(underlying, interfaceDef) {
762
- const [objApiNamespace] = chunkJIK7S65P_cjs.extractNamespace(interfaceDef.apiName);
762
+ const [objApiNamespace] = chunkR4DO4ZKB_cjs.extractNamespace(interfaceDef.apiName);
763
763
  return Object.freeze(Object.defineProperties({}, {
764
764
  // first to minimize hidden classes
765
765
  [UnderlyingOsdkObject]: {
@@ -794,7 +794,7 @@ function createOsdkInterface(underlying, interfaceDef) {
794
794
  },
795
795
  ...Object.fromEntries(Object.keys(interfaceDef.properties).map((p) => {
796
796
  const objDef = underlying[ObjectDefRef];
797
- const [apiNamespace, apiName] = chunkJIK7S65P_cjs.extractNamespace(p);
797
+ const [apiNamespace, apiName] = chunkR4DO4ZKB_cjs.extractNamespace(p);
798
798
  const targetPropName = objDef.interfaceMap[interfaceDef.apiName][p];
799
799
  return [apiNamespace === objApiNamespace ? apiName : p, {
800
800
  enumerable: targetPropName in underlying,
@@ -850,8 +850,8 @@ function get$link(holder) {
850
850
  [objDef.primaryKeyApiName]: rawObj.$primaryKey
851
851
  }).pivotTo(linkName);
852
852
  const value = !linkDef.multiplicity ? {
853
- fetchOne: (options) => chunkJIK7S65P_cjs.fetchSingle(client, objDef, options ?? {}, chunkJIK7S65P_cjs.getWireObjectSet(objectSet)),
854
- fetchOneWithErrors: (options) => chunkJIK7S65P_cjs.fetchSingleWithErrors(client, objDef, options ?? {}, chunkJIK7S65P_cjs.getWireObjectSet(objectSet))
853
+ fetchOne: (options) => chunkR4DO4ZKB_cjs.fetchSingle(client, objDef, options ?? {}, chunkR4DO4ZKB_cjs.getWireObjectSet(objectSet)),
854
+ fetchOneWithErrors: (options) => chunkR4DO4ZKB_cjs.fetchSingleWithErrors(client, objDef, options ?? {}, chunkR4DO4ZKB_cjs.getWireObjectSet(objectSet))
855
855
  } : objectSet;
856
856
  return [linkName, value];
857
857
  })));
@@ -928,9 +928,9 @@ function createSpecialProperty(client, objectDef, rawObject, p) {
928
928
  {
929
929
  if (propDef.type === "attachment") {
930
930
  if (Array.isArray(rawValue)) {
931
- return rawValue.map((a) => chunkJIK7S65P_cjs.hydrateAttachmentFromRidInternal(client, a.rid));
931
+ return rawValue.map((a) => chunkR4DO4ZKB_cjs.hydrateAttachmentFromRidInternal(client, a.rid));
932
932
  }
933
- return chunkJIK7S65P_cjs.hydrateAttachmentFromRidInternal(client, rawValue.rid);
933
+ return chunkR4DO4ZKB_cjs.hydrateAttachmentFromRidInternal(client, rawValue.rid);
934
934
  }
935
935
  if (propDef.type === "numericTimeseries" || propDef.type === "stringTimeseries" || propDef.type === "sensorTimeseries") {
936
936
  return new TimeSeriesPropertyImpl(client, objectDef.apiName, rawObject[objectDef.primaryKeyApiName], p);
@@ -1211,10 +1211,10 @@ var createStandardOntologyProviderFactory = (client) => {
1211
1211
  };
1212
1212
 
1213
1213
  // src/util/UserAgent.ts
1214
- var USER_AGENT = `osdk-client/${"2.1.0-beta.29"}`;
1214
+ var USER_AGENT = `osdk-client/${"2.1.0-beta.30"}`;
1215
1215
 
1216
1216
  // src/createMinimalClient.ts
1217
- function createMinimalClient(metadata, baseUrl, tokenProvider, options = {}, fetchFn = global.fetch, objectSetFactory = chunkJIK7S65P_cjs.createObjectSet) {
1217
+ function createMinimalClient(metadata, baseUrl, tokenProvider, options = {}, fetchFn = global.fetch, objectSetFactory = chunkR4DO4ZKB_cjs.createObjectSet) {
1218
1218
  if (process.env.NODE_ENV !== "production") {
1219
1219
  try {
1220
1220
  new URL(baseUrl);
@@ -1313,11 +1313,11 @@ async function toDataValueQueries(value, client, desiredType) {
1313
1313
  break;
1314
1314
  }
1315
1315
  case "objectSet": {
1316
- if (chunkJIK7S65P_cjs.isWireObjectSet(value)) {
1316
+ if (chunkR4DO4ZKB_cjs.isWireObjectSet(value)) {
1317
1317
  return value;
1318
1318
  }
1319
- if (chunkJIK7S65P_cjs.isObjectSet(value)) {
1320
- return chunkJIK7S65P_cjs.getWireObjectSet(value);
1319
+ if (chunkR4DO4ZKB_cjs.isObjectSet(value)) {
1320
+ return chunkR4DO4ZKB_cjs.getWireObjectSet(value);
1321
1321
  }
1322
1322
  break;
1323
1323
  }
@@ -1346,7 +1346,7 @@ async function toDataValueQueries(value, client, desiredType) {
1346
1346
  // src/queries/applyQuery.ts
1347
1347
  async function applyQuery(client, query, params) {
1348
1348
  const qd = await client.ontologyProvider.getQueryDefinition(query.apiName);
1349
- const response = await chunkTCHGLBKJ_cjs.Query_exports.execute(chunkTCHGLBKJ_cjs.addUserAgentAndRequestContextHeaders(chunkJIK7S65P_cjs.augmentRequestContext(client, (_) => ({
1349
+ const response = await chunkTCHGLBKJ_cjs.Query_exports.execute(chunkTCHGLBKJ_cjs.addUserAgentAndRequestContextHeaders(chunkR4DO4ZKB_cjs.augmentRequestContext(client, (_) => ({
1350
1350
  finalMethodCall: "applyQuery"
1351
1351
  })), query), await client.ontologyRid, query.apiName, {
1352
1352
  parameters: params ? await remapQueryParams(params, client, qd.parameters) : {}
@@ -1391,7 +1391,7 @@ async function remapQueryResponse(client, responseDataType, responseValue, defin
1391
1391
  return responseValue;
1392
1392
  }
1393
1393
  case "attachment": {
1394
- return chunkJIK7S65P_cjs.hydrateAttachmentFromRidInternal(client, responseValue);
1394
+ return chunkR4DO4ZKB_cjs.hydrateAttachmentFromRidInternal(client, responseValue);
1395
1395
  }
1396
1396
  case "object": {
1397
1397
  const def = definitions.get(responseDataType.object);
@@ -1406,7 +1406,7 @@ async function remapQueryResponse(client, responseDataType, responseValue, defin
1406
1406
  throw new Error(`Missing definition for ${responseDataType.objectSet}`);
1407
1407
  }
1408
1408
  if (typeof responseValue === "string") {
1409
- return chunkJIK7S65P_cjs.createObjectSet(def, client, {
1409
+ return chunkR4DO4ZKB_cjs.createObjectSet(def, client, {
1410
1410
  type: "intersect",
1411
1411
  objectSets: [{
1412
1412
  type: "base",
@@ -1417,7 +1417,7 @@ async function remapQueryResponse(client, responseDataType, responseValue, defin
1417
1417
  }]
1418
1418
  });
1419
1419
  }
1420
- return chunkJIK7S65P_cjs.createObjectSet(def, client, responseValue);
1420
+ return chunkR4DO4ZKB_cjs.createObjectSet(def, client, responseValue);
1421
1421
  }
1422
1422
  case "struct": {
1423
1423
  for (const [key, subtype] of Object.entries(responseDataType.struct)) {
@@ -1569,19 +1569,10 @@ function createClientInternal(objectSetFactory, baseUrl, ontologyRid, tokenProvi
1569
1569
  return {
1570
1570
  getBulkLinks: createBulkLinksAsyncIterFactory(clientCtx)
1571
1571
  };
1572
- case unstable.__EXPERIMENTAL__NOT_SUPPORTED_YET_subscribe.name:
1573
- return {
1574
- subscribe: (objectSet, listener, opts) => {
1575
- const pendingSubscribe = chunkJIK7S65P_cjs.ObjectSetListenerWebsocket.getInstance(clientCtx).subscribe(objectSet.$objectSetInternals?.def, chunkJIK7S65P_cjs.getWireObjectSet(objectSet), listener, opts?.properties);
1576
- return {
1577
- unsubscribe: async () => (await pendingSubscribe)()
1578
- };
1579
- }
1580
- };
1581
1572
  case unstable.__EXPERIMENTAL__NOT_SUPPORTED_YET__fetchOneByRid.name:
1582
1573
  return {
1583
1574
  fetchOneByRid: async (objectType, rid, options2) => {
1584
- return await chunkJIK7S65P_cjs.fetchSingle(clientCtx, objectType, options2, createWithRid(rid));
1575
+ return await chunkR4DO4ZKB_cjs.fetchSingle(clientCtx, objectType, options2, createWithRid(rid));
1585
1576
  }
1586
1577
  };
1587
1578
  case unstable.__EXPERIMENTAL__NOT_SUPPORTED_YET__createMediaReference.name:
@@ -1614,7 +1605,7 @@ function createClientInternal(objectSetFactory, baseUrl, ontologyRid, tokenProvi
1614
1605
  [symbolClientContext2]: {
1615
1606
  value: clientCtx
1616
1607
  },
1617
- [chunkJIK7S65P_cjs.additionalContext]: {
1608
+ [chunkR4DO4ZKB_cjs.additionalContext]: {
1618
1609
  value: clientCtx
1619
1610
  },
1620
1611
  fetchMetadata: {
@@ -1623,7 +1614,7 @@ function createClientInternal(objectSetFactory, baseUrl, ontologyRid, tokenProvi
1623
1614
  });
1624
1615
  return client;
1625
1616
  }
1626
- var createClient = createClientInternal.bind(undefined, chunkJIK7S65P_cjs.createObjectSet);
1617
+ var createClient = createClientInternal.bind(undefined, chunkR4DO4ZKB_cjs.createObjectSet);
1627
1618
  function createWithRid(rid) {
1628
1619
  const withRid = {
1629
1620
  type: "static",