@osdk/generator 2.1.0-beta.23 → 2.1.0-beta.25

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 (438) hide show
  1. package/CHANGELOG.md +23 -0
  2. package/build/browser/GenerateContext/EnhanceCommon.js +0 -15
  3. package/build/browser/GenerateContext/EnhanceCommon.js.map +1 -1
  4. package/build/browser/GenerateContext/EnhancedAction.js +1 -1
  5. package/build/browser/GenerateContext/EnhancedAction.js.map +1 -1
  6. package/build/browser/GenerateContext/EnhancedBase.js +2 -7
  7. package/build/browser/GenerateContext/EnhancedBase.js.map +1 -1
  8. package/build/browser/GenerateContext/EnhancedInterfaceType.js +1 -1
  9. package/build/browser/GenerateContext/EnhancedInterfaceType.js.map +1 -1
  10. package/build/browser/GenerateContext/EnhancedObjectType.js +1 -1
  11. package/build/browser/GenerateContext/EnhancedObjectType.js.map +1 -1
  12. package/build/browser/GenerateContext/EnhancedOntologyDefinition.js +1 -8
  13. package/build/browser/GenerateContext/EnhancedOntologyDefinition.js.map +1 -1
  14. package/build/browser/GenerateContext/EnhancedQuery.js +1 -1
  15. package/build/browser/GenerateContext/EnhancedQuery.js.map +1 -1
  16. package/build/browser/GenerateContext/EnhancedSharedPropertyType.js +1 -1
  17. package/build/browser/GenerateContext/EnhancedSharedPropertyType.js.map +1 -1
  18. package/build/browser/GenerateContext/ForeignType.js +1 -1
  19. package/build/browser/GenerateContext/ForeignType.js.map +1 -1
  20. package/build/browser/GenerateContext/GenerateContext.js +0 -15
  21. package/build/browser/GenerateContext/GenerateContext.js.map +1 -1
  22. package/build/browser/GenerateContext/enhanceOntology.js +1 -0
  23. package/build/browser/GenerateContext/enhanceOntology.js.map +1 -1
  24. package/build/browser/MinimalFs.js +0 -15
  25. package/build/browser/MinimalFs.js.map +1 -1
  26. package/build/browser/WireOntologyDefinition.js +0 -15
  27. package/build/browser/WireOntologyDefinition.js.map +1 -1
  28. package/build/browser/generateClientSdkPackage.js +2 -0
  29. package/build/browser/generateClientSdkPackage.js.map +1 -1
  30. package/build/browser/generateClientSdkPackage.test.js +1 -0
  31. package/build/browser/generateClientSdkPackage.test.js.map +1 -1
  32. package/build/browser/index.js +1 -0
  33. package/build/browser/index.js.map +1 -1
  34. package/build/browser/shared/apiNamespaces/startsWithApiNamespace.js +1 -0
  35. package/build/browser/shared/apiNamespaces/startsWithApiNamespace.js.map +1 -1
  36. package/build/browser/shared/apiNamespaces/startsWithApiNamespace.test.js +1 -0
  37. package/build/browser/shared/apiNamespaces/startsWithApiNamespace.test.js.map +1 -1
  38. package/build/browser/shared/getObjectImports.js +1 -0
  39. package/build/browser/shared/getObjectImports.js.map +1 -1
  40. package/build/browser/shared/getObjectTypeApiNamesFromQuery.js +1 -0
  41. package/build/browser/shared/getObjectTypeApiNamesFromQuery.js.map +1 -1
  42. package/build/browser/shared/getObjectTypesFromQueryDataType.js +1 -0
  43. package/build/browser/shared/getObjectTypesFromQueryDataType.js.map +1 -1
  44. package/build/browser/shared/propertyJsdoc.js +1 -0
  45. package/build/browser/shared/propertyJsdoc.js.map +1 -1
  46. package/build/browser/shared/sanitizeMetadata.js +9 -0
  47. package/build/browser/shared/sanitizeMetadata.js.map +1 -1
  48. package/build/browser/shared/sanitizeMetadata.test.js +1 -0
  49. package/build/browser/shared/sanitizeMetadata.test.js.map +1 -1
  50. package/build/browser/util/InMemoryFs.js +1 -0
  51. package/build/browser/util/InMemoryFs.js.map +1 -1
  52. package/build/browser/util/commaSeparatedIdentifiers.js +1 -0
  53. package/build/browser/util/commaSeparatedIdentifiers.js.map +1 -1
  54. package/build/browser/util/commaSeparatedTypeIdentifiers.js +1 -0
  55. package/build/browser/util/commaSeparatedTypeIdentifiers.js.map +1 -1
  56. package/build/browser/util/deleteUndefineds.js +1 -0
  57. package/build/browser/util/deleteUndefineds.js.map +1 -1
  58. package/build/browser/util/reservedKeywords.js +1 -0
  59. package/build/browser/util/reservedKeywords.js.map +1 -1
  60. package/build/browser/util/stringUnionFrom.js +1 -0
  61. package/build/browser/util/stringUnionFrom.js.map +1 -1
  62. package/build/browser/util/stringify.js +16 -0
  63. package/build/browser/util/stringify.js.map +1 -1
  64. package/build/browser/util/test/TodoWireOntology.js +1 -0
  65. package/build/browser/util/test/TodoWireOntology.js.map +1 -1
  66. package/build/browser/util/test/compileThis.js +1 -0
  67. package/build/browser/util/test/compileThis.js.map +1 -1
  68. package/build/browser/util/test/createMockMinimalFiles.js +1 -0
  69. package/build/browser/util/test/createMockMinimalFiles.js.map +1 -1
  70. package/build/browser/util/test/formatTs.js +1 -0
  71. package/build/browser/util/test/formatTs.js.map +1 -1
  72. package/build/browser/util/verifyOutDir.js +1 -0
  73. package/build/browser/util/verifyOutDir.js.map +1 -1
  74. package/build/browser/v2.0/UNSTABLE_wireInterfaceTypeV2ToSdkObjectConst.js +2 -0
  75. package/build/browser/v2.0/UNSTABLE_wireInterfaceTypeV2ToSdkObjectConst.js.map +1 -1
  76. package/build/browser/v2.0/UNSTABLE_wireInterfaceTypeV2ToSdkObjectConst.test.js +5 -0
  77. package/build/browser/v2.0/UNSTABLE_wireInterfaceTypeV2ToSdkObjectConst.test.js.map +1 -1
  78. package/build/browser/v2.0/generateClientSdkVersionTwoPointZero.js +3 -0
  79. package/build/browser/v2.0/generateClientSdkVersionTwoPointZero.js.map +1 -1
  80. package/build/browser/v2.0/generateClientSdkVersionTwoPointZero.test.js +11 -0
  81. package/build/browser/v2.0/generateClientSdkVersionTwoPointZero.test.js.map +1 -1
  82. package/build/browser/v2.0/generateMetadata.js +3 -0
  83. package/build/browser/v2.0/generateMetadata.js.map +1 -1
  84. package/build/browser/v2.0/generatePerActionDataFiles.js +23 -5
  85. package/build/browser/v2.0/generatePerActionDataFiles.js.map +1 -1
  86. package/build/browser/v2.0/generatePerActionDataFiles.test.js +1 -0
  87. package/build/browser/v2.0/generatePerActionDataFiles.test.js.map +1 -1
  88. package/build/browser/v2.0/generatePerInterfaceDataFiles.js +2 -0
  89. package/build/browser/v2.0/generatePerInterfaceDataFiles.js.map +1 -1
  90. package/build/browser/v2.0/generatePerObjectDataFiles.js +1 -0
  91. package/build/browser/v2.0/generatePerObjectDataFiles.js.map +1 -1
  92. package/build/browser/v2.0/generatePerQueryDataFiles.js +1 -0
  93. package/build/browser/v2.0/generatePerQueryDataFiles.js.map +1 -1
  94. package/build/browser/v2.0/generatePerQueryDataFiles.test.js +2 -0
  95. package/build/browser/v2.0/generatePerQueryDataFiles.test.js.map +1 -1
  96. package/build/browser/v2.0/generateRootIndexTsFile.js +1 -0
  97. package/build/browser/v2.0/generateRootIndexTsFile.js.map +1 -1
  98. package/build/browser/v2.0/getDescriptionIfPresent.js +1 -0
  99. package/build/browser/v2.0/getDescriptionIfPresent.js.map +1 -1
  100. package/build/browser/v2.0/wireObjectTypeV2ToSdkObjectConstV2.js +2 -0
  101. package/build/browser/v2.0/wireObjectTypeV2ToSdkObjectConstV2.js.map +1 -1
  102. package/build/browser/validateWireOntologyAssumptions.js +1 -0
  103. package/build/browser/validateWireOntologyAssumptions.js.map +1 -1
  104. package/build/cjs/index.cjs +1384 -0
  105. package/build/cjs/index.cjs.map +1 -0
  106. package/build/cjs/index.d.cts +31 -0
  107. package/build/esm/GenerateContext/EnhanceCommon.js +0 -15
  108. package/build/esm/GenerateContext/EnhanceCommon.js.map +1 -1
  109. package/build/esm/GenerateContext/EnhancedAction.js +1 -1
  110. package/build/esm/GenerateContext/EnhancedAction.js.map +1 -1
  111. package/build/esm/GenerateContext/EnhancedBase.js +2 -7
  112. package/build/esm/GenerateContext/EnhancedBase.js.map +1 -1
  113. package/build/esm/GenerateContext/EnhancedInterfaceType.js +1 -1
  114. package/build/esm/GenerateContext/EnhancedInterfaceType.js.map +1 -1
  115. package/build/esm/GenerateContext/EnhancedObjectType.js +1 -1
  116. package/build/esm/GenerateContext/EnhancedObjectType.js.map +1 -1
  117. package/build/esm/GenerateContext/EnhancedOntologyDefinition.js +1 -8
  118. package/build/esm/GenerateContext/EnhancedOntologyDefinition.js.map +1 -1
  119. package/build/esm/GenerateContext/EnhancedQuery.js +1 -1
  120. package/build/esm/GenerateContext/EnhancedQuery.js.map +1 -1
  121. package/build/esm/GenerateContext/EnhancedSharedPropertyType.js +1 -1
  122. package/build/esm/GenerateContext/EnhancedSharedPropertyType.js.map +1 -1
  123. package/build/esm/GenerateContext/ForeignType.js +1 -1
  124. package/build/esm/GenerateContext/ForeignType.js.map +1 -1
  125. package/build/esm/GenerateContext/GenerateContext.js +0 -15
  126. package/build/esm/GenerateContext/GenerateContext.js.map +1 -1
  127. package/build/esm/GenerateContext/enhanceOntology.js +1 -0
  128. package/build/esm/GenerateContext/enhanceOntology.js.map +1 -1
  129. package/build/esm/MinimalFs.js +0 -15
  130. package/build/esm/MinimalFs.js.map +1 -1
  131. package/build/esm/WireOntologyDefinition.js +0 -15
  132. package/build/esm/WireOntologyDefinition.js.map +1 -1
  133. package/build/esm/generateClientSdkPackage.js +2 -0
  134. package/build/esm/generateClientSdkPackage.js.map +1 -1
  135. package/build/esm/generateClientSdkPackage.test.js +1 -0
  136. package/build/esm/generateClientSdkPackage.test.js.map +1 -1
  137. package/build/esm/index.js +1 -0
  138. package/build/esm/index.js.map +1 -1
  139. package/build/esm/shared/apiNamespaces/startsWithApiNamespace.js +1 -0
  140. package/build/esm/shared/apiNamespaces/startsWithApiNamespace.js.map +1 -1
  141. package/build/esm/shared/apiNamespaces/startsWithApiNamespace.test.js +1 -0
  142. package/build/esm/shared/apiNamespaces/startsWithApiNamespace.test.js.map +1 -1
  143. package/build/esm/shared/getObjectImports.js +1 -0
  144. package/build/esm/shared/getObjectImports.js.map +1 -1
  145. package/build/esm/shared/getObjectTypeApiNamesFromQuery.js +1 -0
  146. package/build/esm/shared/getObjectTypeApiNamesFromQuery.js.map +1 -1
  147. package/build/esm/shared/getObjectTypesFromQueryDataType.js +1 -0
  148. package/build/esm/shared/getObjectTypesFromQueryDataType.js.map +1 -1
  149. package/build/esm/shared/propertyJsdoc.js +1 -0
  150. package/build/esm/shared/propertyJsdoc.js.map +1 -1
  151. package/build/esm/shared/sanitizeMetadata.js +9 -0
  152. package/build/esm/shared/sanitizeMetadata.js.map +1 -1
  153. package/build/esm/shared/sanitizeMetadata.test.js +1 -0
  154. package/build/esm/shared/sanitizeMetadata.test.js.map +1 -1
  155. package/build/esm/util/InMemoryFs.js +1 -0
  156. package/build/esm/util/InMemoryFs.js.map +1 -1
  157. package/build/esm/util/commaSeparatedIdentifiers.js +1 -0
  158. package/build/esm/util/commaSeparatedIdentifiers.js.map +1 -1
  159. package/build/esm/util/commaSeparatedTypeIdentifiers.js +1 -0
  160. package/build/esm/util/commaSeparatedTypeIdentifiers.js.map +1 -1
  161. package/build/esm/util/deleteUndefineds.js +1 -0
  162. package/build/esm/util/deleteUndefineds.js.map +1 -1
  163. package/build/esm/util/reservedKeywords.js +1 -0
  164. package/build/esm/util/reservedKeywords.js.map +1 -1
  165. package/build/esm/util/stringUnionFrom.js +1 -0
  166. package/build/esm/util/stringUnionFrom.js.map +1 -1
  167. package/build/esm/util/stringify.js +16 -0
  168. package/build/esm/util/stringify.js.map +1 -1
  169. package/build/esm/util/test/TodoWireOntology.js +1 -0
  170. package/build/esm/util/test/TodoWireOntology.js.map +1 -1
  171. package/build/esm/util/test/compileThis.js +1 -0
  172. package/build/esm/util/test/compileThis.js.map +1 -1
  173. package/build/esm/util/test/createMockMinimalFiles.js +1 -0
  174. package/build/esm/util/test/createMockMinimalFiles.js.map +1 -1
  175. package/build/esm/util/test/formatTs.js +1 -0
  176. package/build/esm/util/test/formatTs.js.map +1 -1
  177. package/build/esm/util/verifyOutDir.js +1 -0
  178. package/build/esm/util/verifyOutDir.js.map +1 -1
  179. package/build/esm/v2.0/UNSTABLE_wireInterfaceTypeV2ToSdkObjectConst.js +2 -0
  180. package/build/esm/v2.0/UNSTABLE_wireInterfaceTypeV2ToSdkObjectConst.js.map +1 -1
  181. package/build/esm/v2.0/UNSTABLE_wireInterfaceTypeV2ToSdkObjectConst.test.js +5 -0
  182. package/build/esm/v2.0/UNSTABLE_wireInterfaceTypeV2ToSdkObjectConst.test.js.map +1 -1
  183. package/build/esm/v2.0/generateClientSdkVersionTwoPointZero.js +3 -0
  184. package/build/esm/v2.0/generateClientSdkVersionTwoPointZero.js.map +1 -1
  185. package/build/esm/v2.0/generateClientSdkVersionTwoPointZero.test.js +11 -0
  186. package/build/esm/v2.0/generateClientSdkVersionTwoPointZero.test.js.map +1 -1
  187. package/build/esm/v2.0/generateMetadata.js +3 -0
  188. package/build/esm/v2.0/generateMetadata.js.map +1 -1
  189. package/build/esm/v2.0/generatePerActionDataFiles.js +23 -5
  190. package/build/esm/v2.0/generatePerActionDataFiles.js.map +1 -1
  191. package/build/esm/v2.0/generatePerActionDataFiles.test.js +1 -0
  192. package/build/esm/v2.0/generatePerActionDataFiles.test.js.map +1 -1
  193. package/build/esm/v2.0/generatePerInterfaceDataFiles.js +2 -0
  194. package/build/esm/v2.0/generatePerInterfaceDataFiles.js.map +1 -1
  195. package/build/esm/v2.0/generatePerObjectDataFiles.js +1 -0
  196. package/build/esm/v2.0/generatePerObjectDataFiles.js.map +1 -1
  197. package/build/esm/v2.0/generatePerQueryDataFiles.js +1 -0
  198. package/build/esm/v2.0/generatePerQueryDataFiles.js.map +1 -1
  199. package/build/esm/v2.0/generatePerQueryDataFiles.test.js +2 -0
  200. package/build/esm/v2.0/generatePerQueryDataFiles.test.js.map +1 -1
  201. package/build/esm/v2.0/generateRootIndexTsFile.js +1 -0
  202. package/build/esm/v2.0/generateRootIndexTsFile.js.map +1 -1
  203. package/build/esm/v2.0/getDescriptionIfPresent.js +1 -0
  204. package/build/esm/v2.0/getDescriptionIfPresent.js.map +1 -1
  205. package/build/esm/v2.0/wireObjectTypeV2ToSdkObjectConstV2.js +2 -0
  206. package/build/esm/v2.0/wireObjectTypeV2ToSdkObjectConstV2.js.map +1 -1
  207. package/build/esm/validateWireOntologyAssumptions.js +1 -0
  208. package/build/esm/validateWireOntologyAssumptions.js.map +1 -1
  209. package/build/types/GenerateContext/EnhanceCommon.d.ts +6 -0
  210. package/build/types/GenerateContext/EnhancedAction.d.ts +13 -0
  211. package/build/types/GenerateContext/EnhancedBase.d.ts +20 -0
  212. package/build/types/GenerateContext/EnhancedInterfaceType.d.ts +12 -0
  213. package/build/{esm → types}/GenerateContext/EnhancedObjectType.d.ts +5 -6
  214. package/build/types/GenerateContext/EnhancedOntologyDefinition.d.ts +28 -0
  215. package/build/types/GenerateContext/EnhancedQuery.d.ts +13 -0
  216. package/build/{browser → types}/GenerateContext/EnhancedSharedPropertyType.d.ts +2 -3
  217. package/build/types/GenerateContext/ForeignType.d.ts +8 -0
  218. package/build/types/GenerateContext/GenerateContext.d.ts +13 -0
  219. package/build/types/GenerateContext/enhanceOntology.d.ts +9 -0
  220. package/build/types/MinimalFs.d.ts +7 -0
  221. package/build/{browser → types}/WireOntologyDefinition.d.ts +1 -3
  222. package/build/{browser → types}/generateClientSdkPackage.d.ts +23 -26
  223. package/build/types/generateClientSdkPackage.test.d.ts +1 -0
  224. package/build/types/index.d.ts +4 -0
  225. package/build/{browser → types}/shared/apiNamespaces/startsWithApiNamespace.d.ts +0 -1
  226. package/build/types/shared/apiNamespaces/startsWithApiNamespace.test.d.ts +1 -0
  227. package/build/{browser → types}/shared/getObjectImports.d.ts +2 -2
  228. package/build/{browser → types}/shared/getObjectTypeApiNamesFromQuery.d.ts +0 -1
  229. package/build/{browser → types}/shared/getObjectTypesFromQueryDataType.d.ts +0 -1
  230. package/build/{browser → types}/shared/propertyJsdoc.d.ts +2 -3
  231. package/build/types/shared/sanitizeMetadata.d.ts +1 -0
  232. package/build/types/shared/sanitizeMetadata.test.d.ts +1 -0
  233. package/build/{browser → types}/util/InMemoryFs.d.ts +2 -3
  234. package/build/{browser → types}/util/commaSeparatedIdentifiers.d.ts +0 -1
  235. package/build/{browser → types}/util/commaSeparatedTypeIdentifiers.d.ts +0 -1
  236. package/build/{browser → types}/util/deleteUndefineds.d.ts +0 -1
  237. package/build/{browser → types}/util/reservedKeywords.d.ts +0 -1
  238. package/build/{browser → types}/util/stringUnionFrom.d.ts +0 -1
  239. package/build/types/util/stringify.d.ts +20 -0
  240. package/build/{browser → types}/util/test/TodoWireOntology.d.ts +0 -1
  241. package/build/{browser → types}/util/test/compileThis.d.ts +0 -1
  242. package/build/types/util/test/createMockMinimalFiles.d.ts +10 -0
  243. package/build/{browser → types}/util/test/formatTs.d.ts +0 -1
  244. package/build/types/util/verifyOutDir.d.ts +8 -0
  245. package/build/types/v2.0/UNSTABLE_wireInterfaceTypeV2ToSdkObjectConst.d.ts +1 -0
  246. package/build/types/v2.0/UNSTABLE_wireInterfaceTypeV2ToSdkObjectConst.test.d.ts +1 -0
  247. package/build/{esm → types}/v2.0/generateClientSdkVersionTwoPointZero.d.ts +0 -1
  248. package/build/types/v2.0/generateClientSdkVersionTwoPointZero.test.d.ts +1 -0
  249. package/build/{browser → types}/v2.0/generateMetadata.d.ts +0 -1
  250. package/build/types/v2.0/generatePerActionDataFiles.d.ts +2 -0
  251. package/build/types/v2.0/generatePerActionDataFiles.test.d.ts +1 -0
  252. package/build/types/v2.0/generatePerInterfaceDataFiles.d.ts +1 -0
  253. package/build/{esm → types}/v2.0/generatePerObjectDataFiles.d.ts +0 -1
  254. package/build/{browser → types}/v2.0/generatePerQueryDataFiles.d.ts +2 -5
  255. package/build/types/v2.0/generatePerQueryDataFiles.test.d.ts +1 -0
  256. package/build/{esm → types}/v2.0/generateRootIndexTsFile.d.ts +0 -1
  257. package/build/{browser → types}/v2.0/getDescriptionIfPresent.d.ts +0 -1
  258. package/build/{browser → types}/v2.0/wireObjectTypeV2ToSdkObjectConstV2.d.ts +4 -6
  259. package/build/{browser → types}/validateWireOntologyAssumptions.d.ts +0 -1
  260. package/package.json +24 -11
  261. package/build/browser/GenerateContext/EnhanceCommon.d.ts +0 -7
  262. package/build/browser/GenerateContext/EnhanceCommon.d.ts.map +0 -1
  263. package/build/browser/GenerateContext/EnhancedAction.d.ts +0 -14
  264. package/build/browser/GenerateContext/EnhancedAction.d.ts.map +0 -1
  265. package/build/browser/GenerateContext/EnhancedBase.d.ts +0 -21
  266. package/build/browser/GenerateContext/EnhancedBase.d.ts.map +0 -1
  267. package/build/browser/GenerateContext/EnhancedInterfaceType.d.ts +0 -13
  268. package/build/browser/GenerateContext/EnhancedInterfaceType.d.ts.map +0 -1
  269. package/build/browser/GenerateContext/EnhancedObjectType.d.ts +0 -12
  270. package/build/browser/GenerateContext/EnhancedObjectType.d.ts.map +0 -1
  271. package/build/browser/GenerateContext/EnhancedOntologyDefinition.d.ts +0 -29
  272. package/build/browser/GenerateContext/EnhancedOntologyDefinition.d.ts.map +0 -1
  273. package/build/browser/GenerateContext/EnhancedQuery.d.ts +0 -14
  274. package/build/browser/GenerateContext/EnhancedQuery.d.ts.map +0 -1
  275. package/build/browser/GenerateContext/EnhancedSharedPropertyType.d.ts.map +0 -1
  276. package/build/browser/GenerateContext/ForeignType.d.ts +0 -9
  277. package/build/browser/GenerateContext/ForeignType.d.ts.map +0 -1
  278. package/build/browser/GenerateContext/GenerateContext.d.ts +0 -14
  279. package/build/browser/GenerateContext/GenerateContext.d.ts.map +0 -1
  280. package/build/browser/GenerateContext/enhanceOntology.d.ts +0 -10
  281. package/build/browser/GenerateContext/enhanceOntology.d.ts.map +0 -1
  282. package/build/browser/MinimalFs.d.ts +0 -10
  283. package/build/browser/MinimalFs.d.ts.map +0 -1
  284. package/build/browser/WireOntologyDefinition.d.ts.map +0 -1
  285. package/build/browser/generateClientSdkPackage.d.ts.map +0 -1
  286. package/build/browser/generateClientSdkPackage.test.d.ts +0 -2
  287. package/build/browser/generateClientSdkPackage.test.d.ts.map +0 -1
  288. package/build/browser/index.d.ts +0 -5
  289. package/build/browser/index.d.ts.map +0 -1
  290. package/build/browser/shared/apiNamespaces/startsWithApiNamespace.d.ts.map +0 -1
  291. package/build/browser/shared/apiNamespaces/startsWithApiNamespace.test.d.ts +0 -2
  292. package/build/browser/shared/apiNamespaces/startsWithApiNamespace.test.d.ts.map +0 -1
  293. package/build/browser/shared/getObjectImports.d.ts.map +0 -1
  294. package/build/browser/shared/getObjectTypeApiNamesFromQuery.d.ts.map +0 -1
  295. package/build/browser/shared/getObjectTypesFromQueryDataType.d.ts.map +0 -1
  296. package/build/browser/shared/propertyJsdoc.d.ts.map +0 -1
  297. package/build/browser/shared/sanitizeMetadata.d.ts +0 -2
  298. package/build/browser/shared/sanitizeMetadata.d.ts.map +0 -1
  299. package/build/browser/shared/sanitizeMetadata.test.d.ts +0 -2
  300. package/build/browser/shared/sanitizeMetadata.test.d.ts.map +0 -1
  301. package/build/browser/util/InMemoryFs.d.ts.map +0 -1
  302. package/build/browser/util/commaSeparatedIdentifiers.d.ts.map +0 -1
  303. package/build/browser/util/commaSeparatedTypeIdentifiers.d.ts.map +0 -1
  304. package/build/browser/util/deleteUndefineds.d.ts.map +0 -1
  305. package/build/browser/util/reservedKeywords.d.ts.map +0 -1
  306. package/build/browser/util/stringUnionFrom.d.ts.map +0 -1
  307. package/build/browser/util/stringify.d.ts +0 -20
  308. package/build/browser/util/stringify.d.ts.map +0 -1
  309. package/build/browser/util/test/TodoWireOntology.d.ts.map +0 -1
  310. package/build/browser/util/test/compileThis.d.ts.map +0 -1
  311. package/build/browser/util/test/createMockMinimalFiles.d.ts +0 -13
  312. package/build/browser/util/test/createMockMinimalFiles.d.ts.map +0 -1
  313. package/build/browser/util/test/formatTs.d.ts.map +0 -1
  314. package/build/browser/util/verifyOutDir.d.ts +0 -9
  315. package/build/browser/util/verifyOutDir.d.ts.map +0 -1
  316. package/build/browser/v2.0/UNSTABLE_wireInterfaceTypeV2ToSdkObjectConst.d.ts +0 -2
  317. package/build/browser/v2.0/UNSTABLE_wireInterfaceTypeV2ToSdkObjectConst.d.ts.map +0 -1
  318. package/build/browser/v2.0/UNSTABLE_wireInterfaceTypeV2ToSdkObjectConst.test.d.ts +0 -2
  319. package/build/browser/v2.0/UNSTABLE_wireInterfaceTypeV2ToSdkObjectConst.test.d.ts.map +0 -1
  320. package/build/browser/v2.0/generateClientSdkVersionTwoPointZero.d.ts +0 -4
  321. package/build/browser/v2.0/generateClientSdkVersionTwoPointZero.d.ts.map +0 -1
  322. package/build/browser/v2.0/generateClientSdkVersionTwoPointZero.test.d.ts +0 -2
  323. package/build/browser/v2.0/generateClientSdkVersionTwoPointZero.test.d.ts.map +0 -1
  324. package/build/browser/v2.0/generateMetadata.d.ts.map +0 -1
  325. package/build/browser/v2.0/generatePerActionDataFiles.d.ts +0 -3
  326. package/build/browser/v2.0/generatePerActionDataFiles.d.ts.map +0 -1
  327. package/build/browser/v2.0/generatePerActionDataFiles.test.d.ts +0 -2
  328. package/build/browser/v2.0/generatePerActionDataFiles.test.d.ts.map +0 -1
  329. package/build/browser/v2.0/generatePerInterfaceDataFiles.d.ts +0 -2
  330. package/build/browser/v2.0/generatePerInterfaceDataFiles.d.ts.map +0 -1
  331. package/build/browser/v2.0/generatePerObjectDataFiles.d.ts +0 -3
  332. package/build/browser/v2.0/generatePerObjectDataFiles.d.ts.map +0 -1
  333. package/build/browser/v2.0/generatePerQueryDataFiles.d.ts.map +0 -1
  334. package/build/browser/v2.0/generatePerQueryDataFiles.test.d.ts +0 -2
  335. package/build/browser/v2.0/generatePerQueryDataFiles.test.d.ts.map +0 -1
  336. package/build/browser/v2.0/generateRootIndexTsFile.d.ts +0 -3
  337. package/build/browser/v2.0/generateRootIndexTsFile.d.ts.map +0 -1
  338. package/build/browser/v2.0/getDescriptionIfPresent.d.ts.map +0 -1
  339. package/build/browser/v2.0/wireObjectTypeV2ToSdkObjectConstV2.d.ts.map +0 -1
  340. package/build/browser/validateWireOntologyAssumptions.d.ts.map +0 -1
  341. package/build/esm/GenerateContext/EnhanceCommon.d.ts +0 -7
  342. package/build/esm/GenerateContext/EnhanceCommon.d.ts.map +0 -1
  343. package/build/esm/GenerateContext/EnhancedAction.d.ts +0 -14
  344. package/build/esm/GenerateContext/EnhancedAction.d.ts.map +0 -1
  345. package/build/esm/GenerateContext/EnhancedBase.d.ts +0 -21
  346. package/build/esm/GenerateContext/EnhancedBase.d.ts.map +0 -1
  347. package/build/esm/GenerateContext/EnhancedInterfaceType.d.ts +0 -13
  348. package/build/esm/GenerateContext/EnhancedInterfaceType.d.ts.map +0 -1
  349. package/build/esm/GenerateContext/EnhancedObjectType.d.ts.map +0 -1
  350. package/build/esm/GenerateContext/EnhancedOntologyDefinition.d.ts +0 -29
  351. package/build/esm/GenerateContext/EnhancedOntologyDefinition.d.ts.map +0 -1
  352. package/build/esm/GenerateContext/EnhancedQuery.d.ts +0 -14
  353. package/build/esm/GenerateContext/EnhancedQuery.d.ts.map +0 -1
  354. package/build/esm/GenerateContext/EnhancedSharedPropertyType.d.ts +0 -8
  355. package/build/esm/GenerateContext/EnhancedSharedPropertyType.d.ts.map +0 -1
  356. package/build/esm/GenerateContext/ForeignType.d.ts +0 -9
  357. package/build/esm/GenerateContext/ForeignType.d.ts.map +0 -1
  358. package/build/esm/GenerateContext/GenerateContext.d.ts +0 -14
  359. package/build/esm/GenerateContext/GenerateContext.d.ts.map +0 -1
  360. package/build/esm/GenerateContext/enhanceOntology.d.ts +0 -10
  361. package/build/esm/GenerateContext/enhanceOntology.d.ts.map +0 -1
  362. package/build/esm/MinimalFs.d.ts +0 -10
  363. package/build/esm/MinimalFs.d.ts.map +0 -1
  364. package/build/esm/WireOntologyDefinition.d.ts +0 -4
  365. package/build/esm/WireOntologyDefinition.d.ts.map +0 -1
  366. package/build/esm/generateClientSdkPackage.d.ts +0 -34
  367. package/build/esm/generateClientSdkPackage.d.ts.map +0 -1
  368. package/build/esm/generateClientSdkPackage.test.d.ts +0 -2
  369. package/build/esm/generateClientSdkPackage.test.d.ts.map +0 -1
  370. package/build/esm/index.d.ts +0 -5
  371. package/build/esm/index.d.ts.map +0 -1
  372. package/build/esm/shared/apiNamespaces/startsWithApiNamespace.d.ts +0 -2
  373. package/build/esm/shared/apiNamespaces/startsWithApiNamespace.d.ts.map +0 -1
  374. package/build/esm/shared/apiNamespaces/startsWithApiNamespace.test.d.ts +0 -2
  375. package/build/esm/shared/apiNamespaces/startsWithApiNamespace.test.d.ts.map +0 -1
  376. package/build/esm/shared/getObjectImports.d.ts +0 -4
  377. package/build/esm/shared/getObjectImports.d.ts.map +0 -1
  378. package/build/esm/shared/getObjectTypeApiNamesFromQuery.d.ts +0 -4
  379. package/build/esm/shared/getObjectTypeApiNamesFromQuery.d.ts.map +0 -1
  380. package/build/esm/shared/getObjectTypesFromQueryDataType.d.ts +0 -3
  381. package/build/esm/shared/getObjectTypesFromQueryDataType.d.ts.map +0 -1
  382. package/build/esm/shared/propertyJsdoc.d.ts +0 -6
  383. package/build/esm/shared/propertyJsdoc.d.ts.map +0 -1
  384. package/build/esm/shared/sanitizeMetadata.d.ts +0 -2
  385. package/build/esm/shared/sanitizeMetadata.d.ts.map +0 -1
  386. package/build/esm/shared/sanitizeMetadata.test.d.ts +0 -2
  387. package/build/esm/shared/sanitizeMetadata.test.d.ts.map +0 -1
  388. package/build/esm/util/InMemoryFs.d.ts +0 -7
  389. package/build/esm/util/InMemoryFs.d.ts.map +0 -1
  390. package/build/esm/util/commaSeparatedIdentifiers.d.ts +0 -2
  391. package/build/esm/util/commaSeparatedIdentifiers.d.ts.map +0 -1
  392. package/build/esm/util/commaSeparatedTypeIdentifiers.d.ts +0 -2
  393. package/build/esm/util/commaSeparatedTypeIdentifiers.d.ts.map +0 -1
  394. package/build/esm/util/deleteUndefineds.d.ts +0 -2
  395. package/build/esm/util/deleteUndefineds.d.ts.map +0 -1
  396. package/build/esm/util/reservedKeywords.d.ts +0 -2
  397. package/build/esm/util/reservedKeywords.d.ts.map +0 -1
  398. package/build/esm/util/stringUnionFrom.d.ts +0 -2
  399. package/build/esm/util/stringUnionFrom.d.ts.map +0 -1
  400. package/build/esm/util/stringify.d.ts +0 -20
  401. package/build/esm/util/stringify.d.ts.map +0 -1
  402. package/build/esm/util/test/TodoWireOntology.d.ts +0 -3
  403. package/build/esm/util/test/TodoWireOntology.d.ts.map +0 -1
  404. package/build/esm/util/test/compileThis.d.ts +0 -3
  405. package/build/esm/util/test/compileThis.d.ts.map +0 -1
  406. package/build/esm/util/test/createMockMinimalFiles.d.ts +0 -13
  407. package/build/esm/util/test/createMockMinimalFiles.d.ts.map +0 -1
  408. package/build/esm/util/test/formatTs.d.ts +0 -2
  409. package/build/esm/util/test/formatTs.d.ts.map +0 -1
  410. package/build/esm/util/verifyOutDir.d.ts +0 -9
  411. package/build/esm/util/verifyOutDir.d.ts.map +0 -1
  412. package/build/esm/v2.0/UNSTABLE_wireInterfaceTypeV2ToSdkObjectConst.d.ts +0 -2
  413. package/build/esm/v2.0/UNSTABLE_wireInterfaceTypeV2ToSdkObjectConst.d.ts.map +0 -1
  414. package/build/esm/v2.0/UNSTABLE_wireInterfaceTypeV2ToSdkObjectConst.test.d.ts +0 -2
  415. package/build/esm/v2.0/UNSTABLE_wireInterfaceTypeV2ToSdkObjectConst.test.d.ts.map +0 -1
  416. package/build/esm/v2.0/generateClientSdkVersionTwoPointZero.d.ts.map +0 -1
  417. package/build/esm/v2.0/generateClientSdkVersionTwoPointZero.test.d.ts +0 -2
  418. package/build/esm/v2.0/generateClientSdkVersionTwoPointZero.test.d.ts.map +0 -1
  419. package/build/esm/v2.0/generateMetadata.d.ts +0 -3
  420. package/build/esm/v2.0/generateMetadata.d.ts.map +0 -1
  421. package/build/esm/v2.0/generatePerActionDataFiles.d.ts +0 -3
  422. package/build/esm/v2.0/generatePerActionDataFiles.d.ts.map +0 -1
  423. package/build/esm/v2.0/generatePerActionDataFiles.test.d.ts +0 -2
  424. package/build/esm/v2.0/generatePerActionDataFiles.test.d.ts.map +0 -1
  425. package/build/esm/v2.0/generatePerInterfaceDataFiles.d.ts +0 -2
  426. package/build/esm/v2.0/generatePerInterfaceDataFiles.d.ts.map +0 -1
  427. package/build/esm/v2.0/generatePerObjectDataFiles.d.ts.map +0 -1
  428. package/build/esm/v2.0/generatePerQueryDataFiles.d.ts +0 -9
  429. package/build/esm/v2.0/generatePerQueryDataFiles.d.ts.map +0 -1
  430. package/build/esm/v2.0/generatePerQueryDataFiles.test.d.ts +0 -2
  431. package/build/esm/v2.0/generatePerQueryDataFiles.test.d.ts.map +0 -1
  432. package/build/esm/v2.0/generateRootIndexTsFile.d.ts.map +0 -1
  433. package/build/esm/v2.0/getDescriptionIfPresent.d.ts +0 -2
  434. package/build/esm/v2.0/getDescriptionIfPresent.d.ts.map +0 -1
  435. package/build/esm/v2.0/wireObjectTypeV2ToSdkObjectConstV2.d.ts +0 -12
  436. package/build/esm/v2.0/wireObjectTypeV2ToSdkObjectConstV2.d.ts.map +0 -1
  437. package/build/esm/validateWireOntologyAssumptions.d.ts +0 -3
  438. package/build/esm/validateWireOntologyAssumptions.d.ts.map +0 -1
