@openclaw/zoom-meetings 2026.9.4 → 2026.9.6
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/assets/activity.svg +3 -0
- package/assets/icon.png +0 -0
- package/dist/{cli-p_IBo6Sg.js → .setup/cli-CYes3qso.mjs} +1 -1
- package/dist/cli-metadata.js +1 -1
- package/dist/index.js +20 -4
- package/node_modules/typebox/build/compile/validator.d.mts +1 -1
- package/node_modules/typebox/build/compile/validator.mjs +1 -1
- package/node_modules/typebox/build/format/idna/idn-hostname.mjs +7 -5
- package/node_modules/typebox/build/format/iri.mjs +5 -1
- package/node_modules/typebox/build/guard/emit.mjs +2 -4
- package/node_modules/typebox/build/guard/guard.mjs +6 -18
- package/node_modules/typebox/build/guard/string.mjs +16 -24
- package/node_modules/typebox/build/schema/build.mjs +2 -2
- package/node_modules/typebox/build/schema/check.mjs +1 -1
- package/node_modules/typebox/build/schema/compile.d.mts +3 -2
- package/node_modules/typebox/build/schema/compile.mjs +8 -8
- package/node_modules/typebox/build/schema/engine/_context.d.mts +6 -7
- package/node_modules/typebox/build/schema/engine/_context.mjs +23 -15
- package/node_modules/typebox/build/schema/engine/_functions.d.mts +2 -2
- package/node_modules/typebox/build/schema/engine/_functions.mjs +1 -1
- package/node_modules/typebox/build/schema/engine/_reducer.d.mts +3 -3
- package/node_modules/typebox/build/schema/engine/_refine.d.mts +5 -5
- package/node_modules/typebox/build/schema/engine/_refine.mjs +4 -7
- package/node_modules/typebox/build/schema/engine/_stack.d.mts +34 -16
- package/node_modules/typebox/build/schema/engine/_stack.mjs +148 -104
- package/node_modules/typebox/build/schema/engine/additionalItems.d.mts +4 -4
- package/node_modules/typebox/build/schema/engine/additionalProperties.d.mts +8 -8
- package/node_modules/typebox/build/schema/engine/additionalProperties.mjs +26 -18
- package/node_modules/typebox/build/schema/engine/allOf.d.mts +4 -4
- package/node_modules/typebox/build/schema/engine/allOf.mjs +3 -3
- package/node_modules/typebox/build/schema/engine/anyOf.d.mts +4 -4
- package/node_modules/typebox/build/schema/engine/anyOf.mjs +5 -10
- package/node_modules/typebox/build/schema/engine/boolean.d.mts +4 -4
- package/node_modules/typebox/build/schema/engine/boolean.mjs +2 -6
- package/node_modules/typebox/build/schema/engine/const.d.mts +4 -4
- package/node_modules/typebox/build/schema/engine/const.mjs +2 -6
- package/node_modules/typebox/build/schema/engine/contains.d.mts +4 -4
- package/node_modules/typebox/build/schema/engine/contains.mjs +2 -6
- package/node_modules/typebox/build/schema/engine/dependencies.d.mts +4 -4
- package/node_modules/typebox/build/schema/engine/dependencies.mjs +3 -6
- package/node_modules/typebox/build/schema/engine/dependentRequired.d.mts +4 -4
- package/node_modules/typebox/build/schema/engine/dependentRequired.mjs +2 -6
- package/node_modules/typebox/build/schema/engine/dependentSchemas.d.mts +4 -4
- package/node_modules/typebox/build/schema/engine/dynamicRef.d.mts +4 -4
- package/node_modules/typebox/build/schema/engine/dynamicRef.mjs +11 -7
- package/node_modules/typebox/build/schema/engine/enum.d.mts +4 -4
- package/node_modules/typebox/build/schema/engine/enum.mjs +2 -6
- package/node_modules/typebox/build/schema/engine/exclusiveMaximum.d.mts +4 -4
- package/node_modules/typebox/build/schema/engine/exclusiveMaximum.mjs +2 -6
- package/node_modules/typebox/build/schema/engine/exclusiveMinimum.d.mts +4 -4
- package/node_modules/typebox/build/schema/engine/exclusiveMinimum.mjs +2 -6
- package/node_modules/typebox/build/schema/engine/format.d.mts +4 -4
- package/node_modules/typebox/build/schema/engine/format.mjs +2 -6
- package/node_modules/typebox/build/schema/engine/if.d.mts +4 -4
- package/node_modules/typebox/build/schema/engine/if.mjs +7 -15
- package/node_modules/typebox/build/schema/engine/items.d.mts +4 -4
- package/node_modules/typebox/build/schema/engine/items.mjs +1 -1
- package/node_modules/typebox/build/schema/engine/maxContains.d.mts +4 -4
- package/node_modules/typebox/build/schema/engine/maxContains.mjs +2 -6
- package/node_modules/typebox/build/schema/engine/maxItems.d.mts +4 -4
- package/node_modules/typebox/build/schema/engine/maxItems.mjs +2 -6
- package/node_modules/typebox/build/schema/engine/maxLength.d.mts +4 -4
- package/node_modules/typebox/build/schema/engine/maxLength.mjs +2 -6
- package/node_modules/typebox/build/schema/engine/maxProperties.d.mts +4 -4
- package/node_modules/typebox/build/schema/engine/maxProperties.mjs +2 -6
- package/node_modules/typebox/build/schema/engine/maximum.d.mts +4 -4
- package/node_modules/typebox/build/schema/engine/maximum.mjs +2 -6
- package/node_modules/typebox/build/schema/engine/minContains.d.mts +4 -4
- package/node_modules/typebox/build/schema/engine/minContains.mjs +2 -6
- package/node_modules/typebox/build/schema/engine/minItems.d.mts +5 -5
- package/node_modules/typebox/build/schema/engine/minItems.mjs +2 -6
- package/node_modules/typebox/build/schema/engine/minLength.d.mts +4 -4
- package/node_modules/typebox/build/schema/engine/minLength.mjs +2 -6
- package/node_modules/typebox/build/schema/engine/minProperties.d.mts +4 -4
- package/node_modules/typebox/build/schema/engine/minProperties.mjs +2 -6
- package/node_modules/typebox/build/schema/engine/minimum.d.mts +4 -4
- package/node_modules/typebox/build/schema/engine/minimum.mjs +2 -6
- package/node_modules/typebox/build/schema/engine/multipleOf.d.mts +4 -4
- package/node_modules/typebox/build/schema/engine/multipleOf.mjs +2 -6
- package/node_modules/typebox/build/schema/engine/not.d.mts +4 -4
- package/node_modules/typebox/build/schema/engine/not.mjs +4 -8
- package/node_modules/typebox/build/schema/engine/oneOf.d.mts +4 -4
- package/node_modules/typebox/build/schema/engine/oneOf.mjs +6 -11
- package/node_modules/typebox/build/schema/engine/pattern.d.mts +4 -4
- package/node_modules/typebox/build/schema/engine/pattern.mjs +3 -7
- package/node_modules/typebox/build/schema/engine/patternProperties.d.mts +4 -4
- package/node_modules/typebox/build/schema/engine/patternProperties.mjs +1 -1
- package/node_modules/typebox/build/schema/engine/prefixItems.d.mts +4 -4
- package/node_modules/typebox/build/schema/engine/prefixItems.mjs +1 -1
- package/node_modules/typebox/build/schema/engine/properties.d.mts +4 -4
- package/node_modules/typebox/build/schema/engine/properties.mjs +1 -1
- package/node_modules/typebox/build/schema/engine/propertyNames.d.mts +4 -4
- package/node_modules/typebox/build/schema/engine/propertyNames.mjs +4 -10
- package/node_modules/typebox/build/schema/engine/recursiveRef.d.mts +4 -4
- package/node_modules/typebox/build/schema/engine/recursiveRef.mjs +11 -7
- package/node_modules/typebox/build/schema/engine/ref.d.mts +4 -4
- package/node_modules/typebox/build/schema/engine/ref.mjs +19 -15
- package/node_modules/typebox/build/schema/engine/required.d.mts +4 -4
- package/node_modules/typebox/build/schema/engine/required.mjs +2 -6
- package/node_modules/typebox/build/schema/engine/schema.d.mts +7 -7
- package/node_modules/typebox/build/schema/engine/schema.mjs +137 -133
- package/node_modules/typebox/build/schema/engine/type.d.mts +4 -4
- package/node_modules/typebox/build/schema/engine/type.mjs +2 -6
- package/node_modules/typebox/build/schema/engine/unevaluatedItems.d.mts +4 -4
- package/node_modules/typebox/build/schema/engine/unevaluatedItems.mjs +5 -9
- package/node_modules/typebox/build/schema/engine/unevaluatedProperties.d.mts +4 -4
- package/node_modules/typebox/build/schema/engine/unevaluatedProperties.mjs +5 -9
- package/node_modules/typebox/build/schema/engine/uniqueItems.d.mts +4 -4
- package/node_modules/typebox/build/schema/engine/uniqueItems.mjs +2 -6
- package/node_modules/typebox/build/schema/errors.d.mts +2 -2
- package/node_modules/typebox/build/schema/errors.mjs +8 -14
- package/node_modules/typebox/build/schema/intern/index.d.mts +1 -0
- package/node_modules/typebox/build/schema/intern/index.mjs +1 -0
- package/node_modules/typebox/build/schema/intern/intern.d.mts +11 -0
- package/node_modules/typebox/build/schema/intern/intern.mjs +293 -0
- package/node_modules/typebox/build/schema/meta/draft_2019_09.d.mts +2 -0
- package/node_modules/typebox/build/schema/meta/draft_2019_09.mjs +288 -0
- package/node_modules/typebox/build/schema/meta/draft_2020_12.d.mts +2 -0
- package/node_modules/typebox/build/schema/meta/draft_2020_12.mjs +300 -0
- package/node_modules/typebox/build/schema/meta/draft_3.d.mts +2 -0
- package/node_modules/typebox/build/schema/meta/draft_3.mjs +143 -0
- package/node_modules/typebox/build/schema/meta/draft_4.d.mts +2 -0
- package/node_modules/typebox/build/schema/meta/draft_4.mjs +149 -0
- package/node_modules/typebox/build/schema/meta/draft_6.d.mts +2 -0
- package/node_modules/typebox/build/schema/meta/draft_6.mjs +155 -0
- package/node_modules/typebox/build/schema/meta/draft_7.d.mts +2 -0
- package/node_modules/typebox/build/schema/meta/draft_7.mjs +172 -0
- package/node_modules/typebox/build/schema/meta/index.d.mts +2 -0
- package/node_modules/typebox/build/schema/meta/index.mjs +2 -0
- package/node_modules/typebox/build/schema/meta/meta.d.mts +9 -0
- package/node_modules/typebox/build/schema/meta/meta.mjs +15 -0
- package/node_modules/typebox/build/schema/meta/schema.d.mts +6 -0
- package/node_modules/typebox/build/schema/meta/schema.mjs +1 -0
- package/node_modules/typebox/build/schema/parse.d.mts +1 -0
- package/node_modules/typebox/build/schema/parse.mjs +10 -5
- package/node_modules/typebox/build/schema/resolve/resolve.d.mts +8 -3
- package/node_modules/typebox/build/schema/resolve/resolve.mjs +268 -139
- package/node_modules/typebox/build/schema/schema.d.mts +2 -0
- package/node_modules/typebox/build/schema/schema.mjs +2 -0
- package/node_modules/typebox/build/value/errors/errors.d.mts +2 -12
- package/node_modules/typebox/build/value/errors/errors.mjs +2 -7
- package/node_modules/typebox/package.json +1 -1
- package/node_modules/typebox/readme.md +59 -89
- package/openclaw.plugin.json +21 -1
- package/package.json +8 -6
- /package/dist/{cli-output-mode-DPg56N1-.js → .setup/cli-output-mode-DPg56N1-.mjs} +0 -0
- /package/dist/{errors-DcrAT0wd.js → .setup/errors-DcrAT0wd.mjs} +0 -0
|
@@ -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
|
// ----------------------------------------------------------------
|
|
@@ -308,49 +307,54 @@ export function ErrorSchemaPushStack(stack, context, schemaPath, instancePath, s
|
|
|
308
307
|
return (context.Push() && ErrorSchema(stack, context, schemaPath, instancePath, schema, value)) && context.Pop();
|
|
309
308
|
}
|
|
310
309
|
export function ErrorSchema(stack, context, schemaPath, instancePath, schema, value) {
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
+(!Schema.
|
|
321
|
-
+(!Schema.
|
|
322
|
-
+(!Schema.
|
|
323
|
-
|
|
324
|
-
+(!Schema.
|
|
325
|
-
+(!Schema.
|
|
326
|
-
+(!Schema.
|
|
327
|
-
+(!Schema.
|
|
328
|
-
+(!Schema.
|
|
329
|
-
|
|
330
|
-
+(!Schema.
|
|
331
|
-
+(!Schema.
|
|
332
|
-
|
|
333
|
-
+(!Schema.
|
|
334
|
-
+(!Schema.
|
|
335
|
-
+(!Schema.
|
|
336
|
-
|
|
337
|
-
+(!Schema.
|
|
338
|
-
|
|
339
|
-
+(!Schema.
|
|
340
|
-
+(!Schema.
|
|
341
|
-
|
|
342
|
-
+(!Schema.
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
+(!Schema.
|
|
348
|
-
+(!Schema.
|
|
349
|
-
+(!Schema.
|
|
350
|
-
+(!Schema.
|
|
351
|
-
+(!Schema.
|
|
352
|
-
+(!Schema.
|
|
353
|
-
(!Schema.
|
|
354
|
-
|
|
310
|
+
// Optimization: We can safely terminate here when the context is at capacity because we are unable to
|
|
311
|
+
// append additional errors. It is worth being mindful that logical keywords such as allOf, anyOf,
|
|
312
|
+
// oneOf pass a new context per operand, so the capacity check applies per context, not across the
|
|
313
|
+
// full set of errors accumulated by the schema as a whole. (review)
|
|
314
|
+
if (context.AtCapacity())
|
|
315
|
+
return false;
|
|
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)));
|
|
355
359
|
return result;
|
|
356
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
|
-
import {
|
|
4
|
-
import { Guard as G, EmitGuard as E } from '../../guard/index.mjs';
|
|
3
|
+
import { ErrorContext } from './_context.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
|
// ------------------------------------------------------------------
|
|
@@ -35,17 +35,13 @@ export function ErrorUnevaluatedItems(stack, context, schemaPath, instancePath,
|
|
|
35
35
|
const indices = context.GetIndices();
|
|
36
36
|
const unevaluatedItems = [];
|
|
37
37
|
const isUnevaluatedItems = G.EveryAll(value, 0, (item, index) => {
|
|
38
|
-
const nextContext = new
|
|
38
|
+
const nextContext = new ErrorContext();
|
|
39
39
|
const isEvaluatedItem = (indices.has(index) || ErrorSchema(stack, nextContext, schemaPath, instancePath, schema.unevaluatedItems, item))
|
|
40
40
|
&& context.AddIndex(index);
|
|
41
41
|
if (!isEvaluatedItem)
|
|
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
|
-
import {
|
|
4
|
-
import { Guard as G, EmitGuard as E } from '../../guard/index.mjs';
|
|
3
|
+
import { ErrorContext } from './_context.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
|
// ------------------------------------------------------------------
|
|
@@ -35,17 +35,13 @@ export function ErrorUnevaluatedProperties(stack, context, schemaPath, instanceP
|
|
|
35
35
|
const keys = context.GetKeys();
|
|
36
36
|
const unevaluatedProperties = [];
|
|
37
37
|
const isUnevaluatedProperties = G.EveryAll(G.Entries(value), 0, ([key, prop]) => {
|
|
38
|
-
const nextContext = new
|
|
38
|
+
const nextContext = new ErrorContext();
|
|
39
39
|
const isEvaluatedProperty = keys.has(key)
|
|
40
40
|
|| (ErrorSchema(stack, nextContext, schemaPath, instancePath, schema.unevaluatedProperties, prop) && context.AddKey(key));
|
|
41
41
|
if (!isEvaluatedProperty)
|
|
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
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { type TLocalizedValidationError } from '../error/index.mjs';
|
|
2
2
|
import * as Schema from './types/index.mjs';
|
|
3
|
-
/**
|
|
3
|
+
/** Returns an array of validation errors for the given value. */
|
|
4
4
|
export declare function Errors(schema: Schema.XSchema, value: unknown): [boolean, TLocalizedValidationError[]];
|
|
5
|
-
/**
|
|
5
|
+
/** Returns an array of validation errors for the given value. */
|
|
6
6
|
export declare function Errors(context: Record<PropertyKey, Schema.XSchema>, schema: Schema.XSchema, value: unknown): [boolean, TLocalizedValidationError[]];
|
|
@@ -1,24 +1,18 @@
|
|
|
1
1
|
// deno-fmt-ignore-file
|
|
2
2
|
import { Arguments } from '../system/arguments/index.mjs';
|
|
3
|
-
import {
|
|
4
|
-
import { Get as LocaleGet } from '../system/locale/_config.mjs';
|
|
5
|
-
import { Guard } from '../guard/index.mjs';
|
|
3
|
+
import { Get as GetLocalizationFunction } from '../system/locale/_config.mjs';
|
|
6
4
|
import * as Engine from './engine/index.mjs';
|
|
7
|
-
/**
|
|
5
|
+
/** Returns an array of validation errors for the given value. */
|
|
8
6
|
export function Errors(...args) {
|
|
9
7
|
const [context, schema, value] = Arguments.Match(args, {
|
|
10
8
|
3: (context, schema, value) => [context, schema, value],
|
|
11
9
|
2: (schema, value) => [{}, schema, value]
|
|
12
10
|
});
|
|
13
|
-
const
|
|
14
|
-
const
|
|
15
|
-
const errors = [];
|
|
16
|
-
const stack = new Engine.Stack(context, schema);
|
|
17
|
-
const errorContext = new Engine.ErrorContext(error => {
|
|
18
|
-
if (Guard.IsGreaterEqualThan(errors.length, settings.maxErrors))
|
|
19
|
-
return;
|
|
20
|
-
return errors.push({ ...error, message: locale(error) });
|
|
21
|
-
});
|
|
11
|
+
const stack = Engine.Stack(context, schema);
|
|
12
|
+
const errorContext = new Engine.ErrorContext();
|
|
22
13
|
const result = Engine.ErrorSchema(stack, errorContext, '#', '', schema, value);
|
|
23
|
-
|
|
14
|
+
const errors = errorContext.GetErrors();
|
|
15
|
+
const locale = GetLocalizationFunction();
|
|
16
|
+
const localized = errors.map(error => ({ ...error, message: locale(error) }));
|
|
17
|
+
return [result, localized];
|
|
24
18
|
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './intern.mjs';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './intern.mjs';
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import * as Schema from '../types/index.mjs';
|
|
2
|
+
import { type XStatic } from '../static/index.mjs';
|
|
3
|
+
export interface XIntern<Type extends unknown = unknown> {
|
|
4
|
+
'~unsafe': Type;
|
|
5
|
+
$ref: string;
|
|
6
|
+
$defs: Record<string, Schema.XSchemaObject>;
|
|
7
|
+
}
|
|
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>>;
|