@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
|
@@ -3,4 +3,5 @@ import type { CommentServer } from "./server.comment.ts";
|
|
|
3
3
|
import type { CreateServer } from "./server.create.ts";
|
|
4
4
|
import type { DropServer } from "./server.drop.ts";
|
|
5
5
|
import type { ServerPrivilege } from "./server.privilege.ts";
|
|
6
|
+
/** Union of all server-related change variants (`objectType: "server"`). @category Change Types */
|
|
6
7
|
export type ServerChange = AlterServer | CommentServer | CreateServer | DropServer | ServerPrivilege;
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { SerializeOptions } from "../../../../integrations/serialize/serialize.types.ts";
|
|
1
2
|
import type { UserMapping } from "../user-mapping.model.ts";
|
|
2
3
|
import { AlterUserMappingChange } from "./user-mapping.base.ts";
|
|
3
4
|
/**
|
|
@@ -33,5 +34,5 @@ export declare class AlterUserMappingSetOptions extends AlterUserMappingChange {
|
|
|
33
34
|
}>;
|
|
34
35
|
});
|
|
35
36
|
get requires(): `userMapping:${string}:${string}`[];
|
|
36
|
-
serialize(): string;
|
|
37
|
+
serialize(_options?: SerializeOptions): string;
|
|
37
38
|
}
|
|
@@ -15,7 +15,7 @@ export class AlterUserMappingSetOptions extends AlterUserMappingChange {
|
|
|
15
15
|
get requires() {
|
|
16
16
|
return [this.userMapping.stableId];
|
|
17
17
|
}
|
|
18
|
-
serialize() {
|
|
18
|
+
serialize(_options) {
|
|
19
19
|
const optionParts = [];
|
|
20
20
|
for (const opt of this.options) {
|
|
21
21
|
if (opt.action === "DROP") {
|
package/dist/core/objects/foreign-data-wrapper/user-mapping/changes/user-mapping.create.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { SerializeOptions } from "../../../../integrations/serialize/serialize.types.ts";
|
|
1
2
|
import type { UserMapping } from "../user-mapping.model.ts";
|
|
2
3
|
import { CreateUserMappingChange } from "./user-mapping.base.ts";
|
|
3
4
|
/**
|
|
@@ -20,5 +21,5 @@ export declare class CreateUserMapping extends CreateUserMappingChange {
|
|
|
20
21
|
});
|
|
21
22
|
get creates(): `userMapping:${string}:${string}`[];
|
|
22
23
|
get requires(): string[];
|
|
23
|
-
serialize(): string;
|
|
24
|
+
serialize(_options?: SerializeOptions): string;
|
|
24
25
|
}
|
|
@@ -29,7 +29,7 @@ export class CreateUserMapping extends CreateUserMappingChange {
|
|
|
29
29
|
dependencies.add(stableId.server(this.userMapping.server));
|
|
30
30
|
return Array.from(dependencies);
|
|
31
31
|
}
|
|
32
|
-
serialize() {
|
|
32
|
+
serialize(_options) {
|
|
33
33
|
const parts = ["CREATE USER MAPPING FOR"];
|
|
34
34
|
// Add user (can be CURRENT_USER, PUBLIC, etc.)
|
|
35
35
|
parts.push(this.userMapping.user);
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { SerializeOptions } from "../../../../integrations/serialize/serialize.types.ts";
|
|
1
2
|
import type { UserMapping } from "../user-mapping.model.ts";
|
|
2
3
|
import { DropUserMappingChange } from "./user-mapping.base.ts";
|
|
3
4
|
/**
|
|
@@ -19,5 +20,5 @@ export declare class DropUserMapping extends DropUserMappingChange {
|
|
|
19
20
|
});
|
|
20
21
|
get drops(): `userMapping:${string}:${string}`[];
|
|
21
22
|
get requires(): `userMapping:${string}:${string}`[];
|
|
22
|
-
serialize(): string;
|
|
23
|
+
serialize(_options?: SerializeOptions): string;
|
|
23
24
|
}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { AlterUserMapping } from "./user-mapping.alter.ts";
|
|
2
2
|
import type { CreateUserMapping } from "./user-mapping.create.ts";
|
|
3
3
|
import type { DropUserMapping } from "./user-mapping.drop.ts";
|
|
4
|
+
/** Union of all user-mapping-related change variants (`objectType: "user_mapping"`). @category Change Types */
|
|
4
5
|
export type UserMappingChange = AlterUserMapping | CreateUserMapping | DropUserMapping;
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { SerializeOptions } from "../../../integrations/serialize/serialize.types.ts";
|
|
1
2
|
import { BaseChange } from "../../base.change.ts";
|
|
2
3
|
import type { Index } from "../index.model.ts";
|
|
3
4
|
import { AlterIndexChange } from "./index.base.ts";
|
|
@@ -30,7 +31,7 @@ export declare class AlterIndexSetStorageParams extends AlterIndexChange {
|
|
|
30
31
|
keysToReset: string[];
|
|
31
32
|
});
|
|
32
33
|
get requires(): `index:${string}`[];
|
|
33
|
-
serialize(): string;
|
|
34
|
+
serialize(_options?: SerializeOptions): string;
|
|
34
35
|
}
|
|
35
36
|
/**
|
|
36
37
|
* ALTER INDEX ... SET STATISTICS ...
|
|
@@ -52,7 +53,7 @@ export declare class AlterIndexSetStatistics extends BaseChange {
|
|
|
52
53
|
}>;
|
|
53
54
|
});
|
|
54
55
|
get requires(): `index:${string}`[];
|
|
55
|
-
serialize(): string;
|
|
56
|
+
serialize(_options?: SerializeOptions): string;
|
|
56
57
|
}
|
|
57
58
|
/**
|
|
58
59
|
* ALTER INDEX ... SET TABLESPACE ...
|
|
@@ -68,7 +69,7 @@ export declare class AlterIndexSetTablespace extends BaseChange {
|
|
|
68
69
|
tablespace: string;
|
|
69
70
|
});
|
|
70
71
|
get requires(): `index:${string}`[];
|
|
71
|
-
serialize(): string;
|
|
72
|
+
serialize(_options?: SerializeOptions): string;
|
|
72
73
|
}
|
|
73
74
|
/**
|
|
74
75
|
* Replace an index by dropping and recreating it.
|
|
@@ -17,7 +17,7 @@ export class AlterIndexSetStorageParams extends AlterIndexChange {
|
|
|
17
17
|
get requires() {
|
|
18
18
|
return [this.index.stableId];
|
|
19
19
|
}
|
|
20
|
-
serialize() {
|
|
20
|
+
serialize(_options) {
|
|
21
21
|
const head = [
|
|
22
22
|
"ALTER INDEX",
|
|
23
23
|
`${this.index.schema}.${this.index.name}`,
|
|
@@ -49,7 +49,7 @@ export class AlterIndexSetStatistics extends BaseChange {
|
|
|
49
49
|
get requires() {
|
|
50
50
|
return [this.index.stableId];
|
|
51
51
|
}
|
|
52
|
-
serialize() {
|
|
52
|
+
serialize(_options) {
|
|
53
53
|
const statements = [];
|
|
54
54
|
const head = [
|
|
55
55
|
"ALTER INDEX",
|
|
@@ -78,7 +78,7 @@ export class AlterIndexSetTablespace extends BaseChange {
|
|
|
78
78
|
get requires() {
|
|
79
79
|
return [this.index.stableId];
|
|
80
80
|
}
|
|
81
|
-
serialize() {
|
|
81
|
+
serialize(_options) {
|
|
82
82
|
return [
|
|
83
83
|
"ALTER INDEX",
|
|
84
84
|
`${this.index.schema}.${this.index.name}`,
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { SerializeOptions } from "../../../integrations/serialize/serialize.types.ts";
|
|
1
2
|
import type { Index } from "../index.model.ts";
|
|
2
3
|
import { CreateIndexChange, DropIndexChange } from "./index.base.ts";
|
|
3
4
|
export type CommentIndex = CreateCommentOnIndex | DropCommentOnIndex;
|
|
@@ -12,7 +13,7 @@ export declare class CreateCommentOnIndex extends CreateIndexChange {
|
|
|
12
13
|
});
|
|
13
14
|
get creates(): `comment:${string}`[];
|
|
14
15
|
get requires(): `index:${string}`[];
|
|
15
|
-
serialize(): string;
|
|
16
|
+
serialize(_options?: SerializeOptions): string;
|
|
16
17
|
}
|
|
17
18
|
export declare class DropCommentOnIndex extends DropIndexChange {
|
|
18
19
|
readonly index: Index;
|
|
@@ -22,5 +23,5 @@ export declare class DropCommentOnIndex extends DropIndexChange {
|
|
|
22
23
|
});
|
|
23
24
|
get drops(): `comment:${string}`[];
|
|
24
25
|
get requires(): (`comment:${string}` | `index:${string}`)[];
|
|
25
|
-
serialize(): string;
|
|
26
|
+
serialize(_options?: SerializeOptions): string;
|
|
26
27
|
}
|
|
@@ -17,7 +17,7 @@ export class CreateCommentOnIndex extends CreateIndexChange {
|
|
|
17
17
|
get requires() {
|
|
18
18
|
return [this.index.stableId];
|
|
19
19
|
}
|
|
20
|
-
serialize() {
|
|
20
|
+
serialize(_options) {
|
|
21
21
|
return [
|
|
22
22
|
"COMMENT ON INDEX",
|
|
23
23
|
`${this.index.schema}.${this.index.name}`,
|
|
@@ -40,7 +40,7 @@ export class DropCommentOnIndex extends DropIndexChange {
|
|
|
40
40
|
get requires() {
|
|
41
41
|
return [stableId.comment(this.index.stableId), this.index.stableId];
|
|
42
42
|
}
|
|
43
|
-
serialize() {
|
|
43
|
+
serialize(_options) {
|
|
44
44
|
return [
|
|
45
45
|
"COMMENT ON INDEX",
|
|
46
46
|
`${this.index.schema}.${this.index.name}`,
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { SerializeOptions } from "../../../integrations/serialize/serialize.types.ts";
|
|
1
2
|
import type { TableLikeObject } from "../../base.model.ts";
|
|
2
3
|
import type { Index } from "../index.model.ts";
|
|
3
4
|
import { CreateIndexChange } from "./index.base.ts";
|
|
@@ -26,5 +27,5 @@ export declare class CreateIndex extends CreateIndexChange {
|
|
|
26
27
|
});
|
|
27
28
|
get creates(): `index:${string}`[];
|
|
28
29
|
get requires(): string[];
|
|
29
|
-
serialize(): string;
|
|
30
|
+
serialize(_options?: SerializeOptions): string;
|
|
30
31
|
}
|
|
@@ -39,7 +39,7 @@ export class CreateIndex extends CreateIndexChange {
|
|
|
39
39
|
dependencies.add(stableId.role(this.index.owner));
|
|
40
40
|
return Array.from(dependencies);
|
|
41
41
|
}
|
|
42
|
-
serialize() {
|
|
42
|
+
serialize(_options) {
|
|
43
43
|
let definition = this.index.definition;
|
|
44
44
|
// btree being the default, we can omit it
|
|
45
45
|
definition = definition.replace(" USING btree", "");
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { SerializeOptions } from "../../../integrations/serialize/serialize.types.ts";
|
|
1
2
|
import type { Index } from "../index.model.ts";
|
|
2
3
|
import { DropIndexChange } from "./index.base.ts";
|
|
3
4
|
/**
|
|
@@ -18,5 +19,5 @@ export declare class DropIndex extends DropIndexChange {
|
|
|
18
19
|
});
|
|
19
20
|
get drops(): `index:${string}`[];
|
|
20
21
|
get requires(): `index:${string}`[];
|
|
21
|
-
serialize(): string;
|
|
22
|
+
serialize(_options?: SerializeOptions): string;
|
|
22
23
|
}
|
|
@@ -2,4 +2,5 @@ import type { AlterIndex } from "./index.alter.ts";
|
|
|
2
2
|
import type { CommentIndex } from "./index.comment.ts";
|
|
3
3
|
import type { CreateIndex } from "./index.create.ts";
|
|
4
4
|
import type { DropIndex } from "./index.drop.ts";
|
|
5
|
+
/** Union of all index-related change variants (`objectType: "index"`). @category Change Types */
|
|
5
6
|
export type IndexChange = AlterIndex | CommentIndex | CreateIndex | DropIndex;
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { SerializeOptions } from "../../../integrations/serialize/serialize.types.ts";
|
|
1
2
|
import type { Language } from "../language.model.ts";
|
|
2
3
|
import { AlterLanguageChange } from "./language.base.ts";
|
|
3
4
|
/**
|
|
@@ -24,7 +25,7 @@ export declare class AlterLanguageChangeOwner extends AlterLanguageChange {
|
|
|
24
25
|
owner: string;
|
|
25
26
|
});
|
|
26
27
|
get requires(): `language:${string}`[];
|
|
27
|
-
serialize(): string;
|
|
28
|
+
serialize(_options?: SerializeOptions): string;
|
|
28
29
|
}
|
|
29
30
|
/**
|
|
30
31
|
* Replace a language.
|
|
@@ -14,7 +14,7 @@ export class AlterLanguageChangeOwner extends AlterLanguageChange {
|
|
|
14
14
|
get requires() {
|
|
15
15
|
return [this.language.stableId];
|
|
16
16
|
}
|
|
17
|
-
serialize() {
|
|
17
|
+
serialize(_options) {
|
|
18
18
|
const parts = ["ALTER"];
|
|
19
19
|
// Do not print the optional PROCEDURAL keyword.
|
|
20
20
|
// It is syntactic noise and the default for procedural languages,
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { SerializeOptions } from "../../../integrations/serialize/serialize.types.ts";
|
|
1
2
|
import type { Language } from "../language.model.ts";
|
|
2
3
|
import { CreateLanguageChange, DropLanguageChange } from "./language.base.ts";
|
|
3
4
|
export type CommentLanguage = CreateCommentOnLanguage | DropCommentOnLanguage;
|
|
@@ -12,7 +13,7 @@ export declare class CreateCommentOnLanguage extends CreateLanguageChange {
|
|
|
12
13
|
});
|
|
13
14
|
get creates(): `comment:${string}`[];
|
|
14
15
|
get requires(): `language:${string}`[];
|
|
15
|
-
serialize(): string;
|
|
16
|
+
serialize(_options?: SerializeOptions): string;
|
|
16
17
|
}
|
|
17
18
|
export declare class DropCommentOnLanguage extends DropLanguageChange {
|
|
18
19
|
readonly language: Language;
|
|
@@ -22,5 +23,5 @@ export declare class DropCommentOnLanguage extends DropLanguageChange {
|
|
|
22
23
|
});
|
|
23
24
|
get drops(): `comment:${string}`[];
|
|
24
25
|
get requires(): (`comment:${string}` | `language:${string}`)[];
|
|
25
|
-
serialize(): string;
|
|
26
|
+
serialize(_options?: SerializeOptions): string;
|
|
26
27
|
}
|
|
@@ -17,7 +17,7 @@ export class CreateCommentOnLanguage extends CreateLanguageChange {
|
|
|
17
17
|
get requires() {
|
|
18
18
|
return [this.language.stableId];
|
|
19
19
|
}
|
|
20
|
-
serialize() {
|
|
20
|
+
serialize(_options) {
|
|
21
21
|
return [
|
|
22
22
|
"COMMENT ON LANGUAGE",
|
|
23
23
|
this.language.name,
|
|
@@ -39,7 +39,7 @@ export class DropCommentOnLanguage extends DropLanguageChange {
|
|
|
39
39
|
get requires() {
|
|
40
40
|
return [stableId.comment(this.language.stableId), this.language.stableId];
|
|
41
41
|
}
|
|
42
|
-
serialize() {
|
|
42
|
+
serialize(_options) {
|
|
43
43
|
return ["COMMENT ON LANGUAGE", this.language.name, "IS NULL"].join(" ");
|
|
44
44
|
}
|
|
45
45
|
}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { SerializeOptions } from "../../../integrations/serialize/serialize.types.ts";
|
|
1
2
|
import type { Language } from "../language.model.ts";
|
|
2
3
|
import { CreateLanguageChange } from "./language.base.ts";
|
|
3
4
|
/**
|
|
@@ -21,5 +22,5 @@ export declare class CreateLanguage extends CreateLanguageChange {
|
|
|
21
22
|
});
|
|
22
23
|
get creates(): `language:${string}`[];
|
|
23
24
|
get requires(): string[];
|
|
24
|
-
serialize(): string;
|
|
25
|
+
serialize(_options?: SerializeOptions): string;
|
|
25
26
|
}
|
|
@@ -50,7 +50,7 @@ export class CreateLanguage extends CreateLanguageChange {
|
|
|
50
50
|
}
|
|
51
51
|
return Array.from(dependencies);
|
|
52
52
|
}
|
|
53
|
-
serialize() {
|
|
53
|
+
serialize(_options) {
|
|
54
54
|
const parts = [`CREATE${this.orReplace ? " OR REPLACE" : ""}`];
|
|
55
55
|
// Only include non-default flags. We never print the optional
|
|
56
56
|
// PROCEDURAL keyword or any defaults.
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { SerializeOptions } from "../../../integrations/serialize/serialize.types.ts";
|
|
1
2
|
import type { Language } from "../language.model.ts";
|
|
2
3
|
import { DropLanguageChange } from "./language.base.ts";
|
|
3
4
|
/**
|
|
@@ -18,5 +19,5 @@ export declare class DropLanguage extends DropLanguageChange {
|
|
|
18
19
|
});
|
|
19
20
|
get drops(): `language:${string}`[];
|
|
20
21
|
get requires(): `language:${string}`[];
|
|
21
|
-
serialize(): string;
|
|
22
|
+
serialize(_options?: SerializeOptions): string;
|
|
22
23
|
}
|
|
@@ -22,7 +22,7 @@ export class DropLanguage extends DropLanguageChange {
|
|
|
22
22
|
get requires() {
|
|
23
23
|
return [this.language.stableId];
|
|
24
24
|
}
|
|
25
|
-
serialize() {
|
|
25
|
+
serialize(_options) {
|
|
26
26
|
const parts = ["DROP"];
|
|
27
27
|
// Do not print optional keywords (e.g., PROCEDURAL). Keep the statement minimal.
|
|
28
28
|
parts.push("LANGUAGE", this.language.name);
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { SerializeOptions } from "../../../integrations/serialize/serialize.types.ts";
|
|
1
2
|
import type { Language } from "../language.model.ts";
|
|
2
3
|
import { AlterLanguageChange } from "./language.base.ts";
|
|
3
4
|
export type LanguagePrivilege = GrantLanguagePrivileges | RevokeLanguagePrivileges | RevokeGrantOptionLanguagePrivileges;
|
|
@@ -34,7 +35,7 @@ export declare class GrantLanguagePrivileges extends AlterLanguageChange {
|
|
|
34
35
|
});
|
|
35
36
|
get creates(): `acl:${string}::grantee:${string}`[];
|
|
36
37
|
get requires(): (`role:${string}` | `language:${string}`)[];
|
|
37
|
-
serialize(): string;
|
|
38
|
+
serialize(_options?: SerializeOptions): string;
|
|
38
39
|
}
|
|
39
40
|
/**
|
|
40
41
|
* Revoke privileges on a language.
|
|
@@ -71,7 +72,7 @@ export declare class RevokeLanguagePrivileges extends AlterLanguageChange {
|
|
|
71
72
|
});
|
|
72
73
|
get drops(): `acl:${string}::grantee:${string}`[];
|
|
73
74
|
get requires(): (`acl:${string}::grantee:${string}` | `role:${string}` | `language:${string}`)[];
|
|
74
|
-
serialize(): string;
|
|
75
|
+
serialize(_options?: SerializeOptions): string;
|
|
75
76
|
}
|
|
76
77
|
/**
|
|
77
78
|
* Revoke grant option for privileges on a language.
|
|
@@ -93,5 +94,5 @@ export declare class RevokeGrantOptionLanguagePrivileges extends AlterLanguageCh
|
|
|
93
94
|
version?: number;
|
|
94
95
|
});
|
|
95
96
|
get requires(): (`acl:${string}::grantee:${string}` | `role:${string}` | `language:${string}`)[];
|
|
96
|
-
serialize(): string;
|
|
97
|
+
serialize(_options?: SerializeOptions): string;
|
|
97
98
|
}
|
|
@@ -33,7 +33,7 @@ export class GrantLanguagePrivileges extends AlterLanguageChange {
|
|
|
33
33
|
get requires() {
|
|
34
34
|
return [this.language.stableId, stableId.role(this.grantee)];
|
|
35
35
|
}
|
|
36
|
-
serialize() {
|
|
36
|
+
serialize(_options) {
|
|
37
37
|
const hasGrantable = this.privileges.some((p) => p.grantable);
|
|
38
38
|
const hasBase = this.privileges.some((p) => !p.grantable);
|
|
39
39
|
if (hasGrantable && hasBase) {
|
|
@@ -86,7 +86,7 @@ export class RevokeLanguagePrivileges extends AlterLanguageChange {
|
|
|
86
86
|
stableId.role(this.grantee),
|
|
87
87
|
];
|
|
88
88
|
}
|
|
89
|
-
serialize() {
|
|
89
|
+
serialize(_options) {
|
|
90
90
|
const kindPrefix = getObjectKindPrefix("LANGUAGE");
|
|
91
91
|
const list = this.privileges.map((p) => p.privilege);
|
|
92
92
|
const privSql = formatObjectPrivilegeList("LANGUAGE", list, this.version);
|
|
@@ -120,7 +120,7 @@ export class RevokeGrantOptionLanguagePrivileges extends AlterLanguageChange {
|
|
|
120
120
|
stableId.role(this.grantee),
|
|
121
121
|
];
|
|
122
122
|
}
|
|
123
|
-
serialize() {
|
|
123
|
+
serialize(_options) {
|
|
124
124
|
const kindPrefix = getObjectKindPrefix("LANGUAGE");
|
|
125
125
|
const privSql = formatObjectPrivilegeList("LANGUAGE", this.privilegeNames, this.version);
|
|
126
126
|
return `REVOKE GRANT OPTION FOR ${privSql} ${kindPrefix} ${this.language.name} FROM ${this.grantee}`;
|
|
@@ -3,4 +3,5 @@ import type { CommentLanguage } from "./language.comment.ts";
|
|
|
3
3
|
import type { CreateLanguage } from "./language.create.ts";
|
|
4
4
|
import type { DropLanguage } from "./language.drop.ts";
|
|
5
5
|
import type { LanguagePrivilege } from "./language.privilege.ts";
|
|
6
|
+
/** Union of all language-related change variants (`objectType: "language"`). @category Change Types */
|
|
6
7
|
export type LanguageChange = AlterLanguage | CommentLanguage | CreateLanguage | DropLanguage | LanguagePrivilege;
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { SerializeOptions } from "../../../integrations/serialize/serialize.types.ts";
|
|
1
2
|
import type { MaterializedView } from "../materialized-view.model.ts";
|
|
2
3
|
import { AlterMaterializedViewChange } from "./materialized-view.base.ts";
|
|
3
4
|
/**
|
|
@@ -42,7 +43,7 @@ export declare class AlterMaterializedViewChangeOwner extends AlterMaterializedV
|
|
|
42
43
|
owner: string;
|
|
43
44
|
});
|
|
44
45
|
get requires(): `materializedView:${string}`[];
|
|
45
|
-
serialize(): string;
|
|
46
|
+
serialize(_options?: SerializeOptions): string;
|
|
46
47
|
}
|
|
47
48
|
/**
|
|
48
49
|
* ALTER MATERIALIZED VIEW ... SET/RESET ( storage_parameter ... )
|
|
@@ -59,7 +60,7 @@ export declare class AlterMaterializedViewSetStorageParams extends AlterMaterial
|
|
|
59
60
|
keysToReset: string[];
|
|
60
61
|
});
|
|
61
62
|
get requires(): `materializedView:${string}`[];
|
|
62
|
-
serialize(): string;
|
|
63
|
+
serialize(_options?: SerializeOptions): string;
|
|
63
64
|
}
|
|
64
65
|
/**
|
|
65
66
|
* Replace a materialized view by dropping and recreating it.
|
|
@@ -14,7 +14,7 @@ export class AlterMaterializedViewChangeOwner extends AlterMaterializedViewChang
|
|
|
14
14
|
get requires() {
|
|
15
15
|
return [this.materializedView.stableId];
|
|
16
16
|
}
|
|
17
|
-
serialize() {
|
|
17
|
+
serialize(_options) {
|
|
18
18
|
return [
|
|
19
19
|
"ALTER MATERIALIZED VIEW",
|
|
20
20
|
`${this.materializedView.schema}.${this.materializedView.name}`,
|
|
@@ -41,7 +41,7 @@ export class AlterMaterializedViewSetStorageParams extends AlterMaterializedView
|
|
|
41
41
|
get requires() {
|
|
42
42
|
return [this.materializedView.stableId];
|
|
43
43
|
}
|
|
44
|
-
serialize() {
|
|
44
|
+
serialize(_options) {
|
|
45
45
|
const head = [
|
|
46
46
|
"ALTER MATERIALIZED VIEW",
|
|
47
47
|
`${this.materializedView.schema}.${this.materializedView.name}`,
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { SerializeOptions } from "../../../integrations/serialize/serialize.types.ts";
|
|
1
2
|
import type { ColumnProps } from "../../base.model.ts";
|
|
2
3
|
import type { MaterializedView } from "../materialized-view.model.ts";
|
|
3
4
|
import { CreateMaterializedViewChange, DropMaterializedViewChange } from "./materialized-view.base.ts";
|
|
@@ -15,7 +16,7 @@ export declare class CreateCommentOnMaterializedView extends CreateMaterializedV
|
|
|
15
16
|
});
|
|
16
17
|
get creates(): `comment:${string}`[];
|
|
17
18
|
get requires(): `materializedView:${string}`[];
|
|
18
|
-
serialize(): string;
|
|
19
|
+
serialize(_options?: SerializeOptions): string;
|
|
19
20
|
}
|
|
20
21
|
export declare class DropCommentOnMaterializedView extends DropMaterializedViewChange {
|
|
21
22
|
readonly materializedView: MaterializedView;
|
|
@@ -25,7 +26,7 @@ export declare class DropCommentOnMaterializedView extends DropMaterializedViewC
|
|
|
25
26
|
});
|
|
26
27
|
get drops(): `comment:${string}`[];
|
|
27
28
|
get requires(): (`comment:${string}` | `materializedView:${string}`)[];
|
|
28
|
-
serialize(): string;
|
|
29
|
+
serialize(_options?: SerializeOptions): string;
|
|
29
30
|
}
|
|
30
31
|
export declare class CreateCommentOnMaterializedViewColumn extends CreateMaterializedViewChange {
|
|
31
32
|
readonly materializedView: MaterializedView;
|
|
@@ -37,7 +38,7 @@ export declare class CreateCommentOnMaterializedViewColumn extends CreateMateria
|
|
|
37
38
|
});
|
|
38
39
|
get creates(): `comment:${string}`[];
|
|
39
40
|
get requires(): `column:${string}.${string}.${string}`[];
|
|
40
|
-
serialize(): string;
|
|
41
|
+
serialize(_options?: SerializeOptions): string;
|
|
41
42
|
}
|
|
42
43
|
export declare class DropCommentOnMaterializedViewColumn extends DropMaterializedViewChange {
|
|
43
44
|
readonly materializedView: MaterializedView;
|
|
@@ -49,5 +50,5 @@ export declare class DropCommentOnMaterializedViewColumn extends DropMaterialize
|
|
|
49
50
|
});
|
|
50
51
|
get drops(): `comment:${string}`[];
|
|
51
52
|
get requires(): (`column:${string}.${string}.${string}` | `comment:${string}`)[];
|
|
52
|
-
serialize(): string;
|
|
53
|
+
serialize(_options?: SerializeOptions): string;
|
|
53
54
|
}
|
|
@@ -19,7 +19,7 @@ export class CreateCommentOnMaterializedView extends CreateMaterializedViewChang
|
|
|
19
19
|
get requires() {
|
|
20
20
|
return [this.materializedView.stableId];
|
|
21
21
|
}
|
|
22
|
-
serialize() {
|
|
22
|
+
serialize(_options) {
|
|
23
23
|
return [
|
|
24
24
|
"COMMENT ON MATERIALIZED VIEW",
|
|
25
25
|
`${this.materializedView.schema}.${this.materializedView.name}`,
|
|
@@ -45,7 +45,7 @@ export class DropCommentOnMaterializedView extends DropMaterializedViewChange {
|
|
|
45
45
|
this.materializedView.stableId,
|
|
46
46
|
];
|
|
47
47
|
}
|
|
48
|
-
serialize() {
|
|
48
|
+
serialize(_options) {
|
|
49
49
|
return [
|
|
50
50
|
"COMMENT ON MATERIALIZED VIEW",
|
|
51
51
|
`${this.materializedView.schema}.${this.materializedView.name}`,
|
|
@@ -72,7 +72,7 @@ export class CreateCommentOnMaterializedViewColumn extends CreateMaterializedVie
|
|
|
72
72
|
stableId.column(this.materializedView.schema, this.materializedView.name, this.column.name),
|
|
73
73
|
];
|
|
74
74
|
}
|
|
75
|
-
serialize() {
|
|
75
|
+
serialize(_options) {
|
|
76
76
|
return [
|
|
77
77
|
"COMMENT ON COLUMN",
|
|
78
78
|
`${this.materializedView.schema}.${this.materializedView.name}.${this.column.name}`,
|
|
@@ -102,7 +102,7 @@ export class DropCommentOnMaterializedViewColumn extends DropMaterializedViewCha
|
|
|
102
102
|
stableId.column(this.materializedView.schema, this.materializedView.name, this.column.name),
|
|
103
103
|
];
|
|
104
104
|
}
|
|
105
|
-
serialize() {
|
|
105
|
+
serialize(_options) {
|
|
106
106
|
return [
|
|
107
107
|
"COMMENT ON COLUMN",
|
|
108
108
|
`${this.materializedView.schema}.${this.materializedView.name}.${this.column.name}`,
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { SerializeOptions } from "../../../integrations/serialize/serialize.types.ts";
|
|
1
2
|
import type { MaterializedView } from "../materialized-view.model.ts";
|
|
2
3
|
import { CreateMaterializedViewChange } from "./materialized-view.base.ts";
|
|
3
4
|
/**
|
|
@@ -31,5 +32,5 @@ export declare class CreateMaterializedView extends CreateMaterializedViewChange
|
|
|
31
32
|
});
|
|
32
33
|
get creates(): (`column:${string}.${string}.${string}` | `materializedView:${string}`)[];
|
|
33
34
|
get requires(): string[];
|
|
34
|
-
serialize(): string;
|
|
35
|
+
serialize(_options?: SerializeOptions): string;
|
|
35
36
|
}
|
|
@@ -46,7 +46,7 @@ export class CreateMaterializedView extends CreateMaterializedViewChange {
|
|
|
46
46
|
// for existing objects. For new objects, parsing the SQL definition would be complex.
|
|
47
47
|
return Array.from(dependencies);
|
|
48
48
|
}
|
|
49
|
-
serialize() {
|
|
49
|
+
serialize(_options) {
|
|
50
50
|
const parts = ["CREATE MATERIALIZED VIEW"];
|
|
51
51
|
// Add schema and name
|
|
52
52
|
parts.push(`${this.materializedView.schema}.${this.materializedView.name}`);
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { SerializeOptions } from "../../../integrations/serialize/serialize.types.ts";
|
|
1
2
|
import type { MaterializedView } from "../materialized-view.model.ts";
|
|
2
3
|
import { DropMaterializedViewChange } from "./materialized-view.base.ts";
|
|
3
4
|
/**
|
|
@@ -22,5 +23,5 @@ export declare class DropMaterializedView extends DropMaterializedViewChange {
|
|
|
22
23
|
});
|
|
23
24
|
get drops(): (`column:${string}.${string}.${string}` | `materializedView:${string}`)[];
|
|
24
25
|
get requires(): (`column:${string}.${string}.${string}` | `materializedView:${string}`)[];
|
|
25
|
-
serialize(): string;
|
|
26
|
+
serialize(_options?: SerializeOptions): string;
|
|
26
27
|
}
|
|
@@ -33,7 +33,7 @@ export class DropMaterializedView extends DropMaterializedViewChange {
|
|
|
33
33
|
...this.materializedView.columns.map((column) => stableId.column(this.materializedView.schema, this.materializedView.name, column.name)),
|
|
34
34
|
];
|
|
35
35
|
}
|
|
36
|
-
serialize() {
|
|
36
|
+
serialize(_options) {
|
|
37
37
|
return [
|
|
38
38
|
"DROP MATERIALIZED VIEW",
|
|
39
39
|
`${this.materializedView.schema}.${this.materializedView.name}`,
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { SerializeOptions } from "../../../integrations/serialize/serialize.types.ts";
|
|
1
2
|
import type { MaterializedView } from "../materialized-view.model.ts";
|
|
2
3
|
import { AlterMaterializedViewChange } from "./materialized-view.base.ts";
|
|
3
4
|
export type MaterializedViewPrivilege = GrantMaterializedViewPrivileges | RevokeMaterializedViewPrivileges | RevokeGrantOptionMaterializedViewPrivileges;
|
|
@@ -37,7 +38,7 @@ export declare class GrantMaterializedViewPrivileges extends AlterMaterializedVi
|
|
|
37
38
|
});
|
|
38
39
|
get creates(): `acl:${string}::grantee:${string}`[];
|
|
39
40
|
get requires(): (`role:${string}` | `materializedView:${string}`)[];
|
|
40
|
-
serialize(): string;
|
|
41
|
+
serialize(_options?: SerializeOptions): string;
|
|
41
42
|
}
|
|
42
43
|
/**
|
|
43
44
|
* Revoke privileges on a materialized view.
|
|
@@ -77,7 +78,7 @@ export declare class RevokeMaterializedViewPrivileges extends AlterMaterializedV
|
|
|
77
78
|
});
|
|
78
79
|
get drops(): `acl:${string}::grantee:${string}`[];
|
|
79
80
|
get requires(): (`acl:${string}::grantee:${string}` | `role:${string}` | `materializedView:${string}`)[];
|
|
80
|
-
serialize(): string;
|
|
81
|
+
serialize(_options?: SerializeOptions): string;
|
|
81
82
|
}
|
|
82
83
|
/**
|
|
83
84
|
* Revoke grant option for privileges on a materialized view.
|
|
@@ -101,5 +102,5 @@ export declare class RevokeGrantOptionMaterializedViewPrivileges extends AlterMa
|
|
|
101
102
|
version?: number;
|
|
102
103
|
});
|
|
103
104
|
get requires(): (`acl:${string}::grantee:${string}` | `role:${string}` | `materializedView:${string}`)[];
|
|
104
|
-
serialize(): string;
|
|
105
|
+
serialize(_options?: SerializeOptions): string;
|
|
105
106
|
}
|
|
@@ -38,7 +38,7 @@ export class GrantMaterializedViewPrivileges extends AlterMaterializedViewChange
|
|
|
38
38
|
get requires() {
|
|
39
39
|
return [this.materializedView.stableId, stableId.role(this.grantee)];
|
|
40
40
|
}
|
|
41
|
-
serialize() {
|
|
41
|
+
serialize(_options) {
|
|
42
42
|
const hasGrantable = this.privileges.some((p) => p.grantable);
|
|
43
43
|
const hasBase = this.privileges.some((p) => !p.grantable);
|
|
44
44
|
if (hasGrantable && hasBase) {
|
|
@@ -99,7 +99,7 @@ export class RevokeMaterializedViewPrivileges extends AlterMaterializedViewChang
|
|
|
99
99
|
stableId.role(this.grantee),
|
|
100
100
|
];
|
|
101
101
|
}
|
|
102
|
-
serialize() {
|
|
102
|
+
serialize(_options) {
|
|
103
103
|
const kindPrefix = getObjectKindPrefix("MATERIALIZED VIEW");
|
|
104
104
|
const list = this.privileges.map((p) => p.privilege);
|
|
105
105
|
const privSql = formatObjectPrivilegeList("MATERIALIZED VIEW", list, this.version);
|
|
@@ -140,7 +140,7 @@ export class RevokeGrantOptionMaterializedViewPrivileges extends AlterMaterializ
|
|
|
140
140
|
stableId.role(this.grantee),
|
|
141
141
|
];
|
|
142
142
|
}
|
|
143
|
-
serialize() {
|
|
143
|
+
serialize(_options) {
|
|
144
144
|
const kindPrefix = getObjectKindPrefix("MATERIALIZED VIEW");
|
|
145
145
|
const privSql = formatObjectPrivilegeList("MATERIALIZED VIEW", this.privilegeNames, this.version);
|
|
146
146
|
const materializedViewName = `${this.materializedView.schema}.${this.materializedView.name}`;
|
|
@@ -3,4 +3,5 @@ import type { CommentMaterializedView } from "./materialized-view.comment.ts";
|
|
|
3
3
|
import type { CreateMaterializedView } from "./materialized-view.create.ts";
|
|
4
4
|
import type { DropMaterializedView } from "./materialized-view.drop.ts";
|
|
5
5
|
import type { MaterializedViewPrivilege } from "./materialized-view.privilege.ts";
|
|
6
|
+
/** Union of all materialized-view-related change variants (`objectType: "materialized_view"`). @category Change Types */
|
|
6
7
|
export type MaterializedViewChange = AlterMaterializedView | CommentMaterializedView | CreateMaterializedView | DropMaterializedView | MaterializedViewPrivilege;
|