@@ -13,6 +13,7 @@
13
13
  * See the License for the specific language governing permissions and
14
14
  * limitations under the License.
15
15
  */
16
+
16
17
  import { wireActionTypeV2ToSdkActionMetadata } from "@osdk/generator-converters";
17
18
  import path from "node:path";
18
19
  import { getObjectImports } from "../shared/getObjectImports.js";
@@ -62,6 +63,9 @@ export async function generatePerActionDataFiles({
62
63
  } else if (type.type === "objectSet") {
63
64
  const obj = enhancedOntology.requireObjectType(type.objectSet);
64
65
  return `ActionMetadata.DataType.ObjectSet<${obj.getImportedDefinitionIdentifier(true)}>`;
66
+ } else if (type.type === "interface") {
67
+ const obj = enhancedOntology.requireInterfaceType(type.interface);
68
+ return `ActionMetadata.DataType.Interface<${obj.getImportedDefinitionIdentifier(true)}>`;
65
69
  } else if (type.type === "struct") {
66
70
  return `ActionMetadata.DataType.Struct<${JSON.stringify(type.struct)}>`;
67
71
  }
@@ -79,6 +83,8 @@ export async function generatePerActionDataFiles({
79
83
  return `ActionParam.ObjectType<${enhancedOntology.requireObjectType(input.object).getImportedDefinitionIdentifier(true)}>`;
80
84
  } else if (input.type === "objectSet") {
81
85
  return `ActionParam.ObjectSetType<${enhancedOntology.requireObjectType(input.objectSet).getImportedDefinitionIdentifier(true)}>`;
86
+ } else if (input.type === "interface") {
87
+ return `ActionParam.InterfaceType<${enhancedOntology.requireInterfaceType(input.interface).getImportedDefinitionIdentifier(true)}>`;
82
88
  } else if (input.type === "struct") {
83
89
  return `ActionParam.StructType<${JSON.stringify(input.struct)}>`;
84
90
  }
@@ -93,12 +99,24 @@ export async function generatePerActionDataFiles({
93
99
  referencedObjectDefs.add(enhancedOntology.requireObjectType(p.dataType.objectTypeApiName));
94
100
  }
95
101
  }
96
- if (p.dataType.type === "array" && (p.dataType.subType.type === "object" || p.dataType.subType.type === "objectSet")) {
97
- if (p.dataType.subType.objectApiName) {
98
- referencedObjectDefs.add(enhancedOntology.requireObjectType(p.dataType.subType.objectApiName));
102
+ if (p.dataType.type === "interfaceObject") {
103
+ if (p.dataType.interfaceTypeApiName) {
104
+ referencedObjectDefs.add(enhancedOntology.requireInterfaceType(p.dataType.interfaceTypeApiName));
105
+ }
106
+ }
107
+ if (p.dataType.type === "array") {
108
+ if (p.dataType.subType.type === "object" || p.dataType.subType.type === "objectSet") {
109
+ if (p.dataType.subType.objectApiName) {
110
+ referencedObjectDefs.add(enhancedOntology.requireObjectType(p.dataType.subType.objectApiName));
111
+ }
112
+ if (p.dataType.subType.objectTypeApiName) {
113
+ referencedObjectDefs.add(enhancedOntology.requireObjectType(p.dataType.subType.objectTypeApiName));
114
+ }
99
115
  }
100
- if (p.dataType.subType.objectTypeApiName) {
101
- referencedObjectDefs.add(enhancedOntology.requireObjectType(p.dataType.subType.objectTypeApiName));
116
+ if (p.dataType.subType.type === "interfaceObject") {
117
+ if (p.dataType.subType.interfaceTypeApiName) {
118
+ referencedObjectDefs.add(enhancedOntology.requireInterfaceType(p.dataType.subType.interfaceTypeApiName));
119
+ }
102
120
  }
103
121
  }
104
122
  }
@@ -1 +1 @@
1
- {"version":3,"file":"generatePerActionDataFiles.js","names":["wireActionTypeV2ToSdkActionMetadata","path","getObjectImports","deleteUndefineds","stringify","stringUnionFrom","formatTs","getDescriptionIfPresent","generatePerActionDataFiles","sanitizedOntology","ontology","fs","outDir","rootOutDir","importExt","enhancedOntology","forInternalUse","join","mkdir","recursive","Promise","all","Object","values","actionTypes","map","action","currentFilePath","shortApiName","uniqueApiNamesArray","extractReferencedObjectsFromAction","raw","uniqueApiNames","Set","fullActionDef","createParamsDef","entries","parameters","sort","a","b","localeCompare","length","key","value","description","d","undefined","type","JSON","obj","requireObjectType","object","getImportedDefinitionIdentifier","objectSet","struct","getActionParamType","input","referencedObjectDefs","p","dataType","objectApiName","add","objectTypeApiName","subType","imports","writeFile","jsDocBlock","push","*","ogValue","_","ogKey","nullable","multiplicity","paramsIdentifier","definitionParamsIdentifier","displayName","modifiedEntities","rid","status","indexFileRelPath","exportConstLine","getImportPathRelTo","keys","actionType","referencedObjectsInParameters","flatMap","objectTypeReference","extractReferencedObjectsFromActionParameter","referenceObjectsInEdits","operations","actionParameter"],"sources":["generatePerActionDataFiles.js"],"sourcesContent":["/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\nimport { wireActionTypeV2ToSdkActionMetadata } from \"@osdk/generator-converters\";\nimport path from \"node:path\";\nimport { getObjectImports } from \"../shared/getObjectImports.js\";\nimport { deleteUndefineds } from \"../util/deleteUndefineds.js\";\nimport { stringify } from \"../util/stringify.js\";\nimport { stringUnionFrom } from \"../util/stringUnionFrom.js\";\nimport { formatTs } from \"../util/test/formatTs.js\";\nimport { getDescriptionIfPresent } from \"./getDescriptionIfPresent.js\";\nexport async function generatePerActionDataFiles({ sanitizedOntology: ontology, fs, outDir: rootOutDir, importExt = \"\", ontology: enhancedOntology, forInternalUse = false, }) {\n const outDir = path.join(rootOutDir, \"ontology\", \"actions\");\n await fs.mkdir(outDir, { recursive: true });\n await Promise.all(Object.values(enhancedOntology.actionTypes).map(async (action) => {\n const currentFilePath = path.join(\"ontology\", \"actions\", `${action.shortApiName}.ts`);\n const uniqueApiNamesArray = extractReferencedObjectsFromAction(action.raw);\n const uniqueApiNames = new Set(uniqueApiNamesArray);\n const uniqueApiNamesString = stringUnionFrom([...uniqueApiNames]);\n const fullActionDef = deleteUndefineds(wireActionTypeV2ToSdkActionMetadata(action.raw));\n function createParamsDef() {\n const entries = Object.entries(fullActionDef.parameters ?? {});\n entries.sort((a, b) => a[0].localeCompare(b[0]));\n if (entries.length === 0) {\n return `// Represents the definition of the parameters for the action\n export type ParamsDefinition = Record<string, never>;`;\n }\n return `// Represents the definition of the parameters for the action\n export type ParamsDefinition = {\n ${entries.map(([key, value]) => {\n return `\"${key}\": {\n ${stringify(value, {\n description: (value, d) => value ? d(value) : undefined, // trick to remove undefineds\n type: (type) => {\n if (typeof type === \"string\") {\n return JSON.stringify(type);\n }\n else if (type.type === \"object\") {\n const obj = enhancedOntology.requireObjectType(type.object);\n return `ActionMetadata.DataType.Object<${obj.getImportedDefinitionIdentifier(true)}>`;\n }\n else if (type.type === \"objectSet\") {\n const obj = enhancedOntology.requireObjectType(type.objectSet);\n return `ActionMetadata.DataType.ObjectSet<${obj.getImportedDefinitionIdentifier(true)}>`;\n }\n else if (type.type === \"struct\") {\n return `ActionMetadata.DataType.Struct<${JSON.stringify(type.struct)}>`;\n }\n return undefined;\n },\n })}\n }`;\n })\n .join(\";\\n\")}\n }`;\n }\n function getActionParamType(input) {\n if (typeof input === \"string\") {\n return `ActionParam.PrimitiveType<${JSON.stringify(input)}>`;\n }\n else if (input.type === \"object\") {\n return `ActionParam.ObjectType<${enhancedOntology.requireObjectType(input.object)\n .getImportedDefinitionIdentifier(true)}>`;\n }\n else if (input.type === \"objectSet\") {\n return `ActionParam.ObjectSetType<${enhancedOntology.requireObjectType(input.objectSet)\n .getImportedDefinitionIdentifier(true)}>`;\n }\n else if (input.type === \"struct\") {\n return `ActionParam.StructType<${JSON.stringify(input.struct)}>`;\n }\n }\n function createV2Types() {\n const oldParamsIdentifier = `${action.shortApiName}$Params`;\n const jsDocBlock = [\"/**\"];\n if (action.description != null) {\n jsDocBlock.push(`* ${action.description}`);\n }\n // the params must be a `type` to align properly with the `ActionDefinition` interface\n // this way we can generate a strict type for the function itself and reference it from the Action Definition\n return `\n \n export namespace ${action.shortApiName}{\n ${createParamsDef()}\n\n ${getDescriptionIfPresent(action.description)}\n export interface Params {\n ${stringify(fullActionDef.parameters, {\n \"*\": (ogValue, _, ogKey) => {\n const key = `${getDescriptionIfPresent(ogValue.description)}\n readonly \"${ogKey}\"${ogValue.nullable ? \"?\" : \"\"}`;\n const value = ogValue.multiplicity\n ? `ReadonlyArray<${getActionParamType(ogValue.type)}>`\n : `${getActionParamType(ogValue.type)}`;\n jsDocBlock.push(`* @param {${getActionParamType(ogValue.type)}} ${ogValue.nullable ? `[${ogKey}]` : ogKey} ${ogValue.description ?? \"\"} `);\n return [key, value];\n },\n })}\n }\n\n // Represents a fqn of the action\n export interface Signatures {\n ${getDescriptionIfPresent(action.description)}\n applyAction<P extends ${action.paramsIdentifier}, OP extends ApplyActionOptions>(args: P, options?: OP): Promise<ActionReturnTypeForOptions<OP>>;\n \n batchApplyAction<P extends ReadonlyArray<${action.paramsIdentifier}>, OP extends ApplyBatchActionOptions>(args: P, options?: OP): Promise<ActionReturnTypeForOptions<OP>>;\n }\n \n }\n\n \n ${jsDocBlock.join(\"\\n\")}\n */\n export interface ${action.shortApiName} extends ActionDefinition<${action.shortApiName}.Signatures> {\n __DefinitionMetadata?: {\n ${stringify(fullActionDef, {\n \"parameters\": () => action.definitionParamsIdentifier,\n })}\n \n signatures: ${action.shortApiName}.Signatures;\n },\n ${stringify(fullActionDef, {\n \"description\": () => undefined,\n \"displayName\": () => undefined,\n \"modifiedEntities\": () => undefined,\n \"parameters\": () => undefined,\n \"rid\": () => undefined,\n \"status\": () => undefined,\n })}\n osdkMetadata: typeof $osdkMetadata;\n }\n `;\n }\n function createV2Object() {\n return ` export const ${action.shortApiName}: ${action.shortApiName} = \n {\n ${stringify(fullActionDef, {\n \"description\": () => undefined,\n \"displayName\": () => undefined,\n \"modifiedEntities\": () => undefined,\n \"parameters\": () => undefined,\n \"rid\": () => undefined,\n \"status\": () => undefined,\n })},\n osdkMetadata: $osdkMetadata\n }\n `;\n }\n const referencedObjectDefs = new Set();\n for (const p of Object.values(action.parameters)) {\n if (p.dataType.type === \"object\" || p.dataType.type === \"objectSet\") {\n if (p.dataType.objectApiName) {\n referencedObjectDefs.add(enhancedOntology.requireObjectType(p.dataType.objectApiName));\n }\n if (p.dataType.objectTypeApiName) {\n referencedObjectDefs.add(enhancedOntology.requireObjectType(p.dataType.objectTypeApiName));\n }\n }\n if (p.dataType.type === \"array\"\n && (p.dataType.subType.type === \"object\"\n || p.dataType.subType.type === \"objectSet\")) {\n if (p.dataType.subType.objectApiName) {\n referencedObjectDefs.add(enhancedOntology.requireObjectType(p.dataType.subType.objectApiName));\n }\n if (p.dataType.subType.objectTypeApiName) {\n referencedObjectDefs.add(enhancedOntology.requireObjectType(p.dataType.subType.objectTypeApiName));\n }\n }\n }\n const imports = getObjectImports(referencedObjectDefs, undefined, currentFilePath, true);\n await fs.writeFile(path.join(rootOutDir, currentFilePath), await formatTs(`\n import type {\n ActionDefinition,\n ActionMetadata,\n ActionParam,\n ActionReturnTypeForOptions,\n ApplyActionOptions,\n ApplyBatchActionOptions,\n } from \"${forInternalUse ? \"@osdk/api\" : \"@osdk/client\"}\";\n import { $osdkMetadata} from \"../../OntologyMetadata${importExt}\";\n ${imports}\n\n \n ${createV2Types()}\n\n ${createV2Object()}\n `));\n }));\n const indexFileRelPath = path.join(\"ontology\", \"actions.ts\");\n await fs.writeFile(path.join(rootOutDir, indexFileRelPath), await formatTs(`\n ${Object.values(enhancedOntology.actionTypes).map(action => {\n const exportConstLine = `export {${action.shortApiName} } from \"${action.getImportPathRelTo(indexFileRelPath)}\";`;\n return exportConstLine;\n })\n .join(\"\\n\")}\n ${Object.keys(ontology.actionTypes).length === 0 ? \"export {};\" : \"\"}\n `));\n}\nfunction extractReferencedObjectsFromAction(actionType) {\n const referencedObjectsInParameters = Object.values(actionType.parameters)\n .flatMap(({ dataType }) => {\n const objectTypeReference = extractReferencedObjectsFromActionParameter(dataType);\n return objectTypeReference ? [objectTypeReference] : [];\n });\n const referenceObjectsInEdits = actionType.operations.flatMap(value => {\n switch (value.type) {\n case \"createObject\":\n return [value.objectTypeApiName];\n case \"modifyObject\":\n return [value.objectTypeApiName];\n case \"deleteObject\":\n case \"createLink\":\n case \"deleteLink\":\n default:\n return [];\n }\n });\n return [...referenceObjectsInEdits, ...referencedObjectsInParameters];\n}\nfunction extractReferencedObjectsFromActionParameter(actionParameter) {\n switch (actionParameter.type) {\n case \"objectSet\":\n case \"object\":\n return actionParameter.objectTypeApiName;\n case \"array\":\n return extractReferencedObjectsFromActionParameter(actionParameter.subType);\n case \"string\":\n case \"boolean\":\n case \"attachment\":\n case \"date\":\n case \"double\":\n case \"integer\":\n case \"long\":\n case \"timestamp\":\n return undefined;\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"generatePerActionDataFiles.js","names":["wireActionTypeV2ToSdkActionMetadata","path","getObjectImports","deleteUndefineds","stringify","stringUnionFrom","formatTs","getDescriptionIfPresent","generatePerActionDataFiles","sanitizedOntology","ontology","fs","outDir","rootOutDir","importExt","enhancedOntology","forInternalUse","join","mkdir","recursive","Promise","all","Object","values","actionTypes","map","action","currentFilePath","shortApiName","uniqueApiNamesArray","extractReferencedObjectsFromAction","raw","uniqueApiNames","Set","fullActionDef","createParamsDef","entries","parameters","sort","a","b","localeCompare","length","key","value","description","d","undefined","type","JSON","obj","requireObjectType","object","getImportedDefinitionIdentifier","objectSet","requireInterfaceType","interface","struct","getActionParamType","input","referencedObjectDefs","p","dataType","objectApiName","add","objectTypeApiName","interfaceTypeApiName","subType","imports","writeFile","jsDocBlock","push","*","ogValue","_","ogKey","nullable","multiplicity","paramsIdentifier","definitionParamsIdentifier","displayName","modifiedEntities","rid","status","indexFileRelPath","exportConstLine","getImportPathRelTo","keys","actionType","referencedObjectsInParameters","flatMap","objectTypeReference","extractReferencedObjectsFromActionParameter","referenceObjectsInEdits","operations","actionParameter"],"sources":["generatePerActionDataFiles.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 { ActionMetadata } from \"@osdk/api\";\nimport { wireActionTypeV2ToSdkActionMetadata } from \"@osdk/generator-converters\";\nimport type {\n ActionParameterType,\n ActionTypeV2,\n} from \"@osdk/internal.foundry.core\";\nimport path from \"node:path\";\nimport type { EnhancedObjectType } from \"../GenerateContext/EnhancedObjectType.js\";\nimport type { ForeignType } from \"../GenerateContext/ForeignType.js\";\nimport type { GenerateContext } from \"../GenerateContext/GenerateContext.js\";\nimport { getObjectImports } from \"../shared/getObjectImports.js\";\nimport { deleteUndefineds } from \"../util/deleteUndefineds.js\";\nimport { stringify } from \"../util/stringify.js\";\nimport { stringUnionFrom } from \"../util/stringUnionFrom.js\";\nimport { formatTs } from \"../util/test/formatTs.js\";\nimport { getDescriptionIfPresent } from \"./getDescriptionIfPresent.js\";\n\nexport async function generatePerActionDataFiles(\n {\n sanitizedOntology: ontology,\n fs,\n outDir: rootOutDir,\n importExt = \"\",\n ontology: enhancedOntology,\n forInternalUse = false,\n }: Pick<\n GenerateContext,\n | \"sanitizedOntology\"\n | \"fs\"\n | \"outDir\"\n | \"importExt\"\n | \"ontology\"\n | \"forInternalUse\"\n >,\n): Promise<void> {\n const outDir = path.join(rootOutDir, \"ontology\", \"actions\");\n\n await fs.mkdir(outDir, { recursive: true });\n await Promise.all(\n Object.values(enhancedOntology.actionTypes).map(async (action) => {\n const currentFilePath = path.join(\n \"ontology\",\n \"actions\",\n `${action.shortApiName}.ts`,\n );\n\n const uniqueApiNamesArray = extractReferencedObjectsFromAction(\n action.raw,\n );\n const uniqueApiNames = new Set(uniqueApiNamesArray);\n\n const uniqueApiNamesString = stringUnionFrom([...uniqueApiNames]);\n\n const fullActionDef = deleteUndefineds(\n wireActionTypeV2ToSdkActionMetadata(action.raw),\n );\n\n function createParamsDef() {\n const entries = Object.entries(fullActionDef.parameters ?? {});\n entries.sort((a, b) => a[0].localeCompare(b[0]));\n\n if (entries.length === 0) {\n return `// Represents the definition of the parameters for the action\n export type ParamsDefinition = Record<string, never>;`;\n }\n\n return `// Represents the definition of the parameters for the action\n export type ParamsDefinition = {\n ${\n entries.map(([key, value]) => {\n return `\"${key}\": {\n ${\n stringify(value, {\n description: (value, d) => value ? d(value) : undefined, // trick to remove undefineds\n type: (type) => {\n if (typeof type === \"string\") {\n return JSON.stringify(type);\n } else if (type.type === \"object\") {\n const obj = enhancedOntology.requireObjectType(type.object);\n return `ActionMetadata.DataType.Object<${\n obj.getImportedDefinitionIdentifier(true)\n }>`;\n } else if (type.type === \"objectSet\") {\n const obj = enhancedOntology.requireObjectType(\n type.objectSet,\n );\n return `ActionMetadata.DataType.ObjectSet<${\n obj.getImportedDefinitionIdentifier(true)\n }>`;\n } else if (type.type === \"interface\") {\n const obj = enhancedOntology.requireInterfaceType(\n type.interface,\n );\n return `ActionMetadata.DataType.Interface<${\n obj.getImportedDefinitionIdentifier(true)\n }>`;\n } else if (type.type === \"struct\") {\n return `ActionMetadata.DataType.Struct<${\n JSON.stringify(type.struct)\n }>`;\n }\n return undefined;\n },\n })\n }\n }`;\n })\n .join(\";\\n\")\n }\n }`;\n }\n\n function getActionParamType(\n input: ActionMetadata.Parameter[\"type\"],\n ) {\n if (typeof input === \"string\") {\n return `ActionParam.PrimitiveType<${JSON.stringify(input)}>`;\n } else if (input.type === \"object\") {\n return `ActionParam.ObjectType<${\n enhancedOntology.requireObjectType(input.object)\n .getImportedDefinitionIdentifier(true)\n }>`;\n } else if (input.type === \"objectSet\") {\n return `ActionParam.ObjectSetType<${\n enhancedOntology.requireObjectType(input.objectSet)\n .getImportedDefinitionIdentifier(true)\n }>`;\n } else if (input.type === \"interface\") {\n return `ActionParam.InterfaceType<${\n enhancedOntology.requireInterfaceType(input.interface)\n .getImportedDefinitionIdentifier(true)\n }>`;\n } else if (input.type === \"struct\") {\n return `ActionParam.StructType<${JSON.stringify(input.struct)}>`;\n }\n }\n\n function createV2Types() {\n const oldParamsIdentifier = `${action.shortApiName}$Params`;\n const jsDocBlock = [\"/**\"];\n if (action.description != null) {\n jsDocBlock.push(`* ${action.description}`);\n }\n // the params must be a `type` to align properly with the `ActionDefinition` interface\n // this way we can generate a strict type for the function itself and reference it from the Action Definition\n return `\n \n export namespace ${action.shortApiName}{\n ${createParamsDef()}\n\n ${getDescriptionIfPresent(action.description)}\n export interface Params {\n ${\n stringify(fullActionDef.parameters, {\n \"*\": (ogValue, _, ogKey) => {\n const key = `${getDescriptionIfPresent(ogValue.description)}\n readonly \"${ogKey}\"${ogValue.nullable ? \"?\" : \"\"}`;\n\n const value = ogValue.multiplicity\n ? `ReadonlyArray<${getActionParamType(ogValue.type)}>`\n : `${getActionParamType(ogValue.type)}`;\n jsDocBlock.push(\n `* @param {${getActionParamType(ogValue.type)}} ${\n ogValue.nullable ? `[${ogKey}]` : ogKey\n } ${ogValue.description ?? \"\"} `,\n );\n return [key, value];\n },\n })\n }\n }\n\n // Represents a fqn of the action\n export interface Signatures {\n ${getDescriptionIfPresent(action.description)}\n applyAction<P extends ${action.paramsIdentifier}, OP extends ApplyActionOptions>(args: P, options?: OP): Promise<ActionReturnTypeForOptions<OP>>;\n \n batchApplyAction<P extends ReadonlyArray<${action.paramsIdentifier}>, OP extends ApplyBatchActionOptions>(args: P, options?: OP): Promise<ActionReturnTypeForOptions<OP>>;\n }\n \n }\n\n \n ${jsDocBlock.join(\"\\n\")}\n */\n export interface ${action.shortApiName} extends ActionDefinition<${action.shortApiName}.Signatures> {\n __DefinitionMetadata?: {\n ${\n stringify(fullActionDef, {\n \"parameters\": () => action.definitionParamsIdentifier,\n })\n }\n \n signatures: ${action.shortApiName}.Signatures;\n },\n ${\n stringify(fullActionDef, {\n \"description\": () => undefined,\n \"displayName\": () => undefined,\n \"modifiedEntities\": () => undefined,\n \"parameters\": () => undefined,\n \"rid\": () => undefined,\n \"status\": () => undefined,\n })\n }\n osdkMetadata: typeof $osdkMetadata;\n }\n `;\n }\n\n function createV2Object() {\n return ` export const ${action.shortApiName}: ${action.shortApiName} = \n {\n ${\n stringify(fullActionDef, {\n \"description\": () => undefined,\n \"displayName\": () => undefined,\n \"modifiedEntities\": () => undefined,\n \"parameters\": () => undefined,\n \"rid\": () => undefined,\n \"status\": () => undefined,\n })\n },\n osdkMetadata: $osdkMetadata\n }\n `;\n }\n\n const referencedObjectDefs = new Set<EnhancedObjectType | ForeignType>();\n for (const p of Object.values(action.parameters)) {\n if (p.dataType.type === \"object\" || p.dataType.type === \"objectSet\") {\n if (p.dataType.objectApiName) {\n referencedObjectDefs.add(\n enhancedOntology.requireObjectType(p.dataType.objectApiName),\n );\n }\n if (p.dataType.objectTypeApiName) {\n referencedObjectDefs.add(\n enhancedOntology.requireObjectType(p.dataType.objectTypeApiName),\n );\n }\n }\n if (p.dataType.type === \"interfaceObject\") {\n if (p.dataType.interfaceTypeApiName) {\n referencedObjectDefs.add(\n enhancedOntology.requireInterfaceType(\n p.dataType.interfaceTypeApiName,\n ),\n );\n }\n }\n if (p.dataType.type === \"array\") {\n if (\n p.dataType.subType.type === \"object\"\n || p.dataType.subType.type === \"objectSet\"\n ) {\n if (p.dataType.subType.objectApiName) {\n referencedObjectDefs.add(\n enhancedOntology.requireObjectType(\n p.dataType.subType.objectApiName,\n ),\n );\n }\n if (p.dataType.subType.objectTypeApiName) {\n referencedObjectDefs.add(\n enhancedOntology.requireObjectType(\n p.dataType.subType.objectTypeApiName,\n ),\n );\n }\n }\n if (\n p.dataType.subType.type === \"interfaceObject\"\n ) {\n if (p.dataType.subType.interfaceTypeApiName) {\n referencedObjectDefs.add(\n enhancedOntology.requireInterfaceType(\n p.dataType.subType.interfaceTypeApiName,\n ),\n );\n }\n }\n }\n }\n\n const imports = getObjectImports(\n referencedObjectDefs,\n undefined,\n currentFilePath,\n true,\n );\n\n await fs.writeFile(\n path.join(rootOutDir, currentFilePath),\n await formatTs(`\n import type {\n ActionDefinition,\n ActionMetadata,\n ActionParam,\n ActionReturnTypeForOptions,\n ApplyActionOptions,\n ApplyBatchActionOptions,\n } from \"${forInternalUse ? \"@osdk/api\" : \"@osdk/client\"}\";\n import { $osdkMetadata} from \"../../OntologyMetadata${importExt}\";\n ${imports}\n\n \n ${createV2Types()}\n\n ${createV2Object()}\n `),\n );\n }),\n );\n\n const indexFileRelPath = path.join(\"ontology\", \"actions.ts\");\n\n await fs.writeFile(\n path.join(rootOutDir, indexFileRelPath),\n await formatTs(`\n ${\n Object.values(enhancedOntology.actionTypes).map(action => {\n const exportConstLine = `export {${action.shortApiName} } from \"${\n action.getImportPathRelTo(indexFileRelPath)\n }\";`;\n\n return exportConstLine;\n })\n .join(\"\\n\")\n }\n ${Object.keys(ontology.actionTypes).length === 0 ? \"export {};\" : \"\"}\n `),\n );\n}\n\nfunction extractReferencedObjectsFromAction(\n actionType: ActionTypeV2,\n): string[] {\n const referencedObjectsInParameters = Object.values(actionType.parameters)\n .flatMap(({ dataType }) => {\n const objectTypeReference = extractReferencedObjectsFromActionParameter(\n dataType,\n );\n return objectTypeReference ? [objectTypeReference] : [];\n });\n\n const referenceObjectsInEdits = actionType.operations.flatMap(value => {\n switch (value.type) {\n case \"createObject\":\n return [value.objectTypeApiName];\n case \"modifyObject\":\n return [value.objectTypeApiName];\n case \"deleteObject\":\n case \"createLink\":\n case \"deleteLink\":\n default:\n return [];\n }\n });\n\n return [...referenceObjectsInEdits, ...referencedObjectsInParameters];\n}\n\nfunction extractReferencedObjectsFromActionParameter(\n actionParameter: ActionParameterType,\n): string | undefined {\n switch (actionParameter.type) {\n case \"objectSet\":\n case \"object\":\n return actionParameter.objectTypeApiName;\n case \"array\":\n return extractReferencedObjectsFromActionParameter(\n actionParameter.subType,\n );\n case \"string\":\n case \"boolean\":\n case \"attachment\":\n case \"date\":\n case \"double\":\n case \"integer\":\n case \"long\":\n case \"timestamp\":\n return undefined;\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -13,6 +13,7 @@
13
13
  * See the License for the specific language governing permissions and
14
14
  * limitations under the License.
15
15
  */
16
+
16
17
  import * as path from "node:path";
17
18
  import { describe, expect, it } from "vitest";
18
19
  import { enhanceOntology } from "../GenerateContext/enhanceOntology.js";
@@ -1 +1 @@
1
- {"version":3,"file":"generatePerActionDataFiles.test.js","names":["path","describe","expect","it","enhanceOntology","createMockMinimalFiles","TodoWireOntology","generatePerActionDataFiles","helper","BASE_PATH","sanitizedOntology","actionTypes","fs","minimalFiles","outDir","ontology","sanitized","importExt","externalObjects","Map","externalInterfaces","externalSpts","getFiles","toEqual","join","toContain"],"sources":["generatePerActionDataFiles.test.js"],"sourcesContent":["/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\nimport * as path from \"node:path\";\nimport { describe, expect, it } from \"vitest\";\nimport { enhanceOntology } from \"../GenerateContext/enhanceOntology.js\";\nimport { createMockMinimalFiles } from \"../util/test/createMockMinimalFiles.js\";\nimport { TodoWireOntology } from \"../util/test/TodoWireOntology.js\";\nimport { generatePerActionDataFiles } from \"./generatePerActionDataFiles.js\";\ndescribe(generatePerActionDataFiles, () => {\n it(\"guards against empty actions\", async () => {\n const helper = createMockMinimalFiles();\n const BASE_PATH = \"/foo\";\n const sanitizedOntology = { ...TodoWireOntology, actionTypes: {} };\n await generatePerActionDataFiles({\n sanitizedOntology,\n fs: helper.minimalFiles,\n outDir: BASE_PATH,\n ontology: enhanceOntology({\n sanitized: sanitizedOntology,\n importExt: \"\",\n externalObjects: new Map(),\n externalInterfaces: new Map(),\n externalSpts: new Map(),\n }),\n });\n expect(helper.getFiles()[`${BASE_PATH}/ontology/actions.ts`]).toEqual(\"export {};\\n\");\n });\n it(\"imports object types correctly with array params in actions\", async () => {\n const helper = createMockMinimalFiles();\n const BASE_PATH = \"/foo/ontology/actions\";\n const sanitizedOntology = TodoWireOntology;\n await generatePerActionDataFiles({\n sanitizedOntology,\n fs: helper.minimalFiles,\n outDir: path.join(BASE_PATH, \"..\", \"..\"),\n ontology: enhanceOntology({\n sanitized: sanitizedOntology,\n importExt: \"\",\n externalObjects: new Map(),\n externalInterfaces: new Map(),\n externalSpts: new Map(),\n }),\n });\n expect(helper.getFiles()[`${BASE_PATH}/deleteTodos.ts`]).toContain(\"import type { Todo } from '../objects/Todo';\\n\");\n });\n});\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,KAAKA,IAAI,MAAM,WAAW;AACjC,SAASC,QAAQ,EAAEC,MAAM,EAAEC,EAAE,QAAQ,QAAQ;AAC7C,SAASC,eAAe,QAAQ,uCAAuC;AACvE,SAASC,sBAAsB,QAAQ,wCAAwC;AAC/E,SAASC,gBAAgB,QAAQ,kCAAkC;AACnE,SAASC,0BAA0B,QAAQ,iCAAiC;AAC5EN,QAAQ,CAACM,0BAA0B,EAAE,MAAM;EACvCJ,EAAE,CAAC,8BAA8B,EAAE,YAAY;IAC3C,MAAMK,MAAM,GAAGH,sBAAsB,CAAC,CAAC;IACvC,MAAMI,SAAS,GAAG,MAAM;IACxB,MAAMC,iBAAiB,GAAG;MAAE,GAAGJ,gBAAgB;MAAEK,WAAW,EAAE,CAAC;IAAE,CAAC;IAClE,MAAMJ,0BAA0B,CAAC;MAC7BG,iBAAiB;MACjBE,EAAE,EAAEJ,MAAM,CAACK,YAAY;MACvBC,MAAM,EAAEL,SAAS;MACjBM,QAAQ,EAAEX,eAAe,CAAC;QACtBY,SAAS,EAAEN,iBAAiB;QAC5BO,SAAS,EAAE,EAAE;QACbC,eAAe,EAAE,IAAIC,GAAG,CAAC,CAAC;QAC1BC,kBAAkB,EAAE,IAAID,GAAG,CAAC,CAAC;QAC7BE,YAAY,EAAE,IAAIF,GAAG,CAAC;MAC1B,CAAC;IACL,CAAC,CAAC;IACFjB,MAAM,CAACM,MAAM,CAACc,QAAQ,CAAC,CAAC,CAAC,GAAGb,SAAS,sBAAsB,CAAC,CAAC,CAACc,OAAO,CAAC,cAAc,CAAC;EACzF,CAAC,CAAC;EACFpB,EAAE,CAAC,6DAA6D,EAAE,YAAY;IAC1E,MAAMK,MAAM,GAAGH,sBAAsB,CAAC,CAAC;IACvC,MAAMI,SAAS,GAAG,uBAAuB;IACzC,MAAMC,iBAAiB,GAAGJ,gBAAgB;IAC1C,MAAMC,0BAA0B,CAAC;MAC7BG,iBAAiB;MACjBE,EAAE,EAAEJ,MAAM,CAACK,YAAY;MACvBC,MAAM,EAAEd,IAAI,CAACwB,IAAI,CAACf,SAAS,EAAE,IAAI,EAAE,IAAI,CAAC;MACxCM,QAAQ,EAAEX,eAAe,CAAC;QACtBY,SAAS,EAAEN,iBAAiB;QAC5BO,SAAS,EAAE,EAAE;QACbC,eAAe,EAAE,IAAIC,GAAG,CAAC,CAAC;QAC1BC,kBAAkB,EAAE,IAAID,GAAG,CAAC,CAAC;QAC7BE,YAAY,EAAE,IAAIF,GAAG,CAAC;MAC1B,CAAC;IACL,CAAC,CAAC;IACFjB,MAAM,CAACM,MAAM,CAACc,QAAQ,CAAC,CAAC,CAAC,GAAGb,SAAS,iBAAiB,CAAC,CAAC,CAACgB,SAAS,CAAC,gDAAgD,CAAC;EACxH,CAAC,CAAC;AACN,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"generatePerActionDataFiles.test.js","names":["path","describe","expect","it","enhanceOntology","createMockMinimalFiles","TodoWireOntology","generatePerActionDataFiles","helper","BASE_PATH","sanitizedOntology","actionTypes","fs","minimalFiles","outDir","ontology","sanitized","importExt","externalObjects","Map","externalInterfaces","externalSpts","getFiles","toEqual","join","toContain"],"sources":["generatePerActionDataFiles.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 * as path from \"node:path\";\nimport { describe, expect, it } from \"vitest\";\nimport { enhanceOntology } from \"../GenerateContext/enhanceOntology.js\";\nimport { createMockMinimalFiles } from \"../util/test/createMockMinimalFiles.js\";\nimport { TodoWireOntology } from \"../util/test/TodoWireOntology.js\";\nimport { generatePerActionDataFiles } from \"./generatePerActionDataFiles.js\";\n\ndescribe(generatePerActionDataFiles, () => {\n it(\"guards against empty actions\", async () => {\n const helper = createMockMinimalFiles();\n const BASE_PATH = \"/foo\";\n const sanitizedOntology = { ...TodoWireOntology, actionTypes: {} };\n await generatePerActionDataFiles(\n {\n sanitizedOntology,\n fs: helper.minimalFiles,\n outDir: BASE_PATH,\n ontology: enhanceOntology({\n sanitized: sanitizedOntology,\n importExt: \"\",\n externalObjects: new Map(),\n externalInterfaces: new Map(),\n externalSpts: new Map(),\n }),\n },\n );\n expect(helper.getFiles()[`${BASE_PATH}/ontology/actions.ts`]).toEqual(\n \"export {};\\n\",\n );\n });\n\n it(\"imports object types correctly with array params in actions\", async () => {\n const helper = createMockMinimalFiles();\n const BASE_PATH = \"/foo/ontology/actions\";\n const sanitizedOntology = TodoWireOntology;\n await generatePerActionDataFiles(\n {\n sanitizedOntology,\n fs: helper.minimalFiles,\n outDir: path.join(BASE_PATH, \"..\", \"..\"),\n ontology: enhanceOntology({\n sanitized: sanitizedOntology,\n importExt: \"\",\n externalObjects: new Map(),\n externalInterfaces: new Map(),\n externalSpts: new Map(),\n }),\n },\n );\n\n expect(helper.getFiles()[`${BASE_PATH}/deleteTodos.ts`]).toContain(\n \"import type { Todo } from '../objects/Todo';\\n\",\n );\n });\n});\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,OAAO,KAAKA,IAAI,MAAM,WAAW;AACjC,SAASC,QAAQ,EAAEC,MAAM,EAAEC,EAAE,QAAQ,QAAQ;AAC7C,SAASC,eAAe,QAAQ,uCAAuC;AACvE,SAASC,sBAAsB,QAAQ,wCAAwC;AAC/E,SAASC,gBAAgB,QAAQ,kCAAkC;AACnE,SAASC,0BAA0B,QAAQ,iCAAiC;AAE5EN,QAAQ,CAACM,0BAA0B,EAAE,MAAM;EACzCJ,EAAE,CAAC,8BAA8B,EAAE,YAAY;IAC7C,MAAMK,MAAM,GAAGH,sBAAsB,CAAC,CAAC;IACvC,MAAMI,SAAS,GAAG,MAAM;IACxB,MAAMC,iBAAiB,GAAG;MAAE,GAAGJ,gBAAgB;MAAEK,WAAW,EAAE,CAAC;IAAE,CAAC;IAClE,MAAMJ,0BAA0B,CAC9B;MACEG,iBAAiB;MACjBE,EAAE,EAAEJ,MAAM,CAACK,YAAY;MACvBC,MAAM,EAAEL,SAAS;MACjBM,QAAQ,EAAEX,eAAe,CAAC;QACxBY,SAAS,EAAEN,iBAAiB;QAC5BO,SAAS,EAAE,EAAE;QACbC,eAAe,EAAE,IAAIC,GAAG,CAAC,CAAC;QAC1BC,kBAAkB,EAAE,IAAID,GAAG,CAAC,CAAC;QAC7BE,YAAY,EAAE,IAAIF,GAAG,CAAC;MACxB,CAAC;IACH,CACF,CAAC;IACDjB,MAAM,CAACM,MAAM,CAACc,QAAQ,CAAC,CAAC,CAAC,GAAGb,SAAS,sBAAsB,CAAC,CAAC,CAACc,OAAO,CACnE,cACF,CAAC;EACH,CAAC,CAAC;EAEFpB,EAAE,CAAC,6DAA6D,EAAE,YAAY;IAC5E,MAAMK,MAAM,GAAGH,sBAAsB,CAAC,CAAC;IACvC,MAAMI,SAAS,GAAG,uBAAuB;IACzC,MAAMC,iBAAiB,GAAGJ,gBAAgB;IAC1C,MAAMC,0BAA0B,CAC9B;MACEG,iBAAiB;MACjBE,EAAE,EAAEJ,MAAM,CAACK,YAAY;MACvBC,MAAM,EAAEd,IAAI,CAACwB,IAAI,CAACf,SAAS,EAAE,IAAI,EAAE,IAAI,CAAC;MACxCM,QAAQ,EAAEX,eAAe,CAAC;QACxBY,SAAS,EAAEN,iBAAiB;QAC5BO,SAAS,EAAE,EAAE;QACbC,eAAe,EAAE,IAAIC,GAAG,CAAC,CAAC;QAC1BC,kBAAkB,EAAE,IAAID,GAAG,CAAC,CAAC;QAC7BE,YAAY,EAAE,IAAIF,GAAG,CAAC;MACxB,CAAC;IACH,CACF,CAAC;IAEDjB,MAAM,CAACM,MAAM,CAACc,QAAQ,CAAC,CAAC,CAAC,GAAGb,SAAS,iBAAiB,CAAC,CAAC,CAACgB,SAAS,CAChE,gDACF,CAAC;EACH,CAAC,CAAC;AACJ,CAAC,CAAC","ignoreList":[]}
@@ -13,11 +13,13 @@
13
13
  * See the License for the specific language governing permissions and
14
14
  * limitations under the License.
15
15
  */
16
+
16
17
  import path from "node:path";
17
18
  import { EnhancedInterfaceType } from "../GenerateContext/EnhancedInterfaceType.js";
18
19
  import { ForeignType } from "../GenerateContext/ForeignType.js";
19
20
  import { formatTs } from "../util/test/formatTs.js";
20
21
  import { __UNSTABLE_wireInterfaceTypeV2ToSdkObjectConst } from "./UNSTABLE_wireInterfaceTypeV2ToSdkObjectConst.js";
22
+
21
23
  /** @internal */
22
24
  export async function generatePerInterfaceDataFiles({
23
25
  fs,
@@ -1 +1 @@
1
- {"version":3,"file":"generatePerInterfaceDataFiles.js","names":["path","EnhancedInterfaceType","ForeignType","formatTs","__UNSTABLE_wireInterfaceTypeV2ToSdkObjectConst","generatePerInterfaceDataFiles","fs","outDir","ontology","importExt","forInternalUse","interfacesDir","join","mkdir","recursive","obj","Object","values","interfaceTypes","writeFile","shortApiName","filter","i","map","interfaceType","keys","length"],"sources":["generatePerInterfaceDataFiles.js"],"sourcesContent":["/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\nimport path from \"node:path\";\nimport { EnhancedInterfaceType } from \"../GenerateContext/EnhancedInterfaceType.js\";\nimport { ForeignType } from \"../GenerateContext/ForeignType.js\";\nimport { formatTs } from \"../util/test/formatTs.js\";\nimport { __UNSTABLE_wireInterfaceTypeV2ToSdkObjectConst } from \"./UNSTABLE_wireInterfaceTypeV2ToSdkObjectConst.js\";\n/** @internal */\nexport async function generatePerInterfaceDataFiles({ fs, outDir, ontology, importExt, forInternalUse }) {\n const interfacesDir = path.join(outDir, \"ontology\", \"interfaces\");\n await fs.mkdir(interfacesDir, {\n recursive: true,\n });\n for (const obj of Object.values(ontology.interfaceTypes)) {\n if (obj instanceof ForeignType)\n continue;\n await fs.writeFile(path.join(interfacesDir, `${obj.shortApiName}.ts`), await formatTs(`\n import type { PropertyDef as $PropertyDef } from \"${forInternalUse ? \"@osdk/api\" : \"@osdk/client\"}\";\n import { $osdkMetadata } from \"../../OntologyMetadata${importExt}\";\n ${__UNSTABLE_wireInterfaceTypeV2ToSdkObjectConst(obj, ontology, true, forInternalUse)}\n `));\n }\n await fs.writeFile(interfacesDir + \".ts\", await formatTs(`\n ${Object.values(ontology.interfaceTypes).filter(i => i instanceof EnhancedInterfaceType).map(interfaceType => `export {${interfaceType.shortApiName}} from \"./interfaces/${interfaceType.shortApiName}${importExt}\";`).join(\"\\n\")}\n ${Object.keys(ontology.interfaceTypes).length === 0\n ? \"export {}\"\n : \"\"}\n `));\n}\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAOA,IAAI,MAAM,WAAW;AAC5B,SAASC,qBAAqB,QAAQ,6CAA6C;AACnF,SAASC,WAAW,QAAQ,mCAAmC;AAC/D,SAASC,QAAQ,QAAQ,0BAA0B;AACnD,SAASC,8CAA8C,QAAQ,mDAAmD;AAClH;AACA,OAAO,eAAeC,6BAA6BA,CAAC;EAAEC,EAAE;EAAEC,MAAM;EAAEC,QAAQ;EAAEC,SAAS;EAAEC;AAAe,CAAC,EAAE;EACrG,MAAMC,aAAa,GAAGX,IAAI,CAACY,IAAI,CAACL,MAAM,EAAE,UAAU,EAAE,YAAY,CAAC;EACjE,MAAMD,EAAE,CAACO,KAAK,CAACF,aAAa,EAAE;IAC1BG,SAAS,EAAE;EACf,CAAC,CAAC;EACF,KAAK,MAAMC,GAAG,IAAIC,MAAM,CAACC,MAAM,CAACT,QAAQ,CAACU,cAAc,CAAC,EAAE;IACtD,IAAIH,GAAG,YAAYb,WAAW,EAC1B;IACJ,MAAMI,EAAE,CAACa,SAAS,CAACnB,IAAI,CAACY,IAAI,CAACD,aAAa,EAAE,GAAGI,GAAG,CAACK,YAAY,KAAK,CAAC,EAAE,MAAMjB,QAAQ,CAAC;AAC9F,4DAA4DO,cAAc,GAAG,WAAW,GAAG,cAAc;AACzG,+DAA+DD,SAAS;AACxE,QAAQL,8CAA8C,CAACW,GAAG,EAAEP,QAAQ,EAAE,IAAI,EAAEE,cAAc,CAAC;AAC3F,KAAK,CAAC,CAAC;EACH;EACA,MAAMJ,EAAE,CAACa,SAAS,CAACR,aAAa,GAAG,KAAK,EAAE,MAAMR,QAAQ,CAAC;AAC7D,MAAMa,MAAM,CAACC,MAAM,CAACT,QAAQ,CAACU,cAAc,CAAC,CAACG,MAAM,CAACC,CAAC,IAAIA,CAAC,YAAYrB,qBAAqB,CAAC,CAACsB,GAAG,CAACC,aAAa,IAAI,WAAWA,aAAa,CAACJ,YAAY,wBAAwBI,aAAa,CAACJ,YAAY,GAAGX,SAAS,IAAI,CAAC,CAACG,IAAI,CAAC,IAAI,CAAC;AACrO,MAAMI,MAAM,CAACS,IAAI,CAACjB,QAAQ,CAACU,cAAc,CAAC,CAACQ,MAAM,KAAK,CAAC,GAC7C,WAAW,GACX,EAAE;AACZ,KAAK,CAAC,CAAC;AACP","ignoreList":[]}
1
+ {"version":3,"file":"generatePerInterfaceDataFiles.js","names":["path","EnhancedInterfaceType","ForeignType","formatTs","__UNSTABLE_wireInterfaceTypeV2ToSdkObjectConst","generatePerInterfaceDataFiles","fs","outDir","ontology","importExt","forInternalUse","interfacesDir","join","mkdir","recursive","obj","Object","values","interfaceTypes","writeFile","shortApiName","filter","i","map","interfaceType","keys","length"],"sources":["generatePerInterfaceDataFiles.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 path from \"node:path\";\nimport { EnhancedInterfaceType } from \"../GenerateContext/EnhancedInterfaceType.js\";\nimport { ForeignType } from \"../GenerateContext/ForeignType.js\";\nimport type { GenerateContext } from \"../GenerateContext/GenerateContext.js\";\nimport { formatTs } from \"../util/test/formatTs.js\";\nimport { __UNSTABLE_wireInterfaceTypeV2ToSdkObjectConst } from \"./UNSTABLE_wireInterfaceTypeV2ToSdkObjectConst.js\";\n\n/** @internal */\nexport async function generatePerInterfaceDataFiles(\n { fs, outDir, ontology, importExt, forInternalUse }: GenerateContext,\n) {\n const interfacesDir = path.join(outDir, \"ontology\", \"interfaces\");\n await fs.mkdir(interfacesDir, {\n recursive: true,\n });\n\n for (const obj of Object.values(ontology.interfaceTypes)) {\n if (obj instanceof ForeignType) continue;\n\n await fs.writeFile(\n path.join(interfacesDir, `${obj.shortApiName}.ts`),\n await formatTs(`\n import type { PropertyDef as $PropertyDef } from \"${\n forInternalUse ? \"@osdk/api\" : \"@osdk/client\"\n }\";\n import { $osdkMetadata } from \"../../OntologyMetadata${importExt}\";\n ${\n __UNSTABLE_wireInterfaceTypeV2ToSdkObjectConst(\n obj,\n ontology,\n true,\n forInternalUse,\n )\n }\n `),\n );\n }\n\n await fs.writeFile(\n interfacesDir + \".ts\",\n await formatTs(`\n ${\n Object.values(ontology.interfaceTypes).filter(i =>\n i instanceof EnhancedInterfaceType\n ).map(interfaceType =>\n `export {${interfaceType.shortApiName}} from \"./interfaces/${interfaceType.shortApiName}${importExt}\";`\n ).join(\"\\n\")\n }\n ${\n Object.keys(ontology.interfaceTypes).length === 0\n ? \"export {}\"\n : \"\"\n }\n `),\n );\n}\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,OAAOA,IAAI,MAAM,WAAW;AAC5B,SAASC,qBAAqB,QAAQ,6CAA6C;AACnF,SAASC,WAAW,QAAQ,mCAAmC;AAE/D,SAASC,QAAQ,QAAQ,0BAA0B;AACnD,SAASC,8CAA8C,QAAQ,mDAAmD;;AAElH;AACA,OAAO,eAAeC,6BAA6BA,CACjD;EAAEC,EAAE;EAAEC,MAAM;EAAEC,QAAQ;EAAEC,SAAS;EAAEC;AAAgC,CAAC,EACpE;EACA,MAAMC,aAAa,GAAGX,IAAI,CAACY,IAAI,CAACL,MAAM,EAAE,UAAU,EAAE,YAAY,CAAC;EACjE,MAAMD,EAAE,CAACO,KAAK,CAACF,aAAa,EAAE;IAC5BG,SAAS,EAAE;EACb,CAAC,CAAC;EAEF,KAAK,MAAMC,GAAG,IAAIC,MAAM,CAACC,MAAM,CAACT,QAAQ,CAACU,cAAc,CAAC,EAAE;IACxD,IAAIH,GAAG,YAAYb,WAAW,EAAE;IAEhC,MAAMI,EAAE,CAACa,SAAS,CAChBnB,IAAI,CAACY,IAAI,CAACD,aAAa,EAAE,GAAGI,GAAG,CAACK,YAAY,KAAK,CAAC,EAClD,MAAMjB,QAAQ,CAAC;AACrB,4DACQO,cAAc,GAAG,WAAW,GAAG,cAAc;AACrD,+DAC+DD,SAAS;AACxE,QACQL,8CAA8C,CAC5CW,GAAG,EACHP,QAAQ,EACR,IAAI,EACJE,cACF,CAAC;AACT,KACK,CACD,CAAC;EACH;EAEA,MAAMJ,EAAE,CAACa,SAAS,CAChBR,aAAa,GAAG,KAAK,EACrB,MAAMR,QAAQ,CAAC;AACnB,MACMa,MAAM,CAACC,MAAM,CAACT,QAAQ,CAACU,cAAc,CAAC,CAACG,MAAM,CAACC,CAAC,IAC7CA,CAAC,YAAYrB,qBACf,CAAC,CAACsB,GAAG,CAACC,aAAa,IACjB,WAAWA,aAAa,CAACJ,YAAY,wBAAwBI,aAAa,CAACJ,YAAY,GAAGX,SAAS,IACrG,CAAC,CAACG,IAAI,CAAC,IAAI,CAAC;AAClB,MAEMI,MAAM,CAACS,IAAI,CAACjB,QAAQ,CAACU,cAAc,CAAC,CAACQ,MAAM,KAAK,CAAC,GAC7C,WAAW,GACX,EAAE;AACZ,KACK,CACH,CAAC;AACH","ignoreList":[]}
@@ -13,6 +13,7 @@
13
13
  * See the License for the specific language governing permissions and
14
14
  * limitations under the License.
15
15
  */
16
+
16
17
  import path from "node:path";
17
18
  import { EnhancedObjectType } from "../GenerateContext/EnhancedObjectType.js";
18
19
  import { ForeignType } from "../GenerateContext/ForeignType.js";
@@ -1 +1 @@
1
- {"version":3,"file":"generatePerObjectDataFiles.js","names":["path","EnhancedObjectType","ForeignType","formatTs","wireObjectTypeV2ToSdkObjectConstV2","generatePerObjectDataFiles","ctx","fs","outDir","ontology","importExt","mkdir","join","recursive","obj","Object","values","objectTypes","relPath","shortApiName","outFilePath","writeFile","forInternalUse","raw","filter","o","map","objType","keys","length"],"sources":["generatePerObjectDataFiles.js"],"sourcesContent":["/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\nimport path from \"node:path\";\nimport { EnhancedObjectType } from \"../GenerateContext/EnhancedObjectType.js\";\nimport { ForeignType } from \"../GenerateContext/ForeignType.js\";\nimport { formatTs } from \"../util/test/formatTs.js\";\nimport { wireObjectTypeV2ToSdkObjectConstV2, } from \"./wireObjectTypeV2ToSdkObjectConstV2.js\";\nexport async function generatePerObjectDataFiles(ctx) {\n const { fs, outDir, ontology, importExt, } = ctx;\n await fs.mkdir(path.join(outDir, \"ontology\", \"objects\"), { recursive: true });\n for (const obj of Object.values(ontology.objectTypes)) {\n if (obj instanceof ForeignType)\n continue;\n const relPath = path.join(\".\", \"ontology\", `objects`, `${obj.shortApiName}.ts`);\n const outFilePath = path.join(outDir, relPath);\n await fs.writeFile(outFilePath, await formatTs(`\n import type { PropertyDef as $PropertyDef } from \"${ctx.forInternalUse\n ? \"@osdk/api\"\n : \"@osdk/client\"}\";\n import { $osdkMetadata } from \"../../OntologyMetadata${importExt}\";\n import type { $ExpectedClientVersion } from \"../../OntologyMetadata${importExt}\";\n ${wireObjectTypeV2ToSdkObjectConstV2(obj.raw, ctx, relPath)}\n `));\n }\n await fs.writeFile(path.join(outDir, \"ontology\", \"objects.ts\"), await formatTs(`\n ${Object.values(ctx.ontology.objectTypes).filter(o => o instanceof EnhancedObjectType).map(objType => `export {${objType.shortApiName}} from \"./objects/${objType.shortApiName}${importExt}\";`).join(\"\\n\")}\n ${Object.keys(ontology.objectTypes).length === 0 ? \"export {};\" : \"\"}\n `));\n}\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAOA,IAAI,MAAM,WAAW;AAC5B,SAASC,kBAAkB,QAAQ,0CAA0C;AAC7E,SAASC,WAAW,QAAQ,mCAAmC;AAC/D,SAASC,QAAQ,QAAQ,0BAA0B;AACnD,SAASC,kCAAkC,QAAS,yCAAyC;AAC7F,OAAO,eAAeC,0BAA0BA,CAACC,GAAG,EAAE;EAClD,MAAM;IAAEC,EAAE;IAAEC,MAAM;IAAEC,QAAQ;IAAEC;EAAW,CAAC,GAAGJ,GAAG;EAChD,MAAMC,EAAE,CAACI,KAAK,CAACX,IAAI,CAACY,IAAI,CAACJ,MAAM,EAAE,UAAU,EAAE,SAAS,CAAC,EAAE;IAAEK,SAAS,EAAE;EAAK,CAAC,CAAC;EAC7E,KAAK,MAAMC,GAAG,IAAIC,MAAM,CAACC,MAAM,CAACP,QAAQ,CAACQ,WAAW,CAAC,EAAE;IACnD,IAAIH,GAAG,YAAYZ,WAAW,EAC1B;IACJ,MAAMgB,OAAO,GAAGlB,IAAI,CAACY,IAAI,CAAC,GAAG,EAAE,UAAU,EAAE,SAAS,EAAE,GAAGE,GAAG,CAACK,YAAY,KAAK,CAAC;IAC/E,MAAMC,WAAW,GAAGpB,IAAI,CAACY,IAAI,CAACJ,MAAM,EAAEU,OAAO,CAAC;IAC9C,MAAMX,EAAE,CAACc,SAAS,CAACD,WAAW,EAAE,MAAMjB,QAAQ,CAAC;AACvD,4DAA4DG,GAAG,CAACgB,cAAc,GAChE,WAAW,GACX,cAAc;AAC5B,+DAA+DZ,SAAS;AACxE,6EAA6EA,SAAS;AACtF,UAAUN,kCAAkC,CAACU,GAAG,CAACS,GAAG,EAAEjB,GAAG,EAAEY,OAAO,CAAC;AACnE,OAAO,CAAC,CAAC;EACL;EACA,MAAMX,EAAE,CAACc,SAAS,CAACrB,IAAI,CAACY,IAAI,CAACJ,MAAM,EAAE,UAAU,EAAE,YAAY,CAAC,EAAE,MAAML,QAAQ,CAAC;AACnF,MAAMY,MAAM,CAACC,MAAM,CAACV,GAAG,CAACG,QAAQ,CAACQ,WAAW,CAAC,CAACO,MAAM,CAACC,CAAC,IAAIA,CAAC,YAAYxB,kBAAkB,CAAC,CAACyB,GAAG,CAACC,OAAO,IAAI,WAAWA,OAAO,CAACR,YAAY,qBAAqBQ,OAAO,CAACR,YAAY,GAAGT,SAAS,IAAI,CAAC,CAACE,IAAI,CAAC,IAAI,CAAC;AAC9M,MAAMG,MAAM,CAACa,IAAI,CAACnB,QAAQ,CAACQ,WAAW,CAAC,CAACY,MAAM,KAAK,CAAC,GAAG,YAAY,GAAG,EAAE;AACxE,KAAK,CAAC,CAAC;AACP","ignoreList":[]}
1
+ {"version":3,"file":"generatePerObjectDataFiles.js","names":["path","EnhancedObjectType","ForeignType","formatTs","wireObjectTypeV2ToSdkObjectConstV2","generatePerObjectDataFiles","ctx","fs","outDir","ontology","importExt","mkdir","join","recursive","obj","Object","values","objectTypes","relPath","shortApiName","outFilePath","writeFile","forInternalUse","raw","filter","o","map","objType","keys","length"],"sources":["generatePerObjectDataFiles.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 path from \"node:path\";\nimport { EnhancedObjectType } from \"../GenerateContext/EnhancedObjectType.js\";\nimport { ForeignType } from \"../GenerateContext/ForeignType.js\";\nimport type { GenerateContext } from \"../GenerateContext/GenerateContext.js\";\nimport { formatTs } from \"../util/test/formatTs.js\";\nimport {\n wireObjectTypeV2ToSdkObjectConstV2,\n} from \"./wireObjectTypeV2ToSdkObjectConstV2.js\";\n\nexport async function generatePerObjectDataFiles(\n ctx: GenerateContext,\n): Promise<void> {\n const {\n fs,\n outDir,\n ontology,\n importExt,\n } = ctx;\n await fs.mkdir(path.join(outDir, \"ontology\", \"objects\"), { recursive: true });\n for (const obj of Object.values(ontology.objectTypes)) {\n if (obj instanceof ForeignType) continue;\n const relPath = path.join(\n \".\",\n \"ontology\",\n `objects`,\n `${obj.shortApiName}.ts`,\n );\n\n const outFilePath = path.join(outDir, relPath);\n await fs.writeFile(\n outFilePath,\n await formatTs(`\n import type { PropertyDef as $PropertyDef } from \"${\n ctx.forInternalUse\n ? \"@osdk/api\"\n : \"@osdk/client\"\n }\";\n import { $osdkMetadata } from \"../../OntologyMetadata${importExt}\";\n import type { $ExpectedClientVersion } from \"../../OntologyMetadata${importExt}\";\n ${wireObjectTypeV2ToSdkObjectConstV2(obj.raw, ctx, relPath)}\n `),\n );\n }\n\n await fs.writeFile(\n path.join(outDir, \"ontology\", \"objects.ts\"),\n await formatTs(`\n ${\n Object.values(ctx.ontology.objectTypes).filter(o =>\n o instanceof EnhancedObjectType\n ).map(objType =>\n `export {${objType.shortApiName}} from \"./objects/${objType.shortApiName}${importExt}\";`\n ).join(\"\\n\")\n }\n ${Object.keys(ontology.objectTypes).length === 0 ? \"export {};\" : \"\"}\n `),\n );\n}\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,OAAOA,IAAI,MAAM,WAAW;AAC5B,SAASC,kBAAkB,QAAQ,0CAA0C;AAC7E,SAASC,WAAW,QAAQ,mCAAmC;AAE/D,SAASC,QAAQ,QAAQ,0BAA0B;AACnD,SACEC,kCAAkC,QAC7B,yCAAyC;AAEhD,OAAO,eAAeC,0BAA0BA,CAC9CC,GAAoB,EACL;EACf,MAAM;IACJC,EAAE;IACFC,MAAM;IACNC,QAAQ;IACRC;EACF,CAAC,GAAGJ,GAAG;EACP,MAAMC,EAAE,CAACI,KAAK,CAACX,IAAI,CAACY,IAAI,CAACJ,MAAM,EAAE,UAAU,EAAE,SAAS,CAAC,EAAE;IAAEK,SAAS,EAAE;EAAK,CAAC,CAAC;EAC7E,KAAK,MAAMC,GAAG,IAAIC,MAAM,CAACC,MAAM,CAACP,QAAQ,CAACQ,WAAW,CAAC,EAAE;IACrD,IAAIH,GAAG,YAAYZ,WAAW,EAAE;IAChC,MAAMgB,OAAO,GAAGlB,IAAI,CAACY,IAAI,CACvB,GAAG,EACH,UAAU,EACV,SAAS,EACT,GAAGE,GAAG,CAACK,YAAY,KACrB,CAAC;IAED,MAAMC,WAAW,GAAGpB,IAAI,CAACY,IAAI,CAACJ,MAAM,EAAEU,OAAO,CAAC;IAC9C,MAAMX,EAAE,CAACc,SAAS,CAChBD,WAAW,EACX,MAAMjB,QAAQ,CAAC;AACrB,4DACQG,GAAG,CAACgB,cAAc,GACd,WAAW,GACX,cAAc;AAC1B,+DAC+DZ,SAAS;AACxE,6EAA6EA,SAAS;AACtF,UAAUN,kCAAkC,CAACU,GAAG,CAACS,GAAG,EAAEjB,GAAG,EAAEY,OAAO,CAAC;AACnE,OAAO,CACH,CAAC;EACH;EAEA,MAAMX,EAAE,CAACc,SAAS,CAChBrB,IAAI,CAACY,IAAI,CAACJ,MAAM,EAAE,UAAU,EAAE,YAAY,CAAC,EAC3C,MAAML,QAAQ,CAAC;AACnB,MACMY,MAAM,CAACC,MAAM,CAACV,GAAG,CAACG,QAAQ,CAACQ,WAAW,CAAC,CAACO,MAAM,CAACC,CAAC,IAC9CA,CAAC,YAAYxB,kBACf,CAAC,CAACyB,GAAG,CAACC,OAAO,IACX,WAAWA,OAAO,CAACR,YAAY,qBAAqBQ,OAAO,CAACR,YAAY,GAAGT,SAAS,IACtF,CAAC,CAACE,IAAI,CAAC,IAAI,CAAC;AAClB,MACMG,MAAM,CAACa,IAAI,CAACnB,QAAQ,CAACQ,WAAW,CAAC,CAACY,MAAM,KAAK,CAAC,GAAG,YAAY,GAAG,EAAE;AACxE,KAAK,CACH,CAAC;AACH","ignoreList":[]}
@@ -13,6 +13,7 @@
13
13
  * See the License for the specific language governing permissions and
14
14
  * limitations under the License.
15
15
  */
16
+
16
17
  import { wireQueryDataTypeToQueryDataTypeDefinition, wireQueryParameterV2ToQueryParameterDefinition as paramToDef, wireQueryTypeV2ToSdkQueryDefinitionNoParams } from "@osdk/generator-converters";
17
18
  import path from "node:path";
18
19
  import { getObjectImports } from "../shared/getObjectImports.js";
@@ -1 +1 @@
1
- {"version":3,"file":"generatePerQueryDataFiles.js","names":["wireQueryDataTypeToQueryDataTypeDefinition","wireQueryParameterV2ToQueryParameterDefinition","paramToDef","wireQueryTypeV2ToSdkQueryDefinitionNoParams","path","getObjectImports","getObjectTypeApiNamesFromQuery","deleteUndefineds","stringify","formatTs","getDescriptionIfPresent","generatePerQueryDataFilesV2","fs","outDir","rootOutDir","ontology","importExt","forInternalUse","relOutDir","join","mkdir","recursive","Promise","all","Object","values","queryTypes","map","query","generateV2QueryFile","writeFile","shortApiName","getImportPathRelTo","keys","length","relFilePath","objectTypes","objectTypeObjects","Set","o","requireObjectType","importObjects","baseProps","raw","outputBase","output","apiNameObj","description","parameters","paramsIdentifier","*","parameter","formatter","apiName","q","queryParamJsDoc","nullable","getQueryParamType","type","dataType","parameterDefsForType","getLineFor__OsdkTargetType","undefined","displayName","rid","definitionIdentifier","parametersForConst","valueFormatter","qdt","objectTypeApiName","getImportedDefinitionIdentifier","param","ret","enhancedOntology","input","inner","JSON","struct","p","object","objectSet","set","union","u","multiplicity"],"sources":["generatePerQueryDataFiles.js"],"sourcesContent":["/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\nimport { wireQueryDataTypeToQueryDataTypeDefinition, wireQueryParameterV2ToQueryParameterDefinition as paramToDef, wireQueryTypeV2ToSdkQueryDefinitionNoParams, } from \"@osdk/generator-converters\";\nimport path from \"node:path\";\nimport { getObjectImports } from \"../shared/getObjectImports.js\";\nimport { getObjectTypeApiNamesFromQuery } from \"../shared/getObjectTypeApiNamesFromQuery.js\";\nimport { deleteUndefineds } from \"../util/deleteUndefineds.js\";\nimport { stringify } from \"../util/stringify.js\";\nimport { formatTs } from \"../util/test/formatTs.js\";\nimport { getDescriptionIfPresent } from \"./getDescriptionIfPresent.js\";\nexport async function generatePerQueryDataFilesV2({ fs, outDir: rootOutDir, ontology, importExt = \"\", forInternalUse = false, }, v2) {\n const relOutDir = path.join(\".\", \"ontology\", \"queries\");\n const outDir = path.join(rootOutDir, \"ontology\", \"queries\");\n await fs.mkdir(outDir, { recursive: true });\n await Promise.all(Object.values(ontology.queryTypes).map(async (query) => {\n await generateV2QueryFile(fs, outDir, relOutDir, query, importExt, ontology, forInternalUse);\n }));\n const indexFilePath = `${outDir}.ts`;\n await fs.writeFile(indexFilePath, await formatTs(`\n ${Object.values(ontology.queryTypes).map(query => `export {${query.shortApiName}} from \"${query.getImportPathRelTo(relOutDir)}\";`)\n .join(\"\\n\")}\n ${Object.keys(ontology.queryTypes).length === 0 ? \"export {};\" : \"\"}\n `));\n}\nasync function generateV2QueryFile(fs, outDir, relOutDir, query, importExt, ontology, forInternalUse) {\n const relFilePath = path.join(relOutDir, `${query.shortApiName}.ts`);\n const objectTypes = getObjectTypeApiNamesFromQuery(query);\n const objectTypeObjects = new Set(objectTypes.map(o => ontology.requireObjectType(o)));\n const importObjects = getObjectImports(objectTypeObjects, \"\", relFilePath, true);\n const baseProps = deleteUndefineds(wireQueryTypeV2ToSdkQueryDefinitionNoParams(query.raw));\n const outputBase = deleteUndefineds(wireQueryDataTypeToQueryDataTypeDefinition(query.output));\n const referencedObjectTypes = objectTypes.length > 0\n ? objectTypes.map(apiNameObj => `\"${apiNameObj}\"`).join(\"|\")\n : \"never\";\n await fs.writeFile(path.join(outDir, `${query.shortApiName}.ts`), await formatTs(`\n import type { QueryDefinition , QueryParam, QueryResult, VersionBound} from \"${forInternalUse ? \"@osdk/api\" : \"@osdk/client\"}\";\n import type { $ExpectedClientVersion } from \"../../OntologyMetadata${importExt}\";\n import { $osdkMetadata} from \"../../OntologyMetadata${importExt}\";\n ${importObjects}\n\n export namespace ${query.shortApiName} {\n export interface Signature {\n ${getDescriptionIfPresent(query.description)}\n (${Object.keys(query.parameters).length > 0\n ? `query: ${query.paramsIdentifier}`\n : \"\"}): Promise<${query.shortApiName}.ReturnType>\n }\n\n ${Object.keys(query.parameters).length > 0\n ? `\n export interface Parameters {\n ${stringify(query.parameters, {\n \"*\": (parameter, formatter, apiName) => {\n const q = paramToDef(parameter);\n return [\n `\n ${queryParamJsDoc(paramToDef(parameter), { apiName })}readonly \"${apiName}\"${q.nullable ? \"?\" : \"\"}`,\n `${getQueryParamType(ontology, q, \"Param\")}`,\n ];\n },\n })}\n }`\n : \"\"}\n\n ${query.output.type === \"struct\"\n ? `\n export interface ReturnType \n ${getQueryParamType(ontology, paramToDef({ dataType: query.output }), \"Result\")}\n `\n : `\n export type ReturnType = ${getQueryParamType(ontology, paramToDef({ dataType: query.output }), \"Result\")}\n `}\n }\n \n \n export interface ${query.shortApiName} extends QueryDefinition<\n ${query.shortApiName}.Signature\n >, VersionBound<$ExpectedClientVersion>{\n __DefinitionMetadata?: {\n ${stringify(baseProps)}\n parameters: {\n ${parameterDefsForType(ontology, query)}\n };\n output: {\n ${stringify(outputBase)},\n ${getLineFor__OsdkTargetType(ontology, query.output)}\n };\n signature: ${query.shortApiName}.Signature;\n }, \n ${stringify(baseProps, {\n \"description\": () => undefined,\n \"displayName\": () => undefined,\n \"rid\": () => undefined,\n })}, \n osdkMetadata: typeof $osdkMetadata;\n }\n\n\n export const ${query.shortApiName}: ${query.definitionIdentifier} = {\n ${stringify(baseProps, {\n \"description\": () => undefined,\n \"displayName\": () => undefined,\n \"rid\": () => undefined,\n })},\n osdkMetadata: $osdkMetadata\n };\n `));\n}\nfunction parametersForConst(query) {\n return stringify(query.parameters, {\n \"*\": (parameter, formatter) => formatter(deleteUndefineds(paramToDef(parameter))),\n });\n}\nfunction parameterDefsForType(ontology, query) {\n return stringify(query.parameters, {\n \"*\": (parameter, valueFormatter, apiName) => [\n `${queryParamJsDoc(paramToDef(parameter), { apiName })} ${apiName}`,\n ` {\n ${stringify(deleteUndefineds(paramToDef(parameter)))},\n ${getLineFor__OsdkTargetType(ontology, parameter.dataType)}\n }`,\n ],\n });\n}\nfunction getLineFor__OsdkTargetType(ontology, qdt) {\n if (qdt.type === \"object\" || qdt.type === \"objectSet\") {\n return `__OsdkTargetType?: ${ontology.requireObjectType(qdt.objectTypeApiName).getImportedDefinitionIdentifier(true)}`;\n }\n return \"\";\n}\nexport function queryParamJsDoc(param, { apiName }) {\n let ret = `/**\\n`;\n if (param.description) {\n if (param.description) {\n ret += ` * description: ${param.description}\\n`;\n }\n }\n else {\n ret += ` * (no ontology metadata)\\n`;\n }\n ret += ` */\\n`;\n return ret;\n}\nexport function getQueryParamType(enhancedOntology, input, type) {\n let inner = `unknown /* ${input.type} */`;\n switch (input.type) {\n case \"date\":\n inner = `Query${type}.PrimitiveType<${JSON.stringify(\"datetime\")}>`;\n break;\n case \"attachment\":\n case \"boolean\":\n case \"double\":\n case \"float\":\n case \"integer\":\n case \"long\":\n case \"string\":\n case \"threeDimensionalAggregation\":\n case \"timestamp\":\n case \"twoDimensionalAggregation\":\n inner = `Query${type}.PrimitiveType<${JSON.stringify(input.type)}>`;\n break;\n case \"struct\":\n inner = `{\n ${stringify(input.struct, {\n \"*\": (p, formatter, apiName) => {\n return [\n `\n ${type === \"Param\" ? \"readonly \" : \"\"}\"${apiName}\"${p.nullable ? \"?\" : \"\"}`,\n `${getQueryParamType(enhancedOntology, p, type)}`,\n ];\n },\n })}\n }`;\n break;\n case \"object\":\n inner = `Query${type}.ObjectType<${enhancedOntology.requireObjectType(input.object)\n .getImportedDefinitionIdentifier(true)}>`;\n break;\n case \"objectSet\":\n inner = `Query${type}.ObjectSetType<${enhancedOntology.requireObjectType(input.objectSet)\n .getImportedDefinitionIdentifier(true)}>`;\n break;\n case \"set\":\n inner = `${type === \"Param\" ? \"Readonly\" : \"\"}Set<${getQueryParamType(enhancedOntology, input.set, type)}>`;\n break;\n case \"union\":\n inner = input.union.map((u) => getQueryParamType(enhancedOntology, u, type)).join(\" | \");\n break;\n }\n if (input.multiplicity && type === \"Param\") {\n return `ReadonlyArray<${inner}>`;\n }\n else if (input.multiplicity) {\n return `Array<${inner}>`;\n }\n return inner;\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"generatePerQueryDataFiles.js","names":["wireQueryDataTypeToQueryDataTypeDefinition","wireQueryParameterV2ToQueryParameterDefinition","paramToDef","wireQueryTypeV2ToSdkQueryDefinitionNoParams","path","getObjectImports","getObjectTypeApiNamesFromQuery","deleteUndefineds","stringify","formatTs","getDescriptionIfPresent","generatePerQueryDataFilesV2","fs","outDir","rootOutDir","ontology","importExt","forInternalUse","relOutDir","join","mkdir","recursive","Promise","all","Object","values","queryTypes","map","query","generateV2QueryFile","writeFile","shortApiName","getImportPathRelTo","keys","length","relFilePath","objectTypes","objectTypeObjects","Set","o","requireObjectType","importObjects","baseProps","raw","outputBase","output","apiNameObj","description","parameters","paramsIdentifier","*","parameter","formatter","apiName","q","queryParamJsDoc","nullable","getQueryParamType","type","dataType","parameterDefsForType","getLineFor__OsdkTargetType","undefined","displayName","rid","definitionIdentifier","parametersForConst","valueFormatter","qdt","objectTypeApiName","getImportedDefinitionIdentifier","param","ret","enhancedOntology","input","inner","JSON","struct","p","object","objectSet","set","union","u","multiplicity"],"sources":["generatePerQueryDataFiles.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 { QueryParameterDefinition } from \"@osdk/api\";\nimport {\n wireQueryDataTypeToQueryDataTypeDefinition,\n wireQueryParameterV2ToQueryParameterDefinition as paramToDef,\n wireQueryTypeV2ToSdkQueryDefinitionNoParams,\n} from \"@osdk/generator-converters\";\nimport type { QueryDataType } from \"@osdk/internal.foundry.core\";\nimport path from \"node:path\";\nimport type { EnhancedOntologyDefinition } from \"../GenerateContext/EnhancedOntologyDefinition.js\";\nimport type { EnhancedQuery } from \"../GenerateContext/EnhancedQuery.js\";\nimport type { GenerateContext } from \"../GenerateContext/GenerateContext.js\";\nimport type { MinimalFs } from \"../MinimalFs.js\";\nimport { getObjectImports } from \"../shared/getObjectImports.js\";\nimport { getObjectTypeApiNamesFromQuery } from \"../shared/getObjectTypeApiNamesFromQuery.js\";\nimport { deleteUndefineds } from \"../util/deleteUndefineds.js\";\nimport { stringify } from \"../util/stringify.js\";\nimport { formatTs } from \"../util/test/formatTs.js\";\nimport { getDescriptionIfPresent } from \"./getDescriptionIfPresent.js\";\n\nexport async function generatePerQueryDataFilesV2(\n {\n fs,\n outDir: rootOutDir,\n ontology,\n importExt = \"\",\n forInternalUse = false,\n }: Pick<\n GenerateContext,\n | \"fs\"\n | \"outDir\"\n | \"importExt\"\n | \"ontology\"\n | \"forInternalUse\"\n >,\n v2: boolean,\n): Promise<void> {\n const relOutDir = path.join(\".\", \"ontology\", \"queries\");\n const outDir = path.join(rootOutDir, \"ontology\", \"queries\");\n await fs.mkdir(outDir, { recursive: true });\n await Promise.all(\n Object.values(ontology.queryTypes).map(async query => {\n await generateV2QueryFile(\n fs,\n outDir,\n relOutDir,\n query,\n importExt,\n ontology,\n forInternalUse,\n );\n }),\n );\n\n const indexFilePath = `${outDir}.ts`;\n await fs.writeFile(\n indexFilePath,\n await formatTs(`\n ${\n Object.values(ontology.queryTypes).map(query =>\n `export {${query.shortApiName}} from \"${\n query.getImportPathRelTo(relOutDir)\n }\";`\n )\n .join(\"\\n\")\n }\n ${Object.keys(ontology.queryTypes).length === 0 ? \"export {};\" : \"\"}\n `),\n );\n}\n\nasync function generateV2QueryFile(\n fs: MinimalFs,\n outDir: string,\n relOutDir: string,\n query: EnhancedQuery,\n importExt: string,\n ontology: EnhancedOntologyDefinition,\n forInternalUse: boolean,\n) {\n const relFilePath = path.join(relOutDir, `${query.shortApiName}.ts`);\n const objectTypes = getObjectTypeApiNamesFromQuery(query);\n const objectTypeObjects = new Set(\n objectTypes.map(o => ontology.requireObjectType(o)),\n );\n const importObjects = getObjectImports(\n objectTypeObjects,\n \"\",\n relFilePath,\n true,\n );\n\n const baseProps = deleteUndefineds(\n wireQueryTypeV2ToSdkQueryDefinitionNoParams(query.raw),\n );\n\n const outputBase = deleteUndefineds(\n wireQueryDataTypeToQueryDataTypeDefinition(query.output),\n );\n\n const referencedObjectTypes = objectTypes.length > 0\n ? objectTypes.map(apiNameObj => `\"${apiNameObj}\"`).join(\"|\")\n : \"never\";\n\n await fs.writeFile(\n path.join(outDir, `${query.shortApiName}.ts`),\n await formatTs(`\n import type { QueryDefinition , QueryParam, QueryResult, VersionBound} from \"${\n forInternalUse ? \"@osdk/api\" : \"@osdk/client\"\n }\";\n import type { $ExpectedClientVersion } from \"../../OntologyMetadata${importExt}\";\n import { $osdkMetadata} from \"../../OntologyMetadata${importExt}\";\n ${importObjects}\n\n export namespace ${query.shortApiName} {\n export interface Signature {\n ${getDescriptionIfPresent(query.description)}\n (${\n Object.keys(query.parameters).length > 0\n ? `query: ${query.paramsIdentifier}`\n : \"\"\n }): Promise<${query.shortApiName}.ReturnType>\n }\n\n ${\n Object.keys(query.parameters).length > 0\n ? `\n export interface Parameters {\n ${\n stringify(query.parameters, {\n \"*\": (parameter, formatter, apiName) => {\n const q = paramToDef(parameter);\n return [\n `\n ${\n queryParamJsDoc(paramToDef(parameter), { apiName })\n }readonly \"${apiName}\"${q.nullable ? \"?\" : \"\"}`,\n `${getQueryParamType(ontology, q, \"Param\")}`,\n ];\n },\n })\n }\n }`\n : \"\"\n }\n\n ${\n query.output.type === \"struct\"\n ? `\n export interface ReturnType \n ${\n getQueryParamType(\n ontology,\n paramToDef({ dataType: query.output }),\n \"Result\",\n )\n }\n `\n : `\n export type ReturnType = ${\n getQueryParamType(\n ontology,\n paramToDef({ dataType: query.output }),\n \"Result\",\n )\n }\n `\n }\n }\n \n \n export interface ${query.shortApiName} extends QueryDefinition<\n ${query.shortApiName}.Signature\n >, VersionBound<$ExpectedClientVersion>{\n __DefinitionMetadata?: {\n ${stringify(baseProps)}\n parameters: {\n ${parameterDefsForType(ontology, query)}\n };\n output: {\n ${stringify(outputBase)},\n ${getLineFor__OsdkTargetType(ontology, query.output)}\n };\n signature: ${query.shortApiName}.Signature;\n }, \n ${\n stringify(baseProps, {\n \"description\": () => undefined,\n \"displayName\": () => undefined,\n \"rid\": () => undefined,\n })\n }, \n osdkMetadata: typeof $osdkMetadata;\n }\n\n\n export const ${query.shortApiName}: ${query.definitionIdentifier} = {\n ${\n stringify(baseProps, {\n \"description\": () => undefined,\n \"displayName\": () => undefined,\n \"rid\": () => undefined,\n })\n },\n osdkMetadata: $osdkMetadata\n };\n `),\n );\n}\n\nfunction parametersForConst(query: EnhancedQuery) {\n return stringify(query.parameters, {\n \"*\": (parameter, formatter) =>\n formatter(deleteUndefineds(paramToDef(parameter))),\n });\n}\n\nfunction parameterDefsForType(\n ontology: EnhancedOntologyDefinition,\n query: EnhancedQuery,\n) {\n return stringify(query.parameters, {\n \"*\": (parameter, valueFormatter, apiName) => [\n `${queryParamJsDoc(paramToDef(parameter), { apiName })} ${apiName}`,\n ` {\n ${stringify(deleteUndefineds(paramToDef(parameter)))},\n ${getLineFor__OsdkTargetType(ontology, parameter.dataType)}\n }`,\n ],\n });\n}\n\nfunction getLineFor__OsdkTargetType(\n ontology: EnhancedOntologyDefinition,\n qdt: QueryDataType,\n) {\n if (qdt.type === \"object\" || qdt.type === \"objectSet\") {\n return `__OsdkTargetType?: ${\n ontology.requireObjectType(\n qdt.objectTypeApiName!,\n ).getImportedDefinitionIdentifier(true)\n }`;\n }\n return \"\";\n}\n\nexport function queryParamJsDoc(\n param: QueryParameterDefinition<any>,\n { apiName }: { apiName: string },\n): string {\n let ret = `/**\\n`;\n\n if (param.description) {\n if (param.description) {\n ret += ` * description: ${param.description}\\n`;\n }\n } else {\n ret += ` * (no ontology metadata)\\n`;\n }\n\n ret += ` */\\n`;\n return ret;\n}\n\nexport function getQueryParamType(\n enhancedOntology: EnhancedOntologyDefinition,\n input: QueryParameterDefinition,\n type: \"Param\" | \"Result\",\n): string {\n let inner = `unknown /* ${input.type} */`;\n\n switch (input.type) {\n case \"date\":\n inner = `Query${type}.PrimitiveType<${JSON.stringify(\"datetime\")}>`;\n break;\n\n case \"attachment\":\n case \"boolean\":\n case \"double\":\n case \"float\":\n case \"integer\":\n case \"long\":\n case \"string\":\n case \"threeDimensionalAggregation\":\n case \"timestamp\":\n case \"twoDimensionalAggregation\":\n inner = `Query${type}.PrimitiveType<${JSON.stringify(input.type)}>`;\n break;\n\n case \"struct\":\n inner = `{\n ${\n stringify(input.struct, {\n \"*\": (p, formatter, apiName) => {\n return [\n `\n ${type === \"Param\" ? \"readonly \" : \"\"}\"${apiName}\"${\n p.nullable ? \"?\" : \"\"\n }`,\n `${getQueryParamType(enhancedOntology, p, type)}`,\n ];\n },\n })\n }\n }`;\n break;\n\n case \"object\":\n inner = `Query${type}.ObjectType<${\n enhancedOntology.requireObjectType(input.object)\n .getImportedDefinitionIdentifier(true)\n }>`;\n break;\n\n case \"objectSet\":\n inner = `Query${type}.ObjectSetType<${\n enhancedOntology.requireObjectType(input.objectSet)\n .getImportedDefinitionIdentifier(true)\n }>`;\n break;\n\n case \"set\":\n inner = `${type === \"Param\" ? \"Readonly\" : \"\"}Set<${\n getQueryParamType(enhancedOntology, input.set, type)\n }>`;\n break;\n\n case \"union\":\n inner = input.union.map((u) =>\n getQueryParamType(enhancedOntology, u, type)\n ).join(\" | \");\n break;\n }\n\n if (input.multiplicity && type === \"Param\") {\n return `ReadonlyArray<${inner}>`;\n } else if (input.multiplicity) {\n return `Array<${inner}>`;\n }\n return inner;\n}\n"],"mappings":"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","ignoreList":[]}
@@ -13,6 +13,7 @@
13
13
  * See the License for the specific language governing permissions and
14
14
  * limitations under the License.
15
15
  */
16
+
16
17
  import * as ts from "typescript";
17
18
  import { describe, expect, it } from "vitest";
18
19
  import { enhanceOntology } from "../GenerateContext/enhanceOntology.js";
@@ -162,6 +163,7 @@ describe("generatePerQueryDataFiles", () => {
162
163
  const rootFileNames = Object.keys(helper.getFiles());
163
164
  console.log(rootFileNames);
164
165
  const files = {};
166
+
165
167
  // initialize the list of files
166
168
  rootFileNames.forEach(fileName => {
167
169
  files[fileName] = {
@@ -1 +1 @@
1
- {"version":3,"file":"generatePerQueryDataFiles.test.js","names":["ts","describe","expect","it","enhanceOntology","createMockMinimalFiles","TodoWireOntology","generatePerQueryDataFilesV2","helper","fs","minimalFiles","ontology","sanitized","importExt","externalObjects","Map","externalInterfaces","externalSpts","outDir","forInternalUse","getFiles","toMatchInlineSnapshot","writeFile","rootFileNames","Object","keys","console","log","files","forEach","fileName","version","servicesHost","getScriptFileNames","getScriptVersion","toString","getScriptSnapshot","undefined","ScriptSnapshot","fromString","getCurrentDirectory","getCompilationSettings","getDefaultLibFileName","options","getDefaultLibFilePath","fileExists","path","readFile","readDirectory","extensions","exclude","include","depth","sys","directoryExists","getDirectories","langServices","createLanguageService","q","getDocCommentTemplateAtPosition","createDocumentRegistry","actionTypes","interfaceTypes","objectTypes","apiName","description","displayName","rid","queryTypes","doThing","parameters","foo","dataType","type","paramStruct","fields","name","fieldType","output","sharedPropertyTypes"],"sources":["generatePerQueryDataFiles.test.js"],"sourcesContent":["/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\nimport * as ts from \"typescript\";\nimport { describe, expect, it } from \"vitest\";\nimport { enhanceOntology } from \"../GenerateContext/enhanceOntology.js\";\nimport { createMockMinimalFiles } from \"../util/test/createMockMinimalFiles.js\";\nimport { TodoWireOntology } from \"../util/test/TodoWireOntology.js\";\nimport { generatePerQueryDataFilesV2 } from \"./generatePerQueryDataFiles.js\";\ndescribe(\"generatePerQueryDataFiles\", () => {\n it(\"is stable v2\", async () => {\n const helper = createMockMinimalFiles();\n const BASE_PATH = \"/foo\";\n await generatePerQueryDataFilesV2({\n fs: helper.minimalFiles,\n ontology: enhanceOntology({\n sanitized: TodoWireOntology,\n importExt: \".js\",\n externalObjects: new Map(),\n externalInterfaces: new Map(),\n externalSpts: new Map(),\n }),\n outDir: BASE_PATH,\n importExt: \".js\",\n forInternalUse: true,\n }, true);\n expect(helper.getFiles()).toMatchInlineSnapshot(`\n {\n \"/foo/ontology/queries.ts\": \"export { getCount } from './queries/getCount.js';\n export { returnsTodo } from './queries/returnsTodo.js';\n \",\n \"/foo/ontology/queries/getCount.ts\": \"import type { QueryDefinition, QueryParam, QueryResult, VersionBound } from '@osdk/api';\n import type { $ExpectedClientVersion } from '../../OntologyMetadata.js';\n import { $osdkMetadata } from '../../OntologyMetadata.js';\n\n export namespace getCount {\n export interface Signature {\n (query: getCount.Parameters): Promise<getCount.ReturnType>;\n }\n\n export interface Parameters {\n /**\n * (no ontology metadata)\n */\n readonly completed: QueryParam.PrimitiveType<'boolean'>;\n }\n\n export type ReturnType = QueryResult.PrimitiveType<'integer'>;\n }\n\n export interface getCount extends QueryDefinition<getCount.Signature>, VersionBound<$ExpectedClientVersion> {\n __DefinitionMetadata?: {\n apiName: 'getCount';\n rid: 'rid.query.1';\n type: 'query';\n version: '0';\n parameters: {\n /**\n * (no ontology metadata)\n */\n completed: {\n nullable: false;\n type: 'boolean';\n };\n };\n output: {\n nullable: false;\n type: 'integer';\n };\n signature: getCount.Signature;\n };\n apiName: 'getCount';\n type: 'query';\n version: '0';\n osdkMetadata: typeof $osdkMetadata;\n }\n\n export const getCount: getCount = {\n apiName: 'getCount',\n type: 'query',\n version: '0',\n osdkMetadata: $osdkMetadata,\n };\n \",\n \"/foo/ontology/queries/returnsTodo.ts\": \"import type { QueryDefinition, QueryParam, QueryResult, VersionBound } from '@osdk/api';\n import type { $ExpectedClientVersion } from '../../OntologyMetadata.js';\n import { $osdkMetadata } from '../../OntologyMetadata.js';\n import type { Todo } from '../objects/Todo.js';\n\n export namespace returnsTodo {\n export interface Signature {\n (query: returnsTodo.Parameters): Promise<returnsTodo.ReturnType>;\n }\n\n export interface Parameters {\n /**\n * description: Random desc so we test jsdoc\n */\n readonly someTodo: QueryParam.ObjectType<Todo>;\n }\n\n export type ReturnType = QueryResult.ObjectType<Todo>;\n }\n\n export interface returnsTodo extends QueryDefinition<returnsTodo.Signature>, VersionBound<$ExpectedClientVersion> {\n __DefinitionMetadata?: {\n apiName: 'returnsTodo';\n rid: 'rid.query.2';\n type: 'query';\n version: '0';\n parameters: {\n /**\n * description: Random desc so we test jsdoc\n */\n someTodo: {\n description: 'Random desc so we test jsdoc';\n nullable: false;\n object: 'Todo';\n type: 'object';\n __OsdkTargetType?: Todo;\n };\n };\n output: {\n nullable: false;\n object: 'Todo';\n type: 'object';\n __OsdkTargetType?: Todo;\n };\n signature: returnsTodo.Signature;\n };\n apiName: 'returnsTodo';\n type: 'query';\n version: '0';\n osdkMetadata: typeof $osdkMetadata;\n }\n\n export const returnsTodo: returnsTodo = {\n apiName: 'returnsTodo',\n type: 'query',\n version: '0',\n osdkMetadata: $osdkMetadata,\n };\n \",\n }\n `);\n await helper.minimalFiles.writeFile(\"/bar/test.ts\", `\n import {returnsTodo} from \"/foo/ontology/queries/returnsTodo.ts\";\n\n returnsTodo({someTodo:/*marker*/})\n `);\n const rootFileNames = Object.keys(helper.getFiles());\n console.log(rootFileNames);\n const files = {};\n // initialize the list of files\n rootFileNames.forEach(fileName => {\n files[fileName] = { version: 0 };\n });\n const servicesHost = {\n getScriptFileNames: () => Object.keys(helper.getFiles()),\n getScriptVersion: fileName => files[fileName] && files[fileName].version.toString(),\n getScriptSnapshot: fileName => {\n if (!helper.getFiles()[fileName]) {\n return undefined;\n }\n return ts.ScriptSnapshot.fromString(helper.getFiles()[fileName]);\n },\n getCurrentDirectory: () => \"/bar\",\n getCompilationSettings: () => ({}),\n getDefaultLibFileName: options => ts.getDefaultLibFilePath(options),\n fileExists: (path) => {\n console.log(path);\n return helper.getFiles()[path] !== undefined;\n },\n readFile: (path) => {\n console.log(\"readFile: \", path);\n return helper.getFiles()[path];\n },\n readDirectory: (path, extensions, exclude, include, depth) => {\n console.log(\"readDirectory\", path);\n return ts.sys.readDirectory(path, extensions, exclude, include, depth);\n },\n directoryExists: ts.sys.directoryExists,\n getDirectories: ts.sys.getDirectories,\n };\n const langServices = ts.createLanguageService(servicesHost);\n const q = langServices.getDocCommentTemplateAtPosition(\"/bar/test.ts\", 1);\n console.log(q);\n ts.createDocumentRegistry();\n });\n it(\"generates structs for queries\", async () => {\n const helper = createMockMinimalFiles();\n const BASE_PATH = \"/foo\";\n await generatePerQueryDataFilesV2({\n fs: helper.minimalFiles,\n ontology: enhanceOntology({\n sanitized: {\n actionTypes: {},\n interfaceTypes: {},\n objectTypes: {},\n ontology: {\n apiName: \"foo\",\n description: \"foo\",\n displayName: \"foo\",\n rid: \"ri.foo\",\n },\n queryTypes: {\n doThing: {\n rid: \"rid.query.1\",\n version: \"0\",\n apiName: \"doThing\",\n parameters: {\n foo: {\n dataType: { type: \"string\" },\n },\n paramStruct: {\n dataType: {\n type: \"struct\",\n fields: [\n {\n name: \"aDate\",\n fieldType: { type: \"date\" },\n },\n {\n name: \"nestedStruct\",\n fieldType: {\n type: \"struct\",\n fields: [\n {\n name: \"nestedString\",\n fieldType: { type: \"string\" },\n },\n {\n name: \"nestedInteger\",\n fieldType: { type: \"integer\" },\n },\n ],\n },\n },\n ],\n },\n },\n },\n output: {\n type: \"struct\",\n fields: [\n {\n name: \"aString\",\n fieldType: { type: \"string\" },\n },\n {\n name: \"anInteger\",\n fieldType: { type: \"integer\" },\n },\n {\n name: \"aLong\",\n fieldType: { type: \"long\" },\n },\n {\n name: \"aDate\",\n fieldType: { type: \"date\" },\n },\n {\n name: \"nestedStruct\",\n fieldType: {\n type: \"struct\",\n fields: [\n {\n name: \"nestedString\",\n fieldType: { type: \"string\" },\n },\n {\n name: \"nestedInteger\",\n fieldType: { type: \"integer\" },\n },\n ],\n },\n },\n ],\n },\n },\n },\n sharedPropertyTypes: {},\n },\n importExt: \".js\",\n externalObjects: new Map(),\n externalInterfaces: new Map(),\n externalSpts: new Map(),\n }),\n outDir: BASE_PATH,\n importExt: \".js\",\n forInternalUse: true,\n }, true);\n expect(helper.getFiles()[\"/foo/ontology/queries/doThing.ts\"])\n .toMatchInlineSnapshot(`\n \"import type { QueryDefinition, QueryParam, QueryResult, VersionBound } from '@osdk/api';\n import type { $ExpectedClientVersion } from '../../OntologyMetadata.js';\n import { $osdkMetadata } from '../../OntologyMetadata.js';\n\n export namespace doThing {\n export interface Signature {\n (query: doThing.Parameters): Promise<doThing.ReturnType>;\n }\n\n export interface Parameters {\n /**\n * (no ontology metadata)\n */\n readonly foo: QueryParam.PrimitiveType<'string'>;\n\n /**\n * (no ontology metadata)\n */\n readonly paramStruct: {\n readonly aDate: QueryParam.PrimitiveType<'datetime'>;\n\n readonly nestedStruct: {\n readonly nestedInteger: QueryParam.PrimitiveType<'integer'>;\n\n readonly nestedString: QueryParam.PrimitiveType<'string'>;\n };\n };\n }\n\n export interface ReturnType {\n aDate: QueryResult.PrimitiveType<'datetime'>;\n\n aLong: QueryResult.PrimitiveType<'long'>;\n\n anInteger: QueryResult.PrimitiveType<'integer'>;\n\n aString: QueryResult.PrimitiveType<'string'>;\n\n nestedStruct: {\n nestedInteger: QueryResult.PrimitiveType<'integer'>;\n\n nestedString: QueryResult.PrimitiveType<'string'>;\n };\n }\n }\n\n export interface doThing extends QueryDefinition<doThing.Signature>, VersionBound<$ExpectedClientVersion> {\n __DefinitionMetadata?: {\n apiName: 'doThing';\n rid: 'rid.query.1';\n type: 'query';\n version: '0';\n parameters: {\n /**\n * (no ontology metadata)\n */\n foo: {\n nullable: false;\n type: 'string';\n };\n /**\n * (no ontology metadata)\n */\n paramStruct: {\n nullable: false;\n struct: {\n aDate: {\n type: 'date';\n nullable: false;\n };\n nestedStruct: {\n type: 'struct';\n struct: {\n nestedString: {\n type: 'string';\n nullable: false;\n };\n nestedInteger: {\n type: 'integer';\n nullable: false;\n };\n };\n nullable: false;\n };\n };\n type: 'struct';\n };\n };\n output: {\n nullable: false;\n struct: {\n aString: {\n type: 'string';\n nullable: false;\n };\n anInteger: {\n type: 'integer';\n nullable: false;\n };\n aLong: {\n type: 'long';\n nullable: false;\n };\n aDate: {\n type: 'date';\n nullable: false;\n };\n nestedStruct: {\n type: 'struct';\n struct: {\n nestedString: {\n type: 'string';\n nullable: false;\n };\n nestedInteger: {\n type: 'integer';\n nullable: false;\n };\n };\n nullable: false;\n };\n };\n type: 'struct';\n };\n signature: doThing.Signature;\n };\n apiName: 'doThing';\n type: 'query';\n version: '0';\n osdkMetadata: typeof $osdkMetadata;\n }\n\n export const doThing: doThing = {\n apiName: 'doThing',\n type: 'query',\n version: '0',\n osdkMetadata: $osdkMetadata,\n };\n \"\n `);\n });\n});\n"],"mappings":"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;cAET;YACJ;UACJ,CAAC;UACDM,mBAAmB,EAAE,CAAC;QAC1B,CAAC;QACDlE,SAAS,EAAE,KAAK;QAChBC,eAAe,EAAE,IAAIC,GAAG,CAAC,CAAC;QAC1BC,kBAAkB,EAAE,IAAID,GAAG,CAAC,CAAC;QAC7BE,YAAY,EAAE,IAAIF,GAAG,CAAC;MAC1B,CAAC,CAAC;MACFG,MAAM,EAjGQ,MAiGG;MACjBL,SAAS,EAAE,KAAK;MAChBM,cAAc,EAAE;IACpB,CAAC,EAAE,IAAI,CAAC;IACRjB,MAAM,CAACM,MAAM,CAACY,QAAQ,CAAC,CAAC,CAAC,kCAAkC,CAAC,CAAC,CACxDC,qBAAqB,CAAC;AACnC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,CAAC;EACJ,CAAC,CAAC;AACN,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"generatePerQueryDataFiles.test.js","names":["ts","describe","expect","it","enhanceOntology","createMockMinimalFiles","TodoWireOntology","generatePerQueryDataFilesV2","helper","fs","minimalFiles","ontology","sanitized","importExt","externalObjects","Map","externalInterfaces","externalSpts","outDir","forInternalUse","getFiles","toMatchInlineSnapshot","writeFile","rootFileNames","Object","keys","console","log","files","forEach","fileName","version","servicesHost","getScriptFileNames","getScriptVersion","toString","getScriptSnapshot","undefined","ScriptSnapshot","fromString","getCurrentDirectory","getCompilationSettings","getDefaultLibFileName","options","getDefaultLibFilePath","fileExists","path","readFile","readDirectory","extensions","exclude","include","depth","sys","directoryExists","getDirectories","langServices","createLanguageService","q","getDocCommentTemplateAtPosition","createDocumentRegistry","actionTypes","interfaceTypes","objectTypes","apiName","description","displayName","rid","queryTypes","doThing","parameters","foo","dataType","type","paramStruct","fields","name","fieldType","output","sharedPropertyTypes"],"sources":["generatePerQueryDataFiles.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 * as ts from \"typescript\";\nimport { describe, expect, it } from \"vitest\";\nimport { enhanceOntology } from \"../GenerateContext/enhanceOntology.js\";\nimport { createMockMinimalFiles } from \"../util/test/createMockMinimalFiles.js\";\nimport { TodoWireOntology } from \"../util/test/TodoWireOntology.js\";\nimport { generatePerQueryDataFilesV2 } from \"./generatePerQueryDataFiles.js\";\n\ndescribe(\"generatePerQueryDataFiles\", () => {\n it(\"is stable v2\", async () => {\n const helper = createMockMinimalFiles();\n const BASE_PATH = \"/foo\";\n\n await generatePerQueryDataFilesV2(\n {\n fs: helper.minimalFiles,\n ontology: enhanceOntology({\n sanitized: TodoWireOntology,\n importExt: \".js\",\n externalObjects: new Map(),\n externalInterfaces: new Map(),\n externalSpts: new Map(),\n }),\n outDir: BASE_PATH,\n importExt: \".js\",\n forInternalUse: true,\n },\n true,\n );\n\n expect(helper.getFiles()).toMatchInlineSnapshot(`\n {\n \"/foo/ontology/queries.ts\": \"export { getCount } from './queries/getCount.js';\n export { returnsTodo } from './queries/returnsTodo.js';\n \",\n \"/foo/ontology/queries/getCount.ts\": \"import type { QueryDefinition, QueryParam, QueryResult, VersionBound } from '@osdk/api';\n import type { $ExpectedClientVersion } from '../../OntologyMetadata.js';\n import { $osdkMetadata } from '../../OntologyMetadata.js';\n\n export namespace getCount {\n export interface Signature {\n (query: getCount.Parameters): Promise<getCount.ReturnType>;\n }\n\n export interface Parameters {\n /**\n * (no ontology metadata)\n */\n readonly completed: QueryParam.PrimitiveType<'boolean'>;\n }\n\n export type ReturnType = QueryResult.PrimitiveType<'integer'>;\n }\n\n export interface getCount extends QueryDefinition<getCount.Signature>, VersionBound<$ExpectedClientVersion> {\n __DefinitionMetadata?: {\n apiName: 'getCount';\n rid: 'rid.query.1';\n type: 'query';\n version: '0';\n parameters: {\n /**\n * (no ontology metadata)\n */\n completed: {\n nullable: false;\n type: 'boolean';\n };\n };\n output: {\n nullable: false;\n type: 'integer';\n };\n signature: getCount.Signature;\n };\n apiName: 'getCount';\n type: 'query';\n version: '0';\n osdkMetadata: typeof $osdkMetadata;\n }\n\n export const getCount: getCount = {\n apiName: 'getCount',\n type: 'query',\n version: '0',\n osdkMetadata: $osdkMetadata,\n };\n \",\n \"/foo/ontology/queries/returnsTodo.ts\": \"import type { QueryDefinition, QueryParam, QueryResult, VersionBound } from '@osdk/api';\n import type { $ExpectedClientVersion } from '../../OntologyMetadata.js';\n import { $osdkMetadata } from '../../OntologyMetadata.js';\n import type { Todo } from '../objects/Todo.js';\n\n export namespace returnsTodo {\n export interface Signature {\n (query: returnsTodo.Parameters): Promise<returnsTodo.ReturnType>;\n }\n\n export interface Parameters {\n /**\n * description: Random desc so we test jsdoc\n */\n readonly someTodo: QueryParam.ObjectType<Todo>;\n }\n\n export type ReturnType = QueryResult.ObjectType<Todo>;\n }\n\n export interface returnsTodo extends QueryDefinition<returnsTodo.Signature>, VersionBound<$ExpectedClientVersion> {\n __DefinitionMetadata?: {\n apiName: 'returnsTodo';\n rid: 'rid.query.2';\n type: 'query';\n version: '0';\n parameters: {\n /**\n * description: Random desc so we test jsdoc\n */\n someTodo: {\n description: 'Random desc so we test jsdoc';\n nullable: false;\n object: 'Todo';\n type: 'object';\n __OsdkTargetType?: Todo;\n };\n };\n output: {\n nullable: false;\n object: 'Todo';\n type: 'object';\n __OsdkTargetType?: Todo;\n };\n signature: returnsTodo.Signature;\n };\n apiName: 'returnsTodo';\n type: 'query';\n version: '0';\n osdkMetadata: typeof $osdkMetadata;\n }\n\n export const returnsTodo: returnsTodo = {\n apiName: 'returnsTodo',\n type: 'query',\n version: '0',\n osdkMetadata: $osdkMetadata,\n };\n \",\n }\n `);\n\n await helper.minimalFiles.writeFile(\n \"/bar/test.ts\",\n `\n import {returnsTodo} from \"/foo/ontology/queries/returnsTodo.ts\";\n\n returnsTodo({someTodo:/*marker*/})\n `,\n );\n\n const rootFileNames = Object.keys(helper.getFiles());\n console.log(rootFileNames);\n\n const files: ts.MapLike<{ version: number }> = {};\n\n // initialize the list of files\n rootFileNames.forEach(fileName => {\n files[fileName] = { version: 0 };\n });\n\n const servicesHost: ts.LanguageServiceHost = {\n getScriptFileNames: () => Object.keys(helper.getFiles()),\n getScriptVersion: fileName =>\n files[fileName] && files[fileName].version.toString(),\n getScriptSnapshot: fileName => {\n if (!helper.getFiles()[fileName]) {\n return undefined;\n }\n\n return ts.ScriptSnapshot.fromString(\n helper.getFiles()[fileName],\n );\n },\n getCurrentDirectory: () => \"/bar\",\n getCompilationSettings: () => ({}),\n getDefaultLibFileName: options => ts.getDefaultLibFilePath(options),\n fileExists: (path: string) => {\n console.log(path);\n return helper.getFiles()[path] !== undefined;\n },\n readFile: (path: string) => {\n console.log(\"readFile: \", path);\n return helper.getFiles()[path];\n },\n readDirectory: (path, extensions, exclude, include, depth) => {\n console.log(\"readDirectory\", path);\n return ts.sys.readDirectory(path, extensions, exclude, include, depth);\n },\n directoryExists: ts.sys.directoryExists,\n getDirectories: ts.sys.getDirectories,\n };\n\n const langServices = ts.createLanguageService(servicesHost);\n\n const q = langServices.getDocCommentTemplateAtPosition(\"/bar/test.ts\", 1);\n console.log(q);\n ts.createDocumentRegistry();\n });\n\n it(\"generates structs for queries\", async () => {\n const helper = createMockMinimalFiles();\n const BASE_PATH = \"/foo\";\n\n await generatePerQueryDataFilesV2(\n {\n fs: helper.minimalFiles,\n ontology: enhanceOntology({\n sanitized: {\n actionTypes: {},\n interfaceTypes: {},\n objectTypes: {},\n ontology: {\n apiName: \"foo\",\n description: \"foo\",\n displayName: \"foo\",\n rid: \"ri.foo\",\n },\n queryTypes: {\n doThing: {\n rid: \"rid.query.1\",\n version: \"0\",\n apiName: \"doThing\",\n parameters: {\n foo: {\n dataType: { type: \"string\" },\n },\n paramStruct: {\n dataType: {\n type: \"struct\",\n fields: [\n {\n name: \"aDate\",\n fieldType: { type: \"date\" },\n },\n {\n name: \"nestedStruct\",\n fieldType: {\n type: \"struct\",\n fields: [\n {\n name: \"nestedString\",\n fieldType: { type: \"string\" },\n },\n {\n name: \"nestedInteger\",\n fieldType: { type: \"integer\" },\n },\n ],\n },\n },\n ],\n },\n },\n },\n output: {\n type: \"struct\",\n fields: [\n {\n name: \"aString\",\n fieldType: { type: \"string\" },\n },\n {\n name: \"anInteger\",\n fieldType: { type: \"integer\" },\n },\n {\n name: \"aLong\",\n fieldType: { type: \"long\" },\n },\n {\n name: \"aDate\",\n fieldType: { type: \"date\" },\n },\n {\n name: \"nestedStruct\",\n fieldType: {\n type: \"struct\",\n fields: [\n {\n name: \"nestedString\",\n fieldType: { type: \"string\" },\n },\n {\n name: \"nestedInteger\",\n fieldType: { type: \"integer\" },\n },\n ],\n },\n },\n ],\n },\n },\n },\n sharedPropertyTypes: {},\n },\n importExt: \".js\",\n externalObjects: new Map(),\n externalInterfaces: new Map(),\n externalSpts: new Map(),\n }),\n outDir: BASE_PATH,\n importExt: \".js\",\n forInternalUse: true,\n },\n true,\n );\n expect(helper.getFiles()[\"/foo/ontology/queries/doThing.ts\"])\n .toMatchInlineSnapshot(`\n \"import type { QueryDefinition, QueryParam, QueryResult, VersionBound } from '@osdk/api';\n import type { $ExpectedClientVersion } from '../../OntologyMetadata.js';\n import { $osdkMetadata } from '../../OntologyMetadata.js';\n\n export namespace doThing {\n export interface Signature {\n (query: doThing.Parameters): Promise<doThing.ReturnType>;\n }\n\n export interface Parameters {\n /**\n * (no ontology metadata)\n */\n readonly foo: QueryParam.PrimitiveType<'string'>;\n\n /**\n * (no ontology metadata)\n */\n readonly paramStruct: {\n readonly aDate: QueryParam.PrimitiveType<'datetime'>;\n\n readonly nestedStruct: {\n readonly nestedInteger: QueryParam.PrimitiveType<'integer'>;\n\n readonly nestedString: QueryParam.PrimitiveType<'string'>;\n };\n };\n }\n\n export interface ReturnType {\n aDate: QueryResult.PrimitiveType<'datetime'>;\n\n aLong: QueryResult.PrimitiveType<'long'>;\n\n anInteger: QueryResult.PrimitiveType<'integer'>;\n\n aString: QueryResult.PrimitiveType<'string'>;\n\n nestedStruct: {\n nestedInteger: QueryResult.PrimitiveType<'integer'>;\n\n nestedString: QueryResult.PrimitiveType<'string'>;\n };\n }\n }\n\n export interface doThing extends QueryDefinition<doThing.Signature>, VersionBound<$ExpectedClientVersion> {\n __DefinitionMetadata?: {\n apiName: 'doThing';\n rid: 'rid.query.1';\n type: 'query';\n version: '0';\n parameters: {\n /**\n * (no ontology metadata)\n */\n foo: {\n nullable: false;\n type: 'string';\n };\n /**\n * (no ontology metadata)\n */\n paramStruct: {\n nullable: false;\n struct: {\n aDate: {\n type: 'date';\n nullable: false;\n };\n nestedStruct: {\n type: 'struct';\n struct: {\n nestedString: {\n type: 'string';\n nullable: false;\n };\n nestedInteger: {\n type: 'integer';\n nullable: false;\n };\n };\n nullable: false;\n };\n };\n type: 'struct';\n };\n };\n output: {\n nullable: false;\n struct: {\n aString: {\n type: 'string';\n nullable: false;\n };\n anInteger: {\n type: 'integer';\n nullable: false;\n };\n aLong: {\n type: 'long';\n nullable: false;\n };\n aDate: {\n type: 'date';\n nullable: false;\n };\n nestedStruct: {\n type: 'struct';\n struct: {\n nestedString: {\n type: 'string';\n nullable: false;\n };\n nestedInteger: {\n type: 'integer';\n nullable: false;\n };\n };\n nullable: false;\n };\n };\n type: 'struct';\n };\n signature: doThing.Signature;\n };\n apiName: 'doThing';\n type: 'query';\n version: '0';\n osdkMetadata: typeof $osdkMetadata;\n }\n\n export const doThing: doThing = {\n apiName: 'doThing',\n type: 'query',\n version: '0',\n osdkMetadata: $osdkMetadata,\n };\n \"\n `);\n });\n});\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,OAAO,KAAKA,EAAE,MAAM,YAAY;AAChC,SAASC,QAAQ,EAAEC,MAAM,EAAEC,EAAE,QAAQ,QAAQ;AAC7C,SAASC,eAAe,QAAQ,uCAAuC;AACvE,SAASC,sBAAsB,QAAQ,wCAAwC;AAC/E,SAASC,gBAAgB,QAAQ,kCAAkC;AACnE,SAASC,2BAA2B,QAAQ,gCAAgC;AAE5EN,QAAQ,CAAC,2BAA2B,EAAE,MAAM;EAC1CE,EAAE,CAAC,cAAc,EAAE,YAAY;IAC7B,MAAMK,MAAM,GAAGH,sBAAsB,CAAC,CAAC;IAGvC,MAAME,2BAA2B,CAC/B;MACEE,EAAE,EAAED,MAAM,CAACE,YAAY;MACvBC,QAAQ,EAAEP,eAAe,CAAC;QACxBQ,SAAS,EAAEN,gBAAgB;QAC3BO,SAAS,EAAE,KAAK;QAChBC,eAAe,EAAE,IAAIC,GAAG,CAAC,CAAC;QAC1BC,kBAAkB,EAAE,IAAID,GAAG,CAAC,CAAC;QAC7BE,YAAY,EAAE,IAAIF,GAAG,CAAC;MACxB,CAAC,CAAC;MACFG,MAAM,EAZQ,MAYG;MACjBL,SAAS,EAAE,KAAK;MAChBM,cAAc,EAAE;IAClB,CAAC,EACD,IACF,CAAC;IAEDjB,MAAM,CAACM,MAAM,CAACY,QAAQ,CAAC,CAAC,CAAC,CAACC,qBAAqB,CAAC;AACpD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK,CAAC;IAEF,MAAMb,MAAM,CAACE,YAAY,CAACY,SAAS,CACjC,cAAc,EACd;AACN;AACA;AACA;AACA,KACI,CAAC;IAED,MAAMC,aAAa,GAAGC,MAAM,CAACC,IAAI,CAACjB,MAAM,CAACY,QAAQ,CAAC,CAAC,CAAC;IACpDM,OAAO,CAACC,GAAG,CAACJ,aAAa,CAAC;IAE1B,MAAMK,KAAsC,GAAG,CAAC,CAAC;;IAEjD;IACAL,aAAa,CAACM,OAAO,CAACC,QAAQ,IAAI;MAChCF,KAAK,CAACE,QAAQ,CAAC,GAAG;QAAEC,OAAO,EAAE;MAAE,CAAC;IAClC,CAAC,CAAC;IAEF,MAAMC,YAAoC,GAAG;MAC3CC,kBAAkB,EAAEA,CAAA,KAAMT,MAAM,CAACC,IAAI,CAACjB,MAAM,CAACY,QAAQ,CAAC,CAAC,CAAC;MACxDc,gBAAgB,EAAEJ,QAAQ,IACxBF,KAAK,CAACE,QAAQ,CAAC,IAAIF,KAAK,CAACE,QAAQ,CAAC,CAACC,OAAO,CAACI,QAAQ,CAAC,CAAC;MACvDC,iBAAiB,EAAEN,QAAQ,IAAI;QAC7B,IAAI,CAACtB,MAAM,CAACY,QAAQ,CAAC,CAAC,CAACU,QAAQ,CAAC,EAAE;UAChC,OAAOO,SAAS;QAClB;QAEA,OAAOrC,EAAE,CAACsC,cAAc,CAACC,UAAU,CACjC/B,MAAM,CAACY,QAAQ,CAAC,CAAC,CAACU,QAAQ,CAC5B,CAAC;MACH,CAAC;MACDU,mBAAmB,EAAEA,CAAA,KAAM,MAAM;MACjCC,sBAAsB,EAAEA,CAAA,MAAO,CAAC,CAAC,CAAC;MAClCC,qBAAqB,EAAEC,OAAO,IAAI3C,EAAE,CAAC4C,qBAAqB,CAACD,OAAO,CAAC;MACnEE,UAAU,EAAGC,IAAY,IAAK;QAC5BpB,OAAO,CAACC,GAAG,CAACmB,IAAI,CAAC;QACjB,OAAOtC,MAAM,CAACY,QAAQ,CAAC,CAAC,CAAC0B,IAAI,CAAC,KAAKT,SAAS;MAC9C,CAAC;MACDU,QAAQ,EAAGD,IAAY,IAAK;QAC1BpB,OAAO,CAACC,GAAG,CAAC,YAAY,EAAEmB,IAAI,CAAC;QAC/B,OAAOtC,MAAM,CAACY,QAAQ,CAAC,CAAC,CAAC0B,IAAI,CAAC;MAChC,CAAC;MACDE,aAAa,EAAEA,CAACF,IAAI,EAAEG,UAAU,EAAEC,OAAO,EAAEC,OAAO,EAAEC,KAAK,KAAK;QAC5D1B,OAAO,CAACC,GAAG,CAAC,eAAe,EAAEmB,IAAI,CAAC;QAClC,OAAO9C,EAAE,CAACqD,GAAG,CAACL,aAAa,CAACF,IAAI,EAAEG,UAAU,EAAEC,OAAO,EAAEC,OAAO,EAAEC,KAAK,CAAC;MACxE,CAAC;MACDE,eAAe,EAAEtD,EAAE,CAACqD,GAAG,CAACC,eAAe;MACvCC,cAAc,EAAEvD,EAAE,CAACqD,GAAG,CAACE;IACzB,CAAC;IAED,MAAMC,YAAY,GAAGxD,EAAE,CAACyD,qBAAqB,CAACzB,YAAY,CAAC;IAE3D,MAAM0B,CAAC,GAAGF,YAAY,CAACG,+BAA+B,CAAC,cAAc,EAAE,CAAC,CAAC;IACzEjC,OAAO,CAACC,GAAG,CAAC+B,CAAC,CAAC;IACd1D,EAAE,CAAC4D,sBAAsB,CAAC,CAAC;EAC7B,CAAC,CAAC;EAEFzD,EAAE,CAAC,+BAA+B,EAAE,YAAY;IAC9C,MAAMK,MAAM,GAAGH,sBAAsB,CAAC,CAAC;IAGvC,MAAME,2BAA2B,CAC/B;MACEE,EAAE,EAAED,MAAM,CAACE,YAAY;MACvBC,QAAQ,EAAEP,eAAe,CAAC;QACxBQ,SAAS,EAAE;UACTiD,WAAW,EAAE,CAAC,CAAC;UACfC,cAAc,EAAE,CAAC,CAAC;UAClBC,WAAW,EAAE,CAAC,CAAC;UACfpD,QAAQ,EAAE;YACRqD,OAAO,EAAE,KAAK;YACdC,WAAW,EAAE,KAAK;YAClBC,WAAW,EAAE,KAAK;YAClBC,GAAG,EAAE;UACP,CAAC;UACDC,UAAU,EAAE;YACVC,OAAO,EAAE;cACPF,GAAG,EAAE,aAAa;cAClBpC,OAAO,EAAE,GAAG;cACZiC,OAAO,EAAE,SAAS;cAClBM,UAAU,EAAE;gBACVC,GAAG,EAAE;kBACHC,QAAQ,EAAE;oBAAEC,IAAI,EAAE;kBAAS;gBAC7B,CAAC;gBACDC,WAAW,EAAE;kBACXF,QAAQ,EAAE;oBACRC,IAAI,EAAE,QAAQ;oBACdE,MAAM,EAAE,CACN;sBACEC,IAAI,EAAE,OAAO;sBACbC,SAAS,EAAE;wBAAEJ,IAAI,EAAE;sBAAO;oBAC5B,CAAC,EACD;sBACEG,IAAI,EAAE,cAAc;sBACpBC,SAAS,EAAE;wBACTJ,IAAI,EAAE,QAAQ;wBACdE,MAAM,EAAE,CACN;0BACEC,IAAI,EAAE,cAAc;0BACpBC,SAAS,EAAE;4BAAEJ,IAAI,EAAE;0BAAS;wBAC9B,CAAC,EACD;0BACEG,IAAI,EAAE,eAAe;0BACrBC,SAAS,EAAE;4BAAEJ,IAAI,EAAE;0BAAU;wBAC/B,CAAC;sBAEL;oBACF,CAAC;kBAEL;gBACF;cACF,CAAC;cACDK,MAAM,EAAE;gBACNL,IAAI,EAAE,QAAQ;gBACdE,MAAM,EAAE,CACN;kBACEC,IAAI,EAAE,SAAS;kBACfC,SAAS,EAAE;oBAAEJ,IAAI,EAAE;kBAAS;gBAC9B,CAAC,EACD;kBACEG,IAAI,EAAE,WAAW;kBACjBC,SAAS,EAAE;oBAAEJ,IAAI,EAAE;kBAAU;gBAC/B,CAAC,EACD;kBACEG,IAAI,EAAE,OAAO;kBACbC,SAAS,EAAE;oBAAEJ,IAAI,EAAE;kBAAO;gBAC5B,CAAC,EACD;kBACEG,IAAI,EAAE,OAAO;kBACbC,SAAS,EAAE;oBAAEJ,IAAI,EAAE;kBAAO;gBAC5B,CAAC,EACD;kBACEG,IAAI,EAAE,cAAc;kBACpBC,SAAS,EAAE;oBACTJ,IAAI,EAAE,QAAQ;oBACdE,MAAM,EAAE,CACN;sBACEC,IAAI,EAAE,cAAc;sBACpBC,SAAS,EAAE;wBAAEJ,IAAI,EAAE;sBAAS;oBAC9B,CAAC,EACD;sBACEG,IAAI,EAAE,eAAe;sBACrBC,SAAS,EAAE;wBAAEJ,IAAI,EAAE;sBAAU;oBAC/B,CAAC;kBAEL;gBACF,CAAC;cAEL;YACF;UACF,CAAC;UACDM,mBAAmB,EAAE,CAAC;QACxB,CAAC;QACDlE,SAAS,EAAE,KAAK;QAChBC,eAAe,EAAE,IAAIC,GAAG,CAAC,CAAC;QAC1BC,kBAAkB,EAAE,IAAID,GAAG,CAAC,CAAC;QAC7BE,YAAY,EAAE,IAAIF,GAAG,CAAC;MACxB,CAAC,CAAC;MACFG,MAAM,EAnGQ,MAmGG;MACjBL,SAAS,EAAE,KAAK;MAChBM,cAAc,EAAE;IAClB,CAAC,EACD,IACF,CAAC;IACDjB,MAAM,CAACM,MAAM,CAACY,QAAQ,CAAC,CAAC,CAAC,kCAAkC,CAAC,CAAC,CAC1DC,qBAAqB,CAAC;AAC7B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,CAAC;EACN,CAAC,CAAC;AACJ,CAAC,CAAC","ignoreList":[]}
@@ -13,6 +13,7 @@
13
13
  * See the License for the specific language governing permissions and
14
14
  * limitations under the License.
15
15
  */
16
+
16
17
  import path from "node:path";
17
18
  import { ForeignType } from "../GenerateContext/ForeignType.js";
18
19
  import { formatTs } from "../util/test/formatTs.js";
@@ -1 +1 @@
1
- {"version":3,"file":"generateRootIndexTsFile.js","names":["path","ForeignType","formatTs","generateRootIndexTsFile","fs","outDir","importExt","ontologyApiNamespace","ontology","writeFile","join","helper","actionTypes","interfaceTypes","objectTypes","queryTypes","x","Object","values","filter","map","a","shortApiName"],"sources":["generateRootIndexTsFile.js"],"sourcesContent":["/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\nimport path from \"node:path\";\nimport { ForeignType } from \"../GenerateContext/ForeignType.js\";\nimport { formatTs } from \"../util/test/formatTs.js\";\nexport async function generateRootIndexTsFile({ fs, outDir, importExt, ontologyApiNamespace, ontology }) {\n await fs.writeFile(path.join(outDir, \"index.ts\"), await formatTs(`export {${helper(ontology.actionTypes)}} from \"./ontology/actions${importExt}\";\n export * as $Actions from \"./ontology/actions${importExt}\";\n export {${helper(ontology.interfaceTypes)}} from \"./ontology/interfaces${importExt}\";\n export * as $Interfaces from \"./ontology/interfaces${importExt}\";\n export {${helper(ontology.objectTypes)}} from \"./ontology/objects${importExt}\";\n export * as $Objects from \"./ontology/objects${importExt}\";\n export {${helper(ontology.queryTypes)}} from \"./ontology/queries${importExt}\";\n export * as $Queries from \"./ontology/queries${importExt}\";\n export { $osdkMetadata } from \"./OntologyMetadata${importExt}\";\n ${ontologyApiNamespace == null\n ? `export { $ontologyRid } from \"./OntologyMetadata${importExt}\";`\n : ``}\n `));\n}\nfunction helper(x) {\n return Object.values(x).filter(x => !(x instanceof ForeignType)).map(a => a.shortApiName).join(\", \");\n}\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAOA,IAAI,MAAM,WAAW;AAC5B,SAASC,WAAW,QAAQ,mCAAmC;AAC/D,SAASC,QAAQ,QAAQ,0BAA0B;AACnD,OAAO,eAAeC,uBAAuBA,CAAC;EAAEC,EAAE;EAAEC,MAAM;EAAEC,SAAS;EAAEC,oBAAoB;EAAEC;AAAS,CAAC,EAAE;EACrG,MAAMJ,EAAE,CAACK,SAAS,CAACT,IAAI,CAACU,IAAI,CAACL,MAAM,EAAE,UAAU,CAAC,EAAE,MAAMH,QAAQ,CAAC,WAAWS,MAAM,CAACH,QAAQ,CAACI,WAAW,CAAC,6BAA6BN,SAAS;AAClJ,uDAAuDA,SAAS;AAChE,kBAAkBK,MAAM,CAACH,QAAQ,CAACK,cAAc,CAAC,gCAAgCP,SAAS;AAC1F,6DAA6DA,SAAS;AACtE,kBAAkBK,MAAM,CAACH,QAAQ,CAACM,WAAW,CAAC,6BAA6BR,SAAS;AACpF,uDAAuDA,SAAS;AAChE,kBAAkBK,MAAM,CAACH,QAAQ,CAACO,UAAU,CAAC,6BAA6BT,SAAS;AACnF,uDAAuDA,SAAS;AAChE,2DAA2DA,SAAS;AACpE,UAAUC,oBAAoB,IAAI,IAAI,GAC5B,mDAAmDD,SAAS,IAAI,GAChE,EAAE;AACZ,KAAK,CAAC,CAAC;AACP;AACA,SAASK,MAAMA,CAACK,CAAC,EAAE;EACf,OAAOC,MAAM,CAACC,MAAM,CAACF,CAAC,CAAC,CAACG,MAAM,CAACH,CAAC,IAAI,EAAEA,CAAC,YAAYf,WAAW,CAAC,CAAC,CAACmB,GAAG,CAACC,CAAC,IAAIA,CAAC,CAACC,YAAY,CAAC,CAACZ,IAAI,CAAC,IAAI,CAAC;AACxG","ignoreList":[]}
1
+ {"version":3,"file":"generateRootIndexTsFile.js","names":["path","ForeignType","formatTs","generateRootIndexTsFile","fs","outDir","importExt","ontologyApiNamespace","ontology","writeFile","join","helper","actionTypes","interfaceTypes","objectTypes","queryTypes","x","Object","values","filter","map","a","shortApiName"],"sources":["generateRootIndexTsFile.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 path from \"node:path\";\nimport { ForeignType } from \"../GenerateContext/ForeignType.js\";\nimport type { GenerateContext } from \"../GenerateContext/GenerateContext.js\";\nimport { formatTs } from \"../util/test/formatTs.js\";\n\nexport async function generateRootIndexTsFile(\n { fs, outDir, importExt, ontologyApiNamespace, ontology }: GenerateContext,\n): Promise<void> {\n await fs.writeFile(\n path.join(outDir, \"index.ts\"),\n await formatTs(\n `export {${\n helper(ontology.actionTypes)\n }} from \"./ontology/actions${importExt}\";\n export * as $Actions from \"./ontology/actions${importExt}\";\n export {${\n helper(ontology.interfaceTypes)\n }} from \"./ontology/interfaces${importExt}\";\n export * as $Interfaces from \"./ontology/interfaces${importExt}\";\n export {${\n helper(ontology.objectTypes)\n }} from \"./ontology/objects${importExt}\";\n export * as $Objects from \"./ontology/objects${importExt}\";\n export {${\n helper(ontology.queryTypes)\n }} from \"./ontology/queries${importExt}\";\n export * as $Queries from \"./ontology/queries${importExt}\";\n export { $osdkMetadata } from \"./OntologyMetadata${importExt}\";\n ${\n ontologyApiNamespace == null\n ? `export { $ontologyRid } from \"./OntologyMetadata${importExt}\";`\n : ``\n }\n `,\n ),\n );\n}\n\nfunction helper(x: Record<string, { shortApiName: string }>) {\n return Object.values(x).filter(x => !(x instanceof ForeignType)).map(a =>\n a.shortApiName\n ).join(\n \", \",\n );\n}\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,OAAOA,IAAI,MAAM,WAAW;AAC5B,SAASC,WAAW,QAAQ,mCAAmC;AAE/D,SAASC,QAAQ,QAAQ,0BAA0B;AAEnD,OAAO,eAAeC,uBAAuBA,CAC3C;EAAEC,EAAE;EAAEC,MAAM;EAAEC,SAAS;EAAEC,oBAAoB;EAAEC;AAA0B,CAAC,EAC3D;EACf,MAAMJ,EAAE,CAACK,SAAS,CAChBT,IAAI,CAACU,IAAI,CAACL,MAAM,EAAE,UAAU,CAAC,EAC7B,MAAMH,QAAQ,CACZ,WACES,MAAM,CAACH,QAAQ,CAACI,WAAW,CAAC,6BACDN,SAAS;AAC5C,uDAAuDA,SAAS;AAChE,kBACQK,MAAM,CAACH,QAAQ,CAACK,cAAc,CAAC,gCACDP,SAAS;AAC/C,6DAA6DA,SAAS;AACtE,kBACQK,MAAM,CAACH,QAAQ,CAACM,WAAW,CAAC,6BACDR,SAAS;AAC5C,uDAAuDA,SAAS;AAChE,kBACQK,MAAM,CAACH,QAAQ,CAACO,UAAU,CAAC,6BACAT,SAAS;AAC5C,uDAAuDA,SAAS;AAChE,2DAA2DA,SAAS;AACpE,UACQC,oBAAoB,IAAI,IAAI,GACxB,mDAAmDD,SAAS,IAAI,GAChE,EAAE;AACd,KAEI,CACF,CAAC;AACH;AAEA,SAASK,MAAMA,CAACK,CAA2C,EAAE;EAC3D,OAAOC,MAAM,CAACC,MAAM,CAACF,CAAC,CAAC,CAACG,MAAM,CAACH,CAAC,IAAI,EAAEA,CAAC,YAAYf,WAAW,CAAC,CAAC,CAACmB,GAAG,CAACC,CAAC,IACpEA,CAAC,CAACC,YACJ,CAAC,CAACZ,IAAI,CACJ,IACF,CAAC;AACH","ignoreList":[]}
@@ -13,6 +13,7 @@
13
13
  * See the License for the specific language governing permissions and
14
14
  * limitations under the License.
15
15
  */
16
+
16
17
  export function getDescriptionIfPresent(description, includeNewline) {
17
18
  if (description) {
18
19
  return `/**