@osdk/client 2.2.0-beta.8 → 2.3.0-beta.1

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 (489) hide show
  1. package/CHANGELOG.md +388 -0
  2. package/build/browser/MinimalClientContext.js.map +1 -1
  3. package/build/browser/__unstable/ConjureSupport.js.map +1 -1
  4. package/build/browser/actions/ActionValidationError.js +1 -1
  5. package/build/browser/actions/ActionValidationError.js.map +1 -1
  6. package/build/browser/actions/actions.test.js +134 -89
  7. package/build/browser/actions/actions.test.js.map +1 -1
  8. package/build/browser/actions/applyAction.js.map +1 -1
  9. package/build/browser/createClient.js +5 -1
  10. package/build/browser/createClient.js.map +1 -1
  11. package/build/browser/createClient.test.js +14 -6
  12. package/build/browser/createClient.test.js.map +1 -1
  13. package/build/browser/createMinimalClient.js +2 -2
  14. package/build/browser/createMinimalClient.js.map +1 -1
  15. package/build/browser/createMinimalClientHelper.js +25 -0
  16. package/build/browser/createMinimalClientHelper.js.map +1 -0
  17. package/build/browser/derivedProperties/createWithPropertiesObjectSet.js +36 -13
  18. package/build/browser/derivedProperties/createWithPropertiesObjectSet.js.map +1 -1
  19. package/build/browser/derivedProperties/createWithPropertiesObjectSet.test.js +133 -0
  20. package/build/browser/derivedProperties/createWithPropertiesObjectSet.test.js.map +1 -1
  21. package/build/browser/derivedProperties/derivedPropertyDefinitionFactory.js +93 -0
  22. package/build/browser/derivedProperties/derivedPropertyDefinitionFactory.js.map +1 -0
  23. package/build/browser/fetchMetadata.js +1 -1
  24. package/build/browser/fetchMetadata.js.map +1 -1
  25. package/build/browser/fetchMetadata.test.js +11 -9
  26. package/build/browser/fetchMetadata.test.js.map +1 -1
  27. package/build/browser/index.js +0 -1
  28. package/build/browser/index.js.map +1 -1
  29. package/build/{esm/util/isOsdkBaseObject.js → browser/intellisense.test.helpers/showsObjectPropertyJsdoc.js} +9 -4
  30. package/build/browser/intellisense.test.helpers/showsObjectPropertyJsdoc.js.map +1 -0
  31. package/build/browser/intellisense.test.js +17 -1
  32. package/build/browser/intellisense.test.js.map +1 -1
  33. package/build/browser/logger/BaseLogger.js +59 -0
  34. package/build/browser/logger/BaseLogger.js.map +1 -0
  35. package/build/browser/logger/BrowserLogger.js +67 -0
  36. package/build/browser/logger/BrowserLogger.js.map +1 -0
  37. package/build/browser/logger/MinimalLogger.js +39 -0
  38. package/build/browser/logger/MinimalLogger.js.map +1 -0
  39. package/build/browser/logger/MinimalLogger.test.js +60 -0
  40. package/build/browser/logger/MinimalLogger.test.js.map +1 -0
  41. package/build/browser/logger/TestLogger.js +56 -0
  42. package/build/browser/logger/TestLogger.js.map +1 -0
  43. package/build/browser/object/SimpleOsdkProperties.js +2 -0
  44. package/build/browser/object/SimpleOsdkProperties.js.map +1 -0
  45. package/build/browser/object/attachment.test.js +20 -7
  46. package/build/browser/object/attachment.test.js.map +1 -1
  47. package/build/browser/object/convertWireToOsdkObjects/BaseHolder.js +2 -0
  48. package/build/browser/object/convertWireToOsdkObjects/BaseHolder.js.map +1 -0
  49. package/build/browser/object/convertWireToOsdkObjects/InterfaceHolder.js.map +1 -1
  50. package/build/browser/object/convertWireToOsdkObjects/ObjectHolder.js.map +1 -1
  51. package/build/browser/object/convertWireToOsdkObjects/createOsdkInterface.js +4 -0
  52. package/build/browser/object/convertWireToOsdkObjects/createOsdkInterface.js.map +1 -1
  53. package/build/browser/object/convertWireToOsdkObjects/createOsdkObject.js +53 -35
  54. package/build/browser/object/convertWireToOsdkObjects/createOsdkObject.js.map +1 -1
  55. package/build/browser/object/convertWireToOsdkObjects/getDollarAs.js.map +1 -1
  56. package/build/browser/object/convertWireToOsdkObjects/getDollarLink.js.map +1 -1
  57. package/build/browser/object/convertWireToOsdkObjects.js +7 -15
  58. package/build/browser/object/convertWireToOsdkObjects.js.map +1 -1
  59. package/build/browser/object/convertWireToOsdkObjects.test.js +39 -33
  60. package/build/browser/object/convertWireToOsdkObjects.test.js.map +1 -1
  61. package/build/browser/object/fetchPage.js +17 -4
  62. package/build/browser/object/fetchPage.js.map +1 -1
  63. package/build/browser/object/fetchPage.test.js +56 -2
  64. package/build/browser/object/fetchPage.test.js.map +1 -1
  65. package/build/browser/object/geotimeseriesreference.test.js +56 -134
  66. package/build/browser/object/geotimeseriesreference.test.js.map +1 -1
  67. package/build/browser/object/media.test.js +19 -14
  68. package/build/browser/object/media.test.js.map +1 -1
  69. package/build/browser/object/object.test.js +96 -89
  70. package/build/browser/object/object.test.js.map +1 -1
  71. package/build/browser/object/timeseries.test.js +119 -85
  72. package/build/browser/object/timeseries.test.js.map +1 -1
  73. package/build/browser/objectSet/InterfaceObjectSet.test.js +37 -17
  74. package/build/browser/objectSet/InterfaceObjectSet.test.js.map +1 -1
  75. package/build/browser/objectSet/ObjectSet.test.js +200 -116
  76. package/build/browser/objectSet/ObjectSet.test.js.map +1 -1
  77. package/build/browser/objectSet/ObjectSetListenerWebsocket.js +20 -16
  78. package/build/browser/objectSet/ObjectSetListenerWebsocket.js.map +1 -1
  79. package/build/browser/objectSet/ObjectSetListenerWebsocket.test.js +19 -12
  80. package/build/browser/objectSet/ObjectSetListenerWebsocket.test.js.map +1 -1
  81. package/build/browser/objectSet/createObjectSet.js +2 -1
  82. package/build/browser/objectSet/createObjectSet.js.map +1 -1
  83. package/build/browser/observable/ListPayload.js.map +1 -1
  84. package/build/browser/observable/ObjectPayload.js.map +1 -1
  85. package/build/browser/observable/ObservableClient.js.map +1 -1
  86. package/build/browser/observable/internal/ActionApplication.js +32 -32
  87. package/build/browser/observable/internal/ActionApplication.js.map +1 -1
  88. package/build/browser/observable/internal/BulkObjectLoader.js +93 -0
  89. package/build/browser/observable/internal/BulkObjectLoader.js.map +1 -0
  90. package/build/browser/observable/internal/BulkObjectLoader.test.js +112 -0
  91. package/build/browser/observable/internal/BulkObjectLoader.test.js.map +1 -0
  92. package/build/browser/observable/internal/CacheKey.js +1 -1
  93. package/build/browser/observable/internal/CacheKey.js.map +1 -1
  94. package/build/browser/observable/internal/CacheKeys.js +2 -2
  95. package/build/browser/observable/internal/CacheKeys.js.map +1 -1
  96. package/build/browser/observable/internal/{ChangedObjects.js → Changes.js} +20 -9
  97. package/build/browser/observable/internal/Changes.js.map +1 -0
  98. package/build/browser/observable/internal/Layer.js +3 -0
  99. package/build/browser/observable/internal/Layer.js.map +1 -1
  100. package/build/browser/observable/internal/ListQuery.js +414 -170
  101. package/build/browser/observable/internal/ListQuery.js.map +1 -1
  102. package/build/browser/observable/internal/ObjectQuery.js +34 -21
  103. package/build/browser/observable/internal/ObjectQuery.js.map +1 -1
  104. package/build/browser/observable/internal/ObservableClientImpl.js +4 -12
  105. package/build/browser/observable/internal/ObservableClientImpl.js.map +1 -1
  106. package/build/browser/observable/internal/OptimisticJob.js +1 -1
  107. package/build/browser/observable/internal/OptimisticJob.js.map +1 -1
  108. package/build/browser/observable/internal/OrderByCanonicalizer.js +73 -0
  109. package/build/browser/observable/internal/OrderByCanonicalizer.js.map +1 -0
  110. package/build/browser/observable/internal/OrderByCanonicalizer.test.js +78 -0
  111. package/build/browser/observable/internal/OrderByCanonicalizer.test.js.map +1 -0
  112. package/build/browser/observable/internal/Query.js +64 -31
  113. package/build/browser/observable/internal/Query.js.map +1 -1
  114. package/build/browser/observable/internal/RefCounts.js +7 -2
  115. package/build/browser/observable/internal/RefCounts.js.map +1 -1
  116. package/build/browser/observable/internal/SimpleWhereClause.js +2 -0
  117. package/build/browser/observable/internal/SimpleWhereClause.js.map +1 -0
  118. package/build/browser/observable/internal/Store.js +86 -269
  119. package/build/browser/observable/internal/Store.js.map +1 -1
  120. package/build/browser/observable/internal/Store.test.js +401 -375
  121. package/build/browser/observable/internal/Store.test.js.map +1 -1
  122. package/build/browser/observable/internal/WhereClauseCanonicalizer.js +11 -3
  123. package/build/browser/observable/internal/WhereClauseCanonicalizer.js.map +1 -1
  124. package/build/browser/observable/internal/objectMatchesWhereClause.js +0 -2
  125. package/build/browser/observable/internal/objectMatchesWhereClause.js.map +1 -1
  126. package/build/browser/observable/internal/objectMatchesWhereClause.test.js.map +1 -1
  127. package/build/browser/observable/internal/testUtils.js +85 -20
  128. package/build/browser/observable/internal/testUtils.js.map +1 -1
  129. package/build/browser/ontology/OntologyProvider.js.map +1 -1
  130. package/build/browser/ontology/StandardOntologyProvider.js +12 -5
  131. package/build/browser/ontology/StandardOntologyProvider.js.map +1 -1
  132. package/build/browser/ontology/StandardOntologyProvider.test.js +17 -16
  133. package/build/browser/ontology/StandardOntologyProvider.test.js.map +1 -1
  134. package/build/browser/ontology/loadFullObjectMetadata.js +0 -1
  135. package/build/browser/ontology/loadFullObjectMetadata.js.map +1 -1
  136. package/build/browser/ontology/loadQueryMetadata.js +5 -2
  137. package/build/browser/ontology/loadQueryMetadata.js.map +1 -1
  138. package/build/browser/public/internal.js +2 -0
  139. package/build/browser/public/internal.js.map +1 -1
  140. package/build/browser/public/unstable-do-not-use.js +1 -0
  141. package/build/browser/public/unstable-do-not-use.js.map +1 -1
  142. package/build/browser/public-utils/osdkConfig.js +49 -0
  143. package/build/browser/public-utils/osdkConfig.js.map +1 -0
  144. package/build/browser/{object/createObjectSpecifierFromPrimaryKey.js → public-utils/vite-env.d.ts} +2 -3
  145. package/build/browser/queries/applyQuery.js +6 -4
  146. package/build/browser/queries/applyQuery.js.map +1 -1
  147. package/build/browser/queries/queries.test.js +93 -27
  148. package/build/browser/queries/queries.test.js.map +1 -1
  149. package/build/browser/queries/types.js.map +1 -1
  150. package/build/browser/tsserver.js.map +1 -1
  151. package/build/browser/util/UserAgent.js +1 -1
  152. package/build/browser/util/extractRdpDefinition.js +140 -0
  153. package/build/browser/util/extractRdpDefinition.js.map +1 -0
  154. package/build/browser/util/extractRdpDefinition.test.js +233 -0
  155. package/build/browser/util/extractRdpDefinition.test.js.map +1 -0
  156. package/build/browser/util/{isOsdkBaseObject.js → isObjectSpecifiersObject.js} +2 -2
  157. package/build/browser/util/isObjectSpecifiersObject.js.map +1 -0
  158. package/build/browser/util/isPoint.js +20 -0
  159. package/build/browser/util/isPoint.js.map +1 -0
  160. package/build/browser/util/objectSpecifierUtils.js +48 -0
  161. package/build/browser/util/objectSpecifierUtils.js.map +1 -0
  162. package/build/browser/util/objectSpecifierUtils.test.js +42 -0
  163. package/build/browser/util/objectSpecifierUtils.test.js.map +1 -0
  164. package/build/browser/util/toDataValue.js +6 -2
  165. package/build/browser/util/toDataValue.js.map +1 -1
  166. package/build/browser/util/toDataValue.test.js +37 -16
  167. package/build/browser/util/toDataValue.test.js.map +1 -1
  168. package/build/browser/util/toDataValueQueries.js +4 -6
  169. package/build/browser/util/toDataValueQueries.js.map +1 -1
  170. package/build/cjs/{Client-DBTcM9gB.d.cts → Client-CgL2LKN9.d.cts} +6 -7
  171. package/build/cjs/{chunk-IU47QMYO.cjs → chunk-FKI2LO2O.cjs} +250 -82
  172. package/build/cjs/chunk-FKI2LO2O.cjs.map +1 -0
  173. package/build/cjs/chunk-T4NIFYZS.cjs +14 -0
  174. package/build/cjs/chunk-T4NIFYZS.cjs.map +1 -0
  175. package/build/cjs/{chunk-JPENHIJB.cjs → chunk-W5PFESFR.cjs} +174 -35
  176. package/build/cjs/chunk-W5PFESFR.cjs.map +1 -0
  177. package/build/cjs/index.cjs +212 -193
  178. package/build/cjs/index.cjs.map +1 -1
  179. package/build/cjs/index.d.cts +4 -24
  180. package/build/cjs/public/internal.cjs +61 -7
  181. package/build/cjs/public/internal.cjs.map +1 -1
  182. package/build/cjs/public/internal.d.cts +50 -3
  183. package/build/cjs/public/unstable-do-not-use.cjs +885 -620
  184. package/build/cjs/public/unstable-do-not-use.cjs.map +1 -1
  185. package/build/cjs/public/unstable-do-not-use.d.cts +35 -25
  186. package/build/esm/MinimalClientContext.js.map +1 -1
  187. package/build/esm/__unstable/ConjureSupport.js.map +1 -1
  188. package/build/esm/actions/ActionValidationError.js +1 -1
  189. package/build/esm/actions/ActionValidationError.js.map +1 -1
  190. package/build/esm/actions/actions.test.js +134 -89
  191. package/build/esm/actions/actions.test.js.map +1 -1
  192. package/build/esm/actions/applyAction.js.map +1 -1
  193. package/build/esm/createClient.js +5 -1
  194. package/build/esm/createClient.js.map +1 -1
  195. package/build/esm/createClient.test.js +14 -6
  196. package/build/esm/createClient.test.js.map +1 -1
  197. package/build/esm/createMinimalClient.js +2 -2
  198. package/build/esm/createMinimalClient.js.map +1 -1
  199. package/build/esm/createMinimalClientHelper.js +25 -0
  200. package/build/esm/createMinimalClientHelper.js.map +1 -0
  201. package/build/esm/derivedProperties/createWithPropertiesObjectSet.js +36 -13
  202. package/build/esm/derivedProperties/createWithPropertiesObjectSet.js.map +1 -1
  203. package/build/esm/derivedProperties/createWithPropertiesObjectSet.test.js +133 -0
  204. package/build/esm/derivedProperties/createWithPropertiesObjectSet.test.js.map +1 -1
  205. package/build/esm/derivedProperties/derivedPropertyDefinitionFactory.js +93 -0
  206. package/build/esm/derivedProperties/derivedPropertyDefinitionFactory.js.map +1 -0
  207. package/build/esm/fetchMetadata.js +1 -1
  208. package/build/esm/fetchMetadata.js.map +1 -1
  209. package/build/esm/fetchMetadata.test.js +11 -9
  210. package/build/esm/fetchMetadata.test.js.map +1 -1
  211. package/build/esm/index.js +0 -1
  212. package/build/esm/index.js.map +1 -1
  213. package/build/esm/{util/isOsdkObject.js → intellisense.test.helpers/showsObjectPropertyJsdoc.js} +9 -4
  214. package/build/esm/intellisense.test.helpers/showsObjectPropertyJsdoc.js.map +1 -0
  215. package/build/esm/intellisense.test.js +17 -1
  216. package/build/esm/intellisense.test.js.map +1 -1
  217. package/build/esm/logger/BaseLogger.js +59 -0
  218. package/build/esm/logger/BaseLogger.js.map +1 -0
  219. package/build/esm/logger/BrowserLogger.js +67 -0
  220. package/build/esm/logger/BrowserLogger.js.map +1 -0
  221. package/build/esm/logger/MinimalLogger.js +39 -0
  222. package/build/esm/logger/MinimalLogger.js.map +1 -0
  223. package/build/esm/logger/MinimalLogger.test.js +60 -0
  224. package/build/esm/logger/MinimalLogger.test.js.map +1 -0
  225. package/build/esm/logger/TestLogger.js +56 -0
  226. package/build/esm/logger/TestLogger.js.map +1 -0
  227. package/build/esm/object/SimpleOsdkProperties.js +2 -0
  228. package/build/esm/object/SimpleOsdkProperties.js.map +1 -0
  229. package/build/esm/object/attachment.test.js +20 -7
  230. package/build/esm/object/attachment.test.js.map +1 -1
  231. package/build/esm/object/convertWireToOsdkObjects/BaseHolder.js +2 -0
  232. package/build/esm/object/convertWireToOsdkObjects/BaseHolder.js.map +1 -0
  233. package/build/esm/object/convertWireToOsdkObjects/InterfaceHolder.js.map +1 -1
  234. package/build/esm/object/convertWireToOsdkObjects/ObjectHolder.js.map +1 -1
  235. package/build/esm/object/convertWireToOsdkObjects/createOsdkInterface.js +4 -0
  236. package/build/esm/object/convertWireToOsdkObjects/createOsdkInterface.js.map +1 -1
  237. package/build/esm/object/convertWireToOsdkObjects/createOsdkObject.js +53 -35
  238. package/build/esm/object/convertWireToOsdkObjects/createOsdkObject.js.map +1 -1
  239. package/build/esm/object/convertWireToOsdkObjects/getDollarAs.js.map +1 -1
  240. package/build/esm/object/convertWireToOsdkObjects/getDollarLink.js.map +1 -1
  241. package/build/esm/object/convertWireToOsdkObjects.js +7 -15
  242. package/build/esm/object/convertWireToOsdkObjects.js.map +1 -1
  243. package/build/esm/object/convertWireToOsdkObjects.test.js +39 -33
  244. package/build/esm/object/convertWireToOsdkObjects.test.js.map +1 -1
  245. package/build/esm/object/fetchPage.js +17 -4
  246. package/build/esm/object/fetchPage.js.map +1 -1
  247. package/build/esm/object/fetchPage.test.js +56 -2
  248. package/build/esm/object/fetchPage.test.js.map +1 -1
  249. package/build/esm/object/geotimeseriesreference.test.js +56 -134
  250. package/build/esm/object/geotimeseriesreference.test.js.map +1 -1
  251. package/build/esm/object/media.test.js +19 -14
  252. package/build/esm/object/media.test.js.map +1 -1
  253. package/build/esm/object/object.test.js +96 -89
  254. package/build/esm/object/object.test.js.map +1 -1
  255. package/build/esm/object/timeseries.test.js +119 -85
  256. package/build/esm/object/timeseries.test.js.map +1 -1
  257. package/build/esm/objectSet/InterfaceObjectSet.test.js +37 -17
  258. package/build/esm/objectSet/InterfaceObjectSet.test.js.map +1 -1
  259. package/build/esm/objectSet/ObjectSet.test.js +200 -116
  260. package/build/esm/objectSet/ObjectSet.test.js.map +1 -1
  261. package/build/esm/objectSet/ObjectSetListenerWebsocket.js +20 -16
  262. package/build/esm/objectSet/ObjectSetListenerWebsocket.js.map +1 -1
  263. package/build/esm/objectSet/ObjectSetListenerWebsocket.test.js +19 -12
  264. package/build/esm/objectSet/ObjectSetListenerWebsocket.test.js.map +1 -1
  265. package/build/esm/objectSet/createObjectSet.js +2 -1
  266. package/build/esm/objectSet/createObjectSet.js.map +1 -1
  267. package/build/esm/observable/ListPayload.js.map +1 -1
  268. package/build/esm/observable/ObjectPayload.js.map +1 -1
  269. package/build/esm/observable/ObservableClient.js.map +1 -1
  270. package/build/esm/observable/internal/ActionApplication.js +32 -32
  271. package/build/esm/observable/internal/ActionApplication.js.map +1 -1
  272. package/build/esm/observable/internal/BulkObjectLoader.js +93 -0
  273. package/build/esm/observable/internal/BulkObjectLoader.js.map +1 -0
  274. package/build/esm/observable/internal/BulkObjectLoader.test.js +112 -0
  275. package/build/esm/observable/internal/BulkObjectLoader.test.js.map +1 -0
  276. package/build/esm/observable/internal/CacheKey.js +1 -1
  277. package/build/esm/observable/internal/CacheKey.js.map +1 -1
  278. package/build/esm/observable/internal/CacheKeys.js +2 -2
  279. package/build/esm/observable/internal/CacheKeys.js.map +1 -1
  280. package/build/esm/observable/internal/{ChangedObjects.js → Changes.js} +20 -9
  281. package/build/esm/observable/internal/Changes.js.map +1 -0
  282. package/build/esm/observable/internal/Layer.js +3 -0
  283. package/build/esm/observable/internal/Layer.js.map +1 -1
  284. package/build/esm/observable/internal/ListQuery.js +414 -170
  285. package/build/esm/observable/internal/ListQuery.js.map +1 -1
  286. package/build/esm/observable/internal/ObjectQuery.js +34 -21
  287. package/build/esm/observable/internal/ObjectQuery.js.map +1 -1
  288. package/build/esm/observable/internal/ObservableClientImpl.js +4 -12
  289. package/build/esm/observable/internal/ObservableClientImpl.js.map +1 -1
  290. package/build/esm/observable/internal/OptimisticJob.js +1 -1
  291. package/build/esm/observable/internal/OptimisticJob.js.map +1 -1
  292. package/build/esm/observable/internal/OrderByCanonicalizer.js +73 -0
  293. package/build/esm/observable/internal/OrderByCanonicalizer.js.map +1 -0
  294. package/build/esm/observable/internal/OrderByCanonicalizer.test.js +78 -0
  295. package/build/esm/observable/internal/OrderByCanonicalizer.test.js.map +1 -0
  296. package/build/esm/observable/internal/Query.js +64 -31
  297. package/build/esm/observable/internal/Query.js.map +1 -1
  298. package/build/esm/observable/internal/RefCounts.js +7 -2
  299. package/build/esm/observable/internal/RefCounts.js.map +1 -1
  300. package/build/esm/observable/internal/SimpleWhereClause.js +2 -0
  301. package/build/esm/observable/internal/SimpleWhereClause.js.map +1 -0
  302. package/build/esm/observable/internal/Store.js +86 -269
  303. package/build/esm/observable/internal/Store.js.map +1 -1
  304. package/build/esm/observable/internal/Store.test.js +401 -375
  305. package/build/esm/observable/internal/Store.test.js.map +1 -1
  306. package/build/esm/observable/internal/WhereClauseCanonicalizer.js +11 -3
  307. package/build/esm/observable/internal/WhereClauseCanonicalizer.js.map +1 -1
  308. package/build/esm/observable/internal/objectMatchesWhereClause.js +0 -2
  309. package/build/esm/observable/internal/objectMatchesWhereClause.js.map +1 -1
  310. package/build/esm/observable/internal/objectMatchesWhereClause.test.js.map +1 -1
  311. package/build/esm/observable/internal/testUtils.js +85 -20
  312. package/build/esm/observable/internal/testUtils.js.map +1 -1
  313. package/build/esm/ontology/OntologyProvider.js.map +1 -1
  314. package/build/esm/ontology/StandardOntologyProvider.js +12 -5
  315. package/build/esm/ontology/StandardOntologyProvider.js.map +1 -1
  316. package/build/esm/ontology/StandardOntologyProvider.test.js +17 -16
  317. package/build/esm/ontology/StandardOntologyProvider.test.js.map +1 -1
  318. package/build/esm/ontology/loadFullObjectMetadata.js +0 -1
  319. package/build/esm/ontology/loadFullObjectMetadata.js.map +1 -1
  320. package/build/esm/ontology/loadQueryMetadata.js +5 -2
  321. package/build/esm/ontology/loadQueryMetadata.js.map +1 -1
  322. package/build/esm/public/internal.js +2 -0
  323. package/build/esm/public/internal.js.map +1 -1
  324. package/build/esm/public/unstable-do-not-use.js +1 -0
  325. package/build/esm/public/unstable-do-not-use.js.map +1 -1
  326. package/build/esm/public-utils/osdkConfig.js +49 -0
  327. package/build/esm/public-utils/osdkConfig.js.map +1 -0
  328. package/build/esm/{object/createObjectSpecifierFromPrimaryKey.js → public-utils/vite-env.d.ts} +2 -3
  329. package/build/esm/queries/applyQuery.js +6 -4
  330. package/build/esm/queries/applyQuery.js.map +1 -1
  331. package/build/esm/queries/queries.test.js +93 -27
  332. package/build/esm/queries/queries.test.js.map +1 -1
  333. package/build/esm/queries/types.js.map +1 -1
  334. package/build/esm/tsserver.js.map +1 -1
  335. package/build/esm/util/UserAgent.js +1 -1
  336. package/build/esm/util/extractRdpDefinition.js +140 -0
  337. package/build/esm/util/extractRdpDefinition.js.map +1 -0
  338. package/build/esm/util/extractRdpDefinition.test.js +233 -0
  339. package/build/esm/util/extractRdpDefinition.test.js.map +1 -0
  340. package/build/{browser/util/isOsdkObject.js → esm/util/isObjectSpecifiersObject.js} +2 -2
  341. package/build/esm/util/isObjectSpecifiersObject.js.map +1 -0
  342. package/build/esm/util/isPoint.js +20 -0
  343. package/build/esm/util/isPoint.js.map +1 -0
  344. package/build/esm/util/objectSpecifierUtils.js +48 -0
  345. package/build/esm/util/objectSpecifierUtils.js.map +1 -0
  346. package/build/esm/util/objectSpecifierUtils.test.js +42 -0
  347. package/build/esm/util/objectSpecifierUtils.test.js.map +1 -0
  348. package/build/esm/util/toDataValue.js +6 -2
  349. package/build/esm/util/toDataValue.js.map +1 -1
  350. package/build/esm/util/toDataValue.test.js +37 -16
  351. package/build/esm/util/toDataValue.test.js.map +1 -1
  352. package/build/esm/util/toDataValueQueries.js +4 -6
  353. package/build/esm/util/toDataValueQueries.js.map +1 -1
  354. package/build/types/MinimalClientContext.d.ts +1 -1
  355. package/build/types/MinimalClientContext.d.ts.map +1 -1
  356. package/build/types/__unstable/ConjureSupport.d.ts +2 -2
  357. package/build/types/actions/applyAction.d.ts +1 -2
  358. package/build/types/actions/applyAction.d.ts.map +1 -1
  359. package/build/types/createClient.d.ts +1 -1
  360. package/build/types/createClient.d.ts.map +1 -1
  361. package/build/types/createClient.test.d.ts +2 -1
  362. package/build/types/createClient.test.d.ts.map +1 -1
  363. package/build/types/createMinimalClientHelper.d.ts +1 -0
  364. package/build/types/createMinimalClientHelper.d.ts.map +1 -0
  365. package/build/types/derivedProperties/derivedPropertyDefinitionFactory.d.ts +1 -0
  366. package/build/types/derivedProperties/derivedPropertyDefinitionFactory.d.ts.map +1 -0
  367. package/build/types/index.d.ts +4 -6
  368. package/build/types/index.d.ts.map +1 -1
  369. package/build/types/intellisense.test.helpers/showsObjectPropertyJsdoc.d.ts +1 -0
  370. package/build/types/intellisense.test.helpers/showsObjectPropertyJsdoc.d.ts.map +1 -0
  371. package/build/types/logger/BaseLogger.d.ts +33 -0
  372. package/build/types/logger/BaseLogger.d.ts.map +1 -0
  373. package/build/types/logger/BrowserLogger.d.ts +9 -0
  374. package/build/types/logger/BrowserLogger.d.ts.map +1 -0
  375. package/build/types/logger/MinimalLogger.d.ts +9 -0
  376. package/build/types/logger/MinimalLogger.d.ts.map +1 -0
  377. package/build/types/logger/MinimalLogger.test.d.ts +1 -0
  378. package/build/types/logger/MinimalLogger.test.d.ts.map +1 -0
  379. package/build/types/logger/TestLogger.d.ts +14 -0
  380. package/build/types/logger/TestLogger.d.ts.map +1 -0
  381. package/build/types/object/SimpleOsdkProperties.d.ts +1 -0
  382. package/build/types/object/SimpleOsdkProperties.d.ts.map +1 -0
  383. package/build/types/object/convertWireToOsdkObjects/BaseHolder.d.ts +1 -0
  384. package/build/types/object/convertWireToOsdkObjects/BaseHolder.d.ts.map +1 -0
  385. package/build/types/object/convertWireToOsdkObjects.d.ts +8 -1
  386. package/build/types/object/convertWireToOsdkObjects.d.ts.map +1 -1
  387. package/build/types/object/fetchPage.d.ts.map +1 -1
  388. package/build/types/object/object.test.d.ts.map +1 -1
  389. package/build/types/objectSet/ObjectSet.test.d.ts.map +1 -1
  390. package/build/types/observable/ListPayload.d.ts +5 -9
  391. package/build/types/observable/ListPayload.d.ts.map +1 -1
  392. package/build/types/observable/ObjectPayload.d.ts +4 -7
  393. package/build/types/observable/ObjectPayload.d.ts.map +1 -1
  394. package/build/types/observable/ObservableClient.d.ts +27 -11
  395. package/build/types/observable/ObservableClient.d.ts.map +1 -1
  396. package/build/types/observable/internal/ActionApplication.d.ts +2 -2
  397. package/build/types/observable/internal/ActionApplication.d.ts.map +1 -1
  398. package/build/types/observable/internal/BulkObjectLoader.d.ts +8 -0
  399. package/build/types/observable/internal/BulkObjectLoader.d.ts.map +1 -0
  400. package/build/types/observable/internal/BulkObjectLoader.test.d.ts +1 -0
  401. package/build/types/observable/internal/BulkObjectLoader.test.d.ts.map +1 -0
  402. package/build/types/observable/internal/CacheKeys.d.ts +1 -1
  403. package/build/types/observable/internal/CacheKeys.d.ts.map +1 -1
  404. package/build/types/observable/internal/Changes.d.ts +15 -0
  405. package/build/types/observable/internal/Changes.d.ts.map +1 -0
  406. package/build/types/observable/internal/Layer.d.ts +1 -0
  407. package/build/types/observable/internal/Layer.d.ts.map +1 -1
  408. package/build/types/observable/internal/ListQuery.d.ts +59 -14
  409. package/build/types/observable/internal/ListQuery.d.ts.map +1 -1
  410. package/build/types/observable/internal/ObjectQuery.d.ts +5 -6
  411. package/build/types/observable/internal/ObjectQuery.d.ts.map +1 -1
  412. package/build/types/observable/internal/OptimisticJob.d.ts +1 -1
  413. package/build/types/observable/internal/OptimisticJob.d.ts.map +1 -1
  414. package/build/types/observable/internal/OrderByCanonicalizer.d.ts +12 -0
  415. package/build/types/observable/internal/OrderByCanonicalizer.d.ts.map +1 -0
  416. package/build/types/observable/internal/OrderByCanonicalizer.test.d.ts +1 -0
  417. package/build/types/observable/internal/OrderByCanonicalizer.test.d.ts.map +1 -0
  418. package/build/types/observable/internal/Query.d.ts +41 -6
  419. package/build/types/observable/internal/Query.d.ts.map +1 -1
  420. package/build/types/observable/internal/RefCounts.d.ts.map +1 -1
  421. package/build/types/observable/internal/SimpleWhereClause.d.ts +2 -0
  422. package/build/types/observable/internal/SimpleWhereClause.d.ts.map +1 -0
  423. package/build/types/observable/internal/Store.d.ts +20 -44
  424. package/build/types/observable/internal/Store.d.ts.map +1 -1
  425. package/build/types/observable/internal/WhereClauseCanonicalizer.d.ts +2 -1
  426. package/build/types/observable/internal/WhereClauseCanonicalizer.d.ts.map +1 -1
  427. package/build/types/observable/internal/objectMatchesWhereClause.d.ts +4 -2
  428. package/build/types/observable/internal/objectMatchesWhereClause.d.ts.map +1 -1
  429. package/build/types/observable/internal/testUtils.d.ts +39 -10
  430. package/build/types/observable/internal/testUtils.d.ts.map +1 -1
  431. package/build/types/ontology/OntologyProvider.d.ts +1 -1
  432. package/build/types/ontology/OntologyProvider.d.ts.map +1 -1
  433. package/build/types/ontology/loadQueryMetadata.d.ts +1 -1
  434. package/build/types/ontology/loadQueryMetadata.d.ts.map +1 -1
  435. package/build/types/public/internal.d.ts +2 -0
  436. package/build/types/public/internal.d.ts.map +1 -1
  437. package/build/types/public/unstable-do-not-use.d.ts +4 -5
  438. package/build/types/public/unstable-do-not-use.d.ts.map +1 -1
  439. package/build/types/public-utils/osdkConfig.d.ts +8 -0
  440. package/build/types/public-utils/osdkConfig.d.ts.map +1 -0
  441. package/build/types/public-utils/vite-env.d.d.ts +3 -0
  442. package/build/types/public-utils/vite-env.d.d.ts.map +1 -0
  443. package/build/types/queries/applyQuery.d.ts +2 -2
  444. package/build/types/queries/applyQuery.d.ts.map +1 -1
  445. package/build/types/queries/types.d.ts +1 -1
  446. package/build/types/queries/types.d.ts.map +1 -1
  447. package/build/types/tsserver.d.ts +1 -1
  448. package/build/types/tsserver.d.ts.map +1 -1
  449. package/build/types/util/extractRdpDefinition.d.ts +4 -0
  450. package/build/types/util/extractRdpDefinition.d.ts.map +1 -0
  451. package/build/types/util/extractRdpDefinition.test.d.ts +1 -0
  452. package/build/types/util/extractRdpDefinition.test.d.ts.map +1 -0
  453. package/build/types/util/isObjectSpecifiersObject.d.ts +5 -0
  454. package/build/types/util/isObjectSpecifiersObject.d.ts.map +1 -0
  455. package/build/types/util/isPoint.d.ts +1 -0
  456. package/build/types/util/isPoint.d.ts.map +1 -0
  457. package/build/types/util/objectSpecifierUtils.d.ts +24 -0
  458. package/build/types/util/objectSpecifierUtils.d.ts.map +1 -0
  459. package/build/types/util/objectSpecifierUtils.test.d.ts +1 -0
  460. package/build/types/util/objectSpecifierUtils.test.d.ts.map +1 -0
  461. package/package.json +21 -18
  462. package/build/browser/Logger.js +0 -2
  463. package/build/browser/Logger.js.map +0 -1
  464. package/build/browser/object/createObjectSpecifierFromPrimaryKey.js.map +0 -1
  465. package/build/browser/observable/internal/ChangedObjects.js.map +0 -1
  466. package/build/browser/util/isOsdkBaseObject.js.map +0 -1
  467. package/build/browser/util/isOsdkObject.js.map +0 -1
  468. package/build/cjs/chunk-IU47QMYO.cjs.map +0 -1
  469. package/build/cjs/chunk-JPENHIJB.cjs.map +0 -1
  470. package/build/cjs/chunk-Q7SFCCGT.cjs +0 -11
  471. package/build/cjs/chunk-Q7SFCCGT.cjs.map +0 -1
  472. package/build/cjs/graphql-RGM5SRWV.cjs +0 -10532
  473. package/build/cjs/graphql-RGM5SRWV.cjs.map +0 -1
  474. package/build/esm/Logger.js +0 -2
  475. package/build/esm/Logger.js.map +0 -1
  476. package/build/esm/object/createObjectSpecifierFromPrimaryKey.js.map +0 -1
  477. package/build/esm/observable/internal/ChangedObjects.js.map +0 -1
  478. package/build/esm/util/isOsdkBaseObject.js.map +0 -1
  479. package/build/esm/util/isOsdkObject.js.map +0 -1
  480. package/build/types/Logger.d.ts +0 -17
  481. package/build/types/Logger.d.ts.map +0 -1
  482. package/build/types/object/createObjectSpecifierFromPrimaryKey.d.ts +0 -2
  483. package/build/types/object/createObjectSpecifierFromPrimaryKey.d.ts.map +0 -1
  484. package/build/types/observable/internal/ChangedObjects.d.ts +0 -11
  485. package/build/types/observable/internal/ChangedObjects.d.ts.map +0 -1
  486. package/build/types/util/isOsdkBaseObject.d.ts +0 -2
  487. package/build/types/util/isOsdkBaseObject.d.ts.map +0 -1
  488. package/build/types/util/isOsdkObject.d.ts +0 -2
  489. package/build/types/util/isOsdkObject.d.ts.map +0 -1
