@api-client/core 0.19.10 → 0.19.11

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 (429) hide show
  1. package/LICENSE.md +9 -63
  2. package/bin/test.ts +1 -12
  3. package/build/src/browser.d.ts +0 -15
  4. package/build/src/browser.d.ts.map +1 -1
  5. package/build/src/browser.js +0 -17
  6. package/build/src/browser.js.map +1 -1
  7. package/build/src/events/EventTypes.d.ts +0 -6
  8. package/build/src/events/EventTypes.d.ts.map +1 -1
  9. package/build/src/events/EventTypes.js +0 -2
  10. package/build/src/events/EventTypes.js.map +1 -1
  11. package/build/src/events/Events.d.ts +0 -2
  12. package/build/src/events/Events.d.ts.map +1 -1
  13. package/build/src/events/Events.js +0 -2
  14. package/build/src/events/Events.js.map +1 -1
  15. package/build/src/index.d.ts +0 -15
  16. package/build/src/index.d.ts.map +1 -1
  17. package/build/src/index.js +0 -17
  18. package/build/src/index.js.map +1 -1
  19. package/build/src/modeling/Bindings.d.ts +3 -3
  20. package/build/src/modeling/Bindings.d.ts.map +1 -1
  21. package/build/src/modeling/Bindings.js.map +1 -1
  22. package/build/src/modeling/DomainAssociation.d.ts +5 -5
  23. package/build/src/modeling/DomainAssociation.d.ts.map +1 -1
  24. package/build/src/modeling/DomainAssociation.js.map +1 -1
  25. package/build/src/modeling/DomainEntity.d.ts +2 -3
  26. package/build/src/modeling/DomainEntity.d.ts.map +1 -1
  27. package/build/src/modeling/DomainEntity.js +1 -1
  28. package/build/src/modeling/DomainEntity.js.map +1 -1
  29. package/build/src/modeling/DomainProperty.d.ts +2 -3
  30. package/build/src/modeling/DomainProperty.d.ts.map +1 -1
  31. package/build/src/modeling/DomainProperty.js +1 -1
  32. package/build/src/modeling/DomainProperty.js.map +1 -1
  33. package/build/src/modeling/ai/types.d.ts +2 -2
  34. package/build/src/modeling/ai/types.d.ts.map +1 -1
  35. package/build/src/modeling/ai/types.js.map +1 -1
  36. package/build/src/{amf → modeling/amf}/DataValueGenerator.d.ts +1 -1
  37. package/build/src/modeling/amf/DataValueGenerator.d.ts.map +1 -0
  38. package/build/src/{amf → modeling/amf}/DataValueGenerator.js +2 -3
  39. package/build/src/modeling/amf/DataValueGenerator.js.map +1 -0
  40. package/build/src/modeling/amf/ShapeGenerator.d.ts +20 -20
  41. package/build/src/modeling/amf/ShapeGenerator.d.ts.map +1 -1
  42. package/build/src/modeling/amf/ShapeGenerator.js +16 -18
  43. package/build/src/modeling/amf/ShapeGenerator.js.map +1 -1
  44. package/build/src/modeling/amf/core_types.d.ts +9 -0
  45. package/build/src/modeling/amf/core_types.d.ts.map +1 -0
  46. package/build/src/modeling/amf/core_types.js +45 -0
  47. package/build/src/modeling/amf/core_types.js.map +1 -0
  48. package/build/src/models/http-flows/LegacyTranslator.js +1 -1
  49. package/build/src/models/http-flows/LegacyTranslator.js.map +1 -1
  50. package/build/src/runtime/http-runner/HttpFlows.js +1 -1
  51. package/build/src/runtime/http-runner/HttpFlows.js.map +1 -1
  52. package/build/tsconfig.tsbuildinfo +1 -1
  53. package/eslint.config.js +0 -1
  54. package/package.json +11 -14
  55. package/src/events/EventTypes.ts +0 -2
  56. package/src/events/Events.ts +0 -2
  57. package/src/modeling/Bindings.ts +3 -3
  58. package/src/modeling/DomainAssociation.ts +5 -5
  59. package/src/modeling/DomainEntity.ts +3 -4
  60. package/src/modeling/DomainProperty.ts +3 -4
  61. package/src/modeling/ai/types.ts +2 -2
  62. package/src/{amf → modeling/amf}/DataValueGenerator.ts +3 -4
  63. package/src/modeling/amf/ShapeGenerator.ts +45 -61
  64. package/src/modeling/amf/core_types.ts +47 -0
  65. package/src/models/http-flows/LegacyTranslator.ts +1 -1
  66. package/src/runtime/http-runner/HttpFlows.ts +1 -1
  67. package/tests/unit/{amf → modeling/amf}/data_value_generator.spec.ts +2 -2
  68. package/tests/unit/modeling/amf/shape_generator.spec.ts +146 -167
  69. package/tests/unit/modeling/domain_asociation.spec.ts +13 -13
  70. package/tests/unit/runtime/runners/http_assertion_runner.spec.ts +1 -1
  71. package/tests/unit/runtime/runners/http_flow_runner.spec.ts +1 -1
  72. package/tests/unit/runtime/runners/project_runner.spec.ts +1 -1
  73. package/tests/unit/runtime/runners/request_runner.spec.ts +1 -1
  74. package/tests/unit/runtime/runners/serial_runner.spec.ts +1 -1
  75. package/build/src/amf/AmfMixin.d.ts +0 -396
  76. package/build/src/amf/AmfMixin.d.ts.map +0 -1
  77. package/build/src/amf/AmfMixin.js +0 -1138
  78. package/build/src/amf/AmfMixin.js.map +0 -1
  79. package/build/src/amf/AmfSerializer.d.ts +0 -137
  80. package/build/src/amf/AmfSerializer.d.ts.map +0 -1
  81. package/build/src/amf/AmfSerializer.js +0 -1947
  82. package/build/src/amf/AmfSerializer.js.map +0 -1
  83. package/build/src/amf/AmfTypes.d.ts +0 -25
  84. package/build/src/amf/AmfTypes.d.ts.map +0 -1
  85. package/build/src/amf/AmfTypes.js +0 -143
  86. package/build/src/amf/AmfTypes.js.map +0 -1
  87. package/build/src/amf/ApiExampleGenerator.d.ts +0 -40
  88. package/build/src/amf/ApiExampleGenerator.d.ts.map +0 -1
  89. package/build/src/amf/ApiExampleGenerator.js +0 -112
  90. package/build/src/amf/ApiExampleGenerator.js.map +0 -1
  91. package/build/src/amf/ApiMonacoSchemaGenerator.d.ts +0 -68
  92. package/build/src/amf/ApiMonacoSchemaGenerator.d.ts.map +0 -1
  93. package/build/src/amf/ApiMonacoSchemaGenerator.js +0 -248
  94. package/build/src/amf/ApiMonacoSchemaGenerator.js.map +0 -1
  95. package/build/src/amf/ApiSchemaGenerator.d.ts +0 -56
  96. package/build/src/amf/ApiSchemaGenerator.d.ts.map +0 -1
  97. package/build/src/amf/ApiSchemaGenerator.js +0 -94
  98. package/build/src/amf/ApiSchemaGenerator.js.map +0 -1
  99. package/build/src/amf/ApiSchemaValues.d.ts +0 -111
  100. package/build/src/amf/ApiSchemaValues.d.ts.map +0 -1
  101. package/build/src/amf/ApiSchemaValues.js +0 -463
  102. package/build/src/amf/ApiSchemaValues.js.map +0 -1
  103. package/build/src/amf/DataValueGenerator.d.ts.map +0 -1
  104. package/build/src/amf/DataValueGenerator.js.map +0 -1
  105. package/build/src/amf/Parsing.d.ts +0 -48
  106. package/build/src/amf/Parsing.d.ts.map +0 -1
  107. package/build/src/amf/Parsing.js +0 -2
  108. package/build/src/amf/Parsing.js.map +0 -1
  109. package/build/src/amf/Utils.d.ts +0 -37
  110. package/build/src/amf/Utils.d.ts.map +0 -1
  111. package/build/src/amf/Utils.js +0 -169
  112. package/build/src/amf/Utils.js.map +0 -1
  113. package/build/src/amf/data-node/DataNodeBase.d.ts +0 -34
  114. package/build/src/amf/data-node/DataNodeBase.d.ts.map +0 -1
  115. package/build/src/amf/data-node/DataNodeBase.js +0 -77
  116. package/build/src/amf/data-node/DataNodeBase.js.map +0 -1
  117. package/build/src/amf/data-node/JsonDataNodeGenerator.d.ts +0 -15
  118. package/build/src/amf/data-node/JsonDataNodeGenerator.d.ts.map +0 -1
  119. package/build/src/amf/data-node/JsonDataNodeGenerator.js +0 -23
  120. package/build/src/amf/data-node/JsonDataNodeGenerator.js.map +0 -1
  121. package/build/src/amf/data-node/UrlEncodedDataNodeGenerator.d.ts +0 -14
  122. package/build/src/amf/data-node/UrlEncodedDataNodeGenerator.d.ts.map +0 -1
  123. package/build/src/amf/data-node/UrlEncodedDataNodeGenerator.js +0 -48
  124. package/build/src/amf/data-node/UrlEncodedDataNodeGenerator.js.map +0 -1
  125. package/build/src/amf/data-node/XmlDataNodeGenerator.d.ts +0 -22
  126. package/build/src/amf/data-node/XmlDataNodeGenerator.d.ts.map +0 -1
  127. package/build/src/amf/data-node/XmlDataNodeGenerator.js +0 -34
  128. package/build/src/amf/data-node/XmlDataNodeGenerator.js.map +0 -1
  129. package/build/src/amf/definitions/Amf.d.ts +0 -363
  130. package/build/src/amf/definitions/Amf.d.ts.map +0 -1
  131. package/build/src/amf/definitions/Amf.js +0 -3
  132. package/build/src/amf/definitions/Amf.js.map +0 -1
  133. package/build/src/amf/definitions/Api.d.ts +0 -383
  134. package/build/src/amf/definitions/Api.d.ts.map +0 -1
  135. package/build/src/amf/definitions/Api.js +0 -2
  136. package/build/src/amf/definitions/Api.js.map +0 -1
  137. package/build/src/amf/definitions/Base.d.ts +0 -12
  138. package/build/src/amf/definitions/Base.d.ts.map +0 -1
  139. package/build/src/amf/definitions/Base.js +0 -2
  140. package/build/src/amf/definitions/Base.js.map +0 -1
  141. package/build/src/amf/definitions/Namespace.d.ts +0 -327
  142. package/build/src/amf/definitions/Namespace.d.ts.map +0 -1
  143. package/build/src/amf/definitions/Namespace.js +0 -346
  144. package/build/src/amf/definitions/Namespace.js.map +0 -1
  145. package/build/src/amf/definitions/Shapes.d.ts +0 -312
  146. package/build/src/amf/definitions/Shapes.d.ts.map +0 -1
  147. package/build/src/amf/definitions/Shapes.js +0 -87
  148. package/build/src/amf/definitions/Shapes.js.map +0 -1
  149. package/build/src/amf/models/AmfDataNode.d.ts +0 -67
  150. package/build/src/amf/models/AmfDataNode.d.ts.map +0 -1
  151. package/build/src/amf/models/AmfDataNode.js +0 -192
  152. package/build/src/amf/models/AmfDataNode.js.map +0 -1
  153. package/build/src/amf/shape/ShapeBase.d.ts +0 -74
  154. package/build/src/amf/shape/ShapeBase.d.ts.map +0 -1
  155. package/build/src/amf/shape/ShapeBase.js +0 -93
  156. package/build/src/amf/shape/ShapeBase.js.map +0 -1
  157. package/build/src/amf/shape/ShapeJsonSchemaGenerator.d.ts +0 -47
  158. package/build/src/amf/shape/ShapeJsonSchemaGenerator.d.ts.map +0 -1
  159. package/build/src/amf/shape/ShapeJsonSchemaGenerator.js +0 -420
  160. package/build/src/amf/shape/ShapeJsonSchemaGenerator.js.map +0 -1
  161. package/build/src/amf/shape/ShapeXmlSchemaGenerator.d.ts +0 -85
  162. package/build/src/amf/shape/ShapeXmlSchemaGenerator.d.ts.map +0 -1
  163. package/build/src/amf/shape/ShapeXmlSchemaGenerator.js +0 -852
  164. package/build/src/amf/shape/ShapeXmlSchemaGenerator.js.map +0 -1
  165. package/build/src/events/amf/AmfEventTypes.d.ts +0 -7
  166. package/build/src/events/amf/AmfEventTypes.d.ts.map +0 -1
  167. package/build/src/events/amf/AmfEventTypes.js +0 -7
  168. package/build/src/events/amf/AmfEventTypes.js.map +0 -1
  169. package/build/src/events/amf/AmfEvents.d.ts +0 -34
  170. package/build/src/events/amf/AmfEvents.d.ts.map +0 -1
  171. package/build/src/events/amf/AmfEvents.js +0 -63
  172. package/build/src/events/amf/AmfEvents.js.map +0 -1
  173. package/build/src/mocking/RandExp.d.ts +0 -55
  174. package/build/src/mocking/RandExp.d.ts.map +0 -1
  175. package/build/src/mocking/RandExp.js +0 -302
  176. package/build/src/mocking/RandExp.js.map +0 -1
  177. package/build/src/mocking/lib/ret.d.ts +0 -16
  178. package/build/src/mocking/lib/ret.d.ts.map +0 -1
  179. package/build/src/mocking/lib/ret.js +0 -284
  180. package/build/src/mocking/lib/ret.js.map +0 -1
  181. package/data/apis/APIC-187/APIC-187.raml +0 -21
  182. package/data/apis/APIC-187/dataType.raml +0 -132
  183. package/data/apis/APIC-187/example.raml +0 -84
  184. package/data/apis/APIC-188/APIC-188.raml +0 -21
  185. package/data/apis/APIC-188/dataType.raml +0 -132
  186. package/data/apis/APIC-188/example.raml +0 -84
  187. package/data/apis/APIC-233/APIC-233.raml +0 -15
  188. package/data/apis/APIC-391/APIC-391.raml +0 -44
  189. package/data/apis/APIC-391/examples/post-body-request-example.raml +0 -7
  190. package/data/apis/APIC-483/APIC-483.raml +0 -16
  191. package/data/apis/APIC-483/example/list-of-bank-succ.json +0 -32
  192. package/data/apis/APIC-483/schema/response-retrieve-list-bank.json +0 -68
  193. package/data/apis/APIC-487/APIC-487.raml +0 -36
  194. package/data/apis/APIC-655/APIC-655.raml +0 -44
  195. package/data/apis/APIC-655/delivery.json +0 -12
  196. package/data/apis/APIC-689/APIC-689.raml +0 -20
  197. package/data/apis/APIC-690/APIC-690.raml +0 -17
  198. package/data/apis/APIC-690/datatypes/Address.raml +0 -10
  199. package/data/apis/APIC-690/datatypes/Customer.raml +0 -17
  200. package/data/apis/APIC-690/examples/CustomerExample2.raml +0 -17
  201. package/data/apis/APIC-690/examples/CustomersExample.raml +0 -34
  202. package/data/apis/SE-10469/Purchase-Order-oagis-id-dd32f9c6c01048a19e15c423c9c741ae.json +0 -1383
  203. package/data/apis/SE-10469/SE-10469.raml +0 -11
  204. package/data/apis/SE-13092/Examples/PersonExample.raml +0 -7
  205. package/data/apis/SE-13092/SE-13092.raml +0 -37
  206. package/data/apis/SE-13092/datatypes/Address.raml +0 -5
  207. package/data/apis/SE-13092/datatypes/InlineType.raml +0 -5
  208. package/data/apis/SE-13092/datatypes/Person.raml +0 -15
  209. package/data/apis/SE-22063/SE-22063.raml +0 -14
  210. package/data/apis/SE-22063/stock.raml +0 -41
  211. package/data/apis/amf-helper-api/amf-helper-api.raml +0 -1024
  212. package/data/apis/amf-helper-api/examples/comment-example.json +0 -42
  213. package/data/apis/amf-helper-api/examples/commentCreateRequest-example.json +0 -7
  214. package/data/apis/amf-helper-api/examples/commentList-example.json +0 -48
  215. package/data/apis/amf-helper-api/examples/person.json +0 -14
  216. package/data/apis/amf-helper-api/examples/person.raml +0 -13
  217. package/data/apis/amf-helper-api/examples/person.xml +0 -14
  218. package/data/apis/amf-helper-api/libraries/comment-lib.raml +0 -143
  219. package/data/apis/amf-helper-api/library.raml +0 -7
  220. package/data/apis/amf-helper-api/schemas/person.json +0 -104
  221. package/data/apis/amf-helper-api/schemas/person.xsd +0 -26
  222. package/data/apis/amf-helper-api/traits/file.raml +0 -33
  223. package/data/apis/amf-helper-api/traits/pagination.raml +0 -80
  224. package/data/apis/amf-helper-api/traits/results.raml +0 -19
  225. package/data/apis/amf-helper-api/traits/visibility.raml +0 -14
  226. package/data/apis/amf-helper-api/types/app-person.raml +0 -101
  227. package/data/apis/amf-helper-api/types/dimensions.raml +0 -24
  228. package/data/apis/amf-helper-api/types/external-type.raml +0 -7
  229. package/data/apis/amf-helper-api/types/image.raml +0 -23
  230. package/data/apis/amf-helper-api/types/product.raml +0 -52
  231. package/data/apis/amf-helper-api/types/resource.raml +0 -11
  232. package/data/apis/amf-helper-api/types/standard-request.raml +0 -50
  233. package/data/apis/amf-helper-api/types/user.raml +0 -37
  234. package/data/apis/arc-demo-api/arc-demo-api.raml +0 -468
  235. package/data/apis/arc-demo-api/examples/e400.xml +0 -4
  236. package/data/apis/arc-demo-api/examples/e401.xml +0 -4
  237. package/data/apis/arc-demo-api/examples/e404.xml +0 -4
  238. package/data/apis/arc-demo-api/examples/image.xml +0 -5
  239. package/data/apis/arc-demo-api/examples/messages-example.json +0 -22
  240. package/data/apis/arc-demo-api/examples/messages-sent-example.json +0 -15
  241. package/data/apis/arc-demo-api/examples/person.json +0 -14
  242. package/data/apis/arc-demo-api/examples/person.url.encoded +0 -1
  243. package/data/apis/arc-demo-api/examples/person.xml +0 -14
  244. package/data/apis/arc-demo-api/examples/product.xml +0 -9
  245. package/data/apis/arc-demo-api/library.raml +0 -36
  246. package/data/apis/arc-demo-api/resourceTypes/app-person.raml +0 -49
  247. package/data/apis/arc-demo-api/resourceTypes/example-types.raml +0 -45
  248. package/data/apis/arc-demo-api/resourceTypes/image.raml +0 -23
  249. package/data/apis/arc-demo-api/resourceTypes/message-sent-type.raml +0 -23
  250. package/data/apis/arc-demo-api/resourceTypes/message-type.raml +0 -33
  251. package/data/apis/arc-demo-api/resourceTypes/product.raml +0 -52
  252. package/data/apis/arc-demo-api/resourceTypes/resource.raml +0 -11
  253. package/data/apis/arc-demo-api/schemas/error-response.xsd +0 -11
  254. package/data/apis/arc-demo-api/schemas/image.xsd +0 -11
  255. package/data/apis/arc-demo-api/schemas/person.json +0 -104
  256. package/data/apis/arc-demo-api/schemas/person.xsd +0 -26
  257. package/data/apis/arc-demo-api/schemas/product.xsd +0 -17
  258. package/data/apis/arc-demo-api/securitySchemes/basic.raml +0 -5
  259. package/data/apis/arc-demo-api/securitySchemes/oauth_2_0.raml +0 -29
  260. package/data/apis/arc-demo-api/securitySchemes/x-custom.raml +0 -26
  261. package/data/apis/arc-demo-api/traits/adminable.raml +0 -23
  262. package/data/apis/arc-demo-api/traits/pagination.raml +0 -83
  263. package/data/apis/arc-demo-api/traits/rate-limited.raml +0 -9
  264. package/data/apis/async-api/async-api.yaml +0 -96
  265. package/data/apis/example-generator-api/contact-email-example.raml +0 -6
  266. package/data/apis/example-generator-api/contact-example.raml +0 -5
  267. package/data/apis/example-generator-api/contact-fax-example.raml +0 -5
  268. package/data/apis/example-generator-api/contact-website-example.raml +0 -2
  269. package/data/apis/example-generator-api/example-1.raml +0 -6
  270. package/data/apis/example-generator-api/example-2.raml +0 -9
  271. package/data/apis/example-generator-api/example-3.raml +0 -4
  272. package/data/apis/example-generator-api/example-4.raml +0 -2
  273. package/data/apis/example-generator-api/example-5.raml +0 -4
  274. package/data/apis/example-generator-api/example-6.raml +0 -2
  275. package/data/apis/example-generator-api/example-7.raml +0 -5
  276. package/data/apis/example-generator-api/example-generator-api.raml +0 -423
  277. package/data/apis/example-generator-api/example.json +0 -14
  278. package/data/apis/example-generator-api/example.xml +0 -15
  279. package/data/apis/example-generator-api/example.xsd +0 -26
  280. package/data/apis/example-generator-api/examples/employee.raml +0 -7
  281. package/data/apis/example-generator-api/examples/employees.raml +0 -7
  282. package/data/apis/example-generator-api/linked-named-example.raml +0 -21
  283. package/data/apis/example-generator-api/named-example-with-link.raml +0 -5
  284. package/data/apis/example-generator-api/named-example.raml +0 -9
  285. package/data/apis/example-generator-api/user-json-example.raml +0 -17
  286. package/data/apis/example-generator-api/user-raml-example.raml +0 -37
  287. package/data/apis/example-generator-api/user.json +0 -8
  288. package/data/apis/example-generator-api/user.raml +0 -18
  289. package/data/apis/example-generator-api/users-json-example.raml +0 -17
  290. package/data/apis/example-generator-api/users-raml-example.raml +0 -32
  291. package/data/apis/example-generator-api/users.json +0 -8
  292. package/data/apis/expanded-api/expanded-api.raml +0 -8
  293. package/data/apis/flattened-api/flattened-api.raml +0 -8
  294. package/data/apis/multiple-servers/multiple-servers.yaml +0 -112
  295. package/data/apis/oas-3-api/oas-3-api.yaml +0 -356
  296. package/data/apis/oas-date/oas-date.yaml +0 -28
  297. package/data/apis/oas-types/oas-types.yaml +0 -159
  298. package/data/apis/oas-unions/oas-unions.yaml +0 -75
  299. package/data/apis/petstore/petstore.yaml +0 -954
  300. package/data/apis/raml-date/raml-date.raml +0 -28
  301. package/data/apis/recursive/recursive.raml +0 -14
  302. package/data/apis/schema-api/examples/person.json +0 -14
  303. package/data/apis/schema-api/examples/person.raml +0 -14
  304. package/data/apis/schema-api/examples/person.url.encoded +0 -1
  305. package/data/apis/schema-api/examples/person.xml +0 -14
  306. package/data/apis/schema-api/library/demo-types.raml +0 -43
  307. package/data/apis/schema-api/schema-api.raml +0 -656
  308. package/data/apis/schema-api/schemas/person.json +0 -104
  309. package/data/apis/schema-api/schemas/person.xsd +0 -26
  310. package/data/apis/schema-api/types/DemoPerson.raml +0 -67
  311. package/data/apis/secured-api/oauth-2-custom-settings.raml +0 -143
  312. package/data/apis/secured-api/oauth2-header-delivery.raml +0 -13
  313. package/data/apis/secured-api/oauth2-no-delivery.raml +0 -8
  314. package/data/apis/secured-api/oauth2-no-grants.raml +0 -12
  315. package/data/apis/secured-api/oauth2-pkce.raml +0 -13
  316. package/data/apis/secured-api/oauth2-query-delivery.raml +0 -13
  317. package/data/apis/secured-api/oauth_1_0.raml +0 -8
  318. package/data/apis/secured-api/oauth_1_0_no-settings.raml +0 -3
  319. package/data/apis/secured-api/oauth_1_0_no-signature.raml +0 -7
  320. package/data/apis/secured-api/oauth_1_0_signature.raml +0 -8
  321. package/data/apis/secured-api/passthrough-querystring.raml +0 -16
  322. package/data/apis/secured-api/passthrough.raml +0 -24
  323. package/data/apis/secured-api/secured-api.raml +0 -231
  324. package/data/apis/secured-api/x-custom.raml +0 -33
  325. package/data/apis/secured-api/x-other.raml +0 -29
  326. package/data/apis/secured-api/x-query-string.raml +0 -16
  327. package/data/apis/tracked-examples/datatypes/employee.raml +0 -5
  328. package/data/apis/tracked-examples/examples/employee.raml +0 -4
  329. package/data/apis/tracked-examples/examples/employees.raml +0 -8
  330. package/data/apis/tracked-examples/tracked-to-linked.raml +0 -28
  331. package/data/model.js +0 -129
  332. package/data/models/APIC-187.json +0 -11416
  333. package/data/models/APIC-188.json +0 -11416
  334. package/data/models/APIC-233.json +0 -539
  335. package/data/models/APIC-391.json +0 -1903
  336. package/data/models/APIC-483.json +0 -3110
  337. package/data/models/APIC-487.json +0 -1225
  338. package/data/models/APIC-655.json +0 -3145
  339. package/data/models/APIC-689.json +0 -797
  340. package/data/models/APIC-690.json +0 -5992
  341. package/data/models/SE-10469.json +0 -22898
  342. package/data/models/SE-13092.json +0 -2769
  343. package/data/models/SE-22063.json +0 -2314
  344. package/data/models/amf-helper-api.json +0 -84457
  345. package/data/models/arc-demo-api.json +0 -52041
  346. package/data/models/async-api.json +0 -3227
  347. package/data/models/example-generator-api.json +0 -45209
  348. package/data/models/expanded-api.json +0 -251
  349. package/data/models/flattened-api.json +0 -251
  350. package/data/models/multiple-servers.json +0 -2769
  351. package/data/models/oas-3-api.json +0 -10590
  352. package/data/models/oas-date.json +0 -637
  353. package/data/models/oas-types.json +0 -5352
  354. package/data/models/oas-unions.json +0 -1935
  355. package/data/models/petstore.json +0 -27712
  356. package/data/models/raml-date.json +0 -1114
  357. package/data/models/recursive.json +0 -610
  358. package/data/models/schema-api.json +0 -35527
  359. package/data/models/secured-api.json +0 -21071
  360. package/data/models/tracked-to-linked.json +0 -1914
  361. package/src/amf/AmfMixin.ts +0 -1726
  362. package/src/amf/AmfSerializer.ts +0 -2358
  363. package/src/amf/AmfTypes.ts +0 -147
  364. package/src/amf/ApiExampleGenerator.ts +0 -122
  365. package/src/amf/ApiMonacoSchemaGenerator.ts +0 -332
  366. package/src/amf/ApiSchemaGenerator.ts +0 -115
  367. package/src/amf/ApiSchemaValues.ts +0 -509
  368. package/src/amf/Parsing.ts +0 -50
  369. package/src/amf/Utils.ts +0 -172
  370. package/src/amf/data-node/DataNodeBase.ts +0 -83
  371. package/src/amf/data-node/JsonDataNodeGenerator.ts +0 -24
  372. package/src/amf/data-node/README.md +0 -3
  373. package/src/amf/data-node/UrlEncodedDataNodeGenerator.ts +0 -49
  374. package/src/amf/data-node/XmlDataNodeGenerator.ts +0 -46
  375. package/src/amf/definitions/Amf.ts +0 -440
  376. package/src/amf/definitions/Api.ts +0 -445
  377. package/src/amf/definitions/Base.ts +0 -13
  378. package/src/amf/definitions/Namespace.ts +0 -357
  379. package/src/amf/definitions/Shapes.ts +0 -438
  380. package/src/amf/models/AmfDataNode.ts +0 -210
  381. package/src/amf/shape/README.md +0 -4
  382. package/src/amf/shape/ShapeBase.ts +0 -174
  383. package/src/amf/shape/ShapeJsonSchemaGenerator.ts +0 -457
  384. package/src/amf/shape/ShapeXmlSchemaGenerator.ts +0 -933
  385. package/src/events/amf/AmfEventTypes.ts +0 -6
  386. package/src/events/amf/AmfEvents.ts +0 -78
  387. package/src/mocking/RandExp.ts +0 -335
  388. package/src/mocking/lib/ret.ts +0 -279
  389. package/tests/unit/amf/APIC-187.spec.ts +0 -41
  390. package/tests/unit/amf/APIC-188.spec.ts +0 -30
  391. package/tests/unit/amf/APIC-233.spec.ts +0 -32
  392. package/tests/unit/amf/APIC-391.spec.ts +0 -39
  393. package/tests/unit/amf/APIC-487.spec.ts +0 -44
  394. package/tests/unit/amf/APIC-655.spec.ts +0 -41
  395. package/tests/unit/amf/APIC-689.spec.ts +0 -28
  396. package/tests/unit/amf/APIC-690.spec.ts +0 -93
  397. package/tests/unit/amf/AmfLoader.ts +0 -538
  398. package/tests/unit/amf/AmfMixin.spec.ts +0 -1707
  399. package/tests/unit/amf/ApiExampleGenerator.spec.ts +0 -250
  400. package/tests/unit/amf/ApiMonacoSchemaGenerator.spec.ts +0 -183
  401. package/tests/unit/amf/ApiSchemaValues.spec.ts +0 -602
  402. package/tests/unit/amf/Namepsace.spec.ts +0 -494
  403. package/tests/unit/amf/SE-10469.spec.ts +0 -35
  404. package/tests/unit/amf/SE-13092.spec.ts +0 -64
  405. package/tests/unit/amf/SE-22063.spec.ts +0 -45
  406. package/tests/unit/amf/raml-examples.spec.ts +0 -43
  407. package/tests/unit/amf/schema_gen_array.spec.ts +0 -199
  408. package/tests/unit/amf/schema_gen_oas.spec.ts +0 -140
  409. package/tests/unit/amf/schema_gen_object.spec.ts +0 -279
  410. package/tests/unit/amf/schema_gen_scalar.spec.ts +0 -143
  411. package/tests/unit/amf/schema_gen_union.spec.ts +0 -401
  412. package/tests/unit/amf/schema_gen_unknown.spec.ts +0 -42
  413. package/tests/unit/amf/schema_gen_xml.spec.ts +0 -726
  414. package/tests/unit/amf/serializer/APIC-483.spec.ts +0 -36
  415. package/tests/unit/amf/serializer/Anotations.spec.ts +0 -50
  416. package/tests/unit/amf/serializer/Api.spec.ts +0 -210
  417. package/tests/unit/amf/serializer/Documentation.spec.ts +0 -52
  418. package/tests/unit/amf/serializer/Endpoints.spec.ts +0 -172
  419. package/tests/unit/amf/serializer/Operations.spec.ts +0 -330
  420. package/tests/unit/amf/serializer/Parameters.spec.ts +0 -149
  421. package/tests/unit/amf/serializer/PayloadExamples.spec.ts +0 -152
  422. package/tests/unit/amf/serializer/Security.spec.ts +0 -626
  423. package/tests/unit/amf/serializer/Server.spec.ts +0 -78
  424. package/tests/unit/amf/serializer/Shapes.spec.ts +0 -304
  425. package/tests/unit/amf/serializer/SourceMaps.spec.ts +0 -52
  426. package/tests/unit/amf/shapes/ShapeXmlSchemaGenerator.spec.ts +0 -28
  427. package/tests/unit/amf/tracked-to-linked.spec.ts +0 -90
  428. package/tests/unit/amf/xml-data-processing.spec.ts +0 -217
  429. package/tests/unit/events/amf.spec.ts +0 -151
