@osdk/client 2.5.0-beta.3 → 2.5.0-beta.5

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 (212) hide show
  1. package/CHANGELOG.md +29 -4
  2. package/build/browser/index.js +2 -0
  3. package/build/browser/index.js.map +1 -1
  4. package/build/browser/object/Cache.test.js +1 -1
  5. package/build/browser/object/Cache.test.js.map +1 -1
  6. package/build/browser/object/convertWireToOsdkObjects/OsdkCustomInspectPrototype.js +1 -0
  7. package/build/browser/object/convertWireToOsdkObjects/OsdkCustomInspectPrototype.js.map +1 -1
  8. package/build/browser/object/convertWireToOsdkObjects/createOsdkInterface.js +6 -0
  9. package/build/browser/object/convertWireToOsdkObjects/createOsdkInterface.js.map +1 -1
  10. package/build/browser/object/convertWireToOsdkObjects/getDollarLink.js +20 -1
  11. package/build/browser/object/convertWireToOsdkObjects/getDollarLink.js.map +1 -1
  12. package/build/browser/object/convertWireToOsdkObjects.test.js +2 -0
  13. package/build/browser/object/convertWireToOsdkObjects.test.js.map +1 -1
  14. package/build/browser/observable/internal/CacheKeys.js.map +1 -1
  15. package/build/browser/observable/internal/Changes.js.map +1 -1
  16. package/build/browser/observable/internal/KnownCacheKey.js.map +1 -1
  17. package/build/browser/observable/internal/OrderByCanonicalizer.js +1 -37
  18. package/build/browser/observable/internal/OrderByCanonicalizer.js.map +1 -1
  19. package/build/browser/observable/internal/Store.js +1 -1
  20. package/build/browser/observable/internal/Store.js.map +1 -1
  21. package/build/browser/observable/internal/Store.test.js +1 -1
  22. package/build/browser/observable/internal/Store.test.js.map +1 -1
  23. package/build/browser/observable/internal/WeakRefTrie.js +61 -0
  24. package/build/browser/observable/internal/WeakRefTrie.js.map +1 -0
  25. package/build/browser/observable/internal/actions/ActionApplication.js.map +1 -0
  26. package/build/browser/observable/internal/{OptimisticJob.js → actions/OptimisticJob.js} +2 -2
  27. package/build/browser/observable/internal/actions/OptimisticJob.js.map +1 -0
  28. package/build/browser/observable/internal/base-list/BaseCollectionQuery.js.map +1 -0
  29. package/build/browser/observable/internal/base-list/BaseListQuery.js +414 -0
  30. package/build/browser/observable/internal/base-list/BaseListQuery.js.map +1 -0
  31. package/build/browser/observable/internal/base-list/createCollectionConnectable.js.map +1 -0
  32. package/build/{esm/observable/internal → browser/observable/internal/base-list}/createCollectionConnectable.test.js +1 -1
  33. package/build/browser/observable/internal/base-list/createCollectionConnectable.test.js.map +1 -0
  34. package/build/browser/observable/internal/base-list/removeDuplicates.js.map +1 -0
  35. package/build/browser/observable/internal/links/SpecificLinkCacheKey.js.map +1 -1
  36. package/build/browser/observable/internal/links/SpecificLinkQuery.js +1 -1
  37. package/build/browser/observable/internal/links/SpecificLinkQuery.js.map +1 -1
  38. package/build/browser/observable/internal/{ListCacheKey.js.map → list/ListCacheKey.js.map} +1 -1
  39. package/build/browser/observable/internal/{ListQuery.js → list/ListQuery.js} +7 -416
  40. package/build/browser/observable/internal/list/ListQuery.js.map +1 -0
  41. package/build/browser/observable/internal/list/ListQueryOptions.js +2 -0
  42. package/build/browser/observable/internal/list/ListQueryOptions.js.map +1 -0
  43. package/build/browser/observable/internal/list/ListsHelper.js +1 -1
  44. package/build/browser/observable/internal/list/ListsHelper.js.map +1 -1
  45. package/build/browser/observable/internal/object/ObjectCacheKey.js +2 -0
  46. package/build/browser/observable/internal/object/ObjectCacheKey.js.map +1 -0
  47. package/build/browser/observable/internal/{ObjectQuery.js → object/ObjectQuery.js} +4 -20
  48. package/build/browser/observable/internal/object/ObjectQuery.js.map +1 -0
  49. package/build/browser/observable/internal/object/ObjectsHelper.js +15 -1
  50. package/build/browser/observable/internal/object/ObjectsHelper.js.map +1 -1
  51. package/build/browser/observable/internal/sorting/SortingStrategy.js.map +1 -1
  52. package/build/browser/observable/internal/testUtils/invalidateList.js.map +1 -1
  53. package/build/browser/observable/internal/testUtils.js +1 -2
  54. package/build/browser/observable/internal/testUtils.js.map +1 -1
  55. package/build/browser/queries/applyQuery.js +1 -1
  56. package/build/browser/queries/applyQuery.js.map +1 -1
  57. package/build/browser/util/UserAgent.js +2 -2
  58. package/build/browser/util/extractObjectOrInterfaceType.js +9 -1
  59. package/build/browser/util/extractObjectOrInterfaceType.js.map +1 -1
  60. package/build/browser/util/extractObjectOrInterfaceType.test.js +2 -2
  61. package/build/browser/util/extractObjectOrInterfaceType.test.js.map +1 -1
  62. package/build/cjs/{chunk-BL56QBYG.cjs → chunk-ELAA4C2C.cjs} +29 -17
  63. package/build/cjs/chunk-ELAA4C2C.cjs.map +1 -0
  64. package/build/cjs/{chunk-AOGMSVFN.cjs → chunk-KCMGIMVC.cjs} +91 -69
  65. package/build/cjs/chunk-KCMGIMVC.cjs.map +1 -0
  66. package/build/cjs/index.cjs +7 -7
  67. package/build/cjs/public/internal.cjs +8 -8
  68. package/build/cjs/public/unstable-do-not-use.cjs +568 -572
  69. package/build/cjs/public/unstable-do-not-use.cjs.map +1 -1
  70. package/build/esm/index.js +2 -0
  71. package/build/esm/index.js.map +1 -1
  72. package/build/esm/object/Cache.test.js +1 -1
  73. package/build/esm/object/Cache.test.js.map +1 -1
  74. package/build/esm/object/convertWireToOsdkObjects/OsdkCustomInspectPrototype.js +1 -0
  75. package/build/esm/object/convertWireToOsdkObjects/OsdkCustomInspectPrototype.js.map +1 -1
  76. package/build/esm/object/convertWireToOsdkObjects/createOsdkInterface.js +6 -0
  77. package/build/esm/object/convertWireToOsdkObjects/createOsdkInterface.js.map +1 -1
  78. package/build/esm/object/convertWireToOsdkObjects/getDollarLink.js +20 -1
  79. package/build/esm/object/convertWireToOsdkObjects/getDollarLink.js.map +1 -1
  80. package/build/esm/object/convertWireToOsdkObjects.test.js +2 -0
  81. package/build/esm/object/convertWireToOsdkObjects.test.js.map +1 -1
  82. package/build/esm/observable/internal/CacheKeys.js.map +1 -1
  83. package/build/esm/observable/internal/Changes.js.map +1 -1
  84. package/build/esm/observable/internal/KnownCacheKey.js.map +1 -1
  85. package/build/esm/observable/internal/OrderByCanonicalizer.js +1 -37
  86. package/build/esm/observable/internal/OrderByCanonicalizer.js.map +1 -1
  87. package/build/esm/observable/internal/Store.js +1 -1
  88. package/build/esm/observable/internal/Store.js.map +1 -1
  89. package/build/esm/observable/internal/Store.test.js +1 -1
  90. package/build/esm/observable/internal/Store.test.js.map +1 -1
  91. package/build/esm/observable/internal/WeakRefTrie.js +61 -0
  92. package/build/esm/observable/internal/WeakRefTrie.js.map +1 -0
  93. package/build/esm/observable/internal/actions/ActionApplication.js.map +1 -0
  94. package/build/esm/observable/internal/{OptimisticJob.js → actions/OptimisticJob.js} +2 -2
  95. package/build/esm/observable/internal/actions/OptimisticJob.js.map +1 -0
  96. package/build/esm/observable/internal/base-list/BaseCollectionQuery.js.map +1 -0
  97. package/build/esm/observable/internal/base-list/BaseListQuery.js +414 -0
  98. package/build/esm/observable/internal/base-list/BaseListQuery.js.map +1 -0
  99. package/build/esm/observable/internal/base-list/createCollectionConnectable.js.map +1 -0
  100. package/build/{browser/observable/internal → esm/observable/internal/base-list}/createCollectionConnectable.test.js +1 -1
  101. package/build/esm/observable/internal/base-list/createCollectionConnectable.test.js.map +1 -0
  102. package/build/esm/observable/internal/base-list/removeDuplicates.js.map +1 -0
  103. package/build/esm/observable/internal/links/SpecificLinkCacheKey.js.map +1 -1
  104. package/build/esm/observable/internal/links/SpecificLinkQuery.js +1 -1
  105. package/build/esm/observable/internal/links/SpecificLinkQuery.js.map +1 -1
  106. package/build/esm/observable/internal/{ListCacheKey.js.map → list/ListCacheKey.js.map} +1 -1
  107. package/build/esm/observable/internal/{ListQuery.js → list/ListQuery.js} +7 -416
  108. package/build/esm/observable/internal/list/ListQuery.js.map +1 -0
  109. package/build/esm/observable/internal/list/ListQueryOptions.js +2 -0
  110. package/build/esm/observable/internal/list/ListQueryOptions.js.map +1 -0
  111. package/build/esm/observable/internal/list/ListsHelper.js +1 -1
  112. package/build/esm/observable/internal/list/ListsHelper.js.map +1 -1
  113. package/build/esm/observable/internal/object/ObjectCacheKey.js +2 -0
  114. package/build/esm/observable/internal/object/ObjectCacheKey.js.map +1 -0
  115. package/build/esm/observable/internal/{ObjectQuery.js → object/ObjectQuery.js} +4 -20
  116. package/build/esm/observable/internal/object/ObjectQuery.js.map +1 -0
  117. package/build/esm/observable/internal/object/ObjectsHelper.js +15 -1
  118. package/build/esm/observable/internal/object/ObjectsHelper.js.map +1 -1
  119. package/build/esm/observable/internal/sorting/SortingStrategy.js.map +1 -1
  120. package/build/esm/observable/internal/testUtils/invalidateList.js.map +1 -1
  121. package/build/esm/observable/internal/testUtils.js +1 -2
  122. package/build/esm/observable/internal/testUtils.js.map +1 -1
  123. package/build/esm/queries/applyQuery.js +1 -1
  124. package/build/esm/queries/applyQuery.js.map +1 -1
  125. package/build/esm/util/UserAgent.js +2 -2
  126. package/build/esm/util/extractObjectOrInterfaceType.js +9 -1
  127. package/build/esm/util/extractObjectOrInterfaceType.js.map +1 -1
  128. package/build/esm/util/extractObjectOrInterfaceType.test.js +2 -2
  129. package/build/esm/util/extractObjectOrInterfaceType.test.js.map +1 -1
  130. package/build/types/index.d.ts +1 -1
  131. package/build/types/index.d.ts.map +1 -1
  132. package/build/types/observable/internal/Changes.d.ts +2 -2
  133. package/build/types/observable/internal/Changes.d.ts.map +1 -1
  134. package/build/types/observable/internal/KnownCacheKey.d.ts +2 -2
  135. package/build/types/observable/internal/KnownCacheKey.d.ts.map +1 -1
  136. package/build/types/observable/internal/OrderByCanonicalizer.d.ts +0 -7
  137. package/build/types/observable/internal/OrderByCanonicalizer.d.ts.map +1 -1
  138. package/build/types/observable/internal/WeakRefTrie.d.ts +13 -0
  139. package/build/types/observable/internal/WeakRefTrie.d.ts.map +1 -0
  140. package/build/types/observable/internal/{ActionApplication.d.ts → actions/ActionApplication.d.ts} +2 -2
  141. package/build/types/observable/internal/{ActionApplication.d.ts.map → actions/ActionApplication.d.ts.map} +1 -1
  142. package/build/types/observable/internal/{OptimisticJob.d.ts → actions/OptimisticJob.d.ts} +4 -4
  143. package/build/types/observable/internal/actions/OptimisticJob.d.ts.map +1 -0
  144. package/build/types/observable/internal/{BaseCollectionQuery.d.ts → base-list/BaseCollectionQuery.d.ts} +4 -4
  145. package/build/types/observable/internal/base-list/BaseCollectionQuery.d.ts.map +1 -0
  146. package/build/types/observable/internal/{ListQuery.d.ts → base-list/BaseListQuery.d.ts} +8 -91
  147. package/build/types/observable/internal/base-list/BaseListQuery.d.ts.map +1 -0
  148. package/build/types/observable/internal/{createCollectionConnectable.d.ts → base-list/createCollectionConnectable.d.ts} +3 -3
  149. package/build/types/observable/internal/base-list/createCollectionConnectable.d.ts.map +1 -0
  150. package/build/types/observable/internal/base-list/createCollectionConnectable.test.d.ts.map +1 -0
  151. package/build/types/observable/internal/{removeDuplicates.d.ts → base-list/removeDuplicates.d.ts} +2 -2
  152. package/build/types/observable/internal/base-list/removeDuplicates.d.ts.map +1 -0
  153. package/build/types/observable/internal/links/SpecificLinkCacheKey.d.ts +1 -1
  154. package/build/types/observable/internal/links/SpecificLinkCacheKey.d.ts.map +1 -1
  155. package/build/types/observable/internal/links/SpecificLinkQuery.d.ts +1 -1
  156. package/build/types/observable/internal/links/SpecificLinkQuery.d.ts.map +1 -1
  157. package/build/types/observable/internal/{ListCacheKey.d.ts → list/ListCacheKey.d.ts} +4 -4
  158. package/build/types/observable/internal/list/ListCacheKey.d.ts.map +1 -0
  159. package/build/types/observable/internal/list/ListQuery.d.ts +73 -0
  160. package/build/types/observable/internal/list/ListQuery.d.ts.map +1 -0
  161. package/build/types/observable/internal/list/ListQueryOptions.d.ts +4 -0
  162. package/build/types/observable/internal/list/ListQueryOptions.d.ts.map +1 -0
  163. package/build/types/observable/internal/list/ListsHelper.d.ts +1 -1
  164. package/build/types/observable/internal/list/ListsHelper.d.ts.map +1 -1
  165. package/build/types/observable/internal/object/ObjectCacheKey.d.ts +5 -0
  166. package/build/types/observable/internal/object/ObjectCacheKey.d.ts.map +1 -0
  167. package/build/types/observable/internal/{ObjectQuery.d.ts → object/ObjectQuery.d.ts} +8 -10
  168. package/build/types/observable/internal/object/ObjectQuery.d.ts.map +1 -0
  169. package/build/types/observable/internal/object/ObjectsHelper.d.ts +1 -1
  170. package/build/types/observable/internal/object/ObjectsHelper.d.ts.map +1 -1
  171. package/build/types/observable/internal/sorting/SortingStrategy.d.ts +1 -1
  172. package/build/types/observable/internal/sorting/SortingStrategy.d.ts.map +1 -1
  173. package/build/types/observable/internal/testUtils.d.ts +1 -1
  174. package/build/types/observable/internal/testUtils.d.ts.map +1 -1
  175. package/package.json +23 -23
  176. package/build/browser/observable/internal/ActionApplication.js.map +0 -1
  177. package/build/browser/observable/internal/BaseCollectionQuery.js.map +0 -1
  178. package/build/browser/observable/internal/ListQuery.js.map +0 -1
  179. package/build/browser/observable/internal/ObjectQuery.js.map +0 -1
  180. package/build/browser/observable/internal/OptimisticJob.js.map +0 -1
  181. package/build/browser/observable/internal/createCollectionConnectable.js.map +0 -1
  182. package/build/browser/observable/internal/createCollectionConnectable.test.js.map +0 -1
  183. package/build/browser/observable/internal/removeDuplicates.js.map +0 -1
  184. package/build/cjs/chunk-AOGMSVFN.cjs.map +0 -1
  185. package/build/cjs/chunk-BL56QBYG.cjs.map +0 -1
  186. package/build/esm/observable/internal/ActionApplication.js.map +0 -1
  187. package/build/esm/observable/internal/BaseCollectionQuery.js.map +0 -1
  188. package/build/esm/observable/internal/ListQuery.js.map +0 -1
  189. package/build/esm/observable/internal/ObjectQuery.js.map +0 -1
  190. package/build/esm/observable/internal/OptimisticJob.js.map +0 -1
  191. package/build/esm/observable/internal/createCollectionConnectable.js.map +0 -1
  192. package/build/esm/observable/internal/createCollectionConnectable.test.js.map +0 -1
  193. package/build/esm/observable/internal/removeDuplicates.js.map +0 -1
  194. package/build/types/observable/internal/BaseCollectionQuery.d.ts.map +0 -1
  195. package/build/types/observable/internal/ListCacheKey.d.ts.map +0 -1
  196. package/build/types/observable/internal/ListQuery.d.ts.map +0 -1
  197. package/build/types/observable/internal/ObjectQuery.d.ts.map +0 -1
  198. package/build/types/observable/internal/OptimisticJob.d.ts.map +0 -1
  199. package/build/types/observable/internal/createCollectionConnectable.d.ts.map +0 -1
  200. package/build/types/observable/internal/createCollectionConnectable.test.d.ts.map +0 -1
  201. package/build/types/observable/internal/removeDuplicates.d.ts.map +0 -1
  202. /package/build/browser/observable/internal/{ActionApplication.js → actions/ActionApplication.js} +0 -0
  203. /package/build/browser/observable/internal/{BaseCollectionQuery.js → base-list/BaseCollectionQuery.js} +0 -0
  204. /package/build/browser/observable/internal/{createCollectionConnectable.js → base-list/createCollectionConnectable.js} +0 -0
  205. /package/build/browser/observable/internal/{removeDuplicates.js → base-list/removeDuplicates.js} +0 -0
  206. /package/build/browser/observable/internal/{ListCacheKey.js → list/ListCacheKey.js} +0 -0
  207. /package/build/esm/observable/internal/{ActionApplication.js → actions/ActionApplication.js} +0 -0
  208. /package/build/esm/observable/internal/{BaseCollectionQuery.js → base-list/BaseCollectionQuery.js} +0 -0
  209. /package/build/esm/observable/internal/{createCollectionConnectable.js → base-list/createCollectionConnectable.js} +0 -0
  210. /package/build/esm/observable/internal/{removeDuplicates.js → base-list/removeDuplicates.js} +0 -0
  211. /package/build/esm/observable/internal/{ListCacheKey.js → list/ListCacheKey.js} +0 -0
  212. /package/build/types/observable/internal/{createCollectionConnectable.test.d.ts → base-list/createCollectionConnectable.test.d.ts} +0 -0
