@contember/schema-definition 2.1.0-alpha.3 → 2.1.0-alpha.35
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/package.json +13 -8
- package/src/acl/builder/EntityPermissionsBuilder.ts +1 -1
- package/src/acl/builder/EntitySelector.ts +2 -2
- package/src/acl/builder/PermissionOverrider.ts +10 -8
- package/src/acl/builder/PermissionsBuilder.ts +1 -3
- package/src/acl/definition/aclExtensions.ts +7 -8
- package/src/acl/definition/customPrimary.ts +1 -1
- package/src/acl/definition/internal/AclFactory.ts +30 -25
- package/src/acl/definition/internal/EntityPredicateResolver.ts +4 -4
- package/src/acl/definition/internal/stores.ts +5 -6
- package/src/acl/definition/permissions.ts +14 -8
- package/src/acl/definition/variables.ts +5 -1
- package/src/actions/definition/index.ts +0 -1
- package/src/actions/definition/internal/ActionsFactory.ts +7 -9
- package/src/actions/definition/targets.ts +0 -1
- package/src/actions/definition/triggers.ts +9 -7
- package/src/createSchema.ts +1 -1
- package/src/index.ts +6 -11
- package/src/model/builder/ColumnBuilder.ts +7 -5
- package/src/model/builder/internal/ColumnProcessor.ts +0 -1
- package/src/model/definition/IndexDefinition.ts +7 -3
- package/src/model/definition/OrderByDefinition.ts +7 -5
- package/src/model/definition/UniqueDefinition.ts +14 -12
- package/src/model/definition/extensions.ts +2 -2
- package/src/model/definition/fieldDefinitions/ColumnDefinition.ts +12 -4
- package/src/model/definition/fieldDefinitions/FieldDefinition.ts +1 -1
- package/src/model/definition/fieldDefinitions/ManyHasManyDefinition.ts +0 -2
- package/src/model/definition/fieldDefinitions/ManyHasManyInverseDefinition.ts +4 -2
- package/src/model/definition/fieldDefinitions/ManyHasOneDefinition.ts +1 -1
- package/src/model/definition/fieldDefinitions/OneHasManyDefinition.ts +0 -1
- package/src/model/definition/fieldDefinitions/OneHasOneDefinition.ts +0 -2
- package/src/model/definition/fieldDefinitions/OneHasOneInverseDefinition.ts +5 -3
- package/src/model/definition/index.ts +2 -2
- package/src/model/definition/internal/SchemaBuilder.ts +1 -2
- package/src/model/definition/types.ts +1 -1
- package/src/model/index.ts +1 -10
- package/src/presets.ts +0 -2
- package/src/strict.ts +4 -4
- package/src/utils/MetadataStore.ts +18 -4
- package/src/utils/decorators.ts +1 -1
- package/src/utils/filterEntityDefinition.ts +3 -2
- package/src/validation/index.ts +30 -21
- package/tests/cases/unit/createSchema.test.ts +5 -6
- package/tests/cases/unit/extendEntity.test.ts +1 -2
- package/tests/cases/unit/orderBy.test.ts +3 -6
- package/tests/cases/unit/readAclDefinitions.test.ts +191 -176
- package/tests/cases/unit/readActions.test.ts +0 -2
- package/dist/development/index.cjs +0 -123
- package/dist/development/index.cjs.map +0 -1
- package/dist/development/index.js +0 -118
- package/dist/development/index.js.map +0 -1
- package/dist/development/src/acl/builder/EntityPermissionsBuilder.cjs +0 -119
- package/dist/development/src/acl/builder/EntityPermissionsBuilder.cjs.map +0 -1
- package/dist/development/src/acl/builder/EntityPermissionsBuilder.js +0 -120
- package/dist/development/src/acl/builder/EntityPermissionsBuilder.js.map +0 -1
- package/dist/development/src/acl/builder/EntitySelector.cjs +0 -32
- package/dist/development/src/acl/builder/EntitySelector.cjs.map +0 -1
- package/dist/development/src/acl/builder/EntitySelector.js +0 -33
- package/dist/development/src/acl/builder/EntitySelector.js.map +0 -1
- package/dist/development/src/acl/builder/FieldPermissionsBuilder.cjs +0 -59
- package/dist/development/src/acl/builder/FieldPermissionsBuilder.cjs.map +0 -1
- package/dist/development/src/acl/builder/FieldPermissionsBuilder.js +0 -60
- package/dist/development/src/acl/builder/FieldPermissionsBuilder.js.map +0 -1
- package/dist/development/src/acl/builder/FieldSelector.cjs +0 -26
- package/dist/development/src/acl/builder/FieldSelector.cjs.map +0 -1
- package/dist/development/src/acl/builder/FieldSelector.js +0 -27
- package/dist/development/src/acl/builder/FieldSelector.js.map +0 -1
- package/dist/development/src/acl/builder/PermissionOverrider.cjs +0 -37
- package/dist/development/src/acl/builder/PermissionOverrider.cjs.map +0 -1
- package/dist/development/src/acl/builder/PermissionOverrider.js +0 -38
- package/dist/development/src/acl/builder/PermissionOverrider.js.map +0 -1
- package/dist/development/src/acl/builder/PermissionsBuilder.cjs +0 -58
- package/dist/development/src/acl/builder/PermissionsBuilder.cjs.map +0 -1
- package/dist/development/src/acl/builder/PermissionsBuilder.js +0 -58
- package/dist/development/src/acl/builder/PermissionsBuilder.js.map +0 -1
- package/dist/development/src/acl/builder/PredicateReference.cjs +0 -43
- package/dist/development/src/acl/builder/PredicateReference.cjs.map +0 -1
- package/dist/development/src/acl/builder/PredicateReference.js +0 -43
- package/dist/development/src/acl/builder/PredicateReference.js.map +0 -1
- package/dist/development/src/acl/definition/aclExtensions.cjs +0 -16
- package/dist/development/src/acl/definition/aclExtensions.cjs.map +0 -1
- package/dist/development/src/acl/definition/aclExtensions.js +0 -16
- package/dist/development/src/acl/definition/aclExtensions.js.map +0 -1
- package/dist/development/src/acl/definition/customPrimary.cjs +0 -13
- package/dist/development/src/acl/definition/customPrimary.cjs.map +0 -1
- package/dist/development/src/acl/definition/customPrimary.js +0 -13
- package/dist/development/src/acl/definition/customPrimary.js.map +0 -1
- package/dist/development/src/acl/definition/index.cjs +0 -27
- package/dist/development/src/acl/definition/index.cjs.map +0 -1
- package/dist/development/src/acl/definition/index.js +0 -27
- package/dist/development/src/acl/definition/index.js.map +0 -1
- package/dist/development/src/acl/definition/internal/AclFactory.cjs +0 -125
- package/dist/development/src/acl/definition/internal/AclFactory.cjs.map +0 -1
- package/dist/development/src/acl/definition/internal/AclFactory.js +0 -125
- package/dist/development/src/acl/definition/internal/AclFactory.js.map +0 -1
- package/dist/development/src/acl/definition/internal/EntityPredicateResolver.cjs +0 -151
- package/dist/development/src/acl/definition/internal/EntityPredicateResolver.cjs.map +0 -1
- package/dist/development/src/acl/definition/internal/EntityPredicateResolver.js +0 -151
- package/dist/development/src/acl/definition/internal/EntityPredicateResolver.js.map +0 -1
- package/dist/development/src/acl/definition/internal/createPredicateName.cjs +0 -8
- package/dist/development/src/acl/definition/internal/createPredicateName.cjs.map +0 -1
- package/dist/development/src/acl/definition/internal/createPredicateName.js +0 -8
- package/dist/development/src/acl/definition/internal/createPredicateName.js.map +0 -1
- package/dist/development/src/acl/definition/internal/stores.cjs +0 -6
- package/dist/development/src/acl/definition/internal/stores.cjs.map +0 -1
- package/dist/development/src/acl/definition/internal/stores.js +0 -6
- package/dist/development/src/acl/definition/internal/stores.js.map +0 -1
- package/dist/development/src/acl/definition/permissions.cjs +0 -12
- package/dist/development/src/acl/definition/permissions.cjs.map +0 -1
- package/dist/development/src/acl/definition/permissions.js +0 -12
- package/dist/development/src/acl/definition/permissions.js.map +0 -1
- package/dist/development/src/acl/definition/references.cjs +0 -26
- package/dist/development/src/acl/definition/references.cjs.map +0 -1
- package/dist/development/src/acl/definition/references.js +0 -26
- package/dist/development/src/acl/definition/references.js.map +0 -1
- package/dist/development/src/acl/definition/roles.cjs +0 -14
- package/dist/development/src/acl/definition/roles.cjs.map +0 -1
- package/dist/development/src/acl/definition/roles.js +0 -14
- package/dist/development/src/acl/definition/roles.js.map +0 -1
- package/dist/development/src/acl/definition/variables.cjs +0 -36
- package/dist/development/src/acl/definition/variables.cjs.map +0 -1
- package/dist/development/src/acl/definition/variables.js +0 -36
- package/dist/development/src/acl/definition/variables.js.map +0 -1
- package/dist/development/src/actions/definition/index.cjs +0 -15
- package/dist/development/src/actions/definition/index.cjs.map +0 -1
- package/dist/development/src/actions/definition/index.js +0 -15
- package/dist/development/src/actions/definition/index.js.map +0 -1
- package/dist/development/src/actions/definition/internal/ActionsFactory.cjs +0 -179
- package/dist/development/src/actions/definition/internal/ActionsFactory.cjs.map +0 -1
- package/dist/development/src/actions/definition/internal/ActionsFactory.js +0 -179
- package/dist/development/src/actions/definition/internal/ActionsFactory.js.map +0 -1
- package/dist/development/src/actions/definition/internal/store.cjs +0 -6
- package/dist/development/src/actions/definition/internal/store.cjs.map +0 -1
- package/dist/development/src/actions/definition/internal/store.js +0 -6
- package/dist/development/src/actions/definition/internal/store.js.map +0 -1
- package/dist/development/src/actions/definition/targets.cjs +0 -15
- package/dist/development/src/actions/definition/targets.cjs.map +0 -1
- package/dist/development/src/actions/definition/targets.js +0 -15
- package/dist/development/src/actions/definition/targets.js.map +0 -1
- package/dist/development/src/actions/definition/triggers.cjs +0 -12
- package/dist/development/src/actions/definition/triggers.cjs.map +0 -1
- package/dist/development/src/actions/definition/triggers.js +0 -12
- package/dist/development/src/actions/definition/triggers.js.map +0 -1
- package/dist/development/src/createSchema.cjs +0 -29
- package/dist/development/src/createSchema.cjs.map +0 -1
- package/dist/development/src/createSchema.js +0 -29
- package/dist/development/src/createSchema.js.map +0 -1
- package/dist/development/src/model/builder/ColumnBuilder.cjs +0 -36
- package/dist/development/src/model/builder/ColumnBuilder.cjs.map +0 -1
- package/dist/development/src/model/builder/ColumnBuilder.js +0 -37
- package/dist/development/src/model/builder/ColumnBuilder.js.map +0 -1
- package/dist/development/src/model/builder/EntityBuilder.cjs +0 -69
- package/dist/development/src/model/builder/EntityBuilder.cjs.map +0 -1
- package/dist/development/src/model/builder/EntityBuilder.js +0 -70
- package/dist/development/src/model/builder/EntityBuilder.js.map +0 -1
- package/dist/development/src/model/builder/FieldBuilder.cjs +0 -14
- package/dist/development/src/model/builder/FieldBuilder.cjs.map +0 -1
- package/dist/development/src/model/builder/FieldBuilder.js +0 -15
- package/dist/development/src/model/builder/FieldBuilder.js.map +0 -1
- package/dist/development/src/model/builder/ManyHasManyBuilder.cjs +0 -35
- package/dist/development/src/model/builder/ManyHasManyBuilder.cjs.map +0 -1
- package/dist/development/src/model/builder/ManyHasManyBuilder.js +0 -36
- package/dist/development/src/model/builder/ManyHasManyBuilder.js.map +0 -1
- package/dist/development/src/model/builder/ManyHasOneBuilder.cjs +0 -36
- package/dist/development/src/model/builder/ManyHasOneBuilder.cjs.map +0 -1
- package/dist/development/src/model/builder/ManyHasOneBuilder.js +0 -37
- package/dist/development/src/model/builder/ManyHasOneBuilder.js.map +0 -1
- package/dist/development/src/model/builder/OneHasManyBuilder.cjs +0 -44
- package/dist/development/src/model/builder/OneHasManyBuilder.cjs.map +0 -1
- package/dist/development/src/model/builder/OneHasManyBuilder.js +0 -45
- package/dist/development/src/model/builder/OneHasManyBuilder.js.map +0 -1
- package/dist/development/src/model/builder/OneHasOneBuilder.cjs +0 -46
- package/dist/development/src/model/builder/OneHasOneBuilder.cjs.map +0 -1
- package/dist/development/src/model/builder/OneHasOneBuilder.js +0 -47
- package/dist/development/src/model/builder/OneHasOneBuilder.js.map +0 -1
- package/dist/development/src/model/builder/SchemaBuilder.cjs +0 -40
- package/dist/development/src/model/builder/SchemaBuilder.cjs.map +0 -1
- package/dist/development/src/model/builder/SchemaBuilder.js +0 -40
- package/dist/development/src/model/builder/SchemaBuilder.js.map +0 -1
- package/dist/development/src/model/builder/SchemaBuilderError.cjs +0 -6
- package/dist/development/src/model/builder/SchemaBuilderError.cjs.map +0 -1
- package/dist/development/src/model/builder/SchemaBuilderError.js +0 -6
- package/dist/development/src/model/builder/SchemaBuilderError.js.map +0 -1
- package/dist/development/src/model/builder/SchemaBuilderInternal.cjs +0 -153
- package/dist/development/src/model/builder/SchemaBuilderInternal.cjs.map +0 -1
- package/dist/development/src/model/builder/SchemaBuilderInternal.js +0 -154
- package/dist/development/src/model/builder/SchemaBuilderInternal.js.map +0 -1
- package/dist/development/src/model/builder/internal/ColumnProcessor.cjs +0 -34
- package/dist/development/src/model/builder/internal/ColumnProcessor.cjs.map +0 -1
- package/dist/development/src/model/builder/internal/ColumnProcessor.js +0 -35
- package/dist/development/src/model/builder/internal/ColumnProcessor.js.map +0 -1
- package/dist/development/src/model/builder/internal/ManyHasManyProcessor.cjs +0 -54
- package/dist/development/src/model/builder/internal/ManyHasManyProcessor.cjs.map +0 -1
- package/dist/development/src/model/builder/internal/ManyHasManyProcessor.js +0 -55
- package/dist/development/src/model/builder/internal/ManyHasManyProcessor.js.map +0 -1
- package/dist/development/src/model/builder/internal/ManyHasOneProcessor.cjs +0 -46
- package/dist/development/src/model/builder/internal/ManyHasOneProcessor.cjs.map +0 -1
- package/dist/development/src/model/builder/internal/ManyHasOneProcessor.js +0 -47
- package/dist/development/src/model/builder/internal/ManyHasOneProcessor.js.map +0 -1
- package/dist/development/src/model/builder/internal/OneHasManyProcessor.cjs +0 -44
- package/dist/development/src/model/builder/internal/OneHasManyProcessor.cjs.map +0 -1
- package/dist/development/src/model/builder/internal/OneHasManyProcessor.js +0 -45
- package/dist/development/src/model/builder/internal/OneHasManyProcessor.js.map +0 -1
- package/dist/development/src/model/builder/internal/OneHasOneProcessor.cjs +0 -50
- package/dist/development/src/model/builder/internal/OneHasOneProcessor.cjs.map +0 -1
- package/dist/development/src/model/builder/internal/OneHasOneProcessor.js +0 -51
- package/dist/development/src/model/builder/internal/OneHasOneProcessor.js.map +0 -1
- package/dist/development/src/model/definition/EnumDefinition.cjs +0 -13
- package/dist/development/src/model/definition/EnumDefinition.cjs.map +0 -1
- package/dist/development/src/model/definition/EnumDefinition.js +0 -13
- package/dist/development/src/model/definition/EnumDefinition.js.map +0 -1
- package/dist/development/src/model/definition/EventLogDefinition.cjs +0 -9
- package/dist/development/src/model/definition/EventLogDefinition.cjs.map +0 -1
- package/dist/development/src/model/definition/EventLogDefinition.js +0 -9
- package/dist/development/src/model/definition/EventLogDefinition.js.map +0 -1
- package/dist/development/src/model/definition/IndexDefinition.cjs +0 -17
- package/dist/development/src/model/definition/IndexDefinition.cjs.map +0 -1
- package/dist/development/src/model/definition/IndexDefinition.js +0 -17
- package/dist/development/src/model/definition/IndexDefinition.js.map +0 -1
- package/dist/development/src/model/definition/OrderByDefinition.cjs +0 -30
- package/dist/development/src/model/definition/OrderByDefinition.cjs.map +0 -1
- package/dist/development/src/model/definition/OrderByDefinition.js +0 -30
- package/dist/development/src/model/definition/OrderByDefinition.js.map +0 -1
- package/dist/development/src/model/definition/UniqueDefinition.cjs +0 -17
- package/dist/development/src/model/definition/UniqueDefinition.cjs.map +0 -1
- package/dist/development/src/model/definition/UniqueDefinition.js +0 -17
- package/dist/development/src/model/definition/UniqueDefinition.js.map +0 -1
- package/dist/development/src/model/definition/ViewDefinition.cjs +0 -27
- package/dist/development/src/model/definition/ViewDefinition.cjs.map +0 -1
- package/dist/development/src/model/definition/ViewDefinition.js +0 -27
- package/dist/development/src/model/definition/ViewDefinition.js.map +0 -1
- package/dist/development/src/model/definition/extensions.cjs +0 -16
- package/dist/development/src/model/definition/extensions.cjs.map +0 -1
- package/dist/development/src/model/definition/extensions.js +0 -16
- package/dist/development/src/model/definition/extensions.js.map +0 -1
- package/dist/development/src/model/definition/fieldDefinitions/ColumnDefinition.cjs +0 -140
- package/dist/development/src/model/definition/fieldDefinitions/ColumnDefinition.cjs.map +0 -1
- package/dist/development/src/model/definition/fieldDefinitions/ColumnDefinition.js +0 -140
- package/dist/development/src/model/definition/fieldDefinitions/ColumnDefinition.js.map +0 -1
- package/dist/development/src/model/definition/fieldDefinitions/FieldDefinition.cjs +0 -9
- package/dist/development/src/model/definition/fieldDefinitions/FieldDefinition.cjs.map +0 -1
- package/dist/development/src/model/definition/fieldDefinitions/FieldDefinition.js +0 -9
- package/dist/development/src/model/definition/fieldDefinitions/FieldDefinition.js.map +0 -1
- package/dist/development/src/model/definition/fieldDefinitions/ManyHasManyDefinition.cjs +0 -57
- package/dist/development/src/model/definition/fieldDefinitions/ManyHasManyDefinition.cjs.map +0 -1
- package/dist/development/src/model/definition/fieldDefinitions/ManyHasManyDefinition.js +0 -57
- package/dist/development/src/model/definition/fieldDefinitions/ManyHasManyDefinition.js.map +0 -1
- package/dist/development/src/model/definition/fieldDefinitions/ManyHasManyInverseDefinition.cjs +0 -36
- package/dist/development/src/model/definition/fieldDefinitions/ManyHasManyInverseDefinition.cjs.map +0 -1
- package/dist/development/src/model/definition/fieldDefinitions/ManyHasManyInverseDefinition.js +0 -36
- package/dist/development/src/model/definition/fieldDefinitions/ManyHasManyInverseDefinition.js.map +0 -1
- package/dist/development/src/model/definition/fieldDefinitions/ManyHasOneDefinition.cjs +0 -60
- package/dist/development/src/model/definition/fieldDefinitions/ManyHasOneDefinition.cjs.map +0 -1
- package/dist/development/src/model/definition/fieldDefinitions/ManyHasOneDefinition.js +0 -60
- package/dist/development/src/model/definition/fieldDefinitions/ManyHasOneDefinition.js.map +0 -1
- package/dist/development/src/model/definition/fieldDefinitions/OneHasManyDefinition.cjs +0 -36
- package/dist/development/src/model/definition/fieldDefinitions/OneHasManyDefinition.cjs.map +0 -1
- package/dist/development/src/model/definition/fieldDefinitions/OneHasManyDefinition.js +0 -36
- package/dist/development/src/model/definition/fieldDefinitions/OneHasManyDefinition.js.map +0 -1
- package/dist/development/src/model/definition/fieldDefinitions/OneHasOneDefinition.cjs +0 -64
- package/dist/development/src/model/definition/fieldDefinitions/OneHasOneDefinition.cjs.map +0 -1
- package/dist/development/src/model/definition/fieldDefinitions/OneHasOneDefinition.js +0 -64
- package/dist/development/src/model/definition/fieldDefinitions/OneHasOneDefinition.js.map +0 -1
- package/dist/development/src/model/definition/fieldDefinitions/OneHasOneInverseDefinition.cjs +0 -35
- package/dist/development/src/model/definition/fieldDefinitions/OneHasOneInverseDefinition.cjs.map +0 -1
- package/dist/development/src/model/definition/fieldDefinitions/OneHasOneInverseDefinition.js +0 -35
- package/dist/development/src/model/definition/fieldDefinitions/OneHasOneInverseDefinition.js.map +0 -1
- package/dist/development/src/model/definition/index.cjs +0 -80
- package/dist/development/src/model/definition/index.cjs.map +0 -1
- package/dist/development/src/model/definition/index.js +0 -81
- package/dist/development/src/model/definition/index.js.map +0 -1
- package/dist/development/src/model/definition/internal/EntityRegistry.cjs +0 -29
- package/dist/development/src/model/definition/internal/EntityRegistry.cjs.map +0 -1
- package/dist/development/src/model/definition/internal/EntityRegistry.js +0 -29
- package/dist/development/src/model/definition/internal/EntityRegistry.js.map +0 -1
- package/dist/development/src/model/definition/internal/EnumRegistry.cjs +0 -29
- package/dist/development/src/model/definition/internal/EnumRegistry.cjs.map +0 -1
- package/dist/development/src/model/definition/internal/EnumRegistry.js +0 -29
- package/dist/development/src/model/definition/internal/EnumRegistry.js.map +0 -1
- package/dist/development/src/model/definition/internal/SchemaBuilder.cjs +0 -101
- package/dist/development/src/model/definition/internal/SchemaBuilder.cjs.map +0 -1
- package/dist/development/src/model/definition/internal/SchemaBuilder.js +0 -101
- package/dist/development/src/model/definition/internal/SchemaBuilder.js.map +0 -1
- package/dist/development/src/presets.cjs +0 -46
- package/dist/development/src/presets.cjs.map +0 -1
- package/dist/development/src/presets.js +0 -46
- package/dist/development/src/presets.js.map +0 -1
- package/dist/development/src/strict.cjs +0 -31
- package/dist/development/src/strict.cjs.map +0 -1
- package/dist/development/src/strict.js +0 -31
- package/dist/development/src/strict.js.map +0 -1
- package/dist/development/src/utils/MetadataStore.cjs +0 -19
- package/dist/development/src/utils/MetadataStore.cjs.map +0 -1
- package/dist/development/src/utils/MetadataStore.js +0 -19
- package/dist/development/src/utils/MetadataStore.js.map +0 -1
- package/dist/development/src/utils/assertNever.cjs +0 -7
- package/dist/development/src/utils/assertNever.cjs.map +0 -1
- package/dist/development/src/utils/assertNever.js +0 -7
- package/dist/development/src/utils/assertNever.js.map +0 -1
- package/dist/development/src/utils/filterEntityDefinition.cjs +0 -9
- package/dist/development/src/utils/filterEntityDefinition.cjs.map +0 -1
- package/dist/development/src/utils/filterEntityDefinition.js +0 -9
- package/dist/development/src/utils/filterEntityDefinition.js.map +0 -1
- package/dist/development/src/utils/tuple.cjs +0 -5
- package/dist/development/src/utils/tuple.cjs.map +0 -1
- package/dist/development/src/utils/tuple.js +0 -5
- package/dist/development/src/utils/tuple.js.map +0 -1
- package/dist/development/src/validation/index.cjs +0 -199
- package/dist/development/src/validation/index.cjs.map +0 -1
- package/dist/development/src/validation/index.js +0 -199
- package/dist/development/src/validation/index.js.map +0 -1
- package/dist/production/index.cjs +0 -123
- package/dist/production/index.cjs.map +0 -1
- package/dist/production/index.js +0 -118
- package/dist/production/index.js.map +0 -1
- package/dist/production/src/acl/builder/EntityPermissionsBuilder.cjs +0 -119
- package/dist/production/src/acl/builder/EntityPermissionsBuilder.cjs.map +0 -1
- package/dist/production/src/acl/builder/EntityPermissionsBuilder.js +0 -120
- package/dist/production/src/acl/builder/EntityPermissionsBuilder.js.map +0 -1
- package/dist/production/src/acl/builder/EntitySelector.cjs +0 -32
- package/dist/production/src/acl/builder/EntitySelector.cjs.map +0 -1
- package/dist/production/src/acl/builder/EntitySelector.js +0 -33
- package/dist/production/src/acl/builder/EntitySelector.js.map +0 -1
- package/dist/production/src/acl/builder/FieldPermissionsBuilder.cjs +0 -59
- package/dist/production/src/acl/builder/FieldPermissionsBuilder.cjs.map +0 -1
- package/dist/production/src/acl/builder/FieldPermissionsBuilder.js +0 -60
- package/dist/production/src/acl/builder/FieldPermissionsBuilder.js.map +0 -1
- package/dist/production/src/acl/builder/FieldSelector.cjs +0 -26
- package/dist/production/src/acl/builder/FieldSelector.cjs.map +0 -1
- package/dist/production/src/acl/builder/FieldSelector.js +0 -27
- package/dist/production/src/acl/builder/FieldSelector.js.map +0 -1
- package/dist/production/src/acl/builder/PermissionOverrider.cjs +0 -37
- package/dist/production/src/acl/builder/PermissionOverrider.cjs.map +0 -1
- package/dist/production/src/acl/builder/PermissionOverrider.js +0 -38
- package/dist/production/src/acl/builder/PermissionOverrider.js.map +0 -1
- package/dist/production/src/acl/builder/PermissionsBuilder.cjs +0 -58
- package/dist/production/src/acl/builder/PermissionsBuilder.cjs.map +0 -1
- package/dist/production/src/acl/builder/PermissionsBuilder.js +0 -58
- package/dist/production/src/acl/builder/PermissionsBuilder.js.map +0 -1
- package/dist/production/src/acl/builder/PredicateReference.cjs +0 -43
- package/dist/production/src/acl/builder/PredicateReference.cjs.map +0 -1
- package/dist/production/src/acl/builder/PredicateReference.js +0 -43
- package/dist/production/src/acl/builder/PredicateReference.js.map +0 -1
- package/dist/production/src/acl/definition/aclExtensions.cjs +0 -16
- package/dist/production/src/acl/definition/aclExtensions.cjs.map +0 -1
- package/dist/production/src/acl/definition/aclExtensions.js +0 -16
- package/dist/production/src/acl/definition/aclExtensions.js.map +0 -1
- package/dist/production/src/acl/definition/customPrimary.cjs +0 -13
- package/dist/production/src/acl/definition/customPrimary.cjs.map +0 -1
- package/dist/production/src/acl/definition/customPrimary.js +0 -13
- package/dist/production/src/acl/definition/customPrimary.js.map +0 -1
- package/dist/production/src/acl/definition/index.cjs +0 -27
- package/dist/production/src/acl/definition/index.cjs.map +0 -1
- package/dist/production/src/acl/definition/index.js +0 -27
- package/dist/production/src/acl/definition/index.js.map +0 -1
- package/dist/production/src/acl/definition/internal/AclFactory.cjs +0 -125
- package/dist/production/src/acl/definition/internal/AclFactory.cjs.map +0 -1
- package/dist/production/src/acl/definition/internal/AclFactory.js +0 -125
- package/dist/production/src/acl/definition/internal/AclFactory.js.map +0 -1
- package/dist/production/src/acl/definition/internal/EntityPredicateResolver.cjs +0 -151
- package/dist/production/src/acl/definition/internal/EntityPredicateResolver.cjs.map +0 -1
- package/dist/production/src/acl/definition/internal/EntityPredicateResolver.js +0 -151
- package/dist/production/src/acl/definition/internal/EntityPredicateResolver.js.map +0 -1
- package/dist/production/src/acl/definition/internal/createPredicateName.cjs +0 -8
- package/dist/production/src/acl/definition/internal/createPredicateName.cjs.map +0 -1
- package/dist/production/src/acl/definition/internal/createPredicateName.js +0 -8
- package/dist/production/src/acl/definition/internal/createPredicateName.js.map +0 -1
- package/dist/production/src/acl/definition/internal/stores.cjs +0 -6
- package/dist/production/src/acl/definition/internal/stores.cjs.map +0 -1
- package/dist/production/src/acl/definition/internal/stores.js +0 -6
- package/dist/production/src/acl/definition/internal/stores.js.map +0 -1
- package/dist/production/src/acl/definition/permissions.cjs +0 -12
- package/dist/production/src/acl/definition/permissions.cjs.map +0 -1
- package/dist/production/src/acl/definition/permissions.js +0 -12
- package/dist/production/src/acl/definition/permissions.js.map +0 -1
- package/dist/production/src/acl/definition/references.cjs +0 -26
- package/dist/production/src/acl/definition/references.cjs.map +0 -1
- package/dist/production/src/acl/definition/references.js +0 -26
- package/dist/production/src/acl/definition/references.js.map +0 -1
- package/dist/production/src/acl/definition/roles.cjs +0 -14
- package/dist/production/src/acl/definition/roles.cjs.map +0 -1
- package/dist/production/src/acl/definition/roles.js +0 -14
- package/dist/production/src/acl/definition/roles.js.map +0 -1
- package/dist/production/src/acl/definition/variables.cjs +0 -36
- package/dist/production/src/acl/definition/variables.cjs.map +0 -1
- package/dist/production/src/acl/definition/variables.js +0 -36
- package/dist/production/src/acl/definition/variables.js.map +0 -1
- package/dist/production/src/actions/definition/index.cjs +0 -15
- package/dist/production/src/actions/definition/index.cjs.map +0 -1
- package/dist/production/src/actions/definition/index.js +0 -15
- package/dist/production/src/actions/definition/index.js.map +0 -1
- package/dist/production/src/actions/definition/internal/ActionsFactory.cjs +0 -179
- package/dist/production/src/actions/definition/internal/ActionsFactory.cjs.map +0 -1
- package/dist/production/src/actions/definition/internal/ActionsFactory.js +0 -179
- package/dist/production/src/actions/definition/internal/ActionsFactory.js.map +0 -1
- package/dist/production/src/actions/definition/internal/store.cjs +0 -6
- package/dist/production/src/actions/definition/internal/store.cjs.map +0 -1
- package/dist/production/src/actions/definition/internal/store.js +0 -6
- package/dist/production/src/actions/definition/internal/store.js.map +0 -1
- package/dist/production/src/actions/definition/targets.cjs +0 -15
- package/dist/production/src/actions/definition/targets.cjs.map +0 -1
- package/dist/production/src/actions/definition/targets.js +0 -15
- package/dist/production/src/actions/definition/targets.js.map +0 -1
- package/dist/production/src/actions/definition/triggers.cjs +0 -12
- package/dist/production/src/actions/definition/triggers.cjs.map +0 -1
- package/dist/production/src/actions/definition/triggers.js +0 -12
- package/dist/production/src/actions/definition/triggers.js.map +0 -1
- package/dist/production/src/createSchema.cjs +0 -29
- package/dist/production/src/createSchema.cjs.map +0 -1
- package/dist/production/src/createSchema.js +0 -29
- package/dist/production/src/createSchema.js.map +0 -1
- package/dist/production/src/model/builder/ColumnBuilder.cjs +0 -36
- package/dist/production/src/model/builder/ColumnBuilder.cjs.map +0 -1
- package/dist/production/src/model/builder/ColumnBuilder.js +0 -37
- package/dist/production/src/model/builder/ColumnBuilder.js.map +0 -1
- package/dist/production/src/model/builder/EntityBuilder.cjs +0 -69
- package/dist/production/src/model/builder/EntityBuilder.cjs.map +0 -1
- package/dist/production/src/model/builder/EntityBuilder.js +0 -70
- package/dist/production/src/model/builder/EntityBuilder.js.map +0 -1
- package/dist/production/src/model/builder/FieldBuilder.cjs +0 -14
- package/dist/production/src/model/builder/FieldBuilder.cjs.map +0 -1
- package/dist/production/src/model/builder/FieldBuilder.js +0 -15
- package/dist/production/src/model/builder/FieldBuilder.js.map +0 -1
- package/dist/production/src/model/builder/ManyHasManyBuilder.cjs +0 -35
- package/dist/production/src/model/builder/ManyHasManyBuilder.cjs.map +0 -1
- package/dist/production/src/model/builder/ManyHasManyBuilder.js +0 -36
- package/dist/production/src/model/builder/ManyHasManyBuilder.js.map +0 -1
- package/dist/production/src/model/builder/ManyHasOneBuilder.cjs +0 -36
- package/dist/production/src/model/builder/ManyHasOneBuilder.cjs.map +0 -1
- package/dist/production/src/model/builder/ManyHasOneBuilder.js +0 -37
- package/dist/production/src/model/builder/ManyHasOneBuilder.js.map +0 -1
- package/dist/production/src/model/builder/OneHasManyBuilder.cjs +0 -44
- package/dist/production/src/model/builder/OneHasManyBuilder.cjs.map +0 -1
- package/dist/production/src/model/builder/OneHasManyBuilder.js +0 -45
- package/dist/production/src/model/builder/OneHasManyBuilder.js.map +0 -1
- package/dist/production/src/model/builder/OneHasOneBuilder.cjs +0 -46
- package/dist/production/src/model/builder/OneHasOneBuilder.cjs.map +0 -1
- package/dist/production/src/model/builder/OneHasOneBuilder.js +0 -47
- package/dist/production/src/model/builder/OneHasOneBuilder.js.map +0 -1
- package/dist/production/src/model/builder/SchemaBuilder.cjs +0 -40
- package/dist/production/src/model/builder/SchemaBuilder.cjs.map +0 -1
- package/dist/production/src/model/builder/SchemaBuilder.js +0 -40
- package/dist/production/src/model/builder/SchemaBuilder.js.map +0 -1
- package/dist/production/src/model/builder/SchemaBuilderError.cjs +0 -6
- package/dist/production/src/model/builder/SchemaBuilderError.cjs.map +0 -1
- package/dist/production/src/model/builder/SchemaBuilderError.js +0 -6
- package/dist/production/src/model/builder/SchemaBuilderError.js.map +0 -1
- package/dist/production/src/model/builder/SchemaBuilderInternal.cjs +0 -153
- package/dist/production/src/model/builder/SchemaBuilderInternal.cjs.map +0 -1
- package/dist/production/src/model/builder/SchemaBuilderInternal.js +0 -154
- package/dist/production/src/model/builder/SchemaBuilderInternal.js.map +0 -1
- package/dist/production/src/model/builder/internal/ColumnProcessor.cjs +0 -34
- package/dist/production/src/model/builder/internal/ColumnProcessor.cjs.map +0 -1
- package/dist/production/src/model/builder/internal/ColumnProcessor.js +0 -35
- package/dist/production/src/model/builder/internal/ColumnProcessor.js.map +0 -1
- package/dist/production/src/model/builder/internal/ManyHasManyProcessor.cjs +0 -54
- package/dist/production/src/model/builder/internal/ManyHasManyProcessor.cjs.map +0 -1
- package/dist/production/src/model/builder/internal/ManyHasManyProcessor.js +0 -55
- package/dist/production/src/model/builder/internal/ManyHasManyProcessor.js.map +0 -1
- package/dist/production/src/model/builder/internal/ManyHasOneProcessor.cjs +0 -46
- package/dist/production/src/model/builder/internal/ManyHasOneProcessor.cjs.map +0 -1
- package/dist/production/src/model/builder/internal/ManyHasOneProcessor.js +0 -47
- package/dist/production/src/model/builder/internal/ManyHasOneProcessor.js.map +0 -1
- package/dist/production/src/model/builder/internal/OneHasManyProcessor.cjs +0 -44
- package/dist/production/src/model/builder/internal/OneHasManyProcessor.cjs.map +0 -1
- package/dist/production/src/model/builder/internal/OneHasManyProcessor.js +0 -45
- package/dist/production/src/model/builder/internal/OneHasManyProcessor.js.map +0 -1
- package/dist/production/src/model/builder/internal/OneHasOneProcessor.cjs +0 -50
- package/dist/production/src/model/builder/internal/OneHasOneProcessor.cjs.map +0 -1
- package/dist/production/src/model/builder/internal/OneHasOneProcessor.js +0 -51
- package/dist/production/src/model/builder/internal/OneHasOneProcessor.js.map +0 -1
- package/dist/production/src/model/definition/EnumDefinition.cjs +0 -13
- package/dist/production/src/model/definition/EnumDefinition.cjs.map +0 -1
- package/dist/production/src/model/definition/EnumDefinition.js +0 -13
- package/dist/production/src/model/definition/EnumDefinition.js.map +0 -1
- package/dist/production/src/model/definition/EventLogDefinition.cjs +0 -9
- package/dist/production/src/model/definition/EventLogDefinition.cjs.map +0 -1
- package/dist/production/src/model/definition/EventLogDefinition.js +0 -9
- package/dist/production/src/model/definition/EventLogDefinition.js.map +0 -1
- package/dist/production/src/model/definition/IndexDefinition.cjs +0 -17
- package/dist/production/src/model/definition/IndexDefinition.cjs.map +0 -1
- package/dist/production/src/model/definition/IndexDefinition.js +0 -17
- package/dist/production/src/model/definition/IndexDefinition.js.map +0 -1
- package/dist/production/src/model/definition/OrderByDefinition.cjs +0 -30
- package/dist/production/src/model/definition/OrderByDefinition.cjs.map +0 -1
- package/dist/production/src/model/definition/OrderByDefinition.js +0 -30
- package/dist/production/src/model/definition/OrderByDefinition.js.map +0 -1
- package/dist/production/src/model/definition/UniqueDefinition.cjs +0 -17
- package/dist/production/src/model/definition/UniqueDefinition.cjs.map +0 -1
- package/dist/production/src/model/definition/UniqueDefinition.js +0 -17
- package/dist/production/src/model/definition/UniqueDefinition.js.map +0 -1
- package/dist/production/src/model/definition/ViewDefinition.cjs +0 -27
- package/dist/production/src/model/definition/ViewDefinition.cjs.map +0 -1
- package/dist/production/src/model/definition/ViewDefinition.js +0 -27
- package/dist/production/src/model/definition/ViewDefinition.js.map +0 -1
- package/dist/production/src/model/definition/extensions.cjs +0 -16
- package/dist/production/src/model/definition/extensions.cjs.map +0 -1
- package/dist/production/src/model/definition/extensions.js +0 -16
- package/dist/production/src/model/definition/extensions.js.map +0 -1
- package/dist/production/src/model/definition/fieldDefinitions/ColumnDefinition.cjs +0 -140
- package/dist/production/src/model/definition/fieldDefinitions/ColumnDefinition.cjs.map +0 -1
- package/dist/production/src/model/definition/fieldDefinitions/ColumnDefinition.js +0 -140
- package/dist/production/src/model/definition/fieldDefinitions/ColumnDefinition.js.map +0 -1
- package/dist/production/src/model/definition/fieldDefinitions/FieldDefinition.cjs +0 -9
- package/dist/production/src/model/definition/fieldDefinitions/FieldDefinition.cjs.map +0 -1
- package/dist/production/src/model/definition/fieldDefinitions/FieldDefinition.js +0 -9
- package/dist/production/src/model/definition/fieldDefinitions/FieldDefinition.js.map +0 -1
- package/dist/production/src/model/definition/fieldDefinitions/ManyHasManyDefinition.cjs +0 -57
- package/dist/production/src/model/definition/fieldDefinitions/ManyHasManyDefinition.cjs.map +0 -1
- package/dist/production/src/model/definition/fieldDefinitions/ManyHasManyDefinition.js +0 -57
- package/dist/production/src/model/definition/fieldDefinitions/ManyHasManyDefinition.js.map +0 -1
- package/dist/production/src/model/definition/fieldDefinitions/ManyHasManyInverseDefinition.cjs +0 -36
- package/dist/production/src/model/definition/fieldDefinitions/ManyHasManyInverseDefinition.cjs.map +0 -1
- package/dist/production/src/model/definition/fieldDefinitions/ManyHasManyInverseDefinition.js +0 -36
- package/dist/production/src/model/definition/fieldDefinitions/ManyHasManyInverseDefinition.js.map +0 -1
- package/dist/production/src/model/definition/fieldDefinitions/ManyHasOneDefinition.cjs +0 -60
- package/dist/production/src/model/definition/fieldDefinitions/ManyHasOneDefinition.cjs.map +0 -1
- package/dist/production/src/model/definition/fieldDefinitions/ManyHasOneDefinition.js +0 -60
- package/dist/production/src/model/definition/fieldDefinitions/ManyHasOneDefinition.js.map +0 -1
- package/dist/production/src/model/definition/fieldDefinitions/OneHasManyDefinition.cjs +0 -36
- package/dist/production/src/model/definition/fieldDefinitions/OneHasManyDefinition.cjs.map +0 -1
- package/dist/production/src/model/definition/fieldDefinitions/OneHasManyDefinition.js +0 -36
- package/dist/production/src/model/definition/fieldDefinitions/OneHasManyDefinition.js.map +0 -1
- package/dist/production/src/model/definition/fieldDefinitions/OneHasOneDefinition.cjs +0 -64
- package/dist/production/src/model/definition/fieldDefinitions/OneHasOneDefinition.cjs.map +0 -1
- package/dist/production/src/model/definition/fieldDefinitions/OneHasOneDefinition.js +0 -64
- package/dist/production/src/model/definition/fieldDefinitions/OneHasOneDefinition.js.map +0 -1
- package/dist/production/src/model/definition/fieldDefinitions/OneHasOneInverseDefinition.cjs +0 -35
- package/dist/production/src/model/definition/fieldDefinitions/OneHasOneInverseDefinition.cjs.map +0 -1
- package/dist/production/src/model/definition/fieldDefinitions/OneHasOneInverseDefinition.js +0 -35
- package/dist/production/src/model/definition/fieldDefinitions/OneHasOneInverseDefinition.js.map +0 -1
- package/dist/production/src/model/definition/index.cjs +0 -80
- package/dist/production/src/model/definition/index.cjs.map +0 -1
- package/dist/production/src/model/definition/index.js +0 -81
- package/dist/production/src/model/definition/index.js.map +0 -1
- package/dist/production/src/model/definition/internal/EntityRegistry.cjs +0 -29
- package/dist/production/src/model/definition/internal/EntityRegistry.cjs.map +0 -1
- package/dist/production/src/model/definition/internal/EntityRegistry.js +0 -29
- package/dist/production/src/model/definition/internal/EntityRegistry.js.map +0 -1
- package/dist/production/src/model/definition/internal/EnumRegistry.cjs +0 -29
- package/dist/production/src/model/definition/internal/EnumRegistry.cjs.map +0 -1
- package/dist/production/src/model/definition/internal/EnumRegistry.js +0 -29
- package/dist/production/src/model/definition/internal/EnumRegistry.js.map +0 -1
- package/dist/production/src/model/definition/internal/SchemaBuilder.cjs +0 -101
- package/dist/production/src/model/definition/internal/SchemaBuilder.cjs.map +0 -1
- package/dist/production/src/model/definition/internal/SchemaBuilder.js +0 -101
- package/dist/production/src/model/definition/internal/SchemaBuilder.js.map +0 -1
- package/dist/production/src/presets.cjs +0 -46
- package/dist/production/src/presets.cjs.map +0 -1
- package/dist/production/src/presets.js +0 -46
- package/dist/production/src/presets.js.map +0 -1
- package/dist/production/src/strict.cjs +0 -31
- package/dist/production/src/strict.cjs.map +0 -1
- package/dist/production/src/strict.js +0 -31
- package/dist/production/src/strict.js.map +0 -1
- package/dist/production/src/utils/MetadataStore.cjs +0 -19
- package/dist/production/src/utils/MetadataStore.cjs.map +0 -1
- package/dist/production/src/utils/MetadataStore.js +0 -19
- package/dist/production/src/utils/MetadataStore.js.map +0 -1
- package/dist/production/src/utils/assertNever.cjs +0 -7
- package/dist/production/src/utils/assertNever.cjs.map +0 -1
- package/dist/production/src/utils/assertNever.js +0 -7
- package/dist/production/src/utils/assertNever.js.map +0 -1
- package/dist/production/src/utils/filterEntityDefinition.cjs +0 -9
- package/dist/production/src/utils/filterEntityDefinition.cjs.map +0 -1
- package/dist/production/src/utils/filterEntityDefinition.js +0 -9
- package/dist/production/src/utils/filterEntityDefinition.js.map +0 -1
- package/dist/production/src/utils/tuple.cjs +0 -5
- package/dist/production/src/utils/tuple.cjs.map +0 -1
- package/dist/production/src/utils/tuple.js +0 -5
- package/dist/production/src/utils/tuple.js.map +0 -1
- package/dist/production/src/validation/index.cjs +0 -199
- package/dist/production/src/validation/index.cjs.map +0 -1
- package/dist/production/src/validation/index.js +0 -199
- package/dist/production/src/validation/index.js.map +0 -1
- package/dist/tests/cases/unit/createSchema.test.d.ts +0 -2
- package/dist/tests/cases/unit/createSchema.test.d.ts.map +0 -1
- package/dist/tests/cases/unit/extendEntity.test.d.ts +0 -2
- package/dist/tests/cases/unit/extendEntity.test.d.ts.map +0 -1
- package/dist/tests/cases/unit/orderBy.test.d.ts +0 -2
- package/dist/tests/cases/unit/orderBy.test.d.ts.map +0 -1
- package/dist/tests/cases/unit/readAclDefinitions.test.d.ts +0 -2
- package/dist/tests/cases/unit/readAclDefinitions.test.d.ts.map +0 -1
- package/dist/tests/cases/unit/readActions.test.d.ts +0 -2
- package/dist/tests/cases/unit/readActions.test.d.ts.map +0 -1
- package/dist/tests/tsconfig.tsbuildinfo +0 -1
- package/dist/types/acl/builder/EntityPermissionsBuilder.d.ts +0 -28
- package/dist/types/acl/builder/EntityPermissionsBuilder.d.ts.map +0 -1
- package/dist/types/acl/builder/EntitySelector.d.ts +0 -14
- package/dist/types/acl/builder/EntitySelector.d.ts.map +0 -1
- package/dist/types/acl/builder/FieldPermissionsBuilder.d.ts +0 -23
- package/dist/types/acl/builder/FieldPermissionsBuilder.d.ts.map +0 -1
- package/dist/types/acl/builder/FieldSelector.d.ts +0 -14
- package/dist/types/acl/builder/FieldSelector.d.ts.map +0 -1
- package/dist/types/acl/builder/PermissionOverrider.d.ts +0 -6
- package/dist/types/acl/builder/PermissionOverrider.d.ts.map +0 -1
- package/dist/types/acl/builder/PermissionsBuilder.d.ts +0 -24
- package/dist/types/acl/builder/PermissionsBuilder.d.ts.map +0 -1
- package/dist/types/acl/builder/PredicateReference.d.ts +0 -7
- package/dist/types/acl/builder/PredicateReference.d.ts.map +0 -1
- package/dist/types/acl/definition/aclExtensions.d.ts +0 -12
- package/dist/types/acl/definition/aclExtensions.d.ts.map +0 -1
- package/dist/types/acl/definition/customPrimary.d.ts +0 -4
- package/dist/types/acl/definition/customPrimary.d.ts.map +0 -1
- package/dist/types/acl/definition/index.d.ts +0 -8
- package/dist/types/acl/definition/index.d.ts.map +0 -1
- package/dist/types/acl/definition/internal/AclFactory.d.ts +0 -19
- package/dist/types/acl/definition/internal/AclFactory.d.ts.map +0 -1
- package/dist/types/acl/definition/internal/EntityPredicateResolver.d.ts +0 -16
- package/dist/types/acl/definition/internal/EntityPredicateResolver.d.ts.map +0 -1
- package/dist/types/acl/definition/internal/createPredicateName.d.ts +0 -3
- package/dist/types/acl/definition/internal/createPredicateName.d.ts.map +0 -1
- package/dist/types/acl/definition/internal/stores.d.ts +0 -7
- package/dist/types/acl/definition/internal/stores.d.ts.map +0 -1
- package/dist/types/acl/definition/permissions.d.ts +0 -18
- package/dist/types/acl/definition/permissions.d.ts.map +0 -1
- package/dist/types/acl/definition/references.d.ts +0 -10
- package/dist/types/acl/definition/references.d.ts.map +0 -1
- package/dist/types/acl/definition/roles.d.ts +0 -11
- package/dist/types/acl/definition/roles.d.ts.map +0 -1
- package/dist/types/acl/definition/variables.d.ts +0 -12
- package/dist/types/acl/definition/variables.d.ts.map +0 -1
- package/dist/types/actions/definition/index.d.ts +0 -5
- package/dist/types/actions/definition/index.d.ts.map +0 -1
- package/dist/types/actions/definition/internal/ActionsFactory.d.ts +0 -11
- package/dist/types/actions/definition/internal/ActionsFactory.d.ts.map +0 -1
- package/dist/types/actions/definition/internal/store.d.ts +0 -11
- package/dist/types/actions/definition/internal/store.d.ts.map +0 -1
- package/dist/types/actions/definition/targets.d.ts +0 -10
- package/dist/types/actions/definition/targets.d.ts.map +0 -1
- package/dist/types/actions/definition/triggers.d.ts +0 -30
- package/dist/types/actions/definition/triggers.d.ts.map +0 -1
- package/dist/types/createSchema.d.ts +0 -7
- package/dist/types/createSchema.d.ts.map +0 -1
- package/dist/types/index.d.ts +0 -88
- package/dist/types/index.d.ts.map +0 -1
- package/dist/types/model/builder/ColumnBuilder.d.ts +0 -31
- package/dist/types/model/builder/ColumnBuilder.d.ts.map +0 -1
- package/dist/types/model/builder/EntityBuilder.d.ts +0 -39
- package/dist/types/model/builder/EntityBuilder.d.ts.map +0 -1
- package/dist/types/model/builder/FieldBuilder.d.ts +0 -38
- package/dist/types/model/builder/FieldBuilder.d.ts.map +0 -1
- package/dist/types/model/builder/ManyHasManyBuilder.d.ts +0 -25
- package/dist/types/model/builder/ManyHasManyBuilder.d.ts.map +0 -1
- package/dist/types/model/builder/ManyHasOneBuilder.d.ts +0 -26
- package/dist/types/model/builder/ManyHasOneBuilder.d.ts.map +0 -1
- package/dist/types/model/builder/OneHasManyBuilder.d.ts +0 -29
- package/dist/types/model/builder/OneHasManyBuilder.d.ts.map +0 -1
- package/dist/types/model/builder/OneHasOneBuilder.d.ts +0 -32
- package/dist/types/model/builder/OneHasOneBuilder.d.ts.map +0 -1
- package/dist/types/model/builder/SchemaBuilder.d.ts +0 -14
- package/dist/types/model/builder/SchemaBuilder.d.ts.map +0 -1
- package/dist/types/model/builder/SchemaBuilderError.d.ts +0 -3
- package/dist/types/model/builder/SchemaBuilderError.d.ts.map +0 -1
- package/dist/types/model/builder/SchemaBuilderInternal.d.ts +0 -22
- package/dist/types/model/builder/SchemaBuilderInternal.d.ts.map +0 -1
- package/dist/types/model/builder/internal/ColumnProcessor.d.ts +0 -10
- package/dist/types/model/builder/internal/ColumnProcessor.d.ts.map +0 -1
- package/dist/types/model/builder/internal/FieldProcessor.d.ts +0 -9
- package/dist/types/model/builder/internal/FieldProcessor.d.ts.map +0 -1
- package/dist/types/model/builder/internal/ManyHasManyProcessor.d.ts +0 -11
- package/dist/types/model/builder/internal/ManyHasManyProcessor.d.ts.map +0 -1
- package/dist/types/model/builder/internal/ManyHasOneProcessor.d.ts +0 -11
- package/dist/types/model/builder/internal/ManyHasOneProcessor.d.ts.map +0 -1
- package/dist/types/model/builder/internal/OneHasManyProcessor.d.ts +0 -11
- package/dist/types/model/builder/internal/OneHasManyProcessor.d.ts.map +0 -1
- package/dist/types/model/builder/internal/OneHasOneProcessor.d.ts +0 -11
- package/dist/types/model/builder/internal/OneHasOneProcessor.d.ts.map +0 -1
- package/dist/types/model/builder/types.d.ts +0 -4
- package/dist/types/model/builder/types.d.ts.map +0 -1
- package/dist/types/model/definition/EnumDefinition.d.ts +0 -6
- package/dist/types/model/definition/EnumDefinition.d.ts.map +0 -1
- package/dist/types/model/definition/EventLogDefinition.d.ts +0 -2
- package/dist/types/model/definition/EventLogDefinition.d.ts.map +0 -1
- package/dist/types/model/definition/IndexDefinition.d.ts +0 -7
- package/dist/types/model/definition/IndexDefinition.d.ts.map +0 -1
- package/dist/types/model/definition/OrderByDefinition.d.ts +0 -11
- package/dist/types/model/definition/OrderByDefinition.d.ts.map +0 -1
- package/dist/types/model/definition/UniqueDefinition.d.ts +0 -14
- package/dist/types/model/definition/UniqueDefinition.d.ts.map +0 -1
- package/dist/types/model/definition/ViewDefinition.d.ts +0 -9
- package/dist/types/model/definition/ViewDefinition.d.ts.map +0 -1
- package/dist/types/model/definition/context.d.ts +0 -13
- package/dist/types/model/definition/context.d.ts.map +0 -1
- package/dist/types/model/definition/extensions.d.ts +0 -15
- package/dist/types/model/definition/extensions.d.ts.map +0 -1
- package/dist/types/model/definition/fieldDefinitions/ColumnDefinition.d.ts +0 -55
- package/dist/types/model/definition/fieldDefinitions/ColumnDefinition.d.ts.map +0 -1
- package/dist/types/model/definition/fieldDefinitions/FieldDefinition.d.ts +0 -15
- package/dist/types/model/definition/fieldDefinitions/FieldDefinition.d.ts.map +0 -1
- package/dist/types/model/definition/fieldDefinitions/ManyHasManyDefinition.d.ts +0 -19
- package/dist/types/model/definition/fieldDefinitions/ManyHasManyDefinition.d.ts.map +0 -1
- package/dist/types/model/definition/fieldDefinitions/ManyHasManyInverseDefinition.d.ts +0 -16
- package/dist/types/model/definition/fieldDefinitions/ManyHasManyInverseDefinition.d.ts.map +0 -1
- package/dist/types/model/definition/fieldDefinitions/ManyHasOneDefinition.d.ts +0 -23
- package/dist/types/model/definition/fieldDefinitions/ManyHasOneDefinition.d.ts.map +0 -1
- package/dist/types/model/definition/fieldDefinitions/OneHasManyDefinition.d.ts +0 -16
- package/dist/types/model/definition/fieldDefinitions/OneHasManyDefinition.d.ts.map +0 -1
- package/dist/types/model/definition/fieldDefinitions/OneHasOneDefinition.d.ts +0 -25
- package/dist/types/model/definition/fieldDefinitions/OneHasOneDefinition.d.ts.map +0 -1
- package/dist/types/model/definition/fieldDefinitions/OneHasOneInverseDefinition.d.ts +0 -17
- package/dist/types/model/definition/fieldDefinitions/OneHasOneInverseDefinition.d.ts.map +0 -1
- package/dist/types/model/definition/fieldDefinitions/index.d.ts +0 -9
- package/dist/types/model/definition/fieldDefinitions/index.d.ts.map +0 -1
- package/dist/types/model/definition/index.d.ts +0 -27
- package/dist/types/model/definition/index.d.ts.map +0 -1
- package/dist/types/model/definition/internal/EntityRegistry.d.ts +0 -8
- package/dist/types/model/definition/internal/EntityRegistry.d.ts.map +0 -1
- package/dist/types/model/definition/internal/EnumRegistry.d.ts +0 -8
- package/dist/types/model/definition/internal/EnumRegistry.d.ts.map +0 -1
- package/dist/types/model/definition/internal/SchemaBuilder.d.ts +0 -22
- package/dist/types/model/definition/internal/SchemaBuilder.d.ts.map +0 -1
- package/dist/types/model/definition/internal/index.d.ts +0 -4
- package/dist/types/model/definition/internal/index.d.ts.map +0 -1
- package/dist/types/model/definition/types.d.ts +0 -6
- package/dist/types/model/definition/types.d.ts.map +0 -1
- package/dist/types/model/index.d.ts +0 -10
- package/dist/types/model/index.d.ts.map +0 -1
- package/dist/types/presets.d.ts +0 -9
- package/dist/types/presets.d.ts.map +0 -1
- package/dist/types/strict.d.ts +0 -22
- package/dist/types/strict.d.ts.map +0 -1
- package/dist/types/tsconfig.tsbuildinfo +0 -1
- package/dist/types/utils/MetadataStore.d.ts +0 -7
- package/dist/types/utils/MetadataStore.d.ts.map +0 -1
- package/dist/types/utils/assertNever.d.ts +0 -2
- package/dist/types/utils/assertNever.d.ts.map +0 -1
- package/dist/types/utils/decorators.d.ts +0 -5
- package/dist/types/utils/decorators.d.ts.map +0 -1
- package/dist/types/utils/filterEntityDefinition.d.ts +0 -4
- package/dist/types/utils/filterEntityDefinition.d.ts.map +0 -1
- package/dist/types/utils/index.d.ts +0 -6
- package/dist/types/utils/index.d.ts.map +0 -1
- package/dist/types/utils/tuple.d.ts +0 -2
- package/dist/types/utils/tuple.d.ts.map +0 -1
- package/dist/types/validation/index.d.ts +0 -57
- package/dist/types/validation/index.d.ts.map +0 -1
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@contember/schema-definition",
|
|
3
|
-
"version": "2.1.0-alpha.
|
|
3
|
+
"version": "2.1.0-alpha.35",
|
|
4
4
|
"license": "Apache-2.0",
|
|
5
5
|
"main": "./dist/production/index.js",
|
|
6
6
|
"typings": "./dist/types/index.d.ts",
|
|
@@ -23,16 +23,21 @@
|
|
|
23
23
|
}
|
|
24
24
|
},
|
|
25
25
|
"dependencies": {
|
|
26
|
-
"@contember/schema": "
|
|
27
|
-
"@contember/schema-utils": "
|
|
28
|
-
"reflect-metadata": "
|
|
29
|
-
"fast-deep-equal": "
|
|
26
|
+
"@contember/schema": "workspace:*",
|
|
27
|
+
"@contember/schema-utils": "workspace:*",
|
|
28
|
+
"reflect-metadata": "catalog:",
|
|
29
|
+
"fast-deep-equal": "catalog:"
|
|
30
30
|
},
|
|
31
31
|
"devDependencies": {
|
|
32
|
-
"graphql": "
|
|
32
|
+
"graphql": "catalog:"
|
|
33
33
|
},
|
|
34
34
|
"peerDependencies": {
|
|
35
|
-
"graphql": "
|
|
35
|
+
"graphql": "catalog:"
|
|
36
36
|
},
|
|
37
|
-
"type": "module"
|
|
37
|
+
"type": "module",
|
|
38
|
+
"repository": {
|
|
39
|
+
"type": "git",
|
|
40
|
+
"url": "git+https://github.com/contember/contember.git",
|
|
41
|
+
"directory": "packages/schema-definition"
|
|
42
|
+
}
|
|
38
43
|
}
|
|
@@ -121,7 +121,7 @@ export default class EntityPermissionsBuilder {
|
|
|
121
121
|
tuple(
|
|
122
122
|
it,
|
|
123
123
|
Object.values(it.fields).filter(field => fieldSelectorConst.matches(this.schema, it, field)),
|
|
124
|
-
)
|
|
124
|
+
)
|
|
125
125
|
)
|
|
126
126
|
.reduce<[Model.Entity, Model.AnyField][]>(
|
|
127
127
|
(acc, [entity, fields]) => [...acc, ...fields.map(it => tuple(entity, it))],
|
|
@@ -21,8 +21,8 @@ export default class EntitySelector {
|
|
|
21
21
|
public havingRelation(name: string, targetEntityName?: string) {
|
|
22
22
|
return this.matching(
|
|
23
23
|
(schema, entity) =>
|
|
24
|
-
entity.fields[name]
|
|
25
|
-
acceptFieldVisitor(schema, entity, name, {
|
|
24
|
+
entity.fields[name]
|
|
25
|
+
&& acceptFieldVisitor(schema, entity, name, {
|
|
26
26
|
visitColumn: () => false,
|
|
27
27
|
visitRelation: ({ targetEntity }) => !targetEntityName || targetEntity.name === targetEntityName,
|
|
28
28
|
}),
|
|
@@ -27,18 +27,20 @@ export default class PermissionOverrider {
|
|
|
27
27
|
? {}
|
|
28
28
|
: {
|
|
29
29
|
delete: overrides.operations.delete ?? original.operations.delete,
|
|
30
|
-
|
|
30
|
+
}),
|
|
31
31
|
...(original.operations.customPrimary === undefined && overrides.operations.customPrimary === undefined
|
|
32
32
|
? {}
|
|
33
33
|
: {
|
|
34
34
|
customPrimary: overrides.operations.customPrimary ?? original.operations.customPrimary,
|
|
35
|
-
|
|
36
|
-
...(original.operations.noRoot || overrides.operations.noRoot
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
35
|
+
}),
|
|
36
|
+
...(original.operations.noRoot || overrides.operations.noRoot
|
|
37
|
+
? {
|
|
38
|
+
noRoot: [
|
|
39
|
+
...(original.operations.noRoot || []),
|
|
40
|
+
...(overrides.operations.noRoot || []),
|
|
41
|
+
],
|
|
42
|
+
}
|
|
43
|
+
: {}),
|
|
42
44
|
},
|
|
43
45
|
}
|
|
44
46
|
}
|
|
@@ -38,9 +38,7 @@ class PermissionsBuilder {
|
|
|
38
38
|
entitySelector = EntitySelector.named(...entitySelector)
|
|
39
39
|
}
|
|
40
40
|
const entitySelectorWithType = entitySelector
|
|
41
|
-
const entities = Object.values(this.schema.entities).filter(entity =>
|
|
42
|
-
entitySelectorWithType.matches(this.schema, entity),
|
|
43
|
-
)
|
|
41
|
+
const entities = Object.values(this.schema.entities).filter(entity => entitySelectorWithType.matches(this.schema, entity))
|
|
44
42
|
return new EntityPermissionsBuilder(this, entities)
|
|
45
43
|
}
|
|
46
44
|
|
|
@@ -2,19 +2,18 @@ import { Acl, Model } from '@contember/schema'
|
|
|
2
2
|
import { createMetadataStore, DecoratorFunction, EntityConstructor } from '../../utils'
|
|
3
3
|
import { Role } from './roles'
|
|
4
4
|
|
|
5
|
-
export type EntityAclExtensionArgs =
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
}
|
|
5
|
+
export type EntityAclExtensionArgs = {
|
|
6
|
+
entity: Model.Entity
|
|
7
|
+
role: Role
|
|
8
|
+
permissions: Acl.EntityPermissions
|
|
9
|
+
}
|
|
11
10
|
|
|
12
11
|
const entityAclExtensionsStore = createMetadataStore<EntityAclExtension[]>([])
|
|
13
12
|
|
|
14
13
|
export type EntityAclExtension = (args: EntityAclExtensionArgs) => Acl.EntityPermissions
|
|
15
14
|
export const extendEntityAcl = <T>(extension: EntityAclExtension): DecoratorFunction<T> => {
|
|
16
|
-
return function
|
|
17
|
-
entityAclExtensionsStore.update(cls, current => [...current, extension])
|
|
15
|
+
return function(cls: EntityConstructor, context?: ClassDecoratorContext) {
|
|
16
|
+
entityAclExtensionsStore.update(cls, current => [...current, extension], context)
|
|
18
17
|
}
|
|
19
18
|
}
|
|
20
19
|
|
|
@@ -5,7 +5,7 @@ import { extendEntityAcl } from './aclExtensions'
|
|
|
5
5
|
export const allowCustomPrimary = (role?: Role | Role[]): DecoratorFunction<any> => {
|
|
6
6
|
return extendEntityAcl(({ permissions, role: currentRole }) => {
|
|
7
7
|
if (!role || role === currentRole || (Array.isArray(role) && role.includes(currentRole))) {
|
|
8
|
-
return { ...permissions, operations: { customPrimary: true } }
|
|
8
|
+
return { ...permissions, operations: { ...permissions.operations, customPrimary: true } }
|
|
9
9
|
}
|
|
10
10
|
return permissions
|
|
11
11
|
})
|
|
@@ -3,12 +3,9 @@ import { getEntity } from '@contember/schema-utils'
|
|
|
3
3
|
|
|
4
4
|
import { EntityPredicatesResolver } from './EntityPredicateResolver'
|
|
5
5
|
import { AllowDefinition } from '../permissions'
|
|
6
|
-
import {
|
|
7
|
-
allowDefinitionsStore,
|
|
8
|
-
EntityPermissionsDefinition,
|
|
9
|
-
} from './stores'
|
|
6
|
+
import { allowDefinitionsStore, EntityPermissionsDefinition } from './stores'
|
|
10
7
|
import { Role } from '../roles'
|
|
11
|
-
import {
|
|
8
|
+
import { VariableDefinition } from '../variables'
|
|
12
9
|
import { filterEntityDefinition } from '../../../utils'
|
|
13
10
|
import { applyEntityAclExtensions } from '../aclExtensions'
|
|
14
11
|
|
|
@@ -25,7 +22,7 @@ export class AclFactory {
|
|
|
25
22
|
const roles: Role[] = Object.values(exportedDefinitions).filter(it => it instanceof Role)
|
|
26
23
|
const variables: VariableDefinition[] = Object.values(exportedDefinitions).filter(it => it instanceof VariableDefinition)
|
|
27
24
|
|
|
28
|
-
const groupedPermissions =
|
|
25
|
+
const groupedPermissions = this.groupPermissions(entityLikeDefinition, roles)
|
|
29
26
|
|
|
30
27
|
return {
|
|
31
28
|
roles: Object.fromEntries(roles.map((role): [string, Acl.RolePermissions] => {
|
|
@@ -43,19 +40,25 @@ export class AclFactory {
|
|
|
43
40
|
}
|
|
44
41
|
}
|
|
45
42
|
|
|
46
|
-
private createPermissions(
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
entity.name,
|
|
56
|
-
withExtensions
|
|
57
|
-
|
|
58
|
-
|
|
43
|
+
private createPermissions(
|
|
44
|
+
rolePermissions: PermissionsByEntity | undefined,
|
|
45
|
+
entityLikeDefinition: Record<string, { new(): any }>,
|
|
46
|
+
role: Role,
|
|
47
|
+
): Acl.Permissions {
|
|
48
|
+
return Object.fromEntries(
|
|
49
|
+
Object.values(this.model.entities).map((entity): [string, Acl.EntityPermissions] | undefined => {
|
|
50
|
+
const permissions = rolePermissions ? this.createPermissionsFromAllow(rolePermissions, entity) : { predicates: {}, operations: {} }
|
|
51
|
+
const isEmpty = !rolePermissions?.has(entity.name)
|
|
52
|
+
const withExtensions = applyEntityAclExtensions(entityLikeDefinition[entity.name], { entity, permissions, role })
|
|
53
|
+
if (isEmpty && withExtensions === permissions) {
|
|
54
|
+
return undefined
|
|
55
|
+
}
|
|
56
|
+
return [
|
|
57
|
+
entity.name,
|
|
58
|
+
withExtensions,
|
|
59
|
+
]
|
|
60
|
+
}).filter(<T>(it: T | undefined): it is T => it !== undefined),
|
|
61
|
+
)
|
|
59
62
|
}
|
|
60
63
|
|
|
61
64
|
private createPermissionsFromAllow(rolePermissions: PermissionsByEntity, entity: Model.Entity): Acl.EntityPermissions {
|
|
@@ -88,7 +91,6 @@ export class AclFactory {
|
|
|
88
91
|
}
|
|
89
92
|
}
|
|
90
93
|
|
|
91
|
-
|
|
92
94
|
getNoRootOptions(entity: Model.Entity, permissions?: EntityPermissions): Acl.EntityOperations['noRoot'] {
|
|
93
95
|
const allowedRoot = new Set<Acl.Operation>()
|
|
94
96
|
const disallowedRoot = new Set<Acl.Operation>()
|
|
@@ -106,7 +108,6 @@ export class AclFactory {
|
|
|
106
108
|
}
|
|
107
109
|
}
|
|
108
110
|
}
|
|
109
|
-
|
|
110
111
|
}
|
|
111
112
|
return [...disallowedRoot.values()]
|
|
112
113
|
}
|
|
@@ -118,7 +119,7 @@ export class AclFactory {
|
|
|
118
119
|
}))
|
|
119
120
|
}
|
|
120
121
|
|
|
121
|
-
private
|
|
122
|
+
private groupPermissions(entityLikeDefinition: [string, { new(): any }][], roles: Role[]): PermissionsByRoleAndEntity {
|
|
122
123
|
const groupedPermissions: PermissionsByRoleAndEntity = new Map()
|
|
123
124
|
for (const [name, entity] of entityLikeDefinition) {
|
|
124
125
|
const initEntityPermissions = (role: Role): EntityPermissions => {
|
|
@@ -131,12 +132,17 @@ export class AclFactory {
|
|
|
131
132
|
return entityPermissions
|
|
132
133
|
}
|
|
133
134
|
const metadata: EntityPermissionsDefinition[] = allowDefinitionsStore.get(entity)
|
|
134
|
-
for (const { role,
|
|
135
|
+
for (const { role, factory } of metadata) {
|
|
135
136
|
if (!roles.includes(role)) {
|
|
136
137
|
throw `Role ${role.name} used on entity ${name} is not registered. Have you exported it?`
|
|
137
138
|
}
|
|
138
139
|
const entityPermissions = initEntityPermissions(role)
|
|
139
|
-
|
|
140
|
+
const entity = getEntity(this.model, name)
|
|
141
|
+
entityPermissions.definitions.push(factory({
|
|
142
|
+
model: this.model,
|
|
143
|
+
entity: getEntity(this.model, name),
|
|
144
|
+
except: (...fields) => (Object.keys(entity.fields)).filter(it => !fields.includes(it)),
|
|
145
|
+
}))
|
|
140
146
|
}
|
|
141
147
|
}
|
|
142
148
|
|
|
@@ -144,7 +150,6 @@ export class AclFactory {
|
|
|
144
150
|
}
|
|
145
151
|
}
|
|
146
152
|
|
|
147
|
-
|
|
148
153
|
export type EntityPermissions = { definitions: AllowDefinition<any>[] }
|
|
149
154
|
export type PermissionsByEntity = Map<string, EntityPermissions>
|
|
150
155
|
export type PermissionsByRoleAndEntity = Map<Role, PermissionsByEntity>
|
|
@@ -80,7 +80,6 @@ export class EntityPredicatesResolver {
|
|
|
80
80
|
return predicateNames[0]
|
|
81
81
|
}
|
|
82
82
|
|
|
83
|
-
|
|
84
83
|
const predicate = { or: predicateNames.map(it => this.predicates[it]) }
|
|
85
84
|
const origName = predicateNames.every(it => this.generatedNames.has(it)) ? createPredicateName(predicate) : predicateNames.join('_or_')
|
|
86
85
|
let predicateName = origName
|
|
@@ -102,7 +101,6 @@ export class EntityPredicatesResolver {
|
|
|
102
101
|
return Object.fromEntries(Object.entries(this.predicates).filter(([name]) => this.usedPredicates.includes(name)))
|
|
103
102
|
}
|
|
104
103
|
|
|
105
|
-
|
|
106
104
|
private static resolvePredicate(
|
|
107
105
|
model: Model.Schema,
|
|
108
106
|
entity: Model.Entity,
|
|
@@ -116,7 +114,9 @@ export class EntityPredicatesResolver {
|
|
|
116
114
|
return ctx.value.name
|
|
117
115
|
}
|
|
118
116
|
if (ctx.value instanceof PredicateEvaluationReference) {
|
|
119
|
-
throw `Predicate references are allowed only on relations. \nYou cannot use "can${upperCaseFirst(ctx.value.operation)}(${
|
|
117
|
+
throw `Predicate references are allowed only on relations. \nYou cannot use "can${upperCaseFirst(ctx.value.operation)}(${
|
|
118
|
+
ctx.value.field ? JSON.stringify(ctx.value.field) : ''
|
|
119
|
+
})" on a column "${ctx.column.name}" of entity "${ctx.entity.name}".`
|
|
120
120
|
}
|
|
121
121
|
return ctx.value
|
|
122
122
|
},
|
|
@@ -138,7 +138,7 @@ export class EntityPredicatesResolver {
|
|
|
138
138
|
return { [ctx.targetEntity.primary]: { isNull: false } }
|
|
139
139
|
}
|
|
140
140
|
const predicates = (whens as WhenDefinition[]).map(it =>
|
|
141
|
-
EntityPredicatesResolver.resolvePredicate(model, ctx.targetEntity, it, rolePermissionsByEntity)
|
|
141
|
+
EntityPredicatesResolver.resolvePredicate(model, ctx.targetEntity, it, rolePermissionsByEntity)
|
|
142
142
|
)
|
|
143
143
|
if (predicates.length > 1) {
|
|
144
144
|
return { or: predicates }
|
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
import { createMetadataStore } from '../../../utils/MetadataStore'
|
|
2
|
+
import { AllowDefinitionFactory } from '../permissions'
|
|
2
3
|
import { Role } from '../roles'
|
|
3
|
-
import { AllowDefinition } from '../permissions'
|
|
4
4
|
|
|
5
|
-
export type EntityPermissionsDefinition =
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
}
|
|
5
|
+
export type EntityPermissionsDefinition = {
|
|
6
|
+
factory: AllowDefinitionFactory<any>
|
|
7
|
+
role: Role<string>
|
|
8
|
+
}
|
|
10
9
|
export const allowDefinitionsStore = createMetadataStore<EntityPermissionsDefinition[]>([])
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Acl } from '@contember/schema'
|
|
1
|
+
import { Acl, Model } from '@contember/schema'
|
|
2
2
|
import { Role } from './roles'
|
|
3
3
|
import { VariableDefinition } from './variables'
|
|
4
4
|
import { PredicateEvaluationReference } from './references'
|
|
@@ -18,13 +18,19 @@ export interface AllowDefinition<E> {
|
|
|
18
18
|
delete?: true
|
|
19
19
|
}
|
|
20
20
|
|
|
21
|
-
export
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
21
|
+
export type AllowDefinitionFactory<E> = (args: {
|
|
22
|
+
model: Model.Schema
|
|
23
|
+
entity: Model.Entity<(keyof E) & string>
|
|
24
|
+
except: (...fields: (keyof E)[]) => (keyof E)[]
|
|
25
|
+
}) => AllowDefinition<E>
|
|
26
|
+
|
|
27
|
+
export const allow = <E, R extends Role<string>>(role: R | R[], args: AllowDefinition<E> | AllowDefinitionFactory<E>): DecoratorFunction<E> => {
|
|
28
|
+
return (entity: EntityConstructor<E>, context?: ClassDecoratorContext) => {
|
|
29
|
+
;(Array.isArray(role) ? role : [role]).forEach(role => {
|
|
30
|
+
allowDefinitionsStore.update(entity, val => [...val, {
|
|
31
|
+
factory: typeof args === 'function' ? args : () => args,
|
|
32
|
+
role,
|
|
33
|
+
}], context)
|
|
25
34
|
})
|
|
26
35
|
}
|
|
27
36
|
}
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
@@ -1,7 +1,11 @@
|
|
|
1
1
|
import { Role } from './roles'
|
|
2
2
|
import { Acl, Input } from '@contember/schema'
|
|
3
3
|
|
|
4
|
-
export class VariableDefinition<
|
|
4
|
+
export class VariableDefinition<
|
|
5
|
+
Name extends string = string,
|
|
6
|
+
Roles extends Role<string> = Role<string>,
|
|
7
|
+
Variable extends Acl.Variable = Acl.Variable,
|
|
8
|
+
> {
|
|
5
9
|
constructor(
|
|
6
10
|
public readonly name: Name,
|
|
7
11
|
public readonly roles: Roles[],
|
|
@@ -6,10 +6,6 @@ import { ActionsTarget } from '../targets'
|
|
|
6
6
|
import { Kind, parse, SelectionNode, ValueNode } from 'graphql'
|
|
7
7
|
|
|
8
8
|
export class ActionsFactory {
|
|
9
|
-
constructor(
|
|
10
|
-
) {
|
|
11
|
-
}
|
|
12
|
-
|
|
13
9
|
public create(
|
|
14
10
|
exportedDefinitions: Record<string, any>,
|
|
15
11
|
): Actions.Schema {
|
|
@@ -24,10 +20,12 @@ export class ActionsFactory {
|
|
|
24
20
|
targetsRegistry.register(name, def.definition)
|
|
25
21
|
}
|
|
26
22
|
|
|
27
|
-
const triggersDef = entityLikeDefinition.flatMap(([, entity]) =>
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
23
|
+
const triggersDef = entityLikeDefinition.flatMap(([, entity]) =>
|
|
24
|
+
triggersStore.get(entity).map(it => ({
|
|
25
|
+
...it,
|
|
26
|
+
entity,
|
|
27
|
+
}))
|
|
28
|
+
)
|
|
31
29
|
|
|
32
30
|
const triggerNames = triggersDef.map(it => it.definition.name).filter((it): it is string => !!it)
|
|
33
31
|
triggerNames.forEach((it, index, arr) => {
|
|
@@ -57,7 +55,6 @@ export class ActionsFactory {
|
|
|
57
55
|
triggers[name] = trigger
|
|
58
56
|
}
|
|
59
57
|
|
|
60
|
-
|
|
61
58
|
return { triggers, targets: targetsRegistry.getTargets() }
|
|
62
59
|
}
|
|
63
60
|
|
|
@@ -101,6 +98,7 @@ export class ActionsFactory {
|
|
|
101
98
|
watch: this.parseSelection(trigger.watch),
|
|
102
99
|
selection: trigger.selection ? this.parseSelection(trigger.selection) : undefined,
|
|
103
100
|
priority: trigger.priority,
|
|
101
|
+
...('withNodes' in trigger ? { withNodes: trigger.withNodes } : {}),
|
|
104
102
|
}
|
|
105
103
|
}
|
|
106
104
|
|
|
@@ -35,15 +35,17 @@ export type BasicTriggerDefinition =
|
|
|
35
35
|
export type WatchTriggerDefinition =
|
|
36
36
|
& {
|
|
37
37
|
readonly watch: Actions.SelectionNode | string
|
|
38
|
+
readonly withNodes?: boolean
|
|
38
39
|
}
|
|
39
40
|
& CommonTriggerDefinition
|
|
40
41
|
& TargetDefinition
|
|
41
42
|
|
|
42
|
-
export const trigger =
|
|
43
|
-
|
|
44
|
-
}
|
|
45
|
-
|
|
46
|
-
export const watch = <T>(definition: WatchTriggerDefinition): DecoratorFunction<T> => (entity: EntityConstructor<T>) => {
|
|
47
|
-
triggersStore.update(entity, it => [...it, { type: 'watch', definition }])
|
|
48
|
-
}
|
|
43
|
+
export const trigger =
|
|
44
|
+
<T>(definition: BasicTriggerDefinition): DecoratorFunction<T> => (entity: EntityConstructor<T>, context?: ClassDecoratorContext) => {
|
|
45
|
+
triggersStore.update(entity, it => [...it, { type: 'basic', definition }], context)
|
|
46
|
+
}
|
|
49
47
|
|
|
48
|
+
export const watch =
|
|
49
|
+
<T>(definition: WatchTriggerDefinition): DecoratorFunction<T> => (entity: EntityConstructor<T>, context?: ClassDecoratorContext) => {
|
|
50
|
+
triggersStore.update(entity, it => [...it, { type: 'watch', definition }], context)
|
|
51
|
+
}
|
package/src/createSchema.ts
CHANGED
|
@@ -4,7 +4,7 @@ import * as AclDefinition from './acl/definition'
|
|
|
4
4
|
import * as ActionsDefinition from './actions/definition'
|
|
5
5
|
import { Model, Schema } from '@contember/schema'
|
|
6
6
|
import { emptySchema } from '@contember/schema-utils'
|
|
7
|
-
import { allStrict,
|
|
7
|
+
import { allStrict, StrictDefinitionValidator, StrictOptions } from './strict'
|
|
8
8
|
|
|
9
9
|
export const createSchema = (definitions: Record<string, any>, modifyCallback?: (schema: Schema) => Schema, options?: {
|
|
10
10
|
strict?: boolean | StrictOptions
|
package/src/index.ts
CHANGED
|
@@ -14,20 +14,19 @@ export type { Role }
|
|
|
14
14
|
export type { VariableDefinition } from './acl/definition'
|
|
15
15
|
export type {
|
|
16
16
|
ColumnDefinition,
|
|
17
|
+
EnumDefinition,
|
|
17
18
|
FieldDefinition,
|
|
18
|
-
OneHasOneDefinition,
|
|
19
|
-
OneHasOneInverseDefinition,
|
|
20
|
-
OneHasManyDefinition,
|
|
21
|
-
ManyHasOneDefinition,
|
|
22
19
|
ManyHasManyDefinition,
|
|
23
20
|
ManyHasManyInverseDefinition,
|
|
24
|
-
|
|
21
|
+
ManyHasOneDefinition,
|
|
22
|
+
OneHasManyDefinition,
|
|
23
|
+
OneHasOneDefinition,
|
|
24
|
+
OneHasOneInverseDefinition,
|
|
25
25
|
} from './model/definition'
|
|
26
26
|
|
|
27
|
-
export { AclDefinition, ActionsDefinition,
|
|
27
|
+
export { AclDefinition, ActionsDefinition, createSchema, InputValidation, SchemaDefinition }
|
|
28
28
|
|
|
29
29
|
export const c = {
|
|
30
|
-
|
|
31
30
|
// ACL
|
|
32
31
|
// ACL entity decorators
|
|
33
32
|
AllowCustomPrimary: AclDefinition.allowCustomPrimary,
|
|
@@ -43,7 +42,6 @@ export const c = {
|
|
|
43
42
|
canUpdate: AclDefinition.canUpdate,
|
|
44
43
|
canDelete: AclDefinition.canDelete,
|
|
45
44
|
|
|
46
|
-
|
|
47
45
|
// Actions
|
|
48
46
|
// Actions entity decorators
|
|
49
47
|
Watch: ActionsDefinition.watch,
|
|
@@ -51,7 +49,6 @@ export const c = {
|
|
|
51
49
|
// Actions factories
|
|
52
50
|
createActionsTarget: ActionsDefinition.createTarget,
|
|
53
51
|
|
|
54
|
-
|
|
55
52
|
// Model
|
|
56
53
|
// Model entity decorators
|
|
57
54
|
ExtendEntity: SchemaDefinition.extendEntity,
|
|
@@ -81,7 +78,6 @@ export const c = {
|
|
|
81
78
|
// Model factories
|
|
82
79
|
createEnum: SchemaDefinition.createEnum,
|
|
83
80
|
|
|
84
|
-
|
|
85
81
|
// Validation
|
|
86
82
|
// Validation field decorators
|
|
87
83
|
Assert: InputValidation.assert,
|
|
@@ -94,5 +90,4 @@ export const c = {
|
|
|
94
90
|
ValidateWhen: InputValidation.when,
|
|
95
91
|
// Validation utilities
|
|
96
92
|
rules: InputValidation.rules,
|
|
97
|
-
|
|
98
93
|
}
|
|
@@ -16,11 +16,13 @@ class ColumnBuilder<O extends PartialColumnOptions<never> = PartialColumnOptions
|
|
|
16
16
|
type: Model.ColumnType,
|
|
17
17
|
typeOptions: ColumnBuilder.TypeOptions = {},
|
|
18
18
|
): ColumnBuilder<O & PartialColumnOptions<'type'>> {
|
|
19
|
-
return new ColumnBuilder<O & PartialColumnOptions<'type'>>(
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
19
|
+
return new ColumnBuilder<O & PartialColumnOptions<'type'>>(
|
|
20
|
+
{
|
|
21
|
+
...(this.options as object),
|
|
22
|
+
type: type,
|
|
23
|
+
...typeOptions,
|
|
24
|
+
} as O & PartialColumnOptions<'type'>,
|
|
25
|
+
)
|
|
24
26
|
}
|
|
25
27
|
|
|
26
28
|
public nullable(): ColumnBuilder<O> {
|
|
@@ -27,7 +27,6 @@ export default class ColumnProcessor implements FieldProcessor<ColumnBuilder.Opt
|
|
|
27
27
|
nullable: options.nullable === undefined ? true : options.nullable,
|
|
28
28
|
}
|
|
29
29
|
if (type === Model.ColumnType.Enum) {
|
|
30
|
-
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
31
30
|
return { ...common, type: type, columnType: options.enumName! }
|
|
32
31
|
}
|
|
33
32
|
return {
|
|
@@ -1,17 +1,21 @@
|
|
|
1
1
|
import { extendEntity } from './extensions'
|
|
2
2
|
import { DecoratorFunction } from '../../utils'
|
|
3
|
+
import { Model } from '@contember/schema'
|
|
3
4
|
|
|
4
|
-
export type IndexOptions<T> = {
|
|
5
|
+
export type IndexOptions<T> = {
|
|
6
|
+
fields: (keyof T)[]
|
|
7
|
+
method?: Model.IndexMethod
|
|
8
|
+
}
|
|
5
9
|
export function Index<T>(options: IndexOptions<T>): DecoratorFunction<T>
|
|
6
10
|
export function Index<T>(...fields: (keyof T)[]): DecoratorFunction<T>
|
|
7
11
|
export function Index<T>(options: IndexOptions<T> | keyof T, ...args: (keyof T)[]): DecoratorFunction<T> {
|
|
8
12
|
return extendEntity(({ entity }) => {
|
|
9
|
-
const
|
|
13
|
+
const indexDef = (typeof options !== 'object' ? { fields: [options, ...args] } : options) as { fields: string[]; method?: Model.IndexMethod }
|
|
10
14
|
return {
|
|
11
15
|
...entity,
|
|
12
16
|
indexes: [
|
|
13
17
|
...entity.indexes,
|
|
14
|
-
|
|
18
|
+
indexDef,
|
|
15
19
|
],
|
|
16
20
|
}
|
|
17
21
|
})
|
|
@@ -2,15 +2,16 @@ import { Model } from '@contember/schema'
|
|
|
2
2
|
import { extendEntity } from './extensions'
|
|
3
3
|
import { DecoratorFunction } from '../../utils'
|
|
4
4
|
|
|
5
|
-
|
|
6
5
|
export type OrderByDirection = Model.OrderDirection | `${Model.OrderDirection}`
|
|
7
6
|
export type OrderByOptions = { path: string[]; direction?: OrderByDirection }
|
|
8
7
|
|
|
9
|
-
|
|
10
8
|
export function OrderBy<T>(options: OrderByOptions): DecoratorFunction<T>
|
|
11
9
|
export function OrderBy<T>(options: OrderByOptions[]): DecoratorFunction<T>
|
|
12
10
|
export function OrderBy<T>(path: (keyof T) & string, direction?: OrderByDirection): DecoratorFunction<T>
|
|
13
|
-
export function OrderBy<T>(
|
|
11
|
+
export function OrderBy<T>(
|
|
12
|
+
options: OrderByOptions | OrderByOptions[] | ((keyof T) & string),
|
|
13
|
+
direction?: `${Model.OrderDirection}`,
|
|
14
|
+
): DecoratorFunction<T> {
|
|
14
15
|
return extendEntity(({ entity }) => {
|
|
15
16
|
const normalize = (path: string[], direction?: OrderByDirection): Model.OrderBy => ({
|
|
16
17
|
path,
|
|
@@ -27,8 +28,9 @@ export function OrderBy<T>(options: OrderByOptions | OrderByOptions[] | ((keyof
|
|
|
27
28
|
})()
|
|
28
29
|
|
|
29
30
|
if (entity.orderBy?.length) {
|
|
30
|
-
|
|
31
|
-
|
|
31
|
+
console.warn(
|
|
32
|
+
`DEPRECATED: The "order by" property for the entity ${entity.name} has already been defined. Using multiple decorators can lead to unexpected order. Please provide an array containing all the 'order by' items as an input.`,
|
|
33
|
+
)
|
|
32
34
|
}
|
|
33
35
|
|
|
34
36
|
return {
|
|
@@ -2,19 +2,21 @@ import { extendEntity } from './extensions'
|
|
|
2
2
|
import { DecoratorFunction } from '../../utils'
|
|
3
3
|
import { Model } from '@contember/schema'
|
|
4
4
|
|
|
5
|
-
export type UniqueOptions<T> =
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
} & (
|
|
9
|
-
| {
|
|
10
|
-
index?: false
|
|
11
|
-
timing?: Model.ConstraintTiming
|
|
12
|
-
}
|
|
13
|
-
| {
|
|
14
|
-
index: true
|
|
15
|
-
nulls?: Model.NullsDistinctBehaviour
|
|
5
|
+
export type UniqueOptions<T> =
|
|
6
|
+
& {
|
|
7
|
+
fields: (keyof T & string)[]
|
|
16
8
|
}
|
|
17
|
-
|
|
9
|
+
& (
|
|
10
|
+
| {
|
|
11
|
+
index?: false
|
|
12
|
+
timing?: Model.ConstraintTiming
|
|
13
|
+
}
|
|
14
|
+
| {
|
|
15
|
+
index: true
|
|
16
|
+
nulls?: Model.NullsDistinctBehaviour
|
|
17
|
+
method?: Model.IndexMethod
|
|
18
|
+
}
|
|
19
|
+
)
|
|
18
20
|
export function Unique<T>(options: UniqueOptions<T>): DecoratorFunction<T>
|
|
19
21
|
export function Unique<T>(...fields: (keyof T & string)[]): DecoratorFunction<T>
|
|
20
22
|
export function Unique<T>(options: UniqueOptions<T> | keyof T & string, ...args: (keyof T & string)[]): DecoratorFunction<T> {
|
|
@@ -17,8 +17,8 @@ const entityExtensionsStore = createMetadataStore<EntityExtension[]>([])
|
|
|
17
17
|
|
|
18
18
|
export type EntityExtension = (args: EntityExtensionArgs) => Model.Entity
|
|
19
19
|
export const extendEntity = <T>(extension: EntityExtension): DecoratorFunction<T> => {
|
|
20
|
-
return function
|
|
21
|
-
entityExtensionsStore.update(cls, current => [...current, extension])
|
|
20
|
+
return function(cls: EntityConstructor, context?: ClassDecoratorContext) {
|
|
21
|
+
entityExtensionsStore.update(cls, current => [...current, extension], context)
|
|
22
22
|
}
|
|
23
23
|
}
|
|
24
24
|
|