@powersync/service-module-postgres 0.19.3 → 0.19.4

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.
Files changed (72) hide show
  1. package/dist/api/PostgresRouteAPIAdapter.d.ts +1 -1
  2. package/dist/api/PostgresRouteAPIAdapter.js +63 -72
  3. package/dist/api/PostgresRouteAPIAdapter.js.map +1 -1
  4. package/dist/module/PostgresModule.js.map +1 -1
  5. package/dist/replication/MissingReplicationSlotError.d.ts +41 -0
  6. package/dist/replication/MissingReplicationSlotError.js +33 -0
  7. package/dist/replication/MissingReplicationSlotError.js.map +1 -0
  8. package/dist/replication/PostgresErrorRateLimiter.js +1 -1
  9. package/dist/replication/PostgresErrorRateLimiter.js.map +1 -1
  10. package/dist/replication/SnapshotQuery.js +2 -2
  11. package/dist/replication/SnapshotQuery.js.map +1 -1
  12. package/dist/replication/WalStream.d.ts +35 -3
  13. package/dist/replication/WalStream.js +135 -9
  14. package/dist/replication/WalStream.js.map +1 -1
  15. package/dist/replication/WalStreamReplicationJob.js +6 -3
  16. package/dist/replication/WalStreamReplicationJob.js.map +1 -1
  17. package/dist/replication/replication-index.d.ts +3 -1
  18. package/dist/replication/replication-index.js +3 -1
  19. package/dist/replication/replication-index.js.map +1 -1
  20. package/dist/replication/replication-utils.d.ts +3 -11
  21. package/dist/replication/replication-utils.js +101 -164
  22. package/dist/replication/replication-utils.js.map +1 -1
  23. package/dist/replication/wal-budget-utils.d.ts +23 -0
  24. package/dist/replication/wal-budget-utils.js +57 -0
  25. package/dist/replication/wal-budget-utils.js.map +1 -0
  26. package/dist/types/registry.js +1 -1
  27. package/dist/types/registry.js.map +1 -1
  28. package/package.json +15 -11
  29. package/sql/check-source-configuration.plpgsql +13 -0
  30. package/sql/debug-tables-info-batched.plpgsql +230 -0
  31. package/CHANGELOG.md +0 -858
  32. package/src/api/PostgresRouteAPIAdapter.ts +0 -356
  33. package/src/index.ts +0 -1
  34. package/src/module/PostgresModule.ts +0 -122
  35. package/src/replication/ConnectionManagerFactory.ts +0 -33
  36. package/src/replication/PgManager.ts +0 -122
  37. package/src/replication/PgRelation.ts +0 -41
  38. package/src/replication/PostgresErrorRateLimiter.ts +0 -48
  39. package/src/replication/SnapshotQuery.ts +0 -213
  40. package/src/replication/WalStream.ts +0 -1137
  41. package/src/replication/WalStreamReplicationJob.ts +0 -138
  42. package/src/replication/WalStreamReplicator.ts +0 -53
  43. package/src/replication/replication-index.ts +0 -5
  44. package/src/replication/replication-utils.ts +0 -398
  45. package/src/types/registry.ts +0 -275
  46. package/src/types/resolver.ts +0 -227
  47. package/src/types/types.ts +0 -44
  48. package/src/utils/application-name.ts +0 -8
  49. package/src/utils/migration_lib.ts +0 -80
  50. package/src/utils/populate_test_data.ts +0 -37
  51. package/src/utils/populate_test_data_worker.ts +0 -53
  52. package/src/utils/postgres_version.ts +0 -8
  53. package/test/src/checkpoints.test.ts +0 -86
  54. package/test/src/chunked_snapshots.test.ts +0 -161
  55. package/test/src/env.ts +0 -11
  56. package/test/src/large_batch.test.ts +0 -241
  57. package/test/src/pg_test.test.ts +0 -729
  58. package/test/src/resuming_snapshots.test.ts +0 -160
  59. package/test/src/route_api_adapter.test.ts +0 -62
  60. package/test/src/schema_changes.test.ts +0 -655
  61. package/test/src/setup.ts +0 -12
  62. package/test/src/slow_tests.test.ts +0 -519
  63. package/test/src/storage_combination.test.ts +0 -35
  64. package/test/src/types/registry.test.ts +0 -149
  65. package/test/src/util.ts +0 -151
  66. package/test/src/validation.test.ts +0 -63
  67. package/test/src/wal_stream.test.ts +0 -607
  68. package/test/src/wal_stream_utils.ts +0 -284
  69. package/test/tsconfig.json +0 -27
  70. package/tsconfig.json +0 -34
  71. package/tsconfig.tsbuildinfo +0 -1
  72. package/vitest.config.ts +0 -3
@@ -1,4 +1,5 @@
1
1
  import * as pgwire from '@powersync/service-jpgwire';
2
+ import { readFile } from 'node:fs/promises';
2
3
  import * as lib_postgres from '@powersync/lib-service-postgres';
3
4
  import { ErrorCode, logger, ServiceAssertionError, ServiceError } from '@powersync/lib-services-framework';
4
5
  import { storage } from '@powersync/service-core';
