@osdk/client 2.2.0-beta.9 → 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 (385) hide show
  1. package/CHANGELOG.md +370 -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.map +1 -1
  14. package/build/browser/createMinimalClientHelper.js +25 -0
  15. package/build/browser/createMinimalClientHelper.js.map +1 -0
  16. package/build/browser/derivedProperties/createWithPropertiesObjectSet.js +36 -13
  17. package/build/browser/derivedProperties/createWithPropertiesObjectSet.js.map +1 -1
  18. package/build/browser/derivedProperties/createWithPropertiesObjectSet.test.js +133 -0
  19. package/build/browser/derivedProperties/createWithPropertiesObjectSet.test.js.map +1 -1
  20. package/build/browser/derivedProperties/derivedPropertyDefinitionFactory.js +93 -0
  21. package/build/browser/derivedProperties/derivedPropertyDefinitionFactory.js.map +1 -0
  22. package/build/browser/fetchMetadata.js +1 -1
  23. package/build/browser/fetchMetadata.js.map +1 -1
  24. package/build/browser/fetchMetadata.test.js +11 -9
  25. package/build/browser/fetchMetadata.test.js.map +1 -1
  26. package/build/browser/index.js +0 -1
  27. package/build/browser/index.js.map +1 -1
  28. package/build/{esm/util/isOsdkBaseObject.js → browser/intellisense.test.helpers/showsObjectPropertyJsdoc.js} +9 -4
  29. package/build/browser/intellisense.test.helpers/showsObjectPropertyJsdoc.js.map +1 -0
  30. package/build/browser/intellisense.test.js +17 -1
  31. package/build/browser/intellisense.test.js.map +1 -1
  32. package/build/browser/logger/BaseLogger.js +59 -0
  33. package/build/browser/logger/BaseLogger.js.map +1 -0
  34. package/build/browser/logger/BrowserLogger.js +67 -0
  35. package/build/browser/logger/BrowserLogger.js.map +1 -0
  36. package/build/browser/logger/MinimalLogger.js +39 -0
  37. package/build/browser/logger/MinimalLogger.js.map +1 -0
  38. package/build/browser/logger/MinimalLogger.test.js +60 -0
  39. package/build/browser/logger/MinimalLogger.test.js.map +1 -0
  40. package/build/browser/logger/TestLogger.js +56 -0
  41. package/build/browser/logger/TestLogger.js.map +1 -0
  42. package/build/browser/object/attachment.test.js +20 -7
  43. package/build/browser/object/attachment.test.js.map +1 -1
  44. package/build/browser/object/convertWireToOsdkObjects/BaseHolder.js.map +1 -1
  45. package/build/browser/object/convertWireToOsdkObjects/createOsdkInterface.js +4 -0
  46. package/build/browser/object/convertWireToOsdkObjects/createOsdkInterface.js.map +1 -1
  47. package/build/browser/object/convertWireToOsdkObjects/createOsdkObject.js +44 -33
  48. package/build/browser/object/convertWireToOsdkObjects/createOsdkObject.js.map +1 -1
  49. package/build/browser/object/convertWireToOsdkObjects/getDollarLink.js.map +1 -1
  50. package/build/browser/object/convertWireToOsdkObjects.js +4 -14
  51. package/build/browser/object/convertWireToOsdkObjects.js.map +1 -1
  52. package/build/browser/object/convertWireToOsdkObjects.test.js +39 -33
  53. package/build/browser/object/convertWireToOsdkObjects.test.js.map +1 -1
  54. package/build/browser/object/fetchPage.js +4 -3
  55. package/build/browser/object/fetchPage.js.map +1 -1
  56. package/build/browser/object/geotimeseriesreference.test.js +56 -134
  57. package/build/browser/object/geotimeseriesreference.test.js.map +1 -1
  58. package/build/browser/object/media.test.js +19 -14
  59. package/build/browser/object/media.test.js.map +1 -1
  60. package/build/browser/object/object.test.js +96 -89
  61. package/build/browser/object/object.test.js.map +1 -1
  62. package/build/browser/object/timeseries.test.js +119 -85
  63. package/build/browser/object/timeseries.test.js.map +1 -1
  64. package/build/browser/objectSet/InterfaceObjectSet.test.js +24 -20
  65. package/build/browser/objectSet/InterfaceObjectSet.test.js.map +1 -1
  66. package/build/browser/objectSet/ObjectSet.test.js +113 -19
  67. package/build/browser/objectSet/ObjectSet.test.js.map +1 -1
  68. package/build/browser/objectSet/ObjectSetListenerWebsocket.js +2 -2
  69. package/build/browser/objectSet/ObjectSetListenerWebsocket.js.map +1 -1
  70. package/build/browser/objectSet/ObjectSetListenerWebsocket.test.js +19 -12
  71. package/build/browser/objectSet/ObjectSetListenerWebsocket.test.js.map +1 -1
  72. package/build/browser/objectSet/createObjectSet.js +2 -1
  73. package/build/browser/objectSet/createObjectSet.js.map +1 -1
  74. package/build/browser/observable/internal/ActionApplication.js +4 -4
  75. package/build/browser/observable/internal/ActionApplication.js.map +1 -1
  76. package/build/browser/observable/internal/BulkObjectLoader.js +93 -0
  77. package/build/browser/observable/internal/BulkObjectLoader.js.map +1 -0
  78. package/build/browser/observable/internal/BulkObjectLoader.test.js +112 -0
  79. package/build/browser/observable/internal/BulkObjectLoader.test.js.map +1 -0
  80. package/build/browser/observable/internal/ListQuery.js +4 -1
  81. package/build/browser/observable/internal/ListQuery.js.map +1 -1
  82. package/build/browser/observable/internal/ObjectQuery.js +3 -6
  83. package/build/browser/observable/internal/ObjectQuery.js.map +1 -1
  84. package/build/browser/observable/internal/OptimisticJob.js +1 -1
  85. package/build/browser/observable/internal/OptimisticJob.js.map +1 -1
  86. package/build/browser/observable/internal/Query.js.map +1 -1
  87. package/build/browser/observable/internal/Store.js +2 -2
  88. package/build/browser/observable/internal/Store.js.map +1 -1
  89. package/build/browser/observable/internal/Store.test.js +215 -206
  90. package/build/browser/observable/internal/Store.test.js.map +1 -1
  91. package/build/browser/observable/internal/objectMatchesWhereClause.js +0 -2
  92. package/build/browser/observable/internal/objectMatchesWhereClause.js.map +1 -1
  93. package/build/browser/observable/internal/testUtils.js +4 -3
  94. package/build/browser/observable/internal/testUtils.js.map +1 -1
  95. package/build/browser/ontology/OntologyProvider.js.map +1 -1
  96. package/build/browser/ontology/StandardOntologyProvider.js +12 -5
  97. package/build/browser/ontology/StandardOntologyProvider.js.map +1 -1
  98. package/build/browser/ontology/StandardOntologyProvider.test.js +17 -16
  99. package/build/browser/ontology/StandardOntologyProvider.test.js.map +1 -1
  100. package/build/browser/ontology/loadFullObjectMetadata.js +0 -1
  101. package/build/browser/ontology/loadFullObjectMetadata.js.map +1 -1
  102. package/build/browser/ontology/loadQueryMetadata.js +5 -2
  103. package/build/browser/ontology/loadQueryMetadata.js.map +1 -1
  104. package/build/browser/public/internal.js +2 -0
  105. package/build/browser/public/internal.js.map +1 -1
  106. package/build/browser/public/unstable-do-not-use.js +1 -0
  107. package/build/browser/public/unstable-do-not-use.js.map +1 -1
  108. package/build/browser/public-utils/osdkConfig.js +49 -0
  109. package/build/browser/public-utils/osdkConfig.js.map +1 -0
  110. package/build/browser/{object/createObjectSpecifierFromPrimaryKey.js → public-utils/vite-env.d.ts} +2 -3
  111. package/build/browser/queries/applyQuery.js +6 -4
  112. package/build/browser/queries/applyQuery.js.map +1 -1
  113. package/build/browser/queries/queries.test.js +93 -27
  114. package/build/browser/queries/queries.test.js.map +1 -1
  115. package/build/browser/queries/types.js.map +1 -1
  116. package/build/browser/tsserver.js.map +1 -1
  117. package/build/browser/util/UserAgent.js +1 -1
  118. package/build/browser/util/extractRdpDefinition.js +140 -0
  119. package/build/browser/util/extractRdpDefinition.js.map +1 -0
  120. package/build/browser/util/extractRdpDefinition.test.js +233 -0
  121. package/build/browser/util/extractRdpDefinition.test.js.map +1 -0
  122. package/build/browser/util/{isOsdkBaseObject.js → isObjectSpecifiersObject.js} +2 -2
  123. package/build/browser/util/isObjectSpecifiersObject.js.map +1 -0
  124. package/build/browser/util/isPoint.js +20 -0
  125. package/build/browser/util/isPoint.js.map +1 -0
  126. package/build/browser/util/objectSpecifierUtils.js +48 -0
  127. package/build/browser/util/objectSpecifierUtils.js.map +1 -0
  128. package/build/browser/util/objectSpecifierUtils.test.js +42 -0
  129. package/build/browser/util/objectSpecifierUtils.test.js.map +1 -0
  130. package/build/browser/util/toDataValue.js +6 -2
  131. package/build/browser/util/toDataValue.js.map +1 -1
  132. package/build/browser/util/toDataValue.test.js +37 -16
  133. package/build/browser/util/toDataValue.test.js.map +1 -1
  134. package/build/browser/util/toDataValueQueries.js +4 -6
  135. package/build/browser/util/toDataValueQueries.js.map +1 -1
  136. package/build/cjs/{Client-DBTcM9gB.d.cts → Client-CgL2LKN9.d.cts} +6 -7
  137. package/build/cjs/{chunk-MCQVHD2F.cjs → chunk-FKI2LO2O.cjs} +232 -68
  138. package/build/cjs/chunk-FKI2LO2O.cjs.map +1 -0
  139. package/build/cjs/{chunk-EY52J5Z4.cjs → chunk-W5PFESFR.cjs} +163 -34
  140. package/build/cjs/chunk-W5PFESFR.cjs.map +1 -0
  141. package/build/cjs/index.cjs +188 -166
  142. package/build/cjs/index.cjs.map +1 -1
  143. package/build/cjs/index.d.cts +4 -24
  144. package/build/cjs/public/internal.cjs +61 -7
  145. package/build/cjs/public/internal.cjs.map +1 -1
  146. package/build/cjs/public/internal.d.cts +50 -3
  147. package/build/cjs/public/unstable-do-not-use.cjs +224 -103
  148. package/build/cjs/public/unstable-do-not-use.cjs.map +1 -1
  149. package/build/cjs/public/unstable-do-not-use.d.cts +12 -3
  150. package/build/esm/MinimalClientContext.js.map +1 -1
  151. package/build/esm/__unstable/ConjureSupport.js.map +1 -1
  152. package/build/esm/actions/ActionValidationError.js +1 -1
  153. package/build/esm/actions/ActionValidationError.js.map +1 -1
  154. package/build/esm/actions/actions.test.js +134 -89
  155. package/build/esm/actions/actions.test.js.map +1 -1
  156. package/build/esm/actions/applyAction.js.map +1 -1
  157. package/build/esm/createClient.js +5 -1
  158. package/build/esm/createClient.js.map +1 -1
  159. package/build/esm/createClient.test.js +14 -6
  160. package/build/esm/createClient.test.js.map +1 -1
  161. package/build/esm/createMinimalClient.js.map +1 -1
  162. package/build/esm/createMinimalClientHelper.js +25 -0
  163. package/build/esm/createMinimalClientHelper.js.map +1 -0
  164. package/build/esm/derivedProperties/createWithPropertiesObjectSet.js +36 -13
  165. package/build/esm/derivedProperties/createWithPropertiesObjectSet.js.map +1 -1
  166. package/build/esm/derivedProperties/createWithPropertiesObjectSet.test.js +133 -0
  167. package/build/esm/derivedProperties/createWithPropertiesObjectSet.test.js.map +1 -1
  168. package/build/esm/derivedProperties/derivedPropertyDefinitionFactory.js +93 -0
  169. package/build/esm/derivedProperties/derivedPropertyDefinitionFactory.js.map +1 -0
  170. package/build/esm/fetchMetadata.js +1 -1
  171. package/build/esm/fetchMetadata.js.map +1 -1
  172. package/build/esm/fetchMetadata.test.js +11 -9
  173. package/build/esm/fetchMetadata.test.js.map +1 -1
  174. package/build/esm/index.js +0 -1
  175. package/build/esm/index.js.map +1 -1
  176. package/build/esm/{util/isOsdkObject.js → intellisense.test.helpers/showsObjectPropertyJsdoc.js} +9 -4
  177. package/build/esm/intellisense.test.helpers/showsObjectPropertyJsdoc.js.map +1 -0
  178. package/build/esm/intellisense.test.js +17 -1
  179. package/build/esm/intellisense.test.js.map +1 -1
  180. package/build/esm/logger/BaseLogger.js +59 -0
  181. package/build/esm/logger/BaseLogger.js.map +1 -0
  182. package/build/esm/logger/BrowserLogger.js +67 -0
  183. package/build/esm/logger/BrowserLogger.js.map +1 -0
  184. package/build/esm/logger/MinimalLogger.js +39 -0
  185. package/build/esm/logger/MinimalLogger.js.map +1 -0
  186. package/build/esm/logger/MinimalLogger.test.js +60 -0
  187. package/build/esm/logger/MinimalLogger.test.js.map +1 -0
  188. package/build/esm/logger/TestLogger.js +56 -0
  189. package/build/esm/logger/TestLogger.js.map +1 -0
  190. package/build/esm/object/attachment.test.js +20 -7
  191. package/build/esm/object/attachment.test.js.map +1 -1
  192. package/build/esm/object/convertWireToOsdkObjects/BaseHolder.js.map +1 -1
  193. package/build/esm/object/convertWireToOsdkObjects/createOsdkInterface.js +4 -0
  194. package/build/esm/object/convertWireToOsdkObjects/createOsdkInterface.js.map +1 -1
  195. package/build/esm/object/convertWireToOsdkObjects/createOsdkObject.js +44 -33
  196. package/build/esm/object/convertWireToOsdkObjects/createOsdkObject.js.map +1 -1
  197. package/build/esm/object/convertWireToOsdkObjects/getDollarLink.js.map +1 -1
  198. package/build/esm/object/convertWireToOsdkObjects.js +4 -14
  199. package/build/esm/object/convertWireToOsdkObjects.js.map +1 -1
  200. package/build/esm/object/convertWireToOsdkObjects.test.js +39 -33
  201. package/build/esm/object/convertWireToOsdkObjects.test.js.map +1 -1
  202. package/build/esm/object/fetchPage.js +4 -3
  203. package/build/esm/object/fetchPage.js.map +1 -1
  204. package/build/esm/object/geotimeseriesreference.test.js +56 -134
  205. package/build/esm/object/geotimeseriesreference.test.js.map +1 -1
  206. package/build/esm/object/media.test.js +19 -14
  207. package/build/esm/object/media.test.js.map +1 -1
  208. package/build/esm/object/object.test.js +96 -89
  209. package/build/esm/object/object.test.js.map +1 -1
  210. package/build/esm/object/timeseries.test.js +119 -85
  211. package/build/esm/object/timeseries.test.js.map +1 -1
  212. package/build/esm/objectSet/InterfaceObjectSet.test.js +24 -20
  213. package/build/esm/objectSet/InterfaceObjectSet.test.js.map +1 -1
  214. package/build/esm/objectSet/ObjectSet.test.js +113 -19
  215. package/build/esm/objectSet/ObjectSet.test.js.map +1 -1
  216. package/build/esm/objectSet/ObjectSetListenerWebsocket.js +2 -2
  217. package/build/esm/objectSet/ObjectSetListenerWebsocket.js.map +1 -1
  218. package/build/esm/objectSet/ObjectSetListenerWebsocket.test.js +19 -12
  219. package/build/esm/objectSet/ObjectSetListenerWebsocket.test.js.map +1 -1
  220. package/build/esm/objectSet/createObjectSet.js +2 -1
  221. package/build/esm/objectSet/createObjectSet.js.map +1 -1
  222. package/build/esm/observable/internal/ActionApplication.js +4 -4
  223. package/build/esm/observable/internal/ActionApplication.js.map +1 -1
  224. package/build/esm/observable/internal/BulkObjectLoader.js +93 -0
  225. package/build/esm/observable/internal/BulkObjectLoader.js.map +1 -0
  226. package/build/esm/observable/internal/BulkObjectLoader.test.js +112 -0
  227. package/build/esm/observable/internal/BulkObjectLoader.test.js.map +1 -0
  228. package/build/esm/observable/internal/ListQuery.js +4 -1
  229. package/build/esm/observable/internal/ListQuery.js.map +1 -1
  230. package/build/esm/observable/internal/ObjectQuery.js +3 -6
  231. package/build/esm/observable/internal/ObjectQuery.js.map +1 -1
  232. package/build/esm/observable/internal/OptimisticJob.js +1 -1
  233. package/build/esm/observable/internal/OptimisticJob.js.map +1 -1
  234. package/build/esm/observable/internal/Query.js.map +1 -1
  235. package/build/esm/observable/internal/Store.js +2 -2
  236. package/build/esm/observable/internal/Store.js.map +1 -1
  237. package/build/esm/observable/internal/Store.test.js +215 -206
  238. package/build/esm/observable/internal/Store.test.js.map +1 -1
  239. package/build/esm/observable/internal/objectMatchesWhereClause.js +0 -2
  240. package/build/esm/observable/internal/objectMatchesWhereClause.js.map +1 -1
  241. package/build/esm/observable/internal/testUtils.js +4 -3
  242. package/build/esm/observable/internal/testUtils.js.map +1 -1
  243. package/build/esm/ontology/OntologyProvider.js.map +1 -1
  244. package/build/esm/ontology/StandardOntologyProvider.js +12 -5
  245. package/build/esm/ontology/StandardOntologyProvider.js.map +1 -1
  246. package/build/esm/ontology/StandardOntologyProvider.test.js +17 -16
  247. package/build/esm/ontology/StandardOntologyProvider.test.js.map +1 -1
  248. package/build/esm/ontology/loadFullObjectMetadata.js +0 -1
  249. package/build/esm/ontology/loadFullObjectMetadata.js.map +1 -1
  250. package/build/esm/ontology/loadQueryMetadata.js +5 -2
  251. package/build/esm/ontology/loadQueryMetadata.js.map +1 -1
  252. package/build/esm/public/internal.js +2 -0
  253. package/build/esm/public/internal.js.map +1 -1
  254. package/build/esm/public/unstable-do-not-use.js +1 -0
  255. package/build/esm/public/unstable-do-not-use.js.map +1 -1
  256. package/build/esm/public-utils/osdkConfig.js +49 -0
  257. package/build/esm/public-utils/osdkConfig.js.map +1 -0
  258. package/build/esm/{object/createObjectSpecifierFromPrimaryKey.js → public-utils/vite-env.d.ts} +2 -3
  259. package/build/esm/queries/applyQuery.js +6 -4
  260. package/build/esm/queries/applyQuery.js.map +1 -1
  261. package/build/esm/queries/queries.test.js +93 -27
  262. package/build/esm/queries/queries.test.js.map +1 -1
  263. package/build/esm/queries/types.js.map +1 -1
  264. package/build/esm/tsserver.js.map +1 -1
  265. package/build/esm/util/UserAgent.js +1 -1
  266. package/build/esm/util/extractRdpDefinition.js +140 -0
  267. package/build/esm/util/extractRdpDefinition.js.map +1 -0
  268. package/build/esm/util/extractRdpDefinition.test.js +233 -0
  269. package/build/esm/util/extractRdpDefinition.test.js.map +1 -0
  270. package/build/{browser/util/isOsdkObject.js → esm/util/isObjectSpecifiersObject.js} +2 -2
  271. package/build/esm/util/isObjectSpecifiersObject.js.map +1 -0
  272. package/build/esm/util/isPoint.js +20 -0
  273. package/build/esm/util/isPoint.js.map +1 -0
  274. package/build/esm/util/objectSpecifierUtils.js +48 -0
  275. package/build/esm/util/objectSpecifierUtils.js.map +1 -0
  276. package/build/esm/util/objectSpecifierUtils.test.js +42 -0
  277. package/build/esm/util/objectSpecifierUtils.test.js.map +1 -0
  278. package/build/esm/util/toDataValue.js +6 -2
  279. package/build/esm/util/toDataValue.js.map +1 -1
  280. package/build/esm/util/toDataValue.test.js +37 -16
  281. package/build/esm/util/toDataValue.test.js.map +1 -1
  282. package/build/esm/util/toDataValueQueries.js +4 -6
  283. package/build/esm/util/toDataValueQueries.js.map +1 -1
  284. package/build/types/MinimalClientContext.d.ts +1 -1
  285. package/build/types/MinimalClientContext.d.ts.map +1 -1
  286. package/build/types/__unstable/ConjureSupport.d.ts +2 -2
  287. package/build/types/actions/applyAction.d.ts +1 -2
  288. package/build/types/actions/applyAction.d.ts.map +1 -1
  289. package/build/types/createClient.d.ts +1 -1
  290. package/build/types/createClient.d.ts.map +1 -1
  291. package/build/types/createClient.test.d.ts +2 -1
  292. package/build/types/createClient.test.d.ts.map +1 -1
  293. package/build/types/createMinimalClientHelper.d.ts +1 -0
  294. package/build/types/createMinimalClientHelper.d.ts.map +1 -0
  295. package/build/types/derivedProperties/derivedPropertyDefinitionFactory.d.ts +1 -0
  296. package/build/types/derivedProperties/derivedPropertyDefinitionFactory.d.ts.map +1 -0
  297. package/build/types/index.d.ts +4 -6
  298. package/build/types/index.d.ts.map +1 -1
  299. package/build/types/intellisense.test.helpers/showsObjectPropertyJsdoc.d.ts +1 -0
  300. package/build/types/intellisense.test.helpers/showsObjectPropertyJsdoc.d.ts.map +1 -0
  301. package/build/types/logger/BaseLogger.d.ts +33 -0
  302. package/build/types/logger/BaseLogger.d.ts.map +1 -0
  303. package/build/types/logger/BrowserLogger.d.ts +9 -0
  304. package/build/types/logger/BrowserLogger.d.ts.map +1 -0
  305. package/build/types/logger/MinimalLogger.d.ts +9 -0
  306. package/build/types/logger/MinimalLogger.d.ts.map +1 -0
  307. package/build/types/logger/MinimalLogger.test.d.ts +1 -0
  308. package/build/types/logger/MinimalLogger.test.d.ts.map +1 -0
  309. package/build/types/logger/TestLogger.d.ts +14 -0
  310. package/build/types/logger/TestLogger.d.ts.map +1 -0
  311. package/build/types/object/convertWireToOsdkObjects.d.ts +4 -4
  312. package/build/types/object/convertWireToOsdkObjects.d.ts.map +1 -1
  313. package/build/types/object/fetchPage.d.ts.map +1 -1
  314. package/build/types/object/object.test.d.ts.map +1 -1
  315. package/build/types/objectSet/ObjectSet.test.d.ts.map +1 -1
  316. package/build/types/observable/internal/ActionApplication.d.ts +2 -2
  317. package/build/types/observable/internal/ActionApplication.d.ts.map +1 -1
  318. package/build/types/observable/internal/BulkObjectLoader.d.ts +8 -0
  319. package/build/types/observable/internal/BulkObjectLoader.d.ts.map +1 -0
  320. package/build/types/observable/internal/BulkObjectLoader.test.d.ts +1 -0
  321. package/build/types/observable/internal/BulkObjectLoader.test.d.ts.map +1 -0
  322. package/build/types/observable/internal/ListQuery.d.ts.map +1 -1
  323. package/build/types/observable/internal/ObjectQuery.d.ts.map +1 -1
  324. package/build/types/observable/internal/OptimisticJob.d.ts.map +1 -1
  325. package/build/types/observable/internal/Query.d.ts +2 -2
  326. package/build/types/observable/internal/Query.d.ts.map +1 -1
  327. package/build/types/observable/internal/Store.d.ts +2 -2
  328. package/build/types/observable/internal/Store.d.ts.map +1 -1
  329. package/build/types/observable/internal/testUtils.d.ts +1 -2
  330. package/build/types/observable/internal/testUtils.d.ts.map +1 -1
  331. package/build/types/ontology/OntologyProvider.d.ts +1 -1
  332. package/build/types/ontology/OntologyProvider.d.ts.map +1 -1
  333. package/build/types/ontology/loadQueryMetadata.d.ts +1 -1
  334. package/build/types/ontology/loadQueryMetadata.d.ts.map +1 -1
  335. package/build/types/public/internal.d.ts +2 -0
  336. package/build/types/public/internal.d.ts.map +1 -1
  337. package/build/types/public/unstable-do-not-use.d.ts +4 -2
  338. package/build/types/public/unstable-do-not-use.d.ts.map +1 -1
  339. package/build/types/public-utils/osdkConfig.d.ts +8 -0
  340. package/build/types/public-utils/osdkConfig.d.ts.map +1 -0
  341. package/build/types/public-utils/vite-env.d.d.ts +3 -0
  342. package/build/types/public-utils/vite-env.d.d.ts.map +1 -0
  343. package/build/types/queries/applyQuery.d.ts +2 -2
  344. package/build/types/queries/applyQuery.d.ts.map +1 -1
  345. package/build/types/queries/types.d.ts +1 -1
  346. package/build/types/queries/types.d.ts.map +1 -1
  347. package/build/types/tsserver.d.ts +1 -1
  348. package/build/types/tsserver.d.ts.map +1 -1
  349. package/build/types/util/extractRdpDefinition.d.ts +4 -0
  350. package/build/types/util/extractRdpDefinition.d.ts.map +1 -0
  351. package/build/types/util/extractRdpDefinition.test.d.ts +1 -0
  352. package/build/types/util/extractRdpDefinition.test.d.ts.map +1 -0
  353. package/build/types/util/isObjectSpecifiersObject.d.ts +5 -0
  354. package/build/types/util/isObjectSpecifiersObject.d.ts.map +1 -0
  355. package/build/types/util/isPoint.d.ts +1 -0
  356. package/build/types/util/isPoint.d.ts.map +1 -0
  357. package/build/types/util/objectSpecifierUtils.d.ts +24 -0
  358. package/build/types/util/objectSpecifierUtils.d.ts.map +1 -0
  359. package/build/types/util/objectSpecifierUtils.test.d.ts +1 -0
  360. package/build/types/util/objectSpecifierUtils.test.d.ts.map +1 -0
  361. package/package.json +19 -18
  362. package/build/browser/Logger.js +0 -2
  363. package/build/browser/Logger.js.map +0 -1
  364. package/build/browser/object/createObjectSpecifierFromPrimaryKey.js.map +0 -1
  365. package/build/browser/util/isOsdkBaseObject.js.map +0 -1
  366. package/build/browser/util/isOsdkObject.js.map +0 -1
  367. package/build/cjs/chunk-EY52J5Z4.cjs.map +0 -1
  368. package/build/cjs/chunk-MCQVHD2F.cjs.map +0 -1
  369. package/build/cjs/chunk-Q7SFCCGT.cjs +0 -11
  370. package/build/cjs/chunk-Q7SFCCGT.cjs.map +0 -1
  371. package/build/cjs/graphql-RGM5SRWV.cjs +0 -10532
  372. package/build/cjs/graphql-RGM5SRWV.cjs.map +0 -1
  373. package/build/esm/Logger.js +0 -2
  374. package/build/esm/Logger.js.map +0 -1
  375. package/build/esm/object/createObjectSpecifierFromPrimaryKey.js.map +0 -1
  376. package/build/esm/util/isOsdkBaseObject.js.map +0 -1
  377. package/build/esm/util/isOsdkObject.js.map +0 -1
  378. package/build/types/Logger.d.ts +0 -17
  379. package/build/types/Logger.d.ts.map +0 -1
  380. package/build/types/object/createObjectSpecifierFromPrimaryKey.d.ts +0 -2
  381. package/build/types/object/createObjectSpecifierFromPrimaryKey.d.ts.map +0 -1
  382. package/build/types/util/isOsdkBaseObject.d.ts +0 -2
  383. package/build/types/util/isOsdkBaseObject.d.ts.map +0 -1
  384. package/build/types/util/isOsdkObject.d.ts +0 -2
  385. package/build/types/util/isOsdkObject.d.ts.map +0 -1
