@osdk/client 2.1.0-beta.3 → 2.1.0-beta.31

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 (888) hide show
  1. package/CHANGELOG.md +441 -0
  2. package/build/browser/Client.js +7 -0
  3. package/build/browser/Client.js.map +1 -1
  4. package/build/browser/Definitions.test.js +1 -0
  5. package/build/browser/Definitions.test.js.map +1 -1
  6. package/build/browser/Logger.js +0 -15
  7. package/build/browser/Logger.js.map +1 -1
  8. package/build/browser/MinimalClientContext.js +0 -15
  9. package/build/browser/MinimalClientContext.js.map +1 -1
  10. package/build/browser/ResultOrError.js +1 -0
  11. package/build/browser/ResultOrError.js.map +1 -1
  12. package/build/browser/SatisfiesSemver.js +0 -15
  13. package/build/browser/SatisfiesSemver.js.map +1 -1
  14. package/build/browser/SatisfiesSemver.test.js +1 -0
  15. package/build/browser/SatisfiesSemver.test.js.map +1 -1
  16. package/build/browser/__unstable/ConjureSupport.js +12 -6
  17. package/build/browser/__unstable/ConjureSupport.js.map +1 -1
  18. package/build/browser/__unstable/createBulkLinksAsyncIterFactory.js +6 -2
  19. package/build/browser/__unstable/createBulkLinksAsyncIterFactory.js.map +1 -1
  20. package/build/browser/actions/ActionValidationError.js +1 -1
  21. package/build/browser/actions/ActionValidationError.js.map +1 -1
  22. package/build/browser/actions/actions.test.js +85 -4
  23. package/build/browser/actions/actions.test.js.map +1 -1
  24. package/build/browser/actions/applyAction.js +3 -2
  25. package/build/browser/actions/applyAction.js.map +1 -1
  26. package/build/browser/createClient.js +50 -23
  27. package/build/browser/createClient.js.map +1 -1
  28. package/build/browser/createClient.test.js +25 -0
  29. package/build/browser/createClient.test.js.map +1 -1
  30. package/build/browser/createGeotimeSeriesProperty.js +5 -3
  31. package/build/browser/createGeotimeSeriesProperty.js.map +1 -1
  32. package/build/browser/createMediaReferenceProperty.js +47 -0
  33. package/build/browser/createMediaReferenceProperty.js.map +1 -0
  34. package/build/browser/createMinimalClient.js +9 -2
  35. package/build/browser/createMinimalClient.js.map +1 -1
  36. package/build/browser/createPlatformClient.js +1 -0
  37. package/build/browser/createPlatformClient.js.map +1 -1
  38. package/build/browser/createTimeseriesProperty.js +2 -1
  39. package/build/browser/createTimeseriesProperty.js.map +1 -1
  40. package/build/browser/definitions/LinkDefinitions.test.js +4 -0
  41. package/build/browser/definitions/LinkDefinitions.test.js.map +1 -1
  42. package/build/browser/derivedProperties/createWithPropertiesObjectSet.js +106 -0
  43. package/build/browser/derivedProperties/createWithPropertiesObjectSet.js.map +1 -0
  44. package/build/browser/derivedProperties/createWithPropertiesObjectSet.test.js +100 -0
  45. package/build/browser/derivedProperties/createWithPropertiesObjectSet.test.js.map +1 -0
  46. package/build/browser/fetchMetadata.js +2 -0
  47. package/build/browser/fetchMetadata.js.map +1 -1
  48. package/build/browser/fetchMetadata.test.js +19 -0
  49. package/build/browser/fetchMetadata.test.js.map +1 -1
  50. package/build/browser/index.js +2 -1
  51. package/build/browser/index.js.map +1 -1
  52. package/build/browser/intellisense.test.helpers/callsQueryAcceptsObject.js +3 -1
  53. package/build/browser/intellisense.test.helpers/callsQueryAcceptsObject.js.map +1 -1
  54. package/build/browser/intellisense.test.js +5 -2
  55. package/build/browser/intellisense.test.js.map +1 -1
  56. package/build/browser/internal/conversions/legacyToModernSingleAggregationResult.js +3 -1
  57. package/build/browser/internal/conversions/legacyToModernSingleAggregationResult.js.map +1 -1
  58. package/build/browser/internal/conversions/modernToLegacyAggregationClause.js +2 -0
  59. package/build/browser/internal/conversions/modernToLegacyAggregationClause.js.map +1 -1
  60. package/build/browser/internal/conversions/modernToLegacyGroupByClause.js +1 -0
  61. package/build/browser/internal/conversions/modernToLegacyGroupByClause.js.map +1 -1
  62. package/build/browser/internal/conversions/modernToLegacyWhereClause.js +70 -21
  63. package/build/browser/internal/conversions/modernToLegacyWhereClause.js.map +1 -1
  64. package/build/browser/internal/conversions/modernToLegacyWhereClause.test.js +402 -14
  65. package/build/browser/internal/conversions/modernToLegacyWhereClause.test.js.map +1 -1
  66. package/build/browser/object/AttachmentUpload.js +6 -7
  67. package/build/browser/object/AttachmentUpload.js.map +1 -1
  68. package/build/browser/object/Cache.js +27 -0
  69. package/build/browser/object/Cache.js.map +1 -1
  70. package/build/browser/object/Cache.test.js +10 -3
  71. package/build/browser/object/Cache.test.js.map +1 -1
  72. package/build/browser/object/SimpleCache.js +20 -0
  73. package/build/browser/object/SimpleCache.js.map +1 -1
  74. package/build/browser/object/aggregate.js +8 -10
  75. package/build/browser/object/aggregate.js.map +1 -1
  76. package/build/browser/object/aggregate.test.js +11 -9
  77. package/build/browser/object/aggregate.test.js.map +1 -1
  78. package/build/browser/object/attachment.test.js +1 -0
  79. package/build/browser/object/attachment.test.js.map +1 -1
  80. package/build/browser/object/convertWireToOsdkObjects/InterfaceHolder.js +0 -15
  81. package/build/browser/object/convertWireToOsdkObjects/InterfaceHolder.js.map +1 -1
  82. package/build/browser/object/convertWireToOsdkObjects/InternalSymbols.js +8 -3
  83. package/build/browser/object/convertWireToOsdkObjects/InternalSymbols.js.map +1 -1
  84. package/build/browser/object/convertWireToOsdkObjects/ObjectHolder.js +0 -15
  85. package/build/browser/object/convertWireToOsdkObjects/ObjectHolder.js.map +1 -1
  86. package/build/browser/object/convertWireToOsdkObjects/OsdkCustomInspectPrototype.js +4 -1
  87. package/build/browser/object/convertWireToOsdkObjects/OsdkCustomInspectPrototype.js.map +1 -1
  88. package/build/browser/object/convertWireToOsdkObjects/PropertyDescriptorRecord.js +0 -15
  89. package/build/browser/object/convertWireToOsdkObjects/PropertyDescriptorRecord.js.map +1 -1
  90. package/build/browser/object/convertWireToOsdkObjects/createOsdkInterface.js +42 -85
  91. package/build/browser/object/convertWireToOsdkObjects/createOsdkInterface.js.map +1 -1
  92. package/build/browser/object/convertWireToOsdkObjects/createOsdkInterface.test.js +1 -6
  93. package/build/browser/object/convertWireToOsdkObjects/createOsdkInterface.test.js.map +1 -1
  94. package/build/browser/object/convertWireToOsdkObjects/createOsdkObject.js +88 -88
  95. package/build/browser/object/convertWireToOsdkObjects/createOsdkObject.js.map +1 -1
  96. package/build/browser/object/convertWireToOsdkObjects/getDollarAs.js +9 -3
  97. package/build/browser/object/convertWireToOsdkObjects/getDollarAs.js.map +1 -1
  98. package/build/browser/object/convertWireToOsdkObjects/getDollarLink.js +15 -38
  99. package/build/browser/object/convertWireToOsdkObjects/getDollarLink.js.map +1 -1
  100. package/build/browser/object/convertWireToOsdkObjects.js +53 -6
  101. package/build/browser/object/convertWireToOsdkObjects.js.map +1 -1
  102. package/build/browser/object/convertWireToOsdkObjects.test.js +197 -44
  103. package/build/browser/object/convertWireToOsdkObjects.test.js.map +1 -1
  104. package/build/browser/object/fetchPage.js +42 -24
  105. package/build/browser/object/fetchPage.js.map +1 -1
  106. package/build/browser/object/fetchPage.test.js +80 -1
  107. package/build/browser/object/fetchPage.test.js.map +1 -1
  108. package/build/browser/object/fetchSingle.js +3 -0
  109. package/build/browser/object/fetchSingle.js.map +1 -1
  110. package/build/browser/object/geotimeseriesreference.test.js +2 -0
  111. package/build/browser/object/geotimeseriesreference.test.js.map +1 -1
  112. package/build/browser/object/media.test.js +55 -0
  113. package/build/browser/object/media.test.js.map +1 -0
  114. package/build/browser/object/mediaUpload.js +20 -0
  115. package/build/browser/object/mediaUpload.js.map +1 -0
  116. package/build/browser/object/object.test.js +203 -10
  117. package/build/browser/object/object.test.js.map +1 -1
  118. package/build/browser/object/timeseries.test.js +11 -0
  119. package/build/browser/object/timeseries.test.js.map +1 -1
  120. package/build/browser/objectSet/InterfaceObjectSet.test.js +65 -0
  121. package/build/browser/objectSet/InterfaceObjectSet.test.js.map +1 -0
  122. package/build/browser/objectSet/ObjectSet.test.js +400 -46
  123. package/build/browser/objectSet/ObjectSet.test.js.map +1 -1
  124. package/build/browser/objectSet/ObjectSetFactory.js +0 -15
  125. package/build/browser/objectSet/ObjectSetFactory.js.map +1 -1
  126. package/build/browser/objectSet/ObjectSetListenerWebsocket.js +137 -80
  127. package/build/browser/objectSet/ObjectSetListenerWebsocket.js.map +1 -1
  128. package/build/browser/objectSet/ObjectSetListenerWebsocket.test.js +59 -29
  129. package/build/browser/objectSet/ObjectSetListenerWebsocket.test.js.map +1 -1
  130. package/build/browser/objectSet/conjureUnionType.js +1 -0
  131. package/build/browser/objectSet/conjureUnionType.js.map +1 -1
  132. package/build/browser/objectSet/createObjectSet.js +31 -8
  133. package/build/browser/objectSet/createObjectSet.js.map +1 -1
  134. package/build/browser/ontology/OntologyProvider.js +1 -0
  135. package/build/browser/ontology/OntologyProvider.js.map +1 -1
  136. package/build/browser/ontology/StandardOntologyProvider.js +2 -0
  137. package/build/browser/ontology/StandardOntologyProvider.js.map +1 -1
  138. package/build/browser/ontology/StandardOntologyProvider.test.js +2 -0
  139. package/build/browser/ontology/StandardOntologyProvider.test.js.map +1 -1
  140. package/build/browser/ontology/loadActionMetadata.js +2 -1
  141. package/build/browser/ontology/loadActionMetadata.js.map +1 -1
  142. package/build/browser/ontology/loadFullObjectMetadata.js +2 -1
  143. package/build/browser/ontology/loadFullObjectMetadata.js.map +1 -1
  144. package/build/browser/ontology/loadInterfaceMetadata.js +2 -1
  145. package/build/browser/ontology/loadInterfaceMetadata.js.map +1 -1
  146. package/build/browser/ontology/loadQueryMetadata.js +2 -1
  147. package/build/browser/ontology/loadQueryMetadata.js.map +1 -1
  148. package/build/browser/ontology/makeConjureContext.js +1 -0
  149. package/build/browser/ontology/makeConjureContext.js.map +1 -1
  150. package/build/browser/pageRequestAsAsyncIter.js +1 -0
  151. package/build/browser/pageRequestAsAsyncIter.js.map +1 -1
  152. package/build/browser/public/internal.js +20 -0
  153. package/build/browser/public/internal.js.map +1 -0
  154. package/build/browser/public/unstable-do-not-use.js +1 -0
  155. package/build/browser/public/unstable-do-not-use.js.map +1 -1
  156. package/build/browser/public-utils/createAndFetchTempObjectSetRid.js +34 -0
  157. package/build/browser/public-utils/createAndFetchTempObjectSetRid.js.map +1 -0
  158. package/build/{esm/createAttachmentFromRid.js → browser/public-utils/hydrateAttachmentFromRid.js} +13 -6
  159. package/build/browser/public-utils/hydrateAttachmentFromRid.js.map +1 -0
  160. package/build/browser/public-utils/hydrateObjectSetFromRid.js +39 -0
  161. package/build/browser/public-utils/hydrateObjectSetFromRid.js.map +1 -0
  162. package/build/browser/queries/applyQuery.js +5 -5
  163. package/build/browser/queries/applyQuery.js.map +1 -1
  164. package/build/browser/queries/queries.test.js +9 -0
  165. package/build/browser/queries/queries.test.js.map +1 -1
  166. package/build/browser/queries/types.js +0 -15
  167. package/build/browser/queries/types.js.map +1 -1
  168. package/build/browser/tsserver.js +2 -1
  169. package/build/browser/tsserver.js.map +1 -1
  170. package/build/browser/util/ArrayElement.js +0 -15
  171. package/build/browser/util/ArrayElement.js.map +1 -1
  172. package/build/browser/util/NOOP.js +0 -15
  173. package/build/browser/util/NOOP.js.map +1 -1
  174. package/build/browser/util/NullableProps.js +0 -15
  175. package/build/browser/util/NullableProps.js.map +1 -1
  176. package/build/browser/util/UserAgent.js +2 -1
  177. package/build/browser/util/UserAgent.js.map +1 -1
  178. package/build/browser/util/WireObjectSet.js +2 -0
  179. package/build/browser/util/WireObjectSet.js.map +1 -1
  180. package/build/browser/util/addUserAgentAndRequestContextHeaders.js +1 -0
  181. package/build/browser/util/addUserAgentAndRequestContextHeaders.js.map +1 -1
  182. package/build/browser/util/augmentRequestContext.js +1 -0
  183. package/build/browser/util/augmentRequestContext.js.map +1 -1
  184. package/build/browser/util/datetimeConverters.js +60 -0
  185. package/build/browser/util/datetimeConverters.js.map +1 -0
  186. package/build/browser/util/datetimeConverters.test.js +76 -0
  187. package/build/browser/util/datetimeConverters.test.js.map +1 -0
  188. package/build/browser/util/interfaceUtils.js +21 -0
  189. package/build/browser/util/interfaceUtils.js.map +1 -0
  190. package/build/browser/util/isOntologyObjectV2.js +1 -0
  191. package/build/browser/util/isOntologyObjectV2.js.map +1 -1
  192. package/build/browser/util/isOsdkBaseObject.js +1 -0
  193. package/build/browser/util/isOsdkBaseObject.js.map +1 -1
  194. package/build/browser/util/isOsdkObject.js +1 -0
  195. package/build/browser/util/isOsdkObject.js.map +1 -1
  196. package/build/browser/util/objectSetUtils.js +26 -0
  197. package/build/browser/util/objectSetUtils.js.map +1 -0
  198. package/build/browser/util/partialBy.js +0 -15
  199. package/build/browser/util/partialBy.js.map +1 -1
  200. package/build/browser/util/streamutils.js +7 -0
  201. package/build/browser/util/streamutils.js.map +1 -1
  202. package/build/browser/util/timeseriesUtils.js +2 -1
  203. package/build/browser/util/timeseriesUtils.js.map +1 -1
  204. package/build/browser/util/toDataValue.js +28 -2
  205. package/build/browser/util/toDataValue.js.map +1 -1
  206. package/build/browser/util/toDataValue.test.js +14 -1
  207. package/build/browser/util/toDataValue.test.js.map +1 -1
  208. package/build/browser/util/toDataValueQueries.js +10 -1
  209. package/build/browser/util/toDataValueQueries.js.map +1 -1
  210. package/build/cjs/Client-BZcoRu7n.d.cts +67 -0
  211. package/build/cjs/chunk-L454XQQ7.cjs +1028 -0
  212. package/build/cjs/chunk-L454XQQ7.cjs.map +1 -0
  213. package/build/cjs/chunk-RDXQTUTR.cjs +466 -0
  214. package/build/cjs/chunk-RDXQTUTR.cjs.map +1 -0
  215. package/build/cjs/index.cjs +1664 -0
  216. package/build/cjs/index.cjs.map +1 -0
  217. package/build/cjs/index.d.cts +85 -0
  218. package/build/cjs/public/internal.cjs +35 -0
  219. package/build/cjs/public/internal.cjs.map +1 -0
  220. package/build/cjs/public/internal.d.cts +33 -0
  221. package/build/cjs/public/unstable-do-not-use.cjs +12 -0
  222. package/build/cjs/public/unstable-do-not-use.cjs.map +1 -0
  223. package/build/cjs/public/unstable-do-not-use.d.cts +5 -0
  224. package/build/esm/Client.js +7 -0
  225. package/build/esm/Client.js.map +1 -1
  226. package/build/esm/Definitions.test.js +1 -0
  227. package/build/esm/Definitions.test.js.map +1 -1
  228. package/build/esm/Logger.js +0 -15
  229. package/build/esm/Logger.js.map +1 -1
  230. package/build/esm/MinimalClientContext.js +0 -15
  231. package/build/esm/MinimalClientContext.js.map +1 -1
  232. package/build/esm/ResultOrError.js +1 -0
  233. package/build/esm/ResultOrError.js.map +1 -1
  234. package/build/esm/SatisfiesSemver.js +0 -15
  235. package/build/esm/SatisfiesSemver.js.map +1 -1
  236. package/build/esm/SatisfiesSemver.test.js +1 -0
  237. package/build/esm/SatisfiesSemver.test.js.map +1 -1
  238. package/build/esm/__unstable/ConjureSupport.js +12 -6
  239. package/build/esm/__unstable/ConjureSupport.js.map +1 -1
  240. package/build/esm/__unstable/createBulkLinksAsyncIterFactory.js +6 -2
  241. package/build/esm/__unstable/createBulkLinksAsyncIterFactory.js.map +1 -1
  242. package/build/esm/actions/ActionValidationError.js +1 -1
  243. package/build/esm/actions/ActionValidationError.js.map +1 -1
  244. package/build/esm/actions/actions.test.js +85 -4
  245. package/build/esm/actions/actions.test.js.map +1 -1
  246. package/build/esm/actions/applyAction.js +3 -2
  247. package/build/esm/actions/applyAction.js.map +1 -1
  248. package/build/esm/createClient.js +50 -23
  249. package/build/esm/createClient.js.map +1 -1
  250. package/build/esm/createClient.test.js +25 -0
  251. package/build/esm/createClient.test.js.map +1 -1
  252. package/build/esm/createGeotimeSeriesProperty.js +5 -3
  253. package/build/esm/createGeotimeSeriesProperty.js.map +1 -1
  254. package/build/esm/createMediaReferenceProperty.js +47 -0
  255. package/build/esm/createMediaReferenceProperty.js.map +1 -0
  256. package/build/esm/createMinimalClient.js +9 -2
  257. package/build/esm/createMinimalClient.js.map +1 -1
  258. package/build/esm/createPlatformClient.js +1 -0
  259. package/build/esm/createPlatformClient.js.map +1 -1
  260. package/build/esm/createTimeseriesProperty.js +2 -1
  261. package/build/esm/createTimeseriesProperty.js.map +1 -1
  262. package/build/esm/definitions/LinkDefinitions.test.js +4 -0
  263. package/build/esm/definitions/LinkDefinitions.test.js.map +1 -1
  264. package/build/esm/derivedProperties/createWithPropertiesObjectSet.js +106 -0
  265. package/build/esm/derivedProperties/createWithPropertiesObjectSet.js.map +1 -0
  266. package/build/esm/derivedProperties/createWithPropertiesObjectSet.test.js +100 -0
  267. package/build/esm/derivedProperties/createWithPropertiesObjectSet.test.js.map +1 -0
  268. package/build/esm/fetchMetadata.js +2 -0
  269. package/build/esm/fetchMetadata.js.map +1 -1
  270. package/build/esm/fetchMetadata.test.js +19 -0
  271. package/build/esm/fetchMetadata.test.js.map +1 -1
  272. package/build/esm/index.js +2 -1
  273. package/build/esm/index.js.map +1 -1
  274. package/build/esm/intellisense.test.helpers/callsQueryAcceptsObject.js +3 -1
  275. package/build/esm/intellisense.test.helpers/callsQueryAcceptsObject.js.map +1 -1
  276. package/build/esm/intellisense.test.js +5 -2
  277. package/build/esm/intellisense.test.js.map +1 -1
  278. package/build/esm/internal/conversions/legacyToModernSingleAggregationResult.js +3 -1
  279. package/build/esm/internal/conversions/legacyToModernSingleAggregationResult.js.map +1 -1
  280. package/build/esm/internal/conversions/modernToLegacyAggregationClause.js +2 -0
  281. package/build/esm/internal/conversions/modernToLegacyAggregationClause.js.map +1 -1
  282. package/build/esm/internal/conversions/modernToLegacyGroupByClause.js +1 -0
  283. package/build/esm/internal/conversions/modernToLegacyGroupByClause.js.map +1 -1
  284. package/build/esm/internal/conversions/modernToLegacyWhereClause.js +70 -21
  285. package/build/esm/internal/conversions/modernToLegacyWhereClause.js.map +1 -1
  286. package/build/esm/internal/conversions/modernToLegacyWhereClause.test.js +402 -14
  287. package/build/esm/internal/conversions/modernToLegacyWhereClause.test.js.map +1 -1
  288. package/build/esm/object/AttachmentUpload.js +6 -7
  289. package/build/esm/object/AttachmentUpload.js.map +1 -1
  290. package/build/esm/object/Cache.js +27 -0
  291. package/build/esm/object/Cache.js.map +1 -1
  292. package/build/esm/object/Cache.test.js +10 -3
  293. package/build/esm/object/Cache.test.js.map +1 -1
  294. package/build/esm/object/SimpleCache.js +20 -0
  295. package/build/esm/object/SimpleCache.js.map +1 -1
  296. package/build/esm/object/aggregate.js +8 -10
  297. package/build/esm/object/aggregate.js.map +1 -1
  298. package/build/esm/object/aggregate.test.js +11 -9
  299. package/build/esm/object/aggregate.test.js.map +1 -1
  300. package/build/esm/object/attachment.test.js +1 -0
  301. package/build/esm/object/attachment.test.js.map +1 -1
  302. package/build/esm/object/convertWireToOsdkObjects/InterfaceHolder.js +0 -15
  303. package/build/esm/object/convertWireToOsdkObjects/InterfaceHolder.js.map +1 -1
  304. package/build/esm/object/convertWireToOsdkObjects/InternalSymbols.js +8 -3
  305. package/build/esm/object/convertWireToOsdkObjects/InternalSymbols.js.map +1 -1
  306. package/build/esm/object/convertWireToOsdkObjects/ObjectHolder.js +0 -15
  307. package/build/esm/object/convertWireToOsdkObjects/ObjectHolder.js.map +1 -1
  308. package/build/esm/object/convertWireToOsdkObjects/OsdkCustomInspectPrototype.js +4 -1
  309. package/build/esm/object/convertWireToOsdkObjects/OsdkCustomInspectPrototype.js.map +1 -1
  310. package/build/esm/object/convertWireToOsdkObjects/PropertyDescriptorRecord.js +0 -15
  311. package/build/esm/object/convertWireToOsdkObjects/PropertyDescriptorRecord.js.map +1 -1
  312. package/build/esm/object/convertWireToOsdkObjects/createOsdkInterface.js +42 -85
  313. package/build/esm/object/convertWireToOsdkObjects/createOsdkInterface.js.map +1 -1
  314. package/build/esm/object/convertWireToOsdkObjects/createOsdkInterface.test.js +1 -6
  315. package/build/esm/object/convertWireToOsdkObjects/createOsdkInterface.test.js.map +1 -1
  316. package/build/esm/object/convertWireToOsdkObjects/createOsdkObject.js +88 -88
  317. package/build/esm/object/convertWireToOsdkObjects/createOsdkObject.js.map +1 -1
  318. package/build/esm/object/convertWireToOsdkObjects/getDollarAs.js +9 -3
  319. package/build/esm/object/convertWireToOsdkObjects/getDollarAs.js.map +1 -1
  320. package/build/esm/object/convertWireToOsdkObjects/getDollarLink.js +15 -38
  321. package/build/esm/object/convertWireToOsdkObjects/getDollarLink.js.map +1 -1
  322. package/build/esm/object/convertWireToOsdkObjects.js +53 -6
  323. package/build/esm/object/convertWireToOsdkObjects.js.map +1 -1
  324. package/build/esm/object/convertWireToOsdkObjects.test.js +197 -44
  325. package/build/esm/object/convertWireToOsdkObjects.test.js.map +1 -1
  326. package/build/esm/object/fetchPage.js +42 -24
  327. package/build/esm/object/fetchPage.js.map +1 -1
  328. package/build/esm/object/fetchPage.test.js +80 -1
  329. package/build/esm/object/fetchPage.test.js.map +1 -1
  330. package/build/esm/object/fetchSingle.js +3 -0
  331. package/build/esm/object/fetchSingle.js.map +1 -1
  332. package/build/esm/object/geotimeseriesreference.test.js +2 -0
  333. package/build/esm/object/geotimeseriesreference.test.js.map +1 -1
  334. package/build/esm/object/media.test.js +55 -0
  335. package/build/esm/object/media.test.js.map +1 -0
  336. package/build/esm/object/mediaUpload.js +20 -0
  337. package/build/esm/object/mediaUpload.js.map +1 -0
  338. package/build/esm/object/object.test.js +203 -10
  339. package/build/esm/object/object.test.js.map +1 -1
  340. package/build/esm/object/timeseries.test.js +11 -0
  341. package/build/esm/object/timeseries.test.js.map +1 -1
  342. package/build/esm/objectSet/InterfaceObjectSet.test.js +65 -0
  343. package/build/esm/objectSet/InterfaceObjectSet.test.js.map +1 -0
  344. package/build/esm/objectSet/ObjectSet.test.js +400 -46
  345. package/build/esm/objectSet/ObjectSet.test.js.map +1 -1
  346. package/build/esm/objectSet/ObjectSetFactory.js +0 -15
  347. package/build/esm/objectSet/ObjectSetFactory.js.map +1 -1
  348. package/build/esm/objectSet/ObjectSetListenerWebsocket.js +137 -83
  349. package/build/esm/objectSet/ObjectSetListenerWebsocket.js.map +1 -1
  350. package/build/esm/objectSet/ObjectSetListenerWebsocket.test.js +59 -29
  351. package/build/esm/objectSet/ObjectSetListenerWebsocket.test.js.map +1 -1
  352. package/build/esm/objectSet/conjureUnionType.js +1 -0
  353. package/build/esm/objectSet/conjureUnionType.js.map +1 -1
  354. package/build/esm/objectSet/createObjectSet.js +31 -8
  355. package/build/esm/objectSet/createObjectSet.js.map +1 -1
  356. package/build/esm/ontology/OntologyProvider.js +1 -0
  357. package/build/esm/ontology/OntologyProvider.js.map +1 -1
  358. package/build/esm/ontology/StandardOntologyProvider.js +2 -0
  359. package/build/esm/ontology/StandardOntologyProvider.js.map +1 -1
  360. package/build/esm/ontology/StandardOntologyProvider.test.js +2 -0
  361. package/build/esm/ontology/StandardOntologyProvider.test.js.map +1 -1
  362. package/build/esm/ontology/loadActionMetadata.js +2 -1
  363. package/build/esm/ontology/loadActionMetadata.js.map +1 -1
  364. package/build/esm/ontology/loadFullObjectMetadata.js +2 -1
  365. package/build/esm/ontology/loadFullObjectMetadata.js.map +1 -1
  366. package/build/esm/ontology/loadInterfaceMetadata.js +2 -1
  367. package/build/esm/ontology/loadInterfaceMetadata.js.map +1 -1
  368. package/build/esm/ontology/loadQueryMetadata.js +2 -1
  369. package/build/esm/ontology/loadQueryMetadata.js.map +1 -1
  370. package/build/esm/ontology/makeConjureContext.js +1 -0
  371. package/build/esm/ontology/makeConjureContext.js.map +1 -1
  372. package/build/esm/pageRequestAsAsyncIter.js +1 -0
  373. package/build/esm/pageRequestAsAsyncIter.js.map +1 -1
  374. package/build/esm/public/internal.js +20 -0
  375. package/build/esm/public/internal.js.map +1 -0
  376. package/build/esm/public/unstable-do-not-use.js +1 -0
  377. package/build/esm/public/unstable-do-not-use.js.map +1 -1
  378. package/build/esm/public-utils/createAndFetchTempObjectSetRid.js +34 -0
  379. package/build/esm/public-utils/createAndFetchTempObjectSetRid.js.map +1 -0
  380. package/build/{browser/createAttachmentFromRid.js → esm/public-utils/hydrateAttachmentFromRid.js} +13 -6
  381. package/build/esm/public-utils/hydrateAttachmentFromRid.js.map +1 -0
  382. package/build/esm/public-utils/hydrateObjectSetFromRid.js +39 -0
  383. package/build/esm/public-utils/hydrateObjectSetFromRid.js.map +1 -0
  384. package/build/esm/queries/applyQuery.js +5 -5
  385. package/build/esm/queries/applyQuery.js.map +1 -1
  386. package/build/esm/queries/queries.test.js +9 -0
  387. package/build/esm/queries/queries.test.js.map +1 -1
  388. package/build/esm/queries/types.js +0 -15
  389. package/build/esm/queries/types.js.map +1 -1
  390. package/build/esm/tsserver.js +2 -1
  391. package/build/esm/tsserver.js.map +1 -1
  392. package/build/esm/util/ArrayElement.js +0 -15
  393. package/build/esm/util/ArrayElement.js.map +1 -1
  394. package/build/esm/util/NOOP.js +0 -15
  395. package/build/esm/util/NOOP.js.map +1 -1
  396. package/build/esm/util/NullableProps.js +0 -15
  397. package/build/esm/util/NullableProps.js.map +1 -1
  398. package/build/esm/util/UserAgent.js +2 -1
  399. package/build/esm/util/UserAgent.js.map +1 -1
  400. package/build/esm/util/WireObjectSet.js +2 -0
  401. package/build/esm/util/WireObjectSet.js.map +1 -1
  402. package/build/esm/util/addUserAgentAndRequestContextHeaders.js +1 -0
  403. package/build/esm/util/addUserAgentAndRequestContextHeaders.js.map +1 -1
  404. package/build/esm/util/augmentRequestContext.js +1 -0
  405. package/build/esm/util/augmentRequestContext.js.map +1 -1
  406. package/build/esm/util/datetimeConverters.js +60 -0
  407. package/build/esm/util/datetimeConverters.js.map +1 -0
  408. package/build/esm/util/datetimeConverters.test.js +76 -0
  409. package/build/esm/util/datetimeConverters.test.js.map +1 -0
  410. package/build/esm/util/interfaceUtils.js +21 -0
  411. package/build/esm/util/interfaceUtils.js.map +1 -0
  412. package/build/esm/util/isOntologyObjectV2.js +1 -0
  413. package/build/esm/util/isOntologyObjectV2.js.map +1 -1
  414. package/build/esm/util/isOsdkBaseObject.js +1 -0
  415. package/build/esm/util/isOsdkBaseObject.js.map +1 -1
  416. package/build/esm/util/isOsdkObject.js +1 -0
  417. package/build/esm/util/isOsdkObject.js.map +1 -1
  418. package/build/esm/util/objectSetUtils.js +26 -0
  419. package/build/esm/util/objectSetUtils.js.map +1 -0
  420. package/build/esm/util/partialBy.js +0 -15
  421. package/build/esm/util/partialBy.js.map +1 -1
  422. package/build/esm/util/streamutils.js +7 -0
  423. package/build/esm/util/streamutils.js.map +1 -1
  424. package/build/esm/util/timeseriesUtils.js +2 -1
  425. package/build/esm/util/timeseriesUtils.js.map +1 -1
  426. package/build/esm/util/toDataValue.js +28 -2
  427. package/build/esm/util/toDataValue.js.map +1 -1
  428. package/build/esm/util/toDataValue.test.js +14 -1
  429. package/build/esm/util/toDataValue.test.js.map +1 -1
  430. package/build/esm/util/toDataValueQueries.js +10 -1
  431. package/build/esm/util/toDataValueQueries.js.map +1 -1
  432. package/build/types/Client.d.ts +20 -0
  433. package/build/types/Definitions.test.d.ts +1 -0
  434. package/build/types/Logger.d.ts +18 -0
  435. package/build/types/MinimalClientContext.d.ts +21 -0
  436. package/build/types/ResultOrError.d.ts +9 -0
  437. package/build/types/SatisfiesSemver.d.ts +10 -0
  438. package/build/types/SatisfiesSemver.test.d.ts +1 -0
  439. package/build/types/__unstable/ConjureSupport.d.ts +37 -0
  440. package/build/{browser → types}/__unstable/createBulkLinksAsyncIterFactory.d.ts +1 -7
  441. package/build/types/actions/ActionValidationError.d.ts +5 -0
  442. package/build/types/actions/actions.test.d.ts +1 -0
  443. package/build/{esm → types}/actions/applyAction.d.ts +18 -17
  444. package/build/{browser → types}/createClient.d.ts +1 -4
  445. package/build/types/createClient.test.d.ts +1 -0
  446. package/build/types/createGeotimeSeriesProperty.d.ts +13 -0
  447. package/build/types/createMediaReferenceProperty.d.ts +13 -0
  448. package/build/types/createMinimalClient.d.ts +1 -0
  449. package/build/types/createPlatformClient.d.ts +15 -0
  450. package/build/types/createTimeseriesProperty.d.ts +13 -0
  451. package/build/types/definitions/LinkDefinitions.test.d.ts +1 -0
  452. package/build/types/derivedProperties/createWithPropertiesObjectSet.d.ts +1 -0
  453. package/build/types/derivedProperties/createWithPropertiesObjectSet.test.d.ts +1 -0
  454. package/build/types/fetchMetadata.d.ts +1 -0
  455. package/build/types/fetchMetadata.test.d.ts +1 -0
  456. package/build/types/index.d.ts +12 -0
  457. package/build/types/intellisense.test.d.ts +1 -0
  458. package/build/types/intellisense.test.helpers/callsQueryAcceptsObject.d.ts +1 -0
  459. package/build/types/internal/conversions/legacyToModernSingleAggregationResult.d.ts +1 -0
  460. package/build/types/internal/conversions/modernToLegacyAggregationClause.d.ts +1 -0
  461. package/build/types/internal/conversions/modernToLegacyGroupByClause.d.ts +1 -0
  462. package/build/{browser → types}/internal/conversions/modernToLegacyWhereClause.d.ts +0 -1
  463. package/build/types/internal/conversions/modernToLegacyWhereClause.test.d.ts +1 -0
  464. package/build/{browser → types}/object/AttachmentUpload.d.ts +0 -1
  465. package/build/types/object/Cache.d.ts +17 -0
  466. package/build/types/object/Cache.test.d.ts +1 -0
  467. package/build/types/object/SimpleCache.d.ts +52 -0
  468. package/build/types/object/aggregate.d.ts +1 -0
  469. package/build/types/object/aggregate.test.d.ts +1 -0
  470. package/build/types/object/attachment.test.d.ts +1 -0
  471. package/build/types/object/convertWireToOsdkObjects/InterfaceHolder.d.ts +1 -0
  472. package/build/types/object/convertWireToOsdkObjects/InternalSymbols.d.ts +6 -0
  473. package/build/types/object/convertWireToOsdkObjects/ObjectHolder.d.ts +1 -0
  474. package/build/types/object/convertWireToOsdkObjects/OsdkCustomInspectPrototype.d.ts +15 -0
  475. package/build/types/object/convertWireToOsdkObjects/PropertyDescriptorRecord.d.ts +5 -0
  476. package/build/types/object/convertWireToOsdkObjects/createOsdkInterface.d.ts +1 -0
  477. package/build/types/object/convertWireToOsdkObjects/createOsdkInterface.test.d.ts +1 -0
  478. package/build/types/object/convertWireToOsdkObjects/createOsdkObject.d.ts +1 -0
  479. package/build/{browser → types}/object/convertWireToOsdkObjects/getDollarAs.d.ts +0 -1
  480. package/build/types/object/convertWireToOsdkObjects/getDollarLink.d.ts +1 -0
  481. package/build/types/object/convertWireToOsdkObjects.d.ts +1 -0
  482. package/build/types/object/convertWireToOsdkObjects.test.d.ts +1 -0
  483. package/build/types/object/fetchPage.d.ts +5 -0
  484. package/build/types/object/fetchPage.test.d.ts +1 -0
  485. package/build/types/object/fetchSingle.d.ts +1 -0
  486. package/build/types/object/geotimeseriesreference.test.d.ts +1 -0
  487. package/build/types/object/media.test.d.ts +1 -0
  488. package/build/types/object/mediaUpload.d.ts +2 -0
  489. package/build/{esm → types}/object/object.test.d.ts +1 -2
  490. package/build/types/object/timeseries.test.d.ts +1 -0
  491. package/build/types/objectSet/InterfaceObjectSet.test.d.ts +1 -0
  492. package/build/types/objectSet/ObjectSet.test.d.ts +7 -0
  493. package/build/types/objectSet/ObjectSetFactory.d.ts +1 -0
  494. package/build/types/objectSet/ObjectSetListenerWebsocket.d.ts +1 -0
  495. package/build/types/objectSet/ObjectSetListenerWebsocket.test.d.ts +1 -0
  496. package/build/types/objectSet/conjureUnionType.d.ts +11 -0
  497. package/build/types/objectSet/createObjectSet.d.ts +1 -0
  498. package/build/types/ontology/OntologyProvider.d.ts +27 -0
  499. package/build/{browser → types}/ontology/StandardOntologyProvider.d.ts +1 -3
  500. package/build/types/ontology/StandardOntologyProvider.test.d.ts +1 -0
  501. package/build/{browser → types}/ontology/loadActionMetadata.d.ts +0 -1
  502. package/build/{esm → types}/ontology/loadFullObjectMetadata.d.ts +1 -4
  503. package/build/{esm → types}/ontology/loadInterfaceMetadata.d.ts +0 -1
  504. package/build/{esm → types}/ontology/loadQueryMetadata.d.ts +0 -1
  505. package/build/{browser → types}/ontology/makeConjureContext.d.ts +0 -1
  506. package/build/types/pageRequestAsAsyncIter.d.ts +10 -0
  507. package/build/types/public/internal.d.ts +3 -0
  508. package/build/{browser → types}/public/unstable-do-not-use.d.ts +0 -1
  509. package/build/types/public-utils/createAndFetchTempObjectSetRid.d.ts +10 -0
  510. package/build/types/public-utils/hydrateAttachmentFromRid.d.ts +9 -0
  511. package/build/types/public-utils/hydrateObjectSetFromRid.d.ts +10 -0
  512. package/build/{esm → types}/queries/applyQuery.d.ts +4 -2
  513. package/build/types/queries/queries.test.d.ts +1 -0
  514. package/build/{esm → types}/queries/types.d.ts +3 -12
  515. package/build/{esm → types}/tsserver.d.ts +19 -21
  516. package/build/{browser → types}/util/ArrayElement.d.ts +0 -1
  517. package/build/types/util/NOOP.d.ts +1 -0
  518. package/build/types/util/NullableProps.d.ts +1 -0
  519. package/build/{browser → types}/util/UserAgent.d.ts +0 -1
  520. package/build/types/util/WireObjectSet.d.ts +1 -0
  521. package/build/{esm → types}/util/addUserAgentAndRequestContextHeaders.d.ts +0 -1
  522. package/build/{browser → types}/util/augmentRequestContext.d.ts +6 -7
  523. package/build/types/util/datetimeConverters.d.ts +21 -0
  524. package/build/types/util/datetimeConverters.test.d.ts +1 -0
  525. package/build/types/util/interfaceUtils.d.ts +1 -0
  526. package/build/types/util/isOntologyObjectV2.d.ts +1 -0
  527. package/build/{esm/util/isOsdkObject.d.ts → types/util/isOsdkBaseObject.d.ts} +0 -1
  528. package/build/{browser → types}/util/isOsdkObject.d.ts +0 -1
  529. package/build/types/util/objectSetUtils.d.ts +3 -0
  530. package/build/types/util/partialBy.d.ts +8 -0
  531. package/build/{browser → types}/util/streamutils.d.ts +0 -1
  532. package/build/{browser → types}/util/timeseriesUtils.d.ts +4 -5
  533. package/build/types/util/toDataValue.d.ts +1 -0
  534. package/build/types/util/toDataValue.test.d.ts +1 -0
  535. package/build/types/util/toDataValueQueries.d.ts +1 -0
  536. package/index.d.ts +17 -0
  537. package/internal.d.ts +17 -0
  538. package/package.json +59 -26
  539. package/unstable-do-not-use.d.ts +1 -1
  540. package/build/browser/Client.d.ts +0 -42
  541. package/build/browser/Client.d.ts.map +0 -1
  542. package/build/browser/Definitions.test.d.ts +0 -2
  543. package/build/browser/Definitions.test.d.ts.map +0 -1
  544. package/build/browser/Logger.d.ts +0 -19
  545. package/build/browser/Logger.d.ts.map +0 -1
  546. package/build/browser/MinimalClientContext.d.ts +0 -26
  547. package/build/browser/MinimalClientContext.d.ts.map +0 -1
  548. package/build/browser/ResultOrError.d.ts +0 -12
  549. package/build/browser/ResultOrError.d.ts.map +0 -1
  550. package/build/browser/SatisfiesSemver.d.ts +0 -4
  551. package/build/browser/SatisfiesSemver.d.ts.map +0 -1
  552. package/build/browser/SatisfiesSemver.test.d.ts +0 -2
  553. package/build/browser/SatisfiesSemver.test.d.ts.map +0 -1
  554. package/build/browser/__unstable/ConjureSupport.d.ts +0 -55
  555. package/build/browser/__unstable/ConjureSupport.d.ts.map +0 -1
  556. package/build/browser/__unstable/createBulkLinksAsyncIterFactory.d.ts.map +0 -1
  557. package/build/browser/actions/ActionValidationError.d.ts +0 -6
  558. package/build/browser/actions/ActionValidationError.d.ts.map +0 -1
  559. package/build/browser/actions/actions.test.d.ts +0 -2
  560. package/build/browser/actions/actions.test.d.ts.map +0 -1
  561. package/build/browser/actions/applyAction.d.ts +0 -30
  562. package/build/browser/actions/applyAction.d.ts.map +0 -1
  563. package/build/browser/createAttachmentFromRid.d.ts +0 -10
  564. package/build/browser/createAttachmentFromRid.d.ts.map +0 -1
  565. package/build/browser/createAttachmentFromRid.js.map +0 -1
  566. package/build/browser/createClient.d.ts.map +0 -1
  567. package/build/browser/createClient.test.d.ts +0 -2
  568. package/build/browser/createClient.test.d.ts.map +0 -1
  569. package/build/browser/createGeotimeSeriesProperty.d.ts +0 -14
  570. package/build/browser/createGeotimeSeriesProperty.d.ts.map +0 -1
  571. package/build/browser/createMinimalClient.d.ts +0 -2
  572. package/build/browser/createMinimalClient.d.ts.map +0 -1
  573. package/build/browser/createPlatformClient.d.ts +0 -17
  574. package/build/browser/createPlatformClient.d.ts.map +0 -1
  575. package/build/browser/createTimeseriesProperty.d.ts +0 -14
  576. package/build/browser/createTimeseriesProperty.d.ts.map +0 -1
  577. package/build/browser/definitions/LinkDefinitions.test.d.ts +0 -2
  578. package/build/browser/definitions/LinkDefinitions.test.d.ts.map +0 -1
  579. package/build/browser/fetchMetadata.d.ts +0 -2
  580. package/build/browser/fetchMetadata.d.ts.map +0 -1
  581. package/build/browser/fetchMetadata.test.d.ts +0 -2
  582. package/build/browser/fetchMetadata.test.d.ts.map +0 -1
  583. package/build/browser/index.d.ts +0 -13
  584. package/build/browser/index.d.ts.map +0 -1
  585. package/build/browser/intellisense.test.d.ts +0 -2
  586. package/build/browser/intellisense.test.d.ts.map +0 -1
  587. package/build/browser/intellisense.test.helpers/callsQueryAcceptsObject.d.ts +0 -2
  588. package/build/browser/intellisense.test.helpers/callsQueryAcceptsObject.d.ts.map +0 -1
  589. package/build/browser/internal/conversions/legacyToModernSingleAggregationResult.d.ts +0 -2
  590. package/build/browser/internal/conversions/legacyToModernSingleAggregationResult.d.ts.map +0 -1
  591. package/build/browser/internal/conversions/modernToLegacyAggregationClause.d.ts +0 -2
  592. package/build/browser/internal/conversions/modernToLegacyAggregationClause.d.ts.map +0 -1
  593. package/build/browser/internal/conversions/modernToLegacyGroupByClause.d.ts +0 -2
  594. package/build/browser/internal/conversions/modernToLegacyGroupByClause.d.ts.map +0 -1
  595. package/build/browser/internal/conversions/modernToLegacyWhereClause.d.ts.map +0 -1
  596. package/build/browser/internal/conversions/modernToLegacyWhereClause.test.d.ts +0 -2
  597. package/build/browser/internal/conversions/modernToLegacyWhereClause.test.d.ts.map +0 -1
  598. package/build/browser/object/AttachmentUpload.d.ts.map +0 -1
  599. package/build/browser/object/Cache.d.ts +0 -2
  600. package/build/browser/object/Cache.d.ts.map +0 -1
  601. package/build/browser/object/Cache.test.d.ts +0 -11
  602. package/build/browser/object/Cache.test.d.ts.map +0 -1
  603. package/build/browser/object/SimpleCache.d.ts +0 -38
  604. package/build/browser/object/SimpleCache.d.ts.map +0 -1
  605. package/build/browser/object/aggregate.d.ts +0 -2
  606. package/build/browser/object/aggregate.d.ts.map +0 -1
  607. package/build/browser/object/aggregate.test.d.ts +0 -2
  608. package/build/browser/object/aggregate.test.d.ts.map +0 -1
  609. package/build/browser/object/attachment.test.d.ts +0 -2
  610. package/build/browser/object/attachment.test.d.ts.map +0 -1
  611. package/build/browser/object/convertWireToOsdkObjects/InterfaceHolder.d.ts +0 -11
  612. package/build/browser/object/convertWireToOsdkObjects/InterfaceHolder.d.ts.map +0 -1
  613. package/build/browser/object/convertWireToOsdkObjects/InternalSymbols.d.ts +0 -14
  614. package/build/browser/object/convertWireToOsdkObjects/InternalSymbols.d.ts.map +0 -1
  615. package/build/browser/object/convertWireToOsdkObjects/ObjectHolder.d.ts +0 -2
  616. package/build/browser/object/convertWireToOsdkObjects/ObjectHolder.d.ts.map +0 -1
  617. package/build/browser/object/convertWireToOsdkObjects/OsdkCustomInspectPrototype.d.ts +0 -2
  618. package/build/browser/object/convertWireToOsdkObjects/OsdkCustomInspectPrototype.d.ts.map +0 -1
  619. package/build/browser/object/convertWireToOsdkObjects/PropertyDescriptorRecord.d.ts +0 -8
  620. package/build/browser/object/convertWireToOsdkObjects/PropertyDescriptorRecord.d.ts.map +0 -1
  621. package/build/browser/object/convertWireToOsdkObjects/createOsdkInterface.d.ts +0 -2
  622. package/build/browser/object/convertWireToOsdkObjects/createOsdkInterface.d.ts.map +0 -1
  623. package/build/browser/object/convertWireToOsdkObjects/createOsdkInterface.test.d.ts +0 -2
  624. package/build/browser/object/convertWireToOsdkObjects/createOsdkInterface.test.d.ts.map +0 -1
  625. package/build/browser/object/convertWireToOsdkObjects/createOsdkObject.d.ts +0 -2
  626. package/build/browser/object/convertWireToOsdkObjects/createOsdkObject.d.ts.map +0 -1
  627. package/build/browser/object/convertWireToOsdkObjects/getDollarAs.d.ts.map +0 -1
  628. package/build/browser/object/convertWireToOsdkObjects/getDollarLink.d.ts +0 -2
  629. package/build/browser/object/convertWireToOsdkObjects/getDollarLink.d.ts.map +0 -1
  630. package/build/browser/object/convertWireToOsdkObjects.d.ts +0 -2
  631. package/build/browser/object/convertWireToOsdkObjects.d.ts.map +0 -1
  632. package/build/browser/object/convertWireToOsdkObjects.test.d.ts +0 -2
  633. package/build/browser/object/convertWireToOsdkObjects.test.d.ts.map +0 -1
  634. package/build/browser/object/fetchPage.d.ts +0 -3
  635. package/build/browser/object/fetchPage.d.ts.map +0 -1
  636. package/build/browser/object/fetchPage.test.d.ts +0 -2
  637. package/build/browser/object/fetchPage.test.d.ts.map +0 -1
  638. package/build/browser/object/fetchSingle.d.ts +0 -2
  639. package/build/browser/object/fetchSingle.d.ts.map +0 -1
  640. package/build/browser/object/geotimeseriesreference.test.d.ts +0 -2
  641. package/build/browser/object/geotimeseriesreference.test.d.ts.map +0 -1
  642. package/build/browser/object/object.test.d.ts +0 -12
  643. package/build/browser/object/object.test.d.ts.map +0 -1
  644. package/build/browser/object/timeseries.test.d.ts +0 -2
  645. package/build/browser/object/timeseries.test.d.ts.map +0 -1
  646. package/build/browser/objectSet/ObjectSet.test.d.ts +0 -2
  647. package/build/browser/objectSet/ObjectSet.test.d.ts.map +0 -1
  648. package/build/browser/objectSet/ObjectSetFactory.d.ts +0 -2
  649. package/build/browser/objectSet/ObjectSetFactory.d.ts.map +0 -1
  650. package/build/browser/objectSet/ObjectSetListenerWebsocket.d.ts +0 -2
  651. package/build/browser/objectSet/ObjectSetListenerWebsocket.d.ts.map +0 -1
  652. package/build/browser/objectSet/ObjectSetListenerWebsocket.test.d.ts +0 -2
  653. package/build/browser/objectSet/ObjectSetListenerWebsocket.test.d.ts.map +0 -1
  654. package/build/browser/objectSet/conjureUnionType.d.ts +0 -13
  655. package/build/browser/objectSet/conjureUnionType.d.ts.map +0 -1
  656. package/build/browser/objectSet/createObjectSet.d.ts +0 -2
  657. package/build/browser/objectSet/createObjectSet.d.ts.map +0 -1
  658. package/build/browser/objectSet/toConjureObjectSet.d.ts +0 -2
  659. package/build/browser/objectSet/toConjureObjectSet.d.ts.map +0 -1
  660. package/build/browser/objectSet/toConjureObjectSet.js +0 -165
  661. package/build/browser/objectSet/toConjureObjectSet.js.map +0 -1
  662. package/build/browser/ontology/OntologyProvider.d.ts +0 -32
  663. package/build/browser/ontology/OntologyProvider.d.ts.map +0 -1
  664. package/build/browser/ontology/StandardOntologyProvider.d.ts.map +0 -1
  665. package/build/browser/ontology/StandardOntologyProvider.test.d.ts +0 -2
  666. package/build/browser/ontology/StandardOntologyProvider.test.d.ts.map +0 -1
  667. package/build/browser/ontology/loadActionMetadata.d.ts.map +0 -1
  668. package/build/browser/ontology/loadFullObjectMetadata.d.ts +0 -6
  669. package/build/browser/ontology/loadFullObjectMetadata.d.ts.map +0 -1
  670. package/build/browser/ontology/loadInterfaceMetadata.d.ts +0 -4
  671. package/build/browser/ontology/loadInterfaceMetadata.d.ts.map +0 -1
  672. package/build/browser/ontology/loadQueryMetadata.d.ts +0 -4
  673. package/build/browser/ontology/loadQueryMetadata.d.ts.map +0 -1
  674. package/build/browser/ontology/makeConjureContext.d.ts.map +0 -1
  675. package/build/browser/pageRequestAsAsyncIter.d.ts +0 -10
  676. package/build/browser/pageRequestAsAsyncIter.d.ts.map +0 -1
  677. package/build/browser/public/unstable-do-not-use.d.ts.map +0 -1
  678. package/build/browser/queries/applyQuery.d.ts +0 -6
  679. package/build/browser/queries/applyQuery.d.ts.map +0 -1
  680. package/build/browser/queries/queries.test.d.ts +0 -2
  681. package/build/browser/queries/queries.test.d.ts.map +0 -1
  682. package/build/browser/queries/types.d.ts +0 -20
  683. package/build/browser/queries/types.d.ts.map +0 -1
  684. package/build/browser/tsserver.d.ts +0 -34
  685. package/build/browser/tsserver.d.ts.map +0 -1
  686. package/build/browser/util/ArrayElement.d.ts.map +0 -1
  687. package/build/browser/util/NOOP.d.ts +0 -4
  688. package/build/browser/util/NOOP.d.ts.map +0 -1
  689. package/build/browser/util/NullableProps.d.ts +0 -6
  690. package/build/browser/util/NullableProps.d.ts.map +0 -1
  691. package/build/browser/util/UserAgent.d.ts.map +0 -1
  692. package/build/browser/util/WireObjectSet.d.ts +0 -2
  693. package/build/browser/util/WireObjectSet.d.ts.map +0 -1
  694. package/build/browser/util/addUserAgentAndRequestContextHeaders.d.ts +0 -4
  695. package/build/browser/util/addUserAgentAndRequestContextHeaders.d.ts.map +0 -1
  696. package/build/browser/util/augmentRequestContext.d.ts.map +0 -1
  697. package/build/browser/util/isOntologyObjectV2.d.ts +0 -2
  698. package/build/browser/util/isOntologyObjectV2.d.ts.map +0 -1
  699. package/build/browser/util/isOsdkBaseObject.d.ts +0 -3
  700. package/build/browser/util/isOsdkBaseObject.d.ts.map +0 -1
  701. package/build/browser/util/isOsdkObject.d.ts.map +0 -1
  702. package/build/browser/util/partialBy.d.ts +0 -3
  703. package/build/browser/util/partialBy.d.ts.map +0 -1
  704. package/build/browser/util/streamutils.d.ts.map +0 -1
  705. package/build/browser/util/timeseriesUtils.d.ts.map +0 -1
  706. package/build/browser/util/toDataValue.d.ts +0 -2
  707. package/build/browser/util/toDataValue.d.ts.map +0 -1
  708. package/build/browser/util/toDataValue.test.d.ts +0 -2
  709. package/build/browser/util/toDataValue.test.d.ts.map +0 -1
  710. package/build/browser/util/toDataValueQueries.d.ts +0 -2
  711. package/build/browser/util/toDataValueQueries.d.ts.map +0 -1
  712. package/build/esm/Client.d.ts +0 -42
  713. package/build/esm/Client.d.ts.map +0 -1
  714. package/build/esm/Definitions.test.d.ts +0 -2
  715. package/build/esm/Definitions.test.d.ts.map +0 -1
  716. package/build/esm/Logger.d.ts +0 -19
  717. package/build/esm/Logger.d.ts.map +0 -1
  718. package/build/esm/MinimalClientContext.d.ts +0 -26
  719. package/build/esm/MinimalClientContext.d.ts.map +0 -1
  720. package/build/esm/ResultOrError.d.ts +0 -12
  721. package/build/esm/ResultOrError.d.ts.map +0 -1
  722. package/build/esm/SatisfiesSemver.d.ts +0 -4
  723. package/build/esm/SatisfiesSemver.d.ts.map +0 -1
  724. package/build/esm/SatisfiesSemver.test.d.ts +0 -2
  725. package/build/esm/SatisfiesSemver.test.d.ts.map +0 -1
  726. package/build/esm/__unstable/ConjureSupport.d.ts +0 -55
  727. package/build/esm/__unstable/ConjureSupport.d.ts.map +0 -1
  728. package/build/esm/__unstable/createBulkLinksAsyncIterFactory.d.ts +0 -10
  729. package/build/esm/__unstable/createBulkLinksAsyncIterFactory.d.ts.map +0 -1
  730. package/build/esm/actions/ActionValidationError.d.ts +0 -6
  731. package/build/esm/actions/ActionValidationError.d.ts.map +0 -1
  732. package/build/esm/actions/actions.test.d.ts +0 -2
  733. package/build/esm/actions/actions.test.d.ts.map +0 -1
  734. package/build/esm/actions/applyAction.d.ts.map +0 -1
  735. package/build/esm/createAttachmentFromRid.d.ts +0 -10
  736. package/build/esm/createAttachmentFromRid.d.ts.map +0 -1
  737. package/build/esm/createAttachmentFromRid.js.map +0 -1
  738. package/build/esm/createClient.d.ts +0 -6
  739. package/build/esm/createClient.d.ts.map +0 -1
  740. package/build/esm/createClient.test.d.ts +0 -2
  741. package/build/esm/createClient.test.d.ts.map +0 -1
  742. package/build/esm/createGeotimeSeriesProperty.d.ts +0 -14
  743. package/build/esm/createGeotimeSeriesProperty.d.ts.map +0 -1
  744. package/build/esm/createMinimalClient.d.ts +0 -2
  745. package/build/esm/createMinimalClient.d.ts.map +0 -1
  746. package/build/esm/createPlatformClient.d.ts +0 -17
  747. package/build/esm/createPlatformClient.d.ts.map +0 -1
  748. package/build/esm/createTimeseriesProperty.d.ts +0 -14
  749. package/build/esm/createTimeseriesProperty.d.ts.map +0 -1
  750. package/build/esm/definitions/LinkDefinitions.test.d.ts +0 -2
  751. package/build/esm/definitions/LinkDefinitions.test.d.ts.map +0 -1
  752. package/build/esm/fetchMetadata.d.ts +0 -2
  753. package/build/esm/fetchMetadata.d.ts.map +0 -1
  754. package/build/esm/fetchMetadata.test.d.ts +0 -2
  755. package/build/esm/fetchMetadata.test.d.ts.map +0 -1
  756. package/build/esm/index.d.ts +0 -13
  757. package/build/esm/index.d.ts.map +0 -1
  758. package/build/esm/intellisense.test.d.ts +0 -2
  759. package/build/esm/intellisense.test.d.ts.map +0 -1
  760. package/build/esm/intellisense.test.helpers/callsQueryAcceptsObject.d.ts +0 -2
  761. package/build/esm/intellisense.test.helpers/callsQueryAcceptsObject.d.ts.map +0 -1
  762. package/build/esm/internal/conversions/legacyToModernSingleAggregationResult.d.ts +0 -2
  763. package/build/esm/internal/conversions/legacyToModernSingleAggregationResult.d.ts.map +0 -1
  764. package/build/esm/internal/conversions/modernToLegacyAggregationClause.d.ts +0 -2
  765. package/build/esm/internal/conversions/modernToLegacyAggregationClause.d.ts.map +0 -1
  766. package/build/esm/internal/conversions/modernToLegacyGroupByClause.d.ts +0 -2
  767. package/build/esm/internal/conversions/modernToLegacyGroupByClause.d.ts.map +0 -1
  768. package/build/esm/internal/conversions/modernToLegacyWhereClause.d.ts +0 -2
  769. package/build/esm/internal/conversions/modernToLegacyWhereClause.d.ts.map +0 -1
  770. package/build/esm/internal/conversions/modernToLegacyWhereClause.test.d.ts +0 -2
  771. package/build/esm/internal/conversions/modernToLegacyWhereClause.test.d.ts.map +0 -1
  772. package/build/esm/object/AttachmentUpload.d.ts +0 -4
  773. package/build/esm/object/AttachmentUpload.d.ts.map +0 -1
  774. package/build/esm/object/Cache.d.ts +0 -2
  775. package/build/esm/object/Cache.d.ts.map +0 -1
  776. package/build/esm/object/Cache.test.d.ts +0 -11
  777. package/build/esm/object/Cache.test.d.ts.map +0 -1
  778. package/build/esm/object/SimpleCache.d.ts +0 -38
  779. package/build/esm/object/SimpleCache.d.ts.map +0 -1
  780. package/build/esm/object/aggregate.d.ts +0 -2
  781. package/build/esm/object/aggregate.d.ts.map +0 -1
  782. package/build/esm/object/aggregate.test.d.ts +0 -2
  783. package/build/esm/object/aggregate.test.d.ts.map +0 -1
  784. package/build/esm/object/attachment.test.d.ts +0 -2
  785. package/build/esm/object/attachment.test.d.ts.map +0 -1
  786. package/build/esm/object/convertWireToOsdkObjects/InterfaceHolder.d.ts +0 -11
  787. package/build/esm/object/convertWireToOsdkObjects/InterfaceHolder.d.ts.map +0 -1
  788. package/build/esm/object/convertWireToOsdkObjects/InternalSymbols.d.ts +0 -14
  789. package/build/esm/object/convertWireToOsdkObjects/InternalSymbols.d.ts.map +0 -1
  790. package/build/esm/object/convertWireToOsdkObjects/ObjectHolder.d.ts +0 -2
  791. package/build/esm/object/convertWireToOsdkObjects/ObjectHolder.d.ts.map +0 -1
  792. package/build/esm/object/convertWireToOsdkObjects/OsdkCustomInspectPrototype.d.ts +0 -2
  793. package/build/esm/object/convertWireToOsdkObjects/OsdkCustomInspectPrototype.d.ts.map +0 -1
  794. package/build/esm/object/convertWireToOsdkObjects/PropertyDescriptorRecord.d.ts +0 -8
  795. package/build/esm/object/convertWireToOsdkObjects/PropertyDescriptorRecord.d.ts.map +0 -1
  796. package/build/esm/object/convertWireToOsdkObjects/createOsdkInterface.d.ts +0 -2
  797. package/build/esm/object/convertWireToOsdkObjects/createOsdkInterface.d.ts.map +0 -1
  798. package/build/esm/object/convertWireToOsdkObjects/createOsdkInterface.test.d.ts +0 -2
  799. package/build/esm/object/convertWireToOsdkObjects/createOsdkInterface.test.d.ts.map +0 -1
  800. package/build/esm/object/convertWireToOsdkObjects/createOsdkObject.d.ts +0 -2
  801. package/build/esm/object/convertWireToOsdkObjects/createOsdkObject.d.ts.map +0 -1
  802. package/build/esm/object/convertWireToOsdkObjects/getDollarAs.d.ts +0 -3
  803. package/build/esm/object/convertWireToOsdkObjects/getDollarAs.d.ts.map +0 -1
  804. package/build/esm/object/convertWireToOsdkObjects/getDollarLink.d.ts +0 -2
  805. package/build/esm/object/convertWireToOsdkObjects/getDollarLink.d.ts.map +0 -1
  806. package/build/esm/object/convertWireToOsdkObjects.d.ts +0 -2
  807. package/build/esm/object/convertWireToOsdkObjects.d.ts.map +0 -1
  808. package/build/esm/object/convertWireToOsdkObjects.test.d.ts +0 -2
  809. package/build/esm/object/convertWireToOsdkObjects.test.d.ts.map +0 -1
  810. package/build/esm/object/fetchPage.d.ts +0 -3
  811. package/build/esm/object/fetchPage.d.ts.map +0 -1
  812. package/build/esm/object/fetchPage.test.d.ts +0 -2
  813. package/build/esm/object/fetchPage.test.d.ts.map +0 -1
  814. package/build/esm/object/fetchSingle.d.ts +0 -2
  815. package/build/esm/object/fetchSingle.d.ts.map +0 -1
  816. package/build/esm/object/geotimeseriesreference.test.d.ts +0 -2
  817. package/build/esm/object/geotimeseriesreference.test.d.ts.map +0 -1
  818. package/build/esm/object/object.test.d.ts.map +0 -1
  819. package/build/esm/object/timeseries.test.d.ts +0 -2
  820. package/build/esm/object/timeseries.test.d.ts.map +0 -1
  821. package/build/esm/objectSet/ObjectSet.test.d.ts +0 -2
  822. package/build/esm/objectSet/ObjectSet.test.d.ts.map +0 -1
  823. package/build/esm/objectSet/ObjectSetFactory.d.ts +0 -2
  824. package/build/esm/objectSet/ObjectSetFactory.d.ts.map +0 -1
  825. package/build/esm/objectSet/ObjectSetListenerWebsocket.d.ts +0 -2
  826. package/build/esm/objectSet/ObjectSetListenerWebsocket.d.ts.map +0 -1
  827. package/build/esm/objectSet/ObjectSetListenerWebsocket.test.d.ts +0 -2
  828. package/build/esm/objectSet/ObjectSetListenerWebsocket.test.d.ts.map +0 -1
  829. package/build/esm/objectSet/conjureUnionType.d.ts +0 -13
  830. package/build/esm/objectSet/conjureUnionType.d.ts.map +0 -1
  831. package/build/esm/objectSet/createObjectSet.d.ts +0 -2
  832. package/build/esm/objectSet/createObjectSet.d.ts.map +0 -1
  833. package/build/esm/objectSet/toConjureObjectSet.d.ts +0 -2
  834. package/build/esm/objectSet/toConjureObjectSet.d.ts.map +0 -1
  835. package/build/esm/objectSet/toConjureObjectSet.js +0 -165
  836. package/build/esm/objectSet/toConjureObjectSet.js.map +0 -1
  837. package/build/esm/ontology/OntologyProvider.d.ts +0 -32
  838. package/build/esm/ontology/OntologyProvider.d.ts.map +0 -1
  839. package/build/esm/ontology/StandardOntologyProvider.d.ts +0 -5
  840. package/build/esm/ontology/StandardOntologyProvider.d.ts.map +0 -1
  841. package/build/esm/ontology/StandardOntologyProvider.test.d.ts +0 -2
  842. package/build/esm/ontology/StandardOntologyProvider.test.d.ts.map +0 -1
  843. package/build/esm/ontology/loadActionMetadata.d.ts +0 -4
  844. package/build/esm/ontology/loadActionMetadata.d.ts.map +0 -1
  845. package/build/esm/ontology/loadFullObjectMetadata.d.ts.map +0 -1
  846. package/build/esm/ontology/loadInterfaceMetadata.d.ts.map +0 -1
  847. package/build/esm/ontology/loadQueryMetadata.d.ts.map +0 -1
  848. package/build/esm/ontology/makeConjureContext.d.ts +0 -4
  849. package/build/esm/ontology/makeConjureContext.d.ts.map +0 -1
  850. package/build/esm/pageRequestAsAsyncIter.d.ts +0 -10
  851. package/build/esm/pageRequestAsAsyncIter.d.ts.map +0 -1
  852. package/build/esm/public/unstable-do-not-use.d.ts +0 -2
  853. package/build/esm/public/unstable-do-not-use.d.ts.map +0 -1
  854. package/build/esm/queries/applyQuery.d.ts.map +0 -1
  855. package/build/esm/queries/queries.test.d.ts +0 -2
  856. package/build/esm/queries/queries.test.d.ts.map +0 -1
  857. package/build/esm/queries/types.d.ts.map +0 -1
  858. package/build/esm/tsserver.d.ts.map +0 -1
  859. package/build/esm/util/ArrayElement.d.ts +0 -2
  860. package/build/esm/util/ArrayElement.d.ts.map +0 -1
  861. package/build/esm/util/NOOP.d.ts +0 -4
  862. package/build/esm/util/NOOP.d.ts.map +0 -1
  863. package/build/esm/util/NullableProps.d.ts +0 -6
  864. package/build/esm/util/NullableProps.d.ts.map +0 -1
  865. package/build/esm/util/UserAgent.d.ts +0 -2
  866. package/build/esm/util/UserAgent.d.ts.map +0 -1
  867. package/build/esm/util/WireObjectSet.d.ts +0 -2
  868. package/build/esm/util/WireObjectSet.d.ts.map +0 -1
  869. package/build/esm/util/addUserAgentAndRequestContextHeaders.d.ts.map +0 -1
  870. package/build/esm/util/augmentRequestContext.d.ts +0 -32
  871. package/build/esm/util/augmentRequestContext.d.ts.map +0 -1
  872. package/build/esm/util/isOntologyObjectV2.d.ts +0 -2
  873. package/build/esm/util/isOntologyObjectV2.d.ts.map +0 -1
  874. package/build/esm/util/isOsdkBaseObject.d.ts +0 -3
  875. package/build/esm/util/isOsdkBaseObject.d.ts.map +0 -1
  876. package/build/esm/util/isOsdkObject.d.ts.map +0 -1
  877. package/build/esm/util/partialBy.d.ts +0 -3
  878. package/build/esm/util/partialBy.d.ts.map +0 -1
  879. package/build/esm/util/streamutils.d.ts +0 -3
  880. package/build/esm/util/streamutils.d.ts.map +0 -1
  881. package/build/esm/util/timeseriesUtils.d.ts +0 -8
  882. package/build/esm/util/timeseriesUtils.d.ts.map +0 -1
  883. package/build/esm/util/toDataValue.d.ts +0 -2
  884. package/build/esm/util/toDataValue.d.ts.map +0 -1
  885. package/build/esm/util/toDataValue.test.d.ts +0 -2
  886. package/build/esm/util/toDataValue.test.d.ts.map +0 -1
  887. package/build/esm/util/toDataValueQueries.d.ts +0 -2
  888. package/build/esm/util/toDataValueQueries.d.ts.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"createOsdkInterface.test.js","names":["describe","expect","it","InterfaceDefinitions","createOsdkInterface","ObjectDefRef","iface","apiName","displayName","interfaceMap","inverseInterfaceMap","links","pluralDisplayName","primaryKeyApiName","primaryKeyType","properties","type","titleProperty","rid","status","implements","Object","keys","toMatchInlineSnapshot","asdf","toBe","JSON","stringify","undefined"],"sources":["createOsdkInterface.test.js"],"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 */\nimport { describe, expect, it } from \"vitest\";\nimport { InterfaceDefinitions, } from \"../../ontology/OntologyProvider.js\";\nimport { createOsdkInterface } from \"./createOsdkInterface.js\";\nimport { ObjectDefRef } from \"./InternalSymbols.js\";\ndescribe(createOsdkInterface, () => {\n it(\"works in the normal case\", () => {\n const underlying = {\n \"foo\": \"hi mom\",\n [ObjectDefRef]: {\n [InterfaceDefinitions]: {},\n apiName: \"Obj\",\n displayName: \"\",\n interfaceMap: {\n \"IFoo\": {\n \"asdf\": \"foo\",\n },\n },\n inverseInterfaceMap: {},\n links: {},\n pluralDisplayName: \"\",\n primaryKeyApiName: \"\",\n primaryKeyType: \"string\",\n properties: {\n \"foo\": {\n type: \"string\",\n },\n },\n type: \"object\",\n titleProperty: \"foo\",\n rid: \"\",\n status: \"ACTIVE\",\n },\n };\n // underlying: Osdk<Q> & ObjectHolder<Q>,\n // interfaceDef: InterfaceMetadata,\n const iface = createOsdkInterface(underlying, {\n \"apiName\": \"IFoo\",\n displayName: \"\",\n links: {},\n properties: {\n \"asdf\": {\n type: \"string\",\n },\n },\n rid: \"\",\n type: \"interface\",\n implements: [],\n });\n expect(Object.keys(iface)).toMatchInlineSnapshot(`\n [\n \"$apiName\",\n \"asdf\",\n ]\n `);\n expect(iface.asdf).toBe(\"hi mom\");\n expect(JSON.stringify(iface, undefined, 2)).toMatchInlineSnapshot(`\n \"{\n \"$apiName\": \"IFoo\",\n \"asdf\": \"hi mom\"\n }\"\n `);\n });\n it(\"properly maps apiNamespace\", () => {\n const underlying = {\n \"foo\": \"hi mom\",\n [ObjectDefRef]: {\n [InterfaceDefinitions]: {},\n apiName: \"Obj\",\n displayName: \"\",\n interfaceMap: {\n \"a.IFoo\": {\n \"a.asdf\": \"foo\",\n },\n },\n inverseInterfaceMap: {},\n links: {},\n pluralDisplayName: \"\",\n primaryKeyApiName: \"\",\n primaryKeyType: \"string\",\n properties: {\n \"foo\": {\n type: \"string\",\n },\n },\n type: \"object\",\n titleProperty: \"foo\",\n rid: \"\",\n status: \"ACTIVE\",\n },\n };\n // underlying: Osdk<Q> & ObjectHolder<Q>,\n // interfaceDef: InterfaceMetadata,\n const iface = createOsdkInterface(underlying, {\n \"apiName\": \"a.IFoo\",\n displayName: \"\",\n links: {},\n properties: {\n \"a.asdf\": {\n type: \"string\",\n },\n },\n rid: \"\",\n type: \"interface\",\n implements: [],\n });\n expect(Object.keys(iface)).toMatchInlineSnapshot(`\n [\n \"$apiName\",\n \"asdf\",\n ]\n `);\n expect(iface.asdf).toBe(\"hi mom\");\n expect(JSON.stringify(iface, undefined, 2)).toMatchInlineSnapshot(`\n \"{\n \"$apiName\": \"a.IFoo\",\n \"asdf\": \"hi mom\"\n }\"\n `);\n });\n it(\"works with mixed namespaces\", () => {\n const underlying = {\n \"foo\": \"hi mom\",\n [ObjectDefRef]: {\n [InterfaceDefinitions]: {},\n apiName: \"Obj\",\n displayName: \"\",\n interfaceMap: {\n \"a.IFoo\": {\n \"b.asdf\": \"foo\",\n },\n },\n inverseInterfaceMap: {},\n links: {},\n pluralDisplayName: \"\",\n primaryKeyApiName: \"\",\n primaryKeyType: \"string\",\n properties: {\n \"foo\": {\n type: \"string\",\n },\n },\n type: \"object\",\n titleProperty: \"foo\",\n rid: \"\",\n status: \"ACTIVE\",\n },\n };\n // underlying: Osdk<Q> & ObjectHolder<Q>,\n // interfaceDef: InterfaceMetadata,\n const iface = createOsdkInterface(underlying, {\n \"apiName\": \"a.IFoo\",\n displayName: \"\",\n links: {},\n properties: {\n \"b.asdf\": {\n type: \"string\",\n },\n },\n rid: \"\",\n type: \"interface\",\n implements: [],\n });\n expect(Object.keys(iface)).toMatchInlineSnapshot(`\n [\n \"$apiName\",\n \"b.asdf\",\n ]\n `);\n expect(iface[\"b.asdf\"]).toBe(\"hi mom\");\n expect(JSON.stringify(iface, undefined, 2)).toMatchInlineSnapshot(`\n \"{\n \"$apiName\": \"a.IFoo\",\n \"b.asdf\": \"hi mom\"\n }\"\n `);\n });\n});\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"createOsdkInterface.test.js","names":["describe","expect","it","InterfaceDefinitions","createOsdkInterface","ObjectDefRef","iface","apiName","displayName","interfaceMap","inverseInterfaceMap","links","pluralDisplayName","primaryKeyApiName","primaryKeyType","properties","type","titleProperty","rid","status","implements","Object","keys","toMatchInlineSnapshot","asdf","toBe","JSON","stringify","undefined"],"sources":["createOsdkInterface.test.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 { describe, expect, it } from \"vitest\";\nimport {\n type FetchedObjectTypeDefinition,\n InterfaceDefinitions,\n} from \"../../ontology/OntologyProvider.js\";\nimport { createOsdkInterface } from \"./createOsdkInterface.js\";\nimport { ObjectDefRef } from \"./InternalSymbols.js\";\n\ndescribe(createOsdkInterface, () => {\n it(\"works in the normal case\", () => {\n const underlying = {\n \"foo\": \"hi mom\",\n\n [ObjectDefRef]: {\n [InterfaceDefinitions]: {},\n apiName: \"Obj\",\n displayName: \"\",\n interfaceMap: {\n \"IFoo\": {\n \"asdf\": \"foo\",\n },\n },\n inverseInterfaceMap: {},\n links: {},\n pluralDisplayName: \"\",\n primaryKeyApiName: \"\",\n primaryKeyType: \"string\",\n properties: {\n \"foo\": {\n type: \"string\",\n },\n },\n type: \"object\",\n titleProperty: \"foo\",\n rid: \"\",\n status: \"ACTIVE\",\n } satisfies FetchedObjectTypeDefinition,\n };\n\n const iface = createOsdkInterface(underlying as any, {\n \"apiName\": \"IFoo\",\n displayName: \"\",\n links: {},\n properties: {\n \"asdf\": {\n type: \"string\",\n },\n },\n rid: \"\",\n type: \"interface\",\n implements: [],\n });\n\n expect(Object.keys(iface)).toMatchInlineSnapshot(`\n [\n \"$apiName\",\n \"asdf\",\n ]\n `);\n\n expect((iface as any).asdf).toBe(\"hi mom\");\n\n expect(JSON.stringify(iface, undefined, 2)).toMatchInlineSnapshot(`\n \"{\n \"$apiName\": \"IFoo\",\n \"asdf\": \"hi mom\"\n }\"\n `);\n });\n\n it(\"properly maps apiNamespace\", () => {\n const underlying = {\n \"foo\": \"hi mom\",\n\n [ObjectDefRef]: {\n [InterfaceDefinitions]: {},\n apiName: \"Obj\",\n displayName: \"\",\n interfaceMap: {\n \"a.IFoo\": {\n \"a.asdf\": \"foo\",\n },\n },\n inverseInterfaceMap: {},\n links: {},\n pluralDisplayName: \"\",\n primaryKeyApiName: \"\",\n primaryKeyType: \"string\",\n properties: {\n \"foo\": {\n type: \"string\",\n },\n },\n type: \"object\",\n titleProperty: \"foo\",\n rid: \"\",\n status: \"ACTIVE\",\n } satisfies FetchedObjectTypeDefinition,\n };\n\n const iface = createOsdkInterface(underlying as any, {\n \"apiName\": \"a.IFoo\",\n displayName: \"\",\n links: {},\n properties: {\n \"a.asdf\": {\n type: \"string\",\n },\n },\n rid: \"\",\n type: \"interface\",\n implements: [],\n });\n\n expect(Object.keys(iface)).toMatchInlineSnapshot(`\n [\n \"$apiName\",\n \"asdf\",\n ]\n `);\n\n expect((iface as any).asdf).toBe(\"hi mom\");\n\n expect(JSON.stringify(iface, undefined, 2)).toMatchInlineSnapshot(`\n \"{\n \"$apiName\": \"a.IFoo\",\n \"asdf\": \"hi mom\"\n }\"\n `);\n });\n\n it(\"works with mixed namespaces\", () => {\n const underlying = {\n \"foo\": \"hi mom\",\n\n [ObjectDefRef]: {\n [InterfaceDefinitions]: {},\n apiName: \"Obj\",\n displayName: \"\",\n interfaceMap: {\n \"a.IFoo\": {\n \"b.asdf\": \"foo\",\n },\n },\n inverseInterfaceMap: {},\n links: {},\n pluralDisplayName: \"\",\n primaryKeyApiName: \"\",\n primaryKeyType: \"string\",\n properties: {\n \"foo\": {\n type: \"string\",\n },\n },\n type: \"object\",\n titleProperty: \"foo\",\n rid: \"\",\n status: \"ACTIVE\",\n } satisfies FetchedObjectTypeDefinition,\n };\n\n const iface = createOsdkInterface(underlying as any, {\n \"apiName\": \"a.IFoo\",\n displayName: \"\",\n links: {},\n properties: {\n \"b.asdf\": {\n type: \"string\",\n },\n },\n rid: \"\",\n type: \"interface\",\n implements: [],\n });\n\n expect(Object.keys(iface)).toMatchInlineSnapshot(`\n [\n \"$apiName\",\n \"b.asdf\",\n ]\n `);\n\n expect((iface as any)[\"b.asdf\"]).toBe(\"hi mom\");\n\n expect(JSON.stringify(iface, undefined, 2)).toMatchInlineSnapshot(`\n \"{\n \"$apiName\": \"a.IFoo\",\n \"b.asdf\": \"hi mom\"\n }\"\n `);\n });\n});\n"],"mappings":"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","ignoreList":[]}