package/eslint.config.js CHANGED
@@ -80,7 +80,6 @@ export default [
80
80
  'src/models/SerializablePayload.ts',
81
81
  'src/lib/calculators/DataCalculator.ts',
82
82
  'src/lib/Buffer.ts',
83
- 'src/events/amf/AmfEvents.ts',
84
83
  'src/authorization/lib/SecurityProcessor.ts',
85
84
  ],
86
85
  languageOptions: {
package/package.json CHANGED
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "name": "@api-client/core",
3
3
  "description": "The API Client's core client library. Works in NodeJS and in a ES enabled browser.",
4
- "version": "0.19.10",
5
- "license": "Apache-2.0",
4
+ "version": "0.19.11",
5
+ "license": "UNLICENSED",
6
6
  "exports": {
7
7
  "./browser.js": {
8
8
  "default": "./build/src/browser.js",
@@ -19,8 +19,6 @@
19
19
  },
20
20
  "./package.json": "./package.json",
21
21
  "./nanoid.js": "./build/src/nanoid.js",
22
- "./amf/*.js": "./build/src/amf/*.js",
23
- "./amf/*": "./build/src/amf/*",
24
22
  "./authorization/*.js": "./build/src/authorization/*.js",
25
23
  "./authorization/*": "./build/src/authorization/*",
26
24
  "./config/*.js": "./build/src/config/*.js",
@@ -53,7 +51,6 @@
53
51
  "./testing/*": "./build/src/testing/*"
54
52
  },
55
53
  "imports": {
56
- "#amf/*": "./src/amf/*",
57
54
  "#authorization/*": "./src/authorization/*",
58
55
  "#cookies/*": "./src/cookies/*",
59
56
  "#data/*": "./src/data/*",
@@ -84,6 +81,7 @@
84
81
  "url": "https://github.com/api-client/core/issues"
85
82
  },
86
83
  "dependencies": {
84
+ "@api-client/amf-core": "^0.1.2",
87
85
  "@api-client/graph": "^0.3.5",
88
86
  "@api-client/json": "^0.2.0",
89
87
  "@esm-bundle/chai": "^4.3.4-fix.0",
@@ -95,7 +93,6 @@
95
93
  "@pawel-up/data-mock": "^0.4.0",
96
94
  "@pawel-up/jexl": "^4.0.1",
97
95
  "@xmldom/xmldom": "^0.8.11",
98
- "amf-json-ld-lib": "^0.0.15",
99
96
  "chalk": "^5.4.1",
100
97
  "console-table-printer": "^2.11.2",
101
98
  "dompurify": "^3.2.6",
@@ -109,10 +106,7 @@
109
106
  "@commitlint/cli": "^20.1.0",
110
107
  "@commitlint/config-conventional": "^20.0.0",
111
108
  "@eslint/js": "^10.0.1",
112
- "@japa/api-client": "^3.0.3",
113
109
  "@japa/assert": "^4.0.1",
114
- "@japa/browser-client": "^2.1.1",
115
- "@japa/expect-type": "^2.0.3",
116
110
  "@japa/runner": "^5.3.0",
117
111
  "@pawel-up/semver": "^0.1.4",
118
112
  "@types/chai-as-promised": "^8.0.2",
@@ -128,7 +122,6 @@
128
122
  "@web/dev-server-rollup": "^0.6.4",
129
123
  "@web/test-runner": "^0.20.0",
130
124
  "@web/test-runner-playwright": "^0.11.0",
131
- "amf-client-js": "^5.10.0-0",
132
125
  "c8": "^11.0.0",
133
126
  "chai-as-promised": "^8.0.2",
134
127
  "conventional-changelog": "^7.1.0",
@@ -148,7 +141,6 @@
148
141
  "prettier": "^3.5.1",
149
142
  "schema-org-json-schemas": "^2.1.4",
150
143
  "sinon": "^21.0.0",
151
- "ts-lit-plugin": "^2.0.2",
152
144
  "ts-node-maintained": "^10.9.5",
153
145
  "typescript": "^5.5.2",
154
146
  "typescript-eslint": "^8.24.1"
@@ -158,7 +150,7 @@
158
150
  "build:ts": "tsc --project tsconfig.json",
159
151
  "build:node": "tsc --project tsconfig.node.json",
160
152
  "build": "npm run build:ts && npm run copy:assets",
161
- "prepare": "husky && npm run fixes && npm run build:ts && npm run build:api-models",
153
+ "prepare": "husky && npm run fixes && npm run build:ts",
162
154
  "fixes": "node scripts/fix-rollup-plugin.js",
163
155
  "tsc": "tsc",
164
156
  "tsc:tests": "tsc --project tsconfig.browser.json",
@@ -169,7 +161,6 @@
169
161
  "test:coverage": "npm run test:node:coverage && npm run test:browser",
170
162
  "test:node": "node --import ts-node-maintained/register/esm --enable-source-maps bin/test.ts",
171
163
  "test:node:coverage": "c8 --reporter lcov --reporter text node --import ts-node-maintained/register/esm --enable-source-maps bin/test.ts",
172
- "build:api-models": "node data/model.js",
173
164
  "copy:assets": "cp -f ./oauth-popup.html ./build/oauth-popup.html",
174
165
  "start": "echo \"Use the npm run dev instead\"",
175
166
  "lint": "npm run lint:prettier && npm run lint:eslint",
@@ -184,8 +175,14 @@
184
175
  "release:major": "node scripts/release.js major"
185
176
  },
186
177
  "lint-staged": {
178
+ "*.js": [
179
+ "eslint --fix"
180
+ ],
187
181
  "*.ts": [
188
- "npm run format"
182
+ "eslint --fix"
183
+ ],
184
+ "*.json": [
185
+ "prettier --write"
189
186
  ]
190
187
  },
191
188
  "engines": {
@@ -6,10 +6,8 @@ import { ReportingEventTypes } from './reporting/ReportingEventTypes.js'
6
6
  import { TelemetryEventTypes } from './telemetry/TelemetryEventTypes.js'
7
7
  import { EnvironmentEventTypes } from './environment/EnvironmentEventTypes.js'
8
8
  import { TransportEventTypes } from './transport/TransportEventTypes.js'
9
- import { AmfEventTypes } from './amf/AmfEventTypes.js'
10
9
 
11
10
  export const EventTypes = Object.freeze({
12
- Amf: AmfEventTypes,
13
11
  Authorization: AuthorizationEventTypes,
14
12
  Cookie: CookieEventTypes,
15
13
  Encryption: EncryptionEventTypes,
@@ -6,10 +6,8 @@ import { ReportingEvents } from './reporting/ReportingEvents.js'
6
6
  import { TelemetryEvents } from './telemetry/TelemetryEvents.js'
7
7
  import { TransportEvent } from './transport/TransportEvents.js'
8
8
  import { EnvironmentEvents } from './environment/EnvironmentEvents.js'
9
- import { AmfEvents } from './amf/AmfEvents.js'
10
9
 
11
10
  export const Events = Object.freeze({
12
- Amf: AmfEvents,
13
11
  Authorization: AuthorizationEvents,
14
12
  Cookie: CookieEvents,
15
13
  Encryption: EncryptionEvents,
@@ -1,5 +1,5 @@
1
- import { IApiXmlSerializer } from '../amf/definitions/Shapes.js'
2
- import { DomainPropertyFormat } from './DataFormat.js'
1
+ import type { Shapes } from '@api-client/amf-core'
2
+ import type { DomainPropertyFormat } from './DataFormat.js'
3
3
 
4
4
  interface Binding {
5
5
  /**
@@ -69,7 +69,7 @@ export interface PropertyWebBindings {
69
69
  /**
70
70
  * The XML encoding instructions.
71
71
  */
72
- xml?: IApiXmlSerializer
72
+ xml?: Shapes.IApiXmlSerializer
73
73
  /**
74
74
  * Only valid for the `file` property type.
75
75
  * The list of file mime types.
@@ -5,7 +5,7 @@ import { nanoid } from '../nanoid.js'
5
5
  import { type IThing, Thing } from '../models/Thing.js'
6
6
  import { observed, retargetChange, toRaw } from '../decorators/observed.js'
7
7
  import type { DomainEntity } from './DomainEntity.js'
8
- import type { IApiAssociationShape, IApiPropertyShape } from '../amf/definitions/Shapes.js'
8
+ import type { Shapes } from '@api-client/amf-core'
9
9
  import type { AssociationBinding, AssociationBindings, AssociationWebBindings } from './Bindings.js'
10
10
  import { DomainAttributeAttribute, DomainAttributeAttributes } from './DataFormat.js'
11
11
  import type { AssociationTarget, DomainGraphEdge } from './types.js'
@@ -53,7 +53,7 @@ export interface DomainAssociationSchema extends DomainElementSchema {
53
53
  * referenced entities schemas. Note, changes in the referenced entities may not be propagated
54
54
  * to schemas altered by the user.
55
55
  */
56
- schema?: IApiAssociationShape
56
+ schema?: Shapes.IApiAssociationShape
57
57
  /**
58
58
  * The list of bindings for this property.
59
59
  *
@@ -153,7 +153,7 @@ export class DomainAssociation extends DomainElement {
153
153
  * The schema allowing to translate the model into a
154
154
  * specific format (like JSON, RAML, XML, etc.)
155
155
  */
156
- @observed({ deep: true }) accessor schema: IApiAssociationShape | undefined
156
+ @observed({ deep: true }) accessor schema: Shapes.IApiAssociationShape | undefined
157
157
 
158
158
  /**
159
159
  * The list of bindings for this property.
@@ -351,7 +351,7 @@ export class DomainAssociation extends DomainElement {
351
351
  * const schema = association.ensureSchema();
352
352
  * ```
353
353
  */
354
- ensureSchema(): IApiAssociationShape {
354
+ ensureSchema(): Shapes.IApiAssociationShape {
355
355
  if (!this.schema) {
356
356
  this.schema = {}
357
357
  }
@@ -547,7 +547,7 @@ export class DomainAssociation extends DomainElement {
547
547
  *
548
548
  * @returns AMF property shape definition.
549
549
  */
550
- toApiShape(): IApiPropertyShape {
550
+ toApiShape(): Shapes.IApiPropertyShape {
551
551
  const serializer = new ShapeGenerator()
552
552
  return serializer.associationProperty(this)
553
553
  }
@@ -4,7 +4,8 @@ import { DomainElement, type DomainElementSchema } from './DomainElement.js'
4
4
  import { nanoid } from '../nanoid.js'
5
5
  import { type IThing, Thing } from '../models/Thing.js'
6
6
  import { observed, retargetChange, toRaw } from '../decorators/observed.js'
7
- import type { IShapeUnion } from '../amf/definitions/Shapes.js'
7
+ import type { Shapes, IShapeRenderOptions } from '@api-client/amf-core'
8
+ import { ApiSchemaGenerator } from '@api-client/amf-core'
8
9
  import { DomainProperty, type DomainPropertySchema } from './DomainProperty.js'
9
10
  import { RemovePropertyException } from '../exceptions/remove_property_exception.js'
10
11
  import { DomainAssociation, DomainAssociationSchema } from './DomainAssociation.js'
@@ -13,8 +14,6 @@ import type { DomainModel } from './DomainModel.js'
13
14
  import type { DomainNamespace } from './DomainNamespace.js'
14
15
  import { ValidationError } from '../exceptions/validation_error.js'
15
16
  import { ShapeGenerator } from './amf/ShapeGenerator.js'
16
- import type { IShapeRenderOptions } from '../amf/shape/ShapeBase.js'
17
- import { ApiSchemaGenerator } from '../amf/ApiSchemaGenerator.js'
18
17
  import { removeGraphNode } from './GraphUtils.js'
19
18
  import { DataSemantics, isEntitySemantic, type SemanticType, type AppliedDataSemantic } from './Semantics.js'
20
19
 
@@ -806,7 +805,7 @@ export class DomainEntity extends DomainElement {
806
805
  *
807
806
  * @returns AMF property shape definition.
808
807
  */
809
- toApiShape(): IShapeUnion {
808
+ toApiShape(): Shapes.IShapeUnion {
810
809
  const serializer = new ShapeGenerator()
811
810
  return serializer.entity(this)
812
811
  }
@@ -20,11 +20,10 @@ import { ShapeGenerator } from './amf/ShapeGenerator.js'
20
20
  import type { PropertyBinding, PropertyBindings, PropertyWebBindings } from './Bindings.js'
21
21
  import type { ModelValidationOptions } from '../models/types.js'
22
22
  import type { DomainEntity } from './DomainEntity.js'
23
- import type { IApiPropertyShape } from '../amf/definitions/Shapes.js'
23
+ import type { Shapes, IShapeRenderOptions } from '@api-client/amf-core'
24
+ import { ApiSchemaGenerator } from '@api-client/amf-core'
24
25
  import type { PropertySchema } from './types.js'
25
26
  import { DataSemantics, isPropertySemantic, type SemanticType, type AppliedDataSemantic } from './Semantics.js'
26
- import { ApiSchemaGenerator } from '../amf/ApiSchemaGenerator.js'
27
- import type { IShapeRenderOptions } from '../amf/shape/ShapeBase.js'
28
27
 
29
28
  export interface DomainPropertySchema extends DomainElementSchema {
30
29
  kind: typeof DomainPropertyKind
@@ -576,7 +575,7 @@ export class DomainProperty extends DomainElement {
576
575
  *
577
576
  * @returns AMF property shape definition.
578
577
  */
579
- toApiShape(): IApiPropertyShape {
578
+ toApiShape(): Shapes.IApiPropertyShape {
580
579
  const serializer = new ShapeGenerator()
581
580
  return serializer.property(this)
582
581
  }
@@ -1,4 +1,4 @@
1
- import type { IApiAssociationShape } from '../../amf/definitions/Shapes.js'
1
+ import type { Shapes } from '@api-client/amf-core'
2
2
  import type { Exception } from '../../exceptions/exception.js'
3
3
  import type { AiSessionSchema } from '../../models/AiSession.js'
4
4
  import type { DomainPropertyType } from '../DataFormat.js'
@@ -150,7 +150,7 @@ export interface AiDomainAssociation {
150
150
  multiple?: boolean
151
151
  onDelete?: OnDeleteRule
152
152
  semantics?: AiDomainSemantic[]
153
- schema?: IApiAssociationShape
153
+ schema?: Shapes.IApiAssociationShape
154
154
  }
155
155
 
156
156
  /**
@@ -1,6 +1,5 @@
1
- import { nanoid } from '../nanoid.js'
2
- import uuidV4 from '../lib/uuid.js'
3
- import { DomainPropertyType } from '../modeling/DataFormat.js'
1
+ import { nanoid } from '../../nanoid.js'
2
+ import { DomainPropertyType } from '../DataFormat.js'
4
3
 
5
4
  export const noValue = Symbol('noValue')
6
5
 
@@ -56,7 +55,7 @@ export class DataValueGenerator {
56
55
  // TODO: we need more settings controlling the random string generation.
57
56
  return nanoid(8)
58
57
  case 'uuid-v4':
59
- return uuidV4()
58
+ return crypto.randomUUID()
60
59
  default:
61
60
  return noValue
62
61
  }
@@ -2,31 +2,9 @@ import { type AssociationBindings, type PropertyWebBindings } from '../Bindings.
2
2
  import type { DomainAssociation } from '../DomainAssociation.js'
3
3
  import type { DomainProperty } from '../DomainProperty.js'
4
4
  import type { DomainEntity } from '../DomainEntity.js'
5
- import { IAmfExampleTypes, modelTypeToAmfDataType } from '../../amf/AmfTypes.js'
6
- import { AmfNamespace } from '../../amf/definitions/Namespace.js'
7
- import {
8
- anyShape,
9
- arrayShape,
10
- fileShape,
11
- IApiAnyShape,
12
- IApiArrayShape,
13
- IApiDataExample,
14
- IApiFileShape,
15
- IApiNodeShape,
16
- IApiPropertyShape,
17
- IApiRecursiveShape,
18
- IApiScalarShape,
19
- IApiShape,
20
- IApiUnionShape,
21
- IShapeUnion,
22
- nodeShape,
23
- propertyShape,
24
- recursiveShape,
25
- scalarShape,
26
- unionShape,
27
- } from '../../amf/definitions/Shapes.js'
28
- import { AmfDataNode } from '../../amf/models/AmfDataNode.js'
29
- import { DataValueGenerator } from '../../amf/DataValueGenerator.js'
5
+ import { modelTypeToAmfDataType } from './core_types.js'
6
+ import { AmfNamespace, type Shapes, AmfDataNode, AmfTypes, ShapeHelpers } from '@api-client/amf-core'
7
+ import { DataValueGenerator } from './DataValueGenerator.js'
30
8
  import { nanoid } from '../../nanoid.js'
31
9
  import { DomainEntityKind, DomainPropertyKind } from '../../models/kinds.js'
32
10
  import type { PropertySchema } from '../types.js'
@@ -107,13 +85,13 @@ export class ShapeGenerator {
107
85
  * const amfShape = generator.entity(myDomainEntity);
108
86
  * ```
109
87
  */
110
- entity(input: DomainEntity, visited = new Set<string>()): IApiNodeShape | IApiRecursiveShape {
88
+ entity(input: DomainEntity, visited = new Set<string>()): Shapes.IApiNodeShape | Shapes.IApiRecursiveShape {
111
89
  if (visited.has(input.key)) {
112
90
  // create a recursive shape.
113
91
  return this.createRecursiveShape(input)
114
92
  }
115
93
  visited.add(input.key)
116
- const result = nodeShape(input.key)
94
+ const result = ShapeHelpers.nodeShape(input.key)
117
95
  result.id = input.key
118
96
  this.updateBaseProperties(input, result)
119
97
  result.properties = []
@@ -158,9 +136,9 @@ export class ShapeGenerator {
158
136
  * const amfShape = generator.property(myDomainProperty);
159
137
  * ```
160
138
  */
161
- property(input: DomainProperty): IApiPropertyShape {
139
+ property(input: DomainProperty): Shapes.IApiPropertyShape {
162
140
  const { required, key } = input
163
- const result = propertyShape(key)
141
+ const result = ShapeHelpers.propertyShape(key)
164
142
  result.path = `${AmfNamespace.aml.vocabularies.data.key}${input.info.name}`
165
143
  if (required) {
166
144
  result.minCount = 1
@@ -198,9 +176,9 @@ export class ShapeGenerator {
198
176
  * const amfShape = generator.associationProperty(myDomainAssociation);
199
177
  * ```
200
178
  */
201
- associationProperty(input: DomainAssociation, visited: Set<string> = new Set<string>()): IApiPropertyShape {
179
+ associationProperty(input: DomainAssociation, visited: Set<string> = new Set<string>()): Shapes.IApiPropertyShape {
202
180
  const { required, key } = input
203
- const result = propertyShape(key)
181
+ const result = ShapeHelpers.propertyShape(key)
204
182
  result.path = `${AmfNamespace.aml.vocabularies.data.key}${input.info.name}`
205
183
  if (required) {
206
184
  result.minCount = 1
@@ -219,7 +197,7 @@ export class ShapeGenerator {
219
197
  * recursive shape generation and avoids infinite loops. Defaults to a new empty `Set`.
220
198
  * @returns The range value for the PropertyShape.
221
199
  */
222
- associationShape(input: DomainAssociation, visited: Set<string> = new Set<string>()): IShapeUnion | undefined {
200
+ associationShape(input: DomainAssociation, visited: Set<string> = new Set<string>()): Shapes.IShapeUnion | undefined {
223
201
  const schema = input.schema
224
202
  if (schema && schema.linked) {
225
203
  return this.createLinkedShape(input)
@@ -235,7 +213,7 @@ export class ShapeGenerator {
235
213
  if (unionType === UNION_TYPE_NOT) {
236
214
  // Need to investigate more about "not" union type.
237
215
  // AMF supports it, but I am not sure how to handle it.
238
- const wrapper = anyShape(input.key)
216
+ const wrapper = ShapeHelpers.anyShape(input.key)
239
217
  wrapper.id = `not-shape-${input.key}`
240
218
  wrapper.not = items
241
219
  return wrapper
@@ -250,17 +228,20 @@ export class ShapeGenerator {
250
228
  * @param input The data association instance.
251
229
  * @returns An AMF API scalar shape with the link to the schema.
252
230
  */
253
- protected createLinkedShape(input: DomainAssociation): IApiScalarShape {
231
+ protected createLinkedShape(input: DomainAssociation): Shapes.IApiScalarShape {
254
232
  // This is a link to the schema. In an API that would be the id
255
233
  // of a resource to request the data from.
256
- const range = scalarShape(input.key)
234
+ const range = ShapeHelpers.scalarShape(input.key)
257
235
  range.id = `link-${input.key}`
258
236
  range.dataType = modelTypeToAmfDataType(DATA_TYPE_STRING)
259
237
  return range
260
238
  }
261
239
 
262
- protected createUnionShape(input: DomainAssociation, items: IShapeUnion[]): IApiUnionShape | IApiArrayShape {
263
- const range = unionShape(input.key)
240
+ protected createUnionShape(
241
+ input: DomainAssociation,
242
+ items: Shapes.IShapeUnion[]
243
+ ): Shapes.IApiUnionShape | Shapes.IApiArrayShape {
244
+ const range = ShapeHelpers.unionShape(input.key)
264
245
  this.updateBaseProperties(input, range)
265
246
  range.anyOf = []
266
247
  const unionType = (input.schema && input.schema.unionType) || UNION_TYPE_ANY_OF
@@ -291,8 +272,8 @@ export class ShapeGenerator {
291
272
  associationUnion(
292
273
  input: DomainAssociation,
293
274
  visited: Set<string> = new Set<string>()
294
- ): IShapeUnion | IShapeUnion[] | undefined {
295
- const result: IShapeUnion[] = []
275
+ ): Shapes.IShapeUnion | Shapes.IShapeUnion[] | undefined {
276
+ const result: Shapes.IShapeUnion[] = []
296
277
  for (const item of input.listTargets()) {
297
278
  result.push(this.entity(item, visited))
298
279
  }
@@ -312,7 +293,7 @@ export class ShapeGenerator {
312
293
  *
313
294
  * @param input
314
295
  */
315
- protected getRange(input: DomainProperty): IApiArrayShape | IApiFileShape | IApiScalarShape {
296
+ protected getRange(input: DomainProperty): Shapes.IApiArrayShape | Shapes.IApiFileShape | Shapes.IApiScalarShape {
316
297
  const bindings = input.readBinding('web') as PropertyWebBindings | undefined
317
298
  let schema: PropertySchema | undefined
318
299
  if (input.schema) {
@@ -339,7 +320,7 @@ export class ShapeGenerator {
339
320
  */
340
321
  protected setShapeSchema(
341
322
  input: DomainProperty,
342
- result: IApiAnyShape,
323
+ result: Shapes.IApiAnyShape,
343
324
  schema: PropertySchema,
344
325
  type: string,
345
326
  isArray?: boolean
@@ -374,8 +355,8 @@ export class ShapeGenerator {
374
355
  input: DomainProperty,
375
356
  schema?: PropertySchema,
376
357
  bindings?: PropertyWebBindings
377
- ): IApiArrayShape {
378
- const result = arrayShape(input.key)
358
+ ): Shapes.IApiArrayShape {
359
+ const result = ShapeHelpers.arrayShape(input.key)
379
360
  const { type } = input
380
361
  if (type === DATA_TYPE_BINARY) {
381
362
  // we do not pass schema to the range generator as we set schema's properties on the array shape.
@@ -384,7 +365,7 @@ export class ShapeGenerator {
384
365
  result.items = this.createScalarShape(input, undefined, bindings)
385
366
  }
386
367
  if (schema) {
387
- const type = (result.items as IApiScalarShape).dataType as string
368
+ const type = (result.items as Shapes.IApiScalarShape).dataType as string
388
369
  this.setShapeSchema(input, result, schema, type, input.multiple)
389
370
  }
390
371
  return result
@@ -394,8 +375,8 @@ export class ShapeGenerator {
394
375
  input: DomainProperty,
395
376
  schema?: PropertySchema,
396
377
  bindings?: PropertyWebBindings
397
- ): IApiScalarShape {
398
- const result = scalarShape(input.key)
378
+ ): Shapes.IApiScalarShape {
379
+ const result = ShapeHelpers.scalarShape(input.key)
399
380
  this.updateBaseProperties(input, result)
400
381
  this.setScalarCommonProperties(result, input, bindings)
401
382
  if (!result.dataType) {
@@ -407,14 +388,14 @@ export class ShapeGenerator {
407
388
  return result
408
389
  }
409
390
 
410
- protected createExamples(examples: string[], type: string): IApiDataExample[] {
411
- const result: IApiDataExample[] = []
391
+ protected createExamples(examples: string[], type: string): Shapes.IApiDataExample[] {
392
+ const result: Shapes.IApiDataExample[] = []
412
393
  for (const current of examples) {
413
- const item: IApiDataExample = {
394
+ const item: Shapes.IApiDataExample = {
414
395
  id: nanoid(),
415
396
  customDomainProperties: [],
416
397
  strict: true,
417
- types: IAmfExampleTypes,
398
+ types: [...AmfTypes.IAmfExampleTypes],
418
399
  structuredValue: AmfDataNode.scalar(current, type).toJSON(),
419
400
  }
420
401
  result.push(item)
@@ -422,12 +403,12 @@ export class ShapeGenerator {
422
403
  return result
423
404
  }
424
405
 
425
- protected createArrayExamples(examples: string[], type: string): IApiDataExample[] {
426
- const item: IApiDataExample = {
406
+ protected createArrayExamples(examples: string[], type: string): Shapes.IApiDataExample[] {
407
+ const item: Shapes.IApiDataExample = {
427
408
  id: nanoid(),
428
409
  customDomainProperties: [],
429
410
  strict: true,
430
- types: IAmfExampleTypes,
411
+ types: [...AmfTypes.IAmfExampleTypes],
431
412
  }
432
413
  const value = new AmfDataNode('array')
433
414
  for (const item of examples) {
@@ -438,8 +419,8 @@ export class ShapeGenerator {
438
419
  return [item]
439
420
  }
440
421
 
441
- protected createFileShape(input: DomainProperty, bindings?: PropertyWebBindings): IApiFileShape {
442
- const result = fileShape(input.key)
422
+ protected createFileShape(input: DomainProperty, bindings?: PropertyWebBindings): Shapes.IApiFileShape {
423
+ const result = ShapeHelpers.fileShape(input.key)
443
424
  this.updateBaseProperties(input, result)
444
425
  if (bindings) {
445
426
  if (Array.isArray(bindings.fileTypes)) {
@@ -454,7 +435,7 @@ export class ShapeGenerator {
454
435
  }
455
436
 
456
437
  protected setScalarCommonProperties(
457
- result: IApiFileShape | IApiScalarShape,
438
+ result: Shapes.IApiFileShape | Shapes.IApiScalarShape,
458
439
  input: DomainProperty,
459
440
  bindings?: PropertyWebBindings
460
441
  ): void {
@@ -521,7 +502,10 @@ export class ShapeGenerator {
521
502
  }
522
503
  }
523
504
 
524
- protected updateBaseProperties(input: DomainProperty | DomainAssociation | DomainEntity, target: IApiShape): void {
505
+ protected updateBaseProperties(
506
+ input: DomainProperty | DomainAssociation | DomainEntity,
507
+ target: Shapes.IApiShape
508
+ ): void {
525
509
  target.name = input.info.name
526
510
  target.displayName = input.info.displayName
527
511
  target.description = input.info.description
@@ -532,8 +516,8 @@ export class ShapeGenerator {
532
516
  }
533
517
  }
534
518
 
535
- protected createRecursiveShape(input: DomainEntity): IApiRecursiveShape {
536
- return recursiveShape(input.key, input.key)
519
+ protected createRecursiveShape(input: DomainEntity): Shapes.IApiRecursiveShape {
520
+ return ShapeHelpers.recursiveShape(input.key, input.key)
537
521
  }
538
522
 
539
523
  /**
@@ -544,8 +528,8 @@ export class ShapeGenerator {
544
528
  * @param shape The shape to wrap as an array.
545
529
  * @returns Array shape.
546
530
  */
547
- protected refactorShapeToArray(id: string, shape: IShapeUnion): IApiArrayShape {
548
- const result = arrayShape(id)
531
+ protected refactorShapeToArray(id: string, shape: Shapes.IShapeUnion): Shapes.IApiArrayShape {
532
+ const result = ShapeHelpers.arrayShape(id)
549
533
  result.items = shape
550
534
  return result
551
535
  }
@@ -0,0 +1,47 @@
1
+ import { PropertyWebBindings } from '../Bindings.js'
2
+ import { DomainPropertyType } from '../DataFormat.js'
3
+ import { AmfNamespace } from '@api-client/amf-core'
4
+
5
+ /**
6
+ * Translates the DomainProperty type to an AMF data type.
7
+ * @param type The property data type
8
+ * @returns AMF shape dataType
9
+ */
10
+ export function modelTypeToAmfDataType(type: DomainPropertyType, bindings?: PropertyWebBindings): string {
11
+ if (type === 'number') {
12
+ if (bindings?.format === 'int32' || bindings?.format === 'int64') {
13
+ return AmfNamespace.w3.xmlSchema.integer
14
+ }
15
+ return AmfNamespace.w3.xmlSchema.number
16
+ }
17
+ if (type === 'boolean') {
18
+ return AmfNamespace.aml.vocabularies.shapes.boolean
19
+ }
20
+ if (type === 'date') {
21
+ return AmfNamespace.w3.xmlSchema.date
22
+ }
23
+ if (type === 'datetime') {
24
+ return AmfNamespace.w3.xmlSchema.dateTime
25
+ }
26
+ if (type === 'time') {
27
+ return AmfNamespace.aml.vocabularies.shapes.dateTimeOnly
28
+ }
29
+ if (type === 'binary' && bindings && bindings.format === 'base64') {
30
+ return AmfNamespace.w3.xmlSchema.base64Binary
31
+ }
32
+ return AmfNamespace.w3.xmlSchema.string
33
+ // switch (type) {
34
+ // // case 'nil':
35
+ // // return AmfNamespace.aml.vocabularies.shapes.nil
36
+ // // case 'any':
37
+ // // return AmfNamespace.aml.vocabularies.shapes.AnyShape
38
+ // default:
39
+ // if (type === 'binary' && bindings && bindings.format === 'base64') {
40
+ // return AmfNamespace.w3.xmlSchema.base64Binary
41
+ // }
42
+ // // if (bindings && bindings.format === 'binary') {
43
+ // // return AmfNamespace.w3.xmlSchema.base64Binary
44
+ // // }
45
+ // return AmfNamespace.w3.xmlSchema.string
46
+ // }
47
+ }
@@ -10,7 +10,7 @@ import {
10
10
  DataSourceConfiguration,
11
11
  } from '../../models/legacy/actions/Actions.js'
12
12
  import { IHttpFlow, IHttpAction, FlowSourceEnum, FlowRequestDataEnum, FlowResponseDataEnum } from './HttpFlows.js'
13
- import { AmfNamespace } from '../../amf/definitions/Namespace.js'
13
+ import { AmfNamespace } from '@api-client/amf-core'
14
14
  import { IHttpStep } from './HttpStep.js'
15
15
  import { IReadDataStep, ReadDataStep, ReadDataStepKind } from './steps/data/ReadDataStep.js'
16
16
  import { ISetDataStep, SetDataStepKind } from './steps/data/SetDataStep.js'
@@ -27,7 +27,7 @@ import { ISubstringStep, SubstringStepKind } from '../../models/http-flows/steps
27
27
  import { TrimStepKind } from '../../models/http-flows/steps/transformation/TrimStep.js'
28
28
  import { EqualAssertionKind, IEqualAssertion } from '../../models/http-flows/steps/assertion/EqualAssertion.js'
29
29
  import { INotEqualAssertion, NotEqualAssertionKind } from '../../models/http-flows/steps/assertion/NotEqualAssertion.js'
30
- import { ApiSchemaValues } from '../../amf/ApiSchemaValues.js'
30
+ import { ApiSchemaValues } from '@api-client/amf-core'
31
31
  import {
32
32
  GreaterThanAssertionKind,
33
33
  IGreaterThanAssertion,
@@ -1,6 +1,6 @@
1
1
  import { test } from '@japa/runner'
2
- import { DataValueGenerator, noValue } from '../../../src/amf/DataValueGenerator.js'
3
- import type { DomainPropertyType } from '../../../src/modeling/DataFormat.js'
2
+ import { DataValueGenerator, noValue } from '../../../../src/modeling/amf/DataValueGenerator.js'
3
+ import type { DomainPropertyType } from '../../../../src/modeling/DataFormat.js'
4
4
 
5
5
  test.group('DataValueGenerator', (group) => {
6
6
  let generator: DataValueGenerator