@openclaw/whatsapp 2026.9.4 → 2026.9.5
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 +40 -0
- package/assets/icon.png +0 -0
- package/dist/{accounts-CiKHiuEe.js → .setup/accounts-D_NGDjCx.mjs} +2 -2
- package/dist/{action-runtime-CRZLhN3f.js → .setup/action-runtime-DZZFamfl.mjs} +3 -3
- package/dist/{active-listener-BEjWsCNM.js → .setup/active-listener-CDjoX9QR.mjs} +2 -2
- package/dist/{agent-tools-login-B-2qZPzc.js → .setup/agent-tools-login-B6MAs75N.mjs} +2 -2
- package/dist/{approval-handler.runtime-DGJEaoqh.js → .setup/approval-handler.runtime-C0hzmMSj.mjs} +12 -12
- package/dist/{approval-reactions-DSFH6Mtx.js → .setup/approval-reactions-BnXw-UZI.mjs} +13 -13
- package/dist/{auth-store-ZWaclAbd.js → .setup/auth-store-Dh8a3cba.mjs} +5 -5
- package/dist/{channel-CzEIEZqG.js → .setup/channel-CSclZYjU.mjs} +20 -29
- package/dist/{channel-react-action-CHeJSG9F.js → .setup/channel-react-action-1iBiEnq7.mjs} +5 -5
- package/dist/.setup/channel.runtime-ddGY37w8.mjs +16 -0
- package/dist/.setup/channel.setup-CqUl8COe.mjs +5 -0
- package/dist/{connection-controller-DNp6U1NN.js → .setup/connection-controller-C60mU7j7.mjs} +5 -5
- package/dist/{connection-controller-runtime-context-DG0tuYuw.js → .setup/connection-controller-runtime-context-hgLJoRc8.mjs} +1 -1
- package/dist/{directory-config-CoWFw1zn.js → .setup/directory-config-BHPoBklt.mjs} +8 -8
- package/dist/{group-session-key-BmVDSPr1.js → .setup/group-session-key-D22hYMdE.mjs} +5 -5
- package/dist/.setup/legacy-session-surface-api-B2szjq4r.mjs +2 -0
- package/dist/{login-6j2iP9nR.js → .setup/login-2dmd1TfE.mjs} +5 -5
- package/dist/{login-qr-DRFgI6k1.js → .setup/login-qr-CgKtO_ef.mjs} +6 -6
- package/dist/{monitor-DaIAK4fT.js → .setup/monitor-BblvzLpX.mjs} +68 -65
- package/dist/.setup/normalize-DdsROMMa.mjs +2 -0
- package/dist/{normalize-target-CugRyONv.js → .setup/normalize-target-BGra1ZnM.mjs} +8 -30
- package/dist/{question-reactions-bbe0Qnjn.js → .setup/question-reactions-D3Zq9Gbn.mjs} +2 -2
- package/dist/{resolve-outbound-target-1GqbT1uX.js → .setup/resolve-outbound-target-C2eUvsTc.mjs} +1 -1
- package/dist/{send-BDDGPxav.js → .setup/send-C6jDmcL9.mjs} +7 -7
- package/dist/{send-api-C_Zn4Ij-.js → .setup/send-api-B4DOt2RJ.mjs} +7 -7
- package/dist/{session.runtime-Nsqaehbd.js → .setup/session.runtime-DcJuO42v.mjs} +1 -1
- package/dist/{setup-finalize-CZ6fHFFU.js → .setup/setup-finalize-BYEgU0hb.mjs} +6 -6
- package/dist/.setup/setup-plugin-api-CXfU-7vN.mjs +3 -0
- package/dist/{setup-surface-CnK_PPiA.js → .setup/setup-surface-Cd3wN5HD.mjs} +4 -4
- package/dist/{shared-CLKLJLgY.js → .setup/shared-C9OEtKgc.mjs} +47 -50
- package/dist/{socket-close-B3X9uerq.js → .setup/socket-close-CCVSFufF.mjs} +4 -4
- package/dist/{text-runtime-DyfmcATV.js → .setup/text-runtime-CHl0iPYe.mjs} +1 -1
- package/dist/action-runtime-api.js +1 -1
- package/dist/action-runtime.runtime.js +1 -1
- package/dist/agent-tools-api.js +4 -4
- package/dist/api.js +15 -15
- package/dist/auth-presence.js +1 -1
- package/dist/channel-config-api.js +1 -1
- package/dist/channel-plugin-api.js +1 -1
- package/dist/contract-api.js +5 -5
- package/dist/directory-contract-api.js +1 -1
- package/dist/doctor-contract-api.js +2 -2
- package/dist/legacy-session-surface-api.js +1 -1
- package/dist/light-runtime-api.js +4 -4
- package/dist/login-qr-runtime.js +1 -1
- package/dist/runtime-api.js +13 -13
- package/dist/runtime-setter-api.js +1 -1
- package/dist/security-contract-api.js +1 -1
- package/dist/setup-entry.js +3 -2
- package/dist/setup-plugin-api.js +1 -1
- package/node_modules/audio-decode/node_modules/@thi.ng/bitstream/README.md +1 -1
- package/node_modules/audio-decode/node_modules/@thi.ng/bitstream/package.json +5 -5
- package/node_modules/audio-decode/node_modules/@thi.ng/errors/README.md +1 -1
- package/node_modules/audio-decode/node_modules/@thi.ng/errors/package.json +5 -5
- package/node_modules/audio-decode/node_modules/@wasm-audio-decoders/flac/dist/flac-decoder.min.js +1 -1
- package/node_modules/audio-decode/node_modules/@wasm-audio-decoders/flac/dist/flac-decoder.min.js.map +1 -1
- package/node_modules/audio-decode/node_modules/@wasm-audio-decoders/flac/package.json +1 -1
- package/node_modules/audio-decode/node_modules/@wasm-audio-decoders/flac/src/FLACDecoder.js +6 -6
- package/node_modules/audio-decode/node_modules/@wasm-audio-decoders/flac/src/FLACDecoderWebWorker.js +2 -2
- package/node_modules/audio-decode/node_modules/@wasm-audio-decoders/opus-ml/dist/opus-ml-decoder.min.js +11603 -11540
- package/node_modules/audio-decode/node_modules/@wasm-audio-decoders/opus-ml/dist/opus-ml-decoder.min.js.map +1 -1
- package/node_modules/audio-decode/node_modules/@wasm-audio-decoders/opus-ml/package.json +1 -1
- package/node_modules/audio-decode/node_modules/@wasm-audio-decoders/opus-ml/src/EmscriptenWasm.js +0 -0
- package/node_modules/audio-decode/node_modules/@wasm-audio-decoders/opus-ml/types.d.ts +1 -5
- package/node_modules/audio-decode/node_modules/audio-type/audio-type.js +156 -2
- package/node_modules/audio-decode/node_modules/audio-type/package.json +23 -2
- package/node_modules/audio-decode/node_modules/audio-type/readme.md +40 -2
- package/node_modules/audio-decode/node_modules/ogg-opus-decoder/README.md +1 -1
- package/node_modules/audio-decode/node_modules/ogg-opus-decoder/dist/ogg-opus-decoder.min.js +3 -3
- package/node_modules/audio-decode/node_modules/ogg-opus-decoder/dist/ogg-opus-decoder.min.js.map +1 -1
- package/node_modules/audio-decode/node_modules/ogg-opus-decoder/dist/ogg-opus-decoder.opus-ml.min.js +0 -0
- package/node_modules/audio-decode/node_modules/ogg-opus-decoder/dist/ogg-opus-decoder.opus-ml.min.js.map +1 -1
- package/node_modules/audio-decode/node_modules/ogg-opus-decoder/package.json +8 -8
- package/node_modules/audio-decode/node_modules/ogg-opus-decoder/src/OggOpusDecoder.js +1 -1
- package/node_modules/audio-decode/node_modules/opus-decoder/README.md +1 -1
- package/node_modules/audio-decode/node_modules/opus-decoder/dist/opus-decoder.min.js +3 -3
- package/node_modules/audio-decode/node_modules/opus-decoder/dist/opus-decoder.min.js.map +1 -1
- package/node_modules/audio-decode/node_modules/opus-decoder/package.json +1 -1
- package/node_modules/audio-decode/node_modules/opus-decoder/types.d.ts +1 -5
- package/node_modules/baileys/node_modules/protobufjs/README.md +24 -17
- package/node_modules/baileys/node_modules/protobufjs/dist/light/protobuf.js +124 -14
- package/node_modules/baileys/node_modules/protobufjs/dist/light/protobuf.js.map +1 -1
- package/node_modules/baileys/node_modules/protobufjs/dist/light/protobuf.min.js +3 -3
- package/node_modules/baileys/node_modules/protobufjs/dist/light/protobuf.min.js.map +1 -1
- package/node_modules/baileys/node_modules/protobufjs/dist/minimal/protobuf.js +63 -9
- package/node_modules/baileys/node_modules/protobufjs/dist/minimal/protobuf.js.map +1 -1
- package/node_modules/baileys/node_modules/protobufjs/dist/minimal/protobuf.min.js +3 -3
- package/node_modules/baileys/node_modules/protobufjs/dist/minimal/protobuf.min.js.map +1 -1
- package/node_modules/baileys/node_modules/protobufjs/dist/protobuf.js +133 -18
- package/node_modules/baileys/node_modules/protobufjs/dist/protobuf.js.map +1 -1
- package/node_modules/baileys/node_modules/protobufjs/dist/protobuf.min.js +3 -3
- package/node_modules/baileys/node_modules/protobufjs/dist/protobuf.min.js.map +1 -1
- package/node_modules/baileys/node_modules/protobufjs/ext/descriptor.generated.d.ts +7 -0
- package/node_modules/baileys/node_modules/protobufjs/ext/descriptor.js +24 -0
- package/node_modules/baileys/node_modules/protobufjs/ext/protojson.js +14 -4
- package/node_modules/baileys/node_modules/protobufjs/ext/textformat.js +8 -4
- package/node_modules/baileys/node_modules/protobufjs/google/protobuf/descriptor.json +20 -1
- package/node_modules/baileys/node_modules/protobufjs/google/protobuf/descriptor.proto +14 -1
- package/node_modules/baileys/node_modules/protobufjs/index.d.ts +12 -0
- package/node_modules/baileys/node_modules/protobufjs/package.json +1 -1
- package/node_modules/baileys/node_modules/protobufjs/src/decoder.js +31 -2
- package/node_modules/baileys/node_modules/protobufjs/src/enum.js +10 -0
- package/node_modules/baileys/node_modules/protobufjs/src/object.js +5 -2
- package/node_modules/baileys/node_modules/protobufjs/src/parse.js +9 -4
- package/node_modules/baileys/node_modules/protobufjs/src/reader.js +61 -7
- package/node_modules/baileys/node_modules/protobufjs/src/type.js +10 -0
- package/node_modules/baileys/node_modules/protobufjs/src/wrappers.js +5 -1
- 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 +11 -2
- package/package.json +7 -5
- package/dist/channel.runtime-BFiZ9WhU.js +0 -55
- package/dist/channel.setup-gIWoRLzt.js +0 -14
- package/dist/normalize-C7Hkc_vE.js +0 -2
- /package/dist/{account-ids-CB5SOWjc.js → .setup/account-ids-CB5SOWjc.mjs} +0 -0
- /package/dist/{audio-preflight.runtime-C_glQhZY.js → .setup/audio-preflight.runtime-C_glQhZY.mjs} +0 -0
- /package/dist/{command-policy-BIOSHySD.js → .setup/command-policy-BIOSHySD.mjs} +0 -0
- /package/dist/{config-schema-BYA6e_Ii.js → .setup/config-schema-BYA6e_Ii.mjs} +0 -0
- /package/dist/{constants-C7m81BNe.js → .setup/constants-C7m81BNe.mjs} +0 -0
- /package/dist/{creds-files-Drg3usj1.js → .setup/creds-files-Drg3usj1.mjs} +0 -0
- /package/dist/{doctor-BPb-SjdE.js → .setup/doctor-BPb-SjdE.mjs} +0 -0
- /package/dist/{group-config-path-BGyzT9Lg.js → .setup/group-config-path-BGyzT9Lg.mjs} +0 -0
- /package/dist/{group-session-contract-DDnZSsJ1.js → .setup/group-session-contract-DDnZSsJ1.mjs} +0 -0
- /package/dist/{reply-resolver.runtime-Ded8D58Y.js → .setup/reply-resolver.runtime-Ded8D58Y.mjs} +0 -0
- /package/dist/{rolldown-runtime-D7D4PA-g.js → .setup/rolldown-runtime-D7D4PA-g.mjs} +0 -0
- /package/dist/{runtime-BLlToOi6.js → .setup/runtime-BLlToOi6.mjs} +0 -0
- /package/dist/{runtime-group-policy-DeSRFXEV.js → .setup/runtime-group-policy-DeSRFXEV.mjs} +0 -0
- /package/dist/{security-contract-nAzD945y.js → .setup/security-contract-nAzD945y.mjs} +0 -0
- /package/dist/{session-contract-DMTm6Q_L.js → .setup/session-contract-DMTm6Q_L.mjs} +0 -0
- /package/dist/{session-errors-JuazczrA.js → .setup/session-errors-JuazczrA.mjs} +0 -0
- /package/dist/{targets-runtime-RBjx3pg_.js → .setup/targets-runtime-RBjx3pg_.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>>;
|