@@ -76,19 +77,7 @@ WHERE oid = $1::oid LIMIT 1`,
76
77
  }
77
78
  export async function checkSourceConfiguration(db, publicationName) {
78
79
  // Check basic config
79
- await lib_postgres.retriedQuery(db, `DO $$
80
- BEGIN
81
- if current_setting('wal_level') is distinct from 'logical' then
82
- raise exception 'wal_level must be set to ''logical'', your database has it set to ''%''. Please edit your config file and restart PostgreSQL.', current_setting('wal_level');
83
- end if;
84
- if (current_setting('max_replication_slots')::int >= 1) is not true then
85
- raise exception 'Your max_replication_slots setting is too low, it must be greater than 1. Please edit your config file and restart PostgreSQL.';
86
- end if;
87
- if (current_setting('max_wal_senders')::int >= 1) is not true then
88
- raise exception 'Your max_wal_senders setting is too low, it must be greater than 1. Please edit your config file and restart PostgreSQL.';
89
- end if;
90
- end;
91
- $$ LANGUAGE plpgsql;`);
80
+ await lib_postgres.retriedQuery(db, await getCheckSourceConfigurationSql());
92
81
  // Check that publication exists
93
82
  const rs = await lib_postgres.retriedQuery(db, {
94
83
  statement: `SELECT * FROM pg_publication WHERE pubname = $1`,
@@ -147,170 +136,118 @@ WHERE c.oid = $1::oid;
147
136
  }
148
137
  return { canRead: true };
149
138
  }
139
+ let getDebugTablesInfoBatchedSqlPromise;
140
+ let checkSourceConfigurationSqlPromise;
141
+ function getDebugTablesInfoBatchedSql() {
142
+ return (getDebugTablesInfoBatchedSqlPromise ??= readFile(new URL('../../sql/debug-tables-info-batched.plpgsql', import.meta.url), 'utf8'));
143
+ }
144
+ function getCheckSourceConfigurationSql() {
145
+ return (checkSourceConfigurationSqlPromise ??= readFile(new URL('../../sql/check-source-configuration.plpgsql', import.meta.url), 'utf8'));
146
+ }
147
+ /**
148
+ * Note: This must use a dedicated connection, not a connection pool.
149
+ */
150
150
  export async function getDebugTablesInfo(options) {
151
151
  const { db, publicationName, connectionTag, tablePatterns, syncRules } = options;
152
- let result = [];
153
- for (let tablePattern of tablePatterns) {
154
- const schema = tablePattern.schema;
155
- let patternResult = {
156
- schema: schema,
157
- pattern: tablePattern.tablePattern,
158
- wildcard: tablePattern.isWildcard
159
- };
160
- result.push(patternResult);
161
- if (tablePattern.isWildcard) {
162
- patternResult.tables = [];
163
- const prefix = tablePattern.tablePrefix;
164
- const results = await lib_postgres.retriedQuery(db, {
165
- statement: `SELECT c.oid AS relid, c.relname AS table_name
166
- FROM pg_class c
167
- JOIN pg_namespace n ON n.oid = c.relnamespace
168
- WHERE n.nspname = $1
169
- AND c.relkind = 'r'
170
- AND c.relname LIKE $2`,
171
- params: [
172
- { type: 'varchar', value: schema },
173
- { type: 'varchar', value: tablePattern.tablePattern }
174
- ]
175
- });
176
- for (let row of pgwire.pgwireRows(results)) {
177
- const name = row.table_name;
178
- const relationId = row.relid;
179
- if (!name.startsWith(prefix)) {
180
- continue;
181
- }
182
- const details = await getDebugTableInfo({
183
- db,
184
- name,
185
- publicationName,
186
- connectionTag,
187
- tablePattern,
188
- relationId,
189
- syncRules: syncRules
190
- });
191
- patternResult.tables.push(details);
192
- }
193
- }
194
- else {
195
- const results = await lib_postgres.retriedQuery(db, {
196
- statement: `SELECT c.oid AS relid, c.relname AS table_name
197
- FROM pg_class c
198
- JOIN pg_namespace n ON n.oid = c.relnamespace
199
- WHERE n.nspname = $1
200
- AND c.relkind = 'r'
201
- AND c.relname = $2`,
202
- params: [
203
- { type: 'varchar', value: schema },
204
- { type: 'varchar', value: tablePattern.tablePattern }
205
- ]
206
- });
207
- if (results.rows.length == 0) {
208
- // Table not found
209
- patternResult.table = await getDebugTableInfo({
210
- db,
211
- name: tablePattern.name,
212
- publicationName,
213
- connectionTag,
214
- tablePattern,
215
- relationId: null,
216
- syncRules: syncRules
217
- });
218
- }
219
- else {
220
- const row = pgwire.pgwireRows(results)[0];
221
- const name = row.table_name;
222
- const relationId = row.relid;
223
- patternResult.table = await getDebugTableInfo({
224
- db,
225
- name,
226
- publicationName,
227
- connectionTag,
228
- tablePattern,
229
- relationId,
230
- syncRules: syncRules
231
- });
232
- }
233
- }
152
+ const patternPayload = JSON.stringify(tablePatterns.map((tablePattern, pattern_ord) => ({
153
+ pattern_ord,
154
+ schema_name: tablePattern.schema,
155
+ table_pattern: tablePattern.tablePattern,
156
+ is_wildcard: tablePattern.isWildcard,
157
+ table_prefix: tablePattern.isWildcard ? tablePattern.tablePrefix : '',
158
+ input_name: tablePattern.isWildcard ? tablePattern.tablePattern : tablePattern.name
159
+ })));
160
+ let rows;
161
+ await db.query('BEGIN');
162
+ try {
163
+ // Anonymous DO blocks cannot take bind parameters directly, so pass the
164
+ // pattern payload through transaction-local settings on the pinned connection.
165
+ const fetched = await db.query({
166
+ statement: `SELECT set_config('powersync.debug.table_patterns', $1, true)`,
167
+ params: [{ type: 'varchar', value: patternPayload }]
168
+ }, {
169
+ statement: `SELECT set_config('powersync.debug.publication_name', $1, true)`,
170
+ params: [{ type: 'varchar', value: publicationName }]
171
+ }, {
172
+ statement: await getDebugTablesInfoBatchedSql()
173
+ }, {
174
+ statement: `FETCH ALL FROM powersync_debug_tables_cursor`
175
+ });
176
+ rows = pgwire.pgwireRows(fetched);
177
+ await db.query('COMMIT');
234
178
  }
235
- return result;
236
- }
237
- export async function getDebugTableInfo(options) {
238
- const { db, name, publicationName, connectionTag, tablePattern, relationId, syncRules } = options;
239
- const schema = tablePattern.schema;
240
- let id_columns_result = undefined;
241
- let id_columns_error = null;
242
- if (relationId != null) {
179
+ catch (e) {
243
180
  try {
244
- id_columns_result = await getReplicationIdentityColumns(db, relationId);
181
+ await db.query('ROLLBACK');
245
182
  }
246
- catch (e) {
247
- id_columns_error = { level: 'fatal', message: e.message };
183
+ catch {
184
+ // Ignore rollback errors after a failed transaction.
248
185
  }
186
+ throw e;
249
187
  }
250
- const id_columns = id_columns_result?.replicationColumns ?? [];
251
- const sourceTable = new storage.SourceTable({
252
- id: '', // not used
253
- connectionTag: connectionTag,
254
- objectId: relationId ?? 0,
255
- schema: schema,
256
- name: name,
257
- replicaIdColumns: id_columns,
258
- snapshotComplete: true
259
- });
260
- const syncData = syncRules.tableSyncsData(sourceTable);
261
- const syncParameters = syncRules.tableSyncsParameters(sourceTable);
262
- if (relationId == null) {
263
- return {
264
- schema: schema,
265
- name: name,
188
+ const result = tablePatterns.map((tablePattern) => ({
189
+ schema: tablePattern.schema,
190
+ pattern: tablePattern.tablePattern,
191
+ wildcard: tablePattern.isWildcard,
192
+ ...(tablePattern.isWildcard ? { tables: [] } : {})
193
+ }));
194
+ for (const row of rows) {
195
+ const tablePattern = tablePatterns[row.pattern_ord];
196
+ const idColumns = JSON.parse(row.replication_id_json);
197
+ const sourceTable = new storage.SourceTable({
198
+ id: '',
199
+ connectionTag,
200
+ objectId: row.relation_id ?? 0,
201
+ schema: tablePattern.schema,
202
+ name: row.name,
203
+ replicaIdColumns: idColumns.map((name) => ({ name })),
204
+ snapshotComplete: true
205
+ });
206
+ const syncData = syncRules.tableSyncsData(sourceTable);
207
+ const syncParameters = syncRules.tableSyncsParameters(sourceTable);
208
+ let errors;
209
+ if (row.relation_id == null) {
210
+ errors = [{ level: 'warning', message: `Table ${sourceTable.qualifiedName} not found.` }];
211
+ }
212
+ else {
213
+ const idColumnsError = idColumns.length == 0 && row.replication_identity != 'nothing'
214
+ ? {
215
+ level: 'fatal',
216
+ message: `No replication id found for ${sourceTable.qualifiedName}. Replica identity: ${row.replication_identity}.${row.replication_identity == 'default' ? ' Configure a primary key on the table.' : ''}`
217
+ }
218
+ : null;
219
+ const selectError = row.select_error == null ? null : { level: 'fatal', message: row.select_error };
220
+ const replicateError = row.in_publication === false
221
+ ? {
222
+ level: 'fatal',
223
+ message: `Table ${sourceTable.qualifiedName} is not part of publication '${publicationName}'. Run: \`ALTER PUBLICATION ${publicationName} ADD TABLE ${sourceTable.qualifiedName}\`.`
224
+ }
225
+ : null;
226
+ const rlsError = row.rls_enabled && !row.is_superuser && !row.bypasses_rls && row.username != null
227
+ ? {
228
+ level: 'warning',
229
+ message: `[${ErrorCode.PSYNC_S1145}] Row Level Security is enabled on table "${row.name}". To make sure that ${row.username} can read the table, run: 'ALTER ROLE ${row.username} BYPASSRLS'.`
230
+ }
231
+ : null;
232
+ errors = [idColumnsError, selectError, replicateError, rlsError].filter((error) => error != null);
233
+ }
234
+ const tableInfo = {
235
+ schema: tablePattern.schema,
236
+ name: row.name,
266
237
  pattern: tablePattern.isWildcard ? tablePattern.tablePattern : undefined,
267
- replication_id: [],
238
+ replication_id: idColumns,
268
239
  data_queries: syncData,
269
240
  parameter_queries: syncParameters,
270
- // Also
271
- errors: [{ level: 'warning', message: `Table ${sourceTable.qualifiedName} not found.` }]
241
+ errors
272
242
  };
