@contember/schema-definition 2.1.0-alpha.30 → 2.1.0-alpha.36

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 (735) hide show
  1. package/package.json +13 -8
  2. package/src/acl/builder/EntityPermissionsBuilder.ts +1 -1
  3. package/src/acl/builder/EntitySelector.ts +2 -2
  4. package/src/acl/builder/PermissionOverrider.ts +10 -8
  5. package/src/acl/builder/PermissionsBuilder.ts +1 -3
  6. package/src/acl/definition/aclExtensions.ts +7 -8
  7. package/src/acl/definition/internal/AclFactory.ts +21 -21
  8. package/src/acl/definition/internal/EntityPredicateResolver.ts +4 -4
  9. package/src/acl/definition/internal/stores.ts +4 -5
  10. package/src/acl/definition/permissions.ts +3 -6
  11. package/src/acl/definition/variables.ts +5 -1
  12. package/src/actions/definition/index.ts +0 -1
  13. package/src/actions/definition/internal/ActionsFactory.ts +6 -9
  14. package/src/actions/definition/targets.ts +0 -1
  15. package/src/actions/definition/triggers.ts +8 -7
  16. package/src/createSchema.ts +1 -1
  17. package/src/index.ts +6 -11
  18. package/src/model/builder/ColumnBuilder.ts +7 -5
  19. package/src/model/builder/internal/ColumnProcessor.ts +0 -1
  20. package/src/model/definition/OrderByDefinition.ts +7 -5
  21. package/src/model/definition/UniqueDefinition.ts +14 -13
  22. package/src/model/definition/extensions.ts +2 -2
  23. package/src/model/definition/fieldDefinitions/ColumnDefinition.ts +12 -4
  24. package/src/model/definition/fieldDefinitions/FieldDefinition.ts +1 -1
  25. package/src/model/definition/fieldDefinitions/ManyHasManyDefinition.ts +0 -2
  26. package/src/model/definition/fieldDefinitions/ManyHasManyInverseDefinition.ts +4 -2
  27. package/src/model/definition/fieldDefinitions/ManyHasOneDefinition.ts +1 -1
  28. package/src/model/definition/fieldDefinitions/OneHasManyDefinition.ts +0 -1
  29. package/src/model/definition/fieldDefinitions/OneHasOneDefinition.ts +0 -2
  30. package/src/model/definition/fieldDefinitions/OneHasOneInverseDefinition.ts +5 -3
  31. package/src/model/definition/index.ts +2 -2
  32. package/src/model/definition/internal/SchemaBuilder.ts +1 -2
  33. package/src/model/definition/types.ts +1 -1
  34. package/src/model/index.ts +1 -10
  35. package/src/presets.ts +0 -2
  36. package/src/strict.ts +4 -4
  37. package/src/utils/MetadataStore.ts +18 -4
  38. package/src/utils/decorators.ts +1 -1
  39. package/src/utils/filterEntityDefinition.ts +3 -2
  40. package/src/validation/index.ts +30 -21
  41. package/tests/cases/unit/createSchema.test.ts +5 -6
  42. package/tests/cases/unit/extendEntity.test.ts +1 -2
  43. package/tests/cases/unit/orderBy.test.ts +3 -6
  44. package/tests/cases/unit/readAclDefinitions.test.ts +3 -14
  45. package/tests/cases/unit/readActions.test.ts +0 -2
  46. package/dist/development/index.cjs +0 -123
  47. package/dist/development/index.cjs.map +0 -1
  48. package/dist/development/index.js +0 -118
  49. package/dist/development/index.js.map +0 -1
  50. package/dist/development/src/acl/builder/EntityPermissionsBuilder.cjs +0 -119
  51. package/dist/development/src/acl/builder/EntityPermissionsBuilder.cjs.map +0 -1
  52. package/dist/development/src/acl/builder/EntityPermissionsBuilder.js +0 -120
  53. package/dist/development/src/acl/builder/EntityPermissionsBuilder.js.map +0 -1
  54. package/dist/development/src/acl/builder/EntitySelector.cjs +0 -32
  55. package/dist/development/src/acl/builder/EntitySelector.cjs.map +0 -1
  56. package/dist/development/src/acl/builder/EntitySelector.js +0 -33
  57. package/dist/development/src/acl/builder/EntitySelector.js.map +0 -1
  58. package/dist/development/src/acl/builder/FieldPermissionsBuilder.cjs +0 -59
  59. package/dist/development/src/acl/builder/FieldPermissionsBuilder.cjs.map +0 -1
  60. package/dist/development/src/acl/builder/FieldPermissionsBuilder.js +0 -60
  61. package/dist/development/src/acl/builder/FieldPermissionsBuilder.js.map +0 -1
  62. package/dist/development/src/acl/builder/FieldSelector.cjs +0 -26
  63. package/dist/development/src/acl/builder/FieldSelector.cjs.map +0 -1
  64. package/dist/development/src/acl/builder/FieldSelector.js +0 -27
  65. package/dist/development/src/acl/builder/FieldSelector.js.map +0 -1
  66. package/dist/development/src/acl/builder/PermissionOverrider.cjs +0 -37
  67. package/dist/development/src/acl/builder/PermissionOverrider.cjs.map +0 -1
  68. package/dist/development/src/acl/builder/PermissionOverrider.js +0 -38
  69. package/dist/development/src/acl/builder/PermissionOverrider.js.map +0 -1
  70. package/dist/development/src/acl/builder/PermissionsBuilder.cjs +0 -58
  71. package/dist/development/src/acl/builder/PermissionsBuilder.cjs.map +0 -1
  72. package/dist/development/src/acl/builder/PermissionsBuilder.js +0 -58
  73. package/dist/development/src/acl/builder/PermissionsBuilder.js.map +0 -1
  74. package/dist/development/src/acl/builder/PredicateReference.cjs +0 -43
  75. package/dist/development/src/acl/builder/PredicateReference.cjs.map +0 -1
  76. package/dist/development/src/acl/builder/PredicateReference.js +0 -43
  77. package/dist/development/src/acl/builder/PredicateReference.js.map +0 -1
  78. package/dist/development/src/acl/definition/aclExtensions.cjs +0 -16
  79. package/dist/development/src/acl/definition/aclExtensions.cjs.map +0 -1
  80. package/dist/development/src/acl/definition/aclExtensions.js +0 -16
  81. package/dist/development/src/acl/definition/aclExtensions.js.map +0 -1
  82. package/dist/development/src/acl/definition/customPrimary.cjs +0 -13
  83. package/dist/development/src/acl/definition/customPrimary.cjs.map +0 -1
  84. package/dist/development/src/acl/definition/customPrimary.js +0 -13
  85. package/dist/development/src/acl/definition/customPrimary.js.map +0 -1
  86. package/dist/development/src/acl/definition/index.cjs +0 -27
  87. package/dist/development/src/acl/definition/index.cjs.map +0 -1
  88. package/dist/development/src/acl/definition/index.js +0 -27
  89. package/dist/development/src/acl/definition/index.js.map +0 -1
  90. package/dist/development/src/acl/definition/internal/AclFactory.cjs +0 -131
  91. package/dist/development/src/acl/definition/internal/AclFactory.cjs.map +0 -1
  92. package/dist/development/src/acl/definition/internal/AclFactory.js +0 -131
  93. package/dist/development/src/acl/definition/internal/AclFactory.js.map +0 -1
  94. package/dist/development/src/acl/definition/internal/EntityPredicateResolver.cjs +0 -151
  95. package/dist/development/src/acl/definition/internal/EntityPredicateResolver.cjs.map +0 -1
  96. package/dist/development/src/acl/definition/internal/EntityPredicateResolver.js +0 -151
  97. package/dist/development/src/acl/definition/internal/EntityPredicateResolver.js.map +0 -1
  98. package/dist/development/src/acl/definition/internal/createPredicateName.cjs +0 -8
  99. package/dist/development/src/acl/definition/internal/createPredicateName.cjs.map +0 -1
  100. package/dist/development/src/acl/definition/internal/createPredicateName.js +0 -8
  101. package/dist/development/src/acl/definition/internal/createPredicateName.js.map +0 -1
  102. package/dist/development/src/acl/definition/internal/stores.cjs +0 -6
  103. package/dist/development/src/acl/definition/internal/stores.cjs.map +0 -1
  104. package/dist/development/src/acl/definition/internal/stores.js +0 -6
  105. package/dist/development/src/acl/definition/internal/stores.js.map +0 -1
  106. package/dist/development/src/acl/definition/permissions.cjs +0 -15
  107. package/dist/development/src/acl/definition/permissions.cjs.map +0 -1
  108. package/dist/development/src/acl/definition/permissions.js +0 -15
  109. package/dist/development/src/acl/definition/permissions.js.map +0 -1
  110. package/dist/development/src/acl/definition/references.cjs +0 -26
  111. package/dist/development/src/acl/definition/references.cjs.map +0 -1
  112. package/dist/development/src/acl/definition/references.js +0 -26
  113. package/dist/development/src/acl/definition/references.js.map +0 -1
  114. package/dist/development/src/acl/definition/roles.cjs +0 -14
  115. package/dist/development/src/acl/definition/roles.cjs.map +0 -1
  116. package/dist/development/src/acl/definition/roles.js +0 -14
  117. package/dist/development/src/acl/definition/roles.js.map +0 -1
  118. package/dist/development/src/acl/definition/variables.cjs +0 -36
  119. package/dist/development/src/acl/definition/variables.cjs.map +0 -1
  120. package/dist/development/src/acl/definition/variables.js +0 -36
  121. package/dist/development/src/acl/definition/variables.js.map +0 -1
  122. package/dist/development/src/actions/definition/index.cjs +0 -15
  123. package/dist/development/src/actions/definition/index.cjs.map +0 -1
  124. package/dist/development/src/actions/definition/index.js +0 -15
  125. package/dist/development/src/actions/definition/index.js.map +0 -1
  126. package/dist/development/src/actions/definition/internal/ActionsFactory.cjs +0 -180
  127. package/dist/development/src/actions/definition/internal/ActionsFactory.cjs.map +0 -1
  128. package/dist/development/src/actions/definition/internal/ActionsFactory.js +0 -180
  129. package/dist/development/src/actions/definition/internal/ActionsFactory.js.map +0 -1
  130. package/dist/development/src/actions/definition/internal/store.cjs +0 -6
  131. package/dist/development/src/actions/definition/internal/store.cjs.map +0 -1
  132. package/dist/development/src/actions/definition/internal/store.js +0 -6
  133. package/dist/development/src/actions/definition/internal/store.js.map +0 -1
  134. package/dist/development/src/actions/definition/targets.cjs +0 -15
  135. package/dist/development/src/actions/definition/targets.cjs.map +0 -1
  136. package/dist/development/src/actions/definition/targets.js +0 -15
  137. package/dist/development/src/actions/definition/targets.js.map +0 -1
  138. package/dist/development/src/actions/definition/triggers.cjs +0 -12
  139. package/dist/development/src/actions/definition/triggers.cjs.map +0 -1
  140. package/dist/development/src/actions/definition/triggers.js +0 -12
  141. package/dist/development/src/actions/definition/triggers.js.map +0 -1
  142. package/dist/development/src/createSchema.cjs +0 -29
  143. package/dist/development/src/createSchema.cjs.map +0 -1
  144. package/dist/development/src/createSchema.js +0 -29
  145. package/dist/development/src/createSchema.js.map +0 -1
  146. package/dist/development/src/model/builder/ColumnBuilder.cjs +0 -36
  147. package/dist/development/src/model/builder/ColumnBuilder.cjs.map +0 -1
  148. package/dist/development/src/model/builder/ColumnBuilder.js +0 -37
  149. package/dist/development/src/model/builder/ColumnBuilder.js.map +0 -1
  150. package/dist/development/src/model/builder/EntityBuilder.cjs +0 -69
  151. package/dist/development/src/model/builder/EntityBuilder.cjs.map +0 -1
  152. package/dist/development/src/model/builder/EntityBuilder.js +0 -70
  153. package/dist/development/src/model/builder/EntityBuilder.js.map +0 -1
  154. package/dist/development/src/model/builder/FieldBuilder.cjs +0 -14
  155. package/dist/development/src/model/builder/FieldBuilder.cjs.map +0 -1
  156. package/dist/development/src/model/builder/FieldBuilder.js +0 -15
  157. package/dist/development/src/model/builder/FieldBuilder.js.map +0 -1
  158. package/dist/development/src/model/builder/ManyHasManyBuilder.cjs +0 -35
  159. package/dist/development/src/model/builder/ManyHasManyBuilder.cjs.map +0 -1
  160. package/dist/development/src/model/builder/ManyHasManyBuilder.js +0 -36
  161. package/dist/development/src/model/builder/ManyHasManyBuilder.js.map +0 -1
  162. package/dist/development/src/model/builder/ManyHasOneBuilder.cjs +0 -36
  163. package/dist/development/src/model/builder/ManyHasOneBuilder.cjs.map +0 -1
  164. package/dist/development/src/model/builder/ManyHasOneBuilder.js +0 -37
  165. package/dist/development/src/model/builder/ManyHasOneBuilder.js.map +0 -1
  166. package/dist/development/src/model/builder/OneHasManyBuilder.cjs +0 -44
  167. package/dist/development/src/model/builder/OneHasManyBuilder.cjs.map +0 -1
  168. package/dist/development/src/model/builder/OneHasManyBuilder.js +0 -45
  169. package/dist/development/src/model/builder/OneHasManyBuilder.js.map +0 -1
  170. package/dist/development/src/model/builder/OneHasOneBuilder.cjs +0 -46
  171. package/dist/development/src/model/builder/OneHasOneBuilder.cjs.map +0 -1
  172. package/dist/development/src/model/builder/OneHasOneBuilder.js +0 -47
  173. package/dist/development/src/model/builder/OneHasOneBuilder.js.map +0 -1
  174. package/dist/development/src/model/builder/SchemaBuilder.cjs +0 -40
  175. package/dist/development/src/model/builder/SchemaBuilder.cjs.map +0 -1
  176. package/dist/development/src/model/builder/SchemaBuilder.js +0 -40
  177. package/dist/development/src/model/builder/SchemaBuilder.js.map +0 -1
  178. package/dist/development/src/model/builder/SchemaBuilderError.cjs +0 -6
  179. package/dist/development/src/model/builder/SchemaBuilderError.cjs.map +0 -1
  180. package/dist/development/src/model/builder/SchemaBuilderError.js +0 -6
  181. package/dist/development/src/model/builder/SchemaBuilderError.js.map +0 -1
  182. package/dist/development/src/model/builder/SchemaBuilderInternal.cjs +0 -153
  183. package/dist/development/src/model/builder/SchemaBuilderInternal.cjs.map +0 -1
  184. package/dist/development/src/model/builder/SchemaBuilderInternal.js +0 -154
  185. package/dist/development/src/model/builder/SchemaBuilderInternal.js.map +0 -1
  186. package/dist/development/src/model/builder/internal/ColumnProcessor.cjs +0 -34
  187. package/dist/development/src/model/builder/internal/ColumnProcessor.cjs.map +0 -1
  188. package/dist/development/src/model/builder/internal/ColumnProcessor.js +0 -35
  189. package/dist/development/src/model/builder/internal/ColumnProcessor.js.map +0 -1
  190. package/dist/development/src/model/builder/internal/ManyHasManyProcessor.cjs +0 -54
  191. package/dist/development/src/model/builder/internal/ManyHasManyProcessor.cjs.map +0 -1
  192. package/dist/development/src/model/builder/internal/ManyHasManyProcessor.js +0 -55
  193. package/dist/development/src/model/builder/internal/ManyHasManyProcessor.js.map +0 -1
  194. package/dist/development/src/model/builder/internal/ManyHasOneProcessor.cjs +0 -46
  195. package/dist/development/src/model/builder/internal/ManyHasOneProcessor.cjs.map +0 -1
  196. package/dist/development/src/model/builder/internal/ManyHasOneProcessor.js +0 -47
  197. package/dist/development/src/model/builder/internal/ManyHasOneProcessor.js.map +0 -1
  198. package/dist/development/src/model/builder/internal/OneHasManyProcessor.cjs +0 -44
  199. package/dist/development/src/model/builder/internal/OneHasManyProcessor.cjs.map +0 -1
  200. package/dist/development/src/model/builder/internal/OneHasManyProcessor.js +0 -45
  201. package/dist/development/src/model/builder/internal/OneHasManyProcessor.js.map +0 -1
  202. package/dist/development/src/model/builder/internal/OneHasOneProcessor.cjs +0 -50
  203. package/dist/development/src/model/builder/internal/OneHasOneProcessor.cjs.map +0 -1
  204. package/dist/development/src/model/builder/internal/OneHasOneProcessor.js +0 -51
  205. package/dist/development/src/model/builder/internal/OneHasOneProcessor.js.map +0 -1
  206. package/dist/development/src/model/definition/EnumDefinition.cjs +0 -13
  207. package/dist/development/src/model/definition/EnumDefinition.cjs.map +0 -1
  208. package/dist/development/src/model/definition/EnumDefinition.js +0 -13
  209. package/dist/development/src/model/definition/EnumDefinition.js.map +0 -1
  210. package/dist/development/src/model/definition/EventLogDefinition.cjs +0 -9
  211. package/dist/development/src/model/definition/EventLogDefinition.cjs.map +0 -1
  212. package/dist/development/src/model/definition/EventLogDefinition.js +0 -9
  213. package/dist/development/src/model/definition/EventLogDefinition.js.map +0 -1
  214. package/dist/development/src/model/definition/IndexDefinition.cjs +0 -17
  215. package/dist/development/src/model/definition/IndexDefinition.cjs.map +0 -1
  216. package/dist/development/src/model/definition/IndexDefinition.js +0 -17
  217. package/dist/development/src/model/definition/IndexDefinition.js.map +0 -1
  218. package/dist/development/src/model/definition/OrderByDefinition.cjs +0 -30
  219. package/dist/development/src/model/definition/OrderByDefinition.cjs.map +0 -1
  220. package/dist/development/src/model/definition/OrderByDefinition.js +0 -30
  221. package/dist/development/src/model/definition/OrderByDefinition.js.map +0 -1
  222. package/dist/development/src/model/definition/UniqueDefinition.cjs +0 -17
  223. package/dist/development/src/model/definition/UniqueDefinition.cjs.map +0 -1
  224. package/dist/development/src/model/definition/UniqueDefinition.js +0 -17
  225. package/dist/development/src/model/definition/UniqueDefinition.js.map +0 -1
  226. package/dist/development/src/model/definition/ViewDefinition.cjs +0 -27
  227. package/dist/development/src/model/definition/ViewDefinition.cjs.map +0 -1
  228. package/dist/development/src/model/definition/ViewDefinition.js +0 -27
  229. package/dist/development/src/model/definition/ViewDefinition.js.map +0 -1
  230. package/dist/development/src/model/definition/extensions.cjs +0 -16
  231. package/dist/development/src/model/definition/extensions.cjs.map +0 -1
  232. package/dist/development/src/model/definition/extensions.js +0 -16
  233. package/dist/development/src/model/definition/extensions.js.map +0 -1
  234. package/dist/development/src/model/definition/fieldDefinitions/ColumnDefinition.cjs +0 -140
  235. package/dist/development/src/model/definition/fieldDefinitions/ColumnDefinition.cjs.map +0 -1
  236. package/dist/development/src/model/definition/fieldDefinitions/ColumnDefinition.js +0 -140
  237. package/dist/development/src/model/definition/fieldDefinitions/ColumnDefinition.js.map +0 -1
  238. package/dist/development/src/model/definition/fieldDefinitions/FieldDefinition.cjs +0 -9
  239. package/dist/development/src/model/definition/fieldDefinitions/FieldDefinition.cjs.map +0 -1
  240. package/dist/development/src/model/definition/fieldDefinitions/FieldDefinition.js +0 -9
  241. package/dist/development/src/model/definition/fieldDefinitions/FieldDefinition.js.map +0 -1
  242. package/dist/development/src/model/definition/fieldDefinitions/ManyHasManyDefinition.cjs +0 -57
  243. package/dist/development/src/model/definition/fieldDefinitions/ManyHasManyDefinition.cjs.map +0 -1
  244. package/dist/development/src/model/definition/fieldDefinitions/ManyHasManyDefinition.js +0 -57
  245. package/dist/development/src/model/definition/fieldDefinitions/ManyHasManyDefinition.js.map +0 -1
  246. package/dist/development/src/model/definition/fieldDefinitions/ManyHasManyInverseDefinition.cjs +0 -36
  247. package/dist/development/src/model/definition/fieldDefinitions/ManyHasManyInverseDefinition.cjs.map +0 -1
  248. package/dist/development/src/model/definition/fieldDefinitions/ManyHasManyInverseDefinition.js +0 -36
  249. package/dist/development/src/model/definition/fieldDefinitions/ManyHasManyInverseDefinition.js.map +0 -1
  250. package/dist/development/src/model/definition/fieldDefinitions/ManyHasOneDefinition.cjs +0 -60
  251. package/dist/development/src/model/definition/fieldDefinitions/ManyHasOneDefinition.cjs.map +0 -1
  252. package/dist/development/src/model/definition/fieldDefinitions/ManyHasOneDefinition.js +0 -60
  253. package/dist/development/src/model/definition/fieldDefinitions/ManyHasOneDefinition.js.map +0 -1
  254. package/dist/development/src/model/definition/fieldDefinitions/OneHasManyDefinition.cjs +0 -36
  255. package/dist/development/src/model/definition/fieldDefinitions/OneHasManyDefinition.cjs.map +0 -1
  256. package/dist/development/src/model/definition/fieldDefinitions/OneHasManyDefinition.js +0 -36
  257. package/dist/development/src/model/definition/fieldDefinitions/OneHasManyDefinition.js.map +0 -1
  258. package/dist/development/src/model/definition/fieldDefinitions/OneHasOneDefinition.cjs +0 -64
  259. package/dist/development/src/model/definition/fieldDefinitions/OneHasOneDefinition.cjs.map +0 -1
  260. package/dist/development/src/model/definition/fieldDefinitions/OneHasOneDefinition.js +0 -64
  261. package/dist/development/src/model/definition/fieldDefinitions/OneHasOneDefinition.js.map +0 -1
  262. package/dist/development/src/model/definition/fieldDefinitions/OneHasOneInverseDefinition.cjs +0 -35
  263. package/dist/development/src/model/definition/fieldDefinitions/OneHasOneInverseDefinition.cjs.map +0 -1
  264. package/dist/development/src/model/definition/fieldDefinitions/OneHasOneInverseDefinition.js +0 -35
  265. package/dist/development/src/model/definition/fieldDefinitions/OneHasOneInverseDefinition.js.map +0 -1
  266. package/dist/development/src/model/definition/index.cjs +0 -80
  267. package/dist/development/src/model/definition/index.cjs.map +0 -1
  268. package/dist/development/src/model/definition/index.js +0 -81
  269. package/dist/development/src/model/definition/index.js.map +0 -1
  270. package/dist/development/src/model/definition/internal/EntityRegistry.cjs +0 -29
  271. package/dist/development/src/model/definition/internal/EntityRegistry.cjs.map +0 -1
  272. package/dist/development/src/model/definition/internal/EntityRegistry.js +0 -29
  273. package/dist/development/src/model/definition/internal/EntityRegistry.js.map +0 -1
  274. package/dist/development/src/model/definition/internal/EnumRegistry.cjs +0 -29
  275. package/dist/development/src/model/definition/internal/EnumRegistry.cjs.map +0 -1
  276. package/dist/development/src/model/definition/internal/EnumRegistry.js +0 -29
  277. package/dist/development/src/model/definition/internal/EnumRegistry.js.map +0 -1
  278. package/dist/development/src/model/definition/internal/SchemaBuilder.cjs +0 -101
  279. package/dist/development/src/model/definition/internal/SchemaBuilder.cjs.map +0 -1
  280. package/dist/development/src/model/definition/internal/SchemaBuilder.js +0 -101
  281. package/dist/development/src/model/definition/internal/SchemaBuilder.js.map +0 -1
  282. package/dist/development/src/presets.cjs +0 -46
  283. package/dist/development/src/presets.cjs.map +0 -1
  284. package/dist/development/src/presets.js +0 -46
  285. package/dist/development/src/presets.js.map +0 -1
  286. package/dist/development/src/strict.cjs +0 -31
  287. package/dist/development/src/strict.cjs.map +0 -1
  288. package/dist/development/src/strict.js +0 -31
  289. package/dist/development/src/strict.js.map +0 -1
  290. package/dist/development/src/utils/MetadataStore.cjs +0 -19
  291. package/dist/development/src/utils/MetadataStore.cjs.map +0 -1
  292. package/dist/development/src/utils/MetadataStore.js +0 -19
  293. package/dist/development/src/utils/MetadataStore.js.map +0 -1
  294. package/dist/development/src/utils/assertNever.cjs +0 -7
  295. package/dist/development/src/utils/assertNever.cjs.map +0 -1
  296. package/dist/development/src/utils/assertNever.js +0 -7
  297. package/dist/development/src/utils/assertNever.js.map +0 -1
  298. package/dist/development/src/utils/filterEntityDefinition.cjs +0 -9
  299. package/dist/development/src/utils/filterEntityDefinition.cjs.map +0 -1
  300. package/dist/development/src/utils/filterEntityDefinition.js +0 -9
  301. package/dist/development/src/utils/filterEntityDefinition.js.map +0 -1
  302. package/dist/development/src/utils/tuple.cjs +0 -5
  303. package/dist/development/src/utils/tuple.cjs.map +0 -1
  304. package/dist/development/src/utils/tuple.js +0 -5
  305. package/dist/development/src/utils/tuple.js.map +0 -1
  306. package/dist/development/src/validation/index.cjs +0 -199
  307. package/dist/development/src/validation/index.cjs.map +0 -1
  308. package/dist/development/src/validation/index.js +0 -199
  309. package/dist/development/src/validation/index.js.map +0 -1
  310. package/dist/production/index.cjs +0 -123
  311. package/dist/production/index.cjs.map +0 -1
  312. package/dist/production/index.js +0 -118
  313. package/dist/production/index.js.map +0 -1
  314. package/dist/production/src/acl/builder/EntityPermissionsBuilder.cjs +0 -119
  315. package/dist/production/src/acl/builder/EntityPermissionsBuilder.cjs.map +0 -1
  316. package/dist/production/src/acl/builder/EntityPermissionsBuilder.js +0 -120
  317. package/dist/production/src/acl/builder/EntityPermissionsBuilder.js.map +0 -1
  318. package/dist/production/src/acl/builder/EntitySelector.cjs +0 -32
  319. package/dist/production/src/acl/builder/EntitySelector.cjs.map +0 -1
  320. package/dist/production/src/acl/builder/EntitySelector.js +0 -33
  321. package/dist/production/src/acl/builder/EntitySelector.js.map +0 -1
  322. package/dist/production/src/acl/builder/FieldPermissionsBuilder.cjs +0 -59
  323. package/dist/production/src/acl/builder/FieldPermissionsBuilder.cjs.map +0 -1
  324. package/dist/production/src/acl/builder/FieldPermissionsBuilder.js +0 -60
  325. package/dist/production/src/acl/builder/FieldPermissionsBuilder.js.map +0 -1
  326. package/dist/production/src/acl/builder/FieldSelector.cjs +0 -26
  327. package/dist/production/src/acl/builder/FieldSelector.cjs.map +0 -1
  328. package/dist/production/src/acl/builder/FieldSelector.js +0 -27
  329. package/dist/production/src/acl/builder/FieldSelector.js.map +0 -1
  330. package/dist/production/src/acl/builder/PermissionOverrider.cjs +0 -37
  331. package/dist/production/src/acl/builder/PermissionOverrider.cjs.map +0 -1
  332. package/dist/production/src/acl/builder/PermissionOverrider.js +0 -38
  333. package/dist/production/src/acl/builder/PermissionOverrider.js.map +0 -1
  334. package/dist/production/src/acl/builder/PermissionsBuilder.cjs +0 -58
  335. package/dist/production/src/acl/builder/PermissionsBuilder.cjs.map +0 -1
  336. package/dist/production/src/acl/builder/PermissionsBuilder.js +0 -58
  337. package/dist/production/src/acl/builder/PermissionsBuilder.js.map +0 -1
  338. package/dist/production/src/acl/builder/PredicateReference.cjs +0 -43
  339. package/dist/production/src/acl/builder/PredicateReference.cjs.map +0 -1
  340. package/dist/production/src/acl/builder/PredicateReference.js +0 -43
  341. package/dist/production/src/acl/builder/PredicateReference.js.map +0 -1
  342. package/dist/production/src/acl/definition/aclExtensions.cjs +0 -16
  343. package/dist/production/src/acl/definition/aclExtensions.cjs.map +0 -1
  344. package/dist/production/src/acl/definition/aclExtensions.js +0 -16
  345. package/dist/production/src/acl/definition/aclExtensions.js.map +0 -1
  346. package/dist/production/src/acl/definition/customPrimary.cjs +0 -13
  347. package/dist/production/src/acl/definition/customPrimary.cjs.map +0 -1
  348. package/dist/production/src/acl/definition/customPrimary.js +0 -13
  349. package/dist/production/src/acl/definition/customPrimary.js.map +0 -1
  350. package/dist/production/src/acl/definition/index.cjs +0 -27
  351. package/dist/production/src/acl/definition/index.cjs.map +0 -1
  352. package/dist/production/src/acl/definition/index.js +0 -27
  353. package/dist/production/src/acl/definition/index.js.map +0 -1
  354. package/dist/production/src/acl/definition/internal/AclFactory.cjs +0 -131
  355. package/dist/production/src/acl/definition/internal/AclFactory.cjs.map +0 -1
  356. package/dist/production/src/acl/definition/internal/AclFactory.js +0 -131
  357. package/dist/production/src/acl/definition/internal/AclFactory.js.map +0 -1
  358. package/dist/production/src/acl/definition/internal/EntityPredicateResolver.cjs +0 -151
  359. package/dist/production/src/acl/definition/internal/EntityPredicateResolver.cjs.map +0 -1
  360. package/dist/production/src/acl/definition/internal/EntityPredicateResolver.js +0 -151
  361. package/dist/production/src/acl/definition/internal/EntityPredicateResolver.js.map +0 -1
  362. package/dist/production/src/acl/definition/internal/createPredicateName.cjs +0 -8
  363. package/dist/production/src/acl/definition/internal/createPredicateName.cjs.map +0 -1
  364. package/dist/production/src/acl/definition/internal/createPredicateName.js +0 -8
  365. package/dist/production/src/acl/definition/internal/createPredicateName.js.map +0 -1
  366. package/dist/production/src/acl/definition/internal/stores.cjs +0 -6
  367. package/dist/production/src/acl/definition/internal/stores.cjs.map +0 -1
  368. package/dist/production/src/acl/definition/internal/stores.js +0 -6
  369. package/dist/production/src/acl/definition/internal/stores.js.map +0 -1
  370. package/dist/production/src/acl/definition/permissions.cjs +0 -15
  371. package/dist/production/src/acl/definition/permissions.cjs.map +0 -1
  372. package/dist/production/src/acl/definition/permissions.js +0 -15
  373. package/dist/production/src/acl/definition/permissions.js.map +0 -1
  374. package/dist/production/src/acl/definition/references.cjs +0 -26
  375. package/dist/production/src/acl/definition/references.cjs.map +0 -1
  376. package/dist/production/src/acl/definition/references.js +0 -26
  377. package/dist/production/src/acl/definition/references.js.map +0 -1
  378. package/dist/production/src/acl/definition/roles.cjs +0 -14
  379. package/dist/production/src/acl/definition/roles.cjs.map +0 -1
  380. package/dist/production/src/acl/definition/roles.js +0 -14
  381. package/dist/production/src/acl/definition/roles.js.map +0 -1
  382. package/dist/production/src/acl/definition/variables.cjs +0 -36
  383. package/dist/production/src/acl/definition/variables.cjs.map +0 -1
  384. package/dist/production/src/acl/definition/variables.js +0 -36
  385. package/dist/production/src/acl/definition/variables.js.map +0 -1
  386. package/dist/production/src/actions/definition/index.cjs +0 -15
  387. package/dist/production/src/actions/definition/index.cjs.map +0 -1
  388. package/dist/production/src/actions/definition/index.js +0 -15
  389. package/dist/production/src/actions/definition/index.js.map +0 -1
  390. package/dist/production/src/actions/definition/internal/ActionsFactory.cjs +0 -180
  391. package/dist/production/src/actions/definition/internal/ActionsFactory.cjs.map +0 -1
  392. package/dist/production/src/actions/definition/internal/ActionsFactory.js +0 -180
  393. package/dist/production/src/actions/definition/internal/ActionsFactory.js.map +0 -1
  394. package/dist/production/src/actions/definition/internal/store.cjs +0 -6
  395. package/dist/production/src/actions/definition/internal/store.cjs.map +0 -1
  396. package/dist/production/src/actions/definition/internal/store.js +0 -6
  397. package/dist/production/src/actions/definition/internal/store.js.map +0 -1
  398. package/dist/production/src/actions/definition/targets.cjs +0 -15
  399. package/dist/production/src/actions/definition/targets.cjs.map +0 -1
  400. package/dist/production/src/actions/definition/targets.js +0 -15
  401. package/dist/production/src/actions/definition/targets.js.map +0 -1
  402. package/dist/production/src/actions/definition/triggers.cjs +0 -12
  403. package/dist/production/src/actions/definition/triggers.cjs.map +0 -1
  404. package/dist/production/src/actions/definition/triggers.js +0 -12
  405. package/dist/production/src/actions/definition/triggers.js.map +0 -1
  406. package/dist/production/src/createSchema.cjs +0 -29
  407. package/dist/production/src/createSchema.cjs.map +0 -1
  408. package/dist/production/src/createSchema.js +0 -29
  409. package/dist/production/src/createSchema.js.map +0 -1
  410. package/dist/production/src/model/builder/ColumnBuilder.cjs +0 -36
  411. package/dist/production/src/model/builder/ColumnBuilder.cjs.map +0 -1
  412. package/dist/production/src/model/builder/ColumnBuilder.js +0 -37
  413. package/dist/production/src/model/builder/ColumnBuilder.js.map +0 -1
  414. package/dist/production/src/model/builder/EntityBuilder.cjs +0 -69
  415. package/dist/production/src/model/builder/EntityBuilder.cjs.map +0 -1
  416. package/dist/production/src/model/builder/EntityBuilder.js +0 -70
  417. package/dist/production/src/model/builder/EntityBuilder.js.map +0 -1
  418. package/dist/production/src/model/builder/FieldBuilder.cjs +0 -14
  419. package/dist/production/src/model/builder/FieldBuilder.cjs.map +0 -1
  420. package/dist/production/src/model/builder/FieldBuilder.js +0 -15
  421. package/dist/production/src/model/builder/FieldBuilder.js.map +0 -1
  422. package/dist/production/src/model/builder/ManyHasManyBuilder.cjs +0 -35
  423. package/dist/production/src/model/builder/ManyHasManyBuilder.cjs.map +0 -1
  424. package/dist/production/src/model/builder/ManyHasManyBuilder.js +0 -36
  425. package/dist/production/src/model/builder/ManyHasManyBuilder.js.map +0 -1
  426. package/dist/production/src/model/builder/ManyHasOneBuilder.cjs +0 -36
  427. package/dist/production/src/model/builder/ManyHasOneBuilder.cjs.map +0 -1
  428. package/dist/production/src/model/builder/ManyHasOneBuilder.js +0 -37
  429. package/dist/production/src/model/builder/ManyHasOneBuilder.js.map +0 -1
  430. package/dist/production/src/model/builder/OneHasManyBuilder.cjs +0 -44
  431. package/dist/production/src/model/builder/OneHasManyBuilder.cjs.map +0 -1
  432. package/dist/production/src/model/builder/OneHasManyBuilder.js +0 -45
  433. package/dist/production/src/model/builder/OneHasManyBuilder.js.map +0 -1
  434. package/dist/production/src/model/builder/OneHasOneBuilder.cjs +0 -46
  435. package/dist/production/src/model/builder/OneHasOneBuilder.cjs.map +0 -1
  436. package/dist/production/src/model/builder/OneHasOneBuilder.js +0 -47
  437. package/dist/production/src/model/builder/OneHasOneBuilder.js.map +0 -1
  438. package/dist/production/src/model/builder/SchemaBuilder.cjs +0 -40
  439. package/dist/production/src/model/builder/SchemaBuilder.cjs.map +0 -1
  440. package/dist/production/src/model/builder/SchemaBuilder.js +0 -40
  441. package/dist/production/src/model/builder/SchemaBuilder.js.map +0 -1
  442. package/dist/production/src/model/builder/SchemaBuilderError.cjs +0 -6
  443. package/dist/production/src/model/builder/SchemaBuilderError.cjs.map +0 -1
  444. package/dist/production/src/model/builder/SchemaBuilderError.js +0 -6
  445. package/dist/production/src/model/builder/SchemaBuilderError.js.map +0 -1
  446. package/dist/production/src/model/builder/SchemaBuilderInternal.cjs +0 -153
  447. package/dist/production/src/model/builder/SchemaBuilderInternal.cjs.map +0 -1
  448. package/dist/production/src/model/builder/SchemaBuilderInternal.js +0 -154
  449. package/dist/production/src/model/builder/SchemaBuilderInternal.js.map +0 -1
  450. package/dist/production/src/model/builder/internal/ColumnProcessor.cjs +0 -34
  451. package/dist/production/src/model/builder/internal/ColumnProcessor.cjs.map +0 -1
  452. package/dist/production/src/model/builder/internal/ColumnProcessor.js +0 -35
  453. package/dist/production/src/model/builder/internal/ColumnProcessor.js.map +0 -1
  454. package/dist/production/src/model/builder/internal/ManyHasManyProcessor.cjs +0 -54
  455. package/dist/production/src/model/builder/internal/ManyHasManyProcessor.cjs.map +0 -1
  456. package/dist/production/src/model/builder/internal/ManyHasManyProcessor.js +0 -55
  457. package/dist/production/src/model/builder/internal/ManyHasManyProcessor.js.map +0 -1
  458. package/dist/production/src/model/builder/internal/ManyHasOneProcessor.cjs +0 -46
  459. package/dist/production/src/model/builder/internal/ManyHasOneProcessor.cjs.map +0 -1
  460. package/dist/production/src/model/builder/internal/ManyHasOneProcessor.js +0 -47
  461. package/dist/production/src/model/builder/internal/ManyHasOneProcessor.js.map +0 -1
  462. package/dist/production/src/model/builder/internal/OneHasManyProcessor.cjs +0 -44
  463. package/dist/production/src/model/builder/internal/OneHasManyProcessor.cjs.map +0 -1
  464. package/dist/production/src/model/builder/internal/OneHasManyProcessor.js +0 -45
  465. package/dist/production/src/model/builder/internal/OneHasManyProcessor.js.map +0 -1
  466. package/dist/production/src/model/builder/internal/OneHasOneProcessor.cjs +0 -50
  467. package/dist/production/src/model/builder/internal/OneHasOneProcessor.cjs.map +0 -1
  468. package/dist/production/src/model/builder/internal/OneHasOneProcessor.js +0 -51
  469. package/dist/production/src/model/builder/internal/OneHasOneProcessor.js.map +0 -1
  470. package/dist/production/src/model/definition/EnumDefinition.cjs +0 -13
  471. package/dist/production/src/model/definition/EnumDefinition.cjs.map +0 -1
  472. package/dist/production/src/model/definition/EnumDefinition.js +0 -13
  473. package/dist/production/src/model/definition/EnumDefinition.js.map +0 -1
  474. package/dist/production/src/model/definition/EventLogDefinition.cjs +0 -9
  475. package/dist/production/src/model/definition/EventLogDefinition.cjs.map +0 -1
  476. package/dist/production/src/model/definition/EventLogDefinition.js +0 -9
  477. package/dist/production/src/model/definition/EventLogDefinition.js.map +0 -1
  478. package/dist/production/src/model/definition/IndexDefinition.cjs +0 -17
  479. package/dist/production/src/model/definition/IndexDefinition.cjs.map +0 -1
  480. package/dist/production/src/model/definition/IndexDefinition.js +0 -17
  481. package/dist/production/src/model/definition/IndexDefinition.js.map +0 -1
  482. package/dist/production/src/model/definition/OrderByDefinition.cjs +0 -30
  483. package/dist/production/src/model/definition/OrderByDefinition.cjs.map +0 -1
  484. package/dist/production/src/model/definition/OrderByDefinition.js +0 -30
  485. package/dist/production/src/model/definition/OrderByDefinition.js.map +0 -1
  486. package/dist/production/src/model/definition/UniqueDefinition.cjs +0 -17
  487. package/dist/production/src/model/definition/UniqueDefinition.cjs.map +0 -1
  488. package/dist/production/src/model/definition/UniqueDefinition.js +0 -17
  489. package/dist/production/src/model/definition/UniqueDefinition.js.map +0 -1
  490. package/dist/production/src/model/definition/ViewDefinition.cjs +0 -27
  491. package/dist/production/src/model/definition/ViewDefinition.cjs.map +0 -1
  492. package/dist/production/src/model/definition/ViewDefinition.js +0 -27
  493. package/dist/production/src/model/definition/ViewDefinition.js.map +0 -1
  494. package/dist/production/src/model/definition/extensions.cjs +0 -16
  495. package/dist/production/src/model/definition/extensions.cjs.map +0 -1
  496. package/dist/production/src/model/definition/extensions.js +0 -16
  497. package/dist/production/src/model/definition/extensions.js.map +0 -1
  498. package/dist/production/src/model/definition/fieldDefinitions/ColumnDefinition.cjs +0 -140
  499. package/dist/production/src/model/definition/fieldDefinitions/ColumnDefinition.cjs.map +0 -1
  500. package/dist/production/src/model/definition/fieldDefinitions/ColumnDefinition.js +0 -140
  501. package/dist/production/src/model/definition/fieldDefinitions/ColumnDefinition.js.map +0 -1
  502. package/dist/production/src/model/definition/fieldDefinitions/FieldDefinition.cjs +0 -9
  503. package/dist/production/src/model/definition/fieldDefinitions/FieldDefinition.cjs.map +0 -1
  504. package/dist/production/src/model/definition/fieldDefinitions/FieldDefinition.js +0 -9
  505. package/dist/production/src/model/definition/fieldDefinitions/FieldDefinition.js.map +0 -1
  506. package/dist/production/src/model/definition/fieldDefinitions/ManyHasManyDefinition.cjs +0 -57
  507. package/dist/production/src/model/definition/fieldDefinitions/ManyHasManyDefinition.cjs.map +0 -1
  508. package/dist/production/src/model/definition/fieldDefinitions/ManyHasManyDefinition.js +0 -57
  509. package/dist/production/src/model/definition/fieldDefinitions/ManyHasManyDefinition.js.map +0 -1
  510. package/dist/production/src/model/definition/fieldDefinitions/ManyHasManyInverseDefinition.cjs +0 -36
  511. package/dist/production/src/model/definition/fieldDefinitions/ManyHasManyInverseDefinition.cjs.map +0 -1
  512. package/dist/production/src/model/definition/fieldDefinitions/ManyHasManyInverseDefinition.js +0 -36
  513. package/dist/production/src/model/definition/fieldDefinitions/ManyHasManyInverseDefinition.js.map +0 -1
  514. package/dist/production/src/model/definition/fieldDefinitions/ManyHasOneDefinition.cjs +0 -60
  515. package/dist/production/src/model/definition/fieldDefinitions/ManyHasOneDefinition.cjs.map +0 -1
  516. package/dist/production/src/model/definition/fieldDefinitions/ManyHasOneDefinition.js +0 -60
  517. package/dist/production/src/model/definition/fieldDefinitions/ManyHasOneDefinition.js.map +0 -1
  518. package/dist/production/src/model/definition/fieldDefinitions/OneHasManyDefinition.cjs +0 -36
  519. package/dist/production/src/model/definition/fieldDefinitions/OneHasManyDefinition.cjs.map +0 -1
  520. package/dist/production/src/model/definition/fieldDefinitions/OneHasManyDefinition.js +0 -36
  521. package/dist/production/src/model/definition/fieldDefinitions/OneHasManyDefinition.js.map +0 -1
  522. package/dist/production/src/model/definition/fieldDefinitions/OneHasOneDefinition.cjs +0 -64
  523. package/dist/production/src/model/definition/fieldDefinitions/OneHasOneDefinition.cjs.map +0 -1
  524. package/dist/production/src/model/definition/fieldDefinitions/OneHasOneDefinition.js +0 -64
  525. package/dist/production/src/model/definition/fieldDefinitions/OneHasOneDefinition.js.map +0 -1
  526. package/dist/production/src/model/definition/fieldDefinitions/OneHasOneInverseDefinition.cjs +0 -35
  527. package/dist/production/src/model/definition/fieldDefinitions/OneHasOneInverseDefinition.cjs.map +0 -1
  528. package/dist/production/src/model/definition/fieldDefinitions/OneHasOneInverseDefinition.js +0 -35
  529. package/dist/production/src/model/definition/fieldDefinitions/OneHasOneInverseDefinition.js.map +0 -1
  530. package/dist/production/src/model/definition/index.cjs +0 -80
  531. package/dist/production/src/model/definition/index.cjs.map +0 -1
  532. package/dist/production/src/model/definition/index.js +0 -81
  533. package/dist/production/src/model/definition/index.js.map +0 -1
  534. package/dist/production/src/model/definition/internal/EntityRegistry.cjs +0 -29
  535. package/dist/production/src/model/definition/internal/EntityRegistry.cjs.map +0 -1
  536. package/dist/production/src/model/definition/internal/EntityRegistry.js +0 -29
  537. package/dist/production/src/model/definition/internal/EntityRegistry.js.map +0 -1
  538. package/dist/production/src/model/definition/internal/EnumRegistry.cjs +0 -29
  539. package/dist/production/src/model/definition/internal/EnumRegistry.cjs.map +0 -1
  540. package/dist/production/src/model/definition/internal/EnumRegistry.js +0 -29
  541. package/dist/production/src/model/definition/internal/EnumRegistry.js.map +0 -1
  542. package/dist/production/src/model/definition/internal/SchemaBuilder.cjs +0 -101
  543. package/dist/production/src/model/definition/internal/SchemaBuilder.cjs.map +0 -1
  544. package/dist/production/src/model/definition/internal/SchemaBuilder.js +0 -101
  545. package/dist/production/src/model/definition/internal/SchemaBuilder.js.map +0 -1
  546. package/dist/production/src/presets.cjs +0 -46
  547. package/dist/production/src/presets.cjs.map +0 -1
  548. package/dist/production/src/presets.js +0 -46
  549. package/dist/production/src/presets.js.map +0 -1
  550. package/dist/production/src/strict.cjs +0 -31
  551. package/dist/production/src/strict.cjs.map +0 -1
  552. package/dist/production/src/strict.js +0 -31
  553. package/dist/production/src/strict.js.map +0 -1
  554. package/dist/production/src/utils/MetadataStore.cjs +0 -19
  555. package/dist/production/src/utils/MetadataStore.cjs.map +0 -1
  556. package/dist/production/src/utils/MetadataStore.js +0 -19
  557. package/dist/production/src/utils/MetadataStore.js.map +0 -1
  558. package/dist/production/src/utils/assertNever.cjs +0 -7
  559. package/dist/production/src/utils/assertNever.cjs.map +0 -1
  560. package/dist/production/src/utils/assertNever.js +0 -7
  561. package/dist/production/src/utils/assertNever.js.map +0 -1
  562. package/dist/production/src/utils/filterEntityDefinition.cjs +0 -9
  563. package/dist/production/src/utils/filterEntityDefinition.cjs.map +0 -1
  564. package/dist/production/src/utils/filterEntityDefinition.js +0 -9
  565. package/dist/production/src/utils/filterEntityDefinition.js.map +0 -1
  566. package/dist/production/src/utils/tuple.cjs +0 -5
  567. package/dist/production/src/utils/tuple.cjs.map +0 -1
  568. package/dist/production/src/utils/tuple.js +0 -5
  569. package/dist/production/src/utils/tuple.js.map +0 -1
  570. package/dist/production/src/validation/index.cjs +0 -199
  571. package/dist/production/src/validation/index.cjs.map +0 -1
  572. package/dist/production/src/validation/index.js +0 -199
  573. package/dist/production/src/validation/index.js.map +0 -1
  574. package/dist/tests/cases/unit/createSchema.test.d.ts +0 -2
  575. package/dist/tests/cases/unit/createSchema.test.d.ts.map +0 -1
  576. package/dist/tests/cases/unit/extendEntity.test.d.ts +0 -2
  577. package/dist/tests/cases/unit/extendEntity.test.d.ts.map +0 -1
  578. package/dist/tests/cases/unit/orderBy.test.d.ts +0 -2
  579. package/dist/tests/cases/unit/orderBy.test.d.ts.map +0 -1
  580. package/dist/tests/cases/unit/readAclDefinitions.test.d.ts +0 -2
  581. package/dist/tests/cases/unit/readAclDefinitions.test.d.ts.map +0 -1
  582. package/dist/tests/cases/unit/readActions.test.d.ts +0 -2
  583. package/dist/tests/cases/unit/readActions.test.d.ts.map +0 -1
  584. package/dist/tests/tsconfig.tsbuildinfo +0 -1
  585. package/dist/types/acl/builder/EntityPermissionsBuilder.d.ts +0 -28
  586. package/dist/types/acl/builder/EntityPermissionsBuilder.d.ts.map +0 -1
  587. package/dist/types/acl/builder/EntitySelector.d.ts +0 -14
  588. package/dist/types/acl/builder/EntitySelector.d.ts.map +0 -1
  589. package/dist/types/acl/builder/FieldPermissionsBuilder.d.ts +0 -23
  590. package/dist/types/acl/builder/FieldPermissionsBuilder.d.ts.map +0 -1
  591. package/dist/types/acl/builder/FieldSelector.d.ts +0 -14
  592. package/dist/types/acl/builder/FieldSelector.d.ts.map +0 -1
  593. package/dist/types/acl/builder/PermissionOverrider.d.ts +0 -6
  594. package/dist/types/acl/builder/PermissionOverrider.d.ts.map +0 -1
  595. package/dist/types/acl/builder/PermissionsBuilder.d.ts +0 -24
  596. package/dist/types/acl/builder/PermissionsBuilder.d.ts.map +0 -1
  597. package/dist/types/acl/builder/PredicateReference.d.ts +0 -7
  598. package/dist/types/acl/builder/PredicateReference.d.ts.map +0 -1
  599. package/dist/types/acl/definition/aclExtensions.d.ts +0 -12
  600. package/dist/types/acl/definition/aclExtensions.d.ts.map +0 -1
  601. package/dist/types/acl/definition/customPrimary.d.ts +0 -4
  602. package/dist/types/acl/definition/customPrimary.d.ts.map +0 -1
  603. package/dist/types/acl/definition/index.d.ts +0 -8
  604. package/dist/types/acl/definition/index.d.ts.map +0 -1
  605. package/dist/types/acl/definition/internal/AclFactory.d.ts +0 -19
  606. package/dist/types/acl/definition/internal/AclFactory.d.ts.map +0 -1
  607. package/dist/types/acl/definition/internal/EntityPredicateResolver.d.ts +0 -16
  608. package/dist/types/acl/definition/internal/EntityPredicateResolver.d.ts.map +0 -1
  609. package/dist/types/acl/definition/internal/createPredicateName.d.ts +0 -3
  610. package/dist/types/acl/definition/internal/createPredicateName.d.ts.map +0 -1
  611. package/dist/types/acl/definition/internal/stores.d.ts +0 -11
  612. package/dist/types/acl/definition/internal/stores.d.ts.map +0 -1
  613. package/dist/types/acl/definition/permissions.d.ts +0 -23
  614. package/dist/types/acl/definition/permissions.d.ts.map +0 -1
  615. package/dist/types/acl/definition/references.d.ts +0 -10
  616. package/dist/types/acl/definition/references.d.ts.map +0 -1
  617. package/dist/types/acl/definition/roles.d.ts +0 -11
  618. package/dist/types/acl/definition/roles.d.ts.map +0 -1
  619. package/dist/types/acl/definition/variables.d.ts +0 -12
  620. package/dist/types/acl/definition/variables.d.ts.map +0 -1
  621. package/dist/types/actions/definition/index.d.ts +0 -5
  622. package/dist/types/actions/definition/index.d.ts.map +0 -1
  623. package/dist/types/actions/definition/internal/ActionsFactory.d.ts +0 -11
  624. package/dist/types/actions/definition/internal/ActionsFactory.d.ts.map +0 -1
  625. package/dist/types/actions/definition/internal/store.d.ts +0 -11
  626. package/dist/types/actions/definition/internal/store.d.ts.map +0 -1
  627. package/dist/types/actions/definition/targets.d.ts +0 -10
  628. package/dist/types/actions/definition/targets.d.ts.map +0 -1
  629. package/dist/types/actions/definition/triggers.d.ts +0 -31
  630. package/dist/types/actions/definition/triggers.d.ts.map +0 -1
  631. package/dist/types/createSchema.d.ts +0 -7
  632. package/dist/types/createSchema.d.ts.map +0 -1
  633. package/dist/types/index.d.ts +0 -88
  634. package/dist/types/index.d.ts.map +0 -1
  635. package/dist/types/model/builder/ColumnBuilder.d.ts +0 -31
  636. package/dist/types/model/builder/ColumnBuilder.d.ts.map +0 -1
  637. package/dist/types/model/builder/EntityBuilder.d.ts +0 -39
  638. package/dist/types/model/builder/EntityBuilder.d.ts.map +0 -1
  639. package/dist/types/model/builder/FieldBuilder.d.ts +0 -38
  640. package/dist/types/model/builder/FieldBuilder.d.ts.map +0 -1
  641. package/dist/types/model/builder/ManyHasManyBuilder.d.ts +0 -25
  642. package/dist/types/model/builder/ManyHasManyBuilder.d.ts.map +0 -1
  643. package/dist/types/model/builder/ManyHasOneBuilder.d.ts +0 -26
  644. package/dist/types/model/builder/ManyHasOneBuilder.d.ts.map +0 -1
  645. package/dist/types/model/builder/OneHasManyBuilder.d.ts +0 -29
  646. package/dist/types/model/builder/OneHasManyBuilder.d.ts.map +0 -1
  647. package/dist/types/model/builder/OneHasOneBuilder.d.ts +0 -32
  648. package/dist/types/model/builder/OneHasOneBuilder.d.ts.map +0 -1
  649. package/dist/types/model/builder/SchemaBuilder.d.ts +0 -14
  650. package/dist/types/model/builder/SchemaBuilder.d.ts.map +0 -1
  651. package/dist/types/model/builder/SchemaBuilderError.d.ts +0 -3
  652. package/dist/types/model/builder/SchemaBuilderError.d.ts.map +0 -1
  653. package/dist/types/model/builder/SchemaBuilderInternal.d.ts +0 -22
  654. package/dist/types/model/builder/SchemaBuilderInternal.d.ts.map +0 -1
  655. package/dist/types/model/builder/internal/ColumnProcessor.d.ts +0 -10
  656. package/dist/types/model/builder/internal/ColumnProcessor.d.ts.map +0 -1
  657. package/dist/types/model/builder/internal/FieldProcessor.d.ts +0 -9
  658. package/dist/types/model/builder/internal/FieldProcessor.d.ts.map +0 -1
  659. package/dist/types/model/builder/internal/ManyHasManyProcessor.d.ts +0 -11
  660. package/dist/types/model/builder/internal/ManyHasManyProcessor.d.ts.map +0 -1
  661. package/dist/types/model/builder/internal/ManyHasOneProcessor.d.ts +0 -11
  662. package/dist/types/model/builder/internal/ManyHasOneProcessor.d.ts.map +0 -1
  663. package/dist/types/model/builder/internal/OneHasManyProcessor.d.ts +0 -11
  664. package/dist/types/model/builder/internal/OneHasManyProcessor.d.ts.map +0 -1
  665. package/dist/types/model/builder/internal/OneHasOneProcessor.d.ts +0 -11
  666. package/dist/types/model/builder/internal/OneHasOneProcessor.d.ts.map +0 -1
  667. package/dist/types/model/builder/types.d.ts +0 -4
  668. package/dist/types/model/builder/types.d.ts.map +0 -1
  669. package/dist/types/model/definition/EnumDefinition.d.ts +0 -6
  670. package/dist/types/model/definition/EnumDefinition.d.ts.map +0 -1
  671. package/dist/types/model/definition/EventLogDefinition.d.ts +0 -2
  672. package/dist/types/model/definition/EventLogDefinition.d.ts.map +0 -1
  673. package/dist/types/model/definition/IndexDefinition.d.ts +0 -9
  674. package/dist/types/model/definition/IndexDefinition.d.ts.map +0 -1
  675. package/dist/types/model/definition/OrderByDefinition.d.ts +0 -11
  676. package/dist/types/model/definition/OrderByDefinition.d.ts.map +0 -1
  677. package/dist/types/model/definition/UniqueDefinition.d.ts +0 -15
  678. package/dist/types/model/definition/UniqueDefinition.d.ts.map +0 -1
  679. package/dist/types/model/definition/ViewDefinition.d.ts +0 -9
  680. package/dist/types/model/definition/ViewDefinition.d.ts.map +0 -1
  681. package/dist/types/model/definition/context.d.ts +0 -13
  682. package/dist/types/model/definition/context.d.ts.map +0 -1
  683. package/dist/types/model/definition/extensions.d.ts +0 -15
  684. package/dist/types/model/definition/extensions.d.ts.map +0 -1
  685. package/dist/types/model/definition/fieldDefinitions/ColumnDefinition.d.ts +0 -55
  686. package/dist/types/model/definition/fieldDefinitions/ColumnDefinition.d.ts.map +0 -1
  687. package/dist/types/model/definition/fieldDefinitions/FieldDefinition.d.ts +0 -15
  688. package/dist/types/model/definition/fieldDefinitions/FieldDefinition.d.ts.map +0 -1
  689. package/dist/types/model/definition/fieldDefinitions/ManyHasManyDefinition.d.ts +0 -19
  690. package/dist/types/model/definition/fieldDefinitions/ManyHasManyDefinition.d.ts.map +0 -1
  691. package/dist/types/model/definition/fieldDefinitions/ManyHasManyInverseDefinition.d.ts +0 -16
  692. package/dist/types/model/definition/fieldDefinitions/ManyHasManyInverseDefinition.d.ts.map +0 -1
  693. package/dist/types/model/definition/fieldDefinitions/ManyHasOneDefinition.d.ts +0 -23
  694. package/dist/types/model/definition/fieldDefinitions/ManyHasOneDefinition.d.ts.map +0 -1
  695. package/dist/types/model/definition/fieldDefinitions/OneHasManyDefinition.d.ts +0 -16
  696. package/dist/types/model/definition/fieldDefinitions/OneHasManyDefinition.d.ts.map +0 -1
  697. package/dist/types/model/definition/fieldDefinitions/OneHasOneDefinition.d.ts +0 -25
  698. package/dist/types/model/definition/fieldDefinitions/OneHasOneDefinition.d.ts.map +0 -1
  699. package/dist/types/model/definition/fieldDefinitions/OneHasOneInverseDefinition.d.ts +0 -17
  700. package/dist/types/model/definition/fieldDefinitions/OneHasOneInverseDefinition.d.ts.map +0 -1
  701. package/dist/types/model/definition/fieldDefinitions/index.d.ts +0 -9
  702. package/dist/types/model/definition/fieldDefinitions/index.d.ts.map +0 -1
  703. package/dist/types/model/definition/index.d.ts +0 -27
  704. package/dist/types/model/definition/index.d.ts.map +0 -1
  705. package/dist/types/model/definition/internal/EntityRegistry.d.ts +0 -8
  706. package/dist/types/model/definition/internal/EntityRegistry.d.ts.map +0 -1
  707. package/dist/types/model/definition/internal/EnumRegistry.d.ts +0 -8
  708. package/dist/types/model/definition/internal/EnumRegistry.d.ts.map +0 -1
  709. package/dist/types/model/definition/internal/SchemaBuilder.d.ts +0 -22
  710. package/dist/types/model/definition/internal/SchemaBuilder.d.ts.map +0 -1
  711. package/dist/types/model/definition/internal/index.d.ts +0 -4
  712. package/dist/types/model/definition/internal/index.d.ts.map +0 -1
  713. package/dist/types/model/definition/types.d.ts +0 -6
  714. package/dist/types/model/definition/types.d.ts.map +0 -1
  715. package/dist/types/model/index.d.ts +0 -10
  716. package/dist/types/model/index.d.ts.map +0 -1
  717. package/dist/types/presets.d.ts +0 -9
  718. package/dist/types/presets.d.ts.map +0 -1
  719. package/dist/types/strict.d.ts +0 -22
  720. package/dist/types/strict.d.ts.map +0 -1
  721. package/dist/types/tsconfig.tsbuildinfo +0 -1
  722. package/dist/types/utils/MetadataStore.d.ts +0 -7
  723. package/dist/types/utils/MetadataStore.d.ts.map +0 -1
  724. package/dist/types/utils/assertNever.d.ts +0 -2
  725. package/dist/types/utils/assertNever.d.ts.map +0 -1
  726. package/dist/types/utils/decorators.d.ts +0 -5
  727. package/dist/types/utils/decorators.d.ts.map +0 -1
  728. package/dist/types/utils/filterEntityDefinition.d.ts +0 -4
  729. package/dist/types/utils/filterEntityDefinition.d.ts.map +0 -1
  730. package/dist/types/utils/index.d.ts +0 -6
  731. package/dist/types/utils/index.d.ts.map +0 -1
  732. package/dist/types/utils/tuple.d.ts +0 -2
  733. package/dist/types/utils/tuple.d.ts.map +0 -1
  734. package/dist/types/validation/index.d.ts +0 -57
  735. package/dist/types/validation/index.d.ts.map +0 -1