@@ -16,18 +16,20 @@
16
16
 
17
17
  import { isOk } from "@osdk/api";
18
18
  import { __EXPERIMENTAL__NOT_SUPPORTED_YET__fetchOneByRid, __EXPERIMENTAL__NOT_SUPPORTED_YET__fetchPageByRid } from "@osdk/api/unstable";
19
- import { $ontologyRid, BarInterface, BgaoNflPlayer, Employee, FooInterface, Office } from "@osdk/client.test.ontology";
20
- import { apiServer, stubData } from "@osdk/shared.test";
21
- import { afterAll, beforeAll, describe, expect, expectTypeOf, it } from "vitest";
19
+ import { BarInterface, BgaoNflPlayer, Employee, FooInterface, objectTypeWithAllPropertyTypes, Office } from "@osdk/client.test.ontology";
20
+ import { LegacyFauxFoundry, startNodeApiServer, stubData } from "@osdk/shared.test";
21
+ import { beforeAll, describe, expect, expectTypeOf, it } from "vitest";
22
22
  import { createClient } from "../createClient.js";
23
23
  describe("ObjectSet", () => {
24
24
  let client;
25
- beforeAll(async () => {
26
- apiServer.listen();
27
- client = createClient("https://stack.palantir.com", $ontologyRid, async () => "myAccessToken");
28
- });
29
- afterAll(() => {
30
- apiServer.close();
25
+ beforeAll(() => {
26
+ const testSetup = startNodeApiServer(new LegacyFauxFoundry(), createClient);
27
+ ({
28
+ client
29
+ } = testSetup);
30
+ return () => {
31
+ testSetup.apiServer.close();
32
+ };
31
33
  });
32
34
  it("does not allow intersect/union/subtract with different object types", () => {
33
35
  const employeeObjectSet = client(Employee);
@@ -46,15 +48,20 @@ describe("ObjectSet", () => {
46
48
  it("objects set union", async () => {
47
49
  const objectSet = client(Employee);
48
50
  const unionedObjectSet = objectSet.union(objectSet);
49
- let iter = 0;
50
51
  const {
51
52
  data: employees
52
53
  } = await unionedObjectSet.fetchPage();
54
+ const pks = new Set();
53
55
  for (const emp of employees) {
54
- expect(emp.employeeId).toEqual(50030 + iter);
55
- iter += 1;
56
+ pks.add(emp.$primaryKey);
56
57
  }
57
- expect(iter).toEqual(2);
58
+ expect(pks.size).toEqual(6);
59
+ expect(pks.has(stubData.employee1.employeeId)).toBe(true);
60
+ expect(pks.has(stubData.employee2.employeeId)).toBe(true);
61
+ expect(pks.has(stubData.employee3.employeeId)).toBe(true);
62
+ expect(pks.has(stubData.employee4withDerived.employeeId)).toBe(true);
63
+ expect(pks.has(stubData.employeePassesStrict.__primaryKey)).toBe(true);
64
+ expect(pks.has(stubData.employee50050.employeeId)).toBe(true);
58
65
  });
59
66
  it("objects set subtract", async () => {
60
67
  const objectSet = client(Employee);
@@ -62,76 +69,44 @@ describe("ObjectSet", () => {
62
69
  employeeId: 50030
63
70
  });
64
71
  const subtractedObjectSet = objectSet.subtract(objectSet2);
65
- let iter = 0;
66
- const {
67
- data: employees
68
- } = await subtractedObjectSet.fetchPage();
69
- for (const emp of employees) {
70
- expect(emp.employeeId).toEqual(50031 + iter);
71
- iter += 1;
72
- }
73
- expect(iter).toEqual(2);
72
+ const objectSetResults = await objectSet.fetchPage();
73
+ const objectSet2Results = await objectSet2.fetchPage();
74
+ const subtractedObjectSetResults = await subtractedObjectSet.fetchPage();
75
+ expect(objectSet2Results.data).toHaveLength(1);
76
+ expect(subtractedObjectSetResults.data).toHaveLength(objectSetResults.data.length - objectSet2Results.data.length);
77
+ expect(subtractedObjectSetResults.data.find(x => x.$primaryKey === 50030)).toBeUndefined();
74
78
  });
75
79
  it("objects set intersect", async () => {
76
80
  const objectSet = client(Employee);
77
81
  const intersectedObjectSet = objectSet.intersect(objectSet);
78
- let iter = 0;
79
82
  const {
80
83
  data: employees
81
84
  } = await intersectedObjectSet.fetchPage();
85
+ const pks = new Set();
82
86
  for (const emp of employees) {
83
- expect(emp.employeeId).toEqual(50032);
84
- iter += 1;
87
+ pks.add(emp.$primaryKey);
85
88
  }
86
- expect(iter).toEqual(1);
89
+ expect(pks.size).toEqual(6);
90
+ expect(pks.has(stubData.employee1.employeeId)).toBe(true);
91
+ expect(pks.has(stubData.employee2.employeeId)).toBe(true);
92
+ expect(pks.has(stubData.employee3.employeeId)).toBe(true);
93
+ expect(pks.has(stubData.employee4withDerived.employeeId)).toBe(true);
94
+ expect(pks.has(stubData.employeePassesStrict.__primaryKey)).toBe(true);
95
+ expect(pks.has(stubData.employee50050.employeeId)).toBe(true);
87
96
  });
88
97
  it("orders objects in ascending order without a filter, and returns all results", async () => {
89
98
  const {
90
99
  data: employees
91
- } = await client(Employee).fetchPage({
100
+ } = await client(Employee).where({
101
+ employeeId: {
102
+ $isNull: false
103
+ }
104
+ }).fetchPage({
92
105
  $orderBy: {
93
106
  "employeeId": "asc"
94
107
  }
95
108
  });
96
- expect(employees).toMatchObject([{
97
- $apiName: "Employee",
98
- $objectType: "Employee",
99
- $primaryKey: 50030,
100
- class: "Red",
101
- employeeId: 50030,
102
- employeeStatus: expect.anything(),
103
- employeeSensor: expect.anything(),
104
- fullName: "John Doe",
105
- office: "NYC",
106
- startDate: "2019-01-01",
107
- employeeLocation: expect.anything()
108
- }, {
109
- $apiName: "Employee",
110
- $objectType: "Employee",
111
- $primaryKey: 50031,
112
- $title: "Jane Doe",
113
- class: "Blue",
114
- employeeId: 50031,
115
- employeeStatus: expect.anything(),
116
- employeeSensor: expect.anything(),
117
- fullName: "Jane Doe",
118
- office: "SEA",
119
- startDate: "2012-02-12",
120
- employeeLocation: expect.anything()
121
- }, {
122
- $apiName: "Employee",
123
- $objectType: "Employee",
124
- $primaryKey: 50032,
125
- $title: "Jack Smith",
126
- class: "Red",
127
- employeeId: 50032,
128
- employeeStatus: expect.anything(),
129
- employeeSensor: expect.anything(),
130
- fullName: "Jack Smith",
131
- office: "LON",
132
- startDate: "2015-05-15",
133
- employeeLocation: expect.anything()
134
- }]);
109
+ expect(employees.map(e => e.$primaryKey)).toEqual([50030, 50031, 50032, 50033, 50035, stubData.employee50050.employeeId]);
135
110
  });
136
111
  it("allows fetching by PK from a base object set - fetchOne", async () => {
137
112
  const employee = await client(Employee).fetchOne(stubData.employee1.employeeId);
@@ -139,25 +114,25 @@ describe("ObjectSet", () => {
139
114
  expect(employee.$primaryKey).toBe(stubData.employee1.employeeId);
140
115
  });
141
116
  it("allows fetching by rid with experimental function", async () => {
142
- const employee = await client(__EXPERIMENTAL__NOT_SUPPORTED_YET__fetchOneByRid).fetchOneByRid(Employee, "ri.employee.i.look.for");
117
+ const employee = await client(__EXPERIMENTAL__NOT_SUPPORTED_YET__fetchOneByRid).fetchOneByRid(Employee, stubData.employee1.__rid);
143
118
  expectTypeOf().toMatchTypeOf;
144
119
  expect(employee.$primaryKey).toBe(stubData.employee1.employeeId);
145
120
  });
146
121
  it("allows fetching page of rids with experimental function", async () => {
147
- const employees = await client(__EXPERIMENTAL__NOT_SUPPORTED_YET__fetchPageByRid).fetchPageByRid(Employee, ["ri.employee.i.look.for", "ri.employee.i.look.for.2"], {});
122
+ const employees = await client(__EXPERIMENTAL__NOT_SUPPORTED_YET__fetchPageByRid).fetchPageByRid(Employee, [stubData.employee1.__rid, stubData.employee2.__rid], {});
148
123
  expectTypeOf().toMatchTypeOf;
149
124
  expect(employees.data[0].$primaryKey).toBe(stubData.employee1.employeeId);
150
125
  expect(employees.data[1].$primaryKey).toBe(stubData.employee2.employeeId);
151
126
  });
152
127
  it("allows fetching by rid with experimental function, with select", async () => {
153
- const employee = await client(__EXPERIMENTAL__NOT_SUPPORTED_YET__fetchOneByRid).fetchOneByRid(Employee, "ri.employee.i.look.for", {
128
+ const employee = await client(__EXPERIMENTAL__NOT_SUPPORTED_YET__fetchOneByRid).fetchOneByRid(Employee, stubData.employee2.__rid, {
154
129
  $select: ["fullName"]
155
130
  });
156
131
  expectTypeOf().toMatchTypeOf;
157
132
  expect(employee.$primaryKey).toBe(stubData.employee2.employeeId);
158
133
  });
159
- it("allows fetching by rid with experimental function, with select", async () => {
160
- const employees = await client(__EXPERIMENTAL__NOT_SUPPORTED_YET__fetchPageByRid).fetchPageByRid(Employee, ["ri.employee.i.look.for2", "ri.employee.i.look.for.3"], {
134
+ it("allows fetching by rid with experimental function, with select 2", async () => {
135
+ const employees = await client(__EXPERIMENTAL__NOT_SUPPORTED_YET__fetchPageByRid).fetchPageByRid(Employee, [stubData.employee2.__rid, stubData.employee3.__rid], {
161
136
  $select: ["fullName"]
162
137
  });
163
138
  expectTypeOf().toMatchTypeOf;
@@ -237,16 +212,18 @@ describe("ObjectSet", () => {
237
212
  it(" object set union works with fetchPageWithErrors", async () => {
238
213
  const objectSet = client(Employee);
239
214
  const unionedObjectSet = objectSet.union(objectSet);
240
- let iter = 0;
241
215
  const result = await unionedObjectSet.fetchPageWithErrors();
242
- if (isOk(result)) {
243
- const employees = result.value.data;
244
- for (const emp of employees) {
245
- expect(emp.employeeId).toEqual(50030 + iter);
246
- iter += 1;
247
- }
248
- expect(iter).toEqual(2);
216
+ const pks = new Set();
217
+ for (const emp of result.value.data) {
218
+ pks.add(emp.$primaryKey);
249
219
  }
220
+ expect(pks.size).toEqual(6);
221
+ expect(pks.has(stubData.employee1.employeeId)).toBe(true);
222
+ expect(pks.has(stubData.employee2.employeeId)).toBe(true);
223
+ expect(pks.has(stubData.employee3.employeeId)).toBe(true);
224
+ expect(pks.has(stubData.employee4withDerived.employeeId)).toBe(true);
225
+ expect(pks.has(stubData.employeePassesStrict.__primaryKey)).toBe(true);
226
+ expect(pks.has(stubData.employee50050.employeeId)).toBe(true);
250
227
  });
251
228
  it("allows $in filter with ReadonlyArrays", () => {
252
229
  const objectSet = client(Employee).where({
@@ -408,7 +385,7 @@ describe("ObjectSet", () => {
408
385
  $includeRid: true
409
386
  };
410
387
  const result = k === "fetchPage" ? await client(Employee).fetchPage(opts) : (await client(Employee).fetchPageWithErrors(opts)).value;
411
- expect(result.data).toHaveLength(4);
388
+ expect(result.data).toHaveLength(6);
412
389
  expectTypeOf(result.data[0]).branded.toEqualTypeOf();
413
390
  });
414
391
  });
@@ -418,24 +395,19 @@ describe("ObjectSet", () => {
418
395
  $includeRid: false
419
396
  };
420
397
  const result = k === "fetchPage" ? await client(Employee).fetchPage(opts) : (await client(Employee).fetchPageWithErrors(opts)).value;
421
- expect(result.data).toHaveLength(4);
398
+ expect(result.data).toHaveLength(6);
422
399
  expectTypeOf(result.data[0]).branded.toEqualTypeOf();
423
400
  });
424
401
  });
425
402
  });
426
403
  });
427
404
  describe("Derived Properties Object Set", () => {
428
- it("does not allow aggregate or selectProperty before a link type is selected", () => {
405
+ it("does not allow aggregate before a link type is selected", () => {
429
406
  client(Employee).withProperties({
430
407
  "derivedPropertyName": base =>
431
408
  // @ts-expect-error
432
409
  base.aggregate("employeeId:exactDistinct")
433
410
  });
434
- client(Employee).withProperties({
435
- "derivedPropertyName": base =>
436
- // @ts-expect-error
437
- base.selectProperty("employeeId")
438
- });
439
411
  });
440
412
  it("does not allow selectProperty when a many link was selected at any point", () => {
441
413
  client(Employee).withProperties({
@@ -614,44 +586,155 @@ describe("ObjectSet", () => {
614
586
  it("allows fetching derived properties with correctly typed Osdk.Instance types", async () => {
615
587
  const objectWithRdp = await client(Employee).withProperties({
616
588
  "derivedPropertyName": base => base.pivotTo("lead").selectProperty("employeeId")
617
- }).fetchOne(50035);
589
+ }).fetchOne(stubData.employee1.employeeId);
618
590
  expectTypeOf(objectWithRdp.derivedPropertyName).toEqualTypeOf();
619
- expect(objectWithRdp.derivedPropertyName).toBe(1);
591
+ expect(objectWithRdp.derivedPropertyName).toBe(stubData.employee2.__primaryKey);
620
592
  const objectWithUndefinedRdp = await client(Employee).withProperties({
621
593
  "derivedPropertyName": base => base.pivotTo("lead").selectProperty("employeeId")
622
- }).fetchOne(50036, {
594
+ }).fetchOne(stubData.employee2.employeeId, {
623
595
  $select: ["derivedPropertyName"]
624
596
  });
625
597
  expect(objectWithUndefinedRdp.derivedPropertyName).toBeUndefined();
626
598
  });
627
- });
628
- describe.each(["fetchOne", "fetchOneWithErrors"])("%s", k => {
629
- describe("strictNonNull: false", () => {
630
- describe("includeRid: true", () => {
631
- it("returns bad data", async () => {
632
- // Look at this
633
- const opts = {
634
- $__EXPERIMENTAL_strictNonNull: false,
635
- $includeRid: true
636
- };
637
- const result = k === "fetchOne" ? await client(Employee).fetchOne(50033, opts) : (await client(Employee).fetchOneWithErrors(50033, opts)).value;
638
- expect(result).not.toBeUndefined();
639
- expectTypeOf(result).branded.toEqualTypeOf();
640
- });
641
- });
642
- describe("includeRid: false", () => {
643
- it("returns bad data", async () => {
644
- const opts = {
645
- $__EXPERIMENTAL_strictNonNull: false,
646
- $includeRid: false
647
- };
648
- const result = k === "fetchOne" ? await client(Employee).fetchOne(50033, opts) : (await client(Employee).fetchOneWithErrors(50033, opts)).value;
649
- expect(result).not.toBeUndefined();
650
- expectTypeOf(result).branded.toEqualTypeOf();
651
- });
652
- });
599
+ it("correctly deserializes attachments and geo properties", async () => {
600
+ const objectWithRdp = await client(objectTypeWithAllPropertyTypes).withProperties({
601
+ "attachmentSelectDp": base => base.pivotTo("linkedObjectType").selectProperty("attachment"),
602
+ "geoSelectDp": base => base.pivotTo("linkedObjectType").selectProperty("geoShape"),
603
+ "geoCollectListDp": base => base.pivotTo("linkedObjectType").aggregate("geoShapeArray:collectList")
604
+ }).fetchOne(5);
605
+ expectTypeOf(objectWithRdp.attachmentSelectDp).toEqualTypeOf();
606
+ expect(objectWithRdp.attachmentSelectDp).toMatchInlineSnapshot(`
607
+ {
608
+ "fetchContents": [Function],
609
+ "fetchMetadata": [Function],
610
+ "rid": "ri.attachments.main.attachment.86016861-707f-4292-b258-6a7108915a75",
611
+ }
612
+ `);
613
+ expectTypeOf(objectWithRdp.geoSelectDp).toEqualTypeOf();
614
+ expect(objectWithRdp.geoSelectDp).toMatchInlineSnapshot(`
615
+ {
616
+ "coordinates": [
617
+ [
618
+ [
619
+ 1,
620
+ 1,
621
+ ],
622
+ [
623
+ 1,
624
+ 2,
625
+ ],
626
+ [
627
+ 2,
628
+ 2,
629
+ ],
630
+ [
631
+ 2,
632
+ 1,
633
+ ],
634
+ [
635
+ 1,
636
+ 1,
637
+ ],
638
+ ],
639
+ ],
640
+ "type": "Polygon",
641
+ }
642
+ `);
643
+ expectTypeOf(objectWithRdp.geoCollectListDp).toEqualTypeOf();
644
+ expect(objectWithRdp.geoCollectListDp).toMatchInlineSnapshot(`
645
+ [
646
+ [
647
+ {
648
+ "coordinates": [
649
+ [
650
+ [
651
+ 1,
652
+ 1,
653
+ ],
654
+ [
655
+ 1,
656
+ 2,
657
+ ],
658
+ [
659
+ 2,
660
+ 2,
661
+ ],
662
+ [
663
+ 2,
664
+ 1,
665
+ ],
666
+ [
667
+ 1,
668
+ 1,
669
+ ],
670
+ ],
671
+ ],
672
+ "type": "Polygon",
673
+ },
674
+ ],
675
+ ]
676
+ `);
677
+
678
+ // Tests that we deserialize properly for fetchPage as well
679
+ const fetchPageTest = await client(objectTypeWithAllPropertyTypes).withProperties({
680
+ "attachmentSelectDp": base => base.pivotTo("linkedObjectType").selectProperty("attachment"),
681
+ "geoSelectDp": base => base.pivotTo("linkedObjectType").selectProperty("geoShape"),
682
+ "geoCollectListDp": base => base.pivotTo("linkedObjectType").aggregate("geoShapeArray:collectList")
683
+ }).where({
684
+ "id": {
685
+ "$eq": 5
686
+ }
687
+ }).fetchPage();
688
+ expect(fetchPageTest.data[0].attachmentSelectDp).toMatchInlineSnapshot(`
689
+ {
690
+ "fetchContents": [Function],
691
+ "fetchMetadata": [Function],
692
+ "rid": "ri.attachments.main.attachment.86016861-707f-4292-b258-6a7108915a75",
693
+ }
694
+ `);
653
695
  });
654
696
  });
697
+
698
+ // Can't run these tests because we can't load by primary key!
699
+ // describe.each(["fetchOne", "fetchOneWithErrors"] as const)("%s", (k) => {
700
+ // describe("strictNonNull: false", () => {
701
+ // describe("includeRid: true", () => {
702
+ // it("returns bad data", async () => {
703
+ // // Look at this
704
+ // const opts = {
705
+ // $__EXPERIMENTAL_strictNonNull: false,
706
+ // $includeRid: true,
707
+ // } as const;
708
+ // const result = k === "fetchOne"
709
+ // ? await client(Employee).fetchOne(50033, opts)
710
+ // : (await client(Employee).fetchOneWithErrors(50033, opts)).value!;
711
+
712
+ // expect(result).not.toBeUndefined();
713
+ // expectTypeOf(result).branded.toEqualTypeOf<
714
+ // Osdk<Employee, "$all" | "$notStrict" | "$rid">
715
+ // >();
716
+ // });
717
+ // });
718
+
719
+ // describe("includeRid: false", () => {
720
+ // it("returns bad data", async () => {
721
+ // const opts = {
722
+ // $__EXPERIMENTAL_strictNonNull: false,
723
+ // $includeRid: false,
724
+ // } as const;
725
+ // const result = k === "fetchOne"
726
+ // ? await client(Employee).fetchOne(50033, opts)
727
+ // : (await client(Employee).fetchOneWithErrors(50033, opts)).value!;
728
+
729
+ // expect(result).not.toBeUndefined();
730
+ // expectTypeOf(result).branded.toEqualTypeOf<
731
+ // Osdk<Employee, "$all" | "$notStrict">
732
+ // >();
733
+ // });
734
+ // });
735
+ // });
736
+ // });
737
+
655
738
  describe("conversions", () => {
656
739
  describe("strictNonNull: false", () => {
657
740
  it("returns bad data", async () => {
@@ -670,6 +753,7 @@ describe("ObjectSet", () => {
670
753
  expectTypeOf().toEqualTypeOf();
671
754
  expectTypeOf().toEqualTypeOf();
672
755
  expectTypeOf().toEqualTypeOf();
756
+ expectTypeOf().toEqualTypeOf();
673
757
 
674
758
  // We don't have a proper definition that has
675
759
  // a non-null property on an interface so