@contember/schema-definition 1.4.0-rc.8 → 2.0.0-alpha.8

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 (861) hide show
  1. package/dist/development/index.cjs +122 -0
  2. package/dist/development/index.cjs.map +1 -0
  3. package/dist/development/index.js +117 -0
  4. package/dist/development/index.js.map +1 -0
  5. package/dist/development/src/acl/builder/EntityPermissionsBuilder.cjs +119 -0
  6. package/dist/development/src/acl/builder/EntityPermissionsBuilder.cjs.map +1 -0
  7. package/dist/development/src/acl/builder/EntityPermissionsBuilder.js +120 -0
  8. package/dist/development/src/acl/builder/EntityPermissionsBuilder.js.map +1 -0
  9. package/dist/development/src/acl/builder/EntitySelector.cjs +32 -0
  10. package/dist/development/src/acl/builder/EntitySelector.cjs.map +1 -0
  11. package/dist/development/src/acl/builder/EntitySelector.js +33 -0
  12. package/dist/development/src/acl/builder/EntitySelector.js.map +1 -0
  13. package/dist/development/src/acl/builder/FieldPermissionsBuilder.cjs +59 -0
  14. package/dist/development/src/acl/builder/FieldPermissionsBuilder.cjs.map +1 -0
  15. package/dist/development/src/acl/builder/FieldPermissionsBuilder.js +60 -0
  16. package/dist/development/src/acl/builder/FieldPermissionsBuilder.js.map +1 -0
  17. package/dist/development/src/acl/builder/FieldSelector.cjs +26 -0
  18. package/dist/development/src/acl/builder/FieldSelector.cjs.map +1 -0
  19. package/dist/development/src/acl/builder/FieldSelector.js +27 -0
  20. package/dist/development/src/acl/builder/FieldSelector.js.map +1 -0
  21. package/dist/development/src/acl/builder/PermissionOverrider.cjs +31 -0
  22. package/dist/development/src/acl/builder/PermissionOverrider.cjs.map +1 -0
  23. package/dist/development/src/acl/builder/PermissionOverrider.js +32 -0
  24. package/dist/development/src/acl/builder/PermissionOverrider.js.map +1 -0
  25. package/dist/development/src/acl/builder/PermissionsBuilder.cjs +58 -0
  26. package/dist/development/src/acl/builder/PermissionsBuilder.cjs.map +1 -0
  27. package/dist/development/src/acl/builder/PermissionsBuilder.js +58 -0
  28. package/dist/development/src/acl/builder/PermissionsBuilder.js.map +1 -0
  29. package/dist/development/src/acl/builder/PredicateReference.cjs +43 -0
  30. package/dist/development/src/acl/builder/PredicateReference.cjs.map +1 -0
  31. package/dist/development/src/acl/builder/PredicateReference.js +43 -0
  32. package/dist/development/src/acl/builder/PredicateReference.js.map +1 -0
  33. package/dist/development/src/acl/definition/customPrimary.cjs +14 -0
  34. package/dist/development/src/acl/definition/customPrimary.cjs.map +1 -0
  35. package/dist/development/src/acl/definition/customPrimary.js +14 -0
  36. package/dist/development/src/acl/definition/customPrimary.js.map +1 -0
  37. package/dist/development/src/acl/definition/index.cjs +27 -0
  38. package/dist/development/src/acl/definition/index.cjs.map +1 -0
  39. package/dist/development/src/acl/definition/index.js +27 -0
  40. package/dist/development/src/acl/definition/index.js.map +1 -0
  41. package/dist/development/src/acl/definition/internal/AclFactory.cjs +103 -0
  42. package/dist/development/src/acl/definition/internal/AclFactory.cjs.map +1 -0
  43. package/dist/development/src/acl/definition/internal/AclFactory.js +103 -0
  44. package/dist/development/src/acl/definition/internal/AclFactory.js.map +1 -0
  45. package/dist/development/src/acl/definition/internal/EntityPredicateResolver.cjs +151 -0
  46. package/dist/development/src/acl/definition/internal/EntityPredicateResolver.cjs.map +1 -0
  47. package/dist/development/src/acl/definition/internal/EntityPredicateResolver.js +151 -0
  48. package/dist/development/src/acl/definition/internal/EntityPredicateResolver.js.map +1 -0
  49. package/dist/development/src/acl/definition/internal/createPredicateName.cjs +8 -0
  50. package/dist/development/src/acl/definition/internal/createPredicateName.cjs.map +1 -0
  51. package/dist/development/src/acl/definition/internal/createPredicateName.js +8 -0
  52. package/dist/development/src/acl/definition/internal/createPredicateName.js.map +1 -0
  53. package/dist/development/src/acl/definition/internal/stores.cjs +10 -0
  54. package/dist/development/src/acl/definition/internal/stores.cjs.map +1 -0
  55. package/dist/development/src/acl/definition/internal/stores.js +10 -0
  56. package/dist/development/src/acl/definition/internal/stores.js.map +1 -0
  57. package/dist/development/src/acl/definition/permissions.cjs +12 -0
  58. package/dist/development/src/acl/definition/permissions.cjs.map +1 -0
  59. package/dist/development/src/acl/definition/permissions.js +12 -0
  60. package/dist/development/src/acl/definition/permissions.js.map +1 -0
  61. package/dist/development/src/acl/definition/references.cjs +26 -0
  62. package/dist/development/src/acl/definition/references.cjs.map +1 -0
  63. package/dist/development/src/acl/definition/references.js +26 -0
  64. package/dist/development/src/acl/definition/references.js.map +1 -0
  65. package/dist/development/src/acl/definition/roles.cjs +14 -0
  66. package/dist/development/src/acl/definition/roles.cjs.map +1 -0
  67. package/dist/development/src/acl/definition/roles.js +14 -0
  68. package/dist/development/src/acl/definition/roles.js.map +1 -0
  69. package/dist/development/src/acl/definition/variables.cjs +36 -0
  70. package/dist/development/src/acl/definition/variables.cjs.map +1 -0
  71. package/dist/development/src/acl/definition/variables.js +36 -0
  72. package/dist/development/src/acl/definition/variables.js.map +1 -0
  73. package/dist/development/src/actions/definition/index.cjs +15 -0
  74. package/dist/development/src/actions/definition/index.cjs.map +1 -0
  75. package/dist/development/src/actions/definition/index.js +15 -0
  76. package/dist/development/src/actions/definition/index.js.map +1 -0
  77. package/dist/development/src/actions/definition/internal/ActionsFactory.cjs +179 -0
  78. package/dist/development/src/actions/definition/internal/ActionsFactory.cjs.map +1 -0
  79. package/dist/development/src/actions/definition/internal/ActionsFactory.js +179 -0
  80. package/dist/development/src/actions/definition/internal/ActionsFactory.js.map +1 -0
  81. package/dist/development/src/actions/definition/internal/store.cjs +6 -0
  82. package/dist/development/src/actions/definition/internal/store.cjs.map +1 -0
  83. package/dist/development/src/actions/definition/internal/store.js +6 -0
  84. package/dist/development/src/actions/definition/internal/store.js.map +1 -0
  85. package/dist/development/src/actions/definition/targets.cjs +15 -0
  86. package/dist/development/src/actions/definition/targets.cjs.map +1 -0
  87. package/dist/development/src/actions/definition/targets.js +15 -0
  88. package/dist/development/src/actions/definition/targets.js.map +1 -0
  89. package/dist/development/src/actions/definition/triggers.cjs +12 -0
  90. package/dist/development/src/actions/definition/triggers.cjs.map +1 -0
  91. package/dist/development/src/actions/definition/triggers.js +12 -0
  92. package/dist/development/src/actions/definition/triggers.js.map +1 -0
  93. package/dist/development/src/createSchema.cjs +26 -0
  94. package/dist/development/src/createSchema.cjs.map +1 -0
  95. package/dist/development/src/createSchema.js +26 -0
  96. package/dist/development/src/createSchema.js.map +1 -0
  97. package/dist/development/src/model/builder/ColumnBuilder.cjs +36 -0
  98. package/dist/development/src/model/builder/ColumnBuilder.cjs.map +1 -0
  99. package/dist/development/src/model/builder/ColumnBuilder.js +37 -0
  100. package/dist/development/src/model/builder/ColumnBuilder.js.map +1 -0
  101. package/dist/development/src/model/builder/EntityBuilder.cjs +69 -0
  102. package/dist/development/src/model/builder/EntityBuilder.cjs.map +1 -0
  103. package/dist/development/src/model/builder/EntityBuilder.js +70 -0
  104. package/dist/development/src/model/builder/EntityBuilder.js.map +1 -0
  105. package/dist/development/src/model/builder/FieldBuilder.cjs +14 -0
  106. package/dist/development/src/model/builder/FieldBuilder.cjs.map +1 -0
  107. package/dist/development/src/model/builder/FieldBuilder.js +15 -0
  108. package/dist/development/src/model/builder/FieldBuilder.js.map +1 -0
  109. package/dist/development/src/model/builder/ManyHasManyBuilder.cjs +35 -0
  110. package/dist/development/src/model/builder/ManyHasManyBuilder.cjs.map +1 -0
  111. package/dist/development/src/model/builder/ManyHasManyBuilder.js +36 -0
  112. package/dist/development/src/model/builder/ManyHasManyBuilder.js.map +1 -0
  113. package/dist/development/src/model/builder/ManyHasOneBuilder.cjs +36 -0
  114. package/dist/development/src/model/builder/ManyHasOneBuilder.cjs.map +1 -0
  115. package/dist/development/src/model/builder/ManyHasOneBuilder.js +37 -0
  116. package/dist/development/src/model/builder/ManyHasOneBuilder.js.map +1 -0
  117. package/dist/development/src/model/builder/OneHasManyBuilder.cjs +44 -0
  118. package/dist/development/src/model/builder/OneHasManyBuilder.cjs.map +1 -0
  119. package/dist/development/src/model/builder/OneHasManyBuilder.js +45 -0
  120. package/dist/development/src/model/builder/OneHasManyBuilder.js.map +1 -0
  121. package/dist/development/src/model/builder/OneHasOneBuilder.cjs +46 -0
  122. package/dist/development/src/model/builder/OneHasOneBuilder.cjs.map +1 -0
  123. package/dist/development/src/model/builder/OneHasOneBuilder.js +47 -0
  124. package/dist/development/src/model/builder/OneHasOneBuilder.js.map +1 -0
  125. package/dist/development/src/model/builder/SchemaBuilder.cjs +40 -0
  126. package/dist/development/src/model/builder/SchemaBuilder.cjs.map +1 -0
  127. package/dist/development/src/model/builder/SchemaBuilder.js +40 -0
  128. package/dist/development/src/model/builder/SchemaBuilder.js.map +1 -0
  129. package/dist/development/src/model/builder/SchemaBuilderError.cjs +6 -0
  130. package/dist/development/src/model/builder/SchemaBuilderError.cjs.map +1 -0
  131. package/dist/development/src/model/builder/SchemaBuilderError.js +6 -0
  132. package/dist/development/src/model/builder/SchemaBuilderError.js.map +1 -0
  133. package/dist/development/src/model/builder/SchemaBuilderInternal.cjs +153 -0
  134. package/dist/development/src/model/builder/SchemaBuilderInternal.cjs.map +1 -0
  135. package/dist/development/src/model/builder/SchemaBuilderInternal.js +154 -0
  136. package/dist/development/src/model/builder/SchemaBuilderInternal.js.map +1 -0
  137. package/dist/development/src/model/builder/internal/ColumnProcessor.cjs +34 -0
  138. package/dist/development/src/model/builder/internal/ColumnProcessor.cjs.map +1 -0
  139. package/dist/development/src/model/builder/internal/ColumnProcessor.js +35 -0
  140. package/dist/development/src/model/builder/internal/ColumnProcessor.js.map +1 -0
  141. package/dist/development/src/model/builder/internal/ManyHasManyProcessor.cjs +54 -0
  142. package/dist/development/src/model/builder/internal/ManyHasManyProcessor.cjs.map +1 -0
  143. package/dist/development/src/model/builder/internal/ManyHasManyProcessor.js +55 -0
  144. package/dist/development/src/model/builder/internal/ManyHasManyProcessor.js.map +1 -0
  145. package/dist/development/src/model/builder/internal/ManyHasOneProcessor.cjs +46 -0
  146. package/dist/development/src/model/builder/internal/ManyHasOneProcessor.cjs.map +1 -0
  147. package/dist/development/src/model/builder/internal/ManyHasOneProcessor.js +47 -0
  148. package/dist/development/src/model/builder/internal/ManyHasOneProcessor.js.map +1 -0
  149. package/dist/development/src/model/builder/internal/OneHasManyProcessor.cjs +44 -0
  150. package/dist/development/src/model/builder/internal/OneHasManyProcessor.cjs.map +1 -0
  151. package/dist/development/src/model/builder/internal/OneHasManyProcessor.js +45 -0
  152. package/dist/development/src/model/builder/internal/OneHasManyProcessor.js.map +1 -0
  153. package/dist/development/src/model/builder/internal/OneHasOneProcessor.cjs +50 -0
  154. package/dist/development/src/model/builder/internal/OneHasOneProcessor.cjs.map +1 -0
  155. package/dist/development/src/model/builder/internal/OneHasOneProcessor.js +51 -0
  156. package/dist/development/src/model/builder/internal/OneHasOneProcessor.js.map +1 -0
  157. package/dist/development/src/model/definition/EnumDefinition.cjs +13 -0
  158. package/dist/development/src/model/definition/EnumDefinition.cjs.map +1 -0
  159. package/dist/development/src/model/definition/EnumDefinition.js +13 -0
  160. package/dist/development/src/model/definition/EnumDefinition.js.map +1 -0
  161. package/dist/development/src/model/definition/EventLogDefinition.cjs +9 -0
  162. package/dist/development/src/model/definition/EventLogDefinition.cjs.map +1 -0
  163. package/dist/development/src/model/definition/EventLogDefinition.js +9 -0
  164. package/dist/development/src/model/definition/EventLogDefinition.js.map +1 -0
  165. package/dist/development/src/model/definition/IndexDefinition.cjs +17 -0
  166. package/dist/development/src/model/definition/IndexDefinition.cjs.map +1 -0
  167. package/dist/development/src/model/definition/IndexDefinition.js +17 -0
  168. package/dist/development/src/model/definition/IndexDefinition.js.map +1 -0
  169. package/dist/development/src/model/definition/OrderByDefinition.cjs +30 -0
  170. package/dist/development/src/model/definition/OrderByDefinition.cjs.map +1 -0
  171. package/dist/development/src/model/definition/OrderByDefinition.js +30 -0
  172. package/dist/development/src/model/definition/OrderByDefinition.js.map +1 -0
  173. package/dist/development/src/model/definition/UniqueDefinition.cjs +17 -0
  174. package/dist/development/src/model/definition/UniqueDefinition.cjs.map +1 -0
  175. package/dist/development/src/model/definition/UniqueDefinition.js +17 -0
  176. package/dist/development/src/model/definition/UniqueDefinition.js.map +1 -0
  177. package/dist/development/src/model/definition/ViewDefinition.cjs +25 -0
  178. package/dist/development/src/model/definition/ViewDefinition.cjs.map +1 -0
  179. package/dist/development/src/model/definition/ViewDefinition.js +25 -0
  180. package/dist/development/src/model/definition/ViewDefinition.js.map +1 -0
  181. package/dist/development/src/model/definition/extensions.cjs +16 -0
  182. package/dist/development/src/model/definition/extensions.cjs.map +1 -0
  183. package/dist/development/src/model/definition/extensions.js +16 -0
  184. package/dist/development/src/model/definition/extensions.js.map +1 -0
  185. package/dist/development/src/model/definition/fieldDefinitions/ColumnDefinition.cjs +118 -0
  186. package/dist/development/src/model/definition/fieldDefinitions/ColumnDefinition.cjs.map +1 -0
  187. package/dist/development/src/model/definition/fieldDefinitions/ColumnDefinition.js +118 -0
  188. package/dist/development/src/model/definition/fieldDefinitions/ColumnDefinition.js.map +1 -0
  189. package/dist/development/src/model/definition/fieldDefinitions/FieldDefinition.cjs +12 -0
  190. package/dist/development/src/model/definition/fieldDefinitions/FieldDefinition.cjs.map +1 -0
  191. package/dist/development/src/model/definition/fieldDefinitions/FieldDefinition.js +12 -0
  192. package/dist/development/src/model/definition/fieldDefinitions/FieldDefinition.js.map +1 -0
  193. package/dist/development/src/model/definition/fieldDefinitions/ManyHasManyDefinition.cjs +54 -0
  194. package/dist/development/src/model/definition/fieldDefinitions/ManyHasManyDefinition.cjs.map +1 -0
  195. package/dist/development/src/model/definition/fieldDefinitions/ManyHasManyDefinition.js +54 -0
  196. package/dist/development/src/model/definition/fieldDefinitions/ManyHasManyDefinition.js.map +1 -0
  197. package/dist/development/src/model/definition/fieldDefinitions/ManyHasManyInverseDefinition.cjs +37 -0
  198. package/dist/development/src/model/definition/fieldDefinitions/ManyHasManyInverseDefinition.cjs.map +1 -0
  199. package/dist/development/src/model/definition/fieldDefinitions/ManyHasManyInverseDefinition.js +37 -0
  200. package/dist/development/src/model/definition/fieldDefinitions/ManyHasManyInverseDefinition.js.map +1 -0
  201. package/dist/development/src/model/definition/fieldDefinitions/ManyHasOneDefinition.cjs +57 -0
  202. package/dist/development/src/model/definition/fieldDefinitions/ManyHasOneDefinition.cjs.map +1 -0
  203. package/dist/development/src/model/definition/fieldDefinitions/ManyHasOneDefinition.js +57 -0
  204. package/dist/development/src/model/definition/fieldDefinitions/ManyHasOneDefinition.js.map +1 -0
  205. package/dist/development/src/model/definition/fieldDefinitions/OneHasManyDefinition.cjs +33 -0
  206. package/dist/development/src/model/definition/fieldDefinitions/OneHasManyDefinition.cjs.map +1 -0
  207. package/dist/development/src/model/definition/fieldDefinitions/OneHasManyDefinition.js +33 -0
  208. package/dist/development/src/model/definition/fieldDefinitions/OneHasManyDefinition.js.map +1 -0
  209. package/dist/development/src/model/definition/fieldDefinitions/OneHasOneDefinition.cjs +61 -0
  210. package/dist/development/src/model/definition/fieldDefinitions/OneHasOneDefinition.cjs.map +1 -0
  211. package/dist/development/src/model/definition/fieldDefinitions/OneHasOneDefinition.js +61 -0
  212. package/dist/development/src/model/definition/fieldDefinitions/OneHasOneDefinition.js.map +1 -0
  213. package/dist/development/src/model/definition/fieldDefinitions/OneHasOneInverseDefinition.cjs +36 -0
  214. package/dist/development/src/model/definition/fieldDefinitions/OneHasOneInverseDefinition.cjs.map +1 -0
  215. package/dist/development/src/model/definition/fieldDefinitions/OneHasOneInverseDefinition.js +36 -0
  216. package/dist/development/src/model/definition/fieldDefinitions/OneHasOneInverseDefinition.js.map +1 -0
  217. package/dist/development/src/model/definition/index.cjs +80 -0
  218. package/dist/development/src/model/definition/index.cjs.map +1 -0
  219. package/dist/development/src/model/definition/index.js +81 -0
  220. package/dist/development/src/model/definition/index.js.map +1 -0
  221. package/dist/development/src/model/definition/internal/EntityRegistry.cjs +29 -0
  222. package/dist/development/src/model/definition/internal/EntityRegistry.cjs.map +1 -0
  223. package/dist/development/src/model/definition/internal/EntityRegistry.js +29 -0
  224. package/dist/development/src/model/definition/internal/EntityRegistry.js.map +1 -0
  225. package/dist/development/src/model/definition/internal/EnumRegistry.cjs +29 -0
  226. package/dist/development/src/model/definition/internal/EnumRegistry.cjs.map +1 -0
  227. package/dist/development/src/model/definition/internal/EnumRegistry.js +29 -0
  228. package/dist/development/src/model/definition/internal/EnumRegistry.js.map +1 -0
  229. package/dist/development/src/model/definition/internal/SchemaBuilder.cjs +92 -0
  230. package/dist/development/src/model/definition/internal/SchemaBuilder.cjs.map +1 -0
  231. package/dist/development/src/model/definition/internal/SchemaBuilder.js +92 -0
  232. package/dist/development/src/model/definition/internal/SchemaBuilder.js.map +1 -0
  233. package/dist/development/src/presets.cjs +25 -0
  234. package/dist/development/src/presets.cjs.map +1 -0
  235. package/dist/development/src/presets.js +25 -0
  236. package/dist/development/src/presets.js.map +1 -0
  237. package/dist/development/src/strict.cjs +31 -0
  238. package/dist/development/src/strict.cjs.map +1 -0
  239. package/dist/development/src/strict.js +31 -0
  240. package/dist/development/src/strict.js.map +1 -0
  241. package/dist/development/src/utils/MetadataStore.cjs +19 -0
  242. package/dist/development/src/utils/MetadataStore.cjs.map +1 -0
  243. package/dist/development/src/utils/MetadataStore.js +19 -0
  244. package/dist/development/src/utils/MetadataStore.js.map +1 -0
  245. package/dist/development/src/utils/assertNever.cjs +7 -0
  246. package/dist/development/src/utils/assertNever.cjs.map +1 -0
  247. package/dist/development/src/utils/assertNever.js +7 -0
  248. package/dist/development/src/utils/assertNever.js.map +1 -0
  249. package/dist/development/src/utils/filterEntityDefinition.cjs +9 -0
  250. package/dist/development/src/utils/filterEntityDefinition.cjs.map +1 -0
  251. package/dist/development/src/utils/filterEntityDefinition.js +9 -0
  252. package/dist/development/src/utils/filterEntityDefinition.js.map +1 -0
  253. package/dist/development/src/utils/tuple.cjs +5 -0
  254. package/dist/development/src/utils/tuple.cjs.map +1 -0
  255. package/dist/development/src/utils/tuple.js +5 -0
  256. package/dist/development/src/utils/tuple.js.map +1 -0
  257. package/dist/development/src/validation/index.cjs +199 -0
  258. package/dist/development/src/validation/index.cjs.map +1 -0
  259. package/dist/development/src/validation/index.js +199 -0
  260. package/dist/development/src/validation/index.js.map +1 -0
  261. package/dist/production/index.cjs +122 -0
  262. package/dist/production/index.cjs.map +1 -0
  263. package/dist/production/index.js +117 -0
  264. package/dist/production/index.js.map +1 -0
  265. package/dist/production/src/acl/builder/EntityPermissionsBuilder.cjs +119 -0
  266. package/dist/production/src/acl/builder/EntityPermissionsBuilder.cjs.map +1 -0
  267. package/dist/production/src/acl/builder/EntityPermissionsBuilder.js +120 -0
  268. package/dist/production/src/acl/builder/EntityPermissionsBuilder.js.map +1 -0
  269. package/dist/production/src/acl/builder/EntitySelector.cjs +32 -0
  270. package/dist/production/src/acl/builder/EntitySelector.cjs.map +1 -0
  271. package/dist/production/src/acl/builder/EntitySelector.js +33 -0
  272. package/dist/production/src/acl/builder/EntitySelector.js.map +1 -0
  273. package/dist/production/src/acl/builder/FieldPermissionsBuilder.cjs +59 -0
  274. package/dist/production/src/acl/builder/FieldPermissionsBuilder.cjs.map +1 -0
  275. package/dist/production/src/acl/builder/FieldPermissionsBuilder.js +60 -0
  276. package/dist/production/src/acl/builder/FieldPermissionsBuilder.js.map +1 -0
  277. package/dist/production/src/acl/builder/FieldSelector.cjs +26 -0
  278. package/dist/production/src/acl/builder/FieldSelector.cjs.map +1 -0
  279. package/dist/production/src/acl/builder/FieldSelector.js +27 -0
  280. package/dist/production/src/acl/builder/FieldSelector.js.map +1 -0
  281. package/dist/production/src/acl/builder/PermissionOverrider.cjs +31 -0
  282. package/dist/production/src/acl/builder/PermissionOverrider.cjs.map +1 -0
  283. package/dist/production/src/acl/builder/PermissionOverrider.js +32 -0
  284. package/dist/production/src/acl/builder/PermissionOverrider.js.map +1 -0
  285. package/dist/production/src/acl/builder/PermissionsBuilder.cjs +58 -0
  286. package/dist/production/src/acl/builder/PermissionsBuilder.cjs.map +1 -0
  287. package/dist/production/src/acl/builder/PermissionsBuilder.js +58 -0
  288. package/dist/production/src/acl/builder/PermissionsBuilder.js.map +1 -0
  289. package/dist/production/src/acl/builder/PredicateReference.cjs +43 -0
  290. package/dist/production/src/acl/builder/PredicateReference.cjs.map +1 -0
  291. package/dist/production/src/acl/builder/PredicateReference.js +43 -0
  292. package/dist/production/src/acl/builder/PredicateReference.js.map +1 -0
  293. package/dist/production/src/acl/definition/customPrimary.cjs +14 -0
  294. package/dist/production/src/acl/definition/customPrimary.cjs.map +1 -0
  295. package/dist/production/src/acl/definition/customPrimary.js +14 -0
  296. package/dist/production/src/acl/definition/customPrimary.js.map +1 -0
  297. package/dist/production/src/acl/definition/index.cjs +27 -0
  298. package/dist/production/src/acl/definition/index.cjs.map +1 -0
  299. package/dist/production/src/acl/definition/index.js +27 -0
  300. package/dist/production/src/acl/definition/index.js.map +1 -0
  301. package/dist/production/src/acl/definition/internal/AclFactory.cjs +103 -0
  302. package/dist/production/src/acl/definition/internal/AclFactory.cjs.map +1 -0
  303. package/dist/production/src/acl/definition/internal/AclFactory.js +103 -0
  304. package/dist/production/src/acl/definition/internal/AclFactory.js.map +1 -0
  305. package/dist/production/src/acl/definition/internal/EntityPredicateResolver.cjs +151 -0
  306. package/dist/production/src/acl/definition/internal/EntityPredicateResolver.cjs.map +1 -0
  307. package/dist/production/src/acl/definition/internal/EntityPredicateResolver.js +151 -0
  308. package/dist/production/src/acl/definition/internal/EntityPredicateResolver.js.map +1 -0
  309. package/dist/production/src/acl/definition/internal/createPredicateName.cjs +8 -0
  310. package/dist/production/src/acl/definition/internal/createPredicateName.cjs.map +1 -0
  311. package/dist/production/src/acl/definition/internal/createPredicateName.js +8 -0
  312. package/dist/production/src/acl/definition/internal/createPredicateName.js.map +1 -0
  313. package/dist/production/src/acl/definition/internal/stores.cjs +10 -0
  314. package/dist/production/src/acl/definition/internal/stores.cjs.map +1 -0
  315. package/dist/production/src/acl/definition/internal/stores.js +10 -0
  316. package/dist/production/src/acl/definition/internal/stores.js.map +1 -0
  317. package/dist/production/src/acl/definition/permissions.cjs +12 -0
  318. package/dist/production/src/acl/definition/permissions.cjs.map +1 -0
  319. package/dist/production/src/acl/definition/permissions.js +12 -0
  320. package/dist/production/src/acl/definition/permissions.js.map +1 -0
  321. package/dist/production/src/acl/definition/references.cjs +26 -0
  322. package/dist/production/src/acl/definition/references.cjs.map +1 -0
  323. package/dist/production/src/acl/definition/references.js +26 -0
  324. package/dist/production/src/acl/definition/references.js.map +1 -0
  325. package/dist/production/src/acl/definition/roles.cjs +14 -0
  326. package/dist/production/src/acl/definition/roles.cjs.map +1 -0
  327. package/dist/production/src/acl/definition/roles.js +14 -0
  328. package/dist/production/src/acl/definition/roles.js.map +1 -0
  329. package/dist/production/src/acl/definition/variables.cjs +36 -0
  330. package/dist/production/src/acl/definition/variables.cjs.map +1 -0
  331. package/dist/production/src/acl/definition/variables.js +36 -0
  332. package/dist/production/src/acl/definition/variables.js.map +1 -0
  333. package/dist/production/src/actions/definition/index.cjs +15 -0
  334. package/dist/production/src/actions/definition/index.cjs.map +1 -0
  335. package/dist/production/src/actions/definition/index.js +15 -0
  336. package/dist/production/src/actions/definition/index.js.map +1 -0
  337. package/dist/production/src/actions/definition/internal/ActionsFactory.cjs +179 -0
  338. package/dist/production/src/actions/definition/internal/ActionsFactory.cjs.map +1 -0
  339. package/dist/production/src/actions/definition/internal/ActionsFactory.js +179 -0
  340. package/dist/production/src/actions/definition/internal/ActionsFactory.js.map +1 -0
  341. package/dist/production/src/actions/definition/internal/store.cjs +6 -0
  342. package/dist/production/src/actions/definition/internal/store.cjs.map +1 -0
  343. package/dist/production/src/actions/definition/internal/store.js +6 -0
  344. package/dist/production/src/actions/definition/internal/store.js.map +1 -0
  345. package/dist/production/src/actions/definition/targets.cjs +15 -0
  346. package/dist/production/src/actions/definition/targets.cjs.map +1 -0
  347. package/dist/production/src/actions/definition/targets.js +15 -0
  348. package/dist/production/src/actions/definition/targets.js.map +1 -0
  349. package/dist/production/src/actions/definition/triggers.cjs +12 -0
  350. package/dist/production/src/actions/definition/triggers.cjs.map +1 -0
  351. package/dist/production/src/actions/definition/triggers.js +12 -0
  352. package/dist/production/src/actions/definition/triggers.js.map +1 -0
  353. package/dist/production/src/createSchema.cjs +26 -0
  354. package/dist/production/src/createSchema.cjs.map +1 -0
  355. package/dist/production/src/createSchema.js +26 -0
  356. package/dist/production/src/createSchema.js.map +1 -0
  357. package/dist/production/src/model/builder/ColumnBuilder.cjs +36 -0
  358. package/dist/production/src/model/builder/ColumnBuilder.cjs.map +1 -0
  359. package/dist/production/src/model/builder/ColumnBuilder.js +37 -0
  360. package/dist/production/src/model/builder/ColumnBuilder.js.map +1 -0
  361. package/dist/production/src/model/builder/EntityBuilder.cjs +69 -0
  362. package/dist/production/src/model/builder/EntityBuilder.cjs.map +1 -0
  363. package/dist/production/src/model/builder/EntityBuilder.js +70 -0
  364. package/dist/production/src/model/builder/EntityBuilder.js.map +1 -0
  365. package/dist/production/src/model/builder/FieldBuilder.cjs +14 -0
  366. package/dist/production/src/model/builder/FieldBuilder.cjs.map +1 -0
  367. package/dist/production/src/model/builder/FieldBuilder.js +15 -0
  368. package/dist/production/src/model/builder/FieldBuilder.js.map +1 -0
  369. package/dist/production/src/model/builder/ManyHasManyBuilder.cjs +35 -0
  370. package/dist/production/src/model/builder/ManyHasManyBuilder.cjs.map +1 -0
  371. package/dist/production/src/model/builder/ManyHasManyBuilder.js +36 -0
  372. package/dist/production/src/model/builder/ManyHasManyBuilder.js.map +1 -0
  373. package/dist/production/src/model/builder/ManyHasOneBuilder.cjs +36 -0
  374. package/dist/production/src/model/builder/ManyHasOneBuilder.cjs.map +1 -0
  375. package/dist/production/src/model/builder/ManyHasOneBuilder.js +37 -0
  376. package/dist/production/src/model/builder/ManyHasOneBuilder.js.map +1 -0
  377. package/dist/production/src/model/builder/OneHasManyBuilder.cjs +44 -0
  378. package/dist/production/src/model/builder/OneHasManyBuilder.cjs.map +1 -0
  379. package/dist/production/src/model/builder/OneHasManyBuilder.js +45 -0
  380. package/dist/production/src/model/builder/OneHasManyBuilder.js.map +1 -0
  381. package/dist/production/src/model/builder/OneHasOneBuilder.cjs +46 -0
  382. package/dist/production/src/model/builder/OneHasOneBuilder.cjs.map +1 -0
  383. package/dist/production/src/model/builder/OneHasOneBuilder.js +47 -0
  384. package/dist/production/src/model/builder/OneHasOneBuilder.js.map +1 -0
  385. package/dist/production/src/model/builder/SchemaBuilder.cjs +40 -0
  386. package/dist/production/src/model/builder/SchemaBuilder.cjs.map +1 -0
  387. package/dist/production/src/model/builder/SchemaBuilder.js +40 -0
  388. package/dist/production/src/model/builder/SchemaBuilder.js.map +1 -0
  389. package/dist/production/src/model/builder/SchemaBuilderError.cjs +6 -0
  390. package/dist/production/src/model/builder/SchemaBuilderError.cjs.map +1 -0
  391. package/dist/production/src/model/builder/SchemaBuilderError.js +6 -0
  392. package/dist/production/src/model/builder/SchemaBuilderError.js.map +1 -0
  393. package/dist/production/src/model/builder/SchemaBuilderInternal.cjs +153 -0
  394. package/dist/production/src/model/builder/SchemaBuilderInternal.cjs.map +1 -0
  395. package/dist/production/src/model/builder/SchemaBuilderInternal.js +154 -0
  396. package/dist/production/src/model/builder/SchemaBuilderInternal.js.map +1 -0
  397. package/dist/production/src/model/builder/internal/ColumnProcessor.cjs +34 -0
  398. package/dist/production/src/model/builder/internal/ColumnProcessor.cjs.map +1 -0
  399. package/dist/production/src/model/builder/internal/ColumnProcessor.js +35 -0
  400. package/dist/production/src/model/builder/internal/ColumnProcessor.js.map +1 -0
  401. package/dist/production/src/model/builder/internal/ManyHasManyProcessor.cjs +54 -0
  402. package/dist/production/src/model/builder/internal/ManyHasManyProcessor.cjs.map +1 -0
  403. package/dist/production/src/model/builder/internal/ManyHasManyProcessor.js +55 -0
  404. package/dist/production/src/model/builder/internal/ManyHasManyProcessor.js.map +1 -0
  405. package/dist/production/src/model/builder/internal/ManyHasOneProcessor.cjs +46 -0
  406. package/dist/production/src/model/builder/internal/ManyHasOneProcessor.cjs.map +1 -0
  407. package/dist/production/src/model/builder/internal/ManyHasOneProcessor.js +47 -0
  408. package/dist/production/src/model/builder/internal/ManyHasOneProcessor.js.map +1 -0
  409. package/dist/production/src/model/builder/internal/OneHasManyProcessor.cjs +44 -0
  410. package/dist/production/src/model/builder/internal/OneHasManyProcessor.cjs.map +1 -0
  411. package/dist/production/src/model/builder/internal/OneHasManyProcessor.js +45 -0
  412. package/dist/production/src/model/builder/internal/OneHasManyProcessor.js.map +1 -0
  413. package/dist/production/src/model/builder/internal/OneHasOneProcessor.cjs +50 -0
  414. package/dist/production/src/model/builder/internal/OneHasOneProcessor.cjs.map +1 -0
  415. package/dist/production/src/model/builder/internal/OneHasOneProcessor.js +51 -0
  416. package/dist/production/src/model/builder/internal/OneHasOneProcessor.js.map +1 -0
  417. package/dist/production/src/model/definition/EnumDefinition.cjs +13 -0
  418. package/dist/production/src/model/definition/EnumDefinition.cjs.map +1 -0
  419. package/dist/production/src/model/definition/EnumDefinition.js +13 -0
  420. package/dist/production/src/model/definition/EnumDefinition.js.map +1 -0
  421. package/dist/production/src/model/definition/EventLogDefinition.cjs +9 -0
  422. package/dist/production/src/model/definition/EventLogDefinition.cjs.map +1 -0
  423. package/dist/production/src/model/definition/EventLogDefinition.js +9 -0
  424. package/dist/production/src/model/definition/EventLogDefinition.js.map +1 -0
  425. package/dist/production/src/model/definition/IndexDefinition.cjs +17 -0
  426. package/dist/production/src/model/definition/IndexDefinition.cjs.map +1 -0
  427. package/dist/production/src/model/definition/IndexDefinition.js +17 -0
  428. package/dist/production/src/model/definition/IndexDefinition.js.map +1 -0
  429. package/dist/production/src/model/definition/OrderByDefinition.cjs +30 -0
  430. package/dist/production/src/model/definition/OrderByDefinition.cjs.map +1 -0
  431. package/dist/production/src/model/definition/OrderByDefinition.js +30 -0
  432. package/dist/production/src/model/definition/OrderByDefinition.js.map +1 -0
  433. package/dist/production/src/model/definition/UniqueDefinition.cjs +17 -0
  434. package/dist/production/src/model/definition/UniqueDefinition.cjs.map +1 -0
  435. package/dist/production/src/model/definition/UniqueDefinition.js +17 -0
  436. package/dist/production/src/model/definition/UniqueDefinition.js.map +1 -0
  437. package/dist/production/src/model/definition/ViewDefinition.cjs +25 -0
  438. package/dist/production/src/model/definition/ViewDefinition.cjs.map +1 -0
  439. package/dist/production/src/model/definition/ViewDefinition.js +25 -0
  440. package/dist/production/src/model/definition/ViewDefinition.js.map +1 -0
  441. package/dist/production/src/model/definition/extensions.cjs +16 -0
  442. package/dist/production/src/model/definition/extensions.cjs.map +1 -0
  443. package/dist/production/src/model/definition/extensions.js +16 -0
  444. package/dist/production/src/model/definition/extensions.js.map +1 -0
  445. package/dist/production/src/model/definition/fieldDefinitions/ColumnDefinition.cjs +118 -0
  446. package/dist/production/src/model/definition/fieldDefinitions/ColumnDefinition.cjs.map +1 -0
  447. package/dist/production/src/model/definition/fieldDefinitions/ColumnDefinition.js +118 -0
  448. package/dist/production/src/model/definition/fieldDefinitions/ColumnDefinition.js.map +1 -0
  449. package/dist/production/src/model/definition/fieldDefinitions/FieldDefinition.cjs +12 -0
  450. package/dist/production/src/model/definition/fieldDefinitions/FieldDefinition.cjs.map +1 -0
  451. package/dist/production/src/model/definition/fieldDefinitions/FieldDefinition.js +12 -0
  452. package/dist/production/src/model/definition/fieldDefinitions/FieldDefinition.js.map +1 -0
  453. package/dist/production/src/model/definition/fieldDefinitions/ManyHasManyDefinition.cjs +54 -0
  454. package/dist/production/src/model/definition/fieldDefinitions/ManyHasManyDefinition.cjs.map +1 -0
  455. package/dist/production/src/model/definition/fieldDefinitions/ManyHasManyDefinition.js +54 -0
  456. package/dist/production/src/model/definition/fieldDefinitions/ManyHasManyDefinition.js.map +1 -0
  457. package/dist/production/src/model/definition/fieldDefinitions/ManyHasManyInverseDefinition.cjs +37 -0
  458. package/dist/production/src/model/definition/fieldDefinitions/ManyHasManyInverseDefinition.cjs.map +1 -0
  459. package/dist/production/src/model/definition/fieldDefinitions/ManyHasManyInverseDefinition.js +37 -0
  460. package/dist/production/src/model/definition/fieldDefinitions/ManyHasManyInverseDefinition.js.map +1 -0
  461. package/dist/production/src/model/definition/fieldDefinitions/ManyHasOneDefinition.cjs +57 -0
  462. package/dist/production/src/model/definition/fieldDefinitions/ManyHasOneDefinition.cjs.map +1 -0
  463. package/dist/production/src/model/definition/fieldDefinitions/ManyHasOneDefinition.js +57 -0
  464. package/dist/production/src/model/definition/fieldDefinitions/ManyHasOneDefinition.js.map +1 -0
  465. package/dist/production/src/model/definition/fieldDefinitions/OneHasManyDefinition.cjs +33 -0
  466. package/dist/production/src/model/definition/fieldDefinitions/OneHasManyDefinition.cjs.map +1 -0
  467. package/dist/production/src/model/definition/fieldDefinitions/OneHasManyDefinition.js +33 -0
  468. package/dist/production/src/model/definition/fieldDefinitions/OneHasManyDefinition.js.map +1 -0
  469. package/dist/production/src/model/definition/fieldDefinitions/OneHasOneDefinition.cjs +61 -0
  470. package/dist/production/src/model/definition/fieldDefinitions/OneHasOneDefinition.cjs.map +1 -0
  471. package/dist/production/src/model/definition/fieldDefinitions/OneHasOneDefinition.js +61 -0
  472. package/dist/production/src/model/definition/fieldDefinitions/OneHasOneDefinition.js.map +1 -0
  473. package/dist/production/src/model/definition/fieldDefinitions/OneHasOneInverseDefinition.cjs +36 -0
  474. package/dist/production/src/model/definition/fieldDefinitions/OneHasOneInverseDefinition.cjs.map +1 -0
  475. package/dist/production/src/model/definition/fieldDefinitions/OneHasOneInverseDefinition.js +36 -0
  476. package/dist/production/src/model/definition/fieldDefinitions/OneHasOneInverseDefinition.js.map +1 -0
  477. package/dist/production/src/model/definition/index.cjs +80 -0
  478. package/dist/production/src/model/definition/index.cjs.map +1 -0
  479. package/dist/production/src/model/definition/index.js +81 -0
  480. package/dist/production/src/model/definition/index.js.map +1 -0
  481. package/dist/production/src/model/definition/internal/EntityRegistry.cjs +29 -0
  482. package/dist/production/src/model/definition/internal/EntityRegistry.cjs.map +1 -0
  483. package/dist/production/src/model/definition/internal/EntityRegistry.js +29 -0
  484. package/dist/production/src/model/definition/internal/EntityRegistry.js.map +1 -0
  485. package/dist/production/src/model/definition/internal/EnumRegistry.cjs +29 -0
  486. package/dist/production/src/model/definition/internal/EnumRegistry.cjs.map +1 -0
  487. package/dist/production/src/model/definition/internal/EnumRegistry.js +29 -0
  488. package/dist/production/src/model/definition/internal/EnumRegistry.js.map +1 -0
  489. package/dist/production/src/model/definition/internal/SchemaBuilder.cjs +92 -0
  490. package/dist/production/src/model/definition/internal/SchemaBuilder.cjs.map +1 -0
  491. package/dist/production/src/model/definition/internal/SchemaBuilder.js +92 -0
  492. package/dist/production/src/model/definition/internal/SchemaBuilder.js.map +1 -0
  493. package/dist/production/src/presets.cjs +25 -0
  494. package/dist/production/src/presets.cjs.map +1 -0
  495. package/dist/production/src/presets.js +25 -0
  496. package/dist/production/src/presets.js.map +1 -0
  497. package/dist/production/src/strict.cjs +31 -0
  498. package/dist/production/src/strict.cjs.map +1 -0
  499. package/dist/production/src/strict.js +31 -0
  500. package/dist/production/src/strict.js.map +1 -0
  501. package/dist/production/src/utils/MetadataStore.cjs +19 -0
  502. package/dist/production/src/utils/MetadataStore.cjs.map +1 -0
  503. package/dist/production/src/utils/MetadataStore.js +19 -0
  504. package/dist/production/src/utils/MetadataStore.js.map +1 -0
  505. package/dist/production/src/utils/assertNever.cjs +7 -0
  506. package/dist/production/src/utils/assertNever.cjs.map +1 -0
  507. package/dist/production/src/utils/assertNever.js +7 -0
  508. package/dist/production/src/utils/assertNever.js.map +1 -0
  509. package/dist/production/src/utils/filterEntityDefinition.cjs +9 -0
  510. package/dist/production/src/utils/filterEntityDefinition.cjs.map +1 -0
  511. package/dist/production/src/utils/filterEntityDefinition.js +9 -0
  512. package/dist/production/src/utils/filterEntityDefinition.js.map +1 -0
  513. package/dist/production/src/utils/tuple.cjs +5 -0
  514. package/dist/production/src/utils/tuple.cjs.map +1 -0
  515. package/dist/production/src/utils/tuple.js +5 -0
  516. package/dist/production/src/utils/tuple.js.map +1 -0
  517. package/dist/production/src/validation/index.cjs +199 -0
  518. package/dist/production/src/validation/index.cjs.map +1 -0
  519. package/dist/production/src/validation/index.js +199 -0
  520. package/dist/production/src/validation/index.js.map +1 -0
  521. package/dist/tests/tsconfig.tsbuildinfo +1 -1
  522. package/dist/types/acl/builder/PermissionsBuilder.d.ts.map +1 -0
  523. package/dist/types/acl/builder/PredicateReference.d.ts.map +1 -0
  524. package/dist/types/acl/definition/customPrimary.d.ts.map +1 -0
  525. package/dist/types/acl/definition/index.d.ts.map +1 -0
  526. package/dist/types/acl/definition/permissions.d.ts.map +1 -0
  527. package/dist/types/acl/definition/references.d.ts.map +1 -0
  528. package/dist/types/acl/definition/roles.d.ts.map +1 -0
  529. package/dist/types/acl/definition/variables.d.ts.map +1 -0
  530. package/dist/types/actions/definition/index.d.ts.map +1 -0
  531. package/dist/types/actions/definition/targets.d.ts +10 -0
  532. package/dist/types/actions/definition/targets.d.ts.map +1 -0
  533. package/dist/types/actions/definition/triggers.d.ts.map +1 -0
  534. package/dist/types/createSchema.d.ts +6 -0
  535. package/dist/types/createSchema.d.ts.map +1 -0
  536. package/dist/types/index.d.ts +85 -0
  537. package/dist/types/index.d.ts.map +1 -0
  538. package/dist/types/model/definition/ViewDefinition.d.ts +5 -0
  539. package/dist/types/model/definition/ViewDefinition.d.ts.map +1 -0
  540. package/dist/types/model/definition/extensions.d.ts.map +1 -0
  541. package/dist/types/model/definition/index.d.ts +27 -0
  542. package/dist/types/model/definition/index.d.ts.map +1 -0
  543. package/dist/types/model/definition/types.d.ts +9 -0
  544. package/dist/types/model/definition/types.d.ts.map +1 -0
  545. package/dist/types/tsconfig.tsbuildinfo +1 -0
  546. package/dist/types/utils/MetadataStore.d.ts.map +1 -0
  547. package/dist/types/utils/filterEntityDefinition.d.ts.map +1 -0
  548. package/dist/types/utils/tuple.d.ts.map +1 -0
  549. package/dist/types/validation/index.d.ts.map +1 -0
  550. package/package.json +23 -11
  551. package/src/model/definition/index.ts +1 -1
  552. package/src/model/definition/types.ts +1 -1
  553. package/src/tsconfig.json +1 -1
  554. package/vitest.config.ts +3 -0
  555. package/dist/src/acl/builder/EntityPermissionsBuilder.js +0 -102
  556. package/dist/src/acl/builder/EntityPermissionsBuilder.js.map +0 -1
  557. package/dist/src/acl/builder/EntitySelector.js +0 -32
  558. package/dist/src/acl/builder/EntitySelector.js.map +0 -1
  559. package/dist/src/acl/builder/FieldPermissionsBuilder.js +0 -60
  560. package/dist/src/acl/builder/FieldPermissionsBuilder.js.map +0 -1
  561. package/dist/src/acl/builder/FieldSelector.js +0 -27
  562. package/dist/src/acl/builder/FieldSelector.js.map +0 -1
  563. package/dist/src/acl/builder/PermissionOverrider.js +0 -38
  564. package/dist/src/acl/builder/PermissionOverrider.js.map +0 -1
  565. package/dist/src/acl/builder/PermissionsBuilder.d.ts.map +0 -1
  566. package/dist/src/acl/builder/PermissionsBuilder.js +0 -58
  567. package/dist/src/acl/builder/PermissionsBuilder.js.map +0 -1
  568. package/dist/src/acl/builder/PredicateReference.d.ts.map +0 -1
  569. package/dist/src/acl/builder/PredicateReference.js +0 -36
  570. package/dist/src/acl/builder/PredicateReference.js.map +0 -1
  571. package/dist/src/acl/definition/customPrimary.d.ts.map +0 -1
  572. package/dist/src/acl/definition/customPrimary.js +0 -16
  573. package/dist/src/acl/definition/customPrimary.js.map +0 -1
  574. package/dist/src/acl/definition/index.d.ts.map +0 -1
  575. package/dist/src/acl/definition/index.js +0 -29
  576. package/dist/src/acl/definition/index.js.map +0 -1
  577. package/dist/src/acl/definition/internal/AclFactory.js +0 -106
  578. package/dist/src/acl/definition/internal/AclFactory.js.map +0 -1
  579. package/dist/src/acl/definition/internal/EntityPredicateResolver.js +0 -153
  580. package/dist/src/acl/definition/internal/EntityPredicateResolver.js.map +0 -1
  581. package/dist/src/acl/definition/internal/createPredicateName.js +0 -9
  582. package/dist/src/acl/definition/internal/createPredicateName.js.map +0 -1
  583. package/dist/src/acl/definition/internal/stores.js +0 -8
  584. package/dist/src/acl/definition/internal/stores.js.map +0 -1
  585. package/dist/src/acl/definition/permissions.d.ts.map +0 -1
  586. package/dist/src/acl/definition/permissions.js +0 -13
  587. package/dist/src/acl/definition/permissions.js.map +0 -1
  588. package/dist/src/acl/definition/references.d.ts.map +0 -1
  589. package/dist/src/acl/definition/references.js +0 -27
  590. package/dist/src/acl/definition/references.js.map +0 -1
  591. package/dist/src/acl/definition/roles.d.ts.map +0 -1
  592. package/dist/src/acl/definition/roles.js +0 -15
  593. package/dist/src/acl/definition/roles.js.map +0 -1
  594. package/dist/src/acl/definition/variables.d.ts.map +0 -1
  595. package/dist/src/acl/definition/variables.js +0 -25
  596. package/dist/src/acl/definition/variables.js.map +0 -1
  597. package/dist/src/actions/definition/index.d.ts.map +0 -1
  598. package/dist/src/actions/definition/index.js +0 -26
  599. package/dist/src/actions/definition/index.js.map +0 -1
  600. package/dist/src/actions/definition/internal/ActionsFactory.js +0 -183
  601. package/dist/src/actions/definition/internal/ActionsFactory.js.map +0 -1
  602. package/dist/src/actions/definition/internal/store.js +0 -6
  603. package/dist/src/actions/definition/internal/store.js.map +0 -1
  604. package/dist/src/actions/definition/targets.d.ts +0 -10
  605. package/dist/src/actions/definition/targets.d.ts.map +0 -1
  606. package/dist/src/actions/definition/targets.js +0 -13
  607. package/dist/src/actions/definition/targets.js.map +0 -1
  608. package/dist/src/actions/definition/triggers.d.ts.map +0 -1
  609. package/dist/src/actions/definition/triggers.js +0 -13
  610. package/dist/src/actions/definition/triggers.js.map +0 -1
  611. package/dist/src/createSchema.d.ts +0 -6
  612. package/dist/src/createSchema.d.ts.map +0 -1
  613. package/dist/src/createSchema.js +0 -24
  614. package/dist/src/createSchema.js.map +0 -1
  615. package/dist/src/index.d.ts +0 -85
  616. package/dist/src/index.d.ts.map +0 -1
  617. package/dist/src/index.js +0 -95
  618. package/dist/src/index.js.map +0 -1
  619. package/dist/src/model/builder/ColumnBuilder.js +0 -37
  620. package/dist/src/model/builder/ColumnBuilder.js.map +0 -1
  621. package/dist/src/model/builder/EntityBuilder.js +0 -61
  622. package/dist/src/model/builder/EntityBuilder.js.map +0 -1
  623. package/dist/src/model/builder/FieldBuilder.js +0 -15
  624. package/dist/src/model/builder/FieldBuilder.js.map +0 -1
  625. package/dist/src/model/builder/ManyHasManyBuilder.js +0 -33
  626. package/dist/src/model/builder/ManyHasManyBuilder.js.map +0 -1
  627. package/dist/src/model/builder/ManyHasOneBuilder.js +0 -34
  628. package/dist/src/model/builder/ManyHasOneBuilder.js.map +0 -1
  629. package/dist/src/model/builder/OneHasManyBuilder.js +0 -42
  630. package/dist/src/model/builder/OneHasManyBuilder.js.map +0 -1
  631. package/dist/src/model/builder/OneHasOneBuilder.js +0 -44
  632. package/dist/src/model/builder/OneHasOneBuilder.js.map +0 -1
  633. package/dist/src/model/builder/SchemaBuilder.js +0 -52
  634. package/dist/src/model/builder/SchemaBuilder.js.map +0 -1
  635. package/dist/src/model/builder/SchemaBuilderError.js +0 -7
  636. package/dist/src/model/builder/SchemaBuilderError.js.map +0 -1
  637. package/dist/src/model/builder/SchemaBuilderInternal.js +0 -146
  638. package/dist/src/model/builder/SchemaBuilderInternal.js.map +0 -1
  639. package/dist/src/model/builder/internal/ColumnProcessor.js +0 -32
  640. package/dist/src/model/builder/internal/ColumnProcessor.js.map +0 -1
  641. package/dist/src/model/builder/internal/FieldProcessor.js +0 -3
  642. package/dist/src/model/builder/internal/FieldProcessor.js.map +0 -1
  643. package/dist/src/model/builder/internal/ManyHasManyProcessor.js +0 -46
  644. package/dist/src/model/builder/internal/ManyHasManyProcessor.js.map +0 -1
  645. package/dist/src/model/builder/internal/ManyHasOneProcessor.js +0 -39
  646. package/dist/src/model/builder/internal/ManyHasOneProcessor.js.map +0 -1
  647. package/dist/src/model/builder/internal/OneHasManyProcessor.js +0 -41
  648. package/dist/src/model/builder/internal/OneHasManyProcessor.js.map +0 -1
  649. package/dist/src/model/builder/internal/OneHasOneProcessor.js +0 -40
  650. package/dist/src/model/builder/internal/OneHasOneProcessor.js.map +0 -1
  651. package/dist/src/model/builder/types.js +0 -3
  652. package/dist/src/model/builder/types.js.map +0 -1
  653. package/dist/src/model/definition/EnumDefinition.js +0 -14
  654. package/dist/src/model/definition/EnumDefinition.js.map +0 -1
  655. package/dist/src/model/definition/EventLogDefinition.js +0 -10
  656. package/dist/src/model/definition/EventLogDefinition.js.map +0 -1
  657. package/dist/src/model/definition/IndexDefinition.js +0 -18
  658. package/dist/src/model/definition/IndexDefinition.js.map +0 -1
  659. package/dist/src/model/definition/OrderByDefinition.js +0 -33
  660. package/dist/src/model/definition/OrderByDefinition.js.map +0 -1
  661. package/dist/src/model/definition/UniqueDefinition.js +0 -20
  662. package/dist/src/model/definition/UniqueDefinition.js.map +0 -1
  663. package/dist/src/model/definition/ViewDefinition.d.ts +0 -5
  664. package/dist/src/model/definition/ViewDefinition.d.ts.map +0 -1
  665. package/dist/src/model/definition/ViewDefinition.js +0 -26
  666. package/dist/src/model/definition/ViewDefinition.js.map +0 -1
  667. package/dist/src/model/definition/context.js +0 -3
  668. package/dist/src/model/definition/context.js.map +0 -1
  669. package/dist/src/model/definition/extensions.d.ts.map +0 -1
  670. package/dist/src/model/definition/extensions.js +0 -14
  671. package/dist/src/model/definition/extensions.js.map +0 -1
  672. package/dist/src/model/definition/fieldDefinitions/ColumnDefinition.js +0 -117
  673. package/dist/src/model/definition/fieldDefinitions/ColumnDefinition.js.map +0 -1
  674. package/dist/src/model/definition/fieldDefinitions/FieldDefinition.js +0 -13
  675. package/dist/src/model/definition/fieldDefinitions/FieldDefinition.js.map +0 -1
  676. package/dist/src/model/definition/fieldDefinitions/ManyHasManyDefinition.js +0 -47
  677. package/dist/src/model/definition/fieldDefinitions/ManyHasManyDefinition.js.map +0 -1
  678. package/dist/src/model/definition/fieldDefinitions/ManyHasManyInverseDefinition.js +0 -36
  679. package/dist/src/model/definition/fieldDefinitions/ManyHasManyInverseDefinition.js.map +0 -1
  680. package/dist/src/model/definition/fieldDefinitions/ManyHasOneDefinition.js +0 -55
  681. package/dist/src/model/definition/fieldDefinitions/ManyHasOneDefinition.js.map +0 -1
  682. package/dist/src/model/definition/fieldDefinitions/OneHasManyDefinition.js +0 -31
  683. package/dist/src/model/definition/fieldDefinitions/OneHasManyDefinition.js.map +0 -1
  684. package/dist/src/model/definition/fieldDefinitions/OneHasOneDefinition.js +0 -59
  685. package/dist/src/model/definition/fieldDefinitions/OneHasOneDefinition.js.map +0 -1
  686. package/dist/src/model/definition/fieldDefinitions/OneHasOneInverseDefinition.js +0 -35
  687. package/dist/src/model/definition/fieldDefinitions/OneHasOneInverseDefinition.js.map +0 -1
  688. package/dist/src/model/definition/fieldDefinitions/index.js +0 -25
  689. package/dist/src/model/definition/fieldDefinitions/index.js.map +0 -1
  690. package/dist/src/model/definition/index.d.ts +0 -27
  691. package/dist/src/model/definition/index.d.ts.map +0 -1
  692. package/dist/src/model/definition/index.js +0 -53
  693. package/dist/src/model/definition/index.js.map +0 -1
  694. package/dist/src/model/definition/internal/EntityRegistry.js +0 -27
  695. package/dist/src/model/definition/internal/EntityRegistry.js.map +0 -1
  696. package/dist/src/model/definition/internal/EnumRegistry.js +0 -27
  697. package/dist/src/model/definition/internal/EnumRegistry.js.map +0 -1
  698. package/dist/src/model/definition/internal/SchemaBuilder.js +0 -92
  699. package/dist/src/model/definition/internal/SchemaBuilder.js.map +0 -1
  700. package/dist/src/model/definition/internal/index.js +0 -20
  701. package/dist/src/model/definition/internal/index.js.map +0 -1
  702. package/dist/src/model/definition/types.d.ts +0 -9
  703. package/dist/src/model/definition/types.d.ts.map +0 -1
  704. package/dist/src/model/definition/types.js +0 -3
  705. package/dist/src/model/definition/types.js.map +0 -1
  706. package/dist/src/model/index.js +0 -20
  707. package/dist/src/model/index.js.map +0 -1
  708. package/dist/src/presets.js +0 -23
  709. package/dist/src/presets.js.map +0 -1
  710. package/dist/src/strict.js +0 -28
  711. package/dist/src/strict.js.map +0 -1
  712. package/dist/src/tsconfig.tsbuildinfo +0 -1
  713. package/dist/src/utils/MetadataStore.d.ts.map +0 -1
  714. package/dist/src/utils/MetadataStore.js +0 -22
  715. package/dist/src/utils/MetadataStore.js.map +0 -1
  716. package/dist/src/utils/assertNever.js +0 -8
  717. package/dist/src/utils/assertNever.js.map +0 -1
  718. package/dist/src/utils/decorators.js +0 -3
  719. package/dist/src/utils/decorators.js.map +0 -1
  720. package/dist/src/utils/filterEntityDefinition.d.ts.map +0 -1
  721. package/dist/src/utils/filterEntityDefinition.js +0 -11
  722. package/dist/src/utils/filterEntityDefinition.js.map +0 -1
  723. package/dist/src/utils/index.js +0 -22
  724. package/dist/src/utils/index.js.map +0 -1
  725. package/dist/src/utils/tuple.d.ts.map +0 -1
  726. package/dist/src/utils/tuple.js +0 -6
  727. package/dist/src/utils/tuple.js.map +0 -1
  728. package/dist/src/validation/index.d.ts.map +0 -1
  729. package/dist/src/validation/index.js +0 -190
  730. package/dist/src/validation/index.js.map +0 -1
  731. package/dist/tests/cases/unit/createSchema.test.js +0 -137
  732. package/dist/tests/cases/unit/createSchema.test.js.map +0 -1
  733. package/dist/tests/cases/unit/extendEntity.test.js +0 -40
  734. package/dist/tests/cases/unit/extendEntity.test.js.map +0 -1
  735. package/dist/tests/cases/unit/orderBy.test.js +0 -102
  736. package/dist/tests/cases/unit/orderBy.test.js.map +0 -1
  737. package/dist/tests/cases/unit/readAclDefinitions.test.js +0 -629
  738. package/dist/tests/cases/unit/readAclDefinitions.test.js.map +0 -1
  739. package/dist/tests/cases/unit/readActions.test.js +0 -109
  740. package/dist/tests/cases/unit/readActions.test.js.map +0 -1
  741. /package/dist/{src → types}/acl/builder/EntityPermissionsBuilder.d.ts +0 -0
  742. /package/dist/{src → types}/acl/builder/EntityPermissionsBuilder.d.ts.map +0 -0
  743. /package/dist/{src → types}/acl/builder/EntitySelector.d.ts +0 -0
  744. /package/dist/{src → types}/acl/builder/EntitySelector.d.ts.map +0 -0
  745. /package/dist/{src → types}/acl/builder/FieldPermissionsBuilder.d.ts +0 -0
  746. /package/dist/{src → types}/acl/builder/FieldPermissionsBuilder.d.ts.map +0 -0
  747. /package/dist/{src → types}/acl/builder/FieldSelector.d.ts +0 -0
  748. /package/dist/{src → types}/acl/builder/FieldSelector.d.ts.map +0 -0
  749. /package/dist/{src → types}/acl/builder/PermissionOverrider.d.ts +0 -0
  750. /package/dist/{src → types}/acl/builder/PermissionOverrider.d.ts.map +0 -0
  751. /package/dist/{src → types}/acl/builder/PermissionsBuilder.d.ts +0 -0
  752. /package/dist/{src → types}/acl/builder/PredicateReference.d.ts +0 -0
  753. /package/dist/{src → types}/acl/definition/customPrimary.d.ts +0 -0
  754. /package/dist/{src → types}/acl/definition/index.d.ts +0 -0
  755. /package/dist/{src → types}/acl/definition/internal/AclFactory.d.ts +0 -0
  756. /package/dist/{src → types}/acl/definition/internal/AclFactory.d.ts.map +0 -0
  757. /package/dist/{src → types}/acl/definition/internal/EntityPredicateResolver.d.ts +0 -0
  758. /package/dist/{src → types}/acl/definition/internal/EntityPredicateResolver.d.ts.map +0 -0
  759. /package/dist/{src → types}/acl/definition/internal/createPredicateName.d.ts +0 -0
  760. /package/dist/{src → types}/acl/definition/internal/createPredicateName.d.ts.map +0 -0
  761. /package/dist/{src → types}/acl/definition/internal/stores.d.ts +0 -0
  762. /package/dist/{src → types}/acl/definition/internal/stores.d.ts.map +0 -0
  763. /package/dist/{src → types}/acl/definition/permissions.d.ts +0 -0
  764. /package/dist/{src → types}/acl/definition/references.d.ts +0 -0
  765. /package/dist/{src → types}/acl/definition/roles.d.ts +0 -0
  766. /package/dist/{src → types}/acl/definition/variables.d.ts +0 -0
  767. /package/dist/{src → types}/actions/definition/index.d.ts +0 -0
  768. /package/dist/{src → types}/actions/definition/internal/ActionsFactory.d.ts +0 -0
  769. /package/dist/{src → types}/actions/definition/internal/ActionsFactory.d.ts.map +0 -0
  770. /package/dist/{src → types}/actions/definition/internal/store.d.ts +0 -0
  771. /package/dist/{src → types}/actions/definition/internal/store.d.ts.map +0 -0
  772. /package/dist/{src → types}/actions/definition/triggers.d.ts +0 -0
  773. /package/dist/{src → types}/model/builder/ColumnBuilder.d.ts +0 -0
  774. /package/dist/{src → types}/model/builder/ColumnBuilder.d.ts.map +0 -0
  775. /package/dist/{src → types}/model/builder/EntityBuilder.d.ts +0 -0
  776. /package/dist/{src → types}/model/builder/EntityBuilder.d.ts.map +0 -0
  777. /package/dist/{src → types}/model/builder/FieldBuilder.d.ts +0 -0
  778. /package/dist/{src → types}/model/builder/FieldBuilder.d.ts.map +0 -0
  779. /package/dist/{src → types}/model/builder/ManyHasManyBuilder.d.ts +0 -0
  780. /package/dist/{src → types}/model/builder/ManyHasManyBuilder.d.ts.map +0 -0
  781. /package/dist/{src → types}/model/builder/ManyHasOneBuilder.d.ts +0 -0
  782. /package/dist/{src → types}/model/builder/ManyHasOneBuilder.d.ts.map +0 -0
  783. /package/dist/{src → types}/model/builder/OneHasManyBuilder.d.ts +0 -0
  784. /package/dist/{src → types}/model/builder/OneHasManyBuilder.d.ts.map +0 -0
  785. /package/dist/{src → types}/model/builder/OneHasOneBuilder.d.ts +0 -0
  786. /package/dist/{src → types}/model/builder/OneHasOneBuilder.d.ts.map +0 -0
  787. /package/dist/{src → types}/model/builder/SchemaBuilder.d.ts +0 -0
  788. /package/dist/{src → types}/model/builder/SchemaBuilder.d.ts.map +0 -0
  789. /package/dist/{src → types}/model/builder/SchemaBuilderError.d.ts +0 -0
  790. /package/dist/{src → types}/model/builder/SchemaBuilderError.d.ts.map +0 -0
  791. /package/dist/{src → types}/model/builder/SchemaBuilderInternal.d.ts +0 -0
  792. /package/dist/{src → types}/model/builder/SchemaBuilderInternal.d.ts.map +0 -0
  793. /package/dist/{src → types}/model/builder/internal/ColumnProcessor.d.ts +0 -0
  794. /package/dist/{src → types}/model/builder/internal/ColumnProcessor.d.ts.map +0 -0
  795. /package/dist/{src → types}/model/builder/internal/FieldProcessor.d.ts +0 -0
  796. /package/dist/{src → types}/model/builder/internal/FieldProcessor.d.ts.map +0 -0
  797. /package/dist/{src → types}/model/builder/internal/ManyHasManyProcessor.d.ts +0 -0
  798. /package/dist/{src → types}/model/builder/internal/ManyHasManyProcessor.d.ts.map +0 -0
  799. /package/dist/{src → types}/model/builder/internal/ManyHasOneProcessor.d.ts +0 -0
  800. /package/dist/{src → types}/model/builder/internal/ManyHasOneProcessor.d.ts.map +0 -0
  801. /package/dist/{src → types}/model/builder/internal/OneHasManyProcessor.d.ts +0 -0
  802. /package/dist/{src → types}/model/builder/internal/OneHasManyProcessor.d.ts.map +0 -0
  803. /package/dist/{src → types}/model/builder/internal/OneHasOneProcessor.d.ts +0 -0
  804. /package/dist/{src → types}/model/builder/internal/OneHasOneProcessor.d.ts.map +0 -0
  805. /package/dist/{src → types}/model/builder/types.d.ts +0 -0
  806. /package/dist/{src → types}/model/builder/types.d.ts.map +0 -0
  807. /package/dist/{src → types}/model/definition/EnumDefinition.d.ts +0 -0
  808. /package/dist/{src → types}/model/definition/EnumDefinition.d.ts.map +0 -0
  809. /package/dist/{src → types}/model/definition/EventLogDefinition.d.ts +0 -0
  810. /package/dist/{src → types}/model/definition/EventLogDefinition.d.ts.map +0 -0
  811. /package/dist/{src → types}/model/definition/IndexDefinition.d.ts +0 -0
  812. /package/dist/{src → types}/model/definition/IndexDefinition.d.ts.map +0 -0
  813. /package/dist/{src → types}/model/definition/OrderByDefinition.d.ts +0 -0
  814. /package/dist/{src → types}/model/definition/OrderByDefinition.d.ts.map +0 -0
  815. /package/dist/{src → types}/model/definition/UniqueDefinition.d.ts +0 -0
  816. /package/dist/{src → types}/model/definition/UniqueDefinition.d.ts.map +0 -0
  817. /package/dist/{src → types}/model/definition/context.d.ts +0 -0
  818. /package/dist/{src → types}/model/definition/context.d.ts.map +0 -0
  819. /package/dist/{src → types}/model/definition/extensions.d.ts +0 -0
  820. /package/dist/{src → types}/model/definition/fieldDefinitions/ColumnDefinition.d.ts +0 -0
  821. /package/dist/{src → types}/model/definition/fieldDefinitions/ColumnDefinition.d.ts.map +0 -0
  822. /package/dist/{src → types}/model/definition/fieldDefinitions/FieldDefinition.d.ts +0 -0
  823. /package/dist/{src → types}/model/definition/fieldDefinitions/FieldDefinition.d.ts.map +0 -0
  824. /package/dist/{src → types}/model/definition/fieldDefinitions/ManyHasManyDefinition.d.ts +0 -0
  825. /package/dist/{src → types}/model/definition/fieldDefinitions/ManyHasManyDefinition.d.ts.map +0 -0
  826. /package/dist/{src → types}/model/definition/fieldDefinitions/ManyHasManyInverseDefinition.d.ts +0 -0
  827. /package/dist/{src → types}/model/definition/fieldDefinitions/ManyHasManyInverseDefinition.d.ts.map +0 -0
  828. /package/dist/{src → types}/model/definition/fieldDefinitions/ManyHasOneDefinition.d.ts +0 -0
  829. /package/dist/{src → types}/model/definition/fieldDefinitions/ManyHasOneDefinition.d.ts.map +0 -0
  830. /package/dist/{src → types}/model/definition/fieldDefinitions/OneHasManyDefinition.d.ts +0 -0
  831. /package/dist/{src → types}/model/definition/fieldDefinitions/OneHasManyDefinition.d.ts.map +0 -0
  832. /package/dist/{src → types}/model/definition/fieldDefinitions/OneHasOneDefinition.d.ts +0 -0
  833. /package/dist/{src → types}/model/definition/fieldDefinitions/OneHasOneDefinition.d.ts.map +0 -0
  834. /package/dist/{src → types}/model/definition/fieldDefinitions/OneHasOneInverseDefinition.d.ts +0 -0
  835. /package/dist/{src → types}/model/definition/fieldDefinitions/OneHasOneInverseDefinition.d.ts.map +0 -0
  836. /package/dist/{src → types}/model/definition/fieldDefinitions/index.d.ts +0 -0
  837. /package/dist/{src → types}/model/definition/fieldDefinitions/index.d.ts.map +0 -0
  838. /package/dist/{src → types}/model/definition/internal/EntityRegistry.d.ts +0 -0
  839. /package/dist/{src → types}/model/definition/internal/EntityRegistry.d.ts.map +0 -0
  840. /package/dist/{src → types}/model/definition/internal/EnumRegistry.d.ts +0 -0
  841. /package/dist/{src → types}/model/definition/internal/EnumRegistry.d.ts.map +0 -0
  842. /package/dist/{src → types}/model/definition/internal/SchemaBuilder.d.ts +0 -0
  843. /package/dist/{src → types}/model/definition/internal/SchemaBuilder.d.ts.map +0 -0
  844. /package/dist/{src → types}/model/definition/internal/index.d.ts +0 -0
  845. /package/dist/{src → types}/model/definition/internal/index.d.ts.map +0 -0
  846. /package/dist/{src → types}/model/index.d.ts +0 -0
  847. /package/dist/{src → types}/model/index.d.ts.map +0 -0
  848. /package/dist/{src → types}/presets.d.ts +0 -0
  849. /package/dist/{src → types}/presets.d.ts.map +0 -0
  850. /package/dist/{src → types}/strict.d.ts +0 -0
  851. /package/dist/{src → types}/strict.d.ts.map +0 -0
  852. /package/dist/{src → types}/utils/MetadataStore.d.ts +0 -0
  853. /package/dist/{src → types}/utils/assertNever.d.ts +0 -0
  854. /package/dist/{src → types}/utils/assertNever.d.ts.map +0 -0
  855. /package/dist/{src → types}/utils/decorators.d.ts +0 -0
  856. /package/dist/{src → types}/utils/decorators.d.ts.map +0 -0
  857. /package/dist/{src → types}/utils/filterEntityDefinition.d.ts +0 -0
  858. /package/dist/{src → types}/utils/index.d.ts +0 -0
  859. /package/dist/{src → types}/utils/index.d.ts.map +0 -0
  860. /package/dist/{src → types}/utils/tuple.d.ts +0 -0
  861. /package/dist/{src → types}/validation/index.d.ts +0 -0
