@api-client/core 0.19.9 → 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 (523) hide show
  1. package/LICENSE.md +9 -63
  2. package/Testing.md +1 -1
  3. package/bin/test.ts +1 -12
  4. package/build/src/browser.d.ts +0 -15
  5. package/build/src/browser.d.ts.map +1 -1
  6. package/build/src/browser.js +0 -17
  7. package/build/src/browser.js.map +1 -1
  8. package/build/src/decorators/observed.d.ts.map +1 -1
  9. package/build/src/decorators/observed.js +91 -0
  10. package/build/src/decorators/observed.js.map +1 -1
  11. package/build/src/events/EventTypes.d.ts +0 -6
  12. package/build/src/events/EventTypes.d.ts.map +1 -1
  13. package/build/src/events/EventTypes.js +0 -2
  14. package/build/src/events/EventTypes.js.map +1 -1
  15. package/build/src/events/Events.d.ts +0 -2
  16. package/build/src/events/Events.d.ts.map +1 -1
  17. package/build/src/events/Events.js +0 -2
  18. package/build/src/events/Events.js.map +1 -1
  19. package/build/src/index.d.ts +0 -15
  20. package/build/src/index.d.ts.map +1 -1
  21. package/build/src/index.js +0 -17
  22. package/build/src/index.js.map +1 -1
  23. package/build/src/modeling/ApiModel.d.ts +21 -7
  24. package/build/src/modeling/ApiModel.d.ts.map +1 -1
  25. package/build/src/modeling/ApiModel.js +70 -29
  26. package/build/src/modeling/ApiModel.js.map +1 -1
  27. package/build/src/modeling/Bindings.d.ts +3 -3
  28. package/build/src/modeling/Bindings.d.ts.map +1 -1
  29. package/build/src/modeling/Bindings.js.map +1 -1
  30. package/build/src/modeling/DomainAssociation.d.ts +5 -5
  31. package/build/src/modeling/DomainAssociation.d.ts.map +1 -1
  32. package/build/src/modeling/DomainAssociation.js.map +1 -1
  33. package/build/src/modeling/DomainEntity.d.ts +2 -3
  34. package/build/src/modeling/DomainEntity.d.ts.map +1 -1
  35. package/build/src/modeling/DomainEntity.js +1 -1
  36. package/build/src/modeling/DomainEntity.js.map +1 -1
  37. package/build/src/modeling/DomainProperty.d.ts +2 -3
  38. package/build/src/modeling/DomainProperty.d.ts.map +1 -1
  39. package/build/src/modeling/DomainProperty.js +1 -1
  40. package/build/src/modeling/DomainProperty.js.map +1 -1
  41. package/build/src/modeling/DomainValidation.d.ts +1 -1
  42. package/build/src/modeling/DomainValidation.d.ts.map +1 -1
  43. package/build/src/modeling/DomainValidation.js.map +1 -1
  44. package/build/src/modeling/ExposedEntity.d.ts +14 -0
  45. package/build/src/modeling/ExposedEntity.d.ts.map +1 -1
  46. package/build/src/modeling/ExposedEntity.js +59 -6
  47. package/build/src/modeling/ExposedEntity.js.map +1 -1
  48. package/build/src/modeling/actions/Action.d.ts +11 -1
  49. package/build/src/modeling/actions/Action.d.ts.map +1 -1
  50. package/build/src/modeling/actions/Action.js +21 -3
  51. package/build/src/modeling/actions/Action.js.map +1 -1
  52. package/build/src/modeling/actions/CreateAction.d.ts +2 -1
  53. package/build/src/modeling/actions/CreateAction.d.ts.map +1 -1
  54. package/build/src/modeling/actions/CreateAction.js +2 -2
  55. package/build/src/modeling/actions/CreateAction.js.map +1 -1
  56. package/build/src/modeling/actions/DeleteAction.d.ts +2 -1
  57. package/build/src/modeling/actions/DeleteAction.d.ts.map +1 -1
  58. package/build/src/modeling/actions/DeleteAction.js +2 -2
  59. package/build/src/modeling/actions/DeleteAction.js.map +1 -1
  60. package/build/src/modeling/actions/ListAction.d.ts +2 -1
  61. package/build/src/modeling/actions/ListAction.d.ts.map +1 -1
  62. package/build/src/modeling/actions/ListAction.js +2 -2
  63. package/build/src/modeling/actions/ListAction.js.map +1 -1
  64. package/build/src/modeling/actions/ReadAction.d.ts +2 -1
  65. package/build/src/modeling/actions/ReadAction.d.ts.map +1 -1
  66. package/build/src/modeling/actions/ReadAction.js +2 -2
  67. package/build/src/modeling/actions/ReadAction.js.map +1 -1
  68. package/build/src/modeling/actions/SearchAction.d.ts +2 -1
  69. package/build/src/modeling/actions/SearchAction.d.ts.map +1 -1
  70. package/build/src/modeling/actions/SearchAction.js +2 -2
  71. package/build/src/modeling/actions/SearchAction.js.map +1 -1
  72. package/build/src/modeling/actions/UpdateAction.d.ts +2 -1
  73. package/build/src/modeling/actions/UpdateAction.d.ts.map +1 -1
  74. package/build/src/modeling/actions/UpdateAction.js +2 -2
  75. package/build/src/modeling/actions/UpdateAction.js.map +1 -1
  76. package/build/src/modeling/actions/index.d.ts +2 -1
  77. package/build/src/modeling/actions/index.d.ts.map +1 -1
  78. package/build/src/modeling/actions/index.js +7 -7
  79. package/build/src/modeling/actions/index.js.map +1 -1
  80. package/build/src/modeling/ai/types.d.ts +2 -2
  81. package/build/src/modeling/ai/types.d.ts.map +1 -1
  82. package/build/src/modeling/ai/types.js.map +1 -1
  83. package/build/src/{amf → modeling/amf}/DataValueGenerator.d.ts +1 -1
  84. package/build/src/modeling/amf/DataValueGenerator.d.ts.map +1 -0
  85. package/build/src/{amf → modeling/amf}/DataValueGenerator.js +2 -3
  86. package/build/src/modeling/amf/DataValueGenerator.js.map +1 -0
  87. package/build/src/modeling/amf/ShapeGenerator.d.ts +20 -20
  88. package/build/src/modeling/amf/ShapeGenerator.d.ts.map +1 -1
  89. package/build/src/modeling/amf/ShapeGenerator.js +16 -18
  90. package/build/src/modeling/amf/ShapeGenerator.js.map +1 -1
  91. package/build/src/modeling/amf/core_types.d.ts +9 -0
  92. package/build/src/modeling/amf/core_types.d.ts.map +1 -0
  93. package/build/src/modeling/amf/core_types.js +45 -0
  94. package/build/src/modeling/amf/core_types.js.map +1 -0
  95. package/build/src/modeling/index.d.ts +1 -0
  96. package/build/src/modeling/index.d.ts.map +1 -1
  97. package/build/src/modeling/index.js +1 -0
  98. package/build/src/modeling/index.js.map +1 -1
  99. package/build/src/modeling/types.d.ts +67 -0
  100. package/build/src/modeling/types.d.ts.map +1 -1
  101. package/build/src/modeling/types.js.map +1 -1
  102. package/build/src/modeling/validation/api_model_rules.d.ts +15 -0
  103. package/build/src/modeling/validation/api_model_rules.d.ts.map +1 -0
  104. package/build/src/modeling/validation/api_model_rules.js +599 -0
  105. package/build/src/modeling/validation/api_model_rules.js.map +1 -0
  106. package/build/src/modeling/validation/association_validation.d.ts.map +1 -1
  107. package/build/src/modeling/validation/association_validation.js +1 -3
  108. package/build/src/modeling/validation/association_validation.js.map +1 -1
  109. package/build/src/models/http-flows/LegacyTranslator.js +1 -1
  110. package/build/src/models/http-flows/LegacyTranslator.js.map +1 -1
  111. package/build/src/runtime/http-runner/HttpFlows.js +1 -1
  112. package/build/src/runtime/http-runner/HttpFlows.js.map +1 -1
  113. package/build/tsconfig.tsbuildinfo +1 -1
  114. package/eslint.config.js +0 -2
  115. package/package.json +27 -135
  116. package/src/decorators/observed.ts +91 -0
  117. package/src/events/EventTypes.ts +0 -2
  118. package/src/events/Events.ts +0 -2
  119. package/src/modeling/ApiModel.ts +73 -33
  120. package/src/modeling/Bindings.ts +3 -3
  121. package/src/modeling/DomainAssociation.ts +5 -5
  122. package/src/modeling/DomainEntity.ts +3 -4
  123. package/src/modeling/DomainProperty.ts +3 -4
  124. package/src/modeling/DomainValidation.ts +1 -1
  125. package/src/modeling/ExposedEntity.ts +63 -9
  126. package/src/modeling/actions/Action.ts +25 -2
  127. package/src/modeling/actions/CreateAction.ts +3 -2
  128. package/src/modeling/actions/DeleteAction.ts +3 -2
  129. package/src/modeling/actions/ListAction.ts +3 -2
  130. package/src/modeling/actions/ReadAction.ts +3 -2
  131. package/src/modeling/actions/SearchAction.ts +3 -2
  132. package/src/modeling/actions/UpdateAction.ts +3 -2
  133. package/src/modeling/ai/types.ts +2 -2
  134. package/src/{amf → modeling/amf}/DataValueGenerator.ts +3 -4
  135. package/src/modeling/amf/ShapeGenerator.ts +45 -61
  136. package/src/modeling/amf/core_types.ts +47 -0
  137. package/src/modeling/types.ts +70 -0
  138. package/src/modeling/validation/api_model_rules.ts +640 -0
  139. package/src/modeling/validation/api_model_validation_rules.md +58 -0
  140. package/src/modeling/validation/association_validation.ts +1 -3
  141. package/src/models/http-flows/LegacyTranslator.ts +1 -1
  142. package/src/runtime/http-runner/HttpFlows.ts +1 -1
  143. package/tests/unit/modeling/actions/Action.spec.ts +40 -8
  144. package/tests/unit/modeling/actions/CreateAction.spec.ts +5 -5
  145. package/tests/unit/modeling/actions/DeleteAction.spec.ts +6 -6
  146. package/tests/unit/modeling/actions/ListAction.spec.ts +7 -7
  147. package/tests/unit/modeling/actions/ReadAction.spec.ts +6 -6
  148. package/tests/unit/modeling/actions/SearchAction.spec.ts +6 -6
  149. package/tests/unit/modeling/actions/UpdateAction.spec.ts +6 -6
  150. package/tests/unit/{amf → modeling/amf}/data_value_generator.spec.ts +2 -2
  151. package/tests/unit/modeling/amf/shape_generator.spec.ts +146 -167
  152. package/tests/unit/modeling/api_model.spec.ts +190 -13
  153. package/tests/unit/modeling/api_model_expose_entity.spec.ts +43 -19
  154. package/tests/unit/modeling/api_model_remove_entity.spec.ts +6 -6
  155. package/tests/unit/modeling/domain_asociation.spec.ts +13 -13
  156. package/tests/unit/modeling/exposed_entity.spec.ts +123 -3
  157. package/tests/unit/modeling/exposed_entity_actions.spec.ts +41 -18
  158. package/tests/unit/modeling/exposed_entity_setter_validation.spec.ts +1 -1
  159. package/tests/unit/modeling/rules/restoring_rules.spec.ts +9 -5
  160. package/tests/unit/modeling/validation/api_model_rules.spec.ts +324 -0
  161. package/tests/unit/runtime/runners/http_assertion_runner.spec.ts +1 -1
  162. package/tests/unit/runtime/runners/http_flow_runner.spec.ts +1 -1
  163. package/tests/unit/runtime/runners/project_runner.spec.ts +1 -1
  164. package/tests/unit/runtime/runners/request_runner.spec.ts +1 -1
  165. package/tests/unit/runtime/runners/serial_runner.spec.ts +1 -1
  166. package/tsconfig.browser.json +1 -1
  167. package/tsconfig.node.json +1 -1
  168. package/bin/test-web.ts +0 -6
  169. package/build/src/amf/AmfMixin.d.ts +0 -396
  170. package/build/src/amf/AmfMixin.d.ts.map +0 -1
  171. package/build/src/amf/AmfMixin.js +0 -1138
  172. package/build/src/amf/AmfMixin.js.map +0 -1
  173. package/build/src/amf/AmfSerializer.d.ts +0 -137
  174. package/build/src/amf/AmfSerializer.d.ts.map +0 -1
  175. package/build/src/amf/AmfSerializer.js +0 -1947
  176. package/build/src/amf/AmfSerializer.js.map +0 -1
  177. package/build/src/amf/AmfTypes.d.ts +0 -25
  178. package/build/src/amf/AmfTypes.d.ts.map +0 -1
  179. package/build/src/amf/AmfTypes.js +0 -143
  180. package/build/src/amf/AmfTypes.js.map +0 -1
  181. package/build/src/amf/ApiExampleGenerator.d.ts +0 -40
  182. package/build/src/amf/ApiExampleGenerator.d.ts.map +0 -1
  183. package/build/src/amf/ApiExampleGenerator.js +0 -112
  184. package/build/src/amf/ApiExampleGenerator.js.map +0 -1
  185. package/build/src/amf/ApiMonacoSchemaGenerator.d.ts +0 -68
  186. package/build/src/amf/ApiMonacoSchemaGenerator.d.ts.map +0 -1
  187. package/build/src/amf/ApiMonacoSchemaGenerator.js +0 -248
  188. package/build/src/amf/ApiMonacoSchemaGenerator.js.map +0 -1
  189. package/build/src/amf/ApiSchemaGenerator.d.ts +0 -56
  190. package/build/src/amf/ApiSchemaGenerator.d.ts.map +0 -1
  191. package/build/src/amf/ApiSchemaGenerator.js +0 -94
  192. package/build/src/amf/ApiSchemaGenerator.js.map +0 -1
  193. package/build/src/amf/ApiSchemaValues.d.ts +0 -111
  194. package/build/src/amf/ApiSchemaValues.d.ts.map +0 -1
  195. package/build/src/amf/ApiSchemaValues.js +0 -463
  196. package/build/src/amf/ApiSchemaValues.js.map +0 -1
  197. package/build/src/amf/DataValueGenerator.d.ts.map +0 -1
  198. package/build/src/amf/DataValueGenerator.js.map +0 -1
  199. package/build/src/amf/Parsing.d.ts +0 -48
  200. package/build/src/amf/Parsing.d.ts.map +0 -1
  201. package/build/src/amf/Parsing.js +0 -2
  202. package/build/src/amf/Parsing.js.map +0 -1
  203. package/build/src/amf/Utils.d.ts +0 -37
  204. package/build/src/amf/Utils.d.ts.map +0 -1
  205. package/build/src/amf/Utils.js +0 -169
  206. package/build/src/amf/Utils.js.map +0 -1
  207. package/build/src/amf/data-node/DataNodeBase.d.ts +0 -34
  208. package/build/src/amf/data-node/DataNodeBase.d.ts.map +0 -1
  209. package/build/src/amf/data-node/DataNodeBase.js +0 -77
  210. package/build/src/amf/data-node/DataNodeBase.js.map +0 -1
  211. package/build/src/amf/data-node/JsonDataNodeGenerator.d.ts +0 -15
  212. package/build/src/amf/data-node/JsonDataNodeGenerator.d.ts.map +0 -1
  213. package/build/src/amf/data-node/JsonDataNodeGenerator.js +0 -23
  214. package/build/src/amf/data-node/JsonDataNodeGenerator.js.map +0 -1
  215. package/build/src/amf/data-node/UrlEncodedDataNodeGenerator.d.ts +0 -14
  216. package/build/src/amf/data-node/UrlEncodedDataNodeGenerator.d.ts.map +0 -1
  217. package/build/src/amf/data-node/UrlEncodedDataNodeGenerator.js +0 -48
  218. package/build/src/amf/data-node/UrlEncodedDataNodeGenerator.js.map +0 -1
  219. package/build/src/amf/data-node/XmlDataNodeGenerator.d.ts +0 -22
  220. package/build/src/amf/data-node/XmlDataNodeGenerator.d.ts.map +0 -1
  221. package/build/src/amf/data-node/XmlDataNodeGenerator.js +0 -34
  222. package/build/src/amf/data-node/XmlDataNodeGenerator.js.map +0 -1
  223. package/build/src/amf/definitions/Amf.d.ts +0 -363
  224. package/build/src/amf/definitions/Amf.d.ts.map +0 -1
  225. package/build/src/amf/definitions/Amf.js +0 -3
  226. package/build/src/amf/definitions/Amf.js.map +0 -1
  227. package/build/src/amf/definitions/Api.d.ts +0 -383
  228. package/build/src/amf/definitions/Api.d.ts.map +0 -1
  229. package/build/src/amf/definitions/Api.js +0 -2
  230. package/build/src/amf/definitions/Api.js.map +0 -1
  231. package/build/src/amf/definitions/Base.d.ts +0 -12
  232. package/build/src/amf/definitions/Base.d.ts.map +0 -1
  233. package/build/src/amf/definitions/Base.js +0 -2
  234. package/build/src/amf/definitions/Base.js.map +0 -1
  235. package/build/src/amf/definitions/Namespace.d.ts +0 -327
  236. package/build/src/amf/definitions/Namespace.d.ts.map +0 -1
  237. package/build/src/amf/definitions/Namespace.js +0 -346
  238. package/build/src/amf/definitions/Namespace.js.map +0 -1
  239. package/build/src/amf/definitions/Shapes.d.ts +0 -312
  240. package/build/src/amf/definitions/Shapes.d.ts.map +0 -1
  241. package/build/src/amf/definitions/Shapes.js +0 -87
  242. package/build/src/amf/definitions/Shapes.js.map +0 -1
  243. package/build/src/amf/models/AmfDataNode.d.ts +0 -67
  244. package/build/src/amf/models/AmfDataNode.d.ts.map +0 -1
  245. package/build/src/amf/models/AmfDataNode.js +0 -192
  246. package/build/src/amf/models/AmfDataNode.js.map +0 -1
  247. package/build/src/amf/shape/ShapeBase.d.ts +0 -74
  248. package/build/src/amf/shape/ShapeBase.d.ts.map +0 -1
  249. package/build/src/amf/shape/ShapeBase.js +0 -93
  250. package/build/src/amf/shape/ShapeBase.js.map +0 -1
  251. package/build/src/amf/shape/ShapeJsonSchemaGenerator.d.ts +0 -47
  252. package/build/src/amf/shape/ShapeJsonSchemaGenerator.d.ts.map +0 -1
  253. package/build/src/amf/shape/ShapeJsonSchemaGenerator.js +0 -420
  254. package/build/src/amf/shape/ShapeJsonSchemaGenerator.js.map +0 -1
  255. package/build/src/amf/shape/ShapeXmlSchemaGenerator.d.ts +0 -85
  256. package/build/src/amf/shape/ShapeXmlSchemaGenerator.d.ts.map +0 -1
  257. package/build/src/amf/shape/ShapeXmlSchemaGenerator.js +0 -852
  258. package/build/src/amf/shape/ShapeXmlSchemaGenerator.js.map +0 -1
  259. package/build/src/events/amf/AmfEventTypes.d.ts +0 -7
  260. package/build/src/events/amf/AmfEventTypes.d.ts.map +0 -1
  261. package/build/src/events/amf/AmfEventTypes.js +0 -7
  262. package/build/src/events/amf/AmfEventTypes.js.map +0 -1
  263. package/build/src/events/amf/AmfEvents.d.ts +0 -34
  264. package/build/src/events/amf/AmfEvents.d.ts.map +0 -1
  265. package/build/src/events/amf/AmfEvents.js +0 -63
  266. package/build/src/events/amf/AmfEvents.js.map +0 -1
  267. package/build/src/mocking/RandExp.d.ts +0 -55
  268. package/build/src/mocking/RandExp.d.ts.map +0 -1
  269. package/build/src/mocking/RandExp.js +0 -302
  270. package/build/src/mocking/RandExp.js.map +0 -1
  271. package/build/src/mocking/lib/ret.d.ts +0 -16
  272. package/build/src/mocking/lib/ret.d.ts.map +0 -1
  273. package/build/src/mocking/lib/ret.js +0 -284
  274. package/build/src/mocking/lib/ret.js.map +0 -1
  275. package/data/apis/APIC-187/APIC-187.raml +0 -21
  276. package/data/apis/APIC-187/dataType.raml +0 -132
  277. package/data/apis/APIC-187/example.raml +0 -84
  278. package/data/apis/APIC-188/APIC-188.raml +0 -21
  279. package/data/apis/APIC-188/dataType.raml +0 -132
  280. package/data/apis/APIC-188/example.raml +0 -84
  281. package/data/apis/APIC-233/APIC-233.raml +0 -15
  282. package/data/apis/APIC-391/APIC-391.raml +0 -44
  283. package/data/apis/APIC-391/examples/post-body-request-example.raml +0 -7
  284. package/data/apis/APIC-483/APIC-483.raml +0 -16
  285. package/data/apis/APIC-483/example/list-of-bank-succ.json +0 -32
  286. package/data/apis/APIC-483/schema/response-retrieve-list-bank.json +0 -68
  287. package/data/apis/APIC-487/APIC-487.raml +0 -36
  288. package/data/apis/APIC-655/APIC-655.raml +0 -44
  289. package/data/apis/APIC-655/delivery.json +0 -12
  290. package/data/apis/APIC-689/APIC-689.raml +0 -20
  291. package/data/apis/APIC-690/APIC-690.raml +0 -17
  292. package/data/apis/APIC-690/datatypes/Address.raml +0 -10
  293. package/data/apis/APIC-690/datatypes/Customer.raml +0 -17
  294. package/data/apis/APIC-690/examples/CustomerExample2.raml +0 -17
  295. package/data/apis/APIC-690/examples/CustomersExample.raml +0 -34
  296. package/data/apis/SE-10469/Purchase-Order-oagis-id-dd32f9c6c01048a19e15c423c9c741ae.json +0 -1383
  297. package/data/apis/SE-10469/SE-10469.raml +0 -11
  298. package/data/apis/SE-13092/Examples/PersonExample.raml +0 -7
  299. package/data/apis/SE-13092/SE-13092.raml +0 -37
  300. package/data/apis/SE-13092/datatypes/Address.raml +0 -5
  301. package/data/apis/SE-13092/datatypes/InlineType.raml +0 -5
  302. package/data/apis/SE-13092/datatypes/Person.raml +0 -15
  303. package/data/apis/SE-22063/SE-22063.raml +0 -14
  304. package/data/apis/SE-22063/stock.raml +0 -41
  305. package/data/apis/amf-helper-api/amf-helper-api.raml +0 -1024
  306. package/data/apis/amf-helper-api/examples/comment-example.json +0 -42
  307. package/data/apis/amf-helper-api/examples/commentCreateRequest-example.json +0 -7
  308. package/data/apis/amf-helper-api/examples/commentList-example.json +0 -48
  309. package/data/apis/amf-helper-api/examples/person.json +0 -14
  310. package/data/apis/amf-helper-api/examples/person.raml +0 -13
  311. package/data/apis/amf-helper-api/examples/person.xml +0 -14
  312. package/data/apis/amf-helper-api/libraries/comment-lib.raml +0 -143
  313. package/data/apis/amf-helper-api/library.raml +0 -7
  314. package/data/apis/amf-helper-api/schemas/person.json +0 -104
  315. package/data/apis/amf-helper-api/schemas/person.xsd +0 -26
  316. package/data/apis/amf-helper-api/traits/file.raml +0 -33
  317. package/data/apis/amf-helper-api/traits/pagination.raml +0 -80
  318. package/data/apis/amf-helper-api/traits/results.raml +0 -19
  319. package/data/apis/amf-helper-api/traits/visibility.raml +0 -14
  320. package/data/apis/amf-helper-api/types/app-person.raml +0 -101
  321. package/data/apis/amf-helper-api/types/dimensions.raml +0 -24
  322. package/data/apis/amf-helper-api/types/external-type.raml +0 -7
  323. package/data/apis/amf-helper-api/types/image.raml +0 -23
  324. package/data/apis/amf-helper-api/types/product.raml +0 -52
  325. package/data/apis/amf-helper-api/types/resource.raml +0 -11
  326. package/data/apis/amf-helper-api/types/standard-request.raml +0 -50
  327. package/data/apis/amf-helper-api/types/user.raml +0 -37
  328. package/data/apis/arc-demo-api/arc-demo-api.raml +0 -468
  329. package/data/apis/arc-demo-api/examples/e400.xml +0 -4
  330. package/data/apis/arc-demo-api/examples/e401.xml +0 -4
  331. package/data/apis/arc-demo-api/examples/e404.xml +0 -4
  332. package/data/apis/arc-demo-api/examples/image.xml +0 -5
  333. package/data/apis/arc-demo-api/examples/messages-example.json +0 -22
  334. package/data/apis/arc-demo-api/examples/messages-sent-example.json +0 -15
  335. package/data/apis/arc-demo-api/examples/person.json +0 -14
  336. package/data/apis/arc-demo-api/examples/person.url.encoded +0 -1
  337. package/data/apis/arc-demo-api/examples/person.xml +0 -14
  338. package/data/apis/arc-demo-api/examples/product.xml +0 -9
  339. package/data/apis/arc-demo-api/library.raml +0 -36
  340. package/data/apis/arc-demo-api/resourceTypes/app-person.raml +0 -49
  341. package/data/apis/arc-demo-api/resourceTypes/example-types.raml +0 -45
  342. package/data/apis/arc-demo-api/resourceTypes/image.raml +0 -23
  343. package/data/apis/arc-demo-api/resourceTypes/message-sent-type.raml +0 -23
  344. package/data/apis/arc-demo-api/resourceTypes/message-type.raml +0 -33
  345. package/data/apis/arc-demo-api/resourceTypes/product.raml +0 -52
  346. package/data/apis/arc-demo-api/resourceTypes/resource.raml +0 -11
  347. package/data/apis/arc-demo-api/schemas/error-response.xsd +0 -11
  348. package/data/apis/arc-demo-api/schemas/image.xsd +0 -11
  349. package/data/apis/arc-demo-api/schemas/person.json +0 -104
  350. package/data/apis/arc-demo-api/schemas/person.xsd +0 -26
  351. package/data/apis/arc-demo-api/schemas/product.xsd +0 -17
  352. package/data/apis/arc-demo-api/securitySchemes/basic.raml +0 -5
  353. package/data/apis/arc-demo-api/securitySchemes/oauth_2_0.raml +0 -29
  354. package/data/apis/arc-demo-api/securitySchemes/x-custom.raml +0 -26
  355. package/data/apis/arc-demo-api/traits/adminable.raml +0 -23
  356. package/data/apis/arc-demo-api/traits/pagination.raml +0 -83
  357. package/data/apis/arc-demo-api/traits/rate-limited.raml +0 -9
  358. package/data/apis/async-api/async-api.yaml +0 -96
  359. package/data/apis/example-generator-api/contact-email-example.raml +0 -6
  360. package/data/apis/example-generator-api/contact-example.raml +0 -5
  361. package/data/apis/example-generator-api/contact-fax-example.raml +0 -5
  362. package/data/apis/example-generator-api/contact-website-example.raml +0 -2
  363. package/data/apis/example-generator-api/example-1.raml +0 -6
  364. package/data/apis/example-generator-api/example-2.raml +0 -9
  365. package/data/apis/example-generator-api/example-3.raml +0 -4
  366. package/data/apis/example-generator-api/example-4.raml +0 -2
  367. package/data/apis/example-generator-api/example-5.raml +0 -4
  368. package/data/apis/example-generator-api/example-6.raml +0 -2
  369. package/data/apis/example-generator-api/example-7.raml +0 -5
  370. package/data/apis/example-generator-api/example-generator-api.raml +0 -423
  371. package/data/apis/example-generator-api/example.json +0 -14
  372. package/data/apis/example-generator-api/example.xml +0 -15
  373. package/data/apis/example-generator-api/example.xsd +0 -26
  374. package/data/apis/example-generator-api/examples/employee.raml +0 -7
  375. package/data/apis/example-generator-api/examples/employees.raml +0 -7
  376. package/data/apis/example-generator-api/linked-named-example.raml +0 -21
  377. package/data/apis/example-generator-api/named-example-with-link.raml +0 -5
  378. package/data/apis/example-generator-api/named-example.raml +0 -9
  379. package/data/apis/example-generator-api/user-json-example.raml +0 -17
  380. package/data/apis/example-generator-api/user-raml-example.raml +0 -37
  381. package/data/apis/example-generator-api/user.json +0 -8
  382. package/data/apis/example-generator-api/user.raml +0 -18
  383. package/data/apis/example-generator-api/users-json-example.raml +0 -17
  384. package/data/apis/example-generator-api/users-raml-example.raml +0 -32
  385. package/data/apis/example-generator-api/users.json +0 -8
  386. package/data/apis/expanded-api/expanded-api.raml +0 -8
  387. package/data/apis/flattened-api/flattened-api.raml +0 -8
  388. package/data/apis/multiple-servers/multiple-servers.yaml +0 -112
  389. package/data/apis/oas-3-api/oas-3-api.yaml +0 -356
  390. package/data/apis/oas-date/oas-date.yaml +0 -28
  391. package/data/apis/oas-types/oas-types.yaml +0 -159
  392. package/data/apis/oas-unions/oas-unions.yaml +0 -75
  393. package/data/apis/petstore/petstore.yaml +0 -954
  394. package/data/apis/raml-date/raml-date.raml +0 -28
  395. package/data/apis/recursive/recursive.raml +0 -14
  396. package/data/apis/schema-api/examples/person.json +0 -14
  397. package/data/apis/schema-api/examples/person.raml +0 -14
  398. package/data/apis/schema-api/examples/person.url.encoded +0 -1
  399. package/data/apis/schema-api/examples/person.xml +0 -14
  400. package/data/apis/schema-api/library/demo-types.raml +0 -43
  401. package/data/apis/schema-api/schema-api.raml +0 -656
  402. package/data/apis/schema-api/schemas/person.json +0 -104
  403. package/data/apis/schema-api/schemas/person.xsd +0 -26
  404. package/data/apis/schema-api/types/DemoPerson.raml +0 -67
  405. package/data/apis/secured-api/oauth-2-custom-settings.raml +0 -143
  406. package/data/apis/secured-api/oauth2-header-delivery.raml +0 -13
  407. package/data/apis/secured-api/oauth2-no-delivery.raml +0 -8
  408. package/data/apis/secured-api/oauth2-no-grants.raml +0 -12
  409. package/data/apis/secured-api/oauth2-pkce.raml +0 -13
  410. package/data/apis/secured-api/oauth2-query-delivery.raml +0 -13
  411. package/data/apis/secured-api/oauth_1_0.raml +0 -8
  412. package/data/apis/secured-api/oauth_1_0_no-settings.raml +0 -3
  413. package/data/apis/secured-api/oauth_1_0_no-signature.raml +0 -7
  414. package/data/apis/secured-api/oauth_1_0_signature.raml +0 -8
  415. package/data/apis/secured-api/passthrough-querystring.raml +0 -16
  416. package/data/apis/secured-api/passthrough.raml +0 -24
  417. package/data/apis/secured-api/secured-api.raml +0 -231
  418. package/data/apis/secured-api/x-custom.raml +0 -33
  419. package/data/apis/secured-api/x-other.raml +0 -29
  420. package/data/apis/secured-api/x-query-string.raml +0 -16
  421. package/data/apis/tracked-examples/datatypes/employee.raml +0 -5
  422. package/data/apis/tracked-examples/examples/employee.raml +0 -4
  423. package/data/apis/tracked-examples/examples/employees.raml +0 -8
  424. package/data/apis/tracked-examples/tracked-to-linked.raml +0 -28
  425. package/data/model.js +0 -129
  426. package/data/models/APIC-187.json +0 -11416
  427. package/data/models/APIC-188.json +0 -11416
  428. package/data/models/APIC-233.json +0 -539
  429. package/data/models/APIC-391.json +0 -1903
  430. package/data/models/APIC-483.json +0 -3110
  431. package/data/models/APIC-487.json +0 -1225
  432. package/data/models/APIC-655.json +0 -3145
  433. package/data/models/APIC-689.json +0 -797
  434. package/data/models/APIC-690.json +0 -5992
  435. package/data/models/SE-10469.json +0 -22898
  436. package/data/models/SE-13092.json +0 -2769
  437. package/data/models/SE-22063.json +0 -2314
  438. package/data/models/amf-helper-api.json +0 -84457
  439. package/data/models/arc-demo-api.json +0 -52041
  440. package/data/models/async-api.json +0 -3227
  441. package/data/models/example-generator-api.json +0 -45209
  442. package/data/models/expanded-api.json +0 -251
  443. package/data/models/flattened-api.json +0 -251
  444. package/data/models/multiple-servers.json +0 -2769
  445. package/data/models/oas-3-api.json +0 -10590
  446. package/data/models/oas-date.json +0 -637
  447. package/data/models/oas-types.json +0 -5352
  448. package/data/models/oas-unions.json +0 -1935
  449. package/data/models/petstore.json +0 -27712
  450. package/data/models/raml-date.json +0 -1114
  451. package/data/models/recursive.json +0 -610
  452. package/data/models/schema-api.json +0 -35527
  453. package/data/models/secured-api.json +0 -21071
  454. package/data/models/tracked-to-linked.json +0 -1914
  455. package/src/amf/AmfMixin.ts +0 -1726
  456. package/src/amf/AmfSerializer.ts +0 -2358
  457. package/src/amf/AmfTypes.ts +0 -147
  458. package/src/amf/ApiExampleGenerator.ts +0 -122
  459. package/src/amf/ApiMonacoSchemaGenerator.ts +0 -332
  460. package/src/amf/ApiSchemaGenerator.ts +0 -115
  461. package/src/amf/ApiSchemaValues.ts +0 -509
  462. package/src/amf/Parsing.ts +0 -50
  463. package/src/amf/Utils.ts +0 -172
  464. package/src/amf/data-node/DataNodeBase.ts +0 -83
  465. package/src/amf/data-node/JsonDataNodeGenerator.ts +0 -24
  466. package/src/amf/data-node/README.md +0 -3
  467. package/src/amf/data-node/UrlEncodedDataNodeGenerator.ts +0 -49
  468. package/src/amf/data-node/XmlDataNodeGenerator.ts +0 -46
  469. package/src/amf/definitions/Amf.ts +0 -440
  470. package/src/amf/definitions/Api.ts +0 -445
  471. package/src/amf/definitions/Base.ts +0 -13
  472. package/src/amf/definitions/Namespace.ts +0 -357
  473. package/src/amf/definitions/Shapes.ts +0 -438
  474. package/src/amf/models/AmfDataNode.ts +0 -210
  475. package/src/amf/shape/README.md +0 -4
  476. package/src/amf/shape/ShapeBase.ts +0 -174
  477. package/src/amf/shape/ShapeJsonSchemaGenerator.ts +0 -457
  478. package/src/amf/shape/ShapeXmlSchemaGenerator.ts +0 -933
  479. package/src/events/amf/AmfEventTypes.ts +0 -6
  480. package/src/events/amf/AmfEvents.ts +0 -78
  481. package/src/mocking/RandExp.ts +0 -335
  482. package/src/mocking/lib/ret.ts +0 -279
  483. package/tests/unit/amf/APIC-187.spec.ts +0 -41
  484. package/tests/unit/amf/APIC-188.spec.ts +0 -30
  485. package/tests/unit/amf/APIC-233.spec.ts +0 -32
  486. package/tests/unit/amf/APIC-391.spec.ts +0 -39
  487. package/tests/unit/amf/APIC-487.spec.ts +0 -44
  488. package/tests/unit/amf/APIC-655.spec.ts +0 -41
  489. package/tests/unit/amf/APIC-689.spec.ts +0 -28
  490. package/tests/unit/amf/APIC-690.spec.ts +0 -93
  491. package/tests/unit/amf/AmfLoader.ts +0 -538
  492. package/tests/unit/amf/AmfMixin.spec.ts +0 -1707
  493. package/tests/unit/amf/ApiExampleGenerator.spec.ts +0 -250
  494. package/tests/unit/amf/ApiMonacoSchemaGenerator.spec.ts +0 -183
  495. package/tests/unit/amf/ApiSchemaValues.spec.ts +0 -602
  496. package/tests/unit/amf/Namepsace.spec.ts +0 -494
  497. package/tests/unit/amf/SE-10469.spec.ts +0 -35
  498. package/tests/unit/amf/SE-13092.spec.ts +0 -64
  499. package/tests/unit/amf/SE-22063.spec.ts +0 -45
  500. package/tests/unit/amf/raml-examples.spec.ts +0 -43
  501. package/tests/unit/amf/schema_gen_array.spec.ts +0 -199
  502. package/tests/unit/amf/schema_gen_oas.spec.ts +0 -140
  503. package/tests/unit/amf/schema_gen_object.spec.ts +0 -279
  504. package/tests/unit/amf/schema_gen_scalar.spec.ts +0 -143
  505. package/tests/unit/amf/schema_gen_union.spec.ts +0 -401
  506. package/tests/unit/amf/schema_gen_unknown.spec.ts +0 -42
  507. package/tests/unit/amf/schema_gen_xml.spec.ts +0 -726
  508. package/tests/unit/amf/serializer/APIC-483.spec.ts +0 -36
  509. package/tests/unit/amf/serializer/Anotations.spec.ts +0 -50
  510. package/tests/unit/amf/serializer/Api.spec.ts +0 -210
  511. package/tests/unit/amf/serializer/Documentation.spec.ts +0 -52
  512. package/tests/unit/amf/serializer/Endpoints.spec.ts +0 -172
  513. package/tests/unit/amf/serializer/Operations.spec.ts +0 -330
  514. package/tests/unit/amf/serializer/Parameters.spec.ts +0 -149
  515. package/tests/unit/amf/serializer/PayloadExamples.spec.ts +0 -152
  516. package/tests/unit/amf/serializer/Security.spec.ts +0 -626
  517. package/tests/unit/amf/serializer/Server.spec.ts +0 -78
  518. package/tests/unit/amf/serializer/Shapes.spec.ts +0 -304
  519. package/tests/unit/amf/serializer/SourceMaps.spec.ts +0 -52
  520. package/tests/unit/amf/shapes/ShapeXmlSchemaGenerator.spec.ts +0 -28
  521. package/tests/unit/amf/tracked-to-linked.spec.ts +0 -90
  522. package/tests/unit/amf/xml-data-processing.spec.ts +0 -217
  523. package/tests/unit/events/amf.spec.ts +0 -151
