cruddl 3.3.1 → 3.3.2

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 (331) hide show
  1. package/dist/src/cruddl-version.js +1 -1
  2. package/dist/src/meta-schema/meta-schema.js +19 -17
  3. package/dist/src/meta-schema/meta-schema.js.map +1 -1
  4. package/package.json +1 -1
  5. package/dist/spec/authorization/move-errors-to-output-nodes.spec.d.ts +0 -1
  6. package/dist/spec/authorization/move-errors-to-output-nodes.spec.js +0 -111
  7. package/dist/spec/authorization/move-errors-to-output-nodes.spec.js.map +0 -1
  8. package/dist/spec/authorization/permission-descriptor.spec.d.ts +0 -1
  9. package/dist/spec/authorization/permission-descriptor.spec.js +0 -85
  10. package/dist/spec/authorization/permission-descriptor.spec.js.map +0 -1
  11. package/dist/spec/authorization/permission-profile.spec.d.ts +0 -1
  12. package/dist/spec/authorization/permission-profile.spec.js +0 -110
  13. package/dist/spec/authorization/permission-profile.spec.js.map +0 -1
  14. package/dist/spec/database/arangodb/aql-generator.spec.d.ts +0 -1
  15. package/dist/spec/database/arangodb/aql-generator.spec.js +0 -21
  16. package/dist/spec/database/arangodb/aql-generator.spec.js.map +0 -1
  17. package/dist/spec/database/arangodb/aql.spec.d.ts +0 -1
  18. package/dist/spec/database/arangodb/aql.spec.js +0 -78
  19. package/dist/spec/database/arangodb/aql.spec.js.map +0 -1
  20. package/dist/spec/database/arangodb/arangodb-adapter.spec.d.ts +0 -1
  21. package/dist/spec/database/arangodb/arangodb-adapter.spec.js +0 -192
  22. package/dist/spec/database/arangodb/arangodb-adapter.spec.js.map +0 -1
  23. package/dist/spec/database/arangodb/arangodb-test-utils.d.ts +0 -1
  24. package/dist/spec/database/arangodb/arangodb-test-utils.js +0 -8
  25. package/dist/spec/database/arangodb/arangodb-test-utils.js.map +0 -1
  26. package/dist/spec/database/arangodb/retry.spec.d.ts +0 -1
  27. package/dist/spec/database/arangodb/retry.spec.js +0 -74
  28. package/dist/spec/database/arangodb/retry.spec.js.map +0 -1
  29. package/dist/spec/database/arangodb/schema-migration/arango-search-helper.spec.d.ts +0 -1
  30. package/dist/spec/database/arangodb/schema-migration/arango-search-helper.spec.js +0 -76
  31. package/dist/spec/database/arangodb/schema-migration/arango-search-helper.spec.js.map +0 -1
  32. package/dist/spec/database/arangodb/ttl.spec.d.ts +0 -1
  33. package/dist/spec/database/arangodb/ttl.spec.js +0 -346
  34. package/dist/spec/database/arangodb/ttl.spec.js.map +0 -1
  35. package/dist/spec/database/like-helper.spec.d.ts +0 -1
  36. package/dist/spec/database/like-helper.spec.js +0 -87
  37. package/dist/spec/database/like-helper.spec.js.map +0 -1
  38. package/dist/spec/dev/fast-server.d.ts +0 -4
  39. package/dist/spec/dev/fast-server.js +0 -57
  40. package/dist/spec/dev/fast-server.js.map +0 -1
  41. package/dist/spec/dev/server.d.ts +0 -12
  42. package/dist/spec/dev/server.js +0 -121
  43. package/dist/spec/dev/server.js.map +0 -1
  44. package/dist/spec/dev/start.d.ts +0 -1
  45. package/dist/spec/dev/start.js +0 -10
  46. package/dist/spec/dev/start.js.map +0 -1
  47. package/dist/spec/graphql/query-distiller.spec.d.ts +0 -1
  48. package/dist/spec/graphql/query-distiller.spec.js +0 -220
  49. package/dist/spec/graphql/query-distiller.spec.js.map +0 -1
  50. package/dist/spec/helpers/log4js-logger-provider.d.ts +0 -11
  51. package/dist/spec/helpers/log4js-logger-provider.js +0 -18
  52. package/dist/spec/helpers/log4js-logger-provider.js.map +0 -1
  53. package/dist/spec/init.mocha.d.ts +0 -1
  54. package/dist/spec/init.mocha.js +0 -11
  55. package/dist/spec/init.mocha.js.map +0 -1
  56. package/dist/spec/meta-schema/meta-schema.spec.d.ts +0 -1
  57. package/dist/spec/meta-schema/meta-schema.spec.js +0 -951
  58. package/dist/spec/meta-schema/meta-schema.spec.js.map +0 -1
  59. package/dist/spec/model/create-model.spec.d.ts +0 -1
  60. package/dist/spec/model/create-model.spec.js +0 -158
  61. package/dist/spec/model/create-model.spec.js.map +0 -1
  62. package/dist/spec/model/implementation/billing-validation.spec.d.ts +0 -1
  63. package/dist/spec/model/implementation/billing-validation.spec.js +0 -180
  64. package/dist/spec/model/implementation/billing-validation.spec.js.map +0 -1
  65. package/dist/spec/model/implementation/collect-path.spec.d.ts +0 -1
  66. package/dist/spec/model/implementation/collect-path.spec.js +0 -678
  67. package/dist/spec/model/implementation/collect-path.spec.js.map +0 -1
  68. package/dist/spec/model/implementation/entity-extenion-type.spec.d.ts +0 -1
  69. package/dist/spec/model/implementation/entity-extenion-type.spec.js +0 -71
  70. package/dist/spec/model/implementation/entity-extenion-type.spec.js.map +0 -1
  71. package/dist/spec/model/implementation/field.spec.d.ts +0 -1
  72. package/dist/spec/model/implementation/field.spec.js +0 -648
  73. package/dist/spec/model/implementation/field.spec.js.map +0 -1
  74. package/dist/spec/model/implementation/flex-search-validation.spec.d.ts +0 -1
  75. package/dist/spec/model/implementation/flex-search-validation.spec.js +0 -288
  76. package/dist/spec/model/implementation/flex-search-validation.spec.js.map +0 -1
  77. package/dist/spec/model/implementation/i18n-fields.spec.d.ts +0 -1
  78. package/dist/spec/model/implementation/i18n-fields.spec.js +0 -208
  79. package/dist/spec/model/implementation/i18n-fields.spec.js.map +0 -1
  80. package/dist/spec/model/implementation/i18n-types.spec.d.ts +0 -1
  81. package/dist/spec/model/implementation/i18n-types.spec.js +0 -160
  82. package/dist/spec/model/implementation/i18n-types.spec.js.map +0 -1
  83. package/dist/spec/model/implementation/i18n-validation.spec.d.ts +0 -1
  84. package/dist/spec/model/implementation/i18n-validation.spec.js +0 -210
  85. package/dist/spec/model/implementation/i18n-validation.spec.js.map +0 -1
  86. package/dist/spec/model/implementation/indices.spec.d.ts +0 -1
  87. package/dist/spec/model/implementation/indices.spec.js +0 -96
  88. package/dist/spec/model/implementation/indices.spec.js.map +0 -1
  89. package/dist/spec/model/implementation/model.spec.d.ts +0 -1
  90. package/dist/spec/model/implementation/model.spec.js +0 -101
  91. package/dist/spec/model/implementation/model.spec.js.map +0 -1
  92. package/dist/spec/model/implementation/namespace.spec.d.ts +0 -1
  93. package/dist/spec/model/implementation/namespace.spec.js +0 -231
  94. package/dist/spec/model/implementation/namespace.spec.js.map +0 -1
  95. package/dist/spec/model/implementation/object-type.spec.d.ts +0 -1
  96. package/dist/spec/model/implementation/object-type.spec.js +0 -65
  97. package/dist/spec/model/implementation/object-type.spec.js.map +0 -1
  98. package/dist/spec/model/implementation/relation.spec.d.ts +0 -1
  99. package/dist/spec/model/implementation/relation.spec.js +0 -99
  100. package/dist/spec/model/implementation/relation.spec.js.map +0 -1
  101. package/dist/spec/model/implementation/root-entity-type.spec.d.ts +0 -1
  102. package/dist/spec/model/implementation/root-entity-type.spec.js +0 -470
  103. package/dist/spec/model/implementation/root-entity-type.spec.js.map +0 -1
  104. package/dist/spec/model/implementation/type.spec.d.ts +0 -1
  105. package/dist/spec/model/implementation/type.spec.js +0 -52
  106. package/dist/spec/model/implementation/type.spec.js.map +0 -1
  107. package/dist/spec/model/implementation/validation-utils.d.ts +0 -7
  108. package/dist/spec/model/implementation/validation-utils.js +0 -34
  109. package/dist/spec/model/implementation/validation-utils.js.map +0 -1
  110. package/dist/spec/model/model-spec.helper.d.ts +0 -3
  111. package/dist/spec/model/model-spec.helper.js +0 -35
  112. package/dist/spec/model/model-spec.helper.js.map +0 -1
  113. package/dist/spec/performance/associations.perf.d.ts +0 -3
  114. package/dist/spec/performance/associations.perf.js +0 -78
  115. package/dist/spec/performance/associations.perf.js.map +0 -1
  116. package/dist/spec/performance/count.perf.d.ts +0 -5
  117. package/dist/spec/performance/count.perf.js +0 -52
  118. package/dist/spec/performance/count.perf.js.map +0 -1
  119. package/dist/spec/performance/crud.perf.d.ts +0 -3
  120. package/dist/spec/performance/crud.perf.js +0 -100
  121. package/dist/spec/performance/crud.perf.js.map +0 -1
  122. package/dist/spec/performance/filter.perf.d.ts +0 -3
  123. package/dist/spec/performance/filter.perf.js +0 -32
  124. package/dist/spec/performance/filter.perf.js.map +0 -1
  125. package/dist/spec/performance/index.d.ts +0 -1
  126. package/dist/spec/performance/index.js +0 -21
  127. package/dist/spec/performance/index.js.map +0 -1
  128. package/dist/spec/performance/pagination.perf.d.ts +0 -5
  129. package/dist/spec/performance/pagination.perf.js +0 -50
  130. package/dist/spec/performance/pagination.perf.js.map +0 -1
  131. package/dist/spec/performance/query-pipeline.perf.d.ts +0 -3
  132. package/dist/spec/performance/query-pipeline.perf.js +0 -196
  133. package/dist/spec/performance/query-pipeline.perf.js.map +0 -1
  134. package/dist/spec/performance/references.perf.d.ts +0 -3
  135. package/dist/spec/performance/references.perf.js +0 -62
  136. package/dist/spec/performance/references.perf.js.map +0 -1
  137. package/dist/spec/performance/support/async-bench.d.ts +0 -92
  138. package/dist/spec/performance/support/async-bench.js +0 -237
  139. package/dist/spec/performance/support/async-bench.js.map +0 -1
  140. package/dist/spec/performance/support/helpers.d.ts +0 -28
  141. package/dist/spec/performance/support/helpers.js +0 -130
  142. package/dist/spec/performance/support/helpers.js.map +0 -1
  143. package/dist/spec/performance/support/runner.d.ts +0 -2
  144. package/dist/spec/performance/support/runner.js +0 -72
  145. package/dist/spec/performance/support/runner.js.map +0 -1
  146. package/dist/spec/project/project.spec.d.ts +0 -1
  147. package/dist/spec/project/project.spec.js +0 -72
  148. package/dist/spec/project/project.spec.js.map +0 -1
  149. package/dist/spec/query-tree/utils/simplify-booleans.spec.d.ts +0 -1
  150. package/dist/spec/query-tree/utils/simplify-booleans.spec.js +0 -87
  151. package/dist/spec/query-tree/utils/simplify-booleans.spec.js.map +0 -1
  152. package/dist/spec/regression/drop-test-db.d.ts +0 -1
  153. package/dist/spec/regression/drop-test-db.js +0 -5
  154. package/dist/spec/regression/drop-test-db.js.map +0 -1
  155. package/dist/spec/regression/initialization.d.ts +0 -10
  156. package/dist/spec/regression/initialization.js +0 -148
  157. package/dist/spec/regression/initialization.js.map +0 -1
  158. package/dist/spec/regression/regression-suite.d.ts +0 -28
  159. package/dist/spec/regression/regression-suite.js +0 -228
  160. package/dist/spec/regression/regression-suite.js.map +0 -1
  161. package/dist/spec/regression/regressions.spec.d.ts +0 -1
  162. package/dist/spec/regression/regressions.spec.js +0 -54
  163. package/dist/spec/regression/regressions.spec.js.map +0 -1
  164. package/dist/spec/schema/ast-validation-modules/business-object.spec.d.ts +0 -1
  165. package/dist/spec/schema/ast-validation-modules/business-object.spec.js +0 -27
  166. package/dist/spec/schema/ast-validation-modules/business-object.spec.js.map +0 -1
  167. package/dist/spec/schema/ast-validation-modules/check-directed-relation-edges-validator.spec.d.ts +0 -1
  168. package/dist/spec/schema/ast-validation-modules/check-directed-relation-edges-validator.spec.js +0 -73
  169. package/dist/spec/schema/ast-validation-modules/check-directed-relation-edges-validator.spec.js.map +0 -1
  170. package/dist/spec/schema/ast-validation-modules/collect-validation.spec.d.ts +0 -1
  171. package/dist/spec/schema/ast-validation-modules/collect-validation.spec.js +0 -633
  172. package/dist/spec/schema/ast-validation-modules/collect-validation.spec.js.map +0 -1
  173. package/dist/spec/schema/ast-validation-modules/entity-directive-nesting-validator.spec.d.ts +0 -1
  174. package/dist/spec/schema/ast-validation-modules/entity-directive-nesting-validator.spec.js +0 -94
  175. package/dist/spec/schema/ast-validation-modules/entity-directive-nesting-validator.spec.js.map +0 -1
  176. package/dist/spec/schema/ast-validation-modules/flex-search-commit-interval-msec-validator.spec.d.ts +0 -1
  177. package/dist/spec/schema/ast-validation-modules/flex-search-commit-interval-msec-validator.spec.js +0 -235
  178. package/dist/spec/schema/ast-validation-modules/flex-search-commit-interval-msec-validator.spec.js.map +0 -1
  179. package/dist/spec/schema/ast-validation-modules/helpers.d.ts +0 -10
  180. package/dist/spec/schema/ast-validation-modules/helpers.js +0 -85
  181. package/dist/spec/schema/ast-validation-modules/helpers.js.map +0 -1
  182. package/dist/spec/schema/ast-validation-modules/illegal-enum-values.spec.d.ts +0 -1
  183. package/dist/spec/schema/ast-validation-modules/illegal-enum-values.spec.js +0 -24
  184. package/dist/spec/schema/ast-validation-modules/illegal-enum-values.spec.js.map +0 -1
  185. package/dist/spec/schema/ast-validation-modules/indices-validator.spec.d.ts +0 -1
  186. package/dist/spec/schema/ast-validation-modules/indices-validator.spec.js +0 -117
  187. package/dist/spec/schema/ast-validation-modules/indices-validator.spec.js.map +0 -1
  188. package/dist/spec/schema/ast-validation-modules/key-field-validator.spec.d.ts +0 -1
  189. package/dist/spec/schema/ast-validation-modules/key-field-validator.spec.js +0 -139
  190. package/dist/spec/schema/ast-validation-modules/key-field-validator.spec.js.map +0 -1
  191. package/dist/spec/schema/ast-validation-modules/known-field-directive-validator.spec.d.ts +0 -1
  192. package/dist/spec/schema/ast-validation-modules/known-field-directive-validator.spec.js +0 -27
  193. package/dist/spec/schema/ast-validation-modules/known-field-directive-validator.spec.js.map +0 -1
  194. package/dist/spec/schema/ast-validation-modules/known-object-type-directive-validator.spec.d.ts +0 -1
  195. package/dist/spec/schema/ast-validation-modules/known-object-type-directive-validator.spec.js +0 -31
  196. package/dist/spec/schema/ast-validation-modules/known-object-type-directive-validator.spec.js.map +0 -1
  197. package/dist/spec/schema/ast-validation-modules/no-duplicate-types-validator.spec.d.ts +0 -1
  198. package/dist/spec/schema/ast-validation-modules/no-duplicate-types-validator.spec.js +0 -32
  199. package/dist/spec/schema/ast-validation-modules/no-duplicate-types-validator.spec.js.map +0 -1
  200. package/dist/spec/schema/ast-validation-modules/no-lists-of-lists-validator.spec.d.ts +0 -1
  201. package/dist/spec/schema/ast-validation-modules/no-lists-of-lists-validator.spec.js +0 -27
  202. package/dist/spec/schema/ast-validation-modules/no-lists-of-lists-validator.spec.js.map +0 -1
  203. package/dist/spec/schema/ast-validation-modules/no-lists-of-references-validator.spec.d.ts +0 -1
  204. package/dist/spec/schema/ast-validation-modules/no-lists-of-references-validator.spec.js +0 -27
  205. package/dist/spec/schema/ast-validation-modules/no-lists-of-references-validator.spec.js.map +0 -1
  206. package/dist/spec/schema/ast-validation-modules/no-unused-non-root-object-types-validator.spec.d.ts +0 -1
  207. package/dist/spec/schema/ast-validation-modules/no-unused-non-root-object-types-validator.spec.js +0 -27
  208. package/dist/spec/schema/ast-validation-modules/no-unused-non-root-object-types-validator.spec.js.map +0 -1
  209. package/dist/spec/schema/ast-validation-modules/non-unique-fields-validator.spec.d.ts +0 -1
  210. package/dist/spec/schema/ast-validation-modules/non-unique-fields-validator.spec.js +0 -29
  211. package/dist/spec/schema/ast-validation-modules/non-unique-fields-validator.spec.js.map +0 -1
  212. package/dist/spec/schema/ast-validation-modules/object-directive-count-validator.spec.d.ts +0 -1
  213. package/dist/spec/schema/ast-validation-modules/object-directive-count-validator.spec.js +0 -53
  214. package/dist/spec/schema/ast-validation-modules/object-directive-count-validator.spec.js.map +0 -1
  215. package/dist/spec/schema/ast-validation-modules/only-allowed-types-validator.spec.d.ts +0 -1
  216. package/dist/spec/schema/ast-validation-modules/only-allowed-types-validator.spec.js +0 -30
  217. package/dist/spec/schema/ast-validation-modules/only-allowed-types-validator.spec.js.map +0 -1
  218. package/dist/spec/schema/ast-validation-modules/parent-field.spec.d.ts +0 -1
  219. package/dist/spec/schema/ast-validation-modules/parent-field.spec.js +0 -451
  220. package/dist/spec/schema/ast-validation-modules/parent-field.spec.js.map +0 -1
  221. package/dist/spec/schema/ast-validation-modules/references-only-to-root-entities-with-key-field-validator.spec.d.ts +0 -1
  222. package/dist/spec/schema/ast-validation-modules/references-only-to-root-entities-with-key-field-validator.spec.js +0 -40
  223. package/dist/spec/schema/ast-validation-modules/references-only-to-root-entities-with-key-field-validator.spec.js.map +0 -1
  224. package/dist/spec/schema/ast-validation-modules/references-with-key-field.spec.d.ts +0 -1
  225. package/dist/spec/schema/ast-validation-modules/references-with-key-field.spec.js +0 -74
  226. package/dist/spec/schema/ast-validation-modules/references-with-key-field.spec.js.map +0 -1
  227. package/dist/spec/schema/ast-validation-modules/relations-only-in-root-entities-validator.spec.d.ts +0 -1
  228. package/dist/spec/schema/ast-validation-modules/relations-only-in-root-entities-validator.spec.js +0 -26
  229. package/dist/spec/schema/ast-validation-modules/relations-only-in-root-entities-validator.spec.js.map +0 -1
  230. package/dist/spec/schema/ast-validation-modules/relations-only-to-root-entities-validator.spec.d.ts +0 -1
  231. package/dist/spec/schema/ast-validation-modules/relations-only-to-root-entities-validator.spec.js +0 -26
  232. package/dist/spec/schema/ast-validation-modules/relations-only-to-root-entities-validator.spec.js.map +0 -1
  233. package/dist/spec/schema/ast-validation-modules/relations.spec.d.ts +0 -1
  234. package/dist/spec/schema/ast-validation-modules/relations.spec.js +0 -145
  235. package/dist/spec/schema/ast-validation-modules/relations.spec.js.map +0 -1
  236. package/dist/spec/schema/ast-validation-modules/roles-and-permission-profile-combined.spec.d.ts +0 -1
  237. package/dist/spec/schema/ast-validation-modules/roles-and-permission-profile-combined.spec.js +0 -31
  238. package/dist/spec/schema/ast-validation-modules/roles-and-permission-profile-combined.spec.js.map +0 -1
  239. package/dist/spec/schema/ast-validation-modules/roles-on-non-root-entity-types.spec.d.ts +0 -1
  240. package/dist/spec/schema/ast-validation-modules/roles-on-non-root-entity-types.spec.js +0 -35
  241. package/dist/spec/schema/ast-validation-modules/roles-on-non-root-entity-types.spec.js.map +0 -1
  242. package/dist/spec/schema/ast-validation-modules/root-entities-without-read-roles.spec.d.ts +0 -1
  243. package/dist/spec/schema/ast-validation-modules/root-entities-without-read-roles.spec.js +0 -27
  244. package/dist/spec/schema/ast-validation-modules/root-entities-without-read-roles.spec.js.map +0 -1
  245. package/dist/spec/schema/ast-validation-modules/root-field.spec.d.ts +0 -1
  246. package/dist/spec/schema/ast-validation-modules/root-field.spec.js +0 -405
  247. package/dist/spec/schema/ast-validation-modules/root-field.spec.js.map +0 -1
  248. package/dist/spec/schema/ast-validation-modules/ttl.spec.d.ts +0 -1
  249. package/dist/spec/schema/ast-validation-modules/ttl.spec.js +0 -362
  250. package/dist/spec/schema/ast-validation-modules/ttl.spec.js.map +0 -1
  251. package/dist/spec/schema/ast-validation-modules/undefined-permission-profile.spec.d.ts +0 -1
  252. package/dist/spec/schema/ast-validation-modules/undefined-permission-profile.spec.js +0 -79
  253. package/dist/spec/schema/ast-validation-modules/undefined-permission-profile.spec.js.map +0 -1
  254. package/dist/spec/schema/ast-validation-modules/undefined-types.spec.d.ts +0 -1
  255. package/dist/spec/schema/ast-validation-modules/undefined-types.spec.js +0 -38
  256. package/dist/spec/schema/ast-validation-modules/undefined-types.spec.js.map +0 -1
  257. package/dist/spec/schema/preparation/ast-transformation-modules/add-namespaces-to-types-transformer.spec.d.ts +0 -1
  258. package/dist/spec/schema/preparation/ast-transformation-modules/add-namespaces-to-types-transformer.spec.js +0 -53
  259. package/dist/spec/schema/preparation/ast-transformation-modules/add-namespaces-to-types-transformer.spec.js.map +0 -1
  260. package/dist/spec/schema/scalars/date-time.spec.d.ts +0 -1
  261. package/dist/spec/schema/scalars/date-time.spec.js +0 -74
  262. package/dist/spec/schema/scalars/date-time.spec.js.map +0 -1
  263. package/dist/spec/schema/scalars/fixed-point-decimals.spec.d.ts +0 -1
  264. package/dist/spec/schema/scalars/fixed-point-decimals.spec.js +0 -66
  265. package/dist/spec/schema/scalars/fixed-point-decimals.spec.js.map +0 -1
  266. package/dist/spec/schema/scalars/int53.spec.d.ts +0 -1
  267. package/dist/spec/schema/scalars/int53.spec.js +0 -45
  268. package/dist/spec/schema/scalars/int53.spec.js.map +0 -1
  269. package/dist/spec/schema/scalars/local-date.spec.d.ts +0 -1
  270. package/dist/spec/schema/scalars/local-date.spec.js +0 -30
  271. package/dist/spec/schema/scalars/local-date.spec.js.map +0 -1
  272. package/dist/spec/schema/scalars/local-time.spec.d.ts +0 -1
  273. package/dist/spec/schema/scalars/local-time.spec.js +0 -64
  274. package/dist/spec/schema/scalars/local-time.spec.js.map +0 -1
  275. package/dist/spec/schema/scalars/offset-date-time.spec.d.ts +0 -1
  276. package/dist/spec/schema/scalars/offset-date-time.spec.js +0 -82
  277. package/dist/spec/schema/scalars/offset-date-time.spec.js.map +0 -1
  278. package/dist/spec/schema/scalars/string-map.spec.d.ts +0 -1
  279. package/dist/spec/schema/scalars/string-map.spec.js +0 -230
  280. package/dist/spec/schema/scalars/string-map.spec.js.map +0 -1
  281. package/dist/spec/schema/schema-builder.spec.d.ts +0 -1
  282. package/dist/spec/schema/schema-builder.spec.js +0 -105
  283. package/dist/spec/schema/schema-builder.spec.js.map +0 -1
  284. package/dist/spec/schema/source-validation-modules/check-graphql-syntax.spec.d.ts +0 -1
  285. package/dist/spec/schema/source-validation-modules/check-graphql-syntax.spec.js +0 -30
  286. package/dist/spec/schema/source-validation-modules/check-graphql-syntax.spec.js.map +0 -1
  287. package/dist/spec/schema/source-validation-modules/check-json-syntax.spec.d.ts +0 -1
  288. package/dist/spec/schema/source-validation-modules/check-json-syntax.spec.js +0 -36
  289. package/dist/spec/schema/source-validation-modules/check-json-syntax.spec.js.map +0 -1
  290. package/dist/spec/schema/source-validation-modules/check-yaml-syntax.spec.d.ts +0 -1
  291. package/dist/spec/schema/source-validation-modules/check-yaml-syntax.spec.js +0 -30
  292. package/dist/spec/schema/source-validation-modules/check-yaml-syntax.spec.js.map +0 -1
  293. package/dist/spec/schema/source-validation-modules/graphql-rules.spec.d.ts +0 -1
  294. package/dist/spec/schema/source-validation-modules/graphql-rules.spec.js +0 -89
  295. package/dist/spec/schema/source-validation-modules/graphql-rules.spec.js.map +0 -1
  296. package/dist/spec/schema/source-validation-modules/permission-profile-validator.spec.d.ts +0 -1
  297. package/dist/spec/schema/source-validation-modules/permission-profile-validator.spec.js +0 -99
  298. package/dist/spec/schema/source-validation-modules/permission-profile-validator.spec.js.map +0 -1
  299. package/dist/spec/schema/source-validation-modules/sidecar-schema.spec.d.ts +0 -1
  300. package/dist/spec/schema/source-validation-modules/sidecar-schema.spec.js +0 -145
  301. package/dist/spec/schema/source-validation-modules/sidecar-schema.spec.js.map +0 -1
  302. package/dist/spec/schema/source-validation-modules/source-validation-helper.d.ts +0 -3
  303. package/dist/spec/schema/source-validation-modules/source-validation-helper.js +0 -12
  304. package/dist/spec/schema/source-validation-modules/source-validation-helper.js.map +0 -1
  305. package/dist/spec/schema/source-validation-modules/yaml-parser.spec.d.ts +0 -1
  306. package/dist/spec/schema/source-validation-modules/yaml-parser.spec.js +0 -87
  307. package/dist/spec/schema/source-validation-modules/yaml-parser.spec.js.map +0 -1
  308. package/dist/spec/schema-generation/create-input-type-generator.spec.d.ts +0 -1
  309. package/dist/spec/schema-generation/create-input-type-generator.spec.js +0 -518
  310. package/dist/spec/schema-generation/create-input-type-generator.spec.js.map +0 -1
  311. package/dist/spec/schema-generation/createdat-updatedat-modification.spec.d.ts +0 -1
  312. package/dist/spec/schema-generation/createdat-updatedat-modification.spec.js +0 -160
  313. package/dist/spec/schema-generation/createdat-updatedat-modification.spec.js.map +0 -1
  314. package/dist/spec/schema-generation/enum-type-generator.spec.d.ts +0 -1
  315. package/dist/spec/schema-generation/enum-type-generator.spec.js +0 -21
  316. package/dist/spec/schema-generation/enum-type-generator.spec.js.map +0 -1
  317. package/dist/spec/schema-generation/memorize-decorator.spec.d.ts +0 -1
  318. package/dist/spec/schema-generation/memorize-decorator.spec.js +0 -39
  319. package/dist/spec/schema-generation/memorize-decorator.spec.js.map +0 -1
  320. package/dist/spec/schema-generation/order-by-enum-generator.spec.d.ts +0 -1
  321. package/dist/spec/schema-generation/order-by-enum-generator.spec.js +0 -188
  322. package/dist/spec/schema-generation/order-by-enum-generator.spec.js.map +0 -1
  323. package/dist/spec/utils/group-by-equivalence.spec.d.ts +0 -1
  324. package/dist/spec/utils/group-by-equivalence.spec.js +0 -11
  325. package/dist/spec/utils/group-by-equivalence.spec.js.map +0 -1
  326. package/dist/spec/utils/utils.spec.d.ts +0 -1
  327. package/dist/spec/utils/utils.spec.js +0 -24
  328. package/dist/spec/utils/utils.spec.js.map +0 -1
  329. package/dist/spec/utils/visitor.spec.d.ts +0 -1
  330. package/dist/spec/utils/visitor.spec.js +0 -119
  331. package/dist/spec/utils/visitor.spec.js.map +0 -1
