@contember/schema-migrations 1.4.0-rc.8 → 2.0.0-alpha.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/development/index.cjs +167 -0
- package/dist/development/index.cjs.map +1 -0
- package/dist/development/index.js +161 -0
- package/dist/development/index.js.map +1 -0
- package/dist/development/src/Migration.cjs +9 -0
- package/dist/development/src/Migration.cjs.map +1 -0
- package/dist/development/src/Migration.js +9 -0
- package/dist/development/src/Migration.js.map +1 -0
- package/dist/development/src/MigrationDescriber.cjs +67 -0
- package/dist/development/src/MigrationDescriber.cjs.map +1 -0
- package/dist/development/src/MigrationDescriber.js +67 -0
- package/dist/development/src/MigrationDescriber.js.map +1 -0
- package/dist/development/src/SchemaDiffer.cjs +149 -0
- package/dist/development/src/SchemaDiffer.cjs.map +1 -0
- package/dist/development/src/SchemaDiffer.js +149 -0
- package/dist/development/src/SchemaDiffer.js.map +1 -0
- package/dist/development/src/SchemaMigrator.cjs +19 -0
- package/dist/development/src/SchemaMigrator.cjs.map +1 -0
- package/dist/development/src/SchemaMigrator.js +19 -0
- package/dist/development/src/SchemaMigrator.js.map +1 -0
- package/dist/development/src/exceptions.cjs +6 -0
- package/dist/development/src/exceptions.cjs.map +1 -0
- package/dist/development/src/exceptions.js +6 -0
- package/dist/development/src/exceptions.js.map +1 -0
- package/dist/development/src/modifications/ModificationHandler.cjs +13 -0
- package/dist/development/src/modifications/ModificationHandler.cjs.map +1 -0
- package/dist/development/src/modifications/ModificationHandler.js +13 -0
- package/dist/development/src/modifications/ModificationHandler.js.map +1 -0
- package/dist/development/src/modifications/ModificationHandlerFactory.cjs +109 -0
- package/dist/development/src/modifications/ModificationHandlerFactory.cjs.map +1 -0
- package/dist/development/src/modifications/ModificationHandlerFactory.js +109 -0
- package/dist/development/src/modifications/ModificationHandlerFactory.js.map +1 -0
- package/dist/development/src/modifications/ModificationVersions.cjs +19 -0
- package/dist/development/src/modifications/ModificationVersions.cjs.map +1 -0
- package/dist/development/src/modifications/ModificationVersions.js +19 -0
- package/dist/development/src/modifications/ModificationVersions.js.map +1 -0
- package/dist/development/src/modifications/NoopModification.cjs +14 -0
- package/dist/development/src/modifications/NoopModification.cjs.map +1 -0
- package/dist/development/src/modifications/NoopModification.js +14 -0
- package/dist/development/src/modifications/NoopModification.js.map +1 -0
- package/dist/development/src/modifications/acl/PatchAclSchemaModification.cjs +35 -0
- package/dist/development/src/modifications/acl/PatchAclSchemaModification.cjs.map +1 -0
- package/dist/development/src/modifications/acl/PatchAclSchemaModification.js +35 -0
- package/dist/development/src/modifications/acl/PatchAclSchemaModification.js.map +1 -0
- package/dist/development/src/modifications/acl/UpdateAclSchemaModification.cjs +42 -0
- package/dist/development/src/modifications/acl/UpdateAclSchemaModification.cjs.map +1 -0
- package/dist/development/src/modifications/acl/UpdateAclSchemaModification.js +42 -0
- package/dist/development/src/modifications/acl/UpdateAclSchemaModification.js.map +1 -0
- package/dist/development/src/modifications/actions/CreateTargetModification.cjs +38 -0
- package/dist/development/src/modifications/actions/CreateTargetModification.cjs.map +1 -0
- package/dist/development/src/modifications/actions/CreateTargetModification.js +38 -0
- package/dist/development/src/modifications/actions/CreateTargetModification.js.map +1 -0
- package/dist/development/src/modifications/actions/CreateTriggerModification.cjs +38 -0
- package/dist/development/src/modifications/actions/CreateTriggerModification.cjs.map +1 -0
- package/dist/development/src/modifications/actions/CreateTriggerModification.js +38 -0
- package/dist/development/src/modifications/actions/CreateTriggerModification.js.map +1 -0
- package/dist/development/src/modifications/actions/RemoveTargetModification.cjs +38 -0
- package/dist/development/src/modifications/actions/RemoveTargetModification.cjs.map +1 -0
- package/dist/development/src/modifications/actions/RemoveTargetModification.js +38 -0
- package/dist/development/src/modifications/actions/RemoveTargetModification.js.map +1 -0
- package/dist/development/src/modifications/actions/RemoveTriggerModification.cjs +38 -0
- package/dist/development/src/modifications/actions/RemoveTriggerModification.cjs.map +1 -0
- package/dist/development/src/modifications/actions/RemoveTriggerModification.js +38 -0
- package/dist/development/src/modifications/actions/RemoveTriggerModification.js.map +1 -0
- package/dist/development/src/modifications/actions/UpdateTargetModification.cjs +41 -0
- package/dist/development/src/modifications/actions/UpdateTargetModification.cjs.map +1 -0
- package/dist/development/src/modifications/actions/UpdateTargetModification.js +41 -0
- package/dist/development/src/modifications/actions/UpdateTargetModification.js.map +1 -0
- package/dist/development/src/modifications/actions/UpdateTriggerModification.cjs +41 -0
- package/dist/development/src/modifications/actions/UpdateTriggerModification.cjs.map +1 -0
- package/dist/development/src/modifications/actions/UpdateTriggerModification.js +41 -0
- package/dist/development/src/modifications/actions/UpdateTriggerModification.js.map +1 -0
- package/dist/development/src/modifications/columns/CreateColumnModification.cjs +85 -0
- package/dist/development/src/modifications/columns/CreateColumnModification.cjs.map +1 -0
- package/dist/development/src/modifications/columns/CreateColumnModification.js +85 -0
- package/dist/development/src/modifications/columns/CreateColumnModification.js.map +1 -0
- package/dist/development/src/modifications/columns/UpdateColumnDefinitionModification.cjs +136 -0
- package/dist/development/src/modifications/columns/UpdateColumnDefinitionModification.cjs.map +1 -0
- package/dist/development/src/modifications/columns/UpdateColumnDefinitionModification.js +136 -0
- package/dist/development/src/modifications/columns/UpdateColumnDefinitionModification.js.map +1 -0
- package/dist/development/src/modifications/columns/UpdateColumnNameModification.cjs +119 -0
- package/dist/development/src/modifications/columns/UpdateColumnNameModification.cjs.map +1 -0
- package/dist/development/src/modifications/columns/UpdateColumnNameModification.js +119 -0
- package/dist/development/src/modifications/columns/UpdateColumnNameModification.js.map +1 -0
- package/dist/development/src/modifications/columns/columnUtils.cjs +29 -0
- package/dist/development/src/modifications/columns/columnUtils.cjs.map +1 -0
- package/dist/development/src/modifications/columns/columnUtils.js +29 -0
- package/dist/development/src/modifications/columns/columnUtils.js.map +1 -0
- package/dist/development/src/modifications/constraints/CreateUniqueConstraintModification.cjs +70 -0
- package/dist/development/src/modifications/constraints/CreateUniqueConstraintModification.cjs.map +1 -0
- package/dist/development/src/modifications/constraints/CreateUniqueConstraintModification.js +70 -0
- package/dist/development/src/modifications/constraints/CreateUniqueConstraintModification.js.map +1 -0
- package/dist/development/src/modifications/constraints/RemoveUniqueConstraintModification.cjs +80 -0
- package/dist/development/src/modifications/constraints/RemoveUniqueConstraintModification.cjs.map +1 -0
- package/dist/development/src/modifications/constraints/RemoveUniqueConstraintModification.js +80 -0
- package/dist/development/src/modifications/constraints/RemoveUniqueConstraintModification.js.map +1 -0
- package/dist/development/src/modifications/constraints/utils.cjs +34 -0
- package/dist/development/src/modifications/constraints/utils.cjs.map +1 -0
- package/dist/development/src/modifications/constraints/utils.js +34 -0
- package/dist/development/src/modifications/constraints/utils.js.map +1 -0
- package/dist/development/src/modifications/differs/RemoveChangedFieldDiffer.cjs +30 -0
- package/dist/development/src/modifications/differs/RemoveChangedFieldDiffer.cjs.map +1 -0
- package/dist/development/src/modifications/differs/RemoveChangedFieldDiffer.js +30 -0
- package/dist/development/src/modifications/differs/RemoveChangedFieldDiffer.js.map +1 -0
- package/dist/development/src/modifications/differs/RemoveViewDiffer.cjs +42 -0
- package/dist/development/src/modifications/differs/RemoveViewDiffer.cjs.map +1 -0
- package/dist/development/src/modifications/differs/RemoveViewDiffer.js +42 -0
- package/dist/development/src/modifications/differs/RemoveViewDiffer.js.map +1 -0
- package/dist/development/src/modifications/entities/CreateEntityModification.cjs +73 -0
- package/dist/development/src/modifications/entities/CreateEntityModification.cjs.map +1 -0
- package/dist/development/src/modifications/entities/CreateEntityModification.js +73 -0
- package/dist/development/src/modifications/entities/CreateEntityModification.js.map +1 -0
- package/dist/development/src/modifications/entities/CreateViewModification.cjs +66 -0
- package/dist/development/src/modifications/entities/CreateViewModification.cjs.map +1 -0
- package/dist/development/src/modifications/entities/CreateViewModification.js +66 -0
- package/dist/development/src/modifications/entities/CreateViewModification.js.map +1 -0
- package/dist/development/src/modifications/entities/RemoveEntityModification.cjs +100 -0
- package/dist/development/src/modifications/entities/RemoveEntityModification.cjs.map +1 -0
- package/dist/development/src/modifications/entities/RemoveEntityModification.js +100 -0
- package/dist/development/src/modifications/entities/RemoveEntityModification.js.map +1 -0
- package/dist/development/src/modifications/entities/ToggleEventLogModification.cjs +69 -0
- package/dist/development/src/modifications/entities/ToggleEventLogModification.cjs.map +1 -0
- package/dist/development/src/modifications/entities/ToggleEventLogModification.js +69 -0
- package/dist/development/src/modifications/entities/ToggleEventLogModification.js.map +1 -0
- package/dist/development/src/modifications/entities/UpdateEntityNameModification.cjs +99 -0
- package/dist/development/src/modifications/entities/UpdateEntityNameModification.cjs.map +1 -0
- package/dist/development/src/modifications/entities/UpdateEntityNameModification.js +99 -0
- package/dist/development/src/modifications/entities/UpdateEntityNameModification.js.map +1 -0
- package/dist/development/src/modifications/entities/UpdateEntityOrderByModification.cjs +61 -0
- package/dist/development/src/modifications/entities/UpdateEntityOrderByModification.cjs.map +1 -0
- package/dist/development/src/modifications/entities/UpdateEntityOrderByModification.js +61 -0
- package/dist/development/src/modifications/entities/UpdateEntityOrderByModification.js.map +1 -0
- package/dist/development/src/modifications/entities/UpdateEntityTableNameModification.cjs +47 -0
- package/dist/development/src/modifications/entities/UpdateEntityTableNameModification.cjs.map +1 -0
- package/dist/development/src/modifications/entities/UpdateEntityTableNameModification.js +47 -0
- package/dist/development/src/modifications/entities/UpdateEntityTableNameModification.js.map +1 -0
- package/dist/development/src/modifications/entities/UpdateViewModification.cjs +38 -0
- package/dist/development/src/modifications/entities/UpdateViewModification.cjs.map +1 -0
- package/dist/development/src/modifications/entities/UpdateViewModification.js +38 -0
- package/dist/development/src/modifications/entities/UpdateViewModification.js.map +1 -0
- package/dist/development/src/modifications/enums/CreateEnumModification.cjs +45 -0
- package/dist/development/src/modifications/enums/CreateEnumModification.cjs.map +1 -0
- package/dist/development/src/modifications/enums/CreateEnumModification.js +45 -0
- package/dist/development/src/modifications/enums/CreateEnumModification.js.map +1 -0
- package/dist/development/src/modifications/enums/RemoveEnumModification.cjs +38 -0
- package/dist/development/src/modifications/enums/RemoveEnumModification.cjs.map +1 -0
- package/dist/development/src/modifications/enums/RemoveEnumModification.js +38 -0
- package/dist/development/src/modifications/enums/RemoveEnumModification.js.map +1 -0
- package/dist/development/src/modifications/enums/UpdateEnumModification.cjs +50 -0
- package/dist/development/src/modifications/enums/UpdateEnumModification.cjs.map +1 -0
- package/dist/development/src/modifications/enums/UpdateEnumModification.js +50 -0
- package/dist/development/src/modifications/enums/UpdateEnumModification.js.map +1 -0
- package/dist/development/src/modifications/enums/enumUtils.cjs +11 -0
- package/dist/development/src/modifications/enums/enumUtils.cjs.map +1 -0
- package/dist/development/src/modifications/enums/enumUtils.js +11 -0
- package/dist/development/src/modifications/enums/enumUtils.js.map +1 -0
- package/dist/development/src/modifications/exceptions.cjs +6 -0
- package/dist/development/src/modifications/exceptions.cjs.map +1 -0
- package/dist/development/src/modifications/exceptions.js +6 -0
- package/dist/development/src/modifications/exceptions.js.map +1 -0
- package/dist/development/src/modifications/fields/RemoveFieldModification.cjs +72 -0
- package/dist/development/src/modifications/fields/RemoveFieldModification.cjs.map +1 -0
- package/dist/development/src/modifications/fields/RemoveFieldModification.js +72 -0
- package/dist/development/src/modifications/fields/RemoveFieldModification.js.map +1 -0
- package/dist/development/src/modifications/fields/UpdateFieldNameModification.cjs +146 -0
- package/dist/development/src/modifications/fields/UpdateFieldNameModification.cjs.map +1 -0
- package/dist/development/src/modifications/fields/UpdateFieldNameModification.js +146 -0
- package/dist/development/src/modifications/fields/UpdateFieldNameModification.js.map +1 -0
- package/dist/development/src/modifications/indexes/CreateIndexModification.cjs +63 -0
- package/dist/development/src/modifications/indexes/CreateIndexModification.cjs.map +1 -0
- package/dist/development/src/modifications/indexes/CreateIndexModification.js +63 -0
- package/dist/development/src/modifications/indexes/CreateIndexModification.js.map +1 -0
- package/dist/development/src/modifications/indexes/RemoveIndexModification.cjs +82 -0
- package/dist/development/src/modifications/indexes/RemoveIndexModification.cjs.map +1 -0
- package/dist/development/src/modifications/indexes/RemoveIndexModification.js +82 -0
- package/dist/development/src/modifications/indexes/RemoveIndexModification.js.map +1 -0
- package/dist/development/src/modifications/indexes/utils.cjs +32 -0
- package/dist/development/src/modifications/indexes/utils.cjs.map +1 -0
- package/dist/development/src/modifications/indexes/utils.js +32 -0
- package/dist/development/src/modifications/indexes/utils.js.map +1 -0
- package/dist/development/src/modifications/relations/ConvertOneHasManyToManyHasManyRelationModification.cjs +97 -0
- package/dist/development/src/modifications/relations/ConvertOneHasManyToManyHasManyRelationModification.cjs.map +1 -0
- package/dist/development/src/modifications/relations/ConvertOneHasManyToManyHasManyRelationModification.js +97 -0
- package/dist/development/src/modifications/relations/ConvertOneHasManyToManyHasManyRelationModification.js.map +1 -0
- package/dist/development/src/modifications/relations/ConvertOneHasManyToOneHasOneRelationModification.cjs +119 -0
- package/dist/development/src/modifications/relations/ConvertOneHasManyToOneHasOneRelationModification.cjs.map +1 -0
- package/dist/development/src/modifications/relations/ConvertOneHasManyToOneHasOneRelationModification.js +119 -0
- package/dist/development/src/modifications/relations/ConvertOneHasManyToOneHasOneRelationModification.js.map +1 -0
- package/dist/development/src/modifications/relations/ConvertOneToManyRelationModification.cjs +117 -0
- package/dist/development/src/modifications/relations/ConvertOneToManyRelationModification.cjs.map +1 -0
- package/dist/development/src/modifications/relations/ConvertOneToManyRelationModification.js +117 -0
- package/dist/development/src/modifications/relations/ConvertOneToManyRelationModification.js.map +1 -0
- package/dist/development/src/modifications/relations/CreateRelationInverseSideModification.cjs +50 -0
- package/dist/development/src/modifications/relations/CreateRelationInverseSideModification.cjs.map +1 -0
- package/dist/development/src/modifications/relations/CreateRelationInverseSideModification.js +50 -0
- package/dist/development/src/modifications/relations/CreateRelationInverseSideModification.js.map +1 -0
- package/dist/development/src/modifications/relations/CreateRelationModification.cjs +111 -0
- package/dist/development/src/modifications/relations/CreateRelationModification.cjs.map +1 -0
- package/dist/development/src/modifications/relations/CreateRelationModification.js +111 -0
- package/dist/development/src/modifications/relations/CreateRelationModification.js.map +1 -0
- package/dist/development/src/modifications/relations/DisableOrphanRemovalModification.cjs +50 -0
- package/dist/development/src/modifications/relations/DisableOrphanRemovalModification.cjs.map +1 -0
- package/dist/development/src/modifications/relations/DisableOrphanRemovalModification.js +50 -0
- package/dist/development/src/modifications/relations/DisableOrphanRemovalModification.js.map +1 -0
- package/dist/development/src/modifications/relations/EnableOrphanRemovalModification.cjs +53 -0
- package/dist/development/src/modifications/relations/EnableOrphanRemovalModification.cjs.map +1 -0
- package/dist/development/src/modifications/relations/EnableOrphanRemovalModification.js +53 -0
- package/dist/development/src/modifications/relations/EnableOrphanRemovalModification.js.map +1 -0
- package/dist/development/src/modifications/relations/MakeRelationNotNullModification.cjs +65 -0
- package/dist/development/src/modifications/relations/MakeRelationNotNullModification.cjs.map +1 -0
- package/dist/development/src/modifications/relations/MakeRelationNotNullModification.js +65 -0
- package/dist/development/src/modifications/relations/MakeRelationNotNullModification.js.map +1 -0
- package/dist/development/src/modifications/relations/MakeRelationNullableModification.cjs +64 -0
- package/dist/development/src/modifications/relations/MakeRelationNullableModification.cjs.map +1 -0
- package/dist/development/src/modifications/relations/MakeRelationNullableModification.js +64 -0
- package/dist/development/src/modifications/relations/MakeRelationNullableModification.js.map +1 -0
- package/dist/development/src/modifications/relations/ToggleJunctionEventLogModification.cjs +84 -0
- package/dist/development/src/modifications/relations/ToggleJunctionEventLogModification.cjs.map +1 -0
- package/dist/development/src/modifications/relations/ToggleJunctionEventLogModification.js +84 -0
- package/dist/development/src/modifications/relations/ToggleJunctionEventLogModification.js.map +1 -0
- package/dist/development/src/modifications/relations/UpdateRelationOnDeleteModification.cjs +74 -0
- package/dist/development/src/modifications/relations/UpdateRelationOnDeleteModification.cjs.map +1 -0
- package/dist/development/src/modifications/relations/UpdateRelationOnDeleteModification.js +74 -0
- package/dist/development/src/modifications/relations/UpdateRelationOnDeleteModification.js.map +1 -0
- package/dist/development/src/modifications/relations/UpdateRelationOrderByModification.cjs +53 -0
- package/dist/development/src/modifications/relations/UpdateRelationOrderByModification.cjs.map +1 -0
- package/dist/development/src/modifications/relations/UpdateRelationOrderByModification.js +53 -0
- package/dist/development/src/modifications/relations/UpdateRelationOrderByModification.js.map +1 -0
- package/dist/development/src/modifications/relations/helpers.cjs +30 -0
- package/dist/development/src/modifications/relations/helpers.cjs.map +1 -0
- package/dist/development/src/modifications/relations/helpers.js +30 -0
- package/dist/development/src/modifications/relations/helpers.js.map +1 -0
- package/dist/development/src/modifications/relations/normalization.cjs +15 -0
- package/dist/development/src/modifications/relations/normalization.cjs.map +1 -0
- package/dist/development/src/modifications/relations/normalization.js +15 -0
- package/dist/development/src/modifications/relations/normalization.js.map +1 -0
- package/dist/development/src/modifications/settings/UpdateSettingsModification.cjs +59 -0
- package/dist/development/src/modifications/settings/UpdateSettingsModification.cjs.map +1 -0
- package/dist/development/src/modifications/settings/UpdateSettingsModification.js +59 -0
- package/dist/development/src/modifications/settings/UpdateSettingsModification.js.map +1 -0
- package/dist/development/src/modifications/upgrade/RemoveIndexNamesModification.cjs +43 -0
- package/dist/development/src/modifications/upgrade/RemoveIndexNamesModification.cjs.map +1 -0
- package/dist/development/src/modifications/upgrade/RemoveIndexNamesModification.js +43 -0
- package/dist/development/src/modifications/upgrade/RemoveIndexNamesModification.js.map +1 -0
- package/dist/development/src/modifications/utils/columnUtils.cjs +6 -0
- package/dist/development/src/modifications/utils/columnUtils.cjs.map +1 -0
- package/dist/development/src/modifications/utils/columnUtils.js +6 -0
- package/dist/development/src/modifications/utils/columnUtils.js.map +1 -0
- package/dist/development/src/modifications/utils/createJunctionTable.cjs +37 -0
- package/dist/development/src/modifications/utils/createJunctionTable.cjs.map +1 -0
- package/dist/development/src/modifications/utils/createJunctionTable.js +37 -0
- package/dist/development/src/modifications/utils/createJunctionTable.js.map +1 -0
- package/dist/development/src/modifications/utils/diffUtils.cjs +80 -0
- package/dist/development/src/modifications/utils/diffUtils.cjs.map +1 -0
- package/dist/development/src/modifications/utils/diffUtils.js +80 -0
- package/dist/development/src/modifications/utils/diffUtils.js.map +1 -0
- package/dist/development/src/modifications/utils/getPrimaryColumnType.cjs +8 -0
- package/dist/development/src/modifications/utils/getPrimaryColumnType.cjs.map +1 -0
- package/dist/development/src/modifications/utils/getPrimaryColumnType.js +8 -0
- package/dist/development/src/modifications/utils/getPrimaryColumnType.js.map +1 -0
- package/dist/development/src/modifications/utils/schemaUpdateUtils.cjs +196 -0
- package/dist/development/src/modifications/utils/schemaUpdateUtils.cjs.map +1 -0
- package/dist/development/src/modifications/utils/schemaUpdateUtils.js +196 -0
- package/dist/development/src/modifications/utils/schemaUpdateUtils.js.map +1 -0
- package/dist/development/src/modifications/utils/sqlUpdateUtils.cjs +39 -0
- package/dist/development/src/modifications/utils/sqlUpdateUtils.cjs.map +1 -0
- package/dist/development/src/modifications/utils/sqlUpdateUtils.js +39 -0
- package/dist/development/src/modifications/utils/sqlUpdateUtils.js.map +1 -0
- package/dist/development/src/modifications/utils/valueUtils.cjs +5 -0
- package/dist/development/src/modifications/utils/valueUtils.cjs.map +1 -0
- package/dist/development/src/modifications/utils/valueUtils.js +5 -0
- package/dist/development/src/modifications/utils/valueUtils.js.map +1 -0
- package/dist/development/src/modifications/utils/viewDependencies.cjs +46 -0
- package/dist/development/src/modifications/utils/viewDependencies.cjs.map +1 -0
- package/dist/development/src/modifications/utils/viewDependencies.js +46 -0
- package/dist/development/src/modifications/utils/viewDependencies.js.map +1 -0
- package/dist/development/src/modifications/validation/PatchValidationSchemaModification.cjs +35 -0
- package/dist/development/src/modifications/validation/PatchValidationSchemaModification.cjs.map +1 -0
- package/dist/development/src/modifications/validation/PatchValidationSchemaModification.js +35 -0
- package/dist/development/src/modifications/validation/PatchValidationSchemaModification.js.map +1 -0
- package/dist/development/src/modifications/validation/UpdateValidationSchemaModification.cjs +42 -0
- package/dist/development/src/modifications/validation/UpdateValidationSchemaModification.cjs.map +1 -0
- package/dist/development/src/modifications/validation/UpdateValidationSchemaModification.js +42 -0
- package/dist/development/src/modifications/validation/UpdateValidationSchemaModification.js.map +1 -0
- package/dist/development/src/utils/dbHelpers.cjs +5 -0
- package/dist/development/src/utils/dbHelpers.cjs.map +1 -0
- package/dist/development/src/utils/dbHelpers.js +5 -0
- package/dist/development/src/utils/dbHelpers.js.map +1 -0
- package/dist/development/src/utils/deepCopy.cjs +14 -0
- package/dist/development/src/utils/deepCopy.cjs.map +1 -0
- package/dist/development/src/utils/deepCopy.js +15 -0
- package/dist/development/src/utils/deepCopy.js.map +1 -0
- package/dist/development/src/utils/escapeSqlString.cjs +7 -0
- package/dist/development/src/utils/escapeSqlString.cjs.map +1 -0
- package/dist/development/src/utils/escapeSqlString.js +7 -0
- package/dist/development/src/utils/escapeSqlString.js.map +1 -0
- package/dist/development/src/utils/isDefined.cjs +5 -0
- package/dist/development/src/utils/isDefined.cjs.map +1 -0
- package/dist/development/src/utils/isDefined.js +5 -0
- package/dist/development/src/utils/isDefined.js.map +1 -0
- package/dist/development/src/utils/isIt.cjs +7 -0
- package/dist/development/src/utils/isIt.cjs.map +1 -0
- package/dist/development/src/utils/isIt.js +7 -0
- package/dist/development/src/utils/isIt.js.map +1 -0
- package/dist/production/index.cjs +167 -0
- package/dist/production/index.cjs.map +1 -0
- package/dist/production/index.js +161 -0
- package/dist/production/index.js.map +1 -0
- package/dist/production/src/Migration.cjs +9 -0
- package/dist/production/src/Migration.cjs.map +1 -0
- package/dist/production/src/Migration.js +9 -0
- package/dist/production/src/Migration.js.map +1 -0
- package/dist/production/src/MigrationDescriber.cjs +67 -0
- package/dist/production/src/MigrationDescriber.cjs.map +1 -0
- package/dist/production/src/MigrationDescriber.js +67 -0
- package/dist/production/src/MigrationDescriber.js.map +1 -0
- package/dist/production/src/SchemaDiffer.cjs +149 -0
- package/dist/production/src/SchemaDiffer.cjs.map +1 -0
- package/dist/production/src/SchemaDiffer.js +149 -0
- package/dist/production/src/SchemaDiffer.js.map +1 -0
- package/dist/production/src/SchemaMigrator.cjs +19 -0
- package/dist/production/src/SchemaMigrator.cjs.map +1 -0
- package/dist/production/src/SchemaMigrator.js +19 -0
- package/dist/production/src/SchemaMigrator.js.map +1 -0
- package/dist/production/src/exceptions.cjs +6 -0
- package/dist/production/src/exceptions.cjs.map +1 -0
- package/dist/production/src/exceptions.js +6 -0
- package/dist/production/src/exceptions.js.map +1 -0
- package/dist/production/src/modifications/ModificationHandler.cjs +13 -0
- package/dist/production/src/modifications/ModificationHandler.cjs.map +1 -0
- package/dist/production/src/modifications/ModificationHandler.js +13 -0
- package/dist/production/src/modifications/ModificationHandler.js.map +1 -0
- package/dist/production/src/modifications/ModificationHandlerFactory.cjs +109 -0
- package/dist/production/src/modifications/ModificationHandlerFactory.cjs.map +1 -0
- package/dist/production/src/modifications/ModificationHandlerFactory.js +109 -0
- package/dist/production/src/modifications/ModificationHandlerFactory.js.map +1 -0
- package/dist/production/src/modifications/ModificationVersions.cjs +19 -0
- package/dist/production/src/modifications/ModificationVersions.cjs.map +1 -0
- package/dist/production/src/modifications/ModificationVersions.js +19 -0
- package/dist/production/src/modifications/ModificationVersions.js.map +1 -0
- package/dist/production/src/modifications/NoopModification.cjs +14 -0
- package/dist/production/src/modifications/NoopModification.cjs.map +1 -0
- package/dist/production/src/modifications/NoopModification.js +14 -0
- package/dist/production/src/modifications/NoopModification.js.map +1 -0
- package/dist/production/src/modifications/acl/PatchAclSchemaModification.cjs +35 -0
- package/dist/production/src/modifications/acl/PatchAclSchemaModification.cjs.map +1 -0
- package/dist/production/src/modifications/acl/PatchAclSchemaModification.js +35 -0
- package/dist/production/src/modifications/acl/PatchAclSchemaModification.js.map +1 -0
- package/dist/production/src/modifications/acl/UpdateAclSchemaModification.cjs +42 -0
- package/dist/production/src/modifications/acl/UpdateAclSchemaModification.cjs.map +1 -0
- package/dist/production/src/modifications/acl/UpdateAclSchemaModification.js +42 -0
- package/dist/production/src/modifications/acl/UpdateAclSchemaModification.js.map +1 -0
- package/dist/production/src/modifications/actions/CreateTargetModification.cjs +38 -0
- package/dist/production/src/modifications/actions/CreateTargetModification.cjs.map +1 -0
- package/dist/production/src/modifications/actions/CreateTargetModification.js +38 -0
- package/dist/production/src/modifications/actions/CreateTargetModification.js.map +1 -0
- package/dist/production/src/modifications/actions/CreateTriggerModification.cjs +38 -0
- package/dist/production/src/modifications/actions/CreateTriggerModification.cjs.map +1 -0
- package/dist/production/src/modifications/actions/CreateTriggerModification.js +38 -0
- package/dist/production/src/modifications/actions/CreateTriggerModification.js.map +1 -0
- package/dist/production/src/modifications/actions/RemoveTargetModification.cjs +38 -0
- package/dist/production/src/modifications/actions/RemoveTargetModification.cjs.map +1 -0
- package/dist/production/src/modifications/actions/RemoveTargetModification.js +38 -0
- package/dist/production/src/modifications/actions/RemoveTargetModification.js.map +1 -0
- package/dist/production/src/modifications/actions/RemoveTriggerModification.cjs +38 -0
- package/dist/production/src/modifications/actions/RemoveTriggerModification.cjs.map +1 -0
- package/dist/production/src/modifications/actions/RemoveTriggerModification.js +38 -0
- package/dist/production/src/modifications/actions/RemoveTriggerModification.js.map +1 -0
- package/dist/production/src/modifications/actions/UpdateTargetModification.cjs +41 -0
- package/dist/production/src/modifications/actions/UpdateTargetModification.cjs.map +1 -0
- package/dist/production/src/modifications/actions/UpdateTargetModification.js +41 -0
- package/dist/production/src/modifications/actions/UpdateTargetModification.js.map +1 -0
- package/dist/production/src/modifications/actions/UpdateTriggerModification.cjs +41 -0
- package/dist/production/src/modifications/actions/UpdateTriggerModification.cjs.map +1 -0
- package/dist/production/src/modifications/actions/UpdateTriggerModification.js +41 -0
- package/dist/production/src/modifications/actions/UpdateTriggerModification.js.map +1 -0
- package/dist/production/src/modifications/columns/CreateColumnModification.cjs +85 -0
- package/dist/production/src/modifications/columns/CreateColumnModification.cjs.map +1 -0
- package/dist/production/src/modifications/columns/CreateColumnModification.js +85 -0
- package/dist/production/src/modifications/columns/CreateColumnModification.js.map +1 -0
- package/dist/production/src/modifications/columns/UpdateColumnDefinitionModification.cjs +136 -0
- package/dist/production/src/modifications/columns/UpdateColumnDefinitionModification.cjs.map +1 -0
- package/dist/production/src/modifications/columns/UpdateColumnDefinitionModification.js +136 -0
- package/dist/production/src/modifications/columns/UpdateColumnDefinitionModification.js.map +1 -0
- package/dist/production/src/modifications/columns/UpdateColumnNameModification.cjs +119 -0
- package/dist/production/src/modifications/columns/UpdateColumnNameModification.cjs.map +1 -0
- package/dist/production/src/modifications/columns/UpdateColumnNameModification.js +119 -0
- package/dist/production/src/modifications/columns/UpdateColumnNameModification.js.map +1 -0
- package/dist/production/src/modifications/columns/columnUtils.cjs +29 -0
- package/dist/production/src/modifications/columns/columnUtils.cjs.map +1 -0
- package/dist/production/src/modifications/columns/columnUtils.js +29 -0
- package/dist/production/src/modifications/columns/columnUtils.js.map +1 -0
- package/dist/production/src/modifications/constraints/CreateUniqueConstraintModification.cjs +70 -0
- package/dist/production/src/modifications/constraints/CreateUniqueConstraintModification.cjs.map +1 -0
- package/dist/production/src/modifications/constraints/CreateUniqueConstraintModification.js +70 -0
- package/dist/production/src/modifications/constraints/CreateUniqueConstraintModification.js.map +1 -0
- package/dist/production/src/modifications/constraints/RemoveUniqueConstraintModification.cjs +80 -0
- package/dist/production/src/modifications/constraints/RemoveUniqueConstraintModification.cjs.map +1 -0
- package/dist/production/src/modifications/constraints/RemoveUniqueConstraintModification.js +80 -0
- package/dist/production/src/modifications/constraints/RemoveUniqueConstraintModification.js.map +1 -0
- package/dist/production/src/modifications/constraints/utils.cjs +34 -0
- package/dist/production/src/modifications/constraints/utils.cjs.map +1 -0
- package/dist/production/src/modifications/constraints/utils.js +34 -0
- package/dist/production/src/modifications/constraints/utils.js.map +1 -0
- package/dist/production/src/modifications/differs/RemoveChangedFieldDiffer.cjs +30 -0
- package/dist/production/src/modifications/differs/RemoveChangedFieldDiffer.cjs.map +1 -0
- package/dist/production/src/modifications/differs/RemoveChangedFieldDiffer.js +30 -0
- package/dist/production/src/modifications/differs/RemoveChangedFieldDiffer.js.map +1 -0
- package/dist/production/src/modifications/differs/RemoveViewDiffer.cjs +42 -0
- package/dist/production/src/modifications/differs/RemoveViewDiffer.cjs.map +1 -0
- package/dist/production/src/modifications/differs/RemoveViewDiffer.js +42 -0
- package/dist/production/src/modifications/differs/RemoveViewDiffer.js.map +1 -0
- package/dist/production/src/modifications/entities/CreateEntityModification.cjs +73 -0
- package/dist/production/src/modifications/entities/CreateEntityModification.cjs.map +1 -0
- package/dist/production/src/modifications/entities/CreateEntityModification.js +73 -0
- package/dist/production/src/modifications/entities/CreateEntityModification.js.map +1 -0
- package/dist/production/src/modifications/entities/CreateViewModification.cjs +66 -0
- package/dist/production/src/modifications/entities/CreateViewModification.cjs.map +1 -0
- package/dist/production/src/modifications/entities/CreateViewModification.js +66 -0
- package/dist/production/src/modifications/entities/CreateViewModification.js.map +1 -0
- package/dist/production/src/modifications/entities/RemoveEntityModification.cjs +100 -0
- package/dist/production/src/modifications/entities/RemoveEntityModification.cjs.map +1 -0
- package/dist/production/src/modifications/entities/RemoveEntityModification.js +100 -0
- package/dist/production/src/modifications/entities/RemoveEntityModification.js.map +1 -0
- package/dist/production/src/modifications/entities/ToggleEventLogModification.cjs +69 -0
- package/dist/production/src/modifications/entities/ToggleEventLogModification.cjs.map +1 -0
- package/dist/production/src/modifications/entities/ToggleEventLogModification.js +69 -0
- package/dist/production/src/modifications/entities/ToggleEventLogModification.js.map +1 -0
- package/dist/production/src/modifications/entities/UpdateEntityNameModification.cjs +99 -0
- package/dist/production/src/modifications/entities/UpdateEntityNameModification.cjs.map +1 -0
- package/dist/production/src/modifications/entities/UpdateEntityNameModification.js +99 -0
- package/dist/production/src/modifications/entities/UpdateEntityNameModification.js.map +1 -0
- package/dist/production/src/modifications/entities/UpdateEntityOrderByModification.cjs +61 -0
- package/dist/production/src/modifications/entities/UpdateEntityOrderByModification.cjs.map +1 -0
- package/dist/production/src/modifications/entities/UpdateEntityOrderByModification.js +61 -0
- package/dist/production/src/modifications/entities/UpdateEntityOrderByModification.js.map +1 -0
- package/dist/production/src/modifications/entities/UpdateEntityTableNameModification.cjs +47 -0
- package/dist/production/src/modifications/entities/UpdateEntityTableNameModification.cjs.map +1 -0
- package/dist/production/src/modifications/entities/UpdateEntityTableNameModification.js +47 -0
- package/dist/production/src/modifications/entities/UpdateEntityTableNameModification.js.map +1 -0
- package/dist/production/src/modifications/entities/UpdateViewModification.cjs +38 -0
- package/dist/production/src/modifications/entities/UpdateViewModification.cjs.map +1 -0
- package/dist/production/src/modifications/entities/UpdateViewModification.js +38 -0
- package/dist/production/src/modifications/entities/UpdateViewModification.js.map +1 -0
- package/dist/production/src/modifications/enums/CreateEnumModification.cjs +45 -0
- package/dist/production/src/modifications/enums/CreateEnumModification.cjs.map +1 -0
- package/dist/production/src/modifications/enums/CreateEnumModification.js +45 -0
- package/dist/production/src/modifications/enums/CreateEnumModification.js.map +1 -0
- package/dist/production/src/modifications/enums/RemoveEnumModification.cjs +38 -0
- package/dist/production/src/modifications/enums/RemoveEnumModification.cjs.map +1 -0
- package/dist/production/src/modifications/enums/RemoveEnumModification.js +38 -0
- package/dist/production/src/modifications/enums/RemoveEnumModification.js.map +1 -0
- package/dist/production/src/modifications/enums/UpdateEnumModification.cjs +50 -0
- package/dist/production/src/modifications/enums/UpdateEnumModification.cjs.map +1 -0
- package/dist/production/src/modifications/enums/UpdateEnumModification.js +50 -0
- package/dist/production/src/modifications/enums/UpdateEnumModification.js.map +1 -0
- package/dist/production/src/modifications/enums/enumUtils.cjs +11 -0
- package/dist/production/src/modifications/enums/enumUtils.cjs.map +1 -0
- package/dist/production/src/modifications/enums/enumUtils.js +11 -0
- package/dist/production/src/modifications/enums/enumUtils.js.map +1 -0
- package/dist/production/src/modifications/exceptions.cjs +6 -0
- package/dist/production/src/modifications/exceptions.cjs.map +1 -0
- package/dist/production/src/modifications/exceptions.js +6 -0
- package/dist/production/src/modifications/exceptions.js.map +1 -0
- package/dist/production/src/modifications/fields/RemoveFieldModification.cjs +72 -0
- package/dist/production/src/modifications/fields/RemoveFieldModification.cjs.map +1 -0
- package/dist/production/src/modifications/fields/RemoveFieldModification.js +72 -0
- package/dist/production/src/modifications/fields/RemoveFieldModification.js.map +1 -0
- package/dist/production/src/modifications/fields/UpdateFieldNameModification.cjs +146 -0
- package/dist/production/src/modifications/fields/UpdateFieldNameModification.cjs.map +1 -0
- package/dist/production/src/modifications/fields/UpdateFieldNameModification.js +146 -0
- package/dist/production/src/modifications/fields/UpdateFieldNameModification.js.map +1 -0
- package/dist/production/src/modifications/indexes/CreateIndexModification.cjs +63 -0
- package/dist/production/src/modifications/indexes/CreateIndexModification.cjs.map +1 -0
- package/dist/production/src/modifications/indexes/CreateIndexModification.js +63 -0
- package/dist/production/src/modifications/indexes/CreateIndexModification.js.map +1 -0
- package/dist/production/src/modifications/indexes/RemoveIndexModification.cjs +82 -0
- package/dist/production/src/modifications/indexes/RemoveIndexModification.cjs.map +1 -0
- package/dist/production/src/modifications/indexes/RemoveIndexModification.js +82 -0
- package/dist/production/src/modifications/indexes/RemoveIndexModification.js.map +1 -0
- package/dist/production/src/modifications/indexes/utils.cjs +32 -0
- package/dist/production/src/modifications/indexes/utils.cjs.map +1 -0
- package/dist/production/src/modifications/indexes/utils.js +32 -0
- package/dist/production/src/modifications/indexes/utils.js.map +1 -0
- package/dist/production/src/modifications/relations/ConvertOneHasManyToManyHasManyRelationModification.cjs +97 -0
- package/dist/production/src/modifications/relations/ConvertOneHasManyToManyHasManyRelationModification.cjs.map +1 -0
- package/dist/production/src/modifications/relations/ConvertOneHasManyToManyHasManyRelationModification.js +97 -0
- package/dist/production/src/modifications/relations/ConvertOneHasManyToManyHasManyRelationModification.js.map +1 -0
- package/dist/production/src/modifications/relations/ConvertOneHasManyToOneHasOneRelationModification.cjs +119 -0
- package/dist/production/src/modifications/relations/ConvertOneHasManyToOneHasOneRelationModification.cjs.map +1 -0
- package/dist/production/src/modifications/relations/ConvertOneHasManyToOneHasOneRelationModification.js +119 -0
- package/dist/production/src/modifications/relations/ConvertOneHasManyToOneHasOneRelationModification.js.map +1 -0
- package/dist/production/src/modifications/relations/ConvertOneToManyRelationModification.cjs +117 -0
- package/dist/production/src/modifications/relations/ConvertOneToManyRelationModification.cjs.map +1 -0
- package/dist/production/src/modifications/relations/ConvertOneToManyRelationModification.js +117 -0
- package/dist/production/src/modifications/relations/ConvertOneToManyRelationModification.js.map +1 -0
- package/dist/production/src/modifications/relations/CreateRelationInverseSideModification.cjs +50 -0
- package/dist/production/src/modifications/relations/CreateRelationInverseSideModification.cjs.map +1 -0
- package/dist/production/src/modifications/relations/CreateRelationInverseSideModification.js +50 -0
- package/dist/production/src/modifications/relations/CreateRelationInverseSideModification.js.map +1 -0
- package/dist/production/src/modifications/relations/CreateRelationModification.cjs +111 -0
- package/dist/production/src/modifications/relations/CreateRelationModification.cjs.map +1 -0
- package/dist/production/src/modifications/relations/CreateRelationModification.js +111 -0
- package/dist/production/src/modifications/relations/CreateRelationModification.js.map +1 -0
- package/dist/production/src/modifications/relations/DisableOrphanRemovalModification.cjs +50 -0
- package/dist/production/src/modifications/relations/DisableOrphanRemovalModification.cjs.map +1 -0
- package/dist/production/src/modifications/relations/DisableOrphanRemovalModification.js +50 -0
- package/dist/production/src/modifications/relations/DisableOrphanRemovalModification.js.map +1 -0
- package/dist/production/src/modifications/relations/EnableOrphanRemovalModification.cjs +53 -0
- package/dist/production/src/modifications/relations/EnableOrphanRemovalModification.cjs.map +1 -0
- package/dist/production/src/modifications/relations/EnableOrphanRemovalModification.js +53 -0
- package/dist/production/src/modifications/relations/EnableOrphanRemovalModification.js.map +1 -0
- package/dist/production/src/modifications/relations/MakeRelationNotNullModification.cjs +65 -0
- package/dist/production/src/modifications/relations/MakeRelationNotNullModification.cjs.map +1 -0
- package/dist/production/src/modifications/relations/MakeRelationNotNullModification.js +65 -0
- package/dist/production/src/modifications/relations/MakeRelationNotNullModification.js.map +1 -0
- package/dist/production/src/modifications/relations/MakeRelationNullableModification.cjs +64 -0
- package/dist/production/src/modifications/relations/MakeRelationNullableModification.cjs.map +1 -0
- package/dist/production/src/modifications/relations/MakeRelationNullableModification.js +64 -0
- package/dist/production/src/modifications/relations/MakeRelationNullableModification.js.map +1 -0
- package/dist/production/src/modifications/relations/ToggleJunctionEventLogModification.cjs +84 -0
- package/dist/production/src/modifications/relations/ToggleJunctionEventLogModification.cjs.map +1 -0
- package/dist/production/src/modifications/relations/ToggleJunctionEventLogModification.js +84 -0
- package/dist/production/src/modifications/relations/ToggleJunctionEventLogModification.js.map +1 -0
- package/dist/production/src/modifications/relations/UpdateRelationOnDeleteModification.cjs +74 -0
- package/dist/production/src/modifications/relations/UpdateRelationOnDeleteModification.cjs.map +1 -0
- package/dist/production/src/modifications/relations/UpdateRelationOnDeleteModification.js +74 -0
- package/dist/production/src/modifications/relations/UpdateRelationOnDeleteModification.js.map +1 -0
- package/dist/production/src/modifications/relations/UpdateRelationOrderByModification.cjs +53 -0
- package/dist/production/src/modifications/relations/UpdateRelationOrderByModification.cjs.map +1 -0
- package/dist/production/src/modifications/relations/UpdateRelationOrderByModification.js +53 -0
- package/dist/production/src/modifications/relations/UpdateRelationOrderByModification.js.map +1 -0
- package/dist/production/src/modifications/relations/helpers.cjs +30 -0
- package/dist/production/src/modifications/relations/helpers.cjs.map +1 -0
- package/dist/production/src/modifications/relations/helpers.js +30 -0
- package/dist/production/src/modifications/relations/helpers.js.map +1 -0
- package/dist/production/src/modifications/relations/normalization.cjs +15 -0
- package/dist/production/src/modifications/relations/normalization.cjs.map +1 -0
- package/dist/production/src/modifications/relations/normalization.js +15 -0
- package/dist/production/src/modifications/relations/normalization.js.map +1 -0
- package/dist/production/src/modifications/settings/UpdateSettingsModification.cjs +59 -0
- package/dist/production/src/modifications/settings/UpdateSettingsModification.cjs.map +1 -0
- package/dist/production/src/modifications/settings/UpdateSettingsModification.js +59 -0
- package/dist/production/src/modifications/settings/UpdateSettingsModification.js.map +1 -0
- package/dist/production/src/modifications/upgrade/RemoveIndexNamesModification.cjs +43 -0
- package/dist/production/src/modifications/upgrade/RemoveIndexNamesModification.cjs.map +1 -0
- package/dist/production/src/modifications/upgrade/RemoveIndexNamesModification.js +43 -0
- package/dist/production/src/modifications/upgrade/RemoveIndexNamesModification.js.map +1 -0
- package/dist/production/src/modifications/utils/columnUtils.cjs +6 -0
- package/dist/production/src/modifications/utils/columnUtils.cjs.map +1 -0
- package/dist/production/src/modifications/utils/columnUtils.js +6 -0
- package/dist/production/src/modifications/utils/columnUtils.js.map +1 -0
- package/dist/production/src/modifications/utils/createJunctionTable.cjs +37 -0
- package/dist/production/src/modifications/utils/createJunctionTable.cjs.map +1 -0
- package/dist/production/src/modifications/utils/createJunctionTable.js +37 -0
- package/dist/production/src/modifications/utils/createJunctionTable.js.map +1 -0
- package/dist/production/src/modifications/utils/diffUtils.cjs +80 -0
- package/dist/production/src/modifications/utils/diffUtils.cjs.map +1 -0
- package/dist/production/src/modifications/utils/diffUtils.js +80 -0
- package/dist/production/src/modifications/utils/diffUtils.js.map +1 -0
- package/dist/production/src/modifications/utils/getPrimaryColumnType.cjs +8 -0
- package/dist/production/src/modifications/utils/getPrimaryColumnType.cjs.map +1 -0
- package/dist/production/src/modifications/utils/getPrimaryColumnType.js +8 -0
- package/dist/production/src/modifications/utils/getPrimaryColumnType.js.map +1 -0
- package/dist/production/src/modifications/utils/schemaUpdateUtils.cjs +196 -0
- package/dist/production/src/modifications/utils/schemaUpdateUtils.cjs.map +1 -0
- package/dist/production/src/modifications/utils/schemaUpdateUtils.js +196 -0
- package/dist/production/src/modifications/utils/schemaUpdateUtils.js.map +1 -0
- package/dist/production/src/modifications/utils/sqlUpdateUtils.cjs +39 -0
- package/dist/production/src/modifications/utils/sqlUpdateUtils.cjs.map +1 -0
- package/dist/production/src/modifications/utils/sqlUpdateUtils.js +39 -0
- package/dist/production/src/modifications/utils/sqlUpdateUtils.js.map +1 -0
- package/dist/production/src/modifications/utils/valueUtils.cjs +5 -0
- package/dist/production/src/modifications/utils/valueUtils.cjs.map +1 -0
- package/dist/production/src/modifications/utils/valueUtils.js +5 -0
- package/dist/production/src/modifications/utils/valueUtils.js.map +1 -0
- package/dist/production/src/modifications/utils/viewDependencies.cjs +46 -0
- package/dist/production/src/modifications/utils/viewDependencies.cjs.map +1 -0
- package/dist/production/src/modifications/utils/viewDependencies.js +46 -0
- package/dist/production/src/modifications/utils/viewDependencies.js.map +1 -0
- package/dist/production/src/modifications/validation/PatchValidationSchemaModification.cjs +35 -0
- package/dist/production/src/modifications/validation/PatchValidationSchemaModification.cjs.map +1 -0
- package/dist/production/src/modifications/validation/PatchValidationSchemaModification.js +35 -0
- package/dist/production/src/modifications/validation/PatchValidationSchemaModification.js.map +1 -0
- package/dist/production/src/modifications/validation/UpdateValidationSchemaModification.cjs +42 -0
- package/dist/production/src/modifications/validation/UpdateValidationSchemaModification.cjs.map +1 -0
- package/dist/production/src/modifications/validation/UpdateValidationSchemaModification.js +42 -0
- package/dist/production/src/modifications/validation/UpdateValidationSchemaModification.js.map +1 -0
- package/dist/production/src/utils/dbHelpers.cjs +5 -0
- package/dist/production/src/utils/dbHelpers.cjs.map +1 -0
- package/dist/production/src/utils/dbHelpers.js +5 -0
- package/dist/production/src/utils/dbHelpers.js.map +1 -0
- package/dist/production/src/utils/deepCopy.cjs +14 -0
- package/dist/production/src/utils/deepCopy.cjs.map +1 -0
- package/dist/production/src/utils/deepCopy.js +15 -0
- package/dist/production/src/utils/deepCopy.js.map +1 -0
- package/dist/production/src/utils/escapeSqlString.cjs +7 -0
- package/dist/production/src/utils/escapeSqlString.cjs.map +1 -0
- package/dist/production/src/utils/escapeSqlString.js +7 -0
- package/dist/production/src/utils/escapeSqlString.js.map +1 -0
- package/dist/production/src/utils/isDefined.cjs +5 -0
- package/dist/production/src/utils/isDefined.cjs.map +1 -0
- package/dist/production/src/utils/isDefined.js +5 -0
- package/dist/production/src/utils/isDefined.js.map +1 -0
- package/dist/production/src/utils/isIt.cjs +7 -0
- package/dist/production/src/utils/isIt.cjs.map +1 -0
- package/dist/production/src/utils/isIt.js +7 -0
- package/dist/production/src/utils/isIt.js.map +1 -0
- package/dist/tests/tsconfig.tsbuildinfo +1 -1
- package/dist/types/Migration.d.ts +20 -0
- package/dist/types/Migration.d.ts.map +1 -0
- package/dist/types/modifications/ModificationHandler.d.ts.map +1 -0
- package/dist/types/modifications/acl/UpdateAclSchemaModification.d.ts +20 -0
- package/dist/types/modifications/actions/CreateTargetModification.d.ts +20 -0
- package/dist/types/modifications/actions/CreateTriggerModification.d.ts +20 -0
- package/dist/types/modifications/actions/RemoveTargetModification.d.ts +20 -0
- package/dist/types/modifications/actions/RemoveTriggerModification.d.ts +20 -0
- package/dist/types/modifications/actions/UpdateTargetModification.d.ts +21 -0
- package/dist/types/modifications/actions/UpdateTriggerModification.d.ts +20 -0
- package/dist/types/modifications/columns/CreateColumnModification.d.ts +29 -0
- package/dist/types/modifications/columns/UpdateColumnDefinitionModification.d.ts +35 -0
- package/dist/types/modifications/columns/UpdateColumnNameModification.d.ts +24 -0
- package/dist/types/modifications/columns/columnUtils.d.ts +18 -0
- package/dist/types/modifications/columns/columnUtils.d.ts.map +1 -0
- package/dist/types/modifications/constraints/CreateUniqueConstraintModification.d.ts +26 -0
- package/dist/types/modifications/constraints/RemoveUniqueConstraintModification.d.ts +29 -0
- package/dist/types/modifications/constraints/utils.d.ts.map +1 -0
- package/dist/types/modifications/differs/RemoveChangedFieldDiffer.d.ts +8 -0
- package/dist/types/modifications/differs/RemoveViewDiffer.d.ts +12 -0
- package/dist/types/modifications/entities/CreateEntityModification.d.ts +24 -0
- package/dist/types/modifications/entities/RemoveEntityModification.d.ts +25 -0
- package/dist/types/modifications/entities/ToggleEventLogModification.d.ts +24 -0
- package/dist/types/modifications/entities/UpdateEntityOrderByModification.d.ts +23 -0
- package/dist/types/modifications/entities/UpdateEntityTableNameModification.d.ts +23 -0
- package/dist/types/modifications/enums/CreateEnumModification.d.ts +23 -0
- package/dist/types/modifications/enums/RemoveEnumModification.d.ts +22 -0
- package/dist/types/modifications/enums/UpdateEnumModification.d.ts +24 -0
- package/dist/types/modifications/fields/RemoveFieldModification.d.ts +25 -0
- package/dist/types/modifications/indexes/CreateIndexModification.d.ts +23 -0
- package/dist/types/modifications/indexes/RemoveIndexModification.d.ts +29 -0
- package/dist/types/modifications/indexes/utils.d.ts.map +1 -0
- package/dist/types/modifications/relations/ConvertOneHasManyToManyHasManyRelationModification.d.ts +29 -0
- package/dist/types/modifications/relations/ConvertOneHasManyToOneHasOneRelationModification.d.ts +28 -0
- package/dist/types/modifications/relations/ConvertOneToManyRelationModification.d.ts +27 -0
- package/dist/types/modifications/relations/CreateRelationInverseSideModification.d.ts +22 -0
- package/dist/types/modifications/relations/CreateRelationModification.d.ts +30 -0
- package/dist/types/modifications/relations/DisableOrphanRemovalModification.d.ts +22 -0
- package/dist/types/modifications/relations/EnableOrphanRemovalModification.d.ts +22 -0
- package/dist/types/modifications/relations/MakeRelationNotNullModification.d.ts +24 -0
- package/dist/types/modifications/relations/MakeRelationNullableModification.d.ts +23 -0
- package/dist/types/modifications/relations/ToggleJunctionEventLogModification.d.ts +24 -0
- package/dist/types/modifications/relations/UpdateRelationOnDeleteModification.d.ts +24 -0
- package/dist/types/modifications/relations/UpdateRelationOrderByModification.d.ts +23 -0
- package/dist/types/modifications/relations/helpers.d.ts +13 -0
- package/dist/types/modifications/relations/helpers.d.ts.map +1 -0
- package/dist/types/modifications/relations/normalization.d.ts.map +1 -0
- package/dist/types/modifications/settings/UpdateSettingsModification.d.ts +27 -0
- package/dist/types/modifications/utils/columnUtils.d.ts +3 -0
- package/dist/types/modifications/utils/columnUtils.d.ts.map +1 -0
- package/dist/types/modifications/utils/createJunctionTable.d.ts.map +1 -0
- package/dist/types/modifications/utils/diffUtils.d.ts.map +1 -0
- package/dist/types/modifications/utils/getPrimaryColumnType.d.ts.map +1 -0
- package/dist/types/modifications/utils/schemaUpdateUtils.d.ts.map +1 -0
- package/dist/types/modifications/utils/viewDependencies.d.ts.map +1 -0
- package/dist/types/modifications/validation/UpdateValidationSchemaModification.d.ts +20 -0
- package/dist/types/tsconfig.tsbuildinfo +1 -0
- package/dist/types/utils/isDefined.d.ts +2 -0
- package/dist/types/utils/isDefined.d.ts.map +1 -0
- package/dist/types/utils/isIt.d.ts +2 -0
- package/dist/types/utils/isIt.d.ts.map +1 -0
- package/package.json +27 -15
- package/src/Migration.ts +2 -1
- package/src/tsconfig.json +1 -1
- package/vitest.config.ts +3 -0
- package/dist/src/Migration.d.ts +0 -20
- package/dist/src/Migration.d.ts.map +0 -1
- package/dist/src/Migration.js +0 -16
- package/dist/src/Migration.js.map +0 -1
- package/dist/src/MigrationDescriber.js +0 -52
- package/dist/src/MigrationDescriber.js.map +0 -1
- package/dist/src/SchemaDiffer.js +0 -112
- package/dist/src/SchemaDiffer.js.map +0 -1
- package/dist/src/SchemaMigrator.js +0 -20
- package/dist/src/SchemaMigrator.js.map +0 -1
- package/dist/src/exceptions.js +0 -7
- package/dist/src/exceptions.js.map +0 -1
- package/dist/src/index.js +0 -26
- package/dist/src/index.js.map +0 -1
- package/dist/src/modifications/ModificationHandler.d.ts.map +0 -1
- package/dist/src/modifications/ModificationHandler.js +0 -13
- package/dist/src/modifications/ModificationHandler.js.map +0 -1
- package/dist/src/modifications/ModificationHandlerFactory.js +0 -83
- package/dist/src/modifications/ModificationHandlerFactory.js.map +0 -1
- package/dist/src/modifications/ModificationVersions.js +0 -12
- package/dist/src/modifications/ModificationVersions.js.map +0 -1
- package/dist/src/modifications/NoopModification.js +0 -14
- package/dist/src/modifications/NoopModification.js.map +0 -1
- package/dist/src/modifications/acl/PatchAclSchemaModification.js +0 -37
- package/dist/src/modifications/acl/PatchAclSchemaModification.js.map +0 -1
- package/dist/src/modifications/acl/UpdateAclSchemaModification.d.ts +0 -20
- package/dist/src/modifications/acl/UpdateAclSchemaModification.js +0 -44
- package/dist/src/modifications/acl/UpdateAclSchemaModification.js.map +0 -1
- package/dist/src/modifications/acl/index.js +0 -19
- package/dist/src/modifications/acl/index.js.map +0 -1
- package/dist/src/modifications/actions/CreateTargetModification.d.ts +0 -20
- package/dist/src/modifications/actions/CreateTargetModification.js +0 -40
- package/dist/src/modifications/actions/CreateTargetModification.js.map +0 -1
- package/dist/src/modifications/actions/CreateTriggerModification.d.ts +0 -20
- package/dist/src/modifications/actions/CreateTriggerModification.js +0 -40
- package/dist/src/modifications/actions/CreateTriggerModification.js.map +0 -1
- package/dist/src/modifications/actions/RemoveTargetModification.d.ts +0 -20
- package/dist/src/modifications/actions/RemoveTargetModification.js +0 -40
- package/dist/src/modifications/actions/RemoveTargetModification.js.map +0 -1
- package/dist/src/modifications/actions/RemoveTriggerModification.d.ts +0 -20
- package/dist/src/modifications/actions/RemoveTriggerModification.js +0 -40
- package/dist/src/modifications/actions/RemoveTriggerModification.js.map +0 -1
- package/dist/src/modifications/actions/UpdateTargetModification.d.ts +0 -21
- package/dist/src/modifications/actions/UpdateTargetModification.js +0 -46
- package/dist/src/modifications/actions/UpdateTargetModification.js.map +0 -1
- package/dist/src/modifications/actions/UpdateTriggerModification.d.ts +0 -20
- package/dist/src/modifications/actions/UpdateTriggerModification.js +0 -46
- package/dist/src/modifications/actions/UpdateTriggerModification.js.map +0 -1
- package/dist/src/modifications/actions/index.js +0 -20
- package/dist/src/modifications/actions/index.js.map +0 -1
- package/dist/src/modifications/columns/CreateColumnModification.d.ts +0 -29
- package/dist/src/modifications/columns/CreateColumnModification.js +0 -88
- package/dist/src/modifications/columns/CreateColumnModification.js.map +0 -1
- package/dist/src/modifications/columns/UpdateColumnDefinitionModification.d.ts +0 -35
- package/dist/src/modifications/columns/UpdateColumnDefinitionModification.js +0 -126
- package/dist/src/modifications/columns/UpdateColumnDefinitionModification.js.map +0 -1
- package/dist/src/modifications/columns/UpdateColumnNameModification.d.ts +0 -24
- package/dist/src/modifications/columns/UpdateColumnNameModification.js +0 -106
- package/dist/src/modifications/columns/UpdateColumnNameModification.js.map +0 -1
- package/dist/src/modifications/columns/columnUtils.d.ts +0 -18
- package/dist/src/modifications/columns/columnUtils.d.ts.map +0 -1
- package/dist/src/modifications/columns/columnUtils.js +0 -32
- package/dist/src/modifications/columns/columnUtils.js.map +0 -1
- package/dist/src/modifications/columns/index.js +0 -20
- package/dist/src/modifications/columns/index.js.map +0 -1
- package/dist/src/modifications/constraints/CreateUniqueConstraintModification.d.ts +0 -26
- package/dist/src/modifications/constraints/CreateUniqueConstraintModification.js +0 -74
- package/dist/src/modifications/constraints/CreateUniqueConstraintModification.js.map +0 -1
- package/dist/src/modifications/constraints/RemoveUniqueConstraintModification.d.ts +0 -29
- package/dist/src/modifications/constraints/RemoveUniqueConstraintModification.js +0 -82
- package/dist/src/modifications/constraints/RemoveUniqueConstraintModification.js.map +0 -1
- package/dist/src/modifications/constraints/index.js +0 -20
- package/dist/src/modifications/constraints/index.js.map +0 -1
- package/dist/src/modifications/constraints/utils.d.ts.map +0 -1
- package/dist/src/modifications/constraints/utils.js +0 -33
- package/dist/src/modifications/constraints/utils.js.map +0 -1
- package/dist/src/modifications/differs/RemoveChangedFieldDiffer.d.ts +0 -8
- package/dist/src/modifications/differs/RemoveChangedFieldDiffer.js +0 -31
- package/dist/src/modifications/differs/RemoveChangedFieldDiffer.js.map +0 -1
- package/dist/src/modifications/differs/RemoveViewDiffer.d.ts +0 -12
- package/dist/src/modifications/differs/RemoveViewDiffer.js +0 -48
- package/dist/src/modifications/differs/RemoveViewDiffer.js.map +0 -1
- package/dist/src/modifications/differs/index.js +0 -19
- package/dist/src/modifications/differs/index.js.map +0 -1
- package/dist/src/modifications/entities/CreateEntityModification.d.ts +0 -24
- package/dist/src/modifications/entities/CreateEntityModification.js +0 -79
- package/dist/src/modifications/entities/CreateEntityModification.js.map +0 -1
- package/dist/src/modifications/entities/CreateViewModification.js +0 -71
- package/dist/src/modifications/entities/CreateViewModification.js.map +0 -1
- package/dist/src/modifications/entities/RemoveEntityModification.d.ts +0 -25
- package/dist/src/modifications/entities/RemoveEntityModification.js +0 -85
- package/dist/src/modifications/entities/RemoveEntityModification.js.map +0 -1
- package/dist/src/modifications/entities/ToggleEventLogModification.d.ts +0 -24
- package/dist/src/modifications/entities/ToggleEventLogModification.js +0 -66
- package/dist/src/modifications/entities/ToggleEventLogModification.js.map +0 -1
- package/dist/src/modifications/entities/UpdateEntityNameModification.js +0 -79
- package/dist/src/modifications/entities/UpdateEntityNameModification.js.map +0 -1
- package/dist/src/modifications/entities/UpdateEntityOrderByModification.d.ts +0 -23
- package/dist/src/modifications/entities/UpdateEntityOrderByModification.js +0 -63
- package/dist/src/modifications/entities/UpdateEntityOrderByModification.js.map +0 -1
- package/dist/src/modifications/entities/UpdateEntityTableNameModification.d.ts +0 -23
- package/dist/src/modifications/entities/UpdateEntityTableNameModification.js +0 -45
- package/dist/src/modifications/entities/UpdateEntityTableNameModification.js.map +0 -1
- package/dist/src/modifications/entities/UpdateViewModification.js +0 -32
- package/dist/src/modifications/entities/UpdateViewModification.js.map +0 -1
- package/dist/src/modifications/entities/index.js +0 -24
- package/dist/src/modifications/entities/index.js.map +0 -1
- package/dist/src/modifications/enums/CreateEnumModification.d.ts +0 -23
- package/dist/src/modifications/enums/CreateEnumModification.js +0 -47
- package/dist/src/modifications/enums/CreateEnumModification.js.map +0 -1
- package/dist/src/modifications/enums/RemoveEnumModification.d.ts +0 -22
- package/dist/src/modifications/enums/RemoveEnumModification.js +0 -40
- package/dist/src/modifications/enums/RemoveEnumModification.js.map +0 -1
- package/dist/src/modifications/enums/UpdateEnumModification.d.ts +0 -24
- package/dist/src/modifications/enums/UpdateEnumModification.js +0 -56
- package/dist/src/modifications/enums/UpdateEnumModification.js.map +0 -1
- package/dist/src/modifications/enums/enumUtils.js +0 -12
- package/dist/src/modifications/enums/enumUtils.js.map +0 -1
- package/dist/src/modifications/enums/index.js +0 -20
- package/dist/src/modifications/enums/index.js.map +0 -1
- package/dist/src/modifications/exceptions.js +0 -7
- package/dist/src/modifications/exceptions.js.map +0 -1
- package/dist/src/modifications/fields/RemoveFieldModification.d.ts +0 -25
- package/dist/src/modifications/fields/RemoveFieldModification.js +0 -74
- package/dist/src/modifications/fields/RemoveFieldModification.js.map +0 -1
- package/dist/src/modifications/fields/UpdateFieldNameModification.js +0 -140
- package/dist/src/modifications/fields/UpdateFieldNameModification.js.map +0 -1
- package/dist/src/modifications/fields/index.js +0 -19
- package/dist/src/modifications/fields/index.js.map +0 -1
- package/dist/src/modifications/index.js +0 -32
- package/dist/src/modifications/index.js.map +0 -1
- package/dist/src/modifications/indexes/CreateIndexModification.d.ts +0 -23
- package/dist/src/modifications/indexes/CreateIndexModification.js +0 -64
- package/dist/src/modifications/indexes/CreateIndexModification.js.map +0 -1
- package/dist/src/modifications/indexes/RemoveIndexModification.d.ts +0 -29
- package/dist/src/modifications/indexes/RemoveIndexModification.js +0 -82
- package/dist/src/modifications/indexes/RemoveIndexModification.js.map +0 -1
- package/dist/src/modifications/indexes/index.js +0 -19
- package/dist/src/modifications/indexes/index.js.map +0 -1
- package/dist/src/modifications/indexes/utils.d.ts.map +0 -1
- package/dist/src/modifications/indexes/utils.js +0 -33
- package/dist/src/modifications/indexes/utils.js.map +0 -1
- package/dist/src/modifications/relations/ConvertOneHasManyToManyHasManyRelationModification.d.ts +0 -29
- package/dist/src/modifications/relations/ConvertOneHasManyToManyHasManyRelationModification.js +0 -88
- package/dist/src/modifications/relations/ConvertOneHasManyToManyHasManyRelationModification.js.map +0 -1
- package/dist/src/modifications/relations/ConvertOneHasManyToOneHasOneRelationModification.d.ts +0 -28
- package/dist/src/modifications/relations/ConvertOneHasManyToOneHasOneRelationModification.js +0 -98
- package/dist/src/modifications/relations/ConvertOneHasManyToOneHasOneRelationModification.js.map +0 -1
- package/dist/src/modifications/relations/ConvertOneToManyRelationModification.d.ts +0 -27
- package/dist/src/modifications/relations/ConvertOneToManyRelationModification.js +0 -96
- package/dist/src/modifications/relations/ConvertOneToManyRelationModification.js.map +0 -1
- package/dist/src/modifications/relations/CreateRelationInverseSideModification.d.ts +0 -22
- package/dist/src/modifications/relations/CreateRelationInverseSideModification.js +0 -43
- package/dist/src/modifications/relations/CreateRelationInverseSideModification.js.map +0 -1
- package/dist/src/modifications/relations/CreateRelationModification.d.ts +0 -30
- package/dist/src/modifications/relations/CreateRelationModification.js +0 -105
- package/dist/src/modifications/relations/CreateRelationModification.js.map +0 -1
- package/dist/src/modifications/relations/DisableOrphanRemovalModification.d.ts +0 -22
- package/dist/src/modifications/relations/DisableOrphanRemovalModification.js +0 -49
- package/dist/src/modifications/relations/DisableOrphanRemovalModification.js.map +0 -1
- package/dist/src/modifications/relations/EnableOrphanRemovalModification.d.ts +0 -22
- package/dist/src/modifications/relations/EnableOrphanRemovalModification.js +0 -52
- package/dist/src/modifications/relations/EnableOrphanRemovalModification.js.map +0 -1
- package/dist/src/modifications/relations/MakeRelationNotNullModification.d.ts +0 -24
- package/dist/src/modifications/relations/MakeRelationNotNullModification.js +0 -64
- package/dist/src/modifications/relations/MakeRelationNotNullModification.js.map +0 -1
- package/dist/src/modifications/relations/MakeRelationNullableModification.d.ts +0 -23
- package/dist/src/modifications/relations/MakeRelationNullableModification.js +0 -63
- package/dist/src/modifications/relations/MakeRelationNullableModification.js.map +0 -1
- package/dist/src/modifications/relations/ToggleJunctionEventLogModification.d.ts +0 -24
- package/dist/src/modifications/relations/ToggleJunctionEventLogModification.js +0 -83
- package/dist/src/modifications/relations/ToggleJunctionEventLogModification.js.map +0 -1
- package/dist/src/modifications/relations/UpdateRelationOnDeleteModification.d.ts +0 -24
- package/dist/src/modifications/relations/UpdateRelationOnDeleteModification.js +0 -68
- package/dist/src/modifications/relations/UpdateRelationOnDeleteModification.js.map +0 -1
- package/dist/src/modifications/relations/UpdateRelationOrderByModification.d.ts +0 -23
- package/dist/src/modifications/relations/UpdateRelationOrderByModification.js +0 -53
- package/dist/src/modifications/relations/UpdateRelationOrderByModification.js.map +0 -1
- package/dist/src/modifications/relations/helpers.d.ts +0 -13
- package/dist/src/modifications/relations/helpers.d.ts.map +0 -1
- package/dist/src/modifications/relations/helpers.js +0 -29
- package/dist/src/modifications/relations/helpers.js.map +0 -1
- package/dist/src/modifications/relations/index.js +0 -28
- package/dist/src/modifications/relations/index.js.map +0 -1
- package/dist/src/modifications/relations/normalization.d.ts.map +0 -1
- package/dist/src/modifications/relations/normalization.js +0 -16
- package/dist/src/modifications/relations/normalization.js.map +0 -1
- package/dist/src/modifications/settings/UpdateSettingsModification.d.ts +0 -27
- package/dist/src/modifications/settings/UpdateSettingsModification.js +0 -64
- package/dist/src/modifications/settings/UpdateSettingsModification.js.map +0 -1
- package/dist/src/modifications/settings/index.js +0 -18
- package/dist/src/modifications/settings/index.js.map +0 -1
- package/dist/src/modifications/upgrade/RemoveIndexNamesModification.js +0 -40
- package/dist/src/modifications/upgrade/RemoveIndexNamesModification.js.map +0 -1
- package/dist/src/modifications/utils/columnUtils.d.ts +0 -3
- package/dist/src/modifications/utils/columnUtils.d.ts.map +0 -1
- package/dist/src/modifications/utils/columnUtils.js +0 -9
- package/dist/src/modifications/utils/columnUtils.js.map +0 -1
- package/dist/src/modifications/utils/createJunctionTable.d.ts.map +0 -1
- package/dist/src/modifications/utils/createJunctionTable.js +0 -35
- package/dist/src/modifications/utils/createJunctionTable.js.map +0 -1
- package/dist/src/modifications/utils/diffUtils.d.ts.map +0 -1
- package/dist/src/modifications/utils/diffUtils.js +0 -85
- package/dist/src/modifications/utils/diffUtils.js.map +0 -1
- package/dist/src/modifications/utils/getPrimaryColumnType.d.ts.map +0 -1
- package/dist/src/modifications/utils/getPrimaryColumnType.js +0 -9
- package/dist/src/modifications/utils/getPrimaryColumnType.js.map +0 -1
- package/dist/src/modifications/utils/schemaUpdateUtils.d.ts.map +0 -1
- package/dist/src/modifications/utils/schemaUpdateUtils.js +0 -177
- package/dist/src/modifications/utils/schemaUpdateUtils.js.map +0 -1
- package/dist/src/modifications/utils/sqlUpdateUtils.js +0 -40
- package/dist/src/modifications/utils/sqlUpdateUtils.js.map +0 -1
- package/dist/src/modifications/utils/stringArrayEquals.js +0 -9
- package/dist/src/modifications/utils/stringArrayEquals.js.map +0 -1
- package/dist/src/modifications/utils/valueUtils.js +0 -6
- package/dist/src/modifications/utils/valueUtils.js.map +0 -1
- package/dist/src/modifications/utils/viewDependencies.d.ts.map +0 -1
- package/dist/src/modifications/utils/viewDependencies.js +0 -46
- package/dist/src/modifications/utils/viewDependencies.js.map +0 -1
- package/dist/src/modifications/validation/PatchValidationSchemaModification.js +0 -37
- package/dist/src/modifications/validation/PatchValidationSchemaModification.js.map +0 -1
- package/dist/src/modifications/validation/UpdateValidationSchemaModification.d.ts +0 -20
- package/dist/src/modifications/validation/UpdateValidationSchemaModification.js +0 -44
- package/dist/src/modifications/validation/UpdateValidationSchemaModification.js.map +0 -1
- package/dist/src/modifications/validation/index.js +0 -19
- package/dist/src/modifications/validation/index.js.map +0 -1
- package/dist/src/tsconfig.tsbuildinfo +0 -1
- package/dist/src/utils/PartialEntity.js +0 -3
- package/dist/src/utils/PartialEntity.js.map +0 -1
- package/dist/src/utils/dbHelpers.js +0 -6
- package/dist/src/utils/dbHelpers.js.map +0 -1
- package/dist/src/utils/deepCopy.js +0 -20
- package/dist/src/utils/deepCopy.js.map +0 -1
- package/dist/src/utils/escapeSqlString.js +0 -8
- package/dist/src/utils/escapeSqlString.js.map +0 -1
- package/dist/src/utils/isDefined.d.ts +0 -2
- package/dist/src/utils/isDefined.d.ts.map +0 -1
- package/dist/src/utils/isDefined.js +0 -6
- package/dist/src/utils/isDefined.js.map +0 -1
- package/dist/src/utils/isIt.d.ts +0 -2
- package/dist/src/utils/isIt.d.ts.map +0 -1
- package/dist/src/utils/isIt.js +0 -11
- package/dist/src/utils/isIt.js.map +0 -1
- package/dist/tests/cases/integration/convertManyHasOneToOneHasOneRelation.test.js +0 -59
- package/dist/tests/cases/integration/convertManyHasOneToOneHasOneRelation.test.js.map +0 -1
- package/dist/tests/cases/integration/convertOneHasManyToManyHasManyRelation.test.js +0 -96
- package/dist/tests/cases/integration/convertOneHasManyToManyHasManyRelation.test.js.map +0 -1
- package/dist/tests/cases/integration/convertOneToManyRelation.test.js +0 -118
- package/dist/tests/cases/integration/convertOneToManyRelation.test.js.map +0 -1
- package/dist/tests/cases/integration/createAndDropIndex.test.js +0 -67
- package/dist/tests/cases/integration/createAndDropIndex.test.js.map +0 -1
- package/dist/tests/cases/integration/createColumn.test.js +0 -114
- package/dist/tests/cases/integration/createColumn.test.js.map +0 -1
- package/dist/tests/cases/integration/createEntity.test.js +0 -160
- package/dist/tests/cases/integration/createEntity.test.js.map +0 -1
- package/dist/tests/cases/integration/createEnum.test.js +0 -43
- package/dist/tests/cases/integration/createEnum.test.js.map +0 -1
- package/dist/tests/cases/integration/createManyHasMany.test.js +0 -112
- package/dist/tests/cases/integration/createManyHasMany.test.js.map +0 -1
- package/dist/tests/cases/integration/createManyHasOne.test.js +0 -93
- package/dist/tests/cases/integration/createManyHasOne.test.js.map +0 -1
- package/dist/tests/cases/integration/createOneHasMany.test.js +0 -123
- package/dist/tests/cases/integration/createOneHasMany.test.js.map +0 -1
- package/dist/tests/cases/integration/createOneHasOne.test.js +0 -149
- package/dist/tests/cases/integration/createOneHasOne.test.js.map +0 -1
- package/dist/tests/cases/integration/createRelationInverseSide.test.js +0 -84
- package/dist/tests/cases/integration/createRelationInverseSide.test.js.map +0 -1
- package/dist/tests/cases/integration/createUnique.test.js +0 -168
- package/dist/tests/cases/integration/createUnique.test.js.map +0 -1
- package/dist/tests/cases/integration/createView.test.js +0 -183
- package/dist/tests/cases/integration/createView.test.js.map +0 -1
- package/dist/tests/cases/integration/disableOrphanRemoval.test.js +0 -31
- package/dist/tests/cases/integration/disableOrphanRemoval.test.js.map +0 -1
- package/dist/tests/cases/integration/enableOrphanRemoval.test.js +0 -31
- package/dist/tests/cases/integration/enableOrphanRemoval.test.js.map +0 -1
- package/dist/tests/cases/integration/makeColumnNotNull.test.js +0 -33
- package/dist/tests/cases/integration/makeColumnNotNull.test.js.map +0 -1
- package/dist/tests/cases/integration/makeRelationNotNull.test.js +0 -32
- package/dist/tests/cases/integration/makeRelationNotNull.test.js.map +0 -1
- package/dist/tests/cases/integration/makeRelationNullable.test.js +0 -54
- package/dist/tests/cases/integration/makeRelationNullable.test.js.map +0 -1
- package/dist/tests/cases/integration/patchAclSchema.test.js +0 -63
- package/dist/tests/cases/integration/patchAclSchema.test.js.map +0 -1
- package/dist/tests/cases/integration/removeEntity.test.js +0 -131
- package/dist/tests/cases/integration/removeEntity.test.js.map +0 -1
- package/dist/tests/cases/integration/removeEnum.test.js +0 -36
- package/dist/tests/cases/integration/removeEnum.test.js.map +0 -1
- package/dist/tests/cases/integration/removeField.test.js +0 -217
- package/dist/tests/cases/integration/removeField.test.js.map +0 -1
- package/dist/tests/cases/integration/toggleEventLog.test.js +0 -68
- package/dist/tests/cases/integration/toggleEventLog.test.js.map +0 -1
- package/dist/tests/cases/integration/toggleJunctionEventLog.test.js +0 -75
- package/dist/tests/cases/integration/toggleJunctionEventLog.test.js.map +0 -1
- package/dist/tests/cases/integration/updateColumnDefinition.test.js +0 -253
- package/dist/tests/cases/integration/updateColumnDefinition.test.js.map +0 -1
- package/dist/tests/cases/integration/updateEntityName.test.js +0 -133
- package/dist/tests/cases/integration/updateEntityName.test.js.map +0 -1
- package/dist/tests/cases/integration/updateEntityOrderBy.test.js +0 -57
- package/dist/tests/cases/integration/updateEntityOrderBy.test.js.map +0 -1
- package/dist/tests/cases/integration/updateEnum.test.js +0 -34
- package/dist/tests/cases/integration/updateEnum.test.js.map +0 -1
- package/dist/tests/cases/integration/updateFieldName.test.js +0 -221
- package/dist/tests/cases/integration/updateFieldName.test.js.map +0 -1
- package/dist/tests/cases/integration/updateRelationOnDelete.test.js +0 -50
- package/dist/tests/cases/integration/updateRelationOnDelete.test.js.map +0 -1
- package/dist/tests/cases/integration/updateRelationOrderBy.test.js +0 -38
- package/dist/tests/cases/integration/updateRelationOrderBy.test.js.map +0 -1
- package/dist/tests/cases/integration/updateView.test.js +0 -559
- package/dist/tests/cases/integration/updateView.test.js.map +0 -1
- package/dist/tests/src/tags.js +0 -13
- package/dist/tests/src/tags.js.map +0 -1
- package/dist/tests/src/tests.js +0 -72
- package/dist/tests/src/tests.js.map +0 -1
- /package/dist/{src → types}/MigrationDescriber.d.ts +0 -0
- /package/dist/{src → types}/MigrationDescriber.d.ts.map +0 -0
- /package/dist/{src → types}/SchemaDiffer.d.ts +0 -0
- /package/dist/{src → types}/SchemaDiffer.d.ts.map +0 -0
- /package/dist/{src → types}/SchemaMigrator.d.ts +0 -0
- /package/dist/{src → types}/SchemaMigrator.d.ts.map +0 -0
- /package/dist/{src → types}/exceptions.d.ts +0 -0
- /package/dist/{src → types}/exceptions.d.ts.map +0 -0
- /package/dist/{src → types}/index.d.ts +0 -0
- /package/dist/{src → types}/index.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/ModificationHandler.d.ts +0 -0
- /package/dist/{src → types}/modifications/ModificationHandlerFactory.d.ts +0 -0
- /package/dist/{src → types}/modifications/ModificationHandlerFactory.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/ModificationVersions.d.ts +0 -0
- /package/dist/{src → types}/modifications/ModificationVersions.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/NoopModification.d.ts +0 -0
- /package/dist/{src → types}/modifications/NoopModification.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/acl/PatchAclSchemaModification.d.ts +0 -0
- /package/dist/{src → types}/modifications/acl/PatchAclSchemaModification.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/acl/UpdateAclSchemaModification.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/acl/index.d.ts +0 -0
- /package/dist/{src → types}/modifications/acl/index.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/actions/CreateTargetModification.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/actions/CreateTriggerModification.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/actions/RemoveTargetModification.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/actions/RemoveTriggerModification.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/actions/UpdateTargetModification.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/actions/UpdateTriggerModification.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/actions/index.d.ts +0 -0
- /package/dist/{src → types}/modifications/actions/index.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/columns/CreateColumnModification.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/columns/UpdateColumnDefinitionModification.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/columns/UpdateColumnNameModification.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/columns/index.d.ts +0 -0
- /package/dist/{src → types}/modifications/columns/index.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/constraints/CreateUniqueConstraintModification.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/constraints/RemoveUniqueConstraintModification.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/constraints/index.d.ts +0 -0
- /package/dist/{src → types}/modifications/constraints/index.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/constraints/utils.d.ts +0 -0
- /package/dist/{src → types}/modifications/differs/RemoveChangedFieldDiffer.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/differs/RemoveViewDiffer.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/differs/index.d.ts +0 -0
- /package/dist/{src → types}/modifications/differs/index.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/entities/CreateEntityModification.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/entities/CreateViewModification.d.ts +0 -0
- /package/dist/{src → types}/modifications/entities/CreateViewModification.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/entities/RemoveEntityModification.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/entities/ToggleEventLogModification.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/entities/UpdateEntityNameModification.d.ts +0 -0
- /package/dist/{src → types}/modifications/entities/UpdateEntityNameModification.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/entities/UpdateEntityOrderByModification.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/entities/UpdateEntityTableNameModification.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/entities/UpdateViewModification.d.ts +0 -0
- /package/dist/{src → types}/modifications/entities/UpdateViewModification.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/entities/index.d.ts +0 -0
- /package/dist/{src → types}/modifications/entities/index.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/enums/CreateEnumModification.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/enums/RemoveEnumModification.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/enums/UpdateEnumModification.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/enums/enumUtils.d.ts +0 -0
- /package/dist/{src → types}/modifications/enums/enumUtils.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/enums/index.d.ts +0 -0
- /package/dist/{src → types}/modifications/enums/index.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/exceptions.d.ts +0 -0
- /package/dist/{src → types}/modifications/exceptions.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/fields/RemoveFieldModification.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/fields/UpdateFieldNameModification.d.ts +0 -0
- /package/dist/{src → types}/modifications/fields/UpdateFieldNameModification.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/fields/index.d.ts +0 -0
- /package/dist/{src → types}/modifications/fields/index.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/index.d.ts +0 -0
- /package/dist/{src → types}/modifications/index.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/indexes/CreateIndexModification.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/indexes/RemoveIndexModification.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/indexes/index.d.ts +0 -0
- /package/dist/{src → types}/modifications/indexes/index.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/indexes/utils.d.ts +0 -0
- /package/dist/{src → types}/modifications/relations/ConvertOneHasManyToManyHasManyRelationModification.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/relations/ConvertOneHasManyToOneHasOneRelationModification.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/relations/ConvertOneToManyRelationModification.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/relations/CreateRelationInverseSideModification.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/relations/CreateRelationModification.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/relations/DisableOrphanRemovalModification.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/relations/EnableOrphanRemovalModification.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/relations/MakeRelationNotNullModification.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/relations/MakeRelationNullableModification.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/relations/ToggleJunctionEventLogModification.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/relations/UpdateRelationOnDeleteModification.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/relations/UpdateRelationOrderByModification.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/relations/index.d.ts +0 -0
- /package/dist/{src → types}/modifications/relations/index.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/relations/normalization.d.ts +0 -0
- /package/dist/{src → types}/modifications/settings/UpdateSettingsModification.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/settings/index.d.ts +0 -0
- /package/dist/{src → types}/modifications/settings/index.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/upgrade/RemoveIndexNamesModification.d.ts +0 -0
- /package/dist/{src → types}/modifications/upgrade/RemoveIndexNamesModification.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/utils/createJunctionTable.d.ts +0 -0
- /package/dist/{src → types}/modifications/utils/diffUtils.d.ts +0 -0
- /package/dist/{src → types}/modifications/utils/getPrimaryColumnType.d.ts +0 -0
- /package/dist/{src → types}/modifications/utils/schemaUpdateUtils.d.ts +0 -0
- /package/dist/{src → types}/modifications/utils/sqlUpdateUtils.d.ts +0 -0
- /package/dist/{src → types}/modifications/utils/sqlUpdateUtils.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/utils/stringArrayEquals.d.ts +0 -0
- /package/dist/{src → types}/modifications/utils/stringArrayEquals.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/utils/valueUtils.d.ts +0 -0
- /package/dist/{src → types}/modifications/utils/valueUtils.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/utils/viewDependencies.d.ts +0 -0
- /package/dist/{src → types}/modifications/validation/PatchValidationSchemaModification.d.ts +0 -0
- /package/dist/{src → types}/modifications/validation/PatchValidationSchemaModification.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/validation/UpdateValidationSchemaModification.d.ts.map +0 -0
- /package/dist/{src → types}/modifications/validation/index.d.ts +0 -0
- /package/dist/{src → types}/modifications/validation/index.d.ts.map +0 -0
- /package/dist/{src → types}/utils/PartialEntity.d.ts +0 -0
- /package/dist/{src → types}/utils/PartialEntity.d.ts.map +0 -0
- /package/dist/{src → types}/utils/dbHelpers.d.ts +0 -0
- /package/dist/{src → types}/utils/dbHelpers.d.ts.map +0 -0
- /package/dist/{src → types}/utils/deepCopy.d.ts +0 -0
- /package/dist/{src → types}/utils/deepCopy.d.ts.map +0 -0
- /package/dist/{src → types}/utils/escapeSqlString.d.ts +0 -0
- /package/dist/{src → types}/utils/escapeSqlString.d.ts.map +0 -0
|
@@ -0,0 +1,146 @@
|
|
|
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 schemaUtils = require("@contember/schema-utils");
|
|
6
|
+
const ModificationVersions = require("../ModificationVersions.cjs");
|
|
7
|
+
const valueUtils = require("../utils/valueUtils.cjs");
|
|
8
|
+
require("fast-deep-equal");
|
|
9
|
+
require("@contember/schema");
|
|
10
|
+
require("@contember/database-migrations");
|
|
11
|
+
const UpdateColumnNameModification = require("../columns/UpdateColumnNameModification.cjs");
|
|
12
|
+
const NoopModification = require("../NoopModification.cjs");
|
|
13
|
+
var __defProp = Object.defineProperty;
|
|
14
|
+
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
15
|
+
var __publicField = (obj, key, value) => __defNormalProp(obj, key + "", value);
|
|
16
|
+
class UpdateFieldNameModificationHandler {
|
|
17
|
+
constructor(data, schema, options) {
|
|
18
|
+
this.data = data;
|
|
19
|
+
this.schema = schema;
|
|
20
|
+
this.options = options;
|
|
21
|
+
__publicField(this, "renameColumnSubModification", new NoopModification.NoopModification());
|
|
22
|
+
if (this.data.columnName) {
|
|
23
|
+
this.renameColumnSubModification = UpdateColumnNameModification.updateColumnNameModification.createHandler({
|
|
24
|
+
entityName: this.data.entityName,
|
|
25
|
+
columnName: this.data.columnName,
|
|
26
|
+
fieldName: this.data.fieldName
|
|
27
|
+
}, this.schema, this.options);
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
createSql(builder, options) {
|
|
31
|
+
const entity = this.schema.model.entities[this.data.entityName];
|
|
32
|
+
if (entity.view) {
|
|
33
|
+
return;
|
|
34
|
+
}
|
|
35
|
+
this.renameColumnSubModification.createSql(builder, options);
|
|
36
|
+
}
|
|
37
|
+
getSchemaUpdater() {
|
|
38
|
+
const updateConstraintFields = this.options.formatVersion >= ModificationVersions.VERSION_UPDATE_CONSTRAINT_FIELDS ? schemaUpdateUtils.updateEntity(this.data.entityName, ({ entity }) => {
|
|
39
|
+
return {
|
|
40
|
+
...entity,
|
|
41
|
+
unique: entity.unique.map((unique) => ({
|
|
42
|
+
...unique,
|
|
43
|
+
fields: unique.fields.map(valueUtils.changeValue(this.data.fieldName, this.data.newFieldName))
|
|
44
|
+
}))
|
|
45
|
+
};
|
|
46
|
+
}) : void 0;
|
|
47
|
+
const updateIndexFields = this.options.formatVersion >= ModificationVersions.VERSION_UPDATE_INDEX_FIELDS ? schemaUpdateUtils.updateEntity(this.data.entityName, ({ entity }) => {
|
|
48
|
+
return {
|
|
49
|
+
...entity,
|
|
50
|
+
indexes: entity.indexes.map((unique) => ({
|
|
51
|
+
...unique,
|
|
52
|
+
fields: unique.fields.map(valueUtils.changeValue(this.data.fieldName, this.data.newFieldName))
|
|
53
|
+
}))
|
|
54
|
+
};
|
|
55
|
+
}) : void 0;
|
|
56
|
+
const updateRelationReferences = schemaUpdateUtils.updateEveryEntity(
|
|
57
|
+
schemaUpdateUtils.updateEveryField(({ field, entity }) => {
|
|
58
|
+
const isUpdatedRelation = (entity2, relation) => {
|
|
59
|
+
return entity2.name === this.data.entityName && relation && relation.name === this.data.fieldName;
|
|
60
|
+
};
|
|
61
|
+
return schemaUtils.acceptFieldVisitor(this.schema.model, entity, field, {
|
|
62
|
+
visitColumn: ({ column }) => column,
|
|
63
|
+
visitManyHasOne: ({ targetEntity, relation, targetRelation }) => {
|
|
64
|
+
return isUpdatedRelation(targetEntity, targetRelation) ? { ...relation, inversedBy: this.data.newFieldName } : relation;
|
|
65
|
+
},
|
|
66
|
+
visitOneHasMany: ({ relation, targetEntity, targetRelation }) => {
|
|
67
|
+
return isUpdatedRelation(targetEntity, targetRelation) ? { ...relation, ownedBy: this.data.newFieldName } : relation;
|
|
68
|
+
},
|
|
69
|
+
visitOneHasOneOwning: ({ relation, targetEntity, targetRelation }) => {
|
|
70
|
+
return isUpdatedRelation(targetEntity, targetRelation) ? { ...relation, inversedBy: this.data.newFieldName } : relation;
|
|
71
|
+
},
|
|
72
|
+
visitOneHasOneInverse: ({ relation, targetEntity, targetRelation }) => {
|
|
73
|
+
return isUpdatedRelation(targetEntity, targetRelation) ? { ...relation, ownedBy: this.data.newFieldName } : relation;
|
|
74
|
+
},
|
|
75
|
+
visitManyHasManyOwning: ({ relation, targetEntity, targetRelation }) => {
|
|
76
|
+
return isUpdatedRelation(targetEntity, targetRelation) ? { ...relation, inversedBy: this.data.newFieldName } : relation;
|
|
77
|
+
},
|
|
78
|
+
visitManyHasManyInverse: ({ relation, targetEntity, targetRelation }) => {
|
|
79
|
+
return isUpdatedRelation(targetEntity, targetRelation) ? { ...relation, ownedBy: this.data.newFieldName } : relation;
|
|
80
|
+
}
|
|
81
|
+
});
|
|
82
|
+
})
|
|
83
|
+
);
|
|
84
|
+
const updateFieldName = schemaUpdateUtils.updateEntity(this.data.entityName, ({ entity }) => {
|
|
85
|
+
const { [this.data.fieldName]: updated, ...fields } = entity.fields;
|
|
86
|
+
return {
|
|
87
|
+
...entity,
|
|
88
|
+
fields: {
|
|
89
|
+
...fields,
|
|
90
|
+
[this.data.newFieldName]: { ...updated, name: this.data.newFieldName }
|
|
91
|
+
}
|
|
92
|
+
};
|
|
93
|
+
});
|
|
94
|
+
const updateAclOp = this.options.formatVersion >= ModificationVersions.VERSION_ACL_PATCH ? schemaUpdateUtils.updateAcl(
|
|
95
|
+
schemaUpdateUtils.updateAclEveryRole(
|
|
96
|
+
schemaUpdateUtils.updateAclEveryEntity(
|
|
97
|
+
schemaUpdateUtils.updateAclFieldPermissions((permissions, entityName) => {
|
|
98
|
+
if (entityName !== this.data.entityName) {
|
|
99
|
+
return permissions;
|
|
100
|
+
}
|
|
101
|
+
if (!permissions[this.data.fieldName]) {
|
|
102
|
+
return permissions;
|
|
103
|
+
}
|
|
104
|
+
const { [this.data.fieldName]: field, ...other } = permissions;
|
|
105
|
+
return {
|
|
106
|
+
[this.data.newFieldName]: field,
|
|
107
|
+
...other
|
|
108
|
+
};
|
|
109
|
+
}),
|
|
110
|
+
schemaUpdateUtils.updateAclEveryPredicate(({ predicate, entityName, schema }) => {
|
|
111
|
+
const processor = new schemaUtils.PredicateDefinitionProcessor(schema.model);
|
|
112
|
+
const currentEntity = schema.model.entities[entityName];
|
|
113
|
+
return processor.process(
|
|
114
|
+
currentEntity,
|
|
115
|
+
predicate,
|
|
116
|
+
{
|
|
117
|
+
handleColumn: (ctx) => ctx.entity.name === this.data.entityName && ctx.column.name === this.data.fieldName ? [this.data.newFieldName, ctx.value] : ctx.value,
|
|
118
|
+
handleRelation: (ctx) => ctx.entity.name === this.data.entityName && ctx.relation.name === this.data.fieldName ? [this.data.newFieldName, ctx.value] : ctx.value
|
|
119
|
+
}
|
|
120
|
+
);
|
|
121
|
+
})
|
|
122
|
+
)
|
|
123
|
+
)
|
|
124
|
+
) : void 0;
|
|
125
|
+
return schemaUpdateUtils.updateSchema(
|
|
126
|
+
updateAclOp,
|
|
127
|
+
this.renameColumnSubModification.getSchemaUpdater(),
|
|
128
|
+
schemaUpdateUtils.updateModel(
|
|
129
|
+
updateConstraintFields,
|
|
130
|
+
updateIndexFields,
|
|
131
|
+
updateRelationReferences,
|
|
132
|
+
updateFieldName
|
|
133
|
+
)
|
|
134
|
+
);
|
|
135
|
+
}
|
|
136
|
+
describe() {
|
|
137
|
+
return { message: `Change field name ${this.data.entityName}.${this.data.fieldName} to ${this.data.newFieldName}` };
|
|
138
|
+
}
|
|
139
|
+
}
|
|
140
|
+
const updateFieldNameModification = ModificationHandler.createModificationType({
|
|
141
|
+
id: "updateFieldName",
|
|
142
|
+
handler: UpdateFieldNameModificationHandler
|
|
143
|
+
});
|
|
144
|
+
exports.UpdateFieldNameModificationHandler = UpdateFieldNameModificationHandler;
|
|
145
|
+
exports.updateFieldNameModification = updateFieldNameModification;
|
|
146
|
+
//# sourceMappingURL=UpdateFieldNameModification.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"UpdateFieldNameModification.cjs","sources":["../../../../../../packages/schema-migrations/src/modifications/fields/UpdateFieldNameModification.ts"],"sourcesContent":["import { MigrationBuilder } from '@contember/database-migrations'\nimport { Input, Model, Schema, Value } from '@contember/schema'\nimport {\n\tSchemaUpdater,\n\tupdateAcl,\n\tupdateAclEveryEntity,\n\tupdateAclEveryPredicate,\n\tupdateAclEveryRole,\n\tupdateAclFieldPermissions,\n\tupdateEntity,\n\tupdateEveryEntity,\n\tupdateEveryField,\n\tupdateModel,\n\tupdateSchema,\n} from '../utils/schemaUpdateUtils'\nimport {\n\tcreateModificationType,\n\tModificationHandler,\n\tModificationHandlerCreateSqlOptions,\n\tModificationHandlerOptions,\n} from '../ModificationHandler'\nimport { acceptFieldVisitor, PredicateDefinitionProcessor } from '@contember/schema-utils'\nimport {\n\tVERSION_ACL_PATCH,\n\tVERSION_UPDATE_CONSTRAINT_FIELDS,\n\tVERSION_UPDATE_INDEX_FIELDS,\n} from '../ModificationVersions'\nimport { changeValue } from '../utils/valueUtils'\nimport { updateColumnNameModification } from '../columns'\nimport { NoopModification } from '../NoopModification'\n\nexport class UpdateFieldNameModificationHandler implements ModificationHandler<UpdateFieldNameModificationData> {\n\tprivate renameColumnSubModification: ModificationHandler<any> = new NoopModification()\n\n\tconstructor(\n\t\tprivate readonly data: UpdateFieldNameModificationData,\n\t\tprivate readonly schema: Schema,\n\t\tprivate readonly options: ModificationHandlerOptions,\n\t) {\n\t\tif (this.data.columnName) {\n\t\t\tthis.renameColumnSubModification = updateColumnNameModification.createHandler({\n\t\t\t\tentityName: this.data.entityName,\n\t\t\t\tcolumnName: this.data.columnName,\n\t\t\t\tfieldName: this.data.fieldName,\n\t\t\t}, this.schema, this.options)\n\t\t}\n\t}\n\n\tpublic createSql(builder: MigrationBuilder, options: ModificationHandlerCreateSqlOptions): void {\n\t\tconst entity = this.schema.model.entities[this.data.entityName]\n\t\tif (entity.view) {\n\t\t\treturn\n\t\t}\n\t\tthis.renameColumnSubModification.createSql(builder, options)\n\t}\n\n\tpublic getSchemaUpdater(): SchemaUpdater {\n\t\tconst updateConstraintFields =\n\t\t\tthis.options.formatVersion >= VERSION_UPDATE_CONSTRAINT_FIELDS\n\t\t\t\t? updateEntity(this.data.entityName, ({ entity }) => {\n\t\t\t\t\treturn {\n\t\t\t\t\t\t...entity,\n\t\t\t\t\t\tunique: entity.unique.map(unique => ({\n\t\t\t\t\t\t\t...unique,\n\t\t\t\t\t\t\tfields: unique.fields.map(changeValue(this.data.fieldName, this.data.newFieldName)),\n\t\t\t\t\t\t})),\n\t\t\t\t\t}\n\t\t\t\t })\n\t\t\t\t: undefined\n\t\tconst updateIndexFields =\n\t\t\tthis.options.formatVersion >= VERSION_UPDATE_INDEX_FIELDS\n\t\t\t\t? updateEntity(this.data.entityName, ({ entity }) => {\n\t\t\t\t\treturn {\n\t\t\t\t\t\t...entity,\n\t\t\t\t\t\tindexes: entity.indexes.map(unique => ({\n\t\t\t\t\t\t\t...unique,\n\t\t\t\t\t\t\tfields: unique.fields.map(changeValue(this.data.fieldName, this.data.newFieldName)),\n\t\t\t\t\t\t})),\n\t\t\t\t\t}\n\t\t\t\t})\n\t\t\t\t: undefined\n\t\tconst updateRelationReferences = updateEveryEntity(\n\t\t\tupdateEveryField(({ field, entity }) => {\n\t\t\t\tconst isUpdatedRelation = (entity: Model.Entity, relation: Model.AnyRelation | null) => {\n\t\t\t\t\treturn entity.name === this.data.entityName && relation && relation.name === this.data.fieldName\n\t\t\t\t}\n\n\t\t\t\treturn acceptFieldVisitor<Model.AnyField>(this.schema.model, entity, field, {\n\t\t\t\t\tvisitColumn: ({ column }) => column,\n\t\t\t\t\tvisitManyHasOne: ({ targetEntity, relation, targetRelation }) => {\n\t\t\t\t\t\treturn isUpdatedRelation(targetEntity, targetRelation)\n\t\t\t\t\t\t\t? { ...relation, inversedBy: this.data.newFieldName }\n\t\t\t\t\t\t\t: relation\n\t\t\t\t\t},\n\t\t\t\t\tvisitOneHasMany: ({ relation, targetEntity, targetRelation }) => {\n\t\t\t\t\t\treturn isUpdatedRelation(targetEntity, targetRelation)\n\t\t\t\t\t\t\t? { ...relation, ownedBy: this.data.newFieldName }\n\t\t\t\t\t\t\t: relation\n\t\t\t\t\t},\n\t\t\t\t\tvisitOneHasOneOwning: ({ relation, targetEntity, targetRelation }) => {\n\t\t\t\t\t\treturn isUpdatedRelation(targetEntity, targetRelation)\n\t\t\t\t\t\t\t? { ...relation, inversedBy: this.data.newFieldName }\n\t\t\t\t\t\t\t: relation\n\t\t\t\t\t},\n\t\t\t\t\tvisitOneHasOneInverse: ({ relation, targetEntity, targetRelation }) => {\n\t\t\t\t\t\treturn isUpdatedRelation(targetEntity, targetRelation)\n\t\t\t\t\t\t\t? { ...relation, ownedBy: this.data.newFieldName }\n\t\t\t\t\t\t\t: relation\n\t\t\t\t\t},\n\t\t\t\t\tvisitManyHasManyOwning: ({ relation, targetEntity, targetRelation }) => {\n\t\t\t\t\t\treturn isUpdatedRelation(targetEntity, targetRelation)\n\t\t\t\t\t\t\t? { ...relation, inversedBy: this.data.newFieldName }\n\t\t\t\t\t\t\t: relation\n\t\t\t\t\t},\n\t\t\t\t\tvisitManyHasManyInverse: ({ relation, targetEntity, targetRelation }) => {\n\t\t\t\t\t\treturn isUpdatedRelation(targetEntity, targetRelation)\n\t\t\t\t\t\t\t? { ...relation, ownedBy: this.data.newFieldName }\n\t\t\t\t\t\t\t: relation\n\t\t\t\t\t},\n\t\t\t\t})\n\t\t\t}),\n\t\t)\n\t\tconst updateFieldName = updateEntity(this.data.entityName, ({ entity }) => {\n\t\t\tconst { [this.data.fieldName]: updated, ...fields } = entity.fields\n\t\t\treturn {\n\t\t\t\t...entity,\n\t\t\t\tfields: {\n\t\t\t\t\t...fields,\n\t\t\t\t\t[this.data.newFieldName]: { ...updated, name: this.data.newFieldName },\n\t\t\t\t},\n\t\t\t}\n\t\t})\n\t\tconst updateAclOp =\n\t\t\tthis.options.formatVersion >= VERSION_ACL_PATCH\n\t\t\t\t? updateAcl(\n\t\t\t\t\tupdateAclEveryRole(\n\t\t\t\t\t\tupdateAclEveryEntity(\n\t\t\t\t\t\t\tupdateAclFieldPermissions((permissions, entityName) => {\n\t\t\t\t\t\t\t\tif (entityName !== this.data.entityName) {\n\t\t\t\t\t\t\t\t\treturn permissions\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tif (!permissions[this.data.fieldName]) {\n\t\t\t\t\t\t\t\t\treturn permissions\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tconst { [this.data.fieldName]: field, ...other } = permissions\n\t\t\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\t\t\t[this.data.newFieldName]: field,\n\t\t\t\t\t\t\t\t\t...other,\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\tupdateAclEveryPredicate(({ predicate, entityName, schema }) => {\n\t\t\t\t\t\t\t\tconst processor = new PredicateDefinitionProcessor(schema.model)\n\t\t\t\t\t\t\t\tconst currentEntity = schema.model.entities[entityName]\n\t\t\t\t\t\t\t\treturn processor.process<Input.Condition<Value.FieldValue<never>> | string, never>(\n\t\t\t\t\t\t\t\t\tcurrentEntity,\n\t\t\t\t\t\t\t\t\tpredicate,\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\thandleColumn: ctx =>\n\t\t\t\t\t\t\t\t\t\t\tctx.entity.name === this.data.entityName && ctx.column.name === this.data.fieldName\n\t\t\t\t\t\t\t\t\t\t\t\t? [this.data.newFieldName, ctx.value]\n\t\t\t\t\t\t\t\t\t\t\t\t: ctx.value,\n\t\t\t\t\t\t\t\t\t\thandleRelation: ctx =>\n\t\t\t\t\t\t\t\t\t\t\tctx.entity.name === this.data.entityName && ctx.relation.name === this.data.fieldName\n\t\t\t\t\t\t\t\t\t\t\t\t? [this.data.newFieldName, ctx.value]\n\t\t\t\t\t\t\t\t\t\t\t\t: ctx.value,\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t),\n\t\t\t\t\t),\n\t\t\t\t )\n\t\t\t\t: undefined\n\t\treturn updateSchema(\n\t\t\tupdateAclOp,\n\t\t\tthis.renameColumnSubModification.getSchemaUpdater(),\n\t\t\tupdateModel(\n\t\t\t\tupdateConstraintFields,\n\t\t\t\tupdateIndexFields,\n\t\t\t\tupdateRelationReferences,\n\t\t\t\tupdateFieldName,\n\t\t\t),\n\t\t)\n\t}\n\n\tdescribe() {\n\t\treturn { message: `Change field name ${this.data.entityName}.${this.data.fieldName} to ${this.data.newFieldName}` }\n\t}\n}\n\nexport interface UpdateFieldNameModificationData {\n\tentityName: string\n\tfieldName: string\n\tnewFieldName: string\n\tcolumnName?: string\n}\n\nexport const updateFieldNameModification = createModificationType({\n\tid: 'updateFieldName',\n\thandler: UpdateFieldNameModificationHandler,\n})\n"],"names":["NoopModification","updateColumnNameModification","VERSION_UPDATE_CONSTRAINT_FIELDS","updateEntity","changeValue","VERSION_UPDATE_INDEX_FIELDS","updateEveryEntity","updateEveryField","entity","acceptFieldVisitor","VERSION_ACL_PATCH","updateAcl","updateAclEveryRole","updateAclEveryEntity","updateAclFieldPermissions","updateAclEveryPredicate","PredicateDefinitionProcessor","updateSchema","updateModel","createModificationType"],"mappings":"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"}
|
|
@@ -0,0 +1,146 @@
|
|
|
1
|
+
import { updateEntity, updateAcl, updateSchema, updateAclEveryRole, updateModel, updateEveryEntity, updateEveryField, updateAclEveryEntity, updateAclEveryPredicate, updateAclFieldPermissions } from "../utils/schemaUpdateUtils.js";
|
|
2
|
+
import { createModificationType } from "../ModificationHandler.js";
|
|
3
|
+
import { acceptFieldVisitor, PredicateDefinitionProcessor } from "@contember/schema-utils";
|
|
4
|
+
import { VERSION_UPDATE_CONSTRAINT_FIELDS, VERSION_UPDATE_INDEX_FIELDS, VERSION_ACL_PATCH } from "../ModificationVersions.js";
|
|
5
|
+
import { changeValue } from "../utils/valueUtils.js";
|
|
6
|
+
import "fast-deep-equal";
|
|
7
|
+
import "@contember/schema";
|
|
8
|
+
import "@contember/database-migrations";
|
|
9
|
+
import { updateColumnNameModification } from "../columns/UpdateColumnNameModification.js";
|
|
10
|
+
import { NoopModification } from "../NoopModification.js";
|
|
11
|
+
var __defProp = Object.defineProperty;
|
|
12
|
+
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
13
|
+
var __publicField = (obj, key, value) => __defNormalProp(obj, key + "", value);
|
|
14
|
+
class UpdateFieldNameModificationHandler {
|
|
15
|
+
constructor(data, schema, options) {
|
|
16
|
+
this.data = data;
|
|
17
|
+
this.schema = schema;
|
|
18
|
+
this.options = options;
|
|
19
|
+
__publicField(this, "renameColumnSubModification", new NoopModification());
|
|
20
|
+
if (this.data.columnName) {
|
|
21
|
+
this.renameColumnSubModification = updateColumnNameModification.createHandler({
|
|
22
|
+
entityName: this.data.entityName,
|
|
23
|
+
columnName: this.data.columnName,
|
|
24
|
+
fieldName: this.data.fieldName
|
|
25
|
+
}, this.schema, this.options);
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
createSql(builder, options) {
|
|
29
|
+
const entity = this.schema.model.entities[this.data.entityName];
|
|
30
|
+
if (entity.view) {
|
|
31
|
+
return;
|
|
32
|
+
}
|
|
33
|
+
this.renameColumnSubModification.createSql(builder, options);
|
|
34
|
+
}
|
|
35
|
+
getSchemaUpdater() {
|
|
36
|
+
const updateConstraintFields = this.options.formatVersion >= VERSION_UPDATE_CONSTRAINT_FIELDS ? updateEntity(this.data.entityName, ({ entity }) => {
|
|
37
|
+
return {
|
|
38
|
+
...entity,
|
|
39
|
+
unique: entity.unique.map((unique) => ({
|
|
40
|
+
...unique,
|
|
41
|
+
fields: unique.fields.map(changeValue(this.data.fieldName, this.data.newFieldName))
|
|
42
|
+
}))
|
|
43
|
+
};
|
|
44
|
+
}) : void 0;
|
|
45
|
+
const updateIndexFields = this.options.formatVersion >= VERSION_UPDATE_INDEX_FIELDS ? updateEntity(this.data.entityName, ({ entity }) => {
|
|
46
|
+
return {
|
|
47
|
+
...entity,
|
|
48
|
+
indexes: entity.indexes.map((unique) => ({
|
|
49
|
+
...unique,
|
|
50
|
+
fields: unique.fields.map(changeValue(this.data.fieldName, this.data.newFieldName))
|
|
51
|
+
}))
|
|
52
|
+
};
|
|
53
|
+
}) : void 0;
|
|
54
|
+
const updateRelationReferences = updateEveryEntity(
|
|
55
|
+
updateEveryField(({ field, entity }) => {
|
|
56
|
+
const isUpdatedRelation = (entity2, relation) => {
|
|
57
|
+
return entity2.name === this.data.entityName && relation && relation.name === this.data.fieldName;
|
|
58
|
+
};
|
|
59
|
+
return acceptFieldVisitor(this.schema.model, entity, field, {
|
|
60
|
+
visitColumn: ({ column }) => column,
|
|
61
|
+
visitManyHasOne: ({ targetEntity, relation, targetRelation }) => {
|
|
62
|
+
return isUpdatedRelation(targetEntity, targetRelation) ? { ...relation, inversedBy: this.data.newFieldName } : relation;
|
|
63
|
+
},
|
|
64
|
+
visitOneHasMany: ({ relation, targetEntity, targetRelation }) => {
|
|
65
|
+
return isUpdatedRelation(targetEntity, targetRelation) ? { ...relation, ownedBy: this.data.newFieldName } : relation;
|
|
66
|
+
},
|
|
67
|
+
visitOneHasOneOwning: ({ relation, targetEntity, targetRelation }) => {
|
|
68
|
+
return isUpdatedRelation(targetEntity, targetRelation) ? { ...relation, inversedBy: this.data.newFieldName } : relation;
|
|
69
|
+
},
|
|
70
|
+
visitOneHasOneInverse: ({ relation, targetEntity, targetRelation }) => {
|
|
71
|
+
return isUpdatedRelation(targetEntity, targetRelation) ? { ...relation, ownedBy: this.data.newFieldName } : relation;
|
|
72
|
+
},
|
|
73
|
+
visitManyHasManyOwning: ({ relation, targetEntity, targetRelation }) => {
|
|
74
|
+
return isUpdatedRelation(targetEntity, targetRelation) ? { ...relation, inversedBy: this.data.newFieldName } : relation;
|
|
75
|
+
},
|
|
76
|
+
visitManyHasManyInverse: ({ relation, targetEntity, targetRelation }) => {
|
|
77
|
+
return isUpdatedRelation(targetEntity, targetRelation) ? { ...relation, ownedBy: this.data.newFieldName } : relation;
|
|
78
|
+
}
|
|
79
|
+
});
|
|
80
|
+
})
|
|
81
|
+
);
|
|
82
|
+
const updateFieldName = updateEntity(this.data.entityName, ({ entity }) => {
|
|
83
|
+
const { [this.data.fieldName]: updated, ...fields } = entity.fields;
|
|
84
|
+
return {
|
|
85
|
+
...entity,
|
|
86
|
+
fields: {
|
|
87
|
+
...fields,
|
|
88
|
+
[this.data.newFieldName]: { ...updated, name: this.data.newFieldName }
|
|
89
|
+
}
|
|
90
|
+
};
|
|
91
|
+
});
|
|
92
|
+
const updateAclOp = this.options.formatVersion >= VERSION_ACL_PATCH ? updateAcl(
|
|
93
|
+
updateAclEveryRole(
|
|
94
|
+
updateAclEveryEntity(
|
|
95
|
+
updateAclFieldPermissions((permissions, entityName) => {
|
|
96
|
+
if (entityName !== this.data.entityName) {
|
|
97
|
+
return permissions;
|
|
98
|
+
}
|
|
99
|
+
if (!permissions[this.data.fieldName]) {
|
|
100
|
+
return permissions;
|
|
101
|
+
}
|
|
102
|
+
const { [this.data.fieldName]: field, ...other } = permissions;
|
|
103
|
+
return {
|
|
104
|
+
[this.data.newFieldName]: field,
|
|
105
|
+
...other
|
|
106
|
+
};
|
|
107
|
+
}),
|
|
108
|
+
updateAclEveryPredicate(({ predicate, entityName, schema }) => {
|
|
109
|
+
const processor = new PredicateDefinitionProcessor(schema.model);
|
|
110
|
+
const currentEntity = schema.model.entities[entityName];
|
|
111
|
+
return processor.process(
|
|
112
|
+
currentEntity,
|
|
113
|
+
predicate,
|
|
114
|
+
{
|
|
115
|
+
handleColumn: (ctx) => ctx.entity.name === this.data.entityName && ctx.column.name === this.data.fieldName ? [this.data.newFieldName, ctx.value] : ctx.value,
|
|
116
|
+
handleRelation: (ctx) => ctx.entity.name === this.data.entityName && ctx.relation.name === this.data.fieldName ? [this.data.newFieldName, ctx.value] : ctx.value
|
|
117
|
+
}
|
|
118
|
+
);
|
|
119
|
+
})
|
|
120
|
+
)
|
|
121
|
+
)
|
|
122
|
+
) : void 0;
|
|
123
|
+
return updateSchema(
|
|
124
|
+
updateAclOp,
|
|
125
|
+
this.renameColumnSubModification.getSchemaUpdater(),
|
|
126
|
+
updateModel(
|
|
127
|
+
updateConstraintFields,
|
|
128
|
+
updateIndexFields,
|
|
129
|
+
updateRelationReferences,
|
|
130
|
+
updateFieldName
|
|
131
|
+
)
|
|
132
|
+
);
|
|
133
|
+
}
|
|
134
|
+
describe() {
|
|
135
|
+
return { message: `Change field name ${this.data.entityName}.${this.data.fieldName} to ${this.data.newFieldName}` };
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
const updateFieldNameModification = createModificationType({
|
|
139
|
+
id: "updateFieldName",
|
|
140
|
+
handler: UpdateFieldNameModificationHandler
|
|
141
|
+
});
|
|
142
|
+
export {
|
|
143
|
+
UpdateFieldNameModificationHandler,
|
|
144
|
+
updateFieldNameModification
|
|
145
|
+
};
|
|
146
|
+
//# sourceMappingURL=UpdateFieldNameModification.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"UpdateFieldNameModification.js","sources":["../../../../../../packages/schema-migrations/src/modifications/fields/UpdateFieldNameModification.ts"],"sourcesContent":["import { MigrationBuilder } from '@contember/database-migrations'\nimport { Input, Model, Schema, Value } from '@contember/schema'\nimport {\n\tSchemaUpdater,\n\tupdateAcl,\n\tupdateAclEveryEntity,\n\tupdateAclEveryPredicate,\n\tupdateAclEveryRole,\n\tupdateAclFieldPermissions,\n\tupdateEntity,\n\tupdateEveryEntity,\n\tupdateEveryField,\n\tupdateModel,\n\tupdateSchema,\n} from '../utils/schemaUpdateUtils'\nimport {\n\tcreateModificationType,\n\tModificationHandler,\n\tModificationHandlerCreateSqlOptions,\n\tModificationHandlerOptions,\n} from '../ModificationHandler'\nimport { acceptFieldVisitor, PredicateDefinitionProcessor } from '@contember/schema-utils'\nimport {\n\tVERSION_ACL_PATCH,\n\tVERSION_UPDATE_CONSTRAINT_FIELDS,\n\tVERSION_UPDATE_INDEX_FIELDS,\n} from '../ModificationVersions'\nimport { changeValue } from '../utils/valueUtils'\nimport { updateColumnNameModification } from '../columns'\nimport { NoopModification } from '../NoopModification'\n\nexport class UpdateFieldNameModificationHandler implements ModificationHandler<UpdateFieldNameModificationData> {\n\tprivate renameColumnSubModification: ModificationHandler<any> = new NoopModification()\n\n\tconstructor(\n\t\tprivate readonly data: UpdateFieldNameModificationData,\n\t\tprivate readonly schema: Schema,\n\t\tprivate readonly options: ModificationHandlerOptions,\n\t) {\n\t\tif (this.data.columnName) {\n\t\t\tthis.renameColumnSubModification = updateColumnNameModification.createHandler({\n\t\t\t\tentityName: this.data.entityName,\n\t\t\t\tcolumnName: this.data.columnName,\n\t\t\t\tfieldName: this.data.fieldName,\n\t\t\t}, this.schema, this.options)\n\t\t}\n\t}\n\n\tpublic createSql(builder: MigrationBuilder, options: ModificationHandlerCreateSqlOptions): void {\n\t\tconst entity = this.schema.model.entities[this.data.entityName]\n\t\tif (entity.view) {\n\t\t\treturn\n\t\t}\n\t\tthis.renameColumnSubModification.createSql(builder, options)\n\t}\n\n\tpublic getSchemaUpdater(): SchemaUpdater {\n\t\tconst updateConstraintFields =\n\t\t\tthis.options.formatVersion >= VERSION_UPDATE_CONSTRAINT_FIELDS\n\t\t\t\t? updateEntity(this.data.entityName, ({ entity }) => {\n\t\t\t\t\treturn {\n\t\t\t\t\t\t...entity,\n\t\t\t\t\t\tunique: entity.unique.map(unique => ({\n\t\t\t\t\t\t\t...unique,\n\t\t\t\t\t\t\tfields: unique.fields.map(changeValue(this.data.fieldName, this.data.newFieldName)),\n\t\t\t\t\t\t})),\n\t\t\t\t\t}\n\t\t\t\t })\n\t\t\t\t: undefined\n\t\tconst updateIndexFields =\n\t\t\tthis.options.formatVersion >= VERSION_UPDATE_INDEX_FIELDS\n\t\t\t\t? updateEntity(this.data.entityName, ({ entity }) => {\n\t\t\t\t\treturn {\n\t\t\t\t\t\t...entity,\n\t\t\t\t\t\tindexes: entity.indexes.map(unique => ({\n\t\t\t\t\t\t\t...unique,\n\t\t\t\t\t\t\tfields: unique.fields.map(changeValue(this.data.fieldName, this.data.newFieldName)),\n\t\t\t\t\t\t})),\n\t\t\t\t\t}\n\t\t\t\t})\n\t\t\t\t: undefined\n\t\tconst updateRelationReferences = updateEveryEntity(\n\t\t\tupdateEveryField(({ field, entity }) => {\n\t\t\t\tconst isUpdatedRelation = (entity: Model.Entity, relation: Model.AnyRelation | null) => {\n\t\t\t\t\treturn entity.name === this.data.entityName && relation && relation.name === this.data.fieldName\n\t\t\t\t}\n\n\t\t\t\treturn acceptFieldVisitor<Model.AnyField>(this.schema.model, entity, field, {\n\t\t\t\t\tvisitColumn: ({ column }) => column,\n\t\t\t\t\tvisitManyHasOne: ({ targetEntity, relation, targetRelation }) => {\n\t\t\t\t\t\treturn isUpdatedRelation(targetEntity, targetRelation)\n\t\t\t\t\t\t\t? { ...relation, inversedBy: this.data.newFieldName }\n\t\t\t\t\t\t\t: relation\n\t\t\t\t\t},\n\t\t\t\t\tvisitOneHasMany: ({ relation, targetEntity, targetRelation }) => {\n\t\t\t\t\t\treturn isUpdatedRelation(targetEntity, targetRelation)\n\t\t\t\t\t\t\t? { ...relation, ownedBy: this.data.newFieldName }\n\t\t\t\t\t\t\t: relation\n\t\t\t\t\t},\n\t\t\t\t\tvisitOneHasOneOwning: ({ relation, targetEntity, targetRelation }) => {\n\t\t\t\t\t\treturn isUpdatedRelation(targetEntity, targetRelation)\n\t\t\t\t\t\t\t? { ...relation, inversedBy: this.data.newFieldName }\n\t\t\t\t\t\t\t: relation\n\t\t\t\t\t},\n\t\t\t\t\tvisitOneHasOneInverse: ({ relation, targetEntity, targetRelation }) => {\n\t\t\t\t\t\treturn isUpdatedRelation(targetEntity, targetRelation)\n\t\t\t\t\t\t\t? { ...relation, ownedBy: this.data.newFieldName }\n\t\t\t\t\t\t\t: relation\n\t\t\t\t\t},\n\t\t\t\t\tvisitManyHasManyOwning: ({ relation, targetEntity, targetRelation }) => {\n\t\t\t\t\t\treturn isUpdatedRelation(targetEntity, targetRelation)\n\t\t\t\t\t\t\t? { ...relation, inversedBy: this.data.newFieldName }\n\t\t\t\t\t\t\t: relation\n\t\t\t\t\t},\n\t\t\t\t\tvisitManyHasManyInverse: ({ relation, targetEntity, targetRelation }) => {\n\t\t\t\t\t\treturn isUpdatedRelation(targetEntity, targetRelation)\n\t\t\t\t\t\t\t? { ...relation, ownedBy: this.data.newFieldName }\n\t\t\t\t\t\t\t: relation\n\t\t\t\t\t},\n\t\t\t\t})\n\t\t\t}),\n\t\t)\n\t\tconst updateFieldName = updateEntity(this.data.entityName, ({ entity }) => {\n\t\t\tconst { [this.data.fieldName]: updated, ...fields } = entity.fields\n\t\t\treturn {\n\t\t\t\t...entity,\n\t\t\t\tfields: {\n\t\t\t\t\t...fields,\n\t\t\t\t\t[this.data.newFieldName]: { ...updated, name: this.data.newFieldName },\n\t\t\t\t},\n\t\t\t}\n\t\t})\n\t\tconst updateAclOp =\n\t\t\tthis.options.formatVersion >= VERSION_ACL_PATCH\n\t\t\t\t? updateAcl(\n\t\t\t\t\tupdateAclEveryRole(\n\t\t\t\t\t\tupdateAclEveryEntity(\n\t\t\t\t\t\t\tupdateAclFieldPermissions((permissions, entityName) => {\n\t\t\t\t\t\t\t\tif (entityName !== this.data.entityName) {\n\t\t\t\t\t\t\t\t\treturn permissions\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tif (!permissions[this.data.fieldName]) {\n\t\t\t\t\t\t\t\t\treturn permissions\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tconst { [this.data.fieldName]: field, ...other } = permissions\n\t\t\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\t\t\t[this.data.newFieldName]: field,\n\t\t\t\t\t\t\t\t\t...other,\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\tupdateAclEveryPredicate(({ predicate, entityName, schema }) => {\n\t\t\t\t\t\t\t\tconst processor = new PredicateDefinitionProcessor(schema.model)\n\t\t\t\t\t\t\t\tconst currentEntity = schema.model.entities[entityName]\n\t\t\t\t\t\t\t\treturn processor.process<Input.Condition<Value.FieldValue<never>> | string, never>(\n\t\t\t\t\t\t\t\t\tcurrentEntity,\n\t\t\t\t\t\t\t\t\tpredicate,\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\thandleColumn: ctx =>\n\t\t\t\t\t\t\t\t\t\t\tctx.entity.name === this.data.entityName && ctx.column.name === this.data.fieldName\n\t\t\t\t\t\t\t\t\t\t\t\t? [this.data.newFieldName, ctx.value]\n\t\t\t\t\t\t\t\t\t\t\t\t: ctx.value,\n\t\t\t\t\t\t\t\t\t\thandleRelation: ctx =>\n\t\t\t\t\t\t\t\t\t\t\tctx.entity.name === this.data.entityName && ctx.relation.name === this.data.fieldName\n\t\t\t\t\t\t\t\t\t\t\t\t? [this.data.newFieldName, ctx.value]\n\t\t\t\t\t\t\t\t\t\t\t\t: ctx.value,\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t),\n\t\t\t\t\t),\n\t\t\t\t )\n\t\t\t\t: undefined\n\t\treturn updateSchema(\n\t\t\tupdateAclOp,\n\t\t\tthis.renameColumnSubModification.getSchemaUpdater(),\n\t\t\tupdateModel(\n\t\t\t\tupdateConstraintFields,\n\t\t\t\tupdateIndexFields,\n\t\t\t\tupdateRelationReferences,\n\t\t\t\tupdateFieldName,\n\t\t\t),\n\t\t)\n\t}\n\n\tdescribe() {\n\t\treturn { message: `Change field name ${this.data.entityName}.${this.data.fieldName} to ${this.data.newFieldName}` }\n\t}\n}\n\nexport interface UpdateFieldNameModificationData {\n\tentityName: string\n\tfieldName: string\n\tnewFieldName: string\n\tcolumnName?: string\n}\n\nexport const updateFieldNameModification = createModificationType({\n\tid: 'updateFieldName',\n\thandler: UpdateFieldNameModificationHandler,\n})\n"],"names":["entity"],"mappings":";;;;;;;;;;;;;AA+BO,MAAM,mCAAmG;AAAA,EAG/G,YACkB,MACA,QACA,SAChB;AAHgB,SAAA,OAAA;AACA,SAAA,SAAA;AACA,SAAA,UAAA;AALV,kBAAA,MAAA,+BAAwD,IAAI,iBAAiB,CAAA;AAOhF,QAAA,KAAK,KAAK,YAAY;AACpB,WAAA,8BAA8B,6BAA6B,cAAc;AAAA,QAC7E,YAAY,KAAK,KAAK;AAAA,QACtB,YAAY,KAAK,KAAK;AAAA,QACtB,WAAW,KAAK,KAAK;AAAA,MACnB,GAAA,KAAK,QAAQ,KAAK,OAAO;AAAA,IAC7B;AAAA,EACD;AAAA,EAEO,UAAU,SAA2B,SAAoD;AAC/F,UAAM,SAAS,KAAK,OAAO,MAAM,SAAS,KAAK,KAAK,UAAU;AAC9D,QAAI,OAAO,MAAM;AAChB;AAAA,IACD;AACK,SAAA,4BAA4B,UAAU,SAAS,OAAO;AAAA,EAC5D;AAAA,EAEO,mBAAkC;AACxC,UAAM,yBACL,KAAK,QAAQ,iBAAiB,mCAC3B,aAAa,KAAK,KAAK,YAAY,CAAC,EAAE,OAAA,MAAa;AAC7C,aAAA;AAAA,QACN,GAAG;AAAA,QACH,QAAQ,OAAO,OAAO,IAAI,CAAW,YAAA;AAAA,UACpC,GAAG;AAAA,UACH,QAAQ,OAAO,OAAO,IAAI,YAAY,KAAK,KAAK,WAAW,KAAK,KAAK,YAAY,CAAC;AAAA,QAAA,EACjF;AAAA,MAAA;AAAA,IACH,CACE,IACD;AACJ,UAAM,oBACL,KAAK,QAAQ,iBAAiB,8BAC3B,aAAa,KAAK,KAAK,YAAY,CAAC,EAAE,OAAA,MAAa;AAC7C,aAAA;AAAA,QACN,GAAG;AAAA,QACH,SAAS,OAAO,QAAQ,IAAI,CAAW,YAAA;AAAA,UACtC,GAAG;AAAA,UACH,QAAQ,OAAO,OAAO,IAAI,YAAY,KAAK,KAAK,WAAW,KAAK,KAAK,YAAY,CAAC;AAAA,QAAA,EACjF;AAAA,MAAA;AAAA,IACH,CACA,IACC;AACJ,UAAM,2BAA2B;AAAA,MAChC,iBAAiB,CAAC,EAAE,OAAO,aAAa;AACjC,cAAA,oBAAoB,CAACA,SAAsB,aAAuC;AAChFA,iBAAAA,QAAO,SAAS,KAAK,KAAK,cAAc,YAAY,SAAS,SAAS,KAAK,KAAK;AAAA,QAAA;AAGxF,eAAO,mBAAmC,KAAK,OAAO,OAAO,QAAQ,OAAO;AAAA,UAC3E,aAAa,CAAC,EAAE,OAAA,MAAa;AAAA,UAC7B,iBAAiB,CAAC,EAAE,cAAc,UAAU,qBAAqB;AACzD,mBAAA,kBAAkB,cAAc,cAAc,IAClD,EAAE,GAAG,UAAU,YAAY,KAAK,KAAK,aAAA,IACrC;AAAA,UACJ;AAAA,UACA,iBAAiB,CAAC,EAAE,UAAU,cAAc,qBAAqB;AACzD,mBAAA,kBAAkB,cAAc,cAAc,IAClD,EAAE,GAAG,UAAU,SAAS,KAAK,KAAK,aAAA,IAClC;AAAA,UACJ;AAAA,UACA,sBAAsB,CAAC,EAAE,UAAU,cAAc,qBAAqB;AAC9D,mBAAA,kBAAkB,cAAc,cAAc,IAClD,EAAE,GAAG,UAAU,YAAY,KAAK,KAAK,aAAA,IACrC;AAAA,UACJ;AAAA,UACA,uBAAuB,CAAC,EAAE,UAAU,cAAc,qBAAqB;AAC/D,mBAAA,kBAAkB,cAAc,cAAc,IAClD,EAAE,GAAG,UAAU,SAAS,KAAK,KAAK,aAAA,IAClC;AAAA,UACJ;AAAA,UACA,wBAAwB,CAAC,EAAE,UAAU,cAAc,qBAAqB;AAChE,mBAAA,kBAAkB,cAAc,cAAc,IAClD,EAAE,GAAG,UAAU,YAAY,KAAK,KAAK,aAAA,IACrC;AAAA,UACJ;AAAA,UACA,yBAAyB,CAAC,EAAE,UAAU,cAAc,qBAAqB;AACjE,mBAAA,kBAAkB,cAAc,cAAc,IAClD,EAAE,GAAG,UAAU,SAAS,KAAK,KAAK,aAAA,IAClC;AAAA,UACJ;AAAA,QAAA,CACA;AAAA,MAAA,CACD;AAAA,IAAA;AAEI,UAAA,kBAAkB,aAAa,KAAK,KAAK,YAAY,CAAC,EAAE,aAAa;AACpE,YAAA,EAAE,CAAC,KAAK,KAAK,SAAS,GAAG,SAAS,GAAG,OAAO,IAAI,OAAO;AACtD,aAAA;AAAA,QACN,GAAG;AAAA,QACH,QAAQ;AAAA,UACP,GAAG;AAAA,UACH,CAAC,KAAK,KAAK,YAAY,GAAG,EAAE,GAAG,SAAS,MAAM,KAAK,KAAK,aAAa;AAAA,QACtE;AAAA,MAAA;AAAA,IACD,CACA;AACD,UAAM,cACL,KAAK,QAAQ,iBAAiB,oBAC3B;AAAA,MACD;AAAA,QACC;AAAA,UACC,0BAA0B,CAAC,aAAa,eAAe;AAClD,gBAAA,eAAe,KAAK,KAAK,YAAY;AACjC,qBAAA;AAAA,YACR;AACA,gBAAI,CAAC,YAAY,KAAK,KAAK,SAAS,GAAG;AAC/B,qBAAA;AAAA,YACR;AACM,kBAAA,EAAE,CAAC,KAAK,KAAK,SAAS,GAAG,OAAO,GAAG,MAAU,IAAA;AAC5C,mBAAA;AAAA,cACN,CAAC,KAAK,KAAK,YAAY,GAAG;AAAA,cAC1B,GAAG;AAAA,YAAA;AAAA,UACJ,CACA;AAAA,UACD,wBAAwB,CAAC,EAAE,WAAW,YAAY,aAAa;AAC9D,kBAAM,YAAY,IAAI,6BAA6B,OAAO,KAAK;AAC/D,kBAAM,gBAAgB,OAAO,MAAM,SAAS,UAAU;AACtD,mBAAO,UAAU;AAAA,cAChB;AAAA,cACA;AAAA,cACA;AAAA,gBACC,cAAc,SACb,IAAI,OAAO,SAAS,KAAK,KAAK,cAAc,IAAI,OAAO,SAAS,KAAK,KAAK,YACvE,CAAC,KAAK,KAAK,cAAc,IAAI,KAAK,IAClC,IAAI;AAAA,gBACR,gBAAgB,SACf,IAAI,OAAO,SAAS,KAAK,KAAK,cAAc,IAAI,SAAS,SAAS,KAAK,KAAK,YACzE,CAAC,KAAK,KAAK,cAAc,IAAI,KAAK,IAClC,IAAI;AAAA,cACT;AAAA,YAAA;AAAA,UACD,CACA;AAAA,QACF;AAAA,MACD;AAAA,IAEC,IAAA;AACG,WAAA;AAAA,MACN;AAAA,MACA,KAAK,4BAA4B,iBAAiB;AAAA,MAClD;AAAA,QACC;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,MACD;AAAA,IAAA;AAAA,EAEF;AAAA,EAEA,WAAW;AACV,WAAO,EAAE,SAAS,qBAAqB,KAAK,KAAK,UAAU,IAAI,KAAK,KAAK,SAAS,OAAO,KAAK,KAAK,YAAY;EAChH;AACD;AASO,MAAM,8BAA8B,uBAAuB;AAAA,EACjE,IAAI;AAAA,EACJ,SAAS;AACV,CAAC;"}
|
|
@@ -0,0 +1,63 @@
|
|
|
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 dbHelpers = require("../../utils/dbHelpers.cjs");
|
|
6
|
+
const utils = require("./utils.cjs");
|
|
7
|
+
const deepEqual = require("fast-deep-equal");
|
|
8
|
+
class CreateIndexModificationHandler {
|
|
9
|
+
constructor(data, schema) {
|
|
10
|
+
this.data = data;
|
|
11
|
+
this.schema = schema;
|
|
12
|
+
}
|
|
13
|
+
createSql(builder, { databaseMetadata, invalidateDatabaseMetadata }) {
|
|
14
|
+
const entity = this.schema.model.entities[this.data.entityName];
|
|
15
|
+
if (entity.view) {
|
|
16
|
+
return;
|
|
17
|
+
}
|
|
18
|
+
const fields = this.data.index.fields;
|
|
19
|
+
const columns = utils.getIndexColumns({
|
|
20
|
+
fields,
|
|
21
|
+
entity,
|
|
22
|
+
model: this.schema.model
|
|
23
|
+
});
|
|
24
|
+
const tableNameId = dbHelpers.wrapIdentifier(entity.tableName);
|
|
25
|
+
const columnNameIds = columns.map(dbHelpers.wrapIdentifier);
|
|
26
|
+
builder.sql(`CREATE INDEX ON ${tableNameId} (${columnNameIds.join(", ")})`);
|
|
27
|
+
invalidateDatabaseMetadata();
|
|
28
|
+
}
|
|
29
|
+
getSchemaUpdater() {
|
|
30
|
+
return schemaUpdateUtils.updateModel(
|
|
31
|
+
schemaUpdateUtils.updateEntity(this.data.entityName, ({ entity }) => ({
|
|
32
|
+
...entity,
|
|
33
|
+
indexes: [
|
|
34
|
+
...entity.indexes,
|
|
35
|
+
this.data.index
|
|
36
|
+
]
|
|
37
|
+
}))
|
|
38
|
+
);
|
|
39
|
+
}
|
|
40
|
+
describe() {
|
|
41
|
+
return {
|
|
42
|
+
message: `Create index(${this.data.index.fields.join(", ")}) on entity ${this.data.entityName}`
|
|
43
|
+
};
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
const createIndexModification = ModificationHandler.createModificationType({
|
|
47
|
+
id: "createIndex",
|
|
48
|
+
handler: CreateIndexModificationHandler
|
|
49
|
+
});
|
|
50
|
+
class CreateIndexDiffer {
|
|
51
|
+
createDiff(originalSchema, updatedSchema) {
|
|
52
|
+
return Object.values(updatedSchema.model.entities).flatMap(
|
|
53
|
+
(entity) => entity.indexes.filter((it) => !originalSchema.model.entities[entity.name].indexes.find((idx) => deepEqual(idx.fields, it.fields))).map((index) => createIndexModification.createModification({
|
|
54
|
+
entityName: entity.name,
|
|
55
|
+
index
|
|
56
|
+
}))
|
|
57
|
+
);
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
exports.CreateIndexDiffer = CreateIndexDiffer;
|
|
61
|
+
exports.CreateIndexModificationHandler = CreateIndexModificationHandler;
|
|
62
|
+
exports.createIndexModification = createIndexModification;
|
|
63
|
+
//# sourceMappingURL=CreateIndexModification.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CreateIndexModification.cjs","sources":["../../../../../../packages/schema-migrations/src/modifications/indexes/CreateIndexModification.ts"],"sourcesContent":["import { MigrationBuilder } from '@contember/database-migrations'\nimport { Model, Schema } from '@contember/schema'\nimport { SchemaUpdater, updateEntity, updateModel } from '../utils/schemaUpdateUtils'\nimport {\n\tcreateModificationType,\n\tDiffer,\n\tModificationHandler,\n\tModificationHandlerCreateSqlOptions,\n} from '../ModificationHandler'\nimport { wrapIdentifier } from '../../utils/dbHelpers'\nimport { getIndexColumns } from './utils'\nimport deepEqual from 'fast-deep-equal'\n\nexport class CreateIndexModificationHandler implements ModificationHandler<CreateIndexModificationData> {\n\tconstructor(private readonly data: CreateIndexModificationData, private readonly schema: Schema) {}\n\n\tpublic createSql(builder: MigrationBuilder, { databaseMetadata, invalidateDatabaseMetadata }: ModificationHandlerCreateSqlOptions): void {\n\t\tconst entity = this.schema.model.entities[this.data.entityName]\n\t\tif (entity.view) {\n\t\t\treturn\n\t\t}\n\t\tconst fields = this.data.index.fields\n\t\tconst columns = getIndexColumns({\n\t\t\tfields,\n\t\t\tentity,\n\t\t\tmodel: this.schema.model,\n\t\t})\n\n\t\tconst tableNameId = wrapIdentifier(entity.tableName)\n\t\tconst columnNameIds = columns.map(wrapIdentifier)\n\n\t\tbuilder.sql(`CREATE INDEX ON ${tableNameId} (${columnNameIds.join(', ')})`)\n\n\t\tinvalidateDatabaseMetadata()\n\t}\n\n\tpublic getSchemaUpdater(): SchemaUpdater {\n\t\treturn updateModel(\n\t\t\tupdateEntity(this.data.entityName, ({ entity }) => ({\n\t\t\t\t...entity,\n\t\t\t\tindexes: [\n\t\t\t\t\t...entity.indexes,\n\t\t\t\t\tthis.data.index,\n\t\t\t\t],\n\t\t\t})),\n\t\t)\n\t}\n\n\tdescribe() {\n\t\treturn {\n\t\t\tmessage: `Create index(${this.data.index.fields.join(', ')}) on entity ${this.data.entityName}`,\n\t\t}\n\t}\n}\n\nexport const createIndexModification = createModificationType({\n\tid: 'createIndex',\n\thandler: CreateIndexModificationHandler,\n})\n\nexport interface CreateIndexModificationData {\n\tentityName: string\n\tindex: Model.Index\n}\n\nexport class CreateIndexDiffer implements Differ {\n\tcreateDiff(originalSchema: Schema, updatedSchema: Schema) {\n\t\treturn Object.values(updatedSchema.model.entities).flatMap(entity =>\n\t\t\tentity.indexes\n\t\t\t\t.filter(it => !originalSchema.model.entities[entity.name].indexes.find(idx => deepEqual(idx.fields, it.fields)))\n\t\t\t\t.map(index => createIndexModification.createModification({\n\t\t\t\t\tentityName: entity.name,\n\t\t\t\t\tindex,\n\t\t\t\t})),\n\t\t)\n\t}\n}\n"],"names":["getIndexColumns","wrapIdentifier","updateModel","updateEntity","createModificationType"],"mappings":";;;;;;;AAaO,MAAM,+BAA2F;AAAA,EACvG,YAA6B,MAAoD,QAAgB;AAApE,SAAA,OAAA;AAAoD,SAAA,SAAA;AAAA,EAAiB;AAAA,EAE3F,UAAU,SAA2B,EAAE,kBAAkB,8BAAyE;AACxI,UAAM,SAAS,KAAK,OAAO,MAAM,SAAS,KAAK,KAAK,UAAU;AAC9D,QAAI,OAAO,MAAM;AAChB;AAAA,IACD;AACM,UAAA,SAAS,KAAK,KAAK,MAAM;AAC/B,UAAM,UAAUA,MAAAA,gBAAgB;AAAA,MAC/B;AAAA,MACA;AAAA,MACA,OAAO,KAAK,OAAO;AAAA,IAAA,CACnB;AAEK,UAAA,cAAcC,UAAAA,eAAe,OAAO,SAAS;AAC7C,UAAA,gBAAgB,QAAQ,IAAIA,UAAc,cAAA;AAExC,YAAA,IAAI,mBAAmB,WAAW,KAAK,cAAc,KAAK,IAAI,CAAC,GAAG;AAE/C;EAC5B;AAAA,EAEO,mBAAkC;AACjC,WAAAC,kBAAA;AAAA,MACNC,+BAAa,KAAK,KAAK,YAAY,CAAC,EAAE,cAAc;AAAA,QACnD,GAAG;AAAA,QACH,SAAS;AAAA,UACR,GAAG,OAAO;AAAA,UACV,KAAK,KAAK;AAAA,QACX;AAAA,MAAA,EACC;AAAA,IAAA;AAAA,EAEJ;AAAA,EAEA,WAAW;AACH,WAAA;AAAA,MACN,SAAS,gBAAgB,KAAK,KAAK,MAAM,OAAO,KAAK,IAAI,CAAC,eAAe,KAAK,KAAK,UAAU;AAAA,IAAA;AAAA,EAE/F;AACD;AAEO,MAAM,0BAA0BC,oBAAAA,uBAAuB;AAAA,EAC7D,IAAI;AAAA,EACJ,SAAS;AACV,CAAC;AAOM,MAAM,kBAAoC;AAAA,EAChD,WAAW,gBAAwB,eAAuB;AACzD,WAAO,OAAO,OAAO,cAAc,MAAM,QAAQ,EAAE;AAAA,MAAQ,CAAA,WAC1D,OAAO,QACL,OAAO,CAAA,OAAM,CAAC,eAAe,MAAM,SAAS,OAAO,IAAI,EAAE,QAAQ,KAAK,CAAO,QAAA,UAAU,IAAI,QAAQ,GAAG,MAAM,CAAC,CAAC,EAC9G,IAAI,CAAS,UAAA,wBAAwB,mBAAmB;AAAA,QACxD,YAAY,OAAO;AAAA,QACnB;AAAA,MAAA,CACA,CAAC;AAAA,IAAA;AAAA,EAEL;AACD;;;;"}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import { updateModel, updateEntity } from "../utils/schemaUpdateUtils.js";
|
|
2
|
+
import { createModificationType } from "../ModificationHandler.js";
|
|
3
|
+
import { wrapIdentifier } from "../../utils/dbHelpers.js";
|
|
4
|
+
import { getIndexColumns } from "./utils.js";
|
|
5
|
+
import deepEqual from "fast-deep-equal";
|
|
6
|
+
class CreateIndexModificationHandler {
|
|
7
|
+
constructor(data, schema) {
|
|
8
|
+
this.data = data;
|
|
9
|
+
this.schema = schema;
|
|
10
|
+
}
|
|
11
|
+
createSql(builder, { databaseMetadata, invalidateDatabaseMetadata }) {
|
|
12
|
+
const entity = this.schema.model.entities[this.data.entityName];
|
|
13
|
+
if (entity.view) {
|
|
14
|
+
return;
|
|
15
|
+
}
|
|
16
|
+
const fields = this.data.index.fields;
|
|
17
|
+
const columns = getIndexColumns({
|
|
18
|
+
fields,
|
|
19
|
+
entity,
|
|
20
|
+
model: this.schema.model
|
|
21
|
+
});
|
|
22
|
+
const tableNameId = wrapIdentifier(entity.tableName);
|
|
23
|
+
const columnNameIds = columns.map(wrapIdentifier);
|
|
24
|
+
builder.sql(`CREATE INDEX ON ${tableNameId} (${columnNameIds.join(", ")})`);
|
|
25
|
+
invalidateDatabaseMetadata();
|
|
26
|
+
}
|
|
27
|
+
getSchemaUpdater() {
|
|
28
|
+
return updateModel(
|
|
29
|
+
updateEntity(this.data.entityName, ({ entity }) => ({
|
|
30
|
+
...entity,
|
|
31
|
+
indexes: [
|
|
32
|
+
...entity.indexes,
|
|
33
|
+
this.data.index
|
|
34
|
+
]
|
|
35
|
+
}))
|
|
36
|
+
);
|
|
37
|
+
}
|
|
38
|
+
describe() {
|
|
39
|
+
return {
|
|
40
|
+
message: `Create index(${this.data.index.fields.join(", ")}) on entity ${this.data.entityName}`
|
|
41
|
+
};
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
const createIndexModification = createModificationType({
|
|
45
|
+
id: "createIndex",
|
|
46
|
+
handler: CreateIndexModificationHandler
|
|
47
|
+
});
|
|
48
|
+
class CreateIndexDiffer {
|
|
49
|
+
createDiff(originalSchema, updatedSchema) {
|
|
50
|
+
return Object.values(updatedSchema.model.entities).flatMap(
|
|
51
|
+
(entity) => entity.indexes.filter((it) => !originalSchema.model.entities[entity.name].indexes.find((idx) => deepEqual(idx.fields, it.fields))).map((index) => createIndexModification.createModification({
|
|
52
|
+
entityName: entity.name,
|
|
53
|
+
index
|
|
54
|
+
}))
|
|
55
|
+
);
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
export {
|
|
59
|
+
CreateIndexDiffer,
|
|
60
|
+
CreateIndexModificationHandler,
|
|
61
|
+
createIndexModification
|
|
62
|
+
};
|
|
63
|
+
//# sourceMappingURL=CreateIndexModification.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CreateIndexModification.js","sources":["../../../../../../packages/schema-migrations/src/modifications/indexes/CreateIndexModification.ts"],"sourcesContent":["import { MigrationBuilder } from '@contember/database-migrations'\nimport { Model, Schema } from '@contember/schema'\nimport { SchemaUpdater, updateEntity, updateModel } from '../utils/schemaUpdateUtils'\nimport {\n\tcreateModificationType,\n\tDiffer,\n\tModificationHandler,\n\tModificationHandlerCreateSqlOptions,\n} from '../ModificationHandler'\nimport { wrapIdentifier } from '../../utils/dbHelpers'\nimport { getIndexColumns } from './utils'\nimport deepEqual from 'fast-deep-equal'\n\nexport class CreateIndexModificationHandler implements ModificationHandler<CreateIndexModificationData> {\n\tconstructor(private readonly data: CreateIndexModificationData, private readonly schema: Schema) {}\n\n\tpublic createSql(builder: MigrationBuilder, { databaseMetadata, invalidateDatabaseMetadata }: ModificationHandlerCreateSqlOptions): void {\n\t\tconst entity = this.schema.model.entities[this.data.entityName]\n\t\tif (entity.view) {\n\t\t\treturn\n\t\t}\n\t\tconst fields = this.data.index.fields\n\t\tconst columns = getIndexColumns({\n\t\t\tfields,\n\t\t\tentity,\n\t\t\tmodel: this.schema.model,\n\t\t})\n\n\t\tconst tableNameId = wrapIdentifier(entity.tableName)\n\t\tconst columnNameIds = columns.map(wrapIdentifier)\n\n\t\tbuilder.sql(`CREATE INDEX ON ${tableNameId} (${columnNameIds.join(', ')})`)\n\n\t\tinvalidateDatabaseMetadata()\n\t}\n\n\tpublic getSchemaUpdater(): SchemaUpdater {\n\t\treturn updateModel(\n\t\t\tupdateEntity(this.data.entityName, ({ entity }) => ({\n\t\t\t\t...entity,\n\t\t\t\tindexes: [\n\t\t\t\t\t...entity.indexes,\n\t\t\t\t\tthis.data.index,\n\t\t\t\t],\n\t\t\t})),\n\t\t)\n\t}\n\n\tdescribe() {\n\t\treturn {\n\t\t\tmessage: `Create index(${this.data.index.fields.join(', ')}) on entity ${this.data.entityName}`,\n\t\t}\n\t}\n}\n\nexport const createIndexModification = createModificationType({\n\tid: 'createIndex',\n\thandler: CreateIndexModificationHandler,\n})\n\nexport interface CreateIndexModificationData {\n\tentityName: string\n\tindex: Model.Index\n}\n\nexport class CreateIndexDiffer implements Differ {\n\tcreateDiff(originalSchema: Schema, updatedSchema: Schema) {\n\t\treturn Object.values(updatedSchema.model.entities).flatMap(entity =>\n\t\t\tentity.indexes\n\t\t\t\t.filter(it => !originalSchema.model.entities[entity.name].indexes.find(idx => deepEqual(idx.fields, it.fields)))\n\t\t\t\t.map(index => createIndexModification.createModification({\n\t\t\t\t\tentityName: entity.name,\n\t\t\t\t\tindex,\n\t\t\t\t})),\n\t\t)\n\t}\n}\n"],"names":[],"mappings":";;;;;AAaO,MAAM,+BAA2F;AAAA,EACvG,YAA6B,MAAoD,QAAgB;AAApE,SAAA,OAAA;AAAoD,SAAA,SAAA;AAAA,EAAiB;AAAA,EAE3F,UAAU,SAA2B,EAAE,kBAAkB,8BAAyE;AACxI,UAAM,SAAS,KAAK,OAAO,MAAM,SAAS,KAAK,KAAK,UAAU;AAC9D,QAAI,OAAO,MAAM;AAChB;AAAA,IACD;AACM,UAAA,SAAS,KAAK,KAAK,MAAM;AAC/B,UAAM,UAAU,gBAAgB;AAAA,MAC/B;AAAA,MACA;AAAA,MACA,OAAO,KAAK,OAAO;AAAA,IAAA,CACnB;AAEK,UAAA,cAAc,eAAe,OAAO,SAAS;AAC7C,UAAA,gBAAgB,QAAQ,IAAI,cAAc;AAExC,YAAA,IAAI,mBAAmB,WAAW,KAAK,cAAc,KAAK,IAAI,CAAC,GAAG;AAE/C;EAC5B;AAAA,EAEO,mBAAkC;AACjC,WAAA;AAAA,MACN,aAAa,KAAK,KAAK,YAAY,CAAC,EAAE,cAAc;AAAA,QACnD,GAAG;AAAA,QACH,SAAS;AAAA,UACR,GAAG,OAAO;AAAA,UACV,KAAK,KAAK;AAAA,QACX;AAAA,MAAA,EACC;AAAA,IAAA;AAAA,EAEJ;AAAA,EAEA,WAAW;AACH,WAAA;AAAA,MACN,SAAS,gBAAgB,KAAK,KAAK,MAAM,OAAO,KAAK,IAAI,CAAC,eAAe,KAAK,KAAK,UAAU;AAAA,IAAA;AAAA,EAE/F;AACD;AAEO,MAAM,0BAA0B,uBAAuB;AAAA,EAC7D,IAAI;AAAA,EACJ,SAAS;AACV,CAAC;AAOM,MAAM,kBAAoC;AAAA,EAChD,WAAW,gBAAwB,eAAuB;AACzD,WAAO,OAAO,OAAO,cAAc,MAAM,QAAQ,EAAE;AAAA,MAAQ,CAAA,WAC1D,OAAO,QACL,OAAO,CAAA,OAAM,CAAC,eAAe,MAAM,SAAS,OAAO,IAAI,EAAE,QAAQ,KAAK,CAAO,QAAA,UAAU,IAAI,QAAQ,GAAG,MAAM,CAAC,CAAC,EAC9G,IAAI,CAAS,UAAA,wBAAwB,mBAAmB;AAAA,QACxD,YAAY,OAAO;AAAA,QACnB;AAAA,MAAA,CACA,CAAC;AAAA,IAAA;AAAA,EAEL;AACD;"}
|
|
@@ -0,0 +1,82 @@
|
|
|
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 deepEqual = require("fast-deep-equal");
|
|
6
|
+
const utils = require("./utils.cjs");
|
|
7
|
+
const dbHelpers = require("../../utils/dbHelpers.cjs");
|
|
8
|
+
class RemoveIndexModificationHandler {
|
|
9
|
+
constructor(data, schema) {
|
|
10
|
+
this.data = data;
|
|
11
|
+
this.schema = schema;
|
|
12
|
+
}
|
|
13
|
+
createSql(builder, { databaseMetadata, invalidateDatabaseMetadata }) {
|
|
14
|
+
const entity = this.schema.model.entities[this.data.entityName];
|
|
15
|
+
if (entity.view) {
|
|
16
|
+
return;
|
|
17
|
+
}
|
|
18
|
+
const fields = this.getFields();
|
|
19
|
+
const columns = utils.getIndexColumns({
|
|
20
|
+
entity,
|
|
21
|
+
fields,
|
|
22
|
+
model: this.schema.model
|
|
23
|
+
});
|
|
24
|
+
const indexNames = databaseMetadata.indexes.filter({ tableName: entity.tableName, columnNames: columns }).getNames();
|
|
25
|
+
for (const name of indexNames) {
|
|
26
|
+
builder.sql(`DROP INDEX ${dbHelpers.wrapIdentifier(name)}`);
|
|
27
|
+
}
|
|
28
|
+
invalidateDatabaseMetadata();
|
|
29
|
+
}
|
|
30
|
+
getSchemaUpdater() {
|
|
31
|
+
const fields = this.getFields();
|
|
32
|
+
return schemaUpdateUtils.updateModel(
|
|
33
|
+
schemaUpdateUtils.updateEntity(this.data.entityName, ({ entity }) => {
|
|
34
|
+
const indexes = entity.indexes.filter((it) => !deepEqual(it.fields, fields));
|
|
35
|
+
return {
|
|
36
|
+
...entity,
|
|
37
|
+
indexes
|
|
38
|
+
};
|
|
39
|
+
})
|
|
40
|
+
);
|
|
41
|
+
}
|
|
42
|
+
describe() {
|
|
43
|
+
const fields = this.getFields();
|
|
44
|
+
return { message: `Remove index (${fields.join(", ")}) on entity ${this.data.entityName}` };
|
|
45
|
+
}
|
|
46
|
+
getFields() {
|
|
47
|
+
const entity = this.schema.model.entities[this.data.entityName];
|
|
48
|
+
const fields = "indexName" in this.data ? entity.indexes.find((it) => it.name === this.data.indexName)?.fields : this.data.fields;
|
|
49
|
+
if (!fields) {
|
|
50
|
+
throw new Error();
|
|
51
|
+
}
|
|
52
|
+
return fields;
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
const removeIndexModification = ModificationHandler.createModificationType({
|
|
56
|
+
id: "removeIndex",
|
|
57
|
+
handler: RemoveIndexModificationHandler
|
|
58
|
+
});
|
|
59
|
+
class RemoveIndexDiffer {
|
|
60
|
+
createDiff(originalSchema, updatedSchema) {
|
|
61
|
+
return Object.values(originalSchema.model.entities).flatMap(
|
|
62
|
+
(entity) => entity.indexes.filter(
|
|
63
|
+
(it) => {
|
|
64
|
+
const updatedEntity = updatedSchema.model.entities[entity.name];
|
|
65
|
+
if (!updatedEntity) {
|
|
66
|
+
return false;
|
|
67
|
+
}
|
|
68
|
+
return !updatedEntity.indexes.find((index) => deepEqual(index.fields, it.fields));
|
|
69
|
+
}
|
|
70
|
+
).map(
|
|
71
|
+
(index) => removeIndexModification.createModification({
|
|
72
|
+
entityName: entity.name,
|
|
73
|
+
fields: index.fields
|
|
74
|
+
})
|
|
75
|
+
)
|
|
76
|
+
);
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
exports.RemoveIndexDiffer = RemoveIndexDiffer;
|
|
80
|
+
exports.RemoveIndexModificationHandler = RemoveIndexModificationHandler;
|
|
81
|
+
exports.removeIndexModification = removeIndexModification;
|
|
82
|
+
//# sourceMappingURL=RemoveIndexModification.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RemoveIndexModification.cjs","sources":["../../../../../../packages/schema-migrations/src/modifications/indexes/RemoveIndexModification.ts"],"sourcesContent":["import { MigrationBuilder } from '@contember/database-migrations'\nimport { Schema } from '@contember/schema'\nimport { SchemaUpdater, updateEntity, updateModel } from '../utils/schemaUpdateUtils'\nimport {\n\tcreateModificationType,\n\tDiffer,\n\tModificationHandler,\n\tModificationHandlerCreateSqlOptions,\n} from '../ModificationHandler'\nimport deepEqual from 'fast-deep-equal'\nimport { getIndexColumns } from './utils'\nimport { wrapIdentifier } from '../../utils/dbHelpers'\n\nexport class RemoveIndexModificationHandler implements ModificationHandler<RemoveIndexModificationData> {\n\tconstructor(private readonly data: RemoveIndexModificationData, private readonly schema: Schema) {}\n\n\tpublic createSql(builder: MigrationBuilder, { databaseMetadata, invalidateDatabaseMetadata }: ModificationHandlerCreateSqlOptions): void {\n\t\tconst entity = this.schema.model.entities[this.data.entityName]\n\t\tif (entity.view) {\n\t\t\treturn\n\t\t}\n\t\tconst fields = this.getFields()\n\n\t\tconst columns = getIndexColumns({\n\t\t\tentity,\n\t\t\tfields,\n\t\t\tmodel: this.schema.model,\n\t\t})\n\n\t\tconst indexNames = databaseMetadata.indexes.filter({ tableName: entity.tableName, columnNames: columns }).getNames()\n\n\t\tfor (const name of indexNames) {\n\t\t\tbuilder.sql(`DROP INDEX ${wrapIdentifier(name)}`)\n\t\t}\n\t\tinvalidateDatabaseMetadata()\n\t}\n\n\tpublic getSchemaUpdater(): SchemaUpdater {\n\t\tconst fields = this.getFields()\n\t\treturn updateModel(\n\t\t\tupdateEntity(this.data.entityName, ({ entity }) => {\n\t\t\t\tconst indexes = entity.indexes.filter(it => !deepEqual(it.fields, fields))\n\t\t\t\treturn {\n\t\t\t\t\t...entity,\n\t\t\t\t\tindexes,\n\t\t\t\t}\n\t\t\t}),\n\t\t)\n\t}\n\n\tdescribe() {\n\t\tconst fields = this.getFields()\n\t\treturn { message: `Remove index (${fields.join(', ')}) on entity ${this.data.entityName}` }\n\t}\n\n\tgetFields() {\n\t\tconst entity = this.schema.model.entities[this.data.entityName]\n\t\tconst fields = 'indexName' in this.data\n\t\t\t? entity.indexes.find(it => it.name === this.data.indexName)?.fields\n\t\t\t: this.data.fields\n\t\tif (!fields) {\n\t\t\tthrow new Error()\n\t\t}\n\t\treturn fields\n\t}\n}\n\nexport const removeIndexModification = createModificationType({\n\tid: 'removeIndex',\n\thandler: RemoveIndexModificationHandler,\n})\n\n\nexport type RemoveIndexModificationData =\n\t| {\n\t\tentityName: string\n\t\tindexName: string\n\t\tfields?: never\n\t}\n\t| {\n\t\tentityName: string\n\t\tfields: readonly string[]\n\t\tindexName?: never\n\t}\n\nexport class RemoveIndexDiffer implements Differ {\n\n\tcreateDiff(originalSchema: Schema, updatedSchema: Schema) {\n\t\treturn Object.values(originalSchema.model.entities).flatMap(entity =>\n\t\t\tentity.indexes\n\t\t\t\t.filter(\n\t\t\t\t\tit => {\n\t\t\t\t\t\tconst updatedEntity = updatedSchema.model.entities[entity.name]\n\t\t\t\t\t\tif (!updatedEntity) {\n\t\t\t\t\t\t\treturn false\n\t\t\t\t\t\t}\n\t\t\t\t\t\treturn !updatedEntity.indexes.find(index => deepEqual(index.fields, it.fields))\n\t\t\t\t\t},\n\t\t\t\t)\n\t\t\t\t.map(index =>\n\t\t\t\t\tremoveIndexModification.createModification({\n\t\t\t\t\t\tentityName: entity.name,\n\t\t\t\t\t\tfields: index.fields,\n\t\t\t\t\t}),\n\t\t\t\t),\n\t\t)\n\t}\n}\n"],"names":["getIndexColumns","wrapIdentifier","updateModel","updateEntity","createModificationType"],"mappings":";;;;;;;AAaO,MAAM,+BAA4F;AAAA,EACxG,YAA6B,MAAoD,QAAgB;AAApE,SAAA,OAAA;AAAoD,SAAA,SAAA;AAAA,EAAiB;AAAA,EAE3F,UAAU,SAA2B,EAAE,kBAAkB,8BAAyE;AACxI,UAAM,SAAS,KAAK,OAAO,MAAM,SAAS,KAAK,KAAK,UAAU;AAC9D,QAAI,OAAO,MAAM;AAChB;AAAA,IACD;AACM,UAAA,SAAS,KAAK;AAEpB,UAAM,UAAUA,MAAAA,gBAAgB;AAAA,MAC/B;AAAA,MACA;AAAA,MACA,OAAO,KAAK,OAAO;AAAA,IAAA,CACnB;AAED,UAAM,aAAa,iBAAiB,QAAQ,OAAO,EAAE,WAAW,OAAO,WAAW,aAAa,SAAS,EAAE,SAAS;AAEnH,eAAW,QAAQ,YAAY;AAC9B,cAAQ,IAAI,cAAcC,UAAe,eAAA,IAAI,CAAC,EAAE;AAAA,IACjD;AAC2B;EAC5B;AAAA,EAEO,mBAAkC;AAClC,UAAA,SAAS,KAAK;AACb,WAAAC,kBAAA;AAAA,MACNC,+BAAa,KAAK,KAAK,YAAY,CAAC,EAAE,aAAa;AAC5C,cAAA,UAAU,OAAO,QAAQ,OAAO,CAAA,OAAM,CAAC,UAAU,GAAG,QAAQ,MAAM,CAAC;AAClE,eAAA;AAAA,UACN,GAAG;AAAA,UACH;AAAA,QAAA;AAAA,MACD,CACA;AAAA,IAAA;AAAA,EAEH;AAAA,EAEA,WAAW;AACJ,UAAA,SAAS,KAAK;AACb,WAAA,EAAE,SAAS,iBAAiB,OAAO,KAAK,IAAI,CAAC,eAAe,KAAK,KAAK,UAAU,GAAG;AAAA,EAC3F;AAAA,EAEA,YAAY;AACX,UAAM,SAAS,KAAK,OAAO,MAAM,SAAS,KAAK,KAAK,UAAU;AAC9D,UAAM,SAAS,eAAe,KAAK,OAChC,OAAO,QAAQ,KAAK,CAAA,OAAM,GAAG,SAAS,KAAK,KAAK,SAAS,GAAG,SAC5D,KAAK,KAAK;AACb,QAAI,CAAC,QAAQ;AACZ,YAAM,IAAI,MAAM;AAAA,IACjB;AACO,WAAA;AAAA,EACR;AACD;AAEO,MAAM,0BAA0BC,oBAAAA,uBAAuB;AAAA,EAC7D,IAAI;AAAA,EACJ,SAAS;AACV,CAAC;AAeM,MAAM,kBAAoC;AAAA,EAEhD,WAAW,gBAAwB,eAAuB;AACzD,WAAO,OAAO,OAAO,eAAe,MAAM,QAAQ,EAAE;AAAA,MAAQ,CAAA,WAC3D,OAAO,QACL;AAAA,QACA,CAAM,OAAA;AACL,gBAAM,gBAAgB,cAAc,MAAM,SAAS,OAAO,IAAI;AAC9D,cAAI,CAAC,eAAe;AACZ,mBAAA;AAAA,UACR;AACO,iBAAA,CAAC,cAAc,QAAQ,KAAK,CAAA,UAAS,UAAU,MAAM,QAAQ,GAAG,MAAM,CAAC;AAAA,QAC/E;AAAA,MAAA,EAEA;AAAA,QAAI,CAAA,UACJ,wBAAwB,mBAAmB;AAAA,UAC1C,YAAY,OAAO;AAAA,UACnB,QAAQ,MAAM;AAAA,QAAA,CACd;AAAA,MACF;AAAA,IAAA;AAAA,EAEH;AACD;;;;"}
|