pg-dump-parser 1.2.0 → 1.4.0
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/README.md +22 -22
- package/dist/parsePgDump.test.js +129 -2
- package/dist/parsePgDump.test.js.map +1 -1
- package/dist/scopeSchemaObject.d.ts.map +1 -1
- package/dist/scopeSchemaObject.js +144 -91
- package/dist/scopeSchemaObject.js.map +1 -1
- package/package.json +1 -1
- package/src/parsePgDump.test.ts +138 -4
- package/src/scopeSchemaObject.ts +190 -114
package/README.md
CHANGED
|
@@ -28,31 +28,31 @@ The output is an array of objects, each representing a schema object in the dump
|
|
|
28
28
|
```json
|
|
29
29
|
[
|
|
30
30
|
{
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
31
|
+
"header": {
|
|
32
|
+
"Name": "bar",
|
|
33
|
+
"Owner": "postgres",
|
|
34
|
+
"Schema": "public",
|
|
35
|
+
"Type": "TABLE"
|
|
36
|
+
},
|
|
37
|
+
"sql": "CREATE TABLE public.bar (\n id integer NOT NULL,\n uid text NOT NULL,\n foo_id integer\n);"
|
|
38
38
|
},
|
|
39
39
|
{
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
40
|
+
"header": {
|
|
41
|
+
"Name": "bar",
|
|
42
|
+
"Owner": "postgres",
|
|
43
|
+
"Schema": "public",
|
|
44
|
+
"Type": "TABLE"
|
|
45
|
+
},
|
|
46
|
+
"sql": "ALTER TABLE public.bar OWNER TO postgres;"
|
|
47
47
|
},
|
|
48
48
|
{
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
49
|
+
"header": {
|
|
50
|
+
"Name": "bar_id_seq",
|
|
51
|
+
"Owner": "postgres",
|
|
52
|
+
"Schema": "public",
|
|
53
|
+
"Type": "SEQUENCE"
|
|
54
|
+
},
|
|
55
|
+
"sql": "ALTER TABLE public.bar ALTER COLUMN id ADD GENERATED ALWAYS AS IDENTITY (\n SEQUENCE NAME public.bar_id_seq\n START WITH 1\n INCREMENT BY 1\n NO MINVALUE\n NO MAXVALUE\n CACHE 1\n);"
|
|
56
56
|
}
|
|
57
57
|
]
|
|
58
58
|
```
|
|
@@ -92,7 +92,7 @@ const schemaObjectScope = groupSchemaObjects(schemaObjects);
|
|
|
92
92
|
}
|
|
93
93
|
```
|
|
94
94
|
|
|
95
|
-
> [!
|
|
95
|
+
> [!WARNING]
|
|
96
96
|
> The implementation behind `groupSchemaObjects` is _super_ scrappy. It relies on a lot of pattern matching. Use at your own risk.
|
|
97
97
|
|
|
98
98
|
## Alternatives
|
package/dist/parsePgDump.test.js
CHANGED
|
@@ -90,6 +90,13 @@ $$;
|
|
|
90
90
|
|
|
91
91
|
ALTER FUNCTION public.add_two_numbers(a integer, b integer) OWNER TO postgres;
|
|
92
92
|
|
|
93
|
+
--
|
|
94
|
+
-- Name: FUNCTION add_two_numbers(a integer, b integer); Type: COMMENT; Schema: public; Owner: postgres
|
|
95
|
+
--
|
|
96
|
+
|
|
97
|
+
COMMENT ON FUNCTION public.add_two_numbers(a integer, b integer) IS 'Function comment x';
|
|
98
|
+
|
|
99
|
+
|
|
93
100
|
--
|
|
94
101
|
-- Name: notify_foo_insert(); Type: FUNCTION; Schema: public; Owner: postgres
|
|
95
102
|
--
|
|
@@ -121,6 +128,13 @@ $$;
|
|
|
121
128
|
|
|
122
129
|
ALTER PROCEDURE public.say_hello(IN name_param character varying) OWNER TO postgres;
|
|
123
130
|
|
|
131
|
+
--
|
|
132
|
+
-- Name: PROCEDURE say_hello(IN name_param character varying); Type: COMMENT; Schema: public; Owner: postgres
|
|
133
|
+
--
|
|
134
|
+
|
|
135
|
+
COMMENT ON PROCEDURE public.say_hello(IN name_param character varying) IS 'Procedure comment x';
|
|
136
|
+
|
|
137
|
+
|
|
124
138
|
--
|
|
125
139
|
-- Name: my_sum(integer); Type: AGGREGATE; Schema: public; Owner: postgres
|
|
126
140
|
--
|
|
@@ -133,6 +147,13 @@ CREATE AGGREGATE public.my_sum(integer) (
|
|
|
133
147
|
|
|
134
148
|
ALTER AGGREGATE public.my_sum(integer) OWNER TO postgres;
|
|
135
149
|
|
|
150
|
+
--
|
|
151
|
+
-- Name: AGGREGATE my_sum(integer); Type: COMMENT; Schema: public; Owner: postgres
|
|
152
|
+
--
|
|
153
|
+
|
|
154
|
+
COMMENT ON AGGREGATE public.my_sum(integer) IS 'Aggregate comment x';
|
|
155
|
+
|
|
156
|
+
|
|
136
157
|
SET default_tablespace = '';
|
|
137
158
|
|
|
138
159
|
SET default_table_access_method = heap;
|
|
@@ -176,6 +197,13 @@ CREATE VIEW public.baz AS
|
|
|
176
197
|
|
|
177
198
|
ALTER VIEW public.baz OWNER TO postgres;
|
|
178
199
|
|
|
200
|
+
--
|
|
201
|
+
-- Name: VIEW baz; Type: COMMENT; Schema: public; Owner: postgres
|
|
202
|
+
--
|
|
203
|
+
|
|
204
|
+
COMMENT ON VIEW public.baz IS 'View comment x';
|
|
205
|
+
|
|
206
|
+
|
|
179
207
|
--
|
|
180
208
|
-- Name: corge; Type: TABLE; Schema: public; Owner: postgres
|
|
181
209
|
--
|
|
@@ -269,6 +297,13 @@ CREATE MATERIALIZED VIEW public.qux AS
|
|
|
269
297
|
|
|
270
298
|
ALTER MATERIALIZED VIEW public.qux OWNER TO postgres;
|
|
271
299
|
|
|
300
|
+
--
|
|
301
|
+
-- Name: MATERIALIZED VIEW qux; Type: COMMENT; Schema: public; Owner: postgres
|
|
302
|
+
--
|
|
303
|
+
|
|
304
|
+
COMMENT ON MATERIALIZED VIEW public.qux IS 'Materialized view comment x';
|
|
305
|
+
|
|
306
|
+
|
|
272
307
|
--
|
|
273
308
|
-- Name: corge id; Type: DEFAULT; Schema: public; Owner: postgres
|
|
274
309
|
--
|
|
@@ -348,14 +383,16 @@ GRANT SELECT(name) ON TABLE public.foo TO postgres;
|
|
|
348
383
|
-- PostgreSQL database dump complete
|
|
349
384
|
--
|
|
350
385
|
`;
|
|
351
|
-
const omit = (object, keys) =>
|
|
386
|
+
const omit = (object, keys) =>
|
|
387
|
+
// @ts-expect-error - Object.fromEntries is not typed
|
|
388
|
+
Object.fromEntries(Object.entries(object).filter(([key]) => !keys.includes(key)));
|
|
352
389
|
const expectSchemeObject = (expectedSchemaObject) => {
|
|
353
390
|
const schemaObjects = (0, parsePgDump_1.parsePgDump)(dump);
|
|
354
391
|
(0, vitest_1.expect)(schemaObjects).toContainEqual(omit(expectedSchemaObject, ['scope']));
|
|
355
392
|
if (typeof expectedSchemaObject.scope === 'undefined') {
|
|
356
393
|
return;
|
|
357
394
|
}
|
|
358
|
-
(0, vitest_1.expect)((0, scopeSchemaObject_1.scopeSchemaObject)(schemaObjects, expectedSchemaObject)).toEqual(expectedSchemaObject.scope);
|
|
395
|
+
(0, vitest_1.expect)((0, scopeSchemaObject_1.scopeSchemaObject)(schemaObjects, omit(expectedSchemaObject, ['scope']))).toEqual(expectedSchemaObject.scope);
|
|
359
396
|
};
|
|
360
397
|
(0, vitest_1.test)('extracts SEQUENCE', async () => {
|
|
361
398
|
expectSchemeObject({
|
|
@@ -440,6 +477,42 @@ const expectSchemeObject = (expectedSchemaObject) => {
|
|
|
440
477
|
`,
|
|
441
478
|
});
|
|
442
479
|
});
|
|
480
|
+
(0, vitest_1.test)('extracts COMMENT on VIEW', async () => {
|
|
481
|
+
expectSchemeObject({
|
|
482
|
+
header: {
|
|
483
|
+
Name: 'VIEW baz',
|
|
484
|
+
Owner: 'postgres',
|
|
485
|
+
Schema: 'public',
|
|
486
|
+
Type: 'COMMENT',
|
|
487
|
+
},
|
|
488
|
+
scope: {
|
|
489
|
+
name: 'baz',
|
|
490
|
+
schema: 'public',
|
|
491
|
+
type: 'VIEW',
|
|
492
|
+
},
|
|
493
|
+
sql: (0, multiline_ts_1.default) `
|
|
494
|
+
COMMENT ON VIEW public.baz IS 'View comment x';
|
|
495
|
+
`,
|
|
496
|
+
});
|
|
497
|
+
});
|
|
498
|
+
(0, vitest_1.test)('extracts COMMENT on MATERIALIZED VIEW', async () => {
|
|
499
|
+
expectSchemeObject({
|
|
500
|
+
header: {
|
|
501
|
+
Name: 'MATERIALIZED VIEW qux',
|
|
502
|
+
Owner: 'postgres',
|
|
503
|
+
Schema: 'public',
|
|
504
|
+
Type: 'COMMENT',
|
|
505
|
+
},
|
|
506
|
+
scope: {
|
|
507
|
+
name: 'qux',
|
|
508
|
+
schema: 'public',
|
|
509
|
+
type: 'MATERIALIZED VIEW',
|
|
510
|
+
},
|
|
511
|
+
sql: (0, multiline_ts_1.default) `
|
|
512
|
+
COMMENT ON MATERIALIZED VIEW public.qux IS 'Materialized view comment x';
|
|
513
|
+
`,
|
|
514
|
+
});
|
|
515
|
+
});
|
|
443
516
|
(0, vitest_1.test)('extracts COMMENT on COLUMN', async () => {
|
|
444
517
|
expectSchemeObject({
|
|
445
518
|
header: {
|
|
@@ -512,6 +585,60 @@ const expectSchemeObject = (expectedSchemaObject) => {
|
|
|
512
585
|
`,
|
|
513
586
|
});
|
|
514
587
|
});
|
|
588
|
+
(0, vitest_1.test)('extracts COMMENT on FUNCTION', async () => {
|
|
589
|
+
expectSchemeObject({
|
|
590
|
+
header: {
|
|
591
|
+
Name: 'FUNCTION add_two_numbers(a integer, b integer)',
|
|
592
|
+
Owner: 'postgres',
|
|
593
|
+
Schema: 'public',
|
|
594
|
+
Type: 'COMMENT',
|
|
595
|
+
},
|
|
596
|
+
scope: {
|
|
597
|
+
name: 'add_two_numbers',
|
|
598
|
+
schema: 'public',
|
|
599
|
+
type: 'FUNCTION',
|
|
600
|
+
},
|
|
601
|
+
sql: (0, multiline_ts_1.default) `
|
|
602
|
+
COMMENT ON FUNCTION public.add_two_numbers(a integer, b integer) IS 'Function comment x';
|
|
603
|
+
`,
|
|
604
|
+
});
|
|
605
|
+
});
|
|
606
|
+
(0, vitest_1.test)('extracts COMMENT on AGGREGATE', async () => {
|
|
607
|
+
expectSchemeObject({
|
|
608
|
+
header: {
|
|
609
|
+
Name: 'AGGREGATE my_sum(integer)',
|
|
610
|
+
Owner: 'postgres',
|
|
611
|
+
Schema: 'public',
|
|
612
|
+
Type: 'COMMENT',
|
|
613
|
+
},
|
|
614
|
+
scope: {
|
|
615
|
+
name: 'my_sum',
|
|
616
|
+
schema: 'public',
|
|
617
|
+
type: 'AGGREGATE',
|
|
618
|
+
},
|
|
619
|
+
sql: (0, multiline_ts_1.default) `
|
|
620
|
+
COMMENT ON AGGREGATE public.my_sum(integer) IS 'Aggregate comment x';
|
|
621
|
+
`,
|
|
622
|
+
});
|
|
623
|
+
});
|
|
624
|
+
(0, vitest_1.test)('extracts COMMENT on PROCEDURE', async () => {
|
|
625
|
+
expectSchemeObject({
|
|
626
|
+
header: {
|
|
627
|
+
Name: 'PROCEDURE say_hello(IN name_param character varying)',
|
|
628
|
+
Owner: 'postgres',
|
|
629
|
+
Schema: 'public',
|
|
630
|
+
Type: 'COMMENT',
|
|
631
|
+
},
|
|
632
|
+
scope: {
|
|
633
|
+
name: 'say_hello',
|
|
634
|
+
schema: 'public',
|
|
635
|
+
type: 'PROCEDURE',
|
|
636
|
+
},
|
|
637
|
+
sql: (0, multiline_ts_1.default) `
|
|
638
|
+
COMMENT ON PROCEDURE public.say_hello(IN name_param character varying) IS 'Procedure comment x';
|
|
639
|
+
`,
|
|
640
|
+
});
|
|
641
|
+
});
|
|
515
642
|
(0, vitest_1.test)('extracts PUBLICATION', async () => {
|
|
516
643
|
expectSchemeObject({
|
|
517
644
|
header: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parsePgDump.test.js","sourceRoot":"","sources":["../src/parsePgDump.test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"parsePgDump.test.js","sourceRoot":"","sources":["../src/parsePgDump.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scopeSchemaObject.d.ts","sourceRoot":"","sources":["../src/scopeSchemaObject.ts"],"names":[],"mappings":"AAAA,OAAO,EAAyB,KAAK,YAAY,EAAE,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"scopeSchemaObject.d.ts","sourceRoot":"","sources":["../src/scopeSchemaObject.ts"],"names":[],"mappings":"AAAA,OAAO,EAAyB,KAAK,YAAY,EAAE,MAAM,eAAe,CAAC;AA2KzE,MAAM,MAAM,iBAAiB,GACzB;IACE,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,IAAI,CAAC;IACb,IAAI,EAAE,WAAW,CAAC;CACnB,GACD;IACE,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EACA,WAAW,GACX,UAAU,GACV,mBAAmB,GACnB,WAAW,GACX,OAAO,GACP,MAAM,GACN,MAAM,CAAC;CACZ,CAAC;AA6SN,eAAO,MAAM,iBAAiB,kBACb,YAAY,EAAE,WACpB,YAAY,KACpB,iBAAiB,GAAG,IAatB,CAAC"}
|
|
@@ -86,9 +86,19 @@ const extractAlterTableTarget = (fragment) => {
|
|
|
86
86
|
schema,
|
|
87
87
|
};
|
|
88
88
|
};
|
|
89
|
+
const extractFunctionLikeName = (fragment) => {
|
|
90
|
+
var _a, _b;
|
|
91
|
+
const { name } = (_b = (_a = fragment.match(
|
|
92
|
+
// eslint-disable-next-line unicorn/no-unsafe-regex
|
|
93
|
+
/(?:AGGREGATE|FUNCTION|PROCEDURE)\s+(?:(?<schema>\S+)\.)?(?<name>\w+)\s*\(/u)) === null || _a === void 0 ? void 0 : _a.groups) !== null && _b !== void 0 ? _b : {};
|
|
94
|
+
if (!name) {
|
|
95
|
+
throw new Error('Invalid FUNCTION name');
|
|
96
|
+
}
|
|
97
|
+
return name;
|
|
98
|
+
};
|
|
89
99
|
const extractCommentOnTarget = (fragment) => {
|
|
90
100
|
var _a, _b;
|
|
91
|
-
const { target, type } = (_b = (_a = fragment.match(/COMMENT ON (?<type>
|
|
101
|
+
const { target, type } = (_b = (_a = fragment.match(/COMMENT ON (?<type>AGGREGATE|COLUMN|EXTENSION|FUNCTION|INDEX|MATERIALIZED VIEW|PROCEDURE|SEQUENCE|TABLE|TYPE|VIEW)\s(?<target>.+?) IS/u)) === null || _a === void 0 ? void 0 : _a.groups) !== null && _b !== void 0 ? _b : {};
|
|
92
102
|
if (!target) {
|
|
93
103
|
throw new Error('Invalid COMMENT ON target (missing target)');
|
|
94
104
|
}
|
|
@@ -100,9 +110,138 @@ const extractCommentOnTarget = (fragment) => {
|
|
|
100
110
|
type: type,
|
|
101
111
|
};
|
|
102
112
|
};
|
|
113
|
+
const scopeComment = (schemaObjects, subject) => {
|
|
114
|
+
var _a, _b, _c, _d, _e;
|
|
115
|
+
const target = extractCommentOnTarget(subject.sql);
|
|
116
|
+
if (target.type === 'AGGREGATE') {
|
|
117
|
+
return {
|
|
118
|
+
name: extractFunctionLikeName(subject.header.Name),
|
|
119
|
+
schema: (_a = subject.header.Schema) !== null && _a !== void 0 ? _a : 'public',
|
|
120
|
+
type: 'AGGREGATE',
|
|
121
|
+
};
|
|
122
|
+
}
|
|
123
|
+
if (target.type === 'COLUMN') {
|
|
124
|
+
const [schema, name] = zod_1.z
|
|
125
|
+
.tuple([zod_1.z.string(), zod_1.z.string(), zod_1.z.string()])
|
|
126
|
+
.parse(target.target.split('.'));
|
|
127
|
+
return {
|
|
128
|
+
name,
|
|
129
|
+
schema,
|
|
130
|
+
type: 'TABLE',
|
|
131
|
+
};
|
|
132
|
+
}
|
|
133
|
+
if (target.type === 'EXTENSION') {
|
|
134
|
+
return {
|
|
135
|
+
name: target.target,
|
|
136
|
+
schema: null,
|
|
137
|
+
type: 'EXTENSION',
|
|
138
|
+
};
|
|
139
|
+
}
|
|
140
|
+
if (target.type === 'FUNCTION') {
|
|
141
|
+
return {
|
|
142
|
+
name: extractFunctionLikeName(subject.header.Name),
|
|
143
|
+
schema: (_b = subject.header.Schema) !== null && _b !== void 0 ? _b : 'public',
|
|
144
|
+
type: 'FUNCTION',
|
|
145
|
+
};
|
|
146
|
+
}
|
|
147
|
+
if (target.type === 'INDEX') {
|
|
148
|
+
const [schema, indexName] = zod_1.z
|
|
149
|
+
.tuple([zod_1.z.string(), zod_1.z.string()])
|
|
150
|
+
.parse(target.target.split('.'));
|
|
151
|
+
const indexSchemaObject = schemaObjects.find((schemaObject) => {
|
|
152
|
+
if (schemaObject.header.Type !== 'INDEX') {
|
|
153
|
+
return false;
|
|
154
|
+
}
|
|
155
|
+
return schemaObject.header.Name === indexName;
|
|
156
|
+
});
|
|
157
|
+
if (indexSchemaObject) {
|
|
158
|
+
throw new Error('Not implemented');
|
|
159
|
+
}
|
|
160
|
+
const constraintSchemaObject = schemaObjects.find((schemaObject) => {
|
|
161
|
+
if (schemaObject.header.Type !== 'CONSTRAINT') {
|
|
162
|
+
return false;
|
|
163
|
+
}
|
|
164
|
+
return schemaObject.header.Name.split(' ')[1] === indexName;
|
|
165
|
+
});
|
|
166
|
+
if (constraintSchemaObject) {
|
|
167
|
+
const [tableName] = constraintSchemaObject.header.Name.split(' ');
|
|
168
|
+
return {
|
|
169
|
+
name: tableName,
|
|
170
|
+
schema,
|
|
171
|
+
type: 'TABLE',
|
|
172
|
+
};
|
|
173
|
+
}
|
|
174
|
+
}
|
|
175
|
+
if (target.type === 'MATERIALIZED VIEW') {
|
|
176
|
+
return {
|
|
177
|
+
name: subject.header.Name.replace('MATERIALIZED VIEW ', ''),
|
|
178
|
+
schema: (_c = subject.header.Schema) !== null && _c !== void 0 ? _c : 'public',
|
|
179
|
+
type: 'MATERIALIZED VIEW',
|
|
180
|
+
};
|
|
181
|
+
}
|
|
182
|
+
if (target.type === 'PROCEDURE') {
|
|
183
|
+
return {
|
|
184
|
+
name: extractFunctionLikeName(subject.header.Name),
|
|
185
|
+
schema: (_d = subject.header.Schema) !== null && _d !== void 0 ? _d : 'public',
|
|
186
|
+
type: 'PROCEDURE',
|
|
187
|
+
};
|
|
188
|
+
}
|
|
189
|
+
if (target.type === 'SEQUENCE') {
|
|
190
|
+
const [schemaName, sequenceName] = zod_1.z
|
|
191
|
+
.tuple([zod_1.z.string(), zod_1.z.string()])
|
|
192
|
+
.parse(target.target.split('.'));
|
|
193
|
+
const sequenceSchemaObject = schemaObjects.find((schemaObject) => {
|
|
194
|
+
if (schemaObject.header.Type !== 'SEQUENCE') {
|
|
195
|
+
return false;
|
|
196
|
+
}
|
|
197
|
+
return (schemaObject.header.Name === sequenceName &&
|
|
198
|
+
schemaObject.header.Schema === schemaName);
|
|
199
|
+
});
|
|
200
|
+
if (!sequenceSchemaObject) {
|
|
201
|
+
throw new Error('Sequence not found');
|
|
202
|
+
}
|
|
203
|
+
const alterTableTarget = extractAlterTableTarget(sequenceSchemaObject.sql);
|
|
204
|
+
return {
|
|
205
|
+
name: alterTableTarget.name,
|
|
206
|
+
schema: alterTableTarget.schema,
|
|
207
|
+
type: 'TABLE',
|
|
208
|
+
};
|
|
209
|
+
}
|
|
210
|
+
if (target.type === 'TABLE') {
|
|
211
|
+
const [schema, name] = zod_1.z
|
|
212
|
+
.tuple([zod_1.z.string(), zod_1.z.string()])
|
|
213
|
+
.parse(target.target.split('.'));
|
|
214
|
+
return {
|
|
215
|
+
name,
|
|
216
|
+
schema,
|
|
217
|
+
type: 'TABLE',
|
|
218
|
+
};
|
|
219
|
+
}
|
|
220
|
+
if (target.type === 'VIEW') {
|
|
221
|
+
const [schema, name] = zod_1.z
|
|
222
|
+
.tuple([zod_1.z.string(), zod_1.z.string()])
|
|
223
|
+
.parse(target.target.split('.'));
|
|
224
|
+
return {
|
|
225
|
+
name,
|
|
226
|
+
schema,
|
|
227
|
+
type: 'VIEW',
|
|
228
|
+
};
|
|
229
|
+
}
|
|
230
|
+
if (target.type === 'TYPE') {
|
|
231
|
+
const [, typeName] = zod_1.z
|
|
232
|
+
.tuple([zod_1.z.string(), zod_1.z.string()])
|
|
233
|
+
.parse(subject.header.Name.split(' '));
|
|
234
|
+
return {
|
|
235
|
+
name: typeName,
|
|
236
|
+
schema: (_e = subject.header.Schema) !== null && _e !== void 0 ? _e : 'public',
|
|
237
|
+
type: 'TYPE',
|
|
238
|
+
};
|
|
239
|
+
}
|
|
240
|
+
return null;
|
|
241
|
+
};
|
|
103
242
|
// eslint-disable-next-line complexity
|
|
104
243
|
const scopeAttributedSchemaObject = (schemaObjects, subject) => {
|
|
105
|
-
var _a, _b, _c, _d, _e, _f
|
|
244
|
+
var _a, _b, _c, _d, _e, _f;
|
|
106
245
|
if (subject.header.Type === 'FUNCTION') {
|
|
107
246
|
return {
|
|
108
247
|
name: subject.header.Name.split('(')[0],
|
|
@@ -185,93 +324,7 @@ const scopeAttributedSchemaObject = (schemaObjects, subject) => {
|
|
|
185
324
|
};
|
|
186
325
|
}
|
|
187
326
|
if (subject.sql.startsWith('COMMENT ON ')) {
|
|
188
|
-
|
|
189
|
-
if (target.type === 'EXTENSION') {
|
|
190
|
-
return {
|
|
191
|
-
name: target.target,
|
|
192
|
-
schema: null,
|
|
193
|
-
type: 'EXTENSION',
|
|
194
|
-
};
|
|
195
|
-
}
|
|
196
|
-
if (target.type === 'TABLE') {
|
|
197
|
-
const [schema, name] = zod_1.z
|
|
198
|
-
.tuple([zod_1.z.string(), zod_1.z.string()])
|
|
199
|
-
.parse(target.target.split('.'));
|
|
200
|
-
return {
|
|
201
|
-
name,
|
|
202
|
-
schema,
|
|
203
|
-
type: 'TABLE',
|
|
204
|
-
};
|
|
205
|
-
}
|
|
206
|
-
if (target.type === 'COLUMN') {
|
|
207
|
-
const [schema, name] = zod_1.z
|
|
208
|
-
.tuple([zod_1.z.string(), zod_1.z.string(), zod_1.z.string()])
|
|
209
|
-
.parse(target.target.split('.'));
|
|
210
|
-
return {
|
|
211
|
-
name,
|
|
212
|
-
schema,
|
|
213
|
-
type: 'TABLE',
|
|
214
|
-
};
|
|
215
|
-
}
|
|
216
|
-
if (target.type === 'INDEX') {
|
|
217
|
-
const [schema, indexName] = zod_1.z
|
|
218
|
-
.tuple([zod_1.z.string(), zod_1.z.string()])
|
|
219
|
-
.parse(target.target.split('.'));
|
|
220
|
-
const indexSchemaObject = schemaObjects.find((schemaObject) => {
|
|
221
|
-
if (schemaObject.header.Type !== 'INDEX') {
|
|
222
|
-
return false;
|
|
223
|
-
}
|
|
224
|
-
return schemaObject.header.Name === indexName;
|
|
225
|
-
});
|
|
226
|
-
if (indexSchemaObject) {
|
|
227
|
-
throw new Error('Not implemented');
|
|
228
|
-
}
|
|
229
|
-
const constraintSchemaObject = schemaObjects.find((schemaObject) => {
|
|
230
|
-
if (schemaObject.header.Type !== 'CONSTRAINT') {
|
|
231
|
-
return false;
|
|
232
|
-
}
|
|
233
|
-
return schemaObject.header.Name.split(' ')[1] === indexName;
|
|
234
|
-
});
|
|
235
|
-
if (constraintSchemaObject) {
|
|
236
|
-
const [tableName] = constraintSchemaObject.header.Name.split(' ');
|
|
237
|
-
return {
|
|
238
|
-
name: tableName,
|
|
239
|
-
schema,
|
|
240
|
-
type: 'TABLE',
|
|
241
|
-
};
|
|
242
|
-
}
|
|
243
|
-
}
|
|
244
|
-
if (target.type === 'SEQUENCE') {
|
|
245
|
-
const [schemaName, sequenceName] = zod_1.z
|
|
246
|
-
.tuple([zod_1.z.string(), zod_1.z.string()])
|
|
247
|
-
.parse(target.target.split('.'));
|
|
248
|
-
const sequenceSchemaObject = schemaObjects.find((schemaObject) => {
|
|
249
|
-
if (schemaObject.header.Type !== 'SEQUENCE') {
|
|
250
|
-
return false;
|
|
251
|
-
}
|
|
252
|
-
return (schemaObject.header.Name === sequenceName &&
|
|
253
|
-
schemaObject.header.Schema === schemaName);
|
|
254
|
-
});
|
|
255
|
-
if (!sequenceSchemaObject) {
|
|
256
|
-
throw new Error('Sequence not found');
|
|
257
|
-
}
|
|
258
|
-
const alterTableTarget = extractAlterTableTarget(sequenceSchemaObject.sql);
|
|
259
|
-
return {
|
|
260
|
-
name: alterTableTarget.name,
|
|
261
|
-
schema: alterTableTarget.schema,
|
|
262
|
-
type: 'TABLE',
|
|
263
|
-
};
|
|
264
|
-
}
|
|
265
|
-
if (target.type === 'TYPE') {
|
|
266
|
-
const [, typeName] = zod_1.z
|
|
267
|
-
.tuple([zod_1.z.string(), zod_1.z.string()])
|
|
268
|
-
.parse(subject.header.Name.split(' '));
|
|
269
|
-
return {
|
|
270
|
-
name: typeName,
|
|
271
|
-
schema: (_g = subject.header.Schema) !== null && _g !== void 0 ? _g : 'public',
|
|
272
|
-
type: 'TYPE',
|
|
273
|
-
};
|
|
274
|
-
}
|
|
327
|
+
return scopeComment(schemaObjects, subject);
|
|
275
328
|
}
|
|
276
329
|
try {
|
|
277
330
|
const target = extractOwnedByTarget(subject.sql);
|
|
@@ -281,7 +334,7 @@ const scopeAttributedSchemaObject = (schemaObjects, subject) => {
|
|
|
281
334
|
type: 'TABLE',
|
|
282
335
|
};
|
|
283
336
|
}
|
|
284
|
-
catch (
|
|
337
|
+
catch (_g) {
|
|
285
338
|
// ignore
|
|
286
339
|
}
|
|
287
340
|
try {
|
|
@@ -292,7 +345,7 @@ const scopeAttributedSchemaObject = (schemaObjects, subject) => {
|
|
|
292
345
|
type: 'TABLE',
|
|
293
346
|
};
|
|
294
347
|
}
|
|
295
|
-
catch (
|
|
348
|
+
catch (_h) {
|
|
296
349
|
// ignore
|
|
297
350
|
}
|
|
298
351
|
return null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scopeSchemaObject.js","sourceRoot":"","sources":["../src/scopeSchemaObject.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"scopeSchemaObject.js","sourceRoot":"","sources":["../src/scopeSchemaObject.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
package/src/parsePgDump.test.ts
CHANGED
|
@@ -87,6 +87,13 @@ $$;
|
|
|
87
87
|
|
|
88
88
|
ALTER FUNCTION public.add_two_numbers(a integer, b integer) OWNER TO postgres;
|
|
89
89
|
|
|
90
|
+
--
|
|
91
|
+
-- Name: FUNCTION add_two_numbers(a integer, b integer); Type: COMMENT; Schema: public; Owner: postgres
|
|
92
|
+
--
|
|
93
|
+
|
|
94
|
+
COMMENT ON FUNCTION public.add_two_numbers(a integer, b integer) IS 'Function comment x';
|
|
95
|
+
|
|
96
|
+
|
|
90
97
|
--
|
|
91
98
|
-- Name: notify_foo_insert(); Type: FUNCTION; Schema: public; Owner: postgres
|
|
92
99
|
--
|
|
@@ -118,6 +125,13 @@ $$;
|
|
|
118
125
|
|
|
119
126
|
ALTER PROCEDURE public.say_hello(IN name_param character varying) OWNER TO postgres;
|
|
120
127
|
|
|
128
|
+
--
|
|
129
|
+
-- Name: PROCEDURE say_hello(IN name_param character varying); Type: COMMENT; Schema: public; Owner: postgres
|
|
130
|
+
--
|
|
131
|
+
|
|
132
|
+
COMMENT ON PROCEDURE public.say_hello(IN name_param character varying) IS 'Procedure comment x';
|
|
133
|
+
|
|
134
|
+
|
|
121
135
|
--
|
|
122
136
|
-- Name: my_sum(integer); Type: AGGREGATE; Schema: public; Owner: postgres
|
|
123
137
|
--
|
|
@@ -130,6 +144,13 @@ CREATE AGGREGATE public.my_sum(integer) (
|
|
|
130
144
|
|
|
131
145
|
ALTER AGGREGATE public.my_sum(integer) OWNER TO postgres;
|
|
132
146
|
|
|
147
|
+
--
|
|
148
|
+
-- Name: AGGREGATE my_sum(integer); Type: COMMENT; Schema: public; Owner: postgres
|
|
149
|
+
--
|
|
150
|
+
|
|
151
|
+
COMMENT ON AGGREGATE public.my_sum(integer) IS 'Aggregate comment x';
|
|
152
|
+
|
|
153
|
+
|
|
133
154
|
SET default_tablespace = '';
|
|
134
155
|
|
|
135
156
|
SET default_table_access_method = heap;
|
|
@@ -173,6 +194,13 @@ CREATE VIEW public.baz AS
|
|
|
173
194
|
|
|
174
195
|
ALTER VIEW public.baz OWNER TO postgres;
|
|
175
196
|
|
|
197
|
+
--
|
|
198
|
+
-- Name: VIEW baz; Type: COMMENT; Schema: public; Owner: postgres
|
|
199
|
+
--
|
|
200
|
+
|
|
201
|
+
COMMENT ON VIEW public.baz IS 'View comment x';
|
|
202
|
+
|
|
203
|
+
|
|
176
204
|
--
|
|
177
205
|
-- Name: corge; Type: TABLE; Schema: public; Owner: postgres
|
|
178
206
|
--
|
|
@@ -266,6 +294,13 @@ CREATE MATERIALIZED VIEW public.qux AS
|
|
|
266
294
|
|
|
267
295
|
ALTER MATERIALIZED VIEW public.qux OWNER TO postgres;
|
|
268
296
|
|
|
297
|
+
--
|
|
298
|
+
-- Name: MATERIALIZED VIEW qux; Type: COMMENT; Schema: public; Owner: postgres
|
|
299
|
+
--
|
|
300
|
+
|
|
301
|
+
COMMENT ON MATERIALIZED VIEW public.qux IS 'Materialized view comment x';
|
|
302
|
+
|
|
303
|
+
|
|
269
304
|
--
|
|
270
305
|
-- Name: corge id; Type: DEFAULT; Schema: public; Owner: postgres
|
|
271
306
|
--
|
|
@@ -346,7 +381,11 @@ GRANT SELECT(name) ON TABLE public.foo TO postgres;
|
|
|
346
381
|
--
|
|
347
382
|
`;
|
|
348
383
|
|
|
349
|
-
const omit = <T extends Record<string, unknown>>(
|
|
384
|
+
const omit = <T extends Record<string, unknown>>(
|
|
385
|
+
object: T,
|
|
386
|
+
keys: string[],
|
|
387
|
+
): T =>
|
|
388
|
+
// @ts-expect-error - Object.fromEntries is not typed
|
|
350
389
|
Object.fromEntries(
|
|
351
390
|
Object.entries(object).filter(([key]) => !keys.includes(key)),
|
|
352
391
|
);
|
|
@@ -362,9 +401,9 @@ const expectSchemeObject = (
|
|
|
362
401
|
return;
|
|
363
402
|
}
|
|
364
403
|
|
|
365
|
-
expect(
|
|
366
|
-
expectedSchemaObject
|
|
367
|
-
);
|
|
404
|
+
expect(
|
|
405
|
+
scopeSchemaObject(schemaObjects, omit(expectedSchemaObject, ['scope'])),
|
|
406
|
+
).toEqual(expectedSchemaObject.scope);
|
|
368
407
|
};
|
|
369
408
|
|
|
370
409
|
test('extracts SEQUENCE', async () => {
|
|
@@ -454,6 +493,44 @@ test('extracts COMMENT on TABLE', async () => {
|
|
|
454
493
|
});
|
|
455
494
|
});
|
|
456
495
|
|
|
496
|
+
test('extracts COMMENT on VIEW', async () => {
|
|
497
|
+
expectSchemeObject({
|
|
498
|
+
header: {
|
|
499
|
+
Name: 'VIEW baz',
|
|
500
|
+
Owner: 'postgres',
|
|
501
|
+
Schema: 'public',
|
|
502
|
+
Type: 'COMMENT',
|
|
503
|
+
},
|
|
504
|
+
scope: {
|
|
505
|
+
name: 'baz',
|
|
506
|
+
schema: 'public',
|
|
507
|
+
type: 'VIEW',
|
|
508
|
+
},
|
|
509
|
+
sql: multiline`
|
|
510
|
+
COMMENT ON VIEW public.baz IS 'View comment x';
|
|
511
|
+
`,
|
|
512
|
+
});
|
|
513
|
+
});
|
|
514
|
+
|
|
515
|
+
test('extracts COMMENT on MATERIALIZED VIEW', async () => {
|
|
516
|
+
expectSchemeObject({
|
|
517
|
+
header: {
|
|
518
|
+
Name: 'MATERIALIZED VIEW qux',
|
|
519
|
+
Owner: 'postgres',
|
|
520
|
+
Schema: 'public',
|
|
521
|
+
Type: 'COMMENT',
|
|
522
|
+
},
|
|
523
|
+
scope: {
|
|
524
|
+
name: 'qux',
|
|
525
|
+
schema: 'public',
|
|
526
|
+
type: 'MATERIALIZED VIEW',
|
|
527
|
+
},
|
|
528
|
+
sql: multiline`
|
|
529
|
+
COMMENT ON MATERIALIZED VIEW public.qux IS 'Materialized view comment x';
|
|
530
|
+
`,
|
|
531
|
+
});
|
|
532
|
+
});
|
|
533
|
+
|
|
457
534
|
test('extracts COMMENT on COLUMN', async () => {
|
|
458
535
|
expectSchemeObject({
|
|
459
536
|
header: {
|
|
@@ -530,6 +607,63 @@ test('extracts COMMENT on TYPE', async () => {
|
|
|
530
607
|
});
|
|
531
608
|
});
|
|
532
609
|
|
|
610
|
+
test('extracts COMMENT on FUNCTION', async () => {
|
|
611
|
+
expectSchemeObject({
|
|
612
|
+
header: {
|
|
613
|
+
Name: 'FUNCTION add_two_numbers(a integer, b integer)',
|
|
614
|
+
Owner: 'postgres',
|
|
615
|
+
Schema: 'public',
|
|
616
|
+
Type: 'COMMENT',
|
|
617
|
+
},
|
|
618
|
+
scope: {
|
|
619
|
+
name: 'add_two_numbers',
|
|
620
|
+
schema: 'public',
|
|
621
|
+
type: 'FUNCTION',
|
|
622
|
+
},
|
|
623
|
+
sql: multiline`
|
|
624
|
+
COMMENT ON FUNCTION public.add_two_numbers(a integer, b integer) IS 'Function comment x';
|
|
625
|
+
`,
|
|
626
|
+
});
|
|
627
|
+
});
|
|
628
|
+
|
|
629
|
+
test('extracts COMMENT on AGGREGATE', async () => {
|
|
630
|
+
expectSchemeObject({
|
|
631
|
+
header: {
|
|
632
|
+
Name: 'AGGREGATE my_sum(integer)',
|
|
633
|
+
Owner: 'postgres',
|
|
634
|
+
Schema: 'public',
|
|
635
|
+
Type: 'COMMENT',
|
|
636
|
+
},
|
|
637
|
+
scope: {
|
|
638
|
+
name: 'my_sum',
|
|
639
|
+
schema: 'public',
|
|
640
|
+
type: 'AGGREGATE',
|
|
641
|
+
},
|
|
642
|
+
sql: multiline`
|
|
643
|
+
COMMENT ON AGGREGATE public.my_sum(integer) IS 'Aggregate comment x';
|
|
644
|
+
`,
|
|
645
|
+
});
|
|
646
|
+
});
|
|
647
|
+
|
|
648
|
+
test('extracts COMMENT on PROCEDURE', async () => {
|
|
649
|
+
expectSchemeObject({
|
|
650
|
+
header: {
|
|
651
|
+
Name: 'PROCEDURE say_hello(IN name_param character varying)',
|
|
652
|
+
Owner: 'postgres',
|
|
653
|
+
Schema: 'public',
|
|
654
|
+
Type: 'COMMENT',
|
|
655
|
+
},
|
|
656
|
+
scope: {
|
|
657
|
+
name: 'say_hello',
|
|
658
|
+
schema: 'public',
|
|
659
|
+
type: 'PROCEDURE',
|
|
660
|
+
},
|
|
661
|
+
sql: multiline`
|
|
662
|
+
COMMENT ON PROCEDURE public.say_hello(IN name_param character varying) IS 'Procedure comment x';
|
|
663
|
+
`,
|
|
664
|
+
});
|
|
665
|
+
});
|
|
666
|
+
|
|
533
667
|
test('extracts PUBLICATION', async () => {
|
|
534
668
|
expectSchemeObject({
|
|
535
669
|
header: {
|
package/src/scopeSchemaObject.ts
CHANGED
|
@@ -119,15 +119,40 @@ const extractAlterTableTarget = (fragment: string): TableTarget => {
|
|
|
119
119
|
};
|
|
120
120
|
};
|
|
121
121
|
|
|
122
|
+
const extractFunctionLikeName = (fragment: string): string => {
|
|
123
|
+
const { name } =
|
|
124
|
+
fragment.match(
|
|
125
|
+
// eslint-disable-next-line unicorn/no-unsafe-regex
|
|
126
|
+
/(?:AGGREGATE|FUNCTION|PROCEDURE)\s+(?:(?<schema>\S+)\.)?(?<name>\w+)\s*\(/u,
|
|
127
|
+
)?.groups ?? {};
|
|
128
|
+
|
|
129
|
+
if (!name) {
|
|
130
|
+
throw new Error('Invalid FUNCTION name');
|
|
131
|
+
}
|
|
132
|
+
|
|
133
|
+
return name;
|
|
134
|
+
};
|
|
135
|
+
|
|
122
136
|
type CommentOnTarget = {
|
|
123
137
|
target: string;
|
|
124
|
-
type:
|
|
138
|
+
type:
|
|
139
|
+
| 'AGGREGATE'
|
|
140
|
+
| 'COLUMN'
|
|
141
|
+
| 'EXTENSION'
|
|
142
|
+
| 'FUNCTION'
|
|
143
|
+
| 'INDEX'
|
|
144
|
+
| 'MATERIALIZED VIEW'
|
|
145
|
+
| 'PROCEDURE'
|
|
146
|
+
| 'SEQUENCE'
|
|
147
|
+
| 'TABLE'
|
|
148
|
+
| 'TYPE'
|
|
149
|
+
| 'VIEW';
|
|
125
150
|
};
|
|
126
151
|
|
|
127
152
|
const extractCommentOnTarget = (fragment: string): CommentOnTarget => {
|
|
128
153
|
const { target, type } =
|
|
129
154
|
fragment.match(
|
|
130
|
-
/COMMENT ON (?<type>
|
|
155
|
+
/COMMENT ON (?<type>AGGREGATE|COLUMN|EXTENSION|FUNCTION|INDEX|MATERIALIZED VIEW|PROCEDURE|SEQUENCE|TABLE|TYPE|VIEW)\s(?<target>.+?) IS/u,
|
|
131
156
|
)?.groups ?? {};
|
|
132
157
|
|
|
133
158
|
if (!target) {
|
|
@@ -168,6 +193,168 @@ type AttributedSchemaObject = {
|
|
|
168
193
|
sql: string;
|
|
169
194
|
};
|
|
170
195
|
|
|
196
|
+
const scopeComment = (
|
|
197
|
+
schemaObjects: AttributedSchemaObject[],
|
|
198
|
+
subject: AttributedSchemaObject,
|
|
199
|
+
): SchemaObjectScope | null => {
|
|
200
|
+
const target = extractCommentOnTarget(subject.sql);
|
|
201
|
+
|
|
202
|
+
if (target.type === 'AGGREGATE') {
|
|
203
|
+
return {
|
|
204
|
+
name: extractFunctionLikeName(subject.header.Name),
|
|
205
|
+
schema: subject.header.Schema ?? 'public',
|
|
206
|
+
type: 'AGGREGATE',
|
|
207
|
+
};
|
|
208
|
+
}
|
|
209
|
+
|
|
210
|
+
if (target.type === 'COLUMN') {
|
|
211
|
+
const [schema, name] = z
|
|
212
|
+
.tuple([z.string(), z.string(), z.string()])
|
|
213
|
+
.parse(target.target.split('.'));
|
|
214
|
+
|
|
215
|
+
return {
|
|
216
|
+
name,
|
|
217
|
+
schema,
|
|
218
|
+
type: 'TABLE',
|
|
219
|
+
};
|
|
220
|
+
}
|
|
221
|
+
|
|
222
|
+
if (target.type === 'EXTENSION') {
|
|
223
|
+
return {
|
|
224
|
+
name: target.target,
|
|
225
|
+
schema: null,
|
|
226
|
+
type: 'EXTENSION',
|
|
227
|
+
};
|
|
228
|
+
}
|
|
229
|
+
|
|
230
|
+
if (target.type === 'FUNCTION') {
|
|
231
|
+
return {
|
|
232
|
+
name: extractFunctionLikeName(subject.header.Name),
|
|
233
|
+
schema: subject.header.Schema ?? 'public',
|
|
234
|
+
type: 'FUNCTION',
|
|
235
|
+
};
|
|
236
|
+
}
|
|
237
|
+
|
|
238
|
+
if (target.type === 'INDEX') {
|
|
239
|
+
const [schema, indexName] = z
|
|
240
|
+
.tuple([z.string(), z.string()])
|
|
241
|
+
.parse(target.target.split('.'));
|
|
242
|
+
|
|
243
|
+
const indexSchemaObject = schemaObjects.find((schemaObject) => {
|
|
244
|
+
if (schemaObject.header.Type !== 'INDEX') {
|
|
245
|
+
return false;
|
|
246
|
+
}
|
|
247
|
+
|
|
248
|
+
return schemaObject.header.Name === indexName;
|
|
249
|
+
});
|
|
250
|
+
|
|
251
|
+
if (indexSchemaObject) {
|
|
252
|
+
throw new Error('Not implemented');
|
|
253
|
+
}
|
|
254
|
+
|
|
255
|
+
const constraintSchemaObject = schemaObjects.find((schemaObject) => {
|
|
256
|
+
if (schemaObject.header.Type !== 'CONSTRAINT') {
|
|
257
|
+
return false;
|
|
258
|
+
}
|
|
259
|
+
|
|
260
|
+
return schemaObject.header.Name.split(' ')[1] === indexName;
|
|
261
|
+
});
|
|
262
|
+
|
|
263
|
+
if (constraintSchemaObject) {
|
|
264
|
+
const [tableName] = constraintSchemaObject.header.Name.split(' ');
|
|
265
|
+
|
|
266
|
+
return {
|
|
267
|
+
name: tableName,
|
|
268
|
+
schema,
|
|
269
|
+
type: 'TABLE',
|
|
270
|
+
};
|
|
271
|
+
}
|
|
272
|
+
}
|
|
273
|
+
|
|
274
|
+
if (target.type === 'MATERIALIZED VIEW') {
|
|
275
|
+
return {
|
|
276
|
+
name: subject.header.Name.replace('MATERIALIZED VIEW ', ''),
|
|
277
|
+
schema: subject.header.Schema ?? 'public',
|
|
278
|
+
type: 'MATERIALIZED VIEW',
|
|
279
|
+
};
|
|
280
|
+
}
|
|
281
|
+
|
|
282
|
+
if (target.type === 'PROCEDURE') {
|
|
283
|
+
return {
|
|
284
|
+
name: extractFunctionLikeName(subject.header.Name),
|
|
285
|
+
schema: subject.header.Schema ?? 'public',
|
|
286
|
+
type: 'PROCEDURE',
|
|
287
|
+
};
|
|
288
|
+
}
|
|
289
|
+
|
|
290
|
+
if (target.type === 'SEQUENCE') {
|
|
291
|
+
const [schemaName, sequenceName] = z
|
|
292
|
+
.tuple([z.string(), z.string()])
|
|
293
|
+
.parse(target.target.split('.'));
|
|
294
|
+
|
|
295
|
+
const sequenceSchemaObject = schemaObjects.find((schemaObject) => {
|
|
296
|
+
if (schemaObject.header.Type !== 'SEQUENCE') {
|
|
297
|
+
return false;
|
|
298
|
+
}
|
|
299
|
+
|
|
300
|
+
return (
|
|
301
|
+
schemaObject.header.Name === sequenceName &&
|
|
302
|
+
schemaObject.header.Schema === schemaName
|
|
303
|
+
);
|
|
304
|
+
});
|
|
305
|
+
|
|
306
|
+
if (!sequenceSchemaObject) {
|
|
307
|
+
throw new Error('Sequence not found');
|
|
308
|
+
}
|
|
309
|
+
|
|
310
|
+
const alterTableTarget = extractAlterTableTarget(sequenceSchemaObject.sql);
|
|
311
|
+
|
|
312
|
+
return {
|
|
313
|
+
name: alterTableTarget.name,
|
|
314
|
+
schema: alterTableTarget.schema,
|
|
315
|
+
type: 'TABLE',
|
|
316
|
+
};
|
|
317
|
+
}
|
|
318
|
+
|
|
319
|
+
if (target.type === 'TABLE') {
|
|
320
|
+
const [schema, name] = z
|
|
321
|
+
.tuple([z.string(), z.string()])
|
|
322
|
+
.parse(target.target.split('.'));
|
|
323
|
+
|
|
324
|
+
return {
|
|
325
|
+
name,
|
|
326
|
+
schema,
|
|
327
|
+
type: 'TABLE',
|
|
328
|
+
};
|
|
329
|
+
}
|
|
330
|
+
|
|
331
|
+
if (target.type === 'VIEW') {
|
|
332
|
+
const [schema, name] = z
|
|
333
|
+
.tuple([z.string(), z.string()])
|
|
334
|
+
.parse(target.target.split('.'));
|
|
335
|
+
|
|
336
|
+
return {
|
|
337
|
+
name,
|
|
338
|
+
schema,
|
|
339
|
+
type: 'VIEW',
|
|
340
|
+
};
|
|
341
|
+
}
|
|
342
|
+
|
|
343
|
+
if (target.type === 'TYPE') {
|
|
344
|
+
const [, typeName] = z
|
|
345
|
+
.tuple([z.string(), z.string()])
|
|
346
|
+
.parse(subject.header.Name.split(' '));
|
|
347
|
+
|
|
348
|
+
return {
|
|
349
|
+
name: typeName,
|
|
350
|
+
schema: subject.header.Schema ?? 'public',
|
|
351
|
+
type: 'TYPE',
|
|
352
|
+
};
|
|
353
|
+
}
|
|
354
|
+
|
|
355
|
+
return null;
|
|
356
|
+
};
|
|
357
|
+
|
|
171
358
|
// eslint-disable-next-line complexity
|
|
172
359
|
const scopeAttributedSchemaObject = (
|
|
173
360
|
schemaObjects: AttributedSchemaObject[],
|
|
@@ -270,118 +457,7 @@ const scopeAttributedSchemaObject = (
|
|
|
270
457
|
}
|
|
271
458
|
|
|
272
459
|
if (subject.sql.startsWith('COMMENT ON ')) {
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
if (target.type === 'EXTENSION') {
|
|
276
|
-
return {
|
|
277
|
-
name: target.target,
|
|
278
|
-
schema: null,
|
|
279
|
-
type: 'EXTENSION',
|
|
280
|
-
};
|
|
281
|
-
}
|
|
282
|
-
|
|
283
|
-
if (target.type === 'TABLE') {
|
|
284
|
-
const [schema, name] = z
|
|
285
|
-
.tuple([z.string(), z.string()])
|
|
286
|
-
.parse(target.target.split('.'));
|
|
287
|
-
|
|
288
|
-
return {
|
|
289
|
-
name,
|
|
290
|
-
schema,
|
|
291
|
-
type: 'TABLE',
|
|
292
|
-
};
|
|
293
|
-
}
|
|
294
|
-
|
|
295
|
-
if (target.type === 'COLUMN') {
|
|
296
|
-
const [schema, name] = z
|
|
297
|
-
.tuple([z.string(), z.string(), z.string()])
|
|
298
|
-
.parse(target.target.split('.'));
|
|
299
|
-
|
|
300
|
-
return {
|
|
301
|
-
name,
|
|
302
|
-
schema,
|
|
303
|
-
type: 'TABLE',
|
|
304
|
-
};
|
|
305
|
-
}
|
|
306
|
-
|
|
307
|
-
if (target.type === 'INDEX') {
|
|
308
|
-
const [schema, indexName] = z
|
|
309
|
-
.tuple([z.string(), z.string()])
|
|
310
|
-
.parse(target.target.split('.'));
|
|
311
|
-
|
|
312
|
-
const indexSchemaObject = schemaObjects.find((schemaObject) => {
|
|
313
|
-
if (schemaObject.header.Type !== 'INDEX') {
|
|
314
|
-
return false;
|
|
315
|
-
}
|
|
316
|
-
|
|
317
|
-
return schemaObject.header.Name === indexName;
|
|
318
|
-
});
|
|
319
|
-
|
|
320
|
-
if (indexSchemaObject) {
|
|
321
|
-
throw new Error('Not implemented');
|
|
322
|
-
}
|
|
323
|
-
|
|
324
|
-
const constraintSchemaObject = schemaObjects.find((schemaObject) => {
|
|
325
|
-
if (schemaObject.header.Type !== 'CONSTRAINT') {
|
|
326
|
-
return false;
|
|
327
|
-
}
|
|
328
|
-
|
|
329
|
-
return schemaObject.header.Name.split(' ')[1] === indexName;
|
|
330
|
-
});
|
|
331
|
-
|
|
332
|
-
if (constraintSchemaObject) {
|
|
333
|
-
const [tableName] = constraintSchemaObject.header.Name.split(' ');
|
|
334
|
-
|
|
335
|
-
return {
|
|
336
|
-
name: tableName,
|
|
337
|
-
schema,
|
|
338
|
-
type: 'TABLE',
|
|
339
|
-
};
|
|
340
|
-
}
|
|
341
|
-
}
|
|
342
|
-
|
|
343
|
-
if (target.type === 'SEQUENCE') {
|
|
344
|
-
const [schemaName, sequenceName] = z
|
|
345
|
-
.tuple([z.string(), z.string()])
|
|
346
|
-
.parse(target.target.split('.'));
|
|
347
|
-
|
|
348
|
-
const sequenceSchemaObject = schemaObjects.find((schemaObject) => {
|
|
349
|
-
if (schemaObject.header.Type !== 'SEQUENCE') {
|
|
350
|
-
return false;
|
|
351
|
-
}
|
|
352
|
-
|
|
353
|
-
return (
|
|
354
|
-
schemaObject.header.Name === sequenceName &&
|
|
355
|
-
schemaObject.header.Schema === schemaName
|
|
356
|
-
);
|
|
357
|
-
});
|
|
358
|
-
|
|
359
|
-
if (!sequenceSchemaObject) {
|
|
360
|
-
throw new Error('Sequence not found');
|
|
361
|
-
}
|
|
362
|
-
|
|
363
|
-
const alterTableTarget = extractAlterTableTarget(
|
|
364
|
-
sequenceSchemaObject.sql,
|
|
365
|
-
);
|
|
366
|
-
|
|
367
|
-
return {
|
|
368
|
-
name: alterTableTarget.name,
|
|
369
|
-
schema: alterTableTarget.schema,
|
|
370
|
-
type: 'TABLE',
|
|
371
|
-
};
|
|
372
|
-
}
|
|
373
|
-
|
|
374
|
-
if (target.type === 'TYPE') {
|
|
375
|
-
const [, typeName] = z
|
|
376
|
-
.tuple([z.string(), z.string()])
|
|
377
|
-
.parse(subject.header.Name.split(' '));
|
|
378
|
-
|
|
379
|
-
return {
|
|
380
|
-
name: typeName,
|
|
381
|
-
schema: subject.header.Schema ?? 'public',
|
|
382
|
-
type: 'TYPE',
|
|
383
|
-
};
|
|
384
|
-
}
|
|
460
|
+
return scopeComment(schemaObjects, subject);
|
|
385
461
|
}
|
|
386
462
|
|
|
387
463
|
try {
|