@powersync/service-sync-rules 0.0.0-dev-20261007110800 → 0.0.0-dev-20261015132441
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/SourceTableConfig.d.ts +4 -0
- package/dist/SourceTableConfig.js +22 -7
- package/dist/SourceTableConfig.js.map +1 -1
- package/dist/SqlSyncRules.d.ts +11 -0
- package/dist/SqlSyncRules.js +2 -1
- package/dist/SqlSyncRules.js.map +1 -1
- package/dist/from_yaml.d.ts +2 -0
- package/dist/from_yaml.js +49 -29
- package/dist/from_yaml.js.map +1 -1
- package/dist/json_schema.js +2 -0
- package/dist/json_schema.js.map +1 -1
- package/dist/mongo/MongoBsonValidators.d.ts +18 -1
- package/dist/mongo/MongoBsonValidators.js +18 -1
- package/dist/mongo/MongoBsonValidators.js.map +1 -1
- package/dist/mongo/MongoFilterExpression.d.ts +10 -1
- package/dist/mongo/MongoFilterExpression.js +18 -7
- package/dist/mongo/MongoFilterExpression.js.map +1 -1
- package/package.json +2 -2
- package/schema/sync_config.json +357 -347
- package/schema/sync_rules.json +357 -347
|
@@ -28,6 +28,10 @@ export declare function findDuplicateSourceTableConfigKeys(keys: Iterable<string
|
|
|
28
28
|
* Validate and copy source-table options while preserving declaration order.
|
|
29
29
|
*/
|
|
30
30
|
export declare function normalizeSourceTableConfig(value: unknown): SourceTableConfigMap;
|
|
31
|
+
/**
|
|
32
|
+
* Reject filter connection tags that query hydration cannot honor.
|
|
33
|
+
*/
|
|
34
|
+
export declare function assertMongoFilterConnection(pattern: ImplicitSchemaTablePattern): void;
|
|
31
35
|
/**
|
|
32
36
|
* Conservative equality: declaration order and expression order are significant.
|
|
33
37
|
*/
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { MONGO_FILTER_VALIDATOR } from './mongo/MongoFilterExpression.js';
|
|
2
2
|
import { DEFAULT_TAG, ImplicitSchemaTablePattern, TablePattern } from './TablePattern.js';
|
|
3
3
|
const SOURCE_TABLE_NAME_ERROR = 'Source table patterns must use <table>, <database>.<table>, or <connection>.<database>.<table>. Double-quote names containing dots or quotes.';
|
|
4
4
|
/**
|
|
@@ -15,10 +15,7 @@ export function createSourceTableConfigSchema() {
|
|
|
15
15
|
type: 'object',
|
|
16
16
|
properties: {
|
|
17
17
|
mongodb_filter_expression: {
|
|
18
|
-
anyOf: [
|
|
19
|
-
{ ...MONGO_FILTER_JSON_SCHEMA, $id: 'https://powersync.com/schemas/mongodb-filter-expression' },
|
|
20
|
-
{ const: 'disabled' }
|
|
21
|
-
]
|
|
18
|
+
anyOf: [{ $ref: '#/definitions/mongodb_filter_expression' }, { const: 'disabled' }]
|
|
22
19
|
}
|
|
23
20
|
},
|
|
24
21
|
additionalProperties: false
|
|
@@ -100,7 +97,7 @@ export function normalizeSourceTableConfig(value) {
|
|
|
100
97
|
return Object.fromEntries(Object.entries(value).map(([table, options]) => {
|
|
101
98
|
if (!table)
|
|
102
99
|
throw new Error('A source table name must not be empty.');
|
|
103
|
-
parseSourceTableConfigKey(table);
|
|
100
|
+
const pattern = parseSourceTableConfigKey(table);
|
|
104
101
|
assertObject(options, 'Source table options must be JSON objects.');
|
|
105
102
|
for (const key of Object.keys(options)) {
|
|
106
103
|
if (key !== 'mongodb_filter_expression')
|
|
@@ -108,6 +105,7 @@ export function normalizeSourceTableConfig(value) {
|
|
|
108
105
|
}
|
|
109
106
|
const filter = options.mongodb_filter_expression;
|
|
110
107
|
if (filter !== undefined && filter !== 'disabled') {
|
|
108
|
+
assertMongoFilterConnection(pattern);
|
|
111
109
|
const result = MONGO_FILTER_VALIDATOR.safeParse(filter);
|
|
112
110
|
if (!result.success) {
|
|
113
111
|
throw new Error(`Invalid MongoDB pre-filtering expression for source table ${JSON.stringify(table)}: ${result.error.message}`);
|
|
@@ -116,11 +114,28 @@ export function normalizeSourceTableConfig(value) {
|
|
|
116
114
|
return [table, structuredClone(options)];
|
|
117
115
|
}));
|
|
118
116
|
}
|
|
117
|
+
/**
|
|
118
|
+
* Reject filter connection tags that query hydration cannot honor.
|
|
119
|
+
*/
|
|
120
|
+
export function assertMongoFilterConnection(pattern) {
|
|
121
|
+
// FIXME: Revisit when multiple connections are supported and query hydration honors explicit tags.
|
|
122
|
+
// Until then, accepting another tag can silently omit its filter while the query reads the default connection.
|
|
123
|
+
const tag = pattern.connectionTag ?? DEFAULT_TAG;
|
|
124
|
+
if (tag !== DEFAULT_TAG) {
|
|
125
|
+
throw new Error(`MongoDB replication pre-filtering only supports the "${DEFAULT_TAG}" connection; connection ${JSON.stringify(tag)} is not supported.`);
|
|
126
|
+
}
|
|
127
|
+
}
|
|
119
128
|
/**
|
|
120
129
|
* Conservative equality: declaration order and expression order are significant.
|
|
121
130
|
*/
|
|
122
131
|
export function sourceTableConfigsEqual(left, right) {
|
|
123
|
-
|
|
132
|
+
try {
|
|
133
|
+
return JSON.stringify(normalizeSourceTableConfig(left)) == JSON.stringify(normalizeSourceTableConfig(right));
|
|
134
|
+
}
|
|
135
|
+
catch {
|
|
136
|
+
// Saved options may no longer validate after an upgrade. Do not reuse their replication stream.
|
|
137
|
+
return false;
|
|
138
|
+
}
|
|
124
139
|
}
|
|
125
140
|
function assertObject(value, message) {
|
|
126
141
|
if (value == null || typeof value != 'object' || Array.isArray(value))
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SourceTableConfig.js","sourceRoot":"","sources":["../src/SourceTableConfig.ts"],"names":[],"mappings":"AACA,OAAO,
|
|
1
|
+
{"version":3,"file":"SourceTableConfig.js","sourceRoot":"","sources":["../src/SourceTableConfig.ts"],"names":[],"mappings":"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"}
|
package/dist/SqlSyncRules.d.ts
CHANGED
|
@@ -2,6 +2,12 @@ import { BucketPriority } from './BucketDescription.js';
|
|
|
2
2
|
import { SyncConfig, SyncConfigWithErrors } from './SyncConfig.js';
|
|
3
3
|
import { YamlError } from './errors.js';
|
|
4
4
|
import { RequestParameters, SourceSchema, SqliteJsonRow } from './types.js';
|
|
5
|
+
/**
|
|
6
|
+
* Source connection types keyed by connection tag for sync config validation.
|
|
7
|
+
*/
|
|
8
|
+
export type SourceConnectionMap = Record<string, {
|
|
9
|
+
type: string;
|
|
10
|
+
}>;
|
|
5
11
|
export interface SyncRulesOptions {
|
|
6
12
|
/**
|
|
7
13
|
* Source database schema.
|
|
@@ -13,6 +19,11 @@ export interface SyncRulesOptions {
|
|
|
13
19
|
* 'public' for Postgres, default database for MongoDB/MySQL.
|
|
14
20
|
*/
|
|
15
21
|
defaultSchema: string;
|
|
22
|
+
/**
|
|
23
|
+
* Source connection types keyed by connection tag. When omitted, source-specific options report warnings
|
|
24
|
+
* if their connection type cannot be checked.
|
|
25
|
+
*/
|
|
26
|
+
connections?: SourceConnectionMap;
|
|
16
27
|
throwOnError?: boolean;
|
|
17
28
|
}
|
|
18
29
|
export interface RequestedStream {
|
package/dist/SqlSyncRules.js
CHANGED
|
@@ -23,7 +23,8 @@ export class SqlSyncRules extends SyncConfig {
|
|
|
23
23
|
const parser = new SyncConfigFromYaml({
|
|
24
24
|
throwOnError: options.throwOnError ?? true,
|
|
25
25
|
schema: options.schema,
|
|
26
|
-
defaultSchema: options.defaultSchema
|
|
26
|
+
defaultSchema: options.defaultSchema,
|
|
27
|
+
connections: options.connections
|
|
27
28
|
}, yaml);
|
|
28
29
|
return parser.read();
|
|
29
30
|
}
|
package/dist/SqlSyncRules.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SqlSyncRules.js","sourceRoot":"","sources":["../src/SqlSyncRules.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAwB,MAAM,iBAAiB,CAAC;AACnE,OAAO,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"SqlSyncRules.js","sourceRoot":"","sources":["../src/SqlSyncRules.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAwB,MAAM,iBAAiB,CAAC;AACnE,OAAO,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAuEpD,MAAM,OAAO,YAAa,SAAQ,UAAU;IAC1C,MAAM,CAAC,QAAQ,CAAC,IAAY,EAAE,OAAyB;QACrD,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;YAC3C,OAAO,KAAK,CAAC,MAAM,CAAC;QACtB,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,IAAI,CAAC,YAAY,eAAe,EAAE,CAAC;gBACjC,OAAO,CAAC,CAAC,MAAM,CAAC;YAClB,CAAC;iBAAM,IAAI,CAAC,YAAY,SAAS,EAAE,CAAC;gBAClC,OAAO,CAAC,CAAC,CAAC,CAAC;YACb,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,IAAI,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;YAC5B,CAAC;QACH,CAAC;IACH,CAAC;IAED,MAAM,CAAC,QAAQ,CAAC,IAAY,EAAE,OAAyB;QACrD,MAAM,MAAM,GAAG,IAAI,kBAAkB,CACnC;YACE,YAAY,EAAE,OAAO,CAAC,YAAY,IAAI,IAAI;YAC1C,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,aAAa,EAAE,OAAO,CAAC,aAAa;YACpC,WAAW,EAAE,OAAO,CAAC,WAAW;SACjC,EACD,IAAI,CACL,CAAC;QAEF,OAAO,MAAM,CAAC,IAAI,EAAE,CAAC;IACvB,CAAC;CACF"}
|
package/dist/from_yaml.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { type SourceConnectionMap } from './SqlSyncRules.js';
|
|
1
2
|
import { SyncConfigWithErrors } from './SyncConfig.js';
|
|
2
3
|
import { SourceSchema } from './types.js';
|
|
3
4
|
/**
|
|
@@ -21,4 +22,5 @@ export interface SyncConfigFromYamlOptions {
|
|
|
21
22
|
* 'public' for Postgres, default database for MongoDB/MySQL.
|
|
22
23
|
*/
|
|
23
24
|
readonly defaultSchema: string;
|
|
25
|
+
readonly connections?: SourceConnectionMap;
|
|
24
26
|
}
|
package/dist/from_yaml.js
CHANGED
|
@@ -8,11 +8,11 @@ import { validateSyncRulesSchema } from './json_schema.js';
|
|
|
8
8
|
import { SqlBucketDescriptor } from './legacy/SqlBucketDescriptor.js';
|
|
9
9
|
import { syncStreamFromSql } from './legacy/streams/from_sql.js';
|
|
10
10
|
import { parseMongoFilterExpression } from './mongo/MongoFilterExpression.js';
|
|
11
|
-
import { findDuplicateSourceTableConfigKeys } from './SourceTableConfig.js';
|
|
11
|
+
import { assertMongoFilterConnection, findDuplicateSourceTableConfigKeys, normalizeSourceTableConfig, parseSourceTableConfigKey } from './SourceTableConfig.js';
|
|
12
12
|
import { SqlSyncRules } from './SqlSyncRules.js';
|
|
13
13
|
import { validateStorageVersion } from './StorageVersion.js';
|
|
14
14
|
import { PrecompiledSyncConfig } from './sync_plan/evaluator/index.js';
|
|
15
|
-
import { TablePattern } from './TablePattern.js';
|
|
15
|
+
import { DEFAULT_TAG, TablePattern } from './TablePattern.js';
|
|
16
16
|
import { buildParsedToSourceValueMap, isBlockScalar, isQuotedScalar } from './yaml_scalar_map.js';
|
|
17
17
|
import { createYamlSourceLocationResolver, mapAjvErrorsToYamlErrors } from './yaml_source_locations.js';
|
|
18
18
|
import { documentState } from './yaml_validation.js';
|
|
@@ -96,14 +96,22 @@ export class SyncConfigFromYaml {
|
|
|
96
96
|
?.requireMap('Source-table options must be a map of table names or patterns to option maps.');
|
|
97
97
|
if (sourceTables) {
|
|
98
98
|
const sourceLocationResolver = createYamlSourceLocationResolver(parsed);
|
|
99
|
-
for (const { key: table, value } of sourceTables.stringKeyedItems()) {
|
|
99
|
+
for (const { key: table, keyScalar, value } of sourceTables.stringKeyedItems()) {
|
|
100
|
+
let pattern;
|
|
101
|
+
try {
|
|
102
|
+
pattern = parseSourceTableConfigKey(table);
|
|
103
|
+
}
|
|
104
|
+
catch (error) {
|
|
105
|
+
keyScalar.reportError(error instanceof Error ? error.message : String(error));
|
|
106
|
+
}
|
|
100
107
|
using tableOptions = value.requireMap('Options for a source table must be a map.');
|
|
101
108
|
const expression = tableOptions?.get('mongodb_filter_expression');
|
|
102
109
|
if (!expression)
|
|
103
110
|
continue;
|
|
104
111
|
let filter;
|
|
105
112
|
try {
|
|
106
|
-
|
|
113
|
+
// Disallow YAML aliases so recursive validation only receives a tree.
|
|
114
|
+
filter = expression.node.toJS(parsed, { maxAliasCount: 0 });
|
|
107
115
|
}
|
|
108
116
|
catch (error) {
|
|
109
117
|
expression.reportError(error instanceof Error ? error.message : String(error));
|
|
@@ -111,11 +119,32 @@ export class SyncConfigFromYaml {
|
|
|
111
119
|
}
|
|
112
120
|
if (filter === 'disabled')
|
|
113
121
|
continue;
|
|
114
|
-
|
|
122
|
+
const errors = parseMongoFilterExpression({
|
|
115
123
|
value: filter,
|
|
116
124
|
basePath: ['config', 'source_table_options', table, 'mongodb_filter_expression'],
|
|
117
125
|
sourceLocationResolver
|
|
118
|
-
})
|
|
126
|
+
});
|
|
127
|
+
this.#errors.push(...errors);
|
|
128
|
+
if (errors.length > 0 || !pattern)
|
|
129
|
+
continue;
|
|
130
|
+
try {
|
|
131
|
+
assertMongoFilterConnection(pattern);
|
|
132
|
+
}
|
|
133
|
+
catch (error) {
|
|
134
|
+
expression.reportError(error instanceof Error ? error.message : String(error));
|
|
135
|
+
continue;
|
|
136
|
+
}
|
|
137
|
+
const tag = pattern.connectionTag ?? DEFAULT_TAG;
|
|
138
|
+
const connections = this.options.connections;
|
|
139
|
+
if (connections === undefined) {
|
|
140
|
+
expression.reportError(`Cannot verify MongoDB replication pre-filtering for connection ${JSON.stringify(tag)} without connection type information.`, 'warning');
|
|
141
|
+
}
|
|
142
|
+
else if (!Object.hasOwn(connections, tag)) {
|
|
143
|
+
expression.reportError(`Unknown source connection ${JSON.stringify(tag)} for MongoDB replication pre-filtering.`, 'warning');
|
|
144
|
+
}
|
|
145
|
+
else if (connections[tag].type !== 'mongodb') {
|
|
146
|
+
expression.reportError(`MongoDB replication pre-filtering expressions are only supported by MongoDB sources. Connection ${JSON.stringify(tag)} has type ${JSON.stringify(connections[tag].type)}.`);
|
|
147
|
+
}
|
|
119
148
|
}
|
|
120
149
|
}
|
|
121
150
|
let compatibility;
|
|
@@ -139,20 +168,21 @@ export class SyncConfigFromYaml {
|
|
|
139
168
|
let sourceTableConfig = {};
|
|
140
169
|
if (sourceTables && !this.#hasFatalError) {
|
|
141
170
|
try {
|
|
142
|
-
|
|
171
|
+
const authoredOptions = sourceTables.node.toJS(parsed);
|
|
172
|
+
// Different authored keys can resolve to the same SQL identifier. Report each duplicate at its key.
|
|
173
|
+
const sourceLocationResolver = createYamlSourceLocationResolver(parsed);
|
|
174
|
+
for (const [previous, duplicate] of findDuplicateSourceTableConfigKeys(Object.keys(authoredOptions))) {
|
|
175
|
+
this.#errors.push(new YamlError(new Error(`Source-table keys ${JSON.stringify(previous)} and ${JSON.stringify(duplicate)} resolve to the same pattern.`), sourceLocationResolver.getLocation(['config', 'source_table_options', duplicate], 'key')));
|
|
176
|
+
}
|
|
177
|
+
if (!this.#hasFatalError) {
|
|
178
|
+
// Only normalized options belong in the plan. Failures remain YAML diagnostics so invalid configs
|
|
179
|
+
// can be persisted for diagnostics without failing again during serialization.
|
|
180
|
+
sourceTableConfig = normalizeSourceTableConfig(authoredOptions);
|
|
181
|
+
}
|
|
143
182
|
}
|
|
144
183
|
catch (error) {
|
|
145
184
|
sourceTables.reportError(error instanceof Error ? error.message : String(error));
|
|
146
185
|
}
|
|
147
|
-
/**
|
|
148
|
-
* Table pattern keys can map to the same table via different pathways.
|
|
149
|
-
* E.g. [default_schema].[tablename] and [tablename] can refer to the same item,
|
|
150
|
-
* we report errors for duplicates.
|
|
151
|
-
*/
|
|
152
|
-
const sourceLocationResolver = createYamlSourceLocationResolver(parsed);
|
|
153
|
-
for (const [previous, duplicate] of findDuplicateSourceTableConfigKeys(Object.keys(sourceTableConfig))) {
|
|
154
|
-
this.#errors.push(new YamlError(new Error(`Source-table keys ${JSON.stringify(previous)} and ${JSON.stringify(duplicate)} resolve to the same pattern.`), sourceLocationResolver.getLocation(['config', 'source_table_options', duplicate], 'key')));
|
|
155
|
-
}
|
|
156
186
|
}
|
|
157
187
|
// Bucket definitions using explicit parameter and data queries.
|
|
158
188
|
const bucketMap = rootState.get('bucket_definitions')?.requireMap();
|
|
@@ -319,15 +349,9 @@ export class SyncConfigFromYaml {
|
|
|
319
349
|
}
|
|
320
350
|
// Only reported here: with config.edition: 3, bucket_definitions is already a fatal error in #compileSyncPlan().
|
|
321
351
|
bucketMap?.reportError('Sync Rules (`bucket_definitions`) are deprecated and will be removed in the next major version of the PowerSync Service. Migrate to Sync Streams: https://docs.powersync.com/sync/rules/migrate-to-sync-streams.', 'warning');
|
|
322
|
-
//
|
|
323
|
-
//
|
|
324
|
-
|
|
325
|
-
if (supportsStreams) {
|
|
326
|
-
streamMap?.reportError('This is using the deprecated alpha version of Sync Streams. It will be removed in the next major version. Upgrade `config.edition` to version 3.', 'warning');
|
|
327
|
-
}
|
|
328
|
-
else {
|
|
329
|
-
streamMap?.reportError('Sync Streams require edition 3. Add a `config: {edition: 3}` block to the sync config.');
|
|
330
|
-
}
|
|
352
|
+
// Preserve the warning for legacy streams blocks, including empty ones. Actual queries below still
|
|
353
|
+
// require a supported edition when compiled by syncStreamFromSql.
|
|
354
|
+
streamMap?.reportError('This is using the deprecated alpha version of Sync Streams. It will be removed in the next major version. Upgrade `config.edition` to version 3.', 'warning');
|
|
331
355
|
for (const { key, keyScalar, value: maybeMap } of bucketMap?.stringKeyedItems() ?? []) {
|
|
332
356
|
if (!this.#checkUniqueName(key, keyScalar)) {
|
|
333
357
|
continue;
|
|
@@ -376,10 +400,6 @@ export class SyncConfigFromYaml {
|
|
|
376
400
|
rules.bucketDataSources.push(...descriptor.dataSources);
|
|
377
401
|
rules.bucketParameterLookupSources.push(...descriptor.parameterIndexLookupCreators);
|
|
378
402
|
}
|
|
379
|
-
if (!supportsStreams) {
|
|
380
|
-
// The edition error above covers the whole streams block. Compiling each stream would only repeat it.
|
|
381
|
-
return rules;
|
|
382
|
-
}
|
|
383
403
|
for (const { key, keyScalar, value } of streamMap?.stringKeyedItems() ?? []) {
|
|
384
404
|
if (!this.#checkUniqueName(key, keyScalar)) {
|
|
385
405
|
continue;
|
package/dist/from_yaml.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"from_yaml.js","sourceRoot":"","sources":["../src/from_yaml.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"from_yaml.js","sourceRoot":"","sources":["../src/from_yaml.ts"],"names":[],"mappings":"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"}
|
package/dist/json_schema.js
CHANGED
|
@@ -1,11 +1,13 @@
|
|
|
1
1
|
import ajvModule from 'ajv';
|
|
2
2
|
import { CompatibilityEdition, CompatibilityOption, TimeValuePrecision } from './compatibility.js';
|
|
3
|
+
import { MONGO_FILTER_JSON_SCHEMA_DEFINITIONS } from './mongo/MongoFilterExpression.js';
|
|
3
4
|
import { createSourceTableConfigSchema } from './SourceTableConfig.js';
|
|
4
5
|
import { STORAGE_VERSIONS } from './StorageVersion.js';
|
|
5
6
|
// Hack to make this work both in NodeJS and a browser
|
|
6
7
|
const Ajv = ajvModule.default ?? ajvModule;
|
|
7
8
|
export const syncRulesSchema = {
|
|
8
9
|
type: 'object',
|
|
10
|
+
definitions: MONGO_FILTER_JSON_SCHEMA_DEFINITIONS,
|
|
9
11
|
properties: {
|
|
10
12
|
bucket_definitions: {
|
|
11
13
|
type: 'object',
|
package/dist/json_schema.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"json_schema.js","sourceRoot":"","sources":["../src/json_schema.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,KAAK,CAAC;AAC5B,OAAO,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAEnG,OAAO,EAAE,6BAA6B,EAAE,MAAM,wBAAwB,CAAC;AACvE,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,sDAAsD;AACtD,MAAM,GAAG,GAAG,SAAS,CAAC,OAAO,IAAI,SAAS,CAAC;AAE3C,MAAM,CAAC,MAAM,eAAe,GAAqB;IAC/C,IAAI,EAAE,QAAQ;IACd,UAAU,EAAE;QACV,kBAAkB,EAAE;YAClB,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE,IAAI;YAChB,WAAW,EACT,iOAAiO;YACnO,QAAQ,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,uBAAuB,EAAE,EAAE,CAAC;YACzD,iBAAiB,EAAE;gBACjB,IAAI,EAAE;oBACJ,IAAI,EAAE,QAAQ;oBACd,QAAQ,EAAE,CAAC,MAAM,CAAC;oBAClB,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,uBAAuB,CAAC,EAAE,CAAC;oBAC/C,UAAU,EAAE;wBACV,oCAAoC,EAAE;4BACpC,WAAW,EAAE,6DAA6D;4BAC1E,IAAI,EAAE,SAAS;yBAChB;wBACD,QAAQ,EAAE;4BACR,WAAW,EAAE,kEAAkE;4BAC/E,IAAI,EAAE,SAAS;yBAChB;wBACD,UAAU,EAAE;4BACV,WAAW,EAAE,sBAAsB;4BACnC,KAAK,EAAE;gCACL,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,iBAAiB,EAAE;gCAClD;oCACE,IAAI,EAAE,OAAO;oCACb,WAAW,EAAE,mBAAmB;oCAChC,KAAK,EAAE;wCACL,IAAI,EAAE,QAAQ;qCACf;iCACF;6BACF;yBACF;wBACD,IAAI,EAAE;4BACJ,IAAI,EAAE,OAAO;4BACb,WAAW,EAAE,cAAc;4BAC3B,KAAK,EAAE;gCACL,IAAI,EAAE,QAAQ;6BACf;yBACF;qBACF;oBACD,oBAAoB,EAAE,KAAK;iBAC5B;aACF;SACF;QACD,IAAI,EAAE;YACJ,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,wDAAwD;YACrE,iBAAiB,EAAE;gBACjB,IAAI,EAAE;oBACJ,IAAI,EAAE,QAAQ;iBACf;aACF;SACF;QACD,OAAO,EAAE;YACP,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,4BAA4B;YACzC,QAAQ,EAAE,CAAC,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,+CAA+C,EAAE,EAAE,CAAC;YACxF,iBAAiB,EAAE;gBACjB,IAAI,EAAE;oBACJ,IAAI,EAAE,QAAQ;oBACd,QAAQ,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,uBAAuB,CAAC,EAAE,CAAC;oBAChD,UAAU,EAAE;wBACV,oCAAoC,EAAE;4BACpC,WAAW,EAAE,6DAA6D;4BAC1E,IAAI,EAAE,SAAS;yBAChB;wBACD,cAAc,EAAE;4BACd,WAAW,EAAE,2DAA2D;4BACxE,IAAI,EAAE,SAAS;yBAChB;wBACD,QAAQ,EAAE;4BACR,WAAW,EAAE,kEAAkE;4BAC/E,IAAI,EAAE,SAAS;yBAChB;wBACD,KAAK,EAAE;4BACL,WAAW,EAAE,wDAAwD;4BACrE,IAAI,EAAE,QAAQ;yBACf;wBACD,OAAO,EAAE;4BACP,WAAW,EAAE,sDAAsD;4BACnE,IAAI,EAAE,OAAO;4BACb,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;yBAC1B;wBACD,IAAI,EAAE;4BACJ,IAAI,EAAE,QAAQ;4BACd,WAAW,EAAE,oEAAoE;4BACjF,iBAAiB,EAAE;gCACjB,IAAI,EAAE;oCACJ,IAAI,EAAE,QAAQ;iCACf;6BACF;yBACF;qBACF;iBACF;aACF;SACF;QACD,iBAAiB,EAAE;YACjB,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,8CAA8C;YAC3D,QAAQ,EAAE;gBACR;oBACE,iBAAiB,EAAE;wBACjB,QAAQ,EAAE,CAAC,wDAAwD,CAAC;qBACrE;iBACF;aACF;YACD,iBAAiB,EAAE;gBACjB,IAAI,EAAE;oBACJ,IAAI,EAAE,CAAC,QAAQ,CAAC;oBAChB,QAAQ,EAAE,CAAC,UAAU,CAAC;oBACtB,QAAQ,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,wDAAwD,CAAC,EAAE,CAAC;oBACpF,UAAU,EAAE;wBACV,QAAQ,EAAE;4BACR,WAAW,EAAE,wEAAwE;4BACrF,IAAI,EAAE,OAAO;4BACb,KAAK,EAAE;gCACL,IAAI,EAAE,QAAQ;6BACf;yBACF;wBACD,oBAAoB,EAAE,KAAK;wBAC3B,WAAW,EAAE,IAAI;qBAClB;iBACF;aACF;SACF;QACD,MAAM,EAAE;YACN,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,0EAA0E;YACvF,UAAU,EAAE;gBACV,oBAAoB,EAAE,6BAA6B,EAAE;gBACrD,OAAO,EAAE;oBACP,IAAI,EAAE,SAAS;oBACf,OAAO,EAAE,oBAAoB,CAAC,MAAM;oBACpC,OAAO,EAAE,oBAAoB,CAAC,MAAM;oBACpC,gBAAgB,EAAE,oBAAoB,CAAC,gBAAgB,GAAG,CAAC;iBAC5D;gBACD,eAAe,EAAE;oBACf,IAAI,EAAE,SAAS;oBACf,WAAW,EAAE,+CAA+C;oBAC5D,IAAI,EAAE,CAAC,GAAG,gBAAgB,CAAC,IAAI,EAAE,CAAC;iBACnC;gBACD,uBAAuB,EAAE;oBACvB,IAAI,EAAE,QAAQ;oBACd,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;iBAClE;gBACD,GAAG,MAAM,CAAC,WAAW,CACnB,MAAM,CAAC,OAAO,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;oBACnD,OAAO;wBACL,CAAC,CAAC,CAAC,CAAC;wBACJ;4BACE,IAAI,EAAE,SAAS;4BACf,WAAW,EAAE,4CAA4C,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE;yBAC7F;qBACF,CAAC;gBACJ,CAAC,CAAC,CACH;aACF;YACD,oBAAoB,EAAE,KAAK;SAC5B;KACF;IACD,KAAK,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,oBAAoB,CAAC,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,SAAS,CAAC,EAAE,CAAC;IACxE,oBAAoB,EAAE,KAAK;CACnB,CAAC;AAEX,MAAM,CAAC,MAAM,uBAAuB,GAAQ,+BAA+B,CAAC,eAAe,CAAC,CAAC;AAI7F;;GAEG;AACH,MAAM,UAAU,qBAAqB;IACnC,MAAM,MAAM,GAAG,eAAe,CAAC,eAAe,CAAe,CAAC;IAC9D,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,+BAA+B,CAAC,MAAwB;IACtE,OAAO,IAAI,GAAG,CAAC;QACb,SAAS,EAAE,IAAI;QACf,QAAQ,EAAE,CAAC,EAAE,OAAO,EAAE,iBAAiB,EAAE,UAAU,EAAE,OAAO,EAAE,CAAC;KAChE,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;AACrB,CAAC"}
|
|
1
|
+
{"version":3,"file":"json_schema.js","sourceRoot":"","sources":["../src/json_schema.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,11 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Specialized payload checks attached directly to Zod schemas. Wrapper selection and recursion belong to the schema.
|
|
3
|
+
* This validates the filter's supported EJSON subset without replacing authored values with BSON instances.
|
|
4
|
+
* EJSON.deserialize alone is not a strict validator: the BSON library can coerce overflowing integers or
|
|
5
|
+
* normalize malformed base64 instead of rejecting them. Explicit bounds and syntax checks prevent those coercions;
|
|
6
|
+
* BSON still supplies Decimal128 representability and binary subtype checks where appropriate.
|
|
7
|
+
* Date strings deliberately retain the library's Date.parse behavior rather than strict calendar validation.
|
|
8
|
+
* See docs/replication/sync-config-parsing.md for the differences from general Extended JSON.
|
|
3
9
|
*/
|
|
4
10
|
export declare const MONGO_BSON_VALIDATORS: {
|
|
5
11
|
readonly mongoNumber: {
|
|
@@ -13,6 +19,9 @@ export declare const MONGO_BSON_VALIDATORS: {
|
|
|
13
19
|
readonly type: "string";
|
|
14
20
|
/**
|
|
15
21
|
* Checks a canonical Int32 payload against its signed bounds.
|
|
22
|
+
* In BSON 6.10.4, EJSON.deserialize({ $numberInt: '2147483648' }, { relaxed: false })
|
|
23
|
+
* wraps to -2147483648. Default relaxed mode instead returns the out-of-range JS number 2147483648.
|
|
24
|
+
* Reject the overflow in either case rather than relying on deserialization to validate the bounds.
|
|
16
25
|
*/
|
|
17
26
|
readonly validate: (value: unknown) => void;
|
|
18
27
|
};
|
|
@@ -20,6 +29,9 @@ export declare const MONGO_BSON_VALIDATORS: {
|
|
|
20
29
|
readonly type: "string";
|
|
21
30
|
/**
|
|
22
31
|
* Checks a canonical Int64 payload using exact integer arithmetic.
|
|
32
|
+
* In BSON 6.10.4, EJSON.deserialize({ $numberLong: '9223372036854775808' }, { relaxed: false })
|
|
33
|
+
* wraps to Long(-9223372036854775808). Default relaxed mode also wraps, then loses precision when
|
|
34
|
+
* converting to a JS number. Checking with BigInt rejects the overflow before either conversion.
|
|
23
35
|
*/
|
|
24
36
|
readonly validate: (value: unknown) => void;
|
|
25
37
|
};
|
|
@@ -40,7 +52,9 @@ export declare const MONGO_BSON_VALIDATORS: {
|
|
|
40
52
|
readonly mongoDateString: {
|
|
41
53
|
readonly type: "string";
|
|
42
54
|
/**
|
|
43
|
-
*
|
|
55
|
+
* Requires a finite timestamp after the schema checks the timestamp format and explicit timezone.
|
|
56
|
+
* BSON's EJSON date-string conversion also uses Date.parse, including its calendar normalization
|
|
57
|
+
* (for example, 2026-02-29 becomes March 1). This does not enforce strict calendar validity.
|
|
44
58
|
*/
|
|
45
59
|
readonly validate: (value: unknown) => void;
|
|
46
60
|
};
|
|
@@ -55,6 +69,9 @@ export declare const MONGO_BSON_VALIDATORS: {
|
|
|
55
69
|
readonly type: "object";
|
|
56
70
|
/**
|
|
57
71
|
* Checks BSON subtype constraints, including UUID byte length, after structural byte-encoding validation.
|
|
72
|
+
* BSON 6.10.4 accepts { $binary: { base64: 'AQI', subType: '0' } } in both relaxed and typed modes;
|
|
73
|
+
* re-serialization produces base64 'AQI=' and subtype '00'. The Zod schema rejects missing padding
|
|
74
|
+
* and one-digit subtypes independently before this check, requiring the canonical spelling we support.
|
|
58
75
|
*/
|
|
59
76
|
readonly validate: (value: unknown) => void;
|
|
60
77
|
};
|
|
@@ -18,6 +18,12 @@ function integerRange(value, minimum, maximum) {
|
|
|
18
18
|
}
|
|
19
19
|
/**
|
|
20
20
|
* Specialized payload checks attached directly to Zod schemas. Wrapper selection and recursion belong to the schema.
|
|
21
|
+
* This validates the filter's supported EJSON subset without replacing authored values with BSON instances.
|
|
22
|
+
* EJSON.deserialize alone is not a strict validator: the BSON library can coerce overflowing integers or
|
|
23
|
+
* normalize malformed base64 instead of rejecting them. Explicit bounds and syntax checks prevent those coercions;
|
|
24
|
+
* BSON still supplies Decimal128 representability and binary subtype checks where appropriate.
|
|
25
|
+
* Date strings deliberately retain the library's Date.parse behavior rather than strict calendar validation.
|
|
26
|
+
* See docs/replication/sync-config-parsing.md for the differences from general Extended JSON.
|
|
21
27
|
*/
|
|
22
28
|
export const MONGO_BSON_VALIDATORS = {
|
|
23
29
|
mongoNumber: {
|
|
@@ -35,6 +41,9 @@ export const MONGO_BSON_VALIDATORS = {
|
|
|
35
41
|
type: 'string',
|
|
36
42
|
/**
|
|
37
43
|
* Checks a canonical Int32 payload against its signed bounds.
|
|
44
|
+
* In BSON 6.10.4, EJSON.deserialize({ $numberInt: '2147483648' }, { relaxed: false })
|
|
45
|
+
* wraps to -2147483648. Default relaxed mode instead returns the out-of-range JS number 2147483648.
|
|
46
|
+
* Reject the overflow in either case rather than relying on deserialization to validate the bounds.
|
|
38
47
|
*/
|
|
39
48
|
validate(value) {
|
|
40
49
|
integerRange(value, -2147483648n, 2147483647n);
|
|
@@ -44,6 +53,9 @@ export const MONGO_BSON_VALIDATORS = {
|
|
|
44
53
|
type: 'string',
|
|
45
54
|
/**
|
|
46
55
|
* Checks a canonical Int64 payload using exact integer arithmetic.
|
|
56
|
+
* In BSON 6.10.4, EJSON.deserialize({ $numberLong: '9223372036854775808' }, { relaxed: false })
|
|
57
|
+
* wraps to Long(-9223372036854775808). Default relaxed mode also wraps, then loses precision when
|
|
58
|
+
* converting to a JS number. Checking with BigInt rejects the overflow before either conversion.
|
|
47
59
|
*/
|
|
48
60
|
validate(value) {
|
|
49
61
|
integerRange(value, -9223372036854775808n, 9223372036854775807n);
|
|
@@ -78,7 +90,9 @@ export const MONGO_BSON_VALIDATORS = {
|
|
|
78
90
|
mongoDateString: {
|
|
79
91
|
type: 'string',
|
|
80
92
|
/**
|
|
81
|
-
*
|
|
93
|
+
* Requires a finite timestamp after the schema checks the timestamp format and explicit timezone.
|
|
94
|
+
* BSON's EJSON date-string conversion also uses Date.parse, including its calendar normalization
|
|
95
|
+
* (for example, 2026-02-29 becomes March 1). This does not enforce strict calendar validity.
|
|
82
96
|
*/
|
|
83
97
|
validate(value) {
|
|
84
98
|
if (typeof value != 'string' || !Number.isFinite(Date.parse(value)))
|
|
@@ -98,6 +112,9 @@ export const MONGO_BSON_VALIDATORS = {
|
|
|
98
112
|
type: 'object',
|
|
99
113
|
/**
|
|
100
114
|
* Checks BSON subtype constraints, including UUID byte length, after structural byte-encoding validation.
|
|
115
|
+
* BSON 6.10.4 accepts { $binary: { base64: 'AQI', subType: '0' } } in both relaxed and typed modes;
|
|
116
|
+
* re-serialization produces base64 'AQI=' and subtype '00'. The Zod schema rejects missing padding
|
|
117
|
+
* and one-digit subtypes independently before this check, requiring the canonical spelling we support.
|
|
101
118
|
*/
|
|
102
119
|
validate(value) {
|
|
103
120
|
try {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MongoBsonValidators.js","sourceRoot":"","sources":["../../src/mongo/MongoBsonValidators.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,MAAM,CAAC;AACzC,OAAO,EAAE,0BAA0B,EAAE,MAAM,4BAA4B,CAAC;AAExE;;GAEG;AACH,SAAS,IAAI,CAAC,OAAe;IAC3B,MAAM,IAAI,0BAA0B,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;AAC9D,CAAC;AAED;;GAEG;AACH,SAAS,YAAY,CAAC,KAAc,EAAE,OAAe,EAAE,OAAe;IACpE,IAAI,OAAO,KAAK,IAAI,QAAQ,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,KAAK,CAAC;QAAE,OAAO;IAC7E,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IAC7B,IAAI,MAAM,GAAG,OAAO,IAAI,MAAM,GAAG,OAAO;QAAE,IAAI,CAAC,8CAA8C,CAAC,CAAC;AACjG,CAAC;AAED
|
|
1
|
+
{"version":3,"file":"MongoBsonValidators.js","sourceRoot":"","sources":["../../src/mongo/MongoBsonValidators.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,6 +2,15 @@ import { z } from 'zod';
|
|
|
2
2
|
import { YamlError } from '../errors.js';
|
|
3
3
|
import type { JsonObject } from '../json.js';
|
|
4
4
|
import type { SyncConfigSourceLocationResolver, SyncConfigSourcePath } from '../SyncConfigDiagnostics.js';
|
|
5
|
+
/**
|
|
6
|
+
* Supported filter literals, not a general-purpose EJSON parser. EJSON.deserialize converts BSON wrappers but
|
|
7
|
+
* does not enforce our expression grammar, reject ordinary object operands, or generate editor schemas.
|
|
8
|
+
* These declarations also supply paths for YAML diagnostics while keeping authored wrappers in saved plans.
|
|
9
|
+
* We intentionally exclude other EJSON types and non-finite numbers. Plain integers must fit Int32, date
|
|
10
|
+
* milliseconds must fit JavaScript Date, and binary subtypes use exactly two hex digits.
|
|
11
|
+
* $literal is a string-only aggregation-expression escape here, not an EJSON type wrapper.
|
|
12
|
+
* See docs/replication/sync-config-parsing.md for the supported subset and parser compatibility details.
|
|
13
|
+
*/
|
|
5
14
|
declare const WRAPPERS: {
|
|
6
15
|
$literal: z.ZodString;
|
|
7
16
|
$oid: z.ZodString;
|
|
@@ -24,7 +33,7 @@ declare const WRAPPERS: {
|
|
|
24
33
|
};
|
|
25
34
|
export declare const MONGO_FILTER_SCHEMA: z.ZodType<MongoFilterExpression, unknown, z.core.$ZodTypeInternals<MongoFilterExpression, unknown>>;
|
|
26
35
|
export declare const MONGO_FILTER_VALIDATOR: z.ZodType<MongoFilterExpression, unknown, z.core.$ZodTypeInternals<MongoFilterExpression, unknown>>;
|
|
27
|
-
export declare const
|
|
36
|
+
export declare const MONGO_FILTER_JSON_SCHEMA_DEFINITIONS: JsonObject;
|
|
28
37
|
/**
|
|
29
38
|
* Validates authored input without replacing it with Zod's parsed output.
|
|
30
39
|
*
|