273
- }
274
- if (id_columns.length == 0 && id_columns_error == null) {
275
- let message = `No replication id found for ${sourceTable.qualifiedName}. Replica identity: ${id_columns_result?.replicationIdentity}.`;
276
- if (id_columns_result?.replicationIdentity == 'default') {
277
- message += ' Configure a primary key on the table.';
243
+ if (tablePattern.isWildcard) {
244
+ result[row.pattern_ord].tables.push(tableInfo);
245
+ }
246
+ else {
247
+ result[row.pattern_ord].table = tableInfo;
278
248
  }
279
- id_columns_error = { level: 'fatal', message };
280
- }
281
- let selectError = null;
282
- try {
283
- await lib_postgres.retriedQuery(db, `SELECT * FROM ${sourceTable.qualifiedName} LIMIT 1`);
284
- }
285
- catch (e) {
286
- selectError = { level: 'fatal', message: e.message };
287
- }
288
- let replicateError = null;
289
- const publications = await lib_postgres.retriedQuery(db, {
290
- statement: `SELECT tablename FROM pg_publication_tables WHERE pubname = $1 AND schemaname = $2 AND tablename = $3`,
291
- params: [
292
- { type: 'varchar', value: publicationName },
293
- { type: 'varchar', value: tablePattern.schema },
294
- { type: 'varchar', value: name }
295
- ]
296
- });
297
- if (publications.rows.length == 0) {
298
- replicateError = {
299
- level: 'fatal',
300
- message: `Table ${sourceTable.qualifiedName} is not part of publication '${publicationName}'. Run: \`ALTER PUBLICATION ${publicationName} ADD TABLE ${sourceTable.qualifiedName}\`.`
301
- };
302
249
  }
303
- const rlsCheck = await checkTableRls(db, relationId);
304
- const rlsError = rlsCheck.canRead ? null : { message: rlsCheck.message, level: 'warning' };
305
- return {
306
- schema: schema,
307
- name: name,
308
- pattern: tablePattern.isWildcard ? tablePattern.tablePattern : undefined,
309
- replication_id: id_columns.map((c) => c.name),
310
- data_queries: syncData,
311
- parameter_queries: syncParameters,
312
- errors: [id_columns_error, selectError, replicateError, rlsError].filter((error) => error != null)
313
- };
250
+ return result;
314
251
  }
