@contember/schema-definition 2.1.0-alpha.30 → 2.1.0-alpha.36
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- 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/internal/AclFactory.ts +21 -21
- package/src/acl/definition/internal/EntityPredicateResolver.ts +4 -4
- package/src/acl/definition/internal/stores.ts +4 -5
- package/src/acl/definition/permissions.ts +3 -6
- package/src/acl/definition/variables.ts +5 -1
- package/src/actions/definition/index.ts +0 -1
- package/src/actions/definition/internal/ActionsFactory.ts +6 -9
- package/src/actions/definition/targets.ts +0 -1
- package/src/actions/definition/triggers.ts +8 -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/OrderByDefinition.ts +7 -5
- package/src/model/definition/UniqueDefinition.ts +14 -13
- 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 +3 -14
- 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 -131
- package/dist/development/src/acl/definition/internal/AclFactory.cjs.map +0 -1
- package/dist/development/src/acl/definition/internal/AclFactory.js +0 -131
- 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 -15
- package/dist/development/src/acl/definition/permissions.cjs.map +0 -1
- package/dist/development/src/acl/definition/permissions.js +0 -15
- 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 -180
- package/dist/development/src/actions/definition/internal/ActionsFactory.cjs.map +0 -1
- package/dist/development/src/actions/definition/internal/ActionsFactory.js +0 -180
- 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 -131
- package/dist/production/src/acl/definition/internal/AclFactory.cjs.map +0 -1
- package/dist/production/src/acl/definition/internal/AclFactory.js +0 -131
- 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 -15
- package/dist/production/src/acl/definition/permissions.cjs.map +0 -1
- package/dist/production/src/acl/definition/permissions.js +0 -15
- 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 -180
- package/dist/production/src/actions/definition/internal/ActionsFactory.cjs.map +0 -1
- package/dist/production/src/actions/definition/internal/ActionsFactory.js +0 -180
- 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 -11
- package/dist/types/acl/definition/internal/stores.d.ts.map +0 -1
- package/dist/types/acl/definition/permissions.d.ts +0 -23
- 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 -31
- 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 -9
- 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 -15
- 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
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"EntityPredicateResolver.js","sources":["../../../../../../../packages/schema-definition/src/acl/definition/internal/EntityPredicateResolver.ts"],"sourcesContent":["import deepEqual from 'fast-deep-equal'\n\nimport { Acl, Input, Model, Writable } from '@contember/schema'\nimport { PredicateDefinitionProcessor } from '@contember/schema-utils'\n\nimport { PermissionsByEntity } from './AclFactory'\nimport { createPredicateName } from './createPredicateName'\nimport { AllowDefinition, PredicateExtra, WhenDefinition } from '../permissions'\nimport { PredicateEvaluationReference } from '../references'\nimport { VariableDefinition } from '../variables'\n\nexport class EntityPredicatesResolver {\n\tprivate usedPredicates: string[] = []\n\n\tprivate constructor(\n\t\tprivate aclDefinitions: AllowDefinition<any>[],\n\t\tprivate predicates: Writable<Acl.PredicateMap>,\n\t\tprivate predicateNamesMap: Map<WhenDefinition, string>,\n\t\tprivate generatedNames: Set<string>,\n\t) {\n\t}\n\n\tpublic static create(\n\t\trolePermissions: PermissionsByEntity,\n\t\tmodel: Model.Schema,\n\t\tentity: Model.Entity,\n\t): EntityPredicatesResolver {\n\t\tconst predicates: Writable<Acl.PredicateMap> = {}\n\t\tconst predicateNamesMap = new Map<WhenDefinition, string>()\n\t\tconst aclDefinitions = rolePermissions.get(entity.name)?.definitions ?? []\n\t\tconst generatedNames = new Set<string>()\n\t\tconst definedNames = new Set<string>(aclDefinitions.map(it => it.name).filter((it): it is string => it !== undefined))\n\t\tfor (const permission of aclDefinitions) {\n\t\t\tif (!permission.when) {\n\t\t\t\tcontinue\n\t\t\t}\n\t\t\tconst resolvedPredicate = EntityPredicatesResolver.resolvePredicate(model, entity, permission.when, rolePermissions)\n\t\t\tlet predicateName = permission.name ?? createPredicateName(resolvedPredicate)\n\t\t\twhile (predicateName in predicates || definedNames.has(predicateName)) {\n\t\t\t\tpredicateName += '_'\n\t\t\t}\n\t\t\tif (!permission.name) {\n\t\t\t\tgeneratedNames.add(predicateName)\n\t\t\t}\n\t\t\tpredicates[predicateName] = resolvedPredicate\n\t\t\tpredicateNamesMap.set(permission.when, predicateName)\n\t\t}\n\t\tfor (const op of ['read', 'update', 'create'] as const) {\n\t\t\tfor (const definition of aclDefinitions) {\n\t\t\t\tconst fields = definition[op]\n\t\t\t\tif (!Array.isArray(fields)) {\n\t\t\t\t\tcontinue\n\t\t\t\t}\n\t\t\t\tfor (const field of fields) {\n\t\t\t\t\tif (!(field in entity.fields)) {\n\t\t\t\t\t\tthrow `Field \"${String(field)}\" does not exist on entity \"${entity.name}\" in ${op} ACL definition.`\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn new EntityPredicatesResolver(aclDefinitions, predicates, predicateNamesMap, generatedNames)\n\t}\n\n\tcreateFieldPredicate(op: 'create' | 'update' | 'read' | 'delete', field: string, isPrimary: boolean): true | undefined | string {\n\t\tconst fieldWhens = EntityPredicatesResolver.getMatchingWhens(this.aclDefinitions, op, field, isPrimary)\n\t\tif (fieldWhens.length === 0) {\n\t\t\treturn undefined\n\t\t}\n\t\tif (fieldWhens.includes(true)) {\n\t\t\treturn true\n\t\t}\n\t\tconst predicateNames = (fieldWhens as WhenDefinition[]).map(it => {\n\t\t\tconst name = this.predicateNamesMap.get(it)\n\t\t\tif (!name) throw new Error('implementation error')\n\t\t\treturn name\n\t\t})\n\t\tif (predicateNames.length === 1) {\n\t\t\tthis.usedPredicates.push(predicateNames[0])\n\t\t\treturn predicateNames[0]\n\t\t}\n\n\n\t\tconst predicate = { or: predicateNames.map(it => this.predicates[it]) }\n\t\tconst origName = predicateNames.every(it => this.generatedNames.has(it)) ? createPredicateName(predicate) : predicateNames.join('_or_')\n\t\tlet predicateName = origName\n\t\tfor (let i = 1;; i++) {\n\t\t\tif (!(predicateName in this.predicates)) {\n\t\t\t\tthis.predicates[predicateName] = predicate\n\t\t\t\tbreak\n\t\t\t} else if (deepEqual(predicate, this.predicates[predicateName])) {\n\t\t\t\tbreak\n\t\t\t} else {\n\t\t\t\tpredicateName = `${origName}_${i}`\n\t\t\t}\n\t\t}\n\t\tthis.usedPredicates.push(predicateName)\n\t\treturn predicateName\n\t}\n\n\tgetUsedPredicates(): Acl.PredicateMap {\n\t\treturn Object.fromEntries(Object.entries(this.predicates).filter(([name]) => this.usedPredicates.includes(name)))\n\t}\n\n\n\tprivate static resolvePredicate(\n\t\tmodel: Model.Schema,\n\t\tentity: Model.Entity,\n\t\twhen: WhenDefinition,\n\t\trolePermissionsByEntity: PermissionsByEntity,\n\t): Acl.PredicateDefinition {\n\t\tconst processor = new PredicateDefinitionProcessor(model)\n\t\treturn processor.process<Acl.PredicateReference | Input.Condition, PredicateExtra>(entity, when, {\n\t\t\thandleColumn(ctx) {\n\t\t\t\tif (ctx.value instanceof VariableDefinition) {\n\t\t\t\t\treturn ctx.value.name\n\t\t\t\t}\n\t\t\t\tif (ctx.value instanceof PredicateEvaluationReference) {\n\t\t\t\t\tthrow `Predicate references are allowed only on relations. \\nYou cannot use \"can${upperCaseFirst(ctx.value.operation)}(${ctx.value.field ? JSON.stringify(ctx.value.field) : ''})\" on a column \"${ctx.column.name}\" of entity \"${ctx.entity.name}\".`\n\t\t\t\t}\n\t\t\t\treturn ctx.value\n\t\t\t},\n\t\t\thandleRelation(ctx) {\n\t\t\t\tif (ctx.value instanceof VariableDefinition) {\n\t\t\t\t\treturn { [ctx.targetEntity.primary]: ctx.value.name }\n\t\t\t\t}\n\t\t\t\tif (ctx.value instanceof PredicateEvaluationReference) {\n\t\t\t\t\tconst targetPermissions = rolePermissionsByEntity.get(ctx.targetEntity.name)\n\t\t\t\t\tif (!targetPermissions) {\n\t\t\t\t\t\treturn { [ctx.targetEntity.primary]: { never: true } }\n\t\t\t\t\t}\n\t\t\t\t\tconst ref = ctx.value\n\t\t\t\t\tconst whens = EntityPredicatesResolver.getMatchingWhens(targetPermissions.definitions, ref.operation, ref.field ?? '', false)\n\t\t\t\t\tif (whens.length === 0) {\n\t\t\t\t\t\treturn { [ctx.targetEntity.primary]: { never: true } }\n\t\t\t\t\t}\n\t\t\t\t\tif (whens.includes(true)) {\n\t\t\t\t\t\treturn { [ctx.targetEntity.primary]: { isNull: false } }\n\t\t\t\t\t}\n\t\t\t\t\tconst predicates = (whens as WhenDefinition[]).map(it =>\n\t\t\t\t\t\tEntityPredicatesResolver.resolvePredicate(model, ctx.targetEntity, it, rolePermissionsByEntity),\n\t\t\t\t\t)\n\t\t\t\t\tif (predicates.length > 1) {\n\t\t\t\t\t\treturn { or: predicates }\n\t\t\t\t\t}\n\t\t\t\t\treturn predicates[0]\n\t\t\t\t}\n\t\t\t\treturn ctx.value\n\t\t\t},\n\t\t})\n\t}\n\n\tprivate static getMatchingWhens(\n\t\tpermissions: AllowDefinition<any>[],\n\t\toperation: 'delete' | 'read' | 'update' | 'create',\n\t\tfield: string,\n\t\tisPrimary: boolean,\n\t) {\n\t\treturn permissions\n\t\t\t.filter(it => {\n\t\t\t\tif (operation === 'delete') {\n\t\t\t\t\treturn !!it.delete\n\t\t\t\t}\n\t\t\t\tconst op = it[operation]\n\t\t\t\tif (!op) {\n\t\t\t\t\treturn false\n\t\t\t\t}\n\t\t\t\tif (op === true) {\n\t\t\t\t\treturn !isPrimary\n\t\t\t\t}\n\t\t\t\treturn op.includes(field)\n\t\t\t})\n\t\t\t.map(it => it.when ?? true)\n\t}\n}\n\nconst upperCaseFirst = (string: string) => `${string.charAt(0).toUpperCase()}${string.substring(1)}`\n"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
-
const createPredicateName = (when) => {
|
|
4
|
-
const json = JSON.stringify(when);
|
|
5
|
-
return json.replace(/[^A-Za-z0-9]+/g, "_").slice(0, 30).replace(/^_|_$/g, "");
|
|
6
|
-
};
|
|
7
|
-
exports.createPredicateName = createPredicateName;
|
|
8
|
-
//# sourceMappingURL=createPredicateName.cjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"createPredicateName.cjs","sources":["../../../../../../../packages/schema-definition/src/acl/definition/internal/createPredicateName.ts"],"sourcesContent":["import { WhenDefinition } from '../permissions'\n\nexport const createPredicateName = (when: WhenDefinition) => {\n\tconst json = JSON.stringify(when)\n\treturn json.replace(/[^A-Za-z0-9]+/g, '_').slice(0, 30).replace(/^_|_$/g, '')\n}\n"],"names":[],"mappings":";;AAEa,MAAA,sBAAsB,CAAC,SAAyB;AACtD,QAAA,OAAO,KAAK,UAAU,IAAI;AACzB,SAAA,KAAK,QAAQ,kBAAkB,GAAG,EAAE,MAAM,GAAG,EAAE,EAAE,QAAQ,UAAU,EAAE;AAC7E;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"createPredicateName.js","sources":["../../../../../../../packages/schema-definition/src/acl/definition/internal/createPredicateName.ts"],"sourcesContent":["import { WhenDefinition } from '../permissions'\n\nexport const createPredicateName = (when: WhenDefinition) => {\n\tconst json = JSON.stringify(when)\n\treturn json.replace(/[^A-Za-z0-9]+/g, '_').slice(0, 30).replace(/^_|_$/g, '')\n}\n"],"names":[],"mappings":"AAEa,MAAA,sBAAsB,CAAC,SAAyB;AACtD,QAAA,OAAO,KAAK,UAAU,IAAI;AACzB,SAAA,KAAK,QAAQ,kBAAkB,GAAG,EAAE,MAAM,GAAG,EAAE,EAAE,QAAQ,UAAU,EAAE;AAC7E;"}
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
-
const MetadataStore = require("../../../utils/MetadataStore.cjs");
|
|
4
|
-
const allowDefinitionsStore = MetadataStore.createMetadataStore([]);
|
|
5
|
-
exports.allowDefinitionsStore = allowDefinitionsStore;
|
|
6
|
-
//# sourceMappingURL=stores.cjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"stores.cjs","sources":["../../../../../../../packages/schema-definition/src/acl/definition/internal/stores.ts"],"sourcesContent":["import { createMetadataStore } from '../../../utils/MetadataStore'\nimport { AllowDefinitionFactory } from '../permissions'\nimport { Role } from '../roles'\n\nexport type EntityPermissionsDefinition =\n\t& {\n\t\tfactory: AllowDefinitionFactory<any>\n\t\trole: Role<string>\n\t}\nexport const allowDefinitionsStore = createMetadataStore<EntityPermissionsDefinition[]>([])\n"],"names":["createMetadataStore"],"mappings":";;;AASa,MAAA,wBAAwBA,cAAmD,oBAAA,CAAE,CAAA;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"stores.js","sources":["../../../../../../../packages/schema-definition/src/acl/definition/internal/stores.ts"],"sourcesContent":["import { createMetadataStore } from '../../../utils/MetadataStore'\nimport { AllowDefinitionFactory } from '../permissions'\nimport { Role } from '../roles'\n\nexport type EntityPermissionsDefinition =\n\t& {\n\t\tfactory: AllowDefinitionFactory<any>\n\t\trole: Role<string>\n\t}\nexport const allowDefinitionsStore = createMetadataStore<EntityPermissionsDefinition[]>([])\n"],"names":[],"mappings":";AASa,MAAA,wBAAwB,oBAAmD,CAAE,CAAA;"}
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
-
const stores = require("./internal/stores.cjs");
|
|
4
|
-
const allow = (role, args) => {
|
|
5
|
-
return (entity) => {
|
|
6
|
-
(Array.isArray(role) ? role : [role]).forEach((role2) => {
|
|
7
|
-
stores.allowDefinitionsStore.update(entity, (val) => [...val, {
|
|
8
|
-
factory: typeof args === "function" ? args : () => args,
|
|
9
|
-
role: role2
|
|
10
|
-
}]);
|
|
11
|
-
});
|
|
12
|
-
};
|
|
13
|
-
};
|
|
14
|
-
exports.allow = allow;
|
|
15
|
-
//# sourceMappingURL=permissions.cjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"permissions.cjs","sources":["../../../../../../packages/schema-definition/src/acl/definition/permissions.ts"],"sourcesContent":["import { Acl, Model } from '@contember/schema'\nimport { Role } from './roles'\nimport { VariableDefinition } from './variables'\nimport { PredicateEvaluationReference } from './references'\nimport { allowDefinitionsStore } from './internal/stores'\nimport { DecoratorFunction, EntityConstructor } from '../../utils'\n\nexport type PredicateExtra = PredicateEvaluationReference | VariableDefinition\nexport type WhenDefinition = Acl.PredicateDefinition<PredicateExtra>\n\nexport interface AllowDefinition<E> {\n\twhen?: WhenDefinition\n\tthrough?: true\n\tname?: string\n\tcreate?: true | ('id' | keyof E)[]\n\tupdate?: true | ('id' | keyof E)[]\n\tread?: true | ('id' | keyof E)[]\n\tdelete?: true\n}\n\nexport type AllowDefinitionFactory<E> = (args: {\n\tmodel: Model.Schema\n\tentity: Model.Entity<(keyof E) & string>\n\texcept: (...fields: (keyof E)[]) => (keyof E)[]\n}) => AllowDefinition<E>\n\nexport const allow = <E, R extends Role<string>>(role: R | R[], args: AllowDefinition<E> | AllowDefinitionFactory<E>): DecoratorFunction<E> => {\n\treturn (entity: EntityConstructor<E>) => {\n\t\t(Array.isArray(role) ? role : [role]).forEach(role => {\n\t\t\tallowDefinitionsStore.update(entity, val => [...val, {\n\t\t\t\tfactory: typeof args === 'function' ? args : () => args,\n\t\t\t\trole,\n\t\t\t}])\n\t\t})\n\t}\n}\n\n\n\n"],"names":["role","allowDefinitionsStore"],"mappings":";;;AA0Ba,MAAA,QAAQ,CAA4B,MAAe,SAA+E;AAC9I,SAAO,CAAC,WAAiC;AACvC,KAAA,MAAM,QAAQ,IAAI,IAAI,OAAO,CAAC,IAAI,GAAG,QAAQ,CAAAA,UAAQ;AACrDC,aAAA,sBAAsB,OAAO,QAAQ,CAAO,QAAA,CAAC,GAAG,KAAK;AAAA,QACpD,SAAS,OAAO,SAAS,aAAa,OAAO,MAAM;AAAA,QACnD,MAAAD;AAAAA,MAAA,CACA,CAAC;AAAA,IAAA,CACF;AAAA,EACF;AACD;;"}
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import { allowDefinitionsStore } from "./internal/stores.js";
|
|
2
|
-
const allow = (role, args) => {
|
|
3
|
-
return (entity) => {
|
|
4
|
-
(Array.isArray(role) ? role : [role]).forEach((role2) => {
|
|
5
|
-
allowDefinitionsStore.update(entity, (val) => [...val, {
|
|
6
|
-
factory: typeof args === "function" ? args : () => args,
|
|
7
|
-
role: role2
|
|
8
|
-
}]);
|
|
9
|
-
});
|
|
10
|
-
};
|
|
11
|
-
};
|
|
12
|
-
export {
|
|
13
|
-
allow
|
|
14
|
-
};
|
|
15
|
-
//# sourceMappingURL=permissions.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"permissions.js","sources":["../../../../../../packages/schema-definition/src/acl/definition/permissions.ts"],"sourcesContent":["import { Acl, Model } from '@contember/schema'\nimport { Role } from './roles'\nimport { VariableDefinition } from './variables'\nimport { PredicateEvaluationReference } from './references'\nimport { allowDefinitionsStore } from './internal/stores'\nimport { DecoratorFunction, EntityConstructor } from '../../utils'\n\nexport type PredicateExtra = PredicateEvaluationReference | VariableDefinition\nexport type WhenDefinition = Acl.PredicateDefinition<PredicateExtra>\n\nexport interface AllowDefinition<E> {\n\twhen?: WhenDefinition\n\tthrough?: true\n\tname?: string\n\tcreate?: true | ('id' | keyof E)[]\n\tupdate?: true | ('id' | keyof E)[]\n\tread?: true | ('id' | keyof E)[]\n\tdelete?: true\n}\n\nexport type AllowDefinitionFactory<E> = (args: {\n\tmodel: Model.Schema\n\tentity: Model.Entity<(keyof E) & string>\n\texcept: (...fields: (keyof E)[]) => (keyof E)[]\n}) => AllowDefinition<E>\n\nexport const allow = <E, R extends Role<string>>(role: R | R[], args: AllowDefinition<E> | AllowDefinitionFactory<E>): DecoratorFunction<E> => {\n\treturn (entity: EntityConstructor<E>) => {\n\t\t(Array.isArray(role) ? role : [role]).forEach(role => {\n\t\t\tallowDefinitionsStore.update(entity, val => [...val, {\n\t\t\t\tfactory: typeof args === 'function' ? args : () => args,\n\t\t\t\trole,\n\t\t\t}])\n\t\t})\n\t}\n}\n\n\n\n"],"names":["role"],"mappings":";AA0Ba,MAAA,QAAQ,CAA4B,MAAe,SAA+E;AAC9I,SAAO,CAAC,WAAiC;AACvC,KAAA,MAAM,QAAQ,IAAI,IAAI,OAAO,CAAC,IAAI,GAAG,QAAQ,CAAAA,UAAQ;AACrD,4BAAsB,OAAO,QAAQ,CAAO,QAAA,CAAC,GAAG,KAAK;AAAA,QACpD,SAAS,OAAO,SAAS,aAAa,OAAO,MAAM;AAAA,QACnD,MAAAA;AAAAA,MAAA,CACA,CAAC;AAAA,IAAA,CACF;AAAA,EACF;AACD;"}
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
-
class PredicateEvaluationReference {
|
|
4
|
-
constructor(operation, field) {
|
|
5
|
-
this.operation = operation;
|
|
6
|
-
this.field = field;
|
|
7
|
-
}
|
|
8
|
-
}
|
|
9
|
-
const canUpdate = (field) => {
|
|
10
|
-
return new PredicateEvaluationReference("update", field);
|
|
11
|
-
};
|
|
12
|
-
const canRead = (field) => {
|
|
13
|
-
return new PredicateEvaluationReference("read", field);
|
|
14
|
-
};
|
|
15
|
-
const canCreate = (field) => {
|
|
16
|
-
return new PredicateEvaluationReference("create", field);
|
|
17
|
-
};
|
|
18
|
-
const canDelete = () => {
|
|
19
|
-
return new PredicateEvaluationReference("delete");
|
|
20
|
-
};
|
|
21
|
-
exports.PredicateEvaluationReference = PredicateEvaluationReference;
|
|
22
|
-
exports.canCreate = canCreate;
|
|
23
|
-
exports.canDelete = canDelete;
|
|
24
|
-
exports.canRead = canRead;
|
|
25
|
-
exports.canUpdate = canUpdate;
|
|
26
|
-
//# sourceMappingURL=references.cjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"references.cjs","sources":["../../../../../../packages/schema-definition/src/acl/definition/references.ts"],"sourcesContent":["export class PredicateEvaluationReference {\n\tconstructor(\n\t\tpublic readonly operation: 'update' | 'delete' | 'create' | 'read',\n\t\tpublic readonly field?: string,\n\t) {\n\t}\n}\n\nexport const canUpdate = (field: string) => {\n\treturn new PredicateEvaluationReference('update', field)\n}\n\nexport const canRead = (field: string) => {\n\treturn new PredicateEvaluationReference('read', field)\n}\nexport const canCreate = (field: string) => {\n\treturn new PredicateEvaluationReference('create', field)\n}\nexport const canDelete = () => {\n\treturn new PredicateEvaluationReference('delete')\n}\n"],"names":[],"mappings":";;AAAO,MAAM,6BAA6B;AAAA,EACzC,YACiB,WACA,OACf;AAFe,SAAA,YAAA;AACA,SAAA,QAAA;AAAA,EAAA;AAGlB;AAEa,MAAA,YAAY,CAAC,UAAkB;AACpC,SAAA,IAAI,6BAA6B,UAAU,KAAK;AACxD;AAEa,MAAA,UAAU,CAAC,UAAkB;AAClC,SAAA,IAAI,6BAA6B,QAAQ,KAAK;AACtD;AACa,MAAA,YAAY,CAAC,UAAkB;AACpC,SAAA,IAAI,6BAA6B,UAAU,KAAK;AACxD;AACO,MAAM,YAAY,MAAM;AACvB,SAAA,IAAI,6BAA6B,QAAQ;AACjD;;;;;;"}
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
class PredicateEvaluationReference {
|
|
2
|
-
constructor(operation, field) {
|
|
3
|
-
this.operation = operation;
|
|
4
|
-
this.field = field;
|
|
5
|
-
}
|
|
6
|
-
}
|
|
7
|
-
const canUpdate = (field) => {
|
|
8
|
-
return new PredicateEvaluationReference("update", field);
|
|
9
|
-
};
|
|
10
|
-
const canRead = (field) => {
|
|
11
|
-
return new PredicateEvaluationReference("read", field);
|
|
12
|
-
};
|
|
13
|
-
const canCreate = (field) => {
|
|
14
|
-
return new PredicateEvaluationReference("create", field);
|
|
15
|
-
};
|
|
16
|
-
const canDelete = () => {
|
|
17
|
-
return new PredicateEvaluationReference("delete");
|
|
18
|
-
};
|
|
19
|
-
export {
|
|
20
|
-
PredicateEvaluationReference,
|
|
21
|
-
canCreate,
|
|
22
|
-
canDelete,
|
|
23
|
-
canRead,
|
|
24
|
-
canUpdate
|
|
25
|
-
};
|
|
26
|
-
//# sourceMappingURL=references.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"references.js","sources":["../../../../../../packages/schema-definition/src/acl/definition/references.ts"],"sourcesContent":["export class PredicateEvaluationReference {\n\tconstructor(\n\t\tpublic readonly operation: 'update' | 'delete' | 'create' | 'read',\n\t\tpublic readonly field?: string,\n\t) {\n\t}\n}\n\nexport const canUpdate = (field: string) => {\n\treturn new PredicateEvaluationReference('update', field)\n}\n\nexport const canRead = (field: string) => {\n\treturn new PredicateEvaluationReference('read', field)\n}\nexport const canCreate = (field: string) => {\n\treturn new PredicateEvaluationReference('create', field)\n}\nexport const canDelete = () => {\n\treturn new PredicateEvaluationReference('delete')\n}\n"],"names":[],"mappings":"AAAO,MAAM,6BAA6B;AAAA,EACzC,YACiB,WACA,OACf;AAFe,SAAA,YAAA;AACA,SAAA,QAAA;AAAA,EAAA;AAGlB;AAEa,MAAA,YAAY,CAAC,UAAkB;AACpC,SAAA,IAAI,6BAA6B,UAAU,KAAK;AACxD;AAEa,MAAA,UAAU,CAAC,UAAkB;AAClC,SAAA,IAAI,6BAA6B,QAAQ,KAAK;AACtD;AACa,MAAA,YAAY,CAAC,UAAkB;AACpC,SAAA,IAAI,6BAA6B,UAAU,KAAK;AACxD;AACO,MAAM,YAAY,MAAM;AACvB,SAAA,IAAI,6BAA6B,QAAQ;AACjD;"}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
-
class Role {
|
|
4
|
-
constructor(name, options) {
|
|
5
|
-
this.name = name;
|
|
6
|
-
this.options = options;
|
|
7
|
-
}
|
|
8
|
-
}
|
|
9
|
-
const createRole = (name, options = {}) => {
|
|
10
|
-
return new Role(name, options);
|
|
11
|
-
};
|
|
12
|
-
exports.Role = Role;
|
|
13
|
-
exports.createRole = createRole;
|
|
14
|
-
//# sourceMappingURL=roles.cjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"roles.cjs","sources":["../../../../../../packages/schema-definition/src/acl/definition/roles.ts"],"sourcesContent":["import { Acl, JSONValue } from '@contember/schema'\n\nexport type RoleOptions =\n\t& Omit<Acl.BaseRolePermissions, 'variables' | 'entities' | 'inherits'>\n\t& {\n\t\treadonly [key: string]: JSONValue\n\t}\n\nexport class Role<Name extends string = string> {\n\tpublic constructor(\n\t\tpublic readonly name: Name,\n\t\tpublic readonly options: RoleOptions,\n\t) {\n\t}\n}\n\nexport const createRole = <Name extends string>(name: Name, options: RoleOptions = {}): Role<Name> => {\n\treturn new Role(name, options)\n}\n"],"names":[],"mappings":";;AAQO,MAAM,KAAmC;AAAA,EACxC,YACU,MACA,SACf;AAFe,SAAA,OAAA;AACA,SAAA,UAAA;AAAA,EAAA;AAGlB;AAEO,MAAM,aAAa,CAAsB,MAAY,UAAuB,OAAmB;AAC9F,SAAA,IAAI,KAAK,MAAM,OAAO;AAC9B;;;"}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
class Role {
|
|
2
|
-
constructor(name, options) {
|
|
3
|
-
this.name = name;
|
|
4
|
-
this.options = options;
|
|
5
|
-
}
|
|
6
|
-
}
|
|
7
|
-
const createRole = (name, options = {}) => {
|
|
8
|
-
return new Role(name, options);
|
|
9
|
-
};
|
|
10
|
-
export {
|
|
11
|
-
Role,
|
|
12
|
-
createRole
|
|
13
|
-
};
|
|
14
|
-
//# sourceMappingURL=roles.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"roles.js","sources":["../../../../../../packages/schema-definition/src/acl/definition/roles.ts"],"sourcesContent":["import { Acl, JSONValue } from '@contember/schema'\n\nexport type RoleOptions =\n\t& Omit<Acl.BaseRolePermissions, 'variables' | 'entities' | 'inherits'>\n\t& {\n\t\treadonly [key: string]: JSONValue\n\t}\n\nexport class Role<Name extends string = string> {\n\tpublic constructor(\n\t\tpublic readonly name: Name,\n\t\tpublic readonly options: RoleOptions,\n\t) {\n\t}\n}\n\nexport const createRole = <Name extends string>(name: Name, options: RoleOptions = {}): Role<Name> => {\n\treturn new Role(name, options)\n}\n"],"names":[],"mappings":"AAQO,MAAM,KAAmC;AAAA,EACxC,YACU,MACA,SACf;AAFe,SAAA,OAAA;AACA,SAAA,UAAA;AAAA,EAAA;AAGlB;AAEO,MAAM,aAAa,CAAsB,MAAY,UAAuB,OAAmB;AAC9F,SAAA,IAAI,KAAK,MAAM,OAAO;AAC9B;"}
|
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
-
const schema = require("@contember/schema");
|
|
4
|
-
class VariableDefinition {
|
|
5
|
-
constructor(name, roles, variable) {
|
|
6
|
-
this.name = name;
|
|
7
|
-
this.roles = roles;
|
|
8
|
-
this.variable = variable;
|
|
9
|
-
}
|
|
10
|
-
}
|
|
11
|
-
const createEntityVariable = (name, entityName, roles, fallback) => {
|
|
12
|
-
return new VariableDefinition(
|
|
13
|
-
name,
|
|
14
|
-
Array.isArray(roles) ? roles : [roles],
|
|
15
|
-
{ type: schema.Acl.VariableType.entity, entityName, ...fallback ? { fallback } : {} }
|
|
16
|
-
);
|
|
17
|
-
};
|
|
18
|
-
const createPredefinedVariable = (name, value, roles, fallback) => {
|
|
19
|
-
return new VariableDefinition(
|
|
20
|
-
name,
|
|
21
|
-
Array.isArray(roles) ? roles : [roles],
|
|
22
|
-
{ type: schema.Acl.VariableType.predefined, value }
|
|
23
|
-
);
|
|
24
|
-
};
|
|
25
|
-
const createConditionVariable = (name, roles, fallback) => {
|
|
26
|
-
return new VariableDefinition(
|
|
27
|
-
name,
|
|
28
|
-
Array.isArray(roles) ? roles : [roles],
|
|
29
|
-
{ type: schema.Acl.VariableType.condition, ...fallback ? { fallback } : {} }
|
|
30
|
-
);
|
|
31
|
-
};
|
|
32
|
-
exports.VariableDefinition = VariableDefinition;
|
|
33
|
-
exports.createConditionVariable = createConditionVariable;
|
|
34
|
-
exports.createEntityVariable = createEntityVariable;
|
|
35
|
-
exports.createPredefinedVariable = createPredefinedVariable;
|
|
36
|
-
//# sourceMappingURL=variables.cjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"variables.cjs","sources":["../../../../../../packages/schema-definition/src/acl/definition/variables.ts"],"sourcesContent":["import { Role } from './roles'\nimport { Acl, Input } from '@contember/schema'\n\nexport class VariableDefinition<Name extends string = string, Roles extends Role<string> = Role<string>, Variable extends Acl.Variable = Acl.Variable> {\n\tconstructor(\n\t\tpublic readonly name: Name,\n\t\tpublic readonly roles: Roles[],\n\t\tpublic readonly variable: Acl.Variable,\n\t) {\n\t}\n}\n\nexport const createEntityVariable = <R extends Role<string>, Name extends string>(\n\tname: Name,\n\tentityName: string,\n\troles: R | R[],\n\tfallback?: Input.Condition,\n): VariableDefinition<Name, R, Acl.EntityVariable> => {\n\treturn new VariableDefinition(\n\t\tname,\n\t\tArray.isArray(roles) ? roles : [roles],\n\t\t{ type: Acl.VariableType.entity, entityName, ...(fallback ? { fallback } : {}) },\n\t)\n}\n\nexport const createPredefinedVariable = <R extends Role<string>, Name extends string>(\n\tname: Name,\n\tvalue: Acl.PredefinedVariableValue,\n\troles: R | R[],\n\tfallback?: Input.Condition,\n): VariableDefinition<Name, R, Acl.EntityVariable> => {\n\treturn new VariableDefinition(\n\t\tname,\n\t\tArray.isArray(roles) ? roles : [roles],\n\t\t{ type: Acl.VariableType.predefined, value },\n\t)\n}\n\nexport const createConditionVariable = <R extends Role<string>, Name extends string>(\n\tname: Name,\n\troles: R | R[],\n\tfallback?: Input.Condition,\n): VariableDefinition<Name, R, Acl.ConditionVariable> => {\n\treturn new VariableDefinition(\n\t\tname,\n\t\tArray.isArray(roles) ? roles : [roles],\n\t\t{ type: Acl.VariableType.condition, ...(fallback ? { fallback } : {}) },\n\t)\n}\n"],"names":["Acl"],"mappings":";;;AAGO,MAAM,mBAA0I;AAAA,EACtJ,YACiB,MACA,OACA,UACf;AAHe,SAAA,OAAA;AACA,SAAA,QAAA;AACA,SAAA,WAAA;AAAA,EAAA;AAGlB;AAEO,MAAM,uBAAuB,CACnC,MACA,YACA,OACA,aACqD;AACrD,SAAO,IAAI;AAAA,IACV;AAAA,IACA,MAAM,QAAQ,KAAK,IAAI,QAAQ,CAAC,KAAK;AAAA,IACrC,EAAE,MAAMA,WAAI,aAAa,QAAQ,YAAY,GAAI,WAAW,EAAE,SAAA,IAAa,CAAI,EAAA;AAAA,EAChF;AACD;AAEO,MAAM,2BAA2B,CACvC,MACA,OACA,OACA,aACqD;AACrD,SAAO,IAAI;AAAA,IACV;AAAA,IACA,MAAM,QAAQ,KAAK,IAAI,QAAQ,CAAC,KAAK;AAAA,IACrC,EAAE,MAAMA,OAAAA,IAAI,aAAa,YAAY,MAAM;AAAA,EAC5C;AACD;AAEO,MAAM,0BAA0B,CACtC,MACA,OACA,aACwD;AACxD,SAAO,IAAI;AAAA,IACV;AAAA,IACA,MAAM,QAAQ,KAAK,IAAI,QAAQ,CAAC,KAAK;AAAA,IACrC,EAAE,MAAMA,OAAA,IAAI,aAAa,WAAW,GAAI,WAAW,EAAE,SAAA,IAAa,CAAI,EAAA;AAAA,EACvE;AACD;;;;;"}
|
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
import { Acl } from "@contember/schema";
|
|
2
|
-
class VariableDefinition {
|
|
3
|
-
constructor(name, roles, variable) {
|
|
4
|
-
this.name = name;
|
|
5
|
-
this.roles = roles;
|
|
6
|
-
this.variable = variable;
|
|
7
|
-
}
|
|
8
|
-
}
|
|
9
|
-
const createEntityVariable = (name, entityName, roles, fallback) => {
|
|
10
|
-
return new VariableDefinition(
|
|
11
|
-
name,
|
|
12
|
-
Array.isArray(roles) ? roles : [roles],
|
|
13
|
-
{ type: Acl.VariableType.entity, entityName, ...fallback ? { fallback } : {} }
|
|
14
|
-
);
|
|
15
|
-
};
|
|
16
|
-
const createPredefinedVariable = (name, value, roles, fallback) => {
|
|
17
|
-
return new VariableDefinition(
|
|
18
|
-
name,
|
|
19
|
-
Array.isArray(roles) ? roles : [roles],
|
|
20
|
-
{ type: Acl.VariableType.predefined, value }
|
|
21
|
-
);
|
|
22
|
-
};
|
|
23
|
-
const createConditionVariable = (name, roles, fallback) => {
|
|
24
|
-
return new VariableDefinition(
|
|
25
|
-
name,
|
|
26
|
-
Array.isArray(roles) ? roles : [roles],
|
|
27
|
-
{ type: Acl.VariableType.condition, ...fallback ? { fallback } : {} }
|
|
28
|
-
);
|
|
29
|
-
};
|
|
30
|
-
export {
|
|
31
|
-
VariableDefinition,
|
|
32
|
-
createConditionVariable,
|
|
33
|
-
createEntityVariable,
|
|
34
|
-
createPredefinedVariable
|
|
35
|
-
};
|
|
36
|
-
//# sourceMappingURL=variables.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"variables.js","sources":["../../../../../../packages/schema-definition/src/acl/definition/variables.ts"],"sourcesContent":["import { Role } from './roles'\nimport { Acl, Input } from '@contember/schema'\n\nexport class VariableDefinition<Name extends string = string, Roles extends Role<string> = Role<string>, Variable extends Acl.Variable = Acl.Variable> {\n\tconstructor(\n\t\tpublic readonly name: Name,\n\t\tpublic readonly roles: Roles[],\n\t\tpublic readonly variable: Acl.Variable,\n\t) {\n\t}\n}\n\nexport const createEntityVariable = <R extends Role<string>, Name extends string>(\n\tname: Name,\n\tentityName: string,\n\troles: R | R[],\n\tfallback?: Input.Condition,\n): VariableDefinition<Name, R, Acl.EntityVariable> => {\n\treturn new VariableDefinition(\n\t\tname,\n\t\tArray.isArray(roles) ? roles : [roles],\n\t\t{ type: Acl.VariableType.entity, entityName, ...(fallback ? { fallback } : {}) },\n\t)\n}\n\nexport const createPredefinedVariable = <R extends Role<string>, Name extends string>(\n\tname: Name,\n\tvalue: Acl.PredefinedVariableValue,\n\troles: R | R[],\n\tfallback?: Input.Condition,\n): VariableDefinition<Name, R, Acl.EntityVariable> => {\n\treturn new VariableDefinition(\n\t\tname,\n\t\tArray.isArray(roles) ? roles : [roles],\n\t\t{ type: Acl.VariableType.predefined, value },\n\t)\n}\n\nexport const createConditionVariable = <R extends Role<string>, Name extends string>(\n\tname: Name,\n\troles: R | R[],\n\tfallback?: Input.Condition,\n): VariableDefinition<Name, R, Acl.ConditionVariable> => {\n\treturn new VariableDefinition(\n\t\tname,\n\t\tArray.isArray(roles) ? roles : [roles],\n\t\t{ type: Acl.VariableType.condition, ...(fallback ? { fallback } : {}) },\n\t)\n}\n"],"names":[],"mappings":";AAGO,MAAM,mBAA0I;AAAA,EACtJ,YACiB,MACA,OACA,UACf;AAHe,SAAA,OAAA;AACA,SAAA,QAAA;AACA,SAAA,WAAA;AAAA,EAAA;AAGlB;AAEO,MAAM,uBAAuB,CACnC,MACA,YACA,OACA,aACqD;AACrD,SAAO,IAAI;AAAA,IACV;AAAA,IACA,MAAM,QAAQ,KAAK,IAAI,QAAQ,CAAC,KAAK;AAAA,IACrC,EAAE,MAAM,IAAI,aAAa,QAAQ,YAAY,GAAI,WAAW,EAAE,SAAA,IAAa,CAAI,EAAA;AAAA,EAChF;AACD;AAEO,MAAM,2BAA2B,CACvC,MACA,OACA,OACA,aACqD;AACrD,SAAO,IAAI;AAAA,IACV;AAAA,IACA,MAAM,QAAQ,KAAK,IAAI,QAAQ,CAAC,KAAK;AAAA,IACrC,EAAE,MAAM,IAAI,aAAa,YAAY,MAAM;AAAA,EAC5C;AACD;AAEO,MAAM,0BAA0B,CACtC,MACA,OACA,aACwD;AACxD,SAAO,IAAI;AAAA,IACV;AAAA,IACA,MAAM,QAAQ,KAAK,IAAI,QAAQ,CAAC,KAAK;AAAA,IACrC,EAAE,MAAM,IAAI,aAAa,WAAW,GAAI,WAAW,EAAE,SAAA,IAAa,CAAI,EAAA;AAAA,EACvE;AACD;"}
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
-
const ActionsFactory = require("./internal/ActionsFactory.cjs");
|
|
4
|
-
const triggers = require("./triggers.cjs");
|
|
5
|
-
const targets = require("./targets.cjs");
|
|
6
|
-
const createActions = (exportedDefinitions) => {
|
|
7
|
-
const factory = new ActionsFactory.ActionsFactory();
|
|
8
|
-
return factory.create(exportedDefinitions);
|
|
9
|
-
};
|
|
10
|
-
exports.trigger = triggers.trigger;
|
|
11
|
-
exports.watch = triggers.watch;
|
|
12
|
-
exports.ActionsTarget = targets.ActionsTarget;
|
|
13
|
-
exports.createTarget = targets.createTarget;
|
|
14
|
-
exports.createActions = createActions;
|
|
15
|
-
//# sourceMappingURL=index.cjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.cjs","sources":["../../../../../../packages/schema-definition/src/actions/definition/index.ts"],"sourcesContent":["import { Actions } from '@contember/schema'\nimport { ActionsFactory } from './internal/ActionsFactory'\n\nexport * from './triggers'\nexport * from './targets'\n\n\nexport const createActions = (\n\texportedDefinitions: Record<string, any>,\n): Actions.Schema => {\n\tconst factory = new ActionsFactory()\n\treturn factory.create(exportedDefinitions)\n}\n"],"names":["ActionsFactory"],"mappings":";;;;;AAOa,MAAA,gBAAgB,CAC5B,wBACoB;AACd,QAAA,UAAU,IAAIA,8BAAe;AAC5B,SAAA,QAAQ,OAAO,mBAAmB;AAC1C;;;;;;"}
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import { ActionsFactory } from "./internal/ActionsFactory.js";
|
|
2
|
-
import { trigger, watch } from "./triggers.js";
|
|
3
|
-
import { ActionsTarget, createTarget } from "./targets.js";
|
|
4
|
-
const createActions = (exportedDefinitions) => {
|
|
5
|
-
const factory = new ActionsFactory();
|
|
6
|
-
return factory.create(exportedDefinitions);
|
|
7
|
-
};
|
|
8
|
-
export {
|
|
9
|
-
ActionsTarget,
|
|
10
|
-
createActions,
|
|
11
|
-
createTarget,
|
|
12
|
-
trigger,
|
|
13
|
-
watch
|
|
14
|
-
};
|
|
15
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../../../../packages/schema-definition/src/actions/definition/index.ts"],"sourcesContent":["import { Actions } from '@contember/schema'\nimport { ActionsFactory } from './internal/ActionsFactory'\n\nexport * from './triggers'\nexport * from './targets'\n\n\nexport const createActions = (\n\texportedDefinitions: Record<string, any>,\n): Actions.Schema => {\n\tconst factory = new ActionsFactory()\n\treturn factory.create(exportedDefinitions)\n}\n"],"names":[],"mappings":";;;AAOa,MAAA,gBAAgB,CAC5B,wBACoB;AACd,QAAA,UAAU,IAAI,eAAe;AAC5B,SAAA,QAAQ,OAAO,mBAAmB;AAC1C;"}
|
|
@@ -1,180 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
-
const assertNever = require("../../../utils/assertNever.cjs");
|
|
4
|
-
const filterEntityDefinition = require("../../../utils/filterEntityDefinition.cjs");
|
|
5
|
-
require("reflect-metadata");
|
|
6
|
-
const store = require("./store.cjs");
|
|
7
|
-
const targets = require("../targets.cjs");
|
|
8
|
-
const graphql = require("graphql");
|
|
9
|
-
var __defProp = Object.defineProperty;
|
|
10
|
-
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
11
|
-
var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
12
|
-
class ActionsFactory {
|
|
13
|
-
constructor() {
|
|
14
|
-
}
|
|
15
|
-
create(exportedDefinitions) {
|
|
16
|
-
const entityLikeDefinition = filterEntityDefinition.filterEntityDefinition(exportedDefinitions);
|
|
17
|
-
const targetsRegistry = new ActionsTargetRegistry();
|
|
18
|
-
for (const [exportedAs, def] of Object.entries(exportedDefinitions)) {
|
|
19
|
-
if (!(def instanceof targets.ActionsTarget)) {
|
|
20
|
-
continue;
|
|
21
|
-
}
|
|
22
|
-
const name = def.name ?? exportedAs;
|
|
23
|
-
targetsRegistry.register(name, def.definition);
|
|
24
|
-
}
|
|
25
|
-
const triggersDef = entityLikeDefinition.flatMap(([, entity]) => store.triggersStore.get(entity).map((it) => ({
|
|
26
|
-
...it,
|
|
27
|
-
entity
|
|
28
|
-
})));
|
|
29
|
-
const triggerNames = triggersDef.map((it) => it.definition.name).filter((it) => !!it);
|
|
30
|
-
triggerNames.forEach((it, index, arr) => {
|
|
31
|
-
if (arr.indexOf(it) !== index) {
|
|
32
|
-
throw `Duplicate trigger name ${it}.`;
|
|
33
|
-
}
|
|
34
|
-
});
|
|
35
|
-
const triggers = {};
|
|
36
|
-
for (const { definition, entity, type } of triggersDef) {
|
|
37
|
-
const name = definition.name;
|
|
38
|
-
const target = this.resolveTarget(name, definition, targetsRegistry);
|
|
39
|
-
let trigger;
|
|
40
|
-
if (type === "basic") {
|
|
41
|
-
trigger = {
|
|
42
|
-
target,
|
|
43
|
-
...this.createBasicTrigger(name, entity.name, definition)
|
|
44
|
-
};
|
|
45
|
-
} else if (type === "watch") {
|
|
46
|
-
trigger = {
|
|
47
|
-
target,
|
|
48
|
-
...this.createWatchTrigger(name, entity.name, definition)
|
|
49
|
-
};
|
|
50
|
-
} else {
|
|
51
|
-
assertNever.assertNever();
|
|
52
|
-
}
|
|
53
|
-
triggers[name] = trigger;
|
|
54
|
-
}
|
|
55
|
-
return { triggers, targets: targetsRegistry.getTargets() };
|
|
56
|
-
}
|
|
57
|
-
resolveTarget(triggerName, targetDefinition, targetRegistry) {
|
|
58
|
-
const generatedName = `${triggerName}_target`;
|
|
59
|
-
if ("target" in targetDefinition) {
|
|
60
|
-
if (targetDefinition.target instanceof targets.ActionsTarget) {
|
|
61
|
-
const registeredName = targetRegistry.getName(targetDefinition.target.definition);
|
|
62
|
-
if (!registeredName) {
|
|
63
|
-
throw `Target of ${triggerName} trigger is not registered. Have you exported it?`;
|
|
64
|
-
}
|
|
65
|
-
return registeredName;
|
|
66
|
-
} else {
|
|
67
|
-
const { name, ...def } = targetDefinition.target;
|
|
68
|
-
const resolvedName = name ?? generatedName;
|
|
69
|
-
targetRegistry.register(resolvedName, { name: generatedName, ...def });
|
|
70
|
-
return resolvedName;
|
|
71
|
-
}
|
|
72
|
-
} else if ("webhook" in targetDefinition) {
|
|
73
|
-
if (typeof targetDefinition.webhook === "string") {
|
|
74
|
-
targetRegistry.register(generatedName, {
|
|
75
|
-
type: "webhook",
|
|
76
|
-
url: targetDefinition.webhook
|
|
77
|
-
});
|
|
78
|
-
} else {
|
|
79
|
-
targetRegistry.register(generatedName, {
|
|
80
|
-
type: "webhook",
|
|
81
|
-
...targetDefinition.webhook
|
|
82
|
-
});
|
|
83
|
-
}
|
|
84
|
-
return generatedName;
|
|
85
|
-
}
|
|
86
|
-
return assertNever.assertNever();
|
|
87
|
-
}
|
|
88
|
-
createWatchTrigger(name, entity, trigger) {
|
|
89
|
-
return {
|
|
90
|
-
type: "watch",
|
|
91
|
-
entity,
|
|
92
|
-
name,
|
|
93
|
-
watch: this.parseSelection(trigger.watch),
|
|
94
|
-
selection: trigger.selection ? this.parseSelection(trigger.selection) : void 0,
|
|
95
|
-
priority: trigger.priority,
|
|
96
|
-
..."withNodes" in trigger ? { withNodes: trigger.withNodes } : {}
|
|
97
|
-
};
|
|
98
|
-
}
|
|
99
|
-
createBasicTrigger(name, entity, trigger) {
|
|
100
|
-
return {
|
|
101
|
-
type: "basic",
|
|
102
|
-
entity,
|
|
103
|
-
name,
|
|
104
|
-
create: trigger.create ?? false,
|
|
105
|
-
delete: trigger.delete ?? false,
|
|
106
|
-
update: trigger.update ?? false,
|
|
107
|
-
selection: trigger.selection ? this.parseSelection(trigger.selection) : void 0,
|
|
108
|
-
priority: trigger.priority
|
|
109
|
-
};
|
|
110
|
-
}
|
|
111
|
-
parseSelection(selection) {
|
|
112
|
-
if (typeof selection !== "string") {
|
|
113
|
-
return selection;
|
|
114
|
-
}
|
|
115
|
-
const result = graphql.parse(`{
|
|
116
|
-
${selection}
|
|
117
|
-
}`);
|
|
118
|
-
for (const def of result.definitions) {
|
|
119
|
-
if (def.kind === "OperationDefinition") {
|
|
120
|
-
return this.processSelectionSet(def.selectionSet.selections);
|
|
121
|
-
}
|
|
122
|
-
}
|
|
123
|
-
throw new Error();
|
|
124
|
-
}
|
|
125
|
-
processSelectionSet(selectionSet) {
|
|
126
|
-
return selectionSet.map((it) => {
|
|
127
|
-
if (it.kind !== "Field") {
|
|
128
|
-
throw `${it.kind} is not supported.`;
|
|
129
|
-
}
|
|
130
|
-
if (it.arguments?.length === 0 && it.selectionSet === void 0) {
|
|
131
|
-
return it.name.value;
|
|
132
|
-
}
|
|
133
|
-
const args = Object.fromEntries(it.arguments?.map((it2) => [it2.name, parseArguments(it2.value)]) ?? []);
|
|
134
|
-
return [it.name.value, args, it.selectionSet ? this.processSelectionSet(it.selectionSet.selections) : []];
|
|
135
|
-
});
|
|
136
|
-
}
|
|
137
|
-
}
|
|
138
|
-
class ActionsTargetRegistry {
|
|
139
|
-
constructor() {
|
|
140
|
-
__publicField(this, "targets", {});
|
|
141
|
-
__publicField(this, "targetsInverseMap", /* @__PURE__ */ new Map());
|
|
142
|
-
}
|
|
143
|
-
register(name, target) {
|
|
144
|
-
if (this.targets[name]) {
|
|
145
|
-
throw `Duplicate trigger target name ${name}`;
|
|
146
|
-
}
|
|
147
|
-
this.targets[name] = { name, ...target };
|
|
148
|
-
this.targetsInverseMap.set(target, name);
|
|
149
|
-
}
|
|
150
|
-
getName(target) {
|
|
151
|
-
return this.targetsInverseMap.get(target);
|
|
152
|
-
}
|
|
153
|
-
getTargets() {
|
|
154
|
-
return this.targets;
|
|
155
|
-
}
|
|
156
|
-
}
|
|
157
|
-
const parseArguments = (ast) => {
|
|
158
|
-
switch (ast.kind) {
|
|
159
|
-
case graphql.Kind.STRING:
|
|
160
|
-
return ast.value;
|
|
161
|
-
case graphql.Kind.BOOLEAN:
|
|
162
|
-
return ast.value;
|
|
163
|
-
case graphql.Kind.FLOAT:
|
|
164
|
-
return parseFloat(ast.value);
|
|
165
|
-
case graphql.Kind.INT:
|
|
166
|
-
return Number(ast.value);
|
|
167
|
-
case graphql.Kind.LIST:
|
|
168
|
-
return ast.values.map((it) => parseArguments(it));
|
|
169
|
-
case graphql.Kind.OBJECT:
|
|
170
|
-
return Object.fromEntries(ast.fields.map((it) => [it.name.value, parseArguments(it.value)]));
|
|
171
|
-
case graphql.Kind.ENUM:
|
|
172
|
-
return ast.value;
|
|
173
|
-
case graphql.Kind.NULL:
|
|
174
|
-
return null;
|
|
175
|
-
case graphql.Kind.VARIABLE:
|
|
176
|
-
throw `Variables are not supported here.`;
|
|
177
|
-
}
|
|
178
|
-
};
|
|
179
|
-
exports.ActionsFactory = ActionsFactory;
|
|
180
|
-
//# sourceMappingURL=ActionsFactory.cjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ActionsFactory.cjs","sources":["../../../../../../../packages/schema-definition/src/actions/definition/internal/ActionsFactory.ts"],"sourcesContent":["import { assertNever, filterEntityDefinition } from '../../../utils'\nimport { Actions } from '@contember/schema'\nimport { triggersStore } from './store'\nimport { BasicTriggerDefinition, TargetDefinition, WatchTriggerDefinition } from '../triggers'\nimport { ActionsTarget } from '../targets'\nimport { Kind, parse, SelectionNode, ValueNode } from 'graphql'\n\nexport class ActionsFactory {\n\tconstructor(\n\t) {\n\t}\n\n\tpublic create(\n\t\texportedDefinitions: Record<string, any>,\n\t): Actions.Schema {\n\t\tconst entityLikeDefinition = filterEntityDefinition(exportedDefinitions)\n\n\t\tconst targetsRegistry = new ActionsTargetRegistry()\n\t\tfor (const [exportedAs, def] of Object.entries(exportedDefinitions)) {\n\t\t\tif (!(def instanceof ActionsTarget)) {\n\t\t\t\tcontinue\n\t\t\t}\n\t\t\tconst name = def.name ?? exportedAs\n\t\t\ttargetsRegistry.register(name, def.definition)\n\t\t}\n\n\t\tconst triggersDef = entityLikeDefinition.flatMap(([, entity]) => triggersStore.get(entity).map(it => ({\n\t\t\t...it,\n\t\t\tentity,\n\t\t})))\n\n\t\tconst triggerNames = triggersDef.map(it => it.definition.name).filter((it): it is string => !!it)\n\t\ttriggerNames.forEach((it, index, arr) => {\n\t\t\tif (arr.indexOf(it) !== index) {\n\t\t\t\tthrow `Duplicate trigger name ${it}.`\n\t\t\t}\n\t\t})\n\n\t\tconst triggers: Record<string, Actions.AnyTrigger> = {}\n\t\tfor (const { definition, entity, type } of triggersDef) {\n\t\t\tconst name = definition.name\n\t\t\tconst target = this.resolveTarget(name, definition, targetsRegistry)\n\t\t\tlet trigger: Actions.AnyTrigger\n\t\t\tif (type === 'basic') {\n\t\t\t\ttrigger = {\n\t\t\t\t\ttarget,\n\t\t\t\t\t...this.createBasicTrigger(name, entity.name, definition),\n\t\t\t\t}\n\t\t\t} else if (type === 'watch') {\n\t\t\t\ttrigger = {\n\t\t\t\t\ttarget,\n\t\t\t\t\t...this.createWatchTrigger(name, entity.name, definition),\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tassertNever(type)\n\t\t\t}\n\t\t\ttriggers[name] = trigger\n\t\t}\n\n\n\t\treturn { triggers, targets: targetsRegistry.getTargets() }\n\t}\n\n\tprivate resolveTarget(triggerName: string, targetDefinition: TargetDefinition, targetRegistry: ActionsTargetRegistry): string {\n\t\tconst generatedName = `${triggerName}_target`\n\t\tif ('target' in targetDefinition) {\n\t\t\tif (targetDefinition.target instanceof ActionsTarget) {\n\t\t\t\tconst registeredName = targetRegistry.getName(targetDefinition.target.definition)\n\t\t\t\tif (!registeredName) {\n\t\t\t\t\tthrow `Target of ${triggerName} trigger is not registered. Have you exported it?`\n\t\t\t\t}\n\t\t\t\treturn registeredName\n\t\t\t} else {\n\t\t\t\tconst { name, ...def } = targetDefinition.target\n\t\t\t\tconst resolvedName = name ?? generatedName\n\t\t\t\ttargetRegistry.register(resolvedName, { name: generatedName, ...def })\n\t\t\t\treturn resolvedName\n\t\t\t}\n\t\t} else if ('webhook' in targetDefinition) {\n\t\t\tif (typeof targetDefinition.webhook === 'string') {\n\t\t\t\ttargetRegistry.register(generatedName, {\n\t\t\t\t\ttype: 'webhook',\n\t\t\t\t\turl: targetDefinition.webhook,\n\t\t\t\t})\n\t\t\t} else {\n\t\t\t\ttargetRegistry.register(generatedName, {\n\t\t\t\t\ttype: 'webhook',\n\t\t\t\t\t...targetDefinition.webhook,\n\t\t\t\t})\n\t\t\t}\n\t\t\treturn generatedName\n\t\t}\n\t\treturn assertNever(targetDefinition)\n\t}\n\n\tprivate createWatchTrigger(name: string, entity: string, trigger: WatchTriggerDefinition): Omit<Actions.WatchTrigger, 'target'> {\n\t\treturn {\n\t\t\ttype: 'watch',\n\t\t\tentity,\n\t\t\tname,\n\t\t\twatch: this.parseSelection(trigger.watch),\n\t\t\tselection: trigger.selection ? this.parseSelection(trigger.selection) : undefined,\n\t\t\tpriority: trigger.priority,\n\t\t\t...('withNodes' in trigger ? { withNodes: trigger.withNodes } : {}),\n\t\t}\n\t}\n\n\tprivate createBasicTrigger(name: string, entity: string, trigger: BasicTriggerDefinition): Omit<Actions.BasicTrigger, 'target'> {\n\t\treturn {\n\t\t\ttype: 'basic',\n\t\t\tentity,\n\t\t\tname,\n\t\t\tcreate: trigger.create ?? false,\n\t\t\tdelete: trigger.delete ?? false,\n\t\t\tupdate: trigger.update ?? false,\n\t\t\tselection: trigger.selection ? this.parseSelection(trigger.selection) : undefined,\n\t\t\tpriority: trigger.priority,\n\t\t}\n\t}\n\n\tprivate parseSelection(selection: Actions.SelectionNode | string): Actions.SelectionNode {\n\t\tif (typeof selection !== 'string') {\n\t\t\treturn selection\n\t\t}\n\t\tconst result = parse(`{\n\t\t\t${selection}\n\t\t}`)\n\t\tfor (const def of result.definitions) {\n\t\t\tif (def.kind === 'OperationDefinition') {\n\t\t\t\treturn this.processSelectionSet(def.selectionSet.selections)\n\t\t\t}\n\t\t}\n\t\tthrow new Error()\n\t}\n\n\tprivate processSelectionSet(selectionSet: readonly SelectionNode[]): Actions.SelectionNode {\n\t\treturn selectionSet.map(it => {\n\t\t\tif (it.kind !== 'Field') {\n\t\t\t\tthrow `${it.kind} is not supported.`\n\t\t\t}\n\t\t\tif (it.arguments?.length === 0 && it.selectionSet === undefined) {\n\t\t\t\treturn it.name.value\n\t\t\t}\n\t\t\tconst args = Object.fromEntries(it.arguments?.map(it => [it.name, parseArguments(it.value)]) ?? [])\n\t\t\treturn [it.name.value, args, it.selectionSet ? this.processSelectionSet(it.selectionSet.selections) : []]\n\t\t})\n\t}\n}\n\nclass ActionsTargetRegistry {\n\tprivate targets: Record<string, Actions.AnyTarget> = {}\n\tprivate targetsInverseMap = new Map<Omit<Actions.AnyTarget, 'name'>, string>()\n\n\tpublic register(name: string, target: Omit<Actions.AnyTarget, 'name'> & { name?: string }): void {\n\t\tif (this.targets[name]) {\n\t\t\tthrow `Duplicate trigger target name ${name}`\n\t\t}\n\t\tthis.targets[name] = { name, ...target }\n\t\tthis.targetsInverseMap.set(target, name)\n\t}\n\n\tpublic getName(target: Omit<Actions.AnyTarget, 'name'>): string | undefined {\n\t\treturn this.targetsInverseMap.get(target)\n\t}\n\n\tpublic getTargets() {\n\t\treturn this.targets\n\t}\n}\n\nconst parseArguments = (ast: ValueNode): any => {\n\tswitch (ast.kind) {\n\t\tcase Kind.STRING:\n\t\t\treturn ast.value\n\t\tcase Kind.BOOLEAN:\n\t\t\treturn ast.value\n\t\tcase Kind.FLOAT:\n\t\t\treturn parseFloat(ast.value)\n\t\tcase Kind.INT:\n\t\t\treturn Number(ast.value)\n\t\tcase Kind.LIST:\n\t\t\treturn ast.values.map(it => parseArguments(it))\n\t\tcase Kind.OBJECT:\n\t\t\treturn Object.fromEntries(ast.fields.map(it => [it.name.value, parseArguments(it.value)]))\n\t\tcase Kind.ENUM:\n\t\t\treturn ast.value\n\t\tcase Kind.NULL:\n\t\t\treturn null\n\t\tcase Kind.VARIABLE:\n\t\t\tthrow `Variables are not supported here.`\n\t}\n}\n"],"names":["filterEntityDefinition","ActionsTarget","triggersStore","assertNever","parse","it","Kind"],"mappings":"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"}
|