@@ -0,0 +1,179 @@
1
+ import { assertNever } from "../../../utils/assertNever.js";
2
+ import { filterEntityDefinition } from "../../../utils/filterEntityDefinition.js";
3
+ import "reflect-metadata";
4
+ import { triggersStore } from "./store.js";
5
+ import { ActionsTarget } from "../targets.js";
6
+ import { parse, Kind } from "graphql";
7
+ var __defProp = Object.defineProperty;
8
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
9
+ var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
10
+ class ActionsFactory {
11
+ constructor() {
12
+ }
13
+ create(exportedDefinitions) {
14
+ const entityLikeDefinition = filterEntityDefinition(exportedDefinitions);
15
+ const targetsRegistry = new ActionsTargetRegistry();
16
+ for (const [exportedAs, def] of Object.entries(exportedDefinitions)) {
17
+ if (!(def instanceof ActionsTarget)) {
18
+ continue;
19
+ }
20
+ const name = def.name ?? exportedAs;
21
+ targetsRegistry.register(name, def.definition);
22
+ }
23
+ const triggersDef = entityLikeDefinition.flatMap(([, entity]) => triggersStore.get(entity).map((it) => ({
24
+ ...it,
25
+ entity
26
+ })));
27
+ const triggerNames = triggersDef.map((it) => it.definition.name).filter((it) => !!it);
28
+ triggerNames.forEach((it, index, arr) => {
29
+ if (arr.indexOf(it) !== index) {
30
+ throw `Duplicate trigger name ${it}.`;
31
+ }
32
+ });
33
+ const triggers = {};
34
+ for (const { definition, entity, type } of triggersDef) {
35
+ const name = definition.name;
36
+ const target = this.resolveTarget(name, definition, targetsRegistry);
37
+ let trigger;
38
+ if (type === "basic") {
39
+ trigger = {
40
+ target,
41
+ ...this.createBasicTrigger(name, entity.name, definition)
42
+ };
43
+ } else if (type === "watch") {
44
+ trigger = {
45
+ target,
46
+ ...this.createWatchTrigger(name, entity.name, definition)
47
+ };
48
+ } else {
49
+ assertNever();
50
+ }
51
+ triggers[name] = trigger;
52
+ }
53
+ return { triggers, targets: targetsRegistry.getTargets() };
54
+ }
55
+ resolveTarget(triggerName, targetDefinition, targetRegistry) {
56
+ const generatedName = `${triggerName}_target`;
57
+ if ("target" in targetDefinition) {
58
+ if (targetDefinition.target instanceof ActionsTarget) {
59
+ const registeredName = targetRegistry.getName(targetDefinition.target.definition);
60
+ if (!registeredName) {
61
+ throw `Target of ${triggerName} trigger is not registered. Have you exported it?`;
62
+ }
63
+ return registeredName;
64
+ } else {
65
+ const { name, ...def } = targetDefinition.target;
66
+ const resolvedName = name ?? generatedName;
67
+ targetRegistry.register(resolvedName, { name: generatedName, ...def });
68
+ return resolvedName;
69
+ }
70
+ } else if ("webhook" in targetDefinition) {
71
+ if (typeof targetDefinition.webhook === "string") {
72
+ targetRegistry.register(generatedName, {
73
+ type: "webhook",
74
+ url: targetDefinition.webhook
75
+ });
76
+ } else {
77
+ targetRegistry.register(generatedName, {
78
+ type: "webhook",
79
+ ...targetDefinition.webhook
80
+ });
81
+ }
82
+ return generatedName;
83
+ }
84
+ return assertNever();
85
+ }
86
+ createWatchTrigger(name, entity, trigger) {
87
+ return {
88
+ type: "watch",
89
+ entity,
90
+ name,
91
+ watch: this.parseSelection(trigger.watch),
92
+ selection: trigger.selection ? this.parseSelection(trigger.selection) : void 0,
93
+ priority: trigger.priority
94
+ };
95
+ }
96
+ createBasicTrigger(name, entity, trigger) {
97
+ return {
98
+ type: "basic",
99
+ entity,
100
+ name,
101
+ create: trigger.create ?? false,
102
+ delete: trigger.delete ?? false,
103
+ update: trigger.update ?? false,
104
+ selection: trigger.selection ? this.parseSelection(trigger.selection) : void 0,
105
+ priority: trigger.priority
106
+ };
107
+ }
108
+ parseSelection(selection) {
109
+ if (typeof selection !== "string") {
110
+ return selection;
111
+ }
112
+ const result = parse(`{
113
+ ${selection}
114
+ }`);
115
+ for (const def of result.definitions) {
116
+ if (def.kind === "OperationDefinition") {
117
+ return this.processSelectionSet(def.selectionSet.selections);
118
+ }
119
+ }
120
+ throw new Error();
121
+ }
122
+ processSelectionSet(selectionSet) {
123
+ return selectionSet.map((it) => {
124
+ if (it.kind !== "Field") {
125
+ throw `${it.kind} is not supported.`;
126
+ }
127
+ if (it.arguments?.length === 0 && it.selectionSet === void 0) {
128
+ return it.name.value;
129
+ }
130
+ const args = Object.fromEntries(it.arguments?.map((it2) => [it2.name, parseArguments(it2.value)]) ?? []);
131
+ return [it.name.value, args, it.selectionSet ? this.processSelectionSet(it.selectionSet.selections) : []];
132
+ });
133
+ }
134
+ }
135
+ class ActionsTargetRegistry {
136
+ constructor() {
137
+ __publicField(this, "targets", {});
138
+ __publicField(this, "targetsInverseMap", /* @__PURE__ */ new Map());
139
+ }
140
+ register(name, target) {
141
+ if (this.targets[name]) {
142
+ throw `Duplicate trigger target name ${name}`;
143
+ }
144
+ this.targets[name] = { name, ...target };
145
+ this.targetsInverseMap.set(target, name);
146
+ }
147
+ getName(target) {
148
+ return this.targetsInverseMap.get(target);
149
+ }
150
+ getTargets() {
151
+ return this.targets;
152
+ }
153
+ }
154
+ const parseArguments = (ast) => {
155
+ switch (ast.kind) {
156
+ case Kind.STRING:
157
+ return ast.value;
158
+ case Kind.BOOLEAN:
159
+ return ast.value;
160
+ case Kind.FLOAT:
161
+ return parseFloat(ast.value);
162
+ case Kind.INT:
163
+ return Number(ast.value);
164
+ case Kind.LIST:
165
+ return ast.values.map((it) => parseArguments(it));
166
+ case Kind.OBJECT:
167
+ return Object.fromEntries(ast.fields.map((it) => [it.name.value, parseArguments(it.value)]));
168
+ case Kind.ENUM:
169
+ return ast.value;
170
+ case Kind.NULL:
171
+ return null;
172
+ case Kind.VARIABLE:
173
+ throw `Variables are not supported here.`;
174
+ }
175
+ };
176
+ export {
177
+ ActionsFactory
178
+ };
179
+ //# sourceMappingURL=ActionsFactory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ActionsFactory.js","sources":["../../../../../../../packages/schema-definition/src/actions/definition/internal/ActionsFactory.ts"],"sourcesContent":["import { assertNever, filterEntityDefinition } from '../../../utils'\nimport { Actions } from '@contember/schema'\nimport { triggersStore } from './store'\nimport { BasicTriggerDefinition, TargetDefinition, WatchTriggerDefinition } from '../triggers'\nimport { ActionsTarget } from '../targets'\nimport { Kind, parse, SelectionNode, ValueNode } from 'graphql'\n\nexport class ActionsFactory {\n\tconstructor(\n\t) {\n\t}\n\n\tpublic create(\n\t\texportedDefinitions: Record<string, any>,\n\t): Actions.Schema {\n\t\tconst entityLikeDefinition = filterEntityDefinition(exportedDefinitions)\n\n\t\tconst targetsRegistry = new ActionsTargetRegistry()\n\t\tfor (const [exportedAs, def] of Object.entries(exportedDefinitions)) {\n\t\t\tif (!(def instanceof ActionsTarget)) {\n\t\t\t\tcontinue\n\t\t\t}\n\t\t\tconst name = def.name ?? exportedAs\n\t\t\ttargetsRegistry.register(name, def.definition)\n\t\t}\n\n\t\tconst triggersDef = entityLikeDefinition.flatMap(([, entity]) => triggersStore.get(entity).map(it => ({\n\t\t\t...it,\n\t\t\tentity,\n\t\t})))\n\n\t\tconst triggerNames = triggersDef.map(it => it.definition.name).filter((it): it is string => !!it)\n\t\ttriggerNames.forEach((it, index, arr) => {\n\t\t\tif (arr.indexOf(it) !== index) {\n\t\t\t\tthrow `Duplicate trigger name ${it}.`\n\t\t\t}\n\t\t})\n\n\t\tconst triggers: Record<string, Actions.AnyTrigger> = {}\n\t\tfor (const { definition, entity, type } of triggersDef) {\n\t\t\tconst name = definition.name\n\t\t\tconst target = this.resolveTarget(name, definition, targetsRegistry)\n\t\t\tlet trigger: Actions.AnyTrigger\n\t\t\tif (type === 'basic') {\n\t\t\t\ttrigger = {\n\t\t\t\t\ttarget,\n\t\t\t\t\t...this.createBasicTrigger(name, entity.name, definition),\n\t\t\t\t}\n\t\t\t} else if (type === 'watch') {\n\t\t\t\ttrigger = {\n\t\t\t\t\ttarget,\n\t\t\t\t\t...this.createWatchTrigger(name, entity.name, definition),\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tassertNever(type)\n\t\t\t}\n\t\t\ttriggers[name] = trigger\n\t\t}\n\n\n\t\treturn { triggers, targets: targetsRegistry.getTargets() }\n\t}\n\n\tprivate resolveTarget(triggerName: string, targetDefinition: TargetDefinition, targetRegistry: ActionsTargetRegistry): string {\n\t\tconst generatedName = `${triggerName}_target`\n\t\tif ('target' in targetDefinition) {\n\t\t\tif (targetDefinition.target instanceof ActionsTarget) {\n\t\t\t\tconst registeredName = targetRegistry.getName(targetDefinition.target.definition)\n\t\t\t\tif (!registeredName) {\n\t\t\t\t\tthrow `Target of ${triggerName} trigger is not registered. Have you exported it?`\n\t\t\t\t}\n\t\t\t\treturn registeredName\n\t\t\t} else {\n\t\t\t\tconst { name, ...def } = targetDefinition.target\n\t\t\t\tconst resolvedName = name ?? generatedName\n\t\t\t\ttargetRegistry.register(resolvedName, { name: generatedName, ...def })\n\t\t\t\treturn resolvedName\n\t\t\t}\n\t\t} else if ('webhook' in targetDefinition) {\n\t\t\tif (typeof targetDefinition.webhook === 'string') {\n\t\t\t\ttargetRegistry.register(generatedName, {\n\t\t\t\t\ttype: 'webhook',\n\t\t\t\t\turl: targetDefinition.webhook,\n\t\t\t\t})\n\t\t\t} else {\n\t\t\t\ttargetRegistry.register(generatedName, {\n\t\t\t\t\ttype: 'webhook',\n\t\t\t\t\t...targetDefinition.webhook,\n\t\t\t\t})\n\t\t\t}\n\t\t\treturn generatedName\n\t\t}\n\t\treturn assertNever(targetDefinition)\n\t}\n\n\tprivate createWatchTrigger(name: string, entity: string, trigger: WatchTriggerDefinition): Omit<Actions.WatchTrigger, 'target'> {\n\t\treturn {\n\t\t\ttype: 'watch',\n\t\t\tentity,\n\t\t\tname,\n\t\t\twatch: this.parseSelection(trigger.watch),\n\t\t\tselection: trigger.selection ? this.parseSelection(trigger.selection) : undefined,\n\t\t\tpriority: trigger.priority,\n\t\t}\n\t}\n\n\tprivate createBasicTrigger(name: string, entity: string, trigger: BasicTriggerDefinition): Omit<Actions.BasicTrigger, 'target'> {\n\t\treturn {\n\t\t\ttype: 'basic',\n\t\t\tentity,\n\t\t\tname,\n\t\t\tcreate: trigger.create ?? false,\n\t\t\tdelete: trigger.delete ?? false,\n\t\t\tupdate: trigger.update ?? false,\n\t\t\tselection: trigger.selection ? this.parseSelection(trigger.selection) : undefined,\n\t\t\tpriority: trigger.priority,\n\t\t}\n\t}\n\n\tprivate parseSelection(selection: Actions.SelectionNode | string): Actions.SelectionNode {\n\t\tif (typeof selection !== 'string') {\n\t\t\treturn selection\n\t\t}\n\t\tconst result = parse(`{\n\t\t\t${selection}\n\t\t}`)\n\t\tfor (const def of result.definitions) {\n\t\t\tif (def.kind === 'OperationDefinition') {\n\t\t\t\treturn this.processSelectionSet(def.selectionSet.selections)\n\t\t\t}\n\t\t}\n\t\tthrow new Error()\n\t}\n\n\tprivate processSelectionSet(selectionSet: readonly SelectionNode[]): Actions.SelectionNode {\n\t\treturn selectionSet.map(it => {\n\t\t\tif (it.kind !== 'Field') {\n\t\t\t\tthrow `${it.kind} is not supported.`\n\t\t\t}\n\t\t\tif (it.arguments?.length === 0 && it.selectionSet === undefined) {\n\t\t\t\treturn it.name.value\n\t\t\t}\n\t\t\tconst args = Object.fromEntries(it.arguments?.map(it => [it.name, parseArguments(it.value)]) ?? [])\n\t\t\treturn [it.name.value, args, it.selectionSet ? this.processSelectionSet(it.selectionSet.selections) : []]\n\t\t})\n\t}\n}\n\nclass ActionsTargetRegistry {\n\tprivate targets: Record<string, Actions.AnyTarget> = {}\n\tprivate targetsInverseMap = new Map<Omit<Actions.AnyTarget, 'name'>, string>()\n\n\tpublic register(name: string, target: Omit<Actions.AnyTarget, 'name'> & { name?: string }): void {\n\t\tif (this.targets[name]) {\n\t\t\tthrow `Duplicate trigger target name ${name}`\n\t\t}\n\t\tthis.targets[name] = { name, ...target }\n\t\tthis.targetsInverseMap.set(target, name)\n\t}\n\n\tpublic getName(target: Omit<Actions.AnyTarget, 'name'>): string | undefined {\n\t\treturn this.targetsInverseMap.get(target)\n\t}\n\n\tpublic getTargets() {\n\t\treturn this.targets\n\t}\n}\n\nconst parseArguments = (ast: ValueNode): any => {\n\tswitch (ast.kind) {\n\t\tcase Kind.STRING:\n\t\t\treturn ast.value\n\t\tcase Kind.BOOLEAN:\n\t\t\treturn ast.value\n\t\tcase Kind.FLOAT:\n\t\t\treturn parseFloat(ast.value)\n\t\tcase Kind.INT:\n\t\t\treturn Number(ast.value)\n\t\tcase Kind.LIST:\n\t\t\treturn ast.values.map(it => parseArguments(it))\n\t\tcase Kind.OBJECT:\n\t\t\treturn Object.fromEntries(ast.fields.map(it => [it.name.value, parseArguments(it.value)]))\n\t\tcase Kind.ENUM:\n\t\t\treturn ast.value\n\t\tcase Kind.NULL:\n\t\t\treturn null\n\t\tcase Kind.VARIABLE:\n\t\t\tthrow `Variables are not supported here.`\n\t}\n}\n"],"names":["it"],"mappings":";;;;;;;;;AAOO,MAAM,eAAe;AAAA,EAC3B,cACE;AAAA,EACF;AAAA,EAEO,OACN,qBACiB;AACX,UAAA,uBAAuB,uBAAuB,mBAAmB;AAEjE,UAAA,kBAAkB,IAAI;AAC5B,eAAW,CAAC,YAAY,GAAG,KAAK,OAAO,QAAQ,mBAAmB,GAAG;AAChE,UAAA,EAAE,eAAe,gBAAgB;AACpC;AAAA,MACD;AACM,YAAA,OAAO,IAAI,QAAQ;AACT,sBAAA,SAAS,MAAM,IAAI,UAAU;AAAA,IAC9C;AAEA,UAAM,cAAc,qBAAqB,QAAQ,CAAC,CAAA,EAAG,MAAM,MAAM,cAAc,IAAI,MAAM,EAAE,IAAI,CAAO,QAAA;AAAA,MACrG,GAAG;AAAA,MACH;AAAA,MACC,CAAC;AAEH,UAAM,eAAe,YAAY,IAAI,CAAA,OAAM,GAAG,WAAW,IAAI,EAAE,OAAO,CAAC,OAAqB,CAAC,CAAC,EAAE;AAChG,iBAAa,QAAQ,CAAC,IAAI,OAAO,QAAQ;AACxC,UAAI,IAAI,QAAQ,EAAE,MAAM,OAAO;AAC9B,cAAM,0BAA0B,EAAE;AAAA,MACnC;AAAA,IAAA,CACA;AAED,UAAM,WAA+C,CAAA;AACrD,eAAW,EAAE,YAAY,QAAQ,KAAA,KAAU,aAAa;AACvD,YAAM,OAAO,WAAW;AACxB,YAAM,SAAS,KAAK,cAAc,MAAM,YAAY,eAAe;AAC/D,UAAA;AACJ,UAAI,SAAS,SAAS;AACX,kBAAA;AAAA,UACT;AAAA,UACA,GAAG,KAAK,mBAAmB,MAAM,OAAO,MAAM,UAAU;AAAA,QAAA;AAAA,MACzD,WACU,SAAS,SAAS;AAClB,kBAAA;AAAA,UACT;AAAA,UACA,GAAG,KAAK,mBAAmB,MAAM,OAAO,MAAM,UAAU;AAAA,QAAA;AAAA,MACzD,OACM;AACN,oBAAgB;AAAA,MACjB;AACA,eAAS,IAAI,IAAI;AAAA,IAClB;AAGA,WAAO,EAAE,UAAU,SAAS,gBAAgB,WAAa,EAAA;AAAA,EAC1D;AAAA,EAEQ,cAAc,aAAqB,kBAAoC,gBAA+C;AACvH,UAAA,gBAAgB,GAAG,WAAW;AACpC,QAAI,YAAY,kBAAkB;AAC7B,UAAA,iBAAiB,kBAAkB,eAAe;AACrD,cAAM,iBAAiB,eAAe,QAAQ,iBAAiB,OAAO,UAAU;AAChF,YAAI,CAAC,gBAAgB;AACpB,gBAAM,aAAa,WAAW;AAAA,QAC/B;AACO,eAAA;AAAA,MAAA,OACD;AACN,cAAM,EAAE,MAAM,GAAG,IAAA,IAAQ,iBAAiB;AAC1C,cAAM,eAAe,QAAQ;AAC7B,uBAAe,SAAS,cAAc,EAAE,MAAM,eAAe,GAAG,KAAK;AAC9D,eAAA;AAAA,MACR;AAAA,IAAA,WACU,aAAa,kBAAkB;AACrC,UAAA,OAAO,iBAAiB,YAAY,UAAU;AACjD,uBAAe,SAAS,eAAe;AAAA,UACtC,MAAM;AAAA,UACN,KAAK,iBAAiB;AAAA,QAAA,CACtB;AAAA,MAAA,OACK;AACN,uBAAe,SAAS,eAAe;AAAA,UACtC,MAAM;AAAA,UACN,GAAG,iBAAiB;AAAA,QAAA,CACpB;AAAA,MACF;AACO,aAAA;AAAA,IACR;AACA,WAAO,YAA4B;AAAA,EACpC;AAAA,EAEQ,mBAAmB,MAAc,QAAgB,SAAuE;AACxH,WAAA;AAAA,MACN,MAAM;AAAA,MACN;AAAA,MACA;AAAA,MACA,OAAO,KAAK,eAAe,QAAQ,KAAK;AAAA,MACxC,WAAW,QAAQ,YAAY,KAAK,eAAe,QAAQ,SAAS,IAAI;AAAA,MACxE,UAAU,QAAQ;AAAA,IAAA;AAAA,EAEpB;AAAA,EAEQ,mBAAmB,MAAc,QAAgB,SAAuE;AACxH,WAAA;AAAA,MACN,MAAM;AAAA,MACN;AAAA,MACA;AAAA,MACA,QAAQ,QAAQ,UAAU;AAAA,MAC1B,QAAQ,QAAQ,UAAU;AAAA,MAC1B,QAAQ,QAAQ,UAAU;AAAA,MAC1B,WAAW,QAAQ,YAAY,KAAK,eAAe,QAAQ,SAAS,IAAI;AAAA,MACxE,UAAU,QAAQ;AAAA,IAAA;AAAA,EAEpB;AAAA,EAEQ,eAAe,WAAkE;AACpF,QAAA,OAAO,cAAc,UAAU;AAC3B,aAAA;AAAA,IACR;AACA,UAAM,SAAS,MAAM;AAAA,KAClB,SAAS;AAAA,IACV;AACS,eAAA,OAAO,OAAO,aAAa;AACjC,UAAA,IAAI,SAAS,uBAAuB;AACvC,eAAO,KAAK,oBAAoB,IAAI,aAAa,UAAU;AAAA,MAC5D;AAAA,IACD;AACA,UAAM,IAAI,MAAM;AAAA,EACjB;AAAA,EAEQ,oBAAoB,cAA+D;AACnF,WAAA,aAAa,IAAI,CAAM,OAAA;AACzB,UAAA,GAAG,SAAS,SAAS;AAClB,cAAA,GAAG,GAAG,IAAI;AAAA,MACjB;AACA,UAAI,GAAG,WAAW,WAAW,KAAK,GAAG,iBAAiB,QAAW;AAChE,eAAO,GAAG,KAAK;AAAA,MAChB;AACA,YAAM,OAAO,OAAO,YAAY,GAAG,WAAW,IAAI,CAAAA,QAAM,CAACA,IAAG,MAAM,eAAeA,IAAG,KAAK,CAAC,CAAC,KAAK,CAAA,CAAE;AAClG,aAAO,CAAC,GAAG,KAAK,OAAO,MAAM,GAAG,eAAe,KAAK,oBAAoB,GAAG,aAAa,UAAU,IAAI,CAAE,CAAA;AAAA,IAAA,CACxG;AAAA,EACF;AACD;AAEA,MAAM,sBAAsB;AAAA,EAA5B,cAAA;AACC,kBAAA,MAAQ,WAA6C,CAAA,CAAC;AAC9C,kBAAA,MAAA,yCAAwB,IAA6C,CAAA;AAAA,EAAA;AAAA,EAEtE,SAAS,MAAc,QAAmE;AAC5F,QAAA,KAAK,QAAQ,IAAI,GAAG;AACvB,YAAM,iCAAiC,IAAI;AAAA,IAC5C;AACA,SAAK,QAAQ,IAAI,IAAI,EAAE,MAAM,GAAG;AAC3B,SAAA,kBAAkB,IAAI,QAAQ,IAAI;AAAA,EACxC;AAAA,EAEO,QAAQ,QAA6D;AACpE,WAAA,KAAK,kBAAkB,IAAI,MAAM;AAAA,EACzC;AAAA,EAEO,aAAa;AACnB,WAAO,KAAK;AAAA,EACb;AACD;AAEA,MAAM,iBAAiB,CAAC,QAAwB;AAC/C,UAAQ,IAAI,MAAM;AAAA,IACjB,KAAK,KAAK;AACT,aAAO,IAAI;AAAA,IACZ,KAAK,KAAK;AACT,aAAO,IAAI;AAAA,IACZ,KAAK,KAAK;AACF,aAAA,WAAW,IAAI,KAAK;AAAA,IAC5B,KAAK,KAAK;AACF,aAAA,OAAO,IAAI,KAAK;AAAA,IACxB,KAAK,KAAK;AACT,aAAO,IAAI,OAAO,IAAI,CAAM,OAAA,eAAe,EAAE,CAAC;AAAA,IAC/C,KAAK,KAAK;AACT,aAAO,OAAO,YAAY,IAAI,OAAO,IAAI,CAAM,OAAA,CAAC,GAAG,KAAK,OAAO,eAAe,GAAG,KAAK,CAAC,CAAC,CAAC;AAAA,IAC1F,KAAK,KAAK;AACT,aAAO,IAAI;AAAA,IACZ,KAAK,KAAK;AACF,aAAA;AAAA,IACR,KAAK,KAAK;AACH,YAAA;AAAA,EACR;AACD;"}
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const MetadataStore = require("../../../utils/MetadataStore.cjs");
4
+ const triggersStore = MetadataStore.createMetadataStore([]);
5
+ exports.triggersStore = triggersStore;
6
+ //# sourceMappingURL=store.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"store.cjs","sources":["../../../../../../../packages/schema-definition/src/actions/definition/internal/store.ts"],"sourcesContent":["import { createMetadataStore } from '../../../utils'\nimport { BasicTriggerDefinition, WatchTriggerDefinition } from '../triggers'\n\ntype StoredTrigger =\n\t| { type: 'basic'; definition: BasicTriggerDefinition }\n\t| { type: 'watch'; definition: WatchTriggerDefinition }\n\nexport const triggersStore = createMetadataStore<StoredTrigger[]>([])\n"],"names":["createMetadataStore"],"mappings":";;;AAOa,MAAA,gBAAgBA,cAAqC,oBAAA,CAAE,CAAA;;"}
@@ -0,0 +1,6 @@
1
+ import { createMetadataStore } from "../../../utils/MetadataStore.js";
2
+ const triggersStore = createMetadataStore([]);
3
+ export {
4
+ triggersStore
5
+ };
6
+ //# sourceMappingURL=store.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"store.js","sources":["../../../../../../../packages/schema-definition/src/actions/definition/internal/store.ts"],"sourcesContent":["import { createMetadataStore } from '../../../utils'\nimport { BasicTriggerDefinition, WatchTriggerDefinition } from '../triggers'\n\ntype StoredTrigger =\n\t| { type: 'basic'; definition: BasicTriggerDefinition }\n\t| { type: 'watch'; definition: WatchTriggerDefinition }\n\nexport const triggersStore = createMetadataStore<StoredTrigger[]>([])\n"],"names":[],"mappings":";AAOa,MAAA,gBAAgB,oBAAqC,CAAE,CAAA;"}
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ class ActionsTarget {
4
+ constructor(name, definition) {
5
+ this.name = name;
6
+ this.definition = definition;
7
+ }
8
+ }
9
+ const createTarget = ({
10
+ name,
11
+ ...definition
12
+ }) => new ActionsTarget(name, definition);
13
+ exports.ActionsTarget = ActionsTarget;
14
+ exports.createTarget = createTarget;
15
+ //# sourceMappingURL=targets.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"targets.cjs","sources":["../../../../../../packages/schema-definition/src/actions/definition/targets.ts"],"sourcesContent":["import { Actions } from '@contember/schema'\n\n\nexport class ActionsTarget {\n\tconstructor(\n\t\tpublic readonly name: string | undefined,\n\t\tpublic readonly definition: Omit<Actions.AnyTarget, 'name'>,\n\t) {\n\t}\n}\n\nexport const createTarget = ({\n\tname,\n\t...definition\n}: Actions.AnyTarget & { name?: string }) => new ActionsTarget(name, definition)\n"],"names":[],"mappings":";;AAGO,MAAM,cAAc;AAAA,EAC1B,YACiB,MACA,YACf;AAFe,SAAA,OAAA;AACA,SAAA,aAAA;AAAA,EAEjB;AACD;AAEO,MAAM,eAAe,CAAC;AAAA,EAC5B;AAAA,EACA,GAAG;AACJ,MAA6C,IAAI,cAAc,MAAM,UAAU;;;"}
@@ -0,0 +1,15 @@
1
+ class ActionsTarget {
2
+ constructor(name, definition) {
3
+ this.name = name;
4
+ this.definition = definition;
5
+ }
6
+ }
7
+ const createTarget = ({
8
+ name,
9
+ ...definition
10
+ }) => new ActionsTarget(name, definition);
11
+ export {
12
+ ActionsTarget,
13
+ createTarget
14
+ };
15
+ //# sourceMappingURL=targets.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"targets.js","sources":["../../../../../../packages/schema-definition/src/actions/definition/targets.ts"],"sourcesContent":["import { Actions } from '@contember/schema'\n\n\nexport class ActionsTarget {\n\tconstructor(\n\t\tpublic readonly name: string | undefined,\n\t\tpublic readonly definition: Omit<Actions.AnyTarget, 'name'>,\n\t) {\n\t}\n}\n\nexport const createTarget = ({\n\tname,\n\t...definition\n}: Actions.AnyTarget & { name?: string }) => new ActionsTarget(name, definition)\n"],"names":[],"mappings":"AAGO,MAAM,cAAc;AAAA,EAC1B,YACiB,MACA,YACf;AAFe,SAAA,OAAA;AACA,SAAA,aAAA;AAAA,EAEjB;AACD;AAEO,MAAM,eAAe,CAAC;AAAA,EAC5B;AAAA,EACA,GAAG;AACJ,MAA6C,IAAI,cAAc,MAAM,UAAU;"}
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const store = require("./internal/store.cjs");
4
+ const trigger = (definition) => (entity) => {
5
+ store.triggersStore.update(entity, (it) => [...it, { type: "basic", definition }]);
6
+ };
7
+ const watch = (definition) => (entity) => {
8
+ store.triggersStore.update(entity, (it) => [...it, { type: "watch", definition }]);
9
+ };
10
+ exports.trigger = trigger;
11
+ exports.watch = watch;
12
+ //# sourceMappingURL=triggers.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"triggers.cjs","sources":["../../../../../../packages/schema-definition/src/actions/definition/triggers.ts"],"sourcesContent":["import { DecoratorFunction, EntityConstructor } from '../../utils'\nimport { Actions } from '@contember/schema'\nimport { triggersStore } from './internal/store'\nimport { ActionsTarget } from './targets'\n\nexport type TriggerWebhookDefinition = {\n\twebhook:\n\t\t| string\n\t\t| Omit<Actions.WebhookTarget, 'type' | 'name'> & { name?: string }\n}\n\nexport type TriggerTargetDefinition = {\n\ttarget: (Omit<Actions.AnyTarget, 'name'> & { name?: string }) | ActionsTarget\n}\n\nexport type TargetDefinition =\n\t| TriggerWebhookDefinition\n\t| TriggerTargetDefinition\n\nexport type CommonTriggerDefinition = {\n\treadonly name: string\n\treadonly selection?: Actions.SelectionNode | string\n\treadonly priority?: number\n}\n\nexport type BasicTriggerDefinition =\n\t& {\n\t\treadonly create?: boolean\n\t\treadonly delete?: boolean\n\t\treadonly update?: boolean | readonly string[]\n\t}\n\t& CommonTriggerDefinition\n\t& TargetDefinition\n\nexport type WatchTriggerDefinition =\n\t& {\n\t\treadonly watch: Actions.SelectionNode | string\n\t}\n\t& CommonTriggerDefinition\n\t& TargetDefinition\n\nexport const trigger = <T>(definition: BasicTriggerDefinition): DecoratorFunction<T> => (entity: EntityConstructor<T>) => {\n\ttriggersStore.update(entity, it => [...it, { type: 'basic', definition }])\n}\n\nexport const watch = <T>(definition: WatchTriggerDefinition): DecoratorFunction<T> => (entity: EntityConstructor<T>) => {\n\ttriggersStore.update(entity, it => [...it, { type: 'watch', definition }])\n}\n\n"],"names":["triggersStore"],"mappings":";;;AAyCO,MAAM,UAAU,CAAI,eAA6D,CAAC,WAAiC;AAC3GA,QAAAA,cAAA,OAAO,QAAQ,CAAA,OAAM,CAAC,GAAG,IAAI,EAAE,MAAM,SAAS,WAAW,CAAC,CAAC;AAC1E;AAEO,MAAM,QAAQ,CAAI,eAA6D,CAAC,WAAiC;AACzGA,QAAAA,cAAA,OAAO,QAAQ,CAAA,OAAM,CAAC,GAAG,IAAI,EAAE,MAAM,SAAS,WAAW,CAAC,CAAC;AAC1E;;;"}
@@ -0,0 +1,12 @@
1
+ import { triggersStore } from "./internal/store.js";
2
+ const trigger = (definition) => (entity) => {
3
+ triggersStore.update(entity, (it) => [...it, { type: "basic", definition }]);
4
+ };
5
+ const watch = (definition) => (entity) => {
6
+ triggersStore.update(entity, (it) => [...it, { type: "watch", definition }]);
7
+ };
8
+ export {
9
+ trigger,
10
+ watch
11
+ };
12
+ //# sourceMappingURL=triggers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"triggers.js","sources":["../../../../../../packages/schema-definition/src/actions/definition/triggers.ts"],"sourcesContent":["import { DecoratorFunction, EntityConstructor } from '../../utils'\nimport { Actions } from '@contember/schema'\nimport { triggersStore } from './internal/store'\nimport { ActionsTarget } from './targets'\n\nexport type TriggerWebhookDefinition = {\n\twebhook:\n\t\t| string\n\t\t| Omit<Actions.WebhookTarget, 'type' | 'name'> & { name?: string }\n}\n\nexport type TriggerTargetDefinition = {\n\ttarget: (Omit<Actions.AnyTarget, 'name'> & { name?: string }) | ActionsTarget\n}\n\nexport type TargetDefinition =\n\t| TriggerWebhookDefinition\n\t| TriggerTargetDefinition\n\nexport type CommonTriggerDefinition = {\n\treadonly name: string\n\treadonly selection?: Actions.SelectionNode | string\n\treadonly priority?: number\n}\n\nexport type BasicTriggerDefinition =\n\t& {\n\t\treadonly create?: boolean\n\t\treadonly delete?: boolean\n\t\treadonly update?: boolean | readonly string[]\n\t}\n\t& CommonTriggerDefinition\n\t& TargetDefinition\n\nexport type WatchTriggerDefinition =\n\t& {\n\t\treadonly watch: Actions.SelectionNode | string\n\t}\n\t& CommonTriggerDefinition\n\t& TargetDefinition\n\nexport const trigger = <T>(definition: BasicTriggerDefinition): DecoratorFunction<T> => (entity: EntityConstructor<T>) => {\n\ttriggersStore.update(entity, it => [...it, { type: 'basic', definition }])\n}\n\nexport const watch = <T>(definition: WatchTriggerDefinition): DecoratorFunction<T> => (entity: EntityConstructor<T>) => {\n\ttriggersStore.update(entity, it => [...it, { type: 'watch', definition }])\n}\n\n"],"names":[],"mappings":";AAyCO,MAAM,UAAU,CAAI,eAA6D,CAAC,WAAiC;AAC3G,gBAAA,OAAO,QAAQ,CAAA,OAAM,CAAC,GAAG,IAAI,EAAE,MAAM,SAAS,WAAW,CAAC,CAAC;AAC1E;AAEO,MAAM,QAAQ,CAAI,eAA6D,CAAC,WAAiC;AACzG,gBAAA,OAAO,QAAQ,CAAA,OAAM,CAAC,GAAG,IAAI,EAAE,MAAM,SAAS,WAAW,CAAC,CAAC;AAC1E;"}
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ require("./model/builder/FieldBuilder.cjs");
4
+ require("@contember/schema");
5
+ const schemaUtils = require("@contember/schema-utils");
6
+ const index = require("./model/definition/index.cjs");
7
+ const index$1 = require("./validation/index.cjs");
8
+ const index$2 = require("./acl/definition/index.cjs");
9
+ const index$3 = require("./actions/definition/index.cjs");
10
+ const strict = require("./strict.cjs");
11
+ const createSchema = (definitions, modifyCallback, options) => {
12
+ const strictOptions = options?.strict === true ? strict.allStrict : options?.strict || {};
13
+ const strictDefinitionValidator = new strict.StrictDefinitionValidator(strictOptions);
14
+ const model = index.createModel(definitions, { strictDefinitionValidator });
15
+ const validation = index$1.parseDefinition(definitions);
16
+ const acl = index$2.createAcl(definitions, model);
17
+ const actions = index$3.createActions(definitions);
18
+ const schema = { ...schemaUtils.emptySchema, model, validation, acl, actions };
19
+ if (strictDefinitionValidator.warnings.length > 0) {
20
+ throw `Strict schema validation failed:
21
+ ${strictDefinitionValidator.warnings.map((it) => `- ${it.message}`).join("\n")}`;
22
+ }
23
+ return modifyCallback ? modifyCallback(schema) : schema;
24
+ };
25
+ exports.createSchema = createSchema;
26
+ //# sourceMappingURL=createSchema.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createSchema.cjs","sources":["../../../../packages/schema-definition/src/createSchema.ts"],"sourcesContent":["import { SchemaDefinition } from './model'\nimport * as InputValidation from './validation'\nimport * as AclDefinition from './acl/definition'\nimport * as ActionsDefinition from './actions/definition'\nimport { Schema } from '@contember/schema'\nimport { emptySchema } from '@contember/schema-utils'\nimport { allStrict, StrictOptions, StrictDefinitionValidator } from './strict'\n\nexport const createSchema = (definitions: Record<string, any>, modifyCallback?: (schema: Schema) => Schema, options?: {\n\tstrict?: boolean | StrictOptions\n}): Schema => {\n\tconst strictOptions = options?.strict === true ? allStrict : (options?.strict || {})\n\tconst strictDefinitionValidator = new StrictDefinitionValidator(strictOptions)\n\n\tconst model = SchemaDefinition.createModel(definitions, { strictDefinitionValidator: strictDefinitionValidator })\n\tconst validation = InputValidation.parseDefinition(definitions)\n\tconst acl = AclDefinition.createAcl(definitions, model)\n\tconst actions = ActionsDefinition.createActions(definitions)\n\tconst schema = { ...emptySchema, model, validation, acl, actions }\n\n\tif (strictDefinitionValidator.warnings.length > 0) {\n\t\tthrow `Strict schema validation failed: \\n${strictDefinitionValidator.warnings.map(it => `- ${it.message}`).join('\\n')}`\n\t}\n\n\treturn modifyCallback ? modifyCallback(schema) : schema\n}\n"],"names":["allStrict","StrictDefinitionValidator","SchemaDefinition.createModel","InputValidation.parseDefinition","AclDefinition.createAcl","ActionsDefinition.createActions","emptySchema"],"mappings":";;;;;;;;;;AAQO,MAAM,eAAe,CAAC,aAAkC,gBAA6C,YAE9F;AACb,QAAM,gBAAgB,SAAS,WAAW,OAAOA,OAAAA,YAAa,SAAS,UAAU;AAC3E,QAAA,4BAA4B,IAAIC,iCAA0B,aAAa;AAE7E,QAAM,QAAQC,MAAiB,YAAY,aAAa,EAAE,0BAAsD,CAAA;AAC1G,QAAA,aAAaC,wBAAgC,WAAW;AAC9D,QAAM,MAAMC,QAAAA,UAAwB,aAAa,KAAK;AAChD,QAAA,UAAUC,sBAAgC,WAAW;AAC3D,QAAM,SAAS,EAAE,GAAGC,yBAAa,OAAO,YAAY,KAAK;AAErD,MAAA,0BAA0B,SAAS,SAAS,GAAG;AAC5C,UAAA;AAAA,EAAsC,0BAA0B,SAAS,IAAI,CAAM,OAAA,KAAK,GAAG,OAAO,EAAE,EAAE,KAAK,IAAI,CAAC;AAAA,EACvH;AAEO,SAAA,iBAAiB,eAAe,MAAM,IAAI;AAClD;;"}
@@ -0,0 +1,26 @@
1
+ import "./model/builder/FieldBuilder.js";
2
+ import "@contember/schema";
3
+ import { emptySchema } from "@contember/schema-utils";
4
+ import { createModel } from "./model/definition/index.js";
5
+ import { parseDefinition } from "./validation/index.js";
6
+ import { createAcl } from "./acl/definition/index.js";
7
+ import { createActions } from "./actions/definition/index.js";
8
+ import { allStrict, StrictDefinitionValidator } from "./strict.js";
9
+ const createSchema = (definitions, modifyCallback, options) => {
10
+ const strictOptions = options?.strict === true ? allStrict : options?.strict || {};
11
+ const strictDefinitionValidator = new StrictDefinitionValidator(strictOptions);
12
+ const model = createModel(definitions, { strictDefinitionValidator });
13
+ const validation = parseDefinition(definitions);
14
+ const acl = createAcl(definitions, model);
15
+ const actions = createActions(definitions);
16
+ const schema = { ...emptySchema, model, validation, acl, actions };
17
+ if (strictDefinitionValidator.warnings.length > 0) {
18
+ throw `Strict schema validation failed:
19
+ ${strictDefinitionValidator.warnings.map((it) => `- ${it.message}`).join("\n")}`;
20
+ }
21
+ return modifyCallback ? modifyCallback(schema) : schema;
22
+ };
23
+ export {
24
+ createSchema
25
+ };
26
+ //# sourceMappingURL=createSchema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createSchema.js","sources":["../../../../packages/schema-definition/src/createSchema.ts"],"sourcesContent":["import { SchemaDefinition } from './model'\nimport * as InputValidation from './validation'\nimport * as AclDefinition from './acl/definition'\nimport * as ActionsDefinition from './actions/definition'\nimport { Schema } from '@contember/schema'\nimport { emptySchema } from '@contember/schema-utils'\nimport { allStrict, StrictOptions, StrictDefinitionValidator } from './strict'\n\nexport const createSchema = (definitions: Record<string, any>, modifyCallback?: (schema: Schema) => Schema, options?: {\n\tstrict?: boolean | StrictOptions\n}): Schema => {\n\tconst strictOptions = options?.strict === true ? allStrict : (options?.strict || {})\n\tconst strictDefinitionValidator = new StrictDefinitionValidator(strictOptions)\n\n\tconst model = SchemaDefinition.createModel(definitions, { strictDefinitionValidator: strictDefinitionValidator })\n\tconst validation = InputValidation.parseDefinition(definitions)\n\tconst acl = AclDefinition.createAcl(definitions, model)\n\tconst actions = ActionsDefinition.createActions(definitions)\n\tconst schema = { ...emptySchema, model, validation, acl, actions }\n\n\tif (strictDefinitionValidator.warnings.length > 0) {\n\t\tthrow `Strict schema validation failed: \\n${strictDefinitionValidator.warnings.map(it => `- ${it.message}`).join('\\n')}`\n\t}\n\n\treturn modifyCallback ? modifyCallback(schema) : schema\n}\n"],"names":["SchemaDefinition.createModel","InputValidation.parseDefinition","AclDefinition.createAcl","ActionsDefinition.createActions"],"mappings":";;;;;;;;AAQO,MAAM,eAAe,CAAC,aAAkC,gBAA6C,YAE9F;AACb,QAAM,gBAAgB,SAAS,WAAW,OAAO,YAAa,SAAS,UAAU;AAC3E,QAAA,4BAA4B,IAAI,0BAA0B,aAAa;AAE7E,QAAM,QAAQA,YAA6B,aAAa,EAAE,0BAAsD,CAAA;AAC1G,QAAA,aAAaC,gBAAgC,WAAW;AAC9D,QAAM,MAAMC,UAAwB,aAAa,KAAK;AAChD,QAAA,UAAUC,cAAgC,WAAW;AAC3D,QAAM,SAAS,EAAE,GAAG,aAAa,OAAO,YAAY,KAAK;AAErD,MAAA,0BAA0B,SAAS,SAAS,GAAG;AAC5C,UAAA;AAAA,EAAsC,0BAA0B,SAAS,IAAI,CAAM,OAAA,KAAK,GAAG,OAAO,EAAE,EAAE,KAAK,IAAI,CAAC;AAAA,EACvH;AAEO,SAAA,iBAAiB,eAAe,MAAM,IAAI;AAClD;"}
@@ -0,0 +1,36 @@
1
+ "use strict";
2
+ class ColumnBuilder {
3
+ constructor(options) {
4
+ this.options = options;
5
+ }
6
+ columnName(columnName) {
7
+ return new ColumnBuilder({ ...this.options, columnName });
8
+ }
9
+ type(type, typeOptions = {}) {
10
+ return new ColumnBuilder({
11
+ ...this.options,
12
+ type,
13
+ ...typeOptions
14
+ });
15
+ }
16
+ nullable() {
17
+ return new ColumnBuilder({ ...this.options, nullable: true });
18
+ }
19
+ notNull() {
20
+ return new ColumnBuilder({ ...this.options, nullable: false });
21
+ }
22
+ unique() {
23
+ return new ColumnBuilder({ ...this.options, unique: true });
24
+ }
25
+ primary() {
26
+ return new ColumnBuilder({ ...this.options, primary: true });
27
+ }
28
+ typeAlias(typeAlias) {
29
+ return new ColumnBuilder({ ...this.options, typeAlias });
30
+ }
31
+ getOption() {
32
+ return this.options;
33
+ }
34
+ }
35
+ module.exports = ColumnBuilder;
36
+ //# sourceMappingURL=ColumnBuilder.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ColumnBuilder.cjs","sources":["../../../../../../packages/schema-definition/src/model/builder/ColumnBuilder.ts"],"sourcesContent":["import FieldBuilder from './FieldBuilder'\nimport { Model } from '@contember/schema'\n\ntype PartialColumnOptions<K extends keyof ColumnBuilder.Options> =\n\t& Partial<ColumnBuilder.Options>\n\t& Pick<ColumnBuilder.Options, K>\n\nclass ColumnBuilder<O extends PartialColumnOptions<never> = PartialColumnOptions<never>> implements FieldBuilder<O> {\n\tconstructor(private readonly options: O) {}\n\n\tpublic columnName(columnName: string): ColumnBuilder<O> {\n\t\treturn new ColumnBuilder<O>({ ...(this.options as object), columnName } as O)\n\t}\n\n\tpublic type(\n\t\ttype: Model.ColumnType,\n\t\ttypeOptions: ColumnBuilder.TypeOptions = {},\n\t): ColumnBuilder<O & PartialColumnOptions<'type'>> {\n\t\treturn new ColumnBuilder<O & PartialColumnOptions<'type'>>({\n\t\t\t...(this.options as object),\n\t\t\ttype: type,\n\t\t\t...typeOptions,\n\t\t} as O & PartialColumnOptions<'type'>)\n\t}\n\n\tpublic nullable(): ColumnBuilder<O> {\n\t\treturn new ColumnBuilder<O>({ ...(this.options as object), nullable: true } as O)\n\t}\n\n\tpublic notNull(): ColumnBuilder<O> {\n\t\treturn new ColumnBuilder<O>({ ...(this.options as object), nullable: false } as O)\n\t}\n\n\tpublic unique(): ColumnBuilder<O> {\n\t\treturn new ColumnBuilder<O>({ ...(this.options as object), unique: true } as O)\n\t}\n\n\tpublic primary(): ColumnBuilder<O> {\n\t\treturn new ColumnBuilder<O>({ ...(this.options as object), primary: true } as O)\n\t}\n\n\tpublic typeAlias(typeAlias: string): ColumnBuilder<O> {\n\t\treturn new ColumnBuilder<O>({ ...(this.options as object), typeAlias } as O)\n\t}\n\n\tgetOption(): O {\n\t\treturn this.options\n\t}\n}\n\nnamespace ColumnBuilder {\n\texport type TypeOptions = {\n\t\tenumName?: string\n\t}\n\n\texport type Options = {\n\t\ttype: Model.ColumnType\n\t\tenumName?: string\n\t\tcolumnName?: string\n\t\tunique?: boolean\n\t\tnullable?: boolean\n\t\tprimary?: boolean\n\t\ttypeAlias?: string\n\t}\n}\n\nexport default ColumnBuilder\n"],"names":[],"mappings":";AAOA,MAAM,cAA8G;AAAA,EACnH,YAA6B,SAAY;AAAZ,SAAA,UAAA;AAAA,EAAa;AAAA,EAEnC,WAAW,YAAsC;AACvD,WAAO,IAAI,cAAiB,EAAE,GAAI,KAAK,SAAoB,YAAiB;AAAA,EAC7E;AAAA,EAEO,KACN,MACA,cAAyC,IACS;AAClD,WAAO,IAAI,cAAgD;AAAA,MAC1D,GAAI,KAAK;AAAA,MACT;AAAA,MACA,GAAG;AAAA,IAAA,CACiC;AAAA,EACtC;AAAA,EAEO,WAA6B;AAC5B,WAAA,IAAI,cAAiB,EAAE,GAAI,KAAK,SAAoB,UAAU,MAAW;AAAA,EACjF;AAAA,EAEO,UAA4B;AAC3B,WAAA,IAAI,cAAiB,EAAE,GAAI,KAAK,SAAoB,UAAU,OAAY;AAAA,EAClF;AAAA,EAEO,SAA2B;AAC1B,WAAA,IAAI,cAAiB,EAAE,GAAI,KAAK,SAAoB,QAAQ,MAAW;AAAA,EAC/E;AAAA,EAEO,UAA4B;AAC3B,WAAA,IAAI,cAAiB,EAAE,GAAI,KAAK,SAAoB,SAAS,MAAW;AAAA,EAChF;AAAA,EAEO,UAAU,WAAqC;AACrD,WAAO,IAAI,cAAiB,EAAE,GAAI,KAAK,SAAoB,WAAgB;AAAA,EAC5E;AAAA,EAEA,YAAe;AACd,WAAO,KAAK;AAAA,EACb;AACD;;"}
@@ -0,0 +1,37 @@
1
+ class ColumnBuilder {
2
+ constructor(options) {
3
+ this.options = options;
4
+ }
5
+ columnName(columnName) {
6
+ return new ColumnBuilder({ ...this.options, columnName });
7
+ }
8
+ type(type, typeOptions = {}) {
9
+ return new ColumnBuilder({
10
+ ...this.options,
11
+ type,
12
+ ...typeOptions
13
+ });
14
+ }
15
+ nullable() {
16
+ return new ColumnBuilder({ ...this.options, nullable: true });
17
+ }
18
+ notNull() {
19
+ return new ColumnBuilder({ ...this.options, nullable: false });
20
+ }
21
+ unique() {
22
+ return new ColumnBuilder({ ...this.options, unique: true });
23
+ }
24
+ primary() {
25
+ return new ColumnBuilder({ ...this.options, primary: true });
26
+ }
27
+ typeAlias(typeAlias) {
28
+ return new ColumnBuilder({ ...this.options, typeAlias });
29
+ }
30
+ getOption() {
31
+ return this.options;
32
+ }
33
+ }
34
+ export {
35
+ ColumnBuilder as default
36
+ };
37
+ //# sourceMappingURL=ColumnBuilder.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ColumnBuilder.js","sources":["../../../../../../packages/schema-definition/src/model/builder/ColumnBuilder.ts"],"sourcesContent":["import FieldBuilder from './FieldBuilder'\nimport { Model } from '@contember/schema'\n\ntype PartialColumnOptions<K extends keyof ColumnBuilder.Options> =\n\t& Partial<ColumnBuilder.Options>\n\t& Pick<ColumnBuilder.Options, K>\n\nclass ColumnBuilder<O extends PartialColumnOptions<never> = PartialColumnOptions<never>> implements FieldBuilder<O> {\n\tconstructor(private readonly options: O) {}\n\n\tpublic columnName(columnName: string): ColumnBuilder<O> {\n\t\treturn new ColumnBuilder<O>({ ...(this.options as object), columnName } as O)\n\t}\n\n\tpublic type(\n\t\ttype: Model.ColumnType,\n\t\ttypeOptions: ColumnBuilder.TypeOptions = {},\n\t): ColumnBuilder<O & PartialColumnOptions<'type'>> {\n\t\treturn new ColumnBuilder<O & PartialColumnOptions<'type'>>({\n\t\t\t...(this.options as object),\n\t\t\ttype: type,\n\t\t\t...typeOptions,\n\t\t} as O & PartialColumnOptions<'type'>)\n\t}\n\n\tpublic nullable(): ColumnBuilder<O> {\n\t\treturn new ColumnBuilder<O>({ ...(this.options as object), nullable: true } as O)\n\t}\n\n\tpublic notNull(): ColumnBuilder<O> {\n\t\treturn new ColumnBuilder<O>({ ...(this.options as object), nullable: false } as O)\n\t}\n\n\tpublic unique(): ColumnBuilder<O> {\n\t\treturn new ColumnBuilder<O>({ ...(this.options as object), unique: true } as O)\n\t}\n\n\tpublic primary(): ColumnBuilder<O> {\n\t\treturn new ColumnBuilder<O>({ ...(this.options as object), primary: true } as O)\n\t}\n\n\tpublic typeAlias(typeAlias: string): ColumnBuilder<O> {\n\t\treturn new ColumnBuilder<O>({ ...(this.options as object), typeAlias } as O)\n\t}\n\n\tgetOption(): O {\n\t\treturn this.options\n\t}\n}\n\nnamespace ColumnBuilder {\n\texport type TypeOptions = {\n\t\tenumName?: string\n\t}\n\n\texport type Options = {\n\t\ttype: Model.ColumnType\n\t\tenumName?: string\n\t\tcolumnName?: string\n\t\tunique?: boolean\n\t\tnullable?: boolean\n\t\tprimary?: boolean\n\t\ttypeAlias?: string\n\t}\n}\n\nexport default ColumnBuilder\n"],"names":[],"mappings":"AAOA,MAAM,cAA8G;AAAA,EACnH,YAA6B,SAAY;AAAZ,SAAA,UAAA;AAAA,EAAa;AAAA,EAEnC,WAAW,YAAsC;AACvD,WAAO,IAAI,cAAiB,EAAE,GAAI,KAAK,SAAoB,YAAiB;AAAA,EAC7E;AAAA,EAEO,KACN,MACA,cAAyC,IACS;AAClD,WAAO,IAAI,cAAgD;AAAA,MAC1D,GAAI,KAAK;AAAA,MACT;AAAA,MACA,GAAG;AAAA,IAAA,CACiC;AAAA,EACtC;AAAA,EAEO,WAA6B;AAC5B,WAAA,IAAI,cAAiB,EAAE,GAAI,KAAK,SAAoB,UAAU,MAAW;AAAA,EACjF;AAAA,EAEO,UAA4B;AAC3B,WAAA,IAAI,cAAiB,EAAE,GAAI,KAAK,SAAoB,UAAU,OAAY;AAAA,EAClF;AAAA,EAEO,SAA2B;AAC1B,WAAA,IAAI,cAAiB,EAAE,GAAI,KAAK,SAAoB,QAAQ,MAAW;AAAA,EAC/E;AAAA,EAEO,UAA4B;AAC3B,WAAA,IAAI,cAAiB,EAAE,GAAI,KAAK,SAAoB,SAAS,MAAW;AAAA,EAChF;AAAA,EAEO,UAAU,WAAqC;AACrD,WAAO,IAAI,cAAiB,EAAE,GAAI,KAAK,SAAoB,WAAgB;AAAA,EAC5E;AAAA,EAEA,YAAe;AACd,WAAO,KAAK;AAAA,EACb;AACD;"}
@@ -0,0 +1,69 @@
1
+ "use strict";
2
+ const FieldBuilder = require("./FieldBuilder.cjs");
3
+ const ColumnBuilder = require("./ColumnBuilder.cjs");
4
+ const OneHasOneBuilder = require("./OneHasOneBuilder.cjs");
5
+ const ManyHasManyBuilder = require("./ManyHasManyBuilder.cjs");
6
+ const OneHasManyBuilder = require("./OneHasManyBuilder.cjs");
7
+ const ManyHasOneBuilder = require("./ManyHasOneBuilder.cjs");
8
+ const schema = require("@contember/schema");
9
+ class EntityBuilder {
10
+ constructor(options, fields = {}, addEntity) {
11
+ this.options = options;
12
+ this.fields = fields;
13
+ this.addEntity = addEntity;
14
+ }
15
+ tableName(tableName) {
16
+ return new EntityBuilder({ ...this.options, tableName }, this.fields, this.addEntity);
17
+ }
18
+ unique(fields) {
19
+ return new EntityBuilder(
20
+ { ...this.options, unique: [...this.options.unique || [], { fields }] },
21
+ this.fields,
22
+ this.addEntity
23
+ );
24
+ }
25
+ column(name, configurator) {
26
+ const options = configurator ? configurator(new ColumnBuilder({})).getOption() : { type: schema.Model.ColumnType.String };
27
+ const fields = { ...this.fields, [name]: { type: FieldBuilder.Type.Column, options } };
28
+ return new EntityBuilder(this.options, fields, this.addEntity);
29
+ }
30
+ oneHasOne(name, configurator) {
31
+ const options = configurator(new OneHasOneBuilder({}, this.addEntity)).getOption();
32
+ return new EntityBuilder(
33
+ this.options,
34
+ { ...this.fields, [name]: { type: FieldBuilder.Type.OneHasOne, options } },
35
+ this.addEntity
36
+ );
37
+ }
38
+ manyHasMany(name, configurator) {
39
+ const options = configurator(new ManyHasManyBuilder({}, this.addEntity)).getOption();
40
+ const fields = { ...this.fields, [name]: { type: FieldBuilder.Type.ManyHasMany, options } };
41
+ return new EntityBuilder(this.options, fields, this.addEntity);
42
+ }
43
+ oneHasMany(name, configurator) {
44
+ const options = configurator(new OneHasManyBuilder({}, this.addEntity)).getOption();
45
+ const fields = { ...this.fields, [name]: { type: FieldBuilder.Type.OneHasMany, options } };
46
+ return new EntityBuilder(this.options, fields, this.addEntity);
47
+ }
48
+ manyHasOne(name, configurator) {
49
+ const options = configurator(new ManyHasOneBuilder({}, this.addEntity)).getOption();
50
+ const fields = { ...this.fields, [name]: { type: FieldBuilder.Type.ManyHasOne, options } };
51
+ return new EntityBuilder(this.options, fields, this.addEntity);
52
+ }
53
+ getOptions() {
54
+ return this.options;
55
+ }
56
+ getFields() {
57
+ return this.fields;
58
+ }
59
+ orderBy(field, direction = schema.Model.OrderDirection.asc) {
60
+ const path = typeof field === "string" ? [field] : field;
61
+ return new EntityBuilder(
62
+ { ...this.options, orderBy: [...this.options.orderBy ?? [], { path, direction }] },
63
+ this.fields,
64
+ this.addEntity
65
+ );
66
+ }
67
+ }
68
+ module.exports = EntityBuilder;
69
+ //# sourceMappingURL=EntityBuilder.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EntityBuilder.cjs","sources":["../../../../../../packages/schema-definition/src/model/builder/EntityBuilder.ts"],"sourcesContent":["import FieldBuilder from './FieldBuilder'\nimport ColumnBuilder from './ColumnBuilder'\nimport OneHasOneBuilder from './OneHasOneBuilder'\nimport ManyHasManyBuilder from './ManyHasManyBuilder'\nimport OneHasManyBuilder from './OneHasManyBuilder'\nimport ManyHasOneBuilder from './ManyHasOneBuilder'\nimport { Model } from '@contember/schema'\nimport { AddEntityCallback } from './types'\n\nclass EntityBuilder {\n\tconstructor(\n\t\tprivate readonly options: Partial<EntityBuilder.EntityOptions>,\n\t\tprivate readonly fields: FieldBuilder.Map = {},\n\t\tprivate readonly addEntity: AddEntityCallback,\n\t) {}\n\n\ttableName(tableName: string): EntityBuilder {\n\t\treturn new EntityBuilder({ ...this.options, tableName }, this.fields, this.addEntity)\n\t}\n\n\tunique(fields: string[]): EntityBuilder {\n\t\treturn new EntityBuilder(\n\t\t\t{ ...this.options, unique: [...(this.options.unique || []), { fields: fields }] },\n\t\t\tthis.fields,\n\t\t\tthis.addEntity,\n\t\t)\n\t}\n\n\tcolumn(\n\t\tname: string,\n\t\tconfigurator?: EntityBuilder.FieldConfigurator<ColumnBuilder, ColumnBuilder.Options>,\n\t): EntityBuilder {\n\t\tconst options: ColumnBuilder.Options = configurator\n\t\t\t? configurator(new ColumnBuilder({})).getOption()\n\t\t\t: { type: Model.ColumnType.String }\n\n\t\tconst fields: FieldBuilder.Map = { ...this.fields, [name]: { type: FieldBuilder.Type.Column, options: options } }\n\n\t\treturn new EntityBuilder(this.options, fields, this.addEntity)\n\t}\n\n\toneHasOne(\n\t\tname: string,\n\t\tconfigurator: EntityBuilder.FieldConfigurator<OneHasOneBuilder, OneHasOneBuilder.Options>,\n\t): EntityBuilder {\n\t\tconst options = configurator(new OneHasOneBuilder({}, this.addEntity)).getOption()\n\n\t\treturn new EntityBuilder(\n\t\t\tthis.options,\n\t\t\t{ ...this.fields, [name]: { type: FieldBuilder.Type.OneHasOne, options } },\n\t\t\tthis.addEntity,\n\t\t)\n\t}\n\n\tmanyHasMany(\n\t\tname: string,\n\t\tconfigurator: EntityBuilder.FieldConfigurator<ManyHasManyBuilder, ManyHasManyBuilder.Options>,\n\t): EntityBuilder {\n\t\tconst options = configurator(new ManyHasManyBuilder({}, this.addEntity)).getOption()\n\t\tconst fields: FieldBuilder.Map = { ...this.fields, [name]: { type: FieldBuilder.Type.ManyHasMany, options } }\n\n\t\treturn new EntityBuilder(this.options, fields, this.addEntity)\n\t}\n\n\toneHasMany(\n\t\tname: string,\n\t\tconfigurator: EntityBuilder.FieldConfigurator<OneHasManyBuilder, OneHasManyBuilder.Options>,\n\t): EntityBuilder {\n\t\tconst options = configurator(new OneHasManyBuilder({}, this.addEntity)).getOption()\n\t\tconst fields: FieldBuilder.Map = { ...this.fields, [name]: { type: FieldBuilder.Type.OneHasMany, options } }\n\n\t\treturn new EntityBuilder(this.options, fields, this.addEntity)\n\t}\n\n\tmanyHasOne(\n\t\tname: string,\n\t\tconfigurator: EntityBuilder.FieldConfigurator<ManyHasOneBuilder, ManyHasOneBuilder.Options>,\n\t): EntityBuilder {\n\t\tconst options = configurator(new ManyHasOneBuilder({}, this.addEntity)).getOption()\n\t\tconst fields: FieldBuilder.Map = { ...this.fields, [name]: { type: FieldBuilder.Type.ManyHasOne, options } }\n\n\t\treturn new EntityBuilder(this.options, fields, this.addEntity)\n\t}\n\n\tgetOptions(): EntityBuilder.EntityOptions {\n\t\treturn this.options\n\t}\n\n\tgetFields(): FieldBuilder.Map {\n\t\treturn this.fields\n\t}\n\n\torderBy(field: string | string[], direction: Model.OrderDirection = Model.OrderDirection.asc): EntityBuilder {\n\t\tconst path = typeof field === 'string' ? [field] : field\n\n\t\treturn new EntityBuilder(\n\t\t\t{ ...this.options, orderBy: [...(this.options.orderBy ?? []), { path, direction }] },\n\t\t\tthis.fields,\n\t\t\tthis.addEntity,\n\t\t)\n\t}\n}\n\nnamespace EntityBuilder {\n\texport type FieldConfigurator<B, O> = (builder: B) => FieldBuilder<O>\n\n\texport type UniqueOptions = {\n\t\tfields: string[]\n\t\tname?: string\n\t}\n\n\texport type EntityOptions = {\n\t\tprimary?: string\n\t\ttableName?: string\n\t\torderBy?: Model.OrderBy[]\n\t\tunique?: UniqueOptions[]\n\t}\n}\n\nexport default EntityBuilder\n"],"names":["Model"],"mappings":";;;;;;;;AASA,MAAM,cAAc;AAAA,EACnB,YACkB,SACA,SAA2B,CAAA,GAC3B,WAChB;AAHgB,SAAA,UAAA;AACA,SAAA,SAAA;AACA,SAAA,YAAA;AAAA,EACf;AAAA,EAEH,UAAU,WAAkC;AACpC,WAAA,IAAI,cAAc,EAAE,GAAG,KAAK,SAAS,UAAa,GAAA,KAAK,QAAQ,KAAK,SAAS;AAAA,EACrF;AAAA,EAEA,OAAO,QAAiC;AACvC,WAAO,IAAI;AAAA,MACV,EAAE,GAAG,KAAK,SAAS,QAAQ,CAAC,GAAI,KAAK,QAAQ,UAAU,CAAA,GAAK,EAAE,OAAgB,CAAA,EAAE;AAAA,MAChF,KAAK;AAAA,MACL,KAAK;AAAA,IAAA;AAAA,EAEP;AAAA,EAEA,OACC,MACA,cACgB;AAChB,UAAM,UAAiC,eACpC,aAAa,IAAI,cAAc,CAAA,CAAE,CAAC,EAAE,cACpC,EAAE,MAAMA,OAAA,MAAM,WAAW,OAAO;AAEnC,UAAM,SAA2B,EAAE,GAAG,KAAK,QAAQ,CAAC,IAAI,GAAG,EAAE,MAAM,aAAa,KAAK,QAAQ,QAAmB,EAAA;AAEhH,WAAO,IAAI,cAAc,KAAK,SAAS,QAAQ,KAAK,SAAS;AAAA,EAC9D;AAAA,EAEA,UACC,MACA,cACgB;AACV,UAAA,UAAU,aAAa,IAAI,iBAAiB,CAAA,GAAI,KAAK,SAAS,CAAC,EAAE;AAEvE,WAAO,IAAI;AAAA,MACV,KAAK;AAAA,MACL,EAAE,GAAG,KAAK,QAAQ,CAAC,IAAI,GAAG,EAAE,MAAM,aAAa,KAAK,WAAW,UAAU;AAAA,MACzE,KAAK;AAAA,IAAA;AAAA,EAEP;AAAA,EAEA,YACC,MACA,cACgB;AACV,UAAA,UAAU,aAAa,IAAI,mBAAmB,CAAA,GAAI,KAAK,SAAS,CAAC,EAAE;AACzE,UAAM,SAA2B,EAAE,GAAG,KAAK,QAAQ,CAAC,IAAI,GAAG,EAAE,MAAM,aAAa,KAAK,aAAa,QAAU,EAAA;AAE5G,WAAO,IAAI,cAAc,KAAK,SAAS,QAAQ,KAAK,SAAS;AAAA,EAC9D;AAAA,EAEA,WACC,MACA,cACgB;AACV,UAAA,UAAU,aAAa,IAAI,kBAAkB,CAAA,GAAI,KAAK,SAAS,CAAC,EAAE;AACxE,UAAM,SAA2B,EAAE,GAAG,KAAK,QAAQ,CAAC,IAAI,GAAG,EAAE,MAAM,aAAa,KAAK,YAAY,QAAU,EAAA;AAE3G,WAAO,IAAI,cAAc,KAAK,SAAS,QAAQ,KAAK,SAAS;AAAA,EAC9D;AAAA,EAEA,WACC,MACA,cACgB;AACV,UAAA,UAAU,aAAa,IAAI,kBAAkB,CAAA,GAAI,KAAK,SAAS,CAAC,EAAE;AACxE,UAAM,SAA2B,EAAE,GAAG,KAAK,QAAQ,CAAC,IAAI,GAAG,EAAE,MAAM,aAAa,KAAK,YAAY,QAAU,EAAA;AAE3G,WAAO,IAAI,cAAc,KAAK,SAAS,QAAQ,KAAK,SAAS;AAAA,EAC9D;AAAA,EAEA,aAA0C;AACzC,WAAO,KAAK;AAAA,EACb;AAAA,EAEA,YAA8B;AAC7B,WAAO,KAAK;AAAA,EACb;AAAA,EAEA,QAAQ,OAA0B,YAAkCA,OAAAA,MAAM,eAAe,KAAoB;AAC5G,UAAM,OAAO,OAAO,UAAU,WAAW,CAAC,KAAK,IAAI;AAEnD,WAAO,IAAI;AAAA,MACV,EAAE,GAAG,KAAK,SAAS,SAAS,CAAC,GAAI,KAAK,QAAQ,WAAW,CAAA,GAAK,EAAE,MAAM,UAAW,CAAA,EAAE;AAAA,MACnF,KAAK;AAAA,MACL,KAAK;AAAA,IAAA;AAAA,EAEP;AACD;;"}
@@ -0,0 +1,70 @@
1
+ import FieldBuilder from "./FieldBuilder.js";
2
+ import ColumnBuilder from "./ColumnBuilder.js";
3
+ import OneHasOneBuilder from "./OneHasOneBuilder.js";
4
+ import ManyHasManyBuilder from "./ManyHasManyBuilder.js";
5
+ import OneHasManyBuilder from "./OneHasManyBuilder.js";
6
+ import ManyHasOneBuilder from "./ManyHasOneBuilder.js";
7
+ import { Model } from "@contember/schema";
8
+ class EntityBuilder {
9
+ constructor(options, fields = {}, addEntity) {
10
+ this.options = options;
11
+ this.fields = fields;
12
+ this.addEntity = addEntity;
13
+ }
14
+ tableName(tableName) {
15
+ return new EntityBuilder({ ...this.options, tableName }, this.fields, this.addEntity);
16
+ }
17
+ unique(fields) {
18
+ return new EntityBuilder(
19
+ { ...this.options, unique: [...this.options.unique || [], { fields }] },
20
+ this.fields,
21
+ this.addEntity
22
+ );
23
+ }
24
+ column(name, configurator) {
25
+ const options = configurator ? configurator(new ColumnBuilder({})).getOption() : { type: Model.ColumnType.String };
26
+ const fields = { ...this.fields, [name]: { type: FieldBuilder.Type.Column, options } };
27
+ return new EntityBuilder(this.options, fields, this.addEntity);
28
+ }
29
+ oneHasOne(name, configurator) {
30
+ const options = configurator(new OneHasOneBuilder({}, this.addEntity)).getOption();
31
+ return new EntityBuilder(
32
+ this.options,
33
+ { ...this.fields, [name]: { type: FieldBuilder.Type.OneHasOne, options } },
34
+ this.addEntity
35
+ );
36
+ }
37
+ manyHasMany(name, configurator) {
38
+ const options = configurator(new ManyHasManyBuilder({}, this.addEntity)).getOption();
39
+ const fields = { ...this.fields, [name]: { type: FieldBuilder.Type.ManyHasMany, options } };
40
+ return new EntityBuilder(this.options, fields, this.addEntity);
41
+ }
42
+ oneHasMany(name, configurator) {
43
+ const options = configurator(new OneHasManyBuilder({}, this.addEntity)).getOption();
44
+ const fields = { ...this.fields, [name]: { type: FieldBuilder.Type.OneHasMany, options } };
45
+ return new EntityBuilder(this.options, fields, this.addEntity);
46
+ }
47
+ manyHasOne(name, configurator) {
48
+ const options = configurator(new ManyHasOneBuilder({}, this.addEntity)).getOption();
49
+ const fields = { ...this.fields, [name]: { type: FieldBuilder.Type.ManyHasOne, options } };
50
+ return new EntityBuilder(this.options, fields, this.addEntity);
51
+ }
52
+ getOptions() {
53
+ return this.options;
54
+ }
55
+ getFields() {
56
+ return this.fields;
57
+ }
58
+ orderBy(field, direction = Model.OrderDirection.asc) {
59
+ const path = typeof field === "string" ? [field] : field;
60
+ return new EntityBuilder(
61
+ { ...this.options, orderBy: [...this.options.orderBy ?? [], { path, direction }] },
62
+ this.fields,
63
+ this.addEntity
64
+ );
65
+ }
66
+ }
67
+ export {
68
+ EntityBuilder as default
69
+ };
70
+ //# sourceMappingURL=EntityBuilder.js.map