@prisma-next/target-postgres 0.14.0-dev.11 → 0.14.0-dev.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/canonicalize-Bn3BM1Cn.mjs +46 -0
- package/dist/canonicalize-Bn3BM1Cn.mjs.map +1 -0
- package/dist/canonicalize-CAbXtVtB.d.mts +37 -0
- package/dist/canonicalize-CAbXtVtB.d.mts.map +1 -0
- package/dist/contract-free.d.mts +1 -1
- package/dist/contract-free.d.mts.map +1 -1
- package/dist/contract-free.mjs +2 -2
- package/dist/control.d.mts +1 -1
- package/dist/control.mjs +4 -4
- package/dist/{data-transform-DDgWdB5o.d.mts → data-transform-qKy1U5V9.d.mts} +2 -2
- package/dist/{data-transform-DDgWdB5o.d.mts.map → data-transform-qKy1U5V9.d.mts.map} +1 -1
- package/dist/data-transform.d.mts +1 -1
- package/dist/{ddl-QDyOSeLc.mjs → ddl-BlsTIBeP.mjs} +54 -4
- package/dist/ddl-BlsTIBeP.mjs.map +1 -0
- package/dist/ddl.d.mts +3 -2
- package/dist/ddl.mjs +2 -2
- package/dist/descriptor-meta-b_SzXwen.mjs +239 -0
- package/dist/descriptor-meta-b_SzXwen.mjs.map +1 -0
- package/dist/{issue-planner-DL6g3CmE.mjs → issue-planner-CwoeupPM.mjs} +9 -6
- package/dist/{issue-planner-DL6g3CmE.mjs.map → issue-planner-CwoeupPM.mjs.map} +1 -1
- package/dist/issue-planner.d.mts +3 -3
- package/dist/issue-planner.d.mts.map +1 -1
- package/dist/issue-planner.mjs +1 -1
- package/dist/migration.d.mts +3 -3
- package/dist/migration.mjs +2 -2
- package/dist/{nodes-Bbhs2rwj.mjs → nodes-DhDIIhBT.mjs} +44 -2
- package/dist/nodes-DhDIIhBT.mjs.map +1 -0
- package/dist/{nodes-pLeLgdis.d.mts → nodes-YvdohJ2X.d.mts} +40 -3
- package/dist/nodes-YvdohJ2X.d.mts.map +1 -0
- package/dist/{op-factory-call-DmQEc3XV.d.mts → op-factory-call-DXHAIisl.d.mts} +37 -4
- package/dist/op-factory-call-DXHAIisl.d.mts.map +1 -0
- package/dist/{op-factory-call-D_p5vxwt.mjs → op-factory-call-tMksrGIq.mjs} +146 -4
- package/dist/op-factory-call-tMksrGIq.mjs.map +1 -0
- package/dist/op-factory-call.d.mts +1 -1
- package/dist/op-factory-call.mjs +1 -1
- package/dist/pack.d.mts +74 -1
- package/dist/pack.d.mts.map +1 -1
- package/dist/pack.mjs +1 -1
- package/dist/{planner-Bs_baQax.mjs → planner-BbSZJVW7.mjs} +114 -22
- package/dist/planner-BbSZJVW7.mjs.map +1 -0
- package/dist/{planner-produced-postgres-migration-Cji5vxUf.mjs → planner-produced-postgres-migration-C0FHnEsV.mjs} +2 -2
- package/dist/{planner-produced-postgres-migration-Cji5vxUf.mjs.map → planner-produced-postgres-migration-C0FHnEsV.mjs.map} +1 -1
- package/dist/{planner-produced-postgres-migration-QqHa2C2l.d.mts → planner-produced-postgres-migration-DfM5lBv1.d.mts} +3 -3
- package/dist/{planner-produced-postgres-migration-QqHa2C2l.d.mts.map → planner-produced-postgres-migration-DfM5lBv1.d.mts.map} +1 -1
- package/dist/planner-produced-postgres-migration.d.mts +1 -1
- package/dist/planner-produced-postgres-migration.mjs +1 -1
- package/dist/{planner-sql-checks-jqUUGyQR.mjs → planner-sql-checks-CI6Z21mm.mjs} +2 -2
- package/dist/{planner-sql-checks-jqUUGyQR.mjs.map → planner-sql-checks-CI6Z21mm.mjs.map} +1 -1
- package/dist/planner-sql-checks.mjs +1 -1
- package/dist/{planner-target-details-CIY6tLeo.d.mts → planner-target-details-HkP4RrRO.d.mts} +2 -2
- package/dist/planner-target-details-HkP4RrRO.d.mts.map +1 -0
- package/dist/planner-target-details.d.mts +1 -1
- package/dist/planner.d.mts +35 -3
- package/dist/planner.d.mts.map +1 -1
- package/dist/planner.mjs +2 -2
- package/dist/{postgres-contract-serializer-k3TAcPMY.mjs → postgres-contract-serializer-k5eg5ZUZ.mjs} +29 -16
- package/dist/postgres-contract-serializer-k5eg5ZUZ.mjs.map +1 -0
- package/dist/{postgres-migration-B5jKrXv3.mjs → postgres-migration-BJWxullf.mjs} +2 -2
- package/dist/{postgres-migration-B5jKrXv3.mjs.map → postgres-migration-BJWxullf.mjs.map} +1 -1
- package/dist/{postgres-migration-Y4YBJqkS.d.mts → postgres-migration-D22a2y0l.d.mts} +4 -4
- package/dist/{postgres-migration-Y4YBJqkS.d.mts.map → postgres-migration-D22a2y0l.d.mts.map} +1 -1
- package/dist/postgres-rls-policy-D_z1osEq.d.mts +60 -0
- package/dist/postgres-rls-policy-D_z1osEq.d.mts.map +1 -0
- package/dist/postgres-role-_CCuyPCQ.d.mts +33 -0
- package/dist/postgres-role-_CCuyPCQ.d.mts.map +1 -0
- package/dist/{postgres-schema-COGZ1ark.mjs → postgres-schema-BVDr_61a.mjs} +139 -3
- package/dist/postgres-schema-BVDr_61a.mjs.map +1 -0
- package/dist/postgres-schema-D0h4lsw2.d.mts +158 -0
- package/dist/postgres-schema-D0h4lsw2.d.mts.map +1 -0
- package/dist/postgres-schema-ir-BF0X8jit.mjs +66 -0
- package/dist/postgres-schema-ir-BF0X8jit.mjs.map +1 -0
- package/dist/postgres-schema-ir-BQ3RpZMz.d.mts +60 -0
- package/dist/postgres-schema-ir-BQ3RpZMz.d.mts.map +1 -0
- package/dist/postgres-schema-ir-annotations-El62Sywa.mjs +14 -0
- package/dist/postgres-schema-ir-annotations-El62Sywa.mjs.map +1 -0
- package/dist/render-ops.d.mts +1 -1
- package/dist/rls-canonicalize.d.mts +2 -0
- package/dist/rls-canonicalize.mjs +2 -0
- package/dist/runtime.d.mts +3 -2
- package/dist/runtime.d.mts.map +1 -1
- package/dist/runtime.mjs +2 -2
- package/dist/schema-ir-annotations.d.mts +8 -0
- package/dist/schema-ir-annotations.d.mts.map +1 -0
- package/dist/schema-ir-annotations.mjs +2 -0
- package/dist/types.d.mts +5 -140
- package/dist/types.mjs +3 -2
- package/package.json +21 -17
- package/src/contract-free/checks.ts +73 -0
- package/src/contract-free/ddl.ts +35 -0
- package/src/core/authoring.ts +115 -1
- package/src/core/ddl/nodes.ts +68 -1
- package/src/core/descriptor-meta.ts +4 -0
- package/src/core/entity-kinds.ts +16 -0
- package/src/core/migrations/control-policy.ts +3 -0
- package/src/core/migrations/issue-planner.ts +8 -0
- package/src/core/migrations/op-factory-call.ts +96 -0
- package/src/core/migrations/operations/rls.ts +106 -0
- package/src/core/migrations/planner-target-details.ts +3 -1
- package/src/core/migrations/planner.ts +99 -1
- package/src/core/migrations/verify-postgres-namespaces.ts +12 -15
- package/src/core/migrations/verify-postgres-rls-policies.ts +62 -0
- package/src/core/postgres-contract-serializer.ts +43 -19
- package/src/core/postgres-rls-policy.ts +103 -0
- package/src/core/postgres-role.ts +53 -0
- package/src/core/postgres-schema-ir-annotations.ts +22 -0
- package/src/core/postgres-schema-ir.ts +101 -0
- package/src/core/postgres-schema.ts +24 -4
- package/src/core/postgres-validators.ts +20 -0
- package/src/core/rls/canonicalize.ts +48 -0
- package/src/exports/ddl.ts +3 -0
- package/src/exports/planner.ts +1 -0
- package/src/exports/rls-canonicalize.ts +6 -0
- package/src/exports/schema-ir-annotations.ts +1 -0
- package/src/exports/types.ts +12 -0
- package/dist/ddl-QDyOSeLc.mjs.map +0 -1
- package/dist/descriptor-meta-CpGygXpI.mjs +0 -140
- package/dist/descriptor-meta-CpGygXpI.mjs.map +0 -1
- package/dist/nodes-Bbhs2rwj.mjs.map +0 -1
- package/dist/nodes-pLeLgdis.d.mts.map +0 -1
- package/dist/op-factory-call-D_p5vxwt.mjs.map +0 -1
- package/dist/op-factory-call-DmQEc3XV.d.mts.map +0 -1
- package/dist/planner-Bs_baQax.mjs.map +0 -1
- package/dist/planner-target-details-CIY6tLeo.d.mts.map +0 -1
- package/dist/postgres-contract-serializer-k3TAcPMY.mjs.map +0 -1
- package/dist/postgres-schema-COGZ1ark.mjs.map +0 -1
- package/dist/types.d.mts.map +0 -1
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { n as RlsPolicyOperation } from "./canonicalize-CAbXtVtB.mjs";
|
|
1
2
|
import { DdlColumn, DdlNode, DdlTableConstraint } from "@prisma-next/sql-relational-core/ast";
|
|
2
3
|
|
|
3
4
|
//#region src/core/ddl/nodes.d.ts
|
|
@@ -19,6 +20,8 @@ interface PostgresDdlVisitor<R> {
|
|
|
19
20
|
createTable(node: PostgresCreateTable): R;
|
|
20
21
|
createSchema(node: PostgresCreateSchema): R;
|
|
21
22
|
alterTable(node: PostgresAlterTable): R;
|
|
23
|
+
createPolicy(node: PostgresCreatePolicy): R;
|
|
24
|
+
dropPolicy(node: PostgresDropPolicy): R;
|
|
22
25
|
}
|
|
23
26
|
declare abstract class PostgresDdlNode extends DdlNode {
|
|
24
27
|
abstract accept<R>(visitor: PostgresDdlVisitor<R>): R;
|
|
@@ -61,7 +64,41 @@ declare class PostgresAlterTable extends PostgresDdlNode {
|
|
|
61
64
|
});
|
|
62
65
|
accept<R>(visitor: PostgresDdlVisitor<R>): R;
|
|
63
66
|
}
|
|
64
|
-
|
|
67
|
+
declare class PostgresCreatePolicy extends PostgresDdlNode {
|
|
68
|
+
readonly kind: "create-policy";
|
|
69
|
+
readonly schema: string;
|
|
70
|
+
readonly table: string;
|
|
71
|
+
readonly name: string;
|
|
72
|
+
readonly permissive: boolean;
|
|
73
|
+
readonly operation: RlsPolicyOperation;
|
|
74
|
+
readonly roles: ReadonlyArray<string>;
|
|
75
|
+
readonly using: string | undefined;
|
|
76
|
+
readonly withCheck: string | undefined;
|
|
77
|
+
constructor(options: {
|
|
78
|
+
readonly schema: string;
|
|
79
|
+
readonly table: string;
|
|
80
|
+
readonly name: string;
|
|
81
|
+
readonly permissive: boolean;
|
|
82
|
+
readonly operation: RlsPolicyOperation;
|
|
83
|
+
readonly roles: readonly string[];
|
|
84
|
+
readonly using?: string;
|
|
85
|
+
readonly withCheck?: string;
|
|
86
|
+
});
|
|
87
|
+
accept<R>(visitor: PostgresDdlVisitor<R>): R;
|
|
88
|
+
}
|
|
89
|
+
declare class PostgresDropPolicy extends PostgresDdlNode {
|
|
90
|
+
readonly kind: "drop-policy";
|
|
91
|
+
readonly schema: string;
|
|
92
|
+
readonly table: string;
|
|
93
|
+
readonly name: string;
|
|
94
|
+
constructor(options: {
|
|
95
|
+
readonly schema: string;
|
|
96
|
+
readonly table: string;
|
|
97
|
+
readonly name: string;
|
|
98
|
+
});
|
|
99
|
+
accept<R>(visitor: PostgresDdlVisitor<R>): R;
|
|
100
|
+
}
|
|
101
|
+
type AnyPostgresDdlNode = PostgresCreateTable | PostgresCreateSchema | PostgresAlterTable | PostgresCreatePolicy | PostgresDropPolicy;
|
|
65
102
|
//#endregion
|
|
66
|
-
export { PostgresAlterTable as a,
|
|
67
|
-
//# sourceMappingURL=nodes-
|
|
103
|
+
export { PostgresAlterTable as a, PostgresCreateTable as c, PostgresDropPolicy as d, AnyPostgresDdlNode as i, PostgresDdlNode as l, AlterTableActionVisitor as n, PostgresCreatePolicy as o, AnyAlterTableAction as r, PostgresCreateSchema as s, AddColumnAction as t, PostgresDdlVisitor as u };
|
|
104
|
+
//# sourceMappingURL=nodes-YvdohJ2X.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"nodes-YvdohJ2X.d.mts","names":[],"sources":["../src/core/ddl/nodes.ts"],"mappings":"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"}
|
|
@@ -1,8 +1,9 @@
|
|
|
1
|
-
import { t as PostgresPlanTargetDetails } from "./planner-target-details-
|
|
1
|
+
import { t as PostgresPlanTargetDetails } from "./planner-target-details-HkP4RrRO.mjs";
|
|
2
|
+
import { t as PostgresRlsPolicy } from "./postgres-rls-policy-D_z1osEq.mjs";
|
|
2
3
|
import { DdlColumn, DdlTableConstraint } from "@prisma-next/sql-relational-core/ast";
|
|
3
4
|
import { CodecControlHooks, SqlMigrationPlanOperation } from "@prisma-next/family-sql/control";
|
|
4
|
-
import { ImportRequirement, TsExpression } from "@prisma-next/ts-render";
|
|
5
5
|
import { ReferentialAction, StorageColumn, StorageTypeInstance } from "@prisma-next/sql-contract/types";
|
|
6
|
+
import { ImportRequirement, TsExpression } from "@prisma-next/ts-render";
|
|
6
7
|
import { MigrationOperationClass, OpFactoryCall } from "@prisma-next/framework-components/control";
|
|
7
8
|
import { ExecuteRequestLowerer, Lowerer } from "@prisma-next/family-sql/control-adapter";
|
|
8
9
|
|
|
@@ -374,7 +375,39 @@ declare class DataTransformCall extends PostgresOpFactoryCallNode {
|
|
|
374
375
|
renderTypeScript(): string;
|
|
375
376
|
importRequirements(): readonly ImportRequirement[];
|
|
376
377
|
}
|
|
377
|
-
|
|
378
|
+
declare class CreatePostgresRlsPolicyCall extends PostgresOpFactoryCallNode {
|
|
379
|
+
readonly factoryName: "createRlsPolicy";
|
|
380
|
+
readonly operationClass: "additive";
|
|
381
|
+
readonly schemaName: string;
|
|
382
|
+
readonly tableName: string;
|
|
383
|
+
readonly policy: PostgresRlsPolicy;
|
|
384
|
+
readonly label: string;
|
|
385
|
+
constructor(schemaName: string, tableName: string, policy: PostgresRlsPolicy);
|
|
386
|
+
toOp(lowerer?: ExecuteRequestLowerer): Promise<Op>;
|
|
387
|
+
renderTypeScript(): string;
|
|
388
|
+
}
|
|
389
|
+
declare class DropPostgresRlsPolicyCall extends PostgresOpFactoryCallNode {
|
|
390
|
+
readonly factoryName: "dropRlsPolicy";
|
|
391
|
+
readonly operationClass: "destructive";
|
|
392
|
+
readonly schemaName: string;
|
|
393
|
+
readonly tableName: string;
|
|
394
|
+
readonly policyName: string;
|
|
395
|
+
readonly label: string;
|
|
396
|
+
constructor(schemaName: string, tableName: string, policyName: string);
|
|
397
|
+
toOp(lowerer?: ExecuteRequestLowerer): Promise<Op>;
|
|
398
|
+
renderTypeScript(): string;
|
|
399
|
+
}
|
|
400
|
+
declare class EnableRowLevelSecurityCall extends PostgresOpFactoryCallNode {
|
|
401
|
+
readonly factoryName: "enableRowLevelSecurity";
|
|
402
|
+
readonly operationClass: "additive";
|
|
403
|
+
readonly schemaName: string;
|
|
404
|
+
readonly tableName: string;
|
|
405
|
+
readonly label: string;
|
|
406
|
+
constructor(schemaName: string, tableName: string);
|
|
407
|
+
toOp(lowerer?: ExecuteRequestLowerer): Promise<Op>;
|
|
408
|
+
renderTypeScript(): string;
|
|
409
|
+
}
|
|
410
|
+
type PostgresOpFactoryCall = CreateTableCall | DropTableCall | AddColumnCall | DropColumnCall | AlterColumnTypeCall | SetNotNullCall | DropNotNullCall | SetDefaultCall | DropDefaultCall | AddNotNullColumnDirectCall | AddNotNullColumnWithTempDefaultCall | AddPrimaryKeyCall | AddForeignKeyCall | AddUniqueCall | AddCheckConstraintCall | DropCheckConstraintCall | CreateIndexCall | DropIndexCall | DropConstraintCall | RawSqlCall | CreateExtensionCall | CreateSchemaCall | CreatePostgresRlsPolicyCall | DropPostgresRlsPolicyCall | EnableRowLevelSecurityCall | DataTransformCall;
|
|
378
411
|
//#endregion
|
|
379
412
|
export { SetNotNullCall as C, SetDefaultCall as S, Op$1 as T, DropIndexCall as _, AddUniqueCall as a, PostgresOpFactoryCall as b, CreateExtensionCall as c, CreateTableCall as d, DataTransformCall as f, DropDefaultCall as g, DropConstraintCall as h, AddPrimaryKeyCall as i, CreateIndexCall as l, DropColumnCall as m, AddColumnCall as n, AlterColumnTypeCall as o, DropCheckConstraintCall as p, AddForeignKeyCall as r, AlterColumnTypeOptions as s, AddCheckConstraintCall as t, CreateSchemaCall as u, DropNotNullCall as v, ForeignKeySpec as w, RawSqlCall as x, DropTableCall as y };
|
|
380
|
-
//# sourceMappingURL=op-factory-call-
|
|
413
|
+
//# sourceMappingURL=op-factory-call-DXHAIisl.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"op-factory-call-DXHAIisl.d.mts","names":[],"sources":["../src/core/migrations/operations/shared.ts","../src/core/migrations/op-factory-call.ts"],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { i as quoteIdentifier, n as escapeLiteral } from "./sql-utils-DcfMz4MQ.mjs";
|
|
2
|
-
import { a as
|
|
3
|
-
import { n as qualifyTableName } from "./planner-sql-checks-
|
|
2
|
+
import { _ as tableExistsAst, a as createTable, c as columnExistsAst, d as constraintExistsAst, f as extensionExistsAst, g as rlsPolicyExistsAst, h as rlsEnabledAst, i as createSchema, l as columnNullabilityAst, m as noNullValuesAst, n as alterTable, o as dropPolicy, p as indexExistsAst, r as createPolicy, s as columnDefaultAst, t as addColumnAction, u as columnTypeAst, v as tableIsEmptyAst } from "./ddl-BlsTIBeP.mjs";
|
|
3
|
+
import { n as qualifyTableName } from "./planner-sql-checks-CI6Z21mm.mjs";
|
|
4
4
|
import { t as buildAddColumnSql } from "./planner-ddl-builders-B2wOwLqI.mjs";
|
|
5
5
|
import { FunctionColumnDefault, LiteralColumnDefault } from "@prisma-next/sql-relational-core/ast";
|
|
6
6
|
import { blindCast } from "@prisma-next/utils/casts";
|
|
@@ -463,6 +463,81 @@ async function dropIndex(schemaName, tableName, indexName, lowerer) {
|
|
|
463
463
|
};
|
|
464
464
|
}
|
|
465
465
|
//#endregion
|
|
466
|
+
//#region src/core/migrations/operations/rls.ts
|
|
467
|
+
const PLAIN_IDENTIFIER = /^[A-Za-z_][A-Za-z0-9_$]*$/;
|
|
468
|
+
function validateRoleName(role) {
|
|
469
|
+
if (!PLAIN_IDENTIFIER.test(role)) throw new Error(`Invalid role name ${JSON.stringify(role)}: role names must be plain SQL identifiers matching ^[A-Za-z_][A-Za-z0-9_$]*$`);
|
|
470
|
+
return role;
|
|
471
|
+
}
|
|
472
|
+
async function createRlsPolicy(schemaName, tableName, policy, lowerer) {
|
|
473
|
+
const validatedRoles = policy.roles.map(validateRoleName);
|
|
474
|
+
const ddlNode = createPolicy({
|
|
475
|
+
schema: schemaName,
|
|
476
|
+
table: tableName,
|
|
477
|
+
name: policy.name,
|
|
478
|
+
permissive: policy.permissive,
|
|
479
|
+
operation: policy.operation,
|
|
480
|
+
roles: validatedRoles,
|
|
481
|
+
...ifDefined("using", policy.using),
|
|
482
|
+
...ifDefined("withCheck", policy.withCheck)
|
|
483
|
+
});
|
|
484
|
+
const checks = rlsPolicyExistsAst({
|
|
485
|
+
schema: schemaName,
|
|
486
|
+
table: tableName,
|
|
487
|
+
policyName: policy.name
|
|
488
|
+
});
|
|
489
|
+
const absent = await lowerer.lowerToExecuteRequest(checks.policyAbsent());
|
|
490
|
+
const execute = await lowerer.lowerToExecuteRequest(ddlNode);
|
|
491
|
+
const present = await lowerer.lowerToExecuteRequest(checks.policyPresent());
|
|
492
|
+
return {
|
|
493
|
+
id: `rlsPolicy.${schemaName}.${tableName}.${policy.name}`,
|
|
494
|
+
label: `Create RLS policy "${policy.name}" on "${tableName}"`,
|
|
495
|
+
operationClass: "additive",
|
|
496
|
+
target: targetDetails("rlsPolicy", policy.name, schemaName, tableName),
|
|
497
|
+
precheck: [step(`ensure RLS policy "${policy.name}" does not exist`, absent.sql, absent.params)],
|
|
498
|
+
execute: [step(`create RLS policy "${policy.name}"`, execute.sql, execute.params)],
|
|
499
|
+
postcheck: [step(`verify RLS policy "${policy.name}" exists`, present.sql, present.params)]
|
|
500
|
+
};
|
|
501
|
+
}
|
|
502
|
+
async function dropRlsPolicy(schemaName, tableName, policyName, lowerer) {
|
|
503
|
+
const ddlNode = dropPolicy({
|
|
504
|
+
schema: schemaName,
|
|
505
|
+
table: tableName,
|
|
506
|
+
name: policyName
|
|
507
|
+
});
|
|
508
|
+
const checks = rlsPolicyExistsAst({
|
|
509
|
+
schema: schemaName,
|
|
510
|
+
table: tableName,
|
|
511
|
+
policyName
|
|
512
|
+
});
|
|
513
|
+
const present = await lowerer.lowerToExecuteRequest(checks.policyPresent());
|
|
514
|
+
const execute = await lowerer.lowerToExecuteRequest(ddlNode);
|
|
515
|
+
const absent = await lowerer.lowerToExecuteRequest(checks.policyAbsent());
|
|
516
|
+
return {
|
|
517
|
+
id: `rlsPolicy.${schemaName}.${tableName}.${policyName}.drop`,
|
|
518
|
+
label: `Drop RLS policy "${policyName}" on "${tableName}"`,
|
|
519
|
+
operationClass: "destructive",
|
|
520
|
+
target: targetDetails("rlsPolicy", policyName, schemaName, tableName),
|
|
521
|
+
precheck: [step(`ensure RLS policy "${policyName}" exists`, present.sql, present.params)],
|
|
522
|
+
execute: [step(`drop RLS policy "${policyName}"`, execute.sql, execute.params)],
|
|
523
|
+
postcheck: [step(`verify RLS policy "${policyName}" is absent`, absent.sql, absent.params)]
|
|
524
|
+
};
|
|
525
|
+
}
|
|
526
|
+
async function enableRowLevelSecurity(schemaName, tableName, lowerer) {
|
|
527
|
+
const checks = rlsEnabledAst(schemaName, tableName);
|
|
528
|
+
const disabled = await lowerer.lowerToExecuteRequest(checks.rlsDisabled());
|
|
529
|
+
const enabled = await lowerer.lowerToExecuteRequest(checks.rlsEnabled());
|
|
530
|
+
return {
|
|
531
|
+
id: `rowLevelSecurity.${schemaName}.${tableName}`,
|
|
532
|
+
label: `Enable row-level security on "${tableName}"`,
|
|
533
|
+
operationClass: "additive",
|
|
534
|
+
target: targetDetails("rowLevelSecurity", tableName, schemaName),
|
|
535
|
+
precheck: [step(`check RLS is not already enabled on "${tableName}"`, disabled.sql, disabled.params)],
|
|
536
|
+
execute: [step(`enable row-level security on "${tableName}"`, `ALTER TABLE ${qualifyTableName(schemaName, tableName)} ENABLE ROW LEVEL SECURITY`)],
|
|
537
|
+
postcheck: [step(`verify row-level security is enabled on "${tableName}"`, enabled.sql, enabled.params)]
|
|
538
|
+
};
|
|
539
|
+
}
|
|
540
|
+
//#endregion
|
|
466
541
|
//#region src/core/migrations/operations/tables.ts
|
|
467
542
|
async function dropTable(schemaName, tableName, lowerer) {
|
|
468
543
|
const qualified = qualifyTableName(schemaName, tableName);
|
|
@@ -1484,7 +1559,74 @@ var DataTransformCall = class extends PostgresOpFactoryCallNode {
|
|
|
1484
1559
|
}];
|
|
1485
1560
|
}
|
|
1486
1561
|
};
|
|
1562
|
+
var CreatePostgresRlsPolicyCall = class extends PostgresOpFactoryCallNode {
|
|
1563
|
+
factoryName = "createRlsPolicy";
|
|
1564
|
+
operationClass = "additive";
|
|
1565
|
+
schemaName;
|
|
1566
|
+
tableName;
|
|
1567
|
+
policy;
|
|
1568
|
+
label;
|
|
1569
|
+
constructor(schemaName, tableName, policy) {
|
|
1570
|
+
super();
|
|
1571
|
+
this.schemaName = schemaName;
|
|
1572
|
+
this.tableName = tableName;
|
|
1573
|
+
this.policy = policy;
|
|
1574
|
+
this.label = `Create RLS policy "${policy.name}" on "${tableName}"`;
|
|
1575
|
+
this.freeze();
|
|
1576
|
+
}
|
|
1577
|
+
async toOp(lowerer) {
|
|
1578
|
+
if (lowerer === void 0) throw new Error(`CreatePostgresRlsPolicyCall.toOp: a lowerer is required on the Postgres planner path (policy "${this.policy.name}" on table "${this.tableName}"). Pass the control adapter to createPostgresMigrationPlanner.`);
|
|
1579
|
+
return createRlsPolicy(this.schemaName, this.tableName, this.policy, lowerer);
|
|
1580
|
+
}
|
|
1581
|
+
renderTypeScript() {
|
|
1582
|
+
return `createRlsPolicy(${jsonToTsSource(this.schemaName)}, ${jsonToTsSource(this.tableName)}, ${jsonToTsSource(this.policy)})`;
|
|
1583
|
+
}
|
|
1584
|
+
};
|
|
1585
|
+
var DropPostgresRlsPolicyCall = class extends PostgresOpFactoryCallNode {
|
|
1586
|
+
factoryName = "dropRlsPolicy";
|
|
1587
|
+
operationClass = "destructive";
|
|
1588
|
+
schemaName;
|
|
1589
|
+
tableName;
|
|
1590
|
+
policyName;
|
|
1591
|
+
label;
|
|
1592
|
+
constructor(schemaName, tableName, policyName) {
|
|
1593
|
+
super();
|
|
1594
|
+
this.schemaName = schemaName;
|
|
1595
|
+
this.tableName = tableName;
|
|
1596
|
+
this.policyName = policyName;
|
|
1597
|
+
this.label = `Drop RLS policy "${policyName}" on "${tableName}"`;
|
|
1598
|
+
this.freeze();
|
|
1599
|
+
}
|
|
1600
|
+
async toOp(lowerer) {
|
|
1601
|
+
if (lowerer === void 0) throw new Error(`DropPostgresRlsPolicyCall.toOp: a lowerer is required on the Postgres planner path (policy "${this.policyName}" on table "${this.tableName}"). Pass the control adapter to createPostgresMigrationPlanner.`);
|
|
1602
|
+
return dropRlsPolicy(this.schemaName, this.tableName, this.policyName, lowerer);
|
|
1603
|
+
}
|
|
1604
|
+
renderTypeScript() {
|
|
1605
|
+
return `dropRlsPolicy(${jsonToTsSource(this.schemaName)}, ${jsonToTsSource(this.tableName)}, ${jsonToTsSource(this.policyName)})`;
|
|
1606
|
+
}
|
|
1607
|
+
};
|
|
1608
|
+
var EnableRowLevelSecurityCall = class extends PostgresOpFactoryCallNode {
|
|
1609
|
+
factoryName = "enableRowLevelSecurity";
|
|
1610
|
+
operationClass = "additive";
|
|
1611
|
+
schemaName;
|
|
1612
|
+
tableName;
|
|
1613
|
+
label;
|
|
1614
|
+
constructor(schemaName, tableName) {
|
|
1615
|
+
super();
|
|
1616
|
+
this.schemaName = schemaName;
|
|
1617
|
+
this.tableName = tableName;
|
|
1618
|
+
this.label = `Enable row-level security on "${tableName}"`;
|
|
1619
|
+
this.freeze();
|
|
1620
|
+
}
|
|
1621
|
+
async toOp(lowerer) {
|
|
1622
|
+
if (lowerer === void 0) throw new Error(`EnableRowLevelSecurityCall.toOp: a lowerer is required on the Postgres planner path (table "${this.tableName}"). Pass the control adapter to createPostgresMigrationPlanner.`);
|
|
1623
|
+
return enableRowLevelSecurity(this.schemaName, this.tableName, lowerer);
|
|
1624
|
+
}
|
|
1625
|
+
renderTypeScript() {
|
|
1626
|
+
return `enableRowLevelSecurity(${jsonToTsSource(this.schemaName)}, ${jsonToTsSource(this.tableName)})`;
|
|
1627
|
+
}
|
|
1628
|
+
};
|
|
1487
1629
|
//#endregion
|
|
1488
|
-
export {
|
|
1630
|
+
export { installExtension as A, EnableRowLevelSecurityCall as C, postgresDefaultToDdlColumnDefault as D, SetNotNullCall as E, buildTargetDetails as O, DropTableCall as S, SetDefaultCall as T, DropConstraintCall as _, AddNotNullColumnWithTempDefaultCall as a, DropNotNullCall as b, AlterColumnTypeCall as c, CreatePostgresRlsPolicyCall as d, CreateSchemaCall as f, DropColumnCall as g, DropCheckConstraintCall as h, AddNotNullColumnDirectCall as i, createExtension as k, CreateExtensionCall as l, DataTransformCall as m, AddColumnCall as n, AddPrimaryKeyCall as o, CreateTableCall as p, AddForeignKeyCall as r, AddUniqueCall as s, AddCheckConstraintCall as t, CreateIndexCall as u, DropDefaultCall as v, RawSqlCall as w, DropPostgresRlsPolicyCall as x, DropIndexCall as y };
|
|
1489
1631
|
|
|
1490
|
-
//# sourceMappingURL=op-factory-call-
|
|
1632
|
+
//# sourceMappingURL=op-factory-call-tMksrGIq.mjs.map
|