@contember/schema-migrations 2.1.0-alpha.36 → 2.1.0-alpha.39
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 +168 -0
- package/dist/development/index.cjs.map +1 -0
- package/dist/development/index.js +162 -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 +68 -0
- package/dist/development/src/MigrationDescriber.cjs.map +1 -0
- package/dist/development/src/MigrationDescriber.js +68 -0
- package/dist/development/src/MigrationDescriber.js.map +1 -0
- package/dist/development/src/SchemaDiffer.cjs +150 -0
- package/dist/development/src/SchemaDiffer.cjs.map +1 -0
- package/dist/development/src/SchemaDiffer.js +150 -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 +111 -0
- package/dist/development/src/modifications/ModificationHandlerFactory.cjs.map +1 -0
- package/dist/development/src/modifications/ModificationHandlerFactory.js +111 -0
- package/dist/development/src/modifications/ModificationHandlerFactory.js.map +1 -0
- package/dist/development/src/modifications/ModificationVersions.cjs +21 -0
- package/dist/development/src/modifications/ModificationVersions.cjs.map +1 -0
- package/dist/development/src/modifications/ModificationVersions.js +21 -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 +45 -0
- package/dist/development/src/modifications/acl/UpdateAclSchemaModification.cjs.map +1 -0
- package/dist/development/src/modifications/acl/UpdateAclSchemaModification.js +45 -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/PatchTriggerModification.cjs +44 -0
- package/dist/development/src/modifications/actions/PatchTriggerModification.cjs.map +1 -0
- package/dist/development/src/modifications/actions/PatchTriggerModification.js +44 -0
- package/dist/development/src/modifications/actions/PatchTriggerModification.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 +56 -0
- package/dist/development/src/modifications/actions/UpdateTriggerModification.cjs.map +1 -0
- package/dist/development/src/modifications/actions/UpdateTriggerModification.js +56 -0
- package/dist/development/src/modifications/actions/UpdateTriggerModification.js.map +1 -0
- package/dist/development/src/modifications/columns/CreateColumnModification.cjs +86 -0
- package/dist/development/src/modifications/columns/CreateColumnModification.cjs.map +1 -0
- package/dist/development/src/modifications/columns/CreateColumnModification.js +86 -0
- package/dist/development/src/modifications/columns/CreateColumnModification.js.map +1 -0
- package/dist/development/src/modifications/columns/UpdateColumnDefinitionModification.cjs +141 -0
- package/dist/development/src/modifications/columns/UpdateColumnDefinitionModification.cjs.map +1 -0
- package/dist/development/src/modifications/columns/UpdateColumnDefinitionModification.js +141 -0
- package/dist/development/src/modifications/columns/UpdateColumnDefinitionModification.js.map +1 -0
- package/dist/development/src/modifications/columns/UpdateColumnNameModification.cjs +111 -0
- package/dist/development/src/modifications/columns/UpdateColumnNameModification.cjs.map +1 -0
- package/dist/development/src/modifications/columns/UpdateColumnNameModification.js +111 -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 +79 -0
- package/dist/development/src/modifications/constraints/CreateUniqueConstraintModification.cjs.map +1 -0
- package/dist/development/src/modifications/constraints/CreateUniqueConstraintModification.js +79 -0
- package/dist/development/src/modifications/constraints/CreateUniqueConstraintModification.js.map +1 -0
- package/dist/development/src/modifications/constraints/RemoveUniqueConstraintModification.cjs +98 -0
- package/dist/development/src/modifications/constraints/RemoveUniqueConstraintModification.cjs.map +1 -0
- package/dist/development/src/modifications/constraints/RemoveUniqueConstraintModification.js +98 -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 +40 -0
- package/dist/development/src/modifications/differs/RemoveViewDiffer.cjs.map +1 -0
- package/dist/development/src/modifications/differs/RemoveViewDiffer.js +40 -0
- package/dist/development/src/modifications/differs/RemoveViewDiffer.js.map +1 -0
- package/dist/development/src/modifications/entities/CreateEntityModification.cjs +76 -0
- package/dist/development/src/modifications/entities/CreateEntityModification.cjs.map +1 -0
- package/dist/development/src/modifications/entities/CreateEntityModification.js +76 -0
- package/dist/development/src/modifications/entities/CreateEntityModification.js.map +1 -0
- package/dist/development/src/modifications/entities/CreateViewModification.cjs +76 -0
- package/dist/development/src/modifications/entities/CreateViewModification.cjs.map +1 -0
- package/dist/development/src/modifications/entities/CreateViewModification.js +76 -0
- package/dist/development/src/modifications/entities/CreateViewModification.js.map +1 -0
- package/dist/development/src/modifications/entities/RemoveEntityModification.cjs +121 -0
- package/dist/development/src/modifications/entities/RemoveEntityModification.cjs.map +1 -0
- package/dist/development/src/modifications/entities/RemoveEntityModification.js +121 -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 +49 -0
- package/dist/development/src/modifications/entities/UpdateEntityTableNameModification.cjs.map +1 -0
- package/dist/development/src/modifications/entities/UpdateEntityTableNameModification.js +49 -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 +47 -0
- package/dist/development/src/modifications/enums/CreateEnumModification.cjs.map +1 -0
- package/dist/development/src/modifications/enums/CreateEnumModification.js +47 -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 +78 -0
- package/dist/development/src/modifications/enums/UpdateEnumModification.cjs.map +1 -0
- package/dist/development/src/modifications/enums/UpdateEnumModification.js +78 -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 +150 -0
- package/dist/development/src/modifications/fields/UpdateFieldNameModification.cjs.map +1 -0
- package/dist/development/src/modifications/fields/UpdateFieldNameModification.js +150 -0
- package/dist/development/src/modifications/fields/UpdateFieldNameModification.js.map +1 -0
- package/dist/development/src/modifications/indexes/CreateIndexModification.cjs +67 -0
- package/dist/development/src/modifications/indexes/CreateIndexModification.cjs.map +1 -0
- package/dist/development/src/modifications/indexes/CreateIndexModification.js +67 -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 +61 -0
- package/dist/development/src/modifications/settings/UpdateSettingsModification.cjs.map +1 -0
- package/dist/development/src/modifications/settings/UpdateSettingsModification.js +61 -0
- package/dist/development/src/modifications/settings/UpdateSettingsModification.js.map +1 -0
- package/dist/development/src/modifications/upgrade/RemoveIndexNamesModification.cjs +47 -0
- package/dist/development/src/modifications/upgrade/RemoveIndexNamesModification.cjs.map +1 -0
- package/dist/development/src/modifications/upgrade/RemoveIndexNamesModification.js +47 -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 +198 -0
- package/dist/development/src/modifications/utils/schemaUpdateUtils.cjs.map +1 -0
- package/dist/development/src/modifications/utils/schemaUpdateUtils.js +198 -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 +45 -0
- package/dist/development/src/modifications/validation/UpdateValidationSchemaModification.cjs.map +1 -0
- package/dist/development/src/modifications/validation/UpdateValidationSchemaModification.js +45 -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 +168 -0
- package/dist/production/index.cjs.map +1 -0
- package/dist/production/index.js +162 -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 +68 -0
- package/dist/production/src/MigrationDescriber.cjs.map +1 -0
- package/dist/production/src/MigrationDescriber.js +68 -0
- package/dist/production/src/MigrationDescriber.js.map +1 -0
- package/dist/production/src/SchemaDiffer.cjs +150 -0
- package/dist/production/src/SchemaDiffer.cjs.map +1 -0
- package/dist/production/src/SchemaDiffer.js +150 -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 +111 -0
- package/dist/production/src/modifications/ModificationHandlerFactory.cjs.map +1 -0
- package/dist/production/src/modifications/ModificationHandlerFactory.js +111 -0
- package/dist/production/src/modifications/ModificationHandlerFactory.js.map +1 -0
- package/dist/production/src/modifications/ModificationVersions.cjs +21 -0
- package/dist/production/src/modifications/ModificationVersions.cjs.map +1 -0
- package/dist/production/src/modifications/ModificationVersions.js +21 -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 +45 -0
- package/dist/production/src/modifications/acl/UpdateAclSchemaModification.cjs.map +1 -0
- package/dist/production/src/modifications/acl/UpdateAclSchemaModification.js +45 -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/PatchTriggerModification.cjs +44 -0
- package/dist/production/src/modifications/actions/PatchTriggerModification.cjs.map +1 -0
- package/dist/production/src/modifications/actions/PatchTriggerModification.js +44 -0
- package/dist/production/src/modifications/actions/PatchTriggerModification.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 +56 -0
- package/dist/production/src/modifications/actions/UpdateTriggerModification.cjs.map +1 -0
- package/dist/production/src/modifications/actions/UpdateTriggerModification.js +56 -0
- package/dist/production/src/modifications/actions/UpdateTriggerModification.js.map +1 -0
- package/dist/production/src/modifications/columns/CreateColumnModification.cjs +86 -0
- package/dist/production/src/modifications/columns/CreateColumnModification.cjs.map +1 -0
- package/dist/production/src/modifications/columns/CreateColumnModification.js +86 -0
- package/dist/production/src/modifications/columns/CreateColumnModification.js.map +1 -0
- package/dist/production/src/modifications/columns/UpdateColumnDefinitionModification.cjs +141 -0
- package/dist/production/src/modifications/columns/UpdateColumnDefinitionModification.cjs.map +1 -0
- package/dist/production/src/modifications/columns/UpdateColumnDefinitionModification.js +141 -0
- package/dist/production/src/modifications/columns/UpdateColumnDefinitionModification.js.map +1 -0
- package/dist/production/src/modifications/columns/UpdateColumnNameModification.cjs +111 -0
- package/dist/production/src/modifications/columns/UpdateColumnNameModification.cjs.map +1 -0
- package/dist/production/src/modifications/columns/UpdateColumnNameModification.js +111 -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 +79 -0
- package/dist/production/src/modifications/constraints/CreateUniqueConstraintModification.cjs.map +1 -0
- package/dist/production/src/modifications/constraints/CreateUniqueConstraintModification.js +79 -0
- package/dist/production/src/modifications/constraints/CreateUniqueConstraintModification.js.map +1 -0
- package/dist/production/src/modifications/constraints/RemoveUniqueConstraintModification.cjs +98 -0
- package/dist/production/src/modifications/constraints/RemoveUniqueConstraintModification.cjs.map +1 -0
- package/dist/production/src/modifications/constraints/RemoveUniqueConstraintModification.js +98 -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 +40 -0
- package/dist/production/src/modifications/differs/RemoveViewDiffer.cjs.map +1 -0
- package/dist/production/src/modifications/differs/RemoveViewDiffer.js +40 -0
- package/dist/production/src/modifications/differs/RemoveViewDiffer.js.map +1 -0
- package/dist/production/src/modifications/entities/CreateEntityModification.cjs +76 -0
- package/dist/production/src/modifications/entities/CreateEntityModification.cjs.map +1 -0
- package/dist/production/src/modifications/entities/CreateEntityModification.js +76 -0
- package/dist/production/src/modifications/entities/CreateEntityModification.js.map +1 -0
- package/dist/production/src/modifications/entities/CreateViewModification.cjs +76 -0
- package/dist/production/src/modifications/entities/CreateViewModification.cjs.map +1 -0
- package/dist/production/src/modifications/entities/CreateViewModification.js +76 -0
- package/dist/production/src/modifications/entities/CreateViewModification.js.map +1 -0
- package/dist/production/src/modifications/entities/RemoveEntityModification.cjs +121 -0
- package/dist/production/src/modifications/entities/RemoveEntityModification.cjs.map +1 -0
- package/dist/production/src/modifications/entities/RemoveEntityModification.js +121 -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 +49 -0
- package/dist/production/src/modifications/entities/UpdateEntityTableNameModification.cjs.map +1 -0
- package/dist/production/src/modifications/entities/UpdateEntityTableNameModification.js +49 -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 +47 -0
- package/dist/production/src/modifications/enums/CreateEnumModification.cjs.map +1 -0
- package/dist/production/src/modifications/enums/CreateEnumModification.js +47 -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 +78 -0
- package/dist/production/src/modifications/enums/UpdateEnumModification.cjs.map +1 -0
- package/dist/production/src/modifications/enums/UpdateEnumModification.js +78 -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 +150 -0
- package/dist/production/src/modifications/fields/UpdateFieldNameModification.cjs.map +1 -0
- package/dist/production/src/modifications/fields/UpdateFieldNameModification.js +150 -0
- package/dist/production/src/modifications/fields/UpdateFieldNameModification.js.map +1 -0
- package/dist/production/src/modifications/indexes/CreateIndexModification.cjs +67 -0
- package/dist/production/src/modifications/indexes/CreateIndexModification.cjs.map +1 -0
- package/dist/production/src/modifications/indexes/CreateIndexModification.js +67 -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 +61 -0
- package/dist/production/src/modifications/settings/UpdateSettingsModification.cjs.map +1 -0
- package/dist/production/src/modifications/settings/UpdateSettingsModification.js +61 -0
- package/dist/production/src/modifications/settings/UpdateSettingsModification.js.map +1 -0
- package/dist/production/src/modifications/upgrade/RemoveIndexNamesModification.cjs +47 -0
- package/dist/production/src/modifications/upgrade/RemoveIndexNamesModification.cjs.map +1 -0
- package/dist/production/src/modifications/upgrade/RemoveIndexNamesModification.js +47 -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 +198 -0
- package/dist/production/src/modifications/utils/schemaUpdateUtils.cjs.map +1 -0
- package/dist/production/src/modifications/utils/schemaUpdateUtils.js +198 -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 +45 -0
- package/dist/production/src/modifications/validation/UpdateValidationSchemaModification.cjs.map +1 -0
- package/dist/production/src/modifications/validation/UpdateValidationSchemaModification.js +45 -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/cases/integration/convertManyHasOneToOneHasOneRelation.test.d.ts +2 -0
- package/dist/tests/cases/integration/convertManyHasOneToOneHasOneRelation.test.d.ts.map +1 -0
- package/dist/tests/cases/integration/convertOneHasManyToManyHasManyRelation.test.d.ts +2 -0
- package/dist/tests/cases/integration/convertOneHasManyToManyHasManyRelation.test.d.ts.map +1 -0
- package/dist/tests/cases/integration/convertOneToManyRelation.test.d.ts +2 -0
- package/dist/tests/cases/integration/convertOneToManyRelation.test.d.ts.map +1 -0
- package/dist/tests/cases/integration/createAndDropIndex.test.d.ts +2 -0
- package/dist/tests/cases/integration/createAndDropIndex.test.d.ts.map +1 -0
- package/dist/tests/cases/integration/createColumn.test.d.ts +2 -0
- package/dist/tests/cases/integration/createColumn.test.d.ts.map +1 -0
- package/dist/tests/cases/integration/createEntity.test.d.ts +2 -0
- package/dist/tests/cases/integration/createEntity.test.d.ts.map +1 -0
- package/dist/tests/cases/integration/createEnum.test.d.ts +2 -0
- package/dist/tests/cases/integration/createEnum.test.d.ts.map +1 -0
- package/dist/tests/cases/integration/createManyHasMany.test.d.ts +2 -0
- package/dist/tests/cases/integration/createManyHasMany.test.d.ts.map +1 -0
- package/dist/tests/cases/integration/createManyHasOne.test.d.ts +2 -0
- package/dist/tests/cases/integration/createManyHasOne.test.d.ts.map +1 -0
- package/dist/tests/cases/integration/createOneHasMany.test.d.ts +2 -0
- package/dist/tests/cases/integration/createOneHasMany.test.d.ts.map +1 -0
- package/dist/tests/cases/integration/createOneHasOne.test.d.ts +2 -0
- package/dist/tests/cases/integration/createOneHasOne.test.d.ts.map +1 -0
- package/dist/tests/cases/integration/createRelationInverseSide.test.d.ts +2 -0
- package/dist/tests/cases/integration/createRelationInverseSide.test.d.ts.map +1 -0
- package/dist/tests/cases/integration/createUnique.test.d.ts +2 -0
- package/dist/tests/cases/integration/createUnique.test.d.ts.map +1 -0
- package/dist/tests/cases/integration/createView.test.d.ts +2 -0
- package/dist/tests/cases/integration/createView.test.d.ts.map +1 -0
- package/dist/tests/cases/integration/disableOrphanRemoval.test.d.ts +2 -0
- package/dist/tests/cases/integration/disableOrphanRemoval.test.d.ts.map +1 -0
- package/dist/tests/cases/integration/enableOrphanRemoval.test.d.ts +2 -0
- package/dist/tests/cases/integration/enableOrphanRemoval.test.d.ts.map +1 -0
- package/dist/tests/cases/integration/makeColumnNotNull.test.d.ts +2 -0
- package/dist/tests/cases/integration/makeColumnNotNull.test.d.ts.map +1 -0
- package/dist/tests/cases/integration/makeRelationNotNull.test.d.ts +2 -0
- package/dist/tests/cases/integration/makeRelationNotNull.test.d.ts.map +1 -0
- package/dist/tests/cases/integration/makeRelationNullable.test.d.ts +2 -0
- package/dist/tests/cases/integration/makeRelationNullable.test.d.ts.map +1 -0
- package/dist/tests/cases/integration/patchAclSchema.test.d.ts +2 -0
- package/dist/tests/cases/integration/patchAclSchema.test.d.ts.map +1 -0
- package/dist/tests/cases/integration/patchTrigger.test.d.ts +2 -0
- package/dist/tests/cases/integration/patchTrigger.test.d.ts.map +1 -0
- package/dist/tests/cases/integration/removeEntity.test.d.ts +2 -0
- package/dist/tests/cases/integration/removeEntity.test.d.ts.map +1 -0
- package/dist/tests/cases/integration/removeEnum.test.d.ts +2 -0
- package/dist/tests/cases/integration/removeEnum.test.d.ts.map +1 -0
- package/dist/tests/cases/integration/removeField.test.d.ts +2 -0
- package/dist/tests/cases/integration/removeField.test.d.ts.map +1 -0
- package/dist/tests/cases/integration/toggleEventLog.test.d.ts +2 -0
- package/dist/tests/cases/integration/toggleEventLog.test.d.ts.map +1 -0
- package/dist/tests/cases/integration/toggleJunctionEventLog.test.d.ts +2 -0
- package/dist/tests/cases/integration/toggleJunctionEventLog.test.d.ts.map +1 -0
- package/dist/tests/cases/integration/updateColumnDefinition.test.d.ts +2 -0
- package/dist/tests/cases/integration/updateColumnDefinition.test.d.ts.map +1 -0
- package/dist/tests/cases/integration/updateEntityName.test.d.ts +2 -0
- package/dist/tests/cases/integration/updateEntityName.test.d.ts.map +1 -0
- package/dist/tests/cases/integration/updateEntityOrderBy.test.d.ts +2 -0
- package/dist/tests/cases/integration/updateEntityOrderBy.test.d.ts.map +1 -0
- package/dist/tests/cases/integration/updateEnum.test.d.ts +2 -0
- package/dist/tests/cases/integration/updateEnum.test.d.ts.map +1 -0
- package/dist/tests/cases/integration/updateFieldName.test.d.ts +2 -0
- package/dist/tests/cases/integration/updateFieldName.test.d.ts.map +1 -0
- package/dist/tests/cases/integration/updateRelationOnDelete.test.d.ts +2 -0
- package/dist/tests/cases/integration/updateRelationOnDelete.test.d.ts.map +1 -0
- package/dist/tests/cases/integration/updateRelationOrderBy.test.d.ts +2 -0
- package/dist/tests/cases/integration/updateRelationOrderBy.test.d.ts.map +1 -0
- package/dist/tests/cases/integration/updateView.test.d.ts +2 -0
- package/dist/tests/cases/integration/updateView.test.d.ts.map +1 -0
- package/dist/tests/src/tags.d.ts +2 -0
- package/dist/tests/src/tags.d.ts.map +1 -0
- package/dist/tests/src/tests.d.ts +16 -0
- package/dist/tests/src/tests.d.ts.map +1 -0
- package/dist/tests/tsconfig.tsbuildinfo +1 -0
- package/dist/types/Migration.d.ts +20 -0
- package/dist/types/Migration.d.ts.map +1 -0
- package/dist/types/MigrationDescriber.d.ts +17 -0
- package/dist/types/MigrationDescriber.d.ts.map +1 -0
- package/dist/types/SchemaDiffer.d.ts +22 -0
- package/dist/types/SchemaDiffer.d.ts.map +1 -0
- package/dist/types/SchemaMigrator.d.ts +9 -0
- package/dist/types/SchemaMigrator.d.ts.map +1 -0
- package/dist/types/exceptions.d.ts +3 -0
- package/dist/types/exceptions.d.ts.map +1 -0
- package/dist/types/index.d.ts +8 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/modifications/ModificationHandler.d.ts +45 -0
- package/dist/types/modifications/ModificationHandler.d.ts.map +1 -0
- package/dist/types/modifications/ModificationHandlerFactory.d.ts +16 -0
- package/dist/types/modifications/ModificationHandlerFactory.d.ts.map +1 -0
- package/dist/types/modifications/ModificationVersions.d.ts +10 -0
- package/dist/types/modifications/ModificationVersions.d.ts.map +1 -0
- package/dist/types/modifications/NoopModification.d.ts +11 -0
- package/dist/types/modifications/NoopModification.d.ts.map +1 -0
- package/dist/types/modifications/acl/PatchAclSchemaModification.d.ts +17 -0
- package/dist/types/modifications/acl/PatchAclSchemaModification.d.ts.map +1 -0
- package/dist/types/modifications/acl/UpdateAclSchemaModification.d.ts +24 -0
- package/dist/types/modifications/acl/UpdateAclSchemaModification.d.ts.map +1 -0
- package/dist/types/modifications/acl/index.d.ts +3 -0
- package/dist/types/modifications/acl/index.d.ts.map +1 -0
- package/dist/types/modifications/actions/CreateTargetModification.d.ts +20 -0
- package/dist/types/modifications/actions/CreateTargetModification.d.ts.map +1 -0
- package/dist/types/modifications/actions/CreateTriggerModification.d.ts +20 -0
- package/dist/types/modifications/actions/CreateTriggerModification.d.ts.map +1 -0
- package/dist/types/modifications/actions/PatchTriggerModification.d.ts +18 -0
- package/dist/types/modifications/actions/PatchTriggerModification.d.ts.map +1 -0
- package/dist/types/modifications/actions/RemoveTargetModification.d.ts +20 -0
- package/dist/types/modifications/actions/RemoveTargetModification.d.ts.map +1 -0
- package/dist/types/modifications/actions/RemoveTriggerModification.d.ts +20 -0
- package/dist/types/modifications/actions/RemoveTriggerModification.d.ts.map +1 -0
- package/dist/types/modifications/actions/UpdateTargetModification.d.ts +21 -0
- package/dist/types/modifications/actions/UpdateTargetModification.d.ts.map +1 -0
- package/dist/types/modifications/actions/UpdateTriggerModification.d.ts +24 -0
- package/dist/types/modifications/actions/UpdateTriggerModification.d.ts.map +1 -0
- package/dist/types/modifications/actions/index.d.ts +5 -0
- package/dist/types/modifications/actions/index.d.ts.map +1 -0
- package/dist/types/modifications/columns/CreateColumnModification.d.ts +29 -0
- package/dist/types/modifications/columns/CreateColumnModification.d.ts.map +1 -0
- package/dist/types/modifications/columns/UpdateColumnDefinitionModification.d.ts +35 -0
- package/dist/types/modifications/columns/UpdateColumnDefinitionModification.d.ts.map +1 -0
- package/dist/types/modifications/columns/UpdateColumnNameModification.d.ts +24 -0
- package/dist/types/modifications/columns/UpdateColumnNameModification.d.ts.map +1 -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/columns/index.d.ts +4 -0
- package/dist/types/modifications/columns/index.d.ts.map +1 -0
- package/dist/types/modifications/constraints/CreateUniqueConstraintModification.d.ts +26 -0
- package/dist/types/modifications/constraints/CreateUniqueConstraintModification.d.ts.map +1 -0
- package/dist/types/modifications/constraints/RemoveUniqueConstraintModification.d.ts +34 -0
- package/dist/types/modifications/constraints/RemoveUniqueConstraintModification.d.ts.map +1 -0
- package/dist/types/modifications/constraints/index.d.ts +4 -0
- package/dist/types/modifications/constraints/index.d.ts.map +1 -0
- package/dist/types/modifications/constraints/utils.d.ts +7 -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/RemoveChangedFieldDiffer.d.ts.map +1 -0
- package/dist/types/modifications/differs/RemoveViewDiffer.d.ts +11 -0
- package/dist/types/modifications/differs/RemoveViewDiffer.d.ts.map +1 -0
- package/dist/types/modifications/differs/index.d.ts +3 -0
- package/dist/types/modifications/differs/index.d.ts.map +1 -0
- package/dist/types/modifications/entities/CreateEntityModification.d.ts +24 -0
- package/dist/types/modifications/entities/CreateEntityModification.d.ts.map +1 -0
- package/dist/types/modifications/entities/CreateViewModification.d.ts +27 -0
- package/dist/types/modifications/entities/CreateViewModification.d.ts.map +1 -0
- package/dist/types/modifications/entities/RemoveEntityModification.d.ts +25 -0
- package/dist/types/modifications/entities/RemoveEntityModification.d.ts.map +1 -0
- package/dist/types/modifications/entities/ToggleEventLogModification.d.ts +24 -0
- package/dist/types/modifications/entities/ToggleEventLogModification.d.ts.map +1 -0
- package/dist/types/modifications/entities/UpdateEntityNameModification.d.ts +23 -0
- package/dist/types/modifications/entities/UpdateEntityNameModification.d.ts.map +1 -0
- package/dist/types/modifications/entities/UpdateEntityOrderByModification.d.ts +23 -0
- package/dist/types/modifications/entities/UpdateEntityOrderByModification.d.ts.map +1 -0
- package/dist/types/modifications/entities/UpdateEntityTableNameModification.d.ts +23 -0
- package/dist/types/modifications/entities/UpdateEntityTableNameModification.d.ts.map +1 -0
- package/dist/types/modifications/entities/UpdateViewModification.d.ts +20 -0
- package/dist/types/modifications/entities/UpdateViewModification.d.ts.map +1 -0
- package/dist/types/modifications/entities/index.d.ts +8 -0
- package/dist/types/modifications/entities/index.d.ts.map +1 -0
- package/dist/types/modifications/enums/CreateEnumModification.d.ts +23 -0
- package/dist/types/modifications/enums/CreateEnumModification.d.ts.map +1 -0
- package/dist/types/modifications/enums/RemoveEnumModification.d.ts +22 -0
- package/dist/types/modifications/enums/RemoveEnumModification.d.ts.map +1 -0
- package/dist/types/modifications/enums/UpdateEnumModification.d.ts +25 -0
- package/dist/types/modifications/enums/UpdateEnumModification.d.ts.map +1 -0
- package/dist/types/modifications/enums/enumUtils.d.ts +3 -0
- package/dist/types/modifications/enums/enumUtils.d.ts.map +1 -0
- package/dist/types/modifications/enums/index.d.ts +4 -0
- package/dist/types/modifications/enums/index.d.ts.map +1 -0
- package/dist/types/modifications/exceptions.d.ts +3 -0
- package/dist/types/modifications/exceptions.d.ts.map +1 -0
- package/dist/types/modifications/fields/RemoveFieldModification.d.ts +25 -0
- package/dist/types/modifications/fields/RemoveFieldModification.d.ts.map +1 -0
- package/dist/types/modifications/fields/UpdateFieldNameModification.d.ts +24 -0
- package/dist/types/modifications/fields/UpdateFieldNameModification.d.ts.map +1 -0
- package/dist/types/modifications/fields/index.d.ts +3 -0
- package/dist/types/modifications/fields/index.d.ts.map +1 -0
- package/dist/types/modifications/index.d.ts +14 -0
- package/dist/types/modifications/index.d.ts.map +1 -0
- package/dist/types/modifications/indexes/CreateIndexModification.d.ts +23 -0
- package/dist/types/modifications/indexes/CreateIndexModification.d.ts.map +1 -0
- package/dist/types/modifications/indexes/RemoveIndexModification.d.ts +29 -0
- package/dist/types/modifications/indexes/RemoveIndexModification.d.ts.map +1 -0
- package/dist/types/modifications/indexes/index.d.ts +3 -0
- package/dist/types/modifications/indexes/index.d.ts.map +1 -0
- package/dist/types/modifications/indexes/utils.d.ts +7 -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/ConvertOneHasManyToManyHasManyRelationModification.d.ts.map +1 -0
- package/dist/types/modifications/relations/ConvertOneHasManyToOneHasOneRelationModification.d.ts +28 -0
- package/dist/types/modifications/relations/ConvertOneHasManyToOneHasOneRelationModification.d.ts.map +1 -0
- package/dist/types/modifications/relations/ConvertOneToManyRelationModification.d.ts +27 -0
- package/dist/types/modifications/relations/ConvertOneToManyRelationModification.d.ts.map +1 -0
- package/dist/types/modifications/relations/CreateRelationInverseSideModification.d.ts +22 -0
- package/dist/types/modifications/relations/CreateRelationInverseSideModification.d.ts.map +1 -0
- package/dist/types/modifications/relations/CreateRelationModification.d.ts +30 -0
- package/dist/types/modifications/relations/CreateRelationModification.d.ts.map +1 -0
- package/dist/types/modifications/relations/DisableOrphanRemovalModification.d.ts +22 -0
- package/dist/types/modifications/relations/DisableOrphanRemovalModification.d.ts.map +1 -0
- package/dist/types/modifications/relations/EnableOrphanRemovalModification.d.ts +22 -0
- package/dist/types/modifications/relations/EnableOrphanRemovalModification.d.ts.map +1 -0
- package/dist/types/modifications/relations/MakeRelationNotNullModification.d.ts +24 -0
- package/dist/types/modifications/relations/MakeRelationNotNullModification.d.ts.map +1 -0
- package/dist/types/modifications/relations/MakeRelationNullableModification.d.ts +23 -0
- package/dist/types/modifications/relations/MakeRelationNullableModification.d.ts.map +1 -0
- package/dist/types/modifications/relations/ToggleJunctionEventLogModification.d.ts +24 -0
- package/dist/types/modifications/relations/ToggleJunctionEventLogModification.d.ts.map +1 -0
- package/dist/types/modifications/relations/UpdateRelationOnDeleteModification.d.ts +24 -0
- package/dist/types/modifications/relations/UpdateRelationOnDeleteModification.d.ts.map +1 -0
- package/dist/types/modifications/relations/UpdateRelationOrderByModification.d.ts +23 -0
- package/dist/types/modifications/relations/UpdateRelationOrderByModification.d.ts.map +1 -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/index.d.ts +12 -0
- package/dist/types/modifications/relations/index.d.ts.map +1 -0
- package/dist/types/modifications/relations/normalization.d.ts +8 -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/settings/UpdateSettingsModification.d.ts.map +1 -0
- package/dist/types/modifications/settings/index.d.ts +2 -0
- package/dist/types/modifications/settings/index.d.ts.map +1 -0
- package/dist/types/modifications/upgrade/RemoveIndexNamesModification.d.ts +18 -0
- package/dist/types/modifications/upgrade/RemoveIndexNamesModification.d.ts.map +1 -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 +4 -0
- package/dist/types/modifications/utils/createJunctionTable.d.ts.map +1 -0
- package/dist/types/modifications/utils/diffUtils.d.ts +34 -0
- package/dist/types/modifications/utils/diffUtils.d.ts.map +1 -0
- package/dist/types/modifications/utils/getPrimaryColumnType.d.ts +3 -0
- package/dist/types/modifications/utils/getPrimaryColumnType.d.ts.map +1 -0
- package/dist/types/modifications/utils/schemaUpdateUtils.d.ts +68 -0
- package/dist/types/modifications/utils/schemaUpdateUtils.d.ts.map +1 -0
- package/dist/types/modifications/utils/sqlUpdateUtils.d.ts +6 -0
- package/dist/types/modifications/utils/sqlUpdateUtils.d.ts.map +1 -0
- package/dist/types/modifications/utils/stringArrayEquals.d.ts +2 -0
- package/dist/types/modifications/utils/stringArrayEquals.d.ts.map +1 -0
- package/dist/types/modifications/utils/valueUtils.d.ts +2 -0
- package/dist/types/modifications/utils/valueUtils.d.ts.map +1 -0
- package/dist/types/modifications/utils/viewDependencies.d.ts +7 -0
- package/dist/types/modifications/utils/viewDependencies.d.ts.map +1 -0
- package/dist/types/modifications/validation/PatchValidationSchemaModification.d.ts +17 -0
- package/dist/types/modifications/validation/PatchValidationSchemaModification.d.ts.map +1 -0
- package/dist/types/modifications/validation/UpdateValidationSchemaModification.d.ts +24 -0
- package/dist/types/modifications/validation/UpdateValidationSchemaModification.d.ts.map +1 -0
- package/dist/types/modifications/validation/index.d.ts +3 -0
- package/dist/types/modifications/validation/index.d.ts.map +1 -0
- package/dist/types/tsconfig.tsbuildinfo +1 -0
- package/dist/types/utils/PartialEntity.d.ts +7 -0
- package/dist/types/utils/PartialEntity.d.ts.map +1 -0
- package/dist/types/utils/dbHelpers.d.ts +2 -0
- package/dist/types/utils/dbHelpers.d.ts.map +1 -0
- package/dist/types/utils/deepCopy.d.ts +2 -0
- package/dist/types/utils/deepCopy.d.ts.map +1 -0
- package/dist/types/utils/escapeSqlString.d.ts +2 -0
- package/dist/types/utils/escapeSqlString.d.ts.map +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 +10 -10
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
import { updateModel, updateEntity, addField } from "../utils/schemaUpdateUtils.js";
|
|
2
|
+
import { createModificationType } from "../ModificationHandler.js";
|
|
3
|
+
import { isColumn } from "@contember/schema-utils";
|
|
4
|
+
import { createFields } from "../utils/diffUtils.js";
|
|
5
|
+
import { getColumnSqlType } from "../utils/columnUtils.js";
|
|
6
|
+
import { formatSeedExpression, fillSeed } from "./columnUtils.js";
|
|
7
|
+
class CreateColumnModificationHandler {
|
|
8
|
+
constructor(data, schema) {
|
|
9
|
+
this.data = data;
|
|
10
|
+
this.schema = schema;
|
|
11
|
+
}
|
|
12
|
+
createSql(builder) {
|
|
13
|
+
const entity = this.schema.model.entities[this.data.entityName];
|
|
14
|
+
if (entity.view) {
|
|
15
|
+
return;
|
|
16
|
+
}
|
|
17
|
+
const column = this.data.field;
|
|
18
|
+
const columnType = getColumnSqlType(column);
|
|
19
|
+
const seedExpression = formatSeedExpression({
|
|
20
|
+
model: this.schema.model,
|
|
21
|
+
entity,
|
|
22
|
+
columnType,
|
|
23
|
+
fillValue: this.data.fillValue,
|
|
24
|
+
copyValue: this.data.copyValue
|
|
25
|
+
});
|
|
26
|
+
builder.addColumn(entity.tableName, {
|
|
27
|
+
[column.columnName]: {
|
|
28
|
+
type: columnType,
|
|
29
|
+
notNull: !column.nullable && seedExpression === null,
|
|
30
|
+
sequenceGenerated: column.sequence,
|
|
31
|
+
collation: column.collation
|
|
32
|
+
}
|
|
33
|
+
});
|
|
34
|
+
if (seedExpression !== null) {
|
|
35
|
+
if (this.data.valueMigrationStrategy === "using") {
|
|
36
|
+
builder.alterColumn(entity.tableName, column.columnName, {
|
|
37
|
+
notNull: !column.nullable ? true : void 0,
|
|
38
|
+
type: columnType,
|
|
39
|
+
using: seedExpression
|
|
40
|
+
});
|
|
41
|
+
} else {
|
|
42
|
+
fillSeed({
|
|
43
|
+
builder,
|
|
44
|
+
type: "creating",
|
|
45
|
+
entity,
|
|
46
|
+
columnName: column.columnName,
|
|
47
|
+
nullable: column.nullable,
|
|
48
|
+
seedExpression
|
|
49
|
+
});
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
getSchemaUpdater() {
|
|
54
|
+
return updateModel(updateEntity(this.data.entityName, addField(this.data.field)));
|
|
55
|
+
}
|
|
56
|
+
describe({ createdEntities }) {
|
|
57
|
+
const notNull = !this.data.field.nullable;
|
|
58
|
+
const hasValue = this.data.fillValue !== void 0 || this.data.copyValue !== void 0;
|
|
59
|
+
const failureWarning = notNull && !hasValue && !createdEntities.includes(this.data.entityName) ? "May fail in runtime, because column is not-null. Consider setting fillValue or copyValue" : void 0;
|
|
60
|
+
return { message: `Add field ${this.data.entityName}.${this.data.field.name}`, failureWarning };
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
const createColumnModification = createModificationType({
|
|
64
|
+
id: "createColumn",
|
|
65
|
+
handler: CreateColumnModificationHandler
|
|
66
|
+
});
|
|
67
|
+
class CreateColumnDiffer {
|
|
68
|
+
createDiff(originalSchema, updatedSchema) {
|
|
69
|
+
return createFields(originalSchema, updatedSchema, ({ newField, updatedEntity }) => {
|
|
70
|
+
if (!isColumn(newField)) {
|
|
71
|
+
return void 0;
|
|
72
|
+
}
|
|
73
|
+
return createColumnModification.createModification({
|
|
74
|
+
entityName: updatedEntity.name,
|
|
75
|
+
field: newField,
|
|
76
|
+
...newField.default !== void 0 ? { fillValue: newField.default, valueMigrationStrategy: "using" } : {}
|
|
77
|
+
});
|
|
78
|
+
});
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
export {
|
|
82
|
+
CreateColumnDiffer,
|
|
83
|
+
CreateColumnModificationHandler,
|
|
84
|
+
createColumnModification
|
|
85
|
+
};
|
|
86
|
+
//# sourceMappingURL=CreateColumnModification.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CreateColumnModification.js","sources":["../../../../../../packages/schema-migrations/src/modifications/columns/CreateColumnModification.ts"],"sourcesContent":["import { MigrationBuilder } from '@contember/database-migrations'\nimport { JSONValue, Model, Schema } from '@contember/schema'\nimport { addField, SchemaUpdater, updateEntity, updateModel } from '../utils/schemaUpdateUtils'\nimport { createModificationType, Differ, ModificationHandler } from '../ModificationHandler'\nimport { isColumn } from '@contember/schema-utils'\nimport { createFields } from '../utils/diffUtils'\nimport { getColumnSqlType } from '../utils/columnUtils'\nimport { fillSeed, formatSeedExpression } from './columnUtils'\n\nexport class CreateColumnModificationHandler implements ModificationHandler<CreateColumnModificationData> {\n\tconstructor(private readonly data: CreateColumnModificationData, private readonly schema: Schema) {}\n\n\tpublic createSql(builder: MigrationBuilder): 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\tconst column = this.data.field\n\n\t\tconst columnType = getColumnSqlType(column)\n\n\t\tconst seedExpression = formatSeedExpression({\n\t\t\tmodel: this.schema.model,\n\t\t\tentity,\n\t\t\tcolumnType,\n\t\t\tfillValue: this.data.fillValue,\n\t\t\tcopyValue: this.data.copyValue,\n\t\t})\n\n\t\tbuilder.addColumn(entity.tableName, {\n\t\t\t[column.columnName]: {\n\t\t\t\ttype: columnType,\n\t\t\t\tnotNull: !column.nullable && seedExpression === null,\n\t\t\t\tsequenceGenerated: column.sequence,\n\t\t\t\tcollation: column.collation,\n\t\t\t},\n\t\t})\n\n\t\tif (seedExpression !== null) {\n\t\t\tif (this.data.valueMigrationStrategy === 'using') {\n\t\t\t\tbuilder.alterColumn(entity.tableName, column.columnName, {\n\t\t\t\t\tnotNull: !column.nullable ? true : undefined,\n\t\t\t\t\ttype: columnType,\n\t\t\t\t\tusing: seedExpression,\n\t\t\t\t})\n\t\t\t} else {\n\t\t\t\tfillSeed({\n\t\t\t\t\tbuilder,\n\t\t\t\t\ttype: 'creating',\n\t\t\t\t\tentity,\n\t\t\t\t\tcolumnName: column.columnName,\n\t\t\t\t\tnullable: column.nullable,\n\t\t\t\t\tseedExpression,\n\t\t\t\t})\n\t\t\t}\n\t\t}\n\t}\n\n\tpublic getSchemaUpdater(): SchemaUpdater {\n\t\treturn updateModel(updateEntity(this.data.entityName, addField(this.data.field)))\n\t}\n\n\tdescribe({ createdEntities }: { createdEntities: string[] }) {\n\t\tconst notNull = !this.data.field.nullable\n\t\tconst hasValue = this.data.fillValue !== undefined || this.data.copyValue !== undefined\n\t\tconst failureWarning = notNull && !hasValue && !createdEntities.includes(this.data.entityName)\n\t\t\t? 'May fail in runtime, because column is not-null. Consider setting fillValue or copyValue'\n\t\t\t: undefined\n\t\treturn { message: `Add field ${this.data.entityName}.${this.data.field.name}`, failureWarning }\n\t}\n}\n\nexport interface CreateColumnModificationData {\n\tentityName: string\n\tfield: Model.AnyColumn\n\tfillValue?: JSONValue\n\tcopyValue?: string\n\tvalueMigrationStrategy?: 'using' | 'update'\n}\n\nexport const createColumnModification = createModificationType({\n\tid: 'createColumn',\n\thandler: CreateColumnModificationHandler,\n})\n\nexport class CreateColumnDiffer implements Differ {\n\tcreateDiff(originalSchema: Schema, updatedSchema: Schema) {\n\t\treturn createFields(originalSchema, updatedSchema, ({ newField, updatedEntity }) => {\n\t\t\tif (!isColumn(newField)) {\n\t\t\t\treturn undefined\n\t\t\t}\n\t\t\treturn createColumnModification.createModification({\n\t\t\t\tentityName: updatedEntity.name,\n\t\t\t\tfield: newField,\n\t\t\t\t...(newField.default !== undefined ? { fillValue: newField.default, valueMigrationStrategy: 'using' } : {}),\n\t\t\t})\n\t\t})\n\t}\n}\n"],"names":[],"mappings":";;;;;;AASO,MAAM,gCAA6F;AAAA,EACzG,YAA6B,MAAqD,QAAgB;AAArE,SAAA,OAAA;AAAqD,SAAA,SAAA;AAAA,EAAiB;AAAA,EAE5F,UAAU,SAAiC;AACjD,UAAM,SAAS,KAAK,OAAO,MAAM,SAAS,KAAK,KAAK,UAAU;AAC9D,QAAI,OAAO,MAAM;AAChB;AAAA,IACD;AACA,UAAM,SAAS,KAAK,KAAK;AAEzB,UAAM,aAAa,iBAAiB,MAAM;AAE1C,UAAM,iBAAiB,qBAAqB;AAAA,MAC3C,OAAO,KAAK,OAAO;AAAA,MACnB;AAAA,MACA;AAAA,MACA,WAAW,KAAK,KAAK;AAAA,MACrB,WAAW,KAAK,KAAK;AAAA,IAAA,CACrB;AAED,YAAQ,UAAU,OAAO,WAAW;AAAA,MACnC,CAAC,OAAO,UAAU,GAAG;AAAA,QACpB,MAAM;AAAA,QACN,SAAS,CAAC,OAAO,YAAY,mBAAmB;AAAA,QAChD,mBAAmB,OAAO;AAAA,QAC1B,WAAW,OAAO;AAAA,MAAA;AAAA,IACnB,CACA;AAED,QAAI,mBAAmB,MAAM;AAC5B,UAAI,KAAK,KAAK,2BAA2B,SAAS;AACjD,gBAAQ,YAAY,OAAO,WAAW,OAAO,YAAY;AAAA,UACxD,SAAS,CAAC,OAAO,WAAW,OAAO;AAAA,UACnC,MAAM;AAAA,UACN,OAAO;AAAA,QAAA,CACP;AAAA,MACF,OAAO;AACN,iBAAS;AAAA,UACR;AAAA,UACA,MAAM;AAAA,UACN;AAAA,UACA,YAAY,OAAO;AAAA,UACnB,UAAU,OAAO;AAAA,UACjB;AAAA,QAAA,CACA;AAAA,MACF;AAAA,IACD;AAAA,EACD;AAAA,EAEO,mBAAkC;AACxC,WAAO,YAAY,aAAa,KAAK,KAAK,YAAY,SAAS,KAAK,KAAK,KAAK,CAAC,CAAC;AAAA,EACjF;AAAA,EAEA,SAAS,EAAE,mBAAkD;AAC5D,UAAM,UAAU,CAAC,KAAK,KAAK,MAAM;AACjC,UAAM,WAAW,KAAK,KAAK,cAAc,UAAa,KAAK,KAAK,cAAc;AAC9E,UAAM,iBAAiB,WAAW,CAAC,YAAY,CAAC,gBAAgB,SAAS,KAAK,KAAK,UAAU,IAC1F,6FACA;AACH,WAAO,EAAE,SAAS,aAAa,KAAK,KAAK,UAAU,IAAI,KAAK,KAAK,MAAM,IAAI,IAAI,eAAA;AAAA,EAChF;AACD;AAUO,MAAM,2BAA2B,uBAAuB;AAAA,EAC9D,IAAI;AAAA,EACJ,SAAS;AACV,CAAC;AAEM,MAAM,mBAAqC;AAAA,EACjD,WAAW,gBAAwB,eAAuB;AACzD,WAAO,aAAa,gBAAgB,eAAe,CAAC,EAAE,UAAU,oBAAoB;AACnF,UAAI,CAAC,SAAS,QAAQ,GAAG;AACxB,eAAO;AAAA,MACR;AACA,aAAO,yBAAyB,mBAAmB;AAAA,QAClD,YAAY,cAAc;AAAA,QAC1B,OAAO;AAAA,QACP,GAAI,SAAS,YAAY,SAAY,EAAE,WAAW,SAAS,SAAS,wBAAwB,YAAY,CAAA;AAAA,MAAC,CACzG;AAAA,IACF,CAAC;AAAA,EACF;AACD;"}
|
|
@@ -0,0 +1,141 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
+
const databaseMigrations = require("@contember/database-migrations");
|
|
4
|
+
const schemaUpdateUtils = require("../utils/schemaUpdateUtils.cjs");
|
|
5
|
+
const ModificationHandler = require("../ModificationHandler.cjs");
|
|
6
|
+
const deepEqual = require("fast-deep-equal");
|
|
7
|
+
const diffUtils = require("../utils/diffUtils.cjs");
|
|
8
|
+
const dbHelpers = require("../../utils/dbHelpers.cjs");
|
|
9
|
+
const columnUtils = require("../utils/columnUtils.cjs");
|
|
10
|
+
const columnUtils$1 = require("./columnUtils.cjs");
|
|
11
|
+
class UpdateColumnDefinitionModificationHandler {
|
|
12
|
+
constructor(data, schema) {
|
|
13
|
+
this.data = data;
|
|
14
|
+
this.schema = schema;
|
|
15
|
+
}
|
|
16
|
+
createSql(builder) {
|
|
17
|
+
const entity = this.schema.model.entities[this.data.entityName];
|
|
18
|
+
if (entity.view) {
|
|
19
|
+
return;
|
|
20
|
+
}
|
|
21
|
+
const oldColumn = entity.fields[this.data.fieldName];
|
|
22
|
+
const newColumn = this.data.definition;
|
|
23
|
+
const hasNewSequence = !oldColumn.sequence && newColumn.sequence;
|
|
24
|
+
const oldColumnType = columnUtils.getColumnSqlType(oldColumn);
|
|
25
|
+
const columnType = columnUtils.getColumnSqlType(newColumn);
|
|
26
|
+
const hasNewType = columnType !== oldColumnType;
|
|
27
|
+
const hasNullableChanged = oldColumn.nullable !== newColumn.nullable;
|
|
28
|
+
const hasNewCollation = newColumn.collation !== oldColumn.collation;
|
|
29
|
+
const columnNameWrapped = dbHelpers.wrapIdentifier(oldColumn.columnName);
|
|
30
|
+
const isChangedToArray = !oldColumn.list && newColumn.list;
|
|
31
|
+
const usingCast = isChangedToArray ? `CASE WHEN ${columnNameWrapped} IS NULL THEN ${newColumn.nullable ? "NULL" : `ARRAY[]::${columnType}`} ELSE ARRAY[${columnNameWrapped}]::${columnType} END` : `${columnNameWrapped}::${columnType}`;
|
|
32
|
+
const seedExpression = columnUtils$1.formatSeedExpression({
|
|
33
|
+
model: this.schema.model,
|
|
34
|
+
entity,
|
|
35
|
+
columnType,
|
|
36
|
+
fillValue: this.data.fillValue,
|
|
37
|
+
copyValue: this.data.copyValue
|
|
38
|
+
});
|
|
39
|
+
const hasSeed = seedExpression !== null;
|
|
40
|
+
const migrateWithUsing = hasSeed && this.data.valueMigrationStrategy === "using";
|
|
41
|
+
const migrateWithUpdate = hasSeed && this.data.valueMigrationStrategy !== "using";
|
|
42
|
+
builder.alterColumn(entity.tableName, oldColumn.columnName, {
|
|
43
|
+
collation: hasNewCollation ? dbHelpers.wrapIdentifier(newColumn.collation || "default") : void 0,
|
|
44
|
+
type: hasNewCollation || hasNewSequence || hasNewType || migrateWithUsing ? columnType : void 0,
|
|
45
|
+
notNull: hasNullableChanged && (!migrateWithUpdate || newColumn.nullable) ? !newColumn.nullable : void 0,
|
|
46
|
+
using: (() => {
|
|
47
|
+
if (hasNewSequence) {
|
|
48
|
+
return `COALESCE(${usingCast}, nextval(PG_GET_SERIAL_SEQUENCE(${databaseMigrations.escapeValue(entity.tableName)}, ${databaseMigrations.escapeValue(oldColumn.columnName)})))`;
|
|
49
|
+
}
|
|
50
|
+
if (migrateWithUsing) {
|
|
51
|
+
return `COALESCE(${usingCast}, ${seedExpression})`;
|
|
52
|
+
}
|
|
53
|
+
if (hasNewType) {
|
|
54
|
+
return usingCast;
|
|
55
|
+
}
|
|
56
|
+
return void 0;
|
|
57
|
+
})(),
|
|
58
|
+
sequenceGenerated: oldColumn.sequence && !newColumn.sequence ? false : !oldColumn.sequence ? newColumn.sequence : void 0
|
|
59
|
+
});
|
|
60
|
+
if (migrateWithUpdate) {
|
|
61
|
+
columnUtils$1.fillSeed({
|
|
62
|
+
builder,
|
|
63
|
+
type: "updating",
|
|
64
|
+
entity,
|
|
65
|
+
columnName: oldColumn.columnName,
|
|
66
|
+
nullable: newColumn.nullable,
|
|
67
|
+
seedExpression
|
|
68
|
+
});
|
|
69
|
+
}
|
|
70
|
+
const seqAlter = [];
|
|
71
|
+
if (oldColumn.sequence && newColumn.sequence) {
|
|
72
|
+
if (oldColumn.sequence.precedence !== newColumn.sequence.precedence) {
|
|
73
|
+
seqAlter.push(`SET GENERATED ${newColumn.sequence.precedence}`);
|
|
74
|
+
}
|
|
75
|
+
if (oldColumn.sequence.start !== newColumn.sequence.start && typeof newColumn.sequence.start === "number") {
|
|
76
|
+
seqAlter.push(`SET START WITH ${newColumn.sequence.start}`);
|
|
77
|
+
}
|
|
78
|
+
if (newColumn.sequence.restart) {
|
|
79
|
+
seqAlter.push("RESTART");
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
if (seqAlter.length > 0) {
|
|
83
|
+
builder.sql(`ALTER TABLE ${dbHelpers.wrapIdentifier(entity.tableName)} ALTER ${dbHelpers.wrapIdentifier(oldColumn.columnName)} ${seqAlter.join(" ")}`);
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
getSchemaUpdater() {
|
|
87
|
+
return schemaUpdateUtils.updateModel(
|
|
88
|
+
schemaUpdateUtils.updateEntity(
|
|
89
|
+
this.data.entityName,
|
|
90
|
+
schemaUpdateUtils.updateField(this.data.fieldName, ({ field }) => {
|
|
91
|
+
return {
|
|
92
|
+
...this.data.definition,
|
|
93
|
+
name: field.name,
|
|
94
|
+
columnName: field.columnName
|
|
95
|
+
};
|
|
96
|
+
})
|
|
97
|
+
)
|
|
98
|
+
);
|
|
99
|
+
}
|
|
100
|
+
describe() {
|
|
101
|
+
const current = this.schema.model.entities[this.data.entityName].fields[this.data.fieldName];
|
|
102
|
+
const changingToNotNull = current.nullable && !this.data.definition.nullable;
|
|
103
|
+
const failureWarning = changingToNotNull ? "Changing to not-null may fail in runtime." : void 0;
|
|
104
|
+
return {
|
|
105
|
+
message: `Update column definition of field ${this.data.entityName}.${this.data.fieldName}`,
|
|
106
|
+
failureWarning
|
|
107
|
+
};
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
const updateColumnDefinitionModification = ModificationHandler.createModificationType({
|
|
111
|
+
id: "updateColumnDefinition",
|
|
112
|
+
handler: UpdateColumnDefinitionModificationHandler
|
|
113
|
+
});
|
|
114
|
+
class UpdateColumnDefinitionDiffer {
|
|
115
|
+
createDiff(originalSchema, updatedSchema) {
|
|
116
|
+
return diffUtils.updateColumns(originalSchema, updatedSchema, ({ originalColumn, updatedColumn, updatedEntity }) => {
|
|
117
|
+
const {
|
|
118
|
+
name: {},
|
|
119
|
+
columnName: {},
|
|
120
|
+
...updatedDefinition
|
|
121
|
+
} = updatedColumn;
|
|
122
|
+
const {
|
|
123
|
+
name: {},
|
|
124
|
+
columnName: {},
|
|
125
|
+
...originalDefinition
|
|
126
|
+
} = originalColumn;
|
|
127
|
+
if (deepEqual(updatedDefinition, originalDefinition)) {
|
|
128
|
+
return void 0;
|
|
129
|
+
}
|
|
130
|
+
return updateColumnDefinitionModification.createModification({
|
|
131
|
+
entityName: updatedEntity.name,
|
|
132
|
+
fieldName: updatedColumn.name,
|
|
133
|
+
definition: updatedDefinition
|
|
134
|
+
});
|
|
135
|
+
});
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
exports.UpdateColumnDefinitionDiffer = UpdateColumnDefinitionDiffer;
|
|
139
|
+
exports.UpdateColumnDefinitionModificationHandler = UpdateColumnDefinitionModificationHandler;
|
|
140
|
+
exports.updateColumnDefinitionModification = updateColumnDefinitionModification;
|
|
141
|
+
//# sourceMappingURL=UpdateColumnDefinitionModification.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"UpdateColumnDefinitionModification.cjs","sources":["../../../../../../packages/schema-migrations/src/modifications/columns/UpdateColumnDefinitionModification.ts"],"sourcesContent":["import { escapeValue, MigrationBuilder } from '@contember/database-migrations'\nimport { JSONValue, Model, Schema } from '@contember/schema'\nimport { SchemaUpdater, updateEntity, updateField, updateModel } from '../utils/schemaUpdateUtils'\nimport { createModificationType, Differ, ModificationHandler } from '../ModificationHandler'\nimport deepEqual from 'fast-deep-equal'\nimport { updateColumns } from '../utils/diffUtils'\nimport { wrapIdentifier } from '../../utils/dbHelpers'\nimport { getColumnSqlType } from '../utils/columnUtils'\nimport { fillSeed, formatSeedExpression } from './columnUtils'\n\nexport class UpdateColumnDefinitionModificationHandler implements ModificationHandler<UpdateColumnDefinitionModificationData> {\n\tconstructor(private readonly data: UpdateColumnDefinitionModificationData, private readonly schema: Schema) {}\n\n\tpublic createSql(builder: MigrationBuilder): 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\tconst oldColumn = entity.fields[this.data.fieldName] as Model.AnyColumn\n\t\tconst newColumn = this.data.definition\n\n\t\tconst hasNewSequence = !oldColumn.sequence && newColumn.sequence\n\t\tconst oldColumnType = getColumnSqlType(oldColumn)\n\t\tconst columnType = getColumnSqlType(newColumn)\n\t\tconst hasNewType = columnType !== oldColumnType\n\t\tconst hasNullableChanged = oldColumn.nullable !== newColumn.nullable\n\t\tconst hasNewCollation = newColumn.collation !== oldColumn.collation\n\n\t\tconst columnNameWrapped = wrapIdentifier(oldColumn.columnName)\n\t\tconst isChangedToArray = !oldColumn.list && newColumn.list\n\t\tconst usingCast = isChangedToArray\n\t\t\t? `CASE WHEN ${columnNameWrapped} IS NULL THEN ${\n\t\t\t\tnewColumn.nullable ? 'NULL' : `ARRAY[]::${columnType}`\n\t\t\t} ELSE ARRAY[${columnNameWrapped}]::${columnType} END`\n\t\t\t: `${columnNameWrapped}::${columnType}`\n\n\t\tconst seedExpression = formatSeedExpression({\n\t\t\tmodel: this.schema.model,\n\t\t\tentity,\n\t\t\tcolumnType,\n\t\t\tfillValue: this.data.fillValue,\n\t\t\tcopyValue: this.data.copyValue,\n\t\t})\n\t\tconst hasSeed = seedExpression !== null\n\t\tconst migrateWithUsing = hasSeed && this.data.valueMigrationStrategy === 'using'\n\t\tconst migrateWithUpdate = hasSeed && this.data.valueMigrationStrategy !== 'using'\n\n\t\tbuilder.alterColumn(entity.tableName, oldColumn.columnName, {\n\t\t\tcollation: hasNewCollation ? wrapIdentifier(newColumn.collation || 'default') : undefined,\n\t\t\ttype: hasNewCollation || hasNewSequence || hasNewType || migrateWithUsing ? columnType : undefined,\n\t\t\tnotNull: hasNullableChanged && (!migrateWithUpdate || newColumn.nullable) ? !newColumn.nullable : undefined,\n\t\t\tusing: (() => {\n\t\t\t\tif (hasNewSequence) {\n\t\t\t\t\treturn `COALESCE(${usingCast}, nextval(PG_GET_SERIAL_SEQUENCE(${escapeValue(entity.tableName)}, ${escapeValue(oldColumn.columnName)})))`\n\t\t\t\t}\n\t\t\t\tif (migrateWithUsing) {\n\t\t\t\t\treturn `COALESCE(${usingCast}, ${seedExpression})`\n\t\t\t\t}\n\n\t\t\t\tif (hasNewType) {\n\t\t\t\t\treturn usingCast\n\t\t\t\t}\n\t\t\t\treturn undefined\n\t\t\t})(),\n\t\t\tsequenceGenerated: oldColumn.sequence && !newColumn.sequence ? false : (!oldColumn.sequence ? newColumn.sequence : undefined),\n\t\t})\n\n\t\tif (migrateWithUpdate) {\n\t\t\tfillSeed({\n\t\t\t\tbuilder,\n\t\t\t\ttype: 'updating',\n\t\t\t\tentity,\n\t\t\t\tcolumnName: oldColumn.columnName,\n\t\t\t\tnullable: newColumn.nullable,\n\t\t\t\tseedExpression,\n\t\t\t})\n\t\t}\n\n\t\tconst seqAlter = []\n\t\tif (oldColumn.sequence && newColumn.sequence) {\n\t\t\tif (oldColumn.sequence.precedence !== newColumn.sequence.precedence) {\n\t\t\t\tseqAlter.push(`SET GENERATED ${newColumn.sequence.precedence}`)\n\t\t\t}\n\t\t\tif (oldColumn.sequence.start !== newColumn.sequence.start && typeof newColumn.sequence.start === 'number') {\n\t\t\t\tseqAlter.push(`SET START WITH ${newColumn.sequence.start}`)\n\t\t\t}\n\t\t\tif (newColumn.sequence.restart) {\n\t\t\t\tseqAlter.push('RESTART')\n\t\t\t}\n\t\t}\n\t\tif (seqAlter.length > 0) {\n\t\t\tbuilder.sql(`ALTER TABLE ${wrapIdentifier(entity.tableName)} ALTER ${wrapIdentifier(oldColumn.columnName)} ${seqAlter.join(' ')}`)\n\t\t}\n\t}\n\n\tpublic getSchemaUpdater(): SchemaUpdater {\n\t\treturn updateModel(\n\t\t\tupdateEntity(\n\t\t\t\tthis.data.entityName,\n\t\t\t\tupdateField<Model.AnyColumn>(this.data.fieldName, ({ field }) => {\n\t\t\t\t\treturn {\n\t\t\t\t\t\t...this.data.definition,\n\t\t\t\t\t\tname: field.name,\n\t\t\t\t\t\tcolumnName: field.columnName,\n\t\t\t\t\t}\n\t\t\t\t}),\n\t\t\t),\n\t\t)\n\t}\n\n\tdescribe() {\n\t\tconst current = this.schema.model.entities[this.data.entityName].fields[this.data.fieldName] as Model.AnyColumn\n\t\tconst changingToNotNull = current.nullable && !this.data.definition.nullable\n\t\tconst failureWarning = changingToNotNull ? 'Changing to not-null may fail in runtime.' : undefined\n\n\t\treturn {\n\t\t\tmessage: `Update column definition of field ${this.data.entityName}.${this.data.fieldName}`,\n\t\t\tfailureWarning,\n\t\t}\n\t}\n}\n\ntype SequenceDefinitionAlter =\n\t& Model.AnyColumn['sequence']\n\t& {\n\t\trestart?: boolean\n\t}\n\ntype ColumnDefinitionAlter =\n\t& Omit<Model.AnyColumn, 'sequence' | 'columnName' | 'name'>\n\t& {\n\t\tsequence?: SequenceDefinitionAlter\n\t}\n\nexport interface UpdateColumnDefinitionModificationData {\n\tentityName: string\n\tfieldName: string\n\tdefinition: ColumnDefinitionAlter\n\tfillValue?: JSONValue\n\tcopyValue?: string\n\tvalueMigrationStrategy?: 'using' | 'update'\n}\n\nexport const updateColumnDefinitionModification = createModificationType({\n\tid: 'updateColumnDefinition',\n\thandler: UpdateColumnDefinitionModificationHandler,\n})\n\nexport class UpdateColumnDefinitionDiffer implements Differ<UpdateColumnDefinitionModificationData> {\n\tcreateDiff(originalSchema: Schema, updatedSchema: Schema) {\n\t\treturn updateColumns(originalSchema, updatedSchema, ({ originalColumn, updatedColumn, updatedEntity }) => {\n\t\t\tconst {\n\t\t\t\tname: {},\n\t\t\t\tcolumnName: {},\n\t\t\t\t...updatedDefinition\n\t\t\t} = updatedColumn\n\t\t\tconst {\n\t\t\t\tname: {},\n\t\t\t\tcolumnName: {},\n\t\t\t\t...originalDefinition\n\t\t\t} = originalColumn\n\t\t\tif (deepEqual(updatedDefinition, originalDefinition)) {\n\t\t\t\treturn undefined\n\t\t\t}\n\n\t\t\treturn updateColumnDefinitionModification.createModification({\n\t\t\t\tentityName: updatedEntity.name,\n\t\t\t\tfieldName: updatedColumn.name,\n\t\t\t\tdefinition: updatedDefinition,\n\t\t\t})\n\t\t})\n\t}\n}\n"],"names":["getColumnSqlType","wrapIdentifier","formatSeedExpression","escapeValue","fillSeed","updateModel","updateEntity","updateField","createModificationType","updateColumns"],"mappings":"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"}
|
|
@@ -0,0 +1,141 @@
|
|
|
1
|
+
import { escapeValue } from "@contember/database-migrations";
|
|
2
|
+
import { updateModel, updateEntity, updateField } from "../utils/schemaUpdateUtils.js";
|
|
3
|
+
import { createModificationType } from "../ModificationHandler.js";
|
|
4
|
+
import deepEqual from "fast-deep-equal";
|
|
5
|
+
import { updateColumns } from "../utils/diffUtils.js";
|
|
6
|
+
import { wrapIdentifier } from "../../utils/dbHelpers.js";
|
|
7
|
+
import { getColumnSqlType } from "../utils/columnUtils.js";
|
|
8
|
+
import { formatSeedExpression, fillSeed } from "./columnUtils.js";
|
|
9
|
+
class UpdateColumnDefinitionModificationHandler {
|
|
10
|
+
constructor(data, schema) {
|
|
11
|
+
this.data = data;
|
|
12
|
+
this.schema = schema;
|
|
13
|
+
}
|
|
14
|
+
createSql(builder) {
|
|
15
|
+
const entity = this.schema.model.entities[this.data.entityName];
|
|
16
|
+
if (entity.view) {
|
|
17
|
+
return;
|
|
18
|
+
}
|
|
19
|
+
const oldColumn = entity.fields[this.data.fieldName];
|
|
20
|
+
const newColumn = this.data.definition;
|
|
21
|
+
const hasNewSequence = !oldColumn.sequence && newColumn.sequence;
|
|
22
|
+
const oldColumnType = getColumnSqlType(oldColumn);
|
|
23
|
+
const columnType = getColumnSqlType(newColumn);
|
|
24
|
+
const hasNewType = columnType !== oldColumnType;
|
|
25
|
+
const hasNullableChanged = oldColumn.nullable !== newColumn.nullable;
|
|
26
|
+
const hasNewCollation = newColumn.collation !== oldColumn.collation;
|
|
27
|
+
const columnNameWrapped = wrapIdentifier(oldColumn.columnName);
|
|
28
|
+
const isChangedToArray = !oldColumn.list && newColumn.list;
|
|
29
|
+
const usingCast = isChangedToArray ? `CASE WHEN ${columnNameWrapped} IS NULL THEN ${newColumn.nullable ? "NULL" : `ARRAY[]::${columnType}`} ELSE ARRAY[${columnNameWrapped}]::${columnType} END` : `${columnNameWrapped}::${columnType}`;
|
|
30
|
+
const seedExpression = formatSeedExpression({
|
|
31
|
+
model: this.schema.model,
|
|
32
|
+
entity,
|
|
33
|
+
columnType,
|
|
34
|
+
fillValue: this.data.fillValue,
|
|
35
|
+
copyValue: this.data.copyValue
|
|
36
|
+
});
|
|
37
|
+
const hasSeed = seedExpression !== null;
|
|
38
|
+
const migrateWithUsing = hasSeed && this.data.valueMigrationStrategy === "using";
|
|
39
|
+
const migrateWithUpdate = hasSeed && this.data.valueMigrationStrategy !== "using";
|
|
40
|
+
builder.alterColumn(entity.tableName, oldColumn.columnName, {
|
|
41
|
+
collation: hasNewCollation ? wrapIdentifier(newColumn.collation || "default") : void 0,
|
|
42
|
+
type: hasNewCollation || hasNewSequence || hasNewType || migrateWithUsing ? columnType : void 0,
|
|
43
|
+
notNull: hasNullableChanged && (!migrateWithUpdate || newColumn.nullable) ? !newColumn.nullable : void 0,
|
|
44
|
+
using: (() => {
|
|
45
|
+
if (hasNewSequence) {
|
|
46
|
+
return `COALESCE(${usingCast}, nextval(PG_GET_SERIAL_SEQUENCE(${escapeValue(entity.tableName)}, ${escapeValue(oldColumn.columnName)})))`;
|
|
47
|
+
}
|
|
48
|
+
if (migrateWithUsing) {
|
|
49
|
+
return `COALESCE(${usingCast}, ${seedExpression})`;
|
|
50
|
+
}
|
|
51
|
+
if (hasNewType) {
|
|
52
|
+
return usingCast;
|
|
53
|
+
}
|
|
54
|
+
return void 0;
|
|
55
|
+
})(),
|
|
56
|
+
sequenceGenerated: oldColumn.sequence && !newColumn.sequence ? false : !oldColumn.sequence ? newColumn.sequence : void 0
|
|
57
|
+
});
|
|
58
|
+
if (migrateWithUpdate) {
|
|
59
|
+
fillSeed({
|
|
60
|
+
builder,
|
|
61
|
+
type: "updating",
|
|
62
|
+
entity,
|
|
63
|
+
columnName: oldColumn.columnName,
|
|
64
|
+
nullable: newColumn.nullable,
|
|
65
|
+
seedExpression
|
|
66
|
+
});
|
|
67
|
+
}
|
|
68
|
+
const seqAlter = [];
|
|
69
|
+
if (oldColumn.sequence && newColumn.sequence) {
|
|
70
|
+
if (oldColumn.sequence.precedence !== newColumn.sequence.precedence) {
|
|
71
|
+
seqAlter.push(`SET GENERATED ${newColumn.sequence.precedence}`);
|
|
72
|
+
}
|
|
73
|
+
if (oldColumn.sequence.start !== newColumn.sequence.start && typeof newColumn.sequence.start === "number") {
|
|
74
|
+
seqAlter.push(`SET START WITH ${newColumn.sequence.start}`);
|
|
75
|
+
}
|
|
76
|
+
if (newColumn.sequence.restart) {
|
|
77
|
+
seqAlter.push("RESTART");
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
if (seqAlter.length > 0) {
|
|
81
|
+
builder.sql(`ALTER TABLE ${wrapIdentifier(entity.tableName)} ALTER ${wrapIdentifier(oldColumn.columnName)} ${seqAlter.join(" ")}`);
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
getSchemaUpdater() {
|
|
85
|
+
return updateModel(
|
|
86
|
+
updateEntity(
|
|
87
|
+
this.data.entityName,
|
|
88
|
+
updateField(this.data.fieldName, ({ field }) => {
|
|
89
|
+
return {
|
|
90
|
+
...this.data.definition,
|
|
91
|
+
name: field.name,
|
|
92
|
+
columnName: field.columnName
|
|
93
|
+
};
|
|
94
|
+
})
|
|
95
|
+
)
|
|
96
|
+
);
|
|
97
|
+
}
|
|
98
|
+
describe() {
|
|
99
|
+
const current = this.schema.model.entities[this.data.entityName].fields[this.data.fieldName];
|
|
100
|
+
const changingToNotNull = current.nullable && !this.data.definition.nullable;
|
|
101
|
+
const failureWarning = changingToNotNull ? "Changing to not-null may fail in runtime." : void 0;
|
|
102
|
+
return {
|
|
103
|
+
message: `Update column definition of field ${this.data.entityName}.${this.data.fieldName}`,
|
|
104
|
+
failureWarning
|
|
105
|
+
};
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
const updateColumnDefinitionModification = createModificationType({
|
|
109
|
+
id: "updateColumnDefinition",
|
|
110
|
+
handler: UpdateColumnDefinitionModificationHandler
|
|
111
|
+
});
|
|
112
|
+
class UpdateColumnDefinitionDiffer {
|
|
113
|
+
createDiff(originalSchema, updatedSchema) {
|
|
114
|
+
return updateColumns(originalSchema, updatedSchema, ({ originalColumn, updatedColumn, updatedEntity }) => {
|
|
115
|
+
const {
|
|
116
|
+
name: {},
|
|
117
|
+
columnName: {},
|
|
118
|
+
...updatedDefinition
|
|
119
|
+
} = updatedColumn;
|
|
120
|
+
const {
|
|
121
|
+
name: {},
|
|
122
|
+
columnName: {},
|
|
123
|
+
...originalDefinition
|
|
124
|
+
} = originalColumn;
|
|
125
|
+
if (deepEqual(updatedDefinition, originalDefinition)) {
|
|
126
|
+
return void 0;
|
|
127
|
+
}
|
|
128
|
+
return updateColumnDefinitionModification.createModification({
|
|
129
|
+
entityName: updatedEntity.name,
|
|
130
|
+
fieldName: updatedColumn.name,
|
|
131
|
+
definition: updatedDefinition
|
|
132
|
+
});
|
|
133
|
+
});
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
export {
|
|
137
|
+
UpdateColumnDefinitionDiffer,
|
|
138
|
+
UpdateColumnDefinitionModificationHandler,
|
|
139
|
+
updateColumnDefinitionModification
|
|
140
|
+
};
|
|
141
|
+
//# sourceMappingURL=UpdateColumnDefinitionModification.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"UpdateColumnDefinitionModification.js","sources":["../../../../../../packages/schema-migrations/src/modifications/columns/UpdateColumnDefinitionModification.ts"],"sourcesContent":["import { escapeValue, MigrationBuilder } from '@contember/database-migrations'\nimport { JSONValue, Model, Schema } from '@contember/schema'\nimport { SchemaUpdater, updateEntity, updateField, updateModel } from '../utils/schemaUpdateUtils'\nimport { createModificationType, Differ, ModificationHandler } from '../ModificationHandler'\nimport deepEqual from 'fast-deep-equal'\nimport { updateColumns } from '../utils/diffUtils'\nimport { wrapIdentifier } from '../../utils/dbHelpers'\nimport { getColumnSqlType } from '../utils/columnUtils'\nimport { fillSeed, formatSeedExpression } from './columnUtils'\n\nexport class UpdateColumnDefinitionModificationHandler implements ModificationHandler<UpdateColumnDefinitionModificationData> {\n\tconstructor(private readonly data: UpdateColumnDefinitionModificationData, private readonly schema: Schema) {}\n\n\tpublic createSql(builder: MigrationBuilder): 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\tconst oldColumn = entity.fields[this.data.fieldName] as Model.AnyColumn\n\t\tconst newColumn = this.data.definition\n\n\t\tconst hasNewSequence = !oldColumn.sequence && newColumn.sequence\n\t\tconst oldColumnType = getColumnSqlType(oldColumn)\n\t\tconst columnType = getColumnSqlType(newColumn)\n\t\tconst hasNewType = columnType !== oldColumnType\n\t\tconst hasNullableChanged = oldColumn.nullable !== newColumn.nullable\n\t\tconst hasNewCollation = newColumn.collation !== oldColumn.collation\n\n\t\tconst columnNameWrapped = wrapIdentifier(oldColumn.columnName)\n\t\tconst isChangedToArray = !oldColumn.list && newColumn.list\n\t\tconst usingCast = isChangedToArray\n\t\t\t? `CASE WHEN ${columnNameWrapped} IS NULL THEN ${\n\t\t\t\tnewColumn.nullable ? 'NULL' : `ARRAY[]::${columnType}`\n\t\t\t} ELSE ARRAY[${columnNameWrapped}]::${columnType} END`\n\t\t\t: `${columnNameWrapped}::${columnType}`\n\n\t\tconst seedExpression = formatSeedExpression({\n\t\t\tmodel: this.schema.model,\n\t\t\tentity,\n\t\t\tcolumnType,\n\t\t\tfillValue: this.data.fillValue,\n\t\t\tcopyValue: this.data.copyValue,\n\t\t})\n\t\tconst hasSeed = seedExpression !== null\n\t\tconst migrateWithUsing = hasSeed && this.data.valueMigrationStrategy === 'using'\n\t\tconst migrateWithUpdate = hasSeed && this.data.valueMigrationStrategy !== 'using'\n\n\t\tbuilder.alterColumn(entity.tableName, oldColumn.columnName, {\n\t\t\tcollation: hasNewCollation ? wrapIdentifier(newColumn.collation || 'default') : undefined,\n\t\t\ttype: hasNewCollation || hasNewSequence || hasNewType || migrateWithUsing ? columnType : undefined,\n\t\t\tnotNull: hasNullableChanged && (!migrateWithUpdate || newColumn.nullable) ? !newColumn.nullable : undefined,\n\t\t\tusing: (() => {\n\t\t\t\tif (hasNewSequence) {\n\t\t\t\t\treturn `COALESCE(${usingCast}, nextval(PG_GET_SERIAL_SEQUENCE(${escapeValue(entity.tableName)}, ${escapeValue(oldColumn.columnName)})))`\n\t\t\t\t}\n\t\t\t\tif (migrateWithUsing) {\n\t\t\t\t\treturn `COALESCE(${usingCast}, ${seedExpression})`\n\t\t\t\t}\n\n\t\t\t\tif (hasNewType) {\n\t\t\t\t\treturn usingCast\n\t\t\t\t}\n\t\t\t\treturn undefined\n\t\t\t})(),\n\t\t\tsequenceGenerated: oldColumn.sequence && !newColumn.sequence ? false : (!oldColumn.sequence ? newColumn.sequence : undefined),\n\t\t})\n\n\t\tif (migrateWithUpdate) {\n\t\t\tfillSeed({\n\t\t\t\tbuilder,\n\t\t\t\ttype: 'updating',\n\t\t\t\tentity,\n\t\t\t\tcolumnName: oldColumn.columnName,\n\t\t\t\tnullable: newColumn.nullable,\n\t\t\t\tseedExpression,\n\t\t\t})\n\t\t}\n\n\t\tconst seqAlter = []\n\t\tif (oldColumn.sequence && newColumn.sequence) {\n\t\t\tif (oldColumn.sequence.precedence !== newColumn.sequence.precedence) {\n\t\t\t\tseqAlter.push(`SET GENERATED ${newColumn.sequence.precedence}`)\n\t\t\t}\n\t\t\tif (oldColumn.sequence.start !== newColumn.sequence.start && typeof newColumn.sequence.start === 'number') {\n\t\t\t\tseqAlter.push(`SET START WITH ${newColumn.sequence.start}`)\n\t\t\t}\n\t\t\tif (newColumn.sequence.restart) {\n\t\t\t\tseqAlter.push('RESTART')\n\t\t\t}\n\t\t}\n\t\tif (seqAlter.length > 0) {\n\t\t\tbuilder.sql(`ALTER TABLE ${wrapIdentifier(entity.tableName)} ALTER ${wrapIdentifier(oldColumn.columnName)} ${seqAlter.join(' ')}`)\n\t\t}\n\t}\n\n\tpublic getSchemaUpdater(): SchemaUpdater {\n\t\treturn updateModel(\n\t\t\tupdateEntity(\n\t\t\t\tthis.data.entityName,\n\t\t\t\tupdateField<Model.AnyColumn>(this.data.fieldName, ({ field }) => {\n\t\t\t\t\treturn {\n\t\t\t\t\t\t...this.data.definition,\n\t\t\t\t\t\tname: field.name,\n\t\t\t\t\t\tcolumnName: field.columnName,\n\t\t\t\t\t}\n\t\t\t\t}),\n\t\t\t),\n\t\t)\n\t}\n\n\tdescribe() {\n\t\tconst current = this.schema.model.entities[this.data.entityName].fields[this.data.fieldName] as Model.AnyColumn\n\t\tconst changingToNotNull = current.nullable && !this.data.definition.nullable\n\t\tconst failureWarning = changingToNotNull ? 'Changing to not-null may fail in runtime.' : undefined\n\n\t\treturn {\n\t\t\tmessage: `Update column definition of field ${this.data.entityName}.${this.data.fieldName}`,\n\t\t\tfailureWarning,\n\t\t}\n\t}\n}\n\ntype SequenceDefinitionAlter =\n\t& Model.AnyColumn['sequence']\n\t& {\n\t\trestart?: boolean\n\t}\n\ntype ColumnDefinitionAlter =\n\t& Omit<Model.AnyColumn, 'sequence' | 'columnName' | 'name'>\n\t& {\n\t\tsequence?: SequenceDefinitionAlter\n\t}\n\nexport interface UpdateColumnDefinitionModificationData {\n\tentityName: string\n\tfieldName: string\n\tdefinition: ColumnDefinitionAlter\n\tfillValue?: JSONValue\n\tcopyValue?: string\n\tvalueMigrationStrategy?: 'using' | 'update'\n}\n\nexport const updateColumnDefinitionModification = createModificationType({\n\tid: 'updateColumnDefinition',\n\thandler: UpdateColumnDefinitionModificationHandler,\n})\n\nexport class UpdateColumnDefinitionDiffer implements Differ<UpdateColumnDefinitionModificationData> {\n\tcreateDiff(originalSchema: Schema, updatedSchema: Schema) {\n\t\treturn updateColumns(originalSchema, updatedSchema, ({ originalColumn, updatedColumn, updatedEntity }) => {\n\t\t\tconst {\n\t\t\t\tname: {},\n\t\t\t\tcolumnName: {},\n\t\t\t\t...updatedDefinition\n\t\t\t} = updatedColumn\n\t\t\tconst {\n\t\t\t\tname: {},\n\t\t\t\tcolumnName: {},\n\t\t\t\t...originalDefinition\n\t\t\t} = originalColumn\n\t\t\tif (deepEqual(updatedDefinition, originalDefinition)) {\n\t\t\t\treturn undefined\n\t\t\t}\n\n\t\t\treturn updateColumnDefinitionModification.createModification({\n\t\t\t\tentityName: updatedEntity.name,\n\t\t\t\tfieldName: updatedColumn.name,\n\t\t\t\tdefinition: updatedDefinition,\n\t\t\t})\n\t\t})\n\t}\n}\n"],"names":[],"mappings":";;;;;;;;AAUO,MAAM,0CAAiH;AAAA,EAC7H,YAA6B,MAA+D,QAAgB;AAA/E,SAAA,OAAA;AAA+D,SAAA,SAAA;AAAA,EAAiB;AAAA,EAEtG,UAAU,SAAiC;AACjD,UAAM,SAAS,KAAK,OAAO,MAAM,SAAS,KAAK,KAAK,UAAU;AAC9D,QAAI,OAAO,MAAM;AAChB;AAAA,IACD;AACA,UAAM,YAAY,OAAO,OAAO,KAAK,KAAK,SAAS;AACnD,UAAM,YAAY,KAAK,KAAK;AAE5B,UAAM,iBAAiB,CAAC,UAAU,YAAY,UAAU;AACxD,UAAM,gBAAgB,iBAAiB,SAAS;AAChD,UAAM,aAAa,iBAAiB,SAAS;AAC7C,UAAM,aAAa,eAAe;AAClC,UAAM,qBAAqB,UAAU,aAAa,UAAU;AAC5D,UAAM,kBAAkB,UAAU,cAAc,UAAU;AAE1D,UAAM,oBAAoB,eAAe,UAAU,UAAU;AAC7D,UAAM,mBAAmB,CAAC,UAAU,QAAQ,UAAU;AACtD,UAAM,YAAY,mBACf,aAAa,iBAAiB,iBAC/B,UAAU,WAAW,SAAS,YAAY,UAAU,EACrD,eAAe,iBAAiB,MAAM,UAAU,SAC9C,GAAG,iBAAiB,KAAK,UAAU;AAEtC,UAAM,iBAAiB,qBAAqB;AAAA,MAC3C,OAAO,KAAK,OAAO;AAAA,MACnB;AAAA,MACA;AAAA,MACA,WAAW,KAAK,KAAK;AAAA,MACrB,WAAW,KAAK,KAAK;AAAA,IAAA,CACrB;AACD,UAAM,UAAU,mBAAmB;AACnC,UAAM,mBAAmB,WAAW,KAAK,KAAK,2BAA2B;AACzE,UAAM,oBAAoB,WAAW,KAAK,KAAK,2BAA2B;AAE1E,YAAQ,YAAY,OAAO,WAAW,UAAU,YAAY;AAAA,MAC3D,WAAW,kBAAkB,eAAe,UAAU,aAAa,SAAS,IAAI;AAAA,MAChF,MAAM,mBAAmB,kBAAkB,cAAc,mBAAmB,aAAa;AAAA,MACzF,SAAS,uBAAuB,CAAC,qBAAqB,UAAU,YAAY,CAAC,UAAU,WAAW;AAAA,MAClG,QAAQ,MAAM;AACb,YAAI,gBAAgB;AACnB,iBAAO,YAAY,SAAS,oCAAoC,YAAY,OAAO,SAAS,CAAC,KAAK,YAAY,UAAU,UAAU,CAAC;AAAA,QACpI;AACA,YAAI,kBAAkB;AACrB,iBAAO,YAAY,SAAS,KAAK,cAAc;AAAA,QAChD;AAEA,YAAI,YAAY;AACf,iBAAO;AAAA,QACR;AACA,eAAO;AAAA,MACR,GAAA;AAAA,MACA,mBAAmB,UAAU,YAAY,CAAC,UAAU,WAAW,QAAS,CAAC,UAAU,WAAW,UAAU,WAAW;AAAA,IAAA,CACnH;AAED,QAAI,mBAAmB;AACtB,eAAS;AAAA,QACR;AAAA,QACA,MAAM;AAAA,QACN;AAAA,QACA,YAAY,UAAU;AAAA,QACtB,UAAU,UAAU;AAAA,QACpB;AAAA,MAAA,CACA;AAAA,IACF;AAEA,UAAM,WAAW,CAAA;AACjB,QAAI,UAAU,YAAY,UAAU,UAAU;AAC7C,UAAI,UAAU,SAAS,eAAe,UAAU,SAAS,YAAY;AACpE,iBAAS,KAAK,iBAAiB,UAAU,SAAS,UAAU,EAAE;AAAA,MAC/D;AACA,UAAI,UAAU,SAAS,UAAU,UAAU,SAAS,SAAS,OAAO,UAAU,SAAS,UAAU,UAAU;AAC1G,iBAAS,KAAK,kBAAkB,UAAU,SAAS,KAAK,EAAE;AAAA,MAC3D;AACA,UAAI,UAAU,SAAS,SAAS;AAC/B,iBAAS,KAAK,SAAS;AAAA,MACxB;AAAA,IACD;AACA,QAAI,SAAS,SAAS,GAAG;AACxB,cAAQ,IAAI,eAAe,eAAe,OAAO,SAAS,CAAC,UAAU,eAAe,UAAU,UAAU,CAAC,IAAI,SAAS,KAAK,GAAG,CAAC,EAAE;AAAA,IAClI;AAAA,EACD;AAAA,EAEO,mBAAkC;AACxC,WAAO;AAAA,MACN;AAAA,QACC,KAAK,KAAK;AAAA,QACV,YAA6B,KAAK,KAAK,WAAW,CAAC,EAAE,YAAY;AAChE,iBAAO;AAAA,YACN,GAAG,KAAK,KAAK;AAAA,YACb,MAAM,MAAM;AAAA,YACZ,YAAY,MAAM;AAAA,UAAA;AAAA,QAEpB,CAAC;AAAA,MAAA;AAAA,IACF;AAAA,EAEF;AAAA,EAEA,WAAW;AACV,UAAM,UAAU,KAAK,OAAO,MAAM,SAAS,KAAK,KAAK,UAAU,EAAE,OAAO,KAAK,KAAK,SAAS;AAC3F,UAAM,oBAAoB,QAAQ,YAAY,CAAC,KAAK,KAAK,WAAW;AACpE,UAAM,iBAAiB,oBAAoB,8CAA8C;AAEzF,WAAO;AAAA,MACN,SAAS,qCAAqC,KAAK,KAAK,UAAU,IAAI,KAAK,KAAK,SAAS;AAAA,MACzF;AAAA,IAAA;AAAA,EAEF;AACD;AAuBO,MAAM,qCAAqC,uBAAuB;AAAA,EACxE,IAAI;AAAA,EACJ,SAAS;AACV,CAAC;AAEM,MAAM,6BAAuF;AAAA,EACnG,WAAW,gBAAwB,eAAuB;AACzD,WAAO,cAAc,gBAAgB,eAAe,CAAC,EAAE,gBAAgB,eAAe,oBAAoB;AACzG,YAAM;AAAA,QACL,MAAM,CAAA;AAAA,QACN,YAAY,CAAA;AAAA,QACZ,GAAG;AAAA,MAAA,IACA;AACJ,YAAM;AAAA,QACL,MAAM,CAAA;AAAA,QACN,YAAY,CAAA;AAAA,QACZ,GAAG;AAAA,MAAA,IACA;AACJ,UAAI,UAAU,mBAAmB,kBAAkB,GAAG;AACrD,eAAO;AAAA,MACR;AAEA,aAAO,mCAAmC,mBAAmB;AAAA,QAC5D,YAAY,cAAc;AAAA,QAC1B,WAAW,cAAc;AAAA,QACzB,YAAY;AAAA,MAAA,CACZ;AAAA,IACF,CAAC;AAAA,EACF;AACD;"}
|
|
@@ -0,0 +1,111 @@
|
|
|
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 diffUtils = require("../utils/diffUtils.cjs");
|
|
6
|
+
const schemaUtils = require("@contember/schema-utils");
|
|
7
|
+
class UpdateColumnNameModificationHandler {
|
|
8
|
+
constructor(data, schema) {
|
|
9
|
+
this.data = data;
|
|
10
|
+
this.schema = schema;
|
|
11
|
+
}
|
|
12
|
+
createSql(builder) {
|
|
13
|
+
const entity = this.schema.model.entities[this.data.entityName];
|
|
14
|
+
if (entity.view) {
|
|
15
|
+
return;
|
|
16
|
+
}
|
|
17
|
+
schemaUtils.acceptFieldVisitor(this.schema.model, entity, this.data.fieldName, {
|
|
18
|
+
visitColumn: ({ entity: entity2, column }) => {
|
|
19
|
+
builder.renameColumn(entity2.tableName, column.columnName, this.data.columnName);
|
|
20
|
+
},
|
|
21
|
+
visitManyHasOne: ({ entity: entity2, relation }) => {
|
|
22
|
+
builder.renameColumn(entity2.tableName, relation.joiningColumn.columnName, this.data.columnName);
|
|
23
|
+
},
|
|
24
|
+
visitOneHasOneOwning: ({ entity: entity2, relation }) => {
|
|
25
|
+
builder.renameColumn(entity2.tableName, relation.joiningColumn.columnName, this.data.columnName);
|
|
26
|
+
},
|
|
27
|
+
visitManyHasManyInverse: () => {
|
|
28
|
+
throw new Error("Cannot rename column of many-to-many relation");
|
|
29
|
+
},
|
|
30
|
+
visitManyHasManyOwning: () => {
|
|
31
|
+
throw new Error("Cannot rename column of many-to-many relation");
|
|
32
|
+
},
|
|
33
|
+
visitOneHasMany: () => {
|
|
34
|
+
throw new Error("Cannot rename column of one-to-many relation");
|
|
35
|
+
},
|
|
36
|
+
visitOneHasOneInverse: () => {
|
|
37
|
+
throw new Error("Cannot rename column of one-to-one inverse relation");
|
|
38
|
+
}
|
|
39
|
+
});
|
|
40
|
+
}
|
|
41
|
+
getSchemaUpdater() {
|
|
42
|
+
return schemaUpdateUtils.updateModel(
|
|
43
|
+
schemaUpdateUtils.updateEntity(
|
|
44
|
+
this.data.entityName,
|
|
45
|
+
schemaUpdateUtils.updateField(this.data.fieldName, ({ field, entity }) => schemaUtils.acceptFieldVisitor(this.schema.model, entity, field, {
|
|
46
|
+
visitColumn: ({ column }) => {
|
|
47
|
+
return {
|
|
48
|
+
...column,
|
|
49
|
+
columnName: this.data.columnName
|
|
50
|
+
};
|
|
51
|
+
},
|
|
52
|
+
visitManyHasOne: ({ entity: entity2, relation }) => {
|
|
53
|
+
return {
|
|
54
|
+
...relation,
|
|
55
|
+
joiningColumn: {
|
|
56
|
+
...relation.joiningColumn,
|
|
57
|
+
columnName: this.data.columnName
|
|
58
|
+
}
|
|
59
|
+
};
|
|
60
|
+
},
|
|
61
|
+
visitOneHasOneOwning: ({ entity: entity2, relation }) => {
|
|
62
|
+
return {
|
|
63
|
+
...relation,
|
|
64
|
+
joiningColumn: {
|
|
65
|
+
...relation.joiningColumn,
|
|
66
|
+
columnName: this.data.columnName
|
|
67
|
+
}
|
|
68
|
+
};
|
|
69
|
+
},
|
|
70
|
+
visitManyHasManyInverse: () => {
|
|
71
|
+
throw new Error("Cannot rename column of many-to-many relation");
|
|
72
|
+
},
|
|
73
|
+
visitManyHasManyOwning: () => {
|
|
74
|
+
throw new Error("Cannot rename column of many-to-many relation");
|
|
75
|
+
},
|
|
76
|
+
visitOneHasMany: () => {
|
|
77
|
+
throw new Error("Cannot rename column of one-to-many relation");
|
|
78
|
+
},
|
|
79
|
+
visitOneHasOneInverse: () => {
|
|
80
|
+
throw new Error("Cannot rename column of one-to-one inverse relation");
|
|
81
|
+
}
|
|
82
|
+
}))
|
|
83
|
+
)
|
|
84
|
+
);
|
|
85
|
+
}
|
|
86
|
+
describe() {
|
|
87
|
+
return { message: `Change column name of field ${this.data.entityName}.${this.data.fieldName}` };
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
const updateColumnNameModification = ModificationHandler.createModificationType({
|
|
91
|
+
id: "updateColumnName",
|
|
92
|
+
handler: UpdateColumnNameModificationHandler
|
|
93
|
+
});
|
|
94
|
+
class UpdateColumnNameDiffer {
|
|
95
|
+
createDiff(originalSchema, updatedSchema) {
|
|
96
|
+
return diffUtils.updateColumns(originalSchema, updatedSchema, ({ originalColumn, updatedColumn, updatedEntity }) => {
|
|
97
|
+
if (originalColumn.columnName === updatedColumn.columnName) {
|
|
98
|
+
return void 0;
|
|
99
|
+
}
|
|
100
|
+
return updateColumnNameModification.createModification({
|
|
101
|
+
entityName: updatedEntity.name,
|
|
102
|
+
fieldName: updatedColumn.name,
|
|
103
|
+
columnName: updatedColumn.columnName
|
|
104
|
+
});
|
|
105
|
+
});
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
exports.UpdateColumnNameDiffer = UpdateColumnNameDiffer;
|
|
109
|
+
exports.UpdateColumnNameModificationHandler = UpdateColumnNameModificationHandler;
|
|
110
|
+
exports.updateColumnNameModification = updateColumnNameModification;
|
|
111
|
+
//# sourceMappingURL=UpdateColumnNameModification.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"UpdateColumnNameModification.cjs","sources":["../../../../../../packages/schema-migrations/src/modifications/columns/UpdateColumnNameModification.ts"],"sourcesContent":["import { MigrationBuilder } from '@contember/database-migrations'\nimport { Model, Schema } from '@contember/schema'\nimport { SchemaUpdater, updateEntity, updateField, updateModel } from '../utils/schemaUpdateUtils'\nimport { createModificationType, Differ, ModificationHandler } from '../ModificationHandler'\nimport { updateColumns } from '../utils/diffUtils'\nimport { acceptFieldVisitor } from '@contember/schema-utils'\n\nexport class UpdateColumnNameModificationHandler implements ModificationHandler<UpdateColumnNameModificationData> {\n\tconstructor(private readonly data: UpdateColumnNameModificationData, private readonly schema: Schema) {\n\t}\n\n\tpublic createSql(builder: MigrationBuilder): 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\tacceptFieldVisitor(this.schema.model, entity, this.data.fieldName, {\n\t\t\tvisitColumn: ({ entity, column }) => {\n\t\t\t\tbuilder.renameColumn(entity.tableName, column.columnName, this.data.columnName)\n\t\t\t},\n\t\t\tvisitManyHasOne: ({ entity, relation }) => {\n\t\t\t\tbuilder.renameColumn(entity.tableName, relation.joiningColumn.columnName, this.data.columnName)\n\t\t\t},\n\t\t\tvisitOneHasOneOwning: ({ entity, relation }) => {\n\t\t\t\tbuilder.renameColumn(entity.tableName, relation.joiningColumn.columnName, this.data.columnName)\n\t\t\t},\n\t\t\tvisitManyHasManyInverse: () => {\n\t\t\t\tthrow new Error('Cannot rename column of many-to-many relation')\n\t\t\t},\n\t\t\tvisitManyHasManyOwning: () => {\n\t\t\t\tthrow new Error('Cannot rename column of many-to-many relation')\n\t\t\t},\n\t\t\tvisitOneHasMany: () => {\n\t\t\t\tthrow new Error('Cannot rename column of one-to-many relation')\n\t\t\t},\n\t\t\tvisitOneHasOneInverse: () => {\n\t\t\t\tthrow new Error('Cannot rename column of one-to-one inverse relation')\n\t\t\t},\n\t\t})\n\t}\n\n\tpublic getSchemaUpdater(): SchemaUpdater {\n\t\treturn updateModel(\n\t\t\tupdateEntity(\n\t\t\t\tthis.data.entityName,\n\t\t\t\tupdateField(this.data.fieldName, ({ field, entity }) =>\n\t\t\t\t\tacceptFieldVisitor<Model.AnyField>(this.schema.model, entity, field, {\n\t\t\t\t\t\tvisitColumn: ({ column }) => {\n\t\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\t\t...column,\n\t\t\t\t\t\t\t\tcolumnName: this.data.columnName,\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t},\n\t\t\t\t\t\tvisitManyHasOne: ({ entity, relation }) => {\n\t\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\t\t...relation,\n\t\t\t\t\t\t\t\tjoiningColumn: {\n\t\t\t\t\t\t\t\t\t...relation.joiningColumn,\n\t\t\t\t\t\t\t\t\tcolumnName: this.data.columnName,\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\tvisitOneHasOneOwning: ({ entity, relation }) => {\n\t\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\t\t...relation,\n\t\t\t\t\t\t\t\tjoiningColumn: {\n\t\t\t\t\t\t\t\t\t...relation.joiningColumn,\n\t\t\t\t\t\t\t\t\tcolumnName: this.data.columnName,\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\tvisitManyHasManyInverse: () => {\n\t\t\t\t\t\t\tthrow new Error('Cannot rename column of many-to-many relation')\n\t\t\t\t\t\t},\n\t\t\t\t\t\tvisitManyHasManyOwning: () => {\n\t\t\t\t\t\t\tthrow new Error('Cannot rename column of many-to-many relation')\n\t\t\t\t\t\t},\n\t\t\t\t\t\tvisitOneHasMany: () => {\n\t\t\t\t\t\t\tthrow new Error('Cannot rename column of one-to-many relation')\n\t\t\t\t\t\t},\n\t\t\t\t\t\tvisitOneHasOneInverse: () => {\n\t\t\t\t\t\t\tthrow new Error('Cannot rename column of one-to-one inverse relation')\n\t\t\t\t\t\t},\n\t\t\t\t\t})),\n\t\t\t),\n\t\t)\n\t}\n\n\tdescribe() {\n\t\treturn { message: `Change column name of field ${this.data.entityName}.${this.data.fieldName}` }\n\t}\n}\n\nexport interface UpdateColumnNameModificationData {\n\tentityName: string\n\tfieldName: string\n\tcolumnName: string\n}\n\nexport const updateColumnNameModification = createModificationType({\n\tid: 'updateColumnName',\n\thandler: UpdateColumnNameModificationHandler,\n})\n\nexport class UpdateColumnNameDiffer implements Differ {\n\tcreateDiff(originalSchema: Schema, updatedSchema: Schema) {\n\t\treturn updateColumns(originalSchema, updatedSchema, ({ originalColumn, updatedColumn, updatedEntity }) => {\n\t\t\tif (originalColumn.columnName === updatedColumn.columnName) {\n\t\t\t\treturn undefined\n\t\t\t}\n\t\t\treturn updateColumnNameModification.createModification({\n\t\t\t\tentityName: updatedEntity.name,\n\t\t\t\tfieldName: updatedColumn.name,\n\t\t\t\tcolumnName: updatedColumn.columnName,\n\t\t\t})\n\t\t})\n\t}\n}\n"],"names":["acceptFieldVisitor","entity","updateModel","updateEntity","updateField","createModificationType","updateColumns"],"mappings":"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"}
|