@osdk/client 2.5.0-beta.13 → 2.5.0-beta.14

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (42) hide show
  1. package/CHANGELOG.md +15 -0
  2. package/build/browser/MinimalClientContext.js.map +1 -1
  3. package/build/browser/createMinimalClient.js +2 -1
  4. package/build/browser/createMinimalClient.js.map +1 -1
  5. package/build/browser/object/fetchPage.js +3 -2
  6. package/build/browser/object/fetchPage.js.map +1 -1
  7. package/build/browser/objectSet/createObjectSet.js +11 -0
  8. package/build/browser/objectSet/createObjectSet.js.map +1 -1
  9. package/build/browser/observable/internal/testUtils.js +2 -1
  10. package/build/browser/observable/internal/testUtils.js.map +1 -1
  11. package/build/browser/util/UserAgent.js +2 -2
  12. package/build/browser/util/extractObjectOrInterfaceType.js +5 -1
  13. package/build/browser/util/extractObjectOrInterfaceType.js.map +1 -1
  14. package/build/browser/util/extractObjectOrInterfaceType.test.js +21 -2
  15. package/build/browser/util/extractObjectOrInterfaceType.test.js.map +1 -1
  16. package/build/cjs/{chunk-2YVNXAHH.cjs → chunk-DCEFUXFS.cjs} +20 -5
  17. package/build/cjs/chunk-DCEFUXFS.cjs.map +1 -0
  18. package/build/cjs/{chunk-QTVK57MS.cjs → chunk-XLVCX6PD.cjs} +56 -55
  19. package/build/cjs/chunk-XLVCX6PD.cjs.map +1 -0
  20. package/build/cjs/index.cjs +7 -7
  21. package/build/cjs/public/internal.cjs +8 -8
  22. package/build/cjs/public/unstable-do-not-use.cjs +31 -31
  23. package/build/esm/MinimalClientContext.js.map +1 -1
  24. package/build/esm/createMinimalClient.js +2 -1
  25. package/build/esm/createMinimalClient.js.map +1 -1
  26. package/build/esm/object/fetchPage.js +3 -2
  27. package/build/esm/object/fetchPage.js.map +1 -1
  28. package/build/esm/objectSet/createObjectSet.js +11 -0
  29. package/build/esm/objectSet/createObjectSet.js.map +1 -1
  30. package/build/esm/observable/internal/testUtils.js +2 -1
  31. package/build/esm/observable/internal/testUtils.js.map +1 -1
  32. package/build/esm/util/UserAgent.js +2 -2
  33. package/build/esm/util/extractObjectOrInterfaceType.js +5 -1
  34. package/build/esm/util/extractObjectOrInterfaceType.js.map +1 -1
  35. package/build/esm/util/extractObjectOrInterfaceType.test.js +21 -2
  36. package/build/esm/util/extractObjectOrInterfaceType.test.js.map +1 -1
  37. package/build/types/MinimalClientContext.d.ts +1 -0
  38. package/build/types/MinimalClientContext.d.ts.map +1 -1
  39. package/build/types/observable/internal/testUtils.d.ts.map +1 -1
  40. package/package.json +7 -7
  41. package/build/cjs/chunk-2YVNXAHH.cjs.map +0 -1
  42. package/build/cjs/chunk-QTVK57MS.cjs.map +0 -1
@@ -1,7 +1,7 @@
1
1
  'use strict';
2
2
 
3
- var chunkQTVK57MS_cjs = require('../chunk-QTVK57MS.cjs');
4
- var chunk2YVNXAHH_cjs = require('../chunk-2YVNXAHH.cjs');
3
+ var chunkXLVCX6PD_cjs = require('../chunk-XLVCX6PD.cjs');
4
+ var chunkDCEFUXFS_cjs = require('../chunk-DCEFUXFS.cjs');
5
5
  require('../chunk-Q7SFCCGT.cjs');
6
6
  var trie = require('@wry/trie');
7
7
  var deepEqual5 = require('fast-deep-equal');