@@ -1,160 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const chai_1 = require("chai");
4
- const model_1 = require("../../../src/model");
5
- const FULLY = 'fully';
6
- const PARTIALLY = 'partially';
7
- const NAMESPACED = 'namespaced';
8
- const i18n = [
9
- {
10
- language: FULLY,
11
- namespacePath: [],
12
- types: {
13
- A: {
14
- label: 'A_FULLY_LABEL',
15
- labelPlural: 'A_FULLY_LABEL_PLURAL',
16
- hint: 'A_FULLY_HINT',
17
- },
18
- B: {
19
- label: 'B_FULLY_LABEL',
20
- labelPlural: 'B_FULLY_LABEL_PLURAL',
21
- hint: 'B_FULLY_HINT',
22
- },
23
- // C is actually located in 'namespace' but translated in root here
24
- C: {
25
- label: 'C_FULLY_LABEL',
26
- labelPlural: 'C_FULLY_LABEL_PLURAL',
27
- hint: 'C_FULLY_HINT',
28
- },
29
- },
30
- },
31
- {
32
- language: PARTIALLY,
33
- namespacePath: [],
34
- types: {
35
- A: {
36
- label: 'A_PARTIALLY_LABEL',
37
- },
38
- // B missing
39
- // C is actually located in 'namespace' but translated in root here
40
- C: {
41
- label: 'C_PARTIALLY_LABEL',
42
- },
43
- },
44
- },
45
- {
46
- language: NAMESPACED,
47
- namespacePath: ['namespace'],
48
- types: {
49
- // A is not namespaced in model, this localization must never be used
50
- A: {
51
- label: 'A_NAMESPACED_LABEL',
52
- labelPlural: 'A_NAMESPACED_LABEL_PLURAL',
53
- hint: 'A_NAMESPACED_HINT',
54
- },
55
- C: {
56
- label: 'C_NAMESPACED_LABEL',
57
- labelPlural: 'C_NAMESPACED_LABEL_PLURAL',
58
- hint: 'C_NAMESPACED_HINT',
59
- },
60
- },
61
- },
62
- ];
63
- const model = new model_1.Model({
64
- types: [
65
- {
66
- kind: model_1.TypeKind.ROOT_ENTITY,
67
- name: 'A',
68
- fields: [
69
- { name: 'field1', typeName: 'String' },
70
- { name: 'field2', typeName: 'String' },
71
- { name: 'field3', typeName: 'String' },
72
- ],
73
- },
74
- {
75
- kind: model_1.TypeKind.ROOT_ENTITY,
76
- name: 'B',
77
- fields: [
78
- { name: 'field1', typeName: 'String' },
79
- { name: 'field2', typeName: 'String' },
80
- { name: 'field3', typeName: 'String' },
81
- ],
82
- },
83
- {
84
- kind: model_1.TypeKind.ROOT_ENTITY,
85
- name: 'C',
86
- namespacePath: ['namespace'],
87
- fields: [
88
- { name: 'field1', typeName: 'String' },
89
- { name: 'field2', typeName: 'String' },
90
- { name: 'field3', typeName: 'String' },
91
- ],
92
- },
93
- ],
94
- i18n,
95
- });
96
- describe('I18n type localization', () => {
97
- it('provides localization for a fully translated type', () => {
98
- const localization = model.getRootEntityTypeOrThrow('A').getLocalization([FULLY]);
99
- (0, chai_1.expect)(localization.label).to.equal('A_FULLY_LABEL');
100
- (0, chai_1.expect)(localization.labelPlural).to.equal('A_FULLY_LABEL_PLURAL');
101
- (0, chai_1.expect)(localization.hint).to.equal('A_FULLY_HINT');
102
- });
103
- it('prefers languages in their given order', () => {
104
- const localization = model
105
- .getRootEntityTypeOrThrow('A')
106
- .getLocalization([FULLY, PARTIALLY]);
107
- (0, chai_1.expect)(localization.label).to.equal('A_FULLY_LABEL');
108
- (0, chai_1.expect)(localization.labelPlural).to.equal('A_FULLY_LABEL_PLURAL');
109
- (0, chai_1.expect)(localization.hint).to.equal('A_FULLY_HINT');
110
- });
111
- it('provides partial localization for a partially translated type', () => {
112
- const localization = model.getRootEntityTypeOrThrow('A').getLocalization([PARTIALLY]);
113
- (0, chai_1.expect)(localization.label).to.equal('A_PARTIALLY_LABEL');
114
- (0, chai_1.expect)(localization.labelPlural).to.be.undefined;
115
- (0, chai_1.expect)(localization.hint).to.be.undefined;
116
- });
117
- it('falls back to a less preferred language for missing localization property', () => {
118
- const localization = model
119
- .getRootEntityTypeOrThrow('A')
120
- .getLocalization([PARTIALLY, FULLY]);
121
- (0, chai_1.expect)(localization.label).to.equal('A_PARTIALLY_LABEL');
122
- (0, chai_1.expect)(localization.labelPlural).to.equal('A_FULLY_LABEL_PLURAL');
123
- (0, chai_1.expect)(localization.hint).to.equal('A_FULLY_HINT');
124
- });
125
- it('falls back to a less preferred language for missing type localization', () => {
126
- const localization = model
127
- .getRootEntityTypeOrThrow('B')
128
- .getLocalization([PARTIALLY, FULLY]);
129
- (0, chai_1.expect)(localization.label).to.equal('B_FULLY_LABEL');
130
- (0, chai_1.expect)(localization.labelPlural).to.equal('B_FULLY_LABEL_PLURAL');
131
- (0, chai_1.expect)(localization.hint).to.equal('B_FULLY_HINT');
132
- });
133
- it('finds localization within namespaces', () => {
134
- const localization = model.getRootEntityTypeOrThrow('C').getLocalization([NAMESPACED]);
135
- (0, chai_1.expect)(localization.label).to.equal('C_NAMESPACED_LABEL');
136
- (0, chai_1.expect)(localization.labelPlural).to.equal('C_NAMESPACED_LABEL_PLURAL');
137
- (0, chai_1.expect)(localization.hint).to.equal('C_NAMESPACED_HINT');
138
- });
139
- it('travels up namespaces to find more info', () => {
140
- const localization = model.getRootEntityTypeOrThrow('C').getLocalization([FULLY]);
141
- (0, chai_1.expect)(localization.label).to.equal('C_FULLY_LABEL');
142
- (0, chai_1.expect)(localization.labelPlural).to.equal('C_FULLY_LABEL_PLURAL');
143
- (0, chai_1.expect)(localization.hint).to.equal('C_FULLY_HINT');
144
- });
145
- it('never travels down namespaces to find more info', () => {
146
- const localization = model.getRootEntityTypeOrThrow('A').getLocalization([NAMESPACED]);
147
- (0, chai_1.expect)(localization.label).to.be.undefined;
148
- (0, chai_1.expect)(localization.labelPlural).to.be.undefined;
149
- (0, chai_1.expect)(localization.hint).to.be.undefined;
150
- });
151
- it('prefers a super namespace over fallback language', () => {
152
- const localization = model
153
- .getRootEntityTypeOrThrow('C')
154
- .getLocalization([FULLY, NAMESPACED]);
155
- (0, chai_1.expect)(localization.label).to.equal('C_FULLY_LABEL');
156
- (0, chai_1.expect)(localization.labelPlural).to.equal('C_FULLY_LABEL_PLURAL');
157
- (0, chai_1.expect)(localization.hint).to.equal('C_FULLY_HINT');
158
- });
159
- });
160
- //# sourceMappingURL=i18n-types.spec.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"i18n-types.spec.js","sourceRoot":"","sources":["../../../../spec/model/implementation/i18n-types.spec.ts"],"names":[],"mappings":"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"}
@@ -1,210 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const chai_1 = require("chai");
4
- const graphql_1 = require("graphql");
5
- const model_1 = require("../../../src/model");
6
- const project_1 = require("../../../src/project/project");
7
- const ast_validator_1 = require("../../../src/schema/preparation/ast-validator");
8
- const schema_builder_1 = require("../../../src/schema/schema-builder");
9
- const permissionProfiles = `{
10
- "permissionProfiles": {
11
- "default": {
12
- "permissions": [{
13
- "access": "readWrite",
14
- "roles": ["allusers"]
15
- }]
16
- }
17
- }
18
- }`;
19
- const graphql = `
20
- enum Importance {LOW, MEDIUM, HIGH}
21
-
22
- "A heroic mission"
23
- type Mission @childEntity {
24
- date: DateTime
25
- title: String
26
- importance: Importance
27
- }
28
-
29
- "A special skill of a superhero"
30
- type Skill @valueObject {
31
- name: String
32
- description: String
33
- "A value between 0 and 11"
34
- strength: Float
35
- skills: [Skill]
36
- }
37
- `;
38
- const i18n1 = `
39
- i18n:
40
- en:
41
- types:
42
- Skill:
43
- label: Skill
44
- labelPlural: Skills
45
- hint: Something you are good at.
46
- fields:
47
- description:
48
- label: Description
49
- hint: A more detailed description.
50
- fields:
51
- strength:
52
- label: Strength
53
- hint: How established something is.`;
54
- describe('I18n validation', () => {
55
- it('reports no warnings and errors for a valid model', () => {
56
- const validationContext = new model_1.ValidationContext();
57
- const parsedProject = (0, schema_builder_1.parseProject)(new project_1.Project([
58
- new graphql_1.Source(permissionProfiles, 'perm.json'),
59
- new graphql_1.Source(graphql, 'graphql.graphql'),
60
- new graphql_1.Source(i18n1, 'i18n.yaml'),
61
- ]), new model_1.ValidationContext());
62
- const model = (0, model_1.createModel)(parsedProject);
63
- model.i18n.validate(validationContext);
64
- (0, chai_1.expect)(validationContext.asResult().hasMessages()).is.false;
65
- });
66
- it('reports double definitions of fields', () => {
67
- const validationContext = new model_1.ValidationContext();
68
- const parsedProject = (0, schema_builder_1.parseProject)(new project_1.Project([
69
- new graphql_1.Source(permissionProfiles, 'perm.json'),
70
- new graphql_1.Source(graphql, 'graphql.graphql'),
71
- new graphql_1.Source(i18n1, 'i18n.yaml'),
72
- new graphql_1.Source(i18n1, 'i18n.yaml'),
73
- ]), new model_1.ValidationContext());
74
- const model = (0, model_1.createModel)(parsedProject);
75
- model.i18n.validate(validationContext);
76
- (0, chai_1.expect)(validationContext.asResult().hasMessages()).is.true;
77
- (0, chai_1.expect)(validationContext.asResult().hasErrors()).is.true;
78
- });
79
- it('reports wrong usage of fields on non-object-types', () => {
80
- const wrongBody = `
81
- i18n:
82
- en:
83
- types:
84
- Importance:
85
- fields:
86
- LOW: low
87
- `;
88
- const validationContext = new model_1.ValidationContext();
89
- const parsedProject = (0, schema_builder_1.parseProject)(new project_1.Project([
90
- new graphql_1.Source(permissionProfiles, 'perm.json'),
91
- new graphql_1.Source(graphql, 'graphql.graphql'),
92
- new graphql_1.Source(i18n1, 'i18n.yaml'),
93
- new graphql_1.Source(wrongBody, 'i18n2.yaml'),
94
- ]), new model_1.ValidationContext());
95
- const model = (0, model_1.createModel)(parsedProject);
96
- model.i18n.validate(validationContext);
97
- (0, chai_1.expect)(validationContext.asResult().hasMessages()).is.true;
98
- (0, chai_1.expect)(validationContext.asResult().getErrors().length).to.eq(1);
99
- (0, chai_1.expect)(validationContext.asResult().getErrors()[0].message).to.contain('The type "Importance" is a non-object-type.');
100
- });
101
- it('reports wrong usage of values on object-types', () => {
102
- const wrongBody = `
103
- i18n:
104
- en:
105
- types:
106
- Skill:
107
- values:
108
- name: The name of the skill.
109
- `;
110
- const validationContext = new model_1.ValidationContext();
111
- const parsedProject = (0, schema_builder_1.parseProject)(new project_1.Project([
112
- new graphql_1.Source(permissionProfiles, 'perm.json'),
113
- new graphql_1.Source(graphql, 'graphql.graphql'),
114
- new graphql_1.Source(i18n1, 'i18n.yaml'),
115
- new graphql_1.Source(wrongBody, 'i18n2.yaml'),
116
- ]), new model_1.ValidationContext());
117
- const model = (0, model_1.createModel)(parsedProject);
118
- model.i18n.validate(validationContext);
119
- (0, chai_1.expect)(validationContext.asResult().hasMessages()).is.true;
120
- (0, chai_1.expect)(validationContext.asResult().getErrors().length).to.eq(1);
121
- (0, chai_1.expect)(validationContext.asResult().getErrors()[0].message).to.contain('The type "Skill" is not an enum type. It does not have "values" attribute. Did you mean to use "fields" instead?');
122
- });
123
- it('reports translations for non existing fields', () => {
124
- const wrongBody = `
125
- i18n:
126
- en:
127
- types:
128
- Skill:
129
- fields:
130
- foo: Some non-existing field.
131
- `;
132
- const validationContext = new model_1.ValidationContext();
133
- const parsedProject = (0, schema_builder_1.parseProject)(new project_1.Project([
134
- new graphql_1.Source(permissionProfiles, 'perm.json'),
135
- new graphql_1.Source(graphql, 'graphql.graphql'),
136
- new graphql_1.Source(wrongBody, 'i18n2.yaml'),
137
- ]), new model_1.ValidationContext());
138
- const model = (0, model_1.createModel)(parsedProject);
139
- model.i18n.validate(validationContext);
140
- (0, chai_1.expect)(validationContext.asResult().hasMessages()).is.true;
141
- (0, chai_1.expect)(validationContext.asResult().hasErrors()).is.false;
142
- (0, chai_1.expect)(validationContext.asResult().getWarnings().length).to.eq(1);
143
- (0, chai_1.expect)(validationContext.asResult().getWarnings()[0].message).to.contain('The type "Skill" has no field "foo". This might be a spelling error.');
144
- });
145
- it('reports translations for non existing values', () => {
146
- const wrongBody = `
147
- i18n:
148
- en:
149
- types:
150
- Importance:
151
- values:
152
- foo: Some non-existing field.
153
- `;
154
- const validationContext = new model_1.ValidationContext();
155
- const parsedProject = (0, schema_builder_1.parseProject)(new project_1.Project([
156
- new graphql_1.Source(permissionProfiles, 'perm.json'),
157
- new graphql_1.Source(graphql, 'graphql.graphql'),
158
- new graphql_1.Source(wrongBody, 'i18n2.yaml'),
159
- ]), new model_1.ValidationContext());
160
- const model = (0, model_1.createModel)(parsedProject);
161
- model.i18n.validate(validationContext);
162
- (0, chai_1.expect)(validationContext.asResult().hasMessages()).is.true;
163
- (0, chai_1.expect)(validationContext.asResult().hasErrors()).is.false;
164
- (0, chai_1.expect)(validationContext.asResult().getWarnings().length).to.eq(1);
165
- (0, chai_1.expect)(validationContext.asResult().getWarnings()[0].message).to.contain('The enum type "Importance" has no value "foo". This might be a spelling error.');
166
- });
167
- it('reports translations for non existing types as warnings', () => {
168
- const wrongBody = `
169
- i18n:
170
- en:
171
- types:
172
- Foo:
173
- label: Test
174
- `;
175
- const validationContext = new model_1.ValidationContext();
176
- const parsedProject = (0, schema_builder_1.parseProject)(new project_1.Project([
177
- new graphql_1.Source(permissionProfiles, 'perm.json'),
178
- new graphql_1.Source(graphql, 'graphql.graphql'),
179
- new graphql_1.Source(wrongBody, 'i18n2.yaml'),
180
- ]), new model_1.ValidationContext());
181
- const model = (0, model_1.createModel)(parsedProject);
182
- model.i18n.validate(validationContext);
183
- (0, chai_1.expect)(validationContext.asResult().hasMessages()).is.true;
184
- (0, chai_1.expect)(validationContext.asResult().hasErrors()).is.false;
185
- (0, chai_1.expect)(validationContext.asResult().getWarnings().length).to.eq(1);
186
- (0, chai_1.expect)(validationContext.asResult().getWarnings()[0].message).to.contain('There is no type "Foo" in the model specification. This might be a spelling error.');
187
- });
188
- it('reports schema-violations of i18n files', () => {
189
- const wrongBody = `
190
- i18n:
191
- en:
192
- typess:
193
- Skill:
194
- fields:
195
- name: The name of the skill.
196
- `;
197
- const validationContext = new model_1.ValidationContext();
198
- const parsedProject = (0, schema_builder_1.parseProject)(new project_1.Project([
199
- new graphql_1.Source(permissionProfiles, 'perm.json'),
200
- new graphql_1.Source(graphql, 'graphql.graphql'),
201
- new graphql_1.Source(i18n1, 'i18n.yaml'),
202
- new graphql_1.Source(wrongBody, 'i18n2.yaml'),
203
- ]), validationContext);
204
- parsedProject.sources.forEach((s) => validationContext.addMessage(...(0, ast_validator_1.validateParsedProjectSource)(s).messages));
205
- (0, chai_1.expect)(validationContext.asResult().hasMessages()).is.true;
206
- (0, chai_1.expect)(validationContext.asResult().getErrors().length).to.eq(1);
207
- (0, chai_1.expect)(validationContext.asResult().messages[0].location).to.not.be.undefined;
208
- });
209
- });
210
- //# sourceMappingURL=i18n-validation.spec.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"i18n-validation.spec.js","sourceRoot":"","sources":["../../../../spec/model/implementation/i18n-validation.spec.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- export {};
@@ -1,96 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const model_1 = require("../../../src/model");
4
- const chai_1 = require("chai");
5
- describe('IndexField', () => {
6
- const model = new model_1.Model({
7
- types: [
8
- {
9
- name: 'Address',
10
- kind: model_1.TypeKind.VALUE_OBJECT,
11
- fields: [
12
- {
13
- name: 'name',
14
- typeName: 'String',
15
- },
16
- {
17
- name: 'addressLines',
18
- typeName: 'String',
19
- isList: true,
20
- },
21
- ],
22
- },
23
- {
24
- name: 'Item',
25
- kind: model_1.TypeKind.CHILD_ENTITY,
26
- fields: [
27
- {
28
- name: 'itemNumber',
29
- typeName: 'String',
30
- },
31
- ],
32
- },
33
- {
34
- name: 'Shipment',
35
- kind: model_1.TypeKind.ROOT_ENTITY,
36
- fields: [
37
- {
38
- name: 'shipmentNumber',
39
- typeName: 'String',
40
- },
41
- ],
42
- },
43
- ],
44
- });
45
- const deliveryType = new model_1.RootEntityType({
46
- name: 'Delivery',
47
- kind: model_1.TypeKind.ROOT_ENTITY,
48
- fields: [
49
- {
50
- name: 'deliveryNumber',
51
- typeName: 'String',
52
- },
53
- {
54
- name: 'consignee',
55
- typeName: 'Address',
56
- },
57
- {
58
- name: 'items',
59
- typeName: 'Item',
60
- isList: true,
61
- },
62
- {
63
- name: 'shipment',
64
- typeName: 'Shipment',
65
- isRelation: true,
66
- },
67
- ],
68
- }, model);
69
- describe('field', () => {
70
- it('resolves direct fields', () => {
71
- const indexField = new model_1.IndexField('deliveryNumber', deliveryType);
72
- (0, chai_1.expect)(indexField.field).to.equal(deliveryType.getField('deliveryNumber'));
73
- });
74
- it('resolves value object fields', () => {
75
- const indexField = new model_1.IndexField('consignee.name', deliveryType);
76
- (0, chai_1.expect)(indexField.field).to.equal(model.getValueObjectTypeOrThrow('Address').getField('name'));
77
- });
78
- it('resolves child entity fields', () => {
79
- const indexField = new model_1.IndexField('items.itemNumber', deliveryType);
80
- (0, chai_1.expect)(indexField.field).to.equal(model.getChildEntityTypeOrThrow('Item').getField('itemNumber'));
81
- });
82
- it('does not resolve missing fields', () => {
83
- const indexField = new model_1.IndexField('undefined', deliveryType);
84
- (0, chai_1.expect)(indexField.field).to.be.undefined;
85
- });
86
- it('does not resolve non-scalar leaves', () => {
87
- const indexField = new model_1.IndexField('items', deliveryType);
88
- (0, chai_1.expect)(indexField.field).to.be.undefined;
89
- });
90
- it('does traverse across root entity boundaries', () => {
91
- const indexField = new model_1.IndexField('shipment.shipmentNumber', deliveryType);
92
- (0, chai_1.expect)(indexField.field).to.be.undefined;
93
- });
94
- });
95
- });
96
- //# sourceMappingURL=indices.spec.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"indices.spec.js","sourceRoot":"","sources":["../../../../spec/model/implementation/indices.spec.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- export {};
@@ -1,101 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const chai_1 = require("chai");
4
- const model_1 = require("../../../src/model");
5
- const validation_utils_1 = require("./validation-utils");
6
- describe('Model', () => {
7
- const permissionProfiles = [
8
- {
9
- profiles: {
10
- default: {
11
- permissions: [
12
- {
13
- access: 'read',
14
- roles: ['admin'],
15
- },
16
- ],
17
- },
18
- },
19
- },
20
- ];
21
- it('accepts simple model', () => {
22
- const model = new model_1.Model({
23
- types: [
24
- {
25
- name: 'Delivery',
26
- kind: model_1.TypeKind.ROOT_ENTITY,
27
- fields: [
28
- {
29
- name: 'deliveryNumber',
30
- typeName: 'String',
31
- },
32
- ],
33
- },
34
- {
35
- name: 'Shipment',
36
- kind: model_1.TypeKind.ROOT_ENTITY,
37
- fields: [
38
- {
39
- name: 'shipmentNumber',
40
- typeName: 'String',
41
- },
42
- ],
43
- },
44
- ],
45
- permissionProfiles,
46
- });
47
- (0, validation_utils_1.expectToBeValid)(model);
48
- });
49
- it('rejects model with duplicate type names', () => {
50
- const model = new model_1.Model({
51
- types: [
52
- {
53
- name: 'Delivery',
54
- kind: model_1.TypeKind.ROOT_ENTITY,
55
- fields: [
56
- {
57
- name: 'deliveryNumber',
58
- typeName: 'String',
59
- },
60
- ],
61
- },
62
- {
63
- name: 'Delivery',
64
- kind: model_1.TypeKind.ROOT_ENTITY,
65
- fields: [
66
- {
67
- name: 'deliveryNumber',
68
- typeName: 'String',
69
- },
70
- ],
71
- },
72
- ],
73
- permissionProfiles,
74
- });
75
- const result = (0, validation_utils_1.validate)(model);
76
- (0, chai_1.expect)(result.messages.length).to.equal(2);
77
- for (const message of result.messages) {
78
- (0, chai_1.expect)(message.severity).to.equal(model_1.Severity.Error);
79
- (0, chai_1.expect)(message.message).to.equal(`Duplicate type name: "Delivery".`);
80
- }
81
- });
82
- it('rejects model with reserved type names', () => {
83
- const model = new model_1.Model({
84
- types: [
85
- {
86
- name: 'Int',
87
- kind: model_1.TypeKind.ROOT_ENTITY,
88
- fields: [
89
- {
90
- name: 'deliveryNumber',
91
- typeName: 'String',
92
- },
93
- ],
94
- },
95
- ],
96
- permissionProfiles,
97
- });
98
- (0, validation_utils_1.expectSingleErrorToInclude)(model, `Type name "Int" is reserved by a built-in type.`);
99
- });
100
- });
101
- //# sourceMappingURL=model.spec.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"model.spec.js","sourceRoot":"","sources":["../../../../spec/model/implementation/model.spec.ts"],"names":[],"mappings":";;AAAA,+BAA8B;AAC9B,8CAK4B;AAC5B,yDAA2F;AAE3F,QAAQ,CAAC,OAAO,EAAE,GAAG,EAAE;IACnB,MAAM,kBAAkB,GAAwD;QAC5E;YACI,QAAQ,EAAE;gBACN,OAAO,EAAE;oBACL,WAAW,EAAE;wBACT;4BACI,MAAM,EAAE,MAAM;4BACd,KAAK,EAAE,CAAC,OAAO,CAAC;yBACnB;qBACJ;iBACJ;aACJ;SACJ;KACJ,CAAC;IAEF,EAAE,CAAC,sBAAsB,EAAE,GAAG,EAAE;QAC5B,MAAM,KAAK,GAAG,IAAI,aAAK,CAAC;YACpB,KAAK,EAAE;gBACH;oBACI,IAAI,EAAE,UAAU;oBAChB,IAAI,EAAE,gBAAQ,CAAC,WAAW;oBAC1B,MAAM,EAAE;wBACJ;4BACI,IAAI,EAAE,gBAAgB;4BACtB,QAAQ,EAAE,QAAQ;yBACrB;qBACJ;iBACJ;gBACD;oBACI,IAAI,EAAE,UAAU;oBAChB,IAAI,EAAE,gBAAQ,CAAC,WAAW;oBAC1B,MAAM,EAAE;wBACJ;4BACI,IAAI,EAAE,gBAAgB;4BACtB,QAAQ,EAAE,QAAQ;yBACrB;qBACJ;iBACJ;aACJ;YACD,kBAAkB;SACrB,CAAC,CAAC;QAEH,IAAA,kCAAe,EAAC,KAAK,CAAC,CAAC;IAC3B,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,yCAAyC,EAAE,GAAG,EAAE;QAC/C,MAAM,KAAK,GAAG,IAAI,aAAK,CAAC;YACpB,KAAK,EAAE;gBACH;oBACI,IAAI,EAAE,UAAU;oBAChB,IAAI,EAAE,gBAAQ,CAAC,WAAW;oBAC1B,MAAM,EAAE;wBACJ;4BACI,IAAI,EAAE,gBAAgB;4BACtB,QAAQ,EAAE,QAAQ;yBACrB;qBACJ;iBACJ;gBACD;oBACI,IAAI,EAAE,UAAU;oBAChB,IAAI,EAAE,gBAAQ,CAAC,WAAW;oBAC1B,MAAM,EAAE;wBACJ;4BACI,IAAI,EAAE,gBAAgB;4BACtB,QAAQ,EAAE,QAAQ;yBACrB;qBACJ;iBACJ;aACJ;YACD,kBAAkB;SACrB,CAAC,CAAC;QAEH,MAAM,MAAM,GAAG,IAAA,2BAAQ,EAAC,KAAK,CAAC,CAAC;QAC/B,IAAA,aAAM,EAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAC3C,KAAK,MAAM,OAAO,IAAI,MAAM,CAAC,QAAQ,EAAE;YACnC,IAAA,aAAM,EAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,gBAAQ,CAAC,KAAK,CAAC,CAAC;YAClD,IAAA,aAAM,EAAC,OAAO,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,kCAAkC,CAAC,CAAC;SACxE;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,wCAAwC,EAAE,GAAG,EAAE;QAC9C,MAAM,KAAK,GAAG,IAAI,aAAK,CAAC;YACpB,KAAK,EAAE;gBACH;oBACI,IAAI,EAAE,KAAK;oBACX,IAAI,EAAE,gBAAQ,CAAC,WAAW;oBAC1B,MAAM,EAAE;wBACJ;4BACI,IAAI,EAAE,gBAAgB;4BACtB,QAAQ,EAAE,QAAQ;yBACrB;qBACJ;iBACJ;aACJ;YACD,kBAAkB;SACrB,CAAC,CAAC;QAEH,IAAA,6CAA0B,EAAC,KAAK,EAAE,iDAAiD,CAAC,CAAC;IACzF,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}
@@ -1 +0,0 @@
1
- export {};