315
252
  export async function cleanUpReplicationSlot(slotName, db) {
316
253
  logger.info(`Cleaning up Postgres replication slot: ${slotName}...`);
@@ -1 +1 @@
1
- {"version":3,"file":"replication-utils.js","sourceRoot":"","sources":["../../src/replication/replication-utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"replication-utils.js","sourceRoot":"","sources":["../../src/replication/replication-utils.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,23 @@
1
+ export declare function formatBytes(bytes: number): string;
2
+ export declare function formatDuration(hours: number): string;
3
+ export interface WalBudgetSample {
4
+ safeWalSize: number;
5
+ timestamp: number;
6
+ }
7
+ export interface WalBudgetReport {
8
+ budgetRemainingPct: number;
9
+ safeWalSize: number;
10
+ maxSize: number;
11
+ walStatus: string;
12
+ ratePerHour: number | null;
13
+ etaHours: number | null;
14
+ isWarning: boolean;
15
+ }
16
+ export declare function computeWalBudgetReport(opts: {
17
+ safeWalSize: number;
18
+ maxSize: number;
19
+ walStatus: string;
20
+ prevSample: WalBudgetSample | null;
21
+ now: number;
22
+ }): WalBudgetReport;
23
+ export declare function formatWalBudgetLine(report: WalBudgetReport): string;
@@ -0,0 +1,57 @@
1
+ export function formatBytes(bytes) {
2
+ if (bytes >= 1024 * 1024 * 1024) {
3
+ return `${(bytes / (1024 * 1024 * 1024)).toFixed(1)}GB`;
4
+ }
5
+ else if (bytes >= 1024 * 1024) {
6
+ return `${(bytes / (1024 * 1024)).toFixed(1)}MB`;
7
+ }
8
+ else if (bytes >= 1024) {
9
+ return `${(bytes / 1024).toFixed(1)}KB`;
10
+ }
11
+ return `${bytes}B`;
12
+ }
13
+ export function formatDuration(hours) {
14
+ if (hours >= 24) {
15
+ return `${(hours / 24).toFixed(1)} days`;
16
+ }
17
+ else if (hours >= 1) {
18
+ return `${hours.toFixed(1)} hours`;
19
+ }
20
+ return `${Math.round(hours * 60)} minutes`;
21
+ }
22
+ export function computeWalBudgetReport(opts) {
23
+ const budgetRemainingPct = Math.round((opts.safeWalSize / opts.maxSize) * 100);
24
+ let ratePerHour = null;
25
+ let etaHours = null;
26
+ if (opts.prevSample != null) {
27
+ const elapsedMs = opts.now - opts.prevSample.timestamp;
28
+ const consumed = opts.prevSample.safeWalSize - opts.safeWalSize;
29
+ if (elapsedMs > 0 && consumed > 0) {
30
+ ratePerHour = (consumed / elapsedMs) * 3_600_000;
31
+ const eta = opts.safeWalSize / ratePerHour;
32
+ etaHours = eta < 48 ? eta : null;
33
+ }
34
+ }
35
+ return {
36
+ budgetRemainingPct,
37
+ safeWalSize: opts.safeWalSize,
38
+ maxSize: opts.maxSize,
39
+ walStatus: opts.walStatus,
40
+ ratePerHour,
41
+ etaHours,
42
+ isWarning: budgetRemainingPct <= 50
43
+ };
44
+ }
45
+ export function formatWalBudgetLine(report) {
46
+ let line = `WAL budget: ${formatBytes(report.safeWalSize)} remaining of ` +
47
+ `${formatBytes(report.maxSize)} limit (${report.budgetRemainingPct}% remaining).`;
48
+ if (report.ratePerHour != null) {
49
+ line += ` WAL consumption: ~${formatBytes(report.ratePerHour)}/hr.`;
50
+ if (report.etaHours != null) {
51
+ line += ` ETA to exhaustion: ~${formatDuration(report.etaHours)}.`;
52
+ }
53
+ }
54
+ line += ` Slot status: ${report.walStatus}.`;
55
+ return line;
56
+ }
57
+ //# sourceMappingURL=wal-budget-utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wal-budget-utils.js","sourceRoot":"","sources":["../../src/replication/wal-budget-utils.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
- import { applyValueContext, CompatibilityOption, CustomSqliteValue, toSyncRulesValue } from '@powersync/service-sync-rules';
2
1
  import * as pgwire from '@powersync/service-jpgwire';
2
+ import { applyValueContext, CompatibilityOption, CustomSqliteValue, toSyncRulesValue } from '@powersync/service-sync-rules';
3
3
  const UNKNOWN_TYPE = {
4
4
  type: 'unknown',
5
5
  sqliteType: () => 'text'
@@ -1 +1 @@
1
- {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/types/registry.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,iBAAiB,EAEjB,mBAAmB,EACnB,iBAAiB,EAIjB,gBAAgB,EACjB,MAAM,+BAA+B,CAAC;AACvC,OAAO,KAAK,MAAM,MAAM,4BAA4B,CAAC;AA2DrD,MAAM,YAAY,GAAgB;IAChC,IAAI,EAAE,SAAS;IACf,UAAU,EAAE,GAAG,EAAE,CAAC,MAAM;CACzB,CAAC;AAEF,MAAM,eAAgB,SAAQ,iBAAiB;IAElC;IACA;IACA;IAHX,YACW,GAAW,EACX,KAAyB,EACzB,QAAgB;QAEzB,KAAK,EAAE,CAAC;QAJC,QAAG,GAAH,GAAG,CAAQ;QACX,UAAK,GAAL,KAAK,CAAoB;QACzB,aAAQ,GAAR,QAAQ,CAAQ;IAG3B,CAAC;IAEO,MAAM;QACZ,OAAO,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACzC,CAAC;IAEO,0BAA0B,CAAC,OAA6B;QAC9D,IAAI,OAAO,CAAC,SAAS,CAAC,mBAAmB,CAAC,WAAW,CAAC,EAAE,CAAC;YACvD,IAAI,CAAC;gBACH,OAAO,IAAI,CAAC,KAAK,CAAC,qBAAqB,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;YACnE,CAAC;YAAC,OAAO,EAAE,EAAE,CAAC;gBACZ,OAAO,IAAI,CAAC,QAAQ,CAAC;YACvB,CAAC;QACH,CAAC;aAAM,CAAC;YACN,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;QACvD,CAAC;IACH,CAAC;IAED,aAAa,CAAC,OAA6B;QACzC,MAAM,KAAK,GAAG,gBAAgB,CAAC,IAAI,CAAC,0BAA0B,CAAC,OAAO,CAAC,CAAC,CAAC;QACzE,OAAO,iBAAiB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IAC3C,CAAC;IAED,IAAI,UAAU;QACZ,OAAO,IAAI,CAAC,MAAM,EAAE,CAAC,UAAU,EAAE,CAAC;IACpC,CAAC;CACF;AAED;;;;;GAKG;AACH,MAAM,OAAO,kBAAkB;IACZ,KAAK,CAAyB;IAE/C;QACE,IAAI,CAAC,KAAK,GAAG,IAAI,GAAG,EAAE,CAAC;QAEvB,KAAK,MAAM,OAAO,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC;YACtD,IAAI,OAAO,OAAO,IAAI,QAAQ,EAAE,CAAC;gBAC/B,0GAA0G;gBAC1G,IAAI,UAA2B,CAAC;gBAChC,QAAQ,OAAO,EAAE,CAAC;oBAChB,KAAK,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC;oBAC3B,KAAK,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC;oBAC3B,KAAK,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC;oBAC9B,KAAK,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC;oBAC3B,KAAK,MAAM,CAAC,SAAS,CAAC,SAAS,CAAC;oBAChC,KAAK,MAAM,CAAC,SAAS,CAAC,WAAW,CAAC;oBAClC,KAAK,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC;oBAC3B,KAAK,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC;oBAC3B,KAAK,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC;oBAC5B,KAAK,MAAM,CAAC,SAAS,CAAC,MAAM;wBAC1B,UAAU,GAAG,MAAM,CAAC;wBACpB,MAAM;oBACR,KAAK,MAAM,CAAC,SAAS,CAAC,KAAK;wBACzB,UAAU,GAAG,MAAM,CAAC;wBACpB,MAAM;oBACR,KAAK,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC;oBAC3B,KAAK,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC;oBAC3B,KAAK,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC;oBAC3B,KAAK,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC;oBAC1B,KAAK,MAAM,CAAC,SAAS,CAAC,IAAI;wBACxB,UAAU,GAAG,SAAS,CAAC;wBACvB,MAAM;oBACR,KAAK,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC;oBAC7B,KAAK,MAAM,CAAC,SAAS,CAAC,MAAM;wBAC1B,UAAU,GAAG,MAAM,CAAC;wBACpB,MAAM;oBACR;wBACE,UAAU,GAAG,MAAM,CAAC;gBACxB,CAAC;gBAED,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,EAAE;oBACtB,IAAI,EAAE,SAAS;oBACf,GAAG,EAAE,OAAO;oBACZ,UAAU,EAAE,GAAG,EAAE,CAAC,UAAU;iBAC7B,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAED,KAAK,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,iBAAiB,CAAC,OAAO,EAAE,EAAE,CAAC;YACpE,8GAA8G;YAC9G,2DAA2D;YAC3D,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC;gBACnB,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,EAAE;oBACtB,IAAI,EAAE,OAAO;oBACb,OAAO;oBACP,UAAU,EAAE,GAAG,EAAE,CAAC,MAAM,EAAE,mCAAmC;oBAC7D,iBAAiB,EAAE,IAAI,CAAC,MAAM;iBAC/B,CAAC,CAAC;YACL,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,EAAE;oBACtB,IAAI,EAAE,SAAS;oBACf,GAAG,EAAE,OAAO;oBACZ,UAAU,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,mCAAmC;iBAC7D,CAAC,CAAC;YACL,CAAC;QACH,CAAC;IACH,CAAC;IAED,KAAK,CAAC,GAAW;QACf,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAC7B,CAAC;IAED,GAAG,CAAC,GAAW,EAAE,KAAgB;QAC/B,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;IAC7B,CAAC;IAED,aAAa,CAAC,GAAW,EAAE,KAAa;QACtC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE;YACZ,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE,KAAK;YACd,UAAU,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,UAAU,EAAE;SACtD,CAAC,CAAC;IACL,CAAC;IAED,qBAAqB,CAAC,GAAW,EAAE,GAAW;QAC5C,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;QACtC,QAAQ,QAAQ,CAAC,IAAI,EAAE,CAAC;YACtB,KAAK,SAAS,CAAC;YACf,KAAK,SAAS;gBACZ,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;YACxC,KAAK,QAAQ;gBACX,OAAO,IAAI,CAAC,qBAAqB,CAAC,GAAG,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;YAC3D,KAAK,WAAW,CAAC,CAAC,CAAC;gBACjB,MAAM,MAAM,GAAoB,EAAE,CAAC;gBAEnC,IAAI,MAAM,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,cAAc,CAAC,CAAC,GAAG,EAAE,EAAE;oBACrD,MAAM,UAAU,GAAG,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;oBACnD,IAAI,UAAU,EAAE,CAAC;wBACf,MAAM,KAAK,GAAG,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,qBAAqB,CAAC,GAAG,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC;wBACtF,MAAM,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC;oBACxC,CAAC;gBACH,CAAC,CAAC,CAAC;gBACH,OAAO,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;YACpC,CAAC;YACD,KAAK,OAAO,CAAC,CAAC,CAAC;gBACb,4GAA4G;gBAC5G,4GAA4G;gBAC5G,sBAAsB;gBACtB,IAAI,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC;gBAC/B,OAAO,IAAI,EAAE,CAAC;oBACZ,MAAM,aAAa,GAAG,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;oBAC/C,IAAI,aAAa,CAAC,IAAI,IAAI,QAAQ,EAAE,CAAC;wBACnC,OAAO,GAAG,aAAa,CAAC,OAAO,CAAC;oBAClC,CAAC;yBAAM,IAAI,aAAa,CAAC,IAAI,IAAI,OAAO,EAAE,CAAC;wBACzC,OAAO,GAAG,aAAa,CAAC,OAAO,CAAC;oBAClC,CAAC;yBAAM,CAAC;wBACN,MAAM;oBACR,CAAC;gBACH,CAAC;gBAED,OAAO,IAAI,MAAM,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,UAAU,CAC/C,CAAC,MAAM,EAAE,EAAE,CAAC,IAAI,CAAC,qBAAqB,CAAC,MAAM,EAAE,OAAO,CAAC,EACvD,QAAQ,CAAC,iBAAiB,CAC3B,CAAC;YACJ,CAAC;YACD,KAAK,OAAO;gBACV,OAAO,IAAI,MAAM,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC;YAC5G,KAAK,YAAY;gBACf,OAAO,IAAI,MAAM,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC;QACnH,CAAC;IACH,CAAC;IAED,UAAU,CAAC,IAAY;QACrB,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,YAAY,CAAC;IAC9C,CAAC;IAEO,iCAAiC,CAAC,IAAoB;QAC5D,QAAQ,IAAI,CAAC,IAAI,EAAE,CAAC;YAClB,KAAK,SAAS,CAAC;YACf,KAAK,SAAS;gBACZ,OAAO,IAAI,CAAC;YACd,KAAK,OAAO;gBACV,OAAO,IAAI,CAAC,iBAAiB,IAAI,MAAM,CAAC,eAAe,IAAI,MAAM,CAAC,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACxG;gBACE,OAAO,KAAK,CAAC;QACjB,CAAC;IACH,CAAC;IAED,mBAAmB,CAAC,KAAa,EAAE,GAAW;QAC5C,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;QACtC,kHAAkH;QAClH,gGAAgG;QAChG,IAAI,IAAI,CAAC,iCAAiC,CAAC,QAAQ,CAAC,EAAE,CAAC;YACrD,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QAC1C,CAAC;aAAM,CAAC;YACN,OAAO,IAAI,eAAe,CAAC,GAAG,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;QAC/C,CAAC;IACH,CAAC;CACF"}
1
+ {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/types/registry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,4BAA4B,CAAC;AACrD,OAAO,EACL,iBAAiB,EAEjB,mBAAmB,EACnB,iBAAiB,EAIjB,gBAAgB,EACjB,MAAM,+BAA+B,CAAC;AA2DvC,MAAM,YAAY,GAAgB;IAChC,IAAI,EAAE,SAAS;IACf,UAAU,EAAE,GAAG,EAAE,CAAC,MAAM;CACzB,CAAC;AAEF,MAAM,eAAgB,SAAQ,iBAAiB;IAElC;IACA;IACA;IAHX,YACW,GAAW,EACX,KAAyB,EACzB,QAAgB;QAEzB,KAAK,EAAE,CAAC;QAJC,QAAG,GAAH,GAAG,CAAQ;QACX,UAAK,GAAL,KAAK,CAAoB;QACzB,aAAQ,GAAR,QAAQ,CAAQ;IAG3B,CAAC;IAEO,MAAM;QACZ,OAAO,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACzC,CAAC;IAEO,0BAA0B,CAAC,OAA6B;QAC9D,IAAI,OAAO,CAAC,SAAS,CAAC,mBAAmB,CAAC,WAAW,CAAC,EAAE,CAAC;YACvD,IAAI,CAAC;gBACH,OAAO,IAAI,CAAC,KAAK,CAAC,qBAAqB,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;YACnE,CAAC;YAAC,OAAO,EAAE,EAAE,CAAC;gBACZ,OAAO,IAAI,CAAC,QAAQ,CAAC;YACvB,CAAC;QACH,CAAC;aAAM,CAAC;YACN,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;QACvD,CAAC;IACH,CAAC;IAED,aAAa,CAAC,OAA6B;QACzC,MAAM,KAAK,GAAG,gBAAgB,CAAC,IAAI,CAAC,0BAA0B,CAAC,OAAO,CAAC,CAAC,CAAC;QACzE,OAAO,iBAAiB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IAC3C,CAAC;IAED,IAAI,UAAU;QACZ,OAAO,IAAI,CAAC,MAAM,EAAE,CAAC,UAAU,EAAE,CAAC;IACpC,CAAC;CACF;AAED;;;;;GAKG;AACH,MAAM,OAAO,kBAAkB;IACZ,KAAK,CAAyB;IAE/C;QACE,IAAI,CAAC,KAAK,GAAG,IAAI,GAAG,EAAE,CAAC;QAEvB,KAAK,MAAM,OAAO,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC;YACtD,IAAI,OAAO,OAAO,IAAI,QAAQ,EAAE,CAAC;gBAC/B,0GAA0G;gBAC1G,IAAI,UAA2B,CAAC;gBAChC,QAAQ,OAAO,EAAE,CAAC;oBAChB,KAAK,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC;oBAC3B,KAAK,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC;oBAC3B,KAAK,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC;oBAC9B,KAAK,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC;oBAC3B,KAAK,MAAM,CAAC,SAAS,CAAC,SAAS,CAAC;oBAChC,KAAK,MAAM,CAAC,SAAS,CAAC,WAAW,CAAC;oBAClC,KAAK,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC;oBAC3B,KAAK,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC;oBAC3B,KAAK,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC;oBAC5B,KAAK,MAAM,CAAC,SAAS,CAAC,MAAM;wBAC1B,UAAU,GAAG,MAAM,CAAC;wBACpB,MAAM;oBACR,KAAK,MAAM,CAAC,SAAS,CAAC,KAAK;wBACzB,UAAU,GAAG,MAAM,CAAC;wBACpB,MAAM;oBACR,KAAK,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC;oBAC3B,KAAK,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC;oBAC3B,KAAK,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC;oBAC3B,KAAK,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC;oBAC1B,KAAK,MAAM,CAAC,SAAS,CAAC,IAAI;wBACxB,UAAU,GAAG,SAAS,CAAC;wBACvB,MAAM;oBACR,KAAK,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC;oBAC7B,KAAK,MAAM,CAAC,SAAS,CAAC,MAAM;wBAC1B,UAAU,GAAG,MAAM,CAAC;wBACpB,MAAM;oBACR;wBACE,UAAU,GAAG,MAAM,CAAC;gBACxB,CAAC;gBAED,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,EAAE;oBACtB,IAAI,EAAE,SAAS;oBACf,GAAG,EAAE,OAAO;oBACZ,UAAU,EAAE,GAAG,EAAE,CAAC,UAAU;iBAC7B,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAED,KAAK,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,iBAAiB,CAAC,OAAO,EAAE,EAAE,CAAC;YACpE,8GAA8G;YAC9G,2DAA2D;YAC3D,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC;gBACnB,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,EAAE;oBACtB,IAAI,EAAE,OAAO;oBACb,OAAO;oBACP,UAAU,EAAE,GAAG,EAAE,CAAC,MAAM,EAAE,mCAAmC;oBAC7D,iBAAiB,EAAE,IAAI,CAAC,MAAM;iBAC/B,CAAC,CAAC;YACL,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,EAAE;oBACtB,IAAI,EAAE,SAAS;oBACf,GAAG,EAAE,OAAO;oBACZ,UAAU,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,mCAAmC;iBAC7D,CAAC,CAAC;YACL,CAAC;QACH,CAAC;IACH,CAAC;IAED,KAAK,CAAC,GAAW;QACf,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAC7B,CAAC;IAED,GAAG,CAAC,GAAW,EAAE,KAAgB;QAC/B,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;IAC7B,CAAC;IAED,aAAa,CAAC,GAAW,EAAE,KAAa;QACtC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE;YACZ,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE,KAAK;YACd,UAAU,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,UAAU,EAAE;SACtD,CAAC,CAAC;IACL,CAAC;IAED,qBAAqB,CAAC,GAAW,EAAE,GAAW;QAC5C,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;QACtC,QAAQ,QAAQ,CAAC,IAAI,EAAE,CAAC;YACtB,KAAK,SAAS,CAAC;YACf,KAAK,SAAS;gBACZ,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;YACxC,KAAK,QAAQ;gBACX,OAAO,IAAI,CAAC,qBAAqB,CAAC,GAAG,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;YAC3D,KAAK,WAAW,CAAC,CAAC,CAAC;gBACjB,MAAM,MAAM,GAAoB,EAAE,CAAC;gBAEnC,IAAI,MAAM,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,cAAc,CAAC,CAAC,GAAG,EAAE,EAAE;oBACrD,MAAM,UAAU,GAAG,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;oBACnD,IAAI,UAAU,EAAE,CAAC;wBACf,MAAM,KAAK,GAAG,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,qBAAqB,CAAC,GAAG,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC;wBACtF,MAAM,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC;oBACxC,CAAC;gBACH,CAAC,CAAC,CAAC;gBACH,OAAO,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;YACpC,CAAC;YACD,KAAK,OAAO,CAAC,CAAC,CAAC;gBACb,4GAA4G;gBAC5G,4GAA4G;gBAC5G,sBAAsB;gBACtB,IAAI,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC;gBAC/B,OAAO,IAAI,EAAE,CAAC;oBACZ,MAAM,aAAa,GAAG,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;oBAC/C,IAAI,aAAa,CAAC,IAAI,IAAI,QAAQ,EAAE,CAAC;wBACnC,OAAO,GAAG,aAAa,CAAC,OAAO,CAAC;oBAClC,CAAC;yBAAM,IAAI,aAAa,CAAC,IAAI,IAAI,OAAO,EAAE,CAAC;wBACzC,OAAO,GAAG,aAAa,CAAC,OAAO,CAAC;oBAClC,CAAC;yBAAM,CAAC;wBACN,MAAM;oBACR,CAAC;gBACH,CAAC;gBAED,OAAO,IAAI,MAAM,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,UAAU,CAC/C,CAAC,MAAM,EAAE,EAAE,CAAC,IAAI,CAAC,qBAAqB,CAAC,MAAM,EAAE,OAAO,CAAC,EACvD,QAAQ,CAAC,iBAAiB,CAC3B,CAAC;YACJ,CAAC;YACD,KAAK,OAAO;gBACV,OAAO,IAAI,MAAM,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC;YAC5G,KAAK,YAAY;gBACf,OAAO,IAAI,MAAM,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC;QACnH,CAAC;IACH,CAAC;IAED,UAAU,CAAC,IAAY;QACrB,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,YAAY,CAAC;IAC9C,CAAC;IAEO,iCAAiC,CAAC,IAAoB;QAC5D,QAAQ,IAAI,CAAC,IAAI,EAAE,CAAC;YAClB,KAAK,SAAS,CAAC;YACf,KAAK,SAAS;gBACZ,OAAO,IAAI,CAAC;YACd,KAAK,OAAO;gBACV,OAAO,IAAI,CAAC,iBAAiB,IAAI,MAAM,CAAC,eAAe,IAAI,MAAM,CAAC,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACxG;gBACE,OAAO,KAAK,CAAC;QACjB,CAAC;IACH,CAAC;IAED,mBAAmB,CAAC,KAAa,EAAE,GAAW;QAC5C,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;QACtC,kHAAkH;QAClH,gGAAgG;QAChG,IAAI,IAAI,CAAC,iCAAiC,CAAC,QAAQ,CAAC,EAAE,CAAC;YACrD,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QAC1C,CAAC;aAAM,CAAC;YACN,OAAO,IAAI,eAAe,CAAC,GAAG,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;QAC/C,CAAC;IACH,CAAC;CACF"}
package/package.json CHANGED
@@ -5,10 +5,14 @@
5
5
  "publishConfig": {
6
6
  "access": "public"
7
7
  },
8
- "version": "0.19.3",
8
+ "version": "0.19.4",
9
9
  "main": "dist/index.js",
10
10
  "license": "FSL-1.1-ALv2",
11
11
  "type": "module",
12
+ "files": [
13
+ "dist/**/*",
14
+ "sql/**/*"
15
+ ],
12
16
  "exports": {
13
17
  ".": {
14
18
  "import": "./dist/index.js",
@@ -25,20 +29,20 @@
25
29
  "semver": "^7.5.4",
26
30
  "ts-codec": "^1.3.0",
27
31
  "uuid": "^11.1.0",
28
- "@powersync/lib-service-postgres": "0.4.25",
29
- "@powersync/lib-services-framework": "0.9.2",
30
- "@powersync/service-core": "1.20.4",
31
- "@powersync/service-jpgwire": "0.21.16",
32
+ "@powersync/lib-service-postgres": "0.4.26",
33
+ "@powersync/lib-services-framework": "0.9.3",
34
+ "@powersync/service-core": "1.20.5",
35
+ "@powersync/service-jpgwire": "0.21.17",
32
36
  "@powersync/service-jsonbig": "0.17.12",
33
- "@powersync/service-sync-rules": "0.34.1",
34
- "@powersync/service-types": "0.15.0"
37
+ "@powersync/service-sync-rules": "0.35.0",
38
+ "@powersync/service-types": "0.15.1"
35
39
  },
36
40
  "devDependencies": {
37
41
  "@types/semver": "^7.5.4",
38
- "@powersync/lib-service-postgres": "0.4.25",
39
- "@powersync/service-core-tests": "0.15.3",
40
- "@powersync/service-module-mongodb-storage": "0.15.3",
41
- "@powersync/service-module-postgres-storage": "0.13.3"
42
+ "@powersync/lib-service-postgres": "0.4.26",
43
+ "@powersync/service-core-tests": "0.15.4",
44
+ "@powersync/service-module-mongodb-storage": "0.15.4",
45
+ "@powersync/service-module-postgres-storage": "0.13.4"
42
46
  },
43
47
  "scripts": {
44
48
  "build": "tsc -b",
@@ -0,0 +1,13 @@
1
+ DO $$
2
+ BEGIN
3
+ if current_setting('wal_level') is distinct from 'logical' then
4
+ raise exception 'wal_level must be set to ''logical'', your database has it set to ''%''. Please edit your config file and restart PostgreSQL.', current_setting('wal_level');
5
+ end if;
6
+ if (current_setting('max_replication_slots')::int >= 1) is not true then
7
+ raise exception 'Your max_replication_slots setting is too low, it must be greater than 1. Please edit your config file and restart PostgreSQL.';
8
+ end if;
9
+ if (current_setting('max_wal_senders')::int >= 1) is not true then
10
+ raise exception 'Your max_wal_senders setting is too low, it must be greater than 1. Please edit your config file and restart PostgreSQL.';
11
+ end if;
12
+ end;
13
+ $$ LANGUAGE plpgsql;