@texaryn/schema-json 0.7.0 → 0.8.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/CHANGELOG.md +32 -0
- package/README.md +33 -1
- package/THIRD-PARTY-NOTICES.md +7 -0
- package/dist/adapter.d.ts.map +1 -1
- package/dist/adapter.js +479 -24
- package/dist/adapter.js.map +1 -1
- package/dist/bare-maps.d.ts +3 -0
- package/dist/bare-maps.d.ts.map +1 -0
- package/dist/bare-maps.js +44 -0
- package/dist/bare-maps.js.map +1 -0
- package/dist/identity.d.ts +11 -2
- package/dist/identity.d.ts.map +1 -1
- package/dist/identity.js +103 -22
- package/dist/identity.js.map +1 -1
- package/dist/index.d.ts +4 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -1
- package/dist/index.js.map +1 -1
- package/dist/instance-pointer.d.ts +9 -0
- package/dist/instance-pointer.d.ts.map +1 -0
- package/dist/instance-pointer.js +115 -0
- package/dist/instance-pointer.js.map +1 -0
- package/dist/local-pointer-aliases.d.ts +4 -0
- package/dist/local-pointer-aliases.d.ts.map +1 -0
- package/dist/local-pointer-aliases.js +345 -0
- package/dist/local-pointer-aliases.js.map +1 -0
- package/dist/normalize.d.ts +1 -1
- package/dist/normalize.d.ts.map +1 -1
- package/dist/normalize.js +3 -1
- package/dist/normalize.js.map +1 -1
- package/dist/projection-shape.d.ts +25 -0
- package/dist/projection-shape.d.ts.map +1 -0
- package/dist/projection-shape.js +74 -0
- package/dist/projection-shape.js.map +1 -0
- package/dist/projection-validation-coherence.d.ts +11 -0
- package/dist/projection-validation-coherence.d.ts.map +1 -0
- package/dist/projection-validation-coherence.js +213 -0
- package/dist/projection-validation-coherence.js.map +1 -0
- package/dist/projection.d.ts +2 -2
- package/dist/projection.d.ts.map +1 -1
- package/dist/projection.js +922 -243
- package/dist/projection.js.map +1 -1
- package/dist/resources.d.ts +19 -0
- package/dist/resources.d.ts.map +1 -0
- package/dist/resources.js +730 -0
- package/dist/resources.js.map +1 -0
- package/dist/root-reference.js +1 -1
- package/dist/schema-graph.d.ts +7 -0
- package/dist/schema-graph.d.ts.map +1 -1
- package/dist/schema-graph.js +79 -20
- package/dist/schema-graph.js.map +1 -1
- package/dist/submission-projection.d.ts +5 -0
- package/dist/submission-projection.d.ts.map +1 -0
- package/dist/submission-projection.js +233 -0
- package/dist/submission-projection.js.map +1 -0
- package/dist/types.d.ts +6 -1
- package/dist/types.d.ts.map +1 -1
- package/dist/vendor/json-schema-library/LICENSE.md +9 -0
- package/dist/vendor/json-schema-library/index.mjs +2 -0
- package/dist/vendor/json-schema-library/index.mjs.map +1 -0
- package/package.json +9 -4
package/dist/adapter.js
CHANGED
|
@@ -1,11 +1,17 @@
|
|
|
1
|
-
import { compileSchema, } from 'json-schema-library';
|
|
1
|
+
import { compileSchema, isSchemaNode, } from './vendor/json-schema-library/index.mjs';
|
|
2
2
|
import { detectDialect } from './dialect.js';
|
|
3
3
|
import { loadMetaschemas, referencedDialects } from './metaschemas/index.js';
|
|
4
|
+
import { loadExternalResources } from './resources.js';
|
|
5
|
+
import { materializeLocalPointerAliases } from './local-pointer-aliases.js';
|
|
4
6
|
import { newProjectionCache } from './identity.js';
|
|
5
7
|
import { buildProjection, DEFAULT_LIMITS } from './projection.js';
|
|
8
|
+
import { assertProjectionValidationCoherence } from './projection-validation-coherence.js';
|
|
9
|
+
import { projectSubmissionData, supportsSubmissionProjection } from './submission-projection.js';
|
|
6
10
|
import { withoutUnreachableBranches } from './normalize.js';
|
|
11
|
+
import { DRAFTS } from './bare-maps.js';
|
|
7
12
|
import { fixRootReference } from './root-reference.js';
|
|
8
|
-
import { buildSchemaGraph, rejectSameLocationCycles, cyclicPositions, markPositions } from './schema-graph.js';
|
|
13
|
+
import { buildSchemaGraph, rejectSameLocationCycles, cyclicPositions, markPositions, POSITION } from './schema-graph.js';
|
|
14
|
+
import { pointerResolver } from './instance-pointer.js';
|
|
9
15
|
export async function createJsonSchemaAdapter(schema, config) {
|
|
10
16
|
return createAdapter(schema, config, DEFAULT_LIMITS);
|
|
11
17
|
}
|
|
@@ -13,21 +19,68 @@ export async function createAdapter(schema, config, limits) {
|
|
|
13
19
|
const dialect = detectDialect(schema, {
|
|
14
20
|
defaultDialect: config?.defaultDialect ?? 'draft-07',
|
|
15
21
|
});
|
|
22
|
+
if (config?.dynamicReferenceProjection === 'local' && dialect === 'draft-07') {
|
|
23
|
+
throw new TypeError('Local dynamic reference projection requires Draft 2019-09 or Draft 2020-12.');
|
|
24
|
+
}
|
|
16
25
|
// json-schema-library carries no metaschema documents, so a schema referencing its own fails closed.
|
|
17
|
-
const
|
|
18
|
-
const
|
|
26
|
+
const externalRemotes = await loadExternalResources(schema, dialect, config);
|
|
27
|
+
const referenced = referencedDialects([schema, ...externalRemotes]);
|
|
28
|
+
const metaschemas = referenced.length > 0 ? await loadMetaschemas(referenced) : [];
|
|
29
|
+
const remotes = [...metaschemas, ...externalRemotes];
|
|
30
|
+
const graph = buildSchemaGraph(schema, dialect, remotes);
|
|
31
|
+
const referencesByDocument = new Map();
|
|
32
|
+
for (const target of graph.references.values()) {
|
|
33
|
+
const hash = target.indexOf('#');
|
|
34
|
+
if (hash < 0)
|
|
35
|
+
continue;
|
|
36
|
+
const prefix = target.slice(0, hash);
|
|
37
|
+
const pointers = referencesByDocument.get(prefix) ?? [];
|
|
38
|
+
pointers.push(target.slice(hash));
|
|
39
|
+
referencesByDocument.set(prefix, pointers);
|
|
40
|
+
}
|
|
19
41
|
// json-schema-library evaluates some branches the specification never does, so only the projection drops them.
|
|
20
|
-
const document = withoutUnreachableBranches(schema);
|
|
21
|
-
const
|
|
42
|
+
const document = withoutUnreachableBranches(schema, referencesByDocument.get('') ?? []);
|
|
43
|
+
const projectionRemotes = [
|
|
44
|
+
...metaschemas,
|
|
45
|
+
...externalRemotes.map((remote) => {
|
|
46
|
+
const id = remote.$id;
|
|
47
|
+
const base = typeof id === 'string' ? id.split('#', 1)[0] : '';
|
|
48
|
+
return withoutUnreachableBranches(remote, referencesByDocument.get(base) ?? []);
|
|
49
|
+
}),
|
|
50
|
+
];
|
|
22
51
|
rejectSameLocationCycles(graph);
|
|
23
|
-
const marked = markPositions(graph, document,
|
|
52
|
+
const marked = markPositions(graph, document, projectionRemotes);
|
|
24
53
|
const validated = await prepareSchema(schema, dialect, remotes);
|
|
25
|
-
const projected = await prepareSchema(marked.document, dialect,
|
|
26
|
-
const
|
|
54
|
+
const projected = await prepareSchema(marked.document, dialect, marked.remotes);
|
|
55
|
+
const dynamicReferenceProjection = config?.dynamicReferenceProjection === 'local';
|
|
56
|
+
if (dynamicReferenceProjection) {
|
|
57
|
+
const externalResourceIds = new Set(externalRemotes.flatMap((remote) => {
|
|
58
|
+
const id = remote.$id;
|
|
59
|
+
return typeof id === 'string' ? [id.split('#', 1)[0]] : [];
|
|
60
|
+
}));
|
|
61
|
+
enableLocalDynamicReferenceScopes(validated, dialect, externalResourceIds);
|
|
62
|
+
enableLocalDynamicReferenceScopes(projected, dialect, externalResourceIds);
|
|
63
|
+
}
|
|
64
|
+
assertProjectionValidationCoherence(validated, projected, dialect);
|
|
65
|
+
const submissionSchema = supportsSubmissionProjection([schema, ...remotes], dialect)
|
|
66
|
+
? await prepareSchema(marked.document, dialect, marked.remotes)
|
|
67
|
+
: undefined;
|
|
68
|
+
if (dynamicReferenceProjection && submissionSchema) {
|
|
69
|
+
const externalResourceIds = new Set(externalRemotes.flatMap((remote) => {
|
|
70
|
+
const id = remote.$id;
|
|
71
|
+
return typeof id === 'string' ? [id.split('#', 1)[0]] : [];
|
|
72
|
+
}));
|
|
73
|
+
enableLocalDynamicReferenceScopes(submissionSchema, dialect, externalResourceIds);
|
|
74
|
+
}
|
|
75
|
+
// A schema node can validate differently under different dynamic anchor scopes.
|
|
76
|
+
const cache = newProjectionCache(dialect, cyclicPositions(graph), marked.at, dynamicReferenceProjection, !dynamicReferenceProjection && !hasOneOf([marked.document, marked.remotes]), graph.retainedPositions);
|
|
27
77
|
return {
|
|
28
|
-
project(data) {
|
|
29
|
-
return buildProjection(projected, data, cache, limits);
|
|
78
|
+
project(data, options) {
|
|
79
|
+
return buildProjection(projected, data, cache, limits, options);
|
|
30
80
|
},
|
|
81
|
+
...(submissionSchema
|
|
82
|
+
? { projectSubmission: (data) => projectSubmissionData(validated, submissionSchema, data, dialect) }
|
|
83
|
+
: {}),
|
|
31
84
|
validate(data) {
|
|
32
85
|
return runValidation(validated, data);
|
|
33
86
|
},
|
|
@@ -36,6 +89,386 @@ export async function createAdapter(schema, config, limits) {
|
|
|
36
89
|
},
|
|
37
90
|
};
|
|
38
91
|
}
|
|
92
|
+
const DYNAMIC_REFERENCE_ANNOTATIONS = new Set([
|
|
93
|
+
'$anchor', '$comment', '$dynamicAnchor', '$id', '$schema', 'default', 'deprecated', 'description', 'examples',
|
|
94
|
+
'readOnly', 'title', 'writeOnly', POSITION,
|
|
95
|
+
]);
|
|
96
|
+
const DYNAMIC_REFERENCE_SCOPE_BARRIERS = new Set([
|
|
97
|
+
'additionalItems', 'additionalProperties', 'contains', 'contentSchema', 'not', 'patternProperties', 'prefixItems',
|
|
98
|
+
'propertyNames', 'unevaluatedItems', 'unevaluatedProperties',
|
|
99
|
+
]);
|
|
100
|
+
const SCHEMA_MAP_KEYWORDS = new Set([
|
|
101
|
+
'$defs', 'definitions', 'dependencies', 'dependentSchemas', 'patternProperties', 'properties',
|
|
102
|
+
]);
|
|
103
|
+
const SCHEMA_ARRAY_KEYWORDS = new Set(['allOf', 'anyOf', 'oneOf', 'prefixItems']);
|
|
104
|
+
const SCHEMA_SINGLE_KEYWORDS = new Set([
|
|
105
|
+
'additionalItems', 'additionalProperties', 'contains', 'contentSchema', 'else', 'if', 'not', 'propertyNames', 'then',
|
|
106
|
+
'unevaluatedItems', 'unevaluatedProperties',
|
|
107
|
+
]);
|
|
108
|
+
function enableLocalDynamicReferenceScopes(root, dialect, externalResourceIds) {
|
|
109
|
+
const compiledRoots = [
|
|
110
|
+
root,
|
|
111
|
+
...Object.values(root.context.remotes).filter((remote) => {
|
|
112
|
+
if (!isSchemaNode(remote) || remote === root || typeof remote.$id !== 'string')
|
|
113
|
+
return false;
|
|
114
|
+
return externalResourceIds.has(remote.$id.split('#', 1)[0]);
|
|
115
|
+
}),
|
|
116
|
+
];
|
|
117
|
+
const referencePolicies = new Map();
|
|
118
|
+
const recursiveReferencePolicies = new Map();
|
|
119
|
+
const unclassifiedCompiledReferencePolicies = new Set();
|
|
120
|
+
const classifiedReferencePolicies = new Set();
|
|
121
|
+
const activeValidationScope = [];
|
|
122
|
+
const validatorWrappers = new WeakMap();
|
|
123
|
+
const wrappedValidators = new WeakSet();
|
|
124
|
+
let validationDepth = 0;
|
|
125
|
+
let reductionDepth = 0;
|
|
126
|
+
for (const compiledRoot of compiledRoots) {
|
|
127
|
+
const authoredReferencePaths = collectAuthoredReferencePaths(compiledRoot.schema);
|
|
128
|
+
for (const node of compiledRoot.toSchemaNodes()) {
|
|
129
|
+
if (node.$id?.startsWith('/')) {
|
|
130
|
+
throw new TypeError('Local reference projection does not support root-relative resource identifiers.');
|
|
131
|
+
}
|
|
132
|
+
if (typeof node.schema !== 'object' || node.schema === null)
|
|
133
|
+
continue;
|
|
134
|
+
const schema = node.schema;
|
|
135
|
+
if (dialect === '2020-12' && '$recursiveRef' in schema) {
|
|
136
|
+
throw new TypeError('Local dynamic reference projection does not support $recursiveRef.');
|
|
137
|
+
}
|
|
138
|
+
const dynamicReference = dialect === '2020-12' && typeof schema.$dynamicRef === 'string';
|
|
139
|
+
const recursiveReference = dialect === '2019-09' && typeof schema.$recursiveRef === 'string';
|
|
140
|
+
if (!dynamicReference && !recursiveReference)
|
|
141
|
+
continue;
|
|
142
|
+
if (recursiveReference && schema.$recursiveRef !== '#') {
|
|
143
|
+
throw new TypeError('Local dynamic reference projection only supports the $recursiveRef value "#".');
|
|
144
|
+
}
|
|
145
|
+
const keyword = dynamicReference ? '$dynamicRef' : '$recursiveRef';
|
|
146
|
+
const reference = schema.$dynamicRef ?? schema.$recursiveRef;
|
|
147
|
+
const policyKey = referencePolicyKey(node, keyword, reference);
|
|
148
|
+
const authoredPaths = authoredReferencePaths.get(schema);
|
|
149
|
+
const parsedPath = authoredPaths ? undefined : schemaKeywordPath(compiledRoot, node.schemaLocation);
|
|
150
|
+
const keywordPaths = authoredPaths ?? (parsedPath ? [parsedPath] : undefined);
|
|
151
|
+
if (!keywordPaths) {
|
|
152
|
+
unclassifiedCompiledReferencePolicies.add(policyKey);
|
|
153
|
+
}
|
|
154
|
+
else {
|
|
155
|
+
classifiedReferencePolicies.add(policyKey);
|
|
156
|
+
for (const keywords of keywordPaths) {
|
|
157
|
+
if (!keywords.some((pathKeyword) => pathKeyword === 'properties' || pathKeyword === 'items') ||
|
|
158
|
+
keywords.some((pathKeyword) => DYNAMIC_REFERENCE_SCOPE_BARRIERS.has(pathKeyword))) {
|
|
159
|
+
throw new TypeError('Local dynamic reference projection does not support references below unsupported applicators or tuple items.');
|
|
160
|
+
}
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
if (recursiveReference && Object.keys(schema).some((keyword) => keyword !== '$recursiveRef' && keyword !== POSITION)) {
|
|
164
|
+
throw new TypeError('Local dynamic reference projection does not support siblings beside $recursiveRef.');
|
|
165
|
+
}
|
|
166
|
+
if (dynamicReference && Object.keys(schema).some((keyword) => keyword !== '$dynamicRef' && !DYNAMIC_REFERENCE_ANNOTATIONS.has(keyword))) {
|
|
167
|
+
throw new TypeError('Local dynamic reference projection does not support assertion siblings beside $dynamicRef.');
|
|
168
|
+
}
|
|
169
|
+
const staticTarget = node.resolveRef({ path: [] });
|
|
170
|
+
if (!isSchemaNode(staticTarget)) {
|
|
171
|
+
throw new TypeError(`Cannot resolve local reference at ${node.schemaLocation}.`);
|
|
172
|
+
}
|
|
173
|
+
const targetRoot = staticTarget.context.rootNode;
|
|
174
|
+
const targetRootId = targetRoot.$id?.split('#', 1)[0];
|
|
175
|
+
if (targetRoot !== root && (!targetRootId || !externalResourceIds.has(targetRootId))) {
|
|
176
|
+
throw new TypeError('Local dynamic reference projection does not support external targets unless they were loaded by the configured resource resolver.');
|
|
177
|
+
}
|
|
178
|
+
if (dynamicReference) {
|
|
179
|
+
const anchor = dynamicReferenceAnchor(schema.$dynamicRef);
|
|
180
|
+
const policy = anchor !== undefined && staticTarget.schema.$dynamicAnchor === anchor
|
|
181
|
+
? anchor
|
|
182
|
+
: undefined;
|
|
183
|
+
referencePolicies.set(referencePolicyKey(node, '$dynamicRef', schema.$dynamicRef), policy);
|
|
184
|
+
}
|
|
185
|
+
else {
|
|
186
|
+
recursiveReferencePolicies.set(referencePolicyKey(node, '$recursiveRef', schema.$recursiveRef), staticTarget.schema.$recursiveAnchor === true);
|
|
187
|
+
}
|
|
188
|
+
}
|
|
189
|
+
}
|
|
190
|
+
for (const key of unclassifiedCompiledReferencePolicies) {
|
|
191
|
+
if (!classifiedReferencePolicies.has(key)) {
|
|
192
|
+
throw new TypeError('Cannot classify a compiled local dynamic reference.');
|
|
193
|
+
}
|
|
194
|
+
}
|
|
195
|
+
const instrumented = new WeakSet();
|
|
196
|
+
const instrument = (compiledRoot) => {
|
|
197
|
+
for (const node of compiledRoot.toSchemaNodes()) {
|
|
198
|
+
if (instrumented.has(node))
|
|
199
|
+
continue;
|
|
200
|
+
instrumented.add(node);
|
|
201
|
+
const schema = node.schema;
|
|
202
|
+
node.validators = node.validators.map((validator) => {
|
|
203
|
+
if (wrappedValidators.has(validator))
|
|
204
|
+
return validator;
|
|
205
|
+
const existing = validatorWrappers.get(validator);
|
|
206
|
+
if (existing)
|
|
207
|
+
return existing;
|
|
208
|
+
const wrapped = ((params) => {
|
|
209
|
+
activeValidationScope.push({ pointer: params.pointer, node: params.node });
|
|
210
|
+
try {
|
|
211
|
+
return validator(params);
|
|
212
|
+
}
|
|
213
|
+
finally {
|
|
214
|
+
activeValidationScope.pop();
|
|
215
|
+
}
|
|
216
|
+
});
|
|
217
|
+
Object.assign(wrapped, validator);
|
|
218
|
+
wrappedValidators.add(wrapped);
|
|
219
|
+
validatorWrappers.set(validator, wrapped);
|
|
220
|
+
return wrapped;
|
|
221
|
+
});
|
|
222
|
+
const validate = node.validate.bind(node);
|
|
223
|
+
node.validate = ((data, pointer = '#', path = []) => {
|
|
224
|
+
const outermost = validationDepth === 0;
|
|
225
|
+
const inheritedLength = activeValidationScope.length;
|
|
226
|
+
if (outermost)
|
|
227
|
+
activeValidationScope.push(...path);
|
|
228
|
+
validationDepth += 1;
|
|
229
|
+
try {
|
|
230
|
+
return validate(data, pointer, path);
|
|
231
|
+
}
|
|
232
|
+
finally {
|
|
233
|
+
validationDepth -= 1;
|
|
234
|
+
if (outermost)
|
|
235
|
+
activeValidationScope.length = inheritedLength;
|
|
236
|
+
}
|
|
237
|
+
});
|
|
238
|
+
const reduceNode = node.reduceNode.bind(node);
|
|
239
|
+
node.reduceNode = ((data, options = {}) => {
|
|
240
|
+
const outermost = reductionDepth === 0;
|
|
241
|
+
const inheritedLength = activeValidationScope.length;
|
|
242
|
+
if (outermost)
|
|
243
|
+
activeValidationScope.push(...(options.path ?? []));
|
|
244
|
+
if (activeValidationScope[activeValidationScope.length - 1]?.node !== node) {
|
|
245
|
+
activeValidationScope.push({ pointer: options.pointer ?? node.evaluationPath, node });
|
|
246
|
+
}
|
|
247
|
+
reductionDepth += 1;
|
|
248
|
+
try {
|
|
249
|
+
return reduceNode(data, options);
|
|
250
|
+
}
|
|
251
|
+
finally {
|
|
252
|
+
reductionDepth -= 1;
|
|
253
|
+
activeValidationScope.length = inheritedLength;
|
|
254
|
+
}
|
|
255
|
+
});
|
|
256
|
+
if (dialect === '2020-12' && typeof schema.$dynamicRef === 'string') {
|
|
257
|
+
const key = referencePolicyKey(node, '$dynamicRef', schema.$dynamicRef);
|
|
258
|
+
if (!referencePolicies.has(key)) {
|
|
259
|
+
throw new TypeError(`Cannot verify compiled local $dynamicRef at ${node.schemaLocation}.`);
|
|
260
|
+
}
|
|
261
|
+
const anchor = referencePolicies.get(key);
|
|
262
|
+
const resolveRef = node.resolveRef.bind(node);
|
|
263
|
+
node.resolveRef = ({ pointer, path = [] } = {}) => {
|
|
264
|
+
if (anchor === undefined) {
|
|
265
|
+
const staticPath = [];
|
|
266
|
+
const resolved = resolveRef({ pointer, path: staticPath });
|
|
267
|
+
if (path !== staticPath)
|
|
268
|
+
path.push(...staticPath);
|
|
269
|
+
return resolved;
|
|
270
|
+
}
|
|
271
|
+
const scopedPath = [];
|
|
272
|
+
const scope = (validationDepth > 0 || reductionDepth > 0) && activeValidationScope.length > 0
|
|
273
|
+
? activeValidationScope
|
|
274
|
+
: path;
|
|
275
|
+
for (const entry of scope) {
|
|
276
|
+
const anchorNode = entry.node.context.dynamicAnchors[dynamicAnchorUri(entry.node.$id, anchor)];
|
|
277
|
+
if (isSchemaNode(anchorNode))
|
|
278
|
+
scopedPath.push({ pointer: entry.pointer, node: anchorNode });
|
|
279
|
+
}
|
|
280
|
+
const inheritedLength = scopedPath.length;
|
|
281
|
+
const resolved = resolveRef({ pointer, path: scopedPath });
|
|
282
|
+
if (path !== scopedPath)
|
|
283
|
+
path.push(...scopedPath.slice(inheritedLength));
|
|
284
|
+
return resolved;
|
|
285
|
+
};
|
|
286
|
+
}
|
|
287
|
+
if (dialect === '2019-09' && typeof schema.$recursiveRef === 'string') {
|
|
288
|
+
const key = referencePolicyKey(node, '$recursiveRef', schema.$recursiveRef);
|
|
289
|
+
let isRecursive = recursiveReferencePolicies.get(key);
|
|
290
|
+
if (isRecursive === undefined && !recursiveReferencePolicies.has(key)) {
|
|
291
|
+
if (schema.$recursiveRef !== '#') {
|
|
292
|
+
throw new TypeError(`Cannot verify compiled local $recursiveRef at ${node.schemaLocation}.`);
|
|
293
|
+
}
|
|
294
|
+
const staticTarget = node.resolveRef({ path: [] });
|
|
295
|
+
const targetRootId = isSchemaNode(staticTarget) ? staticTarget.context.rootNode.$id?.split('#', 1)[0] : undefined;
|
|
296
|
+
if (!isSchemaNode(staticTarget) ||
|
|
297
|
+
(staticTarget.context.rootNode !== root && (!targetRootId || !externalResourceIds.has(targetRootId)))) {
|
|
298
|
+
throw new TypeError(`Cannot verify compiled local $recursiveRef at ${node.schemaLocation}.`);
|
|
299
|
+
}
|
|
300
|
+
isRecursive = staticTarget.schema.$recursiveAnchor === true;
|
|
301
|
+
}
|
|
302
|
+
const resolveRef = node.resolveRef.bind(node);
|
|
303
|
+
node.resolveRef = ({ pointer, path = [] } = {}) => {
|
|
304
|
+
const staticPath = [];
|
|
305
|
+
const staticTarget = resolveRef({ pointer, path: staticPath });
|
|
306
|
+
if (!isRecursive || !isSchemaNode(staticTarget) || staticTarget.schema.$recursiveAnchor !== true) {
|
|
307
|
+
if (path !== staticPath)
|
|
308
|
+
path.push(...staticPath);
|
|
309
|
+
return staticTarget;
|
|
310
|
+
}
|
|
311
|
+
const scope = (validationDepth > 0 || reductionDepth > 0) && activeValidationScope.length > 0
|
|
312
|
+
? activeValidationScope
|
|
313
|
+
: path;
|
|
314
|
+
const outerAnchor = scope.find(({ node: entry }) => entry.schema.$recursiveAnchor === true);
|
|
315
|
+
if (outerAnchor) {
|
|
316
|
+
const resourceRoot = outerAnchor.node.getNodeRef('#');
|
|
317
|
+
if (isSchemaNode(resourceRoot)) {
|
|
318
|
+
path.push({ pointer: pointer, node: resourceRoot });
|
|
319
|
+
return resourceRoot;
|
|
320
|
+
}
|
|
321
|
+
}
|
|
322
|
+
if (path !== staticPath)
|
|
323
|
+
path.push(...staticPath);
|
|
324
|
+
return staticTarget;
|
|
325
|
+
};
|
|
326
|
+
}
|
|
327
|
+
const compileSchema = node.compileSchema.bind(node);
|
|
328
|
+
node.compileSchema = ((schema, evaluationPath, schemaLocation, dynamicId) => {
|
|
329
|
+
const compiled = compileSchema(schema, evaluationPath, schemaLocation, dynamicId);
|
|
330
|
+
instrument(compiled);
|
|
331
|
+
return compiled;
|
|
332
|
+
});
|
|
333
|
+
}
|
|
334
|
+
};
|
|
335
|
+
for (const compiledRoot of compiledRoots)
|
|
336
|
+
instrument(compiledRoot);
|
|
337
|
+
}
|
|
338
|
+
function referencePolicyKey(node, keyword, reference) {
|
|
339
|
+
return `${node.$id ?? ''}\u0000${keyword}\u0000${reference}`;
|
|
340
|
+
}
|
|
341
|
+
function collectAuthoredReferencePaths(schema) {
|
|
342
|
+
const paths = new WeakMap();
|
|
343
|
+
const ancestors = new Set();
|
|
344
|
+
const visit = (value, keywords) => {
|
|
345
|
+
if (typeof value !== 'object' || value === null || Array.isArray(value) || ancestors.has(value))
|
|
346
|
+
return;
|
|
347
|
+
ancestors.add(value);
|
|
348
|
+
const current = value;
|
|
349
|
+
if (typeof current.$dynamicRef === 'string' || typeof current.$recursiveRef === 'string') {
|
|
350
|
+
const found = paths.get(value) ?? [];
|
|
351
|
+
found.push(keywords);
|
|
352
|
+
paths.set(value, found);
|
|
353
|
+
}
|
|
354
|
+
for (const keyword of SCHEMA_MAP_KEYWORDS) {
|
|
355
|
+
const map = current[keyword];
|
|
356
|
+
if (typeof map !== 'object' || map === null || Array.isArray(map))
|
|
357
|
+
continue;
|
|
358
|
+
for (const child of Object.values(map))
|
|
359
|
+
visit(child, [...keywords, keyword]);
|
|
360
|
+
}
|
|
361
|
+
for (const keyword of SCHEMA_ARRAY_KEYWORDS) {
|
|
362
|
+
const branches = current[keyword];
|
|
363
|
+
if (Array.isArray(branches)) {
|
|
364
|
+
for (const child of branches)
|
|
365
|
+
visit(child, [...keywords, keyword]);
|
|
366
|
+
}
|
|
367
|
+
}
|
|
368
|
+
for (const keyword of SCHEMA_SINGLE_KEYWORDS) {
|
|
369
|
+
visit(current[keyword], [...keywords, keyword]);
|
|
370
|
+
}
|
|
371
|
+
if (Object.hasOwn(current, 'items')) {
|
|
372
|
+
const items = current.items;
|
|
373
|
+
if (Array.isArray(items)) {
|
|
374
|
+
for (const child of items)
|
|
375
|
+
visit(child, [...keywords, 'prefixItems']);
|
|
376
|
+
}
|
|
377
|
+
else {
|
|
378
|
+
visit(items, [...keywords, 'items']);
|
|
379
|
+
}
|
|
380
|
+
}
|
|
381
|
+
ancestors.delete(value);
|
|
382
|
+
};
|
|
383
|
+
visit(schema, []);
|
|
384
|
+
return paths;
|
|
385
|
+
}
|
|
386
|
+
function schemaKeywordPath(root, schemaLocation) {
|
|
387
|
+
const hashIndex = schemaLocation.indexOf('#');
|
|
388
|
+
if (hashIndex < 0)
|
|
389
|
+
return undefined;
|
|
390
|
+
const fragment = schemaLocation.slice(hashIndex + 1);
|
|
391
|
+
if (!fragment.startsWith('/'))
|
|
392
|
+
return [];
|
|
393
|
+
const segments = fragment.slice(1).split('/');
|
|
394
|
+
const keywords = [];
|
|
395
|
+
let current = root.schema;
|
|
396
|
+
let index = 0;
|
|
397
|
+
while (index < segments.length) {
|
|
398
|
+
if (typeof current !== 'object' || current === null || Array.isArray(current))
|
|
399
|
+
return undefined;
|
|
400
|
+
const schema = current;
|
|
401
|
+
const segment = segments[index];
|
|
402
|
+
if (SCHEMA_MAP_KEYWORDS.has(segment)) {
|
|
403
|
+
keywords.push(segment);
|
|
404
|
+
const map = schema[segment];
|
|
405
|
+
const member = segments[index + 1];
|
|
406
|
+
if (typeof map !== 'object' || map === null || Array.isArray(map) || member === undefined ||
|
|
407
|
+
!Object.prototype.hasOwnProperty.call(map, member))
|
|
408
|
+
return undefined;
|
|
409
|
+
current = map[member];
|
|
410
|
+
index += 2;
|
|
411
|
+
continue;
|
|
412
|
+
}
|
|
413
|
+
if (SCHEMA_ARRAY_KEYWORDS.has(segment)) {
|
|
414
|
+
keywords.push(segment);
|
|
415
|
+
const array = schema[segment];
|
|
416
|
+
const itemIndex = Number(segments[index + 1]);
|
|
417
|
+
if (!Array.isArray(array) || !Number.isInteger(itemIndex) || itemIndex < 0 || itemIndex >= array.length) {
|
|
418
|
+
return undefined;
|
|
419
|
+
}
|
|
420
|
+
current = array[itemIndex];
|
|
421
|
+
index += 2;
|
|
422
|
+
continue;
|
|
423
|
+
}
|
|
424
|
+
if (segment === 'items') {
|
|
425
|
+
const items = schema.items;
|
|
426
|
+
if (Array.isArray(items)) {
|
|
427
|
+
keywords.push('prefixItems');
|
|
428
|
+
const itemIndex = Number(segments[index + 1]);
|
|
429
|
+
if (!Number.isInteger(itemIndex) || itemIndex < 0 || itemIndex >= items.length)
|
|
430
|
+
return undefined;
|
|
431
|
+
current = items[itemIndex];
|
|
432
|
+
index += 2;
|
|
433
|
+
}
|
|
434
|
+
else {
|
|
435
|
+
keywords.push(segment);
|
|
436
|
+
if (!(segment in schema))
|
|
437
|
+
return undefined;
|
|
438
|
+
current = items;
|
|
439
|
+
index += 1;
|
|
440
|
+
}
|
|
441
|
+
continue;
|
|
442
|
+
}
|
|
443
|
+
if (SCHEMA_SINGLE_KEYWORDS.has(segment)) {
|
|
444
|
+
keywords.push(segment);
|
|
445
|
+
if (!(segment in schema))
|
|
446
|
+
return undefined;
|
|
447
|
+
current = schema[segment];
|
|
448
|
+
index += 1;
|
|
449
|
+
continue;
|
|
450
|
+
}
|
|
451
|
+
return undefined;
|
|
452
|
+
}
|
|
453
|
+
return keywords;
|
|
454
|
+
}
|
|
455
|
+
function dynamicAnchorUri(resourceId, anchor) {
|
|
456
|
+
const currentId = resourceId ?? '#';
|
|
457
|
+
return `${currentId.replace(/#.*$/, '')}#${anchor}`;
|
|
458
|
+
}
|
|
459
|
+
function dynamicReferenceAnchor(reference) {
|
|
460
|
+
const hash = reference.indexOf('#');
|
|
461
|
+
if (hash < 0)
|
|
462
|
+
return undefined;
|
|
463
|
+
let fragment;
|
|
464
|
+
try {
|
|
465
|
+
fragment = decodeURIComponent(reference.slice(hash + 1));
|
|
466
|
+
}
|
|
467
|
+
catch {
|
|
468
|
+
throw new TypeError(`Local dynamic reference projection cannot decode anchor in ${reference}.`);
|
|
469
|
+
}
|
|
470
|
+
return fragment === '' || fragment.startsWith('/') ? undefined : fragment;
|
|
471
|
+
}
|
|
39
472
|
// json-schema-library's `draft` compile option uses "draft-2019-09"/"draft-2020-12" rather
|
|
40
473
|
// than this package's "2019-09"/"2020-12" Dialect values.
|
|
41
474
|
function toDraftOption(dialect) {
|
|
@@ -51,18 +484,34 @@ async function prepareSchema(schema, dialect, remotes) {
|
|
|
51
484
|
// annotation unless the format-assertion vocabulary is declared, so asserting it
|
|
52
485
|
// is a deviation rather than a stricter setting.
|
|
53
486
|
const formatAssertion = dialect === 'draft-07' ? undefined : false;
|
|
54
|
-
const root = compileSchema(schema, {
|
|
487
|
+
const root = compileSchema(materializeLocalPointerAliases(schema, dialect), {
|
|
488
|
+
drafts: DRAFTS,
|
|
55
489
|
draft: toDraftOption(dialect),
|
|
56
490
|
formatAssertion,
|
|
57
|
-
remotes,
|
|
491
|
+
remotes: remotes?.map((remote) => materializeLocalPointerAliases(remote, dialect, true)),
|
|
58
492
|
});
|
|
59
493
|
fixRootReference(root, dialect);
|
|
60
494
|
return root;
|
|
61
495
|
}
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
496
|
+
function hasOneOf(value, visited = new WeakSet()) {
|
|
497
|
+
if (typeof value !== 'object' || value === null || visited.has(value))
|
|
498
|
+
return false;
|
|
499
|
+
visited.add(value);
|
|
500
|
+
let descriptors;
|
|
501
|
+
try {
|
|
502
|
+
descriptors = Object.getOwnPropertyDescriptors(value);
|
|
503
|
+
}
|
|
504
|
+
catch {
|
|
505
|
+
return true;
|
|
506
|
+
}
|
|
507
|
+
const properties = Object.values(descriptors);
|
|
508
|
+
if (properties.some((descriptor) => !('value' in descriptor)))
|
|
509
|
+
return true;
|
|
510
|
+
const oneOf = descriptors.oneOf;
|
|
511
|
+
if (oneOf && Array.isArray(oneOf.value) && oneOf.value.length > 0) {
|
|
512
|
+
return true;
|
|
513
|
+
}
|
|
514
|
+
return properties.some((descriptor) => hasOneOf(descriptor.value, visited));
|
|
66
515
|
}
|
|
67
516
|
// jsl error codes are kebab-case ("min-length-error"); ValidationError.keyword is expected
|
|
68
517
|
// to be the JSON Schema keyword itself ("minLength"). Unrecognized codes fall back to a
|
|
@@ -125,16 +574,21 @@ function toKeyword(code) {
|
|
|
125
574
|
const withoutSuffix = code.replace(/-(error|warning)$/, '');
|
|
126
575
|
return withoutSuffix.replace(/-([a-z0-9])/g, (_, char) => char.toUpperCase());
|
|
127
576
|
}
|
|
128
|
-
function mapValidationError(error) {
|
|
577
|
+
function mapValidationError(error, resolve) {
|
|
129
578
|
const code = typeof error.code === 'string' ? error.code : String(error.code);
|
|
130
|
-
const
|
|
579
|
+
const data = (error.data ?? {});
|
|
580
|
+
const basePointer = typeof data.pointer === 'string' ? data.pointer : '#';
|
|
131
581
|
// required-property-error reports the *parent* object's pointer with the missing property
|
|
132
582
|
// name in data.key; consumers expect the error located at the missing property itself.
|
|
133
|
-
const
|
|
134
|
-
|
|
135
|
-
const
|
|
583
|
+
const missingKey = code === 'required-property-error' && typeof data.key === 'string' ? data.key : undefined;
|
|
584
|
+
// These two report the parent as data.value; the child's own key says which child failed.
|
|
585
|
+
const lastKey = code === 'no-additional-properties-error' && typeof data.property === 'string'
|
|
586
|
+
? data.property
|
|
587
|
+
: code === 'additional-items-error' && data.key !== undefined
|
|
588
|
+
? String(data.key)
|
|
589
|
+
: undefined;
|
|
136
590
|
return {
|
|
137
|
-
instancePointer:
|
|
591
|
+
instancePointer: resolve(basePointer, { code, value: data.value, missingKey, lastKey }),
|
|
138
592
|
keyword: toKeyword(code),
|
|
139
593
|
message: error.message,
|
|
140
594
|
params: (error.data ?? {}),
|
|
@@ -142,9 +596,10 @@ function mapValidationError(error) {
|
|
|
142
596
|
}
|
|
143
597
|
function runValidation(prepared, data) {
|
|
144
598
|
const result = prepared.validate(data);
|
|
599
|
+
const resolve = pointerResolver(data);
|
|
145
600
|
return {
|
|
146
601
|
valid: result.valid,
|
|
147
|
-
errors: result.errors.map(mapValidationError),
|
|
602
|
+
errors: result.errors.map((error) => mapValidationError(error, resolve)),
|
|
148
603
|
};
|
|
149
604
|
}
|
|
150
605
|
function runValidationAt(prepared, data, pointer) {
|
package/dist/adapter.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"adapter.js","sourceRoot":"","sources":["../src/adapter.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,aAAa,GAKd,MAAM,qBAAqB,CAAA;AAQ5B,OAAO,EAAE,aAAa,EAAgB,MAAM,cAAc,CAAA;AAC1D,OAAO,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAA;AAC5E,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAA;AAClD,OAAO,EAAE,eAAe,EAAE,cAAc,EAAyB,MAAM,iBAAiB,CAAA;AACxF,OAAO,EAAE,0BAA0B,EAAE,MAAM,gBAAgB,CAAA;AAC3D,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAA;AACtD,OAAO,EAAE,gBAAgB,EAAE,wBAAwB,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AAG9G,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,MAAe,EACf,MAAsB;IAEtB,OAAO,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,cAAc,CAAC,CAAA;AACtD,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,MAAe,EACf,MAAiC,EACjC,MAAwB;IAExB,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,EAAE;QACpC,cAAc,EAAE,MAAM,EAAE,cAAc,IAAI,UAAU;KACrD,CAAC,CAAA;IAEF,qGAAqG;IACrG,MAAM,UAAU,GAAG,kBAAkB,CAAC,MAAM,CAAC,CAAA;IAC7C,MAAM,OAAO,GAAG,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,eAAe,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;IACrF,+GAA+G;IAC/G,MAAM,QAAQ,GAAG,0BAA0B,CAAC,MAAM,CAAC,CAAA;IACnD,MAAM,KAAK,GAAG,gBAAgB,CAAC,QAAQ,EAAE,OAAO,EAAE,OAAO,IAAI,EAAE,CAAC,CAAA;IAChE,wBAAwB,CAAC,KAAK,CAAC,CAAA;IAC/B,MAAM,MAAM,GAAG,aAAa,CAAC,KAAK,EAAE,QAAQ,EAAE,OAAO,IAAI,EAAE,CAAC,CAAA;IAC5D,MAAM,SAAS,GAAG,MAAM,aAAa,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,CAAA;IAC/D,MAAM,SAAS,GAAG,MAAM,aAAa,CAAC,MAAM,CAAC,QAAQ,EAAE,OAAO,EAAE,OAAO,IAAK,MAAM,CAAC,OAAwB,CAAC,CAAA;IAC5G,MAAM,KAAK,GAAG,kBAAkB,CAAC,OAAO,EAAE,eAAe,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC,EAAE,CAAC,CAAA;IAE5E,OAAO;QACL,OAAO,CAAC,IAAa;YACnB,OAAO,eAAe,CAAC,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,CAAC,CAAA;QACxD,CAAC;QAED,QAAQ,CAAC,IAAa;YACpB,OAAO,aAAa,CAAC,SAAS,EAAE,IAAI,CAAC,CAAA;QACvC,CAAC;QAED,UAAU,CAAC,IAAa,EAAE,OAAoB;YAC5C,OAAO,eAAe,CAAC,SAAS,EAAE,IAAI,EAAE,OAAO,CAAC,CAAA;QAClD,CAAC;KACF,CAAA;AACH,CAAC;AAED,2FAA2F;AAC3F,0DAA0D;AAC1D,SAAS,aAAa,CAAC,OAAgB;IACrC,OAAO,OAAO,KAAK,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,OAAO,EAAE,CAAA;AACjE,CAAC;AAED,2FAA2F;AAC3F,mFAAmF;AACnF,qEAAqE;AACrE,KAAK,UAAU,aAAa,CAC1B,MAAe,EACf,OAAgB,EAChB,OAAiC;IAEjC,+EAA+E;IAC/E,gFAAgF;IAChF,iFAAiF;IACjF,iFAAiF;IACjF,iDAAiD;IACjD,MAAM,eAAe,GAAG,OAAO,KAAK,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAA;IAClE,MAAM,IAAI,GAAG,aAAa,CAAC,MAAoC,EAAE;QAC/D,KAAK,EAAE,aAAa,CAAC,OAAO,CAAC;QAC7B,eAAe;QACf,OAAO;KACR,CAAC,CAAA;IACF,gBAAgB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;IAC/B,OAAO,IAAI,CAAA;AACb,CAAC;AAED,0FAA0F;AAC1F,kFAAkF;AAClF,SAAS,iBAAiB,CAAC,UAAkB;IAC3C,OAAO,UAAU,KAAK,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAA;AAC/D,CAAC;AAED,2FAA2F;AAC3F,wFAAwF;AACxF,8FAA8F;AAC9F,MAAM,eAAe,GAA2B;IAC9C,wBAAwB,EAAE,iBAAiB;IAC3C,6BAA6B,EAAE,sBAAsB;IACrD,cAAc,EAAE,OAAO;IACvB,cAAc,EAAE,OAAO;IACvB,aAAa,EAAE,OAAO;IACtB,oBAAoB,EAAE,UAAU;IAChC,sBAAsB,EAAE,UAAU;IAClC,gBAAgB,EAAE,UAAU;IAC5B,oBAAoB,EAAE,aAAa;IACnC,oBAAoB,EAAE,aAAa;IACnC,YAAY,EAAE,MAAM;IACpB,yBAAyB,EAAE,kBAAkB;IAC7C,yBAAyB,EAAE,kBAAkB;IAC7C,0BAA0B,EAAE,KAAK;IACjC,oBAAoB,EAAE,MAAM;IAC5B,6BAA6B,EAAE,eAAe;IAC9C,eAAe,EAAE,SAAS;IAC1B,iBAAiB,EAAE,UAAU;IAC7B,kBAAkB,EAAE,WAAW;IAC/B,sBAAsB,EAAE,eAAe;IACvC,eAAe,EAAE,SAAS;IAC1B,iBAAiB,EAAE,UAAU;IAC7B,qBAAqB,EAAE,UAAU;IACjC,kBAAkB,EAAE,WAAW;IAC/B,sBAAsB,EAAE,WAAW;IACnC,sBAAsB,EAAE,eAAe;IACvC,0BAA0B,EAAE,OAAO;IACnC,0BAA0B,EAAE,mBAAmB;IAC/C,iCAAiC,EAAE,OAAO;IAC1C,+BAA+B,EAAE,OAAO;IACxC,mBAAmB,EAAE,YAAY;IACjC,uBAAuB,EAAE,OAAO;IAChC,gCAAgC,EAAE,sBAAsB;IACxD,WAAW,EAAE,KAAK;IAClB,cAAc,EAAE,OAAO;IACvB,uBAAuB,EAAE,OAAO;IAChC,eAAe,EAAE,SAAS;IAC1B,0BAA0B,EAAE,mBAAmB;IAC/C,WAAW,EAAE,MAAM;IACnB,yBAAyB,EAAE,UAAU;IACrC,YAAY,EAAE,MAAM;IACpB,uBAAuB,EAAE,MAAM;IAC/B,yBAAyB,EAAE,kBAAkB;IAC7C,4BAA4B,EAAE,uBAAuB;IACrD,oBAAoB,EAAE,aAAa;IACnC,wBAAwB,EAAE,sBAAsB;IAChD,uBAAuB,EAAE,MAAM;CAChC,CAAA;AAED,SAAS,SAAS,CAAC,IAAY;IAC7B,MAAM,KAAK,GAAG,eAAe,CAAC,IAAI,CAAC,CAAA;IACnC,IAAI,KAAK;QAAE,OAAO,KAAK,CAAA;IACvB,IAAI,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC;QAAE,OAAO,QAAQ,CAAA;IAC/C,MAAM,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC,mBAAmB,EAAE,EAAE,CAAC,CAAA;IAC3D,OAAO,aAAa,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC,CAAC,EAAE,IAAY,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAA;AACvF,CAAC;AAED,SAAS,kBAAkB,CAAC,KAAgB;IAC1C,MAAM,IAAI,GAAG,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;IAC7E,MAAM,WAAW,GAAG,OAAO,KAAK,CAAC,IAAI,EAAE,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAA;IACtF,0FAA0F;IAC1F,uFAAuF;IACvF,MAAM,GAAG,GAAI,KAAK,CAAC,IAA4C,EAAE,GAAG,CAAA;IACpE,MAAM,UAAU,GAAG,IAAI,KAAK,yBAAyB,IAAI,OAAO,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAA;IAClG,MAAM,OAAO,GAAG,UAAU,CAAC,CAAC,CAAC,GAAG,WAAW,IAAI,UAAU,EAAE,CAAC,CAAC,CAAC,WAAW,CAAA;IACzE,OAAO;QACL,eAAe,EAAE,iBAAiB,CAAC,OAAO,CAAC;QAC3C,OAAO,EAAE,SAAS,CAAC,IAAI,CAAC;QACxB,OAAO,EAAE,KAAK,CAAC,OAAO;QACtB,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,IAAI,EAAE,CAA4B;KACtD,CAAA;AACH,CAAC;AAED,SAAS,aAAa,CAAC,QAAoB,EAAE,IAAa;IACxD,MAAM,MAAM,GAAG,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;IACtC,OAAO;QACL,KAAK,EAAE,MAAM,CAAC,KAAK;QACnB,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,kBAAkB,CAAC;KAC9C,CAAA;AACH,CAAC;AAED,SAAS,eAAe,CACtB,QAAoB,EACpB,IAAa,EACb,OAAoB;IAEpB,MAAM,MAAM,GAAG,OAAiB,CAAA;IAChC,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,aAAa,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAA;IACvD,IAAI,MAAM,KAAK,EAAE;QAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,CAAA;IAE3C,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAC1B,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,eAAe,KAAK,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,UAAU,CAAC,GAAG,MAAM,GAAG,CAAC,CAC9F,CAAA;IACD,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,CAAA;AACvD,CAAC"}
|
|
1
|
+
{"version":3,"file":"adapter.js","sourceRoot":"","sources":["../src/adapter.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bare-maps.d.ts","sourceRoot":"","sources":["../src/bare-maps.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgE,KAAK,KAAK,EAAmB,MAAM,qBAAqB,CAAA;AAyC/H,eAAO,MAAM,MAAM,EAAE,KAAK,EAAwE,CAAA"}
|