@osdk/client 0.9.0 → 0.10.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.
@@ -244,8 +244,8 @@ async function aggregateOrThrow(clientCtx, objectType, objectSet = {
244
244
  }
245
245
  const ret = result.data.map((entry) => {
246
246
  return {
247
- group: entry.group,
248
- values: legacyToModernSingleAggregationResult(entry)
247
+ $group: entry.group,
248
+ ...legacyToModernSingleAggregationResult(entry)
249
249
  };
250
250
  });
251
251
  return ret;
@@ -274,9 +274,10 @@ var Attachment = class {
274
274
  function isAttachment(o) {
275
275
  return o instanceof Attachment;
276
276
  }
277
- async function getLinkedObjectByPkOrThrow(client, sourceApiName, primaryKey, linkTypeApiName, linkedObjectPrimaryKey, select) {
277
+ async function getLinkedObjectByPkOrThrow(client, sourceApiName, primaryKey, linkTypeApiName, linkedObjectPrimaryKey, options) {
278
278
  const object = await requests.getLinkedObjectV2(shared_net.createOpenApiRequest(client.stack, client.fetch), client.ontology.metadata.ontologyApiName, sourceApiName, primaryKey, linkTypeApiName, linkedObjectPrimaryKey, {
279
- select: select ?? []
279
+ select: options?.select ?? [],
280
+ excludeRid: !options?.includeRid
280
281
  });
281
282
  const objects = [object];
282
283
  convertWireToOsdkObjects(client, objects);
@@ -286,7 +287,8 @@ async function pageLinkedObjectsOrThrow(client, sourceApiName, primaryKey, linkT
286
287
  const page = await requests.listLinkedObjectsV2(shared_net.createOpenApiRequest(client.stack, client.fetch), client.ontology.metadata.ontologyApiName, sourceApiName, primaryKey, linkTypeApiName, {
287
288
  pageSize: options?.pageSize,
288
289
  pageToken: options?.nextPageToken,
289
- select: options?.select ?? []
290
+ select: options?.select ?? [],
291
+ excludeRid: !options?.includeRid
290
292
  });
291
293
  convertWireToOsdkObjects(client, page.data);
292
294
  return {
@@ -333,7 +335,7 @@ function createPrototype(ontology, type) {
333
335
  };
334
336
  } else {
335
337
  return {
336
- get: (targetPrimaryKey, options) => getLinkedObjectByPkOrThrow(client, type, primaryKey, p, targetPrimaryKey, options?.select),
338
+ get: (targetPrimaryKey, options) => getLinkedObjectByPkOrThrow(client, type, primaryKey, p, targetPrimaryKey, options),
337
339
  fetchPageOrThrow: (options) => pageLinkedObjectsOrThrow(client, type, primaryKey, p, {
338
340
  nextPageToken: options?.nextPageToken,
339
341
  pageSize: options?.pageSize,
@@ -376,6 +378,23 @@ function createConverter(ontology, type) {
376
378
  }
377
379
  function convertWireToOsdkObjects(client, objs) {
378
380
  for (const obj of objs) {
381
+ if (obj.__rid) {
382
+ obj.$rid = obj.__rid;
383
+ delete obj.__rid;
384
+ }
385
+ obj.$apiName = obj.__apiName;
386
+ obj.$objectType = obj.__apiName;
387
+ obj.$primaryKey = obj.__primaryKey;
388
+ {
389
+ Object.defineProperties(obj, {
390
+ "__apiName": {
391
+ enumerable: false
392
+ },
393
+ "__primaryKey": {
394
+ enumerable: false
395
+ }
396
+ });
397
+ }
379
398
  const proto = getPrototype(client.ontology, obj.__apiName);
380
399
  const converter = getConverter(client.ontology, obj.__apiName);
381
400
  Object.setPrototypeOf(obj, proto);
@@ -399,8 +418,9 @@ async function fetchPageOrThrow(client, objectType, args, objectSet = {
399
418
  const body = {
400
419
  objectSet,
401
420
  // We have to do the following case because LoadObjectSetRequestV2 isnt readonly
402
- select: args?.select ?? []
421
+ select: args?.select ?? [],
403
422
  // FIXME?
423
+ excludeRid: !args?.includeRid
404
424
  };
405
425
  if (args?.nextPageToken) {
406
426
  body.pageToken = args.nextPageToken;
@@ -408,6 +428,14 @@ async function fetchPageOrThrow(client, objectType, args, objectSet = {
408
428
  if (args?.pageSize != null) {
409
429
  body.pageSize = args.pageSize;
410
430
  }
431
+ if (args?.orderBy != null) {
432
+ body.orderBy = {
433
+ fields: Object.entries(args.orderBy).map(([field, direction]) => ({
434
+ field,
435
+ direction
436
+ }))
437
+ };
438
+ }
411
439
  const r = await requests.loadObjectSetV2(shared_net.createOpenApiRequest(client.stack, client.fetch), client.ontology.metadata.ontologyApiName, body);
412
440
  convertWireToOsdkObjects(client, r.data);
413
441
  return r;
@@ -427,4 +455,4 @@ exports.isAttachment = isAttachment;
427
455
  exports.modernToLegacyWhereClause = modernToLegacyWhereClause;
428
456
  exports.object_exports = object_exports;
429
457
  //# sourceMappingURL=out.js.map
430
- //# sourceMappingURL=chunk-KAL57TC5.cjs.map
458
+ //# sourceMappingURL=chunk-MVO52VHK.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/object/aggregateOrThrow.ts","../../src/internal/conversions/legacyToModernSingleAggregationResult.ts","../../src/internal/conversions/modernToLegacyAggregationClause.ts","../../src/internal/conversions/modernToLegacyGroupByClause.ts","../../src/internal/conversions/modernToLegacyWhereClause.ts","../../src/query/WhereClause.ts","../../src/object/fetchPageOrThrow.ts","../../src/createCachedOntologyTransform.ts","../../src/object/Attachment.ts","../../src/object/getLinkedObjectByPkOrThrow.ts","../../src/object/getLinkedObjectOrThrow.ts","../../src/object/pageLinkedObjectsOrThrow.ts","../../src/object/convertWireToOsdkObjects.ts","../../src/object/index.ts"],"names":["invariant","createOpenApiRequest"],"mappings":"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","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\nimport { aggregateObjectSetV2 } from \"@osdk/gateway/requests\";\nimport { createOpenApiRequest } from \"@osdk/shared.net\";\nimport invariant from \"tiny-invariant\";\nimport { legacyToModernSingleAggregationResult, modernToLegacyAggregationClause, modernToLegacyGroupByClause, modernToLegacyWhereClause } from \"../internal/conversions/index.js\";\nexport async function aggregateOrThrow(clientCtx, objectType, objectSet = {\n type: \"base\",\n objectType: objectType[\"apiName\"]\n}, req) {\n const body = {\n aggregation: modernToLegacyAggregationClause(req.select),\n groupBy: [],\n where: undefined\n };\n if (req.groupBy) {\n body.groupBy = modernToLegacyGroupByClause(req.groupBy);\n }\n if (req.where) {\n body.where = modernToLegacyWhereClause(req.where);\n }\n const result = await aggregateObjectSetV2(createOpenApiRequest(clientCtx.stack, clientCtx.fetch), clientCtx.ontology.metadata.ontologyApiName, {\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 legacyToModernSingleAggregationResult(result.data[0]);\n }\n const ret = result.data.map(entry => {\n return {\n $group: entry.group,\n ...legacyToModernSingleAggregationResult(entry)\n };\n }); // fixme\n\n return ret; // FIXME\n}","/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport invariant from \"tiny-invariant\";\nexport function legacyToModernSingleAggregationResult(entry) {\n return entry.metrics.reduce((accumulator, curValue) => {\n const parts = curValue.name.split(\".\");\n !(parts.length === 2) ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"assumed we were getting a `${key}.${type}`\") : invariant(false) : void 0;\n if (!(parts[0] in accumulator)) {\n accumulator[parts[0]] = {};\n }\n accumulator[parts[0]][parts[1]] = curValue.value;\n return accumulator;\n }, {});\n}","/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nexport function modernToLegacyAggregationClause(select) {\n return Object.entries(select).flatMap(([k, v]) => {\n if (Array.isArray(v)) {\n return v.map(v2 => {\n return {\n type: v2,\n name: `${k}.${v2}`,\n field: k\n };\n });\n } else {\n return [{\n type: v,\n // FIXME v has additional possible values\n name: `${k}.${v}`,\n field: k\n }];\n }\n });\n}","/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nexport 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 (type.exactWithLimit) {\n return [{\n type: \"exact\",\n field,\n maxGroupCount: type.exactWithLimit\n }];\n } else {\n return [];\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 invariant from \"tiny-invariant\";\nimport { DistanceUnitMapping } from \"../../query/WhereClause.js\";\nexport function modernToLegacyWhereClause(whereClause) {\n if (\"$and\" in whereClause) {\n return {\n type: \"and\",\n value: whereClause.$and.map(modernToLegacyWhereClause)\n };\n } else if (\"$or\" in whereClause) {\n return {\n type: \"or\",\n value: whereClause.$or.map(modernToLegacyWhereClause)\n };\n } else if (\"$not\" in whereClause) {\n return {\n type: \"not\",\n value: modernToLegacyWhereClause(whereClause.$not)\n };\n }\n const parts = Object.entries(whereClause);\n if (parts.length === 1) {\n return handleWherePair(parts[0]);\n }\n return {\n type: \"and\",\n value: parts.map(handleWherePair)\n };\n}\nfunction makeGeoFilterBbox(field, bbox, filterType) {\n return {\n type: filterType === \"$within\" ? \"withinBoundingBox\" : \"intersectsBoundingBox\",\n field,\n value: {\n topLeft: {\n type: \"Point\",\n coordinates: [bbox[0], bbox[3]]\n },\n bottomRight: {\n type: \"Point\",\n coordinates: [bbox[2], bbox[1]]\n }\n }\n };\n}\nfunction makeGeoFilterPolygon(field, coordinates, filterType) {\n return {\n type: filterType,\n field,\n value: {\n type: \"Polygon\",\n coordinates\n }\n };\n}\nfunction handleWherePair([field, filter]) {\n !(filter != null) ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"Defined key values are only allowed when they are not undefined.\") : invariant(false) : void 0;\n if (typeof filter === \"string\" || typeof filter === \"number\") {\n return {\n type: \"eq\",\n field,\n value: filter\n };\n }\n const keysOfFilter = Object.keys(filter);\n\n // If any of the keys start with `$` then they must be the only one.\n // e.g. `where({ name: { $eq: \"foo\", $ne: \"bar\" } })` is invalid currently\n const hasDollarSign = keysOfFilter.some(key => key.startsWith(\"$\"));\n !(!hasDollarSign || keysOfFilter.length === 1) ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"WhereClause Filter with multiple clauses isn't allowed\") : invariant(false) : void 0;\n if (!hasDollarSign) {\n // Future case for structs\n throw new Error(\"Unsupported filter. Did you forget to use a $-prefixed filter?\");\n }\n const firstKey = keysOfFilter[0];\n !(filter[firstKey] != null) ? process.env.NODE_ENV !== \"production\" ? invariant(false) : invariant(false) : void 0;\n if (firstKey === \"$ne\") {\n return {\n type: \"not\",\n value: {\n type: \"eq\",\n field,\n value: filter[firstKey]\n }\n };\n }\n if (firstKey === \"$within\") {\n const withinBody = filter[firstKey];\n if (Array.isArray(withinBody)) {\n return makeGeoFilterBbox(field, withinBody, firstKey);\n } else if (\"bbox\" in withinBody && !(\"type\" in withinBody)) {\n return makeGeoFilterBbox(field, withinBody.bbox, firstKey);\n } else if (\"distance\" in withinBody && \"of\" in withinBody) {\n return {\n type: \"withinDistanceOf\",\n field,\n value: {\n center: Array.isArray(withinBody.of) ? {\n type: \"Point\",\n coordinates: withinBody.of\n } : withinBody.of,\n distance: {\n value: withinBody.distance[0],\n unit: DistanceUnitMapping[withinBody.distance[1]]\n }\n }\n };\n } else {\n const coordinates = \"polygon\" in withinBody ? withinBody.polygon : withinBody.coordinates;\n return makeGeoFilterPolygon(field, coordinates, \"withinPolygon\");\n }\n }\n if (firstKey === \"$intersects\") {\n const intersectsBody = filter[firstKey];\n if (Array.isArray(intersectsBody)) {\n return makeGeoFilterBbox(field, intersectsBody, firstKey);\n } else if (\"bbox\" in intersectsBody && !(\"type\" in intersectsBody)) {\n return makeGeoFilterBbox(field, intersectsBody.bbox, firstKey);\n } else {\n const coordinates = \"polygon\" in intersectsBody ? intersectsBody.polygon : intersectsBody.coordinates;\n return makeGeoFilterPolygon(field, coordinates, \"intersectsPolygon\");\n }\n }\n return {\n type: firstKey.substring(1),\n field,\n value: filter[firstKey]\n };\n}","/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\n// We need to conditional here to force the union to be distributed\n\nexport const DistanceUnitMapping = {\n \"centimeter\": \"CENTIMETERS\",\n \"centimeters\": \"CENTIMETERS\",\n \"cm\": \"CENTIMETERS\",\n \"meter\": \"METERS\",\n \"meters\": \"METERS\",\n \"m\": \"METERS\",\n \"kilometer\": \"KILOMETERS\",\n \"kilometers\": \"KILOMETERS\",\n \"km\": \"KILOMETERS\",\n \"inch\": \"INCHES\",\n \"inches\": \"INCHES\",\n \"foot\": \"FEET\",\n \"feet\": \"FEET\",\n \"yard\": \"YARDS\",\n \"yards\": \"YARDS\",\n \"mile\": \"MILES\",\n \"miles\": \"MILES\",\n \"nautical_mile\": \"NAUTICAL_MILES\",\n \"nauticalMile\": \"NAUTICAL_MILES\",\n \"nautical miles\": \"NAUTICAL_MILES\"\n};\n\n// FIXME we need to represent all types","/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { loadObjectSetV2 } from \"@osdk/gateway/requests\";\nimport { createOpenApiRequest } from \"@osdk/shared.net\";\nimport { convertWireToOsdkObjects } from \"./convertWireToOsdkObjects.js\";\nexport async function fetchPageOrThrow(client, objectType, args, objectSet = {\n type: \"base\",\n objectType: objectType[\"apiName\"]\n}) {\n const body = {\n objectSet,\n // We have to do the following case because LoadObjectSetRequestV2 isnt readonly\n select: args?.select ?? [],\n // FIXME?\n excludeRid: !args?.includeRid\n };\n if (args?.nextPageToken) {\n body.pageToken = args.nextPageToken;\n }\n if (args?.pageSize != null) {\n body.pageSize = args.pageSize;\n }\n if (args?.orderBy != null) {\n body.orderBy = {\n fields: Object.entries(args.orderBy).map(([field, direction]) => ({\n field,\n direction\n }))\n };\n }\n const r = await loadObjectSetV2(createOpenApiRequest(client.stack, client.fetch), client.ontology.metadata.ontologyApiName, body);\n convertWireToOsdkObjects(client, r.data);\n\n // any is okay here because we have properly converted the wire objects via prototypes\n // which don't type out correctly.\n return r;\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/**\n * Creates a getter function that caches based on the ontology.objects[type] value\n *\n * Any extra arguments are passed through, but only the first args passed in will be used and are not considered as part of the caching\n */\nexport function createCachedOntologyTransform(creator) {\n // We can use the ObjectTypeDefinition as the key because it will be a globally unique singleton\n // Use Map instead of WeakMap here so usage for things like object prototypes do not churn over time\n const cache = new Map();\n return (ontology, type) => {\n const objectDefinition = ontology.objects[type];\n let result = cache.get(objectDefinition);\n if (result == null) {\n result = creator(ontology, type);\n cache.set(objectDefinition, result);\n }\n return result;\n };\n}","/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nexport class Attachment {\n constructor(rid) {\n this.rid = rid;\n }\n}\nexport function isAttachment(o) {\n return o instanceof Attachment;\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 { getLinkedObjectV2 } from \"@osdk/gateway/requests\";\nimport { createOpenApiRequest } from \"@osdk/shared.net\";\nimport { convertWireToOsdkObjects } from \"./convertWireToOsdkObjects.js\";\nexport async function getLinkedObjectByPkOrThrow(client, sourceApiName, primaryKey, linkTypeApiName, linkedObjectPrimaryKey, options) {\n const object = await getLinkedObjectV2(createOpenApiRequest(client.stack, client.fetch), client.ontology.metadata.ontologyApiName, sourceApiName, primaryKey, linkTypeApiName, linkedObjectPrimaryKey, {\n select: options?.select ?? [],\n excludeRid: !options?.includeRid\n });\n const objects = [object];\n convertWireToOsdkObjects(client, objects);\n return objects[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 { PalantirApiError } from \"@osdk/shared.net\";\nimport { pageLinkedObjectsOrThrow } from \"./pageLinkedObjectsOrThrow.js\";\nexport async function getLinkedObjectOrThrow(client, sourceApiName, primaryKey, linkTypeApiName, select) {\n const result = await pageLinkedObjectsOrThrow(client, sourceApiName, primaryKey, linkTypeApiName, {\n pageSize: 1,\n select\n });\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 * 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 { listLinkedObjectsV2 } from \"@osdk/gateway/requests\";\nimport { createOpenApiRequest } from \"@osdk/shared.net\";\nimport { convertWireToOsdkObjects } from \"./convertWireToOsdkObjects.js\";\nexport async function pageLinkedObjectsOrThrow(client, sourceApiName, primaryKey, linkTypeApiName, options) {\n const page = await listLinkedObjectsV2(createOpenApiRequest(client.stack, client.fetch), client.ontology.metadata.ontologyApiName, sourceApiName, primaryKey, linkTypeApiName, {\n pageSize: options?.pageSize,\n pageToken: options?.nextPageToken,\n select: options?.select ?? [],\n excludeRid: !options?.includeRid\n });\n convertWireToOsdkObjects(client, page.data);\n return {\n nextPageToken: page.nextPageToken,\n data: page.data\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 { createCachedOntologyTransform } from \"../createCachedOntologyTransform.js\";\nimport { Attachment } from \"./Attachment.js\";\nimport { getLinkedObjectByPkOrThrow } from \"./getLinkedObjectByPkOrThrow.js\";\nimport { getLinkedObjectOrThrow } from \"./getLinkedObjectOrThrow.js\";\nimport { pageLinkedObjectsOrThrow } from \"./pageLinkedObjectsOrThrow.js\";\nconst getPrototype = createCachedOntologyTransform(createPrototype);\nconst getConverter = createCachedOntologyTransform(createConverter);\nconst OriginClient = Symbol();\nfunction createPrototype(ontology, type) {\n const objDef = ontology.objects[type];\n const proto = {};\n if (!objDef) {\n return proto;\n }\n Object.defineProperty(proto, \"$link\", {\n get: function () {\n const client = this[OriginClient];\n const primaryKey = this[\"__primaryKey\"];\n return new Proxy({}, {\n get(_target, p, _receiver) {\n const linkDef = objDef.links[p];\n if (linkDef == null) {\n return;\n }\n if (!linkDef.multiplicity) {\n return {\n get: options => getLinkedObjectOrThrow(client, type, primaryKey, p, options?.select)\n };\n } else {\n return {\n get: (targetPrimaryKey, options) => getLinkedObjectByPkOrThrow(client, type, primaryKey, p, targetPrimaryKey, options),\n fetchPageOrThrow: options => pageLinkedObjectsOrThrow(client, type, primaryKey, p, {\n nextPageToken: options?.nextPageToken,\n pageSize: options?.pageSize,\n select: options?.select\n })\n };\n }\n }\n });\n },\n enumerable: false,\n configurable: false\n });\n return proto;\n}\n\n// preprocess the ontology definition to more quickly apply object conversions when needed\nfunction createConverter(ontology, type) {\n const objDef = ontology.objects[type];\n if (!objDef) {\n return false;\n }\n const steps = [];\n for (const [key, value] of Object.entries(objDef.properties)) {\n // attachments need a wrapper to provide functionality and to identify them at serialization time\n if (value.type === \"attachment\") {\n steps.push(o => {\n if (o[key] != null) {\n if (Array.isArray(o[key])) {\n o[key] = o[key].map(a => new Attachment(a.rid));\n } else {\n o[key] = new Attachment(o[key].rid);\n }\n }\n });\n }\n }\n return steps.length > 0 ? o => {\n for (const step of steps) {\n step(o);\n }\n } : false;\n}\nconst isAfterFeb2024OrNewApis = false;\n\n/**\n * @param objs the objects to be converted, the contents of this array will be mutated\n */\nexport function convertWireToOsdkObjects(client, objs) {\n for (const obj of objs) {\n if (obj.__rid) {\n obj.$rid = obj.__rid;\n delete obj.__rid;\n }\n\n // Backend returns as __apiName but we want to stick to $ structure\n obj.$apiName = obj.__apiName;\n\n // for now these are the same but when we start doing interface projections the $objectType will always be underlying and\n // the $apiName will be for the current view (in current designs)\n obj.$objectType = obj.__apiName;\n\n // copying over for now as its always returned. In the future, this should just be inferred from underlying\n obj.$primaryKey = obj.__primaryKey;\n\n // After Feb 2024 (unless we have new apis):\n if (isAfterFeb2024OrNewApis) {\n delete obj.__apiName;\n delete obj.__primaryKey;\n } else {\n // Hide these from things like `console.log` so that people\n // don't think to use them.\n Object.defineProperties(obj, {\n \"__apiName\": {\n enumerable: false\n },\n \"__primaryKey\": {\n enumerable: false\n }\n });\n }\n const proto = getPrototype(client.ontology, obj.__apiName);\n const converter = getConverter(client.ontology, obj.__apiName);\n Object.setPrototypeOf(obj, proto);\n Object.defineProperty(obj, OriginClient, {\n value: client,\n enumerable: false,\n configurable: false,\n writable: false\n });\n if (converter) {\n converter(obj);\n }\n }\n}","/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nexport { aggregateOrThrow } from \"./aggregateOrThrow.js\";\nexport { fetchPageOrThrow } from \"./fetchPageOrThrow.js\";"]}
@@ -238,8 +238,8 @@ async function aggregateOrThrow(clientCtx, objectType, objectSet = {
238
238
  }
239
239
  const ret = result.data.map((entry) => {
240
240
  return {
241
- group: entry.group,
242
- values: legacyToModernSingleAggregationResult(entry)
241
+ $group: entry.group,
242
+ ...legacyToModernSingleAggregationResult(entry)
243
243
  };
244
244
  });
245
245
  return ret;
@@ -268,9 +268,10 @@ var Attachment = class {
268
268
  function isAttachment(o) {
269
269
  return o instanceof Attachment;
270
270
  }
271
- async function getLinkedObjectByPkOrThrow(client, sourceApiName, primaryKey, linkTypeApiName, linkedObjectPrimaryKey, select) {
271
+ async function getLinkedObjectByPkOrThrow(client, sourceApiName, primaryKey, linkTypeApiName, linkedObjectPrimaryKey, options) {
272
272
  const object = await getLinkedObjectV2(createOpenApiRequest(client.stack, client.fetch), client.ontology.metadata.ontologyApiName, sourceApiName, primaryKey, linkTypeApiName, linkedObjectPrimaryKey, {
273
- select: select ?? []
273
+ select: options?.select ?? [],
274
+ excludeRid: !options?.includeRid
274
275
  });
275
276
  const objects = [object];
276
277
  convertWireToOsdkObjects(client, objects);
@@ -280,7 +281,8 @@ async function pageLinkedObjectsOrThrow(client, sourceApiName, primaryKey, linkT
280
281
  const page = await listLinkedObjectsV2(createOpenApiRequest(client.stack, client.fetch), client.ontology.metadata.ontologyApiName, sourceApiName, primaryKey, linkTypeApiName, {
281
282
  pageSize: options?.pageSize,
282
283
  pageToken: options?.nextPageToken,
283
- select: options?.select ?? []
284
+ select: options?.select ?? [],
285
+ excludeRid: !options?.includeRid
284
286
  });
285
287
  convertWireToOsdkObjects(client, page.data);
286
288
  return {
@@ -327,7 +329,7 @@ function createPrototype(ontology, type) {
327
329
  };
328
330
  } else {
329
331
  return {
330
- get: (targetPrimaryKey, options) => getLinkedObjectByPkOrThrow(client, type, primaryKey, p, targetPrimaryKey, options?.select),
332
+ get: (targetPrimaryKey, options) => getLinkedObjectByPkOrThrow(client, type, primaryKey, p, targetPrimaryKey, options),
331
333
  fetchPageOrThrow: (options) => pageLinkedObjectsOrThrow(client, type, primaryKey, p, {
332
334
  nextPageToken: options?.nextPageToken,
333
335
  pageSize: options?.pageSize,
@@ -370,6 +372,23 @@ function createConverter(ontology, type) {
370
372
  }
371
373
  function convertWireToOsdkObjects(client, objs) {
372
374
  for (const obj of objs) {
375
+ if (obj.__rid) {
376
+ obj.$rid = obj.__rid;
377
+ delete obj.__rid;
378
+ }
379
+ obj.$apiName = obj.__apiName;
380
+ obj.$objectType = obj.__apiName;
381
+ obj.$primaryKey = obj.__primaryKey;
382
+ {
383
+ Object.defineProperties(obj, {
384
+ "__apiName": {
385
+ enumerable: false
386
+ },
387
+ "__primaryKey": {
388
+ enumerable: false
389
+ }
390
+ });
391
+ }
373
392
  const proto = getPrototype(client.ontology, obj.__apiName);
374
393
  const converter = getConverter(client.ontology, obj.__apiName);
375
394
  Object.setPrototypeOf(obj, proto);
@@ -393,8 +412,9 @@ async function fetchPageOrThrow(client, objectType, args, objectSet = {
393
412
  const body = {
394
413
  objectSet,
395
414
  // We have to do the following case because LoadObjectSetRequestV2 isnt readonly
396
- select: args?.select ?? []
415
+ select: args?.select ?? [],
397
416
  // FIXME?
417
+ excludeRid: !args?.includeRid
398
418
  };
399
419
  if (args?.nextPageToken) {
400
420
  body.pageToken = args.nextPageToken;
@@ -402,6 +422,14 @@ async function fetchPageOrThrow(client, objectType, args, objectSet = {
402
422
  if (args?.pageSize != null) {
403
423
  body.pageSize = args.pageSize;
404
424
  }
425
+ if (args?.orderBy != null) {
426
+ body.orderBy = {
427
+ fields: Object.entries(args.orderBy).map(([field, direction]) => ({
428
+ field,
429
+ direction
430
+ }))
431
+ };
432
+ }
405
433
  const r = await loadObjectSetV2(createOpenApiRequest(client.stack, client.fetch), client.ontology.metadata.ontologyApiName, body);
406
434
  convertWireToOsdkObjects(client, r.data);
407
435
  return r;
@@ -416,4 +444,4 @@ __export(object_exports, {
416
444
 
417
445
  export { aggregateOrThrow, convertWireToOsdkObjects, fetchPageOrThrow, isAttachment, modernToLegacyWhereClause, object_exports };
418
446
  //# sourceMappingURL=out.js.map
419
- //# sourceMappingURL=chunk-BQNFWSLL.mjs.map
447
+ //# sourceMappingURL=chunk-XI2O777X.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/object/aggregateOrThrow.ts","../../src/internal/conversions/legacyToModernSingleAggregationResult.ts","../../src/internal/conversions/modernToLegacyAggregationClause.ts","../../src/internal/conversions/modernToLegacyGroupByClause.ts","../../src/internal/conversions/modernToLegacyWhereClause.ts","../../src/query/WhereClause.ts","../../src/object/fetchPageOrThrow.ts","../../src/createCachedOntologyTransform.ts","../../src/object/Attachment.ts","../../src/object/getLinkedObjectByPkOrThrow.ts","../../src/object/getLinkedObjectOrThrow.ts","../../src/object/pageLinkedObjectsOrThrow.ts","../../src/object/convertWireToOsdkObjects.ts","../../src/object/index.ts"],"names":["invariant","createOpenApiRequest"],"mappings":"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","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\nimport { aggregateObjectSetV2 } from \"@osdk/gateway/requests\";\nimport { createOpenApiRequest } from \"@osdk/shared.net\";\nimport invariant from \"tiny-invariant\";\nimport { legacyToModernSingleAggregationResult, modernToLegacyAggregationClause, modernToLegacyGroupByClause, modernToLegacyWhereClause } from \"../internal/conversions/index.js\";\nexport async function aggregateOrThrow(clientCtx, objectType, objectSet = {\n type: \"base\",\n objectType: objectType[\"apiName\"]\n}, req) {\n const body = {\n aggregation: modernToLegacyAggregationClause(req.select),\n groupBy: [],\n where: undefined\n };\n if (req.groupBy) {\n body.groupBy = modernToLegacyGroupByClause(req.groupBy);\n }\n if (req.where) {\n body.where = modernToLegacyWhereClause(req.where);\n }\n const result = await aggregateObjectSetV2(createOpenApiRequest(clientCtx.stack, clientCtx.fetch), clientCtx.ontology.metadata.ontologyApiName, {\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 legacyToModernSingleAggregationResult(result.data[0]);\n }\n const ret = result.data.map(entry => {\n return {\n $group: entry.group,\n ...legacyToModernSingleAggregationResult(entry)\n };\n }); // fixme\n\n return ret; // FIXME\n}","/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport invariant from \"tiny-invariant\";\nexport function legacyToModernSingleAggregationResult(entry) {\n return entry.metrics.reduce((accumulator, curValue) => {\n const parts = curValue.name.split(\".\");\n !(parts.length === 2) ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"assumed we were getting a `${key}.${type}`\") : invariant(false) : void 0;\n if (!(parts[0] in accumulator)) {\n accumulator[parts[0]] = {};\n }\n accumulator[parts[0]][parts[1]] = curValue.value;\n return accumulator;\n }, {});\n}","/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nexport function modernToLegacyAggregationClause(select) {\n return Object.entries(select).flatMap(([k, v]) => {\n if (Array.isArray(v)) {\n return v.map(v2 => {\n return {\n type: v2,\n name: `${k}.${v2}`,\n field: k\n };\n });\n } else {\n return [{\n type: v,\n // FIXME v has additional possible values\n name: `${k}.${v}`,\n field: k\n }];\n }\n });\n}","/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nexport 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 (type.exactWithLimit) {\n return [{\n type: \"exact\",\n field,\n maxGroupCount: type.exactWithLimit\n }];\n } else {\n return [];\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 invariant from \"tiny-invariant\";\nimport { DistanceUnitMapping } from \"../../query/WhereClause.js\";\nexport function modernToLegacyWhereClause(whereClause) {\n if (\"$and\" in whereClause) {\n return {\n type: \"and\",\n value: whereClause.$and.map(modernToLegacyWhereClause)\n };\n } else if (\"$or\" in whereClause) {\n return {\n type: \"or\",\n value: whereClause.$or.map(modernToLegacyWhereClause)\n };\n } else if (\"$not\" in whereClause) {\n return {\n type: \"not\",\n value: modernToLegacyWhereClause(whereClause.$not)\n };\n }\n const parts = Object.entries(whereClause);\n if (parts.length === 1) {\n return handleWherePair(parts[0]);\n }\n return {\n type: \"and\",\n value: parts.map(handleWherePair)\n };\n}\nfunction makeGeoFilterBbox(field, bbox, filterType) {\n return {\n type: filterType === \"$within\" ? \"withinBoundingBox\" : \"intersectsBoundingBox\",\n field,\n value: {\n topLeft: {\n type: \"Point\",\n coordinates: [bbox[0], bbox[3]]\n },\n bottomRight: {\n type: \"Point\",\n coordinates: [bbox[2], bbox[1]]\n }\n }\n };\n}\nfunction makeGeoFilterPolygon(field, coordinates, filterType) {\n return {\n type: filterType,\n field,\n value: {\n type: \"Polygon\",\n coordinates\n }\n };\n}\nfunction handleWherePair([field, filter]) {\n !(filter != null) ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"Defined key values are only allowed when they are not undefined.\") : invariant(false) : void 0;\n if (typeof filter === \"string\" || typeof filter === \"number\") {\n return {\n type: \"eq\",\n field,\n value: filter\n };\n }\n const keysOfFilter = Object.keys(filter);\n\n // If any of the keys start with `$` then they must be the only one.\n // e.g. `where({ name: { $eq: \"foo\", $ne: \"bar\" } })` is invalid currently\n const hasDollarSign = keysOfFilter.some(key => key.startsWith(\"$\"));\n !(!hasDollarSign || keysOfFilter.length === 1) ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"WhereClause Filter with multiple clauses isn't allowed\") : invariant(false) : void 0;\n if (!hasDollarSign) {\n // Future case for structs\n throw new Error(\"Unsupported filter. Did you forget to use a $-prefixed filter?\");\n }\n const firstKey = keysOfFilter[0];\n !(filter[firstKey] != null) ? process.env.NODE_ENV !== \"production\" ? invariant(false) : invariant(false) : void 0;\n if (firstKey === \"$ne\") {\n return {\n type: \"not\",\n value: {\n type: \"eq\",\n field,\n value: filter[firstKey]\n }\n };\n }\n if (firstKey === \"$within\") {\n const withinBody = filter[firstKey];\n if (Array.isArray(withinBody)) {\n return makeGeoFilterBbox(field, withinBody, firstKey);\n } else if (\"bbox\" in withinBody && !(\"type\" in withinBody)) {\n return makeGeoFilterBbox(field, withinBody.bbox, firstKey);\n } else if (\"distance\" in withinBody && \"of\" in withinBody) {\n return {\n type: \"withinDistanceOf\",\n field,\n value: {\n center: Array.isArray(withinBody.of) ? {\n type: \"Point\",\n coordinates: withinBody.of\n } : withinBody.of,\n distance: {\n value: withinBody.distance[0],\n unit: DistanceUnitMapping[withinBody.distance[1]]\n }\n }\n };\n } else {\n const coordinates = \"polygon\" in withinBody ? withinBody.polygon : withinBody.coordinates;\n return makeGeoFilterPolygon(field, coordinates, \"withinPolygon\");\n }\n }\n if (firstKey === \"$intersects\") {\n const intersectsBody = filter[firstKey];\n if (Array.isArray(intersectsBody)) {\n return makeGeoFilterBbox(field, intersectsBody, firstKey);\n } else if (\"bbox\" in intersectsBody && !(\"type\" in intersectsBody)) {\n return makeGeoFilterBbox(field, intersectsBody.bbox, firstKey);\n } else {\n const coordinates = \"polygon\" in intersectsBody ? intersectsBody.polygon : intersectsBody.coordinates;\n return makeGeoFilterPolygon(field, coordinates, \"intersectsPolygon\");\n }\n }\n return {\n type: firstKey.substring(1),\n field,\n value: filter[firstKey]\n };\n}","/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\n// We need to conditional here to force the union to be distributed\n\nexport const DistanceUnitMapping = {\n \"centimeter\": \"CENTIMETERS\",\n \"centimeters\": \"CENTIMETERS\",\n \"cm\": \"CENTIMETERS\",\n \"meter\": \"METERS\",\n \"meters\": \"METERS\",\n \"m\": \"METERS\",\n \"kilometer\": \"KILOMETERS\",\n \"kilometers\": \"KILOMETERS\",\n \"km\": \"KILOMETERS\",\n \"inch\": \"INCHES\",\n \"inches\": \"INCHES\",\n \"foot\": \"FEET\",\n \"feet\": \"FEET\",\n \"yard\": \"YARDS\",\n \"yards\": \"YARDS\",\n \"mile\": \"MILES\",\n \"miles\": \"MILES\",\n \"nautical_mile\": \"NAUTICAL_MILES\",\n \"nauticalMile\": \"NAUTICAL_MILES\",\n \"nautical miles\": \"NAUTICAL_MILES\"\n};\n\n// FIXME we need to represent all types","/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { loadObjectSetV2 } from \"@osdk/gateway/requests\";\nimport { createOpenApiRequest } from \"@osdk/shared.net\";\nimport { convertWireToOsdkObjects } from \"./convertWireToOsdkObjects.js\";\nexport async function fetchPageOrThrow(client, objectType, args, objectSet = {\n type: \"base\",\n objectType: objectType[\"apiName\"]\n}) {\n const body = {\n objectSet,\n // We have to do the following case because LoadObjectSetRequestV2 isnt readonly\n select: args?.select ?? [],\n // FIXME?\n excludeRid: !args?.includeRid\n };\n if (args?.nextPageToken) {\n body.pageToken = args.nextPageToken;\n }\n if (args?.pageSize != null) {\n body.pageSize = args.pageSize;\n }\n if (args?.orderBy != null) {\n body.orderBy = {\n fields: Object.entries(args.orderBy).map(([field, direction]) => ({\n field,\n direction\n }))\n };\n }\n const r = await loadObjectSetV2(createOpenApiRequest(client.stack, client.fetch), client.ontology.metadata.ontologyApiName, body);\n convertWireToOsdkObjects(client, r.data);\n\n // any is okay here because we have properly converted the wire objects via prototypes\n // which don't type out correctly.\n return r;\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/**\n * Creates a getter function that caches based on the ontology.objects[type] value\n *\n * Any extra arguments are passed through, but only the first args passed in will be used and are not considered as part of the caching\n */\nexport function createCachedOntologyTransform(creator) {\n // We can use the ObjectTypeDefinition as the key because it will be a globally unique singleton\n // Use Map instead of WeakMap here so usage for things like object prototypes do not churn over time\n const cache = new Map();\n return (ontology, type) => {\n const objectDefinition = ontology.objects[type];\n let result = cache.get(objectDefinition);\n if (result == null) {\n result = creator(ontology, type);\n cache.set(objectDefinition, result);\n }\n return result;\n };\n}","/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nexport class Attachment {\n constructor(rid) {\n this.rid = rid;\n }\n}\nexport function isAttachment(o) {\n return o instanceof Attachment;\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 { getLinkedObjectV2 } from \"@osdk/gateway/requests\";\nimport { createOpenApiRequest } from \"@osdk/shared.net\";\nimport { convertWireToOsdkObjects } from \"./convertWireToOsdkObjects.js\";\nexport async function getLinkedObjectByPkOrThrow(client, sourceApiName, primaryKey, linkTypeApiName, linkedObjectPrimaryKey, options) {\n const object = await getLinkedObjectV2(createOpenApiRequest(client.stack, client.fetch), client.ontology.metadata.ontologyApiName, sourceApiName, primaryKey, linkTypeApiName, linkedObjectPrimaryKey, {\n select: options?.select ?? [],\n excludeRid: !options?.includeRid\n });\n const objects = [object];\n convertWireToOsdkObjects(client, objects);\n return objects[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 { PalantirApiError } from \"@osdk/shared.net\";\nimport { pageLinkedObjectsOrThrow } from \"./pageLinkedObjectsOrThrow.js\";\nexport async function getLinkedObjectOrThrow(client, sourceApiName, primaryKey, linkTypeApiName, select) {\n const result = await pageLinkedObjectsOrThrow(client, sourceApiName, primaryKey, linkTypeApiName, {\n pageSize: 1,\n select\n });\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 * 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 { listLinkedObjectsV2 } from \"@osdk/gateway/requests\";\nimport { createOpenApiRequest } from \"@osdk/shared.net\";\nimport { convertWireToOsdkObjects } from \"./convertWireToOsdkObjects.js\";\nexport async function pageLinkedObjectsOrThrow(client, sourceApiName, primaryKey, linkTypeApiName, options) {\n const page = await listLinkedObjectsV2(createOpenApiRequest(client.stack, client.fetch), client.ontology.metadata.ontologyApiName, sourceApiName, primaryKey, linkTypeApiName, {\n pageSize: options?.pageSize,\n pageToken: options?.nextPageToken,\n select: options?.select ?? [],\n excludeRid: !options?.includeRid\n });\n convertWireToOsdkObjects(client, page.data);\n return {\n nextPageToken: page.nextPageToken,\n data: page.data\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 { createCachedOntologyTransform } from \"../createCachedOntologyTransform.js\";\nimport { Attachment } from \"./Attachment.js\";\nimport { getLinkedObjectByPkOrThrow } from \"./getLinkedObjectByPkOrThrow.js\";\nimport { getLinkedObjectOrThrow } from \"./getLinkedObjectOrThrow.js\";\nimport { pageLinkedObjectsOrThrow } from \"./pageLinkedObjectsOrThrow.js\";\nconst getPrototype = createCachedOntologyTransform(createPrototype);\nconst getConverter = createCachedOntologyTransform(createConverter);\nconst OriginClient = Symbol();\nfunction createPrototype(ontology, type) {\n const objDef = ontology.objects[type];\n const proto = {};\n if (!objDef) {\n return proto;\n }\n Object.defineProperty(proto, \"$link\", {\n get: function () {\n const client = this[OriginClient];\n const primaryKey = this[\"__primaryKey\"];\n return new Proxy({}, {\n get(_target, p, _receiver) {\n const linkDef = objDef.links[p];\n if (linkDef == null) {\n return;\n }\n if (!linkDef.multiplicity) {\n return {\n get: options => getLinkedObjectOrThrow(client, type, primaryKey, p, options?.select)\n };\n } else {\n return {\n get: (targetPrimaryKey, options) => getLinkedObjectByPkOrThrow(client, type, primaryKey, p, targetPrimaryKey, options),\n fetchPageOrThrow: options => pageLinkedObjectsOrThrow(client, type, primaryKey, p, {\n nextPageToken: options?.nextPageToken,\n pageSize: options?.pageSize,\n select: options?.select\n })\n };\n }\n }\n });\n },\n enumerable: false,\n configurable: false\n });\n return proto;\n}\n\n// preprocess the ontology definition to more quickly apply object conversions when needed\nfunction createConverter(ontology, type) {\n const objDef = ontology.objects[type];\n if (!objDef) {\n return false;\n }\n const steps = [];\n for (const [key, value] of Object.entries(objDef.properties)) {\n // attachments need a wrapper to provide functionality and to identify them at serialization time\n if (value.type === \"attachment\") {\n steps.push(o => {\n if (o[key] != null) {\n if (Array.isArray(o[key])) {\n o[key] = o[key].map(a => new Attachment(a.rid));\n } else {\n o[key] = new Attachment(o[key].rid);\n }\n }\n });\n }\n }\n return steps.length > 0 ? o => {\n for (const step of steps) {\n step(o);\n }\n } : false;\n}\nconst isAfterFeb2024OrNewApis = false;\n\n/**\n * @param objs the objects to be converted, the contents of this array will be mutated\n */\nexport function convertWireToOsdkObjects(client, objs) {\n for (const obj of objs) {\n if (obj.__rid) {\n obj.$rid = obj.__rid;\n delete obj.__rid;\n }\n\n // Backend returns as __apiName but we want to stick to $ structure\n obj.$apiName = obj.__apiName;\n\n // for now these are the same but when we start doing interface projections the $objectType will always be underlying and\n // the $apiName will be for the current view (in current designs)\n obj.$objectType = obj.__apiName;\n\n // copying over for now as its always returned. In the future, this should just be inferred from underlying\n obj.$primaryKey = obj.__primaryKey;\n\n // After Feb 2024 (unless we have new apis):\n if (isAfterFeb2024OrNewApis) {\n delete obj.__apiName;\n delete obj.__primaryKey;\n } else {\n // Hide these from things like `console.log` so that people\n // don't think to use them.\n Object.defineProperties(obj, {\n \"__apiName\": {\n enumerable: false\n },\n \"__primaryKey\": {\n enumerable: false\n }\n });\n }\n const proto = getPrototype(client.ontology, obj.__apiName);\n const converter = getConverter(client.ontology, obj.__apiName);\n Object.setPrototypeOf(obj, proto);\n Object.defineProperty(obj, OriginClient, {\n value: client,\n enumerable: false,\n configurable: false,\n writable: false\n });\n if (converter) {\n converter(obj);\n }\n }\n}","/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nexport { aggregateOrThrow } from \"./aggregateOrThrow.js\";\nexport { fetchPageOrThrow } from \"./fetchPageOrThrow.js\";"]}
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var chunkKAL57TC5_cjs = require('./chunk-KAL57TC5.cjs');
3
+ var chunkMVO52VHK_cjs = require('./chunk-MVO52VHK.cjs');
4
4
  var shared_net = require('@osdk/shared.net');
5
5
  var requests = require('@osdk/gateway/requests');
6
6
  var WebSocket = require('isomorphic-ws');
@@ -31,7 +31,7 @@ function toDataValue(value) {
31
31
  if (Array.isArray(value) || value instanceof Set) {
32
32
  return Array.from(value, toDataValue);
33
33
  }
34
- if (chunkKAL57TC5_cjs.isAttachment(value)) {
34
+ if (chunkMVO52VHK_cjs.isAttachment(value)) {
35
35
  return value.rid;
36
36
  }
37
37
  if (isOntologyObjectV2(value)) {
@@ -595,10 +595,10 @@ async function convertFoundryToOsdkObjects(client, ctx, objects) {
595
595
  const propertyMapping = await getOntologyPropertyMappingForRid(ctx, client.ontology.metadata.ontologyRid, object.type);
596
596
  const convertedObject = Object.fromEntries([...Object.entries(object.properties).map(([key, value]) => {
597
597
  return [propertyMapping?.propertyIdToApiNameMapping[key], value];
598
- }), [propertyMapping?.propertyIdToApiNameMapping[Object.entries(object.key)[0][0]], Object.entries(object.key)[0][1]], ["__apiName", propertyMapping?.apiName]]);
598
+ }), [propertyMapping?.propertyIdToApiNameMapping[Object.entries(object.key)[0][0]], Object.entries(object.key)[0][1]], ["__apiName", propertyMapping?.apiName], ["$apiName", propertyMapping?.apiName]]);
599
599
  return convertedObject;
600
600
  }));
601
- chunkKAL57TC5_cjs.convertWireToOsdkObjects(client, osdkObjects);
601
+ chunkMVO52VHK_cjs.convertWireToOsdkObjects(client, osdkObjects);
602
602
  return osdkObjects;
603
603
  }
604
604
  var objectTypeMapping = /* @__PURE__ */ new WeakMap();
@@ -669,13 +669,13 @@ function createObjectSet2(objectType, clientCtx, objectSet = {
669
669
  // throw "TODO";
670
670
  // },
671
671
  aggregateOrThrow: async (req) => {
672
- return chunkKAL57TC5_cjs.aggregateOrThrow(clientCtx, objectType, objectSet, req);
672
+ return chunkMVO52VHK_cjs.aggregateOrThrow(clientCtx, objectType, objectSet, req);
673
673
  },
674
674
  // fetchPage: async (args?: { nextPageToken?: string }) => {
675
675
  // throw "TODO";
676
676
  // },
677
677
  fetchPageOrThrow: async (args) => {
678
- return chunkKAL57TC5_cjs.fetchPageOrThrow(clientCtx, objectType, args ?? {}, objectSet);
678
+ return chunkMVO52VHK_cjs.fetchPageOrThrow(clientCtx, objectType, args ?? {}, objectSet);
679
679
  },
680
680
  // asyncIter: () => {
681
681
  // throw "";
@@ -684,7 +684,7 @@ function createObjectSet2(objectType, clientCtx, objectSet = {
684
684
  return createObjectSet2(objectType, clientCtx, {
685
685
  type: "filter",
686
686
  objectSet,
687
- where: chunkKAL57TC5_cjs.modernToLegacyWhereClause(clause)
687
+ where: chunkMVO52VHK_cjs.modernToLegacyWhereClause(clause)
688
688
  });
689
689
  },
690
690
  // [Symbol.asyncIterator]: () => {
@@ -759,7 +759,7 @@ function createObjectSetCreator(client, clientContext) {
759
759
  }
760
760
 
761
761
  // src/util/UserAgent.ts
762
- var USER_AGENT = `osdk-client/${"0.9.0"}`;
762
+ var USER_AGENT = `osdk-client/${"0.10.0"}`;
763
763
 
764
764
  // src/createClient.ts
765
765
  function createClient(ontology, stack, tokenProvider, fetchFn = fetch) {
@@ -795,7 +795,7 @@ function createClient(ontology, stack, tokenProvider, fetchFn = fetch) {
795
795
 
796
796
  Object.defineProperty(exports, 'Objects', {
797
797
  enumerable: true,
798
- get: function () { return chunkKAL57TC5_cjs.object_exports; }
798
+ get: function () { return chunkMVO52VHK_cjs.object_exports; }
799
799
  });
800
800
  Object.defineProperty(exports, 'createClientContext', {
801
801
  enumerable: true,