@depup/typebox 1.3.27-depup.0 → 1.3.30-depup.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -2
- package/build/schema/build.mjs +2 -2
- package/build/schema/check.mjs +1 -1
- package/build/schema/engine/_context.d.mts +5 -1
- package/build/schema/engine/_context.mjs +16 -3
- package/build/schema/engine/_functions.d.mts +2 -2
- package/build/schema/engine/_functions.mjs +1 -1
- package/build/schema/engine/_reducer.d.mts +3 -3
- package/build/schema/engine/_refine.d.mts +5 -5
- package/build/schema/engine/_refine.mjs +4 -7
- package/build/schema/engine/_stack.d.mts +34 -20
- package/build/schema/engine/_stack.mjs +143 -202
- package/build/schema/engine/additionalItems.d.mts +4 -4
- package/build/schema/engine/additionalProperties.d.mts +8 -8
- package/build/schema/engine/additionalProperties.mjs +10 -14
- package/build/schema/engine/allOf.d.mts +4 -4
- package/build/schema/engine/allOf.mjs +1 -1
- package/build/schema/engine/anyOf.d.mts +4 -4
- package/build/schema/engine/anyOf.mjs +4 -9
- package/build/schema/engine/boolean.d.mts +4 -4
- package/build/schema/engine/boolean.mjs +2 -6
- package/build/schema/engine/const.d.mts +4 -4
- package/build/schema/engine/const.mjs +2 -6
- package/build/schema/engine/contains.d.mts +4 -4
- package/build/schema/engine/contains.mjs +2 -6
- package/build/schema/engine/dependencies.d.mts +4 -4
- package/build/schema/engine/dependencies.mjs +3 -6
- package/build/schema/engine/dependentRequired.d.mts +4 -4
- package/build/schema/engine/dependentRequired.mjs +2 -6
- package/build/schema/engine/dependentSchemas.d.mts +4 -4
- package/build/schema/engine/dynamicRef.d.mts +4 -4
- package/build/schema/engine/dynamicRef.mjs +11 -7
- package/build/schema/engine/enum.d.mts +4 -4
- package/build/schema/engine/enum.mjs +2 -6
- package/build/schema/engine/exclusiveMaximum.d.mts +4 -4
- package/build/schema/engine/exclusiveMaximum.mjs +2 -6
- package/build/schema/engine/exclusiveMinimum.d.mts +4 -4
- package/build/schema/engine/exclusiveMinimum.mjs +2 -6
- package/build/schema/engine/format.d.mts +4 -4
- package/build/schema/engine/format.mjs +2 -6
- package/build/schema/engine/if.d.mts +4 -4
- package/build/schema/engine/if.mjs +5 -13
- package/build/schema/engine/items.d.mts +4 -4
- package/build/schema/engine/items.mjs +1 -1
- package/build/schema/engine/maxContains.d.mts +4 -4
- package/build/schema/engine/maxContains.mjs +2 -6
- package/build/schema/engine/maxItems.d.mts +4 -4
- package/build/schema/engine/maxItems.mjs +2 -6
- package/build/schema/engine/maxLength.d.mts +4 -4
- package/build/schema/engine/maxLength.mjs +2 -6
- package/build/schema/engine/maxProperties.d.mts +4 -4
- package/build/schema/engine/maxProperties.mjs +2 -6
- package/build/schema/engine/maximum.d.mts +4 -4
- package/build/schema/engine/maximum.mjs +2 -6
- package/build/schema/engine/minContains.d.mts +4 -4
- package/build/schema/engine/minContains.mjs +2 -6
- package/build/schema/engine/minItems.d.mts +5 -5
- package/build/schema/engine/minItems.mjs +2 -6
- package/build/schema/engine/minLength.d.mts +4 -4
- package/build/schema/engine/minLength.mjs +2 -6
- package/build/schema/engine/minProperties.d.mts +4 -4
- package/build/schema/engine/minProperties.mjs +2 -6
- package/build/schema/engine/minimum.d.mts +4 -4
- package/build/schema/engine/minimum.mjs +2 -6
- package/build/schema/engine/multipleOf.d.mts +4 -4
- package/build/schema/engine/multipleOf.mjs +2 -6
- package/build/schema/engine/not.d.mts +4 -4
- package/build/schema/engine/not.mjs +4 -8
- package/build/schema/engine/oneOf.d.mts +4 -4
- package/build/schema/engine/oneOf.mjs +5 -10
- package/build/schema/engine/pattern.d.mts +4 -4
- package/build/schema/engine/pattern.mjs +3 -7
- package/build/schema/engine/patternProperties.d.mts +4 -4
- package/build/schema/engine/patternProperties.mjs +1 -1
- package/build/schema/engine/prefixItems.d.mts +4 -4
- package/build/schema/engine/prefixItems.mjs +1 -1
- package/build/schema/engine/properties.d.mts +4 -4
- package/build/schema/engine/properties.mjs +1 -1
- package/build/schema/engine/propertyNames.d.mts +4 -4
- package/build/schema/engine/propertyNames.mjs +3 -7
- package/build/schema/engine/recursiveRef.d.mts +4 -4
- package/build/schema/engine/recursiveRef.mjs +11 -7
- package/build/schema/engine/ref.d.mts +4 -4
- package/build/schema/engine/ref.mjs +17 -13
- package/build/schema/engine/required.d.mts +4 -4
- package/build/schema/engine/required.mjs +2 -6
- package/build/schema/engine/schema.d.mts +7 -7
- package/build/schema/engine/schema.mjs +131 -133
- package/build/schema/engine/type.d.mts +4 -4
- package/build/schema/engine/type.mjs +2 -6
- package/build/schema/engine/unevaluatedItems.d.mts +4 -4
- package/build/schema/engine/unevaluatedItems.mjs +3 -7
- package/build/schema/engine/unevaluatedProperties.d.mts +4 -4
- package/build/schema/engine/unevaluatedProperties.mjs +3 -7
- package/build/schema/engine/uniqueItems.d.mts +4 -4
- package/build/schema/engine/uniqueItems.mjs +2 -6
- package/build/schema/errors.mjs +1 -1
- package/build/schema/intern/intern.d.mts +6 -9
- package/build/schema/intern/intern.mjs +90 -56
- package/build/schema/meta/draft_2019_09.d.mts +2 -0
- package/build/schema/meta/draft_2019_09.mjs +288 -0
- package/build/schema/meta/draft_2020_12.d.mts +2 -0
- package/build/schema/meta/draft_2020_12.mjs +300 -0
- package/build/schema/meta/draft_3.d.mts +2 -0
- package/build/schema/meta/draft_3.mjs +143 -0
- package/build/schema/meta/draft_4.d.mts +2 -0
- package/build/schema/meta/draft_4.mjs +149 -0
- package/build/schema/meta/draft_6.d.mts +2 -0
- package/build/schema/meta/draft_6.mjs +155 -0
- package/build/schema/meta/draft_7.d.mts +2 -0
- package/build/schema/meta/draft_7.mjs +172 -0
- package/build/schema/meta/index.d.mts +2 -0
- package/build/schema/meta/index.mjs +2 -0
- package/build/schema/meta/meta.d.mts +9 -0
- package/build/schema/meta/meta.mjs +15 -0
- package/build/schema/meta/schema.d.mts +6 -0
- package/build/schema/meta/schema.mjs +1 -0
- package/build/schema/resolve/resolve.d.mts +6 -32
- package/build/schema/resolve/resolve.mjs +231 -227
- package/build/schema/schema.d.mts +1 -0
- package/build/schema/schema.mjs +1 -0
- package/changes.json +1 -1
- package/package.json +3 -3
- package/readme.md +51 -85
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
// deno-fmt-ignore-file
|
|
2
2
|
import * as Schema from '../types/index.mjs';
|
|
3
3
|
import { BuildRefine, CheckRefine, ErrorRefine } from './_refine.mjs';
|
|
4
|
+
import * as Stack from './_stack.mjs';
|
|
4
5
|
import { EmitGuard as E, Guard as G } from '../../guard/index.mjs';
|
|
5
6
|
import { BuildAdditionalItems, CheckAdditionalItems, ErrorAdditionalItems } from './additionalItems.mjs';
|
|
6
7
|
import { BuildAdditionalProperties, CheckAdditionalProperties, ErrorAdditionalProperties } from './additionalProperties.mjs';
|
|
@@ -132,34 +133,34 @@ export function BuildSchemaPushStack(stack, context, schema, value) {
|
|
|
132
133
|
: BuildSchema(stack, context, schema, value);
|
|
133
134
|
}
|
|
134
135
|
export function BuildSchema(stack, context, schema, value) {
|
|
135
|
-
|
|
136
|
+
const current = Stack.NextStack(stack, schema);
|
|
136
137
|
const conditions = [];
|
|
137
138
|
if (Schema.IsSchemaBoolean(schema))
|
|
138
|
-
return BuildSchemaBoolean(
|
|
139
|
+
return BuildSchemaBoolean(current, context, schema, value);
|
|
139
140
|
if (Schema.IsType(schema))
|
|
140
|
-
conditions.push(BuildType(
|
|
141
|
+
conditions.push(BuildType(current, context, schema, value));
|
|
141
142
|
if (HasObjectKeywords(schema)) {
|
|
142
143
|
const constraints = [];
|
|
143
144
|
if (Schema.IsRequired(schema))
|
|
144
|
-
constraints.push(BuildRequired(
|
|
145
|
+
constraints.push(BuildRequired(current, context, schema, value));
|
|
145
146
|
if (Schema.IsAdditionalProperties(schema))
|
|
146
|
-
constraints.push(BuildAdditionalProperties(
|
|
147
|
+
constraints.push(BuildAdditionalProperties(current, context, schema, value));
|
|
147
148
|
if (Schema.IsDependencies(schema))
|
|
148
|
-
constraints.push(BuildDependencies(
|
|
149
|
+
constraints.push(BuildDependencies(current, context, schema, value));
|
|
149
150
|
if (Schema.IsDependentRequired(schema))
|
|
150
|
-
constraints.push(BuildDependentRequired(
|
|
151
|
+
constraints.push(BuildDependentRequired(current, context, schema, value));
|
|
151
152
|
if (Schema.IsDependentSchemas(schema))
|
|
152
|
-
constraints.push(BuildDependentSchemas(
|
|
153
|
+
constraints.push(BuildDependentSchemas(current, context, schema, value));
|
|
153
154
|
if (Schema.IsPatternProperties(schema))
|
|
154
|
-
constraints.push(BuildPatternProperties(
|
|
155
|
+
constraints.push(BuildPatternProperties(current, context, schema, value));
|
|
155
156
|
if (Schema.IsProperties(schema))
|
|
156
|
-
constraints.push(BuildProperties(
|
|
157
|
+
constraints.push(BuildProperties(current, context, schema, value));
|
|
157
158
|
if (Schema.IsPropertyNames(schema))
|
|
158
|
-
constraints.push(BuildPropertyNames(
|
|
159
|
+
constraints.push(BuildPropertyNames(current, context, schema, value));
|
|
159
160
|
if (Schema.IsMinProperties(schema))
|
|
160
|
-
constraints.push(BuildMinProperties(
|
|
161
|
+
constraints.push(BuildMinProperties(current, context, schema, value));
|
|
161
162
|
if (Schema.IsMaxProperties(schema))
|
|
162
|
-
constraints.push(BuildMaxProperties(
|
|
163
|
+
constraints.push(BuildMaxProperties(current, context, schema, value));
|
|
163
164
|
const reduced = E.ReduceAnd(constraints);
|
|
164
165
|
const guarded = E.Or(E.Not(E.IsObjectNotArray(value)), reduced);
|
|
165
166
|
conditions.push(HasObjectType(schema) ? reduced : guarded);
|
|
@@ -167,23 +168,23 @@ export function BuildSchema(stack, context, schema, value) {
|
|
|
167
168
|
if (HasArrayKeywords(schema)) {
|
|
168
169
|
const constraints = [];
|
|
169
170
|
if (Schema.IsAdditionalItems(schema))
|
|
170
|
-
constraints.push(BuildAdditionalItems(
|
|
171
|
+
constraints.push(BuildAdditionalItems(current, context, schema, value));
|
|
171
172
|
if (Schema.IsContains(schema))
|
|
172
|
-
constraints.push(BuildContains(
|
|
173
|
+
constraints.push(BuildContains(current, context, schema, value));
|
|
173
174
|
if (Schema.IsItems(schema))
|
|
174
|
-
constraints.push(BuildItems(
|
|
175
|
+
constraints.push(BuildItems(current, context, schema, value));
|
|
175
176
|
if (Schema.IsMaxContains(schema))
|
|
176
|
-
constraints.push(BuildMaxContains(
|
|
177
|
+
constraints.push(BuildMaxContains(current, context, schema, value));
|
|
177
178
|
if (Schema.IsMaxItems(schema))
|
|
178
|
-
constraints.push(BuildMaxItems(
|
|
179
|
+
constraints.push(BuildMaxItems(current, context, schema, value));
|
|
179
180
|
if (Schema.IsMinContains(schema))
|
|
180
|
-
constraints.push(BuildMinContains(
|
|
181
|
+
constraints.push(BuildMinContains(current, context, schema, value));
|
|
181
182
|
if (Schema.IsMinItems(schema))
|
|
182
|
-
constraints.push(BuildMinItems(
|
|
183
|
+
constraints.push(BuildMinItems(current, context, schema, value));
|
|
183
184
|
if (Schema.IsPrefixItems(schema))
|
|
184
|
-
constraints.push(BuildPrefixItems(
|
|
185
|
+
constraints.push(BuildPrefixItems(current, context, schema, value));
|
|
185
186
|
if (Schema.IsUniqueItems(schema))
|
|
186
|
-
constraints.push(BuildUniqueItems(
|
|
187
|
+
constraints.push(BuildUniqueItems(current, context, schema, value));
|
|
187
188
|
const reduced = E.ReduceAnd(constraints);
|
|
188
189
|
const guarded = E.Or(E.Not(E.IsArray(value)), reduced);
|
|
189
190
|
conditions.push(HasArrayType(schema) ? reduced : guarded);
|
|
@@ -191,13 +192,13 @@ export function BuildSchema(stack, context, schema, value) {
|
|
|
191
192
|
if (HasStringKeywords(schema)) {
|
|
192
193
|
const constraints = [];
|
|
193
194
|
if (Schema.IsMaxLength(schema))
|
|
194
|
-
constraints.push(BuildMaxLength(
|
|
195
|
+
constraints.push(BuildMaxLength(current, context, schema, value));
|
|
195
196
|
if (Schema.IsMinLength(schema))
|
|
196
|
-
constraints.push(BuildMinLength(
|
|
197
|
+
constraints.push(BuildMinLength(current, context, schema, value));
|
|
197
198
|
if (Schema.IsFormat(schema))
|
|
198
|
-
constraints.push(BuildFormat(
|
|
199
|
+
constraints.push(BuildFormat(current, context, schema, value));
|
|
199
200
|
if (Schema.IsPattern(schema))
|
|
200
|
-
constraints.push(BuildPattern(
|
|
201
|
+
constraints.push(BuildPattern(current, context, schema, value));
|
|
201
202
|
const reduced = E.ReduceAnd(constraints);
|
|
202
203
|
const guarded = E.Or(E.Not(E.IsString(value)), reduced);
|
|
203
204
|
conditions.push(HasStringType(schema) ? reduced : guarded);
|
|
@@ -205,47 +206,46 @@ export function BuildSchema(stack, context, schema, value) {
|
|
|
205
206
|
if (HasNumberKeywords(schema)) {
|
|
206
207
|
const constraints = [];
|
|
207
208
|
if (Schema.IsExclusiveMaximum(schema))
|
|
208
|
-
constraints.push(BuildExclusiveMaximum(
|
|
209
|
+
constraints.push(BuildExclusiveMaximum(current, context, schema, value));
|
|
209
210
|
if (Schema.IsExclusiveMinimum(schema))
|
|
210
|
-
constraints.push(BuildExclusiveMinimum(
|
|
211
|
+
constraints.push(BuildExclusiveMinimum(current, context, schema, value));
|
|
211
212
|
if (Schema.IsMaximum(schema))
|
|
212
|
-
constraints.push(BuildMaximum(
|
|
213
|
+
constraints.push(BuildMaximum(current, context, schema, value));
|
|
213
214
|
if (Schema.IsMinimum(schema))
|
|
214
|
-
constraints.push(BuildMinimum(
|
|
215
|
+
constraints.push(BuildMinimum(current, context, schema, value));
|
|
215
216
|
if (Schema.IsMultipleOf(schema))
|
|
216
|
-
constraints.push(BuildMultipleOf(
|
|
217
|
+
constraints.push(BuildMultipleOf(current, context, schema, value));
|
|
217
218
|
const reduced = E.ReduceAnd(constraints);
|
|
218
219
|
const guarded = E.Or(E.Not(E.Or(E.IsNumber(value), E.IsBigInt(value))), reduced);
|
|
219
220
|
conditions.push(HasNumberType(schema) ? reduced : guarded);
|
|
220
221
|
}
|
|
221
222
|
if (Schema.IsRef(schema))
|
|
222
|
-
conditions.push(BuildRef(
|
|
223
|
+
conditions.push(BuildRef(current, context, schema, value));
|
|
223
224
|
if (Schema.IsRecursiveRef(schema))
|
|
224
|
-
conditions.push(BuildRecursiveRef(
|
|
225
|
+
conditions.push(BuildRecursiveRef(current, context, schema, value));
|
|
225
226
|
if (Schema.IsDynamicRef(schema))
|
|
226
|
-
conditions.push(BuildDynamicRef(
|
|
227
|
+
conditions.push(BuildDynamicRef(current, context, schema, value));
|
|
227
228
|
if (Schema.IsConst(schema))
|
|
228
|
-
conditions.push(BuildConst(
|
|
229
|
+
conditions.push(BuildConst(current, context, schema, value));
|
|
229
230
|
if (Schema.IsEnum(schema))
|
|
230
|
-
conditions.push(BuildEnum(
|
|
231
|
+
conditions.push(BuildEnum(current, context, schema, value));
|
|
231
232
|
if (Schema.IsIf(schema))
|
|
232
|
-
conditions.push(BuildIf(
|
|
233
|
+
conditions.push(BuildIf(current, context, schema, value));
|
|
233
234
|
if (Schema.IsNot(schema))
|
|
234
|
-
conditions.push(BuildNot(
|
|
235
|
+
conditions.push(BuildNot(current, context, schema, value));
|
|
235
236
|
if (Schema.IsAllOf(schema))
|
|
236
|
-
conditions.push(BuildAllOf(
|
|
237
|
+
conditions.push(BuildAllOf(current, context, schema, value));
|
|
237
238
|
if (Schema.IsAnyOf(schema))
|
|
238
|
-
conditions.push(BuildAnyOf(
|
|
239
|
+
conditions.push(BuildAnyOf(current, context, schema, value));
|
|
239
240
|
if (Schema.IsOneOf(schema))
|
|
240
|
-
conditions.push(BuildOneOf(
|
|
241
|
+
conditions.push(BuildOneOf(current, context, schema, value));
|
|
241
242
|
if (Schema.IsUnevaluatedItems(schema))
|
|
242
|
-
conditions.push(E.Or(E.Not(E.IsArray(value)), BuildUnevaluatedItems(
|
|
243
|
+
conditions.push(E.Or(E.Not(E.IsArray(value)), BuildUnevaluatedItems(current, context, schema, value)));
|
|
243
244
|
if (Schema.IsUnevaluatedProperties(schema))
|
|
244
|
-
conditions.push(E.Or(E.Not(E.IsObject(value)), BuildUnevaluatedProperties(
|
|
245
|
+
conditions.push(E.Or(E.Not(E.IsObject(value)), BuildUnevaluatedProperties(current, context, schema, value)));
|
|
245
246
|
if (Schema.IsRefine(schema))
|
|
246
|
-
conditions.push(BuildRefine(
|
|
247
|
+
conditions.push(BuildRefine(current, context, schema, value));
|
|
247
248
|
const result = E.ReduceAnd(conditions);
|
|
248
|
-
stack.Pop(schema);
|
|
249
249
|
return result;
|
|
250
250
|
}
|
|
251
251
|
// ----------------------------------------------------------------
|
|
@@ -255,50 +255,49 @@ export function CheckSchemaPushStack(stack, context, schema, value) {
|
|
|
255
255
|
return (context.Push() && CheckSchema(stack, context, schema, value)) && context.Pop();
|
|
256
256
|
}
|
|
257
257
|
export function CheckSchema(stack, context, schema, value) {
|
|
258
|
-
|
|
259
|
-
const result = Schema.IsSchemaBoolean(schema) ? CheckSchemaBoolean(
|
|
260
|
-
(!(G.IsObject(value) && !G.IsArray(value)) || ((!Schema.IsRequired(schema) || CheckRequired(
|
|
261
|
-
(!Schema.IsAdditionalProperties(schema) || CheckAdditionalProperties(
|
|
262
|
-
(!Schema.IsDependencies(schema) || CheckDependencies(
|
|
263
|
-
(!Schema.IsDependentRequired(schema) || CheckDependentRequired(
|
|
264
|
-
(!Schema.IsDependentSchemas(schema) || CheckDependentSchemas(
|
|
265
|
-
(!Schema.IsPatternProperties(schema) || CheckPatternProperties(
|
|
266
|
-
(!Schema.IsProperties(schema) || CheckProperties(
|
|
267
|
-
(!Schema.IsPropertyNames(schema) || CheckPropertyNames(
|
|
268
|
-
(!Schema.IsMinProperties(schema) || CheckMinProperties(
|
|
269
|
-
(!Schema.IsMaxProperties(schema) || CheckMaxProperties(
|
|
270
|
-
(!G.IsArray(value) || ((!Schema.IsAdditionalItems(schema) || CheckAdditionalItems(
|
|
271
|
-
(!Schema.IsContains(schema) || CheckContains(
|
|
272
|
-
(!Schema.IsItems(schema) || CheckItems(
|
|
273
|
-
(!Schema.IsMaxContains(schema) || CheckMaxContains(
|
|
274
|
-
(!Schema.IsMaxItems(schema) || CheckMaxItems(
|
|
275
|
-
(!Schema.IsMinContains(schema) || CheckMinContains(
|
|
276
|
-
(!Schema.IsMinItems(schema) || CheckMinItems(
|
|
277
|
-
(!Schema.IsPrefixItems(schema) || CheckPrefixItems(
|
|
278
|
-
(!Schema.IsUniqueItems(schema) || CheckUniqueItems(
|
|
279
|
-
(!G.IsString(value) || ((!Schema.IsMaxLength(schema) || CheckMaxLength(
|
|
280
|
-
(!Schema.IsMinLength(schema) || CheckMinLength(
|
|
281
|
-
(!Schema.IsFormat(schema) || CheckFormat(
|
|
282
|
-
(!Schema.IsPattern(schema) || CheckPattern(
|
|
283
|
-
(!(G.IsNumber(value) || G.IsBigInt(value)) || ((!Schema.IsExclusiveMaximum(schema) || CheckExclusiveMaximum(
|
|
284
|
-
(!Schema.IsExclusiveMinimum(schema) || CheckExclusiveMinimum(
|
|
285
|
-
(!Schema.IsMaximum(schema) || CheckMaximum(
|
|
286
|
-
(!Schema.IsMinimum(schema) || CheckMinimum(
|
|
287
|
-
(!Schema.IsMultipleOf(schema) || CheckMultipleOf(
|
|
288
|
-
(!Schema.IsRef(schema) || CheckRef(
|
|
289
|
-
(!Schema.IsRecursiveRef(schema) || CheckRecursiveRef(
|
|
290
|
-
(!Schema.IsDynamicRef(schema) || CheckDynamicRef(
|
|
291
|
-
(!Schema.IsConst(schema) || CheckConst(
|
|
292
|
-
(!Schema.IsEnum(schema) || CheckEnum(
|
|
293
|
-
(!Schema.IsIf(schema) || CheckIf(
|
|
294
|
-
(!Schema.IsNot(schema) || CheckNot(
|
|
295
|
-
(!Schema.IsAllOf(schema) || CheckAllOf(
|
|
296
|
-
(!Schema.IsAnyOf(schema) || CheckAnyOf(
|
|
297
|
-
(!Schema.IsOneOf(schema) || CheckOneOf(
|
|
298
|
-
(!Schema.IsUnevaluatedItems(schema) || (!G.IsArray(value) || CheckUnevaluatedItems(
|
|
299
|
-
(!Schema.IsUnevaluatedProperties(schema) || (!G.IsObject(value) || CheckUnevaluatedProperties(
|
|
300
|
-
(!Schema.IsRefine(schema) || CheckRefine(
|
|
301
|
-
stack.Pop(schema);
|
|
258
|
+
const current = Stack.NextStack(stack, schema);
|
|
259
|
+
const result = Schema.IsSchemaBoolean(schema) ? CheckSchemaBoolean(current, context, schema, value) : ((!Schema.IsType(schema) || CheckType(current, context, schema, value)) &&
|
|
260
|
+
(!(G.IsObject(value) && !G.IsArray(value)) || ((!Schema.IsRequired(schema) || CheckRequired(current, context, schema, value)) &&
|
|
261
|
+
(!Schema.IsAdditionalProperties(schema) || CheckAdditionalProperties(current, context, schema, value)) &&
|
|
262
|
+
(!Schema.IsDependencies(schema) || CheckDependencies(current, context, schema, value)) &&
|
|
263
|
+
(!Schema.IsDependentRequired(schema) || CheckDependentRequired(current, context, schema, value)) &&
|
|
264
|
+
(!Schema.IsDependentSchemas(schema) || CheckDependentSchemas(current, context, schema, value)) &&
|
|
265
|
+
(!Schema.IsPatternProperties(schema) || CheckPatternProperties(current, context, schema, value)) &&
|
|
266
|
+
(!Schema.IsProperties(schema) || CheckProperties(current, context, schema, value)) &&
|
|
267
|
+
(!Schema.IsPropertyNames(schema) || CheckPropertyNames(current, context, schema, value)) &&
|
|
268
|
+
(!Schema.IsMinProperties(schema) || CheckMinProperties(current, context, schema, value)) &&
|
|
269
|
+
(!Schema.IsMaxProperties(schema) || CheckMaxProperties(current, context, schema, value)))) &&
|
|
270
|
+
(!G.IsArray(value) || ((!Schema.IsAdditionalItems(schema) || CheckAdditionalItems(current, context, schema, value)) &&
|
|
271
|
+
(!Schema.IsContains(schema) || CheckContains(current, context, schema, value)) &&
|
|
272
|
+
(!Schema.IsItems(schema) || CheckItems(current, context, schema, value)) &&
|
|
273
|
+
(!Schema.IsMaxContains(schema) || CheckMaxContains(current, context, schema, value)) &&
|
|
274
|
+
(!Schema.IsMaxItems(schema) || CheckMaxItems(current, context, schema, value)) &&
|
|
275
|
+
(!Schema.IsMinContains(schema) || CheckMinContains(current, context, schema, value)) &&
|
|
276
|
+
(!Schema.IsMinItems(schema) || CheckMinItems(current, context, schema, value)) &&
|
|
277
|
+
(!Schema.IsPrefixItems(schema) || CheckPrefixItems(current, context, schema, value)) &&
|
|
278
|
+
(!Schema.IsUniqueItems(schema) || CheckUniqueItems(current, context, schema, value)))) &&
|
|
279
|
+
(!G.IsString(value) || ((!Schema.IsMaxLength(schema) || CheckMaxLength(current, context, schema, value)) &&
|
|
280
|
+
(!Schema.IsMinLength(schema) || CheckMinLength(current, context, schema, value)) &&
|
|
281
|
+
(!Schema.IsFormat(schema) || CheckFormat(current, context, schema, value)) &&
|
|
282
|
+
(!Schema.IsPattern(schema) || CheckPattern(current, context, schema, value)))) &&
|
|
283
|
+
(!(G.IsNumber(value) || G.IsBigInt(value)) || ((!Schema.IsExclusiveMaximum(schema) || CheckExclusiveMaximum(current, context, schema, value)) &&
|
|
284
|
+
(!Schema.IsExclusiveMinimum(schema) || CheckExclusiveMinimum(current, context, schema, value)) &&
|
|
285
|
+
(!Schema.IsMaximum(schema) || CheckMaximum(current, context, schema, value)) &&
|
|
286
|
+
(!Schema.IsMinimum(schema) || CheckMinimum(current, context, schema, value)) &&
|
|
287
|
+
(!Schema.IsMultipleOf(schema) || CheckMultipleOf(current, context, schema, value)))) &&
|
|
288
|
+
(!Schema.IsRef(schema) || CheckRef(current, context, schema, value)) &&
|
|
289
|
+
(!Schema.IsRecursiveRef(schema) || CheckRecursiveRef(current, context, schema, value)) &&
|
|
290
|
+
(!Schema.IsDynamicRef(schema) || CheckDynamicRef(current, context, schema, value)) &&
|
|
291
|
+
(!Schema.IsConst(schema) || CheckConst(current, context, schema, value)) &&
|
|
292
|
+
(!Schema.IsEnum(schema) || CheckEnum(current, context, schema, value)) &&
|
|
293
|
+
(!Schema.IsIf(schema) || CheckIf(current, context, schema, value)) &&
|
|
294
|
+
(!Schema.IsNot(schema) || CheckNot(current, context, schema, value)) &&
|
|
295
|
+
(!Schema.IsAllOf(schema) || CheckAllOf(current, context, schema, value)) &&
|
|
296
|
+
(!Schema.IsAnyOf(schema) || CheckAnyOf(current, context, schema, value)) &&
|
|
297
|
+
(!Schema.IsOneOf(schema) || CheckOneOf(current, context, schema, value)) &&
|
|
298
|
+
(!Schema.IsUnevaluatedItems(schema) || (!G.IsArray(value) || CheckUnevaluatedItems(current, context, schema, value))) &&
|
|
299
|
+
(!Schema.IsUnevaluatedProperties(schema) || (!G.IsObject(value) || CheckUnevaluatedProperties(current, context, schema, value))) &&
|
|
300
|
+
(!Schema.IsRefine(schema) || CheckRefine(current, context, schema, value)));
|
|
302
301
|
return result;
|
|
303
302
|
}
|
|
304
303
|
// ----------------------------------------------------------------
|
|
@@ -314,49 +313,48 @@ export function ErrorSchema(stack, context, schemaPath, instancePath, schema, va
|
|
|
314
313
|
// full set of errors accumulated by the schema as a whole. (review)
|
|
315
314
|
if (context.AtCapacity())
|
|
316
315
|
return false;
|
|
317
|
-
|
|
318
|
-
const result = (Schema.IsSchemaBoolean(schema)) ? ErrorSchemaBoolean(
|
|
319
|
-
+(!(G.IsObject(value) && !G.IsArray(value)) || !!(+(!Schema.IsRequired(schema) || ErrorRequired(
|
|
320
|
-
+(!Schema.IsAdditionalProperties(schema) || ErrorAdditionalProperties(
|
|
321
|
-
+(!Schema.IsDependencies(schema) || ErrorDependencies(
|
|
322
|
-
+(!Schema.IsDependentRequired(schema) || ErrorDependentRequired(
|
|
323
|
-
+(!Schema.IsDependentSchemas(schema) || ErrorDependentSchemas(
|
|
324
|
-
+(!Schema.IsPatternProperties(schema) || ErrorPatternProperties(
|
|
325
|
-
+(!Schema.IsProperties(schema) || ErrorProperties(
|
|
326
|
-
+(!Schema.IsPropertyNames(schema) || ErrorPropertyNames(
|
|
327
|
-
+(!Schema.IsMinProperties(schema) || ErrorMinProperties(
|
|
328
|
-
+(!Schema.IsMaxProperties(schema) || ErrorMaxProperties(
|
|
329
|
-
+(!G.IsArray(value) || !!(+(!Schema.IsAdditionalItems(schema) || ErrorAdditionalItems(
|
|
330
|
-
+(!Schema.IsContains(schema) || ErrorContains(
|
|
331
|
-
+(!Schema.IsItems(schema) || ErrorItems(
|
|
332
|
-
+(!Schema.IsMaxContains(schema) || ErrorMaxContains(
|
|
333
|
-
+(!Schema.IsMaxItems(schema) || ErrorMaxItems(
|
|
334
|
-
+(!Schema.IsMinContains(schema) || ErrorMinContains(
|
|
335
|
-
+(!Schema.IsMinItems(schema) || ErrorMinItems(
|
|
336
|
-
+(!Schema.IsPrefixItems(schema) || ErrorPrefixItems(
|
|
337
|
-
+(!Schema.IsUniqueItems(schema) || ErrorUniqueItems(
|
|
338
|
-
+(!G.IsString(value) || !!(+(!Schema.IsMaxLength(schema) || ErrorMaxLength(
|
|
339
|
-
+(!Schema.IsMinLength(schema) || ErrorMinLength(
|
|
340
|
-
+(!Schema.IsFormat(schema) || ErrorFormat(
|
|
341
|
-
+(!Schema.IsPattern(schema) || ErrorPattern(
|
|
342
|
-
+(!(G.IsNumber(value) || G.IsBigInt(value)) || !!(+(!Schema.IsExclusiveMaximum(schema) || ErrorExclusiveMaximum(
|
|
343
|
-
+(!Schema.IsExclusiveMinimum(schema) || ErrorExclusiveMinimum(
|
|
344
|
-
+(!Schema.IsMaximum(schema) || ErrorMaximum(
|
|
345
|
-
+(!Schema.IsMinimum(schema) || ErrorMinimum(
|
|
346
|
-
+(!Schema.IsMultipleOf(schema) || ErrorMultipleOf(
|
|
347
|
-
+(!Schema.IsRef(schema) || ErrorRef(
|
|
348
|
-
+(!Schema.IsRecursiveRef(schema) || ErrorRecursiveRef(
|
|
349
|
-
+(!Schema.IsDynamicRef(schema) || ErrorDynamicRef(
|
|
350
|
-
+(!Schema.IsConst(schema) || ErrorConst(
|
|
351
|
-
+(!Schema.IsEnum(schema) || ErrorEnum(
|
|
352
|
-
+(!Schema.IsIf(schema) || ErrorIf(
|
|
353
|
-
+(!Schema.IsNot(schema) || ErrorNot(
|
|
354
|
-
+(!Schema.IsAllOf(schema) || ErrorAllOf(
|
|
355
|
-
+(!Schema.IsAnyOf(schema) || ErrorAnyOf(
|
|
356
|
-
+(!Schema.IsOneOf(schema) || ErrorOneOf(
|
|
357
|
-
+(!Schema.IsUnevaluatedItems(schema) || (!G.IsArray(value) || ErrorUnevaluatedItems(
|
|
358
|
-
+(!Schema.IsUnevaluatedProperties(schema) || (!G.IsObject(value) || ErrorUnevaluatedProperties(
|
|
359
|
-
(!Schema.IsRefine(schema) || ErrorRefine(
|
|
360
|
-
stack.Pop(schema);
|
|
316
|
+
const current = Stack.NextStack(stack, schema);
|
|
317
|
+
const result = (Schema.IsSchemaBoolean(schema)) ? ErrorSchemaBoolean(current, context, schemaPath, instancePath, schema, value) : (!!(+(!Schema.IsType(schema) || ErrorType(current, context, schemaPath, instancePath, schema, value)) &
|
|
318
|
+
+(!(G.IsObject(value) && !G.IsArray(value)) || !!(+(!Schema.IsRequired(schema) || ErrorRequired(current, context, schemaPath, instancePath, schema, value)) &
|
|
319
|
+
+(!Schema.IsAdditionalProperties(schema) || ErrorAdditionalProperties(current, context, schemaPath, instancePath, schema, value)) &
|
|
320
|
+
+(!Schema.IsDependencies(schema) || ErrorDependencies(current, context, schemaPath, instancePath, schema, value)) &
|
|
321
|
+
+(!Schema.IsDependentRequired(schema) || ErrorDependentRequired(current, context, schemaPath, instancePath, schema, value)) &
|
|
322
|
+
+(!Schema.IsDependentSchemas(schema) || ErrorDependentSchemas(current, context, schemaPath, instancePath, schema, value)) &
|
|
323
|
+
+(!Schema.IsPatternProperties(schema) || ErrorPatternProperties(current, context, schemaPath, instancePath, schema, value)) &
|
|
324
|
+
+(!Schema.IsProperties(schema) || ErrorProperties(current, context, schemaPath, instancePath, schema, value)) &
|
|
325
|
+
+(!Schema.IsPropertyNames(schema) || ErrorPropertyNames(current, context, schemaPath, instancePath, schema, value)) &
|
|
326
|
+
+(!Schema.IsMinProperties(schema) || ErrorMinProperties(current, context, schemaPath, instancePath, schema, value)) &
|
|
327
|
+
+(!Schema.IsMaxProperties(schema) || ErrorMaxProperties(current, context, schemaPath, instancePath, schema, value)))) &
|
|
328
|
+
+(!G.IsArray(value) || !!(+(!Schema.IsAdditionalItems(schema) || ErrorAdditionalItems(current, context, schemaPath, instancePath, schema, value)) &
|
|
329
|
+
+(!Schema.IsContains(schema) || ErrorContains(current, context, schemaPath, instancePath, schema, value)) &
|
|
330
|
+
+(!Schema.IsItems(schema) || ErrorItems(current, context, schemaPath, instancePath, schema, value)) &
|
|
331
|
+
+(!Schema.IsMaxContains(schema) || ErrorMaxContains(current, context, schemaPath, instancePath, schema, value)) &
|
|
332
|
+
+(!Schema.IsMaxItems(schema) || ErrorMaxItems(current, context, schemaPath, instancePath, schema, value)) &
|
|
333
|
+
+(!Schema.IsMinContains(schema) || ErrorMinContains(current, context, schemaPath, instancePath, schema, value)) &
|
|
334
|
+
+(!Schema.IsMinItems(schema) || ErrorMinItems(current, context, schemaPath, instancePath, schema, value)) &
|
|
335
|
+
+(!Schema.IsPrefixItems(schema) || ErrorPrefixItems(current, context, schemaPath, instancePath, schema, value)) &
|
|
336
|
+
+(!Schema.IsUniqueItems(schema) || ErrorUniqueItems(current, context, schemaPath, instancePath, schema, value)))) &
|
|
337
|
+
+(!G.IsString(value) || !!(+(!Schema.IsMaxLength(schema) || ErrorMaxLength(current, context, schemaPath, instancePath, schema, value)) &
|
|
338
|
+
+(!Schema.IsMinLength(schema) || ErrorMinLength(current, context, schemaPath, instancePath, schema, value)) &
|
|
339
|
+
+(!Schema.IsFormat(schema) || ErrorFormat(current, context, schemaPath, instancePath, schema, value)) &
|
|
340
|
+
+(!Schema.IsPattern(schema) || ErrorPattern(current, context, schemaPath, instancePath, schema, value)))) &
|
|
341
|
+
+(!(G.IsNumber(value) || G.IsBigInt(value)) || !!(+(!Schema.IsExclusiveMaximum(schema) || ErrorExclusiveMaximum(current, context, schemaPath, instancePath, schema, value)) &
|
|
342
|
+
+(!Schema.IsExclusiveMinimum(schema) || ErrorExclusiveMinimum(current, context, schemaPath, instancePath, schema, value)) &
|
|
343
|
+
+(!Schema.IsMaximum(schema) || ErrorMaximum(current, context, schemaPath, instancePath, schema, value)) &
|
|
344
|
+
+(!Schema.IsMinimum(schema) || ErrorMinimum(current, context, schemaPath, instancePath, schema, value)) &
|
|
345
|
+
+(!Schema.IsMultipleOf(schema) || ErrorMultipleOf(current, context, schemaPath, instancePath, schema, value)))) &
|
|
346
|
+
+(!Schema.IsRef(schema) || ErrorRef(current, context, schemaPath, instancePath, schema, value)) &
|
|
347
|
+
+(!Schema.IsRecursiveRef(schema) || ErrorRecursiveRef(current, context, schemaPath, instancePath, schema, value)) &
|
|
348
|
+
+(!Schema.IsDynamicRef(schema) || ErrorDynamicRef(current, context, schemaPath, instancePath, schema, value)) &
|
|
349
|
+
+(!Schema.IsConst(schema) || ErrorConst(current, context, schemaPath, instancePath, schema, value)) &
|
|
350
|
+
+(!Schema.IsEnum(schema) || ErrorEnum(current, context, schemaPath, instancePath, schema, value)) &
|
|
351
|
+
+(!Schema.IsIf(schema) || ErrorIf(current, context, schemaPath, instancePath, schema, value)) &
|
|
352
|
+
+(!Schema.IsNot(schema) || ErrorNot(current, context, schemaPath, instancePath, schema, value)) &
|
|
353
|
+
+(!Schema.IsAllOf(schema) || ErrorAllOf(current, context, schemaPath, instancePath, schema, value)) &
|
|
354
|
+
+(!Schema.IsAnyOf(schema) || ErrorAnyOf(current, context, schemaPath, instancePath, schema, value)) &
|
|
355
|
+
+(!Schema.IsOneOf(schema) || ErrorOneOf(current, context, schemaPath, instancePath, schema, value)) &
|
|
356
|
+
+(!Schema.IsUnevaluatedItems(schema) || (!G.IsArray(value) || ErrorUnevaluatedItems(current, context, schemaPath, instancePath, schema, value))) &
|
|
357
|
+
+(!Schema.IsUnevaluatedProperties(schema) || (!G.IsObject(value) || ErrorUnevaluatedProperties(current, context, schemaPath, instancePath, schema, value)))) &&
|
|
358
|
+
(!Schema.IsRefine(schema) || ErrorRefine(current, context, schemaPath, instancePath, schema, value)));
|
|
361
359
|
return result;
|
|
362
360
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import * as Schema from '../types/index.mjs';
|
|
2
|
-
import
|
|
2
|
+
import * as Stack from './_stack.mjs';
|
|
3
3
|
import { BuildContext, CheckContext, ErrorContext } from './_context.mjs';
|
|
4
|
-
export declare function BuildType(stack: Stack, context: BuildContext, schema: Schema.XType, value: string): string;
|
|
5
|
-
export declare function CheckType(stack: Stack, context: CheckContext, schema: Schema.XType, value: unknown): boolean;
|
|
6
|
-
export declare function ErrorType(stack: Stack, context: ErrorContext, schemaPath: string, instancePath: string, schema: Schema.XType, value: unknown): boolean;
|
|
4
|
+
export declare function BuildType(stack: Stack.XStack, context: BuildContext, schema: Schema.XType, value: string): string;
|
|
5
|
+
export declare function CheckType(stack: Stack.XStack, context: CheckContext, schema: Schema.XType, value: unknown): boolean;
|
|
6
|
+
export declare function ErrorType(stack: Stack.XStack, context: ErrorContext, schemaPath: string, instancePath: string, schema: Schema.XType, value: unknown): boolean;
|
|
@@ -61,10 +61,6 @@ export function CheckType(stack, context, schema, value) {
|
|
|
61
61
|
}
|
|
62
62
|
export function ErrorType(stack, context, schemaPath, instancePath, schema, value) {
|
|
63
63
|
const isType = G.IsArray(schema.type) ? CheckTypeNames(stack, context, schema.type, schema, value) : CheckTypeName(stack, context, schema.type, schema, value);
|
|
64
|
-
return isType ||
|
|
65
|
-
|
|
66
|
-
schemaPath,
|
|
67
|
-
instancePath,
|
|
68
|
-
params: { type: schema.type }
|
|
69
|
-
});
|
|
64
|
+
return isType ||
|
|
65
|
+
context.AddError('type', schemaPath, instancePath, { type: schema.type });
|
|
70
66
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import * as Schema from '../types/index.mjs';
|
|
2
|
-
import
|
|
2
|
+
import * as Stack from './_stack.mjs';
|
|
3
3
|
import { BuildContext, CheckContext, ErrorContext } from './_context.mjs';
|
|
4
|
-
export declare function BuildUnevaluatedItems(stack: Stack, context: BuildContext, schema: Schema.XUnevaluatedItems, value: string): string;
|
|
5
|
-
export declare function CheckUnevaluatedItems(stack: Stack, context: CheckContext, schema: Schema.XUnevaluatedItems, value: unknown[]): boolean;
|
|
6
|
-
export declare function ErrorUnevaluatedItems(stack: Stack, context: ErrorContext, schemaPath: string, instancePath: string, schema: Schema.XUnevaluatedItems, value: unknown[]): boolean;
|
|
4
|
+
export declare function BuildUnevaluatedItems(stack: Stack.XStack, context: BuildContext, schema: Schema.XUnevaluatedItems, value: string): string;
|
|
5
|
+
export declare function CheckUnevaluatedItems(stack: Stack.XStack, context: CheckContext, schema: Schema.XUnevaluatedItems, value: unknown[]): boolean;
|
|
6
|
+
export declare function ErrorUnevaluatedItems(stack: Stack.XStack, context: ErrorContext, schemaPath: string, instancePath: string, schema: Schema.XUnevaluatedItems, value: unknown[]): boolean;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
// deno-fmt-ignore-file
|
|
2
2
|
import { Unique } from './_unique.mjs';
|
|
3
3
|
import { ErrorContext } from './_context.mjs';
|
|
4
|
-
import { Guard as G, EmitGuard as E } from '../../guard/index.mjs';
|
|
5
4
|
import { BuildSchema, CheckSchema, ErrorSchema } from './schema.mjs';
|
|
5
|
+
import { Guard as G, EmitGuard as E } from '../../guard/index.mjs';
|
|
6
6
|
// ------------------------------------------------------------------
|
|
7
7
|
// Build
|
|
8
8
|
// ------------------------------------------------------------------
|
|
@@ -42,10 +42,6 @@ export function ErrorUnevaluatedItems(stack, context, schemaPath, instancePath,
|
|
|
42
42
|
unevaluatedItems.push(index);
|
|
43
43
|
return isEvaluatedItem;
|
|
44
44
|
});
|
|
45
|
-
return isUnevaluatedItems ||
|
|
46
|
-
|
|
47
|
-
schemaPath,
|
|
48
|
-
instancePath,
|
|
49
|
-
params: { unevaluatedItems }
|
|
50
|
-
});
|
|
45
|
+
return isUnevaluatedItems ||
|
|
46
|
+
context.AddError('unevaluatedItems', schemaPath, instancePath, { unevaluatedItems });
|
|
51
47
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import * as Schema from '../types/index.mjs';
|
|
2
|
-
import
|
|
2
|
+
import * as Stack from './_stack.mjs';
|
|
3
3
|
import { BuildContext, CheckContext, ErrorContext } from './_context.mjs';
|
|
4
|
-
export declare function BuildUnevaluatedProperties(stack: Stack, context: BuildContext, schema: Schema.XUnevaluatedProperties, value: string): string;
|
|
5
|
-
export declare function CheckUnevaluatedProperties(stack: Stack, context: CheckContext, schema: Schema.XUnevaluatedProperties, value: Record<PropertyKey, unknown>): boolean;
|
|
6
|
-
export declare function ErrorUnevaluatedProperties(stack: Stack, context: ErrorContext, schemaPath: string, instancePath: string, schema: Schema.XUnevaluatedProperties, value: Record<PropertyKey, unknown>): boolean;
|
|
4
|
+
export declare function BuildUnevaluatedProperties(stack: Stack.XStack, context: BuildContext, schema: Schema.XUnevaluatedProperties, value: string): string;
|
|
5
|
+
export declare function CheckUnevaluatedProperties(stack: Stack.XStack, context: CheckContext, schema: Schema.XUnevaluatedProperties, value: Record<PropertyKey, unknown>): boolean;
|
|
6
|
+
export declare function ErrorUnevaluatedProperties(stack: Stack.XStack, context: ErrorContext, schemaPath: string, instancePath: string, schema: Schema.XUnevaluatedProperties, value: Record<PropertyKey, unknown>): boolean;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
// deno-fmt-ignore-file
|
|
2
2
|
import { Unique } from './_unique.mjs';
|
|
3
3
|
import { ErrorContext } from './_context.mjs';
|
|
4
|
-
import { Guard as G, EmitGuard as E } from '../../guard/index.mjs';
|
|
5
4
|
import { BuildSchema, CheckSchema, ErrorSchema } from './schema.mjs';
|
|
5
|
+
import { Guard as G, EmitGuard as E } from '../../guard/index.mjs';
|
|
6
6
|
// ------------------------------------------------------------------
|
|
7
7
|
// Build
|
|
8
8
|
// ------------------------------------------------------------------
|
|
@@ -42,10 +42,6 @@ export function ErrorUnevaluatedProperties(stack, context, schemaPath, instanceP
|
|
|
42
42
|
unevaluatedProperties.push(key);
|
|
43
43
|
return isEvaluatedProperty;
|
|
44
44
|
});
|
|
45
|
-
return isUnevaluatedProperties ||
|
|
46
|
-
|
|
47
|
-
schemaPath,
|
|
48
|
-
instancePath,
|
|
49
|
-
params: { unevaluatedProperties }
|
|
50
|
-
});
|
|
45
|
+
return isUnevaluatedProperties ||
|
|
46
|
+
context.AddError('unevaluatedProperties', schemaPath, instancePath, { unevaluatedProperties });
|
|
51
47
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import * as Schema from '../types/index.mjs';
|
|
2
|
-
import
|
|
2
|
+
import * as Stack from './_stack.mjs';
|
|
3
3
|
import { BuildContext, CheckContext, ErrorContext } from './_context.mjs';
|
|
4
|
-
export declare function BuildUniqueItems(_stack: Stack, _context: BuildContext, schema: Schema.XUniqueItems, value: string): string;
|
|
5
|
-
export declare function CheckUniqueItems(_stack: Stack, _context: CheckContext, schema: Schema.XUniqueItems, value: unknown[]): boolean;
|
|
6
|
-
export declare function ErrorUniqueItems(_stack: Stack, context: ErrorContext, schemaPath: string, instancePath: string, schema: Schema.XUniqueItems, value: unknown[]): boolean;
|
|
4
|
+
export declare function BuildUniqueItems(_stack: Stack.XStack, _context: BuildContext, schema: Schema.XUniqueItems, value: string): string;
|
|
5
|
+
export declare function CheckUniqueItems(_stack: Stack.XStack, _context: CheckContext, schema: Schema.XUniqueItems, value: unknown[]): boolean;
|
|
6
|
+
export declare function ErrorUniqueItems(_stack: Stack.XStack, context: ErrorContext, schemaPath: string, instancePath: string, schema: Schema.XUniqueItems, value: unknown[]): boolean;
|
|
@@ -42,10 +42,6 @@ export function ErrorUniqueItems(_stack, context, schemaPath, instancePath, sche
|
|
|
42
42
|
return result;
|
|
43
43
|
}, []);
|
|
44
44
|
const isUniqueItems = G.IsEqual(duplicateItems.length, 0);
|
|
45
|
-
return isUniqueItems ||
|
|
46
|
-
|
|
47
|
-
schemaPath,
|
|
48
|
-
instancePath,
|
|
49
|
-
params: { duplicateItems },
|
|
50
|
-
});
|
|
45
|
+
return isUniqueItems ||
|
|
46
|
+
context.AddError('uniqueItems', schemaPath, instancePath, { duplicateItems });
|
|
51
47
|
}
|
package/build/schema/errors.mjs
CHANGED
|
@@ -8,7 +8,7 @@ export function Errors(...args) {
|
|
|
8
8
|
3: (context, schema, value) => [context, schema, value],
|
|
9
9
|
2: (schema, value) => [{}, schema, value]
|
|
10
10
|
});
|
|
11
|
-
const stack =
|
|
11
|
+
const stack = Engine.Stack(context, schema);
|
|
12
12
|
const errorContext = new Engine.ErrorContext();
|
|
13
13
|
const result = Engine.ErrorSchema(stack, errorContext, '#', '', schema, value);
|
|
14
14
|
const errors = errorContext.GetErrors();
|
|
@@ -1,14 +1,11 @@
|
|
|
1
|
+
import * as Schema from '../types/index.mjs';
|
|
1
2
|
import { type XStatic } from '../static/index.mjs';
|
|
2
|
-
import * as S from '../types/index.mjs';
|
|
3
3
|
export interface XIntern<Type extends unknown = unknown> {
|
|
4
4
|
'~unsafe': Type;
|
|
5
5
|
$ref: string;
|
|
6
|
-
$defs: Record<string,
|
|
6
|
+
$defs: Record<string, Schema.XSchemaObject>;
|
|
7
7
|
}
|
|
8
|
-
/**
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
* both compress and optimize schemas prior to compilation.
|
|
13
|
-
*/
|
|
14
|
-
export declare function Intern<const Schema extends S.XSchema>(schema: Schema): XIntern<XStatic<Schema>>;
|
|
8
|
+
/** (Experimental) This function restructures the schema such that each distinct sub-schema is stored exactly once in a $defs object and keyed by content hash. */
|
|
9
|
+
export declare function Intern<const Schema extends Schema.XSchema>(schema: Schema): XIntern<XStatic<Schema>>;
|
|
10
|
+
/** (Experimental) This function restructures the schema such that each distinct sub-schema is stored exactly once in a $defs object and keyed by content hash. */
|
|
11
|
+
export declare function Intern<const Schema extends Schema.XSchema>(context: Record<PropertyKey, Schema.XSchema>, schema: Schema): XIntern<XStatic<Schema>>;
|