@@ -142,7 +142,7 @@ var WhereClauseCanonicalizer = class {
142
142
  var whereCanonicalizer = new WhereClauseCanonicalizer();
143
143
  var orderByCanonicalizer = new OrderByCanonicalizer();
144
144
  function computeObjectSetCacheKey(objectSet, options) {
145
- const keyParts = ["objectSet", chunk2YVNXAHH_cjs.getWireObjectSet(objectSet)];
145
+ const keyParts = ["objectSet", chunkDCEFUXFS_cjs.getWireObjectSet(objectSet)];
146
146
  if (!options) {
147
147
  return JSON.stringify(keyParts);
148
148
  }
@@ -154,13 +154,13 @@ function computeObjectSetCacheKey(objectSet, options) {
154
154
  keyParts.push("props", propKeys);
155
155
  }
156
156
  if (options.union && options.union.length > 0) {
157
- keyParts.push("union", options.union.map((os) => chunk2YVNXAHH_cjs.getWireObjectSet(os)));
157
+ keyParts.push("union", options.union.map((os) => chunkDCEFUXFS_cjs.getWireObjectSet(os)));
158
158
  }
159
159
  if (options.intersect && options.intersect.length > 0) {
160
- keyParts.push("intersect", options.intersect.map((os) => chunk2YVNXAHH_cjs.getWireObjectSet(os)));
160
+ keyParts.push("intersect", options.intersect.map((os) => chunkDCEFUXFS_cjs.getWireObjectSet(os)));
161
161
  }
162
162
  if (options.subtract && options.subtract.length > 0) {
163
- keyParts.push("subtract", options.subtract.map((os) => chunk2YVNXAHH_cjs.getWireObjectSet(os)));
163
+ keyParts.push("subtract", options.subtract.map((os) => chunkDCEFUXFS_cjs.getWireObjectSet(os)));
164
164
  }
165
165
  if (options.pivotTo) {
166
166
  keyParts.push("pivotTo", options.pivotTo);
@@ -319,7 +319,7 @@ var OptimisticJob = class {
319
319
  return this;
320
320
  },
321
321
  createObject(type, pk, properties) {
322
- const create = store.client[chunk2YVNXAHH_cjs.additionalContext].objectFactory2(store.client[chunk2YVNXAHH_cjs.additionalContext], [{
322
+ const create = store.client[chunkDCEFUXFS_cjs.additionalContext].objectFactory2(store.client[chunkDCEFUXFS_cjs.additionalContext], [{
323
323
  $primaryKey: pk,
324
324
  $apiName: type.apiName,
325
325
  $objectType: type.apiName,
@@ -1003,7 +1003,7 @@ var Query = class {
1003
1003
  this.store = store;
1004
1004
  this.cacheKeys = store.cacheKeys;
1005
1005
  this.#subject = observable;
1006
- this.logger = logger ?? (process.env.NODE_ENV === "production" ? store.client[chunk2YVNXAHH_cjs.additionalContext].logger : store.client[chunk2YVNXAHH_cjs.additionalContext].logger?.child({}, {
1006
+ this.logger = logger ?? (process.env.NODE_ENV === "production" ? store.client[chunkDCEFUXFS_cjs.additionalContext].logger : store.client[chunkDCEFUXFS_cjs.additionalContext].logger?.child({}, {
1007
1007
  msgPrefix: process.env.NODE_ENV !== "production" ? `Query<${cacheKey.type}, ${cacheKey.otherKeys.map((x) => JSON.stringify(x)).join(", ")}>` : "Query"
1008
1008
  }));
1009
1009
  }
@@ -1576,7 +1576,7 @@ var SpecificLinkQuery = class extends BaseListQuery {
1576
1576
  batch.changes.modified.add(this.cacheKey);
1577
1577
  }
1578
1578
  constructor(store, subject, cacheKey, opts) {
1579
- super(store, subject, opts, cacheKey, process.env.NODE_ENV !== "production" ? store.client[chunk2YVNXAHH_cjs.additionalContext].logger?.child({}, {
1579
+ super(store, subject, opts, cacheKey, process.env.NODE_ENV !== "production" ? store.client[chunkDCEFUXFS_cjs.additionalContext].logger?.child({}, {
1580
1580
  msgPrefix: `SpecificLinkQuery<${cacheKey.otherKeys.map((x) => JSON.stringify(x)).join(", ")}>`
1581
1581
  }) : void 0);
1582
1582
  [this.#sourceApiName, this.#sourcePk, this.#linkName, this.#whereClause, this.#orderBy] = cacheKey.otherKeys;
@@ -1593,7 +1593,7 @@ var SpecificLinkQuery = class extends BaseListQuery {
1593
1593
  type: "object",
1594
1594
  apiName: this.#sourceApiName
1595
1595
  };
1596
- const sourceMetadata = await client[chunk2YVNXAHH_cjs.additionalContext].ontologyProvider.getObjectDefinition(this.#sourceApiName);
1596
+ const sourceMetadata = await client[chunkDCEFUXFS_cjs.additionalContext].ontologyProvider.getObjectDefinition(this.#sourceApiName);
1597
1597
  const sourceQuery = client(sourceObjectDef).where({
1598
1598
  [sourceMetadata.primaryKeyApiName]: this.#sourcePk
1599
1599
  });
@@ -1657,7 +1657,7 @@ var SpecificLinkQuery = class extends BaseListQuery {
1657
1657
  return this.revalidate(true);
1658
1658
  } else {
1659
1659
  return (async () => {
1660
- const sourceMetadata = await this.store.client[chunk2YVNXAHH_cjs.additionalContext].ontologyProvider.getObjectDefinition(this.#sourceApiName);
1660
+ const sourceMetadata = await this.store.client[chunkDCEFUXFS_cjs.additionalContext].ontologyProvider.getObjectDefinition(this.#sourceApiName);
1661
1661
  const linkDef = sourceMetadata.links?.[this.#linkName];
1662
1662
  if (!linkDef || linkDef.targetType !== objectType) return;
1663
1663
  const promise = this.revalidate(true);
@@ -1788,7 +1788,7 @@ var ListQuery = class extends BaseListQuery {
1788
1788
  batch.changes.registerList(this.cacheKey);
1789
1789
  }
1790
1790
  constructor(store, subject, apiName, whereClause, orderBy, cacheKey, opts) {
1791
- super(store, subject, opts, cacheKey, process.env.NODE_ENV !== "production" ? store.client[chunk2YVNXAHH_cjs.additionalContext].logger?.child({}, {
1791
+ super(store, subject, opts, cacheKey, process.env.NODE_ENV !== "production" ? store.client[chunkDCEFUXFS_cjs.additionalContext].logger?.child({}, {
1792
1792
  msgPrefix: `ListQuery<${cacheKey.otherKeys.map((x) => JSON.stringify(x)).join(", ")}>`
1793
1793
  }) : void 0);
1794
1794
  this.apiName = apiName;
@@ -2080,7 +2080,7 @@ var InterfaceListQuery = class extends ListQuery {
2080
2080
  }
2081
2081
  extractRelevantObjects(changes) {
2082
2082
  const matchesApiName = ([, object]) => {
2083
- return this.apiName in object[chunkQTVK57MS_cjs.ObjectDefRef].interfaceMap;
2083
+ return this.apiName in object[chunkXLVCX6PD_cjs.ObjectDefRef].interfaceMap;
2084
2084
  };
2085
2085
  const added = Array.from(changes.addedObjects).filter(matchesApiName).map(([, object]) => object.$as(this.apiName));
2086
2086
  const modified = Array.from(changes.modifiedObjects).filter(matchesApiName).map(([, object]) => object.$as(this.apiName));
@@ -2101,7 +2101,7 @@ var InterfaceListQuery = class extends ListQuery {
2101
2101
  async function reloadDataAsFullObjects(client, data) {
2102
2102
  const groups = groupBy__default.default(data, (x) => x.$objectType);
2103
2103
  const objectTypeToPrimaryKeyToObject = Object.fromEntries(await Promise.all(Object.entries(groups).map(async ([apiName, objects]) => {
2104
- const objectDef = objects[0][chunkQTVK57MS_cjs.UnderlyingOsdkObject][chunkQTVK57MS_cjs.ObjectDefRef];
2104
+ const objectDef = objects[0][chunkXLVCX6PD_cjs.UnderlyingOsdkObject][chunkXLVCX6PD_cjs.ObjectDefRef];
2105
2105
  const where = {
2106
2106
  [objectDef.primaryKeyApiName]: {
2107
2107
  $in: objects.map((x) => x.$primaryKey)
@@ -2211,7 +2211,7 @@ var BulkObjectLoader = class {
2211
2211
  #maxEntries;
2212
2212
  constructor(client, maxWait = 25, maxEntries = 100) {
2213
2213
  this.#client = client;
2214
- this.#logger = client[chunk2YVNXAHH_cjs.additionalContext].logger;
2214
+ this.#logger = client[chunkDCEFUXFS_cjs.additionalContext].logger;
2215
2215
  this.#maxWait = maxWait;
2216
2216
  this.#maxEntries = maxEntries;
2217
2217
  }
@@ -2274,7 +2274,7 @@ var ObjectQuery = class extends Query {
2274
2274
  #apiName;
2275
2275
  #pk;
2276
2276
  constructor(store, subject, type, pk, cacheKey, opts) {
2277
- super(store, subject, opts, cacheKey, process.env.NODE_ENV !== "production" ? store.client[chunk2YVNXAHH_cjs.additionalContext].logger?.child({}, {
2277
+ super(store, subject, opts, cacheKey, process.env.NODE_ENV !== "production" ? store.client[chunkDCEFUXFS_cjs.additionalContext].logger?.child({}, {
2278
2278
  msgPrefix: `ObjectQuery<${cacheKey.otherKeys.map((x) => JSON.stringify(x)).join(", ")}>`
2279
2279
  }) : void 0);
2280
2280
  this.#apiName = type;
@@ -2410,7 +2410,7 @@ var ObjectSetQuery = class extends BaseListQuery {
2410
2410
  #composedObjectSet;
2411
2411
  #objectTypes;
2412
2412
  constructor(store, subject, baseObjectSetWire, operations, cacheKey, opts) {
2413
- super(store, subject, opts, cacheKey, process.env.NODE_ENV !== "production" ? store.client[chunk2YVNXAHH_cjs.additionalContext].logger?.child({}, {
2413
+ super(store, subject, opts, cacheKey, process.env.NODE_ENV !== "production" ? store.client[chunkDCEFUXFS_cjs.additionalContext].logger?.child({}, {
2414
2414
  msgPrefix: `ObjectSetQuery<${cacheKey.otherKeys.map((x) => JSON.stringify(x)).join(", ")}>`
2415
2415
  }) : void 0);
2416
2416
  this.#baseObjectSetWire = baseObjectSetWire;
@@ -2453,7 +2453,7 @@ var ObjectSetQuery = class extends BaseListQuery {
2453
2453
  }
2454
2454
  if (opts.union) {
2455
2455
  for (const os of opts.union) {
2456
- const wire = chunk2YVNXAHH_cjs.getWireObjectSet(os);
2456
+ const wire = chunkDCEFUXFS_cjs.getWireObjectSet(os);
2457
2457
  if (wire.type) {
2458
2458
  types.add(wire.type);
2459
2459
  }
@@ -2461,7 +2461,7 @@ var ObjectSetQuery = class extends BaseListQuery {
2461
2461
  }
2462
2462
  if (opts.intersect) {
2463
2463
  for (const os of opts.intersect) {
2464
- const wire = chunk2YVNXAHH_cjs.getWireObjectSet(os);
2464
+ const wire = chunkDCEFUXFS_cjs.getWireObjectSet(os);
2465
2465
  if (wire.type) {
2466
2466
  types.add(wire.type);
2467
2467
  }
@@ -2469,7 +2469,7 @@ var ObjectSetQuery = class extends BaseListQuery {
2469
2469
  }
2470
2470
  if (opts.subtract) {
2471
2471
  for (const os of opts.subtract) {
2472
- const wire = chunk2YVNXAHH_cjs.getWireObjectSet(os);
2472
+ const wire = chunkDCEFUXFS_cjs.getWireObjectSet(os);
2473
2473
  if (wire.type) {
2474
2474
  types.add(wire.type);
2475
2475
  }
@@ -2543,7 +2543,7 @@ var ObjectSetHelper = class extends AbstractHelper {
2543
2543
  const {
2544
2544
  baseObjectSet
2545
2545
  } = options;
2546
- const baseObjectSetWire = JSON.stringify(chunk2YVNXAHH_cjs.getWireObjectSet(baseObjectSet));
2546
+ const baseObjectSetWire = JSON.stringify(chunkDCEFUXFS_cjs.getWireObjectSet(baseObjectSet));
2547
2547
  const operations = this.buildCanonicalizedOperations(options);
2548
2548
  const objectSetCacheKey = this.cacheKeys.get("objectSet", baseObjectSetWire, operations);
2549
2549
  return this.store.queries.get(objectSetCacheKey, () => {
@@ -2559,13 +2559,13 @@ var ObjectSetHelper = class extends AbstractHelper {
2559
2559
  operations.withProperties = Object.keys(options.withProperties).sort();
2560
2560
  }
2561
2561
  if (options.union && options.union.length > 0) {
2562
- operations.union = options.union.map((os) => JSON.stringify(chunk2YVNXAHH_cjs.getWireObjectSet(os)));
2562
+ operations.union = options.union.map((os) => JSON.stringify(chunkDCEFUXFS_cjs.getWireObjectSet(os)));
2563
2563
  }
2564
2564
  if (options.intersect && options.intersect.length > 0) {
2565
- operations.intersect = options.intersect.map((os) => JSON.stringify(chunk2YVNXAHH_cjs.getWireObjectSet(os)));
2565
+ operations.intersect = options.intersect.map((os) => JSON.stringify(chunkDCEFUXFS_cjs.getWireObjectSet(os)));
2566
2566
  }
2567
2567
  if (options.subtract && options.subtract.length > 0) {
2568
- operations.subtract = options.subtract.map((os) => JSON.stringify(chunk2YVNXAHH_cjs.getWireObjectSet(os)));
2568
+ operations.subtract = options.subtract.map((os) => JSON.stringify(chunkDCEFUXFS_cjs.getWireObjectSet(os)));
2569
2569
  }
2570
2570
  if (options.pivotTo) {
2571
2571
  operations.pivotTo = options.pivotTo;
@@ -2618,7 +2618,7 @@ var Store = class {
2618
2618
  subjects = this.layers.subjects;
2619
2619
  // these are hopefully temporary
2620
2620
  constructor(client) {
2621
- this.logger = client[chunk2YVNXAHH_cjs.additionalContext].logger?.child({}, {
2621
+ this.logger = client[chunkDCEFUXFS_cjs.additionalContext].logger?.child({}, {
2622
2622
  msgPrefix: "Store"
2623
2623
  });
2624
2624
  this.client = client;
@@ -2757,10 +2757,10 @@ var Store = class {
2757
2757
 
2758
2758
  // src/observable/ObservableClient.ts
2759
2759
  function createObservableClient(client) {
2760
- const tweakedClient = chunkQTVK57MS_cjs.createClientFromContext({
2761
- ...client[chunk2YVNXAHH_cjs.additionalContext],
2762
- fetch: shared_net_fetch.createFetchHeaderMutator(client[chunk2YVNXAHH_cjs.additionalContext].fetch, (headers) => {
2763
- headers.set("Fetch-User-Agent", [headers.get("Fetch-User-Agent"), chunkQTVK57MS_cjs.OBSERVABLE_USER_AGENT].filter((x) => x && x?.length > 0).join(" "));
2760
+ const tweakedClient = chunkXLVCX6PD_cjs.createClientFromContext({
2761
+ ...client[chunkDCEFUXFS_cjs.additionalContext],
2762
+ fetch: shared_net_fetch.createFetchHeaderMutator(client[chunkDCEFUXFS_cjs.additionalContext].fetch, (headers) => {
2763
+ headers.set("Fetch-User-Agent", [headers.get("Fetch-User-Agent"), chunkXLVCX6PD_cjs.OBSERVABLE_USER_AGENT].filter((x) => x && x?.length > 0).join(" "));
2764
2764
  return headers;
2765
2765
  })
2766
2766
  });
@@ -2803,11 +2803,11 @@ function getOsdkConfig(ontologyRid) {
2803
2803
 
2804
2804
  Object.defineProperty(exports, "createClientWithTransaction", {
2805
2805
  enumerable: true,
2806
- get: function () { return chunkQTVK57MS_cjs.createClientWithTransaction; }
2806
+ get: function () { return chunkXLVCX6PD_cjs.createClientWithTransaction; }
2807
2807
  });
2808
2808
  Object.defineProperty(exports, "augment", {
2809
2809
  enumerable: true,
2810
- get: function () { return chunk2YVNXAHH_cjs.augment; }
2810
+ get: function () { return chunkDCEFUXFS_cjs.augment; }
2811
2811
  });
2812
2812
  exports.computeObjectSetCacheKey = computeObjectSetCacheKey;
2813
2813
  exports.createObservableClient = createObservableClient;
@@ -1 +1 @@
1
- {"version":3,"file":"MinimalClientContext.js","names":[],"sources":["MinimalClientContext.ts"],"sourcesContent":["/*\n * Copyright 2024 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport type { Logger } from \"@osdk/api\";\nimport type { SharedClientContext } from \"@osdk/shared.client2\";\nimport type {\n convertWireToOsdkObjects,\n convertWireToOsdkObjects2,\n} from \"./object/convertWireToOsdkObjects.js\";\nimport type { ObjectSetFactory } from \"./objectSet/ObjectSetFactory.js\";\nimport type { OntologyProvider } from \"./ontology/OntologyProvider.js\";\n\ndeclare const tag: unique symbol;\n\nexport type ClientCacheKey = {} & { readonly [tag]: void };\n\nexport type RequestContext = {\n finalMethodCall?: string;\n};\n\nexport interface MinimalClient extends SharedClientContext {\n ontologyRid: string | Promise<string>;\n ontologyProvider: OntologyProvider;\n logger?: Logger;\n transactionRid?: string;\n branch?: string;\n /** @internal */\n objectSetFactory: ObjectSetFactory<any, any>;\n /** @internal */\n objectFactory: typeof convertWireToOsdkObjects;\n /** @internal */\n objectFactory2: typeof convertWireToOsdkObjects2;\n\n clientCacheKey: ClientCacheKey;\n requestContext: RequestContext;\n}\n\nexport type MinimalClientParams = {\n metadata: MinimalClientMetadata;\n provider: OntologyProvider;\n};\n\nexport interface MinimalClientMetadata {\n ontologyRid: string | Promise<string>;\n}\n"],"mappings":"","ignoreList":[]}
1
+ {"version":3,"file":"MinimalClientContext.js","names":[],"sources":["MinimalClientContext.ts"],"sourcesContent":["/*\n * Copyright 2024 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport type { Logger } from \"@osdk/api\";\nimport type { SharedClientContext } from \"@osdk/shared.client2\";\nimport type {\n convertWireToOsdkObjects,\n convertWireToOsdkObjects2,\n} from \"./object/convertWireToOsdkObjects.js\";\nimport type { ObjectSetFactory } from \"./objectSet/ObjectSetFactory.js\";\nimport type { OntologyProvider } from \"./ontology/OntologyProvider.js\";\n\ndeclare const tag: unique symbol;\n\nexport type ClientCacheKey = {} & { readonly [tag]: void };\n\nexport type RequestContext = {\n finalMethodCall?: string;\n};\n\nexport interface MinimalClient extends SharedClientContext {\n ontologyRid: string | Promise<string>;\n ontologyProvider: OntologyProvider;\n logger?: Logger;\n transactionRid?: string;\n branch?: string;\n /** @internal */\n objectSetFactory: ObjectSetFactory<any, any>;\n /** @internal */\n objectFactory: typeof convertWireToOsdkObjects;\n /** @internal */\n objectFactory2: typeof convertWireToOsdkObjects2;\n\n clientCacheKey: ClientCacheKey;\n requestContext: RequestContext;\n asTypeInterfaceOrObjectMapping: Record<string, \"object\" | \"interface\">;\n}\n\nexport type MinimalClientParams = {\n metadata: MinimalClientMetadata;\n provider: OntologyProvider;\n};\n\nexport interface MinimalClientMetadata {\n ontologyRid: string | Promise<string>;\n}\n"],"mappings":"","ignoreList":[]}
@@ -42,7 +42,8 @@ export function createMinimalClient(metadata, baseUrl, tokenProvider, options =
42
42
  transactionRid: options.transactionRid,
43
43
  clientCacheKey: {},
44
44
  requestContext: {},
45
- branch: options.branch
45
+ branch: options.branch,
46
+ asTypeInterfaceOrObjectMapping: {}
46
47
  };
47
48
  return Object.freeze(Object.assign(minimalClient, {
48
49
  ontologyProvider: createOntologyProviderFactory(options)(minimalClient)
@@ -1 +1 @@
1
- {"version":3,"file":"createMinimalClient.js","names":["createSharedClientContext","convertWireToOsdkObjects","convertWireToOsdkObjects2","createObjectSet","createStandardOntologyProviderFactory","USER_AGENT","createMinimalClient","metadata","baseUrl","tokenProvider","options","fetchFn","global","fetch","objectSetFactory","createOntologyProviderFactory","process","env","NODE_ENV","URL","e","hint","startsWith","Error","processedBaseUrl","pathname","endsWith","minimalClient","toString","objectFactory","objectFactory2","ontologyRid","logger","transactionRid","clientCacheKey","requestContext","branch","Object","freeze","assign","ontologyProvider"],"sources":["createMinimalClient.ts"],"sourcesContent":["/*\n * Copyright 2024 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport type { Logger } from \"@osdk/api\";\nimport { createSharedClientContext } from \"@osdk/shared.client.impl\";\nimport type {\n ClientCacheKey,\n MinimalClient,\n MinimalClientParams,\n} from \"./MinimalClientContext.js\";\nimport {\n convertWireToOsdkObjects,\n convertWireToOsdkObjects2,\n} from \"./object/convertWireToOsdkObjects.js\";\nimport { createObjectSet } from \"./objectSet/createObjectSet.js\";\nimport type { ObjectSetFactory } from \"./objectSet/ObjectSetFactory.js\";\nimport type { OntologyProvider } from \"./ontology/OntologyProvider.js\";\nimport {\n createStandardOntologyProviderFactory,\n type OntologyCachingOptions,\n} from \"./ontology/StandardOntologyProvider.js\";\nimport { USER_AGENT } from \"./util/UserAgent.js\";\n\n/** @internal */\nexport function createMinimalClient(\n metadata: MinimalClientParams[\"metadata\"],\n baseUrl: string,\n tokenProvider: () => Promise<string>,\n options: OntologyCachingOptions & {\n logger?: Logger;\n transactionRid?: string;\n branch?: string;\n } = {},\n fetchFn: (\n input: Request | URL | string,\n init?: RequestInit | undefined,\n ) => Promise<Response> = global.fetch,\n objectSetFactory: ObjectSetFactory<any, any> = createObjectSet,\n createOntologyProviderFactory: (\n a: OntologyCachingOptions & { logger?: Logger },\n ) => (minimalClient: MinimalClient) => OntologyProvider =\n createStandardOntologyProviderFactory,\n) {\n if (process.env.NODE_ENV !== \"production\") {\n try {\n new URL(baseUrl);\n } catch (e) {\n const hint =\n !baseUrl.startsWith(\"http://\") || !baseUrl.startsWith(\"https://\")\n ? \". Did you forget to add 'http://' or 'https://'?\"\n : \"\";\n throw new Error(`Invalid stack URL: ${baseUrl}${hint}`);\n }\n }\n const processedBaseUrl = new URL(baseUrl);\n processedBaseUrl.pathname += processedBaseUrl.pathname.endsWith(\"/\")\n ? \"\"\n : \"/\";\n const minimalClient: MinimalClient = {\n ...createSharedClientContext(\n processedBaseUrl.toString(),\n tokenProvider,\n USER_AGENT,\n fetchFn,\n ),\n objectSetFactory,\n objectFactory: convertWireToOsdkObjects,\n objectFactory2: convertWireToOsdkObjects2,\n ontologyRid: metadata.ontologyRid,\n logger: options.logger,\n transactionRid: options.transactionRid,\n clientCacheKey: {} as ClientCacheKey,\n requestContext: {},\n branch: options.branch,\n } satisfies Omit<\n MinimalClient,\n \"ontologyProvider\"\n > as any;\n\n return Object.freeze(Object.assign(minimalClient, {\n ontologyProvider: createOntologyProviderFactory(\n options,\n )(minimalClient),\n }));\n}\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAGA,SAASA,yBAAyB,QAAQ,0BAA0B;AAMpE,SACEC,wBAAwB,EACxBC,yBAAyB,QACpB,sCAAsC;AAC7C,SAASC,eAAe,QAAQ,gCAAgC;AAGhE,SACEC,qCAAqC,QAEhC,wCAAwC;AAC/C,SAASC,UAAU,QAAQ,qBAAqB;;AAEhD;AACA,OAAO,SAASC,mBAAmBA,CACjCC,QAAyC,EACzCC,OAAe,EACfC,aAAoC,EACpCC,OAIC,GAAG,CAAC,CAAC,EACNC,OAGsB,GAAGC,MAAM,CAACC,KAAK,EACrCC,gBAA4C,GAAGX,eAAe,EAC9DY,6BAEuD,GACrDX,qCAAqC,EACvC;EACA,IAAIY,OAAO,CAACC,GAAG,CAACC,QAAQ,KAAK,YAAY,EAAE;IACzC,IAAI;MACF,IAAIC,GAAG,CAACX,OAAO,CAAC;IAClB,CAAC,CAAC,OAAOY,CAAC,EAAE;MACV,MAAMC,IAAI,GACR,CAACb,OAAO,CAACc,UAAU,CAAC,SAAS,CAAC,IAAI,CAACd,OAAO,CAACc,UAAU,CAAC,UAAU,CAAC,GAC7D,kDAAkD,GAClD,EAAE;MACR,MAAM,IAAIC,KAAK,CAAC,sBAAsBf,OAAO,GAAGa,IAAI,EAAE,CAAC;IACzD;EACF;EACA,MAAMG,gBAAgB,GAAG,IAAIL,GAAG,CAACX,OAAO,CAAC;EACzCgB,gBAAgB,CAACC,QAAQ,IAAID,gBAAgB,CAACC,QAAQ,CAACC,QAAQ,CAAC,GAAG,CAAC,GAChE,EAAE,GACF,GAAG;EACP,MAAMC,aAA4B,GAAG;IACnC,GAAG3B,yBAAyB,CAC1BwB,gBAAgB,CAACI,QAAQ,CAAC,CAAC,EAC3BnB,aAAa,EACbJ,UAAU,EACVM,OACF,CAAC;IACDG,gBAAgB;IAChBe,aAAa,EAAE5B,wBAAwB;IACvC6B,cAAc,EAAE5B,yBAAyB;IACzC6B,WAAW,EAAExB,QAAQ,CAACwB,WAAW;IACjCC,MAAM,EAAEtB,OAAO,CAACsB,MAAM;IACtBC,cAAc,EAAEvB,OAAO,CAACuB,cAAc;IACtCC,cAAc,EAAE,CAAC,CAAmB;IACpCC,cAAc,EAAE,CAAC,CAAC;IAClBC,MAAM,EAAE1B,OAAO,CAAC0B;EAClB,CAGQ;EAER,OAAOC,MAAM,CAACC,MAAM,CAACD,MAAM,CAACE,MAAM,CAACZ,aAAa,EAAE;IAChDa,gBAAgB,EAAEzB,6BAA6B,CAC7CL,OACF,CAAC,CAACiB,aAAa;EACjB,CAAC,CAAC,CAAC;AACL","ignoreList":[]}
1
+ {"version":3,"file":"createMinimalClient.js","names":["createSharedClientContext","convertWireToOsdkObjects","convertWireToOsdkObjects2","createObjectSet","createStandardOntologyProviderFactory","USER_AGENT","createMinimalClient","metadata","baseUrl","tokenProvider","options","fetchFn","global","fetch","objectSetFactory","createOntologyProviderFactory","process","env","NODE_ENV","URL","e","hint","startsWith","Error","processedBaseUrl","pathname","endsWith","minimalClient","toString","objectFactory","objectFactory2","ontologyRid","logger","transactionRid","clientCacheKey","requestContext","branch","asTypeInterfaceOrObjectMapping","Object","freeze","assign","ontologyProvider"],"sources":["createMinimalClient.ts"],"sourcesContent":["/*\n * Copyright 2024 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport type { Logger } from \"@osdk/api\";\nimport { createSharedClientContext } from \"@osdk/shared.client.impl\";\nimport type {\n ClientCacheKey,\n MinimalClient,\n MinimalClientParams,\n} from \"./MinimalClientContext.js\";\nimport {\n convertWireToOsdkObjects,\n convertWireToOsdkObjects2,\n} from \"./object/convertWireToOsdkObjects.js\";\nimport { createObjectSet } from \"./objectSet/createObjectSet.js\";\nimport type { ObjectSetFactory } from \"./objectSet/ObjectSetFactory.js\";\nimport type { OntologyProvider } from \"./ontology/OntologyProvider.js\";\nimport {\n createStandardOntologyProviderFactory,\n type OntologyCachingOptions,\n} from \"./ontology/StandardOntologyProvider.js\";\nimport { USER_AGENT } from \"./util/UserAgent.js\";\n\n/** @internal */\nexport function createMinimalClient(\n metadata: MinimalClientParams[\"metadata\"],\n baseUrl: string,\n tokenProvider: () => Promise<string>,\n options: OntologyCachingOptions & {\n logger?: Logger;\n transactionRid?: string;\n branch?: string;\n } = {},\n fetchFn: (\n input: Request | URL | string,\n init?: RequestInit | undefined,\n ) => Promise<Response> = global.fetch,\n objectSetFactory: ObjectSetFactory<any, any> = createObjectSet,\n createOntologyProviderFactory: (\n a: OntologyCachingOptions & { logger?: Logger },\n ) => (minimalClient: MinimalClient) => OntologyProvider =\n createStandardOntologyProviderFactory,\n) {\n if (process.env.NODE_ENV !== \"production\") {\n try {\n new URL(baseUrl);\n } catch (e) {\n const hint =\n !baseUrl.startsWith(\"http://\") || !baseUrl.startsWith(\"https://\")\n ? \". Did you forget to add 'http://' or 'https://'?\"\n : \"\";\n throw new Error(`Invalid stack URL: ${baseUrl}${hint}`);\n }\n }\n const processedBaseUrl = new URL(baseUrl);\n processedBaseUrl.pathname += processedBaseUrl.pathname.endsWith(\"/\")\n ? \"\"\n : \"/\";\n const minimalClient: MinimalClient = {\n ...createSharedClientContext(\n processedBaseUrl.toString(),\n tokenProvider,\n USER_AGENT,\n fetchFn,\n ),\n objectSetFactory,\n objectFactory: convertWireToOsdkObjects,\n objectFactory2: convertWireToOsdkObjects2,\n ontologyRid: metadata.ontologyRid,\n logger: options.logger,\n transactionRid: options.transactionRid,\n clientCacheKey: {} as ClientCacheKey,\n requestContext: {},\n branch: options.branch,\n asTypeInterfaceOrObjectMapping: {},\n } satisfies Omit<\n MinimalClient,\n \"ontologyProvider\"\n > as any;\n\n return Object.freeze(Object.assign(minimalClient, {\n ontologyProvider: createOntologyProviderFactory(\n options,\n )(minimalClient),\n }));\n}\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAGA,SAASA,yBAAyB,QAAQ,0BAA0B;AAMpE,SACEC,wBAAwB,EACxBC,yBAAyB,QACpB,sCAAsC;AAC7C,SAASC,eAAe,QAAQ,gCAAgC;AAGhE,SACEC,qCAAqC,QAEhC,wCAAwC;AAC/C,SAASC,UAAU,QAAQ,qBAAqB;;AAEhD;AACA,OAAO,SAASC,mBAAmBA,CACjCC,QAAyC,EACzCC,OAAe,EACfC,aAAoC,EACpCC,OAIC,GAAG,CAAC,CAAC,EACNC,OAGsB,GAAGC,MAAM,CAACC,KAAK,EACrCC,gBAA4C,GAAGX,eAAe,EAC9DY,6BAEuD,GACrDX,qCAAqC,EACvC;EACA,IAAIY,OAAO,CAACC,GAAG,CAACC,QAAQ,KAAK,YAAY,EAAE;IACzC,IAAI;MACF,IAAIC,GAAG,CAACX,OAAO,CAAC;IAClB,CAAC,CAAC,OAAOY,CAAC,EAAE;MACV,MAAMC,IAAI,GACR,CAACb,OAAO,CAACc,UAAU,CAAC,SAAS,CAAC,IAAI,CAACd,OAAO,CAACc,UAAU,CAAC,UAAU,CAAC,GAC7D,kDAAkD,GAClD,EAAE;MACR,MAAM,IAAIC,KAAK,CAAC,sBAAsBf,OAAO,GAAGa,IAAI,EAAE,CAAC;IACzD;EACF;EACA,MAAMG,gBAAgB,GAAG,IAAIL,GAAG,CAACX,OAAO,CAAC;EACzCgB,gBAAgB,CAACC,QAAQ,IAAID,gBAAgB,CAACC,QAAQ,CAACC,QAAQ,CAAC,GAAG,CAAC,GAChE,EAAE,GACF,GAAG;EACP,MAAMC,aAA4B,GAAG;IACnC,GAAG3B,yBAAyB,CAC1BwB,gBAAgB,CAACI,QAAQ,CAAC,CAAC,EAC3BnB,aAAa,EACbJ,UAAU,EACVM,OACF,CAAC;IACDG,gBAAgB;IAChBe,aAAa,EAAE5B,wBAAwB;IACvC6B,cAAc,EAAE5B,yBAAyB;IACzC6B,WAAW,EAAExB,QAAQ,CAACwB,WAAW;IACjCC,MAAM,EAAEtB,OAAO,CAACsB,MAAM;IACtBC,cAAc,EAAEvB,OAAO,CAACuB,cAAc;IACtCC,cAAc,EAAE,CAAC,CAAmB;IACpCC,cAAc,EAAE,CAAC,CAAC;IAClBC,MAAM,EAAE1B,OAAO,CAAC0B,MAAM;IACtBC,8BAA8B,EAAE,CAAC;EACnC,CAGQ;EAER,OAAOC,MAAM,CAACC,MAAM,CAACD,MAAM,CAACE,MAAM,CAACb,aAAa,EAAE;IAChDc,gBAAgB,EAAE1B,6BAA6B,CAC7CL,OACF,CAAC,CAACiB,aAAa;EACjB,CAAC,CAAC,CAAC;AACL","ignoreList":[]}
@@ -106,7 +106,8 @@ async function fetchInterfacePage(client, interfaceType, args, objectSet, useSna
106
106
  interfaceType.apiName, !args.$includeRid, await extractRdpDefinition(client, objectSet));
107
107
  return result;
108
108
  }
109
- const resolvedInterfaceObjectSet = resolveInterfaceObjectSet(objectSet, interfaceType.apiName, args);
109
+ const extractedInterfaceTypeApiName = (await extractObjectOrInterfaceType(client, objectSet))?.apiName ?? interfaceType.apiName;
110
+ const resolvedInterfaceObjectSet = resolveInterfaceObjectSet(objectSet, extractedInterfaceTypeApiName, args);
110
111
  const requestBody = await buildAndRemapRequestBody(args, {
111
112
  objectSet: resolvedInterfaceObjectSet,
112
113
  select: args?.$select ? [...args.$select] : [],
@@ -118,7 +119,7 @@ async function fetchInterfacePage(client, interfaceType, args, objectSet, useSna
118
119
  branch: client.branch
119
120
  });
120
121
  return Promise.resolve({
121
- data: await client.objectFactory2(client, result.data, (await extractObjectOrInterfaceType(client, resolvedInterfaceObjectSet))?.apiName ?? interfaceType.apiName, {}, !args.$includeRid, args.$select, false, result.interfaceToObjectTypeMappings),
122
+ data: await client.objectFactory2(client, result.data, extractedInterfaceTypeApiName, {}, !args.$includeRid, args.$select, false, result.interfaceToObjectTypeMappings),
122
123
  nextPageToken: result.nextPageToken,
123
124
  totalCount: result.totalCount
124
125
  });
@@ -1 +1 @@
1
- {"version":3,"file":"fetchPage.js","names":["OntologiesV2","extractNamespace","addUserAgentAndRequestContextHeaders","extractObjectOrInterfaceType","extractRdpDefinition","resolveBaseObjectSetType","augment","type","properties","apiName","objectSetToSearchJsonV2","objectSet","expectedApiName","existingWhere","undefined","objectType","Error","interfaceType","where","value","resolveInterfaceObjectSet","interfaceTypeApiName","args","$includeAllBaseObjectProperties","objectSets","includeAllBaseObjectProperties","fetchStaticRidPage","client","rids","useSnapshot","requestBody","applyFetchArgs","objects","select","$select","excludeRid","$includeRid","snapshot","result","OntologyObjectSets","loadMultipleObjectTypes","osdkMetadata","ontologyRid","preview","Promise","resolve","data","objectFactory2","interfaceToObjectTypeMappings","nextPageToken","totalCount","fetchInterfacePage","$__UNSTABLE_useOldInterfaceApis","baseRequestBody","augmentedProperties","augmentedSharedPropertyTypes","otherInterfaceTypes","selectedObjectTypes","selectedSharedPropertyTypes","length","remapped","remapPropertyNames","Array","from","OntologyInterfaces","search","objectFactory","resolvedInterfaceObjectSet","buildAndRemapRequestBody","branch","fetchPageInternal","fetchObjectPage","fetchPageWithErrorsInternal","e","error","fetchPage","fetchPageWithErrors","baseBody","objectOrInterface","propertyNames","objApiNamespace","map","name","fieldApiNamespace","fieldShortName","body","_client","$nextPageToken","pageToken","$pageSize","pageSize","orderBy","$orderBy","orderType","fields","orderByEntries","Object","entries","fieldNames","field","remappedFields","direction","index","ontologyProvider","getObjectDefinition","catch","r","load"],"sources":["fetchPage.ts"],"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 type {\n Augment,\n Augments,\n FetchPageArgs,\n FetchPageResult,\n InterfaceDefinition,\n NullabilityAdherence,\n ObjectOrInterfaceDefinition,\n ObjectSetArgs,\n ObjectTypeDefinition,\n PropertyKeys,\n Result,\n} from \"@osdk/api\";\nimport type { PageSize, PageToken } from \"@osdk/foundry.core\";\nimport type {\n LoadObjectSetV2MultipleObjectTypesRequest,\n ObjectSet,\n OntologyObjectV2,\n SearchJsonQueryV2,\n SearchObjectsForInterfaceRequest,\n SearchOrderByV2,\n} from \"@osdk/foundry.ontologies\";\nimport * as OntologiesV2 from \"@osdk/foundry.ontologies\";\nimport { extractNamespace } from \"../internal/conversions/modernToLegacyWhereClause.js\";\nimport type { MinimalClient } from \"../MinimalClientContext.js\";\nimport { addUserAgentAndRequestContextHeaders } from \"../util/addUserAgentAndRequestContextHeaders.js\";\nimport { extractObjectOrInterfaceType } from \"../util/extractObjectOrInterfaceType.js\";\nimport { extractRdpDefinition } from \"../util/extractRdpDefinition.js\";\nimport { resolveBaseObjectSetType } from \"../util/objectSetUtils.js\";\n\nexport function augment<\n Q extends ObjectOrInterfaceDefinition,\n T extends PropertyKeys<Q>,\n>(\n type: Q,\n ...properties: T[]\n): Augment<Q, T> {\n return { [type.apiName]: properties } as any;\n}\n\n/** @internal */\nexport function objectSetToSearchJsonV2(\n objectSet: ObjectSet,\n expectedApiName: string,\n existingWhere: SearchJsonQueryV2 | undefined = undefined,\n): SearchJsonQueryV2 | undefined {\n if (objectSet.type === \"base\" || objectSet.type === \"interfaceBase\") {\n if (objectSet.type === \"base\" && objectSet.objectType !== expectedApiName) {\n throw new Error(\n `Expected objectSet.objectType to be ${expectedApiName}, but got ${objectSet.objectType}`,\n );\n }\n if (\n objectSet.type === \"interfaceBase\"\n && objectSet.interfaceType !== expectedApiName\n ) {\n throw new Error(\n `Expected objectSet.objectType to be ${expectedApiName}, but got ${objectSet.interfaceType}`,\n );\n }\n\n return existingWhere;\n }\n\n if (objectSet.type === \"filter\") {\n return objectSetToSearchJsonV2(\n objectSet.objectSet,\n expectedApiName,\n existingWhere == null ? objectSet.where : {\n type: \"and\",\n value: [existingWhere, objectSet.where],\n },\n );\n }\n\n throw new Error(`Unsupported objectSet type: ${objectSet.type}`);\n}\n\n/** @internal */\nexport function resolveInterfaceObjectSet(\n objectSet: ObjectSet,\n interfaceTypeApiName: string,\n args: FetchPageArgs<any, any, any, any, any, any>,\n): ObjectSet {\n return args?.$includeAllBaseObjectProperties\n ? {\n type: \"intersect\",\n objectSets: [objectSet, {\n type: \"interfaceBase\",\n interfaceType: interfaceTypeApiName,\n includeAllBaseObjectProperties: true,\n }],\n }\n : objectSet;\n}\n\n/** @internal */\nexport async function fetchStaticRidPage<\n R extends boolean,\n S extends NullabilityAdherence,\n T extends boolean,\n>(\n client: MinimalClient,\n rids: readonly string[],\n args: FetchPageArgs<\n ObjectOrInterfaceDefinition,\n PropertyKeys<ObjectOrInterfaceDefinition>,\n R,\n any,\n S,\n T\n >,\n useSnapshot: boolean = false,\n): Promise<\n FetchPageResult<\n ObjectOrInterfaceDefinition,\n PropertyKeys<ObjectOrInterfaceDefinition>,\n R,\n S,\n T\n >\n> {\n const requestBody = await applyFetchArgs(\n args,\n {\n objectSet: {\n type: \"static\",\n objects: rids as string[],\n },\n select: ((args?.$select as string[] | undefined) ?? []),\n excludeRid: !args?.$includeRid,\n snapshot: useSnapshot,\n } as LoadObjectSetV2MultipleObjectTypesRequest,\n client,\n { type: \"object\", apiName: \"\" },\n );\n\n const result = await OntologiesV2.OntologyObjectSets.loadMultipleObjectTypes(\n addUserAgentAndRequestContextHeaders(client, { osdkMetadata: undefined }),\n await client.ontologyRid,\n requestBody,\n { preview: true },\n );\n\n return Promise.resolve({\n data: await client.objectFactory2(\n client,\n result.data,\n undefined,\n {},\n !args.$includeRid,\n args.$select,\n false,\n result.interfaceToObjectTypeMappings,\n ),\n nextPageToken: result.nextPageToken,\n totalCount: result.totalCount,\n }) as unknown as Promise<\n FetchPageResult<\n ObjectOrInterfaceDefinition,\n PropertyKeys<ObjectOrInterfaceDefinition>,\n R,\n S,\n T\n >\n >;\n}\n\nasync function fetchInterfacePage<\n Q extends InterfaceDefinition,\n L extends PropertyKeys<Q>,\n R extends boolean,\n S extends NullabilityAdherence,\n T extends boolean,\n>(\n client: MinimalClient,\n interfaceType: Q,\n args: FetchPageArgs<Q, L, R, any, S, T>,\n objectSet: ObjectSet,\n useSnapshot: boolean = false,\n): Promise<FetchPageResult<Q, L, R, S, T>> {\n if (args.$__UNSTABLE_useOldInterfaceApis) {\n const baseRequestBody: SearchObjectsForInterfaceRequest = {\n augmentedProperties: {},\n augmentedSharedPropertyTypes: {},\n otherInterfaceTypes: [],\n selectedObjectTypes: [],\n selectedSharedPropertyTypes: args.$select ? [...args.$select] : [],\n where: objectSetToSearchJsonV2(objectSet, interfaceType.apiName),\n };\n\n const requestBody = await applyFetchArgs(\n args,\n baseRequestBody,\n client,\n interfaceType,\n );\n\n if (requestBody.selectedSharedPropertyTypes.length > 0) {\n const remapped = remapPropertyNames(\n interfaceType,\n requestBody.selectedSharedPropertyTypes,\n );\n requestBody.selectedSharedPropertyTypes = Array.from(remapped);\n }\n\n const result = await OntologiesV2.OntologyInterfaces\n .search(\n addUserAgentAndRequestContextHeaders(client, interfaceType),\n await client.ontologyRid,\n interfaceType.apiName,\n requestBody,\n { preview: true },\n );\n\n result.data = await client.objectFactory(\n client,\n result.data as OntologyObjectV2[], // drop readonly\n interfaceType.apiName,\n !args.$includeRid,\n await extractRdpDefinition(client, objectSet),\n );\n return result as any;\n }\n const resolvedInterfaceObjectSet = resolveInterfaceObjectSet(\n objectSet,\n interfaceType.apiName,\n args,\n );\n const requestBody = await buildAndRemapRequestBody(\n args,\n {\n objectSet: resolvedInterfaceObjectSet,\n select: args?.$select ? [...args.$select] : [],\n excludeRid: !args?.$includeRid,\n snapshot: useSnapshot,\n },\n client,\n interfaceType,\n );\n\n const result = await OntologiesV2.OntologyObjectSets.loadMultipleObjectTypes(\n addUserAgentAndRequestContextHeaders(client, interfaceType),\n await client.ontologyRid,\n requestBody,\n { preview: true, branch: client.branch },\n );\n\n return Promise.resolve({\n data: await client.objectFactory2(\n client,\n result.data,\n (await extractObjectOrInterfaceType(client, resolvedInterfaceObjectSet))\n ?.apiName\n ?? interfaceType.apiName,\n {},\n !args.$includeRid,\n args.$select,\n false,\n result.interfaceToObjectTypeMappings,\n ),\n nextPageToken: result.nextPageToken,\n totalCount: result.totalCount,\n }) as unknown as Promise<FetchPageResult<Q, L, R, S, T>>;\n}\n\n/** @internal */\nexport async function fetchPageInternal<\n Q extends ObjectOrInterfaceDefinition,\n L extends PropertyKeys<Q>,\n R extends boolean,\n A extends Augments,\n S extends NullabilityAdherence,\n T extends boolean,\n ORDER_BY_OPTIONS extends ObjectSetArgs.OrderByOptions<L>,\n>(\n client: MinimalClient,\n objectType: Q,\n objectSet: ObjectSet,\n args: FetchPageArgs<Q, L, R, A, S, T, never, ORDER_BY_OPTIONS> = {},\n useSnapshot: boolean = false,\n): Promise<FetchPageResult<Q, L, R, S, T, ORDER_BY_OPTIONS>> {\n if (objectType.type === \"interface\") {\n return await fetchInterfacePage(\n client,\n objectType,\n args as FetchPageArgs<\n InterfaceDefinition,\n L,\n R,\n A,\n S,\n T,\n never,\n ORDER_BY_OPTIONS\n >,\n objectSet,\n useSnapshot,\n ) as any; // fixme\n } else {\n return await fetchObjectPage(\n client,\n objectType,\n args as FetchPageArgs<\n ObjectTypeDefinition,\n L,\n R,\n A,\n S,\n T,\n never,\n ORDER_BY_OPTIONS\n >,\n objectSet,\n useSnapshot,\n ) as any; // fixme\n }\n}\n\n/** @internal */\nexport async function fetchPageWithErrorsInternal<\n Q extends ObjectOrInterfaceDefinition,\n L extends PropertyKeys<Q>,\n R extends boolean,\n A extends Augments,\n S extends NullabilityAdherence,\n T extends boolean,\n>(\n client: MinimalClient,\n objectType: Q,\n objectSet: ObjectSet,\n args: FetchPageArgs<Q, L, R, A, S, T> = {},\n): Promise<Result<FetchPageResult<Q, L, R, S, T>>> {\n try {\n const result = await fetchPageInternal(client, objectType, objectSet, args);\n return { value: result };\n } catch (e) {\n if (e instanceof Error) {\n return { error: e };\n }\n return { error: e as Error };\n }\n}\n\n/**\n * @param client\n * @param objectType\n * @param args\n * @param objectSet\n * @returns\n * @internal\n */\nexport async function fetchPage<\n Q extends ObjectOrInterfaceDefinition,\n L extends PropertyKeys<Q>,\n R extends boolean,\n S extends NullabilityAdherence,\n T extends boolean,\n>(\n client: MinimalClient,\n objectType: Q,\n args: FetchPageArgs<Q, L, R, any, S, T>,\n objectSet: ObjectSet = resolveBaseObjectSetType(objectType),\n): Promise<FetchPageResult<Q, L, R, S, T>> {\n return fetchPageInternal(client, objectType, objectSet, args);\n}\n\n/** @internal */\nexport async function fetchPageWithErrors<\n Q extends ObjectOrInterfaceDefinition,\n L extends PropertyKeys<Q>,\n R extends boolean,\n S extends NullabilityAdherence,\n T extends boolean,\n>(\n client: MinimalClient,\n objectType: Q,\n args: FetchPageArgs<Q, L, R, any, S, T>,\n objectSet: ObjectSet = resolveBaseObjectSetType(objectType),\n): Promise<Result<FetchPageResult<Q, L, R, S, T>>> {\n return fetchPageWithErrorsInternal(client, objectType, objectSet, args);\n}\n\n/** @internal */\nasync function buildAndRemapRequestBody<\n Q extends ObjectOrInterfaceDefinition,\n L extends PropertyKeys<Q>,\n R extends boolean,\n A extends Augments,\n S extends NullabilityAdherence,\n T extends boolean,\n RequestBody extends {\n orderBy?: SearchOrderByV2;\n pageToken?: PageToken;\n pageSize?: PageSize;\n select?: readonly string[];\n selectedSharedPropertyTypes?: readonly string[];\n },\n>(\n args: FetchPageArgs<Q, L, R, A, S, T>,\n baseBody: RequestBody,\n client: MinimalClient,\n objectType: Q,\n): Promise<RequestBody> {\n const requestBody = await applyFetchArgs(\n args,\n baseBody,\n client,\n objectType,\n );\n\n if (requestBody.select != null && requestBody.select.length > 0) {\n const remapped = remapPropertyNames(\n objectType,\n requestBody.select,\n );\n return { ...requestBody, select: remapped };\n }\n\n return requestBody;\n}\n\n/** @internal */\nexport function remapPropertyNames(\n objectOrInterface: ObjectOrInterfaceDefinition | undefined,\n propertyNames: readonly string[],\n): readonly string[] {\n if (objectOrInterface == null) {\n return propertyNames;\n }\n\n if (objectOrInterface.type === \"interface\") {\n const [objApiNamespace] = extractNamespace(objectOrInterface.apiName);\n return propertyNames.map(name => {\n const [fieldApiNamespace, fieldShortName] = extractNamespace(name);\n return (fieldApiNamespace == null && objApiNamespace != null)\n ? `${objApiNamespace}.${fieldShortName}`\n : name;\n });\n }\n\n return propertyNames;\n}\n\nasync function applyFetchArgs<\n Q extends ObjectOrInterfaceDefinition,\n L extends PropertyKeys<Q>,\n R extends boolean,\n A extends Augments,\n S extends NullabilityAdherence,\n T extends boolean,\n X extends {\n orderBy?: SearchOrderByV2;\n pageToken?: PageToken;\n pageSize?: PageSize;\n },\n>(\n args: FetchPageArgs<\n any,\n any,\n any,\n any,\n any,\n any,\n any,\n ObjectSetArgs.OrderByOptions<any>\n >,\n body: X,\n _client: MinimalClient,\n objectType: Q,\n): Promise<X> {\n if (args?.$nextPageToken) {\n body.pageToken = args.$nextPageToken;\n }\n\n if (args?.$pageSize != null) {\n body.pageSize = args.$pageSize;\n }\n\n const orderBy = args?.$orderBy;\n if (orderBy) {\n if (orderBy === \"relevance\") {\n body.orderBy = { orderType: \"relevance\", fields: [] };\n } else {\n const orderByEntries = Object.entries(orderBy);\n const fieldNames = orderByEntries.map(([field]) => field);\n const remappedFields = remapPropertyNames(\n objectType,\n fieldNames,\n );\n\n body.orderBy = {\n fields: orderByEntries.map(([, direction], index) => ({\n field: remappedFields[index],\n direction,\n })),\n };\n }\n }\n\n return body;\n}\n\n/** @internal */\nexport async function fetchObjectPage<\n Q extends ObjectTypeDefinition,\n L extends PropertyKeys<Q>,\n R extends boolean,\n S extends NullabilityAdherence,\n T extends boolean,\n ORDER_BY_OPTIONS extends ObjectSetArgs.OrderByOptions<L>,\n>(\n client: MinimalClient,\n objectType: Q,\n args: FetchPageArgs<Q, L, R, Augments, S, T, never, ORDER_BY_OPTIONS>,\n objectSet: ObjectSet,\n useSnapshot: boolean = false,\n): Promise<FetchPageResult<Q, L, R, S, T, ORDER_BY_OPTIONS>> {\n // For simple object fetches, since we know the object type up front\n // we can parallelize network requests for loading metadata and loading the actual objects\n // In our object factory we await and block on loading the metadata, which if this call finishes, should already be cached on the client\n // We have an empty catch here so that if this call errors before we await later, we won't have an unhandled promise rejection that would crash the process\n // Swallowing the error is ok because we await the metadata load in the objectFactory later anyways which eventually bubbles up the error to the user\n void client.ontologyProvider.getObjectDefinition(objectType.apiName).catch(\n () => {},\n );\n\n const requestBody = await buildAndRemapRequestBody(\n args,\n {\n objectSet,\n select: args?.$select ? [...args.$select] : [],\n excludeRid: !args?.$includeRid,\n snapshot: useSnapshot,\n },\n client,\n objectType,\n );\n\n const r = await OntologiesV2.OntologyObjectSets.load(\n addUserAgentAndRequestContextHeaders(client, objectType),\n await client.ontologyRid,\n requestBody,\n { branch: client.branch },\n );\n\n return Promise.resolve({\n data: await client.objectFactory(\n client,\n r.data as OntologyObjectV2[],\n undefined,\n undefined,\n await extractRdpDefinition(client, objectSet),\n args.$select,\n false,\n ),\n nextPageToken: r.nextPageToken,\n totalCount: r.totalCount,\n }) as unknown as Promise<FetchPageResult<Q, L, R, S, T, ORDER_BY_OPTIONS>>;\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"fetchPage.js","names":["OntologiesV2","extractNamespace","addUserAgentAndRequestContextHeaders","extractObjectOrInterfaceType","extractRdpDefinition","resolveBaseObjectSetType","augment","type","properties","apiName","objectSetToSearchJsonV2","objectSet","expectedApiName","existingWhere","undefined","objectType","Error","interfaceType","where","value","resolveInterfaceObjectSet","interfaceTypeApiName","args","$includeAllBaseObjectProperties","objectSets","includeAllBaseObjectProperties","fetchStaticRidPage","client","rids","useSnapshot","requestBody","applyFetchArgs","objects","select","$select","excludeRid","$includeRid","snapshot","result","OntologyObjectSets","loadMultipleObjectTypes","osdkMetadata","ontologyRid","preview","Promise","resolve","data","objectFactory2","interfaceToObjectTypeMappings","nextPageToken","totalCount","fetchInterfacePage","$__UNSTABLE_useOldInterfaceApis","baseRequestBody","augmentedProperties","augmentedSharedPropertyTypes","otherInterfaceTypes","selectedObjectTypes","selectedSharedPropertyTypes","length","remapped","remapPropertyNames","Array","from","OntologyInterfaces","search","objectFactory","extractedInterfaceTypeApiName","resolvedInterfaceObjectSet","buildAndRemapRequestBody","branch","fetchPageInternal","fetchObjectPage","fetchPageWithErrorsInternal","e","error","fetchPage","fetchPageWithErrors","baseBody","objectOrInterface","propertyNames","objApiNamespace","map","name","fieldApiNamespace","fieldShortName","body","_client","$nextPageToken","pageToken","$pageSize","pageSize","orderBy","$orderBy","orderType","fields","orderByEntries","Object","entries","fieldNames","field","remappedFields","direction","index","ontologyProvider","getObjectDefinition","catch","r","load"],"sources":["fetchPage.ts"],"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 type {\n Augment,\n Augments,\n FetchPageArgs,\n FetchPageResult,\n InterfaceDefinition,\n NullabilityAdherence,\n ObjectOrInterfaceDefinition,\n ObjectSetArgs,\n ObjectTypeDefinition,\n PropertyKeys,\n Result,\n} from \"@osdk/api\";\nimport type { PageSize, PageToken } from \"@osdk/foundry.core\";\nimport type {\n LoadObjectSetV2MultipleObjectTypesRequest,\n ObjectSet,\n OntologyObjectV2,\n SearchJsonQueryV2,\n SearchObjectsForInterfaceRequest,\n SearchOrderByV2,\n} from \"@osdk/foundry.ontologies\";\nimport * as OntologiesV2 from \"@osdk/foundry.ontologies\";\nimport { extractNamespace } from \"../internal/conversions/modernToLegacyWhereClause.js\";\nimport type { MinimalClient } from \"../MinimalClientContext.js\";\nimport { addUserAgentAndRequestContextHeaders } from \"../util/addUserAgentAndRequestContextHeaders.js\";\nimport { extractObjectOrInterfaceType } from \"../util/extractObjectOrInterfaceType.js\";\nimport { extractRdpDefinition } from \"../util/extractRdpDefinition.js\";\nimport { resolveBaseObjectSetType } from \"../util/objectSetUtils.js\";\n\nexport function augment<\n Q extends ObjectOrInterfaceDefinition,\n T extends PropertyKeys<Q>,\n>(\n type: Q,\n ...properties: T[]\n): Augment<Q, T> {\n return { [type.apiName]: properties } as any;\n}\n\n/** @internal */\nexport function objectSetToSearchJsonV2(\n objectSet: ObjectSet,\n expectedApiName: string,\n existingWhere: SearchJsonQueryV2 | undefined = undefined,\n): SearchJsonQueryV2 | undefined {\n if (objectSet.type === \"base\" || objectSet.type === \"interfaceBase\") {\n if (objectSet.type === \"base\" && objectSet.objectType !== expectedApiName) {\n throw new Error(\n `Expected objectSet.objectType to be ${expectedApiName}, but got ${objectSet.objectType}`,\n );\n }\n if (\n objectSet.type === \"interfaceBase\"\n && objectSet.interfaceType !== expectedApiName\n ) {\n throw new Error(\n `Expected objectSet.objectType to be ${expectedApiName}, but got ${objectSet.interfaceType}`,\n );\n }\n\n return existingWhere;\n }\n\n if (objectSet.type === \"filter\") {\n return objectSetToSearchJsonV2(\n objectSet.objectSet,\n expectedApiName,\n existingWhere == null ? objectSet.where : {\n type: \"and\",\n value: [existingWhere, objectSet.where],\n },\n );\n }\n\n throw new Error(`Unsupported objectSet type: ${objectSet.type}`);\n}\n\n/** @internal */\nexport function resolveInterfaceObjectSet(\n objectSet: ObjectSet,\n interfaceTypeApiName: string,\n args: FetchPageArgs<any, any, any, any, any, any>,\n): ObjectSet {\n return args?.$includeAllBaseObjectProperties\n ? {\n type: \"intersect\",\n objectSets: [objectSet, {\n type: \"interfaceBase\",\n interfaceType: interfaceTypeApiName,\n includeAllBaseObjectProperties: true,\n }],\n }\n : objectSet;\n}\n\n/** @internal */\nexport async function fetchStaticRidPage<\n R extends boolean,\n S extends NullabilityAdherence,\n T extends boolean,\n>(\n client: MinimalClient,\n rids: readonly string[],\n args: FetchPageArgs<\n ObjectOrInterfaceDefinition,\n PropertyKeys<ObjectOrInterfaceDefinition>,\n R,\n any,\n S,\n T\n >,\n useSnapshot: boolean = false,\n): Promise<\n FetchPageResult<\n ObjectOrInterfaceDefinition,\n PropertyKeys<ObjectOrInterfaceDefinition>,\n R,\n S,\n T\n >\n> {\n const requestBody = await applyFetchArgs(\n args,\n {\n objectSet: {\n type: \"static\",\n objects: rids as string[],\n },\n select: ((args?.$select as string[] | undefined) ?? []),\n excludeRid: !args?.$includeRid,\n snapshot: useSnapshot,\n } as LoadObjectSetV2MultipleObjectTypesRequest,\n client,\n { type: \"object\", apiName: \"\" },\n );\n\n const result = await OntologiesV2.OntologyObjectSets.loadMultipleObjectTypes(\n addUserAgentAndRequestContextHeaders(client, { osdkMetadata: undefined }),\n await client.ontologyRid,\n requestBody,\n { preview: true },\n );\n\n return Promise.resolve({\n data: await client.objectFactory2(\n client,\n result.data,\n undefined,\n {},\n !args.$includeRid,\n args.$select,\n false,\n result.interfaceToObjectTypeMappings,\n ),\n nextPageToken: result.nextPageToken,\n totalCount: result.totalCount,\n }) as unknown as Promise<\n FetchPageResult<\n ObjectOrInterfaceDefinition,\n PropertyKeys<ObjectOrInterfaceDefinition>,\n R,\n S,\n T\n >\n >;\n}\n\nasync function fetchInterfacePage<\n Q extends InterfaceDefinition,\n L extends PropertyKeys<Q>,\n R extends boolean,\n S extends NullabilityAdherence,\n T extends boolean,\n>(\n client: MinimalClient,\n interfaceType: Q,\n args: FetchPageArgs<Q, L, R, any, S, T>,\n objectSet: ObjectSet,\n useSnapshot: boolean = false,\n): Promise<FetchPageResult<Q, L, R, S, T>> {\n if (args.$__UNSTABLE_useOldInterfaceApis) {\n const baseRequestBody: SearchObjectsForInterfaceRequest = {\n augmentedProperties: {},\n augmentedSharedPropertyTypes: {},\n otherInterfaceTypes: [],\n selectedObjectTypes: [],\n selectedSharedPropertyTypes: args.$select ? [...args.$select] : [],\n where: objectSetToSearchJsonV2(objectSet, interfaceType.apiName),\n };\n\n const requestBody = await applyFetchArgs(\n args,\n baseRequestBody,\n client,\n interfaceType,\n );\n\n if (requestBody.selectedSharedPropertyTypes.length > 0) {\n const remapped = remapPropertyNames(\n interfaceType,\n requestBody.selectedSharedPropertyTypes,\n );\n requestBody.selectedSharedPropertyTypes = Array.from(remapped);\n }\n\n const result = await OntologiesV2.OntologyInterfaces\n .search(\n addUserAgentAndRequestContextHeaders(client, interfaceType),\n await client.ontologyRid,\n interfaceType.apiName,\n requestBody,\n { preview: true },\n );\n\n result.data = await client.objectFactory(\n client,\n result.data as OntologyObjectV2[], // drop readonly\n interfaceType.apiName,\n !args.$includeRid,\n await extractRdpDefinition(client, objectSet),\n );\n return result as any;\n }\n\n const extractedInterfaceTypeApiName = (await extractObjectOrInterfaceType(\n client,\n objectSet,\n ))?.apiName ?? interfaceType.apiName;\n const resolvedInterfaceObjectSet = resolveInterfaceObjectSet(\n objectSet,\n extractedInterfaceTypeApiName,\n args,\n );\n const requestBody = await buildAndRemapRequestBody(\n args,\n {\n objectSet: resolvedInterfaceObjectSet,\n select: args?.$select ? [...args.$select] : [],\n excludeRid: !args?.$includeRid,\n snapshot: useSnapshot,\n },\n client,\n interfaceType,\n );\n\n const result = await OntologiesV2.OntologyObjectSets.loadMultipleObjectTypes(\n addUserAgentAndRequestContextHeaders(client, interfaceType),\n await client.ontologyRid,\n requestBody,\n { preview: true, branch: client.branch },\n );\n\n return Promise.resolve({\n data: await client.objectFactory2(\n client,\n result.data,\n extractedInterfaceTypeApiName,\n {},\n !args.$includeRid,\n args.$select,\n false,\n result.interfaceToObjectTypeMappings,\n ),\n nextPageToken: result.nextPageToken,\n totalCount: result.totalCount,\n }) as unknown as Promise<FetchPageResult<Q, L, R, S, T>>;\n}\n\n/** @internal */\nexport async function fetchPageInternal<\n Q extends ObjectOrInterfaceDefinition,\n L extends PropertyKeys<Q>,\n R extends boolean,\n A extends Augments,\n S extends NullabilityAdherence,\n T extends boolean,\n ORDER_BY_OPTIONS extends ObjectSetArgs.OrderByOptions<L>,\n>(\n client: MinimalClient,\n objectType: Q,\n objectSet: ObjectSet,\n args: FetchPageArgs<Q, L, R, A, S, T, never, ORDER_BY_OPTIONS> = {},\n useSnapshot: boolean = false,\n): Promise<FetchPageResult<Q, L, R, S, T, ORDER_BY_OPTIONS>> {\n if (objectType.type === \"interface\") {\n return await fetchInterfacePage(\n client,\n objectType,\n args as FetchPageArgs<\n InterfaceDefinition,\n L,\n R,\n A,\n S,\n T,\n never,\n ORDER_BY_OPTIONS\n >,\n objectSet,\n useSnapshot,\n ) as any; // fixme\n } else {\n return await fetchObjectPage(\n client,\n objectType,\n args as FetchPageArgs<\n ObjectTypeDefinition,\n L,\n R,\n A,\n S,\n T,\n never,\n ORDER_BY_OPTIONS\n >,\n objectSet,\n useSnapshot,\n ) as any; // fixme\n }\n}\n\n/** @internal */\nexport async function fetchPageWithErrorsInternal<\n Q extends ObjectOrInterfaceDefinition,\n L extends PropertyKeys<Q>,\n R extends boolean,\n A extends Augments,\n S extends NullabilityAdherence,\n T extends boolean,\n>(\n client: MinimalClient,\n objectType: Q,\n objectSet: ObjectSet,\n args: FetchPageArgs<Q, L, R, A, S, T> = {},\n): Promise<Result<FetchPageResult<Q, L, R, S, T>>> {\n try {\n const result = await fetchPageInternal(client, objectType, objectSet, args);\n return { value: result };\n } catch (e) {\n if (e instanceof Error) {\n return { error: e };\n }\n return { error: e as Error };\n }\n}\n\n/**\n * @param client\n * @param objectType\n * @param args\n * @param objectSet\n * @returns\n * @internal\n */\nexport async function fetchPage<\n Q extends ObjectOrInterfaceDefinition,\n L extends PropertyKeys<Q>,\n R extends boolean,\n S extends NullabilityAdherence,\n T extends boolean,\n>(\n client: MinimalClient,\n objectType: Q,\n args: FetchPageArgs<Q, L, R, any, S, T>,\n objectSet: ObjectSet = resolveBaseObjectSetType(objectType),\n): Promise<FetchPageResult<Q, L, R, S, T>> {\n return fetchPageInternal(client, objectType, objectSet, args);\n}\n\n/** @internal */\nexport async function fetchPageWithErrors<\n Q extends ObjectOrInterfaceDefinition,\n L extends PropertyKeys<Q>,\n R extends boolean,\n S extends NullabilityAdherence,\n T extends boolean,\n>(\n client: MinimalClient,\n objectType: Q,\n args: FetchPageArgs<Q, L, R, any, S, T>,\n objectSet: ObjectSet = resolveBaseObjectSetType(objectType),\n): Promise<Result<FetchPageResult<Q, L, R, S, T>>> {\n return fetchPageWithErrorsInternal(client, objectType, objectSet, args);\n}\n\n/** @internal */\nasync function buildAndRemapRequestBody<\n Q extends ObjectOrInterfaceDefinition,\n L extends PropertyKeys<Q>,\n R extends boolean,\n A extends Augments,\n S extends NullabilityAdherence,\n T extends boolean,\n RequestBody extends {\n orderBy?: SearchOrderByV2;\n pageToken?: PageToken;\n pageSize?: PageSize;\n select?: readonly string[];\n selectedSharedPropertyTypes?: readonly string[];\n },\n>(\n args: FetchPageArgs<Q, L, R, A, S, T>,\n baseBody: RequestBody,\n client: MinimalClient,\n objectType: Q,\n): Promise<RequestBody> {\n const requestBody = await applyFetchArgs(\n args,\n baseBody,\n client,\n objectType,\n );\n\n if (requestBody.select != null && requestBody.select.length > 0) {\n const remapped = remapPropertyNames(\n objectType,\n requestBody.select,\n );\n return { ...requestBody, select: remapped };\n }\n\n return requestBody;\n}\n\n/** @internal */\nexport function remapPropertyNames(\n objectOrInterface: ObjectOrInterfaceDefinition | undefined,\n propertyNames: readonly string[],\n): readonly string[] {\n if (objectOrInterface == null) {\n return propertyNames;\n }\n\n if (objectOrInterface.type === \"interface\") {\n const [objApiNamespace] = extractNamespace(objectOrInterface.apiName);\n return propertyNames.map(name => {\n const [fieldApiNamespace, fieldShortName] = extractNamespace(name);\n return (fieldApiNamespace == null && objApiNamespace != null)\n ? `${objApiNamespace}.${fieldShortName}`\n : name;\n });\n }\n\n return propertyNames;\n}\n\nasync function applyFetchArgs<\n Q extends ObjectOrInterfaceDefinition,\n L extends PropertyKeys<Q>,\n R extends boolean,\n A extends Augments,\n S extends NullabilityAdherence,\n T extends boolean,\n X extends {\n orderBy?: SearchOrderByV2;\n pageToken?: PageToken;\n pageSize?: PageSize;\n },\n>(\n args: FetchPageArgs<\n any,\n any,\n any,\n any,\n any,\n any,\n any,\n ObjectSetArgs.OrderByOptions<any>\n >,\n body: X,\n _client: MinimalClient,\n objectType: Q,\n): Promise<X> {\n if (args?.$nextPageToken) {\n body.pageToken = args.$nextPageToken;\n }\n\n if (args?.$pageSize != null) {\n body.pageSize = args.$pageSize;\n }\n\n const orderBy = args?.$orderBy;\n if (orderBy) {\n if (orderBy === \"relevance\") {\n body.orderBy = { orderType: \"relevance\", fields: [] };\n } else {\n const orderByEntries = Object.entries(orderBy);\n const fieldNames = orderByEntries.map(([field]) => field);\n const remappedFields = remapPropertyNames(\n objectType,\n fieldNames,\n );\n\n body.orderBy = {\n fields: orderByEntries.map(([, direction], index) => ({\n field: remappedFields[index],\n direction,\n })),\n };\n }\n }\n\n return body;\n}\n\n/** @internal */\nexport async function fetchObjectPage<\n Q extends ObjectTypeDefinition,\n L extends PropertyKeys<Q>,\n R extends boolean,\n S extends NullabilityAdherence,\n T extends boolean,\n ORDER_BY_OPTIONS extends ObjectSetArgs.OrderByOptions<L>,\n>(\n client: MinimalClient,\n objectType: Q,\n args: FetchPageArgs<Q, L, R, Augments, S, T, never, ORDER_BY_OPTIONS>,\n objectSet: ObjectSet,\n useSnapshot: boolean = false,\n): Promise<FetchPageResult<Q, L, R, S, T, ORDER_BY_OPTIONS>> {\n // For simple object fetches, since we know the object type up front\n // we can parallelize network requests for loading metadata and loading the actual objects\n // In our object factory we await and block on loading the metadata, which if this call finishes, should already be cached on the client\n // We have an empty catch here so that if this call errors before we await later, we won't have an unhandled promise rejection that would crash the process\n // Swallowing the error is ok because we await the metadata load in the objectFactory later anyways which eventually bubbles up the error to the user\n void client.ontologyProvider.getObjectDefinition(objectType.apiName).catch(\n () => {},\n );\n\n const requestBody = await buildAndRemapRequestBody(\n args,\n {\n objectSet,\n select: args?.$select ? [...args.$select] : [],\n excludeRid: !args?.$includeRid,\n snapshot: useSnapshot,\n },\n client,\n objectType,\n );\n\n const r = await OntologiesV2.OntologyObjectSets.load(\n addUserAgentAndRequestContextHeaders(client, objectType),\n await client.ontologyRid,\n requestBody,\n { branch: client.branch },\n );\n\n return Promise.resolve({\n data: await client.objectFactory(\n client,\n r.data as OntologyObjectV2[],\n undefined,\n undefined,\n await extractRdpDefinition(client, objectSet),\n args.$select,\n false,\n ),\n nextPageToken: r.nextPageToken,\n totalCount: r.totalCount,\n }) as unknown as Promise<FetchPageResult<Q, L, R, S, T, ORDER_BY_OPTIONS>>;\n}\n"],"mappings":"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","ignoreList":[]}
@@ -14,6 +14,7 @@
14
14
  * limitations under the License.
15
15
  */
16
16
 
17
+ import invariant from "tiny-invariant";
17
18
  import { createWithPropertiesObjectSet } from "../derivedProperties/createWithPropertiesObjectSet.js";
18
19
  import { modernToLegacyWhereClause } from "../internal/conversions/modernToLegacyWhereClause.js";
19
20
  import { aggregate } from "../object/aggregate.js";
@@ -146,6 +147,16 @@ export function createObjectSet(objectType, clientCtx, objectSet = resolveBaseOb
146
147
  objectSet: objectSet
147
148
  });
148
149
  },
150
+ asType: objectTypeDef => {
151
+ const existingMapping = clientCtx.asTypeInterfaceOrObjectMapping[objectTypeDef.apiName];
152
+ !(!existingMapping || existingMapping === objectTypeDef.type) ? process.env.NODE_ENV !== "production" ? invariant(false, `${objectTypeDef.apiName} was previously used as an ${existingMapping}, but now used as a ${objectTypeDef.type}.`) : invariant(false) : void 0;
153
+ clientCtx.asTypeInterfaceOrObjectMapping[objectTypeDef.apiName] = objectTypeDef.type;
154
+ return clientCtx.objectSetFactory(objectTypeDef, clientCtx, {
155
+ type: "asType",
156
+ objectSet: objectSet,
157
+ entityType: objectTypeDef.apiName
158
+ });
159
+ },
149
160
  $objectSetInternals: {
150
161
  def: objectType
151
162
  }
@@ -1 +1 @@
1
- {"version":3,"file":"createObjectSet.js","names":["createWithPropertiesObjectSet","modernToLegacyWhereClause","aggregate","fetchPageInternal","fetchPageWithErrorsInternal","fetchSingle","fetchSingleWithErrors","augmentRequestContext","resolveBaseObjectSetType","isWireObjectSet","ObjectSetListenerWebsocket","isObjectTypeDefinition","def","type","isObjectSet","o","objectSetDefinitions","get","getWireObjectSet","objectSet","WeakMap","createObjectSet","objectType","clientCtx","base","bind","globalThis","finalMethodCall","fetchPage","fetchPageWithErrors","where","clause","objectSetFactory","pivotTo","createSearchAround","union","objectSets","map","os","intersect","subtract","nearestNeighbors","query","numNeighbors","property","nearestNeighborsQuery","isTextQuery","propertyIdentifier","apiName","asyncIter","args","$nextPageToken","undefined","result","$pageSize","nextPageToken","obj","data","fetchOne","primaryKey","options","createWithPk","fetchOneWithErrors","subscribe","listener","opts","pendingSubscribe","getInstance","properties","unsubscribe","withProperties","definitionMap","Map","derivedProperties","key","Object","keys","derivedPropertyDefinition","$objectSetInternals","link","interfaceLink","set","objDef","ontologyProvider","getObjectDefinition","withPk","field","primaryKeyApiName","value"],"sources":["createObjectSet.ts"],"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 type {\n AsyncIterArgs,\n Augments,\n FetchPageResult,\n LinkedType,\n LinkNames,\n NullabilityAdherence,\n ObjectOrInterfaceDefinition,\n ObjectSet,\n ObjectSetArgs,\n ObjectTypeDefinition,\n Osdk,\n PrimaryKeyType,\n PropertyKeys,\n Result,\n SelectArg,\n SingleOsdkResult,\n} from \"@osdk/api\";\nimport type { MinimalObjectSet } from \"@osdk/api/unstable\";\nimport type {\n DerivedPropertyDefinition,\n ObjectSet as WireObjectSet,\n PropertyApiName,\n} from \"@osdk/foundry.ontologies\";\nimport { createWithPropertiesObjectSet } from \"../derivedProperties/createWithPropertiesObjectSet.js\";\nimport { modernToLegacyWhereClause } from \"../internal/conversions/modernToLegacyWhereClause.js\";\nimport type { MinimalClient } from \"../MinimalClientContext.js\";\nimport { aggregate } from \"../object/aggregate.js\";\nimport {\n fetchPageInternal,\n fetchPageWithErrorsInternal,\n} 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\";\n\nfunction isObjectTypeDefinition(\n def: ObjectOrInterfaceDefinition,\n): def is ObjectTypeDefinition {\n return def.type === \"object\";\n}\n\n/* @internal */\nexport function isObjectSet(o: any): o is ObjectSet<any> {\n return o != null && typeof o === \"object\"\n && isWireObjectSet(objectSetDefinitions.get(o));\n}\n\n/** @internal */\nexport function getWireObjectSet(\n objectSet: ObjectSet<any> | MinimalObjectSet<any>,\n): WireObjectSet {\n return objectSetDefinitions.get(objectSet)!;\n}\n\n/** @internal exported for internal use only */\nexport const objectSetDefinitions = new WeakMap<\n any,\n WireObjectSet\n>();\n\n/** @internal */\nexport function createObjectSet<Q extends ObjectOrInterfaceDefinition>(\n objectType: Q,\n clientCtx: MinimalClient,\n objectSet: WireObjectSet = resolveBaseObjectSetType(objectType),\n): ObjectSet<Q> {\n const base: ObjectSet<Q> = {\n aggregate: (aggregate<Q, any>).bind(\n globalThis,\n augmentRequestContext(clientCtx, _ => ({ finalMethodCall: \"aggregate\" })),\n objectType,\n objectSet,\n ) as ObjectSet<Q>[\"aggregate\"],\n\n fetchPage: fetchPageInternal.bind(\n globalThis,\n augmentRequestContext(clientCtx, _ => ({ finalMethodCall: \"fetchPage\" })),\n objectType,\n objectSet,\n ) as ObjectSet<Q>[\"fetchPage\"],\n\n fetchPageWithErrors: fetchPageWithErrorsInternal.bind(\n globalThis,\n augmentRequestContext(\n clientCtx,\n _ => ({ finalMethodCall: \"fetchPageWithErrors\" }),\n ),\n objectType,\n objectSet,\n ) as ObjectSet<Q>[\"fetchPageWithErrors\"],\n\n where: (clause) => {\n return clientCtx.objectSetFactory(objectType, clientCtx, {\n type: \"filter\",\n objectSet: objectSet,\n where: modernToLegacyWhereClause(clause, objectType),\n });\n },\n\n pivotTo: function<L extends LinkNames<Q>>(\n type: L,\n ): ObjectSet<LinkedType<Q, L>> {\n return createSearchAround(type)();\n },\n\n union: (...objectSets) => {\n return clientCtx.objectSetFactory(objectType, clientCtx, {\n type: \"union\",\n objectSets: [\n objectSet,\n ...objectSets.map(os => objectSetDefinitions.get(os)!),\n ],\n });\n },\n\n intersect: (...objectSets) => {\n return clientCtx.objectSetFactory(objectType, clientCtx, {\n type: \"intersect\",\n objectSets: [\n objectSet,\n ...objectSets.map(os => objectSetDefinitions.get(os)!),\n ],\n });\n },\n\n subtract: (...objectSets) => {\n return clientCtx.objectSetFactory(objectType, clientCtx, {\n type: \"subtract\",\n objectSets: [\n objectSet,\n ...objectSets.map(os => objectSetDefinitions.get(os)!),\n ],\n });\n },\n\n nearestNeighbors: (query, numNeighbors, property) => {\n const nearestNeighborsQuery = isTextQuery(query)\n ? { \"type\": \"text\" as const, \"value\": query }\n : { \"type\": \"vector\" as const, \"value\": query };\n return clientCtx.objectSetFactory(\n objectType,\n clientCtx,\n {\n type: \"nearestNeighbors\",\n objectSet,\n propertyIdentifier: {\n type: \"property\",\n apiName: property as PropertyApiName,\n },\n numNeighbors,\n query: nearestNeighborsQuery,\n },\n ) as ObjectSet<Q>;\n },\n\n asyncIter: async function*<\n L extends PropertyKeys<Q>,\n R extends boolean,\n const A extends Augments,\n S extends NullabilityAdherence = NullabilityAdherence.Default,\n T extends boolean = false,\n ORDER_BY_OPTIONS extends ObjectSetArgs.OrderByOptions<L> = never,\n >(\n args?: AsyncIterArgs<Q, L, R, A, S, T, never, ORDER_BY_OPTIONS>,\n ): AsyncIterableIterator<\n SingleOsdkResult<Q, L, R, S, {}, T, ORDER_BY_OPTIONS>\n > {\n let $nextPageToken: string | undefined = undefined;\n do {\n const result: FetchPageResult<\n Q,\n L,\n R,\n S,\n T,\n ORDER_BY_OPTIONS\n > = await fetchPageInternal(\n augmentRequestContext(\n clientCtx,\n _ => ({ finalMethodCall: \"asyncIter\" }),\n ),\n objectType,\n objectSet,\n { ...args, $pageSize: 10000, $nextPageToken },\n true,\n );\n $nextPageToken = result.nextPageToken;\n\n for (const obj of result.data) {\n yield obj as SingleOsdkResult<Q, L, R, S, {}, T, ORDER_BY_OPTIONS>;\n }\n } while ($nextPageToken != null);\n },\n\n fetchOne: (isObjectTypeDefinition(objectType)\n ? async <A extends SelectArg<Q>>(\n primaryKey: PrimaryKeyType<Q>,\n options: A,\n ) => {\n return await fetchSingle(\n augmentRequestContext(\n clientCtx,\n _ => ({ finalMethodCall: \"fetchOne\" }),\n ),\n objectType,\n options,\n await createWithPk(\n clientCtx,\n objectType,\n objectSet,\n primaryKey,\n ),\n ) as Osdk<Q>;\n }\n : undefined) as ObjectSet<Q>[\"fetchOne\"],\n\n fetchOneWithErrors: (isObjectTypeDefinition(objectType)\n ? async <A extends SelectArg<Q>>(\n primaryKey: Q extends ObjectTypeDefinition ? PrimaryKeyType<Q>\n : never,\n options: A,\n ) => {\n return await fetchSingleWithErrors(\n augmentRequestContext(\n clientCtx,\n _ => ({ finalMethodCall: \"fetchOneWithErrors\" }),\n ),\n objectType,\n options,\n await createWithPk(\n clientCtx,\n objectType,\n objectSet,\n primaryKey,\n ),\n ) as Result<Osdk<Q>>;\n }\n : undefined) as ObjectSet<Q>[\"fetchOneWithErrors\"],\n\n subscribe: (\n listener,\n opts,\n ) => {\n const pendingSubscribe = ObjectSetListenerWebsocket.getInstance(\n clientCtx,\n ).subscribe(\n objectType,\n objectSet,\n listener,\n opts?.properties,\n );\n\n return { unsubscribe: async () => (await pendingSubscribe)() };\n },\n\n withProperties: (clause) => {\n const definitionMap = new Map<any, DerivedPropertyDefinition>();\n\n const derivedProperties: Record<string, DerivedPropertyDefinition> = {};\n for (const key of Object.keys(clause)) {\n const derivedPropertyDefinition = clause\n [key](createWithPropertiesObjectSet(\n objectType,\n { type: \"methodInput\" },\n definitionMap,\n true,\n ));\n derivedProperties[key] = definitionMap.get(\n derivedPropertyDefinition,\n )!;\n }\n\n return clientCtx.objectSetFactory(\n objectType,\n clientCtx,\n {\n type: \"withProperties\",\n derivedProperties: derivedProperties,\n objectSet: objectSet,\n },\n );\n },\n\n $objectSetInternals: {\n def: objectType,\n },\n };\n\n function createSearchAround<L extends LinkNames<Q>>(link: L) {\n return () => {\n return clientCtx.objectSetFactory(\n objectType,\n clientCtx,\n objectType.type === \"object\"\n ? {\n type: \"searchAround\",\n objectSet,\n link,\n }\n : {\n type: \"interfaceLinkSearchAround\",\n objectSet,\n interfaceLink: link,\n },\n );\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 as ObjectSet<Q>;\n}\n\nasync function createWithPk(\n clientCtx: MinimalClient,\n objectType: ObjectTypeDefinition,\n objectSet: WireObjectSet,\n primaryKey: PrimaryKeyType<ObjectTypeDefinition>,\n) {\n const objDef = await clientCtx.ontologyProvider.getObjectDefinition(\n objectType.apiName,\n );\n\n const withPk: WireObjectSet = {\n type: \"filter\",\n objectSet: objectSet,\n where: {\n type: \"eq\",\n field: objDef.primaryKeyApiName,\n value: primaryKey,\n },\n };\n return withPk;\n}\n\nfunction isTextQuery(query: string | number[]): query is string {\n return typeof query === \"string\";\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"createObjectSet.js","names":["invariant","createWithPropertiesObjectSet","modernToLegacyWhereClause","aggregate","fetchPageInternal","fetchPageWithErrorsInternal","fetchSingle","fetchSingleWithErrors","augmentRequestContext","resolveBaseObjectSetType","isWireObjectSet","ObjectSetListenerWebsocket","isObjectTypeDefinition","def","type","isObjectSet","o","objectSetDefinitions","get","getWireObjectSet","objectSet","WeakMap","createObjectSet","objectType","clientCtx","base","bind","globalThis","finalMethodCall","fetchPage","fetchPageWithErrors","where","clause","objectSetFactory","pivotTo","createSearchAround","union","objectSets","map","os","intersect","subtract","nearestNeighbors","query","numNeighbors","property","nearestNeighborsQuery","isTextQuery","propertyIdentifier","apiName","asyncIter","args","$nextPageToken","undefined","result","$pageSize","nextPageToken","obj","data","fetchOne","primaryKey","options","createWithPk","fetchOneWithErrors","subscribe","listener","opts","pendingSubscribe","getInstance","properties","unsubscribe","withProperties","definitionMap","Map","derivedProperties","key","Object","keys","derivedPropertyDefinition","asType","objectTypeDef","existingMapping","asTypeInterfaceOrObjectMapping","process","env","NODE_ENV","entityType","$objectSetInternals","link","interfaceLink","set","objDef","ontologyProvider","getObjectDefinition","withPk","field","primaryKeyApiName","value"],"sources":["createObjectSet.ts"],"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 type {\n AsyncIterArgs,\n Augments,\n FetchPageResult,\n InterfaceDefinition,\n LinkedType,\n LinkNames,\n NullabilityAdherence,\n ObjectOrInterfaceDefinition,\n ObjectSet,\n ObjectSetArgs,\n ObjectTypeDefinition,\n Osdk,\n PrimaryKeyType,\n PropertyKeys,\n Result,\n SelectArg,\n SingleOsdkResult,\n} from \"@osdk/api\";\nimport type { MinimalObjectSet } from \"@osdk/api/unstable\";\nimport type {\n DerivedPropertyDefinition,\n ObjectSet as WireObjectSet,\n PropertyApiName,\n} from \"@osdk/foundry.ontologies\";\nimport invariant from \"tiny-invariant\";\nimport { createWithPropertiesObjectSet } from \"../derivedProperties/createWithPropertiesObjectSet.js\";\nimport { modernToLegacyWhereClause } from \"../internal/conversions/modernToLegacyWhereClause.js\";\nimport type { MinimalClient } from \"../MinimalClientContext.js\";\nimport { aggregate } from \"../object/aggregate.js\";\nimport {\n fetchPageInternal,\n fetchPageWithErrorsInternal,\n} 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\";\n\nfunction isObjectTypeDefinition(\n def: ObjectOrInterfaceDefinition,\n): def is ObjectTypeDefinition {\n return def.type === \"object\";\n}\n\n/* @internal */\nexport function isObjectSet(o: any): o is ObjectSet<any> {\n return o != null && typeof o === \"object\"\n && isWireObjectSet(objectSetDefinitions.get(o));\n}\n\n/** @internal */\nexport function getWireObjectSet(\n objectSet: ObjectSet<any> | MinimalObjectSet<any>,\n): WireObjectSet {\n return objectSetDefinitions.get(objectSet)!;\n}\n\n/** @internal exported for internal use only */\nexport const objectSetDefinitions = new WeakMap<\n any,\n WireObjectSet\n>();\n\n/** @internal */\nexport function createObjectSet<Q extends ObjectOrInterfaceDefinition>(\n objectType: Q,\n clientCtx: MinimalClient,\n objectSet: WireObjectSet = resolveBaseObjectSetType(objectType),\n): ObjectSet<Q> {\n const base: ObjectSet<Q> = {\n aggregate: (aggregate<Q, any>).bind(\n globalThis,\n augmentRequestContext(clientCtx, _ => ({ finalMethodCall: \"aggregate\" })),\n objectType,\n objectSet,\n ) as ObjectSet<Q>[\"aggregate\"],\n\n fetchPage: fetchPageInternal.bind(\n globalThis,\n augmentRequestContext(clientCtx, _ => ({ finalMethodCall: \"fetchPage\" })),\n objectType,\n objectSet,\n ) as ObjectSet<Q>[\"fetchPage\"],\n\n fetchPageWithErrors: fetchPageWithErrorsInternal.bind(\n globalThis,\n augmentRequestContext(\n clientCtx,\n _ => ({ finalMethodCall: \"fetchPageWithErrors\" }),\n ),\n objectType,\n objectSet,\n ) as ObjectSet<Q>[\"fetchPageWithErrors\"],\n\n where: (clause) => {\n return clientCtx.objectSetFactory(objectType, clientCtx, {\n type: \"filter\",\n objectSet: objectSet,\n where: modernToLegacyWhereClause(clause, objectType),\n });\n },\n\n pivotTo: function<L extends LinkNames<Q>>(\n type: L,\n ): ObjectSet<LinkedType<Q, L>> {\n return createSearchAround(type)();\n },\n\n union: (...objectSets) => {\n return clientCtx.objectSetFactory(objectType, clientCtx, {\n type: \"union\",\n objectSets: [\n objectSet,\n ...objectSets.map(os => objectSetDefinitions.get(os)!),\n ],\n });\n },\n\n intersect: (...objectSets) => {\n return clientCtx.objectSetFactory(objectType, clientCtx, {\n type: \"intersect\",\n objectSets: [\n objectSet,\n ...objectSets.map(os => objectSetDefinitions.get(os)!),\n ],\n });\n },\n\n subtract: (...objectSets) => {\n return clientCtx.objectSetFactory(objectType, clientCtx, {\n type: \"subtract\",\n objectSets: [\n objectSet,\n ...objectSets.map(os => objectSetDefinitions.get(os)!),\n ],\n });\n },\n\n nearestNeighbors: (query, numNeighbors, property) => {\n const nearestNeighborsQuery = isTextQuery(query)\n ? { \"type\": \"text\" as const, \"value\": query }\n : { \"type\": \"vector\" as const, \"value\": query };\n return clientCtx.objectSetFactory(\n objectType,\n clientCtx,\n {\n type: \"nearestNeighbors\",\n objectSet,\n propertyIdentifier: {\n type: \"property\",\n apiName: property as PropertyApiName,\n },\n numNeighbors,\n query: nearestNeighborsQuery,\n },\n ) as ObjectSet<Q>;\n },\n\n asyncIter: async function*<\n L extends PropertyKeys<Q>,\n R extends boolean,\n const A extends Augments,\n S extends NullabilityAdherence = NullabilityAdherence.Default,\n T extends boolean = false,\n ORDER_BY_OPTIONS extends ObjectSetArgs.OrderByOptions<L> = never,\n >(\n args?: AsyncIterArgs<Q, L, R, A, S, T, never, ORDER_BY_OPTIONS>,\n ): AsyncIterableIterator<\n SingleOsdkResult<Q, L, R, S, {}, T, ORDER_BY_OPTIONS>\n > {\n let $nextPageToken: string | undefined = undefined;\n do {\n const result: FetchPageResult<\n Q,\n L,\n R,\n S,\n T,\n ORDER_BY_OPTIONS\n > = await fetchPageInternal(\n augmentRequestContext(\n clientCtx,\n _ => ({ finalMethodCall: \"asyncIter\" }),\n ),\n objectType,\n objectSet,\n { ...args, $pageSize: 10000, $nextPageToken },\n true,\n );\n $nextPageToken = result.nextPageToken;\n\n for (const obj of result.data) {\n yield obj as SingleOsdkResult<Q, L, R, S, {}, T, ORDER_BY_OPTIONS>;\n }\n } while ($nextPageToken != null);\n },\n\n fetchOne: (isObjectTypeDefinition(objectType)\n ? async <A extends SelectArg<Q>>(\n primaryKey: PrimaryKeyType<Q>,\n options: A,\n ) => {\n return await fetchSingle(\n augmentRequestContext(\n clientCtx,\n _ => ({ finalMethodCall: \"fetchOne\" }),\n ),\n objectType,\n options,\n await createWithPk(\n clientCtx,\n objectType,\n objectSet,\n primaryKey,\n ),\n ) as Osdk<Q>;\n }\n : undefined) as ObjectSet<Q>[\"fetchOne\"],\n\n fetchOneWithErrors: (isObjectTypeDefinition(objectType)\n ? async <A extends SelectArg<Q>>(\n primaryKey: Q extends ObjectTypeDefinition ? PrimaryKeyType<Q>\n : never,\n options: A,\n ) => {\n return await fetchSingleWithErrors(\n augmentRequestContext(\n clientCtx,\n _ => ({ finalMethodCall: \"fetchOneWithErrors\" }),\n ),\n objectType,\n options,\n await createWithPk(\n clientCtx,\n objectType,\n objectSet,\n primaryKey,\n ),\n ) as Result<Osdk<Q>>;\n }\n : undefined) as ObjectSet<Q>[\"fetchOneWithErrors\"],\n\n subscribe: (\n listener,\n opts,\n ) => {\n const pendingSubscribe = ObjectSetListenerWebsocket.getInstance(\n clientCtx,\n ).subscribe(\n objectType,\n objectSet,\n listener,\n opts?.properties,\n );\n\n return { unsubscribe: async () => (await pendingSubscribe)() };\n },\n\n withProperties: (clause) => {\n const definitionMap = new Map<any, DerivedPropertyDefinition>();\n\n const derivedProperties: Record<string, DerivedPropertyDefinition> = {};\n for (const key of Object.keys(clause)) {\n const derivedPropertyDefinition = clause\n [key](createWithPropertiesObjectSet(\n objectType,\n { type: \"methodInput\" },\n definitionMap,\n true,\n ));\n derivedProperties[key] = definitionMap.get(\n derivedPropertyDefinition,\n )!;\n }\n\n return clientCtx.objectSetFactory(\n objectType,\n clientCtx,\n {\n type: \"withProperties\",\n derivedProperties: derivedProperties,\n objectSet: objectSet,\n },\n );\n },\n\n asType: (objectTypeDef: ObjectTypeDefinition | InterfaceDefinition) => {\n const existingMapping =\n clientCtx.asTypeInterfaceOrObjectMapping[objectTypeDef.apiName];\n invariant(\n !existingMapping || existingMapping === objectTypeDef.type,\n `${objectTypeDef.apiName} was previously used as an ${existingMapping}, but now used as a ${objectTypeDef.type}.`,\n );\n clientCtx.asTypeInterfaceOrObjectMapping[objectTypeDef.apiName] =\n objectTypeDef.type;\n\n return clientCtx.objectSetFactory(\n objectTypeDef,\n clientCtx,\n {\n type: \"asType\",\n objectSet: objectSet,\n entityType: objectTypeDef.apiName,\n },\n );\n },\n\n $objectSetInternals: {\n def: objectType,\n },\n };\n\n function createSearchAround<L extends LinkNames<Q>>(link: L) {\n return () => {\n return clientCtx.objectSetFactory(\n objectType,\n clientCtx,\n objectType.type === \"object\"\n ? {\n type: \"searchAround\",\n objectSet,\n link,\n }\n : {\n type: \"interfaceLinkSearchAround\",\n objectSet,\n interfaceLink: link,\n },\n );\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 as ObjectSet<Q>;\n}\n\nasync function createWithPk(\n clientCtx: MinimalClient,\n objectType: ObjectTypeDefinition,\n objectSet: WireObjectSet,\n primaryKey: PrimaryKeyType<ObjectTypeDefinition>,\n) {\n const objDef = await clientCtx.ontologyProvider.getObjectDefinition(\n objectType.apiName,\n );\n\n const withPk: WireObjectSet = {\n type: \"filter\",\n objectSet: objectSet,\n where: {\n type: \"eq\",\n field: objDef.primaryKeyApiName,\n value: primaryKey,\n },\n };\n return withPk;\n}\n\nfunction isTextQuery(query: string | number[]): query is string {\n return typeof query === \"string\";\n}\n"],"mappings":"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","ignoreList":[]}
@@ -126,7 +126,8 @@ export function createClientMockHelper() {
126
126
  fetch: vitest.fn(),
127
127
  clientCacheKey: {},
128
128
  requestContext: {},
129
- logger
129
+ logger,
130
+ asTypeInterfaceOrObjectMapping: {}
130
131
  };
131
132
  client.fetchMetadata = vitest.fn();
132
133
  return {