@@ -59,6 +59,14 @@ export async function extractObjectOrInterfaceType(clientCtx, objectSet) {
59
59
  case "nearestNeighbors":
60
60
  return extractObjectOrInterfaceType(clientCtx, objectSet.objectSet);
61
61
  case "intersect":
62
+ {
63
+ const objectSets = objectSet.objectSets;
64
+ const objectSetTypes = await Promise.all(objectSets.map(os => extractObjectOrInterfaceType(clientCtx, os)));
65
+ const filteredObjectTypes = objectSetTypes.filter(Boolean);
66
+ const firstInterfaceType = filteredObjectTypes.find(val => val?.type === "interface");
67
+ !firstInterfaceType ? process.env.NODE_ENV !== "production" ? invariant(false, `Missing interface type in intersect objectset scope'`) : invariant(false) : void 0;
68
+ return firstInterfaceType;
69
+ }
62
70
  case "subtract":
63
71
  case "union":
64
72
  const objectSets = objectSet.objectSets;
@@ -67,7 +75,7 @@ export async function extractObjectOrInterfaceType(clientCtx, objectSet) {
67
75
  const firstObjectType = filteredObjectTypes[0];
68
76
  !filteredObjectTypes.every(val => {
69
77
  return val?.apiName === firstObjectType?.apiName && val?.type === firstObjectType?.type;
70
- }) ? process.env.NODE_ENV !== "production" ? invariant(false, "Can only have one object type when doing intersects, subtract, union") : invariant(false) : void 0;
78
+ }) ? process.env.NODE_ENV !== "production" ? invariant(false, "Can only have one object type when doing subtract, union") : invariant(false) : void 0;
71
79
  return filteredObjectTypes[0];