@@ -14,9 +14,9 @@
14
14
  * limitations under the License.
15
15
  */
16
16
 
17
- import { $Objects, $ontologyRid, Employee } from "@osdk/client.test.ontology";
18
- import { apiServer, stubData, withoutRid } from "@osdk/shared.test";
19
- import { afterAll, beforeAll, describe, expect, expectTypeOf, it } from "vitest";
17
+ import { $Objects, Employee, FooInterface } from "@osdk/client.test.ontology";
18
+ import { LegacyFauxFoundry, startNodeApiServer, stubData, withoutRid } from "@osdk/shared.test";
19
+ import { beforeAll, describe, expect, expectTypeOf, it } from "vitest";
20
20
  import { additionalContext } from "../Client.js";
21
21
  import { createClient } from "../createClient.js";
22
22
  import { InterfaceDefinitions } from "../ontology/OntologyProvider.js";
@@ -34,16 +34,17 @@ function asV2Object(o, includeRid) {
34
34
  delete o.__title;
35
35
  return o;
36
36
  }
37
- describe("OsdkObject", () => {
37
+ describe.each(["https://stack.palantir.com", "https://stack.palantirCustom.com/foo/first/someStuff"])("OsdkObject for %s", baseUrl => {
38
38
  let client;
39
- let customEntryPointClient;
40
39
  beforeAll(async () => {
41
- apiServer.listen();
42
- client = createClient("https://stack.palantir.com", $ontologyRid, async () => "myAccessToken");
43
- customEntryPointClient = createClient("https://stack.palantirCustom.com/foo/first/someStuff", $ontologyRid, async () => "myAccessToken");
44
- });
45
- afterAll(() => {
46
- apiServer.close();
40
+ let apiServer;
41
+ ({
42
+ client,
43
+ apiServer
44
+ } = startNodeApiServer(new LegacyFauxFoundry(baseUrl), createClient));
45
+ return () => {
46
+ apiServer.close();
47
+ };
47
48
  });
48
49
  describe("link", () => {
49
50
  it("loads an employee", async () => {
@@ -71,7 +72,7 @@ describe("OsdkObject", () => {
71
72
  expect(Object.keys(employee.$link.lead)).toBeDefined();
72
73
  });
73
74
  it("loads an employee with custom client", async () => {
74
- const result = await customEntryPointClient(Employee).where({
75
+ const result = await client(Employee).where({
75
76
  employeeId: stubData.employee1.employeeId
76
77
  }).fetchPage();
77
78
 
@@ -221,25 +222,23 @@ describe("OsdkObject", () => {
221
222
  });
222
223
  const mergedEmployee = employee.$clone(updatedEmployee);
223
224
  expectTypeOf(mergedEmployee).toEqualTypeOf(employee);
224
- expect(mergedEmployee).toMatchInlineSnapshot(`
225
- {
226
- "$apiName": "Employee",
227
- "$objectSpecifier": "Employee:50031",
228
- "$objectType": "Employee",
229
- "$primaryKey": 50031,
230
- "$title": "Jane Doe",
231
- "class": "Red",
232
- "employeeId": 50031,
233
- "employeeLocation": GeotimeSeriesPropertyImpl {
234
- "lastFetchedValue": undefined,
235
- },
236
- "employeeSensor": TimeSeriesPropertyImpl {},
237
- "employeeStatus": TimeSeriesPropertyImpl {},
238
- "fullName": "Jane Doe",
239
- "office": "NYC",
240
- "startDate": "2012-02-12",
241
- }
242
- `);
225
+ expect(mergedEmployee).toMatchObject({
226
+ "$apiName": "Employee",
227
+ "$objectSpecifier": "Employee:50031",
228
+ "$objectType": "Employee",
229
+ "$primaryKey": 50031,
230
+ "$title": "Jane Doe",
231
+ "class": "Red",
232
+ "employeeId": 50031,
233
+ "employeeLocation": {
234
+ "lastFetchedValue": undefined
235
+ },
236
+ "employeeSensor": {},
237
+ "employeeStatus": {},
238
+ "fullName": "Jane Doe",
239
+ "office": "NYC",
240
+ "startDate": "2012-02-12"
241
+ });
243
242
  });
244
243
  it("correctly scopes up with another OSDK object", async () => {
245
244
  expectTypeOf({
@@ -259,25 +258,23 @@ describe("OsdkObject", () => {
259
258
  "office": "SEA",
260
259
  "startDate": "2019-01-01"
261
260
  });
262
- expect(mergedEmployee).toMatchInlineSnapshot(`
263
- {
264
- "$apiName": "Employee",
265
- "$objectSpecifier": "Employee:50031",
266
- "$objectType": "Employee",
267
- "$primaryKey": 50031,
268
- "$title": "John Doe",
269
- "class": "Green",
270
- "employeeId": 50031,
271
- "employeeLocation": GeotimeSeriesPropertyImpl {
272
- "lastFetchedValue": undefined,
273
- },
274
- "employeeSensor": TimeSeriesPropertyImpl {},
275
- "employeeStatus": TimeSeriesPropertyImpl {},
276
- "fullName": "John Doe",
277
- "office": "SEA",
278
- "startDate": "2019-01-01",
279
- }
280
- `);
261
+ expect(mergedEmployee).toMatchObject({
262
+ "$apiName": "Employee",
263
+ "$objectSpecifier": "Employee:50031",
264
+ "$objectType": "Employee",
265
+ "$primaryKey": 50031,
266
+ "$title": "John Doe",
267
+ "class": "Green",
268
+ "employeeId": 50031,
269
+ "employeeLocation": {
270
+ "lastFetchedValue": undefined
271
+ },
272
+ "employeeSensor": {},
273
+ "employeeStatus": {},
274
+ "fullName": "John Doe",
275
+ "office": "SEA",
276
+ "startDate": "2019-01-01"
277
+ });
281
278
  });
282
279
  it("correctly scopes up with a record", async () => {
283
280
  expectTypeOf({
@@ -294,25 +291,23 @@ describe("OsdkObject", () => {
294
291
  const mergedEmployee = employee.$clone({
295
292
  "fullName": "Brad Pitt"
296
293
  });
297
- expect(mergedEmployee).toMatchInlineSnapshot(`
298
- {
299
- "$apiName": "Employee",
300
- "$objectSpecifier": "Employee:50031",
301
- "$objectType": "Employee",
302
- "$primaryKey": 50031,
303
- "$title": "Brad Pitt",
304
- "class": "Blue",
305
- "employeeId": 50031,
306
- "employeeLocation": GeotimeSeriesPropertyImpl {
307
- "lastFetchedValue": undefined,
308
- },
309
- "employeeSensor": TimeSeriesPropertyImpl {},
310
- "employeeStatus": TimeSeriesPropertyImpl {},
311
- "fullName": "Brad Pitt",
312
- "office": "SEA",
313
- "startDate": "2012-02-12",
314
- }
315
- `);
294
+ expect(mergedEmployee).toMatchObject({
295
+ "$apiName": "Employee",
296
+ "$objectSpecifier": "Employee:50031",
297
+ "$objectType": "Employee",
298
+ "$primaryKey": 50031,
299
+ "$title": "Brad Pitt",
300
+ "class": "Blue",
301
+ "employeeId": 50031,
302
+ "employeeLocation": {
303
+ "lastFetchedValue": undefined
304
+ },
305
+ "employeeSensor": {},
306
+ "employeeStatus": {},
307
+ "fullName": "Brad Pitt",
308
+ "office": "SEA",
309
+ "startDate": "2012-02-12"
310
+ });
316
311
  });
317
312
  it("is able to clone with nothing passed in", async () => {
318
313
  expect(employee.$clone()).toMatchObject({
@@ -403,25 +398,23 @@ describe("OsdkObject", () => {
403
398
  const clonedInterface = personInterfaceObject.$clone({
404
399
  "fooSpt": "John Adams"
405
400
  });
406
- expect(clonedInterface).toMatchInlineSnapshot(`
407
- {
408
- "$apiName": "FooInterface",
409
- "$objectType": "Employee",
410
- "$primaryKey": 50031,
411
- "$title": "John Adams",
412
- "fooSpt": "John Adams",
413
- }
414
- `);
415
- expect(clonedInterface.$as("Employee")).toMatchInlineSnapshot(`
416
- {
417
- "$apiName": "Employee",
418
- "$objectType": "Employee",
419
- "$primaryKey": 50031,
420
- "$title": "John Adams",
421
- "employeeId": 50031,
422
- "fullName": "John Adams",
423
- }
424
- `);
401
+ expect(clonedInterface).toMatchObject({
402
+ "$apiName": "FooInterface",
403
+ "$objectSpecifier": "Employee:50031",
404
+ "$objectType": "Employee",
405
+ "$primaryKey": 50031,
406
+ "$title": "John Adams",
407
+ "fooSpt": "John Adams"
408
+ });
409
+ expect(clonedInterface.$as("Employee")).toMatchObject({
410
+ "$apiName": "Employee",
411
+ "$objectSpecifier": "Employee:50031",
412
+ "$objectType": "Employee",
413
+ "$primaryKey": 50031,
414
+ "$title": "John Adams",
415
+ "employeeId": 50031,
416
+ "fullName": "John Adams"
417
+ });
425
418
  });
426
419
  it("Throws if updating an interface with a property not implemented by the underlying object type", () => {
427
420
  const employeeOsdkObject = createOsdkObject(client[additionalContext], EmployeeFetchedMetadata, {
@@ -435,10 +428,24 @@ describe("OsdkObject", () => {
435
428
  const loadedInterfaceObject = employeeOsdkObject.$as(interfaceDef);
436
429
  expect(() => loadedInterfaceObject.$clone({
437
430
  "notImplementedFooSpt": "John Adams"
438
- })).toThrowErrorMatchingInlineSnapshot(`[Error: Cannot clone interface with notImplementedFooSpt as property is not implemented by the underlying object type Employee]`);
431
+ })).toThrowError(`Cannot clone interface with notImplementedFooSpt as property is not implemented by the underlying object type Employee`);
439
432
  });
440
433
  });
441
434
  });
435
+ describe("objectSpecifier", () => {
436
+ it("returns the object specifier for a loaded object", async () => {
437
+ const result = await client(Employee).where({
438
+ employeeId: stubData.employee1.employeeId
439
+ }).fetchPage();
440
+ const employee = result.data[0];
441
+ expect(employee.$objectSpecifier).toBe("Employee:50030");
442
+ });
443
+ it("returns the object specifier for a loaded interface object", async () => {
444
+ const result = await client(FooInterface).fetchPage();
445
+ const object = result.data[0];
446
+ expect(object.$objectSpecifier).toBe("Employee:50030");
447
+ });
448
+ });
442
449
  });
443
450
  export async function shouldError(client) {
444
451
  // @ts-expect-error
@@ -1 +1 @@
1
- {"version":3,"file":"object.test.js","names":["$Objects","$ontologyRid","Employee","apiServer","stubData","withoutRid","afterAll","beforeAll","describe","expect","expectTypeOf","it","additionalContext","createClient","InterfaceDefinitions","createOsdkObject","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","updatedEmployee","mergedEmployee","$clone","toEqualTypeOf","toMatchInlineSnapshot","toMatchTypeOf","toThrow","interfaceDef","apiName","displayName","links","properties","type","rid","implements","fooInterfaceOsdkDef","EmployeeFetchedMetadata","interfaceMap","inverseInterfaceMap","def","titleProperty","pluralDisplayName","status","employeeOsdkObject","personInterfaceObject","$as","clonedInterface","loadedInterfaceObject","toThrowErrorMatchingInlineSnapshot","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.ts"],"sourcesContent":["/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport type {\n InterfaceDefinition,\n InterfaceMetadata,\n Osdk,\n PropertyKeys,\n} from \"@osdk/api\";\nimport { $Objects, $ontologyRid, Employee } from \"@osdk/client.test.ontology\";\nimport { apiServer, stubData, withoutRid } from \"@osdk/shared.test\";\nimport {\n afterAll,\n beforeAll,\n describe,\n expect,\n expectTypeOf,\n it,\n} from \"vitest\";\nimport { additionalContext, type Client } from \"../Client.js\";\nimport { createClient } from \"../createClient.js\";\nimport type {\n FetchedObjectTypeDefinition,\n} from \"../ontology/OntologyProvider.js\";\nimport { InterfaceDefinitions } from \"../ontology/OntologyProvider.js\";\nimport { createOsdkObject } from \"./convertWireToOsdkObjects/createOsdkObject.js\";\n\nfunction asV2Object(o: any, includeRid?: boolean) {\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}\n\ndescribe(\"OsdkObject\", () => {\n let client: Client;\n let customEntryPointClient: Client;\n\n beforeAll(async () => {\n apiServer.listen();\n client = createClient(\n \"https://stack.palantir.com\",\n $ontologyRid,\n async () => \"myAccessToken\",\n );\n customEntryPointClient = createClient(\n \"https://stack.palantirCustom.com/foo/first/someStuff\",\n $ontologyRid,\n async () => \"myAccessToken\",\n );\n });\n\n afterAll(() => {\n apiServer.close();\n });\n describe(\"link\", () => {\n it(\"loads an employee\", async () => {\n const result = await client(Employee).where({\n employeeId: stubData.employee1.employeeId,\n }).fetchPage();\n\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\n employee.startDate;\n\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\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\n employee.startDate;\n\n // it should have the prototype that we assign at hydration time\n expect(Object.keys(employee.$link.lead)).toBeDefined();\n });\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\n const lead = await employee.$link.lead.fetchOne({\n $select: [\"employeeId\"],\n });\n expect(lead.employeeId).toBe(stubData.employee2.employeeId);\n\n // ensure that the select was performed\n expect(lead.employeeId).toBeDefined();\n expect((lead as any).employeeStatus).toBeUndefined();\n });\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\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\n // ensure that the select was performed\n expect(peepsResult.data[0]!.employeeId).toBeDefined();\n expect((peepsResult.data[0] as any).office).toBeUndefined();\n });\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\n const peep = await lead.$link.peeps.fetchOne(\n stubData.employee1.employeeId,\n {\n $select: [\"employeeId\"],\n },\n );\n expect(peep).toBeDefined();\n\n // ensure that select worked\n expect(peep.employeeId).toBeDefined();\n expect((peep as any).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 {\n $includeRid: true,\n },\n );\n const leadRid = result.data[0].$rid;\n expect(leadRid).toBeDefined();\n expect(leadRid).toBe(\n \"ri.phonograph2-objects.main.object.88a6fccb-f333-46d6-a07e-7725c5f18b61\",\n );\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 describe(\"clone\", () => {\n let employee: Osdk.Instance<\n $Objects.Employee,\n never,\n PropertyKeys<$Objects.Employee>\n >;\n beforeAll(async () => {\n employee = (await client(Employee).where({\n employeeId: stubData.employee2.employeeId,\n }).fetchPage()).data[0];\n\n expect(employee).toMatchObject({\n \"$apiName\": \"Employee\",\n \"$objectType\": \"Employee\",\n \"$primaryKey\": 50031,\n \"$title\": \"Jane Doe\",\n \"class\": \"Blue\",\n \"employeeId\": 50031,\n \"fullName\": \"Jane Doe\",\n \"office\": \"SEA\",\n \"startDate\": \"2012-02-12\",\n });\n });\n\n it(\"clones and updates an object with another osdk object\", async () => {\n const updatedEmployee = createOsdkObject(\n client[additionalContext],\n {\n \"apiName\": \"Employee\",\n \"primaryKeyType\": \"integer\",\n \"primaryKeyApiName\": \"employeeId\",\n \"properties\": {\n \"class\": { \"type\": \"string\" },\n \"employeeId\": { \"type\": \"integer\" },\n \"fullName\": { \"type\": \"string\" },\n \"office\": { \"type\": \"string\" },\n },\n } as any,\n {\n \"$apiName\": \"Employee\",\n \"$objectType\": \"Employee\",\n \"$primaryKey\": 50031,\n \"$title\": \"Jane Doe\",\n \"class\": \"Red\",\n \"employeeId\": 50031,\n \"fullName\": \"Jane Doe\",\n \"office\": \"NYC\",\n },\n ) as unknown as Osdk.Instance<\n Employee,\n never,\n \"class\" | \"employeeId\" | \"fullName\" | \"office\"\n >;\n\n const mergedEmployee = employee.$clone(updatedEmployee);\n\n expectTypeOf(mergedEmployee).toEqualTypeOf(employee);\n\n expect(mergedEmployee).toMatchInlineSnapshot(`\n {\n \"$apiName\": \"Employee\",\n \"$objectSpecifier\": \"Employee:50031\",\n \"$objectType\": \"Employee\",\n \"$primaryKey\": 50031,\n \"$title\": \"Jane Doe\",\n \"class\": \"Red\",\n \"employeeId\": 50031,\n \"employeeLocation\": GeotimeSeriesPropertyImpl {\n \"lastFetchedValue\": undefined,\n },\n \"employeeSensor\": TimeSeriesPropertyImpl {},\n \"employeeStatus\": TimeSeriesPropertyImpl {},\n \"fullName\": \"Jane Doe\",\n \"office\": \"NYC\",\n \"startDate\": \"2012-02-12\",\n }\n `);\n });\n\n it(\"correctly scopes up with another OSDK object\", async () => {\n const firstEmployee = { $clone: () => {} } as unknown as Osdk.Instance<\n Employee,\n never,\n \"class\"\n >;\n expectTypeOf(firstEmployee.$clone(employee)).toMatchTypeOf<\n Osdk.Instance<\n Employee,\n never,\n PropertyKeys<Employee>\n >\n >();\n });\n\n it(\"Correctly preserves keys from original and new with distinct property key sets\", async () => {\n const firstEmployee = { $clone: () => {} } as unknown as Osdk.Instance<\n Employee,\n never,\n \"class\"\n >;\n expectTypeOf(\n firstEmployee.$clone({} as Osdk.Instance<Employee, never, \"office\">),\n ).toMatchTypeOf<\n Osdk.Instance<\n Employee,\n never,\n \"class\" | \"office\"\n >\n >();\n });\n\n it(\"clones and updates an object with a record\", async () => {\n const mergedEmployee = employee.$clone({\n \"class\": \"Green\",\n \"employeeId\": 50031,\n \"fullName\": \"John Doe\",\n \"office\": \"SEA\",\n \"startDate\": \"2019-01-01\",\n });\n\n expect(mergedEmployee).toMatchInlineSnapshot(`\n {\n \"$apiName\": \"Employee\",\n \"$objectSpecifier\": \"Employee:50031\",\n \"$objectType\": \"Employee\",\n \"$primaryKey\": 50031,\n \"$title\": \"John Doe\",\n \"class\": \"Green\",\n \"employeeId\": 50031,\n \"employeeLocation\": GeotimeSeriesPropertyImpl {\n \"lastFetchedValue\": undefined,\n },\n \"employeeSensor\": TimeSeriesPropertyImpl {},\n \"employeeStatus\": TimeSeriesPropertyImpl {},\n \"fullName\": \"John Doe\",\n \"office\": \"SEA\",\n \"startDate\": \"2019-01-01\",\n }\n `);\n });\n\n it(\"correctly scopes up with a record\", async () => {\n const firstEmployee = { $clone: () => {} } as unknown as Osdk.Instance<\n Employee,\n never,\n \"class\"\n >;\n expectTypeOf(firstEmployee.$clone({\n \"class\": \"Green\",\n \"employeeId\": 50031,\n \"fullName\": \"John Doe\",\n \"office\": \"SEA\",\n \"startDate\": \"2019-01-01\",\n })).toMatchTypeOf<\n Osdk.Instance<\n Employee,\n never,\n \"class\" | \"employeeId\" | \"fullName\" | \"office\" | \"startDate\"\n >\n >();\n });\n\n it(\"correctly sets title\", async () => {\n const mergedEmployee = employee.$clone({\n \"fullName\": \"Brad Pitt\",\n });\n\n expect(mergedEmployee).toMatchInlineSnapshot(`\n {\n \"$apiName\": \"Employee\",\n \"$objectSpecifier\": \"Employee:50031\",\n \"$objectType\": \"Employee\",\n \"$primaryKey\": 50031,\n \"$title\": \"Brad Pitt\",\n \"class\": \"Blue\",\n \"employeeId\": 50031,\n \"employeeLocation\": GeotimeSeriesPropertyImpl {\n \"lastFetchedValue\": undefined,\n },\n \"employeeSensor\": TimeSeriesPropertyImpl {},\n \"employeeStatus\": TimeSeriesPropertyImpl {},\n \"fullName\": \"Brad Pitt\",\n \"office\": \"SEA\",\n \"startDate\": \"2012-02-12\",\n }\n `);\n });\n\n it(\"is able to clone with nothing passed in\", async () => {\n expect(employee.$clone()).toMatchObject({\n \"$apiName\": \"Employee\",\n \"$objectType\": \"Employee\",\n \"$primaryKey\": 50031,\n \"$title\": \"Jane Doe\",\n \"class\": \"Blue\",\n \"employeeId\": 50031,\n \"fullName\": \"Jane Doe\",\n \"office\": \"SEA\",\n \"startDate\": \"2012-02-12\",\n });\n });\n\n it(\"throws when merging objects with different primary keys\", async () => {\n expect(() =>\n employee.$clone({\n \"class\": \"Green\",\n \"employeeId\": 50035,\n })\n ).toThrow();\n });\n describe(\"interface\", () => {\n const interfaceDef = {\n apiName: \"FooInterface\",\n displayName: \"\",\n links: {},\n properties: {\n \"fooSpt\": {\n type: \"string\",\n },\n \"notImplementedFooSpt\": {\n type: \"string\",\n },\n },\n rid: \"\",\n type: \"interface\",\n implements: [],\n } satisfies InterfaceMetadata;\n\n const fooInterfaceOsdkDef = {\n apiName: \"FooInterface\",\n type: \"interface\",\n \"__DefinitionMetadata\": interfaceDef,\n } satisfies InterfaceDefinition;\n\n const EmployeeFetchedMetadata = {\n \"apiName\": \"Employee\",\n \"primaryKeyType\": \"integer\",\n \"primaryKeyApiName\": \"employeeId\",\n \"properties\": {\n \"employeeId\": { \"type\": \"integer\" },\n \"fullName\": { \"type\": \"string\" },\n },\n interfaceMap: {\n \"FooInterface\": {\n \"fooSpt\": \"fullName\",\n },\n },\n inverseInterfaceMap: {\n \"FooInterface\": {\n \"fullName\": \"fooSpt\",\n },\n },\n [InterfaceDefinitions]: {\n \"FooInterface\": { def: interfaceDef },\n },\n type: \"object\",\n titleProperty: \"fullName\",\n pluralDisplayName: \"\",\n status: \"ACTIVE\",\n displayName: \"\",\n links: {},\n rid: \"\",\n } satisfies FetchedObjectTypeDefinition;\n\n it(\"Correctly updates the interface and underlying object\", () => {\n const employeeOsdkObject = createOsdkObject(\n client[additionalContext],\n EmployeeFetchedMetadata,\n {\n \"$apiName\": \"Employee\",\n \"$objectType\": \"Employee\",\n \"$primaryKey\": 50031,\n \"$title\": \"Jane Doe\",\n \"employeeId\": 50031,\n \"fullName\": \"Jane Doe\",\n },\n ) as unknown as Osdk.Instance<\n Employee,\n never,\n \"employeeId\" | \"fullName\"\n >;\n\n const personInterfaceObject = employeeOsdkObject.$as(\n fooInterfaceOsdkDef,\n );\n\n const clonedInterface = personInterfaceObject.$clone({\n \"fooSpt\": \"John Adams\",\n });\n\n expect(clonedInterface).toMatchInlineSnapshot(`\n {\n \"$apiName\": \"FooInterface\",\n \"$objectType\": \"Employee\",\n \"$primaryKey\": 50031,\n \"$title\": \"John Adams\",\n \"fooSpt\": \"John Adams\",\n }\n `);\n\n expect(clonedInterface.$as(\"Employee\")).toMatchInlineSnapshot(`\n {\n \"$apiName\": \"Employee\",\n \"$objectType\": \"Employee\",\n \"$primaryKey\": 50031,\n \"$title\": \"John Adams\",\n \"employeeId\": 50031,\n \"fullName\": \"John Adams\",\n }\n `);\n });\n it(\"Throws if updating an interface with a property not implemented by the underlying object type\", () => {\n const employeeOsdkObject = createOsdkObject(\n client[additionalContext],\n EmployeeFetchedMetadata,\n {\n \"$apiName\": \"Employee\",\n \"$objectType\": \"Employee\",\n \"$primaryKey\": 50031,\n \"$title\": \"Jane Doe\",\n \"employeeId\": 50031,\n \"fullName\": \"Jane Doe\",\n },\n ) as unknown as Osdk.Instance<\n Employee,\n never,\n \"employeeId\" | \"fullName\"\n >;\n\n const loadedInterfaceObject = employeeOsdkObject.$as(interfaceDef);\n expect(() =>\n loadedInterfaceObject.$clone({\n \"notImplementedFooSpt\": \"John Adams\",\n })\n ).toThrowErrorMatchingInlineSnapshot(\n `[Error: Cannot clone interface with notImplementedFooSpt as property is not implemented by the underlying object type Employee]`,\n );\n });\n });\n });\n});\n\nexport async function shouldError(client: Client): Promise<Osdk<Employee>> {\n // @ts-expect-error\n return client(Employee).fetchOne(1, {\n $select: [\"employeeId\"],\n });\n}\n\nexport async function shouldError2(\n client: Client,\n): Promise<Employee.OsdkObject> {\n // @ts-expect-error\n return client(Employee).fetchOne(1, {\n $select: [\"employeeId\"],\n });\n}\n\nexport async function shouldCompile_client_fetchOne_old_select(\n client: Client,\n): Promise<Osdk<Employee, \"employeeId\">> {\n return client(Employee).fetchOne(1, {\n $select: [\"employeeId\"],\n });\n}\n\nexport async function shouldCompile_unstableClient_fetchOne_old_select(\n client: Client,\n): Promise<Osdk<Employee, \"employeeId\">> {\n return client(Employee).fetchOne(1, {\n $select: [\"employeeId\"],\n });\n}\n\nexport async function shouldCompile_client_fetchOne_new_select(\n client: Client,\n): Promise<Employee.OsdkObject<never, \"employeeId\">> {\n return client(Employee).fetchOne(1, {\n $select: [\"employeeId\"],\n });\n}\n\nexport async function shouldCompile_unstableClient_fetchOne_new_select(\n client: Client,\n): Promise<Osdk<Employee, \"employeeId\">> {\n return client(Employee).fetchOne(1, {\n $select: [\"employeeId\"],\n });\n}\n\nexport async function shouldCompile_client_fetchOne_old_noArgs(\n client: Client,\n): Promise<Osdk<Employee>> {\n return client(Employee).fetchOne(1);\n}\n\nexport async function shouldCompile_unstableClient_fetchOne_noArgs(\n client: Client,\n): Promise<Osdk<Employee>> {\n return client(Employee).fetchOne(1);\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"object.test.js","names":["$Objects","Employee","FooInterface","LegacyFauxFoundry","startNodeApiServer","stubData","withoutRid","beforeAll","describe","expect","expectTypeOf","it","additionalContext","createClient","InterfaceDefinitions","createOsdkObject","asV2Object","o","includeRid","$apiName","__apiName","$objectType","$primaryKey","__primaryKey","$title","__title","each","baseUrl","client","apiServer","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","updatedEmployee","mergedEmployee","$clone","toEqualTypeOf","undefined","toMatchTypeOf","toThrow","interfaceDef","apiName","displayName","links","properties","type","rid","implements","fooInterfaceOsdkDef","EmployeeFetchedMetadata","interfaceMap","inverseInterfaceMap","def","titleProperty","pluralDisplayName","status","employeeOsdkObject","personInterfaceObject","$as","clonedInterface","loadedInterfaceObject","toThrowError","$objectSpecifier","object","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.ts"],"sourcesContent":["/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport type {\n InterfaceDefinition,\n InterfaceMetadata,\n Osdk,\n PropertyKeys,\n} from \"@osdk/api\";\nimport { $Objects, Employee, FooInterface } from \"@osdk/client.test.ontology\";\nimport {\n LegacyFauxFoundry,\n startNodeApiServer,\n stubData,\n withoutRid,\n} from \"@osdk/shared.test\";\nimport { beforeAll, describe, expect, expectTypeOf, it } from \"vitest\";\nimport { additionalContext, type Client } from \"../Client.js\";\nimport { createClient } from \"../createClient.js\";\nimport type {\n FetchedObjectTypeDefinition,\n} from \"../ontology/OntologyProvider.js\";\nimport { InterfaceDefinitions } from \"../ontology/OntologyProvider.js\";\nimport { createOsdkObject } from \"./convertWireToOsdkObjects/createOsdkObject.js\";\n\nfunction asV2Object(o: any, includeRid?: boolean) {\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}\n\ndescribe.each([\n \"https://stack.palantir.com\",\n \"https://stack.palantirCustom.com/foo/first/someStuff\",\n])(\"OsdkObject for %s\", (baseUrl) => {\n let client: Client;\n\n beforeAll(async () => {\n let apiServer;\n\n ({ client, apiServer } = startNodeApiServer(\n new LegacyFauxFoundry(baseUrl),\n createClient,\n ));\n\n return () => {\n apiServer.close();\n };\n });\n\n describe(\"link\", () => {\n it(\"loads an employee\", async () => {\n const result = await client(Employee).where({\n employeeId: stubData.employee1.employeeId,\n }).fetchPage();\n\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\n employee.startDate;\n\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 client(Employee).where({\n employeeId: stubData.employee1.employeeId,\n }).fetchPage();\n\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\n employee.startDate;\n\n // it should have the prototype that we assign at hydration time\n expect(Object.keys(employee.$link.lead)).toBeDefined();\n });\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\n const lead = await employee.$link.lead.fetchOne({\n $select: [\"employeeId\"],\n });\n expect(lead.employeeId).toBe(stubData.employee2.employeeId);\n\n // ensure that the select was performed\n expect(lead.employeeId).toBeDefined();\n expect((lead as any).employeeStatus).toBeUndefined();\n });\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\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\n // ensure that the select was performed\n expect(peepsResult.data[0]!.employeeId).toBeDefined();\n expect((peepsResult.data[0] as any).office).toBeUndefined();\n });\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\n const peep = await lead.$link.peeps.fetchOne(\n stubData.employee1.employeeId,\n {\n $select: [\"employeeId\"],\n },\n );\n expect(peep).toBeDefined();\n\n // ensure that select worked\n expect(peep.employeeId).toBeDefined();\n expect((peep as any).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 {\n $includeRid: true,\n },\n );\n const leadRid = result.data[0].$rid;\n expect(leadRid).toBeDefined();\n expect(leadRid).toBe(\n \"ri.phonograph2-objects.main.object.88a6fccb-f333-46d6-a07e-7725c5f18b61\",\n );\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 describe(\"clone\", () => {\n let employee: Osdk.Instance<\n $Objects.Employee,\n never,\n PropertyKeys<$Objects.Employee>\n >;\n beforeAll(async () => {\n employee = (await client(Employee).where({\n employeeId: stubData.employee2.employeeId,\n }).fetchPage()).data[0];\n\n expect(employee).toMatchObject({\n \"$apiName\": \"Employee\",\n \"$objectType\": \"Employee\",\n \"$primaryKey\": 50031,\n \"$title\": \"Jane Doe\",\n \"class\": \"Blue\",\n \"employeeId\": 50031,\n \"fullName\": \"Jane Doe\",\n \"office\": \"SEA\",\n \"startDate\": \"2012-02-12\",\n });\n });\n\n it(\"clones and updates an object with another osdk object\", async () => {\n const updatedEmployee = createOsdkObject(\n client[additionalContext],\n {\n \"apiName\": \"Employee\",\n \"primaryKeyType\": \"integer\",\n \"primaryKeyApiName\": \"employeeId\",\n \"properties\": {\n \"class\": { \"type\": \"string\" },\n \"employeeId\": { \"type\": \"integer\" },\n \"fullName\": { \"type\": \"string\" },\n \"office\": { \"type\": \"string\" },\n },\n } as any,\n {\n \"$apiName\": \"Employee\",\n \"$objectType\": \"Employee\",\n \"$primaryKey\": 50031,\n \"$title\": \"Jane Doe\",\n \"class\": \"Red\",\n \"employeeId\": 50031,\n \"fullName\": \"Jane Doe\",\n \"office\": \"NYC\",\n },\n ) as unknown as Osdk.Instance<\n Employee,\n never,\n \"class\" | \"employeeId\" | \"fullName\" | \"office\"\n >;\n\n const mergedEmployee = employee.$clone(updatedEmployee);\n\n expectTypeOf(mergedEmployee).toEqualTypeOf(employee);\n\n expect(mergedEmployee).toMatchObject(\n {\n \"$apiName\": \"Employee\",\n \"$objectSpecifier\": \"Employee:50031\",\n \"$objectType\": \"Employee\",\n \"$primaryKey\": 50031,\n \"$title\": \"Jane Doe\",\n \"class\": \"Red\",\n \"employeeId\": 50031,\n \"employeeLocation\": {\n \"lastFetchedValue\": undefined,\n },\n \"employeeSensor\": {},\n \"employeeStatus\": {},\n \"fullName\": \"Jane Doe\",\n \"office\": \"NYC\",\n \"startDate\": \"2012-02-12\",\n },\n );\n });\n\n it(\"correctly scopes up with another OSDK object\", async () => {\n const firstEmployee = { $clone: () => {} } as unknown as Osdk.Instance<\n Employee,\n never,\n \"class\"\n >;\n expectTypeOf(firstEmployee.$clone(employee)).toMatchTypeOf<\n Osdk.Instance<\n Employee,\n never,\n PropertyKeys<Employee>\n >\n >();\n });\n\n it(\"Correctly preserves keys from original and new with distinct property key sets\", async () => {\n const firstEmployee = { $clone: () => {} } as unknown as Osdk.Instance<\n Employee,\n never,\n \"class\"\n >;\n expectTypeOf(\n firstEmployee.$clone({} as Osdk.Instance<Employee, never, \"office\">),\n ).toMatchTypeOf<\n Osdk.Instance<\n Employee,\n never,\n \"class\" | \"office\"\n >\n >();\n });\n\n it(\"clones and updates an object with a record\", async () => {\n const mergedEmployee = employee.$clone({\n \"class\": \"Green\",\n \"employeeId\": 50031,\n \"fullName\": \"John Doe\",\n \"office\": \"SEA\",\n \"startDate\": \"2019-01-01\",\n });\n\n expect(mergedEmployee).toMatchObject(\n {\n \"$apiName\": \"Employee\",\n \"$objectSpecifier\": \"Employee:50031\",\n \"$objectType\": \"Employee\",\n \"$primaryKey\": 50031,\n \"$title\": \"John Doe\",\n \"class\": \"Green\",\n \"employeeId\": 50031,\n \"employeeLocation\": {\n \"lastFetchedValue\": undefined,\n },\n \"employeeSensor\": {},\n \"employeeStatus\": {},\n \"fullName\": \"John Doe\",\n \"office\": \"SEA\",\n \"startDate\": \"2019-01-01\",\n },\n );\n });\n\n it(\"correctly scopes up with a record\", async () => {\n const firstEmployee = { $clone: () => {} } as unknown as Osdk.Instance<\n Employee,\n never,\n \"class\"\n >;\n expectTypeOf(firstEmployee.$clone({\n \"class\": \"Green\",\n \"employeeId\": 50031,\n \"fullName\": \"John Doe\",\n \"office\": \"SEA\",\n \"startDate\": \"2019-01-01\",\n })).toMatchTypeOf<\n Osdk.Instance<\n Employee,\n never,\n \"class\" | \"employeeId\" | \"fullName\" | \"office\" | \"startDate\"\n >\n >();\n });\n\n it(\"correctly sets title\", async () => {\n const mergedEmployee = employee.$clone({\n \"fullName\": \"Brad Pitt\",\n });\n\n expect(mergedEmployee).toMatchObject(\n {\n \"$apiName\": \"Employee\",\n \"$objectSpecifier\": \"Employee:50031\",\n \"$objectType\": \"Employee\",\n \"$primaryKey\": 50031,\n \"$title\": \"Brad Pitt\",\n \"class\": \"Blue\",\n \"employeeId\": 50031,\n \"employeeLocation\": {\n \"lastFetchedValue\": undefined,\n },\n \"employeeSensor\": {},\n \"employeeStatus\": {},\n \"fullName\": \"Brad Pitt\",\n \"office\": \"SEA\",\n \"startDate\": \"2012-02-12\",\n },\n );\n });\n\n it(\"is able to clone with nothing passed in\", async () => {\n expect(employee.$clone()).toMatchObject({\n \"$apiName\": \"Employee\",\n \"$objectType\": \"Employee\",\n \"$primaryKey\": 50031,\n \"$title\": \"Jane Doe\",\n \"class\": \"Blue\",\n \"employeeId\": 50031,\n \"fullName\": \"Jane Doe\",\n \"office\": \"SEA\",\n \"startDate\": \"2012-02-12\",\n });\n });\n\n it(\"throws when merging objects with different primary keys\", async () => {\n expect(() =>\n employee.$clone({\n \"class\": \"Green\",\n \"employeeId\": 50035,\n })\n ).toThrow();\n });\n describe(\"interface\", () => {\n const interfaceDef = {\n apiName: \"FooInterface\",\n displayName: \"\",\n links: {},\n properties: {\n \"fooSpt\": {\n type: \"string\",\n },\n \"notImplementedFooSpt\": {\n type: \"string\",\n },\n },\n rid: \"\",\n type: \"interface\",\n implements: [],\n } satisfies InterfaceMetadata;\n\n const fooInterfaceOsdkDef = {\n apiName: \"FooInterface\",\n type: \"interface\",\n \"__DefinitionMetadata\": interfaceDef,\n } satisfies InterfaceDefinition;\n\n const EmployeeFetchedMetadata = {\n \"apiName\": \"Employee\",\n \"primaryKeyType\": \"integer\",\n \"primaryKeyApiName\": \"employeeId\",\n \"properties\": {\n \"employeeId\": { \"type\": \"integer\" },\n \"fullName\": { \"type\": \"string\" },\n },\n interfaceMap: {\n \"FooInterface\": {\n \"fooSpt\": \"fullName\",\n },\n },\n inverseInterfaceMap: {\n \"FooInterface\": {\n \"fullName\": \"fooSpt\",\n },\n },\n [InterfaceDefinitions]: {\n \"FooInterface\": { def: interfaceDef },\n },\n type: \"object\",\n titleProperty: \"fullName\",\n pluralDisplayName: \"\",\n status: \"ACTIVE\",\n displayName: \"\",\n links: {},\n rid: \"\",\n } satisfies FetchedObjectTypeDefinition;\n\n it(\"Correctly updates the interface and underlying object\", () => {\n const employeeOsdkObject = createOsdkObject(\n client[additionalContext],\n EmployeeFetchedMetadata,\n {\n \"$apiName\": \"Employee\",\n \"$objectType\": \"Employee\",\n \"$primaryKey\": 50031,\n \"$title\": \"Jane Doe\",\n \"employeeId\": 50031,\n \"fullName\": \"Jane Doe\",\n },\n ) as unknown as Osdk.Instance<\n Employee,\n never,\n \"employeeId\" | \"fullName\"\n >;\n\n const personInterfaceObject = employeeOsdkObject.$as(\n fooInterfaceOsdkDef,\n );\n\n const clonedInterface = personInterfaceObject.$clone({\n \"fooSpt\": \"John Adams\",\n });\n\n expect(clonedInterface).toMatchObject(\n {\n \"$apiName\": \"FooInterface\",\n \"$objectSpecifier\": \"Employee:50031\",\n \"$objectType\": \"Employee\",\n \"$primaryKey\": 50031,\n \"$title\": \"John Adams\",\n \"fooSpt\": \"John Adams\",\n },\n );\n\n expect(clonedInterface.$as(\"Employee\")).toMatchObject(\n {\n \"$apiName\": \"Employee\",\n \"$objectSpecifier\": \"Employee:50031\",\n \"$objectType\": \"Employee\",\n \"$primaryKey\": 50031,\n \"$title\": \"John Adams\",\n \"employeeId\": 50031,\n \"fullName\": \"John Adams\",\n },\n );\n });\n it(\"Throws if updating an interface with a property not implemented by the underlying object type\", () => {\n const employeeOsdkObject = createOsdkObject(\n client[additionalContext],\n EmployeeFetchedMetadata,\n {\n \"$apiName\": \"Employee\",\n \"$objectType\": \"Employee\",\n \"$primaryKey\": 50031,\n \"$title\": \"Jane Doe\",\n \"employeeId\": 50031,\n \"fullName\": \"Jane Doe\",\n },\n ) as unknown as Osdk.Instance<\n Employee,\n never,\n \"employeeId\" | \"fullName\"\n >;\n\n const loadedInterfaceObject = employeeOsdkObject.$as(interfaceDef);\n expect(() =>\n loadedInterfaceObject.$clone({\n \"notImplementedFooSpt\": \"John Adams\",\n })\n ).toThrowError(\n `Cannot clone interface with notImplementedFooSpt as property is not implemented by the underlying object type Employee`,\n );\n });\n });\n });\n describe(\"objectSpecifier\", () => {\n it(\"returns the object specifier for a loaded object\", async () => {\n const result = await client(Employee).where({\n employeeId: stubData.employee1.employeeId,\n }).fetchPage();\n\n const employee = result.data[0];\n expect(employee.$objectSpecifier).toBe(\"Employee:50030\");\n });\n\n it(\"returns the object specifier for a loaded interface object\", async () => {\n const result = await client(FooInterface).fetchPage();\n\n const object = result.data[0];\n expect(object.$objectSpecifier).toBe(\"Employee:50030\");\n });\n });\n});\n\nexport async function shouldError(client: Client): Promise<Osdk<Employee>> {\n // @ts-expect-error\n return client(Employee).fetchOne(1, {\n $select: [\"employeeId\"],\n });\n}\n\nexport async function shouldError2(\n client: Client,\n): Promise<Employee.OsdkObject> {\n // @ts-expect-error\n return client(Employee).fetchOne(1, {\n $select: [\"employeeId\"],\n });\n}\n\nexport async function shouldCompile_client_fetchOne_old_select(\n client: Client,\n): Promise<Osdk<Employee, \"employeeId\">> {\n return client(Employee).fetchOne(1, {\n $select: [\"employeeId\"],\n });\n}\n\nexport async function shouldCompile_unstableClient_fetchOne_old_select(\n client: Client,\n): Promise<Osdk<Employee, \"employeeId\">> {\n return client(Employee).fetchOne(1, {\n $select: [\"employeeId\"],\n });\n}\n\nexport async function shouldCompile_client_fetchOne_new_select(\n client: Client,\n): Promise<Employee.OsdkObject<never, \"employeeId\">> {\n return client(Employee).fetchOne(1, {\n $select: [\"employeeId\"],\n });\n}\n\nexport async function shouldCompile_unstableClient_fetchOne_new_select(\n client: Client,\n): Promise<Osdk<Employee, \"employeeId\">> {\n return client(Employee).fetchOne(1, {\n $select: [\"employeeId\"],\n });\n}\n\nexport async function shouldCompile_client_fetchOne_old_noArgs(\n client: Client,\n): Promise<Osdk<Employee>> {\n return client(Employee).fetchOne(1);\n}\n\nexport async function shouldCompile_unstableClient_fetchOne_noArgs(\n client: Client,\n): Promise<Osdk<Employee>> {\n return client(Employee).fetchOne(1);\n}\n"],"mappings":"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","ignoreList":[]}