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

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
@@ -1,102 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const utils_1 = require("../../utils");
4
- const schema_1 = require("@contember/schema");
5
- const FieldSelector_1 = require("./FieldSelector");
6
- const FieldPermissionsBuilder_1 = require("./FieldPermissionsBuilder");
7
- const PredicateReference_1 = require("./PredicateReference");
8
- class EntityPermissionsBuilder {
9
- constructor(builder, entities) {
10
- this.builder = builder;
11
- this.entities = entities;
12
- }
13
- get schema() {
14
- return this.builder.schema;
15
- }
16
- get permissions() {
17
- return this.builder.permissions;
18
- }
19
- addPredicate(name, predicate) {
20
- const predicates = this.entities.reduce((acc, entity) => ({
21
- ...acc,
22
- [entity.name]: {
23
- operations: {},
24
- predicates: { [name]: (0, PredicateReference_1.resolvePredicateReference)(this.schema, this.permissions, entity, predicate) },
25
- },
26
- }), {});
27
- return this.add(predicates);
28
- }
29
- allow(operations, predicate = true) {
30
- return this.updateAll(operations, predicate);
31
- }
32
- allowAll(predicate = true) {
33
- return this.updateAll([schema_1.Acl.Operation.read, schema_1.Acl.Operation.create, schema_1.Acl.Operation.update, schema_1.Acl.Operation.delete], predicate);
34
- }
35
- allowOnlyRead(predicate = true) {
36
- return this.disallowAll().allow([schema_1.Acl.Operation.read], predicate);
37
- }
38
- disallowAll() {
39
- return this.updateAll([schema_1.Acl.Operation.read, schema_1.Acl.Operation.create, schema_1.Acl.Operation.update, schema_1.Acl.Operation.delete], false);
40
- }
41
- allowDelete(predicate = true) {
42
- return this.addEntityPermission(() => ({ operations: { delete: predicate }, predicates: {} }));
43
- }
44
- allowCustomPrimary() {
45
- return this.addEntityPermission(() => ({ operations: { customPrimary: true }, predicates: {} }));
46
- }
47
- updateAll(operations, predicate) {
48
- return this.addEntityPermission(entity => {
49
- const fieldPermissions = Object.keys(entity.fields).reduce((permissions, fieldName) => {
50
- return { ...permissions, [fieldName]: predicate };
51
- }, {});
52
- const entityOperations = {};
53
- if (operations.includes(schema_1.Acl.Operation.read)) {
54
- entityOperations.read = fieldPermissions;
55
- }
56
- if (operations.includes(schema_1.Acl.Operation.create)) {
57
- entityOperations.create = fieldPermissions;
58
- }
59
- if (operations.includes(schema_1.Acl.Operation.update)) {
60
- entityOperations.update = fieldPermissions;
61
- }
62
- if (operations.includes(schema_1.Acl.Operation.delete)) {
63
- entityOperations.delete = predicate;
64
- }
65
- return {
66
- operations: entityOperations,
67
- predicates: {},
68
- };
69
- });
70
- }
71
- addEntityPermission(entityPermission) {
72
- const permissions = this.entities.reduce((acc, entity) => ({ ...acc, [entity.name]: entityPermission(entity) }), {});
73
- return this.add(permissions);
74
- }
75
- add(permissions) {
76
- return new EntityPermissionsBuilder(this.builder.add(permissions), this.entities);
77
- }
78
- onEntity(entitySelector) {
79
- return this.builder.onEntity(entitySelector);
80
- }
81
- onEveryEntity() {
82
- return this.builder.onEveryEntity();
83
- }
84
- onField(fieldSelector) {
85
- if (typeof fieldSelector === 'string') {
86
- fieldSelector = FieldSelector_1.default.named(fieldSelector);
87
- }
88
- else if (Array.isArray(fieldSelector)) {
89
- fieldSelector = FieldSelector_1.default.named(...fieldSelector);
90
- }
91
- const fieldSelectorConst = fieldSelector;
92
- const fields = this.entities
93
- .map(it => (0, utils_1.tuple)(it, Object.values(it.fields).filter(field => fieldSelectorConst.matches(this.schema, it, field))))
94
- .reduce((acc, [entity, fields]) => [...acc, ...fields.map(it => (0, utils_1.tuple)(entity, it))], []);
95
- return new FieldPermissionsBuilder_1.default(this, fields);
96
- }
97
- onEveryField() {
98
- return this.onField(FieldSelector_1.default.every());
99
- }
100
- }
101
- exports.default = EntityPermissionsBuilder;
102
- //# sourceMappingURL=EntityPermissionsBuilder.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"EntityPermissionsBuilder.js","sourceRoot":"","sources":["../../../../src/acl/builder/EntityPermissionsBuilder.ts"],"names":[],"mappings":";;AAAA,uCAAmC;AAEnC,8CAAwD;AACxD,mDAA2C;AAC3C,uEAA+D;AAE/D,6DAAoF;AAEpF,MAAqB,wBAAwB;IAC5C,YAAmC,OAA2B,EAAmB,QAAwB;QAAtE,YAAO,GAAP,OAAO,CAAoB;QAAmB,aAAQ,GAAR,QAAQ,CAAgB;IAAG,CAAC;IAE7G,IAAI,MAAM;QACT,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAA;IAC3B,CAAC;IAED,IAAI,WAAW;QACd,OAAO,IAAI,CAAC,OAAO,CAAC,WAAW,CAAA;IAChC,CAAC;IAED,YAAY,CAAC,IAAY,EAAE,SAAsD;QAChF,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CACtC,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC;YACjB,GAAG,GAAG;YACN,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE;gBACd,UAAU,EAAE,EAAE;gBACd,UAAU,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,IAAA,8CAAyB,EAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,WAAW,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE;aACnG;SACD,CAAC,EACF,EAAE,CACF,CAAA;QAED,OAAO,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,CAAA;IAC5B,CAAC;IAED,KAAK,CAAC,UAA2B,EAAE,YAA2B,IAAI;QACjE,OAAO,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,SAAS,CAAC,CAAA;IAC7C,CAAC;IAED,QAAQ,CAAC,YAA2B,IAAI;QACvC,OAAO,IAAI,CAAC,SAAS,CACpB,CAAC,YAAG,CAAC,SAAS,CAAC,IAAI,EAAE,YAAG,CAAC,SAAS,CAAC,MAAM,EAAE,YAAG,CAAC,SAAS,CAAC,MAAM,EAAE,YAAG,CAAC,SAAS,CAAC,MAAM,CAAC,EACtF,SAAS,CACT,CAAA;IACF,CAAC;IAED,aAAa,CAAC,YAA2B,IAAI;QAC5C,OAAO,IAAI,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,CAAC,YAAG,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,SAAS,CAAC,CAAA;IACjE,CAAC;IAED,WAAW;QACV,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC,YAAG,CAAC,SAAS,CAAC,IAAI,EAAE,YAAG,CAAC,SAAS,CAAC,MAAM,EAAE,YAAG,CAAC,SAAS,CAAC,MAAM,EAAE,YAAG,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,CAAA;IACrH,CAAC;IAED,WAAW,CAAC,YAA2B,IAAI;QAC1C,OAAO,IAAI,CAAC,mBAAmB,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,UAAU,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC,CAAC,CAAA;IAC/F,CAAC;IAED,kBAAkB;QACjB,OAAO,IAAI,CAAC,mBAAmB,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,UAAU,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC,CAAC,CAAA;IACjG,CAAC;IAEO,SAAS,CAAC,UAA2B,EAAE,SAAwB;QACtE,OAAO,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,EAAE;YACxC,MAAM,gBAAgB,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,MAAM,CACzD,CAAC,WAAiC,EAAE,SAAS,EAAwB,EAAE;gBACtE,OAAO,EAAE,GAAG,WAAW,EAAE,CAAC,SAAS,CAAC,EAAE,SAAS,EAAE,CAAA;YAClD,CAAC,EACD,EAAE,CACF,CAAA;YACD,MAAM,gBAAgB,GAAmC,EAAE,CAAA;YAC3D,IAAI,UAAU,CAAC,QAAQ,CAAC,YAAG,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE;gBAC5C,gBAAgB,CAAC,IAAI,GAAG,gBAAgB,CAAA;aACxC;YACD,IAAI,UAAU,CAAC,QAAQ,CAAC,YAAG,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE;gBAC9C,gBAAgB,CAAC,MAAM,GAAG,gBAAgB,CAAA;aAC1C;YACD,IAAI,UAAU,CAAC,QAAQ,CAAC,YAAG,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE;gBAC9C,gBAAgB,CAAC,MAAM,GAAG,gBAAgB,CAAA;aAC1C;YACD,IAAI,UAAU,CAAC,QAAQ,CAAC,YAAG,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE;gBAC9C,gBAAgB,CAAC,MAAM,GAAG,SAAS,CAAA;aACnC;YACD,OAAO;gBACN,UAAU,EAAE,gBAAgB;gBAC5B,UAAU,EAAE,EAAE;aACd,CAAA;QACF,CAAC,CAAC,CAAA;IACH,CAAC;IAEO,mBAAmB,CAC1B,gBAAiE;QAEjE,MAAM,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CACvC,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,gBAAgB,CAAC,MAAM,CAAC,EAAE,CAAC,EACtE,EAAE,CACF,CAAA;QACD,OAAO,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,CAAA;IAC7B,CAAC;IAEM,GAAG,CAAC,WAA4B;QACtC,OAAO,IAAI,wBAAwB,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAA;IAClF,CAAC;IAEM,QAAQ,CAAC,cAAkD;QACjE,OAAO,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAA;IAC7C,CAAC;IAEM,aAAa;QACnB,OAAO,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,CAAA;IACpC,CAAC;IAED,OAAO,CAAC,aAAgD;QACvD,IAAI,OAAO,aAAa,KAAK,QAAQ,EAAE;YACtC,aAAa,GAAG,uBAAa,CAAC,KAAK,CAAC,aAAa,CAAC,CAAA;SAClD;aAAM,IAAI,KAAK,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE;YACxC,aAAa,GAAG,uBAAa,CAAC,KAAK,CAAC,GAAG,aAAa,CAAC,CAAA;SACrD;QACD,MAAM,kBAAkB,GAAG,aAAa,CAAA;QACxC,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ;aAC1B,GAAG,CAAC,EAAE,CAAC,EAAE,CACT,IAAA,aAAK,EACJ,EAAE,EACF,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,kBAAkB,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,EAAE,KAAK,CAAC,CAAC,CAC5F,CACD;aACA,MAAM,CACN,CAAC,GAAG,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,GAAG,EAAE,GAAG,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,IAAA,aAAK,EAAC,MAAM,EAAE,EAAE,CAAC,CAAC,CAAC,EAC3E,EAAE,CACF,CAAA;QACF,OAAO,IAAI,iCAAuB,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;IACjD,CAAC;IAED,YAAY;QACX,OAAO,IAAI,CAAC,OAAO,CAAC,uBAAa,CAAC,KAAK,EAAE,CAAC,CAAA;IAC3C,CAAC;CACD;AA/HD,2CA+HC"}
@@ -1,32 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const schema_utils_1 = require("@contember/schema-utils");
4
- class EntitySelector {
5
- constructor(matchers) {
6
- this.matchers = matchers;
7
- }
8
- static every() {
9
- return new EntitySelector([]);
10
- }
11
- static named(...name) {
12
- return EntitySelector.every().named(...name);
13
- }
14
- named(...name) {
15
- return this.matching((schema, entity) => name.includes(entity.name));
16
- }
17
- havingRelation(name, targetEntityName) {
18
- return this.matching((schema, entity) => entity.fields[name] &&
19
- (0, schema_utils_1.acceptFieldVisitor)(schema, entity, name, {
20
- visitColumn: () => false,
21
- visitRelation: ({ targetEntity }) => !targetEntityName || targetEntity.name === targetEntityName,
22
- }));
23
- }
24
- matching(matcher) {
25
- return new EntitySelector([...this.matchers, matcher]);
26
- }
27
- matches(schema, entity) {
28
- return this.matchers.reduce((prev, predicate) => prev && predicate(schema, entity), true);
29
- }
30
- }
31
- exports.default = EntitySelector;
32
- //# sourceMappingURL=EntitySelector.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"EntitySelector.js","sourceRoot":"","sources":["../../../../src/acl/builder/EntitySelector.ts"],"names":[],"mappings":";;AACA,0DAA4D;AAI5D,MAAqB,cAAc;IAClC,YAAqC,QAAmB;QAAnB,aAAQ,GAAR,QAAQ,CAAW;IAAG,CAAC;IAErD,MAAM,CAAC,KAAK;QAClB,OAAO,IAAI,cAAc,CAAC,EAAE,CAAC,CAAA;IAC9B,CAAC;IAEM,MAAM,CAAC,KAAK,CAAC,GAAG,IAAc;QACpC,OAAO,cAAc,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,CAAA;IAC7C,CAAC;IAEM,KAAK,CAAC,GAAG,IAAc;QAC7B,OAAO,IAAI,CAAC,QAAQ,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAA;IACrE,CAAC;IAEM,cAAc,CAAC,IAAY,EAAE,gBAAyB;QAC5D,OAAO,IAAI,CAAC,QAAQ,CACnB,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,CAClB,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC;YACnB,IAAA,iCAAkB,EAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE;gBACxC,WAAW,EAAE,GAAG,EAAE,CAAC,KAAK;gBACxB,aAAa,EAAE,CAAC,EAAE,YAAY,EAAE,EAAE,EAAE,CAAC,CAAC,gBAAgB,IAAI,YAAY,CAAC,IAAI,KAAK,gBAAgB;aAChG,CAAC,CACH,CAAA;IACF,CAAC;IAEM,QAAQ,CAAC,OAAgB;QAC/B,OAAO,IAAI,cAAc,CAAC,CAAC,GAAG,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAA;IACvD,CAAC;IAEM,OAAO,CAAC,MAAoB,EAAE,MAAoB;QACxD,OAAO,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAU,CAAC,IAAI,EAAE,SAAS,EAAE,EAAE,CAAC,IAAI,IAAI,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,IAAI,CAAC,CAAA;IACnG,CAAC;CACD;AAjCD,iCAiCC"}
@@ -1,60 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const schema_1 = require("@contember/schema");
4
- class FieldPermissionsBuilder {
5
- constructor(entityPermissionsBuilder, fields) {
6
- this.entityPermissionsBuilder = entityPermissionsBuilder;
7
- this.fields = fields;
8
- }
9
- get builder() {
10
- return this.entityPermissionsBuilder.builder;
11
- }
12
- get schema() {
13
- return this.entityPermissionsBuilder.schema;
14
- }
15
- get permissions() {
16
- return this.entityPermissionsBuilder.permissions;
17
- }
18
- allowCreate(predicate = true) {
19
- return this.allow([schema_1.Acl.Operation.create], predicate);
20
- }
21
- allowRead(predicate = true) {
22
- return this.allow([schema_1.Acl.Operation.read], predicate);
23
- }
24
- allowUpdate(predicate = true) {
25
- return this.allow([schema_1.Acl.Operation.update], predicate);
26
- }
27
- allowAll(predicate = true) {
28
- return this.allow([schema_1.Acl.Operation.create, schema_1.Acl.Operation.read, schema_1.Acl.Operation.update], predicate);
29
- }
30
- allow(operations, predicate = true) {
31
- const permissions = {};
32
- for (const [entity, field] of this.fields) {
33
- if (!permissions[entity.name]) {
34
- permissions[entity.name] = { operations: {}, predicates: {} };
35
- }
36
- const entityOperations = permissions[entity.name].operations;
37
- for (const op of operations) {
38
- entityOperations[op] = {
39
- ...(permissions[entity.name].operations[op] || {}),
40
- [field.name]: predicate,
41
- };
42
- }
43
- }
44
- return new FieldPermissionsBuilder(this.entityPermissionsBuilder.add(permissions), this.fields);
45
- }
46
- onEntity(entitySelector) {
47
- return this.entityPermissionsBuilder.onEntity(entitySelector);
48
- }
49
- onEveryEntity() {
50
- return this.entityPermissionsBuilder.onEveryEntity();
51
- }
52
- onField(fieldSelector) {
53
- return this.entityPermissionsBuilder.onField(fieldSelector);
54
- }
55
- onEveryField() {
56
- return this.entityPermissionsBuilder.onEveryField();
57
- }
58
- }
59
- exports.default = FieldPermissionsBuilder;
60
- //# sourceMappingURL=FieldPermissionsBuilder.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"FieldPermissionsBuilder.js","sourceRoot":"","sources":["../../../../src/acl/builder/FieldPermissionsBuilder.ts"],"names":[],"mappings":";;AAEA,8CAAwD;AAIxD,MAAqB,uBAAuB;IAC3C,YACQ,wBAAkD,EACxC,MAAwC;QADlD,6BAAwB,GAAxB,wBAAwB,CAA0B;QACxC,WAAM,GAAN,MAAM,CAAkC;IACvD,CAAC;IAEJ,IAAI,OAAO;QACV,OAAO,IAAI,CAAC,wBAAwB,CAAC,OAAO,CAAA;IAC7C,CAAC;IAED,IAAI,MAAM;QACT,OAAO,IAAI,CAAC,wBAAwB,CAAC,MAAM,CAAA;IAC5C,CAAC;IAED,IAAI,WAAW;QACd,OAAO,IAAI,CAAC,wBAAwB,CAAC,WAAW,CAAA;IACjD,CAAC;IAEM,WAAW,CAAC,YAA2B,IAAI;QACjD,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,YAAG,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,SAAS,CAAC,CAAA;IACrD,CAAC;IAEM,SAAS,CAAC,YAA2B,IAAI;QAC/C,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,YAAG,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,SAAS,CAAC,CAAA;IACnD,CAAC;IAEM,WAAW,CAAC,YAA2B,IAAI;QACjD,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,YAAG,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,SAAS,CAAC,CAAA;IACrD,CAAC;IAEM,QAAQ,CAAC,YAA2B,IAAI;QAC9C,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,YAAG,CAAC,SAAS,CAAC,MAAM,EAAE,YAAG,CAAC,SAAS,CAAC,IAAI,EAAE,YAAG,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,SAAS,CAAC,CAAA;IAC/F,CAAC;IAEM,KAAK,CACX,UAAgF,EAChF,YAA2B,IAAI;QAE/B,MAAM,WAAW,GAA8B,EAAE,CAAA;QACjD,KAAK,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,IAAI,CAAC,MAAM,EAAE;YAC1C,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE;gBAC9B,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,UAAU,EAAE,EAAE,EAAE,UAAU,EAAE,EAAE,EAAE,CAAA;aAC7D;YACD,MAAM,gBAAgB,GAAmC,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,UAAU,CAAA;YAC5F,KAAK,MAAM,EAAE,IAAI,UAAU,EAAE;gBAC5B,gBAAgB,CAAC,EAAE,CAAC,GAAG;oBACtB,GAAG,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC;oBAClD,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,SAAS;iBACvB,CAAA;aACD;SACD;QACD,OAAO,IAAI,uBAAuB,CAAC,IAAI,CAAC,wBAAwB,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;IAChG,CAAC;IAEM,QAAQ,CAAC,cAAkD;QACjE,OAAO,IAAI,CAAC,wBAAwB,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAA;IAC9D,CAAC;IAEM,aAAa;QACnB,OAAO,IAAI,CAAC,wBAAwB,CAAC,aAAa,EAAE,CAAA;IACrD,CAAC;IAEM,OAAO,CAAC,aAAgD;QAC9D,OAAO,IAAI,CAAC,wBAAwB,CAAC,OAAO,CAAC,aAAa,CAAC,CAAA;IAC5D,CAAC;IAEM,YAAY;QAClB,OAAO,IAAI,CAAC,wBAAwB,CAAC,YAAY,EAAE,CAAA;IACpD,CAAC;CACD;AArED,0CAqEC"}
@@ -1,27 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- class FieldSelector {
4
- constructor(matchers) {
5
- this.matchers = matchers;
6
- }
7
- static every() {
8
- return new FieldSelector([]);
9
- }
10
- static named(...name) {
11
- return FieldSelector.every().named(...name);
12
- }
13
- named(...name) {
14
- return this.matching((schema, entity, field) => name.includes(field.name));
15
- }
16
- except(...name) {
17
- return this.matching((schema, entity, field) => !name.includes(field.name));
18
- }
19
- matching(matcher) {
20
- return new FieldSelector([...this.matchers, matcher]);
21
- }
22
- matches(schema, entity, field) {
23
- return this.matchers.reduce((prev, predicate) => prev && predicate(schema, entity, field), true);
24
- }
25
- }
26
- exports.default = FieldSelector;
27
- //# sourceMappingURL=FieldSelector.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"FieldSelector.js","sourceRoot":"","sources":["../../../../src/acl/builder/FieldSelector.ts"],"names":[],"mappings":";;AAIA,MAAqB,aAAa;IACjC,YAAqC,QAAmB;QAAnB,aAAQ,GAAR,QAAQ,CAAW;IAAG,CAAC;IAErD,MAAM,CAAC,KAAK;QAClB,OAAO,IAAI,aAAa,CAAC,EAAE,CAAC,CAAA;IAC7B,CAAC;IAEM,MAAM,CAAC,KAAK,CAAC,GAAG,IAAc;QACpC,OAAO,aAAa,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,CAAA;IAC5C,CAAC;IAEM,KAAK,CAAC,GAAG,IAAc;QAC7B,OAAO,IAAI,CAAC,QAAQ,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAA;IAC3E,CAAC;IAEM,MAAM,CAAC,GAAG,IAAc;QAC9B,OAAO,IAAI,CAAC,QAAQ,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAA;IAC5E,CAAC;IAEM,QAAQ,CAAC,OAAgB;QAC/B,OAAO,IAAI,aAAa,CAAC,CAAC,GAAG,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAA;IACtD,CAAC;IAEM,OAAO,CAAC,MAAoB,EAAE,MAAoB,EAAE,KAAqB;QAC/E,OAAO,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAU,CAAC,IAAI,EAAE,SAAS,EAAE,EAAE,CAAC,IAAI,IAAI,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,IAAI,CAAC,CAAA;IAC1G,CAAC;CACD;AA1BD,gCA0BC"}
@@ -1,38 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const utils_1 = require("../../utils");
4
- class PermissionOverrider {
5
- override(original, overrides) {
6
- return Object.entries({ ...overrides, ...original })
7
- .map(([key, value]) => {
8
- if (overrides[key]) {
9
- return (0, utils_1.tuple)(key, this.overrideEntityPermissions(value, overrides[key]));
10
- }
11
- return (0, utils_1.tuple)(key, value);
12
- })
13
- .reduce((acc, [key, value]) => ({ ...acc, [key]: value }), {});
14
- }
15
- overrideEntityPermissions(original, overrides) {
16
- var _a, _b;
17
- return {
18
- predicates: { ...original.predicates, ...overrides.predicates },
19
- operations: {
20
- create: { ...(original.operations.create || {}), ...(overrides.operations.create || {}) },
21
- read: { ...(original.operations.read || {}), ...(overrides.operations.read || {}) },
22
- update: { ...(original.operations.update || {}), ...(overrides.operations.update || {}) },
23
- ...(original.operations.delete === undefined && overrides.operations.delete === undefined
24
- ? {}
25
- : {
26
- delete: (_a = overrides.operations.delete) !== null && _a !== void 0 ? _a : original.operations.delete,
27
- }),
28
- ...(original.operations.customPrimary === undefined && overrides.operations.customPrimary === undefined
29
- ? {}
30
- : {
31
- customPrimary: (_b = overrides.operations.customPrimary) !== null && _b !== void 0 ? _b : original.operations.customPrimary,
32
- }),
33
- },
34
- };
35
- }
36
- }
37
- exports.default = PermissionOverrider;
38
- //# sourceMappingURL=PermissionOverrider.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"PermissionOverrider.js","sourceRoot":"","sources":["../../../../src/acl/builder/PermissionOverrider.ts"],"names":[],"mappings":";;AACA,uCAAmC;AAEnC,MAAqB,mBAAmB;IAChC,QAAQ,CAAC,QAAyB,EAAE,SAA0B;QACpE,OAAO,MAAM,CAAC,OAAO,CAAC,EAAE,GAAG,SAAS,EAAE,GAAG,QAAQ,EAAE,CAAC;aAClD,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;YACrB,IAAI,SAAS,CAAC,GAAG,CAAC,EAAE;gBACnB,OAAO,IAAA,aAAK,EAAC,GAAG,EAAE,IAAI,CAAC,yBAAyB,CAAC,KAAK,EAAE,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;aACxE;YACD,OAAO,IAAA,aAAK,EAAC,GAAG,EAAE,KAAK,CAAC,CAAA;QACzB,CAAC,CAAC;aACD,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC,CAAA;IAChE,CAAC;IAEO,yBAAyB,CAChC,QAA+B,EAC/B,SAAgC;;QAEhC,OAAO;YACN,UAAU,EAAE,EAAE,GAAG,QAAQ,CAAC,UAAU,EAAE,GAAG,SAAS,CAAC,UAAU,EAAE;YAC/D,UAAU,EAAE;gBACX,MAAM,EAAE,EAAE,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,MAAM,IAAI,EAAE,CAAC,EAAE,GAAG,CAAC,SAAS,CAAC,UAAU,CAAC,MAAM,IAAI,EAAE,CAAC,EAAE;gBACzF,IAAI,EAAE,EAAE,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,IAAI,EAAE,CAAC,EAAE,GAAG,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,IAAI,EAAE,CAAC,EAAE;gBACnF,MAAM,EAAE,EAAE,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,MAAM,IAAI,EAAE,CAAC,EAAE,GAAG,CAAC,SAAS,CAAC,UAAU,CAAC,MAAM,IAAI,EAAE,CAAC,EAAE;gBACzF,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,MAAM,KAAK,SAAS,IAAI,SAAS,CAAC,UAAU,CAAC,MAAM,KAAK,SAAS;oBACxF,CAAC,CAAC,EAAE;oBACJ,CAAC,CAAC;wBACD,MAAM,EAAE,MAAA,SAAS,CAAC,UAAU,CAAC,MAAM,mCAAI,QAAQ,CAAC,UAAU,CAAC,MAAM;qBAC/D,CAAC;gBACL,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,aAAa,KAAK,SAAS,IAAI,SAAS,CAAC,UAAU,CAAC,aAAa,KAAK,SAAS;oBACtG,CAAC,CAAC,EAAE;oBACJ,CAAC,CAAC;wBACD,aAAa,EAAE,MAAA,SAAS,CAAC,UAAU,CAAC,aAAa,mCAAI,QAAQ,CAAC,UAAU,CAAC,aAAa;qBACpF,CAAC;aACL;SACD,CAAA;IACF,CAAC;CACD;AAnCD,sCAmCC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"PermissionsBuilder.d.ts","sourceRoot":"","sources":["../../../../src/acl/builder/PermissionsBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AAG9C,OAAO,cAAc,MAAM,kBAAkB,CAAA;AAC7C,OAAO,wBAAwB,MAAM,4BAA4B,CAAA;AACjE,OAAO,aAAa,MAAM,iBAAiB,CAAA;AAC3C,OAAO,SAAS,MAAM,sBAAsB,CAAA;AAE5C,cAAM,kBAAkB;aACK,MAAM,EAAE,KAAK,CAAC,MAAM;aAAkB,WAAW,EAAE,GAAG,CAAC,WAAW;gBAAlE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAkB,WAAW,EAAE,GAAG,CAAC,WAAW;WAEhF,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,MAAM,GAAG,kBAAkB;IAItD,QAAQ,IAAI,kBAAkB;IAI9B,KAAK,CAAC,UAAU,EAAE,GAAG,CAAC,SAAS,EAAE,GAAG,kBAAkB;IAKtD,kBAAkB,IAAI,kBAAkB;IAIxC,GAAG,CAAC,WAAW,EAAE,GAAG,CAAC,WAAW,GAAG,kBAAkB;IAKrD,QAAQ,CAAC,cAAc,EAAE,cAAc,GAAG,MAAM,GAAG,MAAM,EAAE,GAAG,wBAAwB;IAatF,aAAa,IAAI,wBAAwB;CAGhD;AAED,kBAAU,kBAAkB,CAAC;IACrB,MAAM,WAAW,sBAEvB,CAAA;IACM,MAAM,UAAU,qBAEtB,CAAA;IACM,MAAM,kBAAkB,SAAU,IAAI,kBAAkB,cAAwB,CAAA;CACvF;AACD,OAAO,EAAE,kBAAkB,EAAE,CAAA"}
@@ -1,58 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.PermissionsBuilder = void 0;
4
- const schema_1 = require("@contember/schema");
5
- const schema_utils_1 = require("@contember/schema-utils");
6
- const PermissionOverrider_1 = require("./PermissionOverrider");
7
- const EntitySelector_1 = require("./EntitySelector");
8
- const EntityPermissionsBuilder_1 = require("./EntityPermissionsBuilder");
9
- const FieldSelector_1 = require("./FieldSelector");
10
- const PredicateReference_1 = require("./PredicateReference");
11
- class PermissionsBuilder {
12
- constructor(schema, permissions) {
13
- this.schema = schema;
14
- this.permissions = permissions;
15
- }
16
- static create(model) {
17
- return new PermissionsBuilder(model, {});
18
- }
19
- allowAll() {
20
- return this.allow([schema_1.Acl.Operation.read, schema_1.Acl.Operation.update, schema_1.Acl.Operation.delete, schema_1.Acl.Operation.create]);
21
- }
22
- allow(operations) {
23
- const allowAllFactory = new schema_utils_1.AllowAllPermissionFactory(operations);
24
- return this.add(allowAllFactory.create(this.schema));
25
- }
26
- allowCustomPrimary() {
27
- return this.onEveryEntity().allowCustomPrimary().builder;
28
- }
29
- add(permissions) {
30
- const overrider = new PermissionOverrider_1.default();
31
- return new PermissionsBuilder(this.schema, overrider.override(this.permissions, permissions));
32
- }
33
- onEntity(entitySelector) {
34
- if (typeof entitySelector === 'string') {
35
- entitySelector = EntitySelector_1.default.named(entitySelector);
36
- }
37
- else if (Array.isArray(entitySelector)) {
38
- entitySelector = EntitySelector_1.default.named(...entitySelector);
39
- }
40
- const entitySelectorWithType = entitySelector;
41
- const entities = Object.values(this.schema.entities).filter(entity => entitySelectorWithType.matches(this.schema, entity));
42
- return new EntityPermissionsBuilder_1.default(this, entities);
43
- }
44
- onEveryEntity() {
45
- return this.onEntity(EntitySelector_1.default.every());
46
- }
47
- }
48
- exports.PermissionsBuilder = PermissionsBuilder;
49
- (function (PermissionsBuilder) {
50
- PermissionsBuilder.everyEntity = () => {
51
- return EntitySelector_1.default.every();
52
- };
53
- PermissionsBuilder.everyField = () => {
54
- return FieldSelector_1.default.every();
55
- };
56
- PermissionsBuilder.predicateReference = (name) => new PredicateReference_1.default(name);
57
- })(PermissionsBuilder || (exports.PermissionsBuilder = PermissionsBuilder = {}));
58
- //# sourceMappingURL=PermissionsBuilder.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"PermissionsBuilder.js","sourceRoot":"","sources":["../../../../src/acl/builder/PermissionsBuilder.ts"],"names":[],"mappings":";;;AAAA,8CAA8C;AAC9C,0DAAmE;AACnE,+DAAuD;AACvD,qDAA6C;AAC7C,yEAAiE;AACjE,mDAA2C;AAC3C,6DAA4C;AAE5C,MAAM,kBAAkB;IACvB,YAA4B,MAAoB,EAAkB,WAA4B;QAAlE,WAAM,GAAN,MAAM,CAAc;QAAkB,gBAAW,GAAX,WAAW,CAAiB;IAAG,CAAC;IAE3F,MAAM,CAAC,MAAM,CAAC,KAAmB;QACvC,OAAO,IAAI,kBAAkB,CAAC,KAAK,EAAE,EAAE,CAAC,CAAA;IACzC,CAAC;IAEM,QAAQ;QACd,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,YAAG,CAAC,SAAS,CAAC,IAAI,EAAE,YAAG,CAAC,SAAS,CAAC,MAAM,EAAE,YAAG,CAAC,SAAS,CAAC,MAAM,EAAE,YAAG,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAA;IAC1G,CAAC;IAEM,KAAK,CAAC,UAA2B;QACvC,MAAM,eAAe,GAAG,IAAI,wCAAyB,CAAC,UAAU,CAAC,CAAA;QACjE,OAAO,IAAI,CAAC,GAAG,CAAC,eAAe,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAA;IACrD,CAAC;IAEM,kBAAkB;QACxB,OAAO,IAAI,CAAC,aAAa,EAAE,CAAC,kBAAkB,EAAE,CAAC,OAAO,CAAA;IACzD,CAAC;IAEM,GAAG,CAAC,WAA4B;QACtC,MAAM,SAAS,GAAG,IAAI,6BAAmB,EAAE,CAAA;QAC3C,OAAO,IAAI,kBAAkB,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC,CAAA;IAC9F,CAAC;IAEM,QAAQ,CAAC,cAAkD;QACjE,IAAI,OAAO,cAAc,KAAK,QAAQ,EAAE;YACvC,cAAc,GAAG,wBAAc,CAAC,KAAK,CAAC,cAAc,CAAC,CAAA;SACrD;aAAM,IAAI,KAAK,CAAC,OAAO,CAAC,cAAc,CAAC,EAAE;YACzC,cAAc,GAAG,wBAAc,CAAC,KAAK,CAAC,GAAG,cAAc,CAAC,CAAA;SACxD;QACD,MAAM,sBAAsB,GAAG,cAAc,CAAA;QAC7C,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CACpE,sBAAsB,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,CACnD,CAAA;QACD,OAAO,IAAI,kCAAwB,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAA;IACpD,CAAC;IAEM,aAAa;QACnB,OAAO,IAAI,CAAC,QAAQ,CAAC,wBAAc,CAAC,KAAK,EAAE,CAAC,CAAA;IAC7C,CAAC;CACD;AAWQ,gDAAkB;AAT3B,WAAU,kBAAkB;IACd,8BAAW,GAAG,GAAG,EAAE;QAC/B,OAAO,wBAAc,CAAC,KAAK,EAAE,CAAA;IAC9B,CAAC,CAAA;IACY,6BAAU,GAAG,GAAG,EAAE;QAC9B,OAAO,uBAAa,CAAC,KAAK,EAAE,CAAA;IAC7B,CAAC,CAAA;IACY,qCAAkB,GAAG,CAAC,IAA4B,EAAE,EAAE,CAAC,IAAI,4BAAS,CAAC,IAAI,CAAC,CAAA;AACxF,CAAC,EARS,kBAAkB,kCAAlB,kBAAkB,QAQ3B"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"PredicateReference.d.ts","sourceRoot":"","sources":["../../../../src/acl/builder/PredicateReference.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAS,KAAK,EAAE,MAAM,mBAAmB,CAAA;AAGrD,MAAM,CAAC,OAAO,OAAO,kBAAkB;aACV,IAAI,EAAE,GAAG,CAAC,kBAAkB;gBAA5B,IAAI,EAAE,GAAG,CAAC,kBAAkB;CACxD;AAED,eAAO,MAAM,yBAAyB,UAC9B,MAAM,MAAM,eACN,eAAe,UACpB,MAAM,MAAM,aACT,IAAI,mBAAmB,CAAC,kBAAkB,CAAC,KACpD,IAAI,mBA+BN,CAAA"}
@@ -1,36 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.resolvePredicateReference = void 0;
4
- const schema_utils_1 = require("@contember/schema-utils");
5
- class PredicateReference {
6
- constructor(name) {
7
- this.name = name;
8
- }
9
- }
10
- exports.default = PredicateReference;
11
- const resolvePredicateReference = (model, permissions, entity, predicate) => {
12
- const predicateDefinitionProcessor = new schema_utils_1.PredicateDefinitionProcessor(model);
13
- return predicateDefinitionProcessor.process(entity, predicate, {
14
- handleColumn: ({ value }) => {
15
- if (value instanceof PredicateReference) {
16
- throw new Error();
17
- }
18
- return value;
19
- },
20
- handleRelation: ({ value, targetEntity }) => {
21
- if (value instanceof PredicateReference) {
22
- if (!permissions[targetEntity.name]) {
23
- throw new Error(`Permissions for entity ${targetEntity.name} not found. Make sure you are defining it in a right order.`);
24
- }
25
- const predicate = permissions[targetEntity.name].predicates[value.name];
26
- if (!predicate) {
27
- throw new Error(`Predicate ${value.name} of entity ${targetEntity.name} not found. Make sure you are defining it in a right order.`);
28
- }
29
- return predicate;
30
- }
31
- return value;
32
- },
33
- });
34
- };
35
- exports.resolvePredicateReference = resolvePredicateReference;
36
- //# sourceMappingURL=PredicateReference.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"PredicateReference.js","sourceRoot":"","sources":["../../../../src/acl/builder/PredicateReference.ts"],"names":[],"mappings":";;;AACA,0DAAsE;AAEtE,MAAqB,kBAAkB;IACtC,YAA4B,IAA4B;QAA5B,SAAI,GAAJ,IAAI,CAAwB;IAAG,CAAC;CAC5D;AAFD,qCAEC;AAEM,MAAM,yBAAyB,GAAG,CACxC,KAAmB,EACnB,WAA4B,EAC5B,MAAoB,EACpB,SAAsD,EAC5B,EAAE;IAC5B,MAAM,4BAA4B,GAAG,IAAI,2CAA4B,CAAC,KAAK,CAAC,CAAA;IAC5E,OAAO,4BAA4B,CAAC,OAAO,CAC1C,MAAM,EACN,SAAS,EACT;QACC,YAAY,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE;YAC3B,IAAI,KAAK,YAAY,kBAAkB,EAAE;gBACxC,MAAM,IAAI,KAAK,EAAE,CAAA;aACjB;YACD,OAAO,KAAK,CAAA;QACb,CAAC;QACD,cAAc,EAAE,CAAC,EAAE,KAAK,EAAE,YAAY,EAAE,EAAE,EAAE;YAC3C,IAAI,KAAK,YAAY,kBAAkB,EAAE;gBACxC,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE;oBACpC,MAAM,IAAI,KAAK,CACd,0BAA0B,YAAY,CAAC,IAAI,6DAA6D,CACxG,CAAA;iBACD;gBACD,MAAM,SAAS,GAAG,WAAW,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;gBACvE,IAAI,CAAC,SAAS,EAAE;oBACf,MAAM,IAAI,KAAK,CACd,aAAa,KAAK,CAAC,IAAI,cAAc,YAAY,CAAC,IAAI,6DAA6D,CACnH,CAAA;iBACD;gBACD,OAAO,SAAS,CAAA;aAChB;YACD,OAAO,KAAK,CAAA;QACb,CAAC;KACD,CACD,CAAA;AACF,CAAC,CAAA;AApCY,QAAA,yBAAyB,6BAoCrC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"customPrimary.d.ts","sourceRoot":"","sources":["../../../../src/acl/definition/customPrimary.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAA;AAE9B,OAAO,EAAE,iBAAiB,EAAqB,MAAM,aAAa,CAAA;AAElE,eAAO,MAAM,kBAAkB,UAAW,IAAI,GAAG,IAAI,EAAE,KAAG,kBAAkB,GAAG,CAQ9E,CAAA"}
@@ -1,16 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.allowCustomPrimary = void 0;
4
- const stores_1 = require("./internal/stores");
5
- const allowCustomPrimary = (role) => {
6
- return (entity) => {
7
- if (!role) {
8
- stores_1.allowCustomPrimaryAllRolesStore.update(entity, () => true);
9
- }
10
- else {
11
- stores_1.allowCustomPrimaryStore.update(entity, val => [...val, ...(Array.isArray(role) ? role : [role])]);
12
- }
13
- };
14
- };
15
- exports.allowCustomPrimary = allowCustomPrimary;
16
- //# sourceMappingURL=customPrimary.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"customPrimary.js","sourceRoot":"","sources":["../../../../src/acl/definition/customPrimary.ts"],"names":[],"mappings":";;;AACA,8CAA4F;AAGrF,MAAM,kBAAkB,GAAG,CAAC,IAAoB,EAA0B,EAAE;IAClF,OAAO,CAAC,MAAyB,EAAE,EAAE;QACpC,IAAI,CAAC,IAAI,EAAE;YACV,wCAA+B,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,CAAA;SAC1D;aAAM;YACN,gCAAuB,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,GAAG,GAAG,EAAE,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAA;SACjG;IACF,CAAC,CAAA;AACF,CAAC,CAAA;AARY,QAAA,kBAAkB,sBAQ9B"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/acl/definition/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AAG9C,cAAc,iBAAiB,CAAA;AAC/B,cAAc,eAAe,CAAA;AAC7B,cAAc,cAAc,CAAA;AAC5B,cAAc,SAAS,CAAA;AACvB,cAAc,aAAa,CAAA;AAE3B,eAAO,MAAM,SAAS,wBACA,OAAO,MAAM,EAAE,GAAG,CAAC,SACjC,MAAM,MAAM,KACjB,IAAI,MAGN,CAAA"}
@@ -1,29 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
- };
16
- Object.defineProperty(exports, "__esModule", { value: true });
17
- exports.createAcl = void 0;
18
- const AclFactory_1 = require("./internal/AclFactory");
19
- __exportStar(require("./customPrimary"), exports);
20
- __exportStar(require("./permissions"), exports);
21
- __exportStar(require("./references"), exports);
22
- __exportStar(require("./roles"), exports);
23
- __exportStar(require("./variables"), exports);
24
- const createAcl = (exportedDefinitions, model) => {
25
- const aclFactory = new AclFactory_1.AclFactory(model);
26
- return aclFactory.create(exportedDefinitions);
27
- };
28
- exports.createAcl = createAcl;
29
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/acl/definition/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AACA,sDAAkD;AAElD,kDAA+B;AAC/B,gDAA6B;AAC7B,+CAA4B;AAC5B,0CAAuB;AACvB,8CAA2B;AAEpB,MAAM,SAAS,GAAG,CACxB,mBAAwC,EACxC,KAAmB,EACN,EAAE;IACf,MAAM,UAAU,GAAG,IAAI,uBAAU,CAAC,KAAK,CAAC,CAAA;IACxC,OAAO,UAAU,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAAA;AAC9C,CAAC,CAAA;AANY,QAAA,SAAS,aAMrB"}
@@ -1,106 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.AclFactory = void 0;
4
- const schema_utils_1 = require("@contember/schema-utils");
5
- const EntityPredicateResolver_1 = require("./EntityPredicateResolver");
6
- const stores_1 = require("./stores");
7
- const roles_1 = require("../roles");
8
- const variables_1 = require("../variables");
9
- const utils_1 = require("../../../utils");
10
- class AclFactory {
11
- constructor(model) {
12
- this.model = model;
13
- }
14
- create(exportedDefinitions) {
15
- const entityLikeDefinition = (0, utils_1.filterEntityDefinition)(exportedDefinitions);
16
- const roles = Object.values(exportedDefinitions).filter(it => it instanceof roles_1.Role);
17
- const variables = Object.values(exportedDefinitions).filter(it => it instanceof variables_1.VariableDefinition);
18
- const groupedPermissions = AclFactory.groupPermissions(entityLikeDefinition, roles);
19
- return {
20
- roles: Object.fromEntries(roles.map((role) => {
21
- var _a;
22
- const rolePermissions = groupedPermissions.get(role);
23
- return [
24
- role.name,
25
- {
26
- ...role.options,
27
- stages: (_a = role.options.stages) !== null && _a !== void 0 ? _a : '*',
28
- entities: this.createPermissions(rolePermissions),
29
- variables: this.createVariables(role, variables),
30
- },
31
- ];
32
- })),
33
- };
34
- }
35
- createPermissions(rolePermissions) {
36
- if (!rolePermissions) {
37
- return {};
38
- }
39
- return Object.fromEntries(Array.from(rolePermissions.keys()).map((entityName) => {
40
- var _a;
41
- const entity = (0, schema_utils_1.getEntity)(this.model, entityName);
42
- const predicatesResolver = EntityPredicateResolver_1.EntityPredicatesResolver.create(rolePermissions, this.model, entity);
43
- const entityOperations = {};
44
- for (const op of ['create', 'update', 'read']) {
45
- const fieldPermissions = {};
46
- for (const field of Object.keys(entity.fields)) {
47
- const predicate = predicatesResolver.createFieldPredicate(op, field, field === entity.primary);
48
- if (predicate !== undefined) {
49
- fieldPermissions[field] = predicate;
50
- }
51
- }
52
- if (Object.keys(fieldPermissions).length > 0) {
53
- entityOperations[op] = fieldPermissions;
54
- }
55
- }
56
- const delPredicate = predicatesResolver.createFieldPredicate('delete', '', false);
57
- if (delPredicate !== undefined) {
58
- entityOperations.delete = delPredicate;
59
- }
60
- if ((_a = rolePermissions.get(entityName)) === null || _a === void 0 ? void 0 : _a.allowCustomPrimary) {
61
- entityOperations.customPrimary = true;
62
- }
63
- return [entityName, {
64
- predicates: predicatesResolver.getUsedPredicates(),
65
- operations: entityOperations,
66
- }];
67
- }));
68
- }
69
- createVariables(role, variables) {
70
- const roleVariables = variables.filter(it => it.roles.includes(role));
71
- return Object.fromEntries(roleVariables.map((variable) => {
72
- return [variable.name, variable.variable];
73
- }));
74
- }
75
- static groupPermissions(entityLikeDefinition, roles) {
76
- const groupedPermissions = new Map();
77
- for (const [name, entity] of entityLikeDefinition) {
78
- const initEntityPermissions = (role) => {
79
- var _a, _b;
80
- const rolePermissions = (_a = groupedPermissions.get(role)) !== null && _a !== void 0 ? _a : new Map();
81
- groupedPermissions.set(role, rolePermissions);
82
- const entityPermissions = (_b = rolePermissions.get(name)) !== null && _b !== void 0 ? _b : {
83
- allowCustomPrimary: false,
84
- definitions: [],
85
- };
86
- rolePermissions.set(name, entityPermissions);
87
- return entityPermissions;
88
- };
89
- const metadata = stores_1.allowDefinitionsStore.get(entity);
90
- for (const { role, ...definition } of metadata) {
91
- if (!roles.includes(role)) {
92
- throw `Role ${role.name} used on entity ${name} is not registered. Have you exported it?`;
93
- }
94
- const entityPermissions = initEntityPermissions(role);
95
- entityPermissions.definitions.push(definition);
96
- }
97
- const rolesWithCustomPrimary = stores_1.allowCustomPrimaryAllRolesStore.get(entity) ? roles : stores_1.allowCustomPrimaryStore.get(entity);
98
- for (const role of rolesWithCustomPrimary) {
99
- initEntityPermissions(role).allowCustomPrimary = true;
100
- }
101
- }
102
- return groupedPermissions;
103
- }
104
- }
105
- exports.AclFactory = AclFactory;
106
- //# sourceMappingURL=AclFactory.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"AclFactory.js","sourceRoot":"","sources":["../../../../../src/acl/definition/internal/AclFactory.ts"],"names":[],"mappings":"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"}