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