@@ -1,494 +0,0 @@
1
- import { test } from '@japa/runner'
2
- import { AmfNamespace as ns } from '../../../src/amf/definitions/Namespace.js'
3
-
4
- test.group('AMF keys namespace', () => {
5
- test('namespace has all keys', ({ assert }) => {
6
- const keys = Object.keys(ns)
7
- const compare = ['aml', 'w3']
8
- assert.deepEqual(keys, compare)
9
- })
10
-
11
- test('aml properties are set', ({ assert }) => {
12
- const r = ns.aml
13
- assert.equal(r.key, 'http://a.ml/')
14
- assert.typeOf(r.vocabularies, 'object')
15
- })
16
-
17
- test('aml.vocabularies properties are set', ({ assert }) => {
18
- const v = ns.aml.vocabularies
19
- const key = 'http://a.ml/vocabularies/'
20
- assert.equal(v.key, key, 'key is set')
21
- assert.typeOf(v.document, 'object', 'document is set')
22
- assert.equal(v.document.key, `${key}document#`, 'document key is set')
23
- assert.typeOf(v.core, 'object', 'core is set')
24
- assert.equal(v.core.key, `${key}core#`, 'core key is set')
25
- assert.typeOf(v.apiContract, 'object', 'apiContract is set')
26
- assert.equal(v.apiContract.key, `${key}apiContract#`, 'apiContract.key is set')
27
- assert.typeOf(v.security, 'object', 'security is set')
28
- assert.equal(v.security.key, `${key}security#`, 'security.key is set')
29
- assert.typeOf(v.shapes, 'object', 'shapes is set')
30
- assert.equal(v.shapes.key, `${key}shapes#`, 'shapes.key is set')
31
- assert.typeOf(v.data, 'object', 'data is set')
32
- assert.equal(v.data.key, `${key}data#`, 'data.key is set')
33
- })
34
-
35
- test('w3 properties are set', ({ assert }) => {
36
- const r = ns.w3
37
- const { key } = r
38
- assert.equal(r.key, 'http://www.w3.org/', 'key is set')
39
- assert.typeOf(r.rdfSyntax, 'object', 'rdfSyntax is set')
40
- assert.equal(r.rdfSyntax.key, `${key}1999/02/22-rdf-syntax-ns#`, 'rdfSyntax.key is set')
41
- assert.typeOf(r.rdfSchema, 'object', 'rdfSchema is set')
42
- assert.equal(r.rdfSchema.key, `${key}2000/01/rdf-schema#`, 'rdfSchema.key is set')
43
- assert.typeOf(r.xmlSchema, 'object', 'xmlSchema is set')
44
- assert.equal(r.xmlSchema.key, `${key}2001/XMLSchema#`, 'xmlSchema.key is set')
45
- assert.typeOf(r.shacl, 'object', 'shacl is set')
46
- assert.equal(r.shacl.key, `${key}ns/shacl#`, 'shacl.key is set')
47
- })
48
-
49
- test('shacl properties are set', ({ assert }) => {
50
- const s = ns.w3.shacl
51
- const key = 'http://www.w3.org/ns/shacl#'
52
- assert.equal(s.key, key, 'key is set')
53
- ;[
54
- 'in',
55
- 'defaultValue',
56
- 'defaultValueStr',
57
- 'pattern',
58
- 'minInclusive',
59
- 'maxInclusive',
60
- 'multipleOf',
61
- 'minLength',
62
- 'maxLength',
63
- 'fileType',
64
- 'and',
65
- 'property',
66
- 'name',
67
- 'raw',
68
- 'datatype',
69
- 'minCount',
70
- 'Shape',
71
- 'NodeShape',
72
- 'SchemaShape',
73
- 'PropertyShape',
74
- 'xone',
75
- 'not',
76
- 'or',
77
- ].forEach((name) => {
78
- // @ts-expect-error Used in testing
79
- assert.equal(s[name], key + name, `${name} is set`)
80
- })
81
- })
82
- })
83
-
84
- test.group('vocabularies.document namespace', () => {
85
- const key = 'http://a.ml/vocabularies/document#'
86
-
87
- ;[
88
- ['Module', `${key}Module`],
89
- ['Document', `${key}Document`],
90
- ['SecuritySchemeFragment', `${key}SecuritySchemeFragment`],
91
- ['UserDocumentation', `${key}UserDocumentation`],
92
- ['DataType', `${key}DataType`],
93
- ['NamedExamples', `${key}NamedExamples`],
94
- ['DomainElement', `${key}DomainElement`],
95
- ['DomainProperty', `${key}DomainProperty`],
96
- ['ParametrizedDeclaration', `${key}ParametrizedDeclaration`],
97
- ['ExternalDomainElement', `${key}ExternalDomainElement`],
98
- ['customDomainProperties', `${key}customDomainProperties`],
99
- ['encodes', `${key}encodes`],
100
- ['declares', `${key}declares`],
101
- ['references', `${key}references`],
102
- ['examples', `${key}examples`],
103
- ['linkTarget', `${key}link-target`],
104
- ['linkLabel', `${key}link-label`],
105
- ['referenceId', `${key}reference-id`],
106
- ['structuredValue', `${key}structuredValue`],
107
- ['raw', `${key}raw`],
108
- ['extends', `${key}extends`],
109
- ['value', `${key}value`],
110
- ['name', `${key}name`],
111
- ['strict', `${key}strict`],
112
- ['deprecated', `${key}deprecated`],
113
- ['location', `${key}location`],
114
- ['variable', `${key}variable`],
115
- ['target', `${key}target`],
116
- ['dataNode', `${key}dataNode`],
117
- ['root', `${key}root`],
118
- ['usage', `${key}usage`],
119
- ['version', `${key}version`],
120
- ].forEach(([property, value]) => {
121
- test(`has value for ${property}`, ({ assert }) => {
122
- // @ts-expect-error Used in testing
123
- const result = ns.aml.vocabularies.document[property]
124
- assert.equal(result, value)
125
- })
126
- })
127
- })
128
-
129
- test.group('vocabularies.security namespace', () => {
130
- const key = 'http://a.ml/vocabularies/security#'
131
-
132
- ;[
133
- ['ParametrizedSecurityScheme', `${key}ParametrizedSecurityScheme`],
134
- ['SecuritySchemeFragment', `${key}SecuritySchemeFragment`],
135
- ['SecurityScheme', `${key}SecurityScheme`],
136
- ['OAuth1Settings', `${key}OAuth1Settings`],
137
- ['OAuth2Settings', `${key}OAuth2Settings`],
138
- ['Scope', `${key}Scope`],
139
- ['Settings', `${key}Settings`],
140
- ['HttpSettings', `${key}HttpSettings`],
141
- ['ApiKeySettings', `${key}ApiKeySettings`],
142
- ['OpenIdConnectSettings', `${key}OpenIdConnectSettings`],
143
- ['SecurityRequirement', `${key}SecurityRequirement`],
144
- ['security', `${key}security`],
145
- ['scheme', `${key}scheme`],
146
- ['settings', `${key}settings`],
147
- ['name', `${key}name`],
148
- ['type', `${key}type`],
149
- ['scope', `${key}scope`],
150
- ['accessTokenUri', `${key}accessTokenUri`],
151
- ['authorizationUri', `${key}authorizationUri`],
152
- ['authorizationGrant', `${key}authorizationGrant`],
153
- ['flows', `${key}flows`],
154
- ['flow', `${key}flow`],
155
- ['signature', `${key}signature`],
156
- ['tokenCredentialsUri', `${key}tokenCredentialsUri`],
157
- ['requestTokenUri', `${key}requestTokenUri`],
158
- ['refreshUri', `${key}refreshUri`],
159
- ['openIdConnectUrl', `${key}openIdConnectUrl`],
160
- ['bearerFormat', `${key}bearerFormat`],
161
- ['in', `${key}in`],
162
- ].forEach(([property, value]) => {
163
- test(`has value for ${property}`, ({ assert }) => {
164
- // @ts-expect-error Used in testing
165
- const result = ns.aml.vocabularies.security[property]
166
- assert.equal(result, value)
167
- })
168
- })
169
- })
170
-
171
- test.group('vocabularies.core namespace', () => {
172
- const key = 'http://a.ml/vocabularies/core#'
173
-
174
- ;[
175
- ['CreativeWork', `${key}CreativeWork`],
176
- ['version', `${key}version`],
177
- ['urlTemplate', `${key}urlTemplate`],
178
- ['displayName', `${key}displayName`],
179
- ['title', `${key}title`],
180
- ['name', `${key}name`],
181
- ['description', `${key}description`],
182
- ['summary', `${key}summary`],
183
- ['documentation', `${key}documentation`],
184
- ['version', `${key}version`],
185
- ['provider', `${key}provider`],
186
- ['email', `${key}email`],
187
- ['url', `${key}url`],
188
- ['termsOfService', `${key}termsOfService`],
189
- ['license', `${key}license`],
190
- ['mediaType', `${key}mediaType`],
191
- ['extensionName', `${key}extensionName`],
192
- ['deprecated', `${key}deprecated`],
193
- ].forEach(([property, value]) => {
194
- test(`has value for ${property}`, ({ assert }) => {
195
- // @ts-expect-error Used in testing
196
- const result = ns.aml.vocabularies.core[property]
197
- assert.equal(result, value)
198
- })
199
- })
200
- })
201
-
202
- test.group('vocabularies.apiContract namespace', () => {
203
- const key = 'http://a.ml/vocabularies/apiContract#'
204
-
205
- ;[
206
- ['Payload', `${key}Payload`],
207
- ['Request', `${key}Request`],
208
- ['Response', `${key}Response`],
209
- ['EndPoint', `${key}EndPoint`],
210
- ['Parameter', `${key}Parameter`],
211
- ['Operation', `${key}Operation`],
212
- ['WebAPI', `${key}WebAPI`],
213
- ['AsyncAPI', `${key}AsyncAPI`],
214
- ['API', `${key}API`],
215
- ['UserDocumentationFragment', `${key}UserDocumentationFragment`],
216
- ['Example', `${key}Example`],
217
- ['Server', `${key}Server`],
218
- ['ParametrizedResourceType', `${key}ParametrizedResourceType`],
219
- ['ParametrizedTrait', `${key}ParametrizedTrait`],
220
- ['TemplatedLink', `${key}TemplatedLink`],
221
- ['IriTemplateMapping', `${key}IriTemplateMapping`],
222
- ['Tag', `${key}Tag`],
223
- ['Callback', `${key}Callback`],
224
- ['Message', `${key}Message`],
225
- ['DomainExtension', `${key}DomainExtension`],
226
- ['header', `${key}header`],
227
- ['parameter', `${key}parameter`],
228
- ['paramName', `${key}paramName`],
229
- ['uriParameter', `${key}uriParameter`],
230
- ['cookieParameter', `${key}cookieParameter`],
231
- ['variable', `${key}variable`],
232
- ['payload', `${key}payload`],
233
- ['path', `${key}path`],
234
- ['url', `${key}url`],
235
- ['scheme', `${key}scheme`],
236
- ['endpoint', `${key}endpoint`],
237
- ['queryString', `${key}queryString`],
238
- // ['mediaType', key + 'mediaType'],
239
- ['accepts', `${key}accepts`],
240
- ['guiSummary', `${key}guiSummary`],
241
- ['binding', `${key}binding`],
242
- ['response', `${key}response`],
243
- ['returns', `${key}returns`],
244
- ['expects', `${key}expects`],
245
- ['examples', `${key}examples`],
246
- ['supportedOperation', `${key}supportedOperation`],
247
- ['messageId', `${key}messageId`],
248
- ['statusCode', `${key}statusCode`],
249
- ['method', `${key}method`],
250
- ['required', `${key}required`],
251
- ['callback', `${key}callback`],
252
- ['expression', `${key}expression`],
253
- ['link', `${key}link`],
254
- ['linkExpression', `${key}linkExpression`],
255
- ['templateVariable', `${key}templateVariable`],
256
- ['mapping', `${key}mapping`],
257
- ['operationId', `${key}operationId`],
258
- ['protocol', `${key}protocol`],
259
- ['protocolVersion', `${key}protocolVersion`],
260
- ['contentType', `${key}contentType`],
261
- ['allowEmptyValue', `${key}allowEmptyValue`],
262
- ['style', `${key}style`],
263
- ['explode', `${key}explode`],
264
- ['allowReserved', `${key}allowReserved`],
265
- ['tag', `${key}tag`],
266
- ['tags', `${key}tags`],
267
- ].forEach(([property, value]) => {
268
- test(`has value for ${property}`, ({ assert }) => {
269
- // @ts-expect-error Used in testing
270
- const result = ns.aml.vocabularies.apiContract[property]
271
- assert.equal(result, value)
272
- })
273
- })
274
- })
275
-
276
- test.group('vocabularies.apiBinding namespace', () => {
277
- const key = 'http://a.ml/vocabularies/apiBinding#'
278
-
279
- ;[
280
- ['binding', `${key}binding`],
281
- ['bindings', `${key}bindings`],
282
- ['messageKey', `${key}messageKey`],
283
- ['type', `${key}type`],
284
- ].forEach(([property, value]) => {
285
- test(`has value for ${property}`, ({ assert }) => {
286
- // @ts-expect-error Used in testing
287
- const result = ns.aml.vocabularies.apiBinding[property]
288
- assert.equal(result, value)
289
- })
290
- })
291
- })
292
-
293
- test.group('vocabularies.shapes namespace', () => {
294
- const key = 'http://a.ml/vocabularies/shapes#'
295
-
296
- ;[
297
- ['ScalarShape', `${key}ScalarShape`],
298
- ['ArrayShape', `${key}ArrayShape`],
299
- ['UnionShape', `${key}UnionShape`],
300
- ['NilShape', `${key}NilShape`],
301
- ['FileShape', `${key}FileShape`],
302
- ['AnyShape', `${key}AnyShape`],
303
- ['SchemaShape', `${key}SchemaShape`],
304
- ['MatrixShape', `${key}MatrixShape`],
305
- ['TupleShape', `${key}TupleShape`],
306
- ['DataTypeFragment', `${key}DataTypeFragment`],
307
- ['RecursiveShape', `${key}RecursiveShape`],
308
- ['XMLSerializer', `${key}XMLSerializer`],
309
- ['range', `${key}range`],
310
- ['items', `${key}items`],
311
- ['anyOf', `${key}anyOf`],
312
- ['fileType', `${key}fileType`],
313
- ['number', `${key}number`],
314
- ['integer', `${key}integer`],
315
- ['long', `${key}long`],
316
- ['double', `${key}double`],
317
- ['boolean', `${key}boolean`],
318
- ['float', `${key}float`],
319
- ['nil', `${key}nil`],
320
- ['dateTimeOnly', `${key}dateTimeOnly`],
321
- ['password', `${key}password`],
322
- ['schema', `${key}schema`],
323
- ['xmlSerialization', `${key}xmlSerialization`],
324
- ['xmlName', `${key}xmlName`],
325
- ['xmlAttribute', `${key}xmlAttribute`],
326
- ['xmlWrapped', `${key}xmlWrapped`],
327
- ['xmlNamespace', `${key}xmlNamespace`],
328
- ['xmlPrefix', `${key}xmlPrefix`],
329
- ['readOnly', `${key}readOnly`],
330
- ['writeOnly', `${key}writeOnly`],
331
- ['deprecated', `${key}deprecated`],
332
- ['fixPoint', `${key}fixPoint`],
333
- ['discriminator', `${key}discriminator`],
334
- ['discriminatorValue', `${key}discriminatorValue`],
335
- ['format', `${key}format`],
336
- ['multipleOf', `${key}multipleOf`],
337
- ['uniqueItems', `${key}uniqueItems`],
338
- ].forEach(([property, value]) => {
339
- test(`has value for ${property}`, ({ assert }) => {
340
- // @ts-expect-error Used in testing
341
- const result = ns.aml.vocabularies.shapes[property]
342
- assert.equal(result, value)
343
- })
344
- })
345
- })
346
-
347
- test.group('vocabularies.data namespace', () => {
348
- const key = 'http://a.ml/vocabularies/data#'
349
-
350
- ;[
351
- ['Scalar', `${key}Scalar`],
352
- ['Object', `${key}Object`],
353
- ['Array', `${key}Array`],
354
- ['value', `${key}value`],
355
- ['description', `${key}description`],
356
- ['required', `${key}required`],
357
- ['displayName', `${key}displayName`],
358
- ['minLength', `${key}minLength`],
359
- ['maxLength', `${key}maxLength`],
360
- ['default', `${key}default`],
361
- ['multipleOf', `${key}multipleOf`],
362
- ['minimum', `${key}minimum`],
363
- ['maximum', `${key}maximum`],
364
- ['enum', `${key}enum`],
365
- ['pattern', `${key}pattern`],
366
- ['items', `${key}items`],
367
- ['format', `${key}format`],
368
- ['example', `${key}example`],
369
- ['examples', `${key}examples`],
370
- ].forEach(([property, value]) => {
371
- test(`has value for ${property}`, ({ assert }) => {
372
- // @ts-expect-error Used in testing
373
- const result = ns.aml.vocabularies.data[property]
374
- assert.equal(result, value)
375
- })
376
- })
377
- })
378
-
379
- test.group('vocabularies.docSourceMaps namespace', () => {
380
- const key = 'http://a.ml/vocabularies/document-source-maps#'
381
-
382
- ;[
383
- ['SourceMap', `${key}SourceMap`],
384
- ['sources', `${key}sources`],
385
- ['element', `${key}element`],
386
- ['value', `${key}value`],
387
- ['declaredElement', `${key}declared-element`],
388
- ['trackedElement', `${key}tracked-element`],
389
- ['parsedJsonSchema', `${key}parsed-json-schema`],
390
- ['autoGeneratedName', `${key}auto-generated-name`],
391
- ['lexical', `${key}lexical`],
392
- ['synthesizedField', `${key}synthesized-field`],
393
- ].forEach(([property, value]) => {
394
- test(`has value for ${property}`, ({ assert }) => {
395
- // @ts-expect-error Used in testing
396
- const result = ns.aml.vocabularies.docSourceMaps[property]
397
- assert.equal(result, value)
398
- })
399
- })
400
- })
401
-
402
- test.group('w3.shacl namespace', () => {
403
- const key = 'http://www.w3.org/ns/shacl#'
404
-
405
- ;[
406
- ['Shape', `${key}Shape`],
407
- ['NodeShape', `${key}NodeShape`],
408
- ['SchemaShape', `${key}SchemaShape`],
409
- ['PropertyShape', `${key}PropertyShape`],
410
- ['in', `${key}in`],
411
- ['defaultValue', `${key}defaultValue`],
412
- ['defaultValueStr', `${key}defaultValueStr`],
413
- ['pattern', `${key}pattern`],
414
- ['minInclusive', `${key}minInclusive`],
415
- ['maxInclusive', `${key}maxInclusive`],
416
- ['multipleOf', `${key}multipleOf`],
417
- ['minLength', `${key}minLength`],
418
- ['maxLength', `${key}maxLength`],
419
- ['fileType', `${key}fileType`],
420
- ['and', `${key}and`],
421
- ['property', `${key}property`],
422
- ['name', `${key}name`],
423
- ['raw', `${key}raw`],
424
- ['datatype', `${key}datatype`],
425
- ['minCount', `${key}minCount`],
426
- ['maxCount', `${key}maxCount`],
427
- ['xone', `${key}xone`],
428
- ['not', `${key}not`],
429
- ['or', `${key}or`],
430
- ['closed', `${key}closed`],
431
- ['path', `${key}path`],
432
- ].forEach(([property, value]) => {
433
- test(`has value for ${property}`, ({ assert }) => {
434
- // @ts-expect-error Used in testing
435
- const result = ns.w3.shacl[property]
436
- assert.equal(result, value)
437
- })
438
- })
439
- })
440
-
441
- test.group('w3.xmlSchema namespace', () => {
442
- const key = 'http://www.w3.org/2001/XMLSchema#'
443
-
444
- ;[
445
- ['boolean', `${key}boolean`],
446
- ['string', `${key}string`],
447
- ['number', `${key}number`],
448
- ['integer', `${key}integer`],
449
- ['long', `${key}long`],
450
- ['double', `${key}double`],
451
- ['float', `${key}float`],
452
- ['nil', `${key}nil`],
453
- ['dateTime', `${key}dateTime`],
454
- ['time', `${key}time`],
455
- ['date', `${key}date`],
456
- ['base64Binary', `${key}base64Binary`],
457
- ].forEach(([property, value]) => {
458
- test(`has value for ${property}`, ({ assert }) => {
459
- // @ts-expect-error Used in testing
460
- const result = ns.w3.xmlSchema[property]
461
- assert.equal(result, value)
462
- })
463
- })
464
- })
465
-
466
- test.group('w3.rdfSyntax namespace', () => {
467
- const key = 'http://www.w3.org/1999/02/22-rdf-syntax-ns#'
468
-
469
- ;[
470
- ['member', `${key}member`],
471
- ['Seq', `${key}Seq`],
472
- ].forEach(([property, value]) => {
473
- test(`has value for ${property}`, ({ assert }) => {
474
- // @ts-expect-error Used in testing
475
- const result = ns.w3.rdfSyntax[property]
476
- assert.equal(result, value)
477
- })
478
- })
479
- })
480
-
481
- test.group('w3.rdfSchema namespace', () => {
482
- const key = 'http://www.w3.org/2000/01/rdf-schema#'
483
-
484
- ;[
485
- ['member', `${key}member`],
486
- ['Seq', `${key}Seq`],
487
- ].forEach(([property, value]) => {
488
- test(`has value for ${property}`, ({ assert }) => {
489
- // @ts-expect-error Used in testing
490
- const result = ns.w3.rdfSchema[property]
491
- assert.equal(result, value)
492
- })
493
- })
494
- })
@@ -1,35 +0,0 @@
1
- import { test } from '@japa/runner'
2
- import { ApiSchemaGenerator } from '../../../src/amf/ApiSchemaGenerator.js'
3
- import { IAmfDocument } from '../../../src/amf/definitions/Amf.js'
4
- import { IApiAnyShape } from '../../../src/amf/definitions/Shapes.js'
5
- import { AmfLoader } from './AmfLoader.js'
6
-
7
- test.group('SE-10469', (group) => {
8
- const loader = new AmfLoader()
9
- const jsonMime = 'application/json'
10
- const apiFile = 'SE-10469'
11
-
12
- let model: IAmfDocument
13
-
14
- group.setup(async () => {
15
- model = await loader.getGraph(apiFile)
16
- })
17
-
18
- test('generates example from JSON schema', ({ assert }) => {
19
- const payload = loader.getPayloads(model, '/purina/b2b/supplier/purchaseOrder', 'post')[0]
20
- const anyShape = payload.schema as IApiAnyShape
21
- const result = ApiSchemaGenerator.asExample(anyShape, jsonMime, {
22
- renderExamples: true,
23
- renderOptional: true,
24
- })!
25
- assert.typeOf(result, 'object', 'generates the example')
26
- assert.typeOf(result.renderValue, 'string', 'has the value')
27
-
28
- const data = JSON.parse(result.renderValue as string)
29
- assert.typeOf(data, 'object', 'generates an object')
30
- assert.typeOf(data.purchaseOrder, 'object', 'has the purchaseOrder property')
31
- assert.equal(data.purchaseOrder.actionCode, '', 'has the purchaseOrder.actionCode')
32
- assert.equal(data.purchaseOrder.typeCode, '', 'has the purchaseOrder.typeCode')
33
- assert.typeOf(data.purchaseOrder.purchaseOrderHeader, 'object', 'has the purchaseOrder.purchaseOrderHeader')
34
- })
35
- })
@@ -1,64 +0,0 @@
1
- import { test } from '@japa/runner'
2
- import { ApiSchemaGenerator } from '../../../src/amf/ApiSchemaGenerator.js'
3
- import { IAmfDocument } from '../../../src/amf/definitions/Amf.js'
4
- import { IApiAnyShape } from '../../../src/amf/definitions/Shapes.js'
5
- import { AmfLoader } from './AmfLoader.js'
6
-
7
- test.group('SE-13092', (group) => {
8
- const loader = new AmfLoader()
9
- const xmlMime = 'application/xml'
10
- const apiFile = 'SE-13092'
11
-
12
- let model: IAmfDocument
13
-
14
- group.setup(async () => {
15
- model = await loader.getGraph(apiFile)
16
- })
17
-
18
- test('generates name from data type fragment included into types map', ({ assert }) => {
19
- const payload = loader.getResponsePayloads(model, '/customer', 'post', '200')[0]
20
- const anyShape = payload.schema as IApiAnyShape
21
- const result = ApiSchemaGenerator.asExample(anyShape, xmlMime, {
22
- renderExamples: true,
23
- })!
24
-
25
- assert.typeOf(result, 'object', 'generates the example')
26
- assert.typeOf(result.renderValue, 'string', 'has the value')
27
-
28
- const { renderValue } = result
29
- assert.include(renderValue, '<Person>', 'generates type name (opening tag)')
30
- assert.include(renderValue, '</Person>', 'generates type name (closing tag)')
31
- })
32
-
33
- // This should be incorrect but the AMF model includes name anyway.
34
- // Detailed discussion about this: https://www.mulesoft.org/jira/browse/SE-13092
35
- test('generates name from inline include for data type fragment included into types map', ({ assert }) => {
36
- const payload = loader.getResponsePayloads(model, '/should-be-incorrect', 'post', '200')[0]
37
- const anyShape = payload.schema as IApiAnyShape
38
- const result = ApiSchemaGenerator.asExample(anyShape, xmlMime, {
39
- renderExamples: true,
40
- })!
41
-
42
- assert.typeOf(result, 'object', 'generates the example')
43
- assert.typeOf(result.renderValue, 'string', 'has the value')
44
-
45
- const { renderValue } = result
46
- assert.include(renderValue, '<type>', 'generates type name (opening tag)')
47
- assert.include(renderValue, '</type>', 'generates type name (closing tag)')
48
- })
49
-
50
- test('uses default name for data type not fragment included into types map', ({ assert }) => {
51
- const payload = loader.getResponsePayloads(model, '/incorrect-way', 'post', '200')[0]
52
- const anyShape = payload.schema as IApiAnyShape
53
- const result = ApiSchemaGenerator.asExample(anyShape, xmlMime, {
54
- renderExamples: true,
55
- })!
56
-
57
- assert.typeOf(result, 'object', 'generates the example')
58
- assert.typeOf(result.renderValue, 'string', 'has the value')
59
-
60
- const { renderValue } = result
61
- assert.include(renderValue, '<type>', 'uses type name (opening tag)')
62
- assert.include(renderValue, '</type>', 'uses type name (closing tag)')
63
- })
64
- })
@@ -1,45 +0,0 @@
1
- import { test } from '@japa/runner'
2
- import { ApiSchemaGenerator } from '../../../src/amf/ApiSchemaGenerator.js'
3
- import { IAmfDocument } from '../../../src/amf/definitions/Amf.js'
4
- import { IApiAnyShape } from '../../../src/amf/definitions/Shapes.js'
5
- import { AmfLoader } from './AmfLoader.js'
6
-
7
- test.group('SE-22063', (group) => {
8
- const loader = new AmfLoader()
9
- const xmlMime = 'application/xml'
10
- const apiFile = 'SE-22063'
11
- let model: IAmfDocument
12
-
13
- group.setup(async () => {
14
- model = await loader.getGraph(apiFile)
15
- })
16
-
17
- test('generates xml example using xml name and xml wrap', ({ assert }) => {
18
- const payload = loader.getPayloads(model, '/demo', 'post')[0]
19
-
20
- const anyShape = payload.schema as IApiAnyShape
21
- const result = ApiSchemaGenerator.asExample(anyShape, xmlMime, {
22
- renderExamples: true,
23
- renderOptional: true,
24
- })!
25
-
26
- assert.typeOf(result, 'object', 'generates the example')
27
- assert.typeOf(result.renderValue, 'string', 'has the value')
28
-
29
- assert.equal(
30
- result.renderValue,
31
- '<StockBalance>\n' +
32
- ' <type>site</type>\n' +
33
- ' <item>\n' +
34
- ' <StockLine>\n' +
35
- ' <ssccNumber>P19227</ssccNumber>\n' +
36
- ' <materialReference>CL54B</materialReference>\n' +
37
- ' <variantId>R0029</variantId>\n' +
38
- ' <batch>BA02931</batch>\n' +
39
- ' <quantity>1</quantity>\n' +
40
- ' </StockLine>\n' +
41
- ' </item>\n' +
42
- '</StockBalance>'
43
- )
44
- })
45
- })
@@ -1,43 +0,0 @@
1
- import { test } from '@japa/runner'
2
- import { AmfLoader } from './AmfLoader.js'
3
- import { IApiAnyShape } from '../../../src/amf/definitions/Shapes.js'
4
- import { IAmfDocument } from '../../../src/amf/definitions/Amf.js'
5
- import { ApiSchemaGenerator } from '../../../src/amf/ApiSchemaGenerator.js'
6
-
7
- test.group('RAML examples', (group) => {
8
- const loader = new AmfLoader()
9
- const jsonMime = 'application/json'
10
- const xmlMime = 'application/xml'
11
- const apiFile = 'example-generator-api'
12
- let model: IAmfDocument
13
-
14
- group.setup(async () => {
15
- model = await loader.getGraph(apiFile)
16
- })
17
-
18
- test('generates JSON example for a payload', ({ assert }) => {
19
- const payload = loader.getPayloads(model, '/employees', 'post')[1]
20
- const anyShape = payload.schema as IApiAnyShape
21
- const result = ApiSchemaGenerator.asExample(anyShape, jsonMime, {
22
- renderExamples: true,
23
- renderOptional: true,
24
- })!
25
- const { mediaType, value, renderValue } = result
26
- assert.equal(mediaType, jsonMime, 'mediaType is set')
27
- assert.include(value, 'firstName: Other Pawel', 'value has the raw value')
28
- assert.include(renderValue, '"firstName": "Other Pawel",', 'renderValue has the example value')
29
- })
30
-
31
- test('generates XML example for a payload', ({ assert }) => {
32
- const payload = loader.getPayloads(model, '/employees', 'post')[1]
33
- const anyShape = payload.schema as IApiAnyShape
34
- const result = ApiSchemaGenerator.asExample(anyShape, xmlMime, {
35
- renderExamples: true,
36
- renderOptional: true,
37
- })!
38
- const { mediaType, value, renderValue } = result
39
- assert.equal(mediaType, xmlMime, 'mediaType is set')
40
- assert.include(value, 'firstName: Other Pawel', 'value has the raw value')
41
- assert.include(renderValue, '<firstName>Other Pawel</firstName>', 'renderValue has the example value')
42
- })
43
- })