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,226 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "vue-router",
|
|
3
|
+
"version": "5.1.0",
|
|
4
|
+
"homepage": "https://router.vuejs.org",
|
|
5
|
+
"bugs": {
|
|
6
|
+
"url": "https://github.com/vuejs/router/issues"
|
|
7
|
+
},
|
|
8
|
+
"license": "MIT",
|
|
9
|
+
"author": {
|
|
10
|
+
"name": "Eduardo San Martin Morote",
|
|
11
|
+
"email": "posva13@gmail.com"
|
|
12
|
+
},
|
|
13
|
+
"repository": {
|
|
14
|
+
"type": "git",
|
|
15
|
+
"url": "git+https://github.com/vuejs/router.git"
|
|
16
|
+
},
|
|
17
|
+
"funding": "https://github.com/sponsors/posva",
|
|
18
|
+
"files": [
|
|
19
|
+
"dist",
|
|
20
|
+
"index.cjs",
|
|
21
|
+
"README.md",
|
|
22
|
+
"route.schema.json",
|
|
23
|
+
"vue-router-auto-resolver.d.mts",
|
|
24
|
+
"vue-router-auto-routes.d.mts",
|
|
25
|
+
"vue-router-auto.d.ts",
|
|
26
|
+
"vue-router.node.mjs",
|
|
27
|
+
"vetur/attributes.json",
|
|
28
|
+
"vetur/tags.json"
|
|
29
|
+
],
|
|
30
|
+
"type": "module",
|
|
31
|
+
"sideEffects": false,
|
|
32
|
+
"main": "index.cjs",
|
|
33
|
+
"module": "dist/vue-router.js",
|
|
34
|
+
"types": "dist/vue-router.d.ts",
|
|
35
|
+
"typesVersions": {
|
|
36
|
+
"*": {
|
|
37
|
+
"vite": [
|
|
38
|
+
"./dist/unplugin/vite.d.mts"
|
|
39
|
+
],
|
|
40
|
+
"unplugin": [
|
|
41
|
+
"./dist/unplugin/index.d.mts"
|
|
42
|
+
],
|
|
43
|
+
"unplugin/*": [
|
|
44
|
+
"./dist/unplugin/*.d.mts"
|
|
45
|
+
],
|
|
46
|
+
"volar/*": [
|
|
47
|
+
"./dist/volar/*.d.cts"
|
|
48
|
+
]
|
|
49
|
+
}
|
|
50
|
+
},
|
|
51
|
+
"unpkg": "dist/vue-router.global.js",
|
|
52
|
+
"jsdelivr": "dist/vue-router.global.js",
|
|
53
|
+
"exports": {
|
|
54
|
+
".": {
|
|
55
|
+
"types": "./dist/vue-router.d.ts",
|
|
56
|
+
"node": {
|
|
57
|
+
"import": {
|
|
58
|
+
"production": "./vue-router.node.mjs",
|
|
59
|
+
"development": "./vue-router.node.mjs",
|
|
60
|
+
"default": "./vue-router.node.mjs"
|
|
61
|
+
},
|
|
62
|
+
"require": {
|
|
63
|
+
"production": "./dist/vue-router.prod.cjs",
|
|
64
|
+
"development": "./dist/vue-router.cjs",
|
|
65
|
+
"default": "./dist/vue-router.prod.cjs"
|
|
66
|
+
}
|
|
67
|
+
},
|
|
68
|
+
"import": "./dist/vue-router.js",
|
|
69
|
+
"require": "./index.cjs"
|
|
70
|
+
},
|
|
71
|
+
"./vetur/*": "./vetur/*",
|
|
72
|
+
"./package.json": "./package.json",
|
|
73
|
+
"./experimental": {
|
|
74
|
+
"types": "./dist/experimental/index.d.ts",
|
|
75
|
+
"import": "./dist/experimental/index.js"
|
|
76
|
+
},
|
|
77
|
+
"./experimental/pinia-colada": {
|
|
78
|
+
"types": "./dist/experimental/pinia-colada.d.ts",
|
|
79
|
+
"import": "./dist/experimental/pinia-colada.js"
|
|
80
|
+
},
|
|
81
|
+
"./auto-resolver": {
|
|
82
|
+
"types": "./vue-router-auto-resolver.d.mts"
|
|
83
|
+
},
|
|
84
|
+
"./auto-routes": {
|
|
85
|
+
"types": "./vue-router-auto-routes.d.mts"
|
|
86
|
+
},
|
|
87
|
+
"./auto": {
|
|
88
|
+
"types": "./vue-router-auto.d.ts",
|
|
89
|
+
"node": {
|
|
90
|
+
"import": {
|
|
91
|
+
"production": "./vue-router.node.mjs",
|
|
92
|
+
"development": "./vue-router.node.mjs",
|
|
93
|
+
"default": "./vue-router.node.mjs"
|
|
94
|
+
},
|
|
95
|
+
"require": {
|
|
96
|
+
"production": "./dist/vue-router.prod.cjs",
|
|
97
|
+
"development": "./dist/vue-router.cjs",
|
|
98
|
+
"default": "./dist/vue-router.prod.cjs"
|
|
99
|
+
}
|
|
100
|
+
},
|
|
101
|
+
"import": "./dist/vue-router.js",
|
|
102
|
+
"require": "./index.cjs"
|
|
103
|
+
},
|
|
104
|
+
"./vite": {
|
|
105
|
+
"types": "./dist/unplugin/vite.d.mts",
|
|
106
|
+
"import": "./dist/unplugin/vite.mjs",
|
|
107
|
+
"require": "./dist/unplugin/vite.cjs"
|
|
108
|
+
},
|
|
109
|
+
"./unplugin": {
|
|
110
|
+
"types": "./dist/unplugin/index.d.mts",
|
|
111
|
+
"import": "./dist/unplugin/index.mjs",
|
|
112
|
+
"require": "./dist/unplugin/index.cjs"
|
|
113
|
+
},
|
|
114
|
+
"./unplugin/*": "./dist/unplugin/*",
|
|
115
|
+
"./volar/sfc-route-blocks": {
|
|
116
|
+
"types": "./dist/volar/sfc-route-blocks.d.cts",
|
|
117
|
+
"default": "./dist/volar/sfc-route-blocks.cjs"
|
|
118
|
+
},
|
|
119
|
+
"./volar/sfc-typed-router": {
|
|
120
|
+
"types": "./dist/volar/sfc-typed-router.d.cts",
|
|
121
|
+
"default": "./dist/volar/sfc-typed-router.cjs"
|
|
122
|
+
},
|
|
123
|
+
"./dist/*": "./dist/*"
|
|
124
|
+
},
|
|
125
|
+
"dependencies": {
|
|
126
|
+
"@babel/generator": "^8.0.0-rc.4",
|
|
127
|
+
"@vue-macros/common": "^3.1.1",
|
|
128
|
+
"@vue/devtools-api": "^8.1.2",
|
|
129
|
+
"ast-walker-scope": "^0.9.0",
|
|
130
|
+
"chokidar": "^5.0.0",
|
|
131
|
+
"json5": "^2.2.3",
|
|
132
|
+
"local-pkg": "^1.1.2",
|
|
133
|
+
"magic-string": "^0.30.21",
|
|
134
|
+
"mlly": "^1.8.2",
|
|
135
|
+
"muggle-string": "^0.4.1",
|
|
136
|
+
"pathe": "^2.0.3",
|
|
137
|
+
"picomatch": "^4.0.3",
|
|
138
|
+
"scule": "^1.3.0",
|
|
139
|
+
"tinyglobby": "^0.2.16",
|
|
140
|
+
"unplugin": "^3.0.0",
|
|
141
|
+
"unplugin-utils": "^0.3.1",
|
|
142
|
+
"yaml": "^2.9.0"
|
|
143
|
+
},
|
|
144
|
+
"devDependencies": {
|
|
145
|
+
"@babel/types": "^8.0.0-rc.4",
|
|
146
|
+
"@pinia/colada": "^1.3.1",
|
|
147
|
+
"@playwright/test": "^1.59.1",
|
|
148
|
+
"@rollup/plugin-commonjs": "^28.0.9",
|
|
149
|
+
"@rollup/plugin-node-resolve": "^16.0.3",
|
|
150
|
+
"@rollup/plugin-replace": "^6.0.3",
|
|
151
|
+
"@rollup/plugin-terser": "^0.4.4",
|
|
152
|
+
"@standard-schema/spec": "^1.1.0",
|
|
153
|
+
"@types/babel__generator": "^7.27.0",
|
|
154
|
+
"@types/nightwatch": "^2.3.32",
|
|
155
|
+
"@types/picomatch": "^4.0.2",
|
|
156
|
+
"@typescript/native-preview": "7.0.0-dev.20260106.1",
|
|
157
|
+
"@vitejs/plugin-vue": "^6.0.6",
|
|
158
|
+
"@vue/compiler-sfc": "^3.5.34",
|
|
159
|
+
"@vue/language-core": "^3.2.1",
|
|
160
|
+
"@vue/server-renderer": "^3.5.34",
|
|
161
|
+
"@vue/test-utils": "^2.4.10",
|
|
162
|
+
"browserstack-local": "^1.5.13",
|
|
163
|
+
"chromedriver": "^148.0.3",
|
|
164
|
+
"connect-history-api-fallback": "^2.0.0",
|
|
165
|
+
"dotenv": "^17.4.2",
|
|
166
|
+
"faked-promise": "^2.2.2",
|
|
167
|
+
"geckodriver": "^6.1.0",
|
|
168
|
+
"happy-dom": "^20.9.0",
|
|
169
|
+
"nightwatch": "^3.15.0",
|
|
170
|
+
"nightwatch-helpers": "^1.2.0",
|
|
171
|
+
"pinia": "^3.0.4",
|
|
172
|
+
"rimraf": "^6.1.3",
|
|
173
|
+
"rollup": "^4.57.1",
|
|
174
|
+
"rollup-plugin-typescript2": "^0.36.0",
|
|
175
|
+
"tsdown": "^0.22.0",
|
|
176
|
+
"tsup": "^8.5.1",
|
|
177
|
+
"valibot": "^1.4.1",
|
|
178
|
+
"vite": "^8.0.13",
|
|
179
|
+
"vue": "^3.5.34",
|
|
180
|
+
"zod": "^4.4.3"
|
|
181
|
+
},
|
|
182
|
+
"peerDependencies": {
|
|
183
|
+
"@pinia/colada": ">=0.21.2",
|
|
184
|
+
"@vue/compiler-sfc": "^3.5.34",
|
|
185
|
+
"pinia": "^3.0.4",
|
|
186
|
+
"vite": "^7.0.0 || ^8.0.0",
|
|
187
|
+
"vue": "^3.5.34"
|
|
188
|
+
},
|
|
189
|
+
"peerDependenciesMeta": {
|
|
190
|
+
"@vue/compiler-sfc": {
|
|
191
|
+
"optional": true
|
|
192
|
+
},
|
|
193
|
+
"pinia": {
|
|
194
|
+
"optional": true
|
|
195
|
+
},
|
|
196
|
+
"@pinia/colada": {
|
|
197
|
+
"optional": true
|
|
198
|
+
},
|
|
199
|
+
"vite": {
|
|
200
|
+
"optional": true
|
|
201
|
+
}
|
|
202
|
+
},
|
|
203
|
+
"vetur": {
|
|
204
|
+
"tags": "vetur/tags.json",
|
|
205
|
+
"attributes": "vetur/attributes.json"
|
|
206
|
+
},
|
|
207
|
+
"scripts": {
|
|
208
|
+
"dev": "vitest --ui",
|
|
209
|
+
"build": "tsdown",
|
|
210
|
+
"build:old": "rimraf dist && rollup -c rollup.config.mjs",
|
|
211
|
+
"build:playground": "vue-tsc --noEmit && vite build --config playground/vite.config.ts",
|
|
212
|
+
"build:e2e": "vue-tsc --noEmit && vite build --config e2e/vite.config.mjs",
|
|
213
|
+
"build:size": "pnpm run build && rollup -c size-checks/rollup.config.mjs",
|
|
214
|
+
"dev:e2e": "vite --config e2e/vite.config.mjs",
|
|
215
|
+
"test:types": "tsc --build tsconfig.json ./test-dts/tsconfig.experimental.json",
|
|
216
|
+
"test:unit": "vitest --coverage run",
|
|
217
|
+
"test": "pnpm run build && pnpm run '/^(unit|test:types)$/' && pnpm run '/^test:(e2e|e2e:hmr)$/'",
|
|
218
|
+
"test:e2e": "pnpm run test:e2e:headless",
|
|
219
|
+
"test:e2e:hmr": "pnpm exec playwright test",
|
|
220
|
+
"test:e2e:headless": "node e2e/runner.mjs --env chrome-headless",
|
|
221
|
+
"test:e2e:native": "node e2e/runner.mjs --env chrome",
|
|
222
|
+
"test:e2e:ci": "node e2e/runner.mjs --env chrome-headless --retries 2",
|
|
223
|
+
"test:e2e:bs": "node e2e/runner.mjs --local -e android5 --tag browserstack",
|
|
224
|
+
"test:e2e:bs-test": "node e2e/runner.mjs --local --env browserstack.local_chrome --tag browserstack"
|
|
225
|
+
}
|
|
226
|
+
}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "businesslens-prod",
|
|
3
|
+
"version": "0.2.2",
|
|
4
|
+
"type": "module",
|
|
5
|
+
"private": true,
|
|
6
|
+
"dependencies": {
|
|
7
|
+
"@babel/parser": "7.29.7",
|
|
8
|
+
"@iconify/utils": "3.1.4",
|
|
9
|
+
"@vue-flow/core": "1.48.2",
|
|
10
|
+
"@vue/compiler-core": "3.5.39",
|
|
11
|
+
"@vue/compiler-dom": "3.5.39",
|
|
12
|
+
"@vue/compiler-ssr": "3.5.39",
|
|
13
|
+
"@vue/devtools-api": "8.1.5",
|
|
14
|
+
"@vue/devtools-kit": "8.1.5",
|
|
15
|
+
"@vue/devtools-shared": "8.1.5",
|
|
16
|
+
"@vue/reactivity": "3.5.39",
|
|
17
|
+
"@vue/runtime-core": "3.5.39",
|
|
18
|
+
"@vue/runtime-dom": "3.5.39",
|
|
19
|
+
"@vue/server-renderer": "3.5.39",
|
|
20
|
+
"@vue/shared": "3.5.39",
|
|
21
|
+
"ajv": "8.17.1",
|
|
22
|
+
"ajv-formats": "3.0.1",
|
|
23
|
+
"birpc": "2.9.0",
|
|
24
|
+
"consola": "3.4.2",
|
|
25
|
+
"devalue": "5.8.1",
|
|
26
|
+
"entities": "7.0.1",
|
|
27
|
+
"estree-walker": "2.0.2",
|
|
28
|
+
"fast-deep-equal": "3.1.3",
|
|
29
|
+
"fast-uri": "3.1.3",
|
|
30
|
+
"hookable": "6.1.1",
|
|
31
|
+
"json-schema-traverse": "1.0.0",
|
|
32
|
+
"perfect-debounce": "2.1.0",
|
|
33
|
+
"source-map-js": "1.2.1",
|
|
34
|
+
"tailwindcss": "4.2.1",
|
|
35
|
+
"ufo": "1.6.4",
|
|
36
|
+
"unhead": "2.1.15",
|
|
37
|
+
"vue": "3.5.39",
|
|
38
|
+
"vue-bundle-renderer": "2.3.1",
|
|
39
|
+
"vue-router": "5.1.0"
|
|
40
|
+
}
|
|
41
|
+
}
|
package/README.md
ADDED
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
# BusinessLens
|
|
2
|
+
|
|
3
|
+
BusinessLens turns source-backed software analysis into a local, navigable
|
|
4
|
+
product report. Point the CLI at one validated JSON file and explore its
|
|
5
|
+
actors, domains, journeys, scenarios, repository evidence, topology, coverage,
|
|
6
|
+
and limitations in the browser.
|
|
7
|
+
|
|
8
|
+
## Run a report
|
|
9
|
+
|
|
10
|
+
Requires Node.js 22.13 or newer.
|
|
11
|
+
|
|
12
|
+
```sh
|
|
13
|
+
npx businesslens --report ./report.json
|
|
14
|
+
```
|
|
15
|
+
|
|
16
|
+
BusinessLens validates the report before starting, binds to `127.0.0.1`, uses
|
|
17
|
+
port 3000 or the next available port, and opens the browser. Useful options:
|
|
18
|
+
|
|
19
|
+
```sh
|
|
20
|
+
npx businesslens --report ./report.json --port 4173 --no-open
|
|
21
|
+
npx businesslens --help
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
## Included reports
|
|
25
|
+
|
|
26
|
+
This repository preserves four source-backed reports in the v2 single-file
|
|
27
|
+
format:
|
|
28
|
+
|
|
29
|
+
- `reports/argo-cd/report.json`
|
|
30
|
+
- `reports/argo-workflows/report.json`
|
|
31
|
+
- `reports/gitea/report.json`
|
|
32
|
+
- `reports/vibe-trading/report.json`
|
|
33
|
+
|
|
34
|
+
Run one from a source checkout:
|
|
35
|
+
|
|
36
|
+
```sh
|
|
37
|
+
pnpm install
|
|
38
|
+
pnpm build
|
|
39
|
+
node bin/businesslens.mjs --report ./reports/gitea/report.json
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
For Nuxt development, pass the absolute report path through runtime config:
|
|
43
|
+
|
|
44
|
+
```sh
|
|
45
|
+
NUXT_REPORT_PATH="$PWD/reports/gitea/report.json" pnpm dev
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
## Report contract
|
|
49
|
+
|
|
50
|
+
Each `reports/<report-id>/` directory contains exactly one `report.json` using
|
|
51
|
+
schema version `2.0.0`. It includes:
|
|
52
|
+
|
|
53
|
+
- report identity and generation metadata;
|
|
54
|
+
- source repository, optional logo, branch or tag, and pinned commit;
|
|
55
|
+
- actors and product domains;
|
|
56
|
+
- user journeys with entry points and repository evidence;
|
|
57
|
+
- source-backed scenarios with triggers, ordered observable steps, outcomes,
|
|
58
|
+
and edge cases;
|
|
59
|
+
- analysis coverage, unmapped areas, and limitations.
|
|
60
|
+
|
|
61
|
+
Validate every tracked report:
|
|
62
|
+
|
|
63
|
+
```sh
|
|
64
|
+
pnpm validate
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
Validate one file:
|
|
68
|
+
|
|
69
|
+
```sh
|
|
70
|
+
node .agents/skills/businesslens-validate-report/scripts/validate-report.mjs \
|
|
71
|
+
./reports/gitea/report.json
|
|
72
|
+
```
|
|
73
|
+
|
|
74
|
+
## Repository-analysis skills
|
|
75
|
+
|
|
76
|
+
Agents that support `AGENTS.md` and the Agent Skills convention can use the
|
|
77
|
+
workflows under `.agents/skills/`:
|
|
78
|
+
|
|
79
|
+
- `$businesslens-analyze-repository` safely inventories a public HTTPS Git
|
|
80
|
+
checkout and creates a v2 `report.json` without executing target code.
|
|
81
|
+
- `$businesslens-validate-report` checks schema and semantic integrity.
|
|
82
|
+
- `$businesslens-add-report` imports a validated file without replacing an
|
|
83
|
+
existing report.
|
|
84
|
+
|
|
85
|
+
## Development tooling
|
|
86
|
+
|
|
87
|
+
The repository keeps shared MCP configuration for Codex, Claude, and other
|
|
88
|
+
MCP-compatible development clients. It provides Nuxt UI documentation tools
|
|
89
|
+
and a pinned Chrome DevTools integration without changing a contributor's
|
|
90
|
+
sandbox or approval policy.
|
|
91
|
+
|
|
92
|
+
The Chrome integration expects a browser debugging endpoint on port `9222`.
|
|
93
|
+
For example, on macOS:
|
|
94
|
+
|
|
95
|
+
```sh
|
|
96
|
+
open -na "Google Chrome" --args \
|
|
97
|
+
--remote-debugging-port=9222 \
|
|
98
|
+
--user-data-dir=/tmp/businesslens-chrome
|
|
99
|
+
```
|
|
100
|
+
|
|
101
|
+
## Development and verification
|
|
102
|
+
|
|
103
|
+
```sh
|
|
104
|
+
pnpm install
|
|
105
|
+
pnpm check
|
|
106
|
+
```
|
|
107
|
+
|
|
108
|
+
Before publishing, inspect and smoke-test the exact npm artifact:
|
|
109
|
+
|
|
110
|
+
```sh
|
|
111
|
+
pnpm pack
|
|
112
|
+
npx --package ./businesslens-0.2.2.tgz businesslens \
|
|
113
|
+
--report ./reports/gitea/report.json --no-open
|
|
114
|
+
```
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
# Third-party notices
|
|
2
|
+
|
|
3
|
+
## Nuxt UI Landing Template
|
|
4
|
+
|
|
5
|
+
Portions of the BusinessLens landing-page structure and visual components are
|
|
6
|
+
adapted from the [Nuxt UI Landing Template](https://github.com/nuxt-ui-templates/landing).
|
|
7
|
+
|
|
8
|
+
MIT License
|
|
9
|
+
|
|
10
|
+
Copyright (c) 2025 Nuxt UI Templates
|
|
11
|
+
|
|
12
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
13
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
14
|
+
in the Software without restriction, including without limitation the rights
|
|
15
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
16
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
17
|
+
furnished to do so, subject to the following conditions:
|
|
18
|
+
|
|
19
|
+
The above copyright notice and this permission notice shall be included in all
|
|
20
|
+
copies or substantial portions of the Software.
|
|
21
|
+
|
|
22
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
23
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
24
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
25
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
26
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
27
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
28
|
+
SOFTWARE.
|
|
@@ -0,0 +1,181 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
import { spawn } from "node:child_process";
|
|
3
|
+
import { readFile, stat } from "node:fs/promises";
|
|
4
|
+
import { createServer } from "node:net";
|
|
5
|
+
import { dirname, resolve } from "node:path";
|
|
6
|
+
import { fileURLToPath } from "node:url";
|
|
7
|
+
import { readReportFile } from "../packages/report-schema/validate.mjs";
|
|
8
|
+
|
|
9
|
+
const packageRoot = resolve(dirname(fileURLToPath(import.meta.url)), "..");
|
|
10
|
+
|
|
11
|
+
function usage() {
|
|
12
|
+
return `BusinessLens
|
|
13
|
+
|
|
14
|
+
Run a source-backed software report locally.
|
|
15
|
+
|
|
16
|
+
Usage:
|
|
17
|
+
businesslens --report <report.json> [options]
|
|
18
|
+
|
|
19
|
+
Options:
|
|
20
|
+
--report <path> Path to a BusinessLens v2 report.json file
|
|
21
|
+
--port <number> Preferred local port (default: 3000)
|
|
22
|
+
--host <host> Host interface to bind (default: 127.0.0.1)
|
|
23
|
+
--no-open Do not open the report in a browser
|
|
24
|
+
--help, -h Show this help
|
|
25
|
+
--version, -v Show the installed version`;
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
function parseArguments(argv) {
|
|
29
|
+
const options = { report: "", port: 3000, host: "127.0.0.1", open: true };
|
|
30
|
+
for (let index = 0; index < argv.length; index += 1) {
|
|
31
|
+
const argument = argv[index];
|
|
32
|
+
if (argument === "--help" || argument === "-h") return { ...options, help: true };
|
|
33
|
+
if (argument === "--version" || argument === "-v") return { ...options, version: true };
|
|
34
|
+
if (argument === "--no-open") {
|
|
35
|
+
options.open = false;
|
|
36
|
+
continue;
|
|
37
|
+
}
|
|
38
|
+
if (["--report", "--port", "--host"].includes(argument)) {
|
|
39
|
+
const value = argv[index + 1];
|
|
40
|
+
if (!value || value.startsWith("--")) throw new Error(`${argument} requires a value.`);
|
|
41
|
+
options[argument.slice(2)] = argument === "--port" ? Number(value) : value;
|
|
42
|
+
index += 1;
|
|
43
|
+
continue;
|
|
44
|
+
}
|
|
45
|
+
throw new Error(`Unknown option: ${argument}`);
|
|
46
|
+
}
|
|
47
|
+
if (!options.report) throw new Error("--report <report.json> is required.");
|
|
48
|
+
if (!Number.isInteger(options.port) || options.port < 1 || options.port > 65535) {
|
|
49
|
+
throw new Error("--port must be an integer between 1 and 65535.");
|
|
50
|
+
}
|
|
51
|
+
if (!options.host.trim()) throw new Error("--host cannot be empty.");
|
|
52
|
+
return options;
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
async function availablePort(preferredPort, host) {
|
|
56
|
+
for (let port = preferredPort; port <= Math.min(65535, preferredPort + 20); port += 1) {
|
|
57
|
+
const available = await new Promise((accept) => {
|
|
58
|
+
const probe = createServer();
|
|
59
|
+
probe.unref();
|
|
60
|
+
probe.once("error", () => accept(false));
|
|
61
|
+
probe.listen({ port, host }, () => probe.close(() => accept(true)));
|
|
62
|
+
});
|
|
63
|
+
if (available) return port;
|
|
64
|
+
}
|
|
65
|
+
throw new Error(`No available port found between ${preferredPort} and ${Math.min(65535, preferredPort + 20)}.`);
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
function openBrowser(url) {
|
|
69
|
+
const command = process.platform === "darwin"
|
|
70
|
+
? ["open", [url]]
|
|
71
|
+
: process.platform === "win32"
|
|
72
|
+
? ["cmd", ["/c", "start", "", url]]
|
|
73
|
+
: ["xdg-open", [url]];
|
|
74
|
+
const opener = spawn(command[0], command[1], { detached: true, stdio: "ignore" });
|
|
75
|
+
opener.unref();
|
|
76
|
+
opener.once("error", () => {});
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
async function waitUntilReady(url, child) {
|
|
80
|
+
for (let attempt = 0; attempt < 100; attempt += 1) {
|
|
81
|
+
if (child.exitCode !== null) throw new Error(`BusinessLens server exited with code ${child.exitCode}.`);
|
|
82
|
+
try {
|
|
83
|
+
const response = await fetch(`${url}/api/report`);
|
|
84
|
+
if (response.ok) return;
|
|
85
|
+
} catch {
|
|
86
|
+
// The server is still starting.
|
|
87
|
+
}
|
|
88
|
+
await new Promise(resolveDelay => setTimeout(resolveDelay, 100));
|
|
89
|
+
}
|
|
90
|
+
throw new Error("BusinessLens did not become ready within 10 seconds.");
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
async function main() {
|
|
94
|
+
let options;
|
|
95
|
+
try {
|
|
96
|
+
options = parseArguments(process.argv.slice(2));
|
|
97
|
+
} catch (error) {
|
|
98
|
+
console.error(`Error: ${error.message}\n\n${usage()}`);
|
|
99
|
+
process.exitCode = 2;
|
|
100
|
+
return;
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
if (options.help) {
|
|
104
|
+
console.log(usage());
|
|
105
|
+
return;
|
|
106
|
+
}
|
|
107
|
+
if (options.version) {
|
|
108
|
+
const packageJson = JSON.parse(await readFile(resolve(packageRoot, "package.json"), "utf8"));
|
|
109
|
+
console.log(packageJson.version);
|
|
110
|
+
return;
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
const reportPath = resolve(process.cwd(), options.report);
|
|
114
|
+
try {
|
|
115
|
+
const file = await stat(reportPath);
|
|
116
|
+
if (!file.isFile()) throw new Error("path is not a regular file");
|
|
117
|
+
} catch (error) {
|
|
118
|
+
console.error(`Cannot read report ${reportPath}: ${error.message}`);
|
|
119
|
+
process.exitCode = 1;
|
|
120
|
+
return;
|
|
121
|
+
}
|
|
122
|
+
|
|
123
|
+
const validation = await readReportFile(reportPath);
|
|
124
|
+
if (validation.errors.length || !validation.report) {
|
|
125
|
+
console.error(`Report validation failed:\n${validation.errors.map(error => `- ${error}`).join("\n")}`);
|
|
126
|
+
process.exitCode = 1;
|
|
127
|
+
return;
|
|
128
|
+
}
|
|
129
|
+
|
|
130
|
+
const serverEntry = resolve(packageRoot, ".output/server/index.mjs");
|
|
131
|
+
try {
|
|
132
|
+
await stat(serverEntry);
|
|
133
|
+
} catch {
|
|
134
|
+
console.error("BusinessLens server assets are missing. Reinstall the package or run pnpm build in a source checkout.");
|
|
135
|
+
process.exitCode = 1;
|
|
136
|
+
return;
|
|
137
|
+
}
|
|
138
|
+
|
|
139
|
+
let port;
|
|
140
|
+
try {
|
|
141
|
+
port = await availablePort(options.port, options.host);
|
|
142
|
+
} catch (error) {
|
|
143
|
+
console.error(error.message);
|
|
144
|
+
process.exitCode = 1;
|
|
145
|
+
return;
|
|
146
|
+
}
|
|
147
|
+
const browserHost = ["0.0.0.0", "::"].includes(options.host) ? "127.0.0.1" : options.host;
|
|
148
|
+
const urlHost = browserHost.includes(":") ? `[${browserHost}]` : browserHost;
|
|
149
|
+
const url = `http://${urlHost}:${port}`;
|
|
150
|
+
const child = spawn(process.execPath, [serverEntry], {
|
|
151
|
+
env: {
|
|
152
|
+
...process.env,
|
|
153
|
+
NITRO_HOST: options.host,
|
|
154
|
+
NITRO_PORT: String(port),
|
|
155
|
+
NUXT_REPORT_PATH: reportPath,
|
|
156
|
+
},
|
|
157
|
+
stdio: "inherit",
|
|
158
|
+
});
|
|
159
|
+
|
|
160
|
+
const stop = (signal) => {
|
|
161
|
+
if (child.exitCode === null) child.kill(signal);
|
|
162
|
+
};
|
|
163
|
+
process.once("SIGINT", () => stop("SIGINT"));
|
|
164
|
+
process.once("SIGTERM", () => stop("SIGTERM"));
|
|
165
|
+
|
|
166
|
+
try {
|
|
167
|
+
await waitUntilReady(url, child);
|
|
168
|
+
console.log(`BusinessLens is viewing ${validation.report.source.repository} at ${url}`);
|
|
169
|
+
if (port !== options.port) console.log(`Port ${options.port} was unavailable; using ${port}.`);
|
|
170
|
+
if (options.open) openBrowser(url);
|
|
171
|
+
} catch (error) {
|
|
172
|
+
console.error(error.message);
|
|
173
|
+
stop("SIGTERM");
|
|
174
|
+
process.exitCode = 1;
|
|
175
|
+
}
|
|
176
|
+
|
|
177
|
+
const exitCode = child.exitCode ?? await new Promise(resolveExit => child.once("exit", code => resolveExit(code)));
|
|
178
|
+
if (exitCode && !process.exitCode) process.exitCode = exitCode;
|
|
179
|
+
}
|
|
180
|
+
|
|
181
|
+
await main();
|
package/package.json
ADDED
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "businesslens",
|
|
3
|
+
"version": "0.2.2",
|
|
4
|
+
"description": "Run source-backed BusinessLens software reports locally from a single JSON file.",
|
|
5
|
+
"type": "module",
|
|
6
|
+
"bin": {
|
|
7
|
+
"businesslens": "bin/businesslens.mjs"
|
|
8
|
+
},
|
|
9
|
+
"files": [
|
|
10
|
+
".output",
|
|
11
|
+
"bin",
|
|
12
|
+
"packages/report-schema",
|
|
13
|
+
"README.md",
|
|
14
|
+
"THIRD_PARTY_NOTICES.md"
|
|
15
|
+
],
|
|
16
|
+
"keywords": [
|
|
17
|
+
"businesslens",
|
|
18
|
+
"software-analysis",
|
|
19
|
+
"user-journeys",
|
|
20
|
+
"repository-analysis"
|
|
21
|
+
],
|
|
22
|
+
"repository": {
|
|
23
|
+
"type": "git",
|
|
24
|
+
"url": "git+https://github.com/businesslens/cli.git"
|
|
25
|
+
},
|
|
26
|
+
"publishConfig": {
|
|
27
|
+
"access": "public"
|
|
28
|
+
},
|
|
29
|
+
"packageManager": "pnpm@11.9.0",
|
|
30
|
+
"engines": {
|
|
31
|
+
"node": ">=22.13.0"
|
|
32
|
+
},
|
|
33
|
+
"scripts": {
|
|
34
|
+
"dev": "nuxt dev",
|
|
35
|
+
"build": "nuxt build",
|
|
36
|
+
"prepack": "pnpm build",
|
|
37
|
+
"dev:prepare": "nuxt prepare",
|
|
38
|
+
"validate": "node scripts/validate-reports.mjs",
|
|
39
|
+
"lint": "eslint .",
|
|
40
|
+
"typecheck": "nuxt typecheck",
|
|
41
|
+
"test": "vitest run",
|
|
42
|
+
"check": "pnpm dev:prepare && pnpm validate && pnpm lint && pnpm typecheck && pnpm test && pnpm build"
|
|
43
|
+
},
|
|
44
|
+
"dependencies": {
|
|
45
|
+
"ajv": "8.17.1",
|
|
46
|
+
"ajv-formats": "3.0.1",
|
|
47
|
+
"hookable": "6.1.1"
|
|
48
|
+
},
|
|
49
|
+
"devDependencies": {
|
|
50
|
+
"@fontsource-variable/inter": "5.2.8",
|
|
51
|
+
"@nuxt/ui": "4.9.0",
|
|
52
|
+
"@vue-flow/background": "1.3.2",
|
|
53
|
+
"@vue-flow/controls": "1.1.3",
|
|
54
|
+
"@vue-flow/core": "1.48.2",
|
|
55
|
+
"@vue-flow/minimap": "1.5.4",
|
|
56
|
+
"nuxt": "4.4.8",
|
|
57
|
+
"vue": "3.5.39",
|
|
58
|
+
"vue-router": "5.1.0",
|
|
59
|
+
"@iconify-json/lucide": "1.2.117",
|
|
60
|
+
"@nuxt/eslint": "1.16.0",
|
|
61
|
+
"@types/node": "24.10.4",
|
|
62
|
+
"eslint": "9.39.4",
|
|
63
|
+
"tailwindcss": "4.2.1",
|
|
64
|
+
"typescript": "5.9.3",
|
|
65
|
+
"vitest": "4.1.9",
|
|
66
|
+
"vue-tsc": "3.3.7"
|
|
67
|
+
}
|
|
68
|
+
}
|