@@ -1,118 +0,0 @@
1
- import * as index from "./src/acl/definition/index.js";
2
- import * as index$1 from "./src/actions/definition/index.js";
3
- import { assert, required, assertDefined, assertNotEmpty, assertPattern, assertMinLength, assertMaxLength, when, rules } from "./src/validation/index.js";
4
- import * as index$3 from "./src/validation/index.js";
5
- import { default as default2 } from "./src/model/builder/SchemaBuilder.js";
6
- import { default as default3 } from "./src/model/builder/ColumnBuilder.js";
7
- import { default as default4 } from "./src/model/builder/ManyHasManyBuilder.js";
8
- import { default as default5 } from "./src/model/builder/OneHasManyBuilder.js";
9
- import { default as default6 } from "./src/model/builder/ManyHasOneBuilder.js";
10
- import { default as default7 } from "./src/model/builder/OneHasOneBuilder.js";
11
- import { default as default8 } from "./src/model/builder/FieldBuilder.js";
12
- import * as index$2 from "./src/model/definition/index.js";
13
- import { createSchema } from "./src/createSchema.js";
14
- import { AllowAllPermissionFactory } from "@contember/schema-utils";
15
- import { PermissionsBuilder } from "./src/acl/builder/PermissionsBuilder.js";
16
- import { settingsPresets } from "./src/presets.js";
17
- import { allowCustomPrimary } from "./src/acl/definition/customPrimary.js";
18
- import { allow } from "./src/acl/definition/permissions.js";
19
- import { createRole } from "./src/acl/definition/roles.js";
20
- import { createConditionVariable, createEntityVariable, createPredefinedVariable } from "./src/acl/definition/variables.js";
21
- import { canCreate, canRead, canUpdate, canDelete } from "./src/acl/definition/references.js";
22
- import { watch, trigger } from "./src/actions/definition/triggers.js";
23
- import { createTarget } from "./src/actions/definition/targets.js";
24
- import { extendEntity } from "./src/model/definition/extensions.js";
25
- import { Index } from "./src/model/definition/IndexDefinition.js";
26
- import { Unique } from "./src/model/definition/UniqueDefinition.js";
27
- import { View } from "./src/model/definition/ViewDefinition.js";
28
- import { DisableEventLog } from "./src/model/definition/EventLogDefinition.js";
29
- import { OrderBy } from "./src/model/definition/OrderByDefinition.js";
30
- import { column, boolColumn, intColumn, doubleColumn, dateColumn, timeColumn, dateTimeColumn, jsonColumn, stringColumn, enumColumn, uuidColumn } from "./src/model/definition/fieldDefinitions/ColumnDefinition.js";
31
- import { manyHasMany } from "./src/model/definition/fieldDefinitions/ManyHasManyDefinition.js";
32
- import { manyHasManyInverse } from "./src/model/definition/fieldDefinitions/ManyHasManyInverseDefinition.js";
33
- import { manyHasOne } from "./src/model/definition/fieldDefinitions/ManyHasOneDefinition.js";
34
- import { oneHasOne } from "./src/model/definition/fieldDefinitions/OneHasOneDefinition.js";
35
- import { oneHasOneInverse } from "./src/model/definition/fieldDefinitions/OneHasOneInverseDefinition.js";
36
- import { oneHasMany } from "./src/model/definition/fieldDefinitions/OneHasManyDefinition.js";
37
- import { createEnum } from "./src/model/definition/EnumDefinition.js";
38
- const c = {
39
- // ACL
40
- // ACL entity decorators
41
- AllowCustomPrimary: allowCustomPrimary,
42
- Allow: allow,
43
- // ACL factories
44
- createRole,
45
- createConditionVariable,
46
- createEntityVariable,
47
- createPredefinedVariable,
48
- // ACL utilities
49
- canCreate,
50
- canRead,
51
- canUpdate,
52
- canDelete,
53
- // Actions
54
- // Actions entity decorators
55
- Watch: watch,
56
- Trigger: trigger,
57
- // Actions factories
58
- createActionsTarget: createTarget,
59
- // Model
60
- // Model entity decorators
61
- ExtendEntity: extendEntity,
62
- Index,
63
- Unique,
64
- View,
65
- DisableEventLog,
66
- OrderBy,
67
- // Model field factories
68
- column,
69
- boolColumn,
70
- intColumn,
71
- doubleColumn,
72
- dateColumn,
73
- timeColumn,
74
- dateTimeColumn,
75
- jsonColumn,
76
- stringColumn,
77
- enumColumn,
78
- uuidColumn,
79
- manyHasMany,
80
- manyHasManyInverse,
81
- manyHasOne,
82
- oneHasOne,
83
- oneHasOneInverse,
84
- oneHasMany,
85
- // Model factories
86
- createEnum,
87
- // Validation
88
- // Validation field decorators
89
- Assert: assert,
90
- Required: required,
91
- AssertDefined: assertDefined,
92
- AssertNotEmpty: assertNotEmpty,
93
- AssertPattern: assertPattern,
94
- AssertMinLength: assertMinLength,
95
- AssertMaxLength: assertMaxLength,
96
- ValidateWhen: when,
97
- // Validation utilities
98
- rules
99
- };
100
- export {
101
- index as AclDefinition,
102
- index$1 as ActionsDefinition,
103
- AllowAllPermissionFactory,
104
- default3 as ColumnBuilder,
105
- default8 as FieldBuilder,
106
- index$3 as InputValidation,
107
- default4 as ManyHasManyBuilder,
108
- default6 as ManyHasOneBuilder,
109
- default5 as OneHasManyBuilder,
110
- default7 as OneHasOneBuilder,
111
- PermissionsBuilder,
112
- default2 as SchemaBuilder,
113
- index$2 as SchemaDefinition,
114
- c,
115
- createSchema,
116
- settingsPresets
117
- };
118
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sources":["../../../packages/schema-definition/src/index.ts"],"sourcesContent":["import * as AclDefinition from './acl/definition'\nimport { Role } from './acl/definition'\nimport * as ActionsDefinition from './actions/definition'\nimport * as InputValidation from './validation'\nimport { SchemaDefinition } from './model'\nimport { createSchema } from './createSchema'\n\nexport { AllowAllPermissionFactory } from '@contember/schema-utils'\nexport { PermissionsBuilder } from './acl/builder/PermissionsBuilder'\nexport * from './model'\nexport * from './presets'\n\nexport type { Role }\nexport type { VariableDefinition } from './acl/definition'\nexport type {\n\tColumnDefinition,\n\tFieldDefinition,\n\tOneHasOneDefinition,\n\tOneHasOneInverseDefinition,\n\tOneHasManyDefinition,\n\tManyHasOneDefinition,\n\tManyHasManyDefinition,\n\tManyHasManyInverseDefinition,\n\tEnumDefinition,\n} from './model/definition'\n\nexport { AclDefinition, ActionsDefinition, SchemaDefinition, InputValidation, createSchema }\n\nexport const c = {\n\n\t// ACL\n\t// ACL entity decorators\n\tAllowCustomPrimary: AclDefinition.allowCustomPrimary,\n\tAllow: AclDefinition.allow,\n\t// ACL factories\n\tcreateRole: AclDefinition.createRole,\n\tcreateConditionVariable: AclDefinition.createConditionVariable,\n\tcreateEntityVariable: AclDefinition.createEntityVariable,\n\tcreatePredefinedVariable: AclDefinition.createPredefinedVariable,\n\t// ACL utilities\n\tcanCreate: AclDefinition.canCreate,\n\tcanRead: AclDefinition.canRead,\n\tcanUpdate: AclDefinition.canUpdate,\n\tcanDelete: AclDefinition.canDelete,\n\n\n\t// Actions\n\t// Actions entity decorators\n\tWatch: ActionsDefinition.watch,\n\tTrigger: ActionsDefinition.trigger,\n\t// Actions factories\n\tcreateActionsTarget: ActionsDefinition.createTarget,\n\n\n\t// Model\n\t// Model entity decorators\n\tExtendEntity: SchemaDefinition.extendEntity,\n\tIndex: SchemaDefinition.Index,\n\tUnique: SchemaDefinition.Unique,\n\tView: SchemaDefinition.View,\n\tDisableEventLog: SchemaDefinition.DisableEventLog,\n\tOrderBy: SchemaDefinition.OrderBy,\n\t// Model field factories\n\tcolumn: SchemaDefinition.column,\n\tboolColumn: SchemaDefinition.boolColumn,\n\tintColumn: SchemaDefinition.intColumn,\n\tdoubleColumn: SchemaDefinition.doubleColumn,\n\tdateColumn: SchemaDefinition.dateColumn,\n\ttimeColumn: SchemaDefinition.timeColumn,\n\tdateTimeColumn: SchemaDefinition.dateTimeColumn,\n\tjsonColumn: SchemaDefinition.jsonColumn,\n\tstringColumn: SchemaDefinition.stringColumn,\n\tenumColumn: SchemaDefinition.enumColumn,\n\tuuidColumn: SchemaDefinition.uuidColumn,\n\tmanyHasMany: SchemaDefinition.manyHasMany,\n\tmanyHasManyInverse: SchemaDefinition.manyHasManyInverse,\n\tmanyHasOne: SchemaDefinition.manyHasOne,\n\toneHasOne: SchemaDefinition.oneHasOne,\n\toneHasOneInverse: SchemaDefinition.oneHasOneInverse,\n\toneHasMany: SchemaDefinition.oneHasMany,\n\t// Model factories\n\tcreateEnum: SchemaDefinition.createEnum,\n\n\n\t// Validation\n\t// Validation field decorators\n\tAssert: InputValidation.assert,\n\tRequired: InputValidation.required,\n\tAssertDefined: InputValidation.assertDefined,\n\tAssertNotEmpty: InputValidation.assertNotEmpty,\n\tAssertPattern: InputValidation.assertPattern,\n\tAssertMinLength: InputValidation.assertMinLength,\n\tAssertMaxLength: InputValidation.assertMaxLength,\n\tValidateWhen: InputValidation.when,\n\t// Validation utilities\n\trules: InputValidation.rules,\n\n}\n"],"names":["AclDefinition.allowCustomPrimary","AclDefinition.allow","ActionsDefinition.watch","ActionsDefinition.trigger","ActionsDefinition.createTarget","SchemaDefinition.extendEntity","InputValidation.assert","InputValidation.required","InputValidation.assertDefined","InputValidation.assertNotEmpty","InputValidation.assertPattern","InputValidation.assertMinLength","InputValidation.assertMaxLength","InputValidation.when"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA4BO,MAAM,IAAI;AAAA;AAAA;AAAA,EAIhB,oBAAoBA;AAAAA,EACpB,OAAOC;AAAAA;AAAAA,EAEP;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAEA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA;AAAA,EAKA,OAAOC;AAAAA,EACP,SAASC;AAAAA;AAAAA,EAET,qBAAqBC;AAAAA;AAAAA;AAAAA,EAKrB,cAAcC;AAAAA,EACd;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAEA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAEA;AAAA;AAAA;AAAA,EAKA,QAAQC;AAAAA,EACR,UAAUC;AAAAA,EACV,eAAeC;AAAAA,EACf,gBAAgBC;AAAAA,EAChB,eAAeC;AAAAA,EACf,iBAAiBC;AAAAA,EACjB,iBAAiBC;AAAAA,EACjB,cAAcC;AAAAA;AAAAA,EAEd;AAED;"}
@@ -1,119 +0,0 @@
1
- "use strict";
2
- const tuple = require("../../utils/tuple.cjs");
3
- require("reflect-metadata");
4
- const schema = require("@contember/schema");
5
- const FieldSelector = require("./FieldSelector.cjs");
6
- const FieldPermissionsBuilder = require("./FieldPermissionsBuilder.cjs");
7
- const PredicateReference = require("./PredicateReference.cjs");
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(
21
- (acc, entity) => ({
22
- ...acc,
23
- [entity.name]: {
24
- operations: {},
25
- predicates: { [name]: PredicateReference.resolvePredicateReference(this.schema, this.permissions, entity, predicate) }
26
- }
27
- }),
28
- {}
29
- );
30
- return this.add(predicates);
31
- }
32
- allow(operations, predicate = true) {
33
- return this.updateAll(operations, predicate);
34
- }
35
- allowAll(predicate = true) {
36
- return this.updateAll(
37
- [schema.Acl.Operation.read, schema.Acl.Operation.create, schema.Acl.Operation.update, schema.Acl.Operation.delete],
38
- predicate
39
- );
40
- }
41
- allowOnlyRead(predicate = true) {
42
- return this.disallowAll().allow([schema.Acl.Operation.read], predicate);
43
- }
44
- disallowAll() {
45
- return this.updateAll([schema.Acl.Operation.read, schema.Acl.Operation.create, schema.Acl.Operation.update, schema.Acl.Operation.delete], false);
46
- }
47
- allowDelete(predicate = true) {
48
- return this.addEntityPermission(() => ({ operations: { delete: predicate }, predicates: {} }));
49
- }
50
- allowCustomPrimary() {
51
- return this.addEntityPermission(() => ({ operations: { customPrimary: true }, predicates: {} }));
52
- }
53
- updateAll(operations, predicate) {
54
- return this.addEntityPermission((entity) => {
55
- const fieldPermissions = Object.keys(entity.fields).reduce(
56
- (permissions, fieldName) => {
57
- return { ...permissions, [fieldName]: predicate };
58
- },
59
- {}
60
- );
61
- const entityOperations = {};
62
- if (operations.includes(schema.Acl.Operation.read)) {
63
- entityOperations.read = fieldPermissions;
64
- }
65
- if (operations.includes(schema.Acl.Operation.create)) {
66
- entityOperations.create = fieldPermissions;
67
- }
68
- if (operations.includes(schema.Acl.Operation.update)) {
69
- entityOperations.update = fieldPermissions;
70
- }
71
- if (operations.includes(schema.Acl.Operation.delete)) {
72
- entityOperations.delete = predicate;
73
- }
74
- return {
75
- operations: entityOperations,
76
- predicates: {}
77
- };
78
- });
79
- }
80
- addEntityPermission(entityPermission) {
81
- const permissions = this.entities.reduce(
82
- (acc, entity) => ({ ...acc, [entity.name]: entityPermission(entity) }),
83
- {}
84
- );
85
- return this.add(permissions);
86
- }
87
- add(permissions) {
88
- return new EntityPermissionsBuilder(this.builder.add(permissions), this.entities);
89
- }
90
- onEntity(entitySelector) {
91
- return this.builder.onEntity(entitySelector);
92
- }
93
- onEveryEntity() {
94
- return this.builder.onEveryEntity();
95
- }
96
- onField(fieldSelector) {
97
- if (typeof fieldSelector === "string") {
98
- fieldSelector = FieldSelector.named(fieldSelector);
99
- } else if (Array.isArray(fieldSelector)) {
100
- fieldSelector = FieldSelector.named(...fieldSelector);
101
- }
102
- const fieldSelectorConst = fieldSelector;
103
- const fields = this.entities.map(
104
- (it) => tuple.tuple(
105
- it,
106
- Object.values(it.fields).filter((field) => fieldSelectorConst.matches(this.schema, it, field))
107
- )
108
- ).reduce(
109
- (acc, [entity, fields2]) => [...acc, ...fields2.map((it) => tuple.tuple(entity, it))],
110
- []
111
- );
112
- return new FieldPermissionsBuilder(this, fields);
113
- }
114
- onEveryField() {
115
- return this.onField(FieldSelector.every());
116
- }
117
- }
118
- module.exports = EntityPermissionsBuilder;
119
- //# sourceMappingURL=EntityPermissionsBuilder.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"EntityPermissionsBuilder.cjs","sources":["../../../../../../packages/schema-definition/src/acl/builder/EntityPermissionsBuilder.ts"],"sourcesContent":["import { tuple } from '../../utils'\nimport EntitySelector from './EntitySelector'\nimport { Acl, Model, Writable } from '@contember/schema'\nimport FieldSelector from './FieldSelector'\nimport FieldPermissionsBuilder from './FieldPermissionsBuilder'\nimport { PermissionsBuilder } from './PermissionsBuilder'\nimport PredicateReference, { resolvePredicateReference } from './PredicateReference'\n\nexport default class EntityPermissionsBuilder {\n\tpublic constructor(public readonly builder: PermissionsBuilder, private readonly entities: Model.Entity[]) {}\n\n\tget schema(): Model.Schema {\n\t\treturn this.builder.schema\n\t}\n\n\tget permissions(): Acl.Permissions {\n\t\treturn this.builder.permissions\n\t}\n\n\taddPredicate(name: string, predicate: Acl.PredicateDefinition<PredicateReference>): EntityPermissionsBuilder {\n\t\tconst predicates = this.entities.reduce<Acl.Permissions>(\n\t\t\t(acc, entity) => ({\n\t\t\t\t...acc,\n\t\t\t\t[entity.name]: {\n\t\t\t\t\toperations: {},\n\t\t\t\t\tpredicates: { [name]: resolvePredicateReference(this.schema, this.permissions, entity, predicate) },\n\t\t\t\t},\n\t\t\t}),\n\t\t\t{},\n\t\t)\n\n\t\treturn this.add(predicates)\n\t}\n\n\tallow(operations: Acl.Operation[], predicate: Acl.Predicate = true): EntityPermissionsBuilder {\n\t\treturn this.updateAll(operations, predicate)\n\t}\n\n\tallowAll(predicate: Acl.Predicate = true): EntityPermissionsBuilder {\n\t\treturn this.updateAll(\n\t\t\t[Acl.Operation.read, Acl.Operation.create, Acl.Operation.update, Acl.Operation.delete],\n\t\t\tpredicate,\n\t\t)\n\t}\n\n\tallowOnlyRead(predicate: Acl.Predicate = true): EntityPermissionsBuilder {\n\t\treturn this.disallowAll().allow([Acl.Operation.read], predicate)\n\t}\n\n\tdisallowAll(): EntityPermissionsBuilder {\n\t\treturn this.updateAll([Acl.Operation.read, Acl.Operation.create, Acl.Operation.update, Acl.Operation.delete], false)\n\t}\n\n\tallowDelete(predicate: Acl.Predicate = true): EntityPermissionsBuilder {\n\t\treturn this.addEntityPermission(() => ({ operations: { delete: predicate }, predicates: {} }))\n\t}\n\n\tallowCustomPrimary(): EntityPermissionsBuilder {\n\t\treturn this.addEntityPermission(() => ({ operations: { customPrimary: true }, predicates: {} }))\n\t}\n\n\tprivate updateAll(operations: Acl.Operation[], predicate: Acl.Predicate): EntityPermissionsBuilder {\n\t\treturn this.addEntityPermission(entity => {\n\t\t\tconst fieldPermissions = Object.keys(entity.fields).reduce(\n\t\t\t\t(permissions: Acl.FieldPermissions, fieldName): Acl.FieldPermissions => {\n\t\t\t\t\treturn { ...permissions, [fieldName]: predicate }\n\t\t\t\t},\n\t\t\t\t{},\n\t\t\t)\n\t\t\tconst entityOperations: Writable<Acl.EntityOperations> = {}\n\t\t\tif (operations.includes(Acl.Operation.read)) {\n\t\t\t\tentityOperations.read = fieldPermissions\n\t\t\t}\n\t\t\tif (operations.includes(Acl.Operation.create)) {\n\t\t\t\tentityOperations.create = fieldPermissions\n\t\t\t}\n\t\t\tif (operations.includes(Acl.Operation.update)) {\n\t\t\t\tentityOperations.update = fieldPermissions\n\t\t\t}\n\t\t\tif (operations.includes(Acl.Operation.delete)) {\n\t\t\t\tentityOperations.delete = predicate\n\t\t\t}\n\t\t\treturn {\n\t\t\t\toperations: entityOperations,\n\t\t\t\tpredicates: {},\n\t\t\t}\n\t\t})\n\t}\n\n\tprivate addEntityPermission(\n\t\tentityPermission: (entity: Model.Entity) => Acl.EntityPermissions,\n\t): EntityPermissionsBuilder {\n\t\tconst permissions = this.entities.reduce<Acl.Permissions>(\n\t\t\t(acc, entity) => ({ ...acc, [entity.name]: entityPermission(entity) }),\n\t\t\t{},\n\t\t)\n\t\treturn this.add(permissions)\n\t}\n\n\tpublic add(permissions: Acl.Permissions): EntityPermissionsBuilder {\n\t\treturn new EntityPermissionsBuilder(this.builder.add(permissions), this.entities)\n\t}\n\n\tpublic onEntity(entitySelector: EntitySelector | string | string[]): EntityPermissionsBuilder {\n\t\treturn this.builder.onEntity(entitySelector)\n\t}\n\n\tpublic onEveryEntity(): EntityPermissionsBuilder {\n\t\treturn this.builder.onEveryEntity()\n\t}\n\n\tonField(fieldSelector: FieldSelector | string | string[]): FieldPermissionsBuilder {\n\t\tif (typeof fieldSelector === 'string') {\n\t\t\tfieldSelector = FieldSelector.named(fieldSelector)\n\t\t} else if (Array.isArray(fieldSelector)) {\n\t\t\tfieldSelector = FieldSelector.named(...fieldSelector)\n\t\t}\n\t\tconst fieldSelectorConst = fieldSelector\n\t\tconst fields = this.entities\n\t\t\t.map(it =>\n\t\t\t\ttuple(\n\t\t\t\t\tit,\n\t\t\t\t\tObject.values(it.fields).filter(field => fieldSelectorConst.matches(this.schema, it, field)),\n\t\t\t\t),\n\t\t\t)\n\t\t\t.reduce<[Model.Entity, Model.AnyField][]>(\n\t\t\t\t(acc, [entity, fields]) => [...acc, ...fields.map(it => tuple(entity, it))],\n\t\t\t\t[],\n\t\t\t)\n\t\treturn new FieldPermissionsBuilder(this, fields)\n\t}\n\n\tonEveryField(): FieldPermissionsBuilder {\n\t\treturn this.onField(FieldSelector.every())\n\t}\n}\n"],"names":["resolvePredicateReference","Acl","tuple","fields"],"mappings":"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"}
@@ -1,120 +0,0 @@
1
- import { tuple } from "../../utils/tuple.js";
2
- import "reflect-metadata";
3
- import { Acl } from "@contember/schema";
4
- import FieldSelector from "./FieldSelector.js";
5
- import FieldPermissionsBuilder from "./FieldPermissionsBuilder.js";
6
- import { resolvePredicateReference } from "./PredicateReference.js";
7
- class EntityPermissionsBuilder {
8
- constructor(builder, entities) {
9
- this.builder = builder;
10
- this.entities = entities;
11
- }
12
- get schema() {
13
- return this.builder.schema;
14
- }
15
- get permissions() {
16
- return this.builder.permissions;
17
- }
18
- addPredicate(name, predicate) {
19
- const predicates = this.entities.reduce(
20
- (acc, entity) => ({
21
- ...acc,
22
- [entity.name]: {
23
- operations: {},
24
- predicates: { [name]: resolvePredicateReference(this.schema, this.permissions, entity, predicate) }
25
- }
26
- }),
27
- {}
28
- );
29
- return this.add(predicates);
30
- }
31
- allow(operations, predicate = true) {
32
- return this.updateAll(operations, predicate);
33
- }
34
- allowAll(predicate = true) {
35
- return this.updateAll(
36
- [Acl.Operation.read, Acl.Operation.create, Acl.Operation.update, Acl.Operation.delete],
37
- predicate
38
- );
39
- }
40
- allowOnlyRead(predicate = true) {
41
- return this.disallowAll().allow([Acl.Operation.read], predicate);
42
- }
43
- disallowAll() {
44
- return this.updateAll([Acl.Operation.read, Acl.Operation.create, Acl.Operation.update, Acl.Operation.delete], false);
45
- }
46
- allowDelete(predicate = true) {
47
- return this.addEntityPermission(() => ({ operations: { delete: predicate }, predicates: {} }));
48
- }
49
- allowCustomPrimary() {
50
- return this.addEntityPermission(() => ({ operations: { customPrimary: true }, predicates: {} }));
51
- }
52
- updateAll(operations, predicate) {
53
- return this.addEntityPermission((entity) => {
54
- const fieldPermissions = Object.keys(entity.fields).reduce(
55
- (permissions, fieldName) => {
56
- return { ...permissions, [fieldName]: predicate };
57
- },
58
- {}
59
- );
60
- const entityOperations = {};
61
- if (operations.includes(Acl.Operation.read)) {
62
- entityOperations.read = fieldPermissions;
63
- }
64
- if (operations.includes(Acl.Operation.create)) {
65
- entityOperations.create = fieldPermissions;
66
- }
67
- if (operations.includes(Acl.Operation.update)) {
68
- entityOperations.update = fieldPermissions;
69
- }
70
- if (operations.includes(Acl.Operation.delete)) {
71
- entityOperations.delete = predicate;
72
- }
73
- return {
74
- operations: entityOperations,
75
- predicates: {}
76
- };
77
- });
78
- }
79
- addEntityPermission(entityPermission) {
80
- const permissions = this.entities.reduce(
81
- (acc, entity) => ({ ...acc, [entity.name]: entityPermission(entity) }),
82
- {}
83
- );
84
- return this.add(permissions);
85
- }
86
- add(permissions) {
87
- return new EntityPermissionsBuilder(this.builder.add(permissions), this.entities);
88
- }
89
- onEntity(entitySelector) {
90
- return this.builder.onEntity(entitySelector);
91
- }
92
- onEveryEntity() {
93
- return this.builder.onEveryEntity();
94
- }
95
- onField(fieldSelector) {
96
- if (typeof fieldSelector === "string") {
97
- fieldSelector = FieldSelector.named(fieldSelector);
98
- } else if (Array.isArray(fieldSelector)) {
99
- fieldSelector = FieldSelector.named(...fieldSelector);
100
- }
101
- const fieldSelectorConst = fieldSelector;
102
- const fields = this.entities.map(
103
- (it) => tuple(
104
- it,
105
- Object.values(it.fields).filter((field) => fieldSelectorConst.matches(this.schema, it, field))
106
- )
107
- ).reduce(
108
- (acc, [entity, fields2]) => [...acc, ...fields2.map((it) => tuple(entity, it))],
109
- []
110
- );
111
- return new FieldPermissionsBuilder(this, fields);
112
- }
113
- onEveryField() {
114
- return this.onField(FieldSelector.every());
115
- }
116
- }
117
- export {
118
- EntityPermissionsBuilder as default
119
- };
120
- //# sourceMappingURL=EntityPermissionsBuilder.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"EntityPermissionsBuilder.js","sources":["../../../../../../packages/schema-definition/src/acl/builder/EntityPermissionsBuilder.ts"],"sourcesContent":["import { tuple } from '../../utils'\nimport EntitySelector from './EntitySelector'\nimport { Acl, Model, Writable } from '@contember/schema'\nimport FieldSelector from './FieldSelector'\nimport FieldPermissionsBuilder from './FieldPermissionsBuilder'\nimport { PermissionsBuilder } from './PermissionsBuilder'\nimport PredicateReference, { resolvePredicateReference } from './PredicateReference'\n\nexport default class EntityPermissionsBuilder {\n\tpublic constructor(public readonly builder: PermissionsBuilder, private readonly entities: Model.Entity[]) {}\n\n\tget schema(): Model.Schema {\n\t\treturn this.builder.schema\n\t}\n\n\tget permissions(): Acl.Permissions {\n\t\treturn this.builder.permissions\n\t}\n\n\taddPredicate(name: string, predicate: Acl.PredicateDefinition<PredicateReference>): EntityPermissionsBuilder {\n\t\tconst predicates = this.entities.reduce<Acl.Permissions>(\n\t\t\t(acc, entity) => ({\n\t\t\t\t...acc,\n\t\t\t\t[entity.name]: {\n\t\t\t\t\toperations: {},\n\t\t\t\t\tpredicates: { [name]: resolvePredicateReference(this.schema, this.permissions, entity, predicate) },\n\t\t\t\t},\n\t\t\t}),\n\t\t\t{},\n\t\t)\n\n\t\treturn this.add(predicates)\n\t}\n\n\tallow(operations: Acl.Operation[], predicate: Acl.Predicate = true): EntityPermissionsBuilder {\n\t\treturn this.updateAll(operations, predicate)\n\t}\n\n\tallowAll(predicate: Acl.Predicate = true): EntityPermissionsBuilder {\n\t\treturn this.updateAll(\n\t\t\t[Acl.Operation.read, Acl.Operation.create, Acl.Operation.update, Acl.Operation.delete],\n\t\t\tpredicate,\n\t\t)\n\t}\n\n\tallowOnlyRead(predicate: Acl.Predicate = true): EntityPermissionsBuilder {\n\t\treturn this.disallowAll().allow([Acl.Operation.read], predicate)\n\t}\n\n\tdisallowAll(): EntityPermissionsBuilder {\n\t\treturn this.updateAll([Acl.Operation.read, Acl.Operation.create, Acl.Operation.update, Acl.Operation.delete], false)\n\t}\n\n\tallowDelete(predicate: Acl.Predicate = true): EntityPermissionsBuilder {\n\t\treturn this.addEntityPermission(() => ({ operations: { delete: predicate }, predicates: {} }))\n\t}\n\n\tallowCustomPrimary(): EntityPermissionsBuilder {\n\t\treturn this.addEntityPermission(() => ({ operations: { customPrimary: true }, predicates: {} }))\n\t}\n\n\tprivate updateAll(operations: Acl.Operation[], predicate: Acl.Predicate): EntityPermissionsBuilder {\n\t\treturn this.addEntityPermission(entity => {\n\t\t\tconst fieldPermissions = Object.keys(entity.fields).reduce(\n\t\t\t\t(permissions: Acl.FieldPermissions, fieldName): Acl.FieldPermissions => {\n\t\t\t\t\treturn { ...permissions, [fieldName]: predicate }\n\t\t\t\t},\n\t\t\t\t{},\n\t\t\t)\n\t\t\tconst entityOperations: Writable<Acl.EntityOperations> = {}\n\t\t\tif (operations.includes(Acl.Operation.read)) {\n\t\t\t\tentityOperations.read = fieldPermissions\n\t\t\t}\n\t\t\tif (operations.includes(Acl.Operation.create)) {\n\t\t\t\tentityOperations.create = fieldPermissions\n\t\t\t}\n\t\t\tif (operations.includes(Acl.Operation.update)) {\n\t\t\t\tentityOperations.update = fieldPermissions\n\t\t\t}\n\t\t\tif (operations.includes(Acl.Operation.delete)) {\n\t\t\t\tentityOperations.delete = predicate\n\t\t\t}\n\t\t\treturn {\n\t\t\t\toperations: entityOperations,\n\t\t\t\tpredicates: {},\n\t\t\t}\n\t\t})\n\t}\n\n\tprivate addEntityPermission(\n\t\tentityPermission: (entity: Model.Entity) => Acl.EntityPermissions,\n\t): EntityPermissionsBuilder {\n\t\tconst permissions = this.entities.reduce<Acl.Permissions>(\n\t\t\t(acc, entity) => ({ ...acc, [entity.name]: entityPermission(entity) }),\n\t\t\t{},\n\t\t)\n\t\treturn this.add(permissions)\n\t}\n\n\tpublic add(permissions: Acl.Permissions): EntityPermissionsBuilder {\n\t\treturn new EntityPermissionsBuilder(this.builder.add(permissions), this.entities)\n\t}\n\n\tpublic onEntity(entitySelector: EntitySelector | string | string[]): EntityPermissionsBuilder {\n\t\treturn this.builder.onEntity(entitySelector)\n\t}\n\n\tpublic onEveryEntity(): EntityPermissionsBuilder {\n\t\treturn this.builder.onEveryEntity()\n\t}\n\n\tonField(fieldSelector: FieldSelector | string | string[]): FieldPermissionsBuilder {\n\t\tif (typeof fieldSelector === 'string') {\n\t\t\tfieldSelector = FieldSelector.named(fieldSelector)\n\t\t} else if (Array.isArray(fieldSelector)) {\n\t\t\tfieldSelector = FieldSelector.named(...fieldSelector)\n\t\t}\n\t\tconst fieldSelectorConst = fieldSelector\n\t\tconst fields = this.entities\n\t\t\t.map(it =>\n\t\t\t\ttuple(\n\t\t\t\t\tit,\n\t\t\t\t\tObject.values(it.fields).filter(field => fieldSelectorConst.matches(this.schema, it, field)),\n\t\t\t\t),\n\t\t\t)\n\t\t\t.reduce<[Model.Entity, Model.AnyField][]>(\n\t\t\t\t(acc, [entity, fields]) => [...acc, ...fields.map(it => tuple(entity, it))],\n\t\t\t\t[],\n\t\t\t)\n\t\treturn new FieldPermissionsBuilder(this, fields)\n\t}\n\n\tonEveryField(): FieldPermissionsBuilder {\n\t\treturn this.onField(FieldSelector.every())\n\t}\n}\n"],"names":["fields"],"mappings":"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"}
@@ -1,32 +0,0 @@
1
- "use strict";
2
- const schemaUtils = require("@contember/schema-utils");
3
- class EntitySelector {
4
- constructor(matchers) {
5
- this.matchers = matchers;
6
- }
7
- static every() {
8
- return new EntitySelector([]);
9
- }
10
- static named(...name) {
11
- return EntitySelector.every().named(...name);
12
- }
13
- named(...name) {
14
- return this.matching((schema, entity) => name.includes(entity.name));
15
- }
16
- havingRelation(name, targetEntityName) {
17
- return this.matching(
18
- (schema, entity) => entity.fields[name] && schemaUtils.acceptFieldVisitor(schema, entity, name, {
19
- visitColumn: () => false,
20
- visitRelation: ({ targetEntity }) => !targetEntityName || targetEntity.name === targetEntityName
21
- })
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
- module.exports = EntitySelector;
32
- //# sourceMappingURL=EntitySelector.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"EntitySelector.cjs","sources":["../../../../../../packages/schema-definition/src/acl/builder/EntitySelector.ts"],"sourcesContent":["import { Model } from '@contember/schema'\nimport { acceptFieldVisitor } from '@contember/schema-utils'\n\ntype Matcher = (schema: Model.Schema, entity: Model.Entity) => boolean\n\nexport default class EntitySelector {\n\tprivate constructor(private readonly matchers: Matcher[]) {}\n\n\tpublic static every() {\n\t\treturn new EntitySelector([])\n\t}\n\n\tpublic static named(...name: string[]) {\n\t\treturn EntitySelector.every().named(...name)\n\t}\n\n\tpublic named(...name: string[]) {\n\t\treturn this.matching((schema, entity) => name.includes(entity.name))\n\t}\n\n\tpublic havingRelation(name: string, targetEntityName?: string) {\n\t\treturn this.matching(\n\t\t\t(schema, entity) =>\n\t\t\t\tentity.fields[name] &&\n\t\t\t\tacceptFieldVisitor(schema, entity, name, {\n\t\t\t\t\tvisitColumn: () => false,\n\t\t\t\t\tvisitRelation: ({ targetEntity }) => !targetEntityName || targetEntity.name === targetEntityName,\n\t\t\t\t}),\n\t\t)\n\t}\n\n\tpublic matching(matcher: Matcher): EntitySelector {\n\t\treturn new EntitySelector([...this.matchers, matcher])\n\t}\n\n\tpublic matches(schema: Model.Schema, entity: Model.Entity): boolean {\n\t\treturn this.matchers.reduce<boolean>((prev, predicate) => prev && predicate(schema, entity), true)\n\t}\n}\n"],"names":["acceptFieldVisitor"],"mappings":";;AAKA,MAAqB,eAAe;AAAA,EAC3B,YAA6B,UAAqB;AAArB,SAAA,WAAA;AAAA,EAAA;AAAA,EAErC,OAAc,QAAQ;AACd,WAAA,IAAI,eAAe,EAAE;AAAA,EAAA;AAAA,EAG7B,OAAc,SAAS,MAAgB;AACtC,WAAO,eAAe,MAAA,EAAQ,MAAM,GAAG,IAAI;AAAA,EAAA;AAAA,EAGrC,SAAS,MAAgB;AACxB,WAAA,KAAK,SAAS,CAAC,QAAQ,WAAW,KAAK,SAAS,OAAO,IAAI,CAAC;AAAA,EAAA;AAAA,EAG7D,eAAe,MAAc,kBAA2B;AAC9D,WAAO,KAAK;AAAA,MACX,CAAC,QAAQ,WACR,OAAO,OAAO,IAAI,KAClBA,+BAAmB,QAAQ,QAAQ,MAAM;AAAA,QACxC,aAAa,MAAM;AAAA,QACnB,eAAe,CAAC,EAAE,aAAA,MAAmB,CAAC,oBAAoB,aAAa,SAAS;AAAA,MAChF,CAAA;AAAA,IACH;AAAA,EAAA;AAAA,EAGM,SAAS,SAAkC;AACjD,WAAO,IAAI,eAAe,CAAC,GAAG,KAAK,UAAU,OAAO,CAAC;AAAA,EAAA;AAAA,EAG/C,QAAQ,QAAsB,QAA+B;AAC5D,WAAA,KAAK,SAAS,OAAgB,CAAC,MAAM,cAAc,QAAQ,UAAU,QAAQ,MAAM,GAAG,IAAI;AAAA,EAAA;AAEnG;;"}
@@ -1,33 +0,0 @@
1
- import { acceptFieldVisitor } from "@contember/schema-utils";
2
- class EntitySelector {
3
- constructor(matchers) {
4
- this.matchers = matchers;
5
- }
6
- static every() {
7
- return new EntitySelector([]);
8
- }
9
- static named(...name) {
10
- return EntitySelector.every().named(...name);
11
- }
12
- named(...name) {
13
- return this.matching((schema, entity) => name.includes(entity.name));
14
- }
15
- havingRelation(name, targetEntityName) {
16
- return this.matching(
17
- (schema, entity) => entity.fields[name] && acceptFieldVisitor(schema, entity, name, {
18
- visitColumn: () => false,
19
- visitRelation: ({ targetEntity }) => !targetEntityName || targetEntity.name === targetEntityName
20
- })
21
- );
22
- }
23
- matching(matcher) {
24
- return new EntitySelector([...this.matchers, matcher]);
25
- }
26
- matches(schema, entity) {
27
- return this.matchers.reduce((prev, predicate) => prev && predicate(schema, entity), true);
28
- }
29
- }
30
- export {
31
- EntitySelector as default
32
- };
33
- //# sourceMappingURL=EntitySelector.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"EntitySelector.js","sources":["../../../../../../packages/schema-definition/src/acl/builder/EntitySelector.ts"],"sourcesContent":["import { Model } from '@contember/schema'\nimport { acceptFieldVisitor } from '@contember/schema-utils'\n\ntype Matcher = (schema: Model.Schema, entity: Model.Entity) => boolean\n\nexport default class EntitySelector {\n\tprivate constructor(private readonly matchers: Matcher[]) {}\n\n\tpublic static every() {\n\t\treturn new EntitySelector([])\n\t}\n\n\tpublic static named(...name: string[]) {\n\t\treturn EntitySelector.every().named(...name)\n\t}\n\n\tpublic named(...name: string[]) {\n\t\treturn this.matching((schema, entity) => name.includes(entity.name))\n\t}\n\n\tpublic havingRelation(name: string, targetEntityName?: string) {\n\t\treturn this.matching(\n\t\t\t(schema, entity) =>\n\t\t\t\tentity.fields[name] &&\n\t\t\t\tacceptFieldVisitor(schema, entity, name, {\n\t\t\t\t\tvisitColumn: () => false,\n\t\t\t\t\tvisitRelation: ({ targetEntity }) => !targetEntityName || targetEntity.name === targetEntityName,\n\t\t\t\t}),\n\t\t)\n\t}\n\n\tpublic matching(matcher: Matcher): EntitySelector {\n\t\treturn new EntitySelector([...this.matchers, matcher])\n\t}\n\n\tpublic matches(schema: Model.Schema, entity: Model.Entity): boolean {\n\t\treturn this.matchers.reduce<boolean>((prev, predicate) => prev && predicate(schema, entity), true)\n\t}\n}\n"],"names":[],"mappings":";AAKA,MAAqB,eAAe;AAAA,EAC3B,YAA6B,UAAqB;AAArB,SAAA,WAAA;AAAA,EAAA;AAAA,EAErC,OAAc,QAAQ;AACd,WAAA,IAAI,eAAe,EAAE;AAAA,EAAA;AAAA,EAG7B,OAAc,SAAS,MAAgB;AACtC,WAAO,eAAe,MAAA,EAAQ,MAAM,GAAG,IAAI;AAAA,EAAA;AAAA,EAGrC,SAAS,MAAgB;AACxB,WAAA,KAAK,SAAS,CAAC,QAAQ,WAAW,KAAK,SAAS,OAAO,IAAI,CAAC;AAAA,EAAA;AAAA,EAG7D,eAAe,MAAc,kBAA2B;AAC9D,WAAO,KAAK;AAAA,MACX,CAAC,QAAQ,WACR,OAAO,OAAO,IAAI,KAClB,mBAAmB,QAAQ,QAAQ,MAAM;AAAA,QACxC,aAAa,MAAM;AAAA,QACnB,eAAe,CAAC,EAAE,aAAA,MAAmB,CAAC,oBAAoB,aAAa,SAAS;AAAA,MAChF,CAAA;AAAA,IACH;AAAA,EAAA;AAAA,EAGM,SAAS,SAAkC;AACjD,WAAO,IAAI,eAAe,CAAC,GAAG,KAAK,UAAU,OAAO,CAAC;AAAA,EAAA;AAAA,EAG/C,QAAQ,QAAsB,QAA+B;AAC5D,WAAA,KAAK,SAAS,OAAgB,CAAC,MAAM,cAAc,QAAQ,UAAU,QAAQ,MAAM,GAAG,IAAI;AAAA,EAAA;AAEnG;"}
@@ -1,59 +0,0 @@
1
- "use strict";
2
- const schema = require("@contember/schema");
3
- class FieldPermissionsBuilder {
4
- constructor(entityPermissionsBuilder, fields) {
5
- this.entityPermissionsBuilder = entityPermissionsBuilder;
6
- this.fields = fields;
7
- }
8
- get builder() {
9
- return this.entityPermissionsBuilder.builder;
10
- }
11
- get schema() {
12
- return this.entityPermissionsBuilder.schema;
13
- }
14
- get permissions() {
15
- return this.entityPermissionsBuilder.permissions;
16
- }
17
- allowCreate(predicate = true) {
18
- return this.allow([schema.Acl.Operation.create], predicate);
19
- }
20
- allowRead(predicate = true) {
21
- return this.allow([schema.Acl.Operation.read], predicate);
22
- }
23
- allowUpdate(predicate = true) {
24
- return this.allow([schema.Acl.Operation.update], predicate);
25
- }
26
- allowAll(predicate = true) {
27
- return this.allow([schema.Acl.Operation.create, schema.Acl.Operation.read, schema.Acl.Operation.update], predicate);
28
- }
29
- allow(operations, predicate = true) {
30
- const permissions = {};
31
- for (const [entity, field] of this.fields) {
32
- if (!permissions[entity.name]) {
33
- permissions[entity.name] = { operations: {}, predicates: {} };
34
- }
35
- const entityOperations = permissions[entity.name].operations;
36
- for (const op of operations) {
37
- entityOperations[op] = {
38
- ...permissions[entity.name].operations[op] || {},
39
- [field.name]: predicate
40
- };
41
- }
42
- }
43
- return new FieldPermissionsBuilder(this.entityPermissionsBuilder.add(permissions), this.fields);
44
- }
45
- onEntity(entitySelector) {
46
- return this.entityPermissionsBuilder.onEntity(entitySelector);
47
- }
48
- onEveryEntity() {
49
- return this.entityPermissionsBuilder.onEveryEntity();
50
- }
51
- onField(fieldSelector) {
52
- return this.entityPermissionsBuilder.onField(fieldSelector);
53
- }
54
- onEveryField() {
55
- return this.entityPermissionsBuilder.onEveryField();
56
- }
57
- }
58
- module.exports = FieldPermissionsBuilder;
59
- //# sourceMappingURL=FieldPermissionsBuilder.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"FieldPermissionsBuilder.cjs","sources":["../../../../../../packages/schema-definition/src/acl/builder/FieldPermissionsBuilder.ts"],"sourcesContent":["import FieldSelector from './FieldSelector'\nimport EntityPermissionsBuilder from './EntityPermissionsBuilder'\nimport { Acl, Model, Writable } from '@contember/schema'\nimport EntitySelector from './EntitySelector'\nimport { PermissionsBuilder } from './PermissionsBuilder'\n\nexport default class FieldPermissionsBuilder {\n\tpublic constructor(\n\t\tpublic entityPermissionsBuilder: EntityPermissionsBuilder,\n\t\tprivate readonly fields: [Model.Entity, Model.AnyField][],\n\t) {}\n\n\tget builder(): PermissionsBuilder {\n\t\treturn this.entityPermissionsBuilder.builder\n\t}\n\n\tget schema(): Model.Schema {\n\t\treturn this.entityPermissionsBuilder.schema\n\t}\n\n\tget permissions(): Acl.Permissions {\n\t\treturn this.entityPermissionsBuilder.permissions\n\t}\n\n\tpublic allowCreate(predicate: Acl.Predicate = true): FieldPermissionsBuilder {\n\t\treturn this.allow([Acl.Operation.create], predicate)\n\t}\n\n\tpublic allowRead(predicate: Acl.Predicate = true): FieldPermissionsBuilder {\n\t\treturn this.allow([Acl.Operation.read], predicate)\n\t}\n\n\tpublic allowUpdate(predicate: Acl.Predicate = true): FieldPermissionsBuilder {\n\t\treturn this.allow([Acl.Operation.update], predicate)\n\t}\n\n\tpublic allowAll(predicate: Acl.Predicate = true): FieldPermissionsBuilder {\n\t\treturn this.allow([Acl.Operation.create, Acl.Operation.read, Acl.Operation.update], predicate)\n\t}\n\n\tpublic allow(\n\t\toperations: (Acl.Operation.create | Acl.Operation.read | Acl.Operation.update)[],\n\t\tpredicate: Acl.Predicate = true,\n\t): FieldPermissionsBuilder {\n\t\tconst permissions: Writable<Acl.Permissions> = {}\n\t\tfor (const [entity, field] of this.fields) {\n\t\t\tif (!permissions[entity.name]) {\n\t\t\t\tpermissions[entity.name] = { operations: {}, predicates: {} }\n\t\t\t}\n\t\t\tconst entityOperations: Writable<Acl.EntityOperations> = permissions[entity.name].operations\n\t\t\tfor (const op of operations) {\n\t\t\t\tentityOperations[op] = {\n\t\t\t\t\t...(permissions[entity.name].operations[op] || {}),\n\t\t\t\t\t[field.name]: predicate,\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\treturn new FieldPermissionsBuilder(this.entityPermissionsBuilder.add(permissions), this.fields)\n\t}\n\n\tpublic onEntity(entitySelector: EntitySelector | string | string[]): EntityPermissionsBuilder {\n\t\treturn this.entityPermissionsBuilder.onEntity(entitySelector)\n\t}\n\n\tpublic onEveryEntity(): EntityPermissionsBuilder {\n\t\treturn this.entityPermissionsBuilder.onEveryEntity()\n\t}\n\n\tpublic onField(fieldSelector: FieldSelector | string | string[]) {\n\t\treturn this.entityPermissionsBuilder.onField(fieldSelector)\n\t}\n\n\tpublic onEveryField(): FieldPermissionsBuilder {\n\t\treturn this.entityPermissionsBuilder.onEveryField()\n\t}\n}\n"],"names":["Acl"],"mappings":";;AAMA,MAAqB,wBAAwB;AAAA,EACrC,YACC,0BACU,QAChB;AAFM,SAAA,2BAAA;AACU,SAAA,SAAA;AAAA,EAAA;AAAA,EAGlB,IAAI,UAA8B;AACjC,WAAO,KAAK,yBAAyB;AAAA,EAAA;AAAA,EAGtC,IAAI,SAAuB;AAC1B,WAAO,KAAK,yBAAyB;AAAA,EAAA;AAAA,EAGtC,IAAI,cAA+B;AAClC,WAAO,KAAK,yBAAyB;AAAA,EAAA;AAAA,EAG/B,YAAY,YAA2B,MAA+B;AAC5E,WAAO,KAAK,MAAM,CAACA,OAAAA,IAAI,UAAU,MAAM,GAAG,SAAS;AAAA,EAAA;AAAA,EAG7C,UAAU,YAA2B,MAA+B;AAC1E,WAAO,KAAK,MAAM,CAACA,OAAAA,IAAI,UAAU,IAAI,GAAG,SAAS;AAAA,EAAA;AAAA,EAG3C,YAAY,YAA2B,MAA+B;AAC5E,WAAO,KAAK,MAAM,CAACA,OAAAA,IAAI,UAAU,MAAM,GAAG,SAAS;AAAA,EAAA;AAAA,EAG7C,SAAS,YAA2B,MAA+B;AACzE,WAAO,KAAK,MAAM,CAACA,OAAAA,IAAI,UAAU,QAAQA,OAAAA,IAAI,UAAU,MAAMA,OAAA,IAAI,UAAU,MAAM,GAAG,SAAS;AAAA,EAAA;AAAA,EAGvF,MACN,YACA,YAA2B,MACD;AAC1B,UAAM,cAAyC,CAAC;AAChD,eAAW,CAAC,QAAQ,KAAK,KAAK,KAAK,QAAQ;AAC1C,UAAI,CAAC,YAAY,OAAO,IAAI,GAAG;AAClB,oBAAA,OAAO,IAAI,IAAI,EAAE,YAAY,CAAC,GAAG,YAAY,GAAG;AAAA,MAAA;AAE7D,YAAM,mBAAmD,YAAY,OAAO,IAAI,EAAE;AAClF,iBAAW,MAAM,YAAY;AAC5B,yBAAiB,EAAE,IAAI;AAAA,UACtB,GAAI,YAAY,OAAO,IAAI,EAAE,WAAW,EAAE,KAAK,CAAC;AAAA,UAChD,CAAC,MAAM,IAAI,GAAG;AAAA,QACf;AAAA,MAAA;AAAA,IACD;AAEM,WAAA,IAAI,wBAAwB,KAAK,yBAAyB,IAAI,WAAW,GAAG,KAAK,MAAM;AAAA,EAAA;AAAA,EAGxF,SAAS,gBAA8E;AACtF,WAAA,KAAK,yBAAyB,SAAS,cAAc;AAAA,EAAA;AAAA,EAGtD,gBAA0C;AACzC,WAAA,KAAK,yBAAyB,cAAc;AAAA,EAAA;AAAA,EAG7C,QAAQ,eAAkD;AACzD,WAAA,KAAK,yBAAyB,QAAQ,aAAa;AAAA,EAAA;AAAA,EAGpD,eAAwC;AACvC,WAAA,KAAK,yBAAyB,aAAa;AAAA,EAAA;AAEpD;;"}
@@ -1,60 +0,0 @@
1
- import { Acl } from "@contember/schema";
2
- class FieldPermissionsBuilder {
3
- constructor(entityPermissionsBuilder, fields) {
4
- this.entityPermissionsBuilder = entityPermissionsBuilder;
5
- this.fields = fields;
6
- }
7
- get builder() {
8
- return this.entityPermissionsBuilder.builder;
9
- }
10
- get schema() {
11
- return this.entityPermissionsBuilder.schema;
12
- }
13
- get permissions() {
14
- return this.entityPermissionsBuilder.permissions;
15
- }
16
- allowCreate(predicate = true) {
17
- return this.allow([Acl.Operation.create], predicate);
18
- }
19
- allowRead(predicate = true) {
20
- return this.allow([Acl.Operation.read], predicate);
21
- }
22
- allowUpdate(predicate = true) {
23
- return this.allow([Acl.Operation.update], predicate);
24
- }
25
- allowAll(predicate = true) {
26
- return this.allow([Acl.Operation.create, Acl.Operation.read, Acl.Operation.update], predicate);
27
- }
28
- allow(operations, predicate = true) {
29
- const permissions = {};
30
- for (const [entity, field] of this.fields) {
31
- if (!permissions[entity.name]) {
32
- permissions[entity.name] = { operations: {}, predicates: {} };
33
- }
34
- const entityOperations = permissions[entity.name].operations;
35
- for (const op of operations) {
36
- entityOperations[op] = {
37
- ...permissions[entity.name].operations[op] || {},
38
- [field.name]: predicate
39
- };
40
- }
41
- }
42
- return new FieldPermissionsBuilder(this.entityPermissionsBuilder.add(permissions), this.fields);
43
- }
44
- onEntity(entitySelector) {
45
- return this.entityPermissionsBuilder.onEntity(entitySelector);
46
- }
47
- onEveryEntity() {
48
- return this.entityPermissionsBuilder.onEveryEntity();
49
- }
50
- onField(fieldSelector) {
51
- return this.entityPermissionsBuilder.onField(fieldSelector);
52
- }
53
- onEveryField() {
54
- return this.entityPermissionsBuilder.onEveryField();
55
- }
56
- }
57
- export {
58
- FieldPermissionsBuilder as default
59
- };
60
- //# sourceMappingURL=FieldPermissionsBuilder.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"FieldPermissionsBuilder.js","sources":["../../../../../../packages/schema-definition/src/acl/builder/FieldPermissionsBuilder.ts"],"sourcesContent":["import FieldSelector from './FieldSelector'\nimport EntityPermissionsBuilder from './EntityPermissionsBuilder'\nimport { Acl, Model, Writable } from '@contember/schema'\nimport EntitySelector from './EntitySelector'\nimport { PermissionsBuilder } from './PermissionsBuilder'\n\nexport default class FieldPermissionsBuilder {\n\tpublic constructor(\n\t\tpublic entityPermissionsBuilder: EntityPermissionsBuilder,\n\t\tprivate readonly fields: [Model.Entity, Model.AnyField][],\n\t) {}\n\n\tget builder(): PermissionsBuilder {\n\t\treturn this.entityPermissionsBuilder.builder\n\t}\n\n\tget schema(): Model.Schema {\n\t\treturn this.entityPermissionsBuilder.schema\n\t}\n\n\tget permissions(): Acl.Permissions {\n\t\treturn this.entityPermissionsBuilder.permissions\n\t}\n\n\tpublic allowCreate(predicate: Acl.Predicate = true): FieldPermissionsBuilder {\n\t\treturn this.allow([Acl.Operation.create], predicate)\n\t}\n\n\tpublic allowRead(predicate: Acl.Predicate = true): FieldPermissionsBuilder {\n\t\treturn this.allow([Acl.Operation.read], predicate)\n\t}\n\n\tpublic allowUpdate(predicate: Acl.Predicate = true): FieldPermissionsBuilder {\n\t\treturn this.allow([Acl.Operation.update], predicate)\n\t}\n\n\tpublic allowAll(predicate: Acl.Predicate = true): FieldPermissionsBuilder {\n\t\treturn this.allow([Acl.Operation.create, Acl.Operation.read, Acl.Operation.update], predicate)\n\t}\n\n\tpublic allow(\n\t\toperations: (Acl.Operation.create | Acl.Operation.read | Acl.Operation.update)[],\n\t\tpredicate: Acl.Predicate = true,\n\t): FieldPermissionsBuilder {\n\t\tconst permissions: Writable<Acl.Permissions> = {}\n\t\tfor (const [entity, field] of this.fields) {\n\t\t\tif (!permissions[entity.name]) {\n\t\t\t\tpermissions[entity.name] = { operations: {}, predicates: {} }\n\t\t\t}\n\t\t\tconst entityOperations: Writable<Acl.EntityOperations> = permissions[entity.name].operations\n\t\t\tfor (const op of operations) {\n\t\t\t\tentityOperations[op] = {\n\t\t\t\t\t...(permissions[entity.name].operations[op] || {}),\n\t\t\t\t\t[field.name]: predicate,\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\treturn new FieldPermissionsBuilder(this.entityPermissionsBuilder.add(permissions), this.fields)\n\t}\n\n\tpublic onEntity(entitySelector: EntitySelector | string | string[]): EntityPermissionsBuilder {\n\t\treturn this.entityPermissionsBuilder.onEntity(entitySelector)\n\t}\n\n\tpublic onEveryEntity(): EntityPermissionsBuilder {\n\t\treturn this.entityPermissionsBuilder.onEveryEntity()\n\t}\n\n\tpublic onField(fieldSelector: FieldSelector | string | string[]) {\n\t\treturn this.entityPermissionsBuilder.onField(fieldSelector)\n\t}\n\n\tpublic onEveryField(): FieldPermissionsBuilder {\n\t\treturn this.entityPermissionsBuilder.onEveryField()\n\t}\n}\n"],"names":[],"mappings":";AAMA,MAAqB,wBAAwB;AAAA,EACrC,YACC,0BACU,QAChB;AAFM,SAAA,2BAAA;AACU,SAAA,SAAA;AAAA,EAAA;AAAA,EAGlB,IAAI,UAA8B;AACjC,WAAO,KAAK,yBAAyB;AAAA,EAAA;AAAA,EAGtC,IAAI,SAAuB;AAC1B,WAAO,KAAK,yBAAyB;AAAA,EAAA;AAAA,EAGtC,IAAI,cAA+B;AAClC,WAAO,KAAK,yBAAyB;AAAA,EAAA;AAAA,EAG/B,YAAY,YAA2B,MAA+B;AAC5E,WAAO,KAAK,MAAM,CAAC,IAAI,UAAU,MAAM,GAAG,SAAS;AAAA,EAAA;AAAA,EAG7C,UAAU,YAA2B,MAA+B;AAC1E,WAAO,KAAK,MAAM,CAAC,IAAI,UAAU,IAAI,GAAG,SAAS;AAAA,EAAA;AAAA,EAG3C,YAAY,YAA2B,MAA+B;AAC5E,WAAO,KAAK,MAAM,CAAC,IAAI,UAAU,MAAM,GAAG,SAAS;AAAA,EAAA;AAAA,EAG7C,SAAS,YAA2B,MAA+B;AACzE,WAAO,KAAK,MAAM,CAAC,IAAI,UAAU,QAAQ,IAAI,UAAU,MAAM,IAAI,UAAU,MAAM,GAAG,SAAS;AAAA,EAAA;AAAA,EAGvF,MACN,YACA,YAA2B,MACD;AAC1B,UAAM,cAAyC,CAAC;AAChD,eAAW,CAAC,QAAQ,KAAK,KAAK,KAAK,QAAQ;AAC1C,UAAI,CAAC,YAAY,OAAO,IAAI,GAAG;AAClB,oBAAA,OAAO,IAAI,IAAI,EAAE,YAAY,CAAC,GAAG,YAAY,GAAG;AAAA,MAAA;AAE7D,YAAM,mBAAmD,YAAY,OAAO,IAAI,EAAE;AAClF,iBAAW,MAAM,YAAY;AAC5B,yBAAiB,EAAE,IAAI;AAAA,UACtB,GAAI,YAAY,OAAO,IAAI,EAAE,WAAW,EAAE,KAAK,CAAC;AAAA,UAChD,CAAC,MAAM,IAAI,GAAG;AAAA,QACf;AAAA,MAAA;AAAA,IACD;AAEM,WAAA,IAAI,wBAAwB,KAAK,yBAAyB,IAAI,WAAW,GAAG,KAAK,MAAM;AAAA,EAAA;AAAA,EAGxF,SAAS,gBAA8E;AACtF,WAAA,KAAK,yBAAyB,SAAS,cAAc;AAAA,EAAA;AAAA,EAGtD,gBAA0C;AACzC,WAAA,KAAK,yBAAyB,cAAc;AAAA,EAAA;AAAA,EAG7C,QAAQ,eAAkD;AACzD,WAAA,KAAK,yBAAyB,QAAQ,aAAa;AAAA,EAAA;AAAA,EAGpD,eAAwC;AACvC,WAAA,KAAK,yBAAyB,aAAa;AAAA,EAAA;AAEpD;"}
@@ -1,26 +0,0 @@
1
- "use strict";
2
- class FieldSelector {
3
- constructor(matchers) {
4
- this.matchers = matchers;
5
- }
6
- static every() {
7
- return new FieldSelector([]);
8
- }
9
- static named(...name) {
10
- return FieldSelector.every().named(...name);
11
- }
12
- named(...name) {
13
- return this.matching((schema, entity, field) => name.includes(field.name));
14
- }
15
- except(...name) {
16
- return this.matching((schema, entity, field) => !name.includes(field.name));
17
- }
18
- matching(matcher) {
19
- return new FieldSelector([...this.matchers, matcher]);
20
- }
21
- matches(schema, entity, field) {
22
- return this.matchers.reduce((prev, predicate) => prev && predicate(schema, entity, field), true);
23
- }
24
- }
25
- module.exports = FieldSelector;
26
- //# sourceMappingURL=FieldSelector.cjs.map