@osdk/client 2.1.0-beta.2 → 2.1.0-beta.21

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 (298) hide show
  1. package/CHANGELOG.md +297 -0
  2. package/build/browser/Client.d.ts +6 -22
  3. package/build/browser/Client.d.ts.map +1 -1
  4. package/build/browser/Client.js +3 -1
  5. package/build/browser/Client.js.map +1 -1
  6. package/build/browser/MinimalClientContext.d.ts +1 -1
  7. package/build/browser/MinimalClientContext.d.ts.map +1 -1
  8. package/build/browser/__unstable/ConjureSupport.js +5 -5
  9. package/build/browser/__unstable/ConjureSupport.js.map +1 -1
  10. package/build/browser/__unstable/createBulkLinksAsyncIterFactory.d.ts +1 -6
  11. package/build/browser/__unstable/createBulkLinksAsyncIterFactory.d.ts.map +1 -1
  12. package/build/browser/__unstable/createBulkLinksAsyncIterFactory.js +2 -2
  13. package/build/browser/__unstable/createBulkLinksAsyncIterFactory.js.map +1 -1
  14. package/build/browser/actions/actions.test.js +28 -0
  15. package/build/browser/actions/actions.test.js.map +1 -1
  16. package/build/browser/actions/applyAction.js +1 -1
  17. package/build/browser/actions/applyAction.js.map +1 -1
  18. package/build/browser/createClient.d.ts +1 -1
  19. package/build/browser/createClient.d.ts.map +1 -1
  20. package/build/browser/createClient.js +41 -19
  21. package/build/browser/createClient.js.map +1 -1
  22. package/build/browser/createClient.test.js +24 -0
  23. package/build/browser/createClient.test.js.map +1 -1
  24. package/build/browser/createGeotimeSeriesProperty.d.ts +1 -1
  25. package/build/browser/createGeotimeSeriesProperty.d.ts.map +1 -1
  26. package/build/browser/createGeotimeSeriesProperty.js +4 -1
  27. package/build/browser/createGeotimeSeriesProperty.js.map +1 -1
  28. package/build/browser/createMinimalClient.js +9 -4
  29. package/build/browser/createMinimalClient.js.map +1 -1
  30. package/build/browser/createPlatformClient.d.ts +1 -1
  31. package/build/browser/createPlatformClient.d.ts.map +1 -1
  32. package/build/browser/createTimeseriesProperty.d.ts.map +1 -1
  33. package/build/browser/fetchMetadata.test.js +14 -0
  34. package/build/browser/fetchMetadata.test.js.map +1 -1
  35. package/build/browser/index.d.ts +2 -2
  36. package/build/browser/index.d.ts.map +1 -1
  37. package/build/browser/index.js +1 -1
  38. package/build/browser/index.js.map +1 -1
  39. package/build/browser/intellisense.test.js +1 -1
  40. package/build/browser/intellisense.test.js.map +1 -1
  41. package/build/browser/internal/conversions/legacyToModernSingleAggregationResult.js +1 -1
  42. package/build/browser/internal/conversions/legacyToModernSingleAggregationResult.js.map +1 -1
  43. package/build/browser/internal/conversions/modernToLegacyWhereClause.js +11 -3
  44. package/build/browser/internal/conversions/modernToLegacyWhereClause.js.map +1 -1
  45. package/build/browser/internal/conversions/modernToLegacyWhereClause.test.js +208 -7
  46. package/build/browser/internal/conversions/modernToLegacyWhereClause.test.js.map +1 -1
  47. package/build/browser/object/AttachmentUpload.d.ts.map +1 -1
  48. package/build/browser/object/AttachmentUpload.js +5 -7
  49. package/build/browser/object/AttachmentUpload.js.map +1 -1
  50. package/build/browser/object/aggregate.js +4 -5
  51. package/build/browser/object/aggregate.js.map +1 -1
  52. package/build/browser/object/aggregate.test.js +6 -9
  53. package/build/browser/object/aggregate.test.js.map +1 -1
  54. package/build/browser/object/convertWireToOsdkObjects/InterfaceHolder.d.ts +1 -10
  55. package/build/browser/object/convertWireToOsdkObjects/InterfaceHolder.d.ts.map +1 -1
  56. package/build/browser/object/convertWireToOsdkObjects/InternalSymbols.d.ts +0 -7
  57. package/build/browser/object/convertWireToOsdkObjects/InternalSymbols.d.ts.map +1 -1
  58. package/build/browser/object/convertWireToOsdkObjects/InternalSymbols.js +4 -3
  59. package/build/browser/object/convertWireToOsdkObjects/InternalSymbols.js.map +1 -1
  60. package/build/browser/object/convertWireToOsdkObjects/createOsdkInterface.js +41 -85
  61. package/build/browser/object/convertWireToOsdkObjects/createOsdkInterface.js.map +1 -1
  62. package/build/browser/object/convertWireToOsdkObjects/createOsdkInterface.test.js +0 -6
  63. package/build/browser/object/convertWireToOsdkObjects/createOsdkInterface.test.js.map +1 -1
  64. package/build/browser/object/convertWireToOsdkObjects/createOsdkObject.js +60 -89
  65. package/build/browser/object/convertWireToOsdkObjects/createOsdkObject.js.map +1 -1
  66. package/build/browser/object/convertWireToOsdkObjects/getDollarAs.js +2 -2
  67. package/build/browser/object/convertWireToOsdkObjects/getDollarAs.js.map +1 -1
  68. package/build/browser/object/convertWireToOsdkObjects/getDollarLink.js +14 -38
  69. package/build/browser/object/convertWireToOsdkObjects/getDollarLink.js.map +1 -1
  70. package/build/browser/object/convertWireToOsdkObjects.js +42 -6
  71. package/build/browser/object/convertWireToOsdkObjects.js.map +1 -1
  72. package/build/browser/object/convertWireToOsdkObjects.test.js +177 -45
  73. package/build/browser/object/convertWireToOsdkObjects.test.js.map +1 -1
  74. package/build/browser/object/fetchPage.d.ts.map +1 -1
  75. package/build/browser/object/fetchPage.js +34 -23
  76. package/build/browser/object/fetchPage.js.map +1 -1
  77. package/build/browser/object/fetchPage.test.js +75 -1
  78. package/build/browser/object/fetchPage.test.js.map +1 -1
  79. package/build/browser/object/object.test.d.ts.map +1 -1
  80. package/build/browser/object/object.test.js +25 -1
  81. package/build/browser/object/object.test.js.map +1 -1
  82. package/build/browser/object/timeseries.test.js +10 -0
  83. package/build/browser/object/timeseries.test.js.map +1 -1
  84. package/build/browser/objectSet/InterfaceObjectSet.test.d.ts +2 -0
  85. package/build/browser/objectSet/InterfaceObjectSet.test.d.ts.map +1 -0
  86. package/build/browser/objectSet/InterfaceObjectSet.test.js +61 -0
  87. package/build/browser/objectSet/InterfaceObjectSet.test.js.map +1 -0
  88. package/build/browser/objectSet/ObjectSet.test.js +162 -48
  89. package/build/browser/objectSet/ObjectSet.test.js.map +1 -1
  90. package/build/browser/objectSet/ObjectSetListenerWebsocket.js +136 -74
  91. package/build/browser/objectSet/ObjectSetListenerWebsocket.js.map +1 -1
  92. package/build/browser/objectSet/ObjectSetListenerWebsocket.test.js +150 -42
  93. package/build/browser/objectSet/ObjectSetListenerWebsocket.test.js.map +1 -1
  94. package/build/browser/objectSet/createObjectSet.js +10 -8
  95. package/build/browser/objectSet/createObjectSet.js.map +1 -1
  96. package/build/browser/objectSet/toConjureObjectSet.js +2 -0
  97. package/build/browser/objectSet/toConjureObjectSet.js.map +1 -1
  98. package/build/browser/ontology/makeConjureContext.d.ts +1 -1
  99. package/build/browser/ontology/makeConjureContext.d.ts.map +1 -1
  100. package/build/browser/public/internal.d.ts +4 -0
  101. package/build/browser/public/internal.d.ts.map +1 -0
  102. package/build/browser/public/internal.js +19 -0
  103. package/build/browser/public/internal.js.map +1 -0
  104. package/build/browser/public-utils/createAndFetchTempObjectSetRid.d.ts +11 -0
  105. package/build/browser/public-utils/createAndFetchTempObjectSetRid.d.ts.map +1 -0
  106. package/build/browser/public-utils/createAndFetchTempObjectSetRid.js +32 -0
  107. package/build/browser/public-utils/createAndFetchTempObjectSetRid.js.map +1 -0
  108. package/build/browser/public-utils/hydrateAttachmentFromRid.d.ts +10 -0
  109. package/build/browser/public-utils/hydrateAttachmentFromRid.d.ts.map +1 -0
  110. package/build/{esm/createAttachmentFromRid.js → browser/public-utils/hydrateAttachmentFromRid.js} +9 -4
  111. package/build/browser/public-utils/hydrateAttachmentFromRid.js.map +1 -0
  112. package/build/browser/public-utils/hydrateObjectSetFromRid.d.ts +11 -0
  113. package/build/browser/public-utils/hydrateObjectSetFromRid.d.ts.map +1 -0
  114. package/build/browser/public-utils/hydrateObjectSetFromRid.js +37 -0
  115. package/build/browser/public-utils/hydrateObjectSetFromRid.js.map +1 -0
  116. package/build/browser/queries/applyQuery.d.ts.map +1 -1
  117. package/build/browser/queries/applyQuery.js +3 -4
  118. package/build/browser/queries/applyQuery.js.map +1 -1
  119. package/build/browser/queries/queries.test.js +30 -2
  120. package/build/browser/queries/queries.test.js.map +1 -1
  121. package/build/browser/tsserver.js +1 -1
  122. package/build/browser/tsserver.js.map +1 -1
  123. package/build/browser/util/UserAgent.js +1 -1
  124. package/build/browser/util/UserAgent.js.map +1 -1
  125. package/build/browser/util/datetimeConverters.d.ts +22 -0
  126. package/build/browser/util/datetimeConverters.d.ts.map +1 -0
  127. package/build/browser/util/datetimeConverters.js +55 -0
  128. package/build/browser/util/datetimeConverters.js.map +1 -0
  129. package/build/browser/util/datetimeConverters.test.d.ts +2 -0
  130. package/build/browser/util/datetimeConverters.test.d.ts.map +1 -0
  131. package/build/browser/util/datetimeConverters.test.js +75 -0
  132. package/build/browser/util/datetimeConverters.test.js.map +1 -0
  133. package/build/browser/util/objectSetUtils.d.ts +4 -0
  134. package/build/browser/util/objectSetUtils.d.ts.map +1 -0
  135. package/build/browser/util/objectSetUtils.js +25 -0
  136. package/build/browser/util/objectSetUtils.js.map +1 -0
  137. package/build/browser/util/timeseriesUtils.d.ts +1 -1
  138. package/build/browser/util/timeseriesUtils.d.ts.map +1 -1
  139. package/build/browser/util/timeseriesUtils.js +1 -1
  140. package/build/browser/util/timeseriesUtils.js.map +1 -1
  141. package/build/browser/util/toDataValue.js +6 -0
  142. package/build/browser/util/toDataValue.js.map +1 -1
  143. package/build/browser/util/toDataValue.test.js +9 -1
  144. package/build/browser/util/toDataValue.test.js.map +1 -1
  145. package/build/browser/util/toDataValueQueries.js +6 -0
  146. package/build/browser/util/toDataValueQueries.js.map +1 -1
  147. package/build/esm/Client.d.ts +6 -22
  148. package/build/esm/Client.d.ts.map +1 -1
  149. package/build/esm/Client.js +3 -1
  150. package/build/esm/Client.js.map +1 -1
  151. package/build/esm/MinimalClientContext.d.ts +1 -1
  152. package/build/esm/MinimalClientContext.d.ts.map +1 -1
  153. package/build/esm/__unstable/ConjureSupport.js +5 -5
  154. package/build/esm/__unstable/ConjureSupport.js.map +1 -1
  155. package/build/esm/__unstable/createBulkLinksAsyncIterFactory.d.ts +1 -6
  156. package/build/esm/__unstable/createBulkLinksAsyncIterFactory.d.ts.map +1 -1
  157. package/build/esm/__unstable/createBulkLinksAsyncIterFactory.js +2 -2
  158. package/build/esm/__unstable/createBulkLinksAsyncIterFactory.js.map +1 -1
  159. package/build/esm/actions/actions.test.js +28 -0
  160. package/build/esm/actions/actions.test.js.map +1 -1
  161. package/build/esm/actions/applyAction.js +1 -1
  162. package/build/esm/actions/applyAction.js.map +1 -1
  163. package/build/esm/createClient.d.ts +1 -1
  164. package/build/esm/createClient.d.ts.map +1 -1
  165. package/build/esm/createClient.js +41 -19
  166. package/build/esm/createClient.js.map +1 -1
  167. package/build/esm/createClient.test.js +24 -0
  168. package/build/esm/createClient.test.js.map +1 -1
  169. package/build/esm/createGeotimeSeriesProperty.d.ts +1 -1
  170. package/build/esm/createGeotimeSeriesProperty.d.ts.map +1 -1
  171. package/build/esm/createGeotimeSeriesProperty.js +4 -1
  172. package/build/esm/createGeotimeSeriesProperty.js.map +1 -1
  173. package/build/esm/createMinimalClient.js +9 -4
  174. package/build/esm/createMinimalClient.js.map +1 -1
  175. package/build/esm/createPlatformClient.d.ts +1 -1
  176. package/build/esm/createPlatformClient.d.ts.map +1 -1
  177. package/build/esm/createTimeseriesProperty.d.ts.map +1 -1
  178. package/build/esm/fetchMetadata.test.js +14 -0
  179. package/build/esm/fetchMetadata.test.js.map +1 -1
  180. package/build/esm/index.d.ts +2 -2
  181. package/build/esm/index.d.ts.map +1 -1
  182. package/build/esm/index.js +1 -1
  183. package/build/esm/index.js.map +1 -1
  184. package/build/esm/intellisense.test.js +1 -1
  185. package/build/esm/intellisense.test.js.map +1 -1
  186. package/build/esm/internal/conversions/legacyToModernSingleAggregationResult.js +1 -1
  187. package/build/esm/internal/conversions/legacyToModernSingleAggregationResult.js.map +1 -1
  188. package/build/esm/internal/conversions/modernToLegacyWhereClause.js +11 -3
  189. package/build/esm/internal/conversions/modernToLegacyWhereClause.js.map +1 -1
  190. package/build/esm/internal/conversions/modernToLegacyWhereClause.test.js +208 -7
  191. package/build/esm/internal/conversions/modernToLegacyWhereClause.test.js.map +1 -1
  192. package/build/esm/object/AttachmentUpload.d.ts.map +1 -1
  193. package/build/esm/object/AttachmentUpload.js +5 -7
  194. package/build/esm/object/AttachmentUpload.js.map +1 -1
  195. package/build/esm/object/aggregate.js +4 -5
  196. package/build/esm/object/aggregate.js.map +1 -1
  197. package/build/esm/object/aggregate.test.js +6 -9
  198. package/build/esm/object/aggregate.test.js.map +1 -1
  199. package/build/esm/object/convertWireToOsdkObjects/InterfaceHolder.d.ts +1 -10
  200. package/build/esm/object/convertWireToOsdkObjects/InterfaceHolder.d.ts.map +1 -1
  201. package/build/esm/object/convertWireToOsdkObjects/InternalSymbols.d.ts +0 -7
  202. package/build/esm/object/convertWireToOsdkObjects/InternalSymbols.d.ts.map +1 -1
  203. package/build/esm/object/convertWireToOsdkObjects/InternalSymbols.js +4 -3
  204. package/build/esm/object/convertWireToOsdkObjects/InternalSymbols.js.map +1 -1
  205. package/build/esm/object/convertWireToOsdkObjects/createOsdkInterface.js +41 -85
  206. package/build/esm/object/convertWireToOsdkObjects/createOsdkInterface.js.map +1 -1
  207. package/build/esm/object/convertWireToOsdkObjects/createOsdkInterface.test.js +0 -6
  208. package/build/esm/object/convertWireToOsdkObjects/createOsdkInterface.test.js.map +1 -1
  209. package/build/esm/object/convertWireToOsdkObjects/createOsdkObject.js +60 -89
  210. package/build/esm/object/convertWireToOsdkObjects/createOsdkObject.js.map +1 -1
  211. package/build/esm/object/convertWireToOsdkObjects/getDollarAs.js +2 -2
  212. package/build/esm/object/convertWireToOsdkObjects/getDollarAs.js.map +1 -1
  213. package/build/esm/object/convertWireToOsdkObjects/getDollarLink.js +14 -38
  214. package/build/esm/object/convertWireToOsdkObjects/getDollarLink.js.map +1 -1
  215. package/build/esm/object/convertWireToOsdkObjects.js +42 -6
  216. package/build/esm/object/convertWireToOsdkObjects.js.map +1 -1
  217. package/build/esm/object/convertWireToOsdkObjects.test.js +177 -45
  218. package/build/esm/object/convertWireToOsdkObjects.test.js.map +1 -1
  219. package/build/esm/object/fetchPage.d.ts.map +1 -1
  220. package/build/esm/object/fetchPage.js +34 -23
  221. package/build/esm/object/fetchPage.js.map +1 -1
  222. package/build/esm/object/fetchPage.test.js +75 -1
  223. package/build/esm/object/fetchPage.test.js.map +1 -1
  224. package/build/esm/object/object.test.d.ts.map +1 -1
  225. package/build/esm/object/object.test.js +25 -1
  226. package/build/esm/object/object.test.js.map +1 -1
  227. package/build/esm/object/timeseries.test.js +10 -0
  228. package/build/esm/object/timeseries.test.js.map +1 -1
  229. package/build/esm/objectSet/InterfaceObjectSet.test.d.ts +2 -0
  230. package/build/esm/objectSet/InterfaceObjectSet.test.d.ts.map +1 -0
  231. package/build/esm/objectSet/InterfaceObjectSet.test.js +61 -0
  232. package/build/esm/objectSet/InterfaceObjectSet.test.js.map +1 -0
  233. package/build/esm/objectSet/ObjectSet.test.js +162 -48
  234. package/build/esm/objectSet/ObjectSet.test.js.map +1 -1
  235. package/build/esm/objectSet/ObjectSetListenerWebsocket.js +136 -77
  236. package/build/esm/objectSet/ObjectSetListenerWebsocket.js.map +1 -1
  237. package/build/esm/objectSet/ObjectSetListenerWebsocket.test.js +150 -42
  238. package/build/esm/objectSet/ObjectSetListenerWebsocket.test.js.map +1 -1
  239. package/build/esm/objectSet/createObjectSet.js +10 -8
  240. package/build/esm/objectSet/createObjectSet.js.map +1 -1
  241. package/build/esm/objectSet/toConjureObjectSet.js +2 -0
  242. package/build/esm/objectSet/toConjureObjectSet.js.map +1 -1
  243. package/build/esm/ontology/makeConjureContext.d.ts +1 -1
  244. package/build/esm/ontology/makeConjureContext.d.ts.map +1 -1
  245. package/build/esm/public/internal.d.ts +4 -0
  246. package/build/esm/public/internal.d.ts.map +1 -0
  247. package/build/esm/public/internal.js +19 -0
  248. package/build/esm/public/internal.js.map +1 -0
  249. package/build/esm/public-utils/createAndFetchTempObjectSetRid.d.ts +11 -0
  250. package/build/esm/public-utils/createAndFetchTempObjectSetRid.d.ts.map +1 -0
  251. package/build/esm/public-utils/createAndFetchTempObjectSetRid.js +32 -0
  252. package/build/esm/public-utils/createAndFetchTempObjectSetRid.js.map +1 -0
  253. package/build/esm/public-utils/hydrateAttachmentFromRid.d.ts +10 -0
  254. package/build/esm/public-utils/hydrateAttachmentFromRid.d.ts.map +1 -0
  255. package/build/{browser/createAttachmentFromRid.js → esm/public-utils/hydrateAttachmentFromRid.js} +9 -4
  256. package/build/esm/public-utils/hydrateAttachmentFromRid.js.map +1 -0
  257. package/build/esm/public-utils/hydrateObjectSetFromRid.d.ts +11 -0
  258. package/build/esm/public-utils/hydrateObjectSetFromRid.d.ts.map +1 -0
  259. package/build/esm/public-utils/hydrateObjectSetFromRid.js +37 -0
  260. package/build/esm/public-utils/hydrateObjectSetFromRid.js.map +1 -0
  261. package/build/esm/queries/applyQuery.d.ts.map +1 -1
  262. package/build/esm/queries/applyQuery.js +3 -4
  263. package/build/esm/queries/applyQuery.js.map +1 -1
  264. package/build/esm/queries/queries.test.js +30 -2
  265. package/build/esm/queries/queries.test.js.map +1 -1
  266. package/build/esm/tsserver.js +1 -1
  267. package/build/esm/tsserver.js.map +1 -1
  268. package/build/esm/util/UserAgent.js +1 -1
  269. package/build/esm/util/UserAgent.js.map +1 -1
  270. package/build/esm/util/datetimeConverters.d.ts +22 -0
  271. package/build/esm/util/datetimeConverters.d.ts.map +1 -0
  272. package/build/esm/util/datetimeConverters.js +55 -0
  273. package/build/esm/util/datetimeConverters.js.map +1 -0
  274. package/build/esm/util/datetimeConverters.test.d.ts +2 -0
  275. package/build/esm/util/datetimeConverters.test.d.ts.map +1 -0
  276. package/build/esm/util/datetimeConverters.test.js +75 -0
  277. package/build/esm/util/datetimeConverters.test.js.map +1 -0
  278. package/build/esm/util/objectSetUtils.d.ts +4 -0
  279. package/build/esm/util/objectSetUtils.d.ts.map +1 -0
  280. package/build/esm/util/objectSetUtils.js +25 -0
  281. package/build/esm/util/objectSetUtils.js.map +1 -0
  282. package/build/esm/util/timeseriesUtils.d.ts +1 -1
  283. package/build/esm/util/timeseriesUtils.d.ts.map +1 -1
  284. package/build/esm/util/timeseriesUtils.js +1 -1
  285. package/build/esm/util/timeseriesUtils.js.map +1 -1
  286. package/build/esm/util/toDataValue.js +6 -0
  287. package/build/esm/util/toDataValue.js.map +1 -1
  288. package/build/esm/util/toDataValue.test.js +9 -1
  289. package/build/esm/util/toDataValue.test.js.map +1 -1
  290. package/build/esm/util/toDataValueQueries.js +6 -0
  291. package/build/esm/util/toDataValueQueries.js.map +1 -1
  292. package/package.json +23 -19
  293. package/build/browser/createAttachmentFromRid.d.ts +0 -10
  294. package/build/browser/createAttachmentFromRid.d.ts.map +0 -1
  295. package/build/browser/createAttachmentFromRid.js.map +0 -1
  296. package/build/esm/createAttachmentFromRid.d.ts +0 -10
  297. package/build/esm/createAttachmentFromRid.d.ts.map +0 -1
  298. package/build/esm/createAttachmentFromRid.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"convertWireToOsdkObjects.test.js","names":["$ontologyRid","Employee","FooInterface","objectTypeWithAllPropertyTypes","symbolClientContext","createSharedClientContext","apiServer","afterAll","beforeAll","describe","expect","expectTypeOf","it","createClient","createMinimalClient","convertWireToOsdkObjects","client","listen","close","data","employee","fetchPage","Object","keys","sort","toEqual","$as","$link","employee2","where","$and","employeeId","$gt","$lt","JSON","stringify","toMatchInlineSnapshot","employees","length","toBeGreaterThanOrEqual","a","b","getPrototypeOf","toBe","withValues","id","attachment","attachmentArray","toMatchTypeOf","rid","Array","isArray","toBeTruthy","withoutValues","emptyAttachment","emptyAttachmentArray","toBeUndefined","clientCtx","ontologyRid","object","__apiName","apiName","__primaryKey","prototypeBefore","object2","undefined","prototypeAfter","not","obj","__title","fullName","objAsFoo","toMatchObject","fooSpt","$apiName","$primaryKey","$objectType","$title","console","log","$updateInternalValues","__rid","$rid","rejects","toThrowErrorMatchingInlineSnapshot","resolves","to","result","instance","osdk"],"sources":["convertWireToOsdkObjects.test.js"],"sourcesContent":["/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\nimport { $ontologyRid, Employee, FooInterface, objectTypeWithAllPropertyTypes, } from \"@osdk/client.test.ontology\";\nimport { symbolClientContext } from \"@osdk/shared.client\";\nimport { createSharedClientContext } from \"@osdk/shared.client.impl\";\nimport { apiServer } from \"@osdk/shared.test\";\nimport { afterAll, beforeAll, describe, expect, expectTypeOf, it, } from \"vitest\";\nimport { createClient } from \"../createClient.js\";\nimport { createMinimalClient } from \"../createMinimalClient.js\";\nimport { convertWireToOsdkObjects } from \"./convertWireToOsdkObjects.js\";\ndescribe(\"convertWireToOsdkObjects\", () => {\n let client;\n beforeAll(async () => {\n apiServer.listen();\n client = createClient(\"https://stack.palantir.com\", $ontologyRid, async () => \"myAccessToken\");\n });\n afterAll(() => {\n apiServer.close();\n });\n it(\"configures properties correctly\", async () => {\n const { data: [employee] } = await client(Employee).fetchPage();\n expect(Object.keys(employee).sort()).toEqual([\n \"employeeId\",\n \"fullName\",\n \"office\",\n \"class\",\n \"startDate\",\n \"employeeStatus\",\n \"$apiName\",\n \"$objectType\",\n \"$primaryKey\",\n \"employeeLocation\",\n ].sort());\n expect(Object.keys(employee.$as)).toEqual([]);\n expect(Object.keys(employee.$link)).toEqual([\n \"peeps\",\n \"lead\",\n \"officeLink\",\n ]);\n });\n it(\"stringifies properties on objects and interfaces correctly\", async () => {\n const { data: [employee] } = await client(Employee).fetchPage();\n const { data: [employee2] } = await client(Employee).where({\n $and: [{ employeeId: { $gt: 50030 } }, { employeeId: { $lt: 50032 } }],\n }).fetchPage();\n // Should not have $title\n expect(JSON.stringify(employee)).toMatchInlineSnapshot(`\"{\"employeeId\":50030,\"fullName\":\"John Doe\",\"office\":\"NYC\",\"class\":\"Red\",\"startDate\":\"2019-01-01\",\"employeeStatus\":{},\"employeeLocation\":{},\"$apiName\":\"Employee\",\"$objectType\":\"Employee\",\"$primaryKey\":50030}\"`);\n expect(JSON.stringify(employee.$as(FooInterface))).toMatchInlineSnapshot(`\"{\"$apiName\":\"FooInterface\",\"$objectType\":\"Employee\",\"$primaryKey\":50030,\"fooSpt\":\"John Doe\"}\"`);\n // Should have $title\n expect(JSON.stringify(employee2)).toMatchInlineSnapshot(`\"{\"employeeId\":50031,\"fullName\":\"Jane Doe\",\"office\":\"SEA\",\"class\":\"Blue\",\"startDate\":\"2012-02-12\",\"employeeStatus\":{},\"employeeLocation\":{},\"$apiName\":\"Employee\",\"$objectType\":\"Employee\",\"$primaryKey\":50031,\"$title\":\"Jane Doe\"}\"`);\n expect(JSON.stringify(employee2.$as(FooInterface))).toMatchInlineSnapshot(`\"{\"$apiName\":\"FooInterface\",\"$objectType\":\"Employee\",\"$primaryKey\":50031,\"$title\":\"Jane Doe\",\"fooSpt\":\"Jane Doe\"}\"`);\n });\n it(\"reuses the object prototype across objects\", async () => {\n const employees = await client(Employee).fetchPage();\n expect(employees.data.length).toBeGreaterThanOrEqual(2);\n const [a, b] = employees.data;\n expect(Object.getPrototypeOf(Object.getPrototypeOf(a))).toBe(Object.getPrototypeOf(Object.getPrototypeOf(b)));\n });\n it(\"converts attachments as expected\", async () => {\n const withValues = await client(objectTypeWithAllPropertyTypes)\n .where({ id: 1 })\n .fetchPage();\n expect(withValues.data.length).toBeGreaterThanOrEqual(1);\n const { attachment, attachmentArray } = withValues.data[0];\n expectTypeOf(attachment).toMatchTypeOf;\n expect(attachment?.rid).toEqual(\"ri.attachments.main.attachment.86016861-707f-4292-b258-6a7108915a75\");\n expect(Array.isArray(attachmentArray)).toBeTruthy();\n expectTypeOf(attachmentArray[0]).toMatchTypeOf;\n const withoutValues = await client(objectTypeWithAllPropertyTypes).where({ id: 2 }).fetchPage();\n const { attachment: emptyAttachment, attachmentArray: emptyAttachmentArray, } = withoutValues.data[0];\n expect(emptyAttachment).toBeUndefined();\n expect(emptyAttachmentArray).toBeUndefined();\n });\n it(\"works even with unknown apiNames\", async () => {\n const clientCtx = createMinimalClient({ ontologyRid: $ontologyRid }, \"https://stack.palantir.com\", async () => \"myAccessToken\");\n createSharedClientContext(\"https://stack.palantir.com\", async () => \"myAccessToken\", \"userAgent\");\n let object = {\n __apiName: Employee.apiName,\n __primaryKey: 0,\n };\n const prototypeBefore = Object.getPrototypeOf(object);\n let object2 = await convertWireToOsdkObjects(clientCtx, [object], undefined, undefined, undefined, false);\n const prototypeAfter = Object.getPrototypeOf(object2);\n expect(prototypeBefore).not.toBe(prototypeAfter);\n });\n it(\"updates interface when underlying changes\", async () => {\n const clientCtx = createMinimalClient({ ontologyRid: $ontologyRid }, \"https://stack.palantir.com\", async () => \"myAccessToken\");\n let objectFromWire = {\n __apiName: \"Employee\",\n __primaryKey: 0,\n __title: \"Steve\",\n fullName: \"Steve\",\n employeeId: \"5\",\n };\n const [obj] = (await convertWireToOsdkObjects(clientCtx, [objectFromWire], undefined));\n expect(obj.fullName).toEqual(\"Steve\");\n expect(Object.keys(obj).sort()).toEqual([\n \"$apiName\",\n \"$objectType\",\n \"$primaryKey\",\n \"$title\",\n \"employeeId\",\n \"fullName\",\n ].sort());\n const objAsFoo = obj.$as(FooInterface);\n expect(objAsFoo).toMatchObject({\n fooSpt: obj.fullName,\n $apiName: FooInterface.apiName,\n $primaryKey: obj.$primaryKey,\n $objectType: obj.$objectType,\n $title: obj.$title,\n });\n console.log(obj);\n console.log(objAsFoo);\n obj.$updateInternalValues({\n fullName: \"Bob\",\n });\n expect(obj.fullName).toEqual(\"Bob\");\n expect(objAsFoo.fooSpt).toEqual(obj.fullName);\n expect(Object.keys(objAsFoo).sort()).toEqual([\n \"$apiName\",\n \"$objectType\",\n \"$primaryKey\",\n \"$title\",\n \"fooSpt\",\n ].sort());\n expect(obj).toBe(objAsFoo.$as(Employee));\n expect(objAsFoo).toBe(obj.$as(FooInterface));\n });\n it(\"reconstitutes interfaces properly without rid\", async () => {\n const clientCtx = createMinimalClient({ ontologyRid: $ontologyRid }, \"https://stack.palantir.com\", async () => \"myAccessToken\");\n let objectFromWire = {\n __apiName: \"Employee\",\n __primaryKey: 0,\n __title: \"Steve\",\n fooSpt: \"Steve\",\n };\n const [objAsFoo] = (await convertWireToOsdkObjects(clientCtx, [objectFromWire], FooInterface.apiName));\n expect(objAsFoo).toMatchInlineSnapshot(`\n {\n \"$apiName\": \"FooInterface\",\n \"$objectType\": \"Employee\",\n \"$primaryKey\": 0,\n \"$title\": \"Steve\",\n \"fooSpt\": \"Steve\",\n }\n `);\n const obj = objAsFoo.$as(Employee);\n expect(obj.fullName).toEqual(\"Steve\");\n expect(obj).toMatchInlineSnapshot(`\n {\n \"$apiName\": \"Employee\",\n \"$objectType\": \"Employee\",\n \"$primaryKey\": 0,\n \"$title\": \"Steve\",\n \"employeeId\": 0,\n \"fullName\": \"Steve\",\n }\n `);\n });\n it(\"reconstitutes interfaces properly with rid\", async () => {\n const clientCtx = createMinimalClient({ ontologyRid: $ontologyRid }, \"https://stack.palantir.com\", async () => \"myAccessToken\");\n let objectFromWire = {\n __apiName: \"Employee\",\n __primaryKey: 0,\n __title: \"Steve\",\n __rid: \"hiMom\",\n fooSpt: \"Steve\",\n };\n const [objAsFoo] = (await convertWireToOsdkObjects(clientCtx, [objectFromWire], FooInterface.apiName));\n expect(objAsFoo).toMatchInlineSnapshot(`\n {\n \"$apiName\": \"FooInterface\",\n \"$objectType\": \"Employee\",\n \"$primaryKey\": 0,\n \"$rid\": \"hiMom\",\n \"$title\": \"Steve\",\n \"fooSpt\": \"Steve\",\n }\n `);\n expect(objAsFoo.$rid).toEqual(\"hiMom\");\n const obj = objAsFoo.$as(Employee);\n expect(obj.fullName).toEqual(\"Steve\");\n expect(obj).toMatchInlineSnapshot(`\n {\n \"$apiName\": \"Employee\",\n \"$objectType\": \"Employee\",\n \"$primaryKey\": 0,\n \"$rid\": \"hiMom\",\n \"$title\": \"Steve\",\n \"employeeId\": 0,\n \"fullName\": \"Steve\",\n }\n `);\n expect(obj.$rid).toEqual(\"hiMom\");\n });\n describe(\"selection keys\", () => {\n it(\"throws when required is missing\", async () => {\n let object = {\n __apiName: \"Employee\",\n __primaryKey: 0,\n };\n await expect(() => convertWireToOsdkObjects(client[symbolClientContext], [object], undefined, undefined, [\"employeeId\"], \"throw\")).rejects.toThrowErrorMatchingInlineSnapshot(`[Error: Unable to safely convert objects as some non nullable properties are null]`);\n });\n it(\"does not throw when optional is missing\", async () => {\n let object = {\n __apiName: \"Employee\",\n __primaryKey: 0,\n };\n await expect(convertWireToOsdkObjects(client[symbolClientContext], [object], undefined, undefined, [\"fullName\"], \"throw\")).resolves.to.not.toBeUndefined();\n });\n it(\"filters when it should\", async () => {\n const object = {\n __apiName: \"Employee\",\n __primaryKey: 0,\n };\n const result = await convertWireToOsdkObjects(client[symbolClientContext], [object], undefined, undefined, [\"employeeId\"], \"drop\");\n expect(result.length).toBe(0);\n });\n it(\"does not filter when it shouldn't\", async () => {\n const object = {\n __apiName: \"Employee\",\n __primaryKey: 0,\n };\n const result = await convertWireToOsdkObjects(client[symbolClientContext], [object], undefined, undefined, [\"fullName\"], \"drop\");\n expect(result.length).toBe(1);\n });\n });\n describe(\"without selection keys\", () => {\n it(\"throws when required is missing\", async () => {\n let object = {\n __apiName: \"Employee\",\n __primaryKey: 0,\n };\n await expect(() => convertWireToOsdkObjects(client[symbolClientContext], [object], undefined, undefined, undefined, \"throw\")).rejects.toThrowErrorMatchingInlineSnapshot(`[Error: Unable to safely convert objects as some non nullable properties are null]`);\n });\n it(\"does not throw when required is present\", async () => {\n let object = {\n __apiName: \"Employee\",\n __primaryKey: 0,\n \"employeeId\": 0,\n };\n await expect(convertWireToOsdkObjects(client[symbolClientContext], [object], undefined, undefined, undefined, \"throw\")).resolves.to.not.toBeUndefined();\n });\n it(\"filters when it should\", async () => {\n const object = {\n __apiName: \"Employee\",\n __primaryKey: 0,\n };\n const result = await convertWireToOsdkObjects(client[symbolClientContext], [object], undefined, undefined, undefined, \"drop\");\n expect(result.length).toBe(0);\n });\n it(\"does not filter when it shouldn't\", async () => {\n const object = {\n __apiName: \"Employee\",\n __primaryKey: 0,\n \"employeeId\": 0,\n };\n const result = await convertWireToOsdkObjects(client[symbolClientContext], [object], undefined, undefined, undefined, \"drop\");\n expect(result.length).toBe(1);\n });\n });\n it(\"behaves correctly when converting\", async () => {\n const object = {\n __apiName: \"Employee\",\n __primaryKey: 0,\n fooSpt: \"hi\",\n };\n const result = await convertWireToOsdkObjects(client[symbolClientContext], [object], \"FooInterface\", undefined, [\"fooSpt\"], \"drop\");\n expect(result.length).toBe(1);\n });\n});\ndescribe(\"Osdk.Instance\", () => {\n it(\"is assignable to Osdk<>\", () => {\n const instance = {};\n const osdk = instance;\n });\n it(\"is assignable from Osdk<>\", () => {\n const osdk = {};\n const instance = osdk;\n });\n it(\"is assignable to Osdk<> with $notStrict\", () => {\n const instance = {};\n const osdk = instance;\n const osdk2 = instance;\n });\n it(\"is assignable from Osdk<> with $notStrict\", () => {\n const osdk = {};\n const osdk2 = osdk;\n const instance = osdk;\n const instance2 = osdk2;\n });\n it(\"object with any for props is assignable to its normal self\", () => {\n const foo = {};\n const bar = foo;\n });\n});\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"convertWireToOsdkObjects.test.js","names":["$ontologyRid","Employee","FooInterface","objectTypeWithAllPropertyTypes","createSharedClientContext","apiServer","afterAll","beforeAll","describe","expect","expectTypeOf","it","additionalContext","createClient","createMinimalClient","convertWireToOsdkObjects","convertWireToOsdkObjects2","client","interfaceToObjectTypeMappings","fooSpt","listen","close","data","employee","fetchPage","Object","keys","sort","toEqual","$as","$link","employee2","where","$and","employeeId","$gt","$lt","JSON","stringify","toMatchInlineSnapshot","employees","length","toBeGreaterThanOrEqual","a","b","getPrototypeOf","toBe","withValues","id","attachment","attachmentArray","toMatchTypeOf","rid","Array","isArray","toBeTruthy","withoutValues","emptyAttachment","emptyAttachmentArray","toBeUndefined","toBeDefined","somePropertyThatShouldNotExist","toThrow","objAsFoo","clientCtx","ontologyRid","object","__apiName","apiName","__primaryKey","prototypeBefore","object2","undefined","prototypeAfter","not","__title","obj","fullName","__rid","$rid","rejects","toThrowErrorMatchingInlineSnapshot","resolves","to","result","instance","osdk"],"sources":["convertWireToOsdkObjects.test.js"],"sourcesContent":["/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\nimport { $ontologyRid, Employee, FooInterface, objectTypeWithAllPropertyTypes, } from \"@osdk/client.test.ontology\";\nimport { createSharedClientContext } from \"@osdk/shared.client.impl\";\nimport { apiServer } from \"@osdk/shared.test\";\nimport { afterAll, beforeAll, describe, expect, expectTypeOf, it, } from \"vitest\";\nimport { additionalContext } from \"../Client.js\";\nimport { createClient } from \"../createClient.js\";\nimport { createMinimalClient } from \"../createMinimalClient.js\";\nimport { convertWireToOsdkObjects, convertWireToOsdkObjects2, } from \"./convertWireToOsdkObjects.js\";\ndescribe(\"convertWireToOsdkObjects\", () => {\n let client;\n const interfaceToObjectTypeMappings = {\n FooInterface: { Employee: { fooSpt: \"fullName\" } },\n };\n beforeAll(async () => {\n apiServer.listen();\n client = createClient(\"https://stack.palantir.com\", $ontologyRid, async () => \"myAccessToken\");\n });\n afterAll(() => {\n apiServer.close();\n });\n it(\"configures properties correctly\", async () => {\n const { data: [employee] } = await client(Employee).fetchPage();\n expect(Object.keys(employee).sort()).toEqual([\n \"employeeId\",\n \"$title\",\n \"fullName\",\n \"office\",\n \"class\",\n \"startDate\",\n \"employeeSensor\",\n \"employeeStatus\",\n \"$apiName\",\n \"$objectType\",\n \"$primaryKey\",\n \"employeeLocation\",\n ].sort());\n expect(Object.keys(employee.$as)).toEqual([]);\n expect(Object.keys(employee.$link)).toEqual([\n \"peeps\",\n \"lead\",\n \"officeLink\",\n ]);\n });\n it(\"stringifies properties on objects and interfaces correctly\", async () => {\n const { data: [employee] } = await client(Employee).fetchPage();\n const { data: [employee2] } = await client(Employee).where({\n $and: [{ employeeId: { $gt: 50030 } }, { employeeId: { $lt: 50032 } }],\n }).fetchPage();\n // Should not have $title\n expect(JSON.stringify(employee)).toMatchInlineSnapshot(`\"{\"employeeId\":50030,\"fullName\":\"John Doe\",\"office\":\"NYC\",\"class\":\"Red\",\"startDate\":\"2019-01-01\",\"employeeStatus\":{},\"employeeSensor\":{},\"employeeLocation\":{},\"$apiName\":\"Employee\",\"$objectType\":\"Employee\",\"$primaryKey\":50030}\"`);\n expect(JSON.stringify(employee.$as(FooInterface))).toMatchInlineSnapshot(`\"{\"$apiName\":\"FooInterface\",\"$objectType\":\"Employee\",\"$primaryKey\":50030,\"fooSpt\":\"John Doe\"}\"`);\n // Should have $title\n expect(JSON.stringify(employee2)).toMatchInlineSnapshot(`\"{\"employeeId\":50031,\"fullName\":\"Jane Doe\",\"office\":\"SEA\",\"class\":\"Blue\",\"startDate\":\"2012-02-12\",\"employeeStatus\":{},\"employeeSensor\":{},\"employeeLocation\":{},\"$apiName\":\"Employee\",\"$objectType\":\"Employee\",\"$primaryKey\":50031,\"$title\":\"Jane Doe\"}\"`);\n expect(JSON.stringify(employee2.$as(FooInterface))).toMatchInlineSnapshot(`\"{\"$apiName\":\"FooInterface\",\"$objectType\":\"Employee\",\"$primaryKey\":50031,\"$title\":\"Jane Doe\",\"fooSpt\":\"Jane Doe\"}\"`);\n });\n it(\"reuses the object prototype across objects\", async () => {\n const employees = await client(Employee).fetchPage();\n expect(employees.data.length).toBeGreaterThanOrEqual(2);\n const [a, b] = employees.data;\n expect(Object.getPrototypeOf(Object.getPrototypeOf(a))).toBe(Object.getPrototypeOf(Object.getPrototypeOf(b)));\n });\n it(\"converts attachments as expected\", async () => {\n const withValues = await client(objectTypeWithAllPropertyTypes)\n .where({ id: 1 })\n .fetchPage();\n expect(withValues.data.length).toBeGreaterThanOrEqual(1);\n const { attachment, attachmentArray } = withValues.data[0];\n expectTypeOf(attachment).toMatchTypeOf;\n expect(attachment?.rid).toEqual(\"ri.attachments.main.attachment.86016861-707f-4292-b258-6a7108915a75\");\n expect(Array.isArray(attachmentArray)).toBeTruthy();\n expectTypeOf(attachmentArray[0]).toMatchTypeOf;\n const withoutValues = await client(objectTypeWithAllPropertyTypes).where({ id: 2 }).fetchPage();\n const { attachment: emptyAttachment, attachmentArray: emptyAttachmentArray, } = withoutValues.data[0];\n expect(emptyAttachment).toBeUndefined();\n expect(emptyAttachmentArray).toBeUndefined();\n });\n it(\"creates immutable objects\", async () => {\n const employees = await client(Employee).fetchPage();\n expect(employees.data.length).toBeGreaterThanOrEqual(2);\n const [a, b] = employees.data;\n expect(a).toBeDefined();\n expect(() => {\n a.somePropertyThatShouldNotExist = 5;\n }).toThrow();\n const objAsFoo = a.$as(FooInterface);\n expect(objAsFoo).toBeDefined();\n expect(() => {\n objAsFoo.somePropertyThatShouldNotExist = 5;\n }).toThrow();\n });\n it(\"works even with unknown apiNames - old\", async () => {\n const clientCtx = createMinimalClient({ ontologyRid: $ontologyRid }, \"https://stack.palantir.com\", async () => \"myAccessToken\");\n createSharedClientContext(\"https://stack.palantir.com\", async () => \"myAccessToken\", \"userAgent\");\n let object = {\n __apiName: Employee.apiName,\n __primaryKey: 0,\n };\n const prototypeBefore = Object.getPrototypeOf(object);\n let object2 = await convertWireToOsdkObjects(clientCtx, [object], undefined, undefined, undefined, false);\n const prototypeAfter = Object.getPrototypeOf(object2);\n expect(prototypeBefore).not.toBe(prototypeAfter);\n });\n it(\"works even with unknown apiNames - new\", async () => {\n const clientCtx = createMinimalClient({ ontologyRid: $ontologyRid }, \"https://stack.palantir.com\", async () => \"myAccessToken\");\n createSharedClientContext(\"https://stack.palantir.com\", async () => \"myAccessToken\", \"userAgent\");\n let object = {\n __apiName: Employee.apiName,\n __primaryKey: 0,\n };\n const prototypeBefore = Object.getPrototypeOf(object);\n let object2 = await convertWireToOsdkObjects2(clientCtx, [object], undefined, undefined, undefined, false);\n const prototypeAfter = Object.getPrototypeOf(object2);\n expect(prototypeBefore).not.toBe(prototypeAfter);\n });\n it(\"reconstitutes interfaces properly without rid - old\", async () => {\n const clientCtx = createMinimalClient({ ontologyRid: $ontologyRid }, \"https://stack.palantir.com\", async () => \"myAccessToken\");\n let objectFromWire = {\n __apiName: \"Employee\",\n __primaryKey: 0,\n __title: \"Steve\",\n fooSpt: \"Steve\",\n };\n const [objAsFoo] = (await convertWireToOsdkObjects(clientCtx, [objectFromWire], FooInterface.apiName));\n expect(objAsFoo).toMatchInlineSnapshot(`\n {\n \"$apiName\": \"FooInterface\",\n \"$objectType\": \"Employee\",\n \"$primaryKey\": 0,\n \"$title\": \"Steve\",\n \"fooSpt\": \"Steve\",\n }\n `);\n const obj = objAsFoo.$as(Employee);\n expect(obj.fullName).toEqual(\"Steve\");\n expect(obj).toMatchInlineSnapshot(`\n {\n \"$apiName\": \"Employee\",\n \"$objectType\": \"Employee\",\n \"$primaryKey\": 0,\n \"$title\": \"Steve\",\n \"employeeId\": 0,\n \"fullName\": \"Steve\",\n }\n `);\n });\n it(\"reconstitutes interfaces properly without rid - new\", async () => {\n const clientCtx = createMinimalClient({ ontologyRid: $ontologyRid }, \"https://stack.palantir.com\", async () => \"myAccessToken\");\n let objectFromWire = {\n __apiName: \"Employee\",\n __primaryKey: 0,\n __title: \"Steve\",\n fullName: \"Steve\",\n };\n const [objAsFoo] = (await convertWireToOsdkObjects2(clientCtx, [objectFromWire], FooInterface.apiName, false, undefined, false, interfaceToObjectTypeMappings));\n expect(objAsFoo).toMatchInlineSnapshot(`\n {\n \"$apiName\": \"FooInterface\",\n \"$objectType\": \"Employee\",\n \"$primaryKey\": 0,\n \"$title\": \"Steve\",\n \"fooSpt\": \"Steve\",\n }\n `);\n const obj = objAsFoo.$as(Employee);\n expect(obj.fullName).toEqual(\"Steve\");\n expect(obj).toMatchInlineSnapshot(`\n {\n \"$apiName\": \"Employee\",\n \"$objectType\": \"Employee\",\n \"$primaryKey\": 0,\n \"$title\": \"Steve\",\n \"fullName\": \"Steve\",\n }\n `);\n });\n it(\"reconstitutes interfaces properly with rid\", async () => {\n const clientCtx = createMinimalClient({ ontologyRid: $ontologyRid }, \"https://stack.palantir.com\", async () => \"myAccessToken\");\n let objectFromWire = {\n __apiName: \"Employee\",\n __primaryKey: 0,\n __title: \"Steve\",\n __rid: \"hiMom\",\n fooSpt: \"Steve\",\n };\n const [objAsFoo] = (await convertWireToOsdkObjects(clientCtx, [objectFromWire], FooInterface.apiName));\n expect(objAsFoo).toMatchInlineSnapshot(`\n {\n \"$apiName\": \"FooInterface\",\n \"$objectType\": \"Employee\",\n \"$primaryKey\": 0,\n \"$rid\": \"hiMom\",\n \"$title\": \"Steve\",\n \"fooSpt\": \"Steve\",\n }\n `);\n expect(objAsFoo.$rid).toEqual(\"hiMom\");\n const obj = objAsFoo.$as(Employee);\n expect(obj.fullName).toEqual(\"Steve\");\n expect(obj).toMatchInlineSnapshot(`\n {\n \"$apiName\": \"Employee\",\n \"$objectType\": \"Employee\",\n \"$primaryKey\": 0,\n \"$rid\": \"hiMom\",\n \"$title\": \"Steve\",\n \"employeeId\": 0,\n \"fullName\": \"Steve\",\n }\n `);\n expect(obj.$rid).toEqual(\"hiMom\");\n });\n it(\"reconstitutes interfaces properly with rid - new\", async () => {\n const clientCtx = createMinimalClient({ ontologyRid: $ontologyRid }, \"https://stack.palantir.com\", async () => \"myAccessToken\");\n let objectFromWire = {\n __apiName: \"Employee\",\n __primaryKey: 0,\n __title: \"Steve\",\n __rid: \"hiMom\",\n fullName: \"Steve\",\n employeeId: 0,\n };\n const [objAsFoo] = (await convertWireToOsdkObjects2(clientCtx, [objectFromWire], FooInterface.apiName, false, undefined, false, interfaceToObjectTypeMappings));\n expect(objAsFoo).toMatchInlineSnapshot(`\n {\n \"$apiName\": \"FooInterface\",\n \"$objectType\": \"Employee\",\n \"$primaryKey\": 0,\n \"$rid\": \"hiMom\",\n \"$title\": \"Steve\",\n \"fooSpt\": \"Steve\",\n }\n `);\n expect(objAsFoo.$rid).toEqual(\"hiMom\");\n const obj = objAsFoo.$as(Employee);\n expect(obj.fullName).toEqual(\"Steve\");\n expect(obj).toMatchInlineSnapshot(`\n {\n \"$apiName\": \"Employee\",\n \"$objectType\": \"Employee\",\n \"$primaryKey\": 0,\n \"$rid\": \"hiMom\",\n \"$title\": \"Steve\",\n \"employeeId\": 0,\n \"fullName\": \"Steve\",\n }\n `);\n expect(obj.$rid).toEqual(\"hiMom\");\n });\n describe(\"selection keys\", () => {\n it(\"throws when required is missing\", async () => {\n let object = {\n __apiName: \"Employee\",\n __primaryKey: 0,\n };\n await expect(() => convertWireToOsdkObjects(client[additionalContext], [object], undefined, undefined, [\"employeeId\"], \"throw\")).rejects.toThrowErrorMatchingInlineSnapshot(`[Error: Unable to safely convert objects as some non nullable properties are null]`);\n });\n it(\"does not throw when optional is missing\", async () => {\n let object = {\n __apiName: \"Employee\",\n __primaryKey: 0,\n };\n await expect(convertWireToOsdkObjects(client[additionalContext], [object], undefined, undefined, [\"fullName\"], \"throw\")).resolves.to.not.toBeUndefined();\n });\n it(\"filters when it should\", async () => {\n const object = {\n __apiName: \"Employee\",\n __primaryKey: 0,\n };\n const result = await convertWireToOsdkObjects(client[additionalContext], [object], undefined, undefined, [\"employeeId\"], \"drop\");\n expect(result.length).toBe(0);\n });\n it(\"does not filter when it shouldn't\", async () => {\n const object = {\n __apiName: \"Employee\",\n __primaryKey: 0,\n };\n const result = await convertWireToOsdkObjects(client[additionalContext], [object], undefined, undefined, [\"fullName\"], \"drop\");\n expect(result.length).toBe(1);\n });\n });\n describe(\"selection keys - new\", () => {\n it(\"throws when required is missing\", async () => {\n let object = {\n __apiName: \"Employee\",\n __primaryKey: 0,\n };\n await expect(() => convertWireToOsdkObjects2(client[additionalContext], [object], undefined, undefined, [\"employeeId\"], \"throw\")).rejects.toThrowErrorMatchingInlineSnapshot(`[Error: Unable to safely convert objects as some non nullable properties are null]`);\n });\n it(\"does not throw when optional is missing\", async () => {\n let object = {\n __apiName: \"Employee\",\n __primaryKey: 0,\n };\n await expect(convertWireToOsdkObjects2(client[additionalContext], [object], undefined, undefined, [\"fullName\"], \"throw\")).resolves.to.not.toBeUndefined();\n });\n it(\"filters when it should\", async () => {\n const object = {\n __apiName: \"Employee\",\n __primaryKey: 0,\n };\n const result = await convertWireToOsdkObjects2(client[additionalContext], [object], undefined, undefined, [\"employeeId\"], \"drop\");\n expect(result.length).toBe(0);\n });\n it(\"does not filter when it shouldn't\", async () => {\n const object = {\n __apiName: \"Employee\",\n __primaryKey: 0,\n };\n const result = await convertWireToOsdkObjects2(client[additionalContext], [object], undefined, undefined, [\"fullName\"], \"drop\");\n expect(result.length).toBe(1);\n });\n });\n describe(\"without selection keys\", () => {\n it(\"throws when required is missing\", async () => {\n let object = {\n __apiName: \"Employee\",\n __primaryKey: 0,\n };\n await expect(() => convertWireToOsdkObjects2(client[additionalContext], [object], undefined, undefined, undefined, \"throw\")).rejects.toThrowErrorMatchingInlineSnapshot(`[Error: Unable to safely convert objects as some non nullable properties are null]`);\n });\n it(\"does not throw when required is present\", async () => {\n let object = {\n __apiName: \"Employee\",\n __primaryKey: 0,\n \"employeeId\": 0,\n };\n await expect(convertWireToOsdkObjects2(client[additionalContext], [object], undefined, undefined, undefined, \"throw\")).resolves.to.not.toBeUndefined();\n });\n it(\"filters when it should\", async () => {\n const object = {\n __apiName: \"Employee\",\n __primaryKey: 0,\n };\n const result = await convertWireToOsdkObjects2(client[additionalContext], [object], undefined, undefined, undefined, \"drop\");\n expect(result.length).toBe(0);\n });\n it(\"does not filter when it shouldn't\", async () => {\n const object = {\n __apiName: \"Employee\",\n __primaryKey: 0,\n \"employeeId\": 0,\n };\n const result = await convertWireToOsdkObjects2(client[additionalContext], [object], undefined, undefined, undefined, \"drop\");\n expect(result.length).toBe(1);\n });\n });\n describe(\"without selection keys - new\", () => {\n it(\"throws when required is missing\", async () => {\n let object = {\n __apiName: \"Employee\",\n __primaryKey: 0,\n };\n await expect(() => convertWireToOsdkObjects2(client[additionalContext], [object], undefined, undefined, undefined, \"throw\")).rejects.toThrowErrorMatchingInlineSnapshot(`[Error: Unable to safely convert objects as some non nullable properties are null]`);\n });\n it(\"does not throw when required is present\", async () => {\n let object = {\n __apiName: \"Employee\",\n __primaryKey: 0,\n \"employeeId\": 0,\n };\n await expect(convertWireToOsdkObjects2(client[additionalContext], [object], undefined, undefined, undefined, \"throw\")).resolves.to.not.toBeUndefined();\n });\n it(\"filters when it should\", async () => {\n const object = {\n __apiName: \"Employee\",\n __primaryKey: 0,\n };\n const result = await convertWireToOsdkObjects2(client[additionalContext], [object], undefined, undefined, undefined, \"drop\");\n expect(result.length).toBe(0);\n });\n it(\"does not filter when it shouldn't\", async () => {\n const object = {\n __apiName: \"Employee\",\n __primaryKey: 0,\n \"employeeId\": 0,\n };\n const result = await convertWireToOsdkObjects2(client[additionalContext], [object], undefined, undefined, undefined, \"drop\");\n expect(result.length).toBe(1);\n });\n });\n it(\"behaves correctly when converting\", async () => {\n const object = {\n __apiName: \"Employee\",\n __primaryKey: 0,\n fooSpt: \"hi\",\n };\n const result = await convertWireToOsdkObjects2(client[additionalContext], [object], \"FooInterface\", undefined, [\"fooSpt\"], \"drop\", interfaceToObjectTypeMappings);\n expect(result.length).toBe(1);\n });\n});\ndescribe(\"Osdk.Instance\", () => {\n it(\"is assignable to Osdk<>\", () => {\n const instance = {};\n const osdk = instance;\n });\n it(\"is assignable from Osdk<>\", () => {\n const osdk = {};\n const instance = osdk;\n });\n it(\"is assignable to Osdk<> with $notStrict\", () => {\n const instance = {};\n const osdk = instance;\n const osdk2 = instance;\n });\n it(\"is assignable from Osdk<> with $notStrict\", () => {\n const osdk = {};\n const osdk2 = osdk;\n const instance = osdk;\n const instance2 = osdk2;\n });\n it(\"object with any for props is assignable to its normal self\", () => {\n const foo = {};\n const bar = foo;\n });\n});\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"fetchPage.d.ts","sourceRoot":"","sources":["../../../src/object/fetchPage.ts"],"names":[],"mappings":"AAgBA,OAAO,KAAK,EACV,OAAO,EAOP,2BAA2B,EAE3B,YAAY,EAEb,MAAM,WAAW,CAAC;AAgBnB,wBAAgB,OAAO,CACrB,CAAC,SAAS,2BAA2B,EACrC,CAAC,SAAS,YAAY,CAAC,CAAC,CAAC,EAEzB,IAAI,EAAE,CAAC,EACP,GAAG,UAAU,EAAE,CAAC,EAAE,GACjB,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,CAEf"}
1
+ {"version":3,"file":"fetchPage.d.ts","sourceRoot":"","sources":["../../../src/object/fetchPage.ts"],"names":[],"mappings":"AAgBA,OAAO,KAAK,EACV,OAAO,EAMP,2BAA2B,EAE3B,YAAY,EAEb,MAAM,WAAW,CAAC;AAiBnB,wBAAgB,OAAO,CACrB,CAAC,SAAS,2BAA2B,EACrC,CAAC,SAAS,YAAY,CAAC,CAAC,CAAC,EAEzB,IAAI,EAAE,CAAC,EACP,GAAG,UAAU,EAAE,CAAC,EAAE,GACjB,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,CAEf"}
@@ -15,7 +15,7 @@
15
15
  */
16
16
  import * as OntologiesV2 from "@osdk/internal.foundry.ontologiesv2";
17
17
  import { addUserAgentAndRequestContextHeaders } from "../util/addUserAgentAndRequestContextHeaders.js";
18
- import { convertWireToOsdkObjects } from "./convertWireToOsdkObjects.js";
18
+ import { resolveBaseObjectSetType } from "../util/objectSetUtils.js";
19
19
  export function augment(type, ...properties) {
20
20
  return {
21
21
  [type.apiName]: properties
@@ -23,10 +23,13 @@ export function augment(type, ...properties) {
23
23
  }
24
24
  /** @internal */
25
25
  export function objectSetToSearchJsonV2(objectSet, expectedApiName, existingWhere = undefined) {
26
- if (objectSet.type === "base") {
27
- if (objectSet.objectType !== expectedApiName) {
26
+ if (objectSet.type === "base" || objectSet.type === "interfaceBase") {
27
+ if (objectSet.type === "base" && objectSet.objectType !== expectedApiName) {
28
28
  throw new Error(`Expected objectSet.objectType to be ${expectedApiName}, but got ${objectSet.objectType}`);
29
29
  }
30
+ if (objectSet.type === "interfaceBase" && objectSet.interfaceType !== expectedApiName) {
31
+ throw new Error(`Expected objectSet.objectType to be ${expectedApiName}, but got ${objectSet.interfaceType}`);
32
+ }
30
33
  return existingWhere;
31
34
  }
32
35
  if (objectSet.type === "filter") {
@@ -38,20 +41,34 @@ export function objectSetToSearchJsonV2(objectSet, expectedApiName, existingWher
38
41
  throw new Error(`Unsupported objectSet type: ${objectSet.type}`);
39
42
  }
40
43
  async function fetchInterfacePage(client, interfaceType, args, objectSet) {
41
- const result = await OntologiesV2.OntologyInterfaces.search(addUserAgentAndRequestContextHeaders(client, interfaceType), await client.ontologyRid, interfaceType.apiName, applyFetchArgs(args, {
42
- augmentedProperties: args.$augment ?? {},
43
- augmentedSharedPropertyTypes: {},
44
- otherInterfaceTypes: [],
45
- selectedObjectTypes: args.$__EXPERIMENTAL_selectedObjectTypes ?? [],
46
- selectedSharedPropertyTypes: args.$select ?? [],
47
- where: objectSetToSearchJsonV2(objectSet, interfaceType.apiName)
44
+ if (args.$__UNSTABLE_useOldInterfaceApis) {
45
+ const result = await OntologiesV2.OntologyInterfaces.search(addUserAgentAndRequestContextHeaders(client, interfaceType), await client.ontologyRid, interfaceType.apiName, applyFetchArgs(args, {
46
+ augmentedProperties: {},
47
+ augmentedSharedPropertyTypes: {},
48
+ otherInterfaceTypes: [],
49
+ selectedObjectTypes: [],
50
+ selectedSharedPropertyTypes: args.$select ?? [],
51
+ where: objectSetToSearchJsonV2(objectSet, interfaceType.apiName)
52
+ }), {
53
+ preview: true
54
+ });
55
+ result.data = await client.objectFactory(client, result.data,
56
+ // drop readonly
57
+ interfaceType.apiName, !args.$includeRid);
58
+ return result;
59
+ }
60
+ const result = await OntologiesV2.OntologyObjectSets.loadMultipleObjectTypes(addUserAgentAndRequestContextHeaders(client, interfaceType), await client.ontologyRid, applyFetchArgs(args, {
61
+ objectSet,
62
+ select: args?.$select ?? [],
63
+ excludeRid: !args?.$includeRid
48
64
  }), {
49
65
  preview: true
50
66
  });
51
- result.data = await convertWireToOsdkObjects(client, result.data,
52
- // drop readonly
53
- interfaceType.apiName, !args.$includeRid);
54
- return result;
67
+ return Promise.resolve({
68
+ data: await client.objectFactory2(client, result.data, interfaceType.apiName, !args.$includeRid, args.$select, false, result.interfaceToObjectTypeMappings),
69
+ nextPageToken: result.nextPageToken,
70
+ totalCount: result.totalCount
71
+ });
55
72
  }
56
73
  /** @internal */
57
74
  export async function fetchPageInternal(client, objectType, objectSet, args = {}) {
@@ -87,17 +104,11 @@ export async function fetchPageWithErrorsInternal(client, objectType, objectSet,
87
104
  * @returns
88
105
  * @internal
89
106
  */
90
- export async function fetchPage(client, objectType, args, objectSet = {
91
- type: "base",
92
- objectType: objectType["apiName"]
93
- }) {
107
+ export async function fetchPage(client, objectType, args, objectSet = resolveBaseObjectSetType(objectType)) {
94
108
  return fetchPageInternal(client, objectType, objectSet, args);
95
109
  }
96
110
  /** @internal */
97
- export async function fetchPageWithErrors(client, objectType, args, objectSet = {
98
- type: "base",
99
- objectType: objectType["apiName"]
100
- }) {
111
+ export async function fetchPageWithErrors(client, objectType, args, objectSet = resolveBaseObjectSetType(objectType)) {
101
112
  return fetchPageWithErrorsInternal(client, objectType, objectSet, args);
102
113
  }
103
114
  function applyFetchArgs(args, body) {
@@ -127,7 +138,7 @@ export async function fetchObjectPage(client, objectType, args, objectSet) {
127
138
  excludeRid: !args?.$includeRid
128
139
  }));
129
140
  return Promise.resolve({
130
- data: await convertWireToOsdkObjects(client, r.data, undefined, undefined, args.$select, args.$__EXPERIMENTAL_strictNonNull),
141
+ data: await client.objectFactory(client, r.data, undefined, undefined, args.$select),
131
142
  nextPageToken: r.nextPageToken,
132
143
  totalCount: r.totalCount
133
144
  });
@@ -1 +1 @@
1
- {"version":3,"file":"fetchPage.js","names":["OntologiesV2","addUserAgentAndRequestContextHeaders","convertWireToOsdkObjects","augment","type","properties","apiName","objectSetToSearchJsonV2","objectSet","expectedApiName","existingWhere","undefined","objectType","Error","where","value","fetchInterfacePage","client","interfaceType","args","result","OntologyInterfaces","search","ontologyRid","applyFetchArgs","augmentedProperties","$augment","augmentedSharedPropertyTypes","otherInterfaceTypes","selectedObjectTypes","$__EXPERIMENTAL_selectedObjectTypes","selectedSharedPropertyTypes","$select","preview","data","$includeRid","fetchPageInternal","fetchObjectPage","fetchPageWithErrorsInternal","e","error","fetchPage","fetchPageWithErrors","body","$nextPageToken","pageToken","$pageSize","pageSize","$orderBy","orderBy","fields","Object","entries","map","field","direction","r","OntologyObjectSets","load","select","excludeRid","Promise","resolve","$__EXPERIMENTAL_strictNonNull","nextPageToken","totalCount"],"sources":["fetchPage.js"],"sourcesContent":["/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\nimport * as OntologiesV2 from \"@osdk/internal.foundry.ontologiesv2\";\nimport { addUserAgentAndRequestContextHeaders } from \"../util/addUserAgentAndRequestContextHeaders.js\";\nimport { convertWireToOsdkObjects } from \"./convertWireToOsdkObjects.js\";\nexport function augment(type, ...properties) {\n return { [type.apiName]: properties };\n}\n/** @internal */\nexport function objectSetToSearchJsonV2(objectSet, expectedApiName, existingWhere = undefined) {\n if (objectSet.type === \"base\") {\n if (objectSet.objectType !== expectedApiName) {\n throw new Error(`Expected objectSet.objectType to be ${expectedApiName}, but got ${objectSet.objectType}`);\n }\n return existingWhere;\n }\n if (objectSet.type === \"filter\") {\n return objectSetToSearchJsonV2(objectSet.objectSet, expectedApiName, existingWhere == null ? objectSet.where : {\n type: \"and\",\n value: [existingWhere, objectSet.where],\n });\n }\n throw new Error(`Unsupported objectSet type: ${objectSet.type}`);\n}\nasync function fetchInterfacePage(client, interfaceType, args, objectSet) {\n const result = await OntologiesV2.OntologyInterfaces\n .search(addUserAgentAndRequestContextHeaders(client, interfaceType), await client.ontologyRid, interfaceType.apiName, applyFetchArgs(args, {\n augmentedProperties: args.$augment ?? {},\n augmentedSharedPropertyTypes: {},\n otherInterfaceTypes: [],\n selectedObjectTypes: args.$__EXPERIMENTAL_selectedObjectTypes ?? [],\n selectedSharedPropertyTypes: args.$select ?? [],\n where: objectSetToSearchJsonV2(objectSet, interfaceType.apiName),\n }), { preview: true });\n result.data = await convertWireToOsdkObjects(client, result.data, // drop readonly\n interfaceType.apiName, !args.$includeRid);\n return result;\n}\n/** @internal */\nexport async function fetchPageInternal(client, objectType, objectSet, args = {}) {\n if (objectType.type === \"interface\") {\n return await fetchInterfacePage(client, objectType, args, objectSet); // fixme\n }\n else {\n return await fetchObjectPage(client, objectType, args, objectSet); // fixme\n }\n}\n/** @internal */\nexport async function fetchPageWithErrorsInternal(client, objectType, objectSet, args = {}) {\n try {\n const result = await fetchPageInternal(client, objectType, objectSet, args);\n return { value: result };\n }\n catch (e) {\n if (e instanceof Error) {\n return { error: e };\n }\n return { error: e };\n }\n}\n/**\n * @param client\n * @param objectType\n * @param args\n * @param objectSet\n * @returns\n * @internal\n */\nexport async function fetchPage(client, objectType, args, objectSet = {\n type: \"base\",\n objectType: objectType[\"apiName\"],\n}) {\n return fetchPageInternal(client, objectType, objectSet, args);\n}\n/** @internal */\nexport async function fetchPageWithErrors(client, objectType, args, objectSet = {\n type: \"base\",\n objectType: objectType[\"apiName\"],\n}) {\n return fetchPageWithErrorsInternal(client, objectType, objectSet, args);\n}\nfunction applyFetchArgs(args, body) {\n if (args?.$nextPageToken) {\n body.pageToken = args.$nextPageToken;\n }\n if (args?.$pageSize != null) {\n body.pageSize = args.$pageSize;\n }\n if (args?.$orderBy != null) {\n body.orderBy = {\n fields: Object.entries(args.$orderBy).map(([field, direction]) => ({\n field,\n direction,\n })),\n };\n }\n return body;\n}\n/** @internal */\nexport async function fetchObjectPage(client, objectType, args, objectSet) {\n const r = await OntologiesV2.OntologyObjectSets.load(addUserAgentAndRequestContextHeaders(client, objectType), await client.ontologyRid, applyFetchArgs(args, {\n objectSet,\n // We have to do the following case because LoadObjectSetRequestV2 isn't readonly\n select: (args?.$select ?? []), // FIXME?\n excludeRid: !args?.$includeRid,\n }));\n return Promise.resolve({\n data: await convertWireToOsdkObjects(client, r.data, undefined, undefined, args.$select, args.$__EXPERIMENTAL_strictNonNull),\n nextPageToken: r.nextPageToken,\n totalCount: r.totalCount,\n });\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"fetchPage.js","names":["OntologiesV2","addUserAgentAndRequestContextHeaders","resolveBaseObjectSetType","augment","type","properties","apiName","objectSetToSearchJsonV2","objectSet","expectedApiName","existingWhere","undefined","objectType","Error","interfaceType","where","value","fetchInterfacePage","client","args","$__UNSTABLE_useOldInterfaceApis","result","OntologyInterfaces","search","ontologyRid","applyFetchArgs","augmentedProperties","augmentedSharedPropertyTypes","otherInterfaceTypes","selectedObjectTypes","selectedSharedPropertyTypes","$select","preview","data","objectFactory","$includeRid","OntologyObjectSets","loadMultipleObjectTypes","select","excludeRid","Promise","resolve","objectFactory2","interfaceToObjectTypeMappings","nextPageToken","totalCount","fetchPageInternal","fetchObjectPage","fetchPageWithErrorsInternal","e","error","fetchPage","fetchPageWithErrors","body","$nextPageToken","pageToken","$pageSize","pageSize","$orderBy","orderBy","fields","Object","entries","map","field","direction","r","load"],"sources":["fetchPage.js"],"sourcesContent":["/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\nimport * as OntologiesV2 from \"@osdk/internal.foundry.ontologiesv2\";\nimport { addUserAgentAndRequestContextHeaders } from \"../util/addUserAgentAndRequestContextHeaders.js\";\nimport { resolveBaseObjectSetType } from \"../util/objectSetUtils.js\";\nexport function augment(type, ...properties) {\n return { [type.apiName]: properties };\n}\n/** @internal */\nexport function objectSetToSearchJsonV2(objectSet, expectedApiName, existingWhere = undefined) {\n if (objectSet.type === \"base\" || objectSet.type === \"interfaceBase\") {\n if (objectSet.type === \"base\" && objectSet.objectType !== expectedApiName) {\n throw new Error(`Expected objectSet.objectType to be ${expectedApiName}, but got ${objectSet.objectType}`);\n }\n if (objectSet.type === \"interfaceBase\"\n && objectSet.interfaceType !== expectedApiName) {\n throw new Error(`Expected objectSet.objectType to be ${expectedApiName}, but got ${objectSet.interfaceType}`);\n }\n return existingWhere;\n }\n if (objectSet.type === \"filter\") {\n return objectSetToSearchJsonV2(objectSet.objectSet, expectedApiName, existingWhere == null ? objectSet.where : {\n type: \"and\",\n value: [existingWhere, objectSet.where],\n });\n }\n throw new Error(`Unsupported objectSet type: ${objectSet.type}`);\n}\nasync function fetchInterfacePage(client, interfaceType, args, objectSet) {\n if (args.$__UNSTABLE_useOldInterfaceApis) {\n const result = await OntologiesV2.OntologyInterfaces\n .search(addUserAgentAndRequestContextHeaders(client, interfaceType), await client.ontologyRid, interfaceType.apiName, applyFetchArgs(args, {\n augmentedProperties: {},\n augmentedSharedPropertyTypes: {},\n otherInterfaceTypes: [],\n selectedObjectTypes: [],\n selectedSharedPropertyTypes: args.$select\n ?? [],\n where: objectSetToSearchJsonV2(objectSet, interfaceType.apiName),\n }), { preview: true });\n result.data = await client.objectFactory(client, result.data, // drop readonly\n interfaceType.apiName, !args.$includeRid);\n return result;\n }\n const result = await OntologiesV2.OntologyObjectSets.loadMultipleObjectTypes(addUserAgentAndRequestContextHeaders(client, interfaceType), await client.ontologyRid, applyFetchArgs(args, {\n objectSet,\n select: (args?.$select ?? []),\n excludeRid: !args?.$includeRid,\n }), { preview: true });\n return Promise.resolve({\n data: await client.objectFactory2(client, result.data, interfaceType.apiName, !args.$includeRid, args.$select, false, result.interfaceToObjectTypeMappings),\n nextPageToken: result.nextPageToken,\n totalCount: result.totalCount,\n });\n}\n/** @internal */\nexport async function fetchPageInternal(client, objectType, objectSet, args = {}) {\n if (objectType.type === \"interface\") {\n return await fetchInterfacePage(client, objectType, args, objectSet); // fixme\n }\n else {\n return await fetchObjectPage(client, objectType, args, objectSet); // fixme\n }\n}\n/** @internal */\nexport async function fetchPageWithErrorsInternal(client, objectType, objectSet, args = {}) {\n try {\n const result = await fetchPageInternal(client, objectType, objectSet, args);\n return { value: result };\n }\n catch (e) {\n if (e instanceof Error) {\n return { error: e };\n }\n return { error: e };\n }\n}\n/**\n * @param client\n * @param objectType\n * @param args\n * @param objectSet\n * @returns\n * @internal\n */\nexport async function fetchPage(client, objectType, args, objectSet = resolveBaseObjectSetType(objectType)) {\n return fetchPageInternal(client, objectType, objectSet, args);\n}\n/** @internal */\nexport async function fetchPageWithErrors(client, objectType, args, objectSet = resolveBaseObjectSetType(objectType)) {\n return fetchPageWithErrorsInternal(client, objectType, objectSet, args);\n}\nfunction applyFetchArgs(args, body) {\n if (args?.$nextPageToken) {\n body.pageToken = args.$nextPageToken;\n }\n if (args?.$pageSize != null) {\n body.pageSize = args.$pageSize;\n }\n if (args?.$orderBy != null) {\n body.orderBy = {\n fields: Object.entries(args.$orderBy).map(([field, direction]) => ({\n field,\n direction,\n })),\n };\n }\n return body;\n}\n/** @internal */\nexport async function fetchObjectPage(client, objectType, args, objectSet) {\n const r = await OntologiesV2.OntologyObjectSets.load(addUserAgentAndRequestContextHeaders(client, objectType), await client.ontologyRid, applyFetchArgs(args, {\n objectSet,\n // We have to do the following case because LoadObjectSetRequestV2 isn't readonly\n select: (args?.$select ?? []), // FIXME?\n excludeRid: !args?.$includeRid,\n }));\n return Promise.resolve({\n data: await client.objectFactory(client, r.data, undefined, undefined, args.$select),\n nextPageToken: r.nextPageToken,\n totalCount: r.totalCount,\n });\n}\n"],"mappings":"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","ignoreList":[]}
@@ -13,7 +13,7 @@
13
13
  * See the License for the specific language governing permissions and
14
14
  * limitations under the License.
15
15
  */
16
- import { Todo } from "@osdk/client.test.ontology";
16
+ import { Employee, Todo } from "@osdk/client.test.ontology";
17
17
  import { describe, expect, expectTypeOf, it } from "vitest";
18
18
  import { createMinimalClient } from "../createMinimalClient.js";
19
19
  import { fetchPage, objectSetToSearchJsonV2 } from "../object/fetchPage.js";
@@ -89,6 +89,80 @@ describe(fetchPage, () => {
89
89
  }]
90
90
  });
91
91
  });
92
+ it("where clause keys correctly typed", () => {
93
+ const client = createMinimalClient(metadata, "https://foo", async () => "");
94
+ const objectSet = createObjectSet(Todo, client);
95
+ const objectSetWithSpecialPropertyTypes = createObjectSet(Employee, client);
96
+ expectTypeOf(objectSet.where).toBeCallableWith({
97
+ $and: [{
98
+ id: {
99
+ $gt: 2
100
+ }
101
+ }, {
102
+ id: {
103
+ $lte: 2
104
+ }
105
+ }]
106
+ });
107
+ expectTypeOf(objectSet.where).toBeCallableWith({
108
+ // @ts-expect-error
109
+ id: {
110
+ $gt: 2,
111
+ $lte: 2
112
+ }
113
+ });
114
+ // We used to default to number filters for other types, like geotimeseries reference and timeseries. These tests will make sure
115
+ // we don't do that anymore
116
+ expectTypeOf(objectSetWithSpecialPropertyTypes.where).toBeCallableWith({
117
+ $and: [{
118
+ employeeLocation: {
119
+ $eq: "myLocation"
120
+ }
121
+ }, {
122
+ employeeLocation: {
123
+ $ne: "notMyLocation"
124
+ }
125
+ }, {
126
+ employeeLocation: {
127
+ $isNull: false
128
+ }
129
+ },
130
+ // @ts-expect-error
131
+ {
132
+ employeeLocation: {
133
+ $isNull: false,
134
+ $eq: "myLocation"
135
+ }
136
+ },
137
+ // @ts-expect-error
138
+ {
139
+ employeeLocation: {
140
+ $gt: 5
141
+ }
142
+ }]
143
+ });
144
+ expectTypeOf(objectSetWithSpecialPropertyTypes.where).toBeCallableWith({
145
+ $and: [{
146
+ employeeStatus: {
147
+ $eq: "myStatus"
148
+ }
149
+ }, {
150
+ employeeLocation: {
151
+ $ne: "notMyStatus"
152
+ }
153
+ }, {
154
+ employeeLocation: {
155
+ $isNull: false
156
+ }
157
+ },
158
+ // @ts-expect-error
159
+ {
160
+ employeeLocation: {
161
+ $lte: 5
162
+ }
163
+ }]
164
+ });
165
+ });
92
166
  describe("includeRid", () => {
93
167
  it("properly returns the correct string for includeRid", () => {
94
168
  expectTypeOf().toEqualTypeOf();
@@ -1 +1 @@
1
- {"version":3,"file":"fetchPage.test.js","names":["Todo","describe","expect","expectTypeOf","it","createMinimalClient","fetchPage","objectSetToSearchJsonV2","createObjectSet","getWireObjectSet","metadata","ontologyRid","branded","toEqualTypeOf","type","objectSet","objectType","where","field","value","undefined","toEqual","client","text","id","$gt","wireObjectSet"],"sources":["fetchPage.test.js"],"sourcesContent":["/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\nimport { Todo } from \"@osdk/client.test.ontology\";\nimport { describe, expect, expectTypeOf, it } from \"vitest\";\nimport { createMinimalClient } from \"../createMinimalClient.js\";\nimport { fetchPage, objectSetToSearchJsonV2 } from \"../object/fetchPage.js\";\nimport { createObjectSet, getWireObjectSet, } from \"../objectSet/createObjectSet.js\";\nconst metadata = {\n ontologyRid: \"asdf\",\n};\ndescribe(fetchPage, () => {\n it(\"infers select properly\", () => {\n // this helper lets us get return types of functions that are generic\n class Helper {\n fetchPage() {\n return fetchPage({}, {}, {});\n }\n }\n expectTypeOf()\n .branded\n .toEqualTypeOf();\n // e.g. fetchPage({ select: [] });\n expectTypeOf()\n .branded\n .toEqualTypeOf();\n // e.g. fetchPage()\n expectTypeOf()\n .branded\n .toEqualTypeOf();\n // e.g. fetchPage({ $select: [\"text\"]}\n expectTypeOf()\n .branded\n .toEqualTypeOf();\n });\n it(\"converts interface objectsets to search properly\", () => {\n expect(objectSetToSearchJsonV2({\n type: \"filter\",\n objectSet: {\n type: \"filter\",\n objectSet: {\n type: \"base\",\n objectType: \"Todo\",\n },\n where: {\n type: \"eq\",\n field: \"text\",\n value: \"hello\",\n },\n },\n where: {\n type: \"gt\",\n field: \"id\",\n value: 2,\n },\n }, \"Todo\", undefined)).toEqual({\n type: \"and\",\n value: [\n {\n type: \"gt\",\n field: \"id\",\n value: 2,\n },\n {\n type: \"eq\",\n field: \"text\",\n value: \"hello\",\n },\n ],\n });\n });\n it(\"converts interface objectsets to search properly part 2\", () => {\n const client = createMinimalClient(metadata, \"https://foo\", async () => \"\");\n const objectSet = createObjectSet(Todo, client).where({\n text: \"hello\",\n }).where({\n id: { $gt: 2 },\n });\n const wireObjectSet = getWireObjectSet(objectSet);\n expect(objectSetToSearchJsonV2(wireObjectSet, \"Todo\", undefined)).toEqual({\n type: \"and\",\n value: [\n {\n type: \"gt\",\n field: \"id\",\n value: 2,\n },\n {\n type: \"eq\",\n field: \"text\",\n value: \"hello\",\n },\n ],\n });\n });\n describe(\"includeRid\", () => {\n it(\"properly returns the correct string for includeRid\", () => {\n expectTypeOf()\n .toEqualTypeOf();\n expectTypeOf()\n .branded\n .toEqualTypeOf();\n });\n it(\"works with $all\", () => {\n expectTypeOf().branded\n .toEqualTypeOf();\n expectTypeOf()\n .branded\n .toEqualTypeOf();\n expectTypeOf()\n .branded\n .toEqualTypeOf();\n expectTypeOf()\n .branded\n .toEqualTypeOf();\n expectTypeOf()\n .branded\n .toEqualTypeOf();\n });\n });\n});\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"fetchPage.test.js","names":["Employee","Todo","describe","expect","expectTypeOf","it","createMinimalClient","fetchPage","objectSetToSearchJsonV2","createObjectSet","getWireObjectSet","metadata","ontologyRid","branded","toEqualTypeOf","type","objectSet","objectType","where","field","value","undefined","toEqual","client","text","id","$gt","wireObjectSet","objectSetWithSpecialPropertyTypes","toBeCallableWith","$and","$lte","employeeLocation","$eq","$ne","$isNull","employeeStatus"],"sources":["fetchPage.test.js"],"sourcesContent":["/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\nimport { Employee, Todo } from \"@osdk/client.test.ontology\";\nimport { describe, expect, expectTypeOf, it } from \"vitest\";\nimport { createMinimalClient } from \"../createMinimalClient.js\";\nimport { fetchPage, objectSetToSearchJsonV2 } from \"../object/fetchPage.js\";\nimport { createObjectSet, getWireObjectSet, } from \"../objectSet/createObjectSet.js\";\nconst metadata = {\n ontologyRid: \"asdf\",\n};\ndescribe(fetchPage, () => {\n it(\"infers select properly\", () => {\n // this helper lets us get return types of functions that are generic\n class Helper {\n fetchPage() {\n return fetchPage({}, {}, {});\n }\n }\n expectTypeOf()\n .branded\n .toEqualTypeOf();\n // e.g. fetchPage({ select: [] });\n expectTypeOf()\n .branded\n .toEqualTypeOf();\n // e.g. fetchPage()\n expectTypeOf()\n .branded\n .toEqualTypeOf();\n // e.g. fetchPage({ $select: [\"text\"]}\n expectTypeOf()\n .branded\n .toEqualTypeOf();\n });\n it(\"converts interface objectsets to search properly\", () => {\n expect(objectSetToSearchJsonV2({\n type: \"filter\",\n objectSet: {\n type: \"filter\",\n objectSet: {\n type: \"base\",\n objectType: \"Todo\",\n },\n where: {\n type: \"eq\",\n field: \"text\",\n value: \"hello\",\n },\n },\n where: {\n type: \"gt\",\n field: \"id\",\n value: 2,\n },\n }, \"Todo\", undefined)).toEqual({\n type: \"and\",\n value: [\n {\n type: \"gt\",\n field: \"id\",\n value: 2,\n },\n {\n type: \"eq\",\n field: \"text\",\n value: \"hello\",\n },\n ],\n });\n });\n it(\"converts interface objectsets to search properly part 2\", () => {\n const client = createMinimalClient(metadata, \"https://foo\", async () => \"\");\n const objectSet = createObjectSet(Todo, client).where({\n text: \"hello\",\n }).where({\n id: { $gt: 2 },\n });\n const wireObjectSet = getWireObjectSet(objectSet);\n expect(objectSetToSearchJsonV2(wireObjectSet, \"Todo\", undefined)).toEqual({\n type: \"and\",\n value: [\n {\n type: \"gt\",\n field: \"id\",\n value: 2,\n },\n {\n type: \"eq\",\n field: \"text\",\n value: \"hello\",\n },\n ],\n });\n });\n it(\"where clause keys correctly typed\", () => {\n const client = createMinimalClient(metadata, \"https://foo\", async () => \"\");\n const objectSet = createObjectSet(Todo, client);\n const objectSetWithSpecialPropertyTypes = createObjectSet(Employee, client);\n expectTypeOf(objectSet.where).toBeCallableWith({\n $and: [{ id: { $gt: 2 } }, { id: { $lte: 2 } }],\n });\n expectTypeOf(objectSet.where).toBeCallableWith({\n // @ts-expect-error\n id: { $gt: 2, $lte: 2 },\n });\n // We used to default to number filters for other types, like geotimeseries reference and timeseries. These tests will make sure\n // we don't do that anymore\n expectTypeOf(objectSetWithSpecialPropertyTypes.where).toBeCallableWith({\n $and: [\n { employeeLocation: { $eq: \"myLocation\" } },\n {\n employeeLocation: { $ne: \"notMyLocation\" },\n },\n { employeeLocation: { $isNull: false } },\n // @ts-expect-error\n { employeeLocation: { $isNull: false, $eq: \"myLocation\" } },\n // @ts-expect-error\n { employeeLocation: { $gt: 5 } },\n ],\n });\n expectTypeOf(objectSetWithSpecialPropertyTypes.where).toBeCallableWith({\n $and: [\n { employeeStatus: { $eq: \"myStatus\" } },\n {\n employeeLocation: { $ne: \"notMyStatus\" },\n },\n { employeeLocation: { $isNull: false } },\n // @ts-expect-error\n { employeeLocation: { $lte: 5 } },\n ],\n });\n });\n describe(\"includeRid\", () => {\n it(\"properly returns the correct string for includeRid\", () => {\n expectTypeOf()\n .toEqualTypeOf();\n expectTypeOf()\n .branded\n .toEqualTypeOf();\n });\n it(\"works with $all\", () => {\n expectTypeOf().branded\n .toEqualTypeOf();\n expectTypeOf()\n .branded\n .toEqualTypeOf();\n expectTypeOf()\n .branded\n .toEqualTypeOf();\n expectTypeOf()\n .branded\n .toEqualTypeOf();\n expectTypeOf()\n .branded\n .toEqualTypeOf();\n });\n });\n});\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"object.test.d.ts","sourceRoot":"","sources":["../../../src/object/object.test.ts"],"names":[],"mappings":"AAgBA,OAAO,KAAK,EAAE,IAAI,EAAgB,MAAM,WAAW,CAAC;AACpD,OAAO,EAA0B,QAAQ,EAAE,MAAM,4BAA4B,CAAC;AAG9E,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAqJ3C,wBAAsB,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAKzE;AAED,wBAAsB,YAAY,CAChC,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,CAK9B;AAED,wBAAsB,wCAAwC,CAC5D,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC,CAIvC;AAED,wBAAsB,gDAAgD,CACpE,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC,CAIvC;AAED,wBAAsB,wCAAwC,CAC5D,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC,CAInD;AAED,wBAAsB,gDAAgD,CACpE,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC,CAIvC;AAED,wBAAsB,wCAAwC,CAC5D,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAEzB;AAED,wBAAsB,4CAA4C,CAChE,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAEzB"}
1
+ {"version":3,"file":"object.test.d.ts","sourceRoot":"","sources":["../../../src/object/object.test.ts"],"names":[],"mappings":"AAgBA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,EAA0B,QAAQ,EAAE,MAAM,4BAA4B,CAAC;AAG9E,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAqL3C,wBAAsB,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAKzE;AAED,wBAAsB,YAAY,CAChC,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,CAK9B;AAED,wBAAsB,wCAAwC,CAC5D,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC,CAIvC;AAED,wBAAsB,gDAAgD,CACpE,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC,CAIvC;AAED,wBAAsB,wCAAwC,CAC5D,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC,CAInD;AAED,wBAAsB,gDAAgD,CACpE,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC,CAIvC;AAED,wBAAsB,wCAAwC,CAC5D,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAEzB;AAED,wBAAsB,4CAA4C,CAChE,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAEzB"}
@@ -33,9 +33,11 @@ function asV2Object(o, includeRid) {
33
33
  describe("OsdkObject", () => {
34
34
  describe("link", () => {
35
35
  let client;
36
+ let customEntryPointClient;
36
37
  beforeAll(async () => {
37
38
  apiServer.listen();
38
39
  client = createClient("https://stack.palantir.com", $ontologyRid, async () => "myAccessToken");
40
+ customEntryPointClient = createClient("https://stack.palantirCustom.com/foo/first/someStuff", $ontologyRid, async () => "myAccessToken");
39
41
  });
40
42
  afterAll(() => {
41
43
  apiServer.close();
@@ -62,6 +64,28 @@ describe("OsdkObject", () => {
62
64
  // it should have the prototype that we assign at hydration time
63
65
  expect(Object.keys(employee.$link.lead)).toBeDefined();
64
66
  });
67
+ it("loads an employee with custom client", async () => {
68
+ const result = await customEntryPointClient(Employee).where({
69
+ employeeId: stubData.employee1.employeeId
70
+ }).fetchPage();
71
+ // we should get the employee we requested
72
+ const employee = result.data[0];
73
+ expect(JSON.stringify(employee)).toBeDefined();
74
+ expect(employee).toMatchObject({
75
+ "$apiName": "Employee",
76
+ "$objectType": "Employee",
77
+ "$primaryKey": 50030,
78
+ "class": "Red",
79
+ "employeeId": 50030,
80
+ "employeeStatus": expect.anything(),
81
+ "fullName": "John Doe",
82
+ "office": "NYC",
83
+ "startDate": "2019-01-01"
84
+ });
85
+ employee.startDate;
86
+ // it should have the prototype that we assign at hydration time
87
+ expect(Object.keys(employee.$link.lead)).toBeDefined();
88
+ });
65
89
  it("traverses the link from an employee to their lead", async () => {
66
90
  const result = await client(Employee).where({
67
91
  employeeId: stubData.employee1.employeeId
@@ -134,7 +158,7 @@ describe("OsdkObject", () => {
134
158
  });
135
159
  it("objects are enumerable in an sdk", async () => {
136
160
  const objects = Object.keys($Objects);
137
- expect(objects.sort()).toStrictEqual(["Employee", "ObjectWithTimestampPrimaryKey", "Office", "Person", "Task", "Todo", "equipment", "objectTypeWithAllPropertyTypes"].sort());
161
+ expect(objects.sort()).toStrictEqual(["BgaoNflPlayer", "Employee", "ObjectWithTimestampPrimaryKey", "Office", "Person", "Task", "Todo", "equipment", "objectTypeWithAllPropertyTypes"].sort());
138
162
  });
139
163
  });
140
164
  });
@@ -1 +1 @@
1
- {"version":3,"file":"object.test.js","names":["$Objects","$ontologyRid","Employee","apiServer","stubData","withoutRid","afterAll","beforeAll","describe","expect","it","createClient","asV2Object","o","includeRid","$apiName","__apiName","$objectType","$primaryKey","__primaryKey","$title","__title","client","listen","close","result","where","employeeId","employee1","fetchPage","employee","data","JSON","stringify","toBeDefined","toMatchObject","anything","startDate","Object","keys","$link","lead","fetchOne","$select","toBe","employee2","employeeStatus","toBeUndefined","employees","$and","peepsResult","peeps","toHaveLength","nextPageToken","office","peep","$includeRid","leadRid","$rid","objects","sort","toStrictEqual","shouldError","shouldError2","shouldCompile_client_fetchOne_old_select","shouldCompile_unstableClient_fetchOne_old_select","shouldCompile_client_fetchOne_new_select","shouldCompile_unstableClient_fetchOne_new_select","shouldCompile_client_fetchOne_old_noArgs","shouldCompile_unstableClient_fetchOne_noArgs"],"sources":["object.test.js"],"sourcesContent":["/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\nimport { $Objects, $ontologyRid, Employee } from \"@osdk/client.test.ontology\";\nimport { apiServer, stubData, withoutRid } from \"@osdk/shared.test\";\nimport { afterAll, beforeAll, describe, expect, it } from \"vitest\";\nimport { createClient } from \"../createClient.js\";\nfunction asV2Object(o, includeRid) {\n o = includeRid ? { ...o } : withoutRid(o);\n o.$apiName = o.__apiName;\n o.$objectType = o.__apiName;\n o.$primaryKey = o.__primaryKey;\n o.$title = o.__title;\n delete o.__apiName;\n delete o.__primaryKey;\n delete o.__title;\n return o;\n}\ndescribe(\"OsdkObject\", () => {\n describe(\"link\", () => {\n let client;\n beforeAll(async () => {\n apiServer.listen();\n client = createClient(\"https://stack.palantir.com\", $ontologyRid, async () => \"myAccessToken\");\n });\n afterAll(() => {\n apiServer.close();\n });\n it(\"loads an employee\", async () => {\n const result = await client(Employee).where({\n employeeId: stubData.employee1.employeeId,\n }).fetchPage();\n // we should get the employee we requested\n const employee = result.data[0];\n expect(JSON.stringify(employee)).toBeDefined();\n expect(employee).toMatchObject({\n \"$apiName\": \"Employee\",\n \"$objectType\": \"Employee\",\n \"$primaryKey\": 50030,\n \"class\": \"Red\",\n \"employeeId\": 50030,\n \"employeeStatus\": expect.anything(),\n \"fullName\": \"John Doe\",\n \"office\": \"NYC\",\n \"startDate\": \"2019-01-01\",\n });\n employee.startDate;\n // it should have the prototype that we assign at hydration time\n expect(Object.keys(employee.$link.lead)).toBeDefined();\n });\n it(\"traverses the link from an employee to their lead\", async () => {\n const result = await client(Employee).where({\n employeeId: stubData.employee1.employeeId,\n }).fetchPage();\n const employee = result.data[0];\n const lead = await employee.$link.lead.fetchOne({\n $select: [\"employeeId\"],\n });\n expect(lead.employeeId).toBe(stubData.employee2.employeeId);\n // ensure that the select was performed\n expect(lead.employeeId).toBeDefined();\n expect(lead.employeeStatus).toBeUndefined();\n });\n it(\"traverses the link from an lead to their peeps\", async () => {\n // slightly weird request here to hit the existing mocks for employee2\n const employees = await client(Employee).where({\n $and: [\n { \"employeeId\": { \"$gt\": 50030 } },\n { \"employeeId\": { \"$lt\": 50032 } },\n ],\n }).fetchPage();\n const lead = employees.data[0];\n expect(lead).toBeDefined();\n const peepsResult = await lead.$link.peeps.fetchPage({\n $select: [\"fullName\", \"employeeId\"],\n });\n expect(peepsResult.data).toHaveLength(2);\n expect(peepsResult.nextPageToken).toBeUndefined();\n // ensure that the select was performed\n expect(peepsResult.data[0].employeeId).toBeDefined();\n expect(peepsResult.data[0].office).toBeUndefined();\n });\n it(\"traverses the link from an lead to their peep by primaryKey with fetchOne\", async () => {\n // slightly weird request here to hit the existing mocks for employee2\n const employees = await client(Employee).where({\n $and: [\n { \"employeeId\": { \"$gt\": 50030 } },\n { \"employeeId\": { \"$lt\": 50032 } },\n ],\n }).fetchPage();\n const lead = employees.data[0];\n expect(lead).toBeDefined();\n const peep = await lead.$link.peeps.fetchOne(stubData.employee1.employeeId, {\n $select: [\"employeeId\"],\n });\n expect(peep).toBeDefined();\n // ensure that select worked\n expect(peep.employeeId).toBeDefined();\n expect(peep.employeeStatus).toBeUndefined();\n });\n it(\"gives $rid access when requested\", async () => {\n const result = await client(Employee).where({\n employeeId: stubData.employee1.employeeId,\n }).fetchPage({\n $includeRid: true,\n });\n const leadRid = result.data[0].$rid;\n expect(leadRid).toBeDefined();\n expect(leadRid).toBe(\"ri.phonograph2-objects.main.object.88a6fccb-f333-46d6-a07e-7725c5f18b61\");\n });\n it(\"objects are enumerable in an sdk\", async () => {\n const objects = Object.keys($Objects);\n expect(objects.sort()).toStrictEqual([\n \"Employee\",\n \"ObjectWithTimestampPrimaryKey\",\n \"Office\",\n \"Person\",\n \"Task\",\n \"Todo\",\n \"equipment\",\n \"objectTypeWithAllPropertyTypes\",\n ].sort());\n });\n });\n});\nexport async function shouldError(client) {\n // @ts-expect-error\n return client(Employee).fetchOne(1, {\n $select: [\"employeeId\"],\n });\n}\nexport async function shouldError2(client) {\n // @ts-expect-error\n return client(Employee).fetchOne(1, {\n $select: [\"employeeId\"],\n });\n}\nexport async function shouldCompile_client_fetchOne_old_select(client) {\n return client(Employee).fetchOne(1, {\n $select: [\"employeeId\"],\n });\n}\nexport async function shouldCompile_unstableClient_fetchOne_old_select(client) {\n return client(Employee).fetchOne(1, {\n $select: [\"employeeId\"],\n });\n}\nexport async function shouldCompile_client_fetchOne_new_select(client) {\n return client(Employee).fetchOne(1, {\n $select: [\"employeeId\"],\n });\n}\nexport async function shouldCompile_unstableClient_fetchOne_new_select(client) {\n return client(Employee).fetchOne(1, {\n $select: [\"employeeId\"],\n });\n}\nexport async function shouldCompile_client_fetchOne_old_noArgs(client) {\n return client(Employee).fetchOne(1);\n}\nexport async function shouldCompile_unstableClient_fetchOne_noArgs(client) {\n return client(Employee).fetchOne(1);\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"object.test.js","names":["$Objects","$ontologyRid","Employee","apiServer","stubData","withoutRid","afterAll","beforeAll","describe","expect","it","createClient","asV2Object","o","includeRid","$apiName","__apiName","$objectType","$primaryKey","__primaryKey","$title","__title","client","customEntryPointClient","listen","close","result","where","employeeId","employee1","fetchPage","employee","data","JSON","stringify","toBeDefined","toMatchObject","anything","startDate","Object","keys","$link","lead","fetchOne","$select","toBe","employee2","employeeStatus","toBeUndefined","employees","$and","peepsResult","peeps","toHaveLength","nextPageToken","office","peep","$includeRid","leadRid","$rid","objects","sort","toStrictEqual","shouldError","shouldError2","shouldCompile_client_fetchOne_old_select","shouldCompile_unstableClient_fetchOne_old_select","shouldCompile_client_fetchOne_new_select","shouldCompile_unstableClient_fetchOne_new_select","shouldCompile_client_fetchOne_old_noArgs","shouldCompile_unstableClient_fetchOne_noArgs"],"sources":["object.test.js"],"sourcesContent":["/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\nimport { $Objects, $ontologyRid, Employee } from \"@osdk/client.test.ontology\";\nimport { apiServer, stubData, withoutRid } from \"@osdk/shared.test\";\nimport { afterAll, beforeAll, describe, expect, it } from \"vitest\";\nimport { createClient } from \"../createClient.js\";\nfunction asV2Object(o, includeRid) {\n o = includeRid ? { ...o } : withoutRid(o);\n o.$apiName = o.__apiName;\n o.$objectType = o.__apiName;\n o.$primaryKey = o.__primaryKey;\n o.$title = o.__title;\n delete o.__apiName;\n delete o.__primaryKey;\n delete o.__title;\n return o;\n}\ndescribe(\"OsdkObject\", () => {\n describe(\"link\", () => {\n let client;\n let customEntryPointClient;\n beforeAll(async () => {\n apiServer.listen();\n client = createClient(\"https://stack.palantir.com\", $ontologyRid, async () => \"myAccessToken\");\n customEntryPointClient = createClient(\"https://stack.palantirCustom.com/foo/first/someStuff\", $ontologyRid, async () => \"myAccessToken\");\n });\n afterAll(() => {\n apiServer.close();\n });\n it(\"loads an employee\", async () => {\n const result = await client(Employee).where({\n employeeId: stubData.employee1.employeeId,\n }).fetchPage();\n // we should get the employee we requested\n const employee = result.data[0];\n expect(JSON.stringify(employee)).toBeDefined();\n expect(employee).toMatchObject({\n \"$apiName\": \"Employee\",\n \"$objectType\": \"Employee\",\n \"$primaryKey\": 50030,\n \"class\": \"Red\",\n \"employeeId\": 50030,\n \"employeeStatus\": expect.anything(),\n \"fullName\": \"John Doe\",\n \"office\": \"NYC\",\n \"startDate\": \"2019-01-01\",\n });\n employee.startDate;\n // it should have the prototype that we assign at hydration time\n expect(Object.keys(employee.$link.lead)).toBeDefined();\n });\n it(\"loads an employee with custom client\", async () => {\n const result = await customEntryPointClient(Employee).where({\n employeeId: stubData.employee1.employeeId,\n }).fetchPage();\n // we should get the employee we requested\n const employee = result.data[0];\n expect(JSON.stringify(employee)).toBeDefined();\n expect(employee).toMatchObject({\n \"$apiName\": \"Employee\",\n \"$objectType\": \"Employee\",\n \"$primaryKey\": 50030,\n \"class\": \"Red\",\n \"employeeId\": 50030,\n \"employeeStatus\": expect.anything(),\n \"fullName\": \"John Doe\",\n \"office\": \"NYC\",\n \"startDate\": \"2019-01-01\",\n });\n employee.startDate;\n // it should have the prototype that we assign at hydration time\n expect(Object.keys(employee.$link.lead)).toBeDefined();\n });\n it(\"traverses the link from an employee to their lead\", async () => {\n const result = await client(Employee).where({\n employeeId: stubData.employee1.employeeId,\n }).fetchPage();\n const employee = result.data[0];\n const lead = await employee.$link.lead.fetchOne({\n $select: [\"employeeId\"],\n });\n expect(lead.employeeId).toBe(stubData.employee2.employeeId);\n // ensure that the select was performed\n expect(lead.employeeId).toBeDefined();\n expect(lead.employeeStatus).toBeUndefined();\n });\n it(\"traverses the link from an lead to their peeps\", async () => {\n // slightly weird request here to hit the existing mocks for employee2\n const employees = await client(Employee).where({\n $and: [\n { \"employeeId\": { \"$gt\": 50030 } },\n { \"employeeId\": { \"$lt\": 50032 } },\n ],\n }).fetchPage();\n const lead = employees.data[0];\n expect(lead).toBeDefined();\n const peepsResult = await lead.$link.peeps.fetchPage({\n $select: [\"fullName\", \"employeeId\"],\n });\n expect(peepsResult.data).toHaveLength(2);\n expect(peepsResult.nextPageToken).toBeUndefined();\n // ensure that the select was performed\n expect(peepsResult.data[0].employeeId).toBeDefined();\n expect(peepsResult.data[0].office).toBeUndefined();\n });\n it(\"traverses the link from an lead to their peep by primaryKey with fetchOne\", async () => {\n // slightly weird request here to hit the existing mocks for employee2\n const employees = await client(Employee).where({\n $and: [\n { \"employeeId\": { \"$gt\": 50030 } },\n { \"employeeId\": { \"$lt\": 50032 } },\n ],\n }).fetchPage();\n const lead = employees.data[0];\n expect(lead).toBeDefined();\n const peep = await lead.$link.peeps.fetchOne(stubData.employee1.employeeId, {\n $select: [\"employeeId\"],\n });\n expect(peep).toBeDefined();\n // ensure that select worked\n expect(peep.employeeId).toBeDefined();\n expect(peep.employeeStatus).toBeUndefined();\n });\n it(\"gives $rid access when requested\", async () => {\n const result = await client(Employee).where({\n employeeId: stubData.employee1.employeeId,\n }).fetchPage({\n $includeRid: true,\n });\n const leadRid = result.data[0].$rid;\n expect(leadRid).toBeDefined();\n expect(leadRid).toBe(\"ri.phonograph2-objects.main.object.88a6fccb-f333-46d6-a07e-7725c5f18b61\");\n });\n it(\"objects are enumerable in an sdk\", async () => {\n const objects = Object.keys($Objects);\n expect(objects.sort()).toStrictEqual([\n \"BgaoNflPlayer\",\n \"Employee\",\n \"ObjectWithTimestampPrimaryKey\",\n \"Office\",\n \"Person\",\n \"Task\",\n \"Todo\",\n \"equipment\",\n \"objectTypeWithAllPropertyTypes\",\n ].sort());\n });\n });\n});\nexport async function shouldError(client) {\n // @ts-expect-error\n return client(Employee).fetchOne(1, {\n $select: [\"employeeId\"],\n });\n}\nexport async function shouldError2(client) {\n // @ts-expect-error\n return client(Employee).fetchOne(1, {\n $select: [\"employeeId\"],\n });\n}\nexport async function shouldCompile_client_fetchOne_old_select(client) {\n return client(Employee).fetchOne(1, {\n $select: [\"employeeId\"],\n });\n}\nexport async function shouldCompile_unstableClient_fetchOne_old_select(client) {\n return client(Employee).fetchOne(1, {\n $select: [\"employeeId\"],\n });\n}\nexport async function shouldCompile_client_fetchOne_new_select(client) {\n return client(Employee).fetchOne(1, {\n $select: [\"employeeId\"],\n });\n}\nexport async function shouldCompile_unstableClient_fetchOne_new_select(client) {\n return client(Employee).fetchOne(1, {\n $select: [\"employeeId\"],\n });\n}\nexport async function shouldCompile_client_fetchOne_old_noArgs(client) {\n return client(Employee).fetchOne(1);\n}\nexport async function shouldCompile_unstableClient_fetchOne_noArgs(client) {\n return client(Employee).fetchOne(1);\n}\n"],"mappings":"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","ignoreList":[]}
@@ -40,6 +40,16 @@ describe("Timeseries", () => {
40
40
  expect(point?.time).toEqual("2014-04-14");
41
41
  expect(point?.value).toEqual(30);
42
42
  });
43
+ it("get last and first points works with sensor object", async () => {
44
+ const employee = await client(Employee).fetchOne(50030);
45
+ expect(employee.$primaryKey).toEqual(50030);
46
+ const firstPoint = await employee.employeeSensor?.getFirstPoint();
47
+ const lastPoint = await employee.employeeSensor?.getLastPoint();
48
+ expect(firstPoint?.time).toEqual("2015-05-15");
49
+ expect(firstPoint?.value).toEqual(40);
50
+ expect(lastPoint?.time).toEqual("2014-04-14");
51
+ expect(lastPoint?.value).toEqual(30);
52
+ });
43
53
  it("getAll points with before works", async () => {
44
54
  const employee = await client(Employee).fetchOne(50030);
45
55
  expect(employee.$primaryKey).toEqual(50030);