@supabase/pg-delta 1.0.0-alpha.10 → 1.0.0-alpha.12
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/cli/commands/declarative-export.js +12 -17
- package/dist/cli/commands/plan.js +10 -13
- package/dist/cli/commands/sync.js +8 -12
- package/dist/cli/utils/integrations.d.ts +30 -6
- package/dist/cli/utils/integrations.js +98 -6
- package/dist/core/change-utils.d.ts +9 -0
- package/dist/core/change-utils.js +71 -0
- package/dist/core/change.types.d.ts +22 -0
- package/dist/core/change.types.js +37 -1
- package/dist/core/depend.js +25 -0
- package/dist/core/expand-replace-dependencies.js +23 -0
- package/dist/core/export/file-mapper.d.ts +2 -2
- package/dist/core/integrations/filter/dsl.d.ts +78 -74
- package/dist/core/integrations/filter/dsl.js +127 -79
- package/dist/core/integrations/filter/flatten.d.ts +51 -0
- package/dist/core/integrations/filter/flatten.js +116 -0
- package/dist/core/integrations/integration-dsl.d.ts +17 -1
- package/dist/core/integrations/merge.d.ts +20 -0
- package/dist/core/integrations/merge.js +60 -0
- package/dist/core/integrations/serialize/dsl.d.ts +8 -12
- package/dist/core/integrations/serialize/dsl.js +2 -2
- package/dist/core/integrations/serialize/serialize.types.d.ts +31 -0
- package/dist/core/integrations/supabase.js +42 -8
- package/dist/core/objects/aggregate/changes/aggregate.alter.d.ts +2 -1
- package/dist/core/objects/aggregate/changes/aggregate.alter.js +1 -1
- package/dist/core/objects/aggregate/changes/aggregate.comment.d.ts +3 -2
- package/dist/core/objects/aggregate/changes/aggregate.comment.js +2 -2
- package/dist/core/objects/aggregate/changes/aggregate.create.d.ts +2 -1
- package/dist/core/objects/aggregate/changes/aggregate.create.js +1 -1
- package/dist/core/objects/aggregate/changes/aggregate.drop.d.ts +2 -1
- package/dist/core/objects/aggregate/changes/aggregate.drop.js +1 -1
- package/dist/core/objects/aggregate/changes/aggregate.privilege.d.ts +4 -3
- package/dist/core/objects/aggregate/changes/aggregate.privilege.js +3 -3
- package/dist/core/objects/aggregate/changes/aggregate.types.d.ts +1 -0
- package/dist/core/objects/base.change.d.ts +12 -1
- package/dist/core/objects/base.change.js +10 -0
- package/dist/core/objects/base.model.d.ts +4 -1
- package/dist/core/objects/base.model.js +5 -2
- package/dist/core/objects/collation/changes/collation.alter.d.ts +3 -2
- package/dist/core/objects/collation/changes/collation.alter.js +2 -2
- package/dist/core/objects/collation/changes/collation.comment.d.ts +3 -2
- package/dist/core/objects/collation/changes/collation.comment.js +2 -2
- package/dist/core/objects/collation/changes/collation.create.d.ts +2 -1
- package/dist/core/objects/collation/changes/collation.create.js +1 -1
- package/dist/core/objects/collation/changes/collation.drop.d.ts +2 -1
- package/dist/core/objects/collation/changes/collation.drop.js +1 -1
- package/dist/core/objects/collation/changes/collation.types.d.ts +1 -0
- package/dist/core/objects/domain/changes/domain.alter.d.ts +9 -8
- package/dist/core/objects/domain/changes/domain.alter.js +8 -8
- package/dist/core/objects/domain/changes/domain.comment.d.ts +3 -2
- package/dist/core/objects/domain/changes/domain.comment.js +2 -2
- package/dist/core/objects/domain/changes/domain.create.d.ts +3 -2
- package/dist/core/objects/domain/changes/domain.create.js +8 -2
- package/dist/core/objects/domain/changes/domain.drop.d.ts +2 -1
- package/dist/core/objects/domain/changes/domain.drop.js +1 -1
- package/dist/core/objects/domain/changes/domain.privilege.d.ts +4 -3
- package/dist/core/objects/domain/changes/domain.privilege.js +3 -3
- package/dist/core/objects/domain/changes/domain.types.d.ts +1 -0
- package/dist/core/objects/event-trigger/changes/event-trigger.alter.d.ts +3 -2
- package/dist/core/objects/event-trigger/changes/event-trigger.alter.js +2 -2
- package/dist/core/objects/event-trigger/changes/event-trigger.comment.d.ts +3 -2
- package/dist/core/objects/event-trigger/changes/event-trigger.comment.js +2 -2
- package/dist/core/objects/event-trigger/changes/event-trigger.create.d.ts +2 -1
- package/dist/core/objects/event-trigger/changes/event-trigger.create.js +1 -1
- package/dist/core/objects/event-trigger/changes/event-trigger.drop.d.ts +2 -1
- package/dist/core/objects/event-trigger/changes/event-trigger.drop.js +1 -1
- package/dist/core/objects/event-trigger/changes/event-trigger.types.d.ts +1 -0
- package/dist/core/objects/extension/changes/extension.alter.d.ts +3 -2
- package/dist/core/objects/extension/changes/extension.alter.js +2 -2
- package/dist/core/objects/extension/changes/extension.comment.d.ts +3 -2
- package/dist/core/objects/extension/changes/extension.comment.js +2 -2
- package/dist/core/objects/extension/changes/extension.create.d.ts +2 -1
- package/dist/core/objects/extension/changes/extension.create.js +4 -2
- package/dist/core/objects/extension/changes/extension.drop.d.ts +2 -1
- package/dist/core/objects/extension/changes/extension.drop.js +1 -1
- package/dist/core/objects/extension/changes/extension.types.d.ts +1 -0
- package/dist/core/objects/foreign-data-wrapper/foreign-data-wrapper/changes/foreign-data-wrapper.alter.d.ts +3 -2
- package/dist/core/objects/foreign-data-wrapper/foreign-data-wrapper/changes/foreign-data-wrapper.alter.js +2 -2
- package/dist/core/objects/foreign-data-wrapper/foreign-data-wrapper/changes/foreign-data-wrapper.comment.d.ts +3 -2
- package/dist/core/objects/foreign-data-wrapper/foreign-data-wrapper/changes/foreign-data-wrapper.comment.js +2 -2
- package/dist/core/objects/foreign-data-wrapper/foreign-data-wrapper/changes/foreign-data-wrapper.create.d.ts +2 -1
- package/dist/core/objects/foreign-data-wrapper/foreign-data-wrapper/changes/foreign-data-wrapper.create.js +1 -1
- package/dist/core/objects/foreign-data-wrapper/foreign-data-wrapper/changes/foreign-data-wrapper.drop.d.ts +2 -1
- package/dist/core/objects/foreign-data-wrapper/foreign-data-wrapper/changes/foreign-data-wrapper.drop.js +1 -1
- package/dist/core/objects/foreign-data-wrapper/foreign-data-wrapper/changes/foreign-data-wrapper.privilege.d.ts +4 -3
- package/dist/core/objects/foreign-data-wrapper/foreign-data-wrapper/changes/foreign-data-wrapper.privilege.js +3 -3
- package/dist/core/objects/foreign-data-wrapper/foreign-data-wrapper/changes/foreign-data-wrapper.types.d.ts +1 -0
- package/dist/core/objects/foreign-data-wrapper/foreign-data-wrapper.types.d.ts +1 -0
- package/dist/core/objects/foreign-data-wrapper/foreign-table/changes/foreign-table.alter.d.ts +10 -9
- package/dist/core/objects/foreign-data-wrapper/foreign-table/changes/foreign-table.alter.js +9 -9
- package/dist/core/objects/foreign-data-wrapper/foreign-table/changes/foreign-table.comment.d.ts +3 -2
- package/dist/core/objects/foreign-data-wrapper/foreign-table/changes/foreign-table.comment.js +2 -2
- package/dist/core/objects/foreign-data-wrapper/foreign-table/changes/foreign-table.create.d.ts +2 -1
- package/dist/core/objects/foreign-data-wrapper/foreign-table/changes/foreign-table.create.js +1 -1
- package/dist/core/objects/foreign-data-wrapper/foreign-table/changes/foreign-table.drop.d.ts +2 -1
- package/dist/core/objects/foreign-data-wrapper/foreign-table/changes/foreign-table.drop.js +1 -1
- package/dist/core/objects/foreign-data-wrapper/foreign-table/changes/foreign-table.privilege.d.ts +4 -3
- package/dist/core/objects/foreign-data-wrapper/foreign-table/changes/foreign-table.privilege.js +3 -3
- package/dist/core/objects/foreign-data-wrapper/foreign-table/changes/foreign-table.types.d.ts +1 -0
- package/dist/core/objects/foreign-data-wrapper/server/changes/server.alter.d.ts +4 -3
- package/dist/core/objects/foreign-data-wrapper/server/changes/server.alter.js +3 -3
- package/dist/core/objects/foreign-data-wrapper/server/changes/server.comment.d.ts +3 -2
- package/dist/core/objects/foreign-data-wrapper/server/changes/server.comment.js +2 -2
- package/dist/core/objects/foreign-data-wrapper/server/changes/server.create.d.ts +2 -1
- package/dist/core/objects/foreign-data-wrapper/server/changes/server.create.js +1 -1
- package/dist/core/objects/foreign-data-wrapper/server/changes/server.drop.d.ts +2 -1
- package/dist/core/objects/foreign-data-wrapper/server/changes/server.drop.js +1 -1
- package/dist/core/objects/foreign-data-wrapper/server/changes/server.privilege.d.ts +4 -3
- package/dist/core/objects/foreign-data-wrapper/server/changes/server.privilege.js +3 -3
- package/dist/core/objects/foreign-data-wrapper/server/changes/server.types.d.ts +1 -0
- package/dist/core/objects/foreign-data-wrapper/user-mapping/changes/user-mapping.alter.d.ts +2 -1
- package/dist/core/objects/foreign-data-wrapper/user-mapping/changes/user-mapping.alter.js +1 -1
- package/dist/core/objects/foreign-data-wrapper/user-mapping/changes/user-mapping.create.d.ts +2 -1
- package/dist/core/objects/foreign-data-wrapper/user-mapping/changes/user-mapping.create.js +1 -1
- package/dist/core/objects/foreign-data-wrapper/user-mapping/changes/user-mapping.drop.d.ts +2 -1
- package/dist/core/objects/foreign-data-wrapper/user-mapping/changes/user-mapping.drop.js +1 -1
- package/dist/core/objects/foreign-data-wrapper/user-mapping/changes/user-mapping.types.d.ts +1 -0
- package/dist/core/objects/index/changes/index.alter.d.ts +4 -3
- package/dist/core/objects/index/changes/index.alter.js +3 -3
- package/dist/core/objects/index/changes/index.comment.d.ts +3 -2
- package/dist/core/objects/index/changes/index.comment.js +2 -2
- package/dist/core/objects/index/changes/index.create.d.ts +2 -1
- package/dist/core/objects/index/changes/index.create.js +1 -1
- package/dist/core/objects/index/changes/index.drop.d.ts +2 -1
- package/dist/core/objects/index/changes/index.drop.js +1 -1
- package/dist/core/objects/index/changes/index.types.d.ts +1 -0
- package/dist/core/objects/language/changes/language.alter.d.ts +2 -1
- package/dist/core/objects/language/changes/language.alter.js +1 -1
- package/dist/core/objects/language/changes/language.comment.d.ts +3 -2
- package/dist/core/objects/language/changes/language.comment.js +2 -2
- package/dist/core/objects/language/changes/language.create.d.ts +2 -1
- package/dist/core/objects/language/changes/language.create.js +1 -1
- package/dist/core/objects/language/changes/language.drop.d.ts +2 -1
- package/dist/core/objects/language/changes/language.drop.js +1 -1
- package/dist/core/objects/language/changes/language.privilege.d.ts +4 -3
- package/dist/core/objects/language/changes/language.privilege.js +3 -3
- package/dist/core/objects/language/changes/language.types.d.ts +1 -0
- package/dist/core/objects/materialized-view/changes/materialized-view.alter.d.ts +3 -2
- package/dist/core/objects/materialized-view/changes/materialized-view.alter.js +2 -2
- package/dist/core/objects/materialized-view/changes/materialized-view.comment.d.ts +5 -4
- package/dist/core/objects/materialized-view/changes/materialized-view.comment.js +4 -4
- package/dist/core/objects/materialized-view/changes/materialized-view.create.d.ts +2 -1
- package/dist/core/objects/materialized-view/changes/materialized-view.create.js +1 -1
- package/dist/core/objects/materialized-view/changes/materialized-view.drop.d.ts +2 -1
- package/dist/core/objects/materialized-view/changes/materialized-view.drop.js +1 -1
- package/dist/core/objects/materialized-view/changes/materialized-view.privilege.d.ts +4 -3
- package/dist/core/objects/materialized-view/changes/materialized-view.privilege.js +3 -3
- package/dist/core/objects/materialized-view/changes/materialized-view.types.d.ts +1 -0
- package/dist/core/objects/procedure/changes/procedure.alter.d.ts +8 -7
- package/dist/core/objects/procedure/changes/procedure.alter.js +7 -7
- package/dist/core/objects/procedure/changes/procedure.comment.d.ts +3 -2
- package/dist/core/objects/procedure/changes/procedure.comment.js +2 -2
- package/dist/core/objects/procedure/changes/procedure.create.d.ts +2 -1
- package/dist/core/objects/procedure/changes/procedure.create.js +1 -1
- package/dist/core/objects/procedure/changes/procedure.drop.d.ts +2 -1
- package/dist/core/objects/procedure/changes/procedure.drop.js +1 -1
- package/dist/core/objects/procedure/changes/procedure.privilege.d.ts +4 -3
- package/dist/core/objects/procedure/changes/procedure.privilege.js +3 -3
- package/dist/core/objects/procedure/changes/procedure.types.d.ts +1 -0
- package/dist/core/objects/publication/changes/publication.alter.d.ts +9 -7
- package/dist/core/objects/publication/changes/publication.alter.js +12 -7
- package/dist/core/objects/publication/changes/publication.comment.d.ts +3 -2
- package/dist/core/objects/publication/changes/publication.comment.js +2 -2
- package/dist/core/objects/publication/changes/publication.create.d.ts +2 -1
- package/dist/core/objects/publication/changes/publication.create.js +1 -1
- package/dist/core/objects/publication/changes/publication.drop.d.ts +2 -1
- package/dist/core/objects/publication/changes/publication.drop.js +1 -1
- package/dist/core/objects/publication/changes/publication.types.d.ts +1 -0
- package/dist/core/objects/rls-policy/changes/rls-policy.alter.d.ts +4 -3
- package/dist/core/objects/rls-policy/changes/rls-policy.alter.js +3 -3
- package/dist/core/objects/rls-policy/changes/rls-policy.comment.d.ts +3 -2
- package/dist/core/objects/rls-policy/changes/rls-policy.comment.js +2 -2
- package/dist/core/objects/rls-policy/changes/rls-policy.create.d.ts +2 -1
- package/dist/core/objects/rls-policy/changes/rls-policy.create.js +1 -1
- package/dist/core/objects/rls-policy/changes/rls-policy.drop.d.ts +2 -1
- package/dist/core/objects/rls-policy/changes/rls-policy.drop.js +1 -1
- package/dist/core/objects/rls-policy/changes/rls-policy.types.d.ts +1 -0
- package/dist/core/objects/role/changes/role.alter.d.ts +3 -2
- package/dist/core/objects/role/changes/role.alter.js +2 -2
- package/dist/core/objects/role/changes/role.comment.d.ts +3 -2
- package/dist/core/objects/role/changes/role.comment.js +2 -2
- package/dist/core/objects/role/changes/role.create.d.ts +2 -1
- package/dist/core/objects/role/changes/role.create.js +1 -1
- package/dist/core/objects/role/changes/role.drop.d.ts +2 -1
- package/dist/core/objects/role/changes/role.drop.js +1 -1
- package/dist/core/objects/role/changes/role.privilege.d.ts +6 -5
- package/dist/core/objects/role/changes/role.privilege.js +5 -5
- package/dist/core/objects/role/changes/role.types.d.ts +1 -0
- package/dist/core/objects/rule/changes/rule.alter.d.ts +3 -2
- package/dist/core/objects/rule/changes/rule.alter.js +2 -2
- package/dist/core/objects/rule/changes/rule.comment.d.ts +3 -2
- package/dist/core/objects/rule/changes/rule.comment.js +2 -2
- package/dist/core/objects/rule/changes/rule.create.d.ts +2 -1
- package/dist/core/objects/rule/changes/rule.create.js +1 -1
- package/dist/core/objects/rule/changes/rule.drop.d.ts +2 -1
- package/dist/core/objects/rule/changes/rule.drop.js +1 -1
- package/dist/core/objects/rule/changes/rule.types.d.ts +1 -0
- package/dist/core/objects/schema/changes/schema.alter.d.ts +2 -1
- package/dist/core/objects/schema/changes/schema.alter.js +1 -1
- package/dist/core/objects/schema/changes/schema.comment.d.ts +3 -2
- package/dist/core/objects/schema/changes/schema.comment.js +2 -2
- package/dist/core/objects/schema/changes/schema.create.d.ts +3 -5
- package/dist/core/objects/schema/changes/schema.drop.d.ts +2 -1
- package/dist/core/objects/schema/changes/schema.drop.js +1 -1
- package/dist/core/objects/schema/changes/schema.privilege.d.ts +4 -3
- package/dist/core/objects/schema/changes/schema.privilege.js +3 -3
- package/dist/core/objects/schema/changes/schema.types.d.ts +1 -0
- package/dist/core/objects/sequence/changes/sequence.alter.d.ts +3 -2
- package/dist/core/objects/sequence/changes/sequence.alter.js +2 -2
- package/dist/core/objects/sequence/changes/sequence.comment.d.ts +3 -2
- package/dist/core/objects/sequence/changes/sequence.comment.js +2 -2
- package/dist/core/objects/sequence/changes/sequence.create.d.ts +2 -1
- package/dist/core/objects/sequence/changes/sequence.create.js +1 -1
- package/dist/core/objects/sequence/changes/sequence.drop.d.ts +2 -1
- package/dist/core/objects/sequence/changes/sequence.drop.js +11 -3
- package/dist/core/objects/sequence/changes/sequence.privilege.d.ts +4 -3
- package/dist/core/objects/sequence/changes/sequence.privilege.js +3 -3
- package/dist/core/objects/sequence/changes/sequence.types.d.ts +1 -0
- package/dist/core/objects/sequence/sequence.diff.d.ts +4 -1
- package/dist/core/objects/sequence/sequence.diff.js +12 -0
- package/dist/core/objects/subscription/changes/subscription.alter.d.ts +7 -6
- package/dist/core/objects/subscription/changes/subscription.alter.js +6 -6
- package/dist/core/objects/subscription/changes/subscription.comment.d.ts +3 -2
- package/dist/core/objects/subscription/changes/subscription.comment.js +2 -2
- package/dist/core/objects/subscription/changes/subscription.create.d.ts +2 -1
- package/dist/core/objects/subscription/changes/subscription.create.js +1 -1
- package/dist/core/objects/subscription/changes/subscription.drop.d.ts +2 -1
- package/dist/core/objects/subscription/changes/subscription.drop.js +1 -1
- package/dist/core/objects/subscription/changes/subscription.types.d.ts +1 -0
- package/dist/core/objects/table/changes/table.alter.d.ts +65 -22
- package/dist/core/objects/table/changes/table.alter.js +107 -22
- package/dist/core/objects/table/changes/table.comment.d.ts +7 -6
- package/dist/core/objects/table/changes/table.comment.js +6 -6
- package/dist/core/objects/table/changes/table.create.d.ts +2 -1
- package/dist/core/objects/table/changes/table.create.js +1 -1
- package/dist/core/objects/table/changes/table.drop.d.ts +4 -3
- package/dist/core/objects/table/changes/table.drop.js +7 -1
- package/dist/core/objects/table/changes/table.privilege.d.ts +4 -3
- package/dist/core/objects/table/changes/table.privilege.js +3 -3
- package/dist/core/objects/table/changes/table.types.d.ts +1 -0
- package/dist/core/objects/table/table.diff.js +46 -1
- package/dist/core/objects/trigger/changes/trigger.alter.d.ts +2 -1
- package/dist/core/objects/trigger/changes/trigger.alter.js +1 -1
- package/dist/core/objects/trigger/changes/trigger.comment.d.ts +3 -2
- package/dist/core/objects/trigger/changes/trigger.comment.js +2 -2
- package/dist/core/objects/trigger/changes/trigger.create.d.ts +2 -1
- package/dist/core/objects/trigger/changes/trigger.create.js +1 -1
- package/dist/core/objects/trigger/changes/trigger.drop.d.ts +2 -1
- package/dist/core/objects/trigger/changes/trigger.drop.js +1 -1
- package/dist/core/objects/trigger/changes/trigger.types.d.ts +1 -0
- package/dist/core/objects/type/composite-type/changes/composite-type.alter.d.ts +5 -4
- package/dist/core/objects/type/composite-type/changes/composite-type.alter.js +4 -4
- package/dist/core/objects/type/composite-type/changes/composite-type.comment.d.ts +5 -4
- package/dist/core/objects/type/composite-type/changes/composite-type.comment.js +4 -4
- package/dist/core/objects/type/composite-type/changes/composite-type.create.d.ts +2 -1
- package/dist/core/objects/type/composite-type/changes/composite-type.create.js +1 -1
- package/dist/core/objects/type/composite-type/changes/composite-type.drop.d.ts +2 -1
- package/dist/core/objects/type/composite-type/changes/composite-type.drop.js +1 -1
- package/dist/core/objects/type/composite-type/changes/composite-type.privilege.d.ts +4 -3
- package/dist/core/objects/type/composite-type/changes/composite-type.privilege.js +3 -3
- package/dist/core/objects/type/composite-type/changes/composite-type.types.d.ts +1 -0
- package/dist/core/objects/type/enum/changes/enum.alter.d.ts +3 -2
- package/dist/core/objects/type/enum/changes/enum.alter.js +2 -2
- package/dist/core/objects/type/enum/changes/enum.comment.d.ts +3 -2
- package/dist/core/objects/type/enum/changes/enum.comment.js +2 -2
- package/dist/core/objects/type/enum/changes/enum.create.d.ts +2 -1
- package/dist/core/objects/type/enum/changes/enum.create.js +1 -1
- package/dist/core/objects/type/enum/changes/enum.drop.d.ts +2 -1
- package/dist/core/objects/type/enum/changes/enum.drop.js +1 -1
- package/dist/core/objects/type/enum/changes/enum.privilege.d.ts +4 -3
- package/dist/core/objects/type/enum/changes/enum.privilege.js +3 -3
- package/dist/core/objects/type/enum/changes/enum.types.d.ts +1 -0
- package/dist/core/objects/type/range/changes/range.alter.d.ts +2 -1
- package/dist/core/objects/type/range/changes/range.alter.js +1 -1
- package/dist/core/objects/type/range/changes/range.comment.d.ts +3 -2
- package/dist/core/objects/type/range/changes/range.comment.js +2 -2
- package/dist/core/objects/type/range/changes/range.create.d.ts +2 -1
- package/dist/core/objects/type/range/changes/range.create.js +1 -1
- package/dist/core/objects/type/range/changes/range.drop.d.ts +2 -1
- package/dist/core/objects/type/range/changes/range.drop.js +1 -1
- package/dist/core/objects/type/range/changes/range.privilege.d.ts +4 -3
- package/dist/core/objects/type/range/changes/range.privilege.js +3 -3
- package/dist/core/objects/type/range/changes/range.types.d.ts +1 -0
- package/dist/core/objects/type/type.types.d.ts +1 -0
- package/dist/core/objects/view/changes/view.alter.d.ts +4 -3
- package/dist/core/objects/view/changes/view.alter.js +3 -3
- package/dist/core/objects/view/changes/view.comment.d.ts +3 -2
- package/dist/core/objects/view/changes/view.comment.js +2 -2
- package/dist/core/objects/view/changes/view.create.d.ts +2 -1
- package/dist/core/objects/view/changes/view.create.js +1 -1
- package/dist/core/objects/view/changes/view.drop.d.ts +2 -1
- package/dist/core/objects/view/changes/view.drop.js +1 -1
- package/dist/core/objects/view/changes/view.privilege.d.ts +4 -3
- package/dist/core/objects/view/changes/view.privilege.js +3 -3
- package/dist/core/objects/view/changes/view.types.d.ts +1 -0
- package/dist/core/objects/view/view.diff.js +24 -13
- package/dist/core/postgres-config.d.ts +2 -2
- package/dist/core/sort/custom-constraints.js +65 -1
- package/dist/core/sort/logical-sort.js +3 -24
- package/package.json +5 -1
- package/src/cli/commands/declarative-export.ts +19 -27
- package/src/cli/commands/plan.ts +14 -20
- package/src/cli/commands/sync.ts +8 -15
- package/src/cli/utils/integrations.test.ts +210 -3
- package/src/cli/utils/integrations.ts +134 -6
- package/src/core/catalog.snapshot.test.ts +11 -2
- package/src/core/change-utils.test.ts +61 -0
- package/src/core/change-utils.ts +73 -0
- package/src/core/change.types.ts +50 -0
- package/src/core/depend.ts +25 -0
- package/src/core/expand-replace-dependencies.test.ts +126 -1
- package/src/core/expand-replace-dependencies.ts +50 -0
- package/src/core/export/file-mapper.ts +7 -2
- package/src/core/integrations/filter/dsl.test.ts +299 -60
- package/src/core/integrations/filter/dsl.ts +208 -169
- package/src/core/integrations/filter/flatten.test.ts +282 -0
- package/src/core/integrations/filter/flatten.ts +150 -0
- package/src/core/integrations/integration-dsl.ts +17 -1
- package/src/core/integrations/merge.test.ts +128 -0
- package/src/core/integrations/merge.ts +72 -0
- package/src/core/integrations/serialize/dsl.test.ts +26 -7
- package/src/core/integrations/serialize/dsl.ts +8 -14
- package/src/core/integrations/serialize/serialize.types.ts +37 -0
- package/src/core/integrations/supabase.ts +42 -8
- package/src/core/objects/aggregate/changes/aggregate.alter.ts +2 -1
- package/src/core/objects/aggregate/changes/aggregate.comment.ts +3 -2
- package/src/core/objects/aggregate/changes/aggregate.create.ts +2 -1
- package/src/core/objects/aggregate/changes/aggregate.drop.ts +2 -1
- package/src/core/objects/aggregate/changes/aggregate.privilege.ts +4 -3
- package/src/core/objects/aggregate/changes/aggregate.types.ts +1 -0
- package/src/core/objects/base.change.ts +13 -1
- package/src/core/objects/base.model.test.ts +43 -0
- package/src/core/objects/base.model.ts +5 -2
- package/src/core/objects/collation/changes/collation.alter.ts +3 -2
- package/src/core/objects/collation/changes/collation.comment.ts +3 -2
- package/src/core/objects/collation/changes/collation.create.ts +2 -1
- package/src/core/objects/collation/changes/collation.drop.ts +2 -1
- package/src/core/objects/collation/changes/collation.types.ts +1 -0
- package/src/core/objects/domain/changes/domain.alter.ts +9 -8
- package/src/core/objects/domain/changes/domain.comment.ts +3 -2
- package/src/core/objects/domain/changes/domain.create.ts +19 -2
- package/src/core/objects/domain/changes/domain.drop.ts +2 -1
- package/src/core/objects/domain/changes/domain.privilege.ts +4 -3
- package/src/core/objects/domain/changes/domain.types.ts +1 -0
- package/src/core/objects/event-trigger/changes/event-trigger.alter.ts +3 -2
- package/src/core/objects/event-trigger/changes/event-trigger.comment.ts +3 -2
- package/src/core/objects/event-trigger/changes/event-trigger.create.ts +2 -1
- package/src/core/objects/event-trigger/changes/event-trigger.drop.ts +2 -1
- package/src/core/objects/event-trigger/changes/event-trigger.types.ts +1 -0
- package/src/core/objects/extension/changes/extension.alter.ts +3 -2
- package/src/core/objects/extension/changes/extension.comment.ts +3 -2
- package/src/core/objects/extension/changes/extension.create.test.ts +22 -0
- package/src/core/objects/extension/changes/extension.create.ts +5 -2
- package/src/core/objects/extension/changes/extension.drop.ts +2 -1
- package/src/core/objects/extension/changes/extension.types.ts +1 -0
- package/src/core/objects/foreign-data-wrapper/foreign-data-wrapper/changes/foreign-data-wrapper.alter.ts +3 -2
- package/src/core/objects/foreign-data-wrapper/foreign-data-wrapper/changes/foreign-data-wrapper.comment.ts +3 -2
- package/src/core/objects/foreign-data-wrapper/foreign-data-wrapper/changes/foreign-data-wrapper.create.ts +2 -1
- package/src/core/objects/foreign-data-wrapper/foreign-data-wrapper/changes/foreign-data-wrapper.drop.ts +2 -1
- package/src/core/objects/foreign-data-wrapper/foreign-data-wrapper/changes/foreign-data-wrapper.privilege.ts +4 -3
- package/src/core/objects/foreign-data-wrapper/foreign-data-wrapper/changes/foreign-data-wrapper.types.ts +1 -0
- package/src/core/objects/foreign-data-wrapper/foreign-data-wrapper.types.ts +1 -0
- package/src/core/objects/foreign-data-wrapper/foreign-table/changes/foreign-table.alter.ts +10 -9
- package/src/core/objects/foreign-data-wrapper/foreign-table/changes/foreign-table.comment.ts +3 -2
- package/src/core/objects/foreign-data-wrapper/foreign-table/changes/foreign-table.create.ts +2 -1
- package/src/core/objects/foreign-data-wrapper/foreign-table/changes/foreign-table.drop.ts +2 -1
- package/src/core/objects/foreign-data-wrapper/foreign-table/changes/foreign-table.privilege.ts +4 -3
- package/src/core/objects/foreign-data-wrapper/foreign-table/changes/foreign-table.types.ts +1 -0
- package/src/core/objects/foreign-data-wrapper/server/changes/server.alter.ts +4 -3
- package/src/core/objects/foreign-data-wrapper/server/changes/server.comment.ts +3 -2
- package/src/core/objects/foreign-data-wrapper/server/changes/server.create.ts +2 -1
- package/src/core/objects/foreign-data-wrapper/server/changes/server.drop.ts +2 -1
- package/src/core/objects/foreign-data-wrapper/server/changes/server.privilege.ts +4 -3
- package/src/core/objects/foreign-data-wrapper/server/changes/server.types.ts +1 -0
- package/src/core/objects/foreign-data-wrapper/user-mapping/changes/user-mapping.alter.ts +2 -1
- package/src/core/objects/foreign-data-wrapper/user-mapping/changes/user-mapping.create.ts +2 -1
- package/src/core/objects/foreign-data-wrapper/user-mapping/changes/user-mapping.drop.ts +2 -1
- package/src/core/objects/foreign-data-wrapper/user-mapping/changes/user-mapping.types.ts +1 -0
- package/src/core/objects/index/changes/index.alter.ts +4 -3
- package/src/core/objects/index/changes/index.comment.ts +3 -2
- package/src/core/objects/index/changes/index.create.ts +2 -1
- package/src/core/objects/index/changes/index.drop.ts +2 -1
- package/src/core/objects/index/changes/index.types.ts +1 -0
- package/src/core/objects/language/changes/language.alter.ts +2 -1
- package/src/core/objects/language/changes/language.comment.ts +3 -2
- package/src/core/objects/language/changes/language.create.ts +2 -1
- package/src/core/objects/language/changes/language.drop.ts +2 -1
- package/src/core/objects/language/changes/language.privilege.ts +4 -3
- package/src/core/objects/language/changes/language.types.ts +1 -0
- package/src/core/objects/materialized-view/changes/materialized-view.alter.ts +3 -2
- package/src/core/objects/materialized-view/changes/materialized-view.comment.ts +5 -4
- package/src/core/objects/materialized-view/changes/materialized-view.create.ts +2 -1
- package/src/core/objects/materialized-view/changes/materialized-view.drop.ts +2 -1
- package/src/core/objects/materialized-view/changes/materialized-view.privilege.ts +4 -3
- package/src/core/objects/materialized-view/changes/materialized-view.types.ts +1 -0
- package/src/core/objects/procedure/changes/procedure.alter.ts +8 -7
- package/src/core/objects/procedure/changes/procedure.comment.ts +3 -2
- package/src/core/objects/procedure/changes/procedure.create.ts +2 -1
- package/src/core/objects/procedure/changes/procedure.drop.ts +2 -1
- package/src/core/objects/procedure/changes/procedure.privilege.ts +4 -3
- package/src/core/objects/procedure/changes/procedure.types.ts +1 -0
- package/src/core/objects/publication/changes/publication.alter.test.ts +4 -0
- package/src/core/objects/publication/changes/publication.alter.ts +14 -7
- package/src/core/objects/publication/changes/publication.comment.ts +3 -2
- package/src/core/objects/publication/changes/publication.create.ts +2 -1
- package/src/core/objects/publication/changes/publication.drop.ts +2 -1
- package/src/core/objects/publication/changes/publication.types.ts +1 -0
- package/src/core/objects/rls-policy/changes/rls-policy.alter.ts +4 -3
- package/src/core/objects/rls-policy/changes/rls-policy.comment.ts +3 -2
- package/src/core/objects/rls-policy/changes/rls-policy.create.ts +2 -1
- package/src/core/objects/rls-policy/changes/rls-policy.drop.ts +2 -1
- package/src/core/objects/rls-policy/changes/rls-policy.types.ts +1 -0
- package/src/core/objects/role/changes/role.alter.ts +3 -2
- package/src/core/objects/role/changes/role.comment.ts +3 -2
- package/src/core/objects/role/changes/role.create.ts +2 -1
- package/src/core/objects/role/changes/role.drop.ts +2 -1
- package/src/core/objects/role/changes/role.privilege.ts +6 -5
- package/src/core/objects/role/changes/role.types.ts +1 -0
- package/src/core/objects/rule/changes/rule.alter.ts +3 -2
- package/src/core/objects/rule/changes/rule.comment.ts +3 -2
- package/src/core/objects/rule/changes/rule.create.ts +2 -1
- package/src/core/objects/rule/changes/rule.drop.ts +2 -1
- package/src/core/objects/rule/changes/rule.types.ts +1 -0
- package/src/core/objects/schema/changes/schema.alter.ts +2 -1
- package/src/core/objects/schema/changes/schema.comment.ts +3 -2
- package/src/core/objects/schema/changes/schema.create.ts +3 -3
- package/src/core/objects/schema/changes/schema.drop.ts +2 -1
- package/src/core/objects/schema/changes/schema.privilege.ts +4 -3
- package/src/core/objects/schema/changes/schema.types.ts +1 -0
- package/src/core/objects/sequence/changes/sequence.alter.ts +3 -2
- package/src/core/objects/sequence/changes/sequence.comment.ts +3 -2
- package/src/core/objects/sequence/changes/sequence.create.ts +2 -1
- package/src/core/objects/sequence/changes/sequence.drop.ts +16 -3
- package/src/core/objects/sequence/changes/sequence.privilege.ts +4 -3
- package/src/core/objects/sequence/changes/sequence.types.ts +1 -0
- package/src/core/objects/sequence/sequence.diff.test.ts +73 -1
- package/src/core/objects/sequence/sequence.diff.ts +24 -2
- package/src/core/objects/subscription/changes/subscription.alter.ts +7 -6
- package/src/core/objects/subscription/changes/subscription.comment.ts +3 -2
- package/src/core/objects/subscription/changes/subscription.create.ts +2 -1
- package/src/core/objects/subscription/changes/subscription.drop.ts +2 -1
- package/src/core/objects/subscription/changes/subscription.types.ts +1 -0
- package/src/core/objects/table/changes/table.alter.test.ts +38 -0
- package/src/core/objects/table/changes/table.alter.ts +123 -22
- package/src/core/objects/table/changes/table.comment.ts +7 -6
- package/src/core/objects/table/changes/table.create.ts +2 -1
- package/src/core/objects/table/changes/table.drop.ts +20 -1
- package/src/core/objects/table/changes/table.privilege.ts +4 -3
- package/src/core/objects/table/changes/table.types.ts +1 -0
- package/src/core/objects/table/table.diff.test.ts +121 -0
- package/src/core/objects/table/table.diff.ts +64 -1
- package/src/core/objects/trigger/changes/trigger.alter.ts +2 -1
- package/src/core/objects/trigger/changes/trigger.comment.ts +3 -2
- package/src/core/objects/trigger/changes/trigger.create.ts +2 -1
- package/src/core/objects/trigger/changes/trigger.drop.ts +2 -1
- package/src/core/objects/trigger/changes/trigger.types.ts +1 -0
- package/src/core/objects/type/composite-type/changes/composite-type.alter.ts +5 -4
- package/src/core/objects/type/composite-type/changes/composite-type.comment.ts +5 -4
- package/src/core/objects/type/composite-type/changes/composite-type.create.ts +2 -1
- package/src/core/objects/type/composite-type/changes/composite-type.drop.ts +2 -1
- package/src/core/objects/type/composite-type/changes/composite-type.privilege.ts +4 -3
- package/src/core/objects/type/composite-type/changes/composite-type.types.ts +1 -0
- package/src/core/objects/type/enum/changes/enum.alter.ts +3 -2
- package/src/core/objects/type/enum/changes/enum.comment.ts +3 -2
- package/src/core/objects/type/enum/changes/enum.create.ts +2 -1
- package/src/core/objects/type/enum/changes/enum.drop.ts +2 -1
- package/src/core/objects/type/enum/changes/enum.privilege.ts +4 -3
- package/src/core/objects/type/enum/changes/enum.types.ts +1 -0
- package/src/core/objects/type/range/changes/range.alter.ts +2 -1
- package/src/core/objects/type/range/changes/range.comment.ts +3 -2
- package/src/core/objects/type/range/changes/range.create.ts +2 -1
- package/src/core/objects/type/range/changes/range.drop.ts +2 -1
- package/src/core/objects/type/range/changes/range.privilege.ts +4 -3
- package/src/core/objects/type/range/changes/range.types.ts +1 -0
- package/src/core/objects/type/type.types.ts +1 -0
- package/src/core/objects/view/changes/view.alter.ts +4 -3
- package/src/core/objects/view/changes/view.comment.ts +3 -2
- package/src/core/objects/view/changes/view.create.ts +2 -1
- package/src/core/objects/view/changes/view.drop.ts +2 -1
- package/src/core/objects/view/changes/view.privilege.ts +4 -3
- package/src/core/objects/view/changes/view.types.ts +1 -0
- package/src/core/objects/view/view.diff.test.ts +96 -0
- package/src/core/objects/view/view.diff.ts +30 -15
- package/src/core/plan/sql-format/format-off.test.ts +1 -1
- package/src/core/plan/sql-format/format-pretty-lower-leading.test.ts +1 -1
- package/src/core/plan/sql-format/format-pretty-narrow.test.ts +1 -1
- package/src/core/plan/sql-format/format-pretty-preserve.test.ts +1 -1
- package/src/core/plan/sql-format/format-pretty-upper.test.ts +1 -1
- package/src/core/postgres-config.ts +2 -2
- package/src/core/sort/custom-constraints.ts +75 -1
- package/src/core/sort/logical-sort.ts +3 -27
- package/src/typedoc.ts +253 -0
- package/dist/core/integrations/filter/extractors.d.ts +0 -12
- package/dist/core/integrations/filter/extractors.js +0 -178
- package/src/core/integrations/filter/extractors.test.ts +0 -244
- package/src/core/integrations/filter/extractors.ts +0 -187
|
@@ -156,6 +156,10 @@ describe("publication.alter", () => {
|
|
|
156
156
|
stableId.table("public", "logs"),
|
|
157
157
|
stableId.table("audit", "events"),
|
|
158
158
|
]);
|
|
159
|
+
expect(change.drops).toEqual([
|
|
160
|
+
stableId.table("public", "logs"),
|
|
161
|
+
stableId.table("audit", "events"),
|
|
162
|
+
]);
|
|
159
163
|
await assertValidSql(change.serialize());
|
|
160
164
|
expect(change.serialize()).toBe(
|
|
161
165
|
"ALTER PUBLICATION pub_drop_tables DROP TABLE public.logs, audit.events",
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { SerializeOptions } from "../../../integrations/serialize/serialize.types.ts";
|
|
1
2
|
import { stableId } from "../../utils.ts";
|
|
2
3
|
import type {
|
|
3
4
|
Publication,
|
|
@@ -31,7 +32,7 @@ export class AlterPublicationSetOptions extends AlterPublicationChange {
|
|
|
31
32
|
return [this.publication.stableId];
|
|
32
33
|
}
|
|
33
34
|
|
|
34
|
-
serialize(): string {
|
|
35
|
+
serialize(_options?: SerializeOptions): string {
|
|
35
36
|
const assignments: string[] = [];
|
|
36
37
|
|
|
37
38
|
if (this.setPublish) {
|
|
@@ -79,7 +80,7 @@ export class AlterPublicationSetList extends AlterPublicationChange {
|
|
|
79
80
|
return Array.from(dependencies);
|
|
80
81
|
}
|
|
81
82
|
|
|
82
|
-
serialize(): string {
|
|
83
|
+
serialize(_options?: SerializeOptions): string {
|
|
83
84
|
const clauses = formatPublicationObjects(
|
|
84
85
|
this.publication.tables,
|
|
85
86
|
this.publication.schemas,
|
|
@@ -118,7 +119,7 @@ export class AlterPublicationAddTables extends AlterPublicationChange {
|
|
|
118
119
|
return Array.from(dependencies);
|
|
119
120
|
}
|
|
120
121
|
|
|
121
|
-
serialize(): string {
|
|
122
|
+
serialize(_options?: SerializeOptions): string {
|
|
122
123
|
const clauses = this.tables.map((table) => formatPublicationTable(table));
|
|
123
124
|
return `ALTER PUBLICATION ${this.publication.name} ADD ${clauses.join(", ")}`;
|
|
124
125
|
}
|
|
@@ -150,7 +151,13 @@ export class AlterPublicationDropTables extends AlterPublicationChange {
|
|
|
150
151
|
return Array.from(dependencies);
|
|
151
152
|
}
|
|
152
153
|
|
|
153
|
-
|
|
154
|
+
get drops() {
|
|
155
|
+
// Treat ALTER PUBLICATION ... DROP TABLE as a destructive change so it runs
|
|
156
|
+
// in the drop phase before DROP TABLE removes the referenced relation.
|
|
157
|
+
return this.tables.map((table) => stableId.table(table.schema, table.name));
|
|
158
|
+
}
|
|
159
|
+
|
|
160
|
+
serialize(_options?: SerializeOptions): string {
|
|
154
161
|
const targets = this.tables.map((table) => `${table.schema}.${table.name}`);
|
|
155
162
|
return `ALTER PUBLICATION ${this.publication.name} DROP TABLE ${targets.join(", ")}`;
|
|
156
163
|
}
|
|
@@ -174,7 +181,7 @@ export class AlterPublicationAddSchemas extends AlterPublicationChange {
|
|
|
174
181
|
];
|
|
175
182
|
}
|
|
176
183
|
|
|
177
|
-
serialize(): string {
|
|
184
|
+
serialize(_options?: SerializeOptions): string {
|
|
178
185
|
const clauses = this.schemas.map((schema) => `TABLES IN SCHEMA ${schema}`);
|
|
179
186
|
return `ALTER PUBLICATION ${this.publication.name} ADD ${clauses.join(", ")}`;
|
|
180
187
|
}
|
|
@@ -198,7 +205,7 @@ export class AlterPublicationDropSchemas extends AlterPublicationChange {
|
|
|
198
205
|
];
|
|
199
206
|
}
|
|
200
207
|
|
|
201
|
-
serialize(): string {
|
|
208
|
+
serialize(_options?: SerializeOptions): string {
|
|
202
209
|
const clauses = this.schemas.map((schema) => `TABLES IN SCHEMA ${schema}`);
|
|
203
210
|
return `ALTER PUBLICATION ${this.publication.name} DROP ${clauses.join(", ")}`;
|
|
204
211
|
}
|
|
@@ -219,7 +226,7 @@ export class AlterPublicationSetOwner extends AlterPublicationChange {
|
|
|
219
226
|
return [this.publication.stableId, stableId.role(this.owner)];
|
|
220
227
|
}
|
|
221
228
|
|
|
222
|
-
serialize(): string {
|
|
229
|
+
serialize(_options?: SerializeOptions): string {
|
|
223
230
|
return `ALTER PUBLICATION ${this.publication.name} OWNER TO ${this.owner}`;
|
|
224
231
|
}
|
|
225
232
|
}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { SerializeOptions } from "../../../integrations/serialize/serialize.types.ts";
|
|
1
2
|
import { quoteLiteral } from "../../base.change.ts";
|
|
2
3
|
import { stableId } from "../../utils.ts";
|
|
3
4
|
import type { Publication } from "../publication.model.ts";
|
|
@@ -27,7 +28,7 @@ export class CreateCommentOnPublication extends CreatePublicationChange {
|
|
|
27
28
|
return [this.publication.stableId];
|
|
28
29
|
}
|
|
29
30
|
|
|
30
|
-
serialize(): string {
|
|
31
|
+
serialize(_options?: SerializeOptions): string {
|
|
31
32
|
return [
|
|
32
33
|
"COMMENT ON PUBLICATION",
|
|
33
34
|
this.publication.name,
|
|
@@ -58,7 +59,7 @@ export class DropCommentOnPublication extends DropPublicationChange {
|
|
|
58
59
|
];
|
|
59
60
|
}
|
|
60
61
|
|
|
61
|
-
serialize(): string {
|
|
62
|
+
serialize(_options?: SerializeOptions): string {
|
|
62
63
|
return `COMMENT ON PUBLICATION ${this.publication.name} IS NULL`;
|
|
63
64
|
}
|
|
64
65
|
}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { SerializeOptions } from "../../../integrations/serialize/serialize.types.ts";
|
|
1
2
|
import { stableId } from "../../utils.ts";
|
|
2
3
|
import type { Publication } from "../publication.model.ts";
|
|
3
4
|
import {
|
|
@@ -48,7 +49,7 @@ export class CreatePublication extends CreatePublicationChange {
|
|
|
48
49
|
return Array.from(dependencies);
|
|
49
50
|
}
|
|
50
51
|
|
|
51
|
-
serialize(): string {
|
|
52
|
+
serialize(_options?: SerializeOptions): string {
|
|
52
53
|
const parts: string[] = ["CREATE PUBLICATION", this.publication.name];
|
|
53
54
|
|
|
54
55
|
if (this.publication.all_tables) {
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { SerializeOptions } from "../../../integrations/serialize/serialize.types.ts";
|
|
1
2
|
import type { Publication } from "../publication.model.ts";
|
|
2
3
|
import { DropPublicationChange } from "./publication.base.ts";
|
|
3
4
|
|
|
@@ -23,7 +24,7 @@ export class DropPublication extends DropPublicationChange {
|
|
|
23
24
|
return [this.publication.stableId];
|
|
24
25
|
}
|
|
25
26
|
|
|
26
|
-
serialize(): string {
|
|
27
|
+
serialize(_options?: SerializeOptions): string {
|
|
27
28
|
return `DROP PUBLICATION ${this.publication.name}`;
|
|
28
29
|
}
|
|
29
30
|
}
|
|
@@ -11,6 +11,7 @@ import type { CommentPublication } from "./publication.comment.ts";
|
|
|
11
11
|
import type { CreatePublication } from "./publication.create.ts";
|
|
12
12
|
import type { DropPublication } from "./publication.drop.ts";
|
|
13
13
|
|
|
14
|
+
/** Union of all publication-related change variants (`objectType: "publication"`). @category Change Types */
|
|
14
15
|
export type PublicationChange =
|
|
15
16
|
| AlterPublicationAddSchemas
|
|
16
17
|
| AlterPublicationAddTables
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { SerializeOptions } from "../../../integrations/serialize/serialize.types.ts";
|
|
1
2
|
import type { RlsPolicy } from "../rls-policy.model.ts";
|
|
2
3
|
import { AlterRlsPolicyChange } from "./rls-policy.base.ts";
|
|
3
4
|
|
|
@@ -38,7 +39,7 @@ export class AlterRlsPolicySetRoles extends AlterRlsPolicyChange {
|
|
|
38
39
|
return [this.policy.stableId];
|
|
39
40
|
}
|
|
40
41
|
|
|
41
|
-
serialize(): string {
|
|
42
|
+
serialize(_options?: SerializeOptions): string {
|
|
42
43
|
const targetRoles = this.roles;
|
|
43
44
|
const toPublic =
|
|
44
45
|
targetRoles.length === 0 ||
|
|
@@ -74,7 +75,7 @@ export class AlterRlsPolicySetUsingExpression extends AlterRlsPolicyChange {
|
|
|
74
75
|
return [this.policy.stableId];
|
|
75
76
|
}
|
|
76
77
|
|
|
77
|
-
serialize(): string {
|
|
78
|
+
serialize(_options?: SerializeOptions): string {
|
|
78
79
|
const expr = this.usingExpression ?? "true";
|
|
79
80
|
return [
|
|
80
81
|
"ALTER POLICY",
|
|
@@ -108,7 +109,7 @@ export class AlterRlsPolicySetWithCheckExpression extends AlterRlsPolicyChange {
|
|
|
108
109
|
return [this.policy.stableId];
|
|
109
110
|
}
|
|
110
111
|
|
|
111
|
-
serialize(): string {
|
|
112
|
+
serialize(_options?: SerializeOptions): string {
|
|
112
113
|
const expr = this.withCheckExpression ?? "true";
|
|
113
114
|
return [
|
|
114
115
|
"ALTER POLICY",
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { SerializeOptions } from "../../../integrations/serialize/serialize.types.ts";
|
|
1
2
|
import { quoteLiteral } from "../../base.change.ts";
|
|
2
3
|
import { stableId } from "../../utils.ts";
|
|
3
4
|
import type { RlsPolicy } from "../rls-policy.model.ts";
|
|
@@ -27,7 +28,7 @@ export class CreateCommentOnRlsPolicy extends CreateRlsPolicyChange {
|
|
|
27
28
|
return [this.policy.stableId];
|
|
28
29
|
}
|
|
29
30
|
|
|
30
|
-
serialize(): string {
|
|
31
|
+
serialize(_options?: SerializeOptions): string {
|
|
31
32
|
return [
|
|
32
33
|
"COMMENT ON POLICY",
|
|
33
34
|
this.policy.name,
|
|
@@ -57,7 +58,7 @@ export class DropCommentOnRlsPolicy extends DropRlsPolicyChange {
|
|
|
57
58
|
return [stableId.comment(this.policy.stableId), this.policy.stableId];
|
|
58
59
|
}
|
|
59
60
|
|
|
60
|
-
serialize(): string {
|
|
61
|
+
serialize(_options?: SerializeOptions): string {
|
|
61
62
|
return [
|
|
62
63
|
"COMMENT ON POLICY",
|
|
63
64
|
this.policy.name,
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { SerializeOptions } from "../../../integrations/serialize/serialize.types.ts";
|
|
1
2
|
import { stableId } from "../../utils.ts";
|
|
2
3
|
import type { RlsPolicy } from "../rls-policy.model.ts";
|
|
3
4
|
import { CreateRlsPolicyChange } from "./rls-policy.base.ts";
|
|
@@ -47,7 +48,7 @@ export class CreateRlsPolicy extends CreateRlsPolicyChange {
|
|
|
47
48
|
return Array.from(dependencies);
|
|
48
49
|
}
|
|
49
50
|
|
|
50
|
-
serialize(): string {
|
|
51
|
+
serialize(_options?: SerializeOptions): string {
|
|
51
52
|
const parts: string[] = ["CREATE POLICY"];
|
|
52
53
|
|
|
53
54
|
// Add policy name
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { SerializeOptions } from "../../../integrations/serialize/serialize.types.ts";
|
|
1
2
|
import type { RlsPolicy } from "../rls-policy.model.ts";
|
|
2
3
|
import { DropRlsPolicyChange } from "./rls-policy.base.ts";
|
|
3
4
|
|
|
@@ -28,7 +29,7 @@ export class DropRlsPolicy extends DropRlsPolicyChange {
|
|
|
28
29
|
return [this.policy.stableId];
|
|
29
30
|
}
|
|
30
31
|
|
|
31
|
-
serialize(): string {
|
|
32
|
+
serialize(_options?: SerializeOptions): string {
|
|
32
33
|
return [
|
|
33
34
|
"DROP POLICY",
|
|
34
35
|
this.policy.name,
|
|
@@ -3,6 +3,7 @@ import type { CommentRlsPolicy } from "./rls-policy.comment.ts";
|
|
|
3
3
|
import type { CreateRlsPolicy } from "./rls-policy.create.ts";
|
|
4
4
|
import type { DropRlsPolicy } from "./rls-policy.drop.ts";
|
|
5
5
|
|
|
6
|
+
/** Union of all RLS policy-related change variants (`objectType: "rls_policy"`). @category Change Types */
|
|
6
7
|
export type RlsPolicyChange =
|
|
7
8
|
| AlterRlsPolicy
|
|
8
9
|
| CommentRlsPolicy
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { SerializeOptions } from "../../../integrations/serialize/serialize.types.ts";
|
|
1
2
|
import { formatConfigValue } from "../../procedure/utils.ts";
|
|
2
3
|
import type { Role } from "../role.model.ts";
|
|
3
4
|
import { AlterRoleChange } from "./role.base.ts";
|
|
@@ -56,7 +57,7 @@ export class AlterRoleSetOptions extends AlterRoleChange {
|
|
|
56
57
|
return [this.role.stableId];
|
|
57
58
|
}
|
|
58
59
|
|
|
59
|
-
serialize(): string {
|
|
60
|
+
serialize(_options?: SerializeOptions): string {
|
|
60
61
|
const parts: string[] = ["ALTER ROLE", this.role.name];
|
|
61
62
|
return [...parts, "WITH", this.options.join(" ")].join(" ");
|
|
62
63
|
}
|
|
@@ -93,7 +94,7 @@ export class AlterRoleSetConfig extends AlterRoleChange {
|
|
|
93
94
|
return [this.role.stableId];
|
|
94
95
|
}
|
|
95
96
|
|
|
96
|
-
serialize(): string {
|
|
97
|
+
serialize(_options?: SerializeOptions): string {
|
|
97
98
|
const head = ["ALTER ROLE", this.role.name].join(" ");
|
|
98
99
|
if (this.action === "reset_all") {
|
|
99
100
|
return `${head} RESET ALL`;
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { SerializeOptions } from "../../../integrations/serialize/serialize.types.ts";
|
|
1
2
|
import { quoteLiteral } from "../../base.change.ts";
|
|
2
3
|
import { stableId } from "../../utils.ts";
|
|
3
4
|
import type { Role } from "../role.model.ts";
|
|
@@ -22,7 +23,7 @@ export class CreateCommentOnRole extends CreateRoleChange {
|
|
|
22
23
|
return [this.role.stableId];
|
|
23
24
|
}
|
|
24
25
|
|
|
25
|
-
serialize(): string {
|
|
26
|
+
serialize(_options?: SerializeOptions): string {
|
|
26
27
|
return [
|
|
27
28
|
"COMMENT ON ROLE",
|
|
28
29
|
this.role.name,
|
|
@@ -49,7 +50,7 @@ export class DropCommentOnRole extends DropRoleChange {
|
|
|
49
50
|
return [stableId.comment(this.role.stableId), this.role.stableId];
|
|
50
51
|
}
|
|
51
52
|
|
|
52
|
-
serialize(): string {
|
|
53
|
+
serialize(_options?: SerializeOptions): string {
|
|
53
54
|
return ["COMMENT ON ROLE", this.role.name, "IS NULL"].join(" ");
|
|
54
55
|
}
|
|
55
56
|
}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { SerializeOptions } from "../../../integrations/serialize/serialize.types.ts";
|
|
1
2
|
import type { Role } from "../role.model.ts";
|
|
2
3
|
import { CreateRoleChange } from "./role.base.ts";
|
|
3
4
|
|
|
@@ -41,7 +42,7 @@ export class CreateRole extends CreateRoleChange {
|
|
|
41
42
|
return [this.role.stableId];
|
|
42
43
|
}
|
|
43
44
|
|
|
44
|
-
serialize(): string {
|
|
45
|
+
serialize(_options?: SerializeOptions): string {
|
|
45
46
|
const parts: string[] = ["CREATE ROLE"];
|
|
46
47
|
|
|
47
48
|
// Add role name
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { SerializeOptions } from "../../../integrations/serialize/serialize.types.ts";
|
|
1
2
|
import type { Role } from "../role.model.ts";
|
|
2
3
|
import { DropRoleChange } from "./role.base.ts";
|
|
3
4
|
|
|
@@ -28,7 +29,7 @@ export class DropRole extends DropRoleChange {
|
|
|
28
29
|
return [this.role.stableId];
|
|
29
30
|
}
|
|
30
31
|
|
|
31
|
-
serialize(): string {
|
|
32
|
+
serialize(_options?: SerializeOptions): string {
|
|
32
33
|
return ["DROP ROLE", this.role.name].join(" ");
|
|
33
34
|
}
|
|
34
35
|
}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { SerializeOptions } from "../../../integrations/serialize/serialize.types.ts";
|
|
1
2
|
import { stableId } from "../../utils.ts";
|
|
2
3
|
import type { Role } from "../role.model.ts";
|
|
3
4
|
import { CreateRoleChange, DropRoleChange } from "./role.base.ts";
|
|
@@ -50,7 +51,7 @@ export class GrantRoleMembership extends CreateRoleChange {
|
|
|
50
51
|
return [this.role.stableId, stableId.role(this.member)];
|
|
51
52
|
}
|
|
52
53
|
|
|
53
|
-
serialize(): string {
|
|
54
|
+
serialize(_options?: SerializeOptions): string {
|
|
54
55
|
// On creation, only emit ADMIN OPTION; leave INHERIT/SET to defaults
|
|
55
56
|
const opts: string[] = [];
|
|
56
57
|
if (this.options.admin) opts.push("ADMIN OPTION");
|
|
@@ -94,7 +95,7 @@ export class RevokeRoleMembership extends DropRoleChange {
|
|
|
94
95
|
];
|
|
95
96
|
}
|
|
96
97
|
|
|
97
|
-
serialize(): string {
|
|
98
|
+
serialize(_options?: SerializeOptions): string {
|
|
98
99
|
return `REVOKE ${this.role.name} FROM ${this.member}`;
|
|
99
100
|
}
|
|
100
101
|
}
|
|
@@ -138,7 +139,7 @@ export class RevokeRoleMembershipOptions extends DropRoleChange {
|
|
|
138
139
|
];
|
|
139
140
|
}
|
|
140
141
|
|
|
141
|
-
serialize(): string {
|
|
142
|
+
serialize(_options?: SerializeOptions): string {
|
|
142
143
|
const parts: string[] = [];
|
|
143
144
|
if (this.admin) parts.push("ADMIN OPTION");
|
|
144
145
|
if (this.inherit) parts.push("INHERIT OPTION");
|
|
@@ -197,7 +198,7 @@ export class GrantRoleDefaultPrivileges extends CreateRoleChange {
|
|
|
197
198
|
];
|
|
198
199
|
}
|
|
199
200
|
|
|
200
|
-
serialize(): string {
|
|
201
|
+
serialize(_options?: SerializeOptions): string {
|
|
201
202
|
const scope = this.inSchema ? ` IN SCHEMA ${this.inSchema}` : "";
|
|
202
203
|
const hasGrantable = this.privileges.some((p) => p.grantable);
|
|
203
204
|
const hasBase = this.privileges.some((p) => !p.grantable);
|
|
@@ -272,7 +273,7 @@ export class RevokeRoleDefaultPrivileges extends DropRoleChange {
|
|
|
272
273
|
];
|
|
273
274
|
}
|
|
274
275
|
|
|
275
|
-
serialize(): string {
|
|
276
|
+
serialize(_options?: SerializeOptions): string {
|
|
276
277
|
const scope = this.inSchema ? ` IN SCHEMA ${this.inSchema}` : "";
|
|
277
278
|
const grantOptionPrivs = this.privileges
|
|
278
279
|
.filter((p) => p.grantable)
|
|
@@ -4,6 +4,7 @@ import type { CreateRole } from "./role.create.ts";
|
|
|
4
4
|
import type { DropRole } from "./role.drop.ts";
|
|
5
5
|
import type { RolePrivilege } from "./role.privilege.ts";
|
|
6
6
|
|
|
7
|
+
/** Union of all role-related change variants (`objectType: "role"`). @category Change Types */
|
|
7
8
|
export type RoleChange =
|
|
8
9
|
| AlterRole
|
|
9
10
|
| CommentRole
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { SerializeOptions } from "../../../integrations/serialize/serialize.types.ts";
|
|
1
2
|
import { stableId } from "../../utils.ts";
|
|
2
3
|
import type { Rule, RuleEnabledState } from "../rule.model.ts";
|
|
3
4
|
import { AlterRuleChange } from "./rule.base.ts";
|
|
@@ -22,7 +23,7 @@ export class ReplaceRule extends AlterRuleChange {
|
|
|
22
23
|
];
|
|
23
24
|
}
|
|
24
25
|
|
|
25
|
-
serialize(): string {
|
|
26
|
+
serialize(_options?: SerializeOptions): string {
|
|
26
27
|
return new CreateRule({ rule: this.rule, orReplace: true }).serialize();
|
|
27
28
|
}
|
|
28
29
|
}
|
|
@@ -48,7 +49,7 @@ export class SetRuleEnabledState extends AlterRuleChange {
|
|
|
48
49
|
];
|
|
49
50
|
}
|
|
50
51
|
|
|
51
|
-
serialize(): string {
|
|
52
|
+
serialize(_options?: SerializeOptions): string {
|
|
52
53
|
const clause = clauseForState(this.enabled);
|
|
53
54
|
return `ALTER TABLE ${this.rule.schema}.${this.rule.table_name} ${clause} ${this.rule.name}`;
|
|
54
55
|
}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { SerializeOptions } from "../../../integrations/serialize/serialize.types.ts";
|
|
1
2
|
import { quoteLiteral } from "../../base.change.ts";
|
|
2
3
|
import { stableId } from "../../utils.ts";
|
|
3
4
|
import type { Rule } from "../rule.model.ts";
|
|
@@ -20,7 +21,7 @@ export class CreateCommentOnRule extends CreateRuleChange {
|
|
|
20
21
|
return [this.rule.stableId];
|
|
21
22
|
}
|
|
22
23
|
|
|
23
|
-
serialize(): string {
|
|
24
|
+
serialize(_options?: SerializeOptions): string {
|
|
24
25
|
return [
|
|
25
26
|
"COMMENT ON RULE",
|
|
26
27
|
this.rule.name,
|
|
@@ -50,7 +51,7 @@ export class DropCommentOnRule extends DropRuleChange {
|
|
|
50
51
|
return [stableId.comment(this.rule.stableId), this.rule.stableId];
|
|
51
52
|
}
|
|
52
53
|
|
|
53
|
-
serialize(): string {
|
|
54
|
+
serialize(_options?: SerializeOptions): string {
|
|
54
55
|
return [
|
|
55
56
|
"COMMENT ON RULE",
|
|
56
57
|
this.rule.name,
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { SerializeOptions } from "../../../integrations/serialize/serialize.types.ts";
|
|
1
2
|
import { stableId } from "../../utils.ts";
|
|
2
3
|
import type { Rule } from "../rule.model.ts";
|
|
3
4
|
import { CreateRuleChange } from "./rule.base.ts";
|
|
@@ -26,7 +27,7 @@ export class CreateRule extends CreateRuleChange {
|
|
|
26
27
|
];
|
|
27
28
|
}
|
|
28
29
|
|
|
29
|
-
serialize(): string {
|
|
30
|
+
serialize(_options?: SerializeOptions): string {
|
|
30
31
|
let definition = this.rule.definition.trim();
|
|
31
32
|
|
|
32
33
|
definition = definition.replace(
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { SerializeOptions } from "../../../integrations/serialize/serialize.types.ts";
|
|
1
2
|
import type { Rule } from "../rule.model.ts";
|
|
2
3
|
import { DropRuleChange } from "./rule.base.ts";
|
|
3
4
|
|
|
@@ -18,7 +19,7 @@ export class DropRule extends DropRuleChange {
|
|
|
18
19
|
return [this.rule.stableId, this.rule.relationStableId];
|
|
19
20
|
}
|
|
20
21
|
|
|
21
|
-
serialize(): string {
|
|
22
|
+
serialize(_options?: SerializeOptions): string {
|
|
22
23
|
return [
|
|
23
24
|
"DROP RULE",
|
|
24
25
|
this.rule.name,
|
|
@@ -3,6 +3,7 @@ import type { CreateCommentOnRule, DropCommentOnRule } from "./rule.comment.ts";
|
|
|
3
3
|
import type { CreateRule } from "./rule.create.ts";
|
|
4
4
|
import type { DropRule } from "./rule.drop.ts";
|
|
5
5
|
|
|
6
|
+
/** Union of all rule-related change variants (`objectType: "rule"`). @category Change Types */
|
|
6
7
|
export type RuleChange =
|
|
7
8
|
| CreateRule
|
|
8
9
|
| DropRule
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { SerializeOptions } from "../../../integrations/serialize/serialize.types.ts";
|
|
1
2
|
import type { Schema } from "../schema.model.ts";
|
|
2
3
|
import { AlterSchemaChange } from "./schema.base.ts";
|
|
3
4
|
|
|
@@ -33,7 +34,7 @@ export class AlterSchemaChangeOwner extends AlterSchemaChange {
|
|
|
33
34
|
return [this.schema.stableId];
|
|
34
35
|
}
|
|
35
36
|
|
|
36
|
-
serialize(): string {
|
|
37
|
+
serialize(_options?: SerializeOptions): string {
|
|
37
38
|
return ["ALTER SCHEMA", this.schema.name, "OWNER TO", this.owner].join(" ");
|
|
38
39
|
}
|
|
39
40
|
}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { SerializeOptions } from "../../../integrations/serialize/serialize.types.ts";
|
|
1
2
|
import { quoteLiteral } from "../../base.change.ts";
|
|
2
3
|
import { stableId } from "../../utils.ts";
|
|
3
4
|
import type { Schema } from "../schema.model.ts";
|
|
@@ -22,7 +23,7 @@ export class CreateCommentOnSchema extends CreateSchemaChange {
|
|
|
22
23
|
return [this.schema.stableId];
|
|
23
24
|
}
|
|
24
25
|
|
|
25
|
-
serialize(): string {
|
|
26
|
+
serialize(_options?: SerializeOptions): string {
|
|
26
27
|
return [
|
|
27
28
|
"COMMENT ON SCHEMA",
|
|
28
29
|
this.schema.name,
|
|
@@ -50,7 +51,7 @@ export class DropCommentOnSchema extends DropSchemaChange {
|
|
|
50
51
|
return [stableId.comment(this.schema.stableId), this.schema.stableId];
|
|
51
52
|
}
|
|
52
53
|
|
|
53
|
-
serialize(): string {
|
|
54
|
+
serialize(_options?: SerializeOptions): string {
|
|
54
55
|
return ["COMMENT ON SCHEMA", this.schema.name, "IS NULL"].join(" ");
|
|
55
56
|
}
|
|
56
57
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
+
import type { SchemaSerializeOptions } from "../../../integrations/serialize/serialize.types.ts";
|
|
1
2
|
import { stableId } from "../../utils.ts";
|
|
2
3
|
import type { Schema } from "../schema.model.ts";
|
|
3
4
|
import { CreateSchemaChange } from "./schema.base.ts";
|
|
4
|
-
|
|
5
5
|
/**
|
|
6
6
|
* Create a schema.
|
|
7
7
|
*
|
|
@@ -18,7 +18,7 @@ export class CreateSchema extends CreateSchemaChange {
|
|
|
18
18
|
public readonly schema: Schema;
|
|
19
19
|
public readonly scope = "object" as const;
|
|
20
20
|
|
|
21
|
-
constructor(props: { schema: Schema
|
|
21
|
+
constructor(props: { schema: Schema } & SchemaSerializeOptions) {
|
|
22
22
|
super();
|
|
23
23
|
this.schema = props.schema;
|
|
24
24
|
}
|
|
@@ -31,7 +31,7 @@ export class CreateSchema extends CreateSchemaChange {
|
|
|
31
31
|
return [stableId.role(this.schema.owner)];
|
|
32
32
|
}
|
|
33
33
|
|
|
34
|
-
serialize(options?:
|
|
34
|
+
serialize(options?: SchemaSerializeOptions): string {
|
|
35
35
|
const parts: string[] = ["CREATE SCHEMA"];
|
|
36
36
|
|
|
37
37
|
// Add schema name
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { SerializeOptions } from "../../../integrations/serialize/serialize.types.ts";
|
|
1
2
|
import type { Schema } from "../schema.model.ts";
|
|
2
3
|
import { DropSchemaChange } from "./schema.base.ts";
|
|
3
4
|
|
|
@@ -28,7 +29,7 @@ export class DropSchema extends DropSchemaChange {
|
|
|
28
29
|
return [this.schema.stableId];
|
|
29
30
|
}
|
|
30
31
|
|
|
31
|
-
serialize(): string {
|
|
32
|
+
serialize(_options?: SerializeOptions): string {
|
|
32
33
|
return ["DROP SCHEMA", this.schema.name].join(" ");
|
|
33
34
|
}
|
|
34
35
|
}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { SerializeOptions } from "../../../integrations/serialize/serialize.types.ts";
|
|
1
2
|
import {
|
|
2
3
|
formatObjectPrivilegeList,
|
|
3
4
|
getObjectKindPrefix,
|
|
@@ -52,7 +53,7 @@ export class GrantSchemaPrivileges extends AlterSchemaChange {
|
|
|
52
53
|
return [this.schema.stableId, stableId.role(this.grantee)];
|
|
53
54
|
}
|
|
54
55
|
|
|
55
|
-
serialize(): string {
|
|
56
|
+
serialize(_options?: SerializeOptions): string {
|
|
56
57
|
const hasGrantable = this.privileges.some((p) => p.grantable);
|
|
57
58
|
const hasBase = this.privileges.some((p) => !p.grantable);
|
|
58
59
|
if (hasGrantable && hasBase) {
|
|
@@ -118,7 +119,7 @@ export class RevokeSchemaPrivileges extends AlterSchemaChange {
|
|
|
118
119
|
];
|
|
119
120
|
}
|
|
120
121
|
|
|
121
|
-
serialize(): string {
|
|
122
|
+
serialize(_options?: SerializeOptions): string {
|
|
122
123
|
const kindPrefix = getObjectKindPrefix("SCHEMA");
|
|
123
124
|
const list = this.privileges.map((p) => p.privilege);
|
|
124
125
|
const privSql = formatObjectPrivilegeList("SCHEMA", list, this.version);
|
|
@@ -162,7 +163,7 @@ export class RevokeGrantOptionSchemaPrivileges extends AlterSchemaChange {
|
|
|
162
163
|
];
|
|
163
164
|
}
|
|
164
165
|
|
|
165
|
-
serialize(): string {
|
|
166
|
+
serialize(_options?: SerializeOptions): string {
|
|
166
167
|
const kindPrefix = getObjectKindPrefix("SCHEMA");
|
|
167
168
|
const privSql = formatObjectPrivilegeList(
|
|
168
169
|
"SCHEMA",
|
|
@@ -4,6 +4,7 @@ import type { CreateSchema } from "./schema.create.ts";
|
|
|
4
4
|
import type { DropSchema } from "./schema.drop.ts";
|
|
5
5
|
import type { SchemaPrivilege } from "./schema.privilege.ts";
|
|
6
6
|
|
|
7
|
+
/** Union of all schema-related change variants (`objectType: "schema"`). @category Change Types */
|
|
7
8
|
export type SchemaChange =
|
|
8
9
|
| AlterSchema
|
|
9
10
|
| CommentSchema
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { SerializeOptions } from "../../../integrations/serialize/serialize.types.ts";
|
|
1
2
|
import { stableId } from "../../utils.ts";
|
|
2
3
|
import type { Sequence } from "../sequence.model.ts";
|
|
3
4
|
import { AlterSequenceChange } from "./sequence.base.ts";
|
|
@@ -58,7 +59,7 @@ export class AlterSequenceSetOwnedBy extends AlterSequenceChange {
|
|
|
58
59
|
];
|
|
59
60
|
}
|
|
60
61
|
|
|
61
|
-
serialize(): string {
|
|
62
|
+
serialize(_options?: SerializeOptions): string {
|
|
62
63
|
const head = [
|
|
63
64
|
"ALTER SEQUENCE",
|
|
64
65
|
`${this.sequence.schema}.${this.sequence.name}`,
|
|
@@ -99,7 +100,7 @@ export class AlterSequenceSetOptions extends AlterSequenceChange {
|
|
|
99
100
|
|
|
100
101
|
// Note: default max computation moved to diff when building options
|
|
101
102
|
|
|
102
|
-
serialize(): string {
|
|
103
|
+
serialize(_options?: SerializeOptions): string {
|
|
103
104
|
const parts: string[] = [
|
|
104
105
|
"ALTER SEQUENCE",
|
|
105
106
|
`${this.sequence.schema}.${this.sequence.name}`,
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { SerializeOptions } from "../../../integrations/serialize/serialize.types.ts";
|
|
1
2
|
import { quoteLiteral } from "../../base.change.ts";
|
|
2
3
|
import { stableId } from "../../utils.ts";
|
|
3
4
|
import type { Sequence } from "../sequence.model.ts";
|
|
@@ -22,7 +23,7 @@ export class CreateCommentOnSequence extends CreateSequenceChange {
|
|
|
22
23
|
return [this.sequence.stableId];
|
|
23
24
|
}
|
|
24
25
|
|
|
25
|
-
serialize(): string {
|
|
26
|
+
serialize(_options?: SerializeOptions): string {
|
|
26
27
|
return [
|
|
27
28
|
"COMMENT ON SEQUENCE",
|
|
28
29
|
`${this.sequence.schema}.${this.sequence.name}`,
|
|
@@ -50,7 +51,7 @@ export class DropCommentOnSequence extends DropSequenceChange {
|
|
|
50
51
|
return [stableId.comment(this.sequence.stableId), this.sequence.stableId];
|
|
51
52
|
}
|
|
52
53
|
|
|
53
|
-
serialize(): string {
|
|
54
|
+
serialize(_options?: SerializeOptions): string {
|
|
54
55
|
return [
|
|
55
56
|
"COMMENT ON SEQUENCE",
|
|
56
57
|
`${this.sequence.schema}.${this.sequence.name}`,
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { SerializeOptions } from "../../../integrations/serialize/serialize.types.ts";
|
|
1
2
|
import { stableId } from "../../utils.ts";
|
|
2
3
|
import type { Sequence } from "../sequence.model.ts";
|
|
3
4
|
import { CreateSequenceChange } from "./sequence.base.ts";
|
|
@@ -61,7 +62,7 @@ export class CreateSequence extends CreateSequenceChange {
|
|
|
61
62
|
return Array.from(dependencies);
|
|
62
63
|
}
|
|
63
64
|
|
|
64
|
-
serialize(): string {
|
|
65
|
+
serialize(_options?: SerializeOptions): string {
|
|
65
66
|
const parts: string[] = ["CREATE SEQUENCE"];
|
|
66
67
|
|
|
67
68
|
// Add schema and name
|