@@ -13,120 +13,120 @@
13
13
  * See the License for the specific language governing permissions and
14
14
  * limitations under the License.
15
15
  */
16
- import { createAttachmentFromRid } from "../../createAttachmentFromRid.js";
16
+
17
+ import invariant from "tiny-invariant";
17
18
  import { GeotimeSeriesPropertyImpl } from "../../createGeotimeSeriesProperty.js";
19
+ import { MediaReferencePropertyImpl } from "../../createMediaReferenceProperty.js";
18
20
  import { TimeSeriesPropertyImpl } from "../../createTimeseriesProperty.js";
19
- import { createClientCache } from "../Cache.js";
21
+ import { hydrateAttachmentFromRidInternal } from "../../public-utils/hydrateAttachmentFromRid.js";
20
22
  import { get$as } from "./getDollarAs.js";
21
23
  import { get$link } from "./getDollarLink.js";
22
- import { CachedPropertiesRef, ClientRef, ObjectDefRef, RawObject, UnderlyingOsdkObject } from "./InternalSymbols.js";
23
- const objectPrototypeCache = createClientCache(function (client, objectDef) {
24
- return Object.create(null, {
25
- [ObjectDefRef]: {
26
- value: objectDef
27
- },
28
- [ClientRef]: {
29
- value: client
30
- },
31
- "$as": {
32
- value: get$as(objectDef)
33
- },
34
- "$link": {
35
- get: function () {
36
- return get$link(this);
24
+ import { ClientRef, ObjectDefRef, UnderlyingOsdkObject } from "./InternalSymbols.js";
25
+ const specialPropertyTypes = new Set(["attachment", "geotimeSeriesReference", "mediaReference", "numericTimeseries", "stringTimeseries", "sensorTimeseries"]);
26
+
27
+ // kept separate so we are not redefining these functions
28
+ // every time an object is created.
29
+ const basePropDefs = {
30
+ "$as": {
31
+ get: function () {
32
+ return get$as(this[ObjectDefRef]);
33
+ }
34
+ },
35
+ "$link": {
36
+ get: function () {
37
+ return get$link(this);
38
+ }
39
+ },
40
+ "$clone": {
41
+ value: function (update) {
42
+ const rawObj = this[UnderlyingOsdkObject];
43
+ const def = this[ObjectDefRef];
44
+ if (update == null) {
45
+ return createOsdkObject(this[ClientRef], def, {
46
+ ...rawObj
47
+ });
37
48
  }
38
- },
39
- "$updateInternalValues": {
40
- value: function (newValues) {
41
- this[RawObject] = Object.assign({}, this[RawObject], newValues);
49
+ if (def.primaryKeyApiName in update && rawObj[def.primaryKeyApiName] !== update[def.primaryKeyApiName]) {
50
+ throw new Error(`Cannot update ${def.apiName} object with differing primary key values `);
51
+ }
52
+ if (def.titleProperty in update && !("$title" in update)) {
53
+ update.$title = update[def.titleProperty];
42
54
  }
55
+ const newObject = {
56
+ ...this[UnderlyingOsdkObject],
57
+ ...update
58
+ };
59
+ return createOsdkObject(this[ClientRef], this[ObjectDefRef], newObject);
43
60
  }
44
- });
45
- });
61
+ }
62
+ };
63
+
46
64
  /** @internal */
47
65
  export function createOsdkObject(client, objectDef, rawObj) {
48
- // We use multiple layers of prototypes to maximize reuse and also to keep
49
- // [RawObject] out of `ownKeys`. This keeps the code in the proxy below simpler.
50
- const objectHolderPrototype = Object.create(objectPrototypeCache.get(client, objectDef), {
51
- [RawObject]: {
52
- value: rawObj,
53
- writable: true // so we can allow updates
66
+ // updates the object's "hidden class/map".
67
+ Object.defineProperties(rawObj, {
68
+ [UnderlyingOsdkObject]: {
69
+ enumerable: false,
70
+ value: rawObj
54
71
  },
55
- [CachedPropertiesRef]: {
56
- value: new Map(),
57
- writable: true
58
- }
59
- });
60
- // we separate the holder out so we can update
61
- // the underlying data without having to return a new object
62
- // we also need the holder so we can customize the console.log output
63
- const holder = Object.create(objectHolderPrototype);
64
- const osdkObject = new Proxy(holder, {
65
- ownKeys(target) {
66
- return Reflect.ownKeys(target[RawObject]);
72
+ [ObjectDefRef]: {
73
+ value: objectDef,
74
+ enumerable: false
67
75
  },
68
- get(target, p, receiver) {
69
- switch (p) {
70
- case UnderlyingOsdkObject:
71
- // effectively point back to the proxy
72
- return receiver;
73
- }
74
- if (p in target) return target[p];
75
- if (p in rawObj) {
76
- const rawValue = target[RawObject][p];
77
- const propDef = objectDef.properties[p];
78
- if (propDef) {
76
+ [ClientRef]: {
77
+ value: client,
78
+ enumerable: false
79
+ },
80
+ ...basePropDefs
81
+ });
82
+
83
+ // Assign the special values
84
+ for (const propKey of Object.keys(rawObj)) {
85
+ if (propKey in objectDef.properties && typeof objectDef.properties[propKey].type === "string" && specialPropertyTypes.has(objectDef.properties[propKey].type)) {
86
+ rawObj[propKey] = createSpecialProperty(client, objectDef, rawObj, propKey);
87
+ }
88
+ }
89
+ return Object.freeze(rawObj);
90
+ }
91
+ function createSpecialProperty(client, objectDef, rawObject, p) {
92
+ const rawValue = rawObject[p];
93
+ const propDef = objectDef.properties[p];
94
+ if (process.env.NODE_ENV !== "production") {
95
+ !(propDef != null && typeof propDef.type === "string" && specialPropertyTypes.has(propDef.type)) ? process.env.NODE_ENV !== "production" ? invariant(false) : invariant(false) : void 0;
96
+ }
97
+ {
98
+ {
99
+ {
100
+ {
79
101
  if (propDef.type === "attachment") {
80
102
  if (Array.isArray(rawValue)) {
81
- return rawValue.map(a => createAttachmentFromRid(client, a.rid));
103
+ return rawValue.map(a => hydrateAttachmentFromRidInternal(client, a.rid));
82
104
  }
83
- return createAttachmentFromRid(client, rawValue.rid);
105
+ return hydrateAttachmentFromRidInternal(client, rawValue.rid);
84
106
  }
85
- if (propDef.type === "numericTimeseries" || propDef.type === "stringTimeseries") {
86
- return new TimeSeriesPropertyImpl(client, objectDef.apiName, target[RawObject][objectDef.primaryKeyApiName], p);
107
+ if (propDef.type === "numericTimeseries" || propDef.type === "stringTimeseries" || propDef.type === "sensorTimeseries") {
108
+ return new TimeSeriesPropertyImpl(client, objectDef.apiName, rawObject[objectDef.primaryKeyApiName], p);
87
109
  }
88
110
  if (propDef.type === "geotimeSeriesReference") {
89
- const instance = target[CachedPropertiesRef].get(p);
90
- if (instance != null) {
91
- return instance;
92
- }
93
- const geotimeProp = new GeotimeSeriesPropertyImpl(client, objectDef.apiName, target[RawObject][objectDef.primaryKeyApiName], p, rawValue.type === "geotimeSeriesValue" ? {
111
+ return new GeotimeSeriesPropertyImpl(client, objectDef.apiName, rawObject[objectDef.primaryKeyApiName], p, rawValue.type === "geotimeSeriesValue" ? {
94
112
  time: rawValue.timestamp,
95
113
  value: {
96
114
  type: "Point",
97
115
  coordinates: rawValue.position
98
116
  }
99
117
  } : undefined);
100
- target[CachedPropertiesRef].set(p, geotimeProp);
101
- return geotimeProp;
118
+ }
119
+ if (propDef.type === "mediaReference") {
120
+ return new MediaReferencePropertyImpl({
121
+ client,
122
+ objectApiName: objectDef.apiName,
123
+ primaryKey: rawObject[objectDef.primaryKeyApiName],
124
+ propertyName: p
125
+ });
102
126
  }
103
127
  }
104
- return rawValue;
105
128
  }
106
- // we do not do any fall through to avoid unexpected behavior
107
- },
108
- set(target, p, newValue) {
109
- // allow the prototype to update this value
110
- if (p === RawObject) {
111
- // symbol only exists internally so no one else can hit this
112
- target[p] = newValue;
113
- return true;
114
- }
115
- return false;
116
- },
117
- getOwnPropertyDescriptor(target, p) {
118
- if (p === RawObject) {
119
- return Reflect.getOwnPropertyDescriptor(target, p);
120
- }
121
- if (target[RawObject][p] != null) {
122
- return {
123
- configurable: true,
124
- enumerable: true
125
- };
126
- }
127
- return undefined;
128
129
  }
129
- });
130
- return osdkObject;
130
+ }
131
131
  }
132
132
  //# sourceMappingURL=createOsdkObject.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"createOsdkObject.js","names":["createAttachmentFromRid","GeotimeSeriesPropertyImpl","TimeSeriesPropertyImpl","createClientCache","get$as","get$link","CachedPropertiesRef","ClientRef","ObjectDefRef","RawObject","UnderlyingOsdkObject","objectPrototypeCache","client","objectDef","Object","create","value","get","newValues","assign","createOsdkObject","rawObj","objectHolderPrototype","writable","Map","holder","osdkObject","Proxy","ownKeys","target","Reflect","p","receiver","rawValue","propDef","properties","type","Array","isArray","map","a","rid","apiName","primaryKeyApiName","instance","geotimeProp","time","timestamp","coordinates","position","undefined","set","newValue","getOwnPropertyDescriptor","configurable","enumerable"],"sources":["createOsdkObject.js"],"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 */\nimport { createAttachmentFromRid } from \"../../createAttachmentFromRid.js\";\nimport { GeotimeSeriesPropertyImpl } from \"../../createGeotimeSeriesProperty.js\";\nimport { TimeSeriesPropertyImpl } from \"../../createTimeseriesProperty.js\";\nimport { createClientCache } from \"../Cache.js\";\nimport { get$as } from \"./getDollarAs.js\";\nimport { get$link } from \"./getDollarLink.js\";\nimport { CachedPropertiesRef, ClientRef, ObjectDefRef, RawObject, UnderlyingOsdkObject, } from \"./InternalSymbols.js\";\nconst objectPrototypeCache = createClientCache(function (client, objectDef) {\n return Object.create(null, {\n [ObjectDefRef]: { value: objectDef },\n [ClientRef]: { value: client },\n \"$as\": { value: get$as(objectDef) },\n \"$link\": {\n get: function () {\n return get$link(this);\n },\n },\n \"$updateInternalValues\": {\n value: function (newValues) {\n this[RawObject] = Object.assign({}, this[RawObject], newValues);\n },\n },\n });\n});\n/** @internal */\nexport function createOsdkObject(client, objectDef, rawObj) {\n // We use multiple layers of prototypes to maximize reuse and also to keep\n // [RawObject] out of `ownKeys`. This keeps the code in the proxy below simpler.\n const objectHolderPrototype = Object.create(objectPrototypeCache.get(client, objectDef), {\n [RawObject]: {\n value: rawObj,\n writable: true, // so we can allow updates\n },\n [CachedPropertiesRef]: {\n value: new Map(),\n writable: true,\n },\n });\n // we separate the holder out so we can update\n // the underlying data without having to return a new object\n // we also need the holder so we can customize the console.log output\n const holder = Object.create(objectHolderPrototype);\n const osdkObject = new Proxy(holder, {\n ownKeys(target) {\n return Reflect.ownKeys(target[RawObject]);\n },\n get(target, p, receiver) {\n switch (p) {\n case UnderlyingOsdkObject:\n // effectively point back to the proxy\n return receiver;\n }\n if (p in target)\n return target[p];\n if (p in rawObj) {\n const rawValue = target[RawObject][p];\n const propDef = objectDef.properties[p];\n if (propDef) {\n if (propDef.type === \"attachment\") {\n if (Array.isArray(rawValue)) {\n return rawValue.map(a => createAttachmentFromRid(client, a.rid));\n }\n return createAttachmentFromRid(client, rawValue.rid);\n }\n if (propDef.type === \"numericTimeseries\"\n || propDef.type === \"stringTimeseries\") {\n return new TimeSeriesPropertyImpl(client, objectDef.apiName, target[RawObject][objectDef.primaryKeyApiName], p);\n }\n if (propDef.type === \"geotimeSeriesReference\") {\n const instance = target[CachedPropertiesRef].get(p);\n if (instance != null) {\n return instance;\n }\n const geotimeProp = new GeotimeSeriesPropertyImpl(client, objectDef.apiName, target[RawObject][objectDef.primaryKeyApiName], p, rawValue.type === \"geotimeSeriesValue\"\n ? {\n time: rawValue.timestamp,\n value: {\n type: \"Point\",\n coordinates: rawValue.position,\n },\n }\n : undefined);\n target[CachedPropertiesRef].set(p, geotimeProp);\n return geotimeProp;\n }\n }\n return rawValue;\n }\n // we do not do any fall through to avoid unexpected behavior\n },\n set(target, p, newValue) {\n // allow the prototype to update this value\n if (p === RawObject) {\n // symbol only exists internally so no one else can hit this\n target[p] = newValue;\n return true;\n }\n return false;\n },\n getOwnPropertyDescriptor(target, p) {\n if (p === RawObject) {\n return Reflect.getOwnPropertyDescriptor(target, p);\n }\n if (target[RawObject][p] != null) {\n return { configurable: true, enumerable: true };\n }\n return undefined;\n },\n });\n return osdkObject;\n}\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAASA,uBAAuB,QAAQ,kCAAkC;AAC1E,SAASC,yBAAyB,QAAQ,sCAAsC;AAChF,SAASC,sBAAsB,QAAQ,mCAAmC;AAC1E,SAASC,iBAAiB,QAAQ,aAAa;AAC/C,SAASC,MAAM,QAAQ,kBAAkB;AACzC,SAASC,QAAQ,QAAQ,oBAAoB;AAC7C,SAASC,mBAAmB,EAAEC,SAAS,EAAEC,YAAY,EAAEC,SAAS,EAAEC,oBAAoB,QAAS,sBAAsB;AACrH,MAAMC,oBAAoB,GAAGR,iBAAiB,CAAC,UAAUS,MAAM,EAAEC,SAAS,EAAE;EACxE,OAAOC,MAAM,CAACC,MAAM,CAAC,IAAI,EAAE;IACvB,CAACP,YAAY,GAAG;MAAEQ,KAAK,EAAEH;IAAU,CAAC;IACpC,CAACN,SAAS,GAAG;MAAES,KAAK,EAAEJ;IAAO,CAAC;IAC9B,KAAK,EAAE;MAAEI,KAAK,EAAEZ,MAAM,CAACS,SAAS;IAAE,CAAC;IACnC,OAAO,EAAE;MACLI,GAAG,EAAE,SAAAA,CAAA,EAAY;QACb,OAAOZ,QAAQ,CAAC,IAAI,CAAC;MACzB;IACJ,CAAC;IACD,uBAAuB,EAAE;MACrBW,KAAK,EAAE,SAAAA,CAAUE,SAAS,EAAE;QACxB,IAAI,CAACT,SAAS,CAAC,GAAGK,MAAM,CAACK,MAAM,CAAC,CAAC,CAAC,EAAE,IAAI,CAACV,SAAS,CAAC,EAAES,SAAS,CAAC;MACnE;IACJ;EACJ,CAAC,CAAC;AACN,CAAC,CAAC;AACF;AACA,OAAO,SAASE,gBAAgBA,CAACR,MAAM,EAAEC,SAAS,EAAEQ,MAAM,EAAE;EACxD;EACA;EACA,MAAMC,qBAAqB,GAAGR,MAAM,CAACC,MAAM,CAACJ,oBAAoB,CAACM,GAAG,CAACL,MAAM,EAAEC,SAAS,CAAC,EAAE;IACrF,CAACJ,SAAS,GAAG;MACTO,KAAK,EAAEK,MAAM;MACbE,QAAQ,EAAE,IAAI,CAAE;IACpB,CAAC;IACD,CAACjB,mBAAmB,GAAG;MACnBU,KAAK,EAAE,IAAIQ,GAAG,CAAC,CAAC;MAChBD,QAAQ,EAAE;IACd;EACJ,CAAC,CAAC;EACF;EACA;EACA;EACA,MAAME,MAAM,GAAGX,MAAM,CAACC,MAAM,CAACO,qBAAqB,CAAC;EACnD,MAAMI,UAAU,GAAG,IAAIC,KAAK,CAACF,MAAM,EAAE;IACjCG,OAAOA,CAACC,MAAM,EAAE;MACZ,OAAOC,OAAO,CAACF,OAAO,CAACC,MAAM,CAACpB,SAAS,CAAC,CAAC;IAC7C,CAAC;IACDQ,GAAGA,CAACY,MAAM,EAAEE,CAAC,EAAEC,QAAQ,EAAE;MACrB,QAAQD,CAAC;QACL,KAAKrB,oBAAoB;UACrB;UACA,OAAOsB,QAAQ;MACvB;MACA,IAAID,CAAC,IAAIF,MAAM,EACX,OAAOA,MAAM,CAACE,CAAC,CAAC;MACpB,IAAIA,CAAC,IAAIV,MAAM,EAAE;QACb,MAAMY,QAAQ,GAAGJ,MAAM,CAACpB,SAAS,CAAC,CAACsB,CAAC,CAAC;QACrC,MAAMG,OAAO,GAAGrB,SAAS,CAACsB,UAAU,CAACJ,CAAC,CAAC;QACvC,IAAIG,OAAO,EAAE;UACT,IAAIA,OAAO,CAACE,IAAI,KAAK,YAAY,EAAE;YAC/B,IAAIC,KAAK,CAACC,OAAO,CAACL,QAAQ,CAAC,EAAE;cACzB,OAAOA,QAAQ,CAACM,GAAG,CAACC,CAAC,IAAIxC,uBAAuB,CAACY,MAAM,EAAE4B,CAAC,CAACC,GAAG,CAAC,CAAC;YACpE;YACA,OAAOzC,uBAAuB,CAACY,MAAM,EAAEqB,QAAQ,CAACQ,GAAG,CAAC;UACxD;UACA,IAAIP,OAAO,CAACE,IAAI,KAAK,mBAAmB,IACjCF,OAAO,CAACE,IAAI,KAAK,kBAAkB,EAAE;YACxC,OAAO,IAAIlC,sBAAsB,CAACU,MAAM,EAAEC,SAAS,CAAC6B,OAAO,EAAEb,MAAM,CAACpB,SAAS,CAAC,CAACI,SAAS,CAAC8B,iBAAiB,CAAC,EAAEZ,CAAC,CAAC;UACnH;UACA,IAAIG,OAAO,CAACE,IAAI,KAAK,wBAAwB,EAAE;YAC3C,MAAMQ,QAAQ,GAAGf,MAAM,CAACvB,mBAAmB,CAAC,CAACW,GAAG,CAACc,CAAC,CAAC;YACnD,IAAIa,QAAQ,IAAI,IAAI,EAAE;cAClB,OAAOA,QAAQ;YACnB;YACA,MAAMC,WAAW,GAAG,IAAI5C,yBAAyB,CAACW,MAAM,EAAEC,SAAS,CAAC6B,OAAO,EAAEb,MAAM,CAACpB,SAAS,CAAC,CAACI,SAAS,CAAC8B,iBAAiB,CAAC,EAAEZ,CAAC,EAAEE,QAAQ,CAACG,IAAI,KAAK,oBAAoB,GAChK;cACEU,IAAI,EAAEb,QAAQ,CAACc,SAAS;cACxB/B,KAAK,EAAE;gBACHoB,IAAI,EAAE,OAAO;gBACbY,WAAW,EAAEf,QAAQ,CAACgB;cAC1B;YACJ,CAAC,GACCC,SAAS,CAAC;YAChBrB,MAAM,CAACvB,mBAAmB,CAAC,CAAC6C,GAAG,CAACpB,CAAC,EAAEc,WAAW,CAAC;YAC/C,OAAOA,WAAW;UACtB;QACJ;QACA,OAAOZ,QAAQ;MACnB;MACA;IACJ,CAAC;IACDkB,GAAGA,CAACtB,MAAM,EAAEE,CAAC,EAAEqB,QAAQ,EAAE;MACrB;MACA,IAAIrB,CAAC,KAAKtB,SAAS,EAAE;QACjB;QACAoB,MAAM,CAACE,CAAC,CAAC,GAAGqB,QAAQ;QACpB,OAAO,IAAI;MACf;MACA,OAAO,KAAK;IAChB,CAAC;IACDC,wBAAwBA,CAACxB,MAAM,EAAEE,CAAC,EAAE;MAChC,IAAIA,CAAC,KAAKtB,SAAS,EAAE;QACjB,OAAOqB,OAAO,CAACuB,wBAAwB,CAACxB,MAAM,EAAEE,CAAC,CAAC;MACtD;MACA,IAAIF,MAAM,CAACpB,SAAS,CAAC,CAACsB,CAAC,CAAC,IAAI,IAAI,EAAE;QAC9B,OAAO;UAAEuB,YAAY,EAAE,IAAI;UAAEC,UAAU,EAAE;QAAK,CAAC;MACnD;MACA,OAAOL,SAAS;IACpB;EACJ,CAAC,CAAC;EACF,OAAOxB,UAAU;AACrB","ignoreList":[]}
1
+ {"version":3,"file":"createOsdkObject.js","names":["invariant","GeotimeSeriesPropertyImpl","MediaReferencePropertyImpl","TimeSeriesPropertyImpl","hydrateAttachmentFromRidInternal","get$as","get$link","ClientRef","ObjectDefRef","UnderlyingOsdkObject","specialPropertyTypes","Set","basePropDefs","get","value","update","rawObj","def","createOsdkObject","primaryKeyApiName","Error","apiName","titleProperty","$title","newObject","client","objectDef","Object","defineProperties","enumerable","propKey","keys","properties","type","has","createSpecialProperty","freeze","rawObject","p","rawValue","propDef","process","env","NODE_ENV","Array","isArray","map","a","rid","time","timestamp","coordinates","position","undefined","objectApiName","primaryKey","propertyName"],"sources":["createOsdkObject.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 { ObjectTypeDefinition, Osdk } from \"@osdk/api\";\nimport type { OntologyObjectV2 } from \"@osdk/foundry.ontologies\";\nimport invariant from \"tiny-invariant\";\nimport { GeotimeSeriesPropertyImpl } from \"../../createGeotimeSeriesProperty.js\";\nimport { MediaReferencePropertyImpl } from \"../../createMediaReferenceProperty.js\";\nimport { TimeSeriesPropertyImpl } from \"../../createTimeseriesProperty.js\";\nimport type { MinimalClient } from \"../../MinimalClientContext.js\";\nimport type { FetchedObjectTypeDefinition } from \"../../ontology/OntologyProvider.js\";\nimport { hydrateAttachmentFromRidInternal } from \"../../public-utils/hydrateAttachmentFromRid.js\";\nimport { get$as } from \"./getDollarAs.js\";\nimport { get$link } from \"./getDollarLink.js\";\nimport {\n ClientRef,\n ObjectDefRef,\n UnderlyingOsdkObject,\n} from \"./InternalSymbols.js\";\nimport type { ObjectHolder } from \"./ObjectHolder.js\";\n\ninterface InternalOsdkInstance {\n [ObjectDefRef]: FetchedObjectTypeDefinition;\n [ClientRef]: MinimalClient;\n}\n\nconst specialPropertyTypes = new Set(\n [\n \"attachment\",\n \"geotimeSeriesReference\",\n \"mediaReference\",\n \"numericTimeseries\",\n \"stringTimeseries\",\n \"sensorTimeseries\",\n ],\n);\n\n// kept separate so we are not redefining these functions\n// every time an object is created.\nconst basePropDefs = {\n \"$as\": {\n get: function(this: InternalOsdkInstance) {\n return get$as(this[ObjectDefRef]);\n },\n },\n \"$link\": {\n get: function(this: InternalOsdkInstance & ObjectHolder<any>) {\n return get$link(this);\n },\n },\n \"$clone\": {\n value: function(\n this: InternalOsdkInstance & ObjectHolder<any>,\n update: Record<string, any> | undefined,\n ) {\n const rawObj = this[UnderlyingOsdkObject];\n const def = this[ObjectDefRef];\n\n if (update == null) {\n return createOsdkObject(this[ClientRef], def, { ...rawObj });\n }\n\n if (\n def.primaryKeyApiName in update\n && rawObj[def.primaryKeyApiName] !== update[def.primaryKeyApiName]\n ) {\n throw new Error(\n `Cannot update ${def.apiName} object with differing primary key values `,\n );\n }\n\n if (def.titleProperty in update && !(\"$title\" in update)) {\n update.$title = update[def.titleProperty];\n }\n\n const newObject = { ...this[UnderlyingOsdkObject], ...update };\n return createOsdkObject(this[ClientRef], this[ObjectDefRef], newObject);\n },\n },\n};\n\n/** @internal */\nexport function createOsdkObject<\n Q extends FetchedObjectTypeDefinition,\n>(\n client: MinimalClient,\n objectDef: Q,\n rawObj: OntologyObjectV2,\n): Osdk<ObjectTypeDefinition, any> {\n // updates the object's \"hidden class/map\".\n Object.defineProperties(rawObj, {\n [UnderlyingOsdkObject]: {\n enumerable: false,\n value: rawObj,\n },\n [ObjectDefRef]: { value: objectDef, enumerable: false },\n [ClientRef]: { value: client, enumerable: false },\n ...basePropDefs,\n });\n\n // Assign the special values\n for (const propKey of Object.keys(rawObj)) {\n if (\n propKey in objectDef.properties\n && typeof (objectDef.properties[propKey].type) === \"string\"\n && specialPropertyTypes.has(objectDef.properties[propKey].type)\n ) {\n rawObj[propKey] = createSpecialProperty(\n client,\n objectDef,\n rawObj as any,\n propKey,\n );\n }\n }\n\n return Object.freeze(rawObj) as Osdk<ObjectTypeDefinition, any>;\n}\n\nfunction createSpecialProperty(\n client: MinimalClient,\n objectDef: FetchedObjectTypeDefinition,\n rawObject: Osdk.Instance<any>,\n p: keyof typeof rawObject & string | symbol,\n) {\n const rawValue = rawObject[p as any];\n const propDef = objectDef.properties[p as any];\n if (process.env.NODE_ENV !== \"production\") {\n invariant(\n propDef != null && typeof propDef.type === \"string\"\n && specialPropertyTypes.has(propDef.type),\n );\n }\n {\n {\n {\n {\n if (propDef.type === \"attachment\") {\n if (Array.isArray(rawValue)) {\n return rawValue.map(a =>\n hydrateAttachmentFromRidInternal(client, a.rid)\n );\n }\n return hydrateAttachmentFromRidInternal(client, rawValue.rid);\n }\n\n if (\n propDef.type === \"numericTimeseries\"\n || propDef.type === \"stringTimeseries\"\n || propDef.type === \"sensorTimeseries\"\n ) {\n return new TimeSeriesPropertyImpl<\n (typeof propDef)[\"type\"] extends \"numericTimeseries\" ? number\n : (typeof propDef)[\"type\"] extends \"stringTimeseries\" ? string\n : number | string\n >(\n client,\n objectDef.apiName,\n rawObject[objectDef.primaryKeyApiName as string],\n p as string,\n );\n }\n\n if (propDef.type === \"geotimeSeriesReference\") {\n return new GeotimeSeriesPropertyImpl<GeoJSON.Point>(\n client,\n objectDef.apiName,\n rawObject[objectDef.primaryKeyApiName as string],\n p as string,\n rawValue.type === \"geotimeSeriesValue\"\n ? {\n time: rawValue.timestamp,\n value: {\n type: \"Point\",\n coordinates: rawValue.position,\n },\n }\n : undefined,\n );\n }\n if (propDef.type === \"mediaReference\") {\n return new MediaReferencePropertyImpl({\n client,\n objectApiName: objectDef.apiName,\n primaryKey: rawObject[objectDef.primaryKeyApiName as string],\n propertyName: p as string,\n });\n }\n }\n }\n }\n }\n}\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAIA,OAAOA,SAAS,MAAM,gBAAgB;AACtC,SAASC,yBAAyB,QAAQ,sCAAsC;AAChF,SAASC,0BAA0B,QAAQ,uCAAuC;AAClF,SAASC,sBAAsB,QAAQ,mCAAmC;AAG1E,SAASC,gCAAgC,QAAQ,gDAAgD;AACjG,SAASC,MAAM,QAAQ,kBAAkB;AACzC,SAASC,QAAQ,QAAQ,oBAAoB;AAC7C,SACEC,SAAS,EACTC,YAAY,EACZC,oBAAoB,QACf,sBAAsB;AAQ7B,MAAMC,oBAAoB,GAAG,IAAIC,GAAG,CAClC,CACE,YAAY,EACZ,wBAAwB,EACxB,gBAAgB,EAChB,mBAAmB,EACnB,kBAAkB,EAClB,kBAAkB,CAEtB,CAAC;;AAED;AACA;AACA,MAAMC,YAAY,GAAG;EACnB,KAAK,EAAE;IACLC,GAAG,EAAE,SAAAA,CAAA,EAAqC;MACxC,OAAOR,MAAM,CAAC,IAAI,CAACG,YAAY,CAAC,CAAC;IACnC;EACF,CAAC;EACD,OAAO,EAAE;IACPK,GAAG,EAAE,SAAAA,CAAA,EAAyD;MAC5D,OAAOP,QAAQ,CAAC,IAAI,CAAC;IACvB;EACF,CAAC;EACD,QAAQ,EAAE;IACRQ,KAAK,EAAE,SAAAA,CAELC,MAAuC,EACvC;MACA,MAAMC,MAAM,GAAG,IAAI,CAACP,oBAAoB,CAAC;MACzC,MAAMQ,GAAG,GAAG,IAAI,CAACT,YAAY,CAAC;MAE9B,IAAIO,MAAM,IAAI,IAAI,EAAE;QAClB,OAAOG,gBAAgB,CAAC,IAAI,CAACX,SAAS,CAAC,EAAEU,GAAG,EAAE;UAAE,GAAGD;QAAO,CAAC,CAAC;MAC9D;MAEA,IACEC,GAAG,CAACE,iBAAiB,IAAIJ,MAAM,IAC5BC,MAAM,CAACC,GAAG,CAACE,iBAAiB,CAAC,KAAKJ,MAAM,CAACE,GAAG,CAACE,iBAAiB,CAAC,EAClE;QACA,MAAM,IAAIC,KAAK,CACb,iBAAiBH,GAAG,CAACI,OAAO,4CAC9B,CAAC;MACH;MAEA,IAAIJ,GAAG,CAACK,aAAa,IAAIP,MAAM,IAAI,EAAE,QAAQ,IAAIA,MAAM,CAAC,EAAE;QACxDA,MAAM,CAACQ,MAAM,GAAGR,MAAM,CAACE,GAAG,CAACK,aAAa,CAAC;MAC3C;MAEA,MAAME,SAAS,GAAG;QAAE,GAAG,IAAI,CAACf,oBAAoB,CAAC;QAAE,GAAGM;MAAO,CAAC;MAC9D,OAAOG,gBAAgB,CAAC,IAAI,CAACX,SAAS,CAAC,EAAE,IAAI,CAACC,YAAY,CAAC,EAAEgB,SAAS,CAAC;IACzE;EACF;AACF,CAAC;;AAED;AACA,OAAO,SAASN,gBAAgBA,CAG9BO,MAAqB,EACrBC,SAAY,EACZV,MAAwB,EACS;EACjC;EACAW,MAAM,CAACC,gBAAgB,CAACZ,MAAM,EAAE;IAC9B,CAACP,oBAAoB,GAAG;MACtBoB,UAAU,EAAE,KAAK;MACjBf,KAAK,EAAEE;IACT,CAAC;IACD,CAACR,YAAY,GAAG;MAAEM,KAAK,EAAEY,SAAS;MAAEG,UAAU,EAAE;IAAM,CAAC;IACvD,CAACtB,SAAS,GAAG;MAAEO,KAAK,EAAEW,MAAM;MAAEI,UAAU,EAAE;IAAM,CAAC;IACjD,GAAGjB;EACL,CAAC,CAAC;;EAEF;EACA,KAAK,MAAMkB,OAAO,IAAIH,MAAM,CAACI,IAAI,CAACf,MAAM,CAAC,EAAE;IACzC,IACEc,OAAO,IAAIJ,SAAS,CAACM,UAAU,IAC5B,OAAQN,SAAS,CAACM,UAAU,CAACF,OAAO,CAAC,CAACG,IAAK,KAAK,QAAQ,IACxDvB,oBAAoB,CAACwB,GAAG,CAACR,SAAS,CAACM,UAAU,CAACF,OAAO,CAAC,CAACG,IAAI,CAAC,EAC/D;MACAjB,MAAM,CAACc,OAAO,CAAC,GAAGK,qBAAqB,CACrCV,MAAM,EACNC,SAAS,EACTV,MAAM,EACNc,OACF,CAAC;IACH;EACF;EAEA,OAAOH,MAAM,CAACS,MAAM,CAACpB,MAAM,CAAC;AAC9B;AAEA,SAASmB,qBAAqBA,CAC5BV,MAAqB,EACrBC,SAAsC,EACtCW,SAA6B,EAC7BC,CAA2C,EAC3C;EACA,MAAMC,QAAQ,GAAGF,SAAS,CAACC,CAAC,CAAQ;EACpC,MAAME,OAAO,GAAGd,SAAS,CAACM,UAAU,CAACM,CAAC,CAAQ;EAC9C,IAAIG,OAAO,CAACC,GAAG,CAACC,QAAQ,KAAK,YAAY,EAAE;IACzC,EACEH,OAAO,IAAI,IAAI,IAAI,OAAOA,OAAO,CAACP,IAAI,KAAK,QAAQ,IAC9CvB,oBAAoB,CAACwB,GAAG,CAACM,OAAO,CAACP,IAAI,CAAC,IAAAQ,OAAA,CAAAC,GAAA,CAAAC,QAAA,oBAF7C3C,SAAS,UAATA,SAAS;EAIX;EACA;IACE;MACE;QACE;UACE,IAAIwC,OAAO,CAACP,IAAI,KAAK,YAAY,EAAE;YACjC,IAAIW,KAAK,CAACC,OAAO,CAACN,QAAQ,CAAC,EAAE;cAC3B,OAAOA,QAAQ,CAACO,GAAG,CAACC,CAAC,IACnB3C,gCAAgC,CAACqB,MAAM,EAAEsB,CAAC,CAACC,GAAG,CAChD,CAAC;YACH;YACA,OAAO5C,gCAAgC,CAACqB,MAAM,EAAEc,QAAQ,CAACS,GAAG,CAAC;UAC/D;UAEA,IACER,OAAO,CAACP,IAAI,KAAK,mBAAmB,IACjCO,OAAO,CAACP,IAAI,KAAK,kBAAkB,IACnCO,OAAO,CAACP,IAAI,KAAK,kBAAkB,EACtC;YACA,OAAO,IAAI9B,sBAAsB,CAK/BsB,MAAM,EACNC,SAAS,CAACL,OAAO,EACjBgB,SAAS,CAACX,SAAS,CAACP,iBAAiB,CAAW,EAChDmB,CACF,CAAC;UACH;UAEA,IAAIE,OAAO,CAACP,IAAI,KAAK,wBAAwB,EAAE;YAC7C,OAAO,IAAIhC,yBAAyB,CAClCwB,MAAM,EACNC,SAAS,CAACL,OAAO,EACjBgB,SAAS,CAACX,SAAS,CAACP,iBAAiB,CAAW,EAChDmB,CAAC,EACDC,QAAQ,CAACN,IAAI,KAAK,oBAAoB,GAClC;cACAgB,IAAI,EAAEV,QAAQ,CAACW,SAAS;cACxBpC,KAAK,EAAE;gBACLmB,IAAI,EAAE,OAAO;gBACbkB,WAAW,EAAEZ,QAAQ,CAACa;cACxB;YACF,CAAC,GACCC,SACN,CAAC;UACH;UACA,IAAIb,OAAO,CAACP,IAAI,KAAK,gBAAgB,EAAE;YACrC,OAAO,IAAI/B,0BAA0B,CAAC;cACpCuB,MAAM;cACN6B,aAAa,EAAE5B,SAAS,CAACL,OAAO;cAChCkC,UAAU,EAAElB,SAAS,CAACX,SAAS,CAACP,iBAAiB,CAAW;cAC5DqC,YAAY,EAAElB;YAChB,CAAC,CAAC;UACJ;QACF;MACF;IACF;EACF;AACF","ignoreList":[]}
@@ -13,20 +13,26 @@
13
13
  * See the License for the specific language governing permissions and
14
14
  * limitations under the License.
15
15
  */
16
+
16
17
  import { InterfaceDefinitions } from "../../ontology/OntologyProvider.js";
17
18
  import { createSimpleCache } from "../SimpleCache.js";
18
19
  import { createOsdkInterface } from "./createOsdkInterface.js";
19
20
  import { UnderlyingOsdkObject } from "./InternalSymbols.js";
21
+
22
+ /** @internal */
23
+
20
24
  export const get$as = createSimpleCache(new WeakMap(), $asFactory).get;
21
25
  const osdkObjectToInterfaceView = createSimpleCache(new WeakMap(), () => new Map());
22
26
  function $asFactory(objDef) {
23
27
  // We use the exact same logic for both the interface rep and the underlying rep
28
+
24
29
  return function (targetMinDef) {
25
30
  let targetInterfaceApiName;
26
31
  if (typeof targetMinDef === "string") {
27
32
  if (targetMinDef === objDef.apiName) {
28
33
  return this[UnderlyingOsdkObject];
29
34
  }
35
+
30
36
  // this is sufficient to determine if we implement the interface
31
37
  if (objDef.interfaceMap?.[targetMinDef] == null) {
32
38
  throw new Error(`Object does not implement interface '${targetMinDef}'.`);
@@ -42,13 +48,13 @@ function $asFactory(objDef) {
42
48
  }
43
49
  const def = objDef[InterfaceDefinitions][targetInterfaceApiName];
44
50
  if (!def) {
45
- throw new Error(`Object does not implement interface '${targetMinDef}'.`);
51
+ throw new Error(`Object does not implement interface '${targetInterfaceApiName}'.`);
46
52
  }
47
53
  const underlying = this[UnderlyingOsdkObject];
48
- const existing = osdkObjectToInterfaceView.get(underlying).get(targetInterfaceApiName);
54
+ const existing = osdkObjectToInterfaceView.get(underlying).get(targetInterfaceApiName)?.deref();
49
55
  if (existing) return existing;
50
56
  const osdkInterface = createOsdkInterface(underlying, def.def);
51
- osdkObjectToInterfaceView.get(underlying).set(targetInterfaceApiName, osdkInterface);
57
+ osdkObjectToInterfaceView.get(underlying).set(targetInterfaceApiName, new WeakRef(osdkInterface));
52
58
  return osdkInterface;
53
59
  };
54
60
  }
@@ -1 +1 @@
1
- {"version":3,"file":"getDollarAs.js","names":["InterfaceDefinitions","createSimpleCache","createOsdkInterface","UnderlyingOsdkObject","get$as","WeakMap","$asFactory","get","osdkObjectToInterfaceView","Map","objDef","targetMinDef","targetInterfaceApiName","apiName","interfaceMap","Error","type","def","underlying","existing","osdkInterface","set"],"sources":["getDollarAs.js"],"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 */\nimport { InterfaceDefinitions, } from \"../../ontology/OntologyProvider.js\";\nimport { createSimpleCache } from \"../SimpleCache.js\";\nimport { createOsdkInterface } from \"./createOsdkInterface.js\";\nimport { UnderlyingOsdkObject } from \"./InternalSymbols.js\";\nexport const get$as = createSimpleCache(new WeakMap(), $asFactory).get;\nconst osdkObjectToInterfaceView = createSimpleCache(new WeakMap(), () => new Map());\nfunction $asFactory(objDef) {\n // We use the exact same logic for both the interface rep and the underlying rep\n return function $as(targetMinDef) {\n let targetInterfaceApiName;\n if (typeof targetMinDef === \"string\") {\n if (targetMinDef === objDef.apiName) {\n return this[UnderlyingOsdkObject];\n }\n // this is sufficient to determine if we implement the interface\n if (objDef.interfaceMap?.[targetMinDef] == null) {\n throw new Error(`Object does not implement interface '${targetMinDef}'.`);\n }\n targetInterfaceApiName = targetMinDef;\n }\n else if (targetMinDef.apiName === objDef.apiName) {\n return this[UnderlyingOsdkObject];\n }\n else {\n if (targetMinDef.type === \"object\") {\n throw new Error(`'${targetMinDef.apiName}' is not an interface nor is it '${objDef.apiName}', which is the object type.`);\n }\n targetInterfaceApiName = targetMinDef.apiName;\n }\n const def = objDef[InterfaceDefinitions][targetInterfaceApiName];\n if (!def) {\n throw new Error(`Object does not implement interface '${targetMinDef}'.`);\n }\n const underlying = this[UnderlyingOsdkObject];\n const existing = osdkObjectToInterfaceView\n .get(underlying)\n .get(targetInterfaceApiName);\n if (existing)\n return existing;\n const osdkInterface = createOsdkInterface(underlying, def.def);\n osdkObjectToInterfaceView.get(underlying).set(targetInterfaceApiName, osdkInterface);\n return osdkInterface;\n };\n}\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAASA,oBAAoB,QAAS,oCAAoC;AAC1E,SAASC,iBAAiB,QAAQ,mBAAmB;AACrD,SAASC,mBAAmB,QAAQ,0BAA0B;AAC9D,SAASC,oBAAoB,QAAQ,sBAAsB;AAC3D,OAAO,MAAMC,MAAM,GAAGH,iBAAiB,CAAC,IAAII,OAAO,CAAC,CAAC,EAAEC,UAAU,CAAC,CAACC,GAAG;AACtE,MAAMC,yBAAyB,GAAGP,iBAAiB,CAAC,IAAII,OAAO,CAAC,CAAC,EAAE,MAAM,IAAII,GAAG,CAAC,CAAC,CAAC;AACnF,SAASH,UAAUA,CAACI,MAAM,EAAE;EACxB;EACA,OAAO,UAAaC,YAAY,EAAE;IAC9B,IAAIC,sBAAsB;IAC1B,IAAI,OAAOD,YAAY,KAAK,QAAQ,EAAE;MAClC,IAAIA,YAAY,KAAKD,MAAM,CAACG,OAAO,EAAE;QACjC,OAAO,IAAI,CAACV,oBAAoB,CAAC;MACrC;MACA;MACA,IAAIO,MAAM,CAACI,YAAY,GAAGH,YAAY,CAAC,IAAI,IAAI,EAAE;QAC7C,MAAM,IAAII,KAAK,CAAC,wCAAwCJ,YAAY,IAAI,CAAC;MAC7E;MACAC,sBAAsB,GAAGD,YAAY;IACzC,CAAC,MACI,IAAIA,YAAY,CAACE,OAAO,KAAKH,MAAM,CAACG,OAAO,EAAE;MAC9C,OAAO,IAAI,CAACV,oBAAoB,CAAC;IACrC,CAAC,MACI;MACD,IAAIQ,YAAY,CAACK,IAAI,KAAK,QAAQ,EAAE;QAChC,MAAM,IAAID,KAAK,CAAC,IAAIJ,YAAY,CAACE,OAAO,oCAAoCH,MAAM,CAACG,OAAO,8BAA8B,CAAC;MAC7H;MACAD,sBAAsB,GAAGD,YAAY,CAACE,OAAO;IACjD;IACA,MAAMI,GAAG,GAAGP,MAAM,CAACV,oBAAoB,CAAC,CAACY,sBAAsB,CAAC;IAChE,IAAI,CAACK,GAAG,EAAE;MACN,MAAM,IAAIF,KAAK,CAAC,wCAAwCJ,YAAY,IAAI,CAAC;IAC7E;IACA,MAAMO,UAAU,GAAG,IAAI,CAACf,oBAAoB,CAAC;IAC7C,MAAMgB,QAAQ,GAAGX,yBAAyB,CACrCD,GAAG,CAACW,UAAU,CAAC,CACfX,GAAG,CAACK,sBAAsB,CAAC;IAChC,IAAIO,QAAQ,EACR,OAAOA,QAAQ;IACnB,MAAMC,aAAa,GAAGlB,mBAAmB,CAACgB,UAAU,EAAED,GAAG,CAACA,GAAG,CAAC;IAC9DT,yBAAyB,CAACD,GAAG,CAACW,UAAU,CAAC,CAACG,GAAG,CAACT,sBAAsB,EAAEQ,aAAa,CAAC;IACpF,OAAOA,aAAa;EACxB,CAAC;AACL","ignoreList":[]}
1
+ {"version":3,"file":"getDollarAs.js","names":["InterfaceDefinitions","createSimpleCache","createOsdkInterface","UnderlyingOsdkObject","get$as","WeakMap","$asFactory","get","osdkObjectToInterfaceView","Map","objDef","targetMinDef","targetInterfaceApiName","apiName","interfaceMap","Error","type","def","underlying","existing","deref","osdkInterface","set","WeakRef"],"sources":["getDollarAs.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 { ObjectOrInterfaceDefinition, Osdk, OsdkBase } from \"@osdk/api\";\nimport {\n type FetchedObjectTypeDefinition,\n InterfaceDefinitions,\n} from \"../../ontology/OntologyProvider.js\";\nimport { createSimpleCache } from \"../SimpleCache.js\";\nimport { createOsdkInterface } from \"./createOsdkInterface.js\";\nimport type { InterfaceHolder } from \"./InterfaceHolder.js\";\nimport { UnderlyingOsdkObject } from \"./InternalSymbols.js\";\nimport type { ObjectHolder } from \"./ObjectHolder.js\";\n\n/** @internal */\nexport type DollarAsFn = <\n Q extends FetchedObjectTypeDefinition,\n NEW_Q extends ObjectOrInterfaceDefinition,\n>(\n this: Osdk<any> & (InterfaceHolder<Q> | ObjectHolder<Q>),\n newDef: string | NEW_Q,\n) => OsdkBase<any>;\n\nexport const get$as: (key: FetchedObjectTypeDefinition) => DollarAsFn =\n createSimpleCache<\n FetchedObjectTypeDefinition,\n DollarAsFn\n >(new WeakMap(), $asFactory).get;\n\nconst osdkObjectToInterfaceView = createSimpleCache(\n new WeakMap<\n OsdkBase<any>,\n Map<string, WeakRef<OsdkBase<any>>>\n >(),\n () =>\n new Map<\n /* interface api name */ string,\n /* $as'd object */ WeakRef<OsdkBase<any>>\n >(),\n);\n\nfunction $asFactory(\n objDef: FetchedObjectTypeDefinition,\n): DollarAsFn {\n // We use the exact same logic for both the interface rep and the underlying rep\n\n return function $as<\n NEW_Q extends ObjectOrInterfaceDefinition,\n >(\n this: OsdkBase<any> & { [UnderlyingOsdkObject]: any },\n targetMinDef: NEW_Q | string,\n ): OsdkBase<any> {\n let targetInterfaceApiName: string;\n\n if (typeof targetMinDef === \"string\") {\n if (targetMinDef === objDef.apiName) {\n return this[UnderlyingOsdkObject];\n }\n\n // this is sufficient to determine if we implement the interface\n if (objDef.interfaceMap?.[targetMinDef] == null) {\n throw new Error(\n `Object does not implement interface '${targetMinDef}'.`,\n );\n }\n\n targetInterfaceApiName = targetMinDef;\n } else if (targetMinDef.apiName === objDef.apiName) {\n return this[UnderlyingOsdkObject];\n } else {\n if (targetMinDef.type === \"object\") {\n throw new Error(\n `'${targetMinDef.apiName}' is not an interface nor is it '${objDef.apiName}', which is the object type.`,\n );\n }\n targetInterfaceApiName = targetMinDef.apiName;\n }\n\n const def = objDef[InterfaceDefinitions][targetInterfaceApiName];\n if (!def) {\n throw new Error(\n `Object does not implement interface '${targetInterfaceApiName}'.`,\n );\n }\n\n const underlying = this[UnderlyingOsdkObject];\n\n const existing = osdkObjectToInterfaceView\n .get(underlying)\n .get(targetInterfaceApiName)?.deref();\n if (existing) return existing;\n\n const osdkInterface = createOsdkInterface(underlying, def.def);\n osdkObjectToInterfaceView.get(underlying).set(\n targetInterfaceApiName,\n new WeakRef(osdkInterface),\n );\n return osdkInterface;\n };\n}\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAGA,SAEEA,oBAAoB,QACf,oCAAoC;AAC3C,SAASC,iBAAiB,QAAQ,mBAAmB;AACrD,SAASC,mBAAmB,QAAQ,0BAA0B;AAE9D,SAASC,oBAAoB,QAAQ,sBAAsB;;AAG3D;;AASA,OAAO,MAAMC,MAAwD,GACnEH,iBAAiB,CAGf,IAAII,OAAO,CAAC,CAAC,EAAEC,UAAU,CAAC,CAACC,GAAG;AAElC,MAAMC,yBAAyB,GAAGP,iBAAiB,CACjD,IAAII,OAAO,CAGT,CAAC,EACH,MACE,IAAII,GAAG,CAGL,CACN,CAAC;AAED,SAASH,UAAUA,CACjBI,MAAmC,EACvB;EACZ;;EAEA,OAAO,UAILC,YAA4B,EACb;IACf,IAAIC,sBAA8B;IAElC,IAAI,OAAOD,YAAY,KAAK,QAAQ,EAAE;MACpC,IAAIA,YAAY,KAAKD,MAAM,CAACG,OAAO,EAAE;QACnC,OAAO,IAAI,CAACV,oBAAoB,CAAC;MACnC;;MAEA;MACA,IAAIO,MAAM,CAACI,YAAY,GAAGH,YAAY,CAAC,IAAI,IAAI,EAAE;QAC/C,MAAM,IAAII,KAAK,CACb,wCAAwCJ,YAAY,IACtD,CAAC;MACH;MAEAC,sBAAsB,GAAGD,YAAY;IACvC,CAAC,MAAM,IAAIA,YAAY,CAACE,OAAO,KAAKH,MAAM,CAACG,OAAO,EAAE;MAClD,OAAO,IAAI,CAACV,oBAAoB,CAAC;IACnC,CAAC,MAAM;MACL,IAAIQ,YAAY,CAACK,IAAI,KAAK,QAAQ,EAAE;QAClC,MAAM,IAAID,KAAK,CACb,IAAIJ,YAAY,CAACE,OAAO,oCAAoCH,MAAM,CAACG,OAAO,8BAC5E,CAAC;MACH;MACAD,sBAAsB,GAAGD,YAAY,CAACE,OAAO;IAC/C;IAEA,MAAMI,GAAG,GAAGP,MAAM,CAACV,oBAAoB,CAAC,CAACY,sBAAsB,CAAC;IAChE,IAAI,CAACK,GAAG,EAAE;MACR,MAAM,IAAIF,KAAK,CACb,wCAAwCH,sBAAsB,IAChE,CAAC;IACH;IAEA,MAAMM,UAAU,GAAG,IAAI,CAACf,oBAAoB,CAAC;IAE7C,MAAMgB,QAAQ,GAAGX,yBAAyB,CACvCD,GAAG,CAACW,UAAU,CAAC,CACfX,GAAG,CAACK,sBAAsB,CAAC,EAAEQ,KAAK,CAAC,CAAC;IACvC,IAAID,QAAQ,EAAE,OAAOA,QAAQ;IAE7B,MAAME,aAAa,GAAGnB,mBAAmB,CAACgB,UAAU,EAAED,GAAG,CAACA,GAAG,CAAC;IAC9DT,yBAAyB,CAACD,GAAG,CAACW,UAAU,CAAC,CAACI,GAAG,CAC3CV,sBAAsB,EACtB,IAAIW,OAAO,CAACF,aAAa,CAC3B,CAAC;IACD,OAAOA,aAAa;EACtB,CAAC;AACH","ignoreList":[]}
@@ -13,48 +13,25 @@
13
13
  * See the License for the specific language governing permissions and
14
14
  * limitations under the License.
15
15
  */
16
+
16
17
  import { getWireObjectSet } from "../../objectSet/createObjectSet.js";
17
18
  import { fetchSingle, fetchSingleWithErrors } from "../fetchSingle.js";
18
- import { ClientRef, ObjectDefRef, RawObject } from "./InternalSymbols.js";
19
+ import { ClientRef, ObjectDefRef, UnderlyingOsdkObject } from "./InternalSymbols.js";
19
20
  /** @internal */
20
21
  export function get$link(holder) {
21
- return new Proxy(holder, DollarLinkProxyHandler);
22
- }
23
- const DollarLinkProxyHandler = {
24
- get(target, p) {
25
- const {
26
- [ObjectDefRef]: objDef,
27
- [ClientRef]: client,
28
- [RawObject]: rawObj
29
- } = target;
30
- const linkDef = objDef.links[p];
31
- if (linkDef == null) {
32
- return;
33
- }
22
+ const client = holder[ClientRef];
23
+ const objDef = holder[ObjectDefRef];
24
+ const rawObj = holder[UnderlyingOsdkObject];
25
+ return Object.freeze(Object.fromEntries(Object.keys(objDef.links).map(linkName => {
26
+ const linkDef = objDef.links[linkName];
34
27
  const objectSet = client.objectSetFactory(objDef, client).where({
35
28
  [objDef.primaryKeyApiName]: rawObj.$primaryKey
36
- }).pivotTo(p);
37
- if (!linkDef.multiplicity) {
38
- return {
39
- fetchOne: options => fetchSingle(client, objDef, options ?? {}, getWireObjectSet(objectSet)),
40
- fetchOneWithErrors: options => fetchSingleWithErrors(client, objDef, options ?? {}, getWireObjectSet(objectSet))
41
- };
42
- } else {
43
- return objectSet;
44
- }
45
- },
46
- ownKeys(target) {
47
- return [...Object.keys(target[ObjectDefRef].links)];
48
- },
49
- getOwnPropertyDescriptor(target, p) {
50
- if (target[ObjectDefRef].links[p]) {
51
- return {
52
- enumerable: true,
53
- configurable: true,
54
- // fixme
55
- writable: false
56
- };
57
- }
58
- }
59
- };
29
+ }).pivotTo(linkName);
30
+ const value = !linkDef.multiplicity ? {
31
+ fetchOne: options => fetchSingle(client, objDef, options ?? {}, getWireObjectSet(objectSet)),
32
+ fetchOneWithErrors: options => fetchSingleWithErrors(client, objDef, options ?? {}, getWireObjectSet(objectSet))
33
+ } : objectSet;
34
+ return [linkName, value];
35
+ })));
36
+ }
60
37
  //# sourceMappingURL=getDollarLink.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"getDollarLink.js","names":["getWireObjectSet","fetchSingle","fetchSingleWithErrors","ClientRef","ObjectDefRef","RawObject","get$link","holder","Proxy","DollarLinkProxyHandler","get","target","p","objDef","client","rawObj","linkDef","links","objectSet","objectSetFactory","where","primaryKeyApiName","$primaryKey","pivotTo","multiplicity","fetchOne","options","fetchOneWithErrors","ownKeys","Object","keys","getOwnPropertyDescriptor","enumerable","configurable","writable"],"sources":["getDollarLink.js"],"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 */\nimport { getWireObjectSet } from \"../../objectSet/createObjectSet.js\";\nimport { fetchSingle, fetchSingleWithErrors } from \"../fetchSingle.js\";\nimport { ClientRef, ObjectDefRef, RawObject } from \"./InternalSymbols.js\";\n/** @internal */\nexport function get$link(holder) {\n return new Proxy(holder, DollarLinkProxyHandler);\n}\nconst DollarLinkProxyHandler = {\n get(target, p) {\n const { [ObjectDefRef]: objDef, [ClientRef]: client, [RawObject]: rawObj, } = target;\n const linkDef = objDef.links[p];\n if (linkDef == null) {\n return;\n }\n const objectSet = client.objectSetFactory(objDef, client)\n .where({\n [objDef.primaryKeyApiName]: rawObj.$primaryKey,\n })\n .pivotTo(p);\n if (!linkDef.multiplicity) {\n return {\n fetchOne: (options) => fetchSingle(client, objDef, options ?? {}, getWireObjectSet(objectSet)),\n fetchOneWithErrors: (options) => fetchSingleWithErrors(client, objDef, options ?? {}, getWireObjectSet(objectSet)),\n };\n }\n else {\n return objectSet;\n }\n },\n ownKeys(target) {\n return [...Object.keys(target[ObjectDefRef].links)];\n },\n getOwnPropertyDescriptor(target, p) {\n if (target[ObjectDefRef].links[p]) {\n return {\n enumerable: true,\n configurable: true, // fixme\n writable: false,\n };\n }\n },\n};\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAASA,gBAAgB,QAAQ,oCAAoC;AACrE,SAASC,WAAW,EAAEC,qBAAqB,QAAQ,mBAAmB;AACtE,SAASC,SAAS,EAAEC,YAAY,EAAEC,SAAS,QAAQ,sBAAsB;AACzE;AACA,OAAO,SAASC,QAAQA,CAACC,MAAM,EAAE;EAC7B,OAAO,IAAIC,KAAK,CAACD,MAAM,EAAEE,sBAAsB,CAAC;AACpD;AACA,MAAMA,sBAAsB,GAAG;EAC3BC,GAAGA,CAACC,MAAM,EAAEC,CAAC,EAAE;IACX,MAAM;MAAE,CAACR,YAAY,GAAGS,MAAM;MAAE,CAACV,SAAS,GAAGW,MAAM;MAAE,CAACT,SAAS,GAAGU;IAAQ,CAAC,GAAGJ,MAAM;IACpF,MAAMK,OAAO,GAAGH,MAAM,CAACI,KAAK,CAACL,CAAC,CAAC;IAC/B,IAAII,OAAO,IAAI,IAAI,EAAE;MACjB;IACJ;IACA,MAAME,SAAS,GAAGJ,MAAM,CAACK,gBAAgB,CAACN,MAAM,EAAEC,MAAM,CAAC,CACpDM,KAAK,CAAC;MACP,CAACP,MAAM,CAACQ,iBAAiB,GAAGN,MAAM,CAACO;IACvC,CAAC,CAAC,CACGC,OAAO,CAACX,CAAC,CAAC;IACf,IAAI,CAACI,OAAO,CAACQ,YAAY,EAAE;MACvB,OAAO;QACHC,QAAQ,EAAGC,OAAO,IAAKzB,WAAW,CAACa,MAAM,EAAED,MAAM,EAAEa,OAAO,IAAI,CAAC,CAAC,EAAE1B,gBAAgB,CAACkB,SAAS,CAAC,CAAC;QAC9FS,kBAAkB,EAAGD,OAAO,IAAKxB,qBAAqB,CAACY,MAAM,EAAED,MAAM,EAAEa,OAAO,IAAI,CAAC,CAAC,EAAE1B,gBAAgB,CAACkB,SAAS,CAAC;MACrH,CAAC;IACL,CAAC,MACI;MACD,OAAOA,SAAS;IACpB;EACJ,CAAC;EACDU,OAAOA,CAACjB,MAAM,EAAE;IACZ,OAAO,CAAC,GAAGkB,MAAM,CAACC,IAAI,CAACnB,MAAM,CAACP,YAAY,CAAC,CAACa,KAAK,CAAC,CAAC;EACvD,CAAC;EACDc,wBAAwBA,CAACpB,MAAM,EAAEC,CAAC,EAAE;IAChC,IAAID,MAAM,CAACP,YAAY,CAAC,CAACa,KAAK,CAACL,CAAC,CAAC,EAAE;MAC/B,OAAO;QACHoB,UAAU,EAAE,IAAI;QAChBC,YAAY,EAAE,IAAI;QAAE;QACpBC,QAAQ,EAAE;MACd,CAAC;IACL;EACJ;AACJ,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"getDollarLink.js","names":["getWireObjectSet","fetchSingle","fetchSingleWithErrors","ClientRef","ObjectDefRef","UnderlyingOsdkObject","get$link","holder","client","objDef","rawObj","Object","freeze","fromEntries","keys","links","map","linkName","linkDef","objectSet","objectSetFactory","where","primaryKeyApiName","$primaryKey","pivotTo","value","multiplicity","fetchOne","options","fetchOneWithErrors"],"sources":["getDollarLink.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 {\n ObjectSet,\n ObjectTypeDefinition,\n OsdkObjectLinksObject,\n SelectArg,\n WhereClause,\n} from \"@osdk/api\";\nimport { getWireObjectSet } from \"../../objectSet/createObjectSet.js\";\nimport { fetchSingle, fetchSingleWithErrors } from \"../fetchSingle.js\";\nimport {\n ClientRef,\n ObjectDefRef,\n UnderlyingOsdkObject,\n} from \"./InternalSymbols.js\";\nimport type { ObjectHolder } from \"./ObjectHolder.js\";\n\n/** @internal */\nexport function get$link(\n holder: ObjectHolder<any>,\n): OsdkObjectLinksObject<any> {\n const client = holder[ClientRef];\n const objDef = holder[ObjectDefRef];\n const rawObj = holder[UnderlyingOsdkObject];\n return Object.freeze(Object.fromEntries(\n Object.keys(objDef.links).map(\n (linkName) => {\n const linkDef = objDef.links[linkName as keyof typeof objDef.links];\n const objectSet =\n (client.objectSetFactory(objDef, client) as ObjectSet<any>)\n .where({\n [objDef.primaryKeyApiName]: rawObj.$primaryKey,\n } as WhereClause<ObjectTypeDefinition>)\n .pivotTo(linkName);\n\n const value = !linkDef.multiplicity\n ? {\n fetchOne: <A extends SelectArg<any>>(options?: A) =>\n fetchSingle(\n client,\n objDef,\n options ?? {},\n getWireObjectSet(objectSet),\n ),\n fetchOneWithErrors: <A extends SelectArg<any>>(options?: A) =>\n fetchSingleWithErrors(\n client,\n objDef,\n options ?? {},\n getWireObjectSet(objectSet),\n ),\n }\n : objectSet;\n\n return [linkName, value];\n },\n ),\n ));\n}\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AASA,SAASA,gBAAgB,QAAQ,oCAAoC;AACrE,SAASC,WAAW,EAAEC,qBAAqB,QAAQ,mBAAmB;AACtE,SACEC,SAAS,EACTC,YAAY,EACZC,oBAAoB,QACf,sBAAsB;AAG7B;AACA,OAAO,SAASC,QAAQA,CACtBC,MAAyB,EACG;EAC5B,MAAMC,MAAM,GAAGD,MAAM,CAACJ,SAAS,CAAC;EAChC,MAAMM,MAAM,GAAGF,MAAM,CAACH,YAAY,CAAC;EACnC,MAAMM,MAAM,GAAGH,MAAM,CAACF,oBAAoB,CAAC;EAC3C,OAAOM,MAAM,CAACC,MAAM,CAACD,MAAM,CAACE,WAAW,CACrCF,MAAM,CAACG,IAAI,CAACL,MAAM,CAACM,KAAK,CAAC,CAACC,GAAG,CAC1BC,QAAQ,IAAK;IACZ,MAAMC,OAAO,GAAGT,MAAM,CAACM,KAAK,CAACE,QAAQ,CAA8B;IACnE,MAAME,SAAS,GACZX,MAAM,CAACY,gBAAgB,CAACX,MAAM,EAAED,MAAM,CAAC,CACrCa,KAAK,CAAC;MACL,CAACZ,MAAM,CAACa,iBAAiB,GAAGZ,MAAM,CAACa;IACrC,CAAsC,CAAC,CACtCC,OAAO,CAACP,QAAQ,CAAC;IAEtB,MAAMQ,KAAK,GAAG,CAACP,OAAO,CAACQ,YAAY,GAC/B;MACAC,QAAQ,EAA6BC,OAAW,IAC9C3B,WAAW,CACTO,MAAM,EACNC,MAAM,EACNmB,OAAO,IAAI,CAAC,CAAC,EACb5B,gBAAgB,CAACmB,SAAS,CAC5B,CAAC;MACHU,kBAAkB,EAA6BD,OAAW,IACxD1B,qBAAqB,CACnBM,MAAM,EACNC,MAAM,EACNmB,OAAO,IAAI,CAAC,CAAC,EACb5B,gBAAgB,CAACmB,SAAS,CAC5B;IACJ,CAAC,GACCA,SAAS;IAEb,OAAO,CAACF,QAAQ,EAAEQ,KAAK,CAAC;EAC1B,CACF,CACF,CAAC,CAAC;AACJ","ignoreList":[]}
@@ -13,8 +13,10 @@
13
13
  * See the License for the specific language governing permissions and
14
14
  * limitations under the License.
15
15
  */
16
+
16
17
  import invariant from "tiny-invariant";
17
18
  import { createOsdkObject } from "./convertWireToOsdkObjects/createOsdkObject.js";
19
+
18
20
  /**
19
21
  * If interfaceApiName is not undefined, converts the instances of the
20
22
  * interface into their respective
@@ -39,7 +41,8 @@ export async function convertWireToOsdkObjects(client, objects, interfaceApiName
39
41
  const ret = [];
40
42
  for (const rawObj of objects) {
41
43
  const objectDef = await client.ontologyProvider.getObjectDefinition(rawObj.$apiName);
42
- !objectDef ? invariant(false, `Missing definition for '${rawObj.$apiName}'`) : void 0;
44
+ !objectDef ? process.env.NODE_ENV !== "production" ? invariant(false, `Missing definition for '${rawObj.$apiName}'`) : invariant(false) : void 0;
45
+
43
46
  // default value for when we are checking an object
44
47
  let objProps;
45
48
  let conforming = true;
@@ -65,6 +68,45 @@ export async function convertWireToOsdkObjects(client, objects, interfaceApiName
65
68
  client.logger?.debug(`END convertWireToOsdkObjects()`);
66
69
  return ret;
67
70
  }
71
+
72
+ /**
73
+ * @internal
74
+ */
75
+ export async function convertWireToOsdkObjects2(client, objects, interfaceApiName, forceRemoveRid = false, selectedProps, strictNonNull = false, interfaceToObjectTypeMappings = {}) {
76
+ client.logger?.debug(`START convertWireToOsdkObjects2()`);
77
+ fixObjectPropertiesInPlace(objects, forceRemoveRid);
78
+ const ret = [];
79
+ for (const rawObj of objects) {
80
+ const objectDef = await client.ontologyProvider.getObjectDefinition(rawObj.$apiName);
81
+ !objectDef ? process.env.NODE_ENV !== "production" ? invariant(false, `Missing definition for '${rawObj.$apiName}'`) : invariant(false) : void 0;
82
+ const interfaceToObjMapping = interfaceApiName ? interfaceToObjectTypeMappings[interfaceApiName][rawObj.$apiName] : undefined;
83
+ const ifaceSelected = interfaceApiName && interfaceToObjMapping ? selectedProps ? Object.keys(interfaceToObjMapping).filter(val => {
84
+ selectedProps?.includes(interfaceToObjMapping[val]);
85
+ }) : [...Object.values(interfaceToObjMapping), objectDef.primaryKeyApiName] : undefined;
86
+
87
+ // default value for when we are checking an object
88
+ let objProps;
89
+ let conforming = true;
90
+ if (interfaceApiName && ifaceSelected) {
91
+ invariantInterfacesAsViews(objectDef, interfaceApiName, client);
92
+ objProps = ifaceSelected;
93
+ } else {
94
+ objProps = selectedProps ?? Object.keys(objectDef.properties);
95
+ }
96
+ conforming &&= isConforming(client, objectDef, rawObj, objProps);
97
+ if (strictNonNull === "throw" && !conforming) {
98
+ throw new Error("Unable to safely convert objects as some non nullable properties are null");
99
+ } else if (strictNonNull === "drop" && !conforming) {
100
+ continue;
101
+ }
102
+ let osdkObject = createOsdkObject(client, objectDef, rawObj);
103
+ if (interfaceApiName) osdkObject = osdkObject.$as(interfaceApiName);
104
+ ret.push(osdkObject);
105
+ }
106
+ client.logger?.debug(`END convertWireToOsdkObjects2()`);
107
+ return ret;
108
+ }
109
+
68
110
  /**
69
111
  * Utility function that lets us take down selected property names from an interface
70
112
  * and convert them to an array of property names on an object.
@@ -72,6 +114,7 @@ export async function convertWireToOsdkObjects(client, objects, interfaceApiName
72
114
  function convertInterfacePropNamesToObjectPropNames(objectDef, interfaceApiName, ifacePropsToMap) {
73
115
  return ifacePropsToMap.map(ifaceProp => objectDef.interfaceMap[interfaceApiName][ifaceProp]);
74
116
  }
117
+
75
118
  /**
76
119
  * Takes a raw object from the wire (contextually as an interface) and
77
120
  * updates the fields to reflect the underlying objectDef instead
@@ -99,7 +142,7 @@ function reframeAsObjectInPlace(objectDef, interfaceApiName, rawObj) {
99
142
  function isConforming(client, def, obj, propsToCheck) {
100
143
  for (const propName of propsToCheck) {
101
144
  if (def.properties[propName].nullable === false && obj[propName] == null) {
102
- if (process?.env?.NODE_ENV !== "production") {
145
+ if (process.env.NODE_ENV !== "production") {
103
146
  client.logger?.debug({
104
147
  obj: {
105
148
  $objectType: obj["$objectType"],
@@ -133,14 +176,18 @@ function fixObjectPropertiesInPlace(objs, forceRemoveRid) {
133
176
  obj.$rid = obj.__rid;
134
177
  delete obj.__rid;
135
178
  }
179
+
136
180
  // Backend returns as __apiName but we want to stick to $ structure
137
- obj.$apiName = obj.__apiName;
181
+ obj.$apiName ??= obj.__apiName;
182
+
138
183
  // for now these are the same but when we start doing interface projections the $objectType will always be underlying and
139
184
  // the $apiName will be for the current view (in current designs)
140
- obj.$objectType = obj.__apiName;
185
+ obj.$objectType = obj.$apiName;
186
+
141
187
  // copying over for now as its always returned. In the future, this should just be inferred from underlying
142
- obj.$primaryKey = obj.__primaryKey;
143
- obj.$title = obj.__title;
188
+ obj.$primaryKey ??= obj.__primaryKey;
189
+ obj.$title ??= obj.__title;
190
+
144
191
  // we don't want people to use these
145
192
  delete obj.__apiName;
146
193
  delete obj.__primaryKey;