72
80
  case "static":
73
81
  case "reference":
@@ -1 +1 @@
1
- {"version":3,"file":"extractObjectOrInterfaceType.js","names":["invariant","extractObjectOrInterfaceType","clientCtx","objectSet","type","def","undefined","objOrInterfaceDef","ontologyProvider","getObjectDefinition","apiName","getInterfaceDefinition","linkDef","links","link","process","env","NODE_ENV","targetType","targetTypeApiName","objectType","interfaceType","objectSets","objectSetTypes","Promise","all","map","os","filteredObjectTypes","filter","Boolean","firstObjectType","every","val","interfaceLink"],"sources":["extractObjectOrInterfaceType.ts"],"sourcesContent":["/*\n * Copyright 2025 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport type { ObjectOrInterfaceDefinition } from \"@osdk/api\";\nimport type { ObjectSet } from \"@osdk/foundry.ontologies\";\nimport invariant from \"tiny-invariant\";\nimport type { MinimalClient } from \"../MinimalClientContext.js\";\n\n/* @internal\n* Returns the resultant interface or object type of the object set\n*/\nexport async function extractObjectOrInterfaceType(\n clientCtx: MinimalClient,\n objectSet: ObjectSet,\n): Promise<\n ObjectOrInterfaceDefinition | undefined\n> {\n switch (objectSet.type) {\n case \"searchAround\": {\n const def = await extractObjectOrInterfaceType(\n clientCtx,\n objectSet.objectSet,\n );\n if (def === undefined) {\n return undefined;\n }\n const objOrInterfaceDef = def.type === \"object\"\n ? await clientCtx.ontologyProvider.getObjectDefinition(\n def.apiName,\n )\n : await clientCtx.ontologyProvider.getInterfaceDefinition(\n def.apiName,\n );\n const linkDef = objOrInterfaceDef.links[objectSet.link];\n invariant(linkDef, `Missing link definition for '${objectSet.link}'`);\n\n return objOrInterfaceDef.type === \"object\"\n ? {\n apiName: objOrInterfaceDef.links[objectSet.link].targetType,\n type: \"object\",\n }\n : {\n apiName: objOrInterfaceDef.links[objectSet.link].targetTypeApiName,\n type: objOrInterfaceDef.links[objectSet.link].targetType,\n };\n }\n case \"withProperties\": {\n return extractObjectOrInterfaceType(\n clientCtx,\n objectSet.objectSet,\n );\n }\n case \"methodInput\":\n return undefined;\n case \"base\":\n return { type: \"object\", apiName: objectSet.objectType };\n case \"interfaceBase\":\n return { type: \"interface\", apiName: objectSet.interfaceType };\n case \"filter\":\n case \"asBaseObjectTypes\":\n case \"asType\":\n case \"nearestNeighbors\":\n return extractObjectOrInterfaceType(\n clientCtx,\n objectSet.objectSet,\n );\n case \"intersect\":\n case \"subtract\":\n case \"union\":\n const objectSets = objectSet.objectSets;\n const objectSetTypes = await Promise.all(\n objectSets.map((os) =>\n extractObjectOrInterfaceType(\n clientCtx,\n os,\n )\n ),\n );\n\n const filteredObjectTypes = objectSetTypes.filter(Boolean);\n const firstObjectType = filteredObjectTypes[0];\n invariant(\n filteredObjectTypes.every(val => {\n return val?.apiName === firstObjectType?.apiName\n && val?.type === firstObjectType?.type;\n }),\n \"Can only have one object type when doing intersects, subtract, union\",\n );\n\n return filteredObjectTypes[0];\n case \"static\":\n case \"reference\":\n // Static and reference object sets are always intersected with a base object set, so we can just return undefined.\n return undefined;\n case \"interfaceLinkSearchAround\":\n const def = await extractObjectOrInterfaceType(\n clientCtx,\n objectSet.objectSet,\n );\n if (def === undefined) {\n return undefined;\n }\n const objOrInterfaceDef = def.type === \"object\"\n ? await clientCtx.ontologyProvider.getObjectDefinition(\n def.apiName,\n )\n : await clientCtx.ontologyProvider.getInterfaceDefinition(\n def.apiName,\n );\n const linkDef = objOrInterfaceDef.links[objectSet.interfaceLink];\n invariant(\n linkDef,\n `Missing link definition for '${objectSet.interfaceLink}'`,\n );\n return objOrInterfaceDef.type === \"object\"\n ? {\n apiName: objOrInterfaceDef.links[objectSet.interfaceLink].targetType,\n type: \"object\",\n }\n : {\n apiName:\n objOrInterfaceDef.links[objectSet.interfaceLink].targetTypeApiName,\n type: objOrInterfaceDef.links[objectSet.interfaceLink].targetType,\n };\n // We don't have to worry about new object sets being added and doing a runtime break and breaking people since the OSDK is always constructing these.\n default:\n const _: never = objectSet;\n invariant(\n false,\n `Unsupported object set type for deriving object or interface type,`,\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"extractObjectOrInterfaceType.js","names":["invariant","extractObjectOrInterfaceType","clientCtx","objectSet","type","def","undefined","objOrInterfaceDef","ontologyProvider","getObjectDefinition","apiName","getInterfaceDefinition","linkDef","links","link","process","env","NODE_ENV","targetType","targetTypeApiName","objectType","interfaceType","objectSets","objectSetTypes","Promise","all","map","os","filteredObjectTypes","filter","Boolean","firstInterfaceType","find","val","firstObjectType","every","interfaceLink"],"sources":["extractObjectOrInterfaceType.ts"],"sourcesContent":["/*\n * Copyright 2025 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport type { ObjectOrInterfaceDefinition } from \"@osdk/api\";\nimport type { ObjectSet } from \"@osdk/foundry.ontologies\";\nimport invariant from \"tiny-invariant\";\nimport type { MinimalClient } from \"../MinimalClientContext.js\";\n\n/* @internal\n* Returns the resultant interface or object type of the object set\n*/\nexport async function extractObjectOrInterfaceType(\n clientCtx: MinimalClient,\n objectSet: ObjectSet,\n): Promise<\n ObjectOrInterfaceDefinition | undefined\n> {\n switch (objectSet.type) {\n case \"searchAround\": {\n const def = await extractObjectOrInterfaceType(\n clientCtx,\n objectSet.objectSet,\n );\n if (def === undefined) {\n return undefined;\n }\n const objOrInterfaceDef = def.type === \"object\"\n ? await clientCtx.ontologyProvider.getObjectDefinition(\n def.apiName,\n )\n : await clientCtx.ontologyProvider.getInterfaceDefinition(\n def.apiName,\n );\n const linkDef = objOrInterfaceDef.links[objectSet.link];\n invariant(linkDef, `Missing link definition for '${objectSet.link}'`);\n\n return objOrInterfaceDef.type === \"object\"\n ? {\n apiName: objOrInterfaceDef.links[objectSet.link].targetType,\n type: \"object\",\n }\n : {\n apiName: objOrInterfaceDef.links[objectSet.link].targetTypeApiName,\n type: objOrInterfaceDef.links[objectSet.link].targetType,\n };\n }\n case \"withProperties\": {\n return extractObjectOrInterfaceType(\n clientCtx,\n objectSet.objectSet,\n );\n }\n case \"methodInput\":\n return undefined;\n case \"base\":\n return { type: \"object\", apiName: objectSet.objectType };\n case \"interfaceBase\":\n return { type: \"interface\", apiName: objectSet.interfaceType };\n case \"filter\":\n case \"asBaseObjectTypes\":\n case \"asType\":\n case \"nearestNeighbors\":\n return extractObjectOrInterfaceType(\n clientCtx,\n objectSet.objectSet,\n );\n case \"intersect\": {\n const objectSets = objectSet.objectSets;\n const objectSetTypes = await Promise.all(\n objectSets.map((os) =>\n extractObjectOrInterfaceType(\n clientCtx,\n os,\n )\n ),\n );\n\n const filteredObjectTypes = objectSetTypes.filter(Boolean);\n const firstInterfaceType = filteredObjectTypes.find(val =>\n val?.type === \"interface\"\n );\n\n invariant(\n firstInterfaceType,\n `Missing interface type in intersect objectset scope'`,\n );\n return firstInterfaceType;\n }\n case \"subtract\":\n case \"union\":\n const objectSets = objectSet.objectSets;\n const objectSetTypes = await Promise.all(\n objectSets.map((os) =>\n extractObjectOrInterfaceType(\n clientCtx,\n os,\n )\n ),\n );\n\n const filteredObjectTypes = objectSetTypes.filter(Boolean);\n const firstObjectType = filteredObjectTypes[0];\n invariant(\n filteredObjectTypes.every(val => {\n return val?.apiName === firstObjectType?.apiName\n && val?.type === firstObjectType?.type;\n }),\n \"Can only have one object type when doing subtract, union\",\n );\n\n return filteredObjectTypes[0];\n case \"static\":\n case \"reference\":\n // Static and reference object sets are always intersected with a base object set, so we can just return undefined.\n return undefined;\n case \"interfaceLinkSearchAround\":\n const def = await extractObjectOrInterfaceType(\n clientCtx,\n objectSet.objectSet,\n );\n if (def === undefined) {\n return undefined;\n }\n const objOrInterfaceDef = def.type === \"object\"\n ? await clientCtx.ontologyProvider.getObjectDefinition(\n def.apiName,\n )\n : await clientCtx.ontologyProvider.getInterfaceDefinition(\n def.apiName,\n );\n const linkDef = objOrInterfaceDef.links[objectSet.interfaceLink];\n invariant(\n linkDef,\n `Missing link definition for '${objectSet.interfaceLink}'`,\n );\n return objOrInterfaceDef.type === \"object\"\n ? {\n apiName: objOrInterfaceDef.links[objectSet.interfaceLink].targetType,\n type: \"object\",\n }\n : {\n apiName:\n objOrInterfaceDef.links[objectSet.interfaceLink].targetTypeApiName,\n type: objOrInterfaceDef.links[objectSet.interfaceLink].targetType,\n };\n // We don't have to worry about new object sets being added and doing a runtime break and breaking people since the OSDK is always constructing these.\n default:\n const _: never = objectSet;\n invariant(\n false,\n `Unsupported object set type for deriving object or interface type,`,\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -117,7 +117,7 @@ describe("extractRdpDefinition", () => {
117
117
  });
118
118
  it("throes with intersect, subtract, or union having different child object types", async () => {
119
119
  await expect(extractObjectOrInterfaceType(mockClientCtx, {
120
- type: "intersect",
120
+ type: "union",
121
121
  objectSets: [{
122
122
  type: "interfaceLinkSearchAround",
123
123
  objectSet: {
@@ -129,7 +129,7 @@ describe("extractRdpDefinition", () => {
129
129
  type: "interfaceBase",
130
130
  interfaceType: "interface1"
131
131
  }]
132
- })).rejects.toThrowErrorMatchingInlineSnapshot(`[Error: Invariant failed: Can only have one object type when doing intersects, subtract, union]`);
132
+ })).rejects.toThrowErrorMatchingInlineSnapshot(`[Error: Invariant failed: Can only have one object type when doing subtract, union]`);
133
133
  });
134
134
  });
