businesslens 0.2.2
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/.output/nitro.json +15 -0
- package/.output/public/_nuxt/ANTr5GBv.js +1 -0
- package/.output/public/_nuxt/B3Z-Zt7l.js +37 -0
- package/.output/public/_nuxt/Bd76-HGM.js +1 -0
- package/.output/public/_nuxt/Bf4VrETn.js +1 -0
- package/.output/public/_nuxt/CR3jGlpM.js +1 -0
- package/.output/public/_nuxt/CntoM1kL.js +1 -0
- package/.output/public/_nuxt/DogqooqX.js +1 -0
- package/.output/public/_nuxt/Zsu92SSr.js +1 -0
- package/.output/public/_nuxt/builds/latest.json +1 -0
- package/.output/public/_nuxt/builds/meta/e74555da-0c18-4e95-b959-2bdcc538677b.json +1 -0
- package/.output/public/_nuxt/default.CRZmPCG_.css +1 -0
- package/.output/public/_nuxt/e3lOfLH3.js +1 -0
- package/.output/public/_nuxt/entry.SgkJh-3P.css +1 -0
- package/.output/public/_nuxt/error-404.CTIGkQtd.css +1 -0
- package/.output/public/_nuxt/error-500.CKBWIF4V.css +1 -0
- package/.output/public/_nuxt/fCd72uLR.js +1 -0
- package/.output/public/_nuxt/inter-cyrillic-ext-wght-normal.BOeWTOD4.woff2 +0 -0
- package/.output/public/_nuxt/inter-cyrillic-wght-normal.DqGufNeO.woff2 +0 -0
- package/.output/public/_nuxt/inter-greek-ext-wght-normal.DlzME5K_.woff2 +0 -0
- package/.output/public/_nuxt/inter-greek-wght-normal.CkhJZR-_.woff2 +0 -0
- package/.output/public/_nuxt/inter-latin-ext-wght-normal.DO1Apj_S.woff2 +0 -0
- package/.output/public/_nuxt/inter-latin-wght-normal.Dx4kXJAl.woff2 +0 -0
- package/.output/public/_nuxt/inter-vietnamese-wght-normal.CBcvBZtf.woff2 +0 -0
- package/.output/public/_nuxt/vk0fkBN0.js +1 -0
- package/.output/public/_nuxt/zg6VsE4d.js +39 -0
- package/.output/public/brand/logo/businesslens-mark.svg +20 -0
- package/.output/public/favicon.svg +13 -0
- package/.output/server/chunks/_/error-500.mjs +19 -0
- package/.output/server/chunks/_/error-500.mjs.map +1 -0
- package/.output/server/chunks/_/icons.mjs +6150 -0
- package/.output/server/chunks/_/icons.mjs.map +1 -0
- package/.output/server/chunks/build/Card-DJ5Lo0Cn.mjs +161 -0
- package/.output/server/chunks/build/Card-DJ5Lo0Cn.mjs.map +1 -0
- package/.output/server/chunks/build/EntityInspector-fTjbuYoq.mjs +4412 -0
- package/.output/server/chunks/build/EntityInspector-fTjbuYoq.mjs.map +1 -0
- package/.output/server/chunks/build/Slideover-KOfskX1l.mjs +4226 -0
- package/.output/server/chunks/build/Slideover-KOfskX1l.mjs.map +1 -0
- package/.output/server/chunks/build/Tooltip-DkxwLaX6.mjs +1338 -0
- package/.output/server/chunks/build/Tooltip-DkxwLaX6.mjs.map +1 -0
- package/.output/server/chunks/build/client.precomputed.mjs +4 -0
- package/.output/server/chunks/build/client.precomputed.mjs.map +1 -0
- package/.output/server/chunks/build/default-BJSthw3t.mjs +8999 -0
- package/.output/server/chunks/build/default-BJSthw3t.mjs.map +1 -0
- package/.output/server/chunks/build/default-styles.BYgqaNao.mjs +8 -0
- package/.output/server/chunks/build/default-styles.BYgqaNao.mjs.map +1 -0
- package/.output/server/chunks/build/error-404-BOiGLcfP.mjs +96 -0
- package/.output/server/chunks/build/error-404-BOiGLcfP.mjs.map +1 -0
- package/.output/server/chunks/build/error-404-styles.DA-UkGXW.mjs +8 -0
- package/.output/server/chunks/build/error-404-styles.DA-UkGXW.mjs.map +1 -0
- package/.output/server/chunks/build/error-500-Bwyw373t.mjs +79 -0
- package/.output/server/chunks/build/error-500-Bwyw373t.mjs.map +1 -0
- package/.output/server/chunks/build/error-500-styles.De7qbKJ2.mjs +8 -0
- package/.output/server/chunks/build/error-500-styles.De7qbKJ2.mjs.map +1 -0
- package/.output/server/chunks/build/index-BuhKSZfH.mjs +313 -0
- package/.output/server/chunks/build/index-BuhKSZfH.mjs.map +1 -0
- package/.output/server/chunks/build/journeys-DHHOyxCM.mjs +244 -0
- package/.output/server/chunks/build/journeys-DHHOyxCM.mjs.map +1 -0
- package/.output/server/chunks/build/server.mjs +14099 -0
- package/.output/server/chunks/build/server.mjs.map +1 -0
- package/.output/server/chunks/build/styles.mjs +9 -0
- package/.output/server/chunks/build/styles.mjs.map +1 -0
- package/.output/server/chunks/build/topology-BJfDB_jA.mjs +295 -0
- package/.output/server/chunks/build/topology-BJfDB_jA.mjs.map +1 -0
- package/.output/server/chunks/build/useReport-pDAk-ETG.mjs +406 -0
- package/.output/server/chunks/build/useReport-pDAk-ETG.mjs.map +1 -0
- package/.output/server/chunks/nitro/nitro.mjs +5770 -0
- package/.output/server/chunks/nitro/nitro.mjs.map +1 -0
- package/.output/server/chunks/routes/api/report.get.mjs +617 -0
- package/.output/server/chunks/routes/api/report.get.mjs.map +1 -0
- package/.output/server/chunks/routes/renderer.mjs +451 -0
- package/.output/server/chunks/routes/renderer.mjs.map +1 -0
- package/.output/server/chunks/virtual/_virtual_spa-template.mjs +4 -0
- package/.output/server/chunks/virtual/_virtual_spa-template.mjs.map +1 -0
- package/.output/server/index.mjs +12 -0
- package/.output/server/index.mjs.map +1 -0
- package/.output/server/node_modules/.nitro/hookable@5.5.3/dist/index.mjs +290 -0
- package/.output/server/node_modules/.nitro/hookable@5.5.3/package.json +49 -0
- package/.output/server/node_modules/.nitro/hookable@6.1.1/dist/index.mjs +257 -0
- package/.output/server/node_modules/.nitro/hookable@6.1.1/package.json +53 -0
- package/.output/server/node_modules/@babel/parser/lib/index.js +14599 -0
- package/.output/server/node_modules/@babel/parser/package.json +50 -0
- package/.output/server/node_modules/@iconify/utils/lib/colors/index.js +295 -0
- package/.output/server/node_modules/@iconify/utils/lib/colors/keywords.js +701 -0
- package/.output/server/node_modules/@iconify/utils/lib/css/common.js +75 -0
- package/.output/server/node_modules/@iconify/utils/lib/css/format.js +39 -0
- package/.output/server/node_modules/@iconify/utils/lib/css/icon.js +47 -0
- package/.output/server/node_modules/@iconify/utils/lib/css/icons.js +128 -0
- package/.output/server/node_modules/@iconify/utils/lib/customisations/bool.js +19 -0
- package/.output/server/node_modules/@iconify/utils/lib/customisations/defaults.js +13 -0
- package/.output/server/node_modules/@iconify/utils/lib/customisations/flip.js +17 -0
- package/.output/server/node_modules/@iconify/utils/lib/customisations/merge.js +16 -0
- package/.output/server/node_modules/@iconify/utils/lib/customisations/rotate.js +30 -0
- package/.output/server/node_modules/@iconify/utils/lib/emoji/cleanup.js +78 -0
- package/.output/server/node_modules/@iconify/utils/lib/emoji/convert.js +100 -0
- package/.output/server/node_modules/@iconify/utils/lib/emoji/data.js +28 -0
- package/.output/server/node_modules/@iconify/utils/lib/emoji/format.js +58 -0
- package/.output/server/node_modules/@iconify/utils/lib/emoji/parse.js +48 -0
- package/.output/server/node_modules/@iconify/utils/lib/emoji/regex/base.js +203 -0
- package/.output/server/node_modules/@iconify/utils/lib/emoji/regex/create.js +33 -0
- package/.output/server/node_modules/@iconify/utils/lib/emoji/regex/numbers.js +132 -0
- package/.output/server/node_modules/@iconify/utils/lib/emoji/regex/similar.js +165 -0
- package/.output/server/node_modules/@iconify/utils/lib/emoji/regex/tree.js +79 -0
- package/.output/server/node_modules/@iconify/utils/lib/emoji/replace/find.js +92 -0
- package/.output/server/node_modules/@iconify/utils/lib/emoji/replace/replace.js +26 -0
- package/.output/server/node_modules/@iconify/utils/lib/emoji/test/components.js +76 -0
- package/.output/server/node_modules/@iconify/utils/lib/emoji/test/missing.js +66 -0
- package/.output/server/node_modules/@iconify/utils/lib/emoji/test/name.js +45 -0
- package/.output/server/node_modules/@iconify/utils/lib/emoji/test/parse.js +103 -0
- package/.output/server/node_modules/@iconify/utils/lib/emoji/test/similar.js +36 -0
- package/.output/server/node_modules/@iconify/utils/lib/emoji/test/tree.js +92 -0
- package/.output/server/node_modules/@iconify/utils/lib/emoji/test/variations.js +62 -0
- package/.output/server/node_modules/@iconify/utils/lib/icon/defaults.js +25 -0
- package/.output/server/node_modules/@iconify/utils/lib/icon/merge.js +16 -0
- package/.output/server/node_modules/@iconify/utils/lib/icon/name.js +57 -0
- package/.output/server/node_modules/@iconify/utils/lib/icon/square.js +33 -0
- package/.output/server/node_modules/@iconify/utils/lib/icon/transformations.js +12 -0
- package/.output/server/node_modules/@iconify/utils/lib/icon-set/convert-info.js +125 -0
- package/.output/server/node_modules/@iconify/utils/lib/icon-set/expand.js +19 -0
- package/.output/server/node_modules/@iconify/utils/lib/icon-set/get-icon.js +25 -0
- package/.output/server/node_modules/@iconify/utils/lib/icon-set/get-icons.js +36 -0
- package/.output/server/node_modules/@iconify/utils/lib/icon-set/minify.js +91 -0
- package/.output/server/node_modules/@iconify/utils/lib/icon-set/parse.js +46 -0
- package/.output/server/node_modules/@iconify/utils/lib/icon-set/tree.js +23 -0
- package/.output/server/node_modules/@iconify/utils/lib/icon-set/validate-basic.js +42 -0
- package/.output/server/node_modules/@iconify/utils/lib/icon-set/validate.js +123 -0
- package/.output/server/node_modules/@iconify/utils/lib/index.js +52 -0
- package/.output/server/node_modules/@iconify/utils/lib/loader/custom.js +30 -0
- package/.output/server/node_modules/@iconify/utils/lib/loader/loader.js +26 -0
- package/.output/server/node_modules/@iconify/utils/lib/loader/modern.js +27 -0
- package/.output/server/node_modules/@iconify/utils/lib/loader/utils.js +105 -0
- package/.output/server/node_modules/@iconify/utils/lib/misc/objects.js +26 -0
- package/.output/server/node_modules/@iconify/utils/lib/misc/strings.js +26 -0
- package/.output/server/node_modules/@iconify/utils/lib/misc/title.js +9 -0
- package/.output/server/node_modules/@iconify/utils/lib/svg/build.js +113 -0
- package/.output/server/node_modules/@iconify/utils/lib/svg/defs.js +31 -0
- package/.output/server/node_modules/@iconify/utils/lib/svg/encode-svg-for-css.js +13 -0
- package/.output/server/node_modules/@iconify/utils/lib/svg/html.js +9 -0
- package/.output/server/node_modules/@iconify/utils/lib/svg/id.js +41 -0
- package/.output/server/node_modules/@iconify/utils/lib/svg/inner-html.js +22 -0
- package/.output/server/node_modules/@iconify/utils/lib/svg/parse.js +67 -0
- package/.output/server/node_modules/@iconify/utils/lib/svg/pretty.js +54 -0
- package/.output/server/node_modules/@iconify/utils/lib/svg/size.js +27 -0
- package/.output/server/node_modules/@iconify/utils/lib/svg/trim.js +7 -0
- package/.output/server/node_modules/@iconify/utils/lib/svg/url.js +22 -0
- package/.output/server/node_modules/@iconify/utils/lib/svg/viewbox.js +8 -0
- package/.output/server/node_modules/@iconify/utils/package.json +119 -0
- package/.output/server/node_modules/@vue/compiler-core/dist/compiler-core.cjs.prod.js +6759 -0
- package/.output/server/node_modules/@vue/compiler-core/package.json +58 -0
- package/.output/server/node_modules/@vue/compiler-dom/dist/compiler-dom.cjs.prod.js +689 -0
- package/.output/server/node_modules/@vue/compiler-dom/package.json +57 -0
- package/.output/server/node_modules/@vue/compiler-ssr/dist/compiler-ssr.cjs.js +1413 -0
- package/.output/server/node_modules/@vue/compiler-ssr/package.json +34 -0
- package/.output/server/node_modules/@vue/devtools-api/dist/index.js +2 -0
- package/.output/server/node_modules/@vue/devtools-api/package.json +34 -0
- package/.output/server/node_modules/@vue/devtools-kit/dist/index.js +5670 -0
- package/.output/server/node_modules/@vue/devtools-kit/package.json +44 -0
- package/.output/server/node_modules/@vue/devtools-shared/dist/index.js +239 -0
- package/.output/server/node_modules/@vue/devtools-shared/package.json +33 -0
- package/.output/server/node_modules/@vue/reactivity/dist/reactivity.cjs.prod.js +1899 -0
- package/.output/server/node_modules/@vue/reactivity/package.json +55 -0
- package/.output/server/node_modules/@vue/runtime-core/dist/runtime-core.cjs.prod.js +6940 -0
- package/.output/server/node_modules/@vue/runtime-core/package.json +52 -0
- package/.output/server/node_modules/@vue/runtime-dom/dist/runtime-dom.cjs.prod.js +1822 -0
- package/.output/server/node_modules/@vue/runtime-dom/package.json +60 -0
- package/.output/server/node_modules/@vue/server-renderer/dist/server-renderer.cjs.prod.js +896 -0
- package/.output/server/node_modules/@vue/server-renderer/package.json +55 -0
- package/.output/server/node_modules/@vue/shared/dist/shared.cjs.prod.js +604 -0
- package/.output/server/node_modules/@vue/shared/package.json +47 -0
- package/.output/server/node_modules/@vue-flow/core/dist/vue-flow-core.mjs +10186 -0
- package/.output/server/node_modules/@vue-flow/core/package.json +95 -0
- package/.output/server/node_modules/ajv/dist/2020.js +55 -0
- package/.output/server/node_modules/ajv/dist/ajv.js +50 -0
- package/.output/server/node_modules/ajv/dist/compile/codegen/code.js +156 -0
- package/.output/server/node_modules/ajv/dist/compile/codegen/index.js +697 -0
- package/.output/server/node_modules/ajv/dist/compile/codegen/scope.js +143 -0
- package/.output/server/node_modules/ajv/dist/compile/errors.js +123 -0
- package/.output/server/node_modules/ajv/dist/compile/index.js +242 -0
- package/.output/server/node_modules/ajv/dist/compile/names.js +28 -0
- package/.output/server/node_modules/ajv/dist/compile/ref_error.js +12 -0
- package/.output/server/node_modules/ajv/dist/compile/resolve.js +155 -0
- package/.output/server/node_modules/ajv/dist/compile/rules.js +26 -0
- package/.output/server/node_modules/ajv/dist/compile/util.js +178 -0
- package/.output/server/node_modules/ajv/dist/compile/validate/applicability.js +19 -0
- package/.output/server/node_modules/ajv/dist/compile/validate/boolSchema.js +50 -0
- package/.output/server/node_modules/ajv/dist/compile/validate/dataType.js +203 -0
- package/.output/server/node_modules/ajv/dist/compile/validate/defaults.js +35 -0
- package/.output/server/node_modules/ajv/dist/compile/validate/index.js +520 -0
- package/.output/server/node_modules/ajv/dist/compile/validate/keyword.js +124 -0
- package/.output/server/node_modules/ajv/dist/compile/validate/subschema.js +81 -0
- package/.output/server/node_modules/ajv/dist/core.js +618 -0
- package/.output/server/node_modules/ajv/dist/refs/data.json +13 -0
- package/.output/server/node_modules/ajv/dist/refs/json-schema-2020-12/index.js +30 -0
- package/.output/server/node_modules/ajv/dist/refs/json-schema-2020-12/meta/applicator.json +48 -0
- package/.output/server/node_modules/ajv/dist/refs/json-schema-2020-12/meta/content.json +17 -0
- package/.output/server/node_modules/ajv/dist/refs/json-schema-2020-12/meta/core.json +51 -0
- package/.output/server/node_modules/ajv/dist/refs/json-schema-2020-12/meta/format-annotation.json +14 -0
- package/.output/server/node_modules/ajv/dist/refs/json-schema-2020-12/meta/meta-data.json +37 -0
- package/.output/server/node_modules/ajv/dist/refs/json-schema-2020-12/meta/unevaluated.json +15 -0
- package/.output/server/node_modules/ajv/dist/refs/json-schema-2020-12/meta/validation.json +90 -0
- package/.output/server/node_modules/ajv/dist/refs/json-schema-2020-12/schema.json +55 -0
- package/.output/server/node_modules/ajv/dist/refs/json-schema-draft-07.json +151 -0
- package/.output/server/node_modules/ajv/dist/runtime/equal.js +7 -0
- package/.output/server/node_modules/ajv/dist/runtime/ucs2length.js +24 -0
- package/.output/server/node_modules/ajv/dist/runtime/uri.js +6 -0
- package/.output/server/node_modules/ajv/dist/runtime/validation_error.js +11 -0
- package/.output/server/node_modules/ajv/dist/vocabularies/applicator/additionalItems.js +49 -0
- package/.output/server/node_modules/ajv/dist/vocabularies/applicator/additionalProperties.js +106 -0
- package/.output/server/node_modules/ajv/dist/vocabularies/applicator/allOf.js +23 -0
- package/.output/server/node_modules/ajv/dist/vocabularies/applicator/anyOf.js +12 -0
- package/.output/server/node_modules/ajv/dist/vocabularies/applicator/contains.js +95 -0
- package/.output/server/node_modules/ajv/dist/vocabularies/applicator/dependencies.js +85 -0
- package/.output/server/node_modules/ajv/dist/vocabularies/applicator/dependentSchemas.js +11 -0
- package/.output/server/node_modules/ajv/dist/vocabularies/applicator/if.js +66 -0
- package/.output/server/node_modules/ajv/dist/vocabularies/applicator/index.js +44 -0
- package/.output/server/node_modules/ajv/dist/vocabularies/applicator/items.js +52 -0
- package/.output/server/node_modules/ajv/dist/vocabularies/applicator/items2020.js +30 -0
- package/.output/server/node_modules/ajv/dist/vocabularies/applicator/not.js +26 -0
- package/.output/server/node_modules/ajv/dist/vocabularies/applicator/oneOf.js +60 -0
- package/.output/server/node_modules/ajv/dist/vocabularies/applicator/patternProperties.js +75 -0
- package/.output/server/node_modules/ajv/dist/vocabularies/applicator/prefixItems.js +12 -0
- package/.output/server/node_modules/ajv/dist/vocabularies/applicator/properties.js +54 -0
- package/.output/server/node_modules/ajv/dist/vocabularies/applicator/propertyNames.js +38 -0
- package/.output/server/node_modules/ajv/dist/vocabularies/applicator/thenElse.js +13 -0
- package/.output/server/node_modules/ajv/dist/vocabularies/code.js +131 -0
- package/.output/server/node_modules/ajv/dist/vocabularies/core/id.js +10 -0
- package/.output/server/node_modules/ajv/dist/vocabularies/core/index.js +16 -0
- package/.output/server/node_modules/ajv/dist/vocabularies/core/ref.js +122 -0
- package/.output/server/node_modules/ajv/dist/vocabularies/discriminator/index.js +104 -0
- package/.output/server/node_modules/ajv/dist/vocabularies/discriminator/types.js +9 -0
- package/.output/server/node_modules/ajv/dist/vocabularies/draft2020.js +23 -0
- package/.output/server/node_modules/ajv/dist/vocabularies/draft7.js +17 -0
- package/.output/server/node_modules/ajv/dist/vocabularies/dynamic/dynamicAnchor.js +30 -0
- package/.output/server/node_modules/ajv/dist/vocabularies/dynamic/dynamicRef.js +51 -0
- package/.output/server/node_modules/ajv/dist/vocabularies/dynamic/index.js +9 -0
- package/.output/server/node_modules/ajv/dist/vocabularies/dynamic/recursiveAnchor.js +16 -0
- package/.output/server/node_modules/ajv/dist/vocabularies/dynamic/recursiveRef.js +10 -0
- package/.output/server/node_modules/ajv/dist/vocabularies/format/format.js +92 -0
- package/.output/server/node_modules/ajv/dist/vocabularies/format/index.js +6 -0
- package/.output/server/node_modules/ajv/dist/vocabularies/metadata.js +18 -0
- package/.output/server/node_modules/ajv/dist/vocabularies/next.js +8 -0
- package/.output/server/node_modules/ajv/dist/vocabularies/unevaluated/index.js +7 -0
- package/.output/server/node_modules/ajv/dist/vocabularies/unevaluated/unevaluatedItems.js +40 -0
- package/.output/server/node_modules/ajv/dist/vocabularies/unevaluated/unevaluatedProperties.js +65 -0
- package/.output/server/node_modules/ajv/dist/vocabularies/validation/const.js +25 -0
- package/.output/server/node_modules/ajv/dist/vocabularies/validation/dependentRequired.js +12 -0
- package/.output/server/node_modules/ajv/dist/vocabularies/validation/enum.js +48 -0
- package/.output/server/node_modules/ajv/dist/vocabularies/validation/index.js +33 -0
- package/.output/server/node_modules/ajv/dist/vocabularies/validation/limitContains.js +15 -0
- package/.output/server/node_modules/ajv/dist/vocabularies/validation/limitItems.js +24 -0
- package/.output/server/node_modules/ajv/dist/vocabularies/validation/limitLength.js +27 -0
- package/.output/server/node_modules/ajv/dist/vocabularies/validation/limitNumber.js +27 -0
- package/.output/server/node_modules/ajv/dist/vocabularies/validation/limitProperties.js +24 -0
- package/.output/server/node_modules/ajv/dist/vocabularies/validation/multipleOf.js +26 -0
- package/.output/server/node_modules/ajv/dist/vocabularies/validation/pattern.js +24 -0
- package/.output/server/node_modules/ajv/dist/vocabularies/validation/required.js +79 -0
- package/.output/server/node_modules/ajv/dist/vocabularies/validation/uniqueItems.js +64 -0
- package/.output/server/node_modules/ajv/package.json +126 -0
- package/.output/server/node_modules/ajv-formats/dist/formats.js +208 -0
- package/.output/server/node_modules/ajv-formats/dist/index.js +37 -0
- package/.output/server/node_modules/ajv-formats/dist/limit.js +69 -0
- package/.output/server/node_modules/ajv-formats/package.json +74 -0
- package/.output/server/node_modules/birpc/dist/index.mjs +291 -0
- package/.output/server/node_modules/birpc/package.json +57 -0
- package/.output/server/node_modules/consola/dist/chunks/prompt.mjs +280 -0
- package/.output/server/node_modules/consola/dist/core.mjs +512 -0
- package/.output/server/node_modules/consola/dist/index.mjs +651 -0
- package/.output/server/node_modules/consola/dist/shared/consola.DRwqZj3T.mjs +72 -0
- package/.output/server/node_modules/consola/dist/shared/consola.DXBYu-KD.mjs +288 -0
- package/.output/server/node_modules/consola/package.json +136 -0
- package/.output/server/node_modules/devalue/index.js +4 -0
- package/.output/server/node_modules/devalue/package.json +40 -0
- package/.output/server/node_modules/devalue/src/base64.js +60 -0
- package/.output/server/node_modules/devalue/src/constants.js +12 -0
- package/.output/server/node_modules/devalue/src/parse.js +283 -0
- package/.output/server/node_modules/devalue/src/stringify.js +401 -0
- package/.output/server/node_modules/devalue/src/uneval.js +552 -0
- package/.output/server/node_modules/devalue/src/utils.js +160 -0
- package/.output/server/node_modules/entities/dist/commonjs/decode-codepoint.js +77 -0
- package/.output/server/node_modules/entities/dist/commonjs/decode.js +568 -0
- package/.output/server/node_modules/entities/dist/commonjs/generated/decode-data-html.js +7 -0
- package/.output/server/node_modules/entities/dist/commonjs/generated/decode-data-xml.js +7 -0
- package/.output/server/node_modules/entities/dist/commonjs/internal/bin-trie-flags.js +21 -0
- package/.output/server/node_modules/entities/dist/commonjs/internal/decode-shared.js +31 -0
- package/.output/server/node_modules/entities/dist/commonjs/package.json +3 -0
- package/.output/server/node_modules/entities/package.json +120 -0
- package/.output/server/node_modules/estree-walker/dist/umd/estree-walker.js +344 -0
- package/.output/server/node_modules/estree-walker/package.json +37 -0
- package/.output/server/node_modules/fast-deep-equal/index.js +46 -0
- package/.output/server/node_modules/fast-deep-equal/package.json +61 -0
- package/.output/server/node_modules/fast-uri/index.js +406 -0
- package/.output/server/node_modules/fast-uri/lib/schemes.js +267 -0
- package/.output/server/node_modules/fast-uri/lib/utils.js +443 -0
- package/.output/server/node_modules/fast-uri/package.json +68 -0
- package/.output/server/node_modules/json-schema-traverse/index.js +93 -0
- package/.output/server/node_modules/json-schema-traverse/package.json +43 -0
- package/.output/server/node_modules/perfect-debounce/dist/index.mjs +89 -0
- package/.output/server/node_modules/perfect-debounce/package.json +41 -0
- package/.output/server/node_modules/source-map-js/lib/array-set.js +121 -0
- package/.output/server/node_modules/source-map-js/lib/base64-vlq.js +140 -0
- package/.output/server/node_modules/source-map-js/lib/base64.js +67 -0
- package/.output/server/node_modules/source-map-js/lib/binary-search.js +111 -0
- package/.output/server/node_modules/source-map-js/lib/mapping-list.js +79 -0
- package/.output/server/node_modules/source-map-js/lib/quick-sort.js +132 -0
- package/.output/server/node_modules/source-map-js/lib/source-map-consumer.js +1188 -0
- package/.output/server/node_modules/source-map-js/lib/source-map-generator.js +444 -0
- package/.output/server/node_modules/source-map-js/lib/source-node.js +413 -0
- package/.output/server/node_modules/source-map-js/lib/util.js +594 -0
- package/.output/server/node_modules/source-map-js/package.json +71 -0
- package/.output/server/node_modules/source-map-js/source-map.js +8 -0
- package/.output/server/node_modules/tailwindcss/dist/chunk-X4GG3EDV.mjs +1 -0
- package/.output/server/node_modules/tailwindcss/dist/colors.mjs +1 -0
- package/.output/server/node_modules/tailwindcss/package.json +89 -0
- package/.output/server/node_modules/ufo/dist/index.mjs +645 -0
- package/.output/server/node_modules/ufo/package.json +48 -0
- package/.output/server/node_modules/unhead/dist/index.mjs +9 -0
- package/.output/server/node_modules/unhead/dist/parser.mjs +508 -0
- package/.output/server/node_modules/unhead/dist/plugins.mjs +101 -0
- package/.output/server/node_modules/unhead/dist/scripts.mjs +30 -0
- package/.output/server/node_modules/unhead/dist/server.mjs +180 -0
- package/.output/server/node_modules/unhead/dist/shared/unhead.B3VbJo7Y.mjs +207 -0
- package/.output/server/node_modules/unhead/dist/shared/unhead.BYvz9V1x.mjs +43 -0
- package/.output/server/node_modules/unhead/dist/shared/unhead.BnoAbrHA.mjs +269 -0
- package/.output/server/node_modules/unhead/dist/shared/unhead.CaI5ZD4O.mjs +182 -0
- package/.output/server/node_modules/unhead/dist/shared/unhead.CbpEuj3y.mjs +71 -0
- package/.output/server/node_modules/unhead/dist/shared/unhead.D4vSFytZ.mjs +236 -0
- package/.output/server/node_modules/unhead/dist/shared/unhead.DQc16pHI.mjs +196 -0
- package/.output/server/node_modules/unhead/dist/shared/unhead.Dh1cQCTe.mjs +44 -0
- package/.output/server/node_modules/unhead/dist/shared/unhead.TxTMM7cM.mjs +166 -0
- package/.output/server/node_modules/unhead/dist/shared/unhead.yem5I2v_.mjs +38 -0
- package/.output/server/node_modules/unhead/dist/utils.mjs +5 -0
- package/.output/server/node_modules/unhead/package.json +105 -0
- package/.output/server/node_modules/vue/dist/vue.cjs.js +80 -0
- package/.output/server/node_modules/vue/dist/vue.cjs.prod.js +66 -0
- package/.output/server/node_modules/vue/index.js +7 -0
- package/.output/server/node_modules/vue/index.mjs +1 -0
- package/.output/server/node_modules/vue/package.json +112 -0
- package/.output/server/node_modules/vue/server-renderer/index.mjs +1 -0
- package/.output/server/node_modules/vue-bundle-renderer/dist/runtime.mjs +249 -0
- package/.output/server/node_modules/vue-bundle-renderer/package.json +57 -0
- package/.output/server/node_modules/vue-router/dist/devtools-DCoWQoU_.js +1034 -0
- package/.output/server/node_modules/vue-router/dist/useApi-s_02lHjl.js +181 -0
- package/.output/server/node_modules/vue-router/dist/vue-router.js +1499 -0
- package/.output/server/node_modules/vue-router/package.json +226 -0
- package/.output/server/node_modules/vue-router/vue-router.node.mjs +2 -0
- package/.output/server/package.json +41 -0
- package/README.md +114 -0
- package/THIRD_PARTY_NOTICES.md +28 -0
- package/bin/businesslens.mjs +181 -0
- package/package.json +68 -0
- package/packages/report-schema/schemas/report.schema.json +235 -0
- package/packages/report-schema/types/index.ts +1 -0
- package/packages/report-schema/types/report.ts +101 -0
- package/packages/report-schema/validate.mjs +111 -0
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const code_1 = require("../code");
|
|
4
|
+
const codegen_1 = require("../../compile/codegen");
|
|
5
|
+
const util_1 = require("../../compile/util");
|
|
6
|
+
const error = {
|
|
7
|
+
message: ({ params: { missingProperty } }) => (0, codegen_1.str) `must have required property '${missingProperty}'`,
|
|
8
|
+
params: ({ params: { missingProperty } }) => (0, codegen_1._) `{missingProperty: ${missingProperty}}`,
|
|
9
|
+
};
|
|
10
|
+
const def = {
|
|
11
|
+
keyword: "required",
|
|
12
|
+
type: "object",
|
|
13
|
+
schemaType: "array",
|
|
14
|
+
$data: true,
|
|
15
|
+
error,
|
|
16
|
+
code(cxt) {
|
|
17
|
+
const { gen, schema, schemaCode, data, $data, it } = cxt;
|
|
18
|
+
const { opts } = it;
|
|
19
|
+
if (!$data && schema.length === 0)
|
|
20
|
+
return;
|
|
21
|
+
const useLoop = schema.length >= opts.loopRequired;
|
|
22
|
+
if (it.allErrors)
|
|
23
|
+
allErrorsMode();
|
|
24
|
+
else
|
|
25
|
+
exitOnErrorMode();
|
|
26
|
+
if (opts.strictRequired) {
|
|
27
|
+
const props = cxt.parentSchema.properties;
|
|
28
|
+
const { definedProperties } = cxt.it;
|
|
29
|
+
for (const requiredKey of schema) {
|
|
30
|
+
if ((props === null || props === void 0 ? void 0 : props[requiredKey]) === undefined && !definedProperties.has(requiredKey)) {
|
|
31
|
+
const schemaPath = it.schemaEnv.baseId + it.errSchemaPath;
|
|
32
|
+
const msg = `required property "${requiredKey}" is not defined at "${schemaPath}" (strictRequired)`;
|
|
33
|
+
(0, util_1.checkStrictMode)(it, msg, it.opts.strictRequired);
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
function allErrorsMode() {
|
|
38
|
+
if (useLoop || $data) {
|
|
39
|
+
cxt.block$data(codegen_1.nil, loopAllRequired);
|
|
40
|
+
}
|
|
41
|
+
else {
|
|
42
|
+
for (const prop of schema) {
|
|
43
|
+
(0, code_1.checkReportMissingProp)(cxt, prop);
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
function exitOnErrorMode() {
|
|
48
|
+
const missing = gen.let("missing");
|
|
49
|
+
if (useLoop || $data) {
|
|
50
|
+
const valid = gen.let("valid", true);
|
|
51
|
+
cxt.block$data(valid, () => loopUntilMissing(missing, valid));
|
|
52
|
+
cxt.ok(valid);
|
|
53
|
+
}
|
|
54
|
+
else {
|
|
55
|
+
gen.if((0, code_1.checkMissingProp)(cxt, schema, missing));
|
|
56
|
+
(0, code_1.reportMissingProp)(cxt, missing);
|
|
57
|
+
gen.else();
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
function loopAllRequired() {
|
|
61
|
+
gen.forOf("prop", schemaCode, (prop) => {
|
|
62
|
+
cxt.setParams({ missingProperty: prop });
|
|
63
|
+
gen.if((0, code_1.noPropertyInData)(gen, data, prop, opts.ownProperties), () => cxt.error());
|
|
64
|
+
});
|
|
65
|
+
}
|
|
66
|
+
function loopUntilMissing(missing, valid) {
|
|
67
|
+
cxt.setParams({ missingProperty: missing });
|
|
68
|
+
gen.forOf(missing, schemaCode, () => {
|
|
69
|
+
gen.assign(valid, (0, code_1.propertyInData)(gen, data, missing, opts.ownProperties));
|
|
70
|
+
gen.if((0, codegen_1.not)(valid), () => {
|
|
71
|
+
cxt.error();
|
|
72
|
+
gen.break();
|
|
73
|
+
});
|
|
74
|
+
}, codegen_1.nil);
|
|
75
|
+
}
|
|
76
|
+
},
|
|
77
|
+
};
|
|
78
|
+
exports.default = def;
|
|
79
|
+
//# sourceMappingURL=required.js.map
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const dataType_1 = require("../../compile/validate/dataType");
|
|
4
|
+
const codegen_1 = require("../../compile/codegen");
|
|
5
|
+
const util_1 = require("../../compile/util");
|
|
6
|
+
const equal_1 = require("../../runtime/equal");
|
|
7
|
+
const error = {
|
|
8
|
+
message: ({ params: { i, j } }) => (0, codegen_1.str) `must NOT have duplicate items (items ## ${j} and ${i} are identical)`,
|
|
9
|
+
params: ({ params: { i, j } }) => (0, codegen_1._) `{i: ${i}, j: ${j}}`,
|
|
10
|
+
};
|
|
11
|
+
const def = {
|
|
12
|
+
keyword: "uniqueItems",
|
|
13
|
+
type: "array",
|
|
14
|
+
schemaType: "boolean",
|
|
15
|
+
$data: true,
|
|
16
|
+
error,
|
|
17
|
+
code(cxt) {
|
|
18
|
+
const { gen, data, $data, schema, parentSchema, schemaCode, it } = cxt;
|
|
19
|
+
if (!$data && !schema)
|
|
20
|
+
return;
|
|
21
|
+
const valid = gen.let("valid");
|
|
22
|
+
const itemTypes = parentSchema.items ? (0, dataType_1.getSchemaTypes)(parentSchema.items) : [];
|
|
23
|
+
cxt.block$data(valid, validateUniqueItems, (0, codegen_1._) `${schemaCode} === false`);
|
|
24
|
+
cxt.ok(valid);
|
|
25
|
+
function validateUniqueItems() {
|
|
26
|
+
const i = gen.let("i", (0, codegen_1._) `${data}.length`);
|
|
27
|
+
const j = gen.let("j");
|
|
28
|
+
cxt.setParams({ i, j });
|
|
29
|
+
gen.assign(valid, true);
|
|
30
|
+
gen.if((0, codegen_1._) `${i} > 1`, () => (canOptimize() ? loopN : loopN2)(i, j));
|
|
31
|
+
}
|
|
32
|
+
function canOptimize() {
|
|
33
|
+
return itemTypes.length > 0 && !itemTypes.some((t) => t === "object" || t === "array");
|
|
34
|
+
}
|
|
35
|
+
function loopN(i, j) {
|
|
36
|
+
const item = gen.name("item");
|
|
37
|
+
const wrongType = (0, dataType_1.checkDataTypes)(itemTypes, item, it.opts.strictNumbers, dataType_1.DataType.Wrong);
|
|
38
|
+
const indices = gen.const("indices", (0, codegen_1._) `{}`);
|
|
39
|
+
gen.for((0, codegen_1._) `;${i}--;`, () => {
|
|
40
|
+
gen.let(item, (0, codegen_1._) `${data}[${i}]`);
|
|
41
|
+
gen.if(wrongType, (0, codegen_1._) `continue`);
|
|
42
|
+
if (itemTypes.length > 1)
|
|
43
|
+
gen.if((0, codegen_1._) `typeof ${item} == "string"`, (0, codegen_1._) `${item} += "_"`);
|
|
44
|
+
gen
|
|
45
|
+
.if((0, codegen_1._) `typeof ${indices}[${item}] == "number"`, () => {
|
|
46
|
+
gen.assign(j, (0, codegen_1._) `${indices}[${item}]`);
|
|
47
|
+
cxt.error();
|
|
48
|
+
gen.assign(valid, false).break();
|
|
49
|
+
})
|
|
50
|
+
.code((0, codegen_1._) `${indices}[${item}] = ${i}`);
|
|
51
|
+
});
|
|
52
|
+
}
|
|
53
|
+
function loopN2(i, j) {
|
|
54
|
+
const eql = (0, util_1.useFunc)(gen, equal_1.default);
|
|
55
|
+
const outer = gen.name("outer");
|
|
56
|
+
gen.label(outer).for((0, codegen_1._) `;${i}--;`, () => gen.for((0, codegen_1._) `${j} = ${i}; ${j}--;`, () => gen.if((0, codegen_1._) `${eql}(${data}[${i}], ${data}[${j}])`, () => {
|
|
57
|
+
cxt.error();
|
|
58
|
+
gen.assign(valid, false).break(outer);
|
|
59
|
+
})));
|
|
60
|
+
}
|
|
61
|
+
},
|
|
62
|
+
};
|
|
63
|
+
exports.default = def;
|
|
64
|
+
//# sourceMappingURL=uniqueItems.js.map
|
|
@@ -0,0 +1,126 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "ajv",
|
|
3
|
+
"version": "8.17.1",
|
|
4
|
+
"description": "Another JSON Schema Validator",
|
|
5
|
+
"main": "dist/ajv.js",
|
|
6
|
+
"types": "dist/ajv.d.ts",
|
|
7
|
+
"files": [
|
|
8
|
+
"lib/",
|
|
9
|
+
"dist/",
|
|
10
|
+
".runkit_example.js"
|
|
11
|
+
],
|
|
12
|
+
"scripts": {
|
|
13
|
+
"eslint": "eslint \"lib/**/*.ts\" \"spec/**/*.*s\" --ignore-pattern spec/JSON-Schema-Test-Suite",
|
|
14
|
+
"prettier:write": "prettier --write \"./**/*.{json,yaml,js,ts}\"",
|
|
15
|
+
"prettier:check": "prettier --list-different \"./**/*.{json,yaml,js,ts}\"",
|
|
16
|
+
"test-spec": "cross-env TS_NODE_PROJECT=spec/tsconfig.json mocha -r ts-node/register \"spec/**/*.spec.{ts,js}\" -R dot",
|
|
17
|
+
"test-codegen": "nyc cross-env TS_NODE_PROJECT=spec/tsconfig.json mocha -r ts-node/register 'spec/codegen.spec.ts' -R spec",
|
|
18
|
+
"test-debug": "npm run test-spec -- --inspect-brk",
|
|
19
|
+
"test-cov": "nyc npm run test-spec",
|
|
20
|
+
"rollup": "rm -rf bundle && rollup -c",
|
|
21
|
+
"bundle": "rm -rf bundle && node ./scripts/bundle.js ajv ajv7 ajv7 && node ./scripts/bundle.js 2019 ajv2019 ajv2019 && node ./scripts/bundle.js 2020 ajv2020 ajv2020 && node ./scripts/bundle.js jtd ajvJTD ajvJTD",
|
|
22
|
+
"build": "rm -rf dist && tsc && cp -r lib/refs dist && rm dist/refs/json-schema-2019-09/index.ts && rm dist/refs/json-schema-2020-12/index.ts && rm dist/refs/jtd-schema.ts",
|
|
23
|
+
"json-tests": "rm -rf spec/_json/*.js && node scripts/jsontests",
|
|
24
|
+
"test-karma": "karma start",
|
|
25
|
+
"test-browser": "rm -rf .browser && npm run bundle && scripts/prepare-tests && karma start",
|
|
26
|
+
"test-all": "npm run test-cov && if-node-version 12 npm run test-browser",
|
|
27
|
+
"test": "npm run json-tests && npm run prettier:check && npm run eslint && npm link && npm link --legacy-peer-deps ajv && npm run test-cov",
|
|
28
|
+
"test-ci": "AJV_FULL_TEST=true npm test",
|
|
29
|
+
"prepublish": "npm run build",
|
|
30
|
+
"benchmark": "npm i && npm run build && npm link && cd ./benchmark && npm link --legacy-peer-deps ajv && npm i && node ./jtd",
|
|
31
|
+
"docs:dev": "./scripts/prepare-site && vuepress dev docs",
|
|
32
|
+
"docs:build": "./scripts/prepare-site && vuepress build docs"
|
|
33
|
+
},
|
|
34
|
+
"nyc": {
|
|
35
|
+
"exclude": [
|
|
36
|
+
"**/spec/**",
|
|
37
|
+
"node_modules"
|
|
38
|
+
],
|
|
39
|
+
"reporter": [
|
|
40
|
+
"lcov",
|
|
41
|
+
"text-summary"
|
|
42
|
+
]
|
|
43
|
+
},
|
|
44
|
+
"repository": "ajv-validator/ajv",
|
|
45
|
+
"keywords": [
|
|
46
|
+
"JSON",
|
|
47
|
+
"schema",
|
|
48
|
+
"validator",
|
|
49
|
+
"validation",
|
|
50
|
+
"jsonschema",
|
|
51
|
+
"json-schema",
|
|
52
|
+
"json-schema-validator",
|
|
53
|
+
"json-schema-validation"
|
|
54
|
+
],
|
|
55
|
+
"author": "Evgeny Poberezkin",
|
|
56
|
+
"license": "MIT",
|
|
57
|
+
"bugs": "https://github.com/ajv-validator/ajv/issues",
|
|
58
|
+
"homepage": "https://ajv.js.org",
|
|
59
|
+
"runkitExampleFilename": ".runkit_example.js",
|
|
60
|
+
"dependencies": {
|
|
61
|
+
"fast-deep-equal": "^3.1.3",
|
|
62
|
+
"fast-uri": "^3.0.1",
|
|
63
|
+
"json-schema-traverse": "^1.0.0",
|
|
64
|
+
"require-from-string": "^2.0.2"
|
|
65
|
+
},
|
|
66
|
+
"devDependencies": {
|
|
67
|
+
"@ajv-validator/config": "^0.5.0",
|
|
68
|
+
"@rollup/plugin-commonjs": "^25.0.7",
|
|
69
|
+
"@rollup/plugin-json": "^6.1.0",
|
|
70
|
+
"@rollup/plugin-node-resolve": "^15.2.3",
|
|
71
|
+
"@rollup/plugin-typescript": "^11.1.6",
|
|
72
|
+
"@types/chai": "^4.3.11",
|
|
73
|
+
"@types/mocha": "^10.0.6",
|
|
74
|
+
"@types/node": "^20.11.30",
|
|
75
|
+
"@types/require-from-string": "^1.2.3",
|
|
76
|
+
"@typescript-eslint/eslint-plugin": "^7.3.1",
|
|
77
|
+
"@typescript-eslint/parser": "^7.3.1",
|
|
78
|
+
"ajv-formats": "^3.0.1",
|
|
79
|
+
"browserify": "^17.0.0",
|
|
80
|
+
"chai": "^4.4.1",
|
|
81
|
+
"cross-env": "^7.0.3",
|
|
82
|
+
"dayjs": "^1.11.10",
|
|
83
|
+
"dayjs-plugin-utc": "^0.1.2",
|
|
84
|
+
"eslint": "^8.57.0",
|
|
85
|
+
"eslint-config-prettier": "^9.1.0",
|
|
86
|
+
"glob": "^10.3.10",
|
|
87
|
+
"husky": "^9.0.11",
|
|
88
|
+
"if-node-version": "^1.1.1",
|
|
89
|
+
"jimp": "^0.22.10",
|
|
90
|
+
"js-beautify": "^1.15.1",
|
|
91
|
+
"json-schema-test": "^2.0.0",
|
|
92
|
+
"karma": "^6.4.2",
|
|
93
|
+
"karma-chrome-launcher": "^3.2.0",
|
|
94
|
+
"karma-mocha": "^2.0.1",
|
|
95
|
+
"lint-staged": "^15.2.2",
|
|
96
|
+
"mocha": "^10.3.0",
|
|
97
|
+
"module-from-string": "^3.3.0",
|
|
98
|
+
"node-fetch": "^3.3.2",
|
|
99
|
+
"nyc": "^15.1.0",
|
|
100
|
+
"prettier": "3.0.3",
|
|
101
|
+
"re2": "^1.20.9",
|
|
102
|
+
"rollup": "^2.79.1",
|
|
103
|
+
"rollup-plugin-terser": "^7.0.2",
|
|
104
|
+
"ts-node": "^10.9.2",
|
|
105
|
+
"tsify": "^5.0.4",
|
|
106
|
+
"typescript": "5.3.3",
|
|
107
|
+
"uri-js": "^4.4.1"
|
|
108
|
+
},
|
|
109
|
+
"collective": {
|
|
110
|
+
"type": "opencollective",
|
|
111
|
+
"url": "https://opencollective.com/ajv"
|
|
112
|
+
},
|
|
113
|
+
"funding": {
|
|
114
|
+
"type": "github",
|
|
115
|
+
"url": "https://github.com/sponsors/epoberezkin"
|
|
116
|
+
},
|
|
117
|
+
"prettier": "@ajv-validator/config/prettierrc.json",
|
|
118
|
+
"husky": {
|
|
119
|
+
"hooks": {
|
|
120
|
+
"pre-commit": "lint-staged && npm test"
|
|
121
|
+
}
|
|
122
|
+
},
|
|
123
|
+
"lint-staged": {
|
|
124
|
+
"*.{json,yaml,js,ts}": "prettier --write"
|
|
125
|
+
}
|
|
126
|
+
}
|
|
@@ -0,0 +1,208 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.formatNames = exports.fastFormats = exports.fullFormats = void 0;
|
|
4
|
+
function fmtDef(validate, compare) {
|
|
5
|
+
return { validate, compare };
|
|
6
|
+
}
|
|
7
|
+
exports.fullFormats = {
|
|
8
|
+
// date: http://tools.ietf.org/html/rfc3339#section-5.6
|
|
9
|
+
date: fmtDef(date, compareDate),
|
|
10
|
+
// date-time: http://tools.ietf.org/html/rfc3339#section-5.6
|
|
11
|
+
time: fmtDef(getTime(true), compareTime),
|
|
12
|
+
"date-time": fmtDef(getDateTime(true), compareDateTime),
|
|
13
|
+
"iso-time": fmtDef(getTime(), compareIsoTime),
|
|
14
|
+
"iso-date-time": fmtDef(getDateTime(), compareIsoDateTime),
|
|
15
|
+
// duration: https://tools.ietf.org/html/rfc3339#appendix-A
|
|
16
|
+
duration: /^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,
|
|
17
|
+
uri,
|
|
18
|
+
"uri-reference": /^(?:[a-z][a-z0-9+\-.]*:)?(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'"()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?(?:\?(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i,
|
|
19
|
+
// uri-template: https://tools.ietf.org/html/rfc6570
|
|
20
|
+
"uri-template": /^(?:(?:[^\x00-\x20"'<>%\\^`{|}]|%[0-9a-f]{2})|\{[+#./;?&=,!@|]?(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?(?:,(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?)*\})*$/i,
|
|
21
|
+
// For the source: https://gist.github.com/dperini/729294
|
|
22
|
+
// For test cases: https://mathiasbynens.be/demo/url-regex
|
|
23
|
+
url: /^(?:https?|ftp):\/\/(?:\S+(?::\S*)?@)?(?:(?!(?:10|127)(?:\.\d{1,3}){3})(?!(?:169\.254|192\.168)(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)(?:\.(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)*(?:\.(?:[a-z\u{00a1}-\u{ffff}]{2,})))(?::\d{2,5})?(?:\/[^\s]*)?$/iu,
|
|
24
|
+
email: /^[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/i,
|
|
25
|
+
hostname: /^(?=.{1,253}\.?$)[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[-0-9a-z]{0,61}[0-9a-z])?)*\.?$/i,
|
|
26
|
+
// optimized https://www.safaribooksonline.com/library/view/regular-expressions-cookbook/9780596802837/ch07s16.html
|
|
27
|
+
ipv4: /^(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)$/,
|
|
28
|
+
ipv6: /^((([0-9a-f]{1,4}:){7}([0-9a-f]{1,4}|:))|(([0-9a-f]{1,4}:){6}(:[0-9a-f]{1,4}|((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){5}(((:[0-9a-f]{1,4}){1,2})|:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){4}(((:[0-9a-f]{1,4}){1,3})|((:[0-9a-f]{1,4})?:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){3}(((:[0-9a-f]{1,4}){1,4})|((:[0-9a-f]{1,4}){0,2}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){2}(((:[0-9a-f]{1,4}){1,5})|((:[0-9a-f]{1,4}){0,3}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){1}(((:[0-9a-f]{1,4}){1,6})|((:[0-9a-f]{1,4}){0,4}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(:(((:[0-9a-f]{1,4}){1,7})|((:[0-9a-f]{1,4}){0,5}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))$/i,
|
|
29
|
+
regex,
|
|
30
|
+
// uuid: http://tools.ietf.org/html/rfc4122
|
|
31
|
+
uuid: /^(?:urn:uuid:)?[0-9a-f]{8}-(?:[0-9a-f]{4}-){3}[0-9a-f]{12}$/i,
|
|
32
|
+
// JSON-pointer: https://tools.ietf.org/html/rfc6901
|
|
33
|
+
// uri fragment: https://tools.ietf.org/html/rfc3986#appendix-A
|
|
34
|
+
"json-pointer": /^(?:\/(?:[^~/]|~0|~1)*)*$/,
|
|
35
|
+
"json-pointer-uri-fragment": /^#(?:\/(?:[a-z0-9_\-.!$&'()*+,;:=@]|%[0-9a-f]{2}|~0|~1)*)*$/i,
|
|
36
|
+
// relative JSON-pointer: http://tools.ietf.org/html/draft-luff-relative-json-pointer-00
|
|
37
|
+
"relative-json-pointer": /^(?:0|[1-9][0-9]*)(?:#|(?:\/(?:[^~/]|~0|~1)*)*)$/,
|
|
38
|
+
// the following formats are used by the openapi specification: https://spec.openapis.org/oas/v3.0.0#data-types
|
|
39
|
+
// byte: https://github.com/miguelmota/is-base64
|
|
40
|
+
byte,
|
|
41
|
+
// signed 32 bit integer
|
|
42
|
+
int32: { type: "number", validate: validateInt32 },
|
|
43
|
+
// signed 64 bit integer
|
|
44
|
+
int64: { type: "number", validate: validateInt64 },
|
|
45
|
+
// C-type float
|
|
46
|
+
float: { type: "number", validate: validateNumber },
|
|
47
|
+
// C-type double
|
|
48
|
+
double: { type: "number", validate: validateNumber },
|
|
49
|
+
// hint to the UI to hide input strings
|
|
50
|
+
password: true,
|
|
51
|
+
// unchecked string payload
|
|
52
|
+
binary: true,
|
|
53
|
+
};
|
|
54
|
+
exports.fastFormats = {
|
|
55
|
+
...exports.fullFormats,
|
|
56
|
+
date: fmtDef(/^\d\d\d\d-[0-1]\d-[0-3]\d$/, compareDate),
|
|
57
|
+
time: fmtDef(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i, compareTime),
|
|
58
|
+
"date-time": fmtDef(/^\d\d\d\d-[0-1]\d-[0-3]\dt(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i, compareDateTime),
|
|
59
|
+
"iso-time": fmtDef(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i, compareIsoTime),
|
|
60
|
+
"iso-date-time": fmtDef(/^\d\d\d\d-[0-1]\d-[0-3]\d[t\s](?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i, compareIsoDateTime),
|
|
61
|
+
// uri: https://github.com/mafintosh/is-my-json-valid/blob/master/formats.js
|
|
62
|
+
uri: /^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/)?[^\s]*$/i,
|
|
63
|
+
"uri-reference": /^(?:(?:[a-z][a-z0-9+\-.]*:)?\/?\/)?(?:[^\\\s#][^\s#]*)?(?:#[^\\\s]*)?$/i,
|
|
64
|
+
// email (sources from jsen validator):
|
|
65
|
+
// http://stackoverflow.com/questions/201323/using-a-regular-expression-to-validate-an-email-address#answer-8829363
|
|
66
|
+
// http://www.w3.org/TR/html5/forms.html#valid-e-mail-address (search for 'wilful violation')
|
|
67
|
+
email: /^[a-z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?)*$/i,
|
|
68
|
+
};
|
|
69
|
+
exports.formatNames = Object.keys(exports.fullFormats);
|
|
70
|
+
function isLeapYear(year) {
|
|
71
|
+
// https://tools.ietf.org/html/rfc3339#appendix-C
|
|
72
|
+
return year % 4 === 0 && (year % 100 !== 0 || year % 400 === 0);
|
|
73
|
+
}
|
|
74
|
+
const DATE = /^(\d\d\d\d)-(\d\d)-(\d\d)$/;
|
|
75
|
+
const DAYS = [0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];
|
|
76
|
+
function date(str) {
|
|
77
|
+
// full-date from http://tools.ietf.org/html/rfc3339#section-5.6
|
|
78
|
+
const matches = DATE.exec(str);
|
|
79
|
+
if (!matches)
|
|
80
|
+
return false;
|
|
81
|
+
const year = +matches[1];
|
|
82
|
+
const month = +matches[2];
|
|
83
|
+
const day = +matches[3];
|
|
84
|
+
return (month >= 1 &&
|
|
85
|
+
month <= 12 &&
|
|
86
|
+
day >= 1 &&
|
|
87
|
+
day <= (month === 2 && isLeapYear(year) ? 29 : DAYS[month]));
|
|
88
|
+
}
|
|
89
|
+
function compareDate(d1, d2) {
|
|
90
|
+
if (!(d1 && d2))
|
|
91
|
+
return undefined;
|
|
92
|
+
if (d1 > d2)
|
|
93
|
+
return 1;
|
|
94
|
+
if (d1 < d2)
|
|
95
|
+
return -1;
|
|
96
|
+
return 0;
|
|
97
|
+
}
|
|
98
|
+
const TIME = /^(\d\d):(\d\d):(\d\d(?:\.\d+)?)(z|([+-])(\d\d)(?::?(\d\d))?)?$/i;
|
|
99
|
+
function getTime(strictTimeZone) {
|
|
100
|
+
return function time(str) {
|
|
101
|
+
const matches = TIME.exec(str);
|
|
102
|
+
if (!matches)
|
|
103
|
+
return false;
|
|
104
|
+
const hr = +matches[1];
|
|
105
|
+
const min = +matches[2];
|
|
106
|
+
const sec = +matches[3];
|
|
107
|
+
const tz = matches[4];
|
|
108
|
+
const tzSign = matches[5] === "-" ? -1 : 1;
|
|
109
|
+
const tzH = +(matches[6] || 0);
|
|
110
|
+
const tzM = +(matches[7] || 0);
|
|
111
|
+
if (tzH > 23 || tzM > 59 || (strictTimeZone && !tz))
|
|
112
|
+
return false;
|
|
113
|
+
if (hr <= 23 && min <= 59 && sec < 60)
|
|
114
|
+
return true;
|
|
115
|
+
// leap second
|
|
116
|
+
const utcMin = min - tzM * tzSign;
|
|
117
|
+
const utcHr = hr - tzH * tzSign - (utcMin < 0 ? 1 : 0);
|
|
118
|
+
return (utcHr === 23 || utcHr === -1) && (utcMin === 59 || utcMin === -1) && sec < 61;
|
|
119
|
+
};
|
|
120
|
+
}
|
|
121
|
+
function compareTime(s1, s2) {
|
|
122
|
+
if (!(s1 && s2))
|
|
123
|
+
return undefined;
|
|
124
|
+
const t1 = new Date("2020-01-01T" + s1).valueOf();
|
|
125
|
+
const t2 = new Date("2020-01-01T" + s2).valueOf();
|
|
126
|
+
if (!(t1 && t2))
|
|
127
|
+
return undefined;
|
|
128
|
+
return t1 - t2;
|
|
129
|
+
}
|
|
130
|
+
function compareIsoTime(t1, t2) {
|
|
131
|
+
if (!(t1 && t2))
|
|
132
|
+
return undefined;
|
|
133
|
+
const a1 = TIME.exec(t1);
|
|
134
|
+
const a2 = TIME.exec(t2);
|
|
135
|
+
if (!(a1 && a2))
|
|
136
|
+
return undefined;
|
|
137
|
+
t1 = a1[1] + a1[2] + a1[3];
|
|
138
|
+
t2 = a2[1] + a2[2] + a2[3];
|
|
139
|
+
if (t1 > t2)
|
|
140
|
+
return 1;
|
|
141
|
+
if (t1 < t2)
|
|
142
|
+
return -1;
|
|
143
|
+
return 0;
|
|
144
|
+
}
|
|
145
|
+
const DATE_TIME_SEPARATOR = /t|\s/i;
|
|
146
|
+
function getDateTime(strictTimeZone) {
|
|
147
|
+
const time = getTime(strictTimeZone);
|
|
148
|
+
return function date_time(str) {
|
|
149
|
+
// http://tools.ietf.org/html/rfc3339#section-5.6
|
|
150
|
+
const dateTime = str.split(DATE_TIME_SEPARATOR);
|
|
151
|
+
return dateTime.length === 2 && date(dateTime[0]) && time(dateTime[1]);
|
|
152
|
+
};
|
|
153
|
+
}
|
|
154
|
+
function compareDateTime(dt1, dt2) {
|
|
155
|
+
if (!(dt1 && dt2))
|
|
156
|
+
return undefined;
|
|
157
|
+
const d1 = new Date(dt1).valueOf();
|
|
158
|
+
const d2 = new Date(dt2).valueOf();
|
|
159
|
+
if (!(d1 && d2))
|
|
160
|
+
return undefined;
|
|
161
|
+
return d1 - d2;
|
|
162
|
+
}
|
|
163
|
+
function compareIsoDateTime(dt1, dt2) {
|
|
164
|
+
if (!(dt1 && dt2))
|
|
165
|
+
return undefined;
|
|
166
|
+
const [d1, t1] = dt1.split(DATE_TIME_SEPARATOR);
|
|
167
|
+
const [d2, t2] = dt2.split(DATE_TIME_SEPARATOR);
|
|
168
|
+
const res = compareDate(d1, d2);
|
|
169
|
+
if (res === undefined)
|
|
170
|
+
return undefined;
|
|
171
|
+
return res || compareTime(t1, t2);
|
|
172
|
+
}
|
|
173
|
+
const NOT_URI_FRAGMENT = /\/|:/;
|
|
174
|
+
const URI = /^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)(?:\?(?:[a-z0-9\-._~!$&'()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i;
|
|
175
|
+
function uri(str) {
|
|
176
|
+
// http://jmrware.com/articles/2009/uri_regexp/URI_regex.html + optional protocol + required "."
|
|
177
|
+
return NOT_URI_FRAGMENT.test(str) && URI.test(str);
|
|
178
|
+
}
|
|
179
|
+
const BYTE = /^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/gm;
|
|
180
|
+
function byte(str) {
|
|
181
|
+
BYTE.lastIndex = 0;
|
|
182
|
+
return BYTE.test(str);
|
|
183
|
+
}
|
|
184
|
+
const MIN_INT32 = -(2 ** 31);
|
|
185
|
+
const MAX_INT32 = 2 ** 31 - 1;
|
|
186
|
+
function validateInt32(value) {
|
|
187
|
+
return Number.isInteger(value) && value <= MAX_INT32 && value >= MIN_INT32;
|
|
188
|
+
}
|
|
189
|
+
function validateInt64(value) {
|
|
190
|
+
// JSON and javascript max Int is 2**53, so any int that passes isInteger is valid for Int64
|
|
191
|
+
return Number.isInteger(value);
|
|
192
|
+
}
|
|
193
|
+
function validateNumber() {
|
|
194
|
+
return true;
|
|
195
|
+
}
|
|
196
|
+
const Z_ANCHOR = /[^\\]\\Z/;
|
|
197
|
+
function regex(str) {
|
|
198
|
+
if (Z_ANCHOR.test(str))
|
|
199
|
+
return false;
|
|
200
|
+
try {
|
|
201
|
+
new RegExp(str);
|
|
202
|
+
return true;
|
|
203
|
+
}
|
|
204
|
+
catch (e) {
|
|
205
|
+
return false;
|
|
206
|
+
}
|
|
207
|
+
}
|
|
208
|
+
//# sourceMappingURL=formats.js.map
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const formats_1 = require("./formats");
|
|
4
|
+
const limit_1 = require("./limit");
|
|
5
|
+
const codegen_1 = require("ajv/dist/compile/codegen");
|
|
6
|
+
const fullName = new codegen_1.Name("fullFormats");
|
|
7
|
+
const fastName = new codegen_1.Name("fastFormats");
|
|
8
|
+
const formatsPlugin = (ajv, opts = { keywords: true }) => {
|
|
9
|
+
if (Array.isArray(opts)) {
|
|
10
|
+
addFormats(ajv, opts, formats_1.fullFormats, fullName);
|
|
11
|
+
return ajv;
|
|
12
|
+
}
|
|
13
|
+
const [formats, exportName] = opts.mode === "fast" ? [formats_1.fastFormats, fastName] : [formats_1.fullFormats, fullName];
|
|
14
|
+
const list = opts.formats || formats_1.formatNames;
|
|
15
|
+
addFormats(ajv, list, formats, exportName);
|
|
16
|
+
if (opts.keywords)
|
|
17
|
+
(0, limit_1.default)(ajv);
|
|
18
|
+
return ajv;
|
|
19
|
+
};
|
|
20
|
+
formatsPlugin.get = (name, mode = "full") => {
|
|
21
|
+
const formats = mode === "fast" ? formats_1.fastFormats : formats_1.fullFormats;
|
|
22
|
+
const f = formats[name];
|
|
23
|
+
if (!f)
|
|
24
|
+
throw new Error(`Unknown format "${name}"`);
|
|
25
|
+
return f;
|
|
26
|
+
};
|
|
27
|
+
function addFormats(ajv, list, fs, exportName) {
|
|
28
|
+
var _a;
|
|
29
|
+
var _b;
|
|
30
|
+
(_a = (_b = ajv.opts.code).formats) !== null && _a !== void 0 ? _a : (_b.formats = (0, codegen_1._) `require("ajv-formats/dist/formats").${exportName}`);
|
|
31
|
+
for (const f of list)
|
|
32
|
+
ajv.addFormat(f, fs[f]);
|
|
33
|
+
}
|
|
34
|
+
module.exports = exports = formatsPlugin;
|
|
35
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
exports.default = formatsPlugin;
|
|
37
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.formatLimitDefinition = void 0;
|
|
4
|
+
const ajv_1 = require("ajv");
|
|
5
|
+
const codegen_1 = require("ajv/dist/compile/codegen");
|
|
6
|
+
const ops = codegen_1.operators;
|
|
7
|
+
const KWDs = {
|
|
8
|
+
formatMaximum: { okStr: "<=", ok: ops.LTE, fail: ops.GT },
|
|
9
|
+
formatMinimum: { okStr: ">=", ok: ops.GTE, fail: ops.LT },
|
|
10
|
+
formatExclusiveMaximum: { okStr: "<", ok: ops.LT, fail: ops.GTE },
|
|
11
|
+
formatExclusiveMinimum: { okStr: ">", ok: ops.GT, fail: ops.LTE },
|
|
12
|
+
};
|
|
13
|
+
const error = {
|
|
14
|
+
message: ({ keyword, schemaCode }) => (0, codegen_1.str) `should be ${KWDs[keyword].okStr} ${schemaCode}`,
|
|
15
|
+
params: ({ keyword, schemaCode }) => (0, codegen_1._) `{comparison: ${KWDs[keyword].okStr}, limit: ${schemaCode}}`,
|
|
16
|
+
};
|
|
17
|
+
exports.formatLimitDefinition = {
|
|
18
|
+
keyword: Object.keys(KWDs),
|
|
19
|
+
type: "string",
|
|
20
|
+
schemaType: "string",
|
|
21
|
+
$data: true,
|
|
22
|
+
error,
|
|
23
|
+
code(cxt) {
|
|
24
|
+
const { gen, data, schemaCode, keyword, it } = cxt;
|
|
25
|
+
const { opts, self } = it;
|
|
26
|
+
if (!opts.validateFormats)
|
|
27
|
+
return;
|
|
28
|
+
const fCxt = new ajv_1.KeywordCxt(it, self.RULES.all.format.definition, "format");
|
|
29
|
+
if (fCxt.$data)
|
|
30
|
+
validate$DataFormat();
|
|
31
|
+
else
|
|
32
|
+
validateFormat();
|
|
33
|
+
function validate$DataFormat() {
|
|
34
|
+
const fmts = gen.scopeValue("formats", {
|
|
35
|
+
ref: self.formats,
|
|
36
|
+
code: opts.code.formats,
|
|
37
|
+
});
|
|
38
|
+
const fmt = gen.const("fmt", (0, codegen_1._) `${fmts}[${fCxt.schemaCode}]`);
|
|
39
|
+
cxt.fail$data((0, codegen_1.or)((0, codegen_1._) `typeof ${fmt} != "object"`, (0, codegen_1._) `${fmt} instanceof RegExp`, (0, codegen_1._) `typeof ${fmt}.compare != "function"`, compareCode(fmt)));
|
|
40
|
+
}
|
|
41
|
+
function validateFormat() {
|
|
42
|
+
const format = fCxt.schema;
|
|
43
|
+
const fmtDef = self.formats[format];
|
|
44
|
+
if (!fmtDef || fmtDef === true)
|
|
45
|
+
return;
|
|
46
|
+
if (typeof fmtDef != "object" ||
|
|
47
|
+
fmtDef instanceof RegExp ||
|
|
48
|
+
typeof fmtDef.compare != "function") {
|
|
49
|
+
throw new Error(`"${keyword}": format "${format}" does not define "compare" function`);
|
|
50
|
+
}
|
|
51
|
+
const fmt = gen.scopeValue("formats", {
|
|
52
|
+
key: format,
|
|
53
|
+
ref: fmtDef,
|
|
54
|
+
code: opts.code.formats ? (0, codegen_1._) `${opts.code.formats}${(0, codegen_1.getProperty)(format)}` : undefined,
|
|
55
|
+
});
|
|
56
|
+
cxt.fail$data(compareCode(fmt));
|
|
57
|
+
}
|
|
58
|
+
function compareCode(fmt) {
|
|
59
|
+
return (0, codegen_1._) `${fmt}.compare(${data}, ${schemaCode}) ${KWDs[keyword].fail} 0`;
|
|
60
|
+
}
|
|
61
|
+
},
|
|
62
|
+
dependencies: ["format"],
|
|
63
|
+
};
|
|
64
|
+
const formatLimitPlugin = (ajv) => {
|
|
65
|
+
ajv.addKeyword(exports.formatLimitDefinition);
|
|
66
|
+
return ajv;
|
|
67
|
+
};
|
|
68
|
+
exports.default = formatLimitPlugin;
|
|
69
|
+
//# sourceMappingURL=limit.js.map
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "ajv-formats",
|
|
3
|
+
"version": "3.0.1",
|
|
4
|
+
"description": "Format validation for Ajv v7+",
|
|
5
|
+
"main": "dist/index.js",
|
|
6
|
+
"types": "dist/index.d.ts",
|
|
7
|
+
"files": [
|
|
8
|
+
"src/",
|
|
9
|
+
"dist/"
|
|
10
|
+
],
|
|
11
|
+
"scripts": {
|
|
12
|
+
"build": "tsc",
|
|
13
|
+
"prettier:write": "prettier --write \"./**/*.{md,json,yaml,js,ts}\"",
|
|
14
|
+
"prettier:check": "prettier --list-different \"./**/*.{md,json,yaml,js,ts}\"",
|
|
15
|
+
"eslint": "eslint --ext .ts ./src/**/*",
|
|
16
|
+
"test-spec": "jest",
|
|
17
|
+
"test-cov": "jest --coverage",
|
|
18
|
+
"test": "npm run prettier:check && npm run build && npm run eslint && npm run test-cov",
|
|
19
|
+
"ci-test": "npm run test"
|
|
20
|
+
},
|
|
21
|
+
"repository": {
|
|
22
|
+
"type": "git",
|
|
23
|
+
"url": "git+https://github.com/ajv-validator/ajv-formats.git"
|
|
24
|
+
},
|
|
25
|
+
"keywords": [
|
|
26
|
+
"Ajv",
|
|
27
|
+
"JSON-Schema",
|
|
28
|
+
"format",
|
|
29
|
+
"validation"
|
|
30
|
+
],
|
|
31
|
+
"author": "Evgeny Poberezkin",
|
|
32
|
+
"license": "MIT",
|
|
33
|
+
"bugs": {
|
|
34
|
+
"url": "https://github.com/ajv-validator/ajv-formats/issues"
|
|
35
|
+
},
|
|
36
|
+
"homepage": "https://github.com/ajv-validator/ajv-formats#readme",
|
|
37
|
+
"dependencies": {
|
|
38
|
+
"ajv": "^8.0.0"
|
|
39
|
+
},
|
|
40
|
+
"peerDependencies": {
|
|
41
|
+
"ajv": "^8.0.0"
|
|
42
|
+
},
|
|
43
|
+
"peerDependenciesMeta": {
|
|
44
|
+
"ajv": {
|
|
45
|
+
"optional": true
|
|
46
|
+
}
|
|
47
|
+
},
|
|
48
|
+
"devDependencies": {
|
|
49
|
+
"@ajv-validator/config": "^0.3.0",
|
|
50
|
+
"@types/jest": "^26.0.5",
|
|
51
|
+
"@types/node": "^14.10.1",
|
|
52
|
+
"@typescript-eslint/eslint-plugin": "^3.7.0",
|
|
53
|
+
"@typescript-eslint/parser": "^3.7.0",
|
|
54
|
+
"ajv": "^8.0.0",
|
|
55
|
+
"eslint": "^7.5.0",
|
|
56
|
+
"eslint-config-prettier": "^6.11.0",
|
|
57
|
+
"husky": "^4.2.5",
|
|
58
|
+
"jest": "^26.1.0",
|
|
59
|
+
"json-schema-test": "^2.0.0",
|
|
60
|
+
"lint-staged": "^10.2.11",
|
|
61
|
+
"prettier": "^2.3.2",
|
|
62
|
+
"ts-jest": "^26.1.3",
|
|
63
|
+
"typescript": "^4.0.0"
|
|
64
|
+
},
|
|
65
|
+
"prettier": "@ajv-validator/config/prettierrc.json",
|
|
66
|
+
"husky": {
|
|
67
|
+
"hooks": {
|
|
68
|
+
"pre-commit": "lint-staged && npm test"
|
|
69
|
+
}
|
|
70
|
+
},
|
|
71
|
+
"lint-staged": {
|
|
72
|
+
"*.{md,json,yaml,js,ts}": "prettier --write"
|
|
73
|
+
}
|
|
74
|
+
}
|