@contember/schema-migrations 1.4.0-rc.8 → 2.0.0-alpha.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/development/index.cjs +167 -0
- package/dist/development/index.cjs.map +1 -0
- package/dist/development/index.js +161 -0
- package/dist/development/index.js.map +1 -0
- package/dist/development/src/Migration.cjs +9 -0
- package/dist/development/src/Migration.cjs.map +1 -0
- package/dist/development/src/Migration.js +9 -0
- package/dist/development/src/Migration.js.map +1 -0
- package/dist/development/src/MigrationDescriber.cjs +67 -0
- package/dist/development/src/MigrationDescriber.cjs.map +1 -0
- package/dist/development/src/MigrationDescriber.js +67 -0
- package/dist/development/src/MigrationDescriber.js.map +1 -0
- package/dist/development/src/SchemaDiffer.cjs +149 -0
- package/dist/development/src/SchemaDiffer.cjs.map +1 -0
- package/dist/development/src/SchemaDiffer.js +149 -0
- package/dist/development/src/SchemaDiffer.js.map +1 -0
- package/dist/development/src/SchemaMigrator.cjs +19 -0
- package/dist/development/src/SchemaMigrator.cjs.map +1 -0
- package/dist/development/src/SchemaMigrator.js +19 -0
- package/dist/development/src/SchemaMigrator.js.map +1 -0
- package/dist/development/src/exceptions.cjs +6 -0
- package/dist/development/src/exceptions.cjs.map +1 -0
- package/dist/development/src/exceptions.js +6 -0
- package/dist/development/src/exceptions.js.map +1 -0
- package/dist/development/src/modifications/ModificationHandler.cjs +13 -0
- package/dist/development/src/modifications/ModificationHandler.cjs.map +1 -0
- package/dist/development/src/modifications/ModificationHandler.js +13 -0
- package/dist/development/src/modifications/ModificationHandler.js.map +1 -0
- package/dist/development/src/modifications/ModificationHandlerFactory.cjs +109 -0
- package/dist/development/src/modifications/ModificationHandlerFactory.cjs.map +1 -0
- package/dist/development/src/modifications/ModificationHandlerFactory.js +109 -0
- package/dist/development/src/modifications/ModificationHandlerFactory.js.map +1 -0
- package/dist/development/src/modifications/ModificationVersions.cjs +19 -0
- package/dist/development/src/modifications/ModificationVersions.cjs.map +1 -0
- package/dist/development/src/modifications/ModificationVersions.js +19 -0
- package/dist/development/src/modifications/ModificationVersions.js.map +1 -0
- package/dist/development/src/modifications/NoopModification.cjs +14 -0
- package/dist/development/src/modifications/NoopModification.cjs.map +1 -0
- package/dist/development/src/modifications/NoopModification.js +14 -0
- package/dist/development/src/modifications/NoopModification.js.map +1 -0
- package/dist/development/src/modifications/acl/PatchAclSchemaModification.cjs +35 -0
- package/dist/development/src/modifications/acl/PatchAclSchemaModification.cjs.map +1 -0
- package/dist/development/src/modifications/acl/PatchAclSchemaModification.js +35 -0
- package/dist/development/src/modifications/acl/PatchAclSchemaModification.js.map +1 -0
- package/dist/development/src/modifications/acl/UpdateAclSchemaModification.cjs +42 -0
- package/dist/development/src/modifications/acl/UpdateAclSchemaModification.cjs.map +1 -0
- package/dist/development/src/modifications/acl/UpdateAclSchemaModification.js +42 -0
- package/dist/development/src/modifications/acl/UpdateAclSchemaModification.js.map +1 -0
- package/dist/development/src/modifications/actions/CreateTargetModification.cjs +38 -0
- package/dist/development/src/modifications/actions/CreateTargetModification.cjs.map +1 -0
- package/dist/development/src/modifications/actions/CreateTargetModification.js +38 -0
- package/dist/development/src/modifications/actions/CreateTargetModification.js.map +1 -0
- package/dist/development/src/modifications/actions/CreateTriggerModification.cjs +38 -0
- package/dist/development/src/modifications/actions/CreateTriggerModification.cjs.map +1 -0
- package/dist/development/src/modifications/actions/CreateTriggerModification.js +38 -0
- package/dist/development/src/modifications/actions/CreateTriggerModification.js.map +1 -0
- package/dist/development/src/modifications/actions/RemoveTargetModification.cjs +38 -0
- package/dist/development/src/modifications/actions/RemoveTargetModification.cjs.map +1 -0
- package/dist/development/src/modifications/actions/RemoveTargetModification.js +38 -0
- package/dist/development/src/modifications/actions/RemoveTargetModification.js.map +1 -0
- package/dist/development/src/modifications/actions/RemoveTriggerModification.cjs +38 -0
- package/dist/development/src/modifications/actions/RemoveTriggerModification.cjs.map +1 -0
- package/dist/development/src/modifications/actions/RemoveTriggerModification.js +38 -0
- package/dist/development/src/modifications/actions/RemoveTriggerModification.js.map +1 -0
- package/dist/development/src/modifications/actions/UpdateTargetModification.cjs +41 -0
- package/dist/development/src/modifications/actions/UpdateTargetModification.cjs.map +1 -0
- package/dist/development/src/modifications/actions/UpdateTargetModification.js +41 -0
- package/dist/development/src/modifications/actions/UpdateTargetModification.js.map +1 -0
- package/dist/development/src/modifications/actions/UpdateTriggerModification.cjs +41 -0
- package/dist/development/src/modifications/actions/UpdateTriggerModification.cjs.map +1 -0
- package/dist/development/src/modifications/actions/UpdateTriggerModification.js +41 -0
- package/dist/development/src/modifications/actions/UpdateTriggerModification.js.map +1 -0
- package/dist/development/src/modifications/columns/CreateColumnModification.cjs +85 -0
- package/dist/development/src/modifications/columns/CreateColumnModification.cjs.map +1 -0
- package/dist/development/src/modifications/columns/CreateColumnModification.js +85 -0
- package/dist/development/src/modifications/columns/CreateColumnModification.js.map +1 -0
- package/dist/development/src/modifications/columns/UpdateColumnDefinitionModification.cjs +136 -0
- package/dist/development/src/modifications/columns/UpdateColumnDefinitionModification.cjs.map +1 -0
- package/dist/development/src/modifications/columns/UpdateColumnDefinitionModification.js +136 -0
- package/dist/development/src/modifications/columns/UpdateColumnDefinitionModification.js.map +1 -0
- package/dist/development/src/modifications/columns/UpdateColumnNameModification.cjs +119 -0
- package/dist/development/src/modifications/columns/UpdateColumnNameModification.cjs.map +1 -0
- package/dist/development/src/modifications/columns/UpdateColumnNameModification.js +119 -0
- package/dist/development/src/modifications/columns/UpdateColumnNameModification.js.map +1 -0
- package/dist/development/src/modifications/columns/columnUtils.cjs +29 -0
- package/dist/development/src/modifications/columns/columnUtils.cjs.map +1 -0
- package/dist/development/src/modifications/columns/columnUtils.js +29 -0
- package/dist/development/src/modifications/columns/columnUtils.js.map +1 -0
- package/dist/development/src/modifications/constraints/CreateUniqueConstraintModification.cjs +70 -0
- package/dist/development/src/modifications/constraints/CreateUniqueConstraintModification.cjs.map +1 -0
- package/dist/development/src/modifications/constraints/CreateUniqueConstraintModification.js +70 -0
- package/dist/development/src/modifications/constraints/CreateUniqueConstraintModification.js.map +1 -0
- package/dist/development/src/modifications/constraints/RemoveUniqueConstraintModification.cjs +80 -0
- package/dist/development/src/modifications/constraints/RemoveUniqueConstraintModification.cjs.map +1 -0
- package/dist/development/src/modifications/constraints/RemoveUniqueConstraintModification.js +80 -0
- package/dist/development/src/modifications/constraints/RemoveUniqueConstraintModification.js.map +1 -0
- package/dist/development/src/modifications/constraints/utils.cjs +34 -0
- package/dist/development/src/modifications/constraints/utils.cjs.map +1 -0
- package/dist/development/src/modifications/constraints/utils.js +34 -0
- package/dist/development/src/modifications/constraints/utils.js.map +1 -0
- package/dist/development/src/modifications/differs/RemoveChangedFieldDiffer.cjs +30 -0
- package/dist/development/src/modifications/differs/RemoveChangedFieldDiffer.cjs.map +1 -0
- package/dist/development/src/modifications/differs/RemoveChangedFieldDiffer.js +30 -0
- package/dist/development/src/modifications/differs/RemoveChangedFieldDiffer.js.map +1 -0
- package/dist/development/src/modifications/differs/RemoveViewDiffer.cjs +42 -0
- package/dist/development/src/modifications/differs/RemoveViewDiffer.cjs.map +1 -0
- package/dist/development/src/modifications/differs/RemoveViewDiffer.js +42 -0
- package/dist/development/src/modifications/differs/RemoveViewDiffer.js.map +1 -0
- package/dist/development/src/modifications/entities/CreateEntityModification.cjs +73 -0
- package/dist/development/src/modifications/entities/CreateEntityModification.cjs.map +1 -0
- package/dist/development/src/modifications/entities/CreateEntityModification.js +73 -0
- package/dist/development/src/modifications/entities/CreateEntityModification.js.map +1 -0
- package/dist/development/src/modifications/entities/CreateViewModification.cjs +66 -0
- package/dist/development/src/modifications/entities/CreateViewModification.cjs.map +1 -0
- package/dist/development/src/modifications/entities/CreateViewModification.js +66 -0
- package/dist/development/src/modifications/entities/CreateViewModification.js.map +1 -0
- package/dist/development/src/modifications/entities/RemoveEntityModification.cjs +100 -0
- package/dist/development/src/modifications/entities/RemoveEntityModification.cjs.map +1 -0
- package/dist/development/src/modifications/entities/RemoveEntityModification.js +100 -0
- package/dist/development/src/modifications/entities/RemoveEntityModification.js.map +1 -0
- package/dist/development/src/modifications/entities/ToggleEventLogModification.cjs +69 -0
- package/dist/development/src/modifications/entities/ToggleEventLogModification.cjs.map +1 -0
- package/dist/development/src/modifications/entities/ToggleEventLogModification.js +69 -0
- package/dist/development/src/modifications/entities/ToggleEventLogModification.js.map +1 -0
- package/dist/development/src/modifications/entities/UpdateEntityNameModification.cjs +99 -0
- package/dist/development/src/modifications/entities/UpdateEntityNameModification.cjs.map +1 -0
- package/dist/development/src/modifications/entities/UpdateEntityNameModification.js +99 -0
- package/dist/development/src/modifications/entities/UpdateEntityNameModification.js.map +1 -0
- package/dist/development/src/modifications/entities/UpdateEntityOrderByModification.cjs +61 -0
- package/dist/development/src/modifications/entities/UpdateEntityOrderByModification.cjs.map +1 -0
- package/dist/development/src/modifications/entities/UpdateEntityOrderByModification.js +61 -0
- package/dist/development/src/modifications/entities/UpdateEntityOrderByModification.js.map +1 -0
- package/dist/development/src/modifications/entities/UpdateEntityTableNameModification.cjs +47 -0
- package/dist/development/src/modifications/entities/UpdateEntityTableNameModification.cjs.map +1 -0
- package/dist/development/src/modifications/entities/UpdateEntityTableNameModification.js +47 -0
- package/dist/development/src/modifications/entities/UpdateEntityTableNameModification.js.map +1 -0
- package/dist/development/src/modifications/entities/UpdateViewModification.cjs +38 -0
- package/dist/development/src/modifications/entities/UpdateViewModification.cjs.map +1 -0
- package/dist/development/src/modifications/entities/UpdateViewModification.js +38 -0
- package/dist/development/src/modifications/entities/UpdateViewModification.js.map +1 -0
- package/dist/development/src/modifications/enums/CreateEnumModification.cjs +45 -0
- package/dist/development/src/modifications/enums/CreateEnumModification.cjs.map +1 -0
- package/dist/development/src/modifications/enums/CreateEnumModification.js +45 -0
- package/dist/development/src/modifications/enums/CreateEnumModification.js.map +1 -0
- package/dist/development/src/modifications/enums/RemoveEnumModification.cjs +38 -0
- package/dist/development/src/modifications/enums/RemoveEnumModification.cjs.map +1 -0
- package/dist/development/src/modifications/enums/RemoveEnumModification.js +38 -0
- package/dist/development/src/modifications/enums/RemoveEnumModification.js.map +1 -0
- package/dist/development/src/modifications/enums/UpdateEnumModification.cjs +50 -0
- package/dist/development/src/modifications/enums/UpdateEnumModification.cjs.map +1 -0
- package/dist/development/src/modifications/enums/UpdateEnumModification.js +50 -0
- package/dist/development/src/modifications/enums/UpdateEnumModification.js.map +1 -0
- package/dist/development/src/modifications/enums/enumUtils.cjs +11 -0
- package/dist/development/src/modifications/enums/enumUtils.cjs.map +1 -0
- package/dist/development/src/modifications/enums/enumUtils.js +11 -0
- package/dist/development/src/modifications/enums/enumUtils.js.map +1 -0
- package/dist/development/src/modifications/exceptions.cjs +6 -0
- package/dist/development/src/modifications/exceptions.cjs.map +1 -0
- package/dist/development/src/modifications/exceptions.js +6 -0
- package/dist/development/src/modifications/exceptions.js.map +1 -0
- package/dist/development/src/modifications/fields/RemoveFieldModification.cjs +72 -0
- package/dist/development/src/modifications/fields/RemoveFieldModification.cjs.map +1 -0
- package/dist/development/src/modifications/fields/RemoveFieldModification.js +72 -0
- package/dist/development/src/modifications/fields/RemoveFieldModification.js.map +1 -0
- package/dist/development/src/modifications/fields/UpdateFieldNameModification.cjs +146 -0
- package/dist/development/src/modifications/fields/UpdateFieldNameModification.cjs.map +1 -0
- package/dist/development/src/modifications/fields/UpdateFieldNameModification.js +146 -0
- package/dist/development/src/modifications/fields/UpdateFieldNameModification.js.map +1 -0
- package/dist/development/src/modifications/indexes/CreateIndexModification.cjs +63 -0
- package/dist/development/src/modifications/indexes/CreateIndexModification.cjs.map +1 -0
- package/dist/development/src/modifications/indexes/CreateIndexModification.js +63 -0
- package/dist/development/src/modifications/indexes/CreateIndexModification.js.map +1 -0
- package/dist/development/src/modifications/indexes/RemoveIndexModification.cjs +82 -0
- package/dist/development/src/modifications/indexes/RemoveIndexModification.cjs.map +1 -0
- package/dist/development/src/modifications/indexes/RemoveIndexModification.js +82 -0
- package/dist/development/src/modifications/indexes/RemoveIndexModification.js.map +1 -0
- package/dist/development/src/modifications/indexes/utils.cjs +32 -0
- package/dist/development/src/modifications/indexes/utils.cjs.map +1 -0
- package/dist/development/src/modifications/indexes/utils.js +32 -0
- package/dist/development/src/modifications/indexes/utils.js.map +1 -0
- package/dist/development/src/modifications/relations/ConvertOneHasManyToManyHasManyRelationModification.cjs +97 -0
- package/dist/development/src/modifications/relations/ConvertOneHasManyToManyHasManyRelationModification.cjs.map +1 -0
- package/dist/development/src/modifications/relations/ConvertOneHasManyToManyHasManyRelationModification.js +97 -0
- package/dist/development/src/modifications/relations/ConvertOneHasManyToManyHasManyRelationModification.js.map +1 -0
- package/dist/development/src/modifications/relations/ConvertOneHasManyToOneHasOneRelationModification.cjs +119 -0
- package/dist/development/src/modifications/relations/ConvertOneHasManyToOneHasOneRelationModification.cjs.map +1 -0
- package/dist/development/src/modifications/relations/ConvertOneHasManyToOneHasOneRelationModification.js +119 -0
- package/dist/development/src/modifications/relations/ConvertOneHasManyToOneHasOneRelationModification.js.map +1 -0
- package/dist/development/src/modifications/relations/ConvertOneToManyRelationModification.cjs +117 -0
- package/dist/development/src/modifications/relations/ConvertOneToManyRelationModification.cjs.map +1 -0
- package/dist/development/src/modifications/relations/ConvertOneToManyRelationModification.js +117 -0
- package/dist/development/src/modifications/relations/ConvertOneToManyRelationModification.js.map +1 -0
- package/dist/development/src/modifications/relations/CreateRelationInverseSideModification.cjs +50 -0
- package/dist/development/src/modifications/relations/CreateRelationInverseSideModification.cjs.map +1 -0
- package/dist/development/src/modifications/relations/CreateRelationInverseSideModification.js +50 -0
- package/dist/development/src/modifications/relations/CreateRelationInverseSideModification.js.map +1 -0
- package/dist/development/src/modifications/relations/CreateRelationModification.cjs +111 -0
- package/dist/development/src/modifications/relations/CreateRelationModification.cjs.map +1 -0
- package/dist/development/src/modifications/relations/CreateRelationModification.js +111 -0
- package/dist/development/src/modifications/relations/CreateRelationModification.js.map +1 -0
- package/dist/development/src/modifications/relations/DisableOrphanRemovalModification.cjs +50 -0
- package/dist/development/src/modifications/relations/DisableOrphanRemovalModification.cjs.map +1 -0
- package/dist/development/src/modifications/relations/DisableOrphanRemovalModification.js +50 -0
- package/dist/development/src/modifications/relations/DisableOrphanRemovalModification.js.map +1 -0
- package/dist/development/src/modifications/relations/EnableOrphanRemovalModification.cjs +53 -0
- package/dist/development/src/modifications/relations/EnableOrphanRemovalModification.cjs.map +1 -0
- package/dist/development/src/modifications/relations/EnableOrphanRemovalModification.js +53 -0
- package/dist/development/src/modifications/relations/EnableOrphanRemovalModification.js.map +1 -0
- package/dist/development/src/modifications/relations/MakeRelationNotNullModification.cjs +65 -0
- package/dist/development/src/modifications/relations/MakeRelationNotNullModification.cjs.map +1 -0
- package/dist/development/src/modifications/relations/MakeRelationNotNullModification.js +65 -0
- package/dist/development/src/modifications/relations/MakeRelationNotNullModification.js.map +1 -0
- package/dist/development/src/modifications/relations/MakeRelationNullableModification.cjs +64 -0
- package/dist/development/src/modifications/relations/MakeRelationNullableModification.cjs.map +1 -0
- package/dist/development/src/modifications/relations/MakeRelationNullableModification.js +64 -0
- package/dist/development/src/modifications/relations/MakeRelationNullableModification.js.map +1 -0
- package/dist/development/src/modifications/relations/ToggleJunctionEventLogModification.cjs +84 -0
- package/dist/development/src/modifications/relations/ToggleJunctionEventLogModification.cjs.map +1 -0
- package/dist/development/src/modifications/relations/ToggleJunctionEventLogModification.js +84 -0
- package/dist/development/src/modifications/relations/ToggleJunctionEventLogModification.js.map +1 -0
- package/dist/development/src/modifications/relations/UpdateRelationOnDeleteModification.cjs +74 -0
- package/dist/development/src/modifications/relations/UpdateRelationOnDeleteModification.cjs.map +1 -0
- package/dist/development/src/modifications/relations/UpdateRelationOnDeleteModification.js +74 -0
- package/dist/development/src/modifications/relations/UpdateRelationOnDeleteModification.js.map +1 -0
- package/dist/development/src/modifications/relations/UpdateRelationOrderByModification.cjs +53 -0
- package/dist/development/src/modifications/relations/UpdateRelationOrderByModification.cjs.map +1 -0
- package/dist/development/src/modifications/relations/UpdateRelationOrderByModification.js +53 -0
- package/dist/development/src/modifications/relations/UpdateRelationOrderByModification.js.map +1 -0
- package/dist/development/src/modifications/relations/helpers.cjs +30 -0
- package/dist/development/src/modifications/relations/helpers.cjs.map +1 -0
- package/dist/development/src/modifications/relations/helpers.js +30 -0
- package/dist/development/src/modifications/relations/helpers.js.map +1 -0
- package/dist/development/src/modifications/relations/normalization.cjs +15 -0
- package/dist/development/src/modifications/relations/normalization.cjs.map +1 -0
- package/dist/development/src/modifications/relations/normalization.js +15 -0
- package/dist/development/src/modifications/relations/normalization.js.map +1 -0
- package/dist/development/src/modifications/settings/UpdateSettingsModification.cjs +59 -0
- package/dist/development/src/modifications/settings/UpdateSettingsModification.cjs.map +1 -0
- package/dist/development/src/modifications/settings/UpdateSettingsModification.js +59 -0
- package/dist/development/src/modifications/settings/UpdateSettingsModification.js.map +1 -0
- package/dist/development/src/modifications/upgrade/RemoveIndexNamesModification.cjs +43 -0
- package/dist/development/src/modifications/upgrade/RemoveIndexNamesModification.cjs.map +1 -0
- package/dist/development/src/modifications/upgrade/RemoveIndexNamesModification.js +43 -0
- package/dist/development/src/modifications/upgrade/RemoveIndexNamesModification.js.map +1 -0
- package/dist/development/src/modifications/utils/columnUtils.cjs +6 -0
- package/dist/development/src/modifications/utils/columnUtils.cjs.map +1 -0
- package/dist/development/src/modifications/utils/columnUtils.js +6 -0
- package/dist/development/src/modifications/utils/columnUtils.js.map +1 -0
- package/dist/development/src/modifications/utils/createJunctionTable.cjs +37 -0
- package/dist/development/src/modifications/utils/createJunctionTable.cjs.map +1 -0
- package/dist/development/src/modifications/utils/createJunctionTable.js +37 -0
- package/dist/development/src/modifications/utils/createJunctionTable.js.map +1 -0
- package/dist/development/src/modifications/utils/diffUtils.cjs +80 -0
- package/dist/development/src/modifications/utils/diffUtils.cjs.map +1 -0
- package/dist/development/src/modifications/utils/diffUtils.js +80 -0
- package/dist/development/src/modifications/utils/diffUtils.js.map +1 -0
- package/dist/development/src/modifications/utils/getPrimaryColumnType.cjs +8 -0
- package/dist/development/src/modifications/utils/getPrimaryColumnType.cjs.map +1 -0
- package/dist/development/src/modifications/utils/getPrimaryColumnType.js +8 -0
- package/dist/development/src/modifications/utils/getPrimaryColumnType.js.map +1 -0
- package/dist/development/src/modifications/utils/schemaUpdateUtils.cjs +196 -0
- package/dist/development/src/modifications/utils/schemaUpdateUtils.cjs.map +1 -0
- package/dist/development/src/modifications/utils/schemaUpdateUtils.js +196 -0
- package/dist/development/src/modifications/utils/schemaUpdateUtils.js.map +1 -0
- package/dist/development/src/modifications/utils/sqlUpdateUtils.cjs +39 -0
- package/dist/development/src/modifications/utils/sqlUpdateUtils.cjs.map +1 -0
- package/dist/development/src/modifications/utils/sqlUpdateUtils.js +39 -0
- package/dist/development/src/modifications/utils/sqlUpdateUtils.js.map +1 -0
- package/dist/development/src/modifications/utils/valueUtils.cjs +5 -0
- package/dist/development/src/modifications/utils/valueUtils.cjs.map +1 -0
- package/dist/development/src/modifications/utils/valueUtils.js +5 -0
- package/dist/development/src/modifications/utils/valueUtils.js.map +1 -0
- package/dist/development/src/modifications/utils/viewDependencies.cjs +46 -0
- package/dist/development/src/modifications/utils/viewDependencies.cjs.map +1 -0
- package/dist/development/src/modifications/utils/viewDependencies.js +46 -0
- package/dist/development/src/modifications/utils/viewDependencies.js.map +1 -0
- package/dist/development/src/modifications/validation/PatchValidationSchemaModification.cjs +35 -0
- package/dist/development/src/modifications/validation/PatchValidationSchemaModification.cjs.map +1 -0
- package/dist/development/src/modifications/validation/PatchValidationSchemaModification.js +35 -0
- package/dist/development/src/modifications/validation/PatchValidationSchemaModification.js.map +1 -0
- package/dist/development/src/modifications/validation/UpdateValidationSchemaModification.cjs +42 -0
- package/dist/development/src/modifications/validation/UpdateValidationSchemaModification.cjs.map +1 -0
- package/dist/development/src/modifications/validation/UpdateValidationSchemaModification.js +42 -0
- package/dist/development/src/modifications/validation/UpdateValidationSchemaModification.js.map +1 -0
- package/dist/development/src/utils/dbHelpers.cjs +5 -0
- package/dist/development/src/utils/dbHelpers.cjs.map +1 -0
- package/dist/development/src/utils/dbHelpers.js +5 -0
- package/dist/development/src/utils/dbHelpers.js.map +1 -0
- package/dist/development/src/utils/deepCopy.cjs +14 -0
- package/dist/development/src/utils/deepCopy.cjs.map +1 -0
- package/dist/development/src/utils/deepCopy.js +15 -0
- package/dist/development/src/utils/deepCopy.js.map +1 -0
- package/dist/development/src/utils/escapeSqlString.cjs +7 -0
- package/dist/development/src/utils/escapeSqlString.cjs.map +1 -0
- package/dist/development/src/utils/escapeSqlString.js +7 -0
- package/dist/development/src/utils/escapeSqlString.js.map +1 -0
- package/dist/development/src/utils/isDefined.cjs +5 -0
- package/dist/development/src/utils/isDefined.cjs.map +1 -0
- package/dist/development/src/utils/isDefined.js +5 -0
- package/dist/development/src/utils/isDefined.js.map +1 -0
- package/dist/development/src/utils/isIt.cjs +7 -0
- package/dist/development/src/utils/isIt.cjs.map +1 -0
- package/dist/development/src/utils/isIt.js +7 -0
- package/dist/development/src/utils/isIt.js.map +1 -0
- package/dist/production/index.cjs +167 -0
- package/dist/production/index.cjs.map +1 -0
- package/dist/production/index.js +161 -0
- package/dist/production/index.js.map +1 -0
- package/dist/production/src/Migration.cjs +9 -0
- package/dist/production/src/Migration.cjs.map +1 -0
- package/dist/production/src/Migration.js +9 -0
- package/dist/production/src/Migration.js.map +1 -0
- package/dist/production/src/MigrationDescriber.cjs +67 -0
- package/dist/production/src/MigrationDescriber.cjs.map +1 -0
- package/dist/production/src/MigrationDescriber.js +67 -0
- package/dist/production/src/MigrationDescriber.js.map +1 -0
- package/dist/production/src/SchemaDiffer.cjs +149 -0
- package/dist/production/src/SchemaDiffer.cjs.map +1 -0
- package/dist/production/src/SchemaDiffer.js +149 -0
- package/dist/production/src/SchemaDiffer.js.map +1 -0
- package/dist/production/src/SchemaMigrator.cjs +19 -0
- package/dist/production/src/SchemaMigrator.cjs.map +1 -0
- package/dist/production/src/SchemaMigrator.js +19 -0
- package/dist/production/src/SchemaMigrator.js.map +1 -0
- package/dist/production/src/exceptions.cjs +6 -0
- package/dist/production/src/exceptions.cjs.map +1 -0
- package/dist/production/src/exceptions.js +6 -0
- package/dist/production/src/exceptions.js.map +1 -0
- package/dist/production/src/modifications/ModificationHandler.cjs +13 -0
- package/dist/production/src/modifications/ModificationHandler.cjs.map +1 -0
- package/dist/production/src/modifications/ModificationHandler.js +13 -0
- package/dist/production/src/modifications/ModificationHandler.js.map +1 -0
- package/dist/production/src/modifications/ModificationHandlerFactory.cjs +109 -0
- package/dist/production/src/modifications/ModificationHandlerFactory.cjs.map +1 -0
- package/dist/production/src/modifications/ModificationHandlerFactory.js +109 -0
- package/dist/production/src/modifications/ModificationHandlerFactory.js.map +1 -0
- package/dist/production/src/modifications/ModificationVersions.cjs +19 -0
- package/dist/production/src/modifications/ModificationVersions.cjs.map +1 -0
- package/dist/production/src/modifications/ModificationVersions.js +19 -0
- package/dist/production/src/modifications/ModificationVersions.js.map +1 -0
- package/dist/production/src/modifications/NoopModification.cjs +14 -0
- package/dist/production/src/modifications/NoopModification.cjs.map +1 -0
- package/dist/production/src/modifications/NoopModification.js +14 -0
- package/dist/production/src/modifications/NoopModification.js.map +1 -0
- package/dist/production/src/modifications/acl/PatchAclSchemaModification.cjs +35 -0
- package/dist/production/src/modifications/acl/PatchAclSchemaModification.cjs.map +1 -0
- package/dist/production/src/modifications/acl/PatchAclSchemaModification.js +35 -0
- package/dist/production/src/modifications/acl/PatchAclSchemaModification.js.map +1 -0
- package/dist/production/src/modifications/acl/UpdateAclSchemaModification.cjs +42 -0
- package/dist/production/src/modifications/acl/UpdateAclSchemaModification.cjs.map +1 -0
- package/dist/production/src/modifications/acl/UpdateAclSchemaModification.js +42 -0
- package/dist/production/src/modifications/acl/UpdateAclSchemaModification.js.map +1 -0
- package/dist/production/src/modifications/actions/CreateTargetModification.cjs +38 -0
- package/dist/production/src/modifications/actions/CreateTargetModification.cjs.map +1 -0
- package/dist/production/src/modifications/actions/CreateTargetModification.js +38 -0
- package/dist/production/src/modifications/actions/CreateTargetModification.js.map +1 -0
- package/dist/production/src/modifications/actions/CreateTriggerModification.cjs +38 -0
- package/dist/production/src/modifications/actions/CreateTriggerModification.cjs.map +1 -0
- package/dist/production/src/modifications/actions/CreateTriggerModification.js +38 -0
- package/dist/production/src/modifications/actions/CreateTriggerModification.js.map +1 -0
- package/dist/production/src/modifications/actions/RemoveTargetModification.cjs +38 -0
- package/dist/production/src/modifications/actions/RemoveTargetModification.cjs.map +1 -0
- package/dist/production/src/modifications/actions/RemoveTargetModification.js +38 -0
- package/dist/production/src/modifications/actions/RemoveTargetModification.js.map +1 -0
- package/dist/production/src/modifications/actions/RemoveTriggerModification.cjs +38 -0
- package/dist/production/src/modifications/actions/RemoveTriggerModification.cjs.map +1 -0
- package/dist/production/src/modifications/actions/RemoveTriggerModification.js +38 -0
- package/dist/production/src/modifications/actions/RemoveTriggerModification.js.map +1 -0
- package/dist/production/src/modifications/actions/UpdateTargetModification.cjs +41 -0
- package/dist/production/src/modifications/actions/UpdateTargetModification.cjs.map +1 -0
- package/dist/production/src/modifications/actions/UpdateTargetModification.js +41 -0
- package/dist/production/src/modifications/actions/UpdateTargetModification.js.map +1 -0
- package/dist/production/src/modifications/actions/UpdateTriggerModification.cjs +41 -0
- package/dist/production/src/modifications/actions/UpdateTriggerModification.cjs.map +1 -0
- package/dist/production/src/modifications/actions/UpdateTriggerModification.js +41 -0
- package/dist/production/src/modifications/actions/UpdateTriggerModification.js.map +1 -0
- package/dist/production/src/modifications/columns/CreateColumnModification.cjs +85 -0
- package/dist/production/src/modifications/columns/CreateColumnModification.cjs.map +1 -0
- package/dist/production/src/modifications/columns/CreateColumnModification.js +85 -0
- package/dist/production/src/modifications/columns/CreateColumnModification.js.map +1 -0
- package/dist/production/src/modifications/columns/UpdateColumnDefinitionModification.cjs +136 -0
- package/dist/production/src/modifications/columns/UpdateColumnDefinitionModification.cjs.map +1 -0
- package/dist/production/src/modifications/columns/UpdateColumnDefinitionModification.js +136 -0
- package/dist/production/src/modifications/columns/UpdateColumnDefinitionModification.js.map +1 -0
- package/dist/production/src/modifications/columns/UpdateColumnNameModification.cjs +119 -0
- package/dist/production/src/modifications/columns/UpdateColumnNameModification.cjs.map +1 -0
- package/dist/production/src/modifications/columns/UpdateColumnNameModification.js +119 -0
- package/dist/production/src/modifications/columns/UpdateColumnNameModification.js.map +1 -0
- package/dist/production/src/modifications/columns/columnUtils.cjs +29 -0
- package/dist/production/src/modifications/columns/columnUtils.cjs.map +1 -0
- package/dist/production/src/modifications/columns/columnUtils.js +29 -0
- package/dist/production/src/modifications/columns/columnUtils.js.map +1 -0
- package/dist/production/src/modifications/constraints/CreateUniqueConstraintModification.cjs +70 -0
- package/dist/production/src/modifications/constraints/CreateUniqueConstraintModification.cjs.map +1 -0
- package/dist/production/src/modifications/constraints/CreateUniqueConstraintModification.js +70 -0
- package/dist/production/src/modifications/constraints/CreateUniqueConstraintModification.js.map +1 -0
- package/dist/production/src/modifications/constraints/RemoveUniqueConstraintModification.cjs +80 -0
- package/dist/production/src/modifications/constraints/RemoveUniqueConstraintModification.cjs.map +1 -0
- package/dist/production/src/modifications/constraints/RemoveUniqueConstraintModification.js +80 -0
- package/dist/production/src/modifications/constraints/RemoveUniqueConstraintModification.js.map +1 -0
- package/dist/production/src/modifications/constraints/utils.cjs +34 -0
- package/dist/production/src/modifications/constraints/utils.cjs.map +1 -0
- package/dist/production/src/modifications/constraints/utils.js +34 -0
- package/dist/production/src/modifications/constraints/utils.js.map +1 -0
- package/dist/production/src/modifications/differs/RemoveChangedFieldDiffer.cjs +30 -0
- package/dist/production/src/modifications/differs/RemoveChangedFieldDiffer.cjs.map +1 -0
- package/dist/production/src/modifications/differs/RemoveChangedFieldDiffer.js +30 -0
- package/dist/production/src/modifications/differs/RemoveChangedFieldDiffer.js.map +1 -0
- package/dist/production/src/modifications/differs/RemoveViewDiffer.cjs +42 -0
- package/dist/production/src/modifications/differs/RemoveViewDiffer.cjs.map +1 -0
- package/dist/production/src/modifications/differs/RemoveViewDiffer.js +42 -0
- package/dist/production/src/modifications/differs/RemoveViewDiffer.js.map +1 -0
- package/dist/production/src/modifications/entities/CreateEntityModification.cjs +73 -0
- package/dist/production/src/modifications/entities/CreateEntityModification.cjs.map +1 -0
- package/dist/production/src/modifications/entities/CreateEntityModification.js +73 -0
- package/dist/production/src/modifications/entities/CreateEntityModification.js.map +1 -0
- package/dist/production/src/modifications/entities/CreateViewModification.cjs +66 -0
- package/dist/production/src/modifications/entities/CreateViewModification.cjs.map +1 -0
- package/dist/production/src/modifications/entities/CreateViewModification.js +66 -0
- package/dist/production/src/modifications/entities/CreateViewModification.js.map +1 -0
- package/dist/production/src/modifications/entities/RemoveEntityModification.cjs +100 -0
- package/dist/production/src/modifications/entities/RemoveEntityModification.cjs.map +1 -0
- package/dist/production/src/modifications/entities/RemoveEntityModification.js +100 -0
- package/dist/production/src/modifications/entities/RemoveEntityModification.js.map +1 -0
- package/dist/production/src/modifications/entities/ToggleEventLogModification.cjs +69 -0
- package/dist/production/src/modifications/entities/ToggleEventLogModification.cjs.map +1 -0
- package/dist/production/src/modifications/entities/ToggleEventLogModification.js +69 -0
- package/dist/production/src/modifications/entities/ToggleEventLogModification.js.map +1 -0
- package/dist/production/src/modifications/entities/UpdateEntityNameModification.cjs +99 -0
- package/dist/production/src/modifications/entities/UpdateEntityNameModification.cjs.map +1 -0
- package/dist/production/src/modifications/entities/UpdateEntityNameModification.js +99 -0
- package/dist/production/src/modifications/entities/UpdateEntityNameModification.js.map +1 -0
- package/dist/production/src/modifications/entities/UpdateEntityOrderByModification.cjs +61 -0
- package/dist/production/src/modifications/entities/UpdateEntityOrderByModification.cjs.map +1 -0
- package/dist/production/src/modifications/entities/UpdateEntityOrderByModification.js +61 -0
- package/dist/production/src/modifications/entities/UpdateEntityOrderByModification.js.map +1 -0
- package/dist/production/src/modifications/entities/UpdateEntityTableNameModification.cjs +47 -0
- package/dist/production/src/modifications/entities/UpdateEntityTableNameModification.cjs.map +1 -0
- package/dist/production/src/modifications/entities/UpdateEntityTableNameModification.js +47 -0
- package/dist/production/src/modifications/entities/UpdateEntityTableNameModification.js.map +1 -0
- package/dist/production/src/modifications/entities/UpdateViewModification.cjs +38 -0
- package/dist/production/src/modifications/entities/UpdateViewModification.cjs.map +1 -0
- package/dist/production/src/modifications/entities/UpdateViewModification.js +38 -0
- package/dist/production/src/modifications/entities/UpdateViewModification.js.map +1 -0
- package/dist/production/src/modifications/enums/CreateEnumModification.cjs +45 -0
- package/dist/production/src/modifications/enums/CreateEnumModification.cjs.map +1 -0
- package/dist/production/src/modifications/enums/CreateEnumModification.js +45 -0
- package/dist/production/src/modifications/enums/CreateEnumModification.js.map +1 -0
- package/dist/production/src/modifications/enums/RemoveEnumModification.cjs +38 -0
- package/dist/production/src/modifications/enums/RemoveEnumModification.cjs.map +1 -0
- package/dist/production/src/modifications/enums/RemoveEnumModification.js +38 -0
- package/dist/production/src/modifications/enums/RemoveEnumModification.js.map +1 -0
- package/dist/production/src/modifications/enums/UpdateEnumModification.cjs +50 -0
- package/dist/production/src/modifications/enums/UpdateEnumModification.cjs.map +1 -0
- package/dist/production/src/modifications/enums/UpdateEnumModification.js +50 -0
- package/dist/production/src/modifications/enums/UpdateEnumModification.js.map +1 -0
- package/dist/production/src/modifications/enums/enumUtils.cjs +11 -0
- package/dist/production/src/modifications/enums/enumUtils.cjs.map +1 -0
- package/dist/production/src/modifications/enums/enumUtils.js +11 -0
- package/dist/production/src/modifications/enums/enumUtils.js.map +1 -0
- package/dist/production/src/modifications/exceptions.cjs +6 -0
- package/dist/production/src/modifications/exceptions.cjs.map +1 -0
- package/dist/production/src/modifications/exceptions.js +6 -0
- package/dist/production/src/modifications/exceptions.js.map +1 -0
- package/dist/production/src/modifications/fields/RemoveFieldModification.cjs +72 -0
- package/dist/production/src/modifications/fields/RemoveFieldModification.cjs.map +1 -0
- package/dist/production/src/modifications/fields/RemoveFieldModification.js +72 -0
- package/dist/production/src/modifications/fields/RemoveFieldModification.js.map +1 -0
- package/dist/production/src/modifications/fields/UpdateFieldNameModification.cjs +146 -0
- package/dist/production/src/modifications/fields/UpdateFieldNameModification.cjs.map +1 -0
- package/dist/production/src/modifications/fields/UpdateFieldNameModification.js +146 -0
- package/dist/production/src/modifications/fields/UpdateFieldNameModification.js.map +1 -0
- package/dist/production/src/modifications/indexes/CreateIndexModification.cjs +63 -0
- package/dist/production/src/modifications/indexes/CreateIndexModification.cjs.map +1 -0
- package/dist/production/src/modifications/indexes/CreateIndexModification.js +63 -0
- package/dist/production/src/modifications/indexes/CreateIndexModification.js.map +1 -0
- package/dist/production/src/modifications/indexes/RemoveIndexModification.cjs +82 -0
- package/dist/production/src/modifications/indexes/RemoveIndexModification.cjs.map +1 -0
- package/dist/production/src/modifications/indexes/RemoveIndexModification.js +82 -0
- package/dist/production/src/modifications/indexes/RemoveIndexModification.js.map +1 -0
- package/dist/production/src/modifications/indexes/utils.cjs +32 -0
- package/dist/production/src/modifications/indexes/utils.cjs.map +1 -0
- package/dist/production/src/modifications/indexes/utils.js +32 -0
- package/dist/production/src/modifications/indexes/utils.js.map +1 -0
- package/dist/production/src/modifications/relations/ConvertOneHasManyToManyHasManyRelationModification.cjs +97 -0
- package/dist/production/src/modifications/relations/ConvertOneHasManyToManyHasManyRelationModification.cjs.map +1 -0
- package/dist/production/src/modifications/relations/ConvertOneHasManyToManyHasManyRelationModification.js +97 -0
- package/dist/production/src/modifications/relations/ConvertOneHasManyToManyHasManyRelationModification.js.map +1 -0
- package/dist/production/src/modifications/relations/ConvertOneHasManyToOneHasOneRelationModification.cjs +119 -0
- package/dist/production/src/modifications/relations/ConvertOneHasManyToOneHasOneRelationModification.cjs.map +1 -0
- package/dist/production/src/modifications/relations/ConvertOneHasManyToOneHasOneRelationModification.js +119 -0
- package/dist/production/src/modifications/relations/ConvertOneHasManyToOneHasOneRelationModification.js.map +1 -0
- package/dist/production/src/modifications/relations/ConvertOneToManyRelationModification.cjs +117 -0
- package/dist/production/src/modifications/relations/ConvertOneToManyRelationModification.cjs.map +1 -0
- package/dist/production/src/modifications/relations/ConvertOneToManyRelationModification.js +117 -0
- package/dist/production/src/modifications/relations/ConvertOneToManyRelationModification.js.map +1 -0
- package/dist/production/src/modifications/relations/CreateRelationInverseSideModification.cjs +50 -0
- package/dist/production/src/modifications/relations/CreateRelationInverseSideModification.cjs.map +1 -0
- package/dist/production/src/modifications/relations/CreateRelationInverseSideModification.js +50 -0
- package/dist/production/src/modifications/relations/CreateRelationInverseSideModification.js.map +1 -0
- package/dist/production/src/modifications/relations/CreateRelationModification.cjs +111 -0
- package/dist/production/src/modifications/relations/CreateRelationModification.cjs.map +1 -0
- package/dist/production/src/modifications/relations/CreateRelationModification.js +111 -0
- package/dist/production/src/modifications/relations/CreateRelationModification.js.map +1 -0
- package/dist/production/src/modifications/relations/DisableOrphanRemovalModification.cjs +50 -0
- package/dist/production/src/modifications/relations/DisableOrphanRemovalModification.cjs.map +1 -0
- package/dist/production/src/modifications/relations/DisableOrphanRemovalModification.js +50 -0
- package/dist/production/src/modifications/relations/DisableOrphanRemovalModification.js.map +1 -0
- package/dist/production/src/modifications/relations/EnableOrphanRemovalModification.cjs +53 -0
- package/dist/production/src/modifications/relations/EnableOrphanRemovalModification.cjs.map +1 -0
- package/dist/production/src/modifications/relations/EnableOrphanRemovalModification.js +53 -0
- package/dist/production/src/modifications/relations/EnableOrphanRemovalModification.js.map +1 -0
- package/dist/production/src/modifications/relations/MakeRelationNotNullModification.cjs +65 -0
- package/dist/production/src/modifications/relations/MakeRelationNotNullModification.cjs.map +1 -0
- package/dist/production/src/modifications/relations/MakeRelationNotNullModification.js +65 -0
- package/dist/production/src/modifications/relations/MakeRelationNotNullModification.js.map +1 -0
- package/dist/production/src/modifications/relations/MakeRelationNullableModification.cjs +64 -0
- package/dist/production/src/modifications/relations/MakeRelationNullableModification.cjs.map +1 -0
- package/dist/production/src/modifications/relations/MakeRelationNullableModification.js +64 -0
- package/dist/production/src/modifications/relations/MakeRelationNullableModification.js.map +1 -0
- package/dist/production/src/modifications/relations/ToggleJunctionEventLogModification.cjs +84 -0
- package/dist/production/src/modifications/relations/ToggleJunctionEventLogModification.cjs.map +1 -0
- package/dist/production/src/modifications/relations/ToggleJunctionEventLogModification.js +84 -0
- package/dist/production/src/modifications/relations/ToggleJunctionEventLogModification.js.map +1 -0
- package/dist/production/src/modifications/relations/UpdateRelationOnDeleteModification.cjs +74 -0
- package/dist/production/src/modifications/relations/UpdateRelationOnDeleteModification.cjs.map +1 -0
- package/dist/production/src/modifications/relations/UpdateRelationOnDeleteModification.js +74 -0
- package/dist/production/src/modifications/relations/UpdateRelationOnDeleteModification.js.map +1 -0
- package/dist/production/src/modifications/relations/UpdateRelationOrderByModification.cjs +53 -0
- package/dist/production/src/modifications/relations/UpdateRelationOrderByModification.cjs.map +1 -0
- package/dist/production/src/modifications/relations/UpdateRelationOrderByModification.js +53 -0
- package/dist/production/src/modifications/relations/UpdateRelationOrderByModification.js.map +1 -0
- package/dist/production/src/modifications/relations/helpers.cjs +30 -0
- package/dist/production/src/modifications/relations/helpers.cjs.map +1 -0
- package/dist/production/src/modifications/relations/helpers.js +30 -0
- package/dist/production/src/modifications/relations/helpers.js.map +1 -0
- package/dist/production/src/modifications/relations/normalization.cjs +15 -0
- package/dist/production/src/modifications/relations/normalization.cjs.map +1 -0
- package/dist/production/src/modifications/relations/normalization.js +15 -0
- package/dist/production/src/modifications/relations/normalization.js.map +1 -0
- package/dist/production/src/modifications/settings/UpdateSettingsModification.cjs +59 -0
- package/dist/production/src/modifications/settings/UpdateSettingsModification.cjs.map +1 -0
- package/dist/production/src/modifications/settings/UpdateSettingsModification.js +59 -0
- package/dist/production/src/modifications/settings/UpdateSettingsModification.js.map +1 -0
- package/dist/production/src/modifications/upgrade/RemoveIndexNamesModification.cjs +43 -0
- package/dist/production/src/modifications/upgrade/RemoveIndexNamesModification.cjs.map +1 -0
- package/dist/production/src/modifications/upgrade/RemoveIndexNamesModification.js +43 -0
- package/dist/production/src/modifications/upgrade/RemoveIndexNamesModification.js.map +1 -0
- package/dist/production/src/modifications/utils/columnUtils.cjs +6 -0
- package/dist/production/src/modifications/utils/columnUtils.cjs.map +1 -0
- package/dist/production/src/modifications/utils/columnUtils.js +6 -0
- package/dist/production/src/modifications/utils/columnUtils.js.map +1 -0
- package/dist/production/src/modifications/utils/createJunctionTable.cjs +37 -0
- package/dist/production/src/modifications/utils/createJunctionTable.cjs.map +1 -0
- package/dist/production/src/modifications/utils/createJunctionTable.js +37 -0
- package/dist/production/src/modifications/utils/createJunctionTable.js.map +1 -0
- package/dist/production/src/modifications/utils/diffUtils.cjs +80 -0
- package/dist/production/src/modifications/utils/diffUtils.cjs.map +1 -0
- package/dist/production/src/modifications/utils/diffUtils.js +80 -0
- package/dist/production/src/modifications/utils/diffUtils.js.map +1 -0
- package/dist/production/src/modifications/utils/getPrimaryColumnType.cjs +8 -0
- package/dist/production/src/modifications/utils/getPrimaryColumnType.cjs.map +1 -0
- package/dist/production/src/modifications/utils/getPrimaryColumnType.js +8 -0
- package/dist/production/src/modifications/utils/getPrimaryColumnType.js.map +1 -0
- package/dist/production/src/modifications/utils/schemaUpdateUtils.cjs +196 -0
- package/dist/production/src/modifications/utils/schemaUpdateUtils.cjs.map +1 -0
- package/dist/production/src/modifications/utils/schemaUpdateUtils.js +196 -0
- package/dist/production/src/modifications/utils/schemaUpdateUtils.js.map +1 -0
- package/dist/production/src/modifications/utils/sqlUpdateUtils.cjs +39 -0
- package/dist/production/src/modifications/utils/sqlUpdateUtils.cjs.map +1 -0
- package/dist/production/src/modifications/utils/sqlUpdateUtils.js +39 -0
- package/dist/production/src/modifications/utils/sqlUpdateUtils.js.map +1 -0
- package/dist/production/src/modifications/utils/valueUtils.cjs +5 -0
- package/dist/production/src/modifications/utils/valueUtils.cjs.map +1 -0
- package/dist/production/src/modifications/utils/valueUtils.js +5 -0
- package/dist/production/src/modifications/utils/valueUtils.js.map +1 -0
- package/dist/production/src/modifications/utils/viewDependencies.cjs +46 -0
- package/dist/production/src/modifications/utils/viewDependencies.cjs.map +1 -0
- package/dist/production/src/modifications/utils/viewDependencies.js +46 -0
- package/dist/production/src/modifications/utils/viewDependencies.js.map +1 -0
- package/dist/production/src/modifications/validation/PatchValidationSchemaModification.cjs +35 -0
- package/dist/production/src/modifications/validation/PatchValidationSchemaModification.cjs.map +1 -0
- package/dist/production/src/modifications/validation/PatchValidationSchemaModification.js +35 -0
- package/dist/production/src/modifications/validation/PatchValidationSchemaModification.js.map +1 -0
- package/dist/production/src/modifications/validation/UpdateValidationSchemaModification.cjs +42 -0
- package/dist/production/src/modifications/validation/UpdateValidationSchemaModification.cjs.map +1 -0
- package/dist/production/src/modifications/validation/UpdateValidationSchemaModification.js +42 -0
- package/dist/production/src/modifications/validation/UpdateValidationSchemaModification.js.map +1 -0
- package/dist/production/src/utils/dbHelpers.cjs +5 -0
- package/dist/production/src/utils/dbHelpers.cjs.map +1 -0
- package/dist/production/src/utils/dbHelpers.js +5 -0
- package/dist/production/src/utils/dbHelpers.js.map +1 -0
- package/dist/production/src/utils/deepCopy.cjs +14 -0
- package/dist/production/src/utils/deepCopy.cjs.map +1 -0
- package/dist/production/src/utils/deepCopy.js +15 -0
- package/dist/production/src/utils/deepCopy.js.map +1 -0
- package/dist/production/src/utils/escapeSqlString.cjs +7 -0
- package/dist/production/src/utils/escapeSqlString.cjs.map +1 -0
- package/dist/production/src/utils/escapeSqlString.js +7 -0
- package/dist/production/src/utils/escapeSqlString.js.map +1 -0
- package/dist/production/src/utils/isDefined.cjs +5 -0
- package/dist/production/src/utils/isDefined.cjs.map +1 -0
- package/dist/production/src/utils/isDefined.js +5 -0
- package/dist/production/src/utils/isDefined.js.map +1 -0
- package/dist/production/src/utils/isIt.cjs +7 -0
- package/dist/production/src/utils/isIt.cjs.map +1 -0
- package/dist/production/src/utils/isIt.js +7 -0
- package/dist/production/src/utils/isIt.js.map +1 -0
- package/dist/tests/tsconfig.tsbuildinfo +1 -1
- package/dist/types/Migration.d.ts +20 -0
- package/dist/types/Migration.d.ts.map +1 -0
- package/dist/types/modifications/ModificationHandler.d.ts.map +1 -0
- package/dist/types/modifications/acl/UpdateAclSchemaModification.d.ts +20 -0
- package/dist/types/modifications/actions/CreateTargetModification.d.ts +20 -0
- package/dist/types/modifications/actions/CreateTriggerModification.d.ts +20 -0
- package/dist/types/modifications/actions/RemoveTargetModification.d.ts +20 -0
- package/dist/types/modifications/actions/RemoveTriggerModification.d.ts +20 -0
- package/dist/types/modifications/actions/UpdateTargetModification.d.ts +21 -0
- package/dist/types/modifications/actions/UpdateTriggerModification.d.ts +20 -0
- package/dist/types/modifications/columns/CreateColumnModification.d.ts +29 -0
- package/dist/types/modifications/columns/UpdateColumnDefinitionModification.d.ts +35 -0
- package/dist/types/modifications/columns/UpdateColumnNameModification.d.ts +24 -0
- package/dist/types/modifications/columns/columnUtils.d.ts +18 -0
- package/dist/types/modifications/columns/columnUtils.d.ts.map +1 -0
- package/dist/types/modifications/constraints/CreateUniqueConstraintModification.d.ts +26 -0
- package/dist/types/modifications/constraints/RemoveUniqueConstraintModification.d.ts +29 -0
- package/dist/types/modifications/constraints/utils.d.ts.map +1 -0
- package/dist/types/modifications/differs/RemoveChangedFieldDiffer.d.ts +8 -0
- package/dist/types/modifications/differs/RemoveViewDiffer.d.ts +12 -0
- package/dist/types/modifications/entities/CreateEntityModification.d.ts +24 -0
- package/dist/types/modifications/entities/RemoveEntityModification.d.ts +25 -0
- package/dist/types/modifications/entities/ToggleEventLogModification.d.ts +24 -0
- package/dist/types/modifications/entities/UpdateEntityOrderByModification.d.ts +23 -0
- package/dist/types/modifications/entities/UpdateEntityTableNameModification.d.ts +23 -0
- package/dist/types/modifications/enums/CreateEnumModification.d.ts +23 -0
- package/dist/types/modifications/enums/RemoveEnumModification.d.ts +22 -0
- package/dist/types/modifications/enums/UpdateEnumModification.d.ts +24 -0
- package/dist/types/modifications/fields/RemoveFieldModification.d.ts +25 -0
- package/dist/types/modifications/indexes/CreateIndexModification.d.ts +23 -0
- package/dist/types/modifications/indexes/RemoveIndexModification.d.ts +29 -0
- package/dist/types/modifications/indexes/utils.d.ts.map +1 -0
- package/dist/types/modifications/relations/ConvertOneHasManyToManyHasManyRelationModification.d.ts +29 -0
- package/dist/types/modifications/relations/ConvertOneHasManyToOneHasOneRelationModification.d.ts +28 -0
- package/dist/types/modifications/relations/ConvertOneToManyRelationModification.d.ts +27 -0
- package/dist/types/modifications/relations/CreateRelationInverseSideModification.d.ts +22 -0
- package/dist/types/modifications/relations/CreateRelationModification.d.ts +30 -0
- package/dist/types/modifications/relations/DisableOrphanRemovalModification.d.ts +22 -0
- package/dist/types/modifications/relations/EnableOrphanRemovalModification.d.ts +22 -0
- package/dist/types/modifications/relations/MakeRelationNotNullModification.d.ts +24 -0
- package/dist/types/modifications/relations/MakeRelationNullableModification.d.ts +23 -0
- package/dist/types/modifications/relations/ToggleJunctionEventLogModification.d.ts +24 -0
- package/dist/types/modifications/relations/UpdateRelationOnDeleteModification.d.ts +24 -0
- package/dist/types/modifications/relations/UpdateRelationOrderByModification.d.ts +23 -0
- package/dist/types/modifications/relations/helpers.d.ts +13 -0
- package/dist/types/modifications/relations/helpers.d.ts.map +1 -0
- package/dist/types/modifications/relations/normalization.d.ts.map +1 -0
- package/dist/types/modifications/settings/UpdateSettingsModification.d.ts +27 -0
- package/dist/types/modifications/utils/columnUtils.d.ts +3 -0
- package/dist/types/modifications/utils/columnUtils.d.ts.map +1 -0
- package/dist/types/modifications/utils/createJunctionTable.d.ts.map +1 -0
- package/dist/types/modifications/utils/diffUtils.d.ts.map +1 -0
- package/dist/types/modifications/utils/getPrimaryColumnType.d.ts.map +1 -0
- package/dist/types/modifications/utils/schemaUpdateUtils.d.ts.map +1 -0
- package/dist/types/modifications/utils/viewDependencies.d.ts.map +1 -0
- package/dist/types/modifications/validation/UpdateValidationSchemaModification.d.ts +20 -0
- package/dist/types/tsconfig.tsbuildinfo +1 -0
- package/dist/types/utils/isDefined.d.ts +2 -0
- package/dist/types/utils/isDefined.d.ts.map +1 -0
- package/dist/types/utils/isIt.d.ts +2 -0
- package/dist/types/utils/isIt.d.ts.map +1 -0
- package/package.json +27 -15
- package/src/Migration.ts +2 -1
- package/src/tsconfig.json +1 -1
- package/vitest.config.ts +3 -0
- package/dist/src/Migration.d.ts +0 -20
- package/dist/src/Migration.d.ts.map +0 -1
- package/dist/src/Migration.js +0 -16
- package/dist/src/Migration.js.map +0 -1
- package/dist/src/MigrationDescriber.js +0 -52
- package/dist/src/MigrationDescriber.js.map +0 -1
- package/dist/src/SchemaDiffer.js +0 -112
- package/dist/src/SchemaDiffer.js.map +0 -1
- package/dist/src/SchemaMigrator.js +0 -20
- package/dist/src/SchemaMigrator.js.map +0 -1
- package/dist/src/exceptions.js +0 -7
- package/dist/src/exceptions.js.map +0 -1
- package/dist/src/index.js +0 -26
- package/dist/src/index.js.map +0 -1
- package/dist/src/modifications/ModificationHandler.d.ts.map +0 -1
- package/dist/src/modifications/ModificationHandler.js +0 -13
- package/dist/src/modifications/ModificationHandler.js.map +0 -1
- package/dist/src/modifications/ModificationHandlerFactory.js +0 -83
- package/dist/src/modifications/ModificationHandlerFactory.js.map +0 -1
- package/dist/src/modifications/ModificationVersions.js +0 -12
- package/dist/src/modifications/ModificationVersions.js.map +0 -1
- package/dist/src/modifications/NoopModification.js +0 -14
- package/dist/src/modifications/NoopModification.js.map +0 -1
- package/dist/src/modifications/acl/PatchAclSchemaModification.js +0 -37
- package/dist/src/modifications/acl/PatchAclSchemaModification.js.map +0 -1
- package/dist/src/modifications/acl/UpdateAclSchemaModification.d.ts +0 -20
- package/dist/src/modifications/acl/UpdateAclSchemaModification.js +0 -44
- package/dist/src/modifications/acl/UpdateAclSchemaModification.js.map +0 -1
- package/dist/src/modifications/acl/index.js +0 -19
- package/dist/src/modifications/acl/index.js.map +0 -1
- package/dist/src/modifications/actions/CreateTargetModification.d.ts +0 -20
- package/dist/src/modifications/actions/CreateTargetModification.js +0 -40
- package/dist/src/modifications/actions/CreateTargetModification.js.map +0 -1
- package/dist/src/modifications/actions/CreateTriggerModification.d.ts +0 -20
- package/dist/src/modifications/actions/CreateTriggerModification.js +0 -40
- package/dist/src/modifications/actions/CreateTriggerModification.js.map +0 -1
- package/dist/src/modifications/actions/RemoveTargetModification.d.ts +0 -20
- package/dist/src/modifications/actions/RemoveTargetModification.js +0 -40
- package/dist/src/modifications/actions/RemoveTargetModification.js.map +0 -1
- package/dist/src/modifications/actions/RemoveTriggerModification.d.ts +0 -20
- package/dist/src/modifications/actions/RemoveTriggerModification.js +0 -40
- package/dist/src/modifications/actions/RemoveTriggerModification.js.map +0 -1
- package/dist/src/modifications/actions/UpdateTargetModification.d.ts +0 -21
- package/dist/src/modifications/actions/UpdateTargetModification.js +0 -46
- package/dist/src/modifications/actions/UpdateTargetModification.js.map +0 -1
- package/dist/src/modifications/actions/UpdateTriggerModification.d.ts +0 -20
- package/dist/src/modifications/actions/UpdateTriggerModification.js +0 -46
- package/dist/src/modifications/actions/UpdateTriggerModification.js.map +0 -1
- package/dist/src/modifications/actions/index.js +0 -20
- package/dist/src/modifications/actions/index.js.map +0 -1
- package/dist/src/modifications/columns/CreateColumnModification.d.ts +0 -29
- package/dist/src/modifications/columns/CreateColumnModification.js +0 -88
- package/dist/src/modifications/columns/CreateColumnModification.js.map +0 -1
- package/dist/src/modifications/columns/UpdateColumnDefinitionModification.d.ts +0 -35
- package/dist/src/modifications/columns/UpdateColumnDefinitionModification.js +0 -126
- package/dist/src/modifications/columns/UpdateColumnDefinitionModification.js.map +0 -1
- package/dist/src/modifications/columns/UpdateColumnNameModification.d.ts +0 -24
- package/dist/src/modifications/columns/UpdateColumnNameModification.js +0 -106
- package/dist/src/modifications/columns/UpdateColumnNameModification.js.map +0 -1
- package/dist/src/modifications/columns/columnUtils.d.ts +0 -18
- package/dist/src/modifications/columns/columnUtils.d.ts.map +0 -1
- package/dist/src/modifications/columns/columnUtils.js +0 -32
- package/dist/src/modifications/columns/columnUtils.js.map +0 -1
- package/dist/src/modifications/columns/index.js +0 -20
- package/dist/src/modifications/columns/index.js.map +0 -1
- package/dist/src/modifications/constraints/CreateUniqueConstraintModification.d.ts +0 -26
- package/dist/src/modifications/constraints/CreateUniqueConstraintModification.js +0 -74
- package/dist/src/modifications/constraints/CreateUniqueConstraintModification.js.map +0 -1
- package/dist/src/modifications/constraints/RemoveUniqueConstraintModification.d.ts +0 -29
- package/dist/src/modifications/constraints/RemoveUniqueConstraintModification.js +0 -82
- package/dist/src/modifications/constraints/RemoveUniqueConstraintModification.js.map +0 -1
- package/dist/src/modifications/constraints/index.js +0 -20
- package/dist/src/modifications/constraints/index.js.map +0 -1
- package/dist/src/modifications/constraints/utils.d.ts.map +0 -1
- package/dist/src/modifications/constraints/utils.js +0 -33
- package/dist/src/modifications/constraints/utils.js.map +0 -1
- package/dist/src/modifications/differs/RemoveChangedFieldDiffer.d.ts +0 -8
- package/dist/src/modifications/differs/RemoveChangedFieldDiffer.js +0 -31
- package/dist/src/modifications/differs/RemoveChangedFieldDiffer.js.map +0 -1
- package/dist/src/modifications/differs/RemoveViewDiffer.d.ts +0 -12
- package/dist/src/modifications/differs/RemoveViewDiffer.js +0 -48
- package/dist/src/modifications/differs/RemoveViewDiffer.js.map +0 -1
- package/dist/src/modifications/differs/index.js +0 -19
- package/dist/src/modifications/differs/index.js.map +0 -1
- package/dist/src/modifications/entities/CreateEntityModification.d.ts +0 -24
- package/dist/src/modifications/entities/CreateEntityModification.js +0 -79
- package/dist/src/modifications/entities/CreateEntityModification.js.map +0 -1
- package/dist/src/modifications/entities/CreateViewModification.js +0 -71
- package/dist/src/modifications/entities/CreateViewModification.js.map +0 -1
- package/dist/src/modifications/entities/RemoveEntityModification.d.ts +0 -25
- package/dist/src/modifications/entities/RemoveEntityModification.js +0 -85
- package/dist/src/modifications/entities/RemoveEntityModification.js.map +0 -1
- package/dist/src/modifications/entities/ToggleEventLogModification.d.ts +0 -24
- package/dist/src/modifications/entities/ToggleEventLogModification.js +0 -66
- package/dist/src/modifications/entities/ToggleEventLogModification.js.map +0 -1
- package/dist/src/modifications/entities/UpdateEntityNameModification.js +0 -79
- package/dist/src/modifications/entities/UpdateEntityNameModification.js.map +0 -1
- package/dist/src/modifications/entities/UpdateEntityOrderByModification.d.ts +0 -23
- package/dist/src/modifications/entities/UpdateEntityOrderByModification.js +0 -63
- package/dist/src/modifications/entities/UpdateEntityOrderByModification.js.map +0 -1
- package/dist/src/modifications/entities/UpdateEntityTableNameModification.d.ts +0 -23
- package/dist/src/modifications/entities/UpdateEntityTableNameModification.js +0 -45
- package/dist/src/modifications/entities/UpdateEntityTableNameModification.js.map +0 -1
- package/dist/src/modifications/entities/UpdateViewModification.js +0 -32
- package/dist/src/modifications/entities/UpdateViewModification.js.map +0 -1
- package/dist/src/modifications/entities/index.js +0 -24
- package/dist/src/modifications/entities/index.js.map +0 -1
- package/dist/src/modifications/enums/CreateEnumModification.d.ts +0 -23
- package/dist/src/modifications/enums/CreateEnumModification.js +0 -47
- package/dist/src/modifications/enums/CreateEnumModification.js.map +0 -1
- package/dist/src/modifications/enums/RemoveEnumModification.d.ts +0 -22
- package/dist/src/modifications/enums/RemoveEnumModification.js +0 -40
- package/dist/src/modifications/enums/RemoveEnumModification.js.map +0 -1
- package/dist/src/modifications/enums/UpdateEnumModification.d.ts +0 -24
- package/dist/src/modifications/enums/UpdateEnumModification.js +0 -56
- package/dist/src/modifications/enums/UpdateEnumModification.js.map +0 -1
- package/dist/src/modifications/enums/enumUtils.js +0 -12
- package/dist/src/modifications/enums/enumUtils.js.map +0 -1
- package/dist/src/modifications/enums/index.js +0 -20
- package/dist/src/modifications/enums/index.js.map +0 -1
- package/dist/src/modifications/exceptions.js +0 -7
- package/dist/src/modifications/exceptions.js.map +0 -1
- package/dist/src/modifications/fields/RemoveFieldModification.d.ts +0 -25
- package/dist/src/modifications/fields/RemoveFieldModification.js +0 -74
- package/dist/src/modifications/fields/RemoveFieldModification.js.map +0 -1
- package/dist/src/modifications/fields/UpdateFieldNameModification.js +0 -140
- package/dist/src/modifications/fields/UpdateFieldNameModification.js.map +0 -1
- package/dist/src/modifications/fields/index.js +0 -19
- package/dist/src/modifications/fields/index.js.map +0 -1
- package/dist/src/modifications/index.js +0 -32
- package/dist/src/modifications/index.js.map +0 -1
- package/dist/src/modifications/indexes/CreateIndexModification.d.ts +0 -23
- package/dist/src/modifications/indexes/CreateIndexModification.js +0 -64
- package/dist/src/modifications/indexes/CreateIndexModification.js.map +0 -1
- package/dist/src/modifications/indexes/RemoveIndexModification.d.ts +0 -29
- package/dist/src/modifications/indexes/RemoveIndexModification.js +0 -82
- package/dist/src/modifications/indexes/RemoveIndexModification.js.map +0 -1
- package/dist/src/modifications/indexes/index.js +0 -19
- package/dist/src/modifications/indexes/index.js.map +0 -1
- package/dist/src/modifications/indexes/utils.d.ts.map +0 -1
- package/dist/src/modifications/indexes/utils.js +0 -33
- package/dist/src/modifications/indexes/utils.js.map +0 -1
- package/dist/src/modifications/relations/ConvertOneHasManyToManyHasManyRelationModification.d.ts +0 -29
- package/dist/src/modifications/relations/ConvertOneHasManyToManyHasManyRelationModification.js +0 -88
- package/dist/src/modifications/relations/ConvertOneHasManyToManyHasManyRelationModification.js.map +0 -1
- package/dist/src/modifications/relations/ConvertOneHasManyToOneHasOneRelationModification.d.ts +0 -28
- package/dist/src/modifications/relations/ConvertOneHasManyToOneHasOneRelationModification.js +0 -98
- package/dist/src/modifications/relations/ConvertOneHasManyToOneHasOneRelationModification.js.map +0 -1
- package/dist/src/modifications/relations/ConvertOneToManyRelationModification.d.ts +0 -27
- package/dist/src/modifications/relations/ConvertOneToManyRelationModification.js +0 -96
- package/dist/src/modifications/relations/ConvertOneToManyRelationModification.js.map +0 -1
- package/dist/src/modifications/relations/CreateRelationInverseSideModification.d.ts +0 -22
- package/dist/src/modifications/relations/CreateRelationInverseSideModification.js +0 -43
- package/dist/src/modifications/relations/CreateRelationInverseSideModification.js.map +0 -1
- package/dist/src/modifications/relations/CreateRelationModification.d.ts +0 -30
- package/dist/src/modifications/relations/CreateRelationModification.js +0 -105
- package/dist/src/modifications/relations/CreateRelationModification.js.map +0 -1
- package/dist/src/modifications/relations/DisableOrphanRemovalModification.d.ts +0 -22
- package/dist/src/modifications/relations/DisableOrphanRemovalModification.js +0 -49
- package/dist/src/modifications/relations/DisableOrphanRemovalModification.js.map +0 -1
- package/dist/src/modifications/relations/EnableOrphanRemovalModification.d.ts +0 -22
- package/dist/src/modifications/relations/EnableOrphanRemovalModification.js +0 -52
- package/dist/src/modifications/relations/EnableOrphanRemovalModification.js.map +0 -1
- package/dist/src/modifications/relations/MakeRelationNotNullModification.d.ts +0 -24
- package/dist/src/modifications/relations/MakeRelationNotNullModification.js +0 -64
- package/dist/src/modifications/relations/MakeRelationNotNullModification.js.map +0 -1
- package/dist/src/modifications/relations/MakeRelationNullableModification.d.ts +0 -23
- package/dist/src/modifications/relations/MakeRelationNullableModification.js +0 -63
- package/dist/src/modifications/relations/MakeRelationNullableModification.js.map +0 -1
- package/dist/src/modifications/relations/ToggleJunctionEventLogModification.d.ts +0 -24
- package/dist/src/modifications/relations/ToggleJunctionEventLogModification.js +0 -83
- package/dist/src/modifications/relations/ToggleJunctionEventLogModification.js.map +0 -1
- package/dist/src/modifications/relations/UpdateRelationOnDeleteModification.d.ts +0 -24
- package/dist/src/modifications/relations/UpdateRelationOnDeleteModification.js +0 -68
- package/dist/src/modifications/relations/UpdateRelationOnDeleteModification.js.map +0 -1
- package/dist/src/modifications/relations/UpdateRelationOrderByModification.d.ts +0 -23
- package/dist/src/modifications/relations/UpdateRelationOrderByModification.js +0 -53
- package/dist/src/modifications/relations/UpdateRelationOrderByModification.js.map +0 -1
- package/dist/src/modifications/relations/helpers.d.ts +0 -13
- package/dist/src/modifications/relations/helpers.d.ts.map +0 -1
- package/dist/src/modifications/relations/helpers.js +0 -29
- package/dist/src/modifications/relations/helpers.js.map +0 -1
- package/dist/src/modifications/relations/index.js +0 -28
- package/dist/src/modifications/relations/index.js.map +0 -1
- package/dist/src/modifications/relations/normalization.d.ts.map +0 -1
- package/dist/src/modifications/relations/normalization.js +0 -16
- package/dist/src/modifications/relations/normalization.js.map +0 -1
- package/dist/src/modifications/settings/UpdateSettingsModification.d.ts +0 -27
- package/dist/src/modifications/settings/UpdateSettingsModification.js +0 -64
- package/dist/src/modifications/settings/UpdateSettingsModification.js.map +0 -1
- package/dist/src/modifications/settings/index.js +0 -18
- package/dist/src/modifications/settings/index.js.map +0 -1
- package/dist/src/modifications/upgrade/RemoveIndexNamesModification.js +0 -40
- package/dist/src/modifications/upgrade/RemoveIndexNamesModification.js.map +0 -1
- package/dist/src/modifications/utils/columnUtils.d.ts +0 -3
- package/dist/src/modifications/utils/columnUtils.d.ts.map +0 -1
- package/dist/src/modifications/utils/columnUtils.js +0 -9
- package/dist/src/modifications/utils/columnUtils.js.map +0 -1
- package/dist/src/modifications/utils/createJunctionTable.d.ts.map +0 -1
- package/dist/src/modifications/utils/createJunctionTable.js +0 -35
- package/dist/src/modifications/utils/createJunctionTable.js.map +0 -1
- package/dist/src/modifications/utils/diffUtils.d.ts.map +0 -1
- package/dist/src/modifications/utils/diffUtils.js +0 -85
- package/dist/src/modifications/utils/diffUtils.js.map +0 -1
- package/dist/src/modifications/utils/getPrimaryColumnType.d.ts.map +0 -1
- package/dist/src/modifications/utils/getPrimaryColumnType.js +0 -9
- package/dist/src/modifications/utils/getPrimaryColumnType.js.map +0 -1
- package/dist/src/modifications/utils/schemaUpdateUtils.d.ts.map +0 -1
- package/dist/src/modifications/utils/schemaUpdateUtils.js +0 -177
- package/dist/src/modifications/utils/schemaUpdateUtils.js.map +0 -1
- package/dist/src/modifications/utils/sqlUpdateUtils.js +0 -40
- package/dist/src/modifications/utils/sqlUpdateUtils.js.map +0 -1
- package/dist/src/modifications/utils/stringArrayEquals.js +0 -9
- package/dist/src/modifications/utils/stringArrayEquals.js.map +0 -1
- package/dist/src/modifications/utils/valueUtils.js +0 -6
- package/dist/src/modifications/utils/valueUtils.js.map +0 -1
- package/dist/src/modifications/utils/viewDependencies.d.ts.map +0 -1
- package/dist/src/modifications/utils/viewDependencies.js +0 -46
- package/dist/src/modifications/utils/viewDependencies.js.map +0 -1
- package/dist/src/modifications/validation/PatchValidationSchemaModification.js +0 -37
- package/dist/src/modifications/validation/PatchValidationSchemaModification.js.map +0 -1
- package/dist/src/modifications/validation/UpdateValidationSchemaModification.d.ts +0 -20
- package/dist/src/modifications/validation/UpdateValidationSchemaModification.js +0 -44
- package/dist/src/modifications/validation/UpdateValidationSchemaModification.js.map +0 -1
- package/dist/src/modifications/validation/index.js +0 -19
- package/dist/src/modifications/validation/index.js.map +0 -1
- package/dist/src/tsconfig.tsbuildinfo +0 -1
- package/dist/src/utils/PartialEntity.js +0 -3
- package/dist/src/utils/PartialEntity.js.map +0 -1
- package/dist/src/utils/dbHelpers.js +0 -6
- package/dist/src/utils/dbHelpers.js.map +0 -1
- package/dist/src/utils/deepCopy.js +0 -20
- package/dist/src/utils/deepCopy.js.map +0 -1
- package/dist/src/utils/escapeSqlString.js +0 -8
- package/dist/src/utils/escapeSqlString.js.map +0 -1
- package/dist/src/utils/isDefined.d.ts +0 -2
- package/dist/src/utils/isDefined.d.ts.map +0 -1
- package/dist/src/utils/isDefined.js +0 -6
- package/dist/src/utils/isDefined.js.map +0 -1
- package/dist/src/utils/isIt.d.ts +0 -2
- package/dist/src/utils/isIt.d.ts.map +0 -1
- package/dist/src/utils/isIt.js +0 -11
- package/dist/src/utils/isIt.js.map +0 -1
- package/dist/tests/cases/integration/convertManyHasOneToOneHasOneRelation.test.js +0 -59
- package/dist/tests/cases/integration/convertManyHasOneToOneHasOneRelation.test.js.map +0 -1
- package/dist/tests/cases/integration/convertOneHasManyToManyHasManyRelation.test.js +0 -96
- package/dist/tests/cases/integration/convertOneHasManyToManyHasManyRelation.test.js.map +0 -1
- package/dist/tests/cases/integration/convertOneToManyRelation.test.js +0 -118
- package/dist/tests/cases/integration/convertOneToManyRelation.test.js.map +0 -1
- package/dist/tests/cases/integration/createAndDropIndex.test.js +0 -67
- package/dist/tests/cases/integration/createAndDropIndex.test.js.map +0 -1
- package/dist/tests/cases/integration/createColumn.test.js +0 -114
- package/dist/tests/cases/integration/createColumn.test.js.map +0 -1
- package/dist/tests/cases/integration/createEntity.test.js +0 -160
- package/dist/tests/cases/integration/createEntity.test.js.map +0 -1
- package/dist/tests/cases/integration/createEnum.test.js +0 -43
- package/dist/tests/cases/integration/createEnum.test.js.map +0 -1
- package/dist/tests/cases/integration/createManyHasMany.test.js +0 -112
- package/dist/tests/cases/integration/createManyHasMany.test.js.map +0 -1
- package/dist/tests/cases/integration/createManyHasOne.test.js +0 -93
- package/dist/tests/cases/integration/createManyHasOne.test.js.map +0 -1
- package/dist/tests/cases/integration/createOneHasMany.test.js +0 -123
- package/dist/tests/cases/integration/createOneHasMany.test.js.map +0 -1
- package/dist/tests/cases/integration/createOneHasOne.test.js +0 -149
- package/dist/tests/cases/integration/createOneHasOne.test.js.map +0 -1
- package/dist/tests/cases/integration/createRelationInverseSide.test.js +0 -84
- package/dist/tests/cases/integration/createRelationInverseSide.test.js.map +0 -1
- package/dist/tests/cases/integration/createUnique.test.js +0 -168
- package/dist/tests/cases/integration/createUnique.test.js.map +0 -1
- package/dist/tests/cases/integration/createView.test.js +0 -183
- package/dist/tests/cases/integration/createView.test.js.map +0 -1
- package/dist/tests/cases/integration/disableOrphanRemoval.test.js +0 -31
- package/dist/tests/cases/integration/disableOrphanRemoval.test.js.map +0 -1
- package/dist/tests/cases/integration/enableOrphanRemoval.test.js +0 -31
- package/dist/tests/cases/integration/enableOrphanRemoval.test.js.map +0 -1
- package/dist/tests/cases/integration/makeColumnNotNull.test.js +0 -33
- package/dist/tests/cases/integration/makeColumnNotNull.test.js.map +0 -1
- package/dist/tests/cases/integration/makeRelationNotNull.test.js +0 -32
- package/dist/tests/cases/integration/makeRelationNotNull.test.js.map +0 -1
- package/dist/tests/cases/integration/makeRelationNullable.test.js +0 -54
- package/dist/tests/cases/integration/makeRelationNullable.test.js.map +0 -1
- package/dist/tests/cases/integration/patchAclSchema.test.js +0 -63
- package/dist/tests/cases/integration/patchAclSchema.test.js.map +0 -1
- package/dist/tests/cases/integration/removeEntity.test.js +0 -131
- package/dist/tests/cases/integration/removeEntity.test.js.map +0 -1
- package/dist/tests/cases/integration/removeEnum.test.js +0 -36
- package/dist/tests/cases/integration/removeEnum.test.js.map +0 -1
- package/dist/tests/cases/integration/removeField.test.js +0 -217
- package/dist/tests/cases/integration/removeField.test.js.map +0 -1
- package/dist/tests/cases/integration/toggleEventLog.test.js +0 -68
- package/dist/tests/cases/integration/toggleEventLog.test.js.map +0 -1
- package/dist/tests/cases/integration/toggleJunctionEventLog.test.js +0 -75
- package/dist/tests/cases/integration/toggleJunctionEventLog.test.js.map +0 -1
- package/dist/tests/cases/integration/updateColumnDefinition.test.js +0 -253
- package/dist/tests/cases/integration/updateColumnDefinition.test.js.map +0 -1
- package/dist/tests/cases/integration/updateEntityName.test.js +0 -133
- package/dist/tests/cases/integration/updateEntityName.test.js.map +0 -1
- package/dist/tests/cases/integration/updateEntityOrderBy.test.js +0 -57
- package/dist/tests/cases/integration/updateEntityOrderBy.test.js.map +0 -1
- package/dist/tests/cases/integration/updateEnum.test.js +0 -34
- package/dist/tests/cases/integration/updateEnum.test.js.map +0 -1
- package/dist/tests/cases/integration/updateFieldName.test.js +0 -221
- package/dist/tests/cases/integration/updateFieldName.test.js.map +0 -1
- package/dist/tests/cases/integration/updateRelationOnDelete.test.js +0 -50
- package/dist/tests/cases/integration/updateRelationOnDelete.test.js.map +0 -1
- package/dist/tests/cases/integration/updateRelationOrderBy.test.js +0 -38
- package/dist/tests/cases/integration/updateRelationOrderBy.test.js.map +0 -1
- package/dist/tests/cases/integration/updateView.test.js +0 -559
- package/dist/tests/cases/integration/updateView.test.js.map +0 -1
- package/dist/tests/src/tags.js +0 -13
- package/dist/tests/src/tags.js.map +0 -1
- package/dist/tests/src/tests.js +0 -72
- package/dist/tests/src/tests.js.map +0 -1
- /package/dist/{src → types}/MigrationDescriber.d.ts +0 -0
- /package/dist/{src → types}/MigrationDescriber.d.ts.map +0 -0
- /package/dist/{src → types}/SchemaDiffer.d.ts +0 -0
- /package/dist/{src → types}/SchemaDiffer.d.ts.map +0 -0
- /package/dist/{src → types}/SchemaMigrator.d.ts +0 -0
- /package/dist/{src → types}/SchemaMigrator.d.ts.map +0 -0
- /package/dist/{src → types}/exceptions.d.ts +0 -0
- /package/dist/{src → types}/exceptions.d.ts.map +0 -0
- /package/dist/{src → types}/index.d.ts +0 -0
- /package/dist/{src → types}/index.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/ModificationHandler.d.ts +0 -0
- /package/dist/{src → types}/modifications/ModificationHandlerFactory.d.ts +0 -0
- /package/dist/{src → types}/modifications/ModificationHandlerFactory.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/ModificationVersions.d.ts +0 -0
- /package/dist/{src → types}/modifications/ModificationVersions.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/NoopModification.d.ts +0 -0
- /package/dist/{src → types}/modifications/NoopModification.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/acl/PatchAclSchemaModification.d.ts +0 -0
- /package/dist/{src → types}/modifications/acl/PatchAclSchemaModification.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/acl/UpdateAclSchemaModification.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/acl/index.d.ts +0 -0
- /package/dist/{src → types}/modifications/acl/index.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/actions/CreateTargetModification.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/actions/CreateTriggerModification.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/actions/RemoveTargetModification.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/actions/RemoveTriggerModification.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/actions/UpdateTargetModification.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/actions/UpdateTriggerModification.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/actions/index.d.ts +0 -0
- /package/dist/{src → types}/modifications/actions/index.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/columns/CreateColumnModification.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/columns/UpdateColumnDefinitionModification.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/columns/UpdateColumnNameModification.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/columns/index.d.ts +0 -0
- /package/dist/{src → types}/modifications/columns/index.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/constraints/CreateUniqueConstraintModification.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/constraints/RemoveUniqueConstraintModification.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/constraints/index.d.ts +0 -0
- /package/dist/{src → types}/modifications/constraints/index.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/constraints/utils.d.ts +0 -0
- /package/dist/{src → types}/modifications/differs/RemoveChangedFieldDiffer.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/differs/RemoveViewDiffer.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/differs/index.d.ts +0 -0
- /package/dist/{src → types}/modifications/differs/index.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/entities/CreateEntityModification.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/entities/CreateViewModification.d.ts +0 -0
- /package/dist/{src → types}/modifications/entities/CreateViewModification.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/entities/RemoveEntityModification.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/entities/ToggleEventLogModification.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/entities/UpdateEntityNameModification.d.ts +0 -0
- /package/dist/{src → types}/modifications/entities/UpdateEntityNameModification.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/entities/UpdateEntityOrderByModification.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/entities/UpdateEntityTableNameModification.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/entities/UpdateViewModification.d.ts +0 -0
- /package/dist/{src → types}/modifications/entities/UpdateViewModification.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/entities/index.d.ts +0 -0
- /package/dist/{src → types}/modifications/entities/index.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/enums/CreateEnumModification.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/enums/RemoveEnumModification.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/enums/UpdateEnumModification.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/enums/enumUtils.d.ts +0 -0
- /package/dist/{src → types}/modifications/enums/enumUtils.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/enums/index.d.ts +0 -0
- /package/dist/{src → types}/modifications/enums/index.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/exceptions.d.ts +0 -0
- /package/dist/{src → types}/modifications/exceptions.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/fields/RemoveFieldModification.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/fields/UpdateFieldNameModification.d.ts +0 -0
- /package/dist/{src → types}/modifications/fields/UpdateFieldNameModification.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/fields/index.d.ts +0 -0
- /package/dist/{src → types}/modifications/fields/index.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/index.d.ts +0 -0
- /package/dist/{src → types}/modifications/index.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/indexes/CreateIndexModification.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/indexes/RemoveIndexModification.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/indexes/index.d.ts +0 -0
- /package/dist/{src → types}/modifications/indexes/index.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/indexes/utils.d.ts +0 -0
- /package/dist/{src → types}/modifications/relations/ConvertOneHasManyToManyHasManyRelationModification.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/relations/ConvertOneHasManyToOneHasOneRelationModification.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/relations/ConvertOneToManyRelationModification.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/relations/CreateRelationInverseSideModification.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/relations/CreateRelationModification.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/relations/DisableOrphanRemovalModification.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/relations/EnableOrphanRemovalModification.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/relations/MakeRelationNotNullModification.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/relations/MakeRelationNullableModification.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/relations/ToggleJunctionEventLogModification.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/relations/UpdateRelationOnDeleteModification.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/relations/UpdateRelationOrderByModification.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/relations/index.d.ts +0 -0
- /package/dist/{src → types}/modifications/relations/index.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/relations/normalization.d.ts +0 -0
- /package/dist/{src → types}/modifications/settings/UpdateSettingsModification.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/settings/index.d.ts +0 -0
- /package/dist/{src → types}/modifications/settings/index.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/upgrade/RemoveIndexNamesModification.d.ts +0 -0
- /package/dist/{src → types}/modifications/upgrade/RemoveIndexNamesModification.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/utils/createJunctionTable.d.ts +0 -0
- /package/dist/{src → types}/modifications/utils/diffUtils.d.ts +0 -0
- /package/dist/{src → types}/modifications/utils/getPrimaryColumnType.d.ts +0 -0
- /package/dist/{src → types}/modifications/utils/schemaUpdateUtils.d.ts +0 -0
- /package/dist/{src → types}/modifications/utils/sqlUpdateUtils.d.ts +0 -0
- /package/dist/{src → types}/modifications/utils/sqlUpdateUtils.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/utils/stringArrayEquals.d.ts +0 -0
- /package/dist/{src → types}/modifications/utils/stringArrayEquals.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/utils/valueUtils.d.ts +0 -0
- /package/dist/{src → types}/modifications/utils/valueUtils.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/utils/viewDependencies.d.ts +0 -0
- /package/dist/{src → types}/modifications/validation/PatchValidationSchemaModification.d.ts +0 -0
- /package/dist/{src → types}/modifications/validation/PatchValidationSchemaModification.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/validation/UpdateValidationSchemaModification.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/validation/index.d.ts +0 -0
- /package/dist/{src → types}/modifications/validation/index.d.ts.map +0 -0
- /package/dist/{src → types}/utils/PartialEntity.d.ts +0 -0
- /package/dist/{src → types}/utils/PartialEntity.d.ts.map +0 -0
- /package/dist/{src → types}/utils/dbHelpers.d.ts +0 -0
- /package/dist/{src → types}/utils/dbHelpers.d.ts.map +0 -0
- /package/dist/{src → types}/utils/deepCopy.d.ts +0 -0
- /package/dist/{src → types}/utils/deepCopy.d.ts.map +0 -0
- /package/dist/{src → types}/utils/escapeSqlString.d.ts +0 -0
- /package/dist/{src → types}/utils/escapeSqlString.d.ts.map +0 -0
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
+
const schemaUpdateUtils = require("../utils/schemaUpdateUtils.cjs");
|
|
4
|
+
const ModificationHandler = require("../ModificationHandler.cjs");
|
|
5
|
+
const sqlUpdateUtils = require("../utils/sqlUpdateUtils.cjs");
|
|
6
|
+
const columnUtils = require("../utils/columnUtils.cjs");
|
|
7
|
+
class CreateEntityModificationHandler {
|
|
8
|
+
constructor(data, schema, options) {
|
|
9
|
+
this.data = data;
|
|
10
|
+
this.schema = schema;
|
|
11
|
+
this.options = options;
|
|
12
|
+
}
|
|
13
|
+
createSql(builder, { systemSchema }) {
|
|
14
|
+
const entity = this.data.entity;
|
|
15
|
+
if (entity.view) {
|
|
16
|
+
builder.createView(entity.tableName, {}, entity.view.sql);
|
|
17
|
+
return;
|
|
18
|
+
}
|
|
19
|
+
const primaryColumn = entity.fields[entity.primary];
|
|
20
|
+
builder.createTable(entity.tableName, {
|
|
21
|
+
[primaryColumn.name]: {
|
|
22
|
+
primaryKey: true,
|
|
23
|
+
type: columnUtils.getColumnSqlType(primaryColumn),
|
|
24
|
+
notNull: true,
|
|
25
|
+
sequenceGenerated: primaryColumn.sequence
|
|
26
|
+
}
|
|
27
|
+
});
|
|
28
|
+
if (entity.eventLog?.enabled !== false) {
|
|
29
|
+
sqlUpdateUtils.createEventTrigger(builder, systemSchema, entity.tableName, [entity.primaryColumn]);
|
|
30
|
+
sqlUpdateUtils.createEventTrxTrigger(builder, systemSchema, entity.tableName);
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
getSchemaUpdater() {
|
|
34
|
+
return schemaUpdateUtils.updateModel(({ model }) => ({
|
|
35
|
+
...model,
|
|
36
|
+
entities: {
|
|
37
|
+
...model.entities,
|
|
38
|
+
[this.data.entity.name]: {
|
|
39
|
+
eventLog: { enabled: true },
|
|
40
|
+
...this.data.entity,
|
|
41
|
+
unique: Object.values(this.data.entity.unique),
|
|
42
|
+
indexes: Object.values(this.data.entity.indexes ?? [])
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
}));
|
|
46
|
+
}
|
|
47
|
+
describe() {
|
|
48
|
+
return { message: `Add entity ${this.data.entity.name}` };
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
const createEntityModification = ModificationHandler.createModificationType({
|
|
52
|
+
id: "createEntity",
|
|
53
|
+
handler: CreateEntityModificationHandler
|
|
54
|
+
});
|
|
55
|
+
class CreateEntityDiffer {
|
|
56
|
+
createDiff(originalSchema, updatedSchema) {
|
|
57
|
+
return Object.values(updatedSchema.model.entities).filter((it) => !originalSchema.model.entities[it.name]).filter((it) => !it.view).map(
|
|
58
|
+
(entity) => createEntityModification.createModification({
|
|
59
|
+
entity: {
|
|
60
|
+
...entity,
|
|
61
|
+
fields: {
|
|
62
|
+
[entity.primary]: entity.fields[entity.primary]
|
|
63
|
+
},
|
|
64
|
+
unique: []
|
|
65
|
+
}
|
|
66
|
+
})
|
|
67
|
+
);
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
exports.CreateEntityDiffer = CreateEntityDiffer;
|
|
71
|
+
exports.CreateEntityModificationHandler = CreateEntityModificationHandler;
|
|
72
|
+
exports.createEntityModification = createEntityModification;
|
|
73
|
+
//# sourceMappingURL=CreateEntityModification.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CreateEntityModification.cjs","sources":["../../../../../../packages/schema-migrations/src/modifications/entities/CreateEntityModification.ts"],"sourcesContent":["import { MigrationBuilder } from '@contember/database-migrations'\nimport { Model, Schema } from '@contember/schema'\nimport { SchemaUpdater, updateModel } from '../utils/schemaUpdateUtils'\nimport {\n\tcreateModificationType,\n\tDiffer,\n\tModificationHandler, ModificationHandlerCreateSqlOptions,\n\tModificationHandlerOptions,\n} from '../ModificationHandler'\nimport { createEventTrigger, createEventTrxTrigger } from '../utils/sqlUpdateUtils'\nimport { PossibleEntityShapeInMigrations } from '../../utils/PartialEntity.js'\nimport { getColumnSqlType } from '../utils/columnUtils'\n\nexport class CreateEntityModificationHandler implements ModificationHandler<CreateEntityModificationData> {\n\tconstructor(\n\t\tprivate readonly data: CreateEntityModificationData,\n\t\tprivate readonly schema: Schema,\n\t\tprivate readonly options: ModificationHandlerOptions,\n\t) {}\n\n\tpublic createSql(builder: MigrationBuilder, { systemSchema }: ModificationHandlerCreateSqlOptions): void {\n\t\tconst entity = this.data.entity\n\t\tif (entity.view) {\n\t\t\t// BC\n\t\t\tbuilder.createView(entity.tableName, {}, entity.view.sql)\n\t\t\treturn\n\t\t}\n\t\tconst primaryColumn = entity.fields[entity.primary] as Model.AnyColumn\n\n\t\tbuilder.createTable(entity.tableName, {\n\t\t\t[primaryColumn.name]: {\n\t\t\t\tprimaryKey: true,\n\t\t\t\ttype: getColumnSqlType(primaryColumn),\n\t\t\t\tnotNull: true,\n\t\t\t\tsequenceGenerated: primaryColumn.sequence,\n\t\t\t},\n\t\t})\n\n\t\tif (entity.eventLog?.enabled !== false) {\n\t\t\tcreateEventTrigger(builder, systemSchema, entity.tableName, [entity.primaryColumn])\n\t\t\tcreateEventTrxTrigger(builder, systemSchema, entity.tableName)\n\t\t}\n\t}\n\n\tpublic getSchemaUpdater(): SchemaUpdater {\n\t\treturn updateModel(({ model }) => ({\n\t\t\t...model,\n\t\t\tentities: {\n\t\t\t\t...model.entities,\n\t\t\t\t[this.data.entity.name]: {\n\t\t\t\t\teventLog: { enabled: true },\n\t\t\t\t\t...this.data.entity,\n\t\t\t\t\tunique: Object.values(this.data.entity.unique),\n\t\t\t\t\tindexes: Object.values(this.data.entity.indexes ?? []),\n\t\t\t\t},\n\t\t\t},\n\t\t}))\n\t}\n\n\n\tdescribe() {\n\t\treturn { message: `Add entity ${this.data.entity.name}` }\n\t}\n\n}\n\nexport const createEntityModification = createModificationType({\n\tid: 'createEntity',\n\thandler: CreateEntityModificationHandler,\n})\n\nexport class CreateEntityDiffer implements Differ {\n\tcreateDiff(originalSchema: Schema, updatedSchema: Schema) {\n\t\treturn Object.values(updatedSchema.model.entities)\n\t\t\t.filter(it => !originalSchema.model.entities[it.name])\n\t\t\t.filter(it => !it.view)\n\t\t\t.map(entity =>\n\t\t\t\tcreateEntityModification.createModification({\n\t\t\t\t\tentity: {\n\t\t\t\t\t\t...entity,\n\t\t\t\t\t\tfields: {\n\t\t\t\t\t\t\t[entity.primary]: entity.fields[entity.primary],\n\t\t\t\t\t\t},\n\t\t\t\t\t\tunique: [],\n\t\t\t\t\t},\n\t\t\t\t}),\n\t\t\t)\n\t}\n}\n\nexport interface CreateEntityModificationData {\n\tentity: PossibleEntityShapeInMigrations\n}\n"],"names":["getColumnSqlType","createEventTrigger","createEventTrxTrigger","updateModel","createModificationType"],"mappings":";;;;;;AAaO,MAAM,gCAA6F;AAAA,EACzG,YACkB,MACA,QACA,SAChB;AAHgB,SAAA,OAAA;AACA,SAAA,SAAA;AACA,SAAA,UAAA;AAAA,EACf;AAAA,EAEI,UAAU,SAA2B,EAAE,gBAA2D;AAClG,UAAA,SAAS,KAAK,KAAK;AACzB,QAAI,OAAO,MAAM;AAEhB,cAAQ,WAAW,OAAO,WAAW,CAAI,GAAA,OAAO,KAAK,GAAG;AACxD;AAAA,IACD;AACA,UAAM,gBAAgB,OAAO,OAAO,OAAO,OAAO;AAE1C,YAAA,YAAY,OAAO,WAAW;AAAA,MACrC,CAAC,cAAc,IAAI,GAAG;AAAA,QACrB,YAAY;AAAA,QACZ,MAAMA,6BAAiB,aAAa;AAAA,QACpC,SAAS;AAAA,QACT,mBAAmB,cAAc;AAAA,MAClC;AAAA,IAAA,CACA;AAEI,QAAA,OAAO,UAAU,YAAY,OAAO;AACxCC,wCAAmB,SAAS,cAAc,OAAO,WAAW,CAAC,OAAO,aAAa,CAAC;AAC5DC,qBAAAA,sBAAA,SAAS,cAAc,OAAO,SAAS;AAAA,IAC9D;AAAA,EACD;AAAA,EAEO,mBAAkC;AACxC,WAAOC,kBAAY,YAAA,CAAC,EAAE,aAAa;AAAA,MAClC,GAAG;AAAA,MACH,UAAU;AAAA,QACT,GAAG,MAAM;AAAA,QACT,CAAC,KAAK,KAAK,OAAO,IAAI,GAAG;AAAA,UACxB,UAAU,EAAE,SAAS,KAAK;AAAA,UAC1B,GAAG,KAAK,KAAK;AAAA,UACb,QAAQ,OAAO,OAAO,KAAK,KAAK,OAAO,MAAM;AAAA,UAC7C,SAAS,OAAO,OAAO,KAAK,KAAK,OAAO,WAAW,EAAE;AAAA,QACtD;AAAA,MACD;AAAA,IACC,EAAA;AAAA,EACH;AAAA,EAGA,WAAW;AACV,WAAO,EAAE,SAAS,cAAc,KAAK,KAAK,OAAO,IAAI;EACtD;AAED;AAEO,MAAM,2BAA2BC,oBAAAA,uBAAuB;AAAA,EAC9D,IAAI;AAAA,EACJ,SAAS;AACV,CAAC;AAEM,MAAM,mBAAqC;AAAA,EACjD,WAAW,gBAAwB,eAAuB;AAClD,WAAA,OAAO,OAAO,cAAc,MAAM,QAAQ,EAC/C,OAAO,QAAM,CAAC,eAAe,MAAM,SAAS,GAAG,IAAI,CAAC,EACpD,OAAO,CAAM,OAAA,CAAC,GAAG,IAAI,EACrB;AAAA,MAAI,CAAA,WACJ,yBAAyB,mBAAmB;AAAA,QAC3C,QAAQ;AAAA,UACP,GAAG;AAAA,UACH,QAAQ;AAAA,YACP,CAAC,OAAO,OAAO,GAAG,OAAO,OAAO,OAAO,OAAO;AAAA,UAC/C;AAAA,UACA,QAAQ,CAAC;AAAA,QACV;AAAA,MAAA,CACA;AAAA,IAAA;AAAA,EAEJ;AACD;;;;"}
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
import { updateModel } from "../utils/schemaUpdateUtils.js";
|
|
2
|
+
import { createModificationType } from "../ModificationHandler.js";
|
|
3
|
+
import { createEventTrigger, createEventTrxTrigger } from "../utils/sqlUpdateUtils.js";
|
|
4
|
+
import { getColumnSqlType } from "../utils/columnUtils.js";
|
|
5
|
+
class CreateEntityModificationHandler {
|
|
6
|
+
constructor(data, schema, options) {
|
|
7
|
+
this.data = data;
|
|
8
|
+
this.schema = schema;
|
|
9
|
+
this.options = options;
|
|
10
|
+
}
|
|
11
|
+
createSql(builder, { systemSchema }) {
|
|
12
|
+
const entity = this.data.entity;
|
|
13
|
+
if (entity.view) {
|
|
14
|
+
builder.createView(entity.tableName, {}, entity.view.sql);
|
|
15
|
+
return;
|
|
16
|
+
}
|
|
17
|
+
const primaryColumn = entity.fields[entity.primary];
|
|
18
|
+
builder.createTable(entity.tableName, {
|
|
19
|
+
[primaryColumn.name]: {
|
|
20
|
+
primaryKey: true,
|
|
21
|
+
type: getColumnSqlType(primaryColumn),
|
|
22
|
+
notNull: true,
|
|
23
|
+
sequenceGenerated: primaryColumn.sequence
|
|
24
|
+
}
|
|
25
|
+
});
|
|
26
|
+
if (entity.eventLog?.enabled !== false) {
|
|
27
|
+
createEventTrigger(builder, systemSchema, entity.tableName, [entity.primaryColumn]);
|
|
28
|
+
createEventTrxTrigger(builder, systemSchema, entity.tableName);
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
getSchemaUpdater() {
|
|
32
|
+
return updateModel(({ model }) => ({
|
|
33
|
+
...model,
|
|
34
|
+
entities: {
|
|
35
|
+
...model.entities,
|
|
36
|
+
[this.data.entity.name]: {
|
|
37
|
+
eventLog: { enabled: true },
|
|
38
|
+
...this.data.entity,
|
|
39
|
+
unique: Object.values(this.data.entity.unique),
|
|
40
|
+
indexes: Object.values(this.data.entity.indexes ?? [])
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
}));
|
|
44
|
+
}
|
|
45
|
+
describe() {
|
|
46
|
+
return { message: `Add entity ${this.data.entity.name}` };
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
const createEntityModification = createModificationType({
|
|
50
|
+
id: "createEntity",
|
|
51
|
+
handler: CreateEntityModificationHandler
|
|
52
|
+
});
|
|
53
|
+
class CreateEntityDiffer {
|
|
54
|
+
createDiff(originalSchema, updatedSchema) {
|
|
55
|
+
return Object.values(updatedSchema.model.entities).filter((it) => !originalSchema.model.entities[it.name]).filter((it) => !it.view).map(
|
|
56
|
+
(entity) => createEntityModification.createModification({
|
|
57
|
+
entity: {
|
|
58
|
+
...entity,
|
|
59
|
+
fields: {
|
|
60
|
+
[entity.primary]: entity.fields[entity.primary]
|
|
61
|
+
},
|
|
62
|
+
unique: []
|
|
63
|
+
}
|
|
64
|
+
})
|
|
65
|
+
);
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
export {
|
|
69
|
+
CreateEntityDiffer,
|
|
70
|
+
CreateEntityModificationHandler,
|
|
71
|
+
createEntityModification
|
|
72
|
+
};
|
|
73
|
+
//# sourceMappingURL=CreateEntityModification.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CreateEntityModification.js","sources":["../../../../../../packages/schema-migrations/src/modifications/entities/CreateEntityModification.ts"],"sourcesContent":["import { MigrationBuilder } from '@contember/database-migrations'\nimport { Model, Schema } from '@contember/schema'\nimport { SchemaUpdater, updateModel } from '../utils/schemaUpdateUtils'\nimport {\n\tcreateModificationType,\n\tDiffer,\n\tModificationHandler, ModificationHandlerCreateSqlOptions,\n\tModificationHandlerOptions,\n} from '../ModificationHandler'\nimport { createEventTrigger, createEventTrxTrigger } from '../utils/sqlUpdateUtils'\nimport { PossibleEntityShapeInMigrations } from '../../utils/PartialEntity.js'\nimport { getColumnSqlType } from '../utils/columnUtils'\n\nexport class CreateEntityModificationHandler implements ModificationHandler<CreateEntityModificationData> {\n\tconstructor(\n\t\tprivate readonly data: CreateEntityModificationData,\n\t\tprivate readonly schema: Schema,\n\t\tprivate readonly options: ModificationHandlerOptions,\n\t) {}\n\n\tpublic createSql(builder: MigrationBuilder, { systemSchema }: ModificationHandlerCreateSqlOptions): void {\n\t\tconst entity = this.data.entity\n\t\tif (entity.view) {\n\t\t\t// BC\n\t\t\tbuilder.createView(entity.tableName, {}, entity.view.sql)\n\t\t\treturn\n\t\t}\n\t\tconst primaryColumn = entity.fields[entity.primary] as Model.AnyColumn\n\n\t\tbuilder.createTable(entity.tableName, {\n\t\t\t[primaryColumn.name]: {\n\t\t\t\tprimaryKey: true,\n\t\t\t\ttype: getColumnSqlType(primaryColumn),\n\t\t\t\tnotNull: true,\n\t\t\t\tsequenceGenerated: primaryColumn.sequence,\n\t\t\t},\n\t\t})\n\n\t\tif (entity.eventLog?.enabled !== false) {\n\t\t\tcreateEventTrigger(builder, systemSchema, entity.tableName, [entity.primaryColumn])\n\t\t\tcreateEventTrxTrigger(builder, systemSchema, entity.tableName)\n\t\t}\n\t}\n\n\tpublic getSchemaUpdater(): SchemaUpdater {\n\t\treturn updateModel(({ model }) => ({\n\t\t\t...model,\n\t\t\tentities: {\n\t\t\t\t...model.entities,\n\t\t\t\t[this.data.entity.name]: {\n\t\t\t\t\teventLog: { enabled: true },\n\t\t\t\t\t...this.data.entity,\n\t\t\t\t\tunique: Object.values(this.data.entity.unique),\n\t\t\t\t\tindexes: Object.values(this.data.entity.indexes ?? []),\n\t\t\t\t},\n\t\t\t},\n\t\t}))\n\t}\n\n\n\tdescribe() {\n\t\treturn { message: `Add entity ${this.data.entity.name}` }\n\t}\n\n}\n\nexport const createEntityModification = createModificationType({\n\tid: 'createEntity',\n\thandler: CreateEntityModificationHandler,\n})\n\nexport class CreateEntityDiffer implements Differ {\n\tcreateDiff(originalSchema: Schema, updatedSchema: Schema) {\n\t\treturn Object.values(updatedSchema.model.entities)\n\t\t\t.filter(it => !originalSchema.model.entities[it.name])\n\t\t\t.filter(it => !it.view)\n\t\t\t.map(entity =>\n\t\t\t\tcreateEntityModification.createModification({\n\t\t\t\t\tentity: {\n\t\t\t\t\t\t...entity,\n\t\t\t\t\t\tfields: {\n\t\t\t\t\t\t\t[entity.primary]: entity.fields[entity.primary],\n\t\t\t\t\t\t},\n\t\t\t\t\t\tunique: [],\n\t\t\t\t\t},\n\t\t\t\t}),\n\t\t\t)\n\t}\n}\n\nexport interface CreateEntityModificationData {\n\tentity: PossibleEntityShapeInMigrations\n}\n"],"names":[],"mappings":";;;;AAaO,MAAM,gCAA6F;AAAA,EACzG,YACkB,MACA,QACA,SAChB;AAHgB,SAAA,OAAA;AACA,SAAA,SAAA;AACA,SAAA,UAAA;AAAA,EACf;AAAA,EAEI,UAAU,SAA2B,EAAE,gBAA2D;AAClG,UAAA,SAAS,KAAK,KAAK;AACzB,QAAI,OAAO,MAAM;AAEhB,cAAQ,WAAW,OAAO,WAAW,CAAI,GAAA,OAAO,KAAK,GAAG;AACxD;AAAA,IACD;AACA,UAAM,gBAAgB,OAAO,OAAO,OAAO,OAAO;AAE1C,YAAA,YAAY,OAAO,WAAW;AAAA,MACrC,CAAC,cAAc,IAAI,GAAG;AAAA,QACrB,YAAY;AAAA,QACZ,MAAM,iBAAiB,aAAa;AAAA,QACpC,SAAS;AAAA,QACT,mBAAmB,cAAc;AAAA,MAClC;AAAA,IAAA,CACA;AAEI,QAAA,OAAO,UAAU,YAAY,OAAO;AACxC,yBAAmB,SAAS,cAAc,OAAO,WAAW,CAAC,OAAO,aAAa,CAAC;AAC5D,4BAAA,SAAS,cAAc,OAAO,SAAS;AAAA,IAC9D;AAAA,EACD;AAAA,EAEO,mBAAkC;AACxC,WAAO,YAAY,CAAC,EAAE,aAAa;AAAA,MAClC,GAAG;AAAA,MACH,UAAU;AAAA,QACT,GAAG,MAAM;AAAA,QACT,CAAC,KAAK,KAAK,OAAO,IAAI,GAAG;AAAA,UACxB,UAAU,EAAE,SAAS,KAAK;AAAA,UAC1B,GAAG,KAAK,KAAK;AAAA,UACb,QAAQ,OAAO,OAAO,KAAK,KAAK,OAAO,MAAM;AAAA,UAC7C,SAAS,OAAO,OAAO,KAAK,KAAK,OAAO,WAAW,EAAE;AAAA,QACtD;AAAA,MACD;AAAA,IACC,EAAA;AAAA,EACH;AAAA,EAGA,WAAW;AACV,WAAO,EAAE,SAAS,cAAc,KAAK,KAAK,OAAO,IAAI;EACtD;AAED;AAEO,MAAM,2BAA2B,uBAAuB;AAAA,EAC9D,IAAI;AAAA,EACJ,SAAS;AACV,CAAC;AAEM,MAAM,mBAAqC;AAAA,EACjD,WAAW,gBAAwB,eAAuB;AAClD,WAAA,OAAO,OAAO,cAAc,MAAM,QAAQ,EAC/C,OAAO,QAAM,CAAC,eAAe,MAAM,SAAS,GAAG,IAAI,CAAC,EACpD,OAAO,CAAM,OAAA,CAAC,GAAG,IAAI,EACrB;AAAA,MAAI,CAAA,WACJ,yBAAyB,mBAAmB;AAAA,QAC3C,QAAQ;AAAA,UACP,GAAG;AAAA,UACH,QAAQ;AAAA,YACP,CAAC,OAAO,OAAO,GAAG,OAAO,OAAO,OAAO,OAAO;AAAA,UAC/C;AAAA,UACA,QAAQ,CAAC;AAAA,QACV;AAAA,MAAA,CACA;AAAA,IAAA;AAAA,EAEJ;AACD;"}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
+
const schemaUpdateUtils = require("../utils/schemaUpdateUtils.cjs");
|
|
4
|
+
const ModificationHandler = require("../ModificationHandler.cjs");
|
|
5
|
+
class CreateViewModificationHandler {
|
|
6
|
+
constructor(data, schema) {
|
|
7
|
+
this.data = data;
|
|
8
|
+
this.schema = schema;
|
|
9
|
+
}
|
|
10
|
+
createSql(builder) {
|
|
11
|
+
const entity = this.data.entity;
|
|
12
|
+
if (!entity.view) {
|
|
13
|
+
throw new Error();
|
|
14
|
+
}
|
|
15
|
+
builder.createView(entity.tableName, {}, entity.view.sql);
|
|
16
|
+
}
|
|
17
|
+
getSchemaUpdater() {
|
|
18
|
+
return schemaUpdateUtils.updateModel(({ model }) => ({
|
|
19
|
+
...model,
|
|
20
|
+
entities: {
|
|
21
|
+
...model.entities,
|
|
22
|
+
[this.data.entity.name]: {
|
|
23
|
+
eventLog: { enabled: true },
|
|
24
|
+
// not relevant here...
|
|
25
|
+
...this.data.entity,
|
|
26
|
+
unique: Object.values(this.data.entity.unique),
|
|
27
|
+
indexes: Object.values(this.data.entity.indexes ?? [])
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
}));
|
|
31
|
+
}
|
|
32
|
+
describe() {
|
|
33
|
+
return { message: `Add view ${this.data.entity.name}` };
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
const createViewModification = ModificationHandler.createModificationType({
|
|
37
|
+
id: "createView",
|
|
38
|
+
handler: CreateViewModificationHandler
|
|
39
|
+
});
|
|
40
|
+
class CreateViewDiffer {
|
|
41
|
+
createDiff(originalSchema, updatedSchema) {
|
|
42
|
+
const newViews = Object.values(updatedSchema.model.entities).filter((it) => !originalSchema.model.entities[it.name]).filter((it) => !!it.view);
|
|
43
|
+
const created = /* @__PURE__ */ new Set();
|
|
44
|
+
const modifications = [];
|
|
45
|
+
const cascadeCreate = (entity) => {
|
|
46
|
+
if (originalSchema.model.entities[entity.name] || created.has(entity.name)) {
|
|
47
|
+
return;
|
|
48
|
+
}
|
|
49
|
+
created.add(entity.name);
|
|
50
|
+
for (const dependency of entity.view?.dependencies ?? []) {
|
|
51
|
+
cascadeCreate(updatedSchema.model.entities[dependency]);
|
|
52
|
+
}
|
|
53
|
+
modifications.push(createViewModification.createModification({
|
|
54
|
+
entity
|
|
55
|
+
}));
|
|
56
|
+
};
|
|
57
|
+
for (const view of newViews) {
|
|
58
|
+
cascadeCreate(view);
|
|
59
|
+
}
|
|
60
|
+
return modifications;
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
exports.CreateViewDiffer = CreateViewDiffer;
|
|
64
|
+
exports.CreateViewModificationHandler = CreateViewModificationHandler;
|
|
65
|
+
exports.createViewModification = createViewModification;
|
|
66
|
+
//# sourceMappingURL=CreateViewModification.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CreateViewModification.cjs","sources":["../../../../../../packages/schema-migrations/src/modifications/entities/CreateViewModification.ts"],"sourcesContent":["import { MigrationBuilder } from '@contember/database-migrations'\nimport { Model, Schema } from '@contember/schema'\nimport { SchemaUpdater, updateModel } from '../utils/schemaUpdateUtils'\nimport { createModificationType, Differ, ModificationHandler } from '../ModificationHandler'\nimport { Migration } from '../../Migration'\nimport { PossibleEntityShapeInMigrations } from '../../utils/PartialEntity.js'\n\nexport class CreateViewModificationHandler implements ModificationHandler<CreateViewModificationData> {\n\tconstructor(private readonly data: CreateViewModificationData, private readonly schema: Schema) {}\n\n\tpublic createSql(builder: MigrationBuilder): void {\n\t\tconst entity = this.data.entity\n\t\tif (!entity.view) {\n\t\t\tthrow new Error()\n\t\t}\n\t\tbuilder.createView(entity.tableName, {}, entity.view.sql)\n\t}\n\n\tpublic getSchemaUpdater(): SchemaUpdater {\n\t\treturn updateModel(({ model }) => ({\n\t\t\t...model,\n\t\t\tentities: {\n\t\t\t\t...model.entities,\n\t\t\t\t[this.data.entity.name]: {\n\t\t\t\t\teventLog: { enabled: true }, // not relevant here...\n\t\t\t\t\t...this.data.entity,\n\t\t\t\t\tunique: Object.values(this.data.entity.unique),\n\t\t\t\t\tindexes: Object.values(this.data.entity.indexes ?? []),\n\t\t\t\t},\n\t\t\t},\n\t\t}))\n\t}\n\n\n\tdescribe() {\n\t\treturn { message: `Add view ${this.data.entity.name}` }\n\t}\n}\n\nexport const createViewModification = createModificationType({\n\tid: 'createView',\n\thandler: CreateViewModificationHandler,\n})\n\nexport class CreateViewDiffer implements Differ {\n\tcreateDiff(originalSchema: Schema, updatedSchema: Schema) {\n\t\tconst newViews = Object.values(updatedSchema.model.entities)\n\t\t\t.filter(it => !originalSchema.model.entities[it.name])\n\t\t\t.filter(it => !!it.view)\n\t\tconst created = new Set<string>()\n\t\tconst modifications: Migration.Modification[] = []\n\t\tconst cascadeCreate = (entity: Model.Entity) => {\n\t\t\tif (originalSchema.model.entities[entity.name] || created.has(entity.name)) {\n\t\t\t\treturn\n\t\t\t}\n\t\t\tcreated.add(entity.name)\n\t\t\tfor (const dependency of entity.view?.dependencies ?? []) {\n\t\t\t\tcascadeCreate(updatedSchema.model.entities[dependency])\n\t\t\t}\n\t\t\tmodifications.push(createViewModification.createModification({\n\t\t\t\tentity: entity,\n\t\t\t}))\n\t\t}\n\t\tfor (const view of newViews) {\n\t\t\tcascadeCreate(view)\n\t\t}\n\t\treturn modifications\n\t}\n}\n\nexport interface CreateViewModificationData {\n\tentity: PossibleEntityShapeInMigrations\n}\n"],"names":["updateModel","createModificationType"],"mappings":";;;;AAOO,MAAM,8BAAyF;AAAA,EACrG,YAA6B,MAAmD,QAAgB;AAAnE,SAAA,OAAA;AAAmD,SAAA,SAAA;AAAA,EAAiB;AAAA,EAE1F,UAAU,SAAiC;AAC3C,UAAA,SAAS,KAAK,KAAK;AACrB,QAAA,CAAC,OAAO,MAAM;AACjB,YAAM,IAAI,MAAM;AAAA,IACjB;AACA,YAAQ,WAAW,OAAO,WAAW,CAAI,GAAA,OAAO,KAAK,GAAG;AAAA,EACzD;AAAA,EAEO,mBAAkC;AACxC,WAAOA,kBAAY,YAAA,CAAC,EAAE,aAAa;AAAA,MAClC,GAAG;AAAA,MACH,UAAU;AAAA,QACT,GAAG,MAAM;AAAA,QACT,CAAC,KAAK,KAAK,OAAO,IAAI,GAAG;AAAA,UACxB,UAAU,EAAE,SAAS,KAAK;AAAA;AAAA,UAC1B,GAAG,KAAK,KAAK;AAAA,UACb,QAAQ,OAAO,OAAO,KAAK,KAAK,OAAO,MAAM;AAAA,UAC7C,SAAS,OAAO,OAAO,KAAK,KAAK,OAAO,WAAW,EAAE;AAAA,QACtD;AAAA,MACD;AAAA,IACC,EAAA;AAAA,EACH;AAAA,EAGA,WAAW;AACV,WAAO,EAAE,SAAS,YAAY,KAAK,KAAK,OAAO,IAAI;EACpD;AACD;AAEO,MAAM,yBAAyBC,oBAAAA,uBAAuB;AAAA,EAC5D,IAAI;AAAA,EACJ,SAAS;AACV,CAAC;AAEM,MAAM,iBAAmC;AAAA,EAC/C,WAAW,gBAAwB,eAAuB;AACnD,UAAA,WAAW,OAAO,OAAO,cAAc,MAAM,QAAQ,EACzD,OAAO,CAAA,OAAM,CAAC,eAAe,MAAM,SAAS,GAAG,IAAI,CAAC,EACpD,OAAO,CAAM,OAAA,CAAC,CAAC,GAAG,IAAI;AAClB,UAAA,8BAAc;AACpB,UAAM,gBAA0C,CAAA;AAC1C,UAAA,gBAAgB,CAAC,WAAyB;AAC3C,UAAA,eAAe,MAAM,SAAS,OAAO,IAAI,KAAK,QAAQ,IAAI,OAAO,IAAI,GAAG;AAC3E;AAAA,MACD;AACQ,cAAA,IAAI,OAAO,IAAI;AACvB,iBAAW,cAAc,OAAO,MAAM,gBAAgB,CAAA,GAAI;AACzD,sBAAc,cAAc,MAAM,SAAS,UAAU,CAAC;AAAA,MACvD;AACc,oBAAA,KAAK,uBAAuB,mBAAmB;AAAA,QAC5D;AAAA,MACA,CAAA,CAAC;AAAA,IAAA;AAEH,eAAW,QAAQ,UAAU;AAC5B,oBAAc,IAAI;AAAA,IACnB;AACO,WAAA;AAAA,EACR;AACD;;;;"}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import { updateModel } from "../utils/schemaUpdateUtils.js";
|
|
2
|
+
import { createModificationType } from "../ModificationHandler.js";
|
|
3
|
+
class CreateViewModificationHandler {
|
|
4
|
+
constructor(data, schema) {
|
|
5
|
+
this.data = data;
|
|
6
|
+
this.schema = schema;
|
|
7
|
+
}
|
|
8
|
+
createSql(builder) {
|
|
9
|
+
const entity = this.data.entity;
|
|
10
|
+
if (!entity.view) {
|
|
11
|
+
throw new Error();
|
|
12
|
+
}
|
|
13
|
+
builder.createView(entity.tableName, {}, entity.view.sql);
|
|
14
|
+
}
|
|
15
|
+
getSchemaUpdater() {
|
|
16
|
+
return updateModel(({ model }) => ({
|
|
17
|
+
...model,
|
|
18
|
+
entities: {
|
|
19
|
+
...model.entities,
|
|
20
|
+
[this.data.entity.name]: {
|
|
21
|
+
eventLog: { enabled: true },
|
|
22
|
+
// not relevant here...
|
|
23
|
+
...this.data.entity,
|
|
24
|
+
unique: Object.values(this.data.entity.unique),
|
|
25
|
+
indexes: Object.values(this.data.entity.indexes ?? [])
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
}));
|
|
29
|
+
}
|
|
30
|
+
describe() {
|
|
31
|
+
return { message: `Add view ${this.data.entity.name}` };
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
const createViewModification = createModificationType({
|
|
35
|
+
id: "createView",
|
|
36
|
+
handler: CreateViewModificationHandler
|
|
37
|
+
});
|
|
38
|
+
class CreateViewDiffer {
|
|
39
|
+
createDiff(originalSchema, updatedSchema) {
|
|
40
|
+
const newViews = Object.values(updatedSchema.model.entities).filter((it) => !originalSchema.model.entities[it.name]).filter((it) => !!it.view);
|
|
41
|
+
const created = /* @__PURE__ */ new Set();
|
|
42
|
+
const modifications = [];
|
|
43
|
+
const cascadeCreate = (entity) => {
|
|
44
|
+
if (originalSchema.model.entities[entity.name] || created.has(entity.name)) {
|
|
45
|
+
return;
|
|
46
|
+
}
|
|
47
|
+
created.add(entity.name);
|
|
48
|
+
for (const dependency of entity.view?.dependencies ?? []) {
|
|
49
|
+
cascadeCreate(updatedSchema.model.entities[dependency]);
|
|
50
|
+
}
|
|
51
|
+
modifications.push(createViewModification.createModification({
|
|
52
|
+
entity
|
|
53
|
+
}));
|
|
54
|
+
};
|
|
55
|
+
for (const view of newViews) {
|
|
56
|
+
cascadeCreate(view);
|
|
57
|
+
}
|
|
58
|
+
return modifications;
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
export {
|
|
62
|
+
CreateViewDiffer,
|
|
63
|
+
CreateViewModificationHandler,
|
|
64
|
+
createViewModification
|
|
65
|
+
};
|
|
66
|
+
//# sourceMappingURL=CreateViewModification.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CreateViewModification.js","sources":["../../../../../../packages/schema-migrations/src/modifications/entities/CreateViewModification.ts"],"sourcesContent":["import { MigrationBuilder } from '@contember/database-migrations'\nimport { Model, Schema } from '@contember/schema'\nimport { SchemaUpdater, updateModel } from '../utils/schemaUpdateUtils'\nimport { createModificationType, Differ, ModificationHandler } from '../ModificationHandler'\nimport { Migration } from '../../Migration'\nimport { PossibleEntityShapeInMigrations } from '../../utils/PartialEntity.js'\n\nexport class CreateViewModificationHandler implements ModificationHandler<CreateViewModificationData> {\n\tconstructor(private readonly data: CreateViewModificationData, private readonly schema: Schema) {}\n\n\tpublic createSql(builder: MigrationBuilder): void {\n\t\tconst entity = this.data.entity\n\t\tif (!entity.view) {\n\t\t\tthrow new Error()\n\t\t}\n\t\tbuilder.createView(entity.tableName, {}, entity.view.sql)\n\t}\n\n\tpublic getSchemaUpdater(): SchemaUpdater {\n\t\treturn updateModel(({ model }) => ({\n\t\t\t...model,\n\t\t\tentities: {\n\t\t\t\t...model.entities,\n\t\t\t\t[this.data.entity.name]: {\n\t\t\t\t\teventLog: { enabled: true }, // not relevant here...\n\t\t\t\t\t...this.data.entity,\n\t\t\t\t\tunique: Object.values(this.data.entity.unique),\n\t\t\t\t\tindexes: Object.values(this.data.entity.indexes ?? []),\n\t\t\t\t},\n\t\t\t},\n\t\t}))\n\t}\n\n\n\tdescribe() {\n\t\treturn { message: `Add view ${this.data.entity.name}` }\n\t}\n}\n\nexport const createViewModification = createModificationType({\n\tid: 'createView',\n\thandler: CreateViewModificationHandler,\n})\n\nexport class CreateViewDiffer implements Differ {\n\tcreateDiff(originalSchema: Schema, updatedSchema: Schema) {\n\t\tconst newViews = Object.values(updatedSchema.model.entities)\n\t\t\t.filter(it => !originalSchema.model.entities[it.name])\n\t\t\t.filter(it => !!it.view)\n\t\tconst created = new Set<string>()\n\t\tconst modifications: Migration.Modification[] = []\n\t\tconst cascadeCreate = (entity: Model.Entity) => {\n\t\t\tif (originalSchema.model.entities[entity.name] || created.has(entity.name)) {\n\t\t\t\treturn\n\t\t\t}\n\t\t\tcreated.add(entity.name)\n\t\t\tfor (const dependency of entity.view?.dependencies ?? []) {\n\t\t\t\tcascadeCreate(updatedSchema.model.entities[dependency])\n\t\t\t}\n\t\t\tmodifications.push(createViewModification.createModification({\n\t\t\t\tentity: entity,\n\t\t\t}))\n\t\t}\n\t\tfor (const view of newViews) {\n\t\t\tcascadeCreate(view)\n\t\t}\n\t\treturn modifications\n\t}\n}\n\nexport interface CreateViewModificationData {\n\tentity: PossibleEntityShapeInMigrations\n}\n"],"names":[],"mappings":";;AAOO,MAAM,8BAAyF;AAAA,EACrG,YAA6B,MAAmD,QAAgB;AAAnE,SAAA,OAAA;AAAmD,SAAA,SAAA;AAAA,EAAiB;AAAA,EAE1F,UAAU,SAAiC;AAC3C,UAAA,SAAS,KAAK,KAAK;AACrB,QAAA,CAAC,OAAO,MAAM;AACjB,YAAM,IAAI,MAAM;AAAA,IACjB;AACA,YAAQ,WAAW,OAAO,WAAW,CAAI,GAAA,OAAO,KAAK,GAAG;AAAA,EACzD;AAAA,EAEO,mBAAkC;AACxC,WAAO,YAAY,CAAC,EAAE,aAAa;AAAA,MAClC,GAAG;AAAA,MACH,UAAU;AAAA,QACT,GAAG,MAAM;AAAA,QACT,CAAC,KAAK,KAAK,OAAO,IAAI,GAAG;AAAA,UACxB,UAAU,EAAE,SAAS,KAAK;AAAA;AAAA,UAC1B,GAAG,KAAK,KAAK;AAAA,UACb,QAAQ,OAAO,OAAO,KAAK,KAAK,OAAO,MAAM;AAAA,UAC7C,SAAS,OAAO,OAAO,KAAK,KAAK,OAAO,WAAW,EAAE;AAAA,QACtD;AAAA,MACD;AAAA,IACC,EAAA;AAAA,EACH;AAAA,EAGA,WAAW;AACV,WAAO,EAAE,SAAS,YAAY,KAAK,KAAK,OAAO,IAAI;EACpD;AACD;AAEO,MAAM,yBAAyB,uBAAuB;AAAA,EAC5D,IAAI;AAAA,EACJ,SAAS;AACV,CAAC;AAEM,MAAM,iBAAmC;AAAA,EAC/C,WAAW,gBAAwB,eAAuB;AACnD,UAAA,WAAW,OAAO,OAAO,cAAc,MAAM,QAAQ,EACzD,OAAO,CAAA,OAAM,CAAC,eAAe,MAAM,SAAS,GAAG,IAAI,CAAC,EACpD,OAAO,CAAM,OAAA,CAAC,CAAC,GAAG,IAAI;AAClB,UAAA,8BAAc;AACpB,UAAM,gBAA0C,CAAA;AAC1C,UAAA,gBAAgB,CAAC,WAAyB;AAC3C,UAAA,eAAe,MAAM,SAAS,OAAO,IAAI,KAAK,QAAQ,IAAI,OAAO,IAAI,GAAG;AAC3E;AAAA,MACD;AACQ,cAAA,IAAI,OAAO,IAAI;AACvB,iBAAW,cAAc,OAAO,MAAM,gBAAgB,CAAA,GAAI;AACzD,sBAAc,cAAc,MAAM,SAAS,UAAU,CAAC;AAAA,MACvD;AACc,oBAAA,KAAK,uBAAuB,mBAAmB;AAAA,QAC5D;AAAA,MACA,CAAA,CAAC;AAAA,IAAA;AAEH,eAAW,QAAQ,UAAU;AAC5B,oBAAc,IAAI;AAAA,IACnB;AACO,WAAA;AAAA,EACR;AACD;"}
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
+
const schema = require("@contember/schema");
|
|
4
|
+
const schemaUpdateUtils = require("../utils/schemaUpdateUtils.cjs");
|
|
5
|
+
const ModificationHandler = require("../ModificationHandler.cjs");
|
|
6
|
+
const ModificationVersions = require("../ModificationVersions.cjs");
|
|
7
|
+
const schemaUtils = require("@contember/schema-utils");
|
|
8
|
+
const RemoveFieldModification = require("../fields/RemoveFieldModification.cjs");
|
|
9
|
+
require("fast-deep-equal");
|
|
10
|
+
require("@contember/database-migrations");
|
|
11
|
+
class RemoveEntityModificationHandler {
|
|
12
|
+
constructor(data, schema2, options) {
|
|
13
|
+
this.data = data;
|
|
14
|
+
this.schema = schema2;
|
|
15
|
+
this.options = options;
|
|
16
|
+
}
|
|
17
|
+
createSql(builder, options) {
|
|
18
|
+
const entity = this.schema.model.entities[this.data.entityName];
|
|
19
|
+
if (entity.view) {
|
|
20
|
+
builder.dropView(entity.tableName);
|
|
21
|
+
return;
|
|
22
|
+
}
|
|
23
|
+
if (this.options.formatVersion >= ModificationVersions.VERSION_REMOVE_REFERENCING_RELATIONS) {
|
|
24
|
+
this.getFieldsToRemove(this.schema).forEach(([entityName, fieldName]) => {
|
|
25
|
+
const removeFieldHandler = RemoveFieldModification.removeFieldModification.createHandler({ entityName, fieldName }, this.schema, this.options);
|
|
26
|
+
removeFieldHandler.createSql(builder, options);
|
|
27
|
+
});
|
|
28
|
+
}
|
|
29
|
+
builder.dropTable(entity.tableName);
|
|
30
|
+
}
|
|
31
|
+
getSchemaUpdater() {
|
|
32
|
+
return schemaUpdateUtils.updateSchema(
|
|
33
|
+
this.options.formatVersion >= ModificationVersions.VERSION_ACL_PATCH ? schemaUpdateUtils.updateAcl(
|
|
34
|
+
schemaUpdateUtils.updateAclEveryRole(
|
|
35
|
+
({ role }) => ({
|
|
36
|
+
...role,
|
|
37
|
+
variables: Object.fromEntries(
|
|
38
|
+
Object.entries(role.variables).filter(
|
|
39
|
+
([, variable]) => variable.type !== schema.Acl.VariableType.entity || variable.entityName !== this.data.entityName
|
|
40
|
+
)
|
|
41
|
+
)
|
|
42
|
+
}),
|
|
43
|
+
schemaUpdateUtils.updateAclEntities(({ entities }) => {
|
|
44
|
+
const { [this.data.entityName]: removed, ...other } = entities;
|
|
45
|
+
return other;
|
|
46
|
+
}),
|
|
47
|
+
schemaUpdateUtils.updateAclEveryEntity(
|
|
48
|
+
schemaUpdateUtils.updateAclEveryPredicate(({ predicate, entityName, schema: schema2 }) => {
|
|
49
|
+
const processor = new schemaUtils.PredicateDefinitionProcessor(schema2.model);
|
|
50
|
+
const currentEntity = schema2.model.entities[entityName];
|
|
51
|
+
return processor.process(currentEntity, predicate, {
|
|
52
|
+
handleColumn: (ctx) => {
|
|
53
|
+
return ctx.entity.name === this.data.entityName ? void 0 : ctx.value;
|
|
54
|
+
},
|
|
55
|
+
handleRelation: (ctx) => {
|
|
56
|
+
return ctx.entity.name === this.data.entityName ? void 0 : ctx.value;
|
|
57
|
+
}
|
|
58
|
+
});
|
|
59
|
+
})
|
|
60
|
+
)
|
|
61
|
+
)
|
|
62
|
+
) : void 0,
|
|
63
|
+
this.options.formatVersion >= ModificationVersions.VERSION_REMOVE_REFERENCING_RELATIONS ? ({ schema: schema2 }) => {
|
|
64
|
+
const fieldsToRemove = this.getFieldsToRemove(schema2);
|
|
65
|
+
return fieldsToRemove.reduce(
|
|
66
|
+
(schema22, [entity, field]) => schemaUpdateUtils.removeField(entity, field, this.options.formatVersion)({ schema: schema22 }),
|
|
67
|
+
schema2
|
|
68
|
+
);
|
|
69
|
+
} : void 0,
|
|
70
|
+
schemaUpdateUtils.updateModel(({ model }) => {
|
|
71
|
+
const { [this.data.entityName]: removed, ...entities } = model.entities;
|
|
72
|
+
return {
|
|
73
|
+
...model,
|
|
74
|
+
entities: { ...entities }
|
|
75
|
+
};
|
|
76
|
+
})
|
|
77
|
+
);
|
|
78
|
+
}
|
|
79
|
+
getFieldsToRemove(schema2) {
|
|
80
|
+
return Object.values(schema2.model.entities).flatMap(
|
|
81
|
+
(entity) => Object.values(entity.fields).filter((field) => schemaUtils.isRelation(field) && field.target === this.data.entityName).map((field) => [entity.name, field.name])
|
|
82
|
+
);
|
|
83
|
+
}
|
|
84
|
+
describe() {
|
|
85
|
+
return { message: `Remove entity ${this.data.entityName}`, isDestructive: true };
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
const removeEntityModification = ModificationHandler.createModificationType({
|
|
89
|
+
id: "removeEntity",
|
|
90
|
+
handler: RemoveEntityModificationHandler
|
|
91
|
+
});
|
|
92
|
+
class RemoveEntityDiffer {
|
|
93
|
+
createDiff(originalSchema, updatedSchema) {
|
|
94
|
+
return Object.keys(originalSchema.model.entities).filter((name) => !updatedSchema.model.entities[name]).map((entityName) => removeEntityModification.createModification({ entityName }));
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
exports.RemoveEntityDiffer = RemoveEntityDiffer;
|
|
98
|
+
exports.RemoveEntityModificationHandler = RemoveEntityModificationHandler;
|
|
99
|
+
exports.removeEntityModification = removeEntityModification;
|
|
100
|
+
//# sourceMappingURL=RemoveEntityModification.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RemoveEntityModification.cjs","sources":["../../../../../../packages/schema-migrations/src/modifications/entities/RemoveEntityModification.ts"],"sourcesContent":["import { MigrationBuilder } from '@contember/database-migrations'\nimport { Acl, Schema } from '@contember/schema'\nimport {\n\tremoveField,\n\tSchemaUpdater,\n\tupdateAcl,\n\tupdateAclEntities,\n\tupdateAclEveryEntity,\n\tupdateAclEveryPredicate,\n\tupdateAclEveryRole,\n\tupdateModel,\n\tupdateSchema,\n} from '../utils/schemaUpdateUtils'\nimport {\n\tcreateModificationType,\n\tDiffer,\n\tModificationHandler, ModificationHandlerCreateSqlOptions,\n\tModificationHandlerOptions,\n} from '../ModificationHandler'\nimport { VERSION_ACL_PATCH, VERSION_REMOVE_REFERENCING_RELATIONS } from '../ModificationVersions'\nimport { isRelation, PredicateDefinitionProcessor } from '@contember/schema-utils'\nimport { removeFieldModification } from '../fields'\n\nexport class RemoveEntityModificationHandler implements ModificationHandler<RemoveEntityModificationData> {\n\tconstructor(\n\t\tprivate readonly data: RemoveEntityModificationData,\n\t\tprivate readonly schema: Schema,\n\t\tprivate readonly options: ModificationHandlerOptions,\n\t) {}\n\n\tpublic createSql(builder: MigrationBuilder, options: ModificationHandlerCreateSqlOptions): void {\n\t\tconst entity = this.schema.model.entities[this.data.entityName]\n\t\tif (entity.view) {\n\t\t\tbuilder.dropView(entity.tableName)\n\t\t\treturn\n\t\t}\n\t\tif (this.options.formatVersion >= VERSION_REMOVE_REFERENCING_RELATIONS) {\n\t\t\tthis.getFieldsToRemove(this.schema).forEach(([entityName, fieldName]) => {\n\t\t\t\tconst removeFieldHandler = removeFieldModification.createHandler({ entityName, fieldName }, this.schema, this.options)\n\t\t\t\tremoveFieldHandler.createSql(builder, options)\n\t\t\t})\n\t\t}\n\t\tbuilder.dropTable(entity.tableName)\n\t}\n\n\tpublic getSchemaUpdater(): SchemaUpdater {\n\t\treturn updateSchema(\n\t\t\tthis.options.formatVersion >= VERSION_ACL_PATCH\n\t\t\t\t? updateAcl(\n\t\t\t\t\tupdateAclEveryRole(\n\t\t\t\t\t\t({ role }) => ({\n\t\t\t\t\t\t\t...role,\n\t\t\t\t\t\t\tvariables: Object.fromEntries(\n\t\t\t\t\t\t\t\tObject.entries(role.variables).filter(([, variable]) =>\n\t\t\t\t\t\t\t\t\tvariable.type !== Acl.VariableType.entity || variable.entityName !== this.data.entityName,\n\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t),\n\t\t\t\t\t\t}),\n\t\t\t\t\t\tupdateAclEntities(({ entities }) => {\n\t\t\t\t\t\t\tconst { [this.data.entityName]: removed, ...other } = entities\n\t\t\t\t\t\t\treturn other\n\t\t\t\t\t\t}),\n\t\t\t\t\t\tupdateAclEveryEntity(\n\t\t\t\t\t\t\tupdateAclEveryPredicate(({ predicate, entityName, schema }) => {\n\t\t\t\t\t\t\t\tconst processor = new PredicateDefinitionProcessor(schema.model)\n\t\t\t\t\t\t\t\tconst currentEntity = schema.model.entities[entityName]\n\t\t\t\t\t\t\t\treturn processor.process(currentEntity, predicate, {\n\t\t\t\t\t\t\t\t\thandleColumn: ctx => {\n\t\t\t\t\t\t\t\t\t\treturn ctx.entity.name === this.data.entityName ? undefined : ctx.value\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\thandleRelation: ctx => {\n\t\t\t\t\t\t\t\t\t\treturn ctx.entity.name === this.data.entityName ? undefined : ctx.value\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t),\n\t\t\t\t\t),\n\t\t\t\t )\n\t\t\t\t: undefined,\n\t\t\tthis.options.formatVersion >= VERSION_REMOVE_REFERENCING_RELATIONS\n\t\t\t\t? ({ schema }) => {\n\t\t\t\t\tconst fieldsToRemove = this.getFieldsToRemove(schema)\n\t\t\t\t\treturn fieldsToRemove.reduce(\n\t\t\t\t\t\t(schema, [entity, field]) => removeField(entity, field, this.options.formatVersion)({ schema }),\n\t\t\t\t\t\tschema,\n\t\t\t\t\t)\n\t\t\t\t }\n\t\t\t\t: undefined,\n\t\t\tupdateModel(({ model }) => {\n\t\t\t\tconst { [this.data.entityName]: removed, ...entities } = model.entities\n\t\t\t\treturn {\n\t\t\t\t\t...model,\n\t\t\t\t\tentities: { ...entities },\n\t\t\t\t}\n\t\t\t}),\n\t\t)\n\t}\n\n\tprivate getFieldsToRemove(schema: Schema): [entity: string, field: string][] {\n\t\treturn Object.values(schema.model.entities).flatMap(entity =>\n\t\t\tObject.values(entity.fields)\n\t\t\t\t.filter(field => isRelation(field) && field.target === this.data.entityName)\n\t\t\t\t.map((field): [string, string] => [entity.name, field.name]),\n\t\t)\n\t}\n\n\tdescribe() {\n\t\treturn { message: `Remove entity ${this.data.entityName}`, isDestructive: true }\n\t}\n\n}\n\nexport interface RemoveEntityModificationData {\n\tentityName: string\n}\n\nexport const removeEntityModification = createModificationType({\n\tid: 'removeEntity',\n\thandler: RemoveEntityModificationHandler,\n})\n\nexport class RemoveEntityDiffer implements Differ {\n\tcreateDiff(originalSchema: Schema, updatedSchema: Schema) {\n\t\treturn Object.keys(originalSchema.model.entities)\n\t\t\t.filter(name => !updatedSchema.model.entities[name])\n\t\t\t.map(entityName => removeEntityModification.createModification({ entityName }))\n\t}\n}\n"],"names":["schema","VERSION_REMOVE_REFERENCING_RELATIONS","removeFieldModification","updateSchema","VERSION_ACL_PATCH","updateAcl","updateAclEveryRole","Acl","updateAclEntities","updateAclEveryEntity","updateAclEveryPredicate","PredicateDefinitionProcessor","removeField","updateModel","isRelation","createModificationType"],"mappings":";;;;;;;;;;AAuBO,MAAM,gCAA6F;AAAA,EACzG,YACkB,MACAA,SACA,SAChB;AAHgB,SAAA,OAAA;AACA,SAAA,SAAAA;AACA,SAAA,UAAA;AAAA,EACf;AAAA,EAEI,UAAU,SAA2B,SAAoD;AAC/F,UAAM,SAAS,KAAK,OAAO,MAAM,SAAS,KAAK,KAAK,UAAU;AAC9D,QAAI,OAAO,MAAM;AACR,cAAA,SAAS,OAAO,SAAS;AACjC;AAAA,IACD;AACI,QAAA,KAAK,QAAQ,iBAAiBC,2DAAsC;AAClE,WAAA,kBAAkB,KAAK,MAAM,EAAE,QAAQ,CAAC,CAAC,YAAY,SAAS,MAAM;AAClE,cAAA,qBAAqBC,wBAAAA,wBAAwB,cAAc,EAAE,YAAY,UAAa,GAAA,KAAK,QAAQ,KAAK,OAAO;AAClG,2BAAA,UAAU,SAAS,OAAO;AAAA,MAAA,CAC7C;AAAA,IACF;AACQ,YAAA,UAAU,OAAO,SAAS;AAAA,EACnC;AAAA,EAEO,mBAAkC;AACjC,WAAAC,kBAAA;AAAA,MACN,KAAK,QAAQ,iBAAiBC,qBAAAA,oBAC3BC,kBAAA;AAAA,QACDC,kBAAA;AAAA,UACC,CAAC,EAAE,KAAA,OAAY;AAAA,YACd,GAAG;AAAA,YACH,WAAW,OAAO;AAAA,cACjB,OAAO,QAAQ,KAAK,SAAS,EAAE;AAAA,gBAAO,CAAC,GAAG,QAAQ,MACjD,SAAS,SAASC,OAAA,IAAI,aAAa,UAAU,SAAS,eAAe,KAAK,KAAK;AAAA,cAChF;AAAA,YACD;AAAA,UAAA;AAAA,UAEDC,oCAAkB,CAAC,EAAE,eAAe;AAC7B,kBAAA,EAAE,CAAC,KAAK,KAAK,UAAU,GAAG,SAAS,GAAG,MAAU,IAAA;AAC/C,mBAAA;AAAA,UAAA,CACP;AAAA,UACDC,kBAAA;AAAA,YACCC,kBAAAA,wBAAwB,CAAC,EAAE,WAAW,YAAY,QAAAV,cAAa;AAC9D,oBAAM,YAAY,IAAIW,YAAAA,6BAA6BX,QAAO,KAAK;AAC/D,oBAAM,gBAAgBA,QAAO,MAAM,SAAS,UAAU;AAC/C,qBAAA,UAAU,QAAQ,eAAe,WAAW;AAAA,gBAClD,cAAc,CAAO,QAAA;AACpB,yBAAO,IAAI,OAAO,SAAS,KAAK,KAAK,aAAa,SAAY,IAAI;AAAA,gBACnE;AAAA,gBACA,gBAAgB,CAAO,QAAA;AACtB,yBAAO,IAAI,OAAO,SAAS,KAAK,KAAK,aAAa,SAAY,IAAI;AAAA,gBACnE;AAAA,cAAA,CACA;AAAA,YAAA,CACD;AAAA,UACF;AAAA,QACD;AAAA,MAEC,IAAA;AAAA,MACH,KAAK,QAAQ,iBAAiBC,4DAC3B,CAAC,EAAE,QAAAD,cAAa;AACX,cAAA,iBAAiB,KAAK,kBAAkBA,OAAM;AACpD,eAAO,eAAe;AAAA,UACrB,CAACA,UAAQ,CAAC,QAAQ,KAAK,MAAMY,kBAAY,YAAA,QAAQ,OAAO,KAAK,QAAQ,aAAa,EAAE,EAAE,QAAAZ,UAAQ;AAAA,UAC9FA;AAAA,QAAA;AAAA,MAGA,IAAA;AAAA,MACHa,8BAAY,CAAC,EAAE,YAAY;AACpB,cAAA,EAAE,CAAC,KAAK,KAAK,UAAU,GAAG,SAAS,GAAG,SAAS,IAAI,MAAM;AACxD,eAAA;AAAA,UACN,GAAG;AAAA,UACH,UAAU,EAAE,GAAG,SAAS;AAAA,QAAA;AAAA,MACzB,CACA;AAAA,IAAA;AAAA,EAEH;AAAA,EAEQ,kBAAkBb,SAAmD;AAC5E,WAAO,OAAO,OAAOA,QAAO,MAAM,QAAQ,EAAE;AAAA,MAAQ,CAAA,WACnD,OAAO,OAAO,OAAO,MAAM,EACzB,OAAO,CAAA,UAASc,YAAW,WAAA,KAAK,KAAK,MAAM,WAAW,KAAK,KAAK,UAAU,EAC1E,IAAI,CAAC,UAA4B,CAAC,OAAO,MAAM,MAAM,IAAI,CAAC;AAAA,IAAA;AAAA,EAE9D;AAAA,EAEA,WAAW;AACH,WAAA,EAAE,SAAS,iBAAiB,KAAK,KAAK,UAAU,IAAI,eAAe;EAC3E;AAED;AAMO,MAAM,2BAA2BC,oBAAAA,uBAAuB;AAAA,EAC9D,IAAI;AAAA,EACJ,SAAS;AACV,CAAC;AAEM,MAAM,mBAAqC;AAAA,EACjD,WAAW,gBAAwB,eAAuB;AAClD,WAAA,OAAO,KAAK,eAAe,MAAM,QAAQ,EAC9C,OAAO,CAAQ,SAAA,CAAC,cAAc,MAAM,SAAS,IAAI,CAAC,EAClD,IAAI,CAAA,eAAc,yBAAyB,mBAAmB,EAAE,WAAY,CAAA,CAAC;AAAA,EAChF;AACD;;;;"}
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
import { Acl } from "@contember/schema";
|
|
2
|
+
import { updateSchema, removeField, updateAcl, updateModel, updateAclEveryRole, updateAclEveryEntity, updateAclEntities, updateAclEveryPredicate } from "../utils/schemaUpdateUtils.js";
|
|
3
|
+
import { createModificationType } from "../ModificationHandler.js";
|
|
4
|
+
import { VERSION_REMOVE_REFERENCING_RELATIONS, VERSION_ACL_PATCH } from "../ModificationVersions.js";
|
|
5
|
+
import { isRelation, PredicateDefinitionProcessor } from "@contember/schema-utils";
|
|
6
|
+
import { removeFieldModification } from "../fields/RemoveFieldModification.js";
|
|
7
|
+
import "fast-deep-equal";
|
|
8
|
+
import "@contember/database-migrations";
|
|
9
|
+
class RemoveEntityModificationHandler {
|
|
10
|
+
constructor(data, schema, options) {
|
|
11
|
+
this.data = data;
|
|
12
|
+
this.schema = schema;
|
|
13
|
+
this.options = options;
|
|
14
|
+
}
|
|
15
|
+
createSql(builder, options) {
|
|
16
|
+
const entity = this.schema.model.entities[this.data.entityName];
|
|
17
|
+
if (entity.view) {
|
|
18
|
+
builder.dropView(entity.tableName);
|
|
19
|
+
return;
|
|
20
|
+
}
|
|
21
|
+
if (this.options.formatVersion >= VERSION_REMOVE_REFERENCING_RELATIONS) {
|
|
22
|
+
this.getFieldsToRemove(this.schema).forEach(([entityName, fieldName]) => {
|
|
23
|
+
const removeFieldHandler = removeFieldModification.createHandler({ entityName, fieldName }, this.schema, this.options);
|
|
24
|
+
removeFieldHandler.createSql(builder, options);
|
|
25
|
+
});
|
|
26
|
+
}
|
|
27
|
+
builder.dropTable(entity.tableName);
|
|
28
|
+
}
|
|
29
|
+
getSchemaUpdater() {
|
|
30
|
+
return updateSchema(
|
|
31
|
+
this.options.formatVersion >= VERSION_ACL_PATCH ? updateAcl(
|
|
32
|
+
updateAclEveryRole(
|
|
33
|
+
({ role }) => ({
|
|
34
|
+
...role,
|
|
35
|
+
variables: Object.fromEntries(
|
|
36
|
+
Object.entries(role.variables).filter(
|
|
37
|
+
([, variable]) => variable.type !== Acl.VariableType.entity || variable.entityName !== this.data.entityName
|
|
38
|
+
)
|
|
39
|
+
)
|
|
40
|
+
}),
|
|
41
|
+
updateAclEntities(({ entities }) => {
|
|
42
|
+
const { [this.data.entityName]: removed, ...other } = entities;
|
|
43
|
+
return other;
|
|
44
|
+
}),
|
|
45
|
+
updateAclEveryEntity(
|
|
46
|
+
updateAclEveryPredicate(({ predicate, entityName, schema }) => {
|
|
47
|
+
const processor = new PredicateDefinitionProcessor(schema.model);
|
|
48
|
+
const currentEntity = schema.model.entities[entityName];
|
|
49
|
+
return processor.process(currentEntity, predicate, {
|
|
50
|
+
handleColumn: (ctx) => {
|
|
51
|
+
return ctx.entity.name === this.data.entityName ? void 0 : ctx.value;
|
|
52
|
+
},
|
|
53
|
+
handleRelation: (ctx) => {
|
|
54
|
+
return ctx.entity.name === this.data.entityName ? void 0 : ctx.value;
|
|
55
|
+
}
|
|
56
|
+
});
|
|
57
|
+
})
|
|
58
|
+
)
|
|
59
|
+
)
|
|
60
|
+
) : void 0,
|
|
61
|
+
this.options.formatVersion >= VERSION_REMOVE_REFERENCING_RELATIONS ? ({ schema }) => {
|
|
62
|
+
const fieldsToRemove = this.getFieldsToRemove(schema);
|
|
63
|
+
return fieldsToRemove.reduce(
|
|
64
|
+
(schema2, [entity, field]) => removeField(entity, field, this.options.formatVersion)({ schema: schema2 }),
|
|
65
|
+
schema
|
|
66
|
+
);
|
|
67
|
+
} : void 0,
|
|
68
|
+
updateModel(({ model }) => {
|
|
69
|
+
const { [this.data.entityName]: removed, ...entities } = model.entities;
|
|
70
|
+
return {
|
|
71
|
+
...model,
|
|
72
|
+
entities: { ...entities }
|
|
73
|
+
};
|
|
74
|
+
})
|
|
75
|
+
);
|
|
76
|
+
}
|
|
77
|
+
getFieldsToRemove(schema) {
|
|
78
|
+
return Object.values(schema.model.entities).flatMap(
|
|
79
|
+
(entity) => Object.values(entity.fields).filter((field) => isRelation(field) && field.target === this.data.entityName).map((field) => [entity.name, field.name])
|
|
80
|
+
);
|
|
81
|
+
}
|
|
82
|
+
describe() {
|
|
83
|
+
return { message: `Remove entity ${this.data.entityName}`, isDestructive: true };
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
const removeEntityModification = createModificationType({
|
|
87
|
+
id: "removeEntity",
|
|
88
|
+
handler: RemoveEntityModificationHandler
|
|
89
|
+
});
|
|
90
|
+
class RemoveEntityDiffer {
|
|
91
|
+
createDiff(originalSchema, updatedSchema) {
|
|
92
|
+
return Object.keys(originalSchema.model.entities).filter((name) => !updatedSchema.model.entities[name]).map((entityName) => removeEntityModification.createModification({ entityName }));
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
export {
|
|
96
|
+
RemoveEntityDiffer,
|
|
97
|
+
RemoveEntityModificationHandler,
|
|
98
|
+
removeEntityModification
|
|
99
|
+
};
|
|
100
|
+
//# sourceMappingURL=RemoveEntityModification.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RemoveEntityModification.js","sources":["../../../../../../packages/schema-migrations/src/modifications/entities/RemoveEntityModification.ts"],"sourcesContent":["import { MigrationBuilder } from '@contember/database-migrations'\nimport { Acl, Schema } from '@contember/schema'\nimport {\n\tremoveField,\n\tSchemaUpdater,\n\tupdateAcl,\n\tupdateAclEntities,\n\tupdateAclEveryEntity,\n\tupdateAclEveryPredicate,\n\tupdateAclEveryRole,\n\tupdateModel,\n\tupdateSchema,\n} from '../utils/schemaUpdateUtils'\nimport {\n\tcreateModificationType,\n\tDiffer,\n\tModificationHandler, ModificationHandlerCreateSqlOptions,\n\tModificationHandlerOptions,\n} from '../ModificationHandler'\nimport { VERSION_ACL_PATCH, VERSION_REMOVE_REFERENCING_RELATIONS } from '../ModificationVersions'\nimport { isRelation, PredicateDefinitionProcessor } from '@contember/schema-utils'\nimport { removeFieldModification } from '../fields'\n\nexport class RemoveEntityModificationHandler implements ModificationHandler<RemoveEntityModificationData> {\n\tconstructor(\n\t\tprivate readonly data: RemoveEntityModificationData,\n\t\tprivate readonly schema: Schema,\n\t\tprivate readonly options: ModificationHandlerOptions,\n\t) {}\n\n\tpublic createSql(builder: MigrationBuilder, options: ModificationHandlerCreateSqlOptions): void {\n\t\tconst entity = this.schema.model.entities[this.data.entityName]\n\t\tif (entity.view) {\n\t\t\tbuilder.dropView(entity.tableName)\n\t\t\treturn\n\t\t}\n\t\tif (this.options.formatVersion >= VERSION_REMOVE_REFERENCING_RELATIONS) {\n\t\t\tthis.getFieldsToRemove(this.schema).forEach(([entityName, fieldName]) => {\n\t\t\t\tconst removeFieldHandler = removeFieldModification.createHandler({ entityName, fieldName }, this.schema, this.options)\n\t\t\t\tremoveFieldHandler.createSql(builder, options)\n\t\t\t})\n\t\t}\n\t\tbuilder.dropTable(entity.tableName)\n\t}\n\n\tpublic getSchemaUpdater(): SchemaUpdater {\n\t\treturn updateSchema(\n\t\t\tthis.options.formatVersion >= VERSION_ACL_PATCH\n\t\t\t\t? updateAcl(\n\t\t\t\t\tupdateAclEveryRole(\n\t\t\t\t\t\t({ role }) => ({\n\t\t\t\t\t\t\t...role,\n\t\t\t\t\t\t\tvariables: Object.fromEntries(\n\t\t\t\t\t\t\t\tObject.entries(role.variables).filter(([, variable]) =>\n\t\t\t\t\t\t\t\t\tvariable.type !== Acl.VariableType.entity || variable.entityName !== this.data.entityName,\n\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t),\n\t\t\t\t\t\t}),\n\t\t\t\t\t\tupdateAclEntities(({ entities }) => {\n\t\t\t\t\t\t\tconst { [this.data.entityName]: removed, ...other } = entities\n\t\t\t\t\t\t\treturn other\n\t\t\t\t\t\t}),\n\t\t\t\t\t\tupdateAclEveryEntity(\n\t\t\t\t\t\t\tupdateAclEveryPredicate(({ predicate, entityName, schema }) => {\n\t\t\t\t\t\t\t\tconst processor = new PredicateDefinitionProcessor(schema.model)\n\t\t\t\t\t\t\t\tconst currentEntity = schema.model.entities[entityName]\n\t\t\t\t\t\t\t\treturn processor.process(currentEntity, predicate, {\n\t\t\t\t\t\t\t\t\thandleColumn: ctx => {\n\t\t\t\t\t\t\t\t\t\treturn ctx.entity.name === this.data.entityName ? undefined : ctx.value\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\thandleRelation: ctx => {\n\t\t\t\t\t\t\t\t\t\treturn ctx.entity.name === this.data.entityName ? undefined : ctx.value\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t),\n\t\t\t\t\t),\n\t\t\t\t )\n\t\t\t\t: undefined,\n\t\t\tthis.options.formatVersion >= VERSION_REMOVE_REFERENCING_RELATIONS\n\t\t\t\t? ({ schema }) => {\n\t\t\t\t\tconst fieldsToRemove = this.getFieldsToRemove(schema)\n\t\t\t\t\treturn fieldsToRemove.reduce(\n\t\t\t\t\t\t(schema, [entity, field]) => removeField(entity, field, this.options.formatVersion)({ schema }),\n\t\t\t\t\t\tschema,\n\t\t\t\t\t)\n\t\t\t\t }\n\t\t\t\t: undefined,\n\t\t\tupdateModel(({ model }) => {\n\t\t\t\tconst { [this.data.entityName]: removed, ...entities } = model.entities\n\t\t\t\treturn {\n\t\t\t\t\t...model,\n\t\t\t\t\tentities: { ...entities },\n\t\t\t\t}\n\t\t\t}),\n\t\t)\n\t}\n\n\tprivate getFieldsToRemove(schema: Schema): [entity: string, field: string][] {\n\t\treturn Object.values(schema.model.entities).flatMap(entity =>\n\t\t\tObject.values(entity.fields)\n\t\t\t\t.filter(field => isRelation(field) && field.target === this.data.entityName)\n\t\t\t\t.map((field): [string, string] => [entity.name, field.name]),\n\t\t)\n\t}\n\n\tdescribe() {\n\t\treturn { message: `Remove entity ${this.data.entityName}`, isDestructive: true }\n\t}\n\n}\n\nexport interface RemoveEntityModificationData {\n\tentityName: string\n}\n\nexport const removeEntityModification = createModificationType({\n\tid: 'removeEntity',\n\thandler: RemoveEntityModificationHandler,\n})\n\nexport class RemoveEntityDiffer implements Differ {\n\tcreateDiff(originalSchema: Schema, updatedSchema: Schema) {\n\t\treturn Object.keys(originalSchema.model.entities)\n\t\t\t.filter(name => !updatedSchema.model.entities[name])\n\t\t\t.map(entityName => removeEntityModification.createModification({ entityName }))\n\t}\n}\n"],"names":["schema"],"mappings":";;;;;;;;AAuBO,MAAM,gCAA6F;AAAA,EACzG,YACkB,MACA,QACA,SAChB;AAHgB,SAAA,OAAA;AACA,SAAA,SAAA;AACA,SAAA,UAAA;AAAA,EACf;AAAA,EAEI,UAAU,SAA2B,SAAoD;AAC/F,UAAM,SAAS,KAAK,OAAO,MAAM,SAAS,KAAK,KAAK,UAAU;AAC9D,QAAI,OAAO,MAAM;AACR,cAAA,SAAS,OAAO,SAAS;AACjC;AAAA,IACD;AACI,QAAA,KAAK,QAAQ,iBAAiB,sCAAsC;AAClE,WAAA,kBAAkB,KAAK,MAAM,EAAE,QAAQ,CAAC,CAAC,YAAY,SAAS,MAAM;AAClE,cAAA,qBAAqB,wBAAwB,cAAc,EAAE,YAAY,UAAa,GAAA,KAAK,QAAQ,KAAK,OAAO;AAClG,2BAAA,UAAU,SAAS,OAAO;AAAA,MAAA,CAC7C;AAAA,IACF;AACQ,YAAA,UAAU,OAAO,SAAS;AAAA,EACnC;AAAA,EAEO,mBAAkC;AACjC,WAAA;AAAA,MACN,KAAK,QAAQ,iBAAiB,oBAC3B;AAAA,QACD;AAAA,UACC,CAAC,EAAE,KAAA,OAAY;AAAA,YACd,GAAG;AAAA,YACH,WAAW,OAAO;AAAA,cACjB,OAAO,QAAQ,KAAK,SAAS,EAAE;AAAA,gBAAO,CAAC,GAAG,QAAQ,MACjD,SAAS,SAAS,IAAI,aAAa,UAAU,SAAS,eAAe,KAAK,KAAK;AAAA,cAChF;AAAA,YACD;AAAA,UAAA;AAAA,UAED,kBAAkB,CAAC,EAAE,eAAe;AAC7B,kBAAA,EAAE,CAAC,KAAK,KAAK,UAAU,GAAG,SAAS,GAAG,MAAU,IAAA;AAC/C,mBAAA;AAAA,UAAA,CACP;AAAA,UACD;AAAA,YACC,wBAAwB,CAAC,EAAE,WAAW,YAAY,aAAa;AAC9D,oBAAM,YAAY,IAAI,6BAA6B,OAAO,KAAK;AAC/D,oBAAM,gBAAgB,OAAO,MAAM,SAAS,UAAU;AAC/C,qBAAA,UAAU,QAAQ,eAAe,WAAW;AAAA,gBAClD,cAAc,CAAO,QAAA;AACpB,yBAAO,IAAI,OAAO,SAAS,KAAK,KAAK,aAAa,SAAY,IAAI;AAAA,gBACnE;AAAA,gBACA,gBAAgB,CAAO,QAAA;AACtB,yBAAO,IAAI,OAAO,SAAS,KAAK,KAAK,aAAa,SAAY,IAAI;AAAA,gBACnE;AAAA,cAAA,CACA;AAAA,YAAA,CACD;AAAA,UACF;AAAA,QACD;AAAA,MAEC,IAAA;AAAA,MACH,KAAK,QAAQ,iBAAiB,uCAC3B,CAAC,EAAE,aAAa;AACX,cAAA,iBAAiB,KAAK,kBAAkB,MAAM;AACpD,eAAO,eAAe;AAAA,UACrB,CAACA,SAAQ,CAAC,QAAQ,KAAK,MAAM,YAAY,QAAQ,OAAO,KAAK,QAAQ,aAAa,EAAE,EAAE,QAAAA,SAAQ;AAAA,UAC9F;AAAA,QAAA;AAAA,MAGA,IAAA;AAAA,MACH,YAAY,CAAC,EAAE,YAAY;AACpB,cAAA,EAAE,CAAC,KAAK,KAAK,UAAU,GAAG,SAAS,GAAG,SAAS,IAAI,MAAM;AACxD,eAAA;AAAA,UACN,GAAG;AAAA,UACH,UAAU,EAAE,GAAG,SAAS;AAAA,QAAA;AAAA,MACzB,CACA;AAAA,IAAA;AAAA,EAEH;AAAA,EAEQ,kBAAkB,QAAmD;AAC5E,WAAO,OAAO,OAAO,OAAO,MAAM,QAAQ,EAAE;AAAA,MAAQ,CAAA,WACnD,OAAO,OAAO,OAAO,MAAM,EACzB,OAAO,CAAA,UAAS,WAAW,KAAK,KAAK,MAAM,WAAW,KAAK,KAAK,UAAU,EAC1E,IAAI,CAAC,UAA4B,CAAC,OAAO,MAAM,MAAM,IAAI,CAAC;AAAA,IAAA;AAAA,EAE9D;AAAA,EAEA,WAAW;AACH,WAAA,EAAE,SAAS,iBAAiB,KAAK,KAAK,UAAU,IAAI,eAAe;EAC3E;AAED;AAMO,MAAM,2BAA2B,uBAAuB;AAAA,EAC9D,IAAI;AAAA,EACJ,SAAS;AACV,CAAC;AAEM,MAAM,mBAAqC;AAAA,EACjD,WAAW,gBAAwB,eAAuB;AAClD,WAAA,OAAO,KAAK,eAAe,MAAM,QAAQ,EAC9C,OAAO,CAAQ,SAAA,CAAC,cAAc,MAAM,SAAS,IAAI,CAAC,EAClD,IAAI,CAAA,eAAc,yBAAyB,mBAAmB,EAAE,WAAY,CAAA,CAAC;AAAA,EAChF;AACD;"}
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
+
const schemaUpdateUtils = require("../utils/schemaUpdateUtils.cjs");
|
|
4
|
+
const ModificationHandler = require("../ModificationHandler.cjs");
|
|
5
|
+
const sqlUpdateUtils = require("../utils/sqlUpdateUtils.cjs");
|
|
6
|
+
class ToggleEventLogModificationHandler {
|
|
7
|
+
constructor(data, schema, options) {
|
|
8
|
+
this.data = data;
|
|
9
|
+
this.schema = schema;
|
|
10
|
+
this.options = options;
|
|
11
|
+
}
|
|
12
|
+
createSql(builder, { systemSchema }) {
|
|
13
|
+
const entity = this.schema.model.entities[this.data.entityName];
|
|
14
|
+
if (entity.view) {
|
|
15
|
+
return;
|
|
16
|
+
}
|
|
17
|
+
if (this.data.enabled) {
|
|
18
|
+
sqlUpdateUtils.createEventTrigger(builder, systemSchema, entity.tableName, [entity.primaryColumn]);
|
|
19
|
+
sqlUpdateUtils.createEventTrxTrigger(builder, systemSchema, entity.tableName);
|
|
20
|
+
} else {
|
|
21
|
+
sqlUpdateUtils.dropEventTrigger(builder, entity.tableName);
|
|
22
|
+
sqlUpdateUtils.dropEventTrxTrigger(builder, entity.tableName);
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
getSchemaUpdater() {
|
|
26
|
+
const { entityName, enabled } = this.data;
|
|
27
|
+
return schemaUpdateUtils.updateModel(
|
|
28
|
+
schemaUpdateUtils.updateEntity(
|
|
29
|
+
entityName,
|
|
30
|
+
({ entity: { eventLog, ...entity } }) => ({
|
|
31
|
+
...entity,
|
|
32
|
+
eventLog: { enabled }
|
|
33
|
+
})
|
|
34
|
+
)
|
|
35
|
+
);
|
|
36
|
+
}
|
|
37
|
+
describe() {
|
|
38
|
+
return {
|
|
39
|
+
message: `${this.data.enabled ? "Enable" : "Disable"} event log for ${this.data.entityName}`
|
|
40
|
+
};
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
const toggleEventLogModification = ModificationHandler.createModificationType({
|
|
44
|
+
id: "toggleEventLog",
|
|
45
|
+
handler: ToggleEventLogModificationHandler
|
|
46
|
+
});
|
|
47
|
+
class ToggleEventLogDiffer {
|
|
48
|
+
createDiff(originalSchema, updatedSchema) {
|
|
49
|
+
return Object.values(updatedSchema.model.entities).flatMap((updatedEntity) => {
|
|
50
|
+
const origEntity = originalSchema.model.entities[updatedEntity.name];
|
|
51
|
+
if (!origEntity) {
|
|
52
|
+
return [];
|
|
53
|
+
}
|
|
54
|
+
const newValue = updatedEntity.eventLog.enabled;
|
|
55
|
+
const oldValue = origEntity.eventLog.enabled;
|
|
56
|
+
if (newValue !== oldValue) {
|
|
57
|
+
return [toggleEventLogModification.createModification({
|
|
58
|
+
entityName: updatedEntity.name,
|
|
59
|
+
enabled: newValue
|
|
60
|
+
})];
|
|
61
|
+
}
|
|
62
|
+
return [];
|
|
63
|
+
});
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
exports.ToggleEventLogDiffer = ToggleEventLogDiffer;
|
|
67
|
+
exports.ToggleEventLogModificationHandler = ToggleEventLogModificationHandler;
|
|
68
|
+
exports.toggleEventLogModification = toggleEventLogModification;
|
|
69
|
+
//# sourceMappingURL=ToggleEventLogModification.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ToggleEventLogModification.cjs","sources":["../../../../../../packages/schema-migrations/src/modifications/entities/ToggleEventLogModification.ts"],"sourcesContent":["import { MigrationBuilder } from '@contember/database-migrations'\nimport { Schema } from '@contember/schema'\nimport { SchemaUpdater, updateEntity, updateModel } from '../utils/schemaUpdateUtils'\nimport {\n\tcreateModificationType,\n\tDiffer,\n\tModificationHandler,\n\tModificationHandlerCreateSqlOptions,\n\tModificationHandlerOptions,\n} from '../ModificationHandler'\nimport {\n\tcreateEventTrigger,\n\tcreateEventTrxTrigger,\n\tdropEventTrigger,\n\tdropEventTrxTrigger,\n} from '../utils/sqlUpdateUtils'\n\nexport class ToggleEventLogModificationHandler implements ModificationHandler<ToggleEventLogModificationData> {\n\n\tconstructor(\n\t\tprivate readonly data: ToggleEventLogModificationData,\n\t\tprivate readonly schema: Schema,\n\t\tprivate readonly options: ModificationHandlerOptions,\n\t) {\n\t}\n\n\tpublic createSql(builder: MigrationBuilder, { systemSchema }: ModificationHandlerCreateSqlOptions): void {\n\t\tconst entity = this.schema.model.entities[this.data.entityName]\n\t\tif (entity.view) {\n\t\t\treturn\n\t\t}\n\t\tif (this.data.enabled) {\n\t\t\tcreateEventTrigger(builder, systemSchema, entity.tableName, [entity.primaryColumn])\n\t\t\tcreateEventTrxTrigger(builder, systemSchema, entity.tableName)\n\t\t} else {\n\t\t\tdropEventTrigger(builder, entity.tableName)\n\t\t\tdropEventTrxTrigger(builder, entity.tableName)\n\t\t}\n\t}\n\n\tpublic getSchemaUpdater(): SchemaUpdater {\n\t\tconst { entityName, enabled } = this.data\n\t\treturn updateModel(\n\t\t\tupdateEntity(\n\t\t\t\tentityName,\n\t\t\t\t({ entity: { eventLog, ...entity } }) => ({\n\t\t\t\t\t...entity,\n\t\t\t\t\teventLog: { enabled },\n\t\t\t\t}),\n\t\t\t),\n\t\t)\n\t}\n\n\tdescribe() {\n\t\treturn {\n\t\t\tmessage: `${this.data.enabled ? 'Enable' : 'Disable'} event log for ${this.data.entityName}`,\n\t\t}\n\t}\n}\n\nexport interface ToggleEventLogModificationData {\n\tentityName: string\n\tenabled: boolean\n}\n\nexport const toggleEventLogModification = createModificationType({\n\tid: 'toggleEventLog',\n\thandler: ToggleEventLogModificationHandler,\n})\n\nexport class ToggleEventLogDiffer implements Differ {\n\tcreateDiff(originalSchema: Schema, updatedSchema: Schema) {\n\t\treturn Object.values(updatedSchema.model.entities)\n\t\t\t.flatMap(updatedEntity => {\n\t\t\t\tconst origEntity = originalSchema.model.entities[updatedEntity.name]\n\t\t\t\tif (!origEntity) {\n\t\t\t\t\treturn []\n\t\t\t\t}\n\t\t\t\tconst newValue = updatedEntity.eventLog.enabled\n\t\t\t\tconst oldValue = origEntity.eventLog.enabled\n\t\t\t\tif (newValue !== oldValue) {\n\t\t\t\t\treturn [toggleEventLogModification.createModification({\n\t\t\t\t\t\tentityName: updatedEntity.name,\n\t\t\t\t\t\tenabled: newValue,\n\t\t\t\t\t})]\n\t\t\t\t}\n\t\t\t\treturn []\n\t\t\t})\n\n\t}\n}\n"],"names":["createEventTrigger","createEventTrxTrigger","dropEventTrigger","dropEventTrxTrigger","updateModel","updateEntity","createModificationType"],"mappings":";;;;;AAiBO,MAAM,kCAAiG;AAAA,EAE7G,YACkB,MACA,QACA,SAChB;AAHgB,SAAA,OAAA;AACA,SAAA,SAAA;AACA,SAAA,UAAA;AAAA,EAElB;AAAA,EAEO,UAAU,SAA2B,EAAE,gBAA2D;AACxG,UAAM,SAAS,KAAK,OAAO,MAAM,SAAS,KAAK,KAAK,UAAU;AAC9D,QAAI,OAAO,MAAM;AAChB;AAAA,IACD;AACI,QAAA,KAAK,KAAK,SAAS;AACtBA,wCAAmB,SAAS,cAAc,OAAO,WAAW,CAAC,OAAO,aAAa,CAAC;AAC5DC,qBAAAA,sBAAA,SAAS,cAAc,OAAO,SAAS;AAAA,IAAA,OACvD;AACWC,qBAAAA,iBAAA,SAAS,OAAO,SAAS;AACtBC,qBAAAA,oBAAA,SAAS,OAAO,SAAS;AAAA,IAC9C;AAAA,EACD;AAAA,EAEO,mBAAkC;AACxC,UAAM,EAAE,YAAY,YAAY,KAAK;AAC9B,WAAAC,kBAAA;AAAA,MACNC,kBAAA;AAAA,QACC;AAAA,QACA,CAAC,EAAE,QAAQ,EAAE,UAAU,GAAG,gBAAgB;AAAA,UACzC,GAAG;AAAA,UACH,UAAU,EAAE,QAAQ;AAAA,QAAA;AAAA,MAEtB;AAAA,IAAA;AAAA,EAEF;AAAA,EAEA,WAAW;AACH,WAAA;AAAA,MACN,SAAS,GAAG,KAAK,KAAK,UAAU,WAAW,SAAS,kBAAkB,KAAK,KAAK,UAAU;AAAA,IAAA;AAAA,EAE5F;AACD;AAOO,MAAM,6BAA6BC,oBAAAA,uBAAuB;AAAA,EAChE,IAAI;AAAA,EACJ,SAAS;AACV,CAAC;AAEM,MAAM,qBAAuC;AAAA,EACnD,WAAW,gBAAwB,eAAuB;AACzD,WAAO,OAAO,OAAO,cAAc,MAAM,QAAQ,EAC/C,QAAQ,CAAiB,kBAAA;AACzB,YAAM,aAAa,eAAe,MAAM,SAAS,cAAc,IAAI;AACnE,UAAI,CAAC,YAAY;AAChB,eAAO;MACR;AACM,YAAA,WAAW,cAAc,SAAS;AAClC,YAAA,WAAW,WAAW,SAAS;AACrC,UAAI,aAAa,UAAU;AACnB,eAAA,CAAC,2BAA2B,mBAAmB;AAAA,UACrD,YAAY,cAAc;AAAA,UAC1B,SAAS;AAAA,QACT,CAAA,CAAC;AAAA,MACH;AACA,aAAO;IAAC,CACR;AAAA,EAEH;AACD;;;;"}
|