@modulify/validator 0.1.0 → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.yarn/cache/@aashutoshrathi-word-wrap-npm-1.2.6-5b1d95e487-53c2b231a6.zip +0 -0
- package/.yarn/cache/@babel-code-frame-npm-7.23.5-cb10d08de6-a10e843595.zip +0 -0
- package/.yarn/cache/@babel-helper-string-parser-npm-7.25.7-352069de58-73ef2ceb81.zip +0 -0
- package/.yarn/cache/@babel-helper-string-parser-npm-7.27.1-d1471e0598-8bda3448e0.zip +0 -0
- package/.yarn/cache/@babel-helper-validator-identifier-npm-7.22.20-18305bb306-dcad63db34.zip +0 -0
- package/.yarn/cache/@babel-helper-validator-identifier-npm-7.25.7-1c758f0472-07438e5bf0.zip +0 -0
- package/.yarn/cache/@babel-helper-validator-identifier-npm-7.28.5-1953d49d2b-42aaebed91.zip +0 -0
- package/.yarn/cache/@babel-highlight-npm-7.23.4-2a9f2d2538-fbff9fcb2f.zip +0 -0
- package/.yarn/cache/@babel-parser-npm-7.25.8-fda12195b5-a1a13845b7.zip +0 -0
- package/.yarn/cache/@babel-parser-npm-7.29.0-c605c63e8b-333b2aa761.zip +0 -0
- package/.yarn/cache/@babel-types-npm-7.25.8-44acfff5f6-55ca2d6df6.zip +0 -0
- package/.yarn/cache/@babel-types-npm-7.29.0-6c2fa77581-23cc3466e8.zip +0 -0
- package/.yarn/cache/@bcoe-v8-coverage-npm-1.0.2-e80fdc21ac-1eb1dc93cc.zip +0 -0
- package/.yarn/cache/@commitlint-cli-npm-20.4.3-7b788c74b9-1f54b6870a.zip +0 -0
- package/.yarn/cache/@commitlint-config-conventional-npm-20.4.3-aa90460b69-c7c6fb0b32.zip +0 -0
- package/.yarn/cache/@commitlint-config-validator-npm-20.4.3-456f7d3da8-e65f2bd3cc.zip +0 -0
- package/.yarn/cache/@commitlint-ensure-npm-20.4.3-432e5ad329-aa1f42317a.zip +0 -0
- package/.yarn/cache/@commitlint-execute-rule-npm-20.0.0-6eb8155492-a1035ae9d6.zip +0 -0
- package/.yarn/cache/@commitlint-format-npm-20.4.3-ebe3e8cb04-e221f61a07.zip +0 -0
- package/.yarn/cache/@commitlint-is-ignored-npm-20.4.3-69e200640d-bc118de0aa.zip +0 -0
- package/.yarn/cache/@commitlint-lint-npm-20.4.3-c9940afaeb-e6af7cbbf9.zip +0 -0
- package/.yarn/cache/@commitlint-load-npm-20.4.3-81ae2db04a-80fb52e259.zip +0 -0
- package/.yarn/cache/@commitlint-message-npm-20.4.3-e9b5d77cad-16f7a67d17.zip +0 -0
- package/.yarn/cache/@commitlint-parse-npm-20.4.3-ecc5779976-404fecad36.zip +0 -0
- package/.yarn/cache/@commitlint-read-npm-20.4.3-32de5c8d85-3e7f88ad9b.zip +0 -0
- package/.yarn/cache/@commitlint-resolve-extends-npm-20.4.3-71b99c2779-09220329ba.zip +0 -0
- package/.yarn/cache/@commitlint-rules-npm-20.4.3-390ce9eadc-03348731a9.zip +0 -0
- package/.yarn/cache/@commitlint-to-lines-npm-20.0.0-888ee2239e-49bc05eb06.zip +0 -0
- package/.yarn/cache/@commitlint-top-level-npm-20.4.3-b0ef9fb207-52a1f59677.zip +0 -0
- package/.yarn/cache/@commitlint-types-npm-20.4.3-3d079b12ab-2181f9696f.zip +0 -0
- package/.yarn/cache/@cspotcode-source-map-support-npm-0.8.1-964f2de99d-05c5368c13.zip +0 -0
- package/.yarn/cache/@esbuild-linux-x64-npm-0.27.3-2041dd7b27-10c0.zip +0 -0
- package/.yarn/cache/@eslint-community-eslint-utils-npm-4.9.1-30ad3d49de-dc4ab5e3e3.zip +0 -0
- package/.yarn/cache/@eslint-community-regexpp-npm-4.12.2-3d54624470-fddcbc6685.zip +0 -0
- package/.yarn/cache/@eslint-config-array-npm-0.23.3-19b1c24f51-7c19027acf.zip +0 -0
- package/.yarn/cache/@eslint-config-helpers-npm-0.5.3-b60fa10f11-c836476e83.zip +0 -0
- package/.yarn/cache/@eslint-core-npm-1.1.1-bca32bf928-129c654c78.zip +0 -0
- package/.yarn/cache/@eslint-js-npm-10.0.1-c30b85ca06-9f3fcaf71b.zip +0 -0
- package/.yarn/cache/@eslint-object-schema-npm-3.0.3-4c45388d6c-4abbb7cba5.zip +0 -0
- package/.yarn/cache/@eslint-plugin-kit-npm-0.6.1-fafe413a70-f8354a7b92.zip +0 -0
- package/.yarn/cache/@gar-promise-retry-npm-1.0.2-960b209ddf-748a84fb0a.zip +0 -0
- package/.yarn/cache/@humanfs-core-npm-0.19.1-e2e7aaeb6e-aa4e015217.zip +0 -0
- package/.yarn/cache/@humanfs-node-npm-0.16.6-6ee2cad587-8356359c9f.zip +0 -0
- package/.yarn/cache/@humanwhocodes-module-importer-npm-1.0.1-9d07ed2e4a-909b69c3b8.zip +0 -0
- package/.yarn/cache/@humanwhocodes-retry-npm-0.3.1-9d87bf92c6-f0da1282df.zip +0 -0
- package/.yarn/cache/@humanwhocodes-retry-npm-0.4.3-a8d7ca1663-3775bb3008.zip +0 -0
- package/.yarn/cache/@isaacs-fs-minipass-npm-4.0.1-677026e841-c25b6dc159.zip +0 -0
- package/.yarn/cache/@jridgewell-resolve-uri-npm-3.1.1-aa2de3f210-0dbc9e29bc.zip +0 -0
- package/.yarn/cache/@jridgewell-resolve-uri-npm-3.1.2-5bc4245992-d502e6fb51.zip +0 -0
- package/.yarn/cache/@jridgewell-sourcemap-codec-npm-1.4.15-a055fb62cf-0c6b5ae663.zip +0 -0
- package/.yarn/cache/@jridgewell-sourcemap-codec-npm-1.5.0-dfd9126d71-2eb864f276.zip +0 -0
- package/.yarn/cache/@jridgewell-sourcemap-codec-npm-1.5.5-5189d9fc79-f9e538f302.zip +0 -0
- package/.yarn/cache/@jridgewell-trace-mapping-npm-0.3.31-1ae81d75ac-4b30ec8cd5.zip +0 -0
- package/.yarn/cache/@jridgewell-trace-mapping-npm-0.3.9-91625cd7fb-fa425b606d.zip +0 -0
- package/.yarn/cache/@microsoft-api-extractor-model-npm-7.33.4-65dc0810a1-c71569e59a.zip +0 -0
- package/.yarn/cache/@microsoft-api-extractor-npm-7.57.6-3ff3fa89f4-2f4598cc6b.zip +0 -0
- package/.yarn/cache/@microsoft-tsdoc-config-npm-0.18.1-9e24f960a2-06507f7ced.zip +0 -0
- package/.yarn/cache/@microsoft-tsdoc-npm-0.16.0-9d3f19f1b6-8883bb0ed2.zip +0 -0
- package/.yarn/cache/@npmcli-agent-npm-4.0.0-502e5ae4f0-f7b5ce0f3d.zip +0 -0
- package/.yarn/cache/@npmcli-fs-npm-5.0.0-9d737ae2f3-26e376d780.zip +0 -0
- package/.yarn/cache/@polka-url-npm-1.0.0-next.28-024769eda8-acc5ea6259.zip +0 -0
- package/.yarn/cache/@rollup-pluginutils-npm-5.1.4-83ce21024f-6d58fbc6f1.zip +0 -0
- package/.yarn/cache/@rollup-rollup-linux-x64-gnu-npm-4.59.0-da6c703f69-10c0.zip +0 -0
- package/.yarn/cache/@rushstack-node-core-library-npm-5.20.3-c547457ad4-bc9b33c6be.zip +0 -0
- package/.yarn/cache/@rushstack-problem-matcher-npm-0.2.1-87bf7eb8c4-d6cf27f6bf.zip +0 -0
- package/.yarn/cache/@rushstack-rig-package-npm-0.7.2-5f0f64865a-2e2839fa9a.zip +0 -0
- package/.yarn/cache/@rushstack-terminal-npm-0.22.3-2934ccd0ff-0e81fe7543.zip +0 -0
- package/.yarn/cache/@rushstack-ts-command-line-npm-5.3.3-d220c0fef2-03d9e9989b.zip +0 -0
- package/.yarn/cache/@simple-libs-stream-utils-npm-1.2.0-db53dc026f-2788ac7b16.zip +0 -0
- package/.yarn/cache/@standard-schema-spec-npm-1.1.0-d3e5ccd2e2-d90f55acde.zip +0 -0
- package/.yarn/cache/@tsconfig-node10-npm-1.0.9-f2e2d20feb-c176a2c1e1.zip +0 -0
- package/.yarn/cache/@tsconfig-node12-npm-1.0.11-9710d1c61b-dddca2b553.zip +0 -0
- package/.yarn/cache/@tsconfig-node14-npm-1.0.3-15321421d2-67c1316d06.zip +0 -0
- package/.yarn/cache/@tsconfig-node16-npm-1.0.4-b7cb87d859-05f8f2734e.zip +0 -0
- package/.yarn/cache/@types-argparse-npm-1.0.38-657c15204c-4fc892da5d.zip +0 -0
- package/.yarn/cache/@types-chai-npm-5.2.3-5f61dbddda-e0ef1de3b6.zip +0 -0
- package/.yarn/cache/@types-deep-eql-npm-4.0.2-e6bc68cc92-bf3f811843.zip +0 -0
- package/.yarn/cache/@types-esrecurse-npm-4.3.1-237d34a55f-90dad74d5d.zip +0 -0
- package/.yarn/cache/@types-estree-npm-1.0.5-5b7faed3b4-b3b0e33428.zip +0 -0
- package/.yarn/cache/@types-estree-npm-1.0.6-b5e23f2ea2-cdfd751f6f.zip +0 -0
- package/.yarn/cache/@types-estree-npm-1.0.8-2195bac6d6-39d34d1afa.zip +0 -0
- package/.yarn/cache/@types-json-schema-npm-7.0.15-fd16381786-a996a745e6.zip +0 -0
- package/.yarn/cache/@types-node-npm-25.3.5-81ad2eb587-4cf0834a6f.zip +0 -0
- package/.yarn/cache/@typescript-eslint-eslint-plugin-npm-8.56.1-3df20cf10b-8a97e77779.zip +0 -0
- package/.yarn/cache/@typescript-eslint-parser-npm-8.56.1-3f9b1c2f30-61c9dab481.zip +0 -0
- package/.yarn/cache/@typescript-eslint-project-service-npm-8.56.1-766cc01259-ca61cde575.zip +0 -0
- package/.yarn/cache/@typescript-eslint-scope-manager-npm-8.56.1-2d38e88a4b-89cc1af263.zip +0 -0
- package/.yarn/cache/@typescript-eslint-tsconfig-utils-npm-8.56.1-e35d1dd914-d03b64d7ff.zip +0 -0
- package/.yarn/cache/@typescript-eslint-type-utils-npm-8.56.1-e472908945-66517aed50.zip +0 -0
- package/.yarn/cache/@typescript-eslint-types-npm-8.56.1-09e50c3c54-e5a0318abd.zip +0 -0
- package/.yarn/cache/@typescript-eslint-typescript-estree-npm-8.56.1-bdca7e3c09-92f4421dac.zip +0 -0
- package/.yarn/cache/@typescript-eslint-utils-npm-8.56.1-aa0778f53a-d9ffd9b294.zip +0 -0
- package/.yarn/cache/@typescript-eslint-visitor-keys-npm-8.56.1-901d7b2e4d-86d97905de.zip +0 -0
- package/.yarn/cache/@vitest-coverage-v8-npm-4.0.18-62bb7f840e-e23e0da86f.zip +0 -0
- package/.yarn/cache/@vitest-expect-npm-4.0.18-03919ccd0b-123b0aa111.zip +0 -0
- package/.yarn/cache/@vitest-mocker-npm-4.0.18-118c87f90e-fb0a257e7e.zip +0 -0
- package/.yarn/cache/@vitest-pretty-format-npm-4.0.18-a73855e4a4-0086b8c88e.zip +0 -0
- package/.yarn/cache/@vitest-runner-npm-4.0.18-3dbdf3fb30-fdb4afa411.zip +0 -0
- package/.yarn/cache/@vitest-snapshot-npm-4.0.18-35134202ed-d3bfefa558.zip +0 -0
- package/.yarn/cache/@vitest-spy-npm-4.0.18-296c59dce4-6de537890b.zip +0 -0
- package/.yarn/cache/@vitest-ui-npm-4.0.18-2112b3c7d4-25ed45b529.zip +0 -0
- package/.yarn/cache/@vitest-utils-npm-4.0.18-b1c99a49e0-4a3c43c142.zip +0 -0
- package/.yarn/cache/@volar-language-core-npm-2.4.11-9f1617b8e0-ccc5de0c28.zip +0 -0
- package/.yarn/cache/@volar-language-core-npm-2.4.28-23fc3d6b92-d41f7327fe.zip +0 -0
- package/.yarn/cache/@volar-source-map-npm-2.4.11-1022b0cd34-8e5badf9f6.zip +0 -0
- package/.yarn/cache/@volar-source-map-npm-2.4.28-7517299eaf-24b0b02c7f.zip +0 -0
- package/.yarn/cache/@volar-typescript-npm-2.4.11-9486696485-bca9bda9c8.zip +0 -0
- package/.yarn/cache/@vue-compiler-core-npm-3.5.13-b0c91e9970-b89f3e3ca9.zip +0 -0
- package/.yarn/cache/@vue-compiler-dom-npm-3.5.13-8785a9ba19-8f424a7188.zip +0 -0
- package/.yarn/cache/@vue-compiler-vue2-npm-2.7.16-ac462b66cc-c76c3fad77.zip +0 -0
- package/.yarn/cache/@vue-language-core-npm-2.2.0-451bd2aafd-1c44cc4067.zip +0 -0
- package/.yarn/cache/@vue-shared-npm-3.5.13-519178ab33-2c940ef907.zip +0 -0
- package/.yarn/cache/abbrev-npm-4.0.0-7d848a1ef0-b4cc169352.zip +0 -0
- package/.yarn/cache/acorn-jsx-npm-5.3.2-d7594599ea-4c54868fbe.zip +0 -0
- package/.yarn/cache/acorn-npm-8.11.3-0d7ab48b38-3ff155f881.zip +0 -0
- package/.yarn/cache/acorn-npm-8.16.0-b2096bf83f-c9c5269722.zip +0 -0
- package/.yarn/cache/acorn-walk-npm-8.3.2-df039a42bf-7e2a8dad54.zip +0 -0
- package/.yarn/cache/agent-base-npm-7.1.4-cb8b4604d5-c2c9ab7599.zip +0 -0
- package/.yarn/cache/ajv-draft-04-npm-1.0.0-6fc962dbab-6044310bd3.zip +0 -0
- package/.yarn/cache/ajv-formats-npm-3.0.1-2662cf5b12-168d6bca1e.zip +0 -0
- package/.yarn/cache/ajv-npm-6.14.0-41f32f2ba8-a2bc39b055.zip +0 -0
- package/.yarn/cache/ajv-npm-8.12.0-3bf6e30741-ac4f72adf7.zip +0 -0
- package/.yarn/cache/ajv-npm-8.17.1-12ade7edc6-ec3ba10a57.zip +0 -0
- package/.yarn/cache/ajv-npm-8.18.0-6e5e062765-e7517c4261.zip +0 -0
- package/.yarn/cache/alien-signals-npm-0.4.14-73b9599f8d-5abb3377bc.zip +0 -0
- package/.yarn/cache/ansi-regex-npm-5.0.1-c963a48615-9a64bb8627.zip +0 -0
- package/.yarn/cache/ansi-styles-npm-3.2.1-8cb8107983-ece5a8ef06.zip +0 -0
- package/.yarn/cache/ansi-styles-npm-4.3.0-245c7d42c7-895a23929d.zip +0 -0
- package/.yarn/cache/arg-npm-4.1.3-1748b966a8-070ff801a9.zip +0 -0
- package/.yarn/cache/argparse-npm-1.0.10-528934e59d-b2972c5c23.zip +0 -0
- package/.yarn/cache/argparse-npm-2.0.1-faff7999e6-c5640c2d89.zip +0 -0
- package/.yarn/cache/array-ify-npm-1.0.0-e09a371977-75c9c072fa.zip +0 -0
- package/.yarn/cache/assertion-error-npm-2.0.1-8169d136f2-bbbcb117ac.zip +0 -0
- package/.yarn/cache/ast-v8-to-istanbul-npm-0.3.12-a066421931-bad6ba222b.zip +0 -0
- package/.yarn/cache/balanced-match-npm-4.0.4-fd666b3c7f-07e86102a3.zip +0 -0
- package/.yarn/cache/brace-expansion-npm-5.0.4-acb9332524-359cbcfa80.zip +0 -0
- package/.yarn/cache/cacache-npm-20.0.3-5f244d5bdd-c7da1ca694.zip +0 -0
- package/.yarn/cache/callsites-npm-3.1.0-268f989910-fff9227740.zip +0 -0
- package/.yarn/cache/chai-npm-6.2.2-e1795cadaa-e6c69e5f0c.zip +0 -0
- package/.yarn/cache/chalk-npm-2.4.2-3ea16dd91e-e6543f02ec.zip +0 -0
- package/.yarn/cache/chownr-npm-3.0.0-5275e85d25-43925b8770.zip +0 -0
- package/.yarn/cache/cliui-npm-8.0.1-3b029092cf-4bda0f09c3.zip +0 -0
- package/.yarn/cache/color-convert-npm-1.9.3-1fe690075e-5ad3c53494.zip +0 -0
- package/.yarn/cache/color-convert-npm-2.0.1-79730e935b-37e1150172.zip +0 -0
- package/.yarn/cache/color-name-npm-1.1.3-728b7b5d39-566a3d42cc.zip +0 -0
- package/.yarn/cache/color-name-npm-1.1.4-025792b0ea-a1a3f91415.zip +0 -0
- package/.yarn/cache/compare-func-npm-2.0.0-9cd7852f23-78bd4dd4ed.zip +0 -0
- package/.yarn/cache/compare-versions-npm-6.1.1-4b4ac16a32-415205c762.zip +0 -0
- package/.yarn/cache/confbox-npm-0.1.8-8396039b68-fc2c68d97c.zip +0 -0
- package/.yarn/cache/confbox-npm-0.2.4-31ba8953f9-4c36af33d9.zip +0 -0
- package/.yarn/cache/conventional-changelog-angular-npm-8.3.0-0cd5330d9e-bab87fa741.zip +0 -0
- package/.yarn/cache/conventional-changelog-conventionalcommits-npm-9.3.0-6c1ee7bc50-36be9435bb.zip +0 -0
- package/.yarn/cache/conventional-commits-parser-npm-6.3.0-ac5eec936e-7b152db0b6.zip +0 -0
- package/.yarn/cache/cosmiconfig-npm-9.0.1-66b0cd2503-a5d4d95599.zip +0 -0
- package/.yarn/cache/cosmiconfig-typescript-loader-npm-6.2.0-a314118ca7-0fd8fd9b9b.zip +0 -0
- package/.yarn/cache/create-require-npm-1.1.1-839884ca2e-157cbc59b2.zip +0 -0
- package/.yarn/cache/cross-spawn-npm-7.0.6-264bddf921-053ea8b213.zip +0 -0
- package/.yarn/cache/dargs-npm-8.1.0-39fde97ef5-08cbd1ee4a.zip +0 -0
- package/.yarn/cache/de-indent-npm-1.0.2-66cccde30f-7058ce58ab.zip +0 -0
- package/.yarn/cache/debug-npm-4.3.4-4513954577-cedbec4529.zip +0 -0
- package/.yarn/cache/debug-npm-4.4.0-f6efe76023-db94f1a182.zip +0 -0
- package/.yarn/cache/debug-npm-4.4.3-0105c6123a-d79136ec6c.zip +0 -0
- package/.yarn/cache/deep-is-npm-0.1.4-88938b5a67-7f0ee496e0.zip +0 -0
- package/.yarn/cache/diff-npm-4.0.2-73133c7102-81b91f9d39.zip +0 -0
- package/.yarn/cache/diff-npm-8.0.3-6f5c127138-d29321c70d.zip +0 -0
- package/.yarn/cache/dot-prop-npm-5.3.0-7bf6ee1eb8-93f0d343ef.zip +0 -0
- package/.yarn/cache/emoji-regex-npm-8.0.0-213764015c-b6053ad399.zip +0 -0
- package/.yarn/cache/entities-npm-4.5.0-7cdb83b832-5b039739f7.zip +0 -0
- package/.yarn/cache/env-paths-npm-2.2.1-7c7577428c-285325677b.zip +0 -0
- package/.yarn/cache/error-ex-npm-1.3.2-5654f80c0f-ba827f8936.zip +0 -0
- package/.yarn/cache/es-module-lexer-npm-1.7.0-456b47a08a-4c935affcb.zip +0 -0
- package/.yarn/cache/esbuild-npm-0.27.3-85b6c20323-fdc3f87a3f.zip +0 -0
- package/.yarn/cache/escalade-npm-3.1.1-e02da076aa-afd02e6ca9.zip +0 -0
- package/.yarn/cache/escalade-npm-3.2.0-19b50dd48f-ced4dd3a78.zip +0 -0
- package/.yarn/cache/escape-string-regexp-npm-1.0.5-3284de402f-a968ad453d.zip +0 -0
- package/.yarn/cache/escape-string-regexp-npm-4.0.0-4b531d8d59-9497d4dd30.zip +0 -0
- package/.yarn/cache/eslint-npm-10.0.3-c98e23b2a9-fbbb4d99cb.zip +0 -0
- package/.yarn/cache/eslint-scope-npm-9.1.2-50e6e92f41-9fb8bca5a7.zip +0 -0
- package/.yarn/cache/eslint-visitor-keys-npm-3.4.3-a356ac7e46-92708e882c.zip +0 -0
- package/.yarn/cache/eslint-visitor-keys-npm-5.0.1-30a44b062b-16190bdf2c.zip +0 -0
- package/.yarn/cache/espree-npm-11.2.0-095134f369-cf87e18ffd.zip +0 -0
- package/.yarn/cache/esquery-npm-1.7.0-c1e8da438a-77d5173db4.zip +0 -0
- package/.yarn/cache/esrecurse-npm-4.3.0-10b86a887a-81a37116d1.zip +0 -0
- package/.yarn/cache/estraverse-npm-5.3.0-03284f8f63-1ff9447b96.zip +0 -0
- package/.yarn/cache/estree-walker-npm-2.0.2-dfab42f65c-53a6c54e20.zip +0 -0
- package/.yarn/cache/estree-walker-npm-3.0.3-0372979673-c12e3c2b26.zip +0 -0
- package/.yarn/cache/esutils-npm-2.0.3-f865beafd5-9a2fe69a41.zip +0 -0
- package/.yarn/cache/expect-type-npm-1.3.0-95a4384745-8412b3fe4f.zip +0 -0
- package/.yarn/cache/exponential-backoff-npm-3.1.3-28be78d98e-77e3ae682b.zip +0 -0
- package/.yarn/cache/exsolve-npm-1.0.8-20570c05a2-65e44ae05b.zip +0 -0
- package/.yarn/cache/fast-deep-equal-npm-3.1.3-790edcfcf5-40dedc862e.zip +0 -0
- package/.yarn/cache/fast-json-stable-stringify-npm-2.1.0-02e8905fda-7f081eb0b8.zip +0 -0
- package/.yarn/cache/fast-levenshtein-npm-2.0.6-fcd74b8df5-111972b373.zip +0 -0
- package/.yarn/cache/fast-uri-npm-3.0.3-0874072625-4b2c5ce681.zip +0 -0
- package/.yarn/cache/fdir-npm-6.5.0-8814a0dec7-e345083c43.zip +0 -0
- package/.yarn/cache/fflate-npm-0.8.2-5129f303f0-03448d630c.zip +0 -0
- package/.yarn/cache/file-entry-cache-npm-8.0.0-5b09d19a83-9e2b5938b1.zip +0 -0
- package/.yarn/cache/find-up-npm-5.0.0-e03e9b796d-062c5a83a9.zip +0 -0
- package/.yarn/cache/flat-cache-npm-4.0.1-12bf2455f7-2c59d93e9f.zip +0 -0
- package/.yarn/cache/flatted-npm-3.2.9-0462256d3c-5c91c5a0a2.zip +0 -0
- package/.yarn/cache/flatted-npm-3.3.4-614e5aba3e-d1f33426e9.zip +0 -0
- package/.yarn/cache/fs-extra-npm-11.3.4-29a9d2b3b0-e08276f767.zip +0 -0
- package/.yarn/cache/fs-minipass-npm-3.0.3-d148d6ac19-63e80da2ff.zip +0 -0
- package/.yarn/cache/fsevents-npm-2.3.3-ce9fb0ffae-a1f0c44595.zip +0 -0
- package/.yarn/cache/function-bind-npm-1.1.2-7a55be9b03-d8680ee1e5.zip +0 -0
- package/.yarn/cache/get-caller-file-npm-2.0.5-80e8a86305-c6c7b60271.zip +0 -0
- package/.yarn/cache/git-raw-commits-npm-4.0.0-60e7e666d1-ab51335d9e.zip +0 -0
- package/.yarn/cache/glob-npm-13.0.6-864eb0cece-269c236f11.zip +0 -0
- package/.yarn/cache/glob-parent-npm-6.0.2-2cbef12738-317034d886.zip +0 -0
- package/.yarn/cache/global-directory-npm-4.0.1-1de95382fd-f9cbeef41d.zip +0 -0
- package/.yarn/cache/globals-npm-17.4.0-d04eded15b-2be9e8c2b9.zip +0 -0
- package/.yarn/cache/graceful-fs-npm-4.2.11-24bb648a68-386d011a55.zip +0 -0
- package/.yarn/cache/has-flag-npm-3.0.0-16ac11fe05-1c6c83b14b.zip +0 -0
- package/.yarn/cache/has-flag-npm-4.0.0-32af9f0536-2e789c61b7.zip +0 -0
- package/.yarn/cache/hasown-npm-2.0.0-78b794ceef-5d415b114f.zip +0 -0
- package/.yarn/cache/he-npm-1.2.0-3b73a2ff07-a27d478bef.zip +0 -0
- package/.yarn/cache/html-escaper-npm-2.0.2-38e51ef294-208e8a12de.zip +0 -0
- package/.yarn/cache/http-cache-semantics-npm-4.2.0-fadacfb3ad-45b66a945c.zip +0 -0
- package/.yarn/cache/http-proxy-agent-npm-7.0.2-643ed7cc33-4207b06a45.zip +0 -0
- package/.yarn/cache/https-proxy-agent-npm-7.0.6-27a95c2690-f729219bc7.zip +0 -0
- package/.yarn/cache/husky-npm-9.1.7-5b02eaabc4-35bb110a71.zip +0 -0
- package/.yarn/cache/iconv-lite-npm-0.7.2-716fc012a0-3c228920f3.zip +0 -0
- package/.yarn/cache/ignore-npm-5.3.0-fb0f5fa062-dc06bea5c2.zip +0 -0
- package/.yarn/cache/ignore-npm-7.0.5-dea34ee430-ae00db89fe.zip +0 -0
- package/.yarn/cache/import-fresh-npm-3.3.0-3e34265ca9-7f882953aa.zip +0 -0
- package/.yarn/cache/import-lazy-npm-4.0.0-3215653869-a3520313e2.zip +0 -0
- package/.yarn/cache/import-meta-resolve-npm-4.2.0-d0ecf96035-3ee8aeecb6.zip +0 -0
- package/.yarn/cache/imurmurhash-npm-0.1.4-610c5068a0-8b51313850.zip +0 -0
- package/.yarn/cache/ini-npm-4.1.1-01c2cbda7b-7fddc8dfd3.zip +0 -0
- package/.yarn/cache/ip-address-npm-10.1.0-d5d5693401-0103516cfa.zip +0 -0
- package/.yarn/cache/is-arrayish-npm-0.2.1-23927dfb15-e7fb686a73.zip +0 -0
- package/.yarn/cache/is-core-module-npm-2.13.1-36e17434f9-2cba9903aa.zip +0 -0
- package/.yarn/cache/is-extglob-npm-2.1.1-0870ea68b5-5487da3569.zip +0 -0
- package/.yarn/cache/is-fullwidth-code-point-npm-3.0.0-1ecf4ebee5-bb11d825e0.zip +0 -0
- package/.yarn/cache/is-glob-npm-4.0.3-cb87bf1bdb-17fb4014e2.zip +0 -0
- package/.yarn/cache/is-obj-npm-2.0.0-3d95e053f4-85044ed7ba.zip +0 -0
- package/.yarn/cache/is-plain-obj-npm-4.1.0-a4f2a92b44-32130d651d.zip +0 -0
- package/.yarn/cache/isexe-npm-2.0.0-b58870bd2e-228cfa503f.zip +0 -0
- package/.yarn/cache/isexe-npm-4.0.0-588229ad74-5884815115.zip +0 -0
- package/.yarn/cache/istanbul-lib-coverage-npm-3.2.2-5c0526e059-6c7ff21067.zip +0 -0
- package/.yarn/cache/istanbul-lib-report-npm-3.0.1-b17446ab24-84323afb14.zip +0 -0
- package/.yarn/cache/istanbul-reports-npm-3.2.0-b755b56d78-d596317cfd.zip +0 -0
- package/.yarn/cache/jiti-npm-2.6.1-597ab7fb84-79b2e96a8e.zip +0 -0
- package/.yarn/cache/jju-npm-1.4.0-670678eaa3-f3f444557e.zip +0 -0
- package/.yarn/cache/js-tokens-npm-10.0.0-2f75d73bcb-a934987478.zip +0 -0
- package/.yarn/cache/js-tokens-npm-4.0.0-0ac852e9e2-e248708d37.zip +0 -0
- package/.yarn/cache/js-yaml-npm-4.1.0-3606f32312-184a24b4ea.zip +0 -0
- package/.yarn/cache/json-buffer-npm-3.0.1-f8f6d20603-0d1c91569d.zip +0 -0
- package/.yarn/cache/json-parse-even-better-errors-npm-2.3.1-144d62256e-140932564c.zip +0 -0
- package/.yarn/cache/json-schema-traverse-npm-0.4.1-4759091693-108fa90d4c.zip +0 -0
- package/.yarn/cache/json-schema-traverse-npm-1.0.0-fb3684f4f0-71e30015d7.zip +0 -0
- package/.yarn/cache/json-stable-stringify-without-jsonify-npm-1.0.1-b65772b28b-cb168b61fd.zip +0 -0
- package/.yarn/cache/jsonfile-npm-6.1.0-20a4796cee-4f95b5e8a5.zip +0 -0
- package/.yarn/cache/keyv-npm-4.5.4-4c8e2cf7f7-aa52f3c5e1.zip +0 -0
- package/.yarn/cache/kolorist-npm-1.8.0-2cc04dcc05-73075db44a.zip +0 -0
- package/.yarn/cache/levn-npm-0.4.1-d183b2d7bb-effb03cad7.zip +0 -0
- package/.yarn/cache/lines-and-columns-npm-1.2.4-d6c7cc5799-3da6ee62d4.zip +0 -0
- package/.yarn/cache/local-pkg-npm-1.1.2-04ade6b6c7-1bcfcc5528.zip +0 -0
- package/.yarn/cache/locate-path-npm-6.0.0-06a1e4c528-d3972ab70d.zip +0 -0
- package/.yarn/cache/lodash-npm-4.17.23-50bdb1c01a-1264a90469.zip +0 -0
- package/.yarn/cache/lodash.camelcase-npm-4.3.0-bf268e3bf0-fcba15d21a.zip +0 -0
- package/.yarn/cache/lodash.kebabcase-npm-4.1.1-89ffca7e1f-da5d8f41db.zip +0 -0
- package/.yarn/cache/lodash.mergewith-npm-4.6.2-7d2d4201ec-4adbed65ff.zip +0 -0
- package/.yarn/cache/lodash.snakecase-npm-4.1.1-b12cdbecb4-f0b3f2497e.zip +0 -0
- package/.yarn/cache/lodash.startcase-npm-4.4.0-637aa8cc15-bd82aa87a4.zip +0 -0
- package/.yarn/cache/lodash.upperfirst-npm-4.3.1-e3b7c364ba-435625da4b.zip +0 -0
- package/.yarn/cache/lru-cache-npm-11.2.6-acb7d4323e-73bbffb298.zip +0 -0
- package/.yarn/cache/lru-cache-npm-6.0.0-b4c8668fe1-cb53e58278.zip +0 -0
- package/.yarn/cache/magic-string-npm-0.30.17-da1b7593b1-16826e415d.zip +0 -0
- package/.yarn/cache/magic-string-npm-0.30.21-9a226cb21e-299378e38f.zip +0 -0
- package/.yarn/cache/magicast-npm-0.5.2-24c891cd9d-924af67764.zip +0 -0
- package/.yarn/cache/make-dir-npm-4.0.0-ec3cd921cc-69b98a6c0b.zip +0 -0
- package/.yarn/cache/make-error-npm-1.3.6-ccb85d9458-171e458d86.zip +0 -0
- package/.yarn/cache/make-fetch-happen-npm-15.0.4-cd90f16f9b-b874bf6879.zip +0 -0
- package/.yarn/cache/meow-npm-12.1.1-bd7858d088-a125ca99a3.zip +0 -0
- package/.yarn/cache/meow-npm-13.2.0-9907f89171-d5b339ae31.zip +0 -0
- package/.yarn/cache/minimatch-npm-10.2.4-11f0605299-35f3dfb7b9.zip +0 -0
- package/.yarn/cache/minimatch-npm-9.0.7-145dd43fbb-e90f8d8dd1.zip +0 -0
- package/.yarn/cache/minimist-npm-1.2.8-d7af7b1dce-19d3fcdca0.zip +0 -0
- package/.yarn/cache/minipass-collect-npm-2.0.1-73d3907e40-5167e73f62.zip +0 -0
- package/.yarn/cache/minipass-fetch-npm-5.0.2-cd03eefed8-ce4ab9f21c.zip +0 -0
- package/.yarn/cache/minipass-flush-npm-1.0.5-efe79d9826-2a51b63feb.zip +0 -0
- package/.yarn/cache/minipass-npm-3.3.6-b8d93a945b-a114746943.zip +0 -0
- package/.yarn/cache/minipass-npm-7.1.3-b73a16498d-539da88dac.zip +0 -0
- package/.yarn/cache/minipass-pipeline-npm-1.2.4-5924cb077f-cbda57cea2.zip +0 -0
- package/.yarn/cache/minipass-sized-npm-2.0.0-a911fc7d3f-f9201696a6.zip +0 -0
- package/.yarn/cache/minizlib-npm-3.1.0-6680befdba-5aad75ab00.zip +0 -0
- package/.yarn/cache/mlly-npm-1.8.1-0181666245-664fa66726.zip +0 -0
- package/.yarn/cache/mrmime-npm-2.0.0-0326eb1458-312b35ed28.zip +0 -0
- package/.yarn/cache/ms-npm-2.1.2-ec0c1512ff-a437714e2f.zip +0 -0
- package/.yarn/cache/ms-npm-2.1.3-81ff3cfac1-d924b57e73.zip +0 -0
- package/.yarn/cache/muggle-string-npm-0.4.1-fe3c825cc2-e914b63e24.zip +0 -0
- package/.yarn/cache/nanoid-npm-3.3.11-f98c1f9ef6-40e7f70b3d.zip +0 -0
- package/.yarn/cache/natural-compare-npm-1.4.0-97b75b362d-f5f9a7974b.zip +0 -0
- package/.yarn/cache/negotiator-npm-1.0.0-47d727e27e-4c559dd526.zip +0 -0
- package/.yarn/cache/node-gyp-npm-12.2.0-11f8fe84f1-3ed046746a.zip +0 -0
- package/.yarn/cache/nopt-npm-9.0.0-81316ec15c-1822eb6f9b.zip +0 -0
- package/.yarn/cache/obug-npm-2.1.1-029730d296-59dccd7de7.zip +0 -0
- package/.yarn/cache/optionator-npm-0.9.3-56c3a4bf80-66fba794d4.zip +0 -0
- package/.yarn/cache/p-limit-npm-3.1.0-05d2ede37f-9db675949d.zip +0 -0
- package/.yarn/cache/p-locate-npm-5.0.0-92cc7c7a3e-2290d627ab.zip +0 -0
- package/.yarn/cache/p-map-npm-7.0.4-39386109d0-a5030935d3.zip +0 -0
- package/.yarn/cache/parent-module-npm-1.0.1-1fae11b095-c63d6e8000.zip +0 -0
- package/.yarn/cache/parse-json-npm-5.2.0-00a63b1199-77947f2253.zip +0 -0
- package/.yarn/cache/path-browserify-npm-1.0.1-f975d99a99-8b8c3fd5c6.zip +0 -0
- package/.yarn/cache/path-exists-npm-4.0.0-e9e4f63eb0-8c0bd3f523.zip +0 -0
- package/.yarn/cache/path-key-npm-3.1.1-0e66ea8321-748c43efd5.zip +0 -0
- package/.yarn/cache/path-parse-npm-1.0.7-09564527b7-11ce261f9d.zip +0 -0
- package/.yarn/cache/path-scurry-npm-2.0.2-f10aa6a77e-b35ad37cf6.zip +0 -0
- package/.yarn/cache/pathe-npm-2.0.3-0924246ee0-c118dc5a8b.zip +0 -0
- package/.yarn/cache/picocolors-npm-1.1.1-4fede47cf1-e2e3e8170a.zip +0 -0
- package/.yarn/cache/picomatch-npm-4.0.2-e93516ddf2-7c51f3ad2b.zip +0 -0
- package/.yarn/cache/picomatch-npm-4.0.3-0a647b87cc-9582c951e9.zip +0 -0
- package/.yarn/cache/pkg-types-npm-1.3.1-832c9cd162-19e6cb8b66.zip +0 -0
- package/.yarn/cache/pkg-types-npm-2.3.0-e7381b4aaa-d2bbddc5b8.zip +0 -0
- package/.yarn/cache/postcss-npm-8.5.8-b010bee8df-dd918f7127.zip +0 -0
- package/.yarn/cache/prelude-ls-npm-1.2.1-3e4d272a55-b00d617431.zip +0 -0
- package/.yarn/cache/proc-log-npm-6.1.0-84e609b3f4-4f178d4062.zip +0 -0
- package/.yarn/cache/punycode-npm-2.3.1-97543c420d-14f76a8206.zip +0 -0
- package/.yarn/cache/quansync-npm-0.2.11-f7bf964a44-cb9a1f8ebc.zip +0 -0
- package/.yarn/cache/require-directory-npm-2.1.1-8608aee50b-83aa76a7bc.zip +0 -0
- package/.yarn/cache/require-from-string-npm-2.0.2-8557e0db12-aaa267e0c5.zip +0 -0
- package/.yarn/cache/resolve-from-npm-4.0.0-f758ec21bf-8408eec31a.zip +0 -0
- package/.yarn/cache/resolve-from-npm-5.0.0-15c9db4d33-b21cb7f1fb.zip +0 -0
- package/.yarn/cache/resolve-npm-1.22.8-098f379dfe-07e179f437.zip +0 -0
- package/.yarn/cache/resolve-patch-4254c24959-0446f02443.zip +0 -0
- package/.yarn/cache/retry-npm-0.13.1-89eb100ab6-9ae822ee19.zip +0 -0
- package/.yarn/cache/rollup-npm-4.59.0-3b10f603ec-f38742da34.zip +0 -0
- package/.yarn/cache/safer-buffer-npm-2.1.2-8d5c0b705e-7e3c8b2e88.zip +0 -0
- package/.yarn/cache/semver-npm-7.5.4-c4ad957fcd-5160b06975.zip +0 -0
- package/.yarn/cache/semver-npm-7.6.3-57e82c14d5-88f33e148b.zip +0 -0
- package/.yarn/cache/semver-npm-7.7.4-746e538da5-5215ad0234.zip +0 -0
- package/.yarn/cache/shebang-command-npm-2.0.0-eb2b01921d-a41692e7d8.zip +0 -0
- package/.yarn/cache/shebang-regex-npm-3.0.0-899a0cd65e-1dbed0726d.zip +0 -0
- package/.yarn/cache/siginfo-npm-2.0.0-9bbac931f8-3def8f8e51.zip +0 -0
- package/.yarn/cache/sirv-npm-3.0.2-6cf658c733-5930e4397a.zip +0 -0
- package/.yarn/cache/smart-buffer-npm-4.2.0-5ac3f668bb-a16775323e.zip +0 -0
- package/.yarn/cache/socks-npm-2.8.7-d1d20aae19-2805a43a1c.zip +0 -0
- package/.yarn/cache/socks-proxy-agent-npm-8.0.5-24d77a90dc-5d2c6cecba.zip +0 -0
- package/.yarn/cache/source-map-js-npm-1.2.1-b9a47d7e1a-7bda1fc4c1.zip +0 -0
- package/.yarn/cache/source-map-npm-0.6.1-1a3621db16-ab55398007.zip +0 -0
- package/.yarn/cache/split2-npm-4.2.0-16aa3883ba-b292beb8ce.zip +0 -0
- package/.yarn/cache/sprintf-js-npm-1.0.3-73f0a322fa-ecadcfe4c7.zip +0 -0
- package/.yarn/cache/ssri-npm-13.0.1-c266f2233c-cf6408a186.zip +0 -0
- package/.yarn/cache/stackback-npm-0.0.2-73273dc92e-89a1416668.zip +0 -0
- package/.yarn/cache/std-env-npm-3.10.0-30d3e2646f-1814927a45.zip +0 -0
- package/.yarn/cache/string-argv-npm-0.3.2-6e057a88f1-75c02a8375.zip +0 -0
- package/.yarn/cache/string-width-npm-4.2.3-2c27177bae-1e525e92e5.zip +0 -0
- package/.yarn/cache/strip-ansi-npm-6.0.1-caddc7cb40-1ae5f212a1.zip +0 -0
- package/.yarn/cache/strip-json-comments-npm-3.1.1-dcb2324823-9681a6257b.zip +0 -0
- package/.yarn/cache/supports-color-npm-5.5.0-183ac537bc-6ae5ff319b.zip +0 -0
- package/.yarn/cache/supports-color-npm-7.2.0-606bfcf7da-afb4c88521.zip +0 -0
- package/.yarn/cache/supports-color-npm-8.1.1-289e937149-ea1d3c275d.zip +0 -0
- package/.yarn/cache/supports-preserve-symlinks-flag-npm-1.0.0-f17c4d0028-6c40323407.zip +0 -0
- package/.yarn/cache/tar-npm-7.5.10-83147ff192-ed905e4b33.zip +0 -0
- package/.yarn/cache/tinybench-npm-2.9.0-2861a048db-c3500b0f60.zip +0 -0
- package/.yarn/cache/tinyexec-npm-1.0.2-321b713e56-1261a8e34c.zip +0 -0
- package/.yarn/cache/tinyglobby-npm-0.2.15-0e783aadbd-869c31490d.zip +0 -0
- package/.yarn/cache/tinyrainbow-npm-3.0.3-06ed35d14d-1e799d35cd.zip +0 -0
- package/.yarn/cache/to-fast-properties-npm-2.0.0-0dc60cc481-b214d21dbf.zip +0 -0
- package/.yarn/cache/totalist-npm-3.0.1-91e71f3baa-4bb1fadb69.zip +0 -0
- package/.yarn/cache/ts-api-utils-npm-2.4.0-1179124e9a-ed185861ae.zip +0 -0
- package/.yarn/cache/ts-node-npm-10.9.2-3f3890b9ac-5f29938489.zip +0 -0
- package/.yarn/cache/tslib-npm-2.8.1-66590b21b8-9c4759110a.zip +0 -0
- package/.yarn/cache/type-check-npm-0.4.0-60565800ce-7b3fd0ed43.zip +0 -0
- package/.yarn/cache/typescript-eslint-npm-8.56.1-533c704529-c33aeb9a8b.zip +0 -0
- package/.yarn/cache/typescript-npm-5.7.2-b1f84a8b28-a873118b52.zip +0 -0
- package/.yarn/cache/typescript-npm-5.8.2-b95d637f6a-5c4f6fbf1c.zip +0 -0
- package/.yarn/cache/typescript-patch-26c53754b1-5448a08e59.zip +0 -0
- package/.yarn/cache/typescript-patch-aed9e5263d-f3b8082c9d.zip +0 -0
- package/.yarn/cache/ufo-npm-1.6.3-29bac69d97-bf0e4ebff9.zip +0 -0
- package/.yarn/cache/undici-types-npm-7.18.2-3e6d69d829-85a7918911.zip +0 -0
- package/.yarn/cache/unique-filename-npm-5.0.0-605f54f18e-afb897e9cf.zip +0 -0
- package/.yarn/cache/unique-slug-npm-6.0.0-f26b186e99-da7ade4cb0.zip +0 -0
- package/.yarn/cache/universalify-npm-2.0.1-040ba5a21e-73e8ee3809.zip +0 -0
- package/.yarn/cache/uri-js-npm-4.4.1-66d11cbcaf-4ef57b45aa.zip +0 -0
- package/.yarn/cache/v8-compile-cache-lib-npm-3.0.1-4886071ece-bdc36fb809.zip +0 -0
- package/.yarn/cache/vite-npm-7.3.1-330baf2f0d-5c7548f5f4.zip +0 -0
- package/.yarn/cache/vite-plugin-dts-npm-4.5.4-2445647687-5fcb7f3739.zip +0 -0
- package/.yarn/cache/vitest-npm-4.0.18-52f42bdace-b913cd3203.zip +0 -0
- package/.yarn/cache/vscode-uri-npm-3.0.8-56f46b9d24-f7f217f526.zip +0 -0
- package/.yarn/cache/which-npm-2.0.2-320ddf72f7-66522872a7.zip +0 -0
- package/.yarn/cache/which-npm-6.0.1-afc3b2db90-7e710e54ea.zip +0 -0
- package/.yarn/cache/why-is-node-running-npm-2.3.0-011cf61a18-1cde0b01b8.zip +0 -0
- package/.yarn/cache/wrap-ansi-npm-7.0.0-ad6e1a0554-d15fc12c11.zip +0 -0
- package/.yarn/cache/y18n-npm-5.0.8-5f3a0a7e62-4df2842c36.zip +0 -0
- package/.yarn/cache/yallist-npm-4.0.0-b493d9e907-2286b5e8db.zip +0 -0
- package/.yarn/cache/yallist-npm-5.0.0-8732dd9f1c-a499c81ce6.zip +0 -0
- package/.yarn/cache/yargs-npm-17.7.2-80b62638e1-ccd7e723e6.zip +0 -0
- package/.yarn/cache/yargs-parser-npm-21.1.1-8fdc003314-f84b5e4816.zip +0 -0
- package/.yarn/cache/yn-npm-3.1.1-8ad4259784-0732468dd7.zip +0 -0
- package/.yarn/cache/yocto-queue-npm-0.1.0-c6c9a7db29-dceb44c285.zip +0 -0
- package/.yarn/install-state.gz +0 -0
- package/.yarn/releases/yarn-4.12.0.cjs +942 -0
- package/.yarnrc.yml +5 -0
- package/AGENTS.md +82 -0
- package/CHANGELOG.md +29 -0
- package/CODE_OF_CONDUCT.md +128 -0
- package/README.md +324 -107
- package/dist/assert.cjs +66 -0
- package/dist/assert.d.ts +16 -0
- package/dist/assert.mjs +66 -0
- package/dist/assertions.cjs +190 -92
- package/dist/assertions.d.ts +58 -2
- package/dist/assertions.mjs +191 -93
- package/dist/checkers.d.ts +8 -0
- package/dist/combinators.cjs +341 -0
- package/dist/combinators.d.ts +17 -0
- package/dist/combinators.mjs +341 -0
- package/dist/constraints.d.ts +4 -0
- package/dist/extractors.d.ts +2 -0
- package/dist/index.cjs +172 -61
- package/dist/index.d.ts +10 -4
- package/dist/index.mjs +176 -64
- package/dist/json-schema.cjs +514 -0
- package/dist/json-schema.d.ts +14 -0
- package/dist/json-schema.mjs +514 -0
- package/dist/metadata.cjs +8 -0
- package/dist/metadata.cjs.js +130 -0
- package/dist/metadata.d.ts +8 -0
- package/dist/metadata.es.js +131 -0
- package/dist/metadata.mjs +8 -0
- package/dist/predicates.cjs +40 -5
- package/dist/predicates.d.ts +25 -3
- package/dist/predicates.mjs +40 -5
- package/dist/violations.d.ts +29 -0
- package/docker/services/node/Dockerfile +9 -0
- package/docs/en/00-index.md +14 -0
- package/docs/en/01-shape-api.md +348 -0
- package/docs/en/02-metadata-and-introspection.md +276 -0
- package/docs/en/03-violations.md +267 -0
- package/docs/en/04-json-schema-export.md +264 -0
- package/docs/en/05-public-api.md +123 -0
- package/docs/en/06-common-recipes.md +273 -0
- package/docs/en/07-ai-reference.md +215 -0
- package/docs/en/08-violation-code-types.md +241 -0
- package/docs/ru/00-index.md +15 -0
- package/docs/ru/01-shape-api.md +348 -0
- package/docs/ru/02-metadata-and-introspection.md +276 -0
- package/docs/ru/03-violations.md +267 -0
- package/docs/ru/04-json-schema-export.md +264 -0
- package/docs/ru/05-public-api.md +123 -0
- package/docs/ru/06-common-recipes.md +273 -0
- package/docs/ru/07-ai-reference.md +215 -0
- package/docs/ru/08-violation-code-types.md +241 -0
- package/docs/ru/README.md +371 -0
- package/drafts/.gitignore +2 -0
- package/package.json +43 -33
- package/skills/commit-workflow/SKILL.md +93 -0
- package/skills/coverage-recovery/SKILL.md +68 -0
- package/skills/yarn-lock-conflict-resolution/SKILL.md +69 -0
- package/types/index.d.ts +789 -30
- package/types/json-schema.d.ts +75 -0
- package/dist/assertions/Assert.d.ts +0 -2
- package/dist/assertions/HasLength.d.ts +0 -7
- package/dist/assertions/check.d.ts +0 -3
- package/dist/assertions/index.d.ts +0 -16
- package/dist/runners/Each.d.ts +0 -3
- package/dist/runners/HasProperties.d.ts +0 -6
- package/dist/runners/index.d.ts +0 -2
- package/dist/runners.cjs +0 -32
- package/dist/runners.d.ts +0 -2
- package/dist/runners.mjs +0 -32
package/dist/assertions.cjs
CHANGED
|
@@ -1,109 +1,207 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
+
const assert = require("./assert.cjs");
|
|
3
4
|
const predicates = require("./predicates.cjs");
|
|
4
|
-
const
|
|
5
|
-
|
|
5
|
+
const isEqual = (value, exact) => value === exact;
|
|
6
|
+
const isGte = (value, min) => value >= min;
|
|
7
|
+
const isLte = (value, max) => value <= max;
|
|
8
|
+
const inRange = (value, [min, max]) => value >= min && value <= max;
|
|
9
|
+
const startsWith$1 = (value, prefix) => value.startsWith(prefix);
|
|
10
|
+
const endsWith$1 = (value, suffix) => value.endsWith(suffix);
|
|
11
|
+
const matchesPattern = (value, pattern) => new RegExp(pattern.source, pattern.flags).test(value);
|
|
12
|
+
const isMultipleOf = (value, step) => {
|
|
13
|
+
if (step === 0) {
|
|
14
|
+
return false;
|
|
15
|
+
}
|
|
16
|
+
const quotient = value / step;
|
|
17
|
+
const nearestInteger = Math.round(quotient);
|
|
18
|
+
const delta = Math.abs(quotient - nearestInteger);
|
|
19
|
+
return Number.isFinite(quotient) && delta <= Number.EPSILON * Math.max(1, Math.abs(quotient)) * 16;
|
|
6
20
|
};
|
|
7
|
-
const
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
};
|
|
18
|
-
return Object.assign(delegate(predicate), options, extender());
|
|
19
|
-
};
|
|
20
|
-
const isGTE = (min) => (x) => predicates.isNumber(x) && x >= min;
|
|
21
|
-
const isLTE = (max) => (x) => predicates.isNumber(x) && x <= max;
|
|
22
|
-
const IsEqual = (exact) => Assert((x) => predicates.isExact(exact)(x.length), {
|
|
23
|
-
fqn: "@modulify/validator/HasLength[exact]",
|
|
24
|
-
bail: false,
|
|
25
|
-
reason: "exact",
|
|
26
|
-
meta: exact
|
|
27
|
-
});
|
|
28
|
-
const IsGTE = (min) => Assert((x) => isGTE(min)(x.length), {
|
|
29
|
-
fqn: "@modulify/validator/HasLength[min]",
|
|
30
|
-
bail: false,
|
|
31
|
-
reason: "min",
|
|
32
|
-
meta: min
|
|
33
|
-
});
|
|
34
|
-
const IsLTE = (max) => Assert((x) => isLTE(max)(x.length), {
|
|
35
|
-
fqn: "@modulify/validator/HasLength[max]",
|
|
36
|
-
bail: false,
|
|
37
|
-
reason: "max",
|
|
38
|
-
meta: max
|
|
21
|
+
const length = (value) => value.length;
|
|
22
|
+
const size = (value) => value.size;
|
|
23
|
+
const isBoolean = assert.assert(predicates.isBoolean, { name: "isBoolean", bail: true, code: "type.boolean" });
|
|
24
|
+
const isBigInt = assert.assert(predicates.isBigInt, { name: "isBigInt", bail: true, code: "type.bigint" });
|
|
25
|
+
const isBlob = assert.assert(predicates.isBlob, { name: "isBlob", bail: true, code: "type.blob" });
|
|
26
|
+
const isDate = assert.assert(predicates.isDate, { name: "isDate", bail: true, code: "type.date" });
|
|
27
|
+
const isDefined = assert.assert((value) => value !== void 0, {
|
|
28
|
+
name: "isDefined",
|
|
29
|
+
bail: true,
|
|
30
|
+
code: "value.defined"
|
|
39
31
|
});
|
|
40
|
-
const
|
|
32
|
+
const isEmail = assert.assert(predicates.isEmail, { name: "isEmail", bail: true, code: "string.email" });
|
|
33
|
+
const isFile = assert.assert(predicates.isFile, { name: "isFile", bail: true, code: "type.file" });
|
|
34
|
+
const isFunction = assert.assert(predicates.isFunction, { name: "isFunction", bail: true, code: "type.function" });
|
|
35
|
+
const isMap = assert.assert(predicates.isMap, { name: "isMap", bail: true, code: "type.map" });
|
|
36
|
+
const isNaN = assert.assert(predicates.isNaN, { name: "isNaN", bail: true, code: "number.nan" });
|
|
37
|
+
const isNull = assert.assert(predicates.isNull, { name: "isNull", bail: true, code: "type.null" });
|
|
38
|
+
const isNumber = assert.assert(predicates.isNumber, { name: "isNumber", bail: true, code: "type.number" });
|
|
39
|
+
const isSet = assert.assert(predicates.isSet, { name: "isSet", bail: true, code: "type.set" });
|
|
40
|
+
const isString = assert.assert(predicates.isString, { name: "isString", bail: true, code: "type.string" });
|
|
41
|
+
const isSymbol = assert.assert(predicates.isSymbol, { name: "isSymbol", bail: true, code: "type.symbol" });
|
|
42
|
+
const hasLength = ({
|
|
43
|
+
exact = null,
|
|
44
|
+
max = null,
|
|
45
|
+
min = null,
|
|
46
|
+
range = null,
|
|
47
|
+
bail = false
|
|
48
|
+
} = {}) => {
|
|
49
|
+
const constraints = [];
|
|
50
|
+
if (exact !== null) constraints.push([length, isEqual, "length.exact", exact]);
|
|
51
|
+
if (max !== null) constraints.push([length, isLte, "length.max", max]);
|
|
52
|
+
if (min !== null) constraints.push([length, isGte, "length.min", min]);
|
|
53
|
+
if (range !== null) constraints.push([length, inRange, "length.range", range]);
|
|
54
|
+
return assert.assert(
|
|
55
|
+
(value) => predicates.isArray(value) || predicates.isString(value),
|
|
56
|
+
{
|
|
57
|
+
name: "hasLength",
|
|
58
|
+
bail,
|
|
59
|
+
code: "length.unsupported-type"
|
|
60
|
+
},
|
|
61
|
+
constraints
|
|
62
|
+
);
|
|
63
|
+
};
|
|
64
|
+
const hasSize = ({
|
|
41
65
|
exact = null,
|
|
42
66
|
max = null,
|
|
43
67
|
min = null,
|
|
68
|
+
range = null,
|
|
44
69
|
bail = false
|
|
45
|
-
}) =>
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
70
|
+
} = {}) => {
|
|
71
|
+
const constraints = [];
|
|
72
|
+
if (exact !== null) constraints.push([size, isEqual, "size.exact", exact]);
|
|
73
|
+
if (max !== null) constraints.push([size, isLte, "size.max", max]);
|
|
74
|
+
if (min !== null) constraints.push([size, isGte, "size.min", min]);
|
|
75
|
+
if (range !== null) constraints.push([size, inRange, "size.range", range]);
|
|
76
|
+
return assert.assert(
|
|
77
|
+
(value) => predicates.isMap(value) || predicates.isSet(value),
|
|
78
|
+
{
|
|
79
|
+
name: "hasSize",
|
|
80
|
+
bail,
|
|
81
|
+
code: "size.unsupported-type"
|
|
82
|
+
},
|
|
83
|
+
constraints
|
|
84
|
+
);
|
|
85
|
+
};
|
|
86
|
+
const hasPattern = (pattern, {
|
|
87
|
+
bail = false
|
|
88
|
+
} = {}) => assert.assert(
|
|
89
|
+
predicates.isString,
|
|
90
|
+
{
|
|
91
|
+
name: "hasPattern",
|
|
92
|
+
bail,
|
|
93
|
+
code: "string.unsupported-type"
|
|
94
|
+
},
|
|
95
|
+
[[
|
|
96
|
+
(value) => value,
|
|
97
|
+
matchesPattern,
|
|
98
|
+
"string.pattern",
|
|
99
|
+
pattern
|
|
100
|
+
]]
|
|
53
101
|
);
|
|
54
|
-
const
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
}
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
102
|
+
const startsWith = (prefix, {
|
|
103
|
+
bail = false
|
|
104
|
+
} = {}) => assert.assert(
|
|
105
|
+
predicates.isString,
|
|
106
|
+
{
|
|
107
|
+
name: "startsWith",
|
|
108
|
+
bail,
|
|
109
|
+
code: "string.unsupported-type"
|
|
110
|
+
},
|
|
111
|
+
[[
|
|
112
|
+
(value) => value,
|
|
113
|
+
startsWith$1,
|
|
114
|
+
"string.starts-with",
|
|
115
|
+
prefix
|
|
116
|
+
]]
|
|
117
|
+
);
|
|
118
|
+
const endsWith = (suffix, {
|
|
119
|
+
bail = false
|
|
120
|
+
} = {}) => assert.assert(
|
|
121
|
+
predicates.isString,
|
|
122
|
+
{
|
|
123
|
+
name: "endsWith",
|
|
124
|
+
bail,
|
|
125
|
+
code: "string.unsupported-type"
|
|
126
|
+
},
|
|
127
|
+
[[
|
|
128
|
+
(value) => value,
|
|
129
|
+
endsWith$1,
|
|
130
|
+
"string.ends-with",
|
|
131
|
+
suffix
|
|
132
|
+
]]
|
|
133
|
+
);
|
|
134
|
+
const hasValue = ({
|
|
135
|
+
exact = null,
|
|
136
|
+
max = null,
|
|
137
|
+
min = null,
|
|
138
|
+
range = null,
|
|
139
|
+
bail = false
|
|
140
|
+
} = {}) => {
|
|
141
|
+
const constraints = [];
|
|
142
|
+
if (exact !== null) constraints.push([(value) => value, isEqual, "number.exact", exact]);
|
|
143
|
+
if (max !== null) constraints.push([(value) => value, isLte, "number.max", max]);
|
|
144
|
+
if (min !== null) constraints.push([(value) => value, isGte, "number.min", min]);
|
|
145
|
+
if (range !== null) constraints.push([(value) => value, inRange, "number.range", range]);
|
|
146
|
+
return assert.assert(
|
|
147
|
+
predicates.isNumber,
|
|
148
|
+
{
|
|
149
|
+
name: "hasValue",
|
|
150
|
+
bail,
|
|
151
|
+
code: "number.unsupported-type"
|
|
152
|
+
},
|
|
153
|
+
constraints
|
|
154
|
+
);
|
|
155
|
+
};
|
|
156
|
+
const multipleOf = (step, {
|
|
157
|
+
bail = false
|
|
158
|
+
} = {}) => assert.assert(
|
|
159
|
+
predicates.isNumber,
|
|
160
|
+
{
|
|
161
|
+
name: "multipleOf",
|
|
162
|
+
bail,
|
|
163
|
+
code: "number.unsupported-type"
|
|
164
|
+
},
|
|
165
|
+
[[
|
|
166
|
+
(value) => value,
|
|
167
|
+
isMultipleOf,
|
|
168
|
+
"number.multiple-of",
|
|
169
|
+
step
|
|
170
|
+
]]
|
|
171
|
+
);
|
|
172
|
+
const oneOf = (values, {
|
|
88
173
|
equalTo = (a, b) => a === b,
|
|
89
174
|
bail = false
|
|
90
175
|
} = {}) => {
|
|
91
176
|
const haystack = predicates.isArray(values) ? values : Object.values(values);
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
fqn: "@modulify/validator/OneOf",
|
|
177
|
+
return assert.assert((value) => haystack.some((item) => equalTo(item, value)), {
|
|
178
|
+
name: "oneOf",
|
|
95
179
|
bail,
|
|
96
|
-
|
|
180
|
+
code: "value.one-of",
|
|
181
|
+
args: [haystack]
|
|
97
182
|
});
|
|
98
183
|
};
|
|
99
|
-
exports.
|
|
100
|
-
exports.
|
|
101
|
-
exports.
|
|
102
|
-
exports.
|
|
103
|
-
exports.
|
|
104
|
-
exports.
|
|
105
|
-
exports.
|
|
106
|
-
exports.
|
|
107
|
-
exports.
|
|
108
|
-
exports.
|
|
109
|
-
exports.
|
|
184
|
+
exports.assert = assert.assert;
|
|
185
|
+
exports.endsWith = endsWith;
|
|
186
|
+
exports.hasLength = hasLength;
|
|
187
|
+
exports.hasPattern = hasPattern;
|
|
188
|
+
exports.hasSize = hasSize;
|
|
189
|
+
exports.hasValue = hasValue;
|
|
190
|
+
exports.isBigInt = isBigInt;
|
|
191
|
+
exports.isBlob = isBlob;
|
|
192
|
+
exports.isBoolean = isBoolean;
|
|
193
|
+
exports.isDate = isDate;
|
|
194
|
+
exports.isDefined = isDefined;
|
|
195
|
+
exports.isEmail = isEmail;
|
|
196
|
+
exports.isFile = isFile;
|
|
197
|
+
exports.isFunction = isFunction;
|
|
198
|
+
exports.isMap = isMap;
|
|
199
|
+
exports.isNaN = isNaN;
|
|
200
|
+
exports.isNull = isNull;
|
|
201
|
+
exports.isNumber = isNumber;
|
|
202
|
+
exports.isSet = isSet;
|
|
203
|
+
exports.isString = isString;
|
|
204
|
+
exports.isSymbol = isSymbol;
|
|
205
|
+
exports.multipleOf = multipleOf;
|
|
206
|
+
exports.oneOf = oneOf;
|
|
207
|
+
exports.startsWith = startsWith;
|
package/dist/assertions.d.ts
CHANGED
|
@@ -1,2 +1,58 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
import { AssertionConstraint, Assertion } from '../types';
|
|
2
|
+
import { assert } from './assert';
|
|
3
|
+
export { assert };
|
|
4
|
+
type LengthAssertionConstraint = AssertionConstraint<string | unknown[], number, [exact: number], 'length.exact'> | AssertionConstraint<string | unknown[], number, [max: number], 'length.max'> | AssertionConstraint<string | unknown[], number, [min: number], 'length.min'> | AssertionConstraint<string | unknown[], number, [range: [number, number]], 'length.range'>;
|
|
5
|
+
type SizeAssertionConstraint = AssertionConstraint<Map<unknown, unknown> | Set<unknown>, number, [exact: number], 'size.exact'> | AssertionConstraint<Map<unknown, unknown> | Set<unknown>, number, [max: number], 'size.max'> | AssertionConstraint<Map<unknown, unknown> | Set<unknown>, number, [min: number], 'size.min'> | AssertionConstraint<Map<unknown, unknown> | Set<unknown>, number, [range: [number, number]], 'size.range'>;
|
|
6
|
+
type ValueAssertionConstraint = AssertionConstraint<number, number, [exact: number], 'number.exact'> | AssertionConstraint<number, number, [max: number], 'number.max'> | AssertionConstraint<number, number, [min: number], 'number.min'> | AssertionConstraint<number, number, [range: [number, number]], 'number.range'>;
|
|
7
|
+
export declare const isBoolean: Assertion<boolean, [], "type.boolean", undefined, "isBoolean">;
|
|
8
|
+
export declare const isBigInt: Assertion<bigint, [], "type.bigint", undefined, "isBigInt">;
|
|
9
|
+
export declare const isBlob: Assertion<Blob, [], "type.blob", undefined, "isBlob">;
|
|
10
|
+
export declare const isDate: Assertion<Date, [], "type.date", undefined, "isDate">;
|
|
11
|
+
export declare const isDefined: Assertion<{}, [], "value.defined", undefined, "isDefined">;
|
|
12
|
+
export declare const isEmail: Assertion<string, [], "string.email", undefined, "isEmail">;
|
|
13
|
+
export declare const isFile: Assertion<File, [], "type.file", undefined, "isFile">;
|
|
14
|
+
export declare const isFunction: Assertion<(...args: never[]) => unknown, [], "type.function", undefined, "isFunction">;
|
|
15
|
+
export declare const isMap: Assertion<Map<unknown, unknown>, [], "type.map", undefined, "isMap">;
|
|
16
|
+
export declare const isNaN: Assertion<number, [], "number.nan", undefined, "isNaN">;
|
|
17
|
+
export declare const isNull: Assertion<null, [], "type.null", undefined, "isNull">;
|
|
18
|
+
export declare const isNumber: Assertion<number, [], "type.number", undefined, "isNumber">;
|
|
19
|
+
export declare const isSet: Assertion<Set<unknown>, [], "type.set", undefined, "isSet">;
|
|
20
|
+
export declare const isString: Assertion<string, [], "type.string", undefined, "isString">;
|
|
21
|
+
export declare const isSymbol: Assertion<symbol, [], "type.symbol", undefined, "isSymbol">;
|
|
22
|
+
export declare const hasLength: ({ exact, max, min, range, bail, }?: {
|
|
23
|
+
exact?: number | null;
|
|
24
|
+
max?: number | null;
|
|
25
|
+
min?: number | null;
|
|
26
|
+
range?: [number, number] | null;
|
|
27
|
+
bail?: boolean;
|
|
28
|
+
}) => Assertion<string | unknown[], LengthAssertionConstraint[], "length.unsupported-type", undefined, "hasLength">;
|
|
29
|
+
export declare const hasSize: ({ exact, max, min, range, bail, }?: {
|
|
30
|
+
exact?: number | null;
|
|
31
|
+
max?: number | null;
|
|
32
|
+
min?: number | null;
|
|
33
|
+
range?: [number, number] | null;
|
|
34
|
+
bail?: boolean;
|
|
35
|
+
}) => Assertion<Map<unknown, unknown> | Set<unknown>, SizeAssertionConstraint[], "size.unsupported-type", undefined, "hasSize">;
|
|
36
|
+
export declare const hasPattern: (pattern: RegExp, { bail, }?: {
|
|
37
|
+
bail?: boolean;
|
|
38
|
+
}) => Assertion<string, readonly [readonly [(value: string) => string, (value: string, pattern: RegExp) => boolean, "string.pattern", RegExp]], "string.unsupported-type", undefined, "hasPattern">;
|
|
39
|
+
export declare const startsWith: (prefix: string, { bail, }?: {
|
|
40
|
+
bail?: boolean;
|
|
41
|
+
}) => Assertion<string, readonly [readonly [(value: string) => string, (value: string, prefix: string) => boolean, "string.starts-with", string]], "string.unsupported-type", undefined, "startsWith">;
|
|
42
|
+
export declare const endsWith: (suffix: string, { bail, }?: {
|
|
43
|
+
bail?: boolean;
|
|
44
|
+
}) => Assertion<string, readonly [readonly [(value: string) => string, (value: string, suffix: string) => boolean, "string.ends-with", string]], "string.unsupported-type", undefined, "endsWith">;
|
|
45
|
+
export declare const hasValue: ({ exact, max, min, range, bail, }?: {
|
|
46
|
+
exact?: number | null;
|
|
47
|
+
max?: number | null;
|
|
48
|
+
min?: number | null;
|
|
49
|
+
range?: [number, number] | null;
|
|
50
|
+
bail?: boolean;
|
|
51
|
+
}) => Assertion<number, ValueAssertionConstraint[], "number.unsupported-type", undefined, "hasValue">;
|
|
52
|
+
export declare const multipleOf: (step: number, { bail, }?: {
|
|
53
|
+
bail?: boolean;
|
|
54
|
+
}) => Assertion<number, readonly [readonly [(value: number) => number, (value: number, step: number) => boolean, "number.multiple-of", number]], "number.unsupported-type", undefined, "multipleOf">;
|
|
55
|
+
export declare const oneOf: <Actual = unknown>(values: Actual[] | Record<string, Actual>, { equalTo, bail, }?: {
|
|
56
|
+
equalTo?: (a: Actual, b: unknown) => boolean;
|
|
57
|
+
bail?: boolean;
|
|
58
|
+
}) => Assertion<Actual, [], "value.one-of", readonly [Actual[]], "oneOf">;
|
package/dist/assertions.mjs
CHANGED
|
@@ -1,109 +1,207 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
import { assert } from "./assert.mjs";
|
|
2
|
+
import { isString as isString$1, isArray, isMap as isMap$1, isSet as isSet$1, isNumber as isNumber$1, isBigInt as isBigInt$1, isBlob as isBlob$1, isBoolean as isBoolean$1, isDate as isDate$1, isEmail as isEmail$1, isFile as isFile$1, isFunction as isFunction$1, isNaN as isNaN$1, isNull as isNull$1, isSymbol as isSymbol$1 } from "./predicates.mjs";
|
|
3
|
+
const isEqual = (value, exact) => value === exact;
|
|
4
|
+
const isGte = (value, min) => value >= min;
|
|
5
|
+
const isLte = (value, max) => value <= max;
|
|
6
|
+
const inRange = (value, [min, max]) => value >= min && value <= max;
|
|
7
|
+
const startsWith$1 = (value, prefix) => value.startsWith(prefix);
|
|
8
|
+
const endsWith$1 = (value, suffix) => value.endsWith(suffix);
|
|
9
|
+
const matchesPattern = (value, pattern) => new RegExp(pattern.source, pattern.flags).test(value);
|
|
10
|
+
const isMultipleOf = (value, step) => {
|
|
11
|
+
if (step === 0) {
|
|
12
|
+
return false;
|
|
13
|
+
}
|
|
14
|
+
const quotient = value / step;
|
|
15
|
+
const nearestInteger = Math.round(quotient);
|
|
16
|
+
const delta = Math.abs(quotient - nearestInteger);
|
|
17
|
+
return Number.isFinite(quotient) && delta <= Number.EPSILON * Math.max(1, Math.abs(quotient)) * 16;
|
|
4
18
|
};
|
|
5
|
-
const
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
};
|
|
16
|
-
return Object.assign(delegate(predicate), options, extender());
|
|
17
|
-
};
|
|
18
|
-
const isGTE = (min) => (x) => isNumber(x) && x >= min;
|
|
19
|
-
const isLTE = (max) => (x) => isNumber(x) && x <= max;
|
|
20
|
-
const IsEqual = (exact) => Assert((x) => isExact(exact)(x.length), {
|
|
21
|
-
fqn: "@modulify/validator/HasLength[exact]",
|
|
22
|
-
bail: false,
|
|
23
|
-
reason: "exact",
|
|
24
|
-
meta: exact
|
|
25
|
-
});
|
|
26
|
-
const IsGTE = (min) => Assert((x) => isGTE(min)(x.length), {
|
|
27
|
-
fqn: "@modulify/validator/HasLength[min]",
|
|
28
|
-
bail: false,
|
|
29
|
-
reason: "min",
|
|
30
|
-
meta: min
|
|
31
|
-
});
|
|
32
|
-
const IsLTE = (max) => Assert((x) => isLTE(max)(x.length), {
|
|
33
|
-
fqn: "@modulify/validator/HasLength[max]",
|
|
34
|
-
bail: false,
|
|
35
|
-
reason: "max",
|
|
36
|
-
meta: max
|
|
19
|
+
const length = (value) => value.length;
|
|
20
|
+
const size = (value) => value.size;
|
|
21
|
+
const isBoolean = assert(isBoolean$1, { name: "isBoolean", bail: true, code: "type.boolean" });
|
|
22
|
+
const isBigInt = assert(isBigInt$1, { name: "isBigInt", bail: true, code: "type.bigint" });
|
|
23
|
+
const isBlob = assert(isBlob$1, { name: "isBlob", bail: true, code: "type.blob" });
|
|
24
|
+
const isDate = assert(isDate$1, { name: "isDate", bail: true, code: "type.date" });
|
|
25
|
+
const isDefined = assert((value) => value !== void 0, {
|
|
26
|
+
name: "isDefined",
|
|
27
|
+
bail: true,
|
|
28
|
+
code: "value.defined"
|
|
37
29
|
});
|
|
38
|
-
const
|
|
30
|
+
const isEmail = assert(isEmail$1, { name: "isEmail", bail: true, code: "string.email" });
|
|
31
|
+
const isFile = assert(isFile$1, { name: "isFile", bail: true, code: "type.file" });
|
|
32
|
+
const isFunction = assert(isFunction$1, { name: "isFunction", bail: true, code: "type.function" });
|
|
33
|
+
const isMap = assert(isMap$1, { name: "isMap", bail: true, code: "type.map" });
|
|
34
|
+
const isNaN = assert(isNaN$1, { name: "isNaN", bail: true, code: "number.nan" });
|
|
35
|
+
const isNull = assert(isNull$1, { name: "isNull", bail: true, code: "type.null" });
|
|
36
|
+
const isNumber = assert(isNumber$1, { name: "isNumber", bail: true, code: "type.number" });
|
|
37
|
+
const isSet = assert(isSet$1, { name: "isSet", bail: true, code: "type.set" });
|
|
38
|
+
const isString = assert(isString$1, { name: "isString", bail: true, code: "type.string" });
|
|
39
|
+
const isSymbol = assert(isSymbol$1, { name: "isSymbol", bail: true, code: "type.symbol" });
|
|
40
|
+
const hasLength = ({
|
|
41
|
+
exact = null,
|
|
42
|
+
max = null,
|
|
43
|
+
min = null,
|
|
44
|
+
range = null,
|
|
45
|
+
bail = false
|
|
46
|
+
} = {}) => {
|
|
47
|
+
const constraints = [];
|
|
48
|
+
if (exact !== null) constraints.push([length, isEqual, "length.exact", exact]);
|
|
49
|
+
if (max !== null) constraints.push([length, isLte, "length.max", max]);
|
|
50
|
+
if (min !== null) constraints.push([length, isGte, "length.min", min]);
|
|
51
|
+
if (range !== null) constraints.push([length, inRange, "length.range", range]);
|
|
52
|
+
return assert(
|
|
53
|
+
(value) => isArray(value) || isString$1(value),
|
|
54
|
+
{
|
|
55
|
+
name: "hasLength",
|
|
56
|
+
bail,
|
|
57
|
+
code: "length.unsupported-type"
|
|
58
|
+
},
|
|
59
|
+
constraints
|
|
60
|
+
);
|
|
61
|
+
};
|
|
62
|
+
const hasSize = ({
|
|
39
63
|
exact = null,
|
|
40
64
|
max = null,
|
|
41
65
|
min = null,
|
|
66
|
+
range = null,
|
|
42
67
|
bail = false
|
|
43
|
-
}) =>
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
68
|
+
} = {}) => {
|
|
69
|
+
const constraints = [];
|
|
70
|
+
if (exact !== null) constraints.push([size, isEqual, "size.exact", exact]);
|
|
71
|
+
if (max !== null) constraints.push([size, isLte, "size.max", max]);
|
|
72
|
+
if (min !== null) constraints.push([size, isGte, "size.min", min]);
|
|
73
|
+
if (range !== null) constraints.push([size, inRange, "size.range", range]);
|
|
74
|
+
return assert(
|
|
75
|
+
(value) => isMap$1(value) || isSet$1(value),
|
|
76
|
+
{
|
|
77
|
+
name: "hasSize",
|
|
78
|
+
bail,
|
|
79
|
+
code: "size.unsupported-type"
|
|
80
|
+
},
|
|
81
|
+
constraints
|
|
82
|
+
);
|
|
83
|
+
};
|
|
84
|
+
const hasPattern = (pattern, {
|
|
85
|
+
bail = false
|
|
86
|
+
} = {}) => assert(
|
|
87
|
+
isString$1,
|
|
88
|
+
{
|
|
89
|
+
name: "hasPattern",
|
|
90
|
+
bail,
|
|
91
|
+
code: "string.unsupported-type"
|
|
92
|
+
},
|
|
93
|
+
[[
|
|
94
|
+
(value) => value,
|
|
95
|
+
matchesPattern,
|
|
96
|
+
"string.pattern",
|
|
97
|
+
pattern
|
|
98
|
+
]]
|
|
51
99
|
);
|
|
52
|
-
const
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
}
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
100
|
+
const startsWith = (prefix, {
|
|
101
|
+
bail = false
|
|
102
|
+
} = {}) => assert(
|
|
103
|
+
isString$1,
|
|
104
|
+
{
|
|
105
|
+
name: "startsWith",
|
|
106
|
+
bail,
|
|
107
|
+
code: "string.unsupported-type"
|
|
108
|
+
},
|
|
109
|
+
[[
|
|
110
|
+
(value) => value,
|
|
111
|
+
startsWith$1,
|
|
112
|
+
"string.starts-with",
|
|
113
|
+
prefix
|
|
114
|
+
]]
|
|
115
|
+
);
|
|
116
|
+
const endsWith = (suffix, {
|
|
117
|
+
bail = false
|
|
118
|
+
} = {}) => assert(
|
|
119
|
+
isString$1,
|
|
120
|
+
{
|
|
121
|
+
name: "endsWith",
|
|
122
|
+
bail,
|
|
123
|
+
code: "string.unsupported-type"
|
|
124
|
+
},
|
|
125
|
+
[[
|
|
126
|
+
(value) => value,
|
|
127
|
+
endsWith$1,
|
|
128
|
+
"string.ends-with",
|
|
129
|
+
suffix
|
|
130
|
+
]]
|
|
131
|
+
);
|
|
132
|
+
const hasValue = ({
|
|
133
|
+
exact = null,
|
|
134
|
+
max = null,
|
|
135
|
+
min = null,
|
|
136
|
+
range = null,
|
|
137
|
+
bail = false
|
|
138
|
+
} = {}) => {
|
|
139
|
+
const constraints = [];
|
|
140
|
+
if (exact !== null) constraints.push([(value) => value, isEqual, "number.exact", exact]);
|
|
141
|
+
if (max !== null) constraints.push([(value) => value, isLte, "number.max", max]);
|
|
142
|
+
if (min !== null) constraints.push([(value) => value, isGte, "number.min", min]);
|
|
143
|
+
if (range !== null) constraints.push([(value) => value, inRange, "number.range", range]);
|
|
144
|
+
return assert(
|
|
145
|
+
isNumber$1,
|
|
146
|
+
{
|
|
147
|
+
name: "hasValue",
|
|
148
|
+
bail,
|
|
149
|
+
code: "number.unsupported-type"
|
|
150
|
+
},
|
|
151
|
+
constraints
|
|
152
|
+
);
|
|
153
|
+
};
|
|
154
|
+
const multipleOf = (step, {
|
|
155
|
+
bail = false
|
|
156
|
+
} = {}) => assert(
|
|
157
|
+
isNumber$1,
|
|
158
|
+
{
|
|
159
|
+
name: "multipleOf",
|
|
160
|
+
bail,
|
|
161
|
+
code: "number.unsupported-type"
|
|
162
|
+
},
|
|
163
|
+
[[
|
|
164
|
+
(value) => value,
|
|
165
|
+
isMultipleOf,
|
|
166
|
+
"number.multiple-of",
|
|
167
|
+
step
|
|
168
|
+
]]
|
|
169
|
+
);
|
|
170
|
+
const oneOf = (values, {
|
|
86
171
|
equalTo = (a, b) => a === b,
|
|
87
172
|
bail = false
|
|
88
173
|
} = {}) => {
|
|
89
174
|
const haystack = isArray(values) ? values : Object.values(values);
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
fqn: "@modulify/validator/OneOf",
|
|
175
|
+
return assert((value) => haystack.some((item) => equalTo(item, value)), {
|
|
176
|
+
name: "oneOf",
|
|
93
177
|
bail,
|
|
94
|
-
|
|
178
|
+
code: "value.one-of",
|
|
179
|
+
args: [haystack]
|
|
95
180
|
});
|
|
96
181
|
};
|
|
97
182
|
export {
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
183
|
+
assert,
|
|
184
|
+
endsWith,
|
|
185
|
+
hasLength,
|
|
186
|
+
hasPattern,
|
|
187
|
+
hasSize,
|
|
188
|
+
hasValue,
|
|
189
|
+
isBigInt,
|
|
190
|
+
isBlob,
|
|
191
|
+
isBoolean,
|
|
192
|
+
isDate,
|
|
193
|
+
isDefined,
|
|
194
|
+
isEmail,
|
|
195
|
+
isFile,
|
|
196
|
+
isFunction,
|
|
197
|
+
isMap,
|
|
198
|
+
isNaN,
|
|
199
|
+
isNull,
|
|
200
|
+
isNumber,
|
|
201
|
+
isSet,
|
|
202
|
+
isString,
|
|
203
|
+
isSymbol,
|
|
204
|
+
multipleOf,
|
|
205
|
+
oneOf,
|
|
206
|
+
startsWith
|
|
109
207
|
};
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export declare const isEqual: (value: number, exact: number) => boolean;
|
|
2
|
+
export declare const isGte: (value: number, min: number) => boolean;
|
|
3
|
+
export declare const isLte: (value: number, max: number) => boolean;
|
|
4
|
+
export declare const inRange: (value: number, [min, max]: [number, number]) => boolean;
|
|
5
|
+
export declare const startsWith: (value: string, prefix: string) => boolean;
|
|
6
|
+
export declare const endsWith: (value: string, suffix: string) => boolean;
|
|
7
|
+
export declare const matchesPattern: (value: string, pattern: RegExp) => boolean;
|
|
8
|
+
export declare const isMultipleOf: (value: number, step: number) => boolean;
|