135
135
  //# sourceMappingURL=extractObjectOrInterfaceType.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"extractObjectOrInterfaceType.test.js","names":["describe","expect","it","extractObjectOrInterfaceType","mockClientCtx","ontologyProvider","getObjectDefinition","objectType","links","testLink1","targetType","testLink2","properties","testProperty","type","Error","getInterfaceDefinition","interfaceType","linkToInterface2","targetTypeApiName","multiplicity","linkToInterface1","objectSetInterfaceToInterface","objectSet","interfaceLink","result","toEqual","apiName","objectSets","rejects","toThrowErrorMatchingInlineSnapshot"],"sources":["extractObjectOrInterfaceType.test.ts"],"sourcesContent":["/*\n * Copyright 2025 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport type { InterfaceMetadata, ObjectMetadata } from \"@osdk/api\";\nimport type { ObjectSet } from \"@osdk/foundry.ontologies\";\nimport { describe, expect, it } from \"vitest\";\nimport type { MinimalClient } from \"../MinimalClientContext.js\";\nimport { extractObjectOrInterfaceType } from \"./extractObjectOrInterfaceType.js\";\n\ndescribe(\"extractRdpDefinition\", () => {\n const mockClientCtx = {\n ontologyProvider: {\n getObjectDefinition: (objectType: string) => {\n if (objectType === \"BaseType\") {\n return {\n links: {\n testLink1: {\n targetType: \"SecondType\",\n \"multiplicity\": \"many\",\n } satisfies ObjectMetadata.Link<any, any>,\n },\n };\n } else if (objectType === \"SecondType\") {\n return {\n links: {\n testLink2: {\n targetType: \"ThirdType\",\n \"multiplicity\": \"many\",\n } satisfies ObjectMetadata.Link<any, any>,\n },\n };\n } else if (objectType === \"ThirdType\") {\n return {\n properties: {\n testProperty: {\n type: \"attachment\",\n } satisfies ObjectMetadata.Property,\n },\n };\n } else {\n throw new Error(`Missing definition for '${objectType}'`);\n }\n },\n getInterfaceDefinition: (interfaceType: string) => {\n if (interfaceType === \"interface1\") {\n return {\n links: {\n linkToInterface2: {\n targetType: \"interface\",\n targetTypeApiName: \"interface2\",\n multiplicity: false,\n } satisfies InterfaceMetadata.Link<any, any>,\n },\n };\n } else if (interfaceType === \"interface1\") {\n return {\n links: {\n linkToInterface1: {\n targetType: \"interface\",\n targetTypeApiName: \"interface1\",\n multiplicity: false,\n } satisfies InterfaceMetadata.Link<any, any>,\n },\n };\n } else {\n throw new Error(`Missing definition for '${interfaceType}'`);\n }\n },\n } as any,\n } as MinimalClient;\n\n const objectSetInterfaceToInterface: ObjectSet = {\n type: \"interfaceLinkSearchAround\",\n objectSet: {\n type: \"interfaceBase\",\n interfaceType: \"interface1\",\n },\n interfaceLink: \"linkToInterface2\",\n };\n\n it(\"handles 'withProperties' object set type\", async () => {\n const result = await extractObjectOrInterfaceType(\n mockClientCtx,\n objectSetInterfaceToInterface,\n );\n\n expect(result).toEqual({ apiName: \"interface2\", type: \"interface\" });\n });\n\n it(\"handles `intersection` object set type and nested static and reference object sets\", async () => {\n const intersectionObjectSet: ObjectSet = {\n type: \"intersect\",\n objectSets: [\n {\n type: \"interfaceLinkSearchAround\",\n objectSet: {\n type: \"interfaceBase\",\n interfaceType: \"interface1\",\n },\n interfaceLink: \"linkToInterface2\",\n },\n { type: \"static\", \"objects\": [\"object1\", \"object2\"] },\n { type: \"reference\", \"reference\": \"rid.os.1234\" },\n ],\n };\n\n const result = await extractObjectOrInterfaceType(\n mockClientCtx,\n intersectionObjectSet,\n );\n\n expect(result).toEqual({ apiName: \"interface2\", type: \"interface\" });\n });\n\n it(\"throes with intersect, subtract, or union having different child object types\", async () => {\n const intersectionObjectSet: ObjectSet = {\n type: \"intersect\",\n objectSets: [\n {\n type: \"interfaceLinkSearchAround\",\n objectSet: {\n type: \"interfaceBase\",\n interfaceType: \"interface1\",\n },\n interfaceLink: \"linkToInterface2\",\n },\n { type: \"interfaceBase\", interfaceType: \"interface1\" },\n ],\n };\n\n await expect(\n extractObjectOrInterfaceType(mockClientCtx, intersectionObjectSet),\n ).rejects.toThrowErrorMatchingInlineSnapshot(\n `[Error: Invariant failed: Can only have one object type when doing intersects, subtract, union]`,\n );\n });\n});\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"extractObjectOrInterfaceType.test.js","names":["describe","expect","it","extractObjectOrInterfaceType","mockClientCtx","ontologyProvider","getObjectDefinition","objectType","links","testLink1","targetType","testLink2","properties","testProperty","type","Error","getInterfaceDefinition","interfaceType","linkToInterface2","targetTypeApiName","multiplicity","linkToInterface1","objectSetInterfaceToInterface","objectSet","interfaceLink","result","toEqual","apiName","objectSets","rejects","toThrowErrorMatchingInlineSnapshot"],"sources":["extractObjectOrInterfaceType.test.ts"],"sourcesContent":["/*\n * Copyright 2025 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport type { InterfaceMetadata, ObjectMetadata } from \"@osdk/api\";\nimport type { ObjectSet } from \"@osdk/foundry.ontologies\";\nimport { describe, expect, it } from \"vitest\";\nimport type { MinimalClient } from \"../MinimalClientContext.js\";\nimport { extractObjectOrInterfaceType } from \"./extractObjectOrInterfaceType.js\";\n\ndescribe(\"extractRdpDefinition\", () => {\n const mockClientCtx = {\n ontologyProvider: {\n getObjectDefinition: (objectType: string) => {\n if (objectType === \"BaseType\") {\n return {\n links: {\n testLink1: {\n targetType: \"SecondType\",\n \"multiplicity\": \"many\",\n } satisfies ObjectMetadata.Link<any, any>,\n },\n };\n } else if (objectType === \"SecondType\") {\n return {\n links: {\n testLink2: {\n targetType: \"ThirdType\",\n \"multiplicity\": \"many\",\n } satisfies ObjectMetadata.Link<any, any>,\n },\n };\n } else if (objectType === \"ThirdType\") {\n return {\n properties: {\n testProperty: {\n type: \"attachment\",\n } satisfies ObjectMetadata.Property,\n },\n };\n } else {\n throw new Error(`Missing definition for '${objectType}'`);\n }\n },\n getInterfaceDefinition: (interfaceType: string) => {\n if (interfaceType === \"interface1\") {\n return {\n links: {\n linkToInterface2: {\n targetType: \"interface\",\n targetTypeApiName: \"interface2\",\n multiplicity: false,\n } satisfies InterfaceMetadata.Link<any, any>,\n },\n };\n } else if (interfaceType === \"interface1\") {\n return {\n links: {\n linkToInterface1: {\n targetType: \"interface\",\n targetTypeApiName: \"interface1\",\n multiplicity: false,\n } satisfies InterfaceMetadata.Link<any, any>,\n },\n };\n } else {\n throw new Error(`Missing definition for '${interfaceType}'`);\n }\n },\n } as any,\n } as MinimalClient;\n\n const objectSetInterfaceToInterface: ObjectSet = {\n type: \"interfaceLinkSearchAround\",\n objectSet: {\n type: \"interfaceBase\",\n interfaceType: \"interface1\",\n },\n interfaceLink: \"linkToInterface2\",\n };\n\n it(\"handles 'withProperties' object set type\", async () => {\n const result = await extractObjectOrInterfaceType(\n mockClientCtx,\n objectSetInterfaceToInterface,\n );\n\n expect(result).toEqual({ apiName: \"interface2\", type: \"interface\" });\n });\n\n it(\"handles `intersection` object set type and nested static and reference object sets\", async () => {\n const intersectionObjectSet: ObjectSet = {\n type: \"intersect\",\n objectSets: [\n {\n type: \"interfaceLinkSearchAround\",\n objectSet: {\n type: \"interfaceBase\",\n interfaceType: \"interface1\",\n },\n interfaceLink: \"linkToInterface2\",\n },\n { type: \"static\", \"objects\": [\"object1\", \"object2\"] },\n { type: \"reference\", \"reference\": \"rid.os.1234\" },\n ],\n };\n\n const result = await extractObjectOrInterfaceType(\n mockClientCtx,\n intersectionObjectSet,\n );\n\n expect(result).toEqual({ apiName: \"interface2\", type: \"interface\" });\n });\n\n it(\"throes with intersect, subtract, or union having different child object types\", async () => {\n const intersectionObjectSet: ObjectSet = {\n type: \"union\",\n objectSets: [\n {\n type: \"interfaceLinkSearchAround\",\n objectSet: {\n type: \"interfaceBase\",\n interfaceType: \"interface1\",\n },\n interfaceLink: \"linkToInterface2\",\n },\n { type: \"interfaceBase\", interfaceType: \"interface1\" },\n ],\n };\n\n await expect(\n extractObjectOrInterfaceType(mockClientCtx, intersectionObjectSet),\n ).rejects.toThrowErrorMatchingInlineSnapshot(\n `[Error: Invariant failed: Can only have one object type when doing subtract, union]`,\n );\n });\n});\n"],"mappings":"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","ignoreList":[]}
@@ -12,7 +12,7 @@ function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
12
12
  var invariant5__default = /*#__PURE__*/_interopDefault(invariant5);
13
13
  var WebSocket__default = /*#__PURE__*/_interopDefault(WebSocket);
14
14
 
15
- // ../../node_modules/.pnpm/@osdk+foundry.ontologies@2.27.0/node_modules/@osdk/foundry.ontologies/build/esm/public/Action.js
15
+ // ../../node_modules/.pnpm/@osdk+foundry.ontologies@2.30.0/node_modules/@osdk/foundry.ontologies/build/esm/public/Action.js
16
16
  var Action_exports = {};
17
17
  chunkQ7SFCCGT_cjs.__export(Action_exports, {
18
18
  apply: () => apply,
@@ -89,7 +89,7 @@ function parseUrl(baseUrl, endpointPath) {
89
89
  return new URL(`api${endpointPath}`, baseUrl);
90
90
  }
91
91
 
92
- // ../../node_modules/.pnpm/@osdk+foundry.ontologies@2.27.0/node_modules/@osdk/foundry.ontologies/build/esm/public/Action.js
92
+ // ../../node_modules/.pnpm/@osdk+foundry.ontologies@2.30.0/node_modules/@osdk/foundry.ontologies/build/esm/public/Action.js
93
93
  var _apply = [1, "/v2/ontologies/{0}/actions/{1}/apply", 3];
94
94
  function apply($ctx, ...args) {
95
95
  return foundryPlatformFetch($ctx, _apply, ...args);
@@ -103,7 +103,7 @@ function applyBatch($ctx, ...args) {
103
103
  return foundryPlatformFetch($ctx, _applyBatch, ...args);
104
104
  }
105
105
 
106
- // ../../node_modules/.pnpm/@osdk+foundry.ontologies@2.27.0/node_modules/@osdk/foundry.ontologies/build/esm/public/ActionTypeV2.js
106
+ // ../../node_modules/.pnpm/@osdk+foundry.ontologies@2.30.0/node_modules/@osdk/foundry.ontologies/build/esm/public/ActionTypeV2.js
107
107
  var ActionTypeV2_exports = {};
108
108
  chunkQ7SFCCGT_cjs.__export(ActionTypeV2_exports, {
109
109
  get: () => get,
@@ -123,7 +123,7 @@ function getByRid($ctx, ...args) {
123
123
  return foundryPlatformFetch($ctx, _getByRid, ...args);
124
124
  }
125
125
 
126
- // ../../node_modules/.pnpm/@osdk+foundry.ontologies@2.27.0/node_modules/@osdk/foundry.ontologies/build/esm/public/Attachment.js
126
+ // ../../node_modules/.pnpm/@osdk+foundry.ontologies@2.30.0/node_modules/@osdk/foundry.ontologies/build/esm/public/Attachment.js
127
127
  var Attachment_exports = {};
128
128
  chunkQ7SFCCGT_cjs.__export(Attachment_exports, {
129
129
  get: () => get2,
@@ -148,7 +148,7 @@ function get2($ctx, ...args) {
148
148
  return foundryPlatformFetch($ctx, _get2, ...args);
149
149
  }
150
150
 
151
- // ../../node_modules/.pnpm/@osdk+foundry.ontologies@2.27.0/node_modules/@osdk/foundry.ontologies/build/esm/public/MediaReferenceProperty.js
151
+ // ../../node_modules/.pnpm/@osdk+foundry.ontologies@2.30.0/node_modules/@osdk/foundry.ontologies/build/esm/public/MediaReferenceProperty.js
152
152
  var MediaReferenceProperty_exports = {};
153
153
  chunkQ7SFCCGT_cjs.__export(MediaReferenceProperty_exports, {
154
154
  getMediaContent: () => getMediaContent,
@@ -173,7 +173,7 @@ function uploadMedia($ctx, ...args) {
173
173
  return foundryPlatformFetch($ctx, _uploadMedia, ...args);
174
174
  }
175
175
 
176
- // ../../node_modules/.pnpm/@osdk+foundry.ontologies@2.27.0/node_modules/@osdk/foundry.ontologies/build/esm/public/ObjectTypeV2.js
176
+ // ../../node_modules/.pnpm/@osdk+foundry.ontologies@2.30.0/node_modules/@osdk/foundry.ontologies/build/esm/public/ObjectTypeV2.js
177
177
  var ObjectTypeV2_exports = {};
178
178
  chunkQ7SFCCGT_cjs.__export(ObjectTypeV2_exports, {
179
179
  get: () => get3,
@@ -203,13 +203,14 @@ function getOutgoingLinkType($ctx, ...args) {
203
203
  return foundryPlatformFetch($ctx, _getOutgoingLinkType, ...args);
204
204
  }
205
205
 
206
- // ../../node_modules/.pnpm/@osdk+foundry.ontologies@2.27.0/node_modules/@osdk/foundry.ontologies/build/esm/public/OntologyInterface.js
206
+ // ../../node_modules/.pnpm/@osdk+foundry.ontologies@2.30.0/node_modules/@osdk/foundry.ontologies/build/esm/public/OntologyInterface.js
207
207
  var OntologyInterface_exports = {};
208
208
  chunkQ7SFCCGT_cjs.__export(OntologyInterface_exports, {
209
209
  aggregate: () => aggregate,
210
210
  get: () => get4,
211
211
  getOutgoingInterfaceLinkType: () => getOutgoingInterfaceLinkType,
212
212
  list: () => list3,
213
+ listObjectsForInterface: () => listObjectsForInterface,
213
214
  listOutgoingInterfaceLinkTypes: () => listOutgoingInterfaceLinkTypes,
214
215
  search: () => search
215
216
  });
@@ -221,6 +222,10 @@ var _get4 = [0, "/v2/ontologies/{0}/interfaceTypes/{1}", 2];
221
222
  function get4($ctx, ...args) {
222
223
  return foundryPlatformFetch($ctx, _get4, ...args);
223
224
  }
225
+ var _listObjectsForInterface = [0, "/v2/ontologies/{0}/interfaces/{1}", 2];
226
+ function listObjectsForInterface($ctx, ...args) {
227
+ return foundryPlatformFetch($ctx, _listObjectsForInterface, ...args);
228
+ }
224
229
  var _search = [1, "/v2/ontologies/{0}/interfaces/{1}/search", 3];
225
230
  function search($ctx, ...args) {
226
231
  return foundryPlatformFetch($ctx, _search, ...args);
@@ -238,7 +243,7 @@ function getOutgoingInterfaceLinkType($ctx, ...args) {
238
243
  return foundryPlatformFetch($ctx, _getOutgoingInterfaceLinkType, ...args);
239
244
  }
240
245
 
241
- // ../../node_modules/.pnpm/@osdk+foundry.ontologies@2.27.0/node_modules/@osdk/foundry.ontologies/build/esm/public/OntologyObjectSet.js
246
+ // ../../node_modules/.pnpm/@osdk+foundry.ontologies@2.30.0/node_modules/@osdk/foundry.ontologies/build/esm/public/OntologyObjectSet.js
242
247
  var OntologyObjectSet_exports = {};
243
248
  chunkQ7SFCCGT_cjs.__export(OntologyObjectSet_exports, {
244
249
  aggregate: () => aggregate2,
@@ -248,7 +253,7 @@ chunkQ7SFCCGT_cjs.__export(OntologyObjectSet_exports, {
248
253
  loadMultipleObjectTypes: () => loadMultipleObjectTypes,
249
254
  loadObjectsOrInterfaces: () => loadObjectsOrInterfaces
250
255
  });
251
- var _createTemporary = [1, "/v2/ontologies/{0}/objectSets/createTemporary", 1];
256
+ var _createTemporary = [1, "/v2/ontologies/{0}/objectSets/createTemporary", 3];
252
257
  function createTemporary($ctx, ...args) {
253
258
  return foundryPlatformFetch($ctx, _createTemporary, ...args);
254
259
  }
@@ -273,7 +278,7 @@ function aggregate2($ctx, ...args) {
273
278
  return foundryPlatformFetch($ctx, _aggregate2, ...args);
274
279
  }
275
280
 
276
- // ../../node_modules/.pnpm/@osdk+foundry.ontologies@2.27.0/node_modules/@osdk/foundry.ontologies/build/esm/public/Query.js
281
+ // ../../node_modules/.pnpm/@osdk+foundry.ontologies@2.30.0/node_modules/@osdk/foundry.ontologies/build/esm/public/Query.js
277
282
  var Query_exports = {};
278
283
  chunkQ7SFCCGT_cjs.__export(Query_exports, {
279
284
  execute: () => execute
@@ -283,7 +288,7 @@ function execute($ctx, ...args) {
283
288
  return foundryPlatformFetch($ctx, _execute, ...args);
284
289
  }
285
290
 
286
- // ../../node_modules/.pnpm/@osdk+foundry.ontologies@2.27.0/node_modules/@osdk/foundry.ontologies/build/esm/public/QueryType.js
291
+ // ../../node_modules/.pnpm/@osdk+foundry.ontologies@2.30.0/node_modules/@osdk/foundry.ontologies/build/esm/public/QueryType.js
287
292
  var QueryType_exports = {};
288
293
  chunkQ7SFCCGT_cjs.__export(QueryType_exports, {
289
294
  get: () => get6,
@@ -298,7 +303,7 @@ function get6($ctx, ...args) {
298
303
  return foundryPlatformFetch($ctx, _get6, ...args);
299
304
  }
300
305
 
301
- // ../../node_modules/.pnpm/@osdk+foundry.ontologies@2.27.0/node_modules/@osdk/foundry.ontologies/build/esm/public/TimeSeriesPropertyV2.js
306
+ // ../../node_modules/.pnpm/@osdk+foundry.ontologies@2.30.0/node_modules/@osdk/foundry.ontologies/build/esm/public/TimeSeriesPropertyV2.js
302
307
  var TimeSeriesPropertyV2_exports = {};
303
308
  chunkQ7SFCCGT_cjs.__export(TimeSeriesPropertyV2_exports, {
304
309
  getFirstPoint: () => getFirstPoint,
@@ -318,7 +323,7 @@ function streamPoints($ctx, ...args) {
318
323
  return foundryPlatformFetch($ctx, _streamPoints, ...args);
319
324
  }
320
325
 
321
- // ../../node_modules/.pnpm/@osdk+foundry.ontologies@2.27.0/node_modules/@osdk/foundry.ontologies/build/esm/public/TimeSeriesValueBankProperty.js
326
+ // ../../node_modules/.pnpm/@osdk+foundry.ontologies@2.30.0/node_modules/@osdk/foundry.ontologies/build/esm/public/TimeSeriesValueBankProperty.js
322
327
  var TimeSeriesValueBankProperty_exports = {};
323
328
  chunkQ7SFCCGT_cjs.__export(TimeSeriesValueBankProperty_exports, {
324
329
  getLatestValue: () => getLatestValue,
@@ -380,7 +385,14 @@ async function extractObjectOrInterfaceType(clientCtx, objectSet) {
380
385
  case "asType":
381
386
  case "nearestNeighbors":
382
387
  return extractObjectOrInterfaceType(clientCtx, objectSet.objectSet);
383
- case "intersect":
388
+ case "intersect": {
389
+ const objectSets2 = objectSet.objectSets;
390
+ const objectSetTypes2 = await Promise.all(objectSets2.map((os) => extractObjectOrInterfaceType(clientCtx, os)));
391
+ const filteredObjectTypes2 = objectSetTypes2.filter(Boolean);
392
+ const firstInterfaceType = filteredObjectTypes2.find((val) => val?.type === "interface");
393
+ !firstInterfaceType ? process.env.NODE_ENV !== "production" ? invariant5__default.default(false, `Missing interface type in intersect objectset scope'`) : invariant5__default.default(false) : void 0;
394
+ return firstInterfaceType;
395
+ }
384
396
  case "subtract":
385
397
  case "union":
386
398
  const objectSets = objectSet.objectSets;
@@ -389,7 +401,7 @@ async function extractObjectOrInterfaceType(clientCtx, objectSet) {
389
401
  const firstObjectType = filteredObjectTypes[0];
390
402
  !filteredObjectTypes.every((val) => {
391
403
  return val?.apiName === firstObjectType?.apiName && val?.type === firstObjectType?.type;
392
- }) ? process.env.NODE_ENV !== "production" ? invariant5__default.default(false, "Can only have one object type when doing intersects, subtract, union") : invariant5__default.default(false) : void 0;
404
+ }) ? process.env.NODE_ENV !== "production" ? invariant5__default.default(false, "Can only have one object type when doing subtract, union") : invariant5__default.default(false) : void 0;
393
405
  return filteredObjectTypes[0];
394
406
  case "static":
395
407
  case "reference":
@@ -1939,5 +1951,5 @@ exports.hydrateAttachmentFromRidInternal = hydrateAttachmentFromRidInternal;
1939
1951
  exports.isObjectSet = isObjectSet;
1940
1952
  exports.isWireObjectSet = isWireObjectSet;
1941
1953
  exports.symbolClientContext = symbolClientContext;
1942
- //# sourceMappingURL=chunk-BL56QBYG.cjs.map
1943
- //# sourceMappingURL=chunk-BL56QBYG.cjs.map
1954
+ //# sourceMappingURL=chunk-ELAA4C2C.cjs.map
1955
+ //# sourceMappingURL=chunk-ELAA4C2C.cjs.map