nitro-nightly 3.0.0-beta-28969273.f7aa9de6 → 4.0.0-20251010-091516-7cafddba
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/README.md +8 -39
- package/dist/_chunks/app.mjs +19797 -0
- package/dist/_chunks/build.mjs +84 -0
- package/dist/_chunks/build2.mjs +318 -0
- package/dist/_chunks/build3.mjs +6452 -0
- package/dist/_chunks/detect-acorn.mjs +503 -0
- package/dist/_chunks/index.mjs +22242 -0
- package/dist/_chunks/index2.mjs +297 -0
- package/dist/_chunks/index3.mjs +1058 -0
- package/dist/_chunks/index4.mjs +1206 -0
- package/dist/_chunks/info.mjs +11157 -0
- package/dist/_chunks/json5.mjs +68 -0
- package/dist/_chunks/jsonc.mjs +51 -0
- package/dist/_chunks/pathe.M-eThtNZ.mjs +204 -0
- package/dist/_chunks/plugin.mjs +960 -0
- package/dist/_chunks/server.mjs +254 -0
- package/dist/_chunks/snapshot.mjs +284 -0
- package/dist/_chunks/toml.mjs +259 -0
- package/dist/_chunks/yaml.mjs +86 -0
- package/dist/cli/build.mjs +10 -3
- package/dist/cli/dev.mjs +41 -9
- package/dist/cli/index.mjs +460 -1
- package/dist/cli/index2.mjs +4 -1
- package/dist/cli/list.mjs +10 -4
- package/dist/cli/prepare.mjs +6 -3
- package/dist/cli/run.mjs +7 -4
- package/dist/index.d.mts +52 -0
- package/dist/index.mjs +55 -0
- package/dist/node_modules/@poppinss/colors/build/index.js +169 -0
- package/dist/node_modules/@poppinss/colors/package.json +116 -0
- package/dist/node_modules/@poppinss/dumper/build/chunk-26HALFTP.js +602 -0
- package/dist/node_modules/@poppinss/dumper/build/formatters/console/main.js +441 -0
- package/dist/node_modules/@poppinss/dumper/build/formatters/html/main.js +717 -0
- package/dist/node_modules/@poppinss/dumper/package.json +122 -0
- package/dist/node_modules/@poppinss/exception/build/index.js +63 -0
- package/dist/node_modules/@poppinss/exception/package.json +106 -0
- package/dist/node_modules/@sindresorhus/is/distribution/index.js +1313 -0
- package/dist/node_modules/@sindresorhus/is/distribution/utilities.js +3 -0
- package/dist/node_modules/@sindresorhus/is/package.json +81 -0
- package/dist/node_modules/@speed-highlight/core/dist/index.js +4 -0
- package/dist/node_modules/@speed-highlight/core/dist/terminal.js +2 -0
- package/dist/node_modules/@speed-highlight/core/package.json +90 -0
- package/dist/node_modules/cookie/dist/index.js +239 -0
- package/dist/node_modules/cookie/package.json +42 -0
- package/dist/node_modules/croner/dist/croner.js +1 -0
- package/dist/node_modules/croner/package.json +63 -0
- package/dist/node_modules/defu/dist/defu.mjs +69 -0
- package/dist/node_modules/defu/package.json +43 -0
- package/dist/node_modules/destr/dist/index.mjs +72 -0
- package/dist/node_modules/destr/package.json +47 -0
- package/dist/node_modules/error-stack-parser-es/dist/index.mjs +38 -0
- package/dist/node_modules/error-stack-parser-es/dist/lite.mjs +167 -0
- package/dist/node_modules/error-stack-parser-es/package.json +83 -0
- package/dist/node_modules/get-port-please/dist/index.mjs +430 -0
- package/dist/node_modules/get-port-please/package.json +39 -0
- package/dist/node_modules/hookable/dist/index.mjs +290 -0
- package/dist/node_modules/hookable/package.json +49 -0
- package/dist/node_modules/kleur/index.js +110 -0
- package/dist/node_modules/kleur/index.mjs +110 -0
- package/dist/node_modules/kleur/package.json +51 -0
- package/dist/node_modules/klona/dist/index.mjs +81 -0
- package/dist/node_modules/klona/full/index.mjs +53 -0
- package/dist/node_modules/klona/package.json +74 -0
- package/dist/node_modules/scule/dist/index.mjs +80 -0
- package/dist/node_modules/scule/package.json +43 -0
- package/dist/node_modules/source-map/lib/array-set.js +100 -0
- package/dist/node_modules/source-map/lib/base64-vlq.js +94 -0
- package/dist/node_modules/source-map/lib/base64.js +19 -0
- package/dist/node_modules/source-map/lib/binary-search.js +113 -0
- package/dist/node_modules/source-map/lib/mapping-list.js +83 -0
- package/dist/node_modules/source-map/lib/mappings.wasm +0 -0
- package/dist/node_modules/source-map/lib/read-wasm.js +27 -0
- package/dist/node_modules/source-map/lib/source-map-consumer.js +1081 -0
- package/dist/node_modules/source-map/lib/source-map-generator.js +439 -0
- package/dist/node_modules/source-map/lib/source-node.js +430 -0
- package/dist/node_modules/source-map/lib/url.js +13 -0
- package/dist/node_modules/source-map/lib/util.js +444 -0
- package/dist/node_modules/source-map/lib/wasm.js +138 -0
- package/dist/node_modules/source-map/package.json +79 -0
- package/dist/node_modules/source-map/source-map.js +10 -0
- package/dist/node_modules/std-env/dist/index.mjs +1 -0
- package/dist/node_modules/std-env/package.json +46 -0
- package/dist/node_modules/supports-color/index.js +202 -0
- package/dist/node_modules/supports-color/package.json +64 -0
- package/dist/node_modules/ufo/dist/index.mjs +638 -0
- package/dist/node_modules/ufo/package.json +47 -0
- package/dist/node_modules/unctx/dist/index.mjs +131 -0
- package/dist/node_modules/unctx/package.json +67 -0
- package/dist/node_modules/youch/build/chunk-4L7RY2JA.js +42 -0
- package/dist/node_modules/youch/build/chunk-4XB2BYKC.js +85 -0
- package/dist/node_modules/youch/build/chunk-4YEN7HVQ.js +61 -0
- package/dist/node_modules/youch/build/chunk-EUJBVOYB.js +83 -0
- package/dist/node_modules/youch/build/chunk-HFSXRSKS.js +85 -0
- package/dist/node_modules/youch/build/chunk-JAN2TFI2.js +222 -0
- package/dist/node_modules/youch/build/chunk-OSUFJZHZ.js +6 -0
- package/dist/node_modules/youch/build/chunk-PINJDICN.js +72 -0
- package/dist/node_modules/youch/build/chunk-PUHGL6HA.js +41 -0
- package/dist/node_modules/youch/build/chunk-VE4LENUR.js +45 -0
- package/dist/node_modules/youch/build/index.js +352 -0
- package/dist/node_modules/youch/build/public/error_cause/style.css +5 -0
- package/dist/node_modules/youch/build/public/error_info/script.js +13 -0
- package/dist/node_modules/youch/build/public/error_info/style.css +144 -0
- package/dist/node_modules/youch/build/public/error_stack/script.js +74 -0
- package/dist/node_modules/youch/build/public/error_stack/style.css +220 -0
- package/dist/node_modules/youch/build/public/error_stack_source/style.css +123 -0
- package/dist/node_modules/youch/build/public/header/script.js +16 -0
- package/dist/node_modules/youch/build/public/header/style.css +56 -0
- package/dist/node_modules/youch/build/public/layout/script.js +20 -0
- package/dist/node_modules/youch/build/public/layout/style.css +431 -0
- package/dist/node_modules/youch/package.json +133 -0
- package/dist/node_modules/youch-core/build/index.js +316 -0
- package/dist/node_modules/youch-core/package.json +124 -0
- package/dist/presets/_nitro/runtime/nitro-dev.mjs +48 -73
- package/dist/presets/_nitro/runtime/{nitro-prerenderer.d.ts → nitro-prerenderer.d.mts} +1 -1
- package/dist/presets/_nitro/runtime/nitro-prerenderer.mjs +12 -1
- package/dist/presets/_nitro/runtime/service-worker.mjs +5 -15
- package/dist/presets/aws-amplify/runtime/aws-amplify.mjs +2 -2
- package/dist/presets/aws-lambda/runtime/_utils.d.mts +18 -0
- package/dist/presets/aws-lambda/runtime/_utils.mjs +102 -0
- package/dist/presets/aws-lambda/runtime/aws-lambda-streaming.d.mts +3 -0
- package/dist/presets/aws-lambda/runtime/aws-lambda-streaming.mjs +12 -32
- package/dist/presets/aws-lambda/runtime/aws-lambda.d.mts +3 -0
- package/dist/presets/aws-lambda/runtime/aws-lambda.mjs +6 -38
- package/dist/{runtime/internal/utils.azure.d.ts → presets/azure/runtime/_utils.d.mts} +1 -1
- package/dist/{runtime/internal/utils.azure.mjs → presets/azure/runtime/_utils.mjs} +3 -4
- package/dist/presets/azure/runtime/azure-swa.mjs +11 -13
- package/dist/presets/bun/runtime/bun.mjs +13 -18
- package/dist/presets/cloudflare/runtime/_module-handler.d.mts +13 -0
- package/dist/presets/cloudflare/runtime/_module-handler.mjs +93 -0
- package/dist/presets/cloudflare/runtime/cloudflare-durable.d.mts +19 -0
- package/dist/presets/cloudflare/runtime/cloudflare-durable.mjs +74 -0
- package/dist/presets/cloudflare/runtime/cloudflare-module.d.mts +9 -0
- package/dist/presets/cloudflare/runtime/cloudflare-module.mjs +13 -97
- package/dist/presets/cloudflare/runtime/{cloudflare-pages.d.ts → cloudflare-pages.d.mts} +1 -1
- package/dist/presets/cloudflare/runtime/cloudflare-pages.mjs +19 -27
- package/dist/{runtime/internal/timing.d.ts → presets/cloudflare/runtime/plugin.dev.d.mts} +1 -0
- package/dist/presets/cloudflare/runtime/plugin.dev.mjs +89 -0
- package/dist/presets/deno/runtime/deno-deploy.mjs +11 -25
- package/dist/presets/deno/runtime/deno-server.d.mts +6 -0
- package/dist/presets/deno/runtime/deno-server.mjs +15 -21
- package/dist/presets/netlify/runtime/netlify-edge.d.mts +3 -0
- package/dist/presets/netlify/runtime/netlify-edge.mjs +8 -16
- package/dist/presets/netlify/runtime/netlify.mjs +16 -45
- package/dist/presets/node/runtime/{cluster.mjs → node-cluster.mjs} +1 -3
- package/dist/presets/node/runtime/node-middleware.d.mts +4 -0
- package/dist/presets/node/runtime/{node-listener.mjs → node-middleware.mjs} +3 -4
- package/dist/presets/node/runtime/node-server.mjs +3 -4
- package/dist/presets/standard/runtime/server.d.mts +5 -0
- package/dist/presets/standard/runtime/server.mjs +6 -0
- package/dist/presets/stormkit/runtime/stormkit.mjs +8 -12
- package/dist/presets/vercel/runtime/vercel.d.mts +8 -0
- package/dist/presets/vercel/runtime/vercel.mjs +11 -11
- package/dist/presets/winterjs/runtime/winterjs.mjs +22 -4
- package/dist/presets/{node/runtime/node-server.d.ts → zeabur/runtime/zeabur.d.mts} +1 -1
- package/dist/presets/zeabur/runtime/zeabur.mjs +2 -6
- package/dist/presets.mjs +2460 -0
- package/dist/runtime/index.d.mts +11 -0
- package/dist/runtime/index.mjs +8 -8
- package/dist/runtime/internal/app.d.mts +2 -0
- package/dist/runtime/internal/app.mjs +129 -128
- package/dist/runtime/internal/cache.d.mts +7 -0
- package/dist/runtime/internal/cache.mjs +82 -175
- package/dist/runtime/internal/{context.d.ts → context.d.mts} +3 -3
- package/dist/runtime/internal/context.mjs +6 -6
- package/dist/runtime/internal/error/dev.d.mts +9 -0
- package/dist/runtime/internal/error/dev.mjs +122 -0
- package/dist/runtime/internal/error/prod.d.mts +8 -0
- package/dist/runtime/internal/error/prod.mjs +62 -0
- package/dist/runtime/internal/error/utils.d.mts +8 -0
- package/dist/runtime/internal/error/utils.mjs +3 -0
- package/dist/runtime/internal/index.d.mts +3 -0
- package/dist/runtime/internal/index.mjs +1 -14
- package/dist/runtime/internal/renderer.d.mts +3 -0
- package/dist/runtime/internal/renderer.mjs +29 -33
- package/dist/runtime/internal/route-rules.d.mts +8 -0
- package/dist/runtime/internal/route-rules.mjs +58 -63
- package/dist/runtime/internal/routes/dev-tasks.d.mts +3 -0
- package/dist/runtime/internal/routes/dev-tasks.mjs +23 -0
- package/dist/runtime/internal/routes/openapi.d.mts +3 -0
- package/dist/runtime/internal/routes/openapi.mjs +24 -9
- package/dist/runtime/internal/routes/renderer-template.d.mts +2 -0
- package/dist/runtime/internal/routes/renderer-template.dev.d.mts +3 -0
- package/dist/runtime/internal/routes/renderer-template.dev.mjs +21 -0
- package/dist/runtime/internal/routes/renderer-template.mjs +4 -0
- package/dist/runtime/internal/routes/scalar.d.mts +3 -0
- package/dist/runtime/internal/routes/scalar.mjs +7 -4
- package/dist/runtime/internal/routes/swagger.d.mts +3 -0
- package/dist/runtime/internal/routes/swagger.mjs +5 -4
- package/dist/runtime/internal/{utils.env.d.ts → runtime-config.d.mts} +4 -2
- package/dist/runtime/internal/{utils.env.mjs → runtime-config.mjs} +16 -6
- package/dist/runtime/internal/static.d.mts +3 -0
- package/dist/runtime/internal/static.mjs +24 -36
- package/dist/runtime/internal/storage.mjs +2 -1
- package/dist/runtime/internal/task.mjs +6 -6
- package/dist/runtime/internal/utils.d.mts +1 -0
- package/dist/runtime/internal/utils.mjs +1 -116
- package/dist/runtime/internal/vite/dev-entry.d.mts +1 -0
- package/dist/runtime/internal/vite/dev-entry.mjs +6 -0
- package/dist/runtime/internal/vite/dev-worker.mjs +362 -0
- package/dist/runtime/internal/vite/prod-setup.d.mts +4 -0
- package/dist/runtime/internal/vite/prod-setup.mjs +55 -0
- package/dist/runtime/internal/vite/ssr-renderer.d.mts +4 -0
- package/dist/runtime/internal/vite/ssr-renderer.mjs +4 -0
- package/dist/types/index.d.mts +2688 -138
- package/dist/vite.d.mts +59 -0
- package/dist/vite.mjs +68 -0
- package/lib/config.d.mts +9 -0
- package/lib/deps/h3.d.mts +1 -0
- package/lib/deps/h3.mjs +1 -0
- package/lib/deps/ofetch.mjs +1 -0
- package/lib/deps/ofetch.mts +1 -0
- package/lib/meta.d.mts +5 -0
- package/lib/meta.mjs +21 -0
- package/{runtime-meta.d.ts → lib/runtime-meta.d.mts} +1 -0
- package/{runtime-meta.mjs → lib/runtime-meta.mjs} +12 -4
- package/package.json +142 -160
- package/cli.d.ts +0 -1
- package/config.d.ts +0 -1
- package/core.d.ts +0 -1
- package/dist/cli/index.d.ts +0 -1
- package/dist/config/index.d.mts +0 -6
- package/dist/config/index.d.ts +0 -6
- package/dist/core/index.d.mts +0 -30
- package/dist/core/index.d.ts +0 -30
- package/dist/core/index.mjs +0 -2456
- package/dist/kit/index.d.mts +0 -44
- package/dist/kit/index.d.ts +0 -44
- package/dist/kit/index.mjs +0 -71
- package/dist/meta/index.d.mts +0 -3
- package/dist/meta/index.d.ts +0 -3
- package/dist/meta/index.mjs +0 -3
- package/dist/presets/_all.gen.d.ts +0 -2
- package/dist/presets/_all.gen.mjs +0 -52
- package/dist/presets/_nitro/base-worker.d.ts +0 -2
- package/dist/presets/_nitro/base-worker.mjs +0 -25
- package/dist/presets/_nitro/nitro-dev.d.ts +0 -2
- package/dist/presets/_nitro/nitro-dev.mjs +0 -19
- package/dist/presets/_nitro/nitro-prerender.d.ts +0 -2
- package/dist/presets/_nitro/nitro-prerender.mjs +0 -17
- package/dist/presets/_nitro/preset.d.ts +0 -2
- package/dist/presets/_nitro/preset.mjs +0 -5
- package/dist/presets/_nitro/service-worker.d.ts +0 -2
- package/dist/presets/_nitro/service-worker.mjs +0 -110
- package/dist/presets/_resolve.d.ts +0 -8
- package/dist/presets/_resolve.mjs +0 -44
- package/dist/presets/_static/preset.d.ts +0 -2
- package/dist/presets/_static/preset.mjs +0 -69
- package/dist/presets/_types.gen.d.ts +0 -16
- package/dist/presets/alwaysdata/preset.d.ts +0 -2
- package/dist/presets/alwaysdata/preset.mjs +0 -14
- package/dist/presets/aws-amplify/preset.d.ts +0 -3
- package/dist/presets/aws-amplify/preset.mjs +0 -27
- package/dist/presets/aws-amplify/types.d.ts +0 -141
- package/dist/presets/aws-amplify/utils.d.ts +0 -2
- package/dist/presets/aws-amplify/utils.mjs +0 -82
- package/dist/presets/aws-lambda/preset.d.ts +0 -2
- package/dist/presets/aws-lambda/preset.mjs +0 -21
- package/dist/presets/aws-lambda/runtime/aws-lambda-streaming.d.ts +0 -14
- package/dist/presets/aws-lambda/runtime/aws-lambda.d.ts +0 -4
- package/dist/presets/azure/preset.d.ts +0 -3
- package/dist/presets/azure/preset.mjs +0 -44
- package/dist/presets/azure/runtime/azure-functions.mjs +0 -24
- package/dist/presets/azure/runtime/azure-swa.d.ts +0 -5
- package/dist/presets/azure/types.d.ts +0 -13
- package/dist/presets/azure/types.mjs +0 -0
- package/dist/presets/azure/utils.d.ts +0 -3
- package/dist/presets/azure/utils.mjs +0 -183
- package/dist/presets/bun/preset.d.ts +0 -2
- package/dist/presets/bun/preset.mjs +0 -17
- package/dist/presets/cleavr/preset.d.ts +0 -2
- package/dist/presets/cleavr/preset.mjs +0 -12
- package/dist/presets/cloudflare/preset.d.ts +0 -3
- package/dist/presets/cloudflare/preset.mjs +0 -145
- package/dist/presets/cloudflare/runtime/cloudflare-module.d.ts +0 -13
- package/dist/presets/cloudflare/runtime/cloudflare-worker.mjs +0 -64
- package/dist/presets/cloudflare/types.d.ts +0 -89
- package/dist/presets/cloudflare/types.mjs +0 -0
- package/dist/presets/cloudflare/types.wrangler.d.ts +0 -974
- package/dist/presets/cloudflare/types.wrangler.mjs +0 -0
- package/dist/presets/cloudflare/utils.d.ts +0 -3
- package/dist/presets/cloudflare/utils.mjs +0 -163
- package/dist/presets/deno/preset.d.ts +0 -2
- package/dist/presets/deno/preset.mjs +0 -148
- package/dist/presets/deno/runtime/_deno-env-polyfill.d.ts +0 -0
- package/dist/presets/deno/runtime/_deno-env-polyfill.mjs +0 -1
- package/dist/presets/digitalocean/preset.d.ts +0 -2
- package/dist/presets/digitalocean/preset.mjs +0 -11
- package/dist/presets/edgio/preset.d.ts +0 -2
- package/dist/presets/edgio/preset.mjs +0 -95
- package/dist/presets/firebase/preset.d.ts +0 -3
- package/dist/presets/firebase/preset.mjs +0 -50
- package/dist/presets/firebase/runtime/firebase-gen-1.d.ts +0 -2
- package/dist/presets/firebase/runtime/firebase-gen-1.mjs +0 -7
- package/dist/presets/firebase/runtime/firebase-gen-2.d.ts +0 -2
- package/dist/presets/firebase/runtime/firebase-gen-2.mjs +0 -14
- package/dist/presets/firebase/runtime/firebase-gen-default.d.ts +0 -1
- package/dist/presets/firebase/runtime/firebase-gen-default.mjs +0 -1
- package/dist/presets/firebase/types.d.ts +0 -38
- package/dist/presets/firebase/types.mjs +0 -0
- package/dist/presets/firebase/utils.d.ts +0 -3
- package/dist/presets/firebase/utils.mjs +0 -50
- package/dist/presets/flightcontrol/preset.d.ts +0 -2
- package/dist/presets/flightcontrol/preset.mjs +0 -11
- package/dist/presets/heroku/preset.d.ts +0 -2
- package/dist/presets/heroku/preset.mjs +0 -11
- package/dist/presets/iis/preset.d.ts +0 -2
- package/dist/presets/iis/preset.mjs +0 -32
- package/dist/presets/iis/utils.d.ts +0 -3
- package/dist/presets/iis/utils.mjs +0 -161
- package/dist/presets/index.d.mts +0 -1
- package/dist/presets/index.d.ts +0 -2
- package/dist/presets/index.mjs +0 -1
- package/dist/presets/koyeb/preset.d.ts +0 -2
- package/dist/presets/koyeb/preset.mjs +0 -11
- package/dist/presets/netlify/legacy/preset.d.ts +0 -2
- package/dist/presets/netlify/legacy/preset.mjs +0 -143
- package/dist/presets/netlify/legacy/runtime/_deno-env-polyfill.d.ts +0 -0
- package/dist/presets/netlify/legacy/runtime/_deno-env-polyfill.mjs +0 -1
- package/dist/presets/netlify/legacy/runtime/netlify-builder.d.ts +0 -3
- package/dist/presets/netlify/legacy/runtime/netlify-builder.mjs +0 -5
- package/dist/presets/netlify/legacy/runtime/netlify-edge.d.ts +0 -2
- package/dist/presets/netlify/legacy/runtime/netlify-edge.mjs +0 -25
- package/dist/presets/netlify/legacy/runtime/netlify-lambda.d.ts +0 -3
- package/dist/presets/netlify/legacy/runtime/netlify-lambda.mjs +0 -38
- package/dist/presets/netlify/legacy/runtime/netlify.d.ts +0 -4
- package/dist/presets/netlify/legacy/runtime/netlify.mjs +0 -22
- package/dist/presets/netlify/legacy/utils.d.ts +0 -4
- package/dist/presets/netlify/legacy/utils.mjs +0 -113
- package/dist/presets/netlify/preset.d.ts +0 -3
- package/dist/presets/netlify/preset.mjs +0 -128
- package/dist/presets/netlify/runtime/_deno-env-polyfill.d.ts +0 -0
- package/dist/presets/netlify/runtime/_deno-env-polyfill.mjs +0 -1
- package/dist/presets/netlify/runtime/netlify-edge.d.ts +0 -2
- package/dist/presets/netlify/types.d.ts +0 -12
- package/dist/presets/netlify/types.mjs +0 -0
- package/dist/presets/netlify/utils.d.ts +0 -5
- package/dist/presets/netlify/utils.mjs +0 -94
- package/dist/presets/node/preset.d.ts +0 -2
- package/dist/presets/node/preset.mjs +0 -49
- package/dist/presets/node/runtime/cli.d.ts +0 -1
- package/dist/presets/node/runtime/cli.mjs +0 -22
- package/dist/presets/node/runtime/node-listener.d.ts +0 -6
- package/dist/presets/platform.sh/preset.d.ts +0 -2
- package/dist/presets/platform.sh/preset.mjs +0 -11
- package/dist/presets/render.com/preset.d.ts +0 -2
- package/dist/presets/render.com/preset.mjs +0 -11
- package/dist/presets/stormkit/preset.d.ts +0 -2
- package/dist/presets/stormkit/preset.mjs +0 -15
- package/dist/presets/vercel/preset.d.ts +0 -3
- package/dist/presets/vercel/preset.mjs +0 -104
- package/dist/presets/vercel/runtime/vercel-edge.d.ts +0 -2
- package/dist/presets/vercel/runtime/vercel-edge.mjs +0 -22
- package/dist/presets/vercel/runtime/vercel.d.ts +0 -4
- package/dist/presets/vercel/types.d.ts +0 -78
- package/dist/presets/vercel/types.mjs +0 -0
- package/dist/presets/vercel/utils.d.ts +0 -5
- package/dist/presets/vercel/utils.mjs +0 -186
- package/dist/presets/winterjs/preset.d.ts +0 -2
- package/dist/presets/winterjs/preset.mjs +0 -20
- package/dist/presets/winterjs/runtime/winterjs.d.ts +0 -1
- package/dist/presets/zeabur/preset.d.ts +0 -2
- package/dist/presets/zeabur/preset.mjs +0 -70
- package/dist/presets/zeabur/runtime/zeabur.d.ts +0 -4
- package/dist/rollup/index.d.mts +0 -5
- package/dist/rollup/index.d.ts +0 -5
- package/dist/rollup/index.mjs +0 -1673
- package/dist/runtime/index.d.ts +0 -12
- package/dist/runtime/internal/app.d.ts +0 -3
- package/dist/runtime/internal/cache.d.ts +0 -8
- package/dist/runtime/internal/client.mjs +0 -4
- package/dist/runtime/internal/config.d.ts +0 -5
- package/dist/runtime/internal/config.mjs +0 -45
- package/dist/runtime/internal/error.d.ts +0 -4
- package/dist/runtime/internal/error.mjs +0 -73
- package/dist/runtime/internal/index.d.ts +0 -6
- package/dist/runtime/internal/renderer.d.ts +0 -2
- package/dist/runtime/internal/route-rules.d.ts +0 -14
- package/dist/runtime/internal/routes/openapi.d.ts +0 -3
- package/dist/runtime/internal/routes/scalar.d.ts +0 -2
- package/dist/runtime/internal/routes/swagger.d.ts +0 -2
- package/dist/runtime/internal/static.d.ts +0 -2
- package/dist/runtime/internal/timing.mjs +0 -29
- package/dist/runtime/internal/utils.d.ts +0 -21
- package/dist/runtime/internal/utils.lambda.d.ts +0 -10
- package/dist/runtime/internal/utils.lambda.mjs +0 -30
- package/dist/shared/nitro.bra5i6ER.d.mts +0 -620
- package/dist/shared/nitro.bra5i6ER.d.ts +0 -620
- package/dist/types/index.d.ts +0 -260
- package/kit.d.ts +0 -1
- package/meta.d.ts +0 -1
- package/presets.d.ts +0 -1
- package/rollup.d.ts +0 -1
- package/runtime.d.ts +0 -1
- package/types.d.ts +0 -1
- /package/dist/presets/_nitro/runtime/{nitro-dev.d.ts → nitro-dev.d.mts} +0 -0
- /package/dist/presets/_nitro/runtime/{service-worker.d.ts → service-worker.d.mts} +0 -0
- /package/dist/presets/aws-amplify/runtime/{aws-amplify.d.ts → aws-amplify.d.mts} +0 -0
- /package/dist/presets/azure/runtime/{azure-functions.d.ts → azure-swa.d.mts} +0 -0
- /package/dist/presets/bun/runtime/{bun.d.ts → bun.d.mts} +0 -0
- /package/dist/presets/{cloudflare/runtime/cloudflare-worker.d.ts → deno/runtime/deno-deploy.d.mts} +0 -0
- /package/dist/presets/netlify/runtime/{netlify.d.ts → netlify.d.mts} +0 -0
- /package/dist/presets/node/runtime/{cluster.d.ts → node-cluster.d.mts} +0 -0
- /package/dist/presets/{deno/runtime/deno-server.d.ts → node/runtime/node-server.d.mts} +0 -0
- /package/dist/presets/stormkit/runtime/{stormkit.d.ts → stormkit.d.mts} +0 -0
- /package/dist/presets/{deno/runtime/deno-deploy.d.ts → winterjs/runtime/winterjs.d.mts} +0 -0
- /package/dist/runtime/internal/{database.d.ts → database.d.mts} +0 -0
- /package/dist/runtime/internal/{debug.d.ts → debug.d.mts} +0 -0
- /package/dist/{presets/_types.gen.mjs → runtime/internal/empty.d.mts} +0 -0
- /package/dist/{presets/aws-amplify/types.mjs → runtime/internal/empty.mjs} +0 -0
- /package/dist/runtime/internal/lib/{http-graceful-shutdown.d.ts → http-graceful-shutdown.d.mts} +0 -0
- /package/dist/runtime/internal/{meta.d.ts → meta.d.mts} +0 -0
- /package/dist/runtime/internal/{plugin.d.ts → plugin.d.mts} +0 -0
- /package/dist/runtime/internal/{shutdown.d.ts → shutdown.d.mts} +0 -0
- /package/dist/runtime/internal/{storage.d.ts → storage.d.mts} +0 -0
- /package/dist/runtime/internal/{task.d.ts → task.d.mts} +0 -0
- /package/dist/runtime/internal/{client.d.ts → vite/dev-worker.d.mts} +0 -0
- /package/{dist/config/index.mjs → lib/config.mjs} +0 -0
|
@@ -0,0 +1,352 @@
|
|
|
1
|
+
import {
|
|
2
|
+
Layout
|
|
3
|
+
} from "./chunk-VE4LENUR.js";
|
|
4
|
+
import {
|
|
5
|
+
ErrorCause
|
|
6
|
+
} from "./chunk-PINJDICN.js";
|
|
7
|
+
import {
|
|
8
|
+
ErrorInfo
|
|
9
|
+
} from "./chunk-EUJBVOYB.js";
|
|
10
|
+
import {
|
|
11
|
+
ErrorMetadata
|
|
12
|
+
} from "./chunk-HFSXRSKS.js";
|
|
13
|
+
import {
|
|
14
|
+
ErrorStack
|
|
15
|
+
} from "./chunk-JAN2TFI2.js";
|
|
16
|
+
import {
|
|
17
|
+
ErrorStackSource
|
|
18
|
+
} from "./chunk-4XB2BYKC.js";
|
|
19
|
+
import "./chunk-4L7RY2JA.js";
|
|
20
|
+
import {
|
|
21
|
+
Header
|
|
22
|
+
} from "./chunk-PUHGL6HA.js";
|
|
23
|
+
import "./chunk-OSUFJZHZ.js";
|
|
24
|
+
import {
|
|
25
|
+
BaseComponent
|
|
26
|
+
} from "./chunk-4YEN7HVQ.js";
|
|
27
|
+
|
|
28
|
+
// src/youch.ts
|
|
29
|
+
import cookie from "cookie";
|
|
30
|
+
import { ErrorParser } from "youch-core";
|
|
31
|
+
|
|
32
|
+
// src/metadata.ts
|
|
33
|
+
var Metadata = class {
|
|
34
|
+
#groups = {};
|
|
35
|
+
/**
|
|
36
|
+
* Converts value to an array (if not an array already)
|
|
37
|
+
*/
|
|
38
|
+
#toArray(value) {
|
|
39
|
+
return Array.isArray(value) ? value : [value];
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Define a group, its sections and their rows. In case of
|
|
43
|
+
* existing groups/sections, the new data will be merged
|
|
44
|
+
* with the existing data
|
|
45
|
+
*/
|
|
46
|
+
group(name, sections) {
|
|
47
|
+
this.#groups[name] = this.#groups[name] ?? {};
|
|
48
|
+
Object.keys(sections).forEach((section) => {
|
|
49
|
+
if (!this.#groups[name][section]) {
|
|
50
|
+
this.#groups[name][section] = sections[section];
|
|
51
|
+
} else {
|
|
52
|
+
this.#groups[name][section] = this.#toArray(this.#groups[name][section]);
|
|
53
|
+
this.#groups[name][section].push(...this.#toArray(sections[section]));
|
|
54
|
+
}
|
|
55
|
+
});
|
|
56
|
+
return this;
|
|
57
|
+
}
|
|
58
|
+
/**
|
|
59
|
+
* Returns the existing metadata groups, sections and
|
|
60
|
+
* rows.
|
|
61
|
+
*/
|
|
62
|
+
toJSON() {
|
|
63
|
+
return this.#groups;
|
|
64
|
+
}
|
|
65
|
+
};
|
|
66
|
+
|
|
67
|
+
// src/templates.ts
|
|
68
|
+
import { createScript, createStyleSheet } from "@poppinss/dumper/html";
|
|
69
|
+
var Templates = class {
|
|
70
|
+
constructor(devMode) {
|
|
71
|
+
this.devMode = devMode;
|
|
72
|
+
this.#knownTemplates = {
|
|
73
|
+
layout: new Layout(devMode),
|
|
74
|
+
header: new Header(devMode),
|
|
75
|
+
errorInfo: new ErrorInfo(devMode),
|
|
76
|
+
errorStack: new ErrorStack(devMode),
|
|
77
|
+
errorStackSource: new ErrorStackSource(devMode),
|
|
78
|
+
errorCause: new ErrorCause(devMode),
|
|
79
|
+
errorMetadata: new ErrorMetadata(devMode)
|
|
80
|
+
};
|
|
81
|
+
}
|
|
82
|
+
#knownTemplates;
|
|
83
|
+
#styles = /* @__PURE__ */ new Map([["global", createStyleSheet()]]);
|
|
84
|
+
#scripts = /* @__PURE__ */ new Map([["global", createScript()]]);
|
|
85
|
+
/**
|
|
86
|
+
* Returns a collection of style and script tags to dump
|
|
87
|
+
* inside the document HEAD.
|
|
88
|
+
*/
|
|
89
|
+
#getStylesAndScripts(cspNonce) {
|
|
90
|
+
let customInjectedStyles = "";
|
|
91
|
+
const styles = [];
|
|
92
|
+
const scripts = [];
|
|
93
|
+
const cspNonceAttr = cspNonce ? ` nonce="${cspNonce}"` : "";
|
|
94
|
+
this.#styles.forEach((bucket, name) => {
|
|
95
|
+
if (name === "injected") {
|
|
96
|
+
customInjectedStyles = `<style id="${name}-styles"${cspNonceAttr}>${bucket}</style>`;
|
|
97
|
+
} else {
|
|
98
|
+
styles.push(`<style id="${name}-styles"${cspNonceAttr}>${bucket}</style>`);
|
|
99
|
+
}
|
|
100
|
+
});
|
|
101
|
+
this.#scripts.forEach((bucket, name) => {
|
|
102
|
+
scripts.push(`<script id="${name}-script"${cspNonceAttr}>${bucket}</script>`);
|
|
103
|
+
});
|
|
104
|
+
return { styles: `${styles.join("\n")}
|
|
105
|
+
${customInjectedStyles}`, scripts: scripts.join("\n") };
|
|
106
|
+
}
|
|
107
|
+
/**
|
|
108
|
+
* Collects styles and scripts for components as we render
|
|
109
|
+
* them.
|
|
110
|
+
*/
|
|
111
|
+
async #collectStylesAndScripts(templateName) {
|
|
112
|
+
if (!this.#styles.has(templateName)) {
|
|
113
|
+
const styles = await this.#knownTemplates[templateName].getStyles();
|
|
114
|
+
if (styles) {
|
|
115
|
+
this.#styles.set(templateName, styles);
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
if (!this.#scripts.has(templateName)) {
|
|
119
|
+
const script = await this.#knownTemplates[templateName].getScript();
|
|
120
|
+
if (script) {
|
|
121
|
+
this.#scripts.set(templateName, script);
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
/**
|
|
126
|
+
* Returns the HTML for a given template
|
|
127
|
+
*/
|
|
128
|
+
async #tmplToHTML(templateName, props) {
|
|
129
|
+
const component = this.#knownTemplates[templateName];
|
|
130
|
+
if (!component) {
|
|
131
|
+
throw new Error(`Invalid template "${templateName}"`);
|
|
132
|
+
}
|
|
133
|
+
await this.#collectStylesAndScripts(templateName);
|
|
134
|
+
return component.toHTML(props);
|
|
135
|
+
}
|
|
136
|
+
/**
|
|
137
|
+
* Returns the ANSI output for a given template
|
|
138
|
+
*/
|
|
139
|
+
async #tmplToANSI(templateName, props) {
|
|
140
|
+
const component = this.#knownTemplates[templateName];
|
|
141
|
+
if (!component) {
|
|
142
|
+
throw new Error(`Invalid template "${templateName}"`);
|
|
143
|
+
}
|
|
144
|
+
return component.toANSI(props);
|
|
145
|
+
}
|
|
146
|
+
/**
|
|
147
|
+
* Define a custom component to be used in place of the default component.
|
|
148
|
+
* Overriding components allows you control the HTML layout, styles and
|
|
149
|
+
* the frontend scripts of an HTML fragment.
|
|
150
|
+
*/
|
|
151
|
+
use(templateName, component) {
|
|
152
|
+
this.#knownTemplates[templateName] = component;
|
|
153
|
+
return this;
|
|
154
|
+
}
|
|
155
|
+
/**
|
|
156
|
+
* Inject custom styles to the document. Injected styles are
|
|
157
|
+
* always placed after the global and the components style
|
|
158
|
+
* tags.
|
|
159
|
+
*/
|
|
160
|
+
injectStyles(cssFragment) {
|
|
161
|
+
let injectedStyles = this.#styles.get("injected") ?? "";
|
|
162
|
+
injectedStyles += `
|
|
163
|
+
${cssFragment}`;
|
|
164
|
+
this.#styles.set("injected", injectedStyles);
|
|
165
|
+
return this;
|
|
166
|
+
}
|
|
167
|
+
/**
|
|
168
|
+
* Returns the HTML output for the given parsed error
|
|
169
|
+
*/
|
|
170
|
+
async toHTML(props) {
|
|
171
|
+
const html = await this.#tmplToHTML("layout", {
|
|
172
|
+
title: props.title,
|
|
173
|
+
ide: props.ide,
|
|
174
|
+
cspNonce: props.cspNonce,
|
|
175
|
+
children: async () => {
|
|
176
|
+
const header = await this.#tmplToHTML("header", props);
|
|
177
|
+
const info = await this.#tmplToHTML("errorInfo", props);
|
|
178
|
+
const stackTrace = await this.#tmplToHTML("errorStack", {
|
|
179
|
+
ide: process.env.EDITOR ?? "vscode",
|
|
180
|
+
sourceCodeRenderer: (error, frame) => {
|
|
181
|
+
return this.#tmplToHTML("errorStackSource", {
|
|
182
|
+
error,
|
|
183
|
+
frame,
|
|
184
|
+
ide: props.ide,
|
|
185
|
+
cspNonce: props.cspNonce
|
|
186
|
+
});
|
|
187
|
+
},
|
|
188
|
+
...props
|
|
189
|
+
});
|
|
190
|
+
const cause = await this.#tmplToHTML("errorCause", props);
|
|
191
|
+
const metadata = await this.#tmplToHTML("errorMetadata", props);
|
|
192
|
+
return `${header}${info}${stackTrace}${cause}${metadata}`;
|
|
193
|
+
}
|
|
194
|
+
});
|
|
195
|
+
const { scripts, styles } = this.#getStylesAndScripts(props.cspNonce);
|
|
196
|
+
return html.replace("<!-- STYLES -->", styles).replace("<!-- SCRIPTS -->", scripts);
|
|
197
|
+
}
|
|
198
|
+
/**
|
|
199
|
+
* Returns the ANSI output to be printed on the terminal
|
|
200
|
+
*/
|
|
201
|
+
async toANSI(props) {
|
|
202
|
+
const ansiOutput = await this.#tmplToANSI("layout", {
|
|
203
|
+
title: props.title,
|
|
204
|
+
children: async () => {
|
|
205
|
+
const header = await this.#tmplToANSI("header", {});
|
|
206
|
+
const info = await this.#tmplToANSI("errorInfo", props);
|
|
207
|
+
const stackTrace = await this.#tmplToANSI("errorStack", {
|
|
208
|
+
ide: process.env.EDITOR ?? "vscode",
|
|
209
|
+
sourceCodeRenderer: (error, frame) => {
|
|
210
|
+
return this.#tmplToANSI("errorStackSource", {
|
|
211
|
+
error,
|
|
212
|
+
frame
|
|
213
|
+
});
|
|
214
|
+
},
|
|
215
|
+
...props
|
|
216
|
+
});
|
|
217
|
+
const cause = await this.#tmplToANSI("errorCause", props);
|
|
218
|
+
const metadata = await this.#tmplToANSI("errorMetadata", props);
|
|
219
|
+
return `${header}${info}${stackTrace}${cause}${metadata}`;
|
|
220
|
+
}
|
|
221
|
+
});
|
|
222
|
+
return ansiOutput;
|
|
223
|
+
}
|
|
224
|
+
};
|
|
225
|
+
|
|
226
|
+
// src/youch.ts
|
|
227
|
+
var Youch = class {
|
|
228
|
+
/**
|
|
229
|
+
* Properties to be shared with the Error parser
|
|
230
|
+
*/
|
|
231
|
+
#sourceLoader;
|
|
232
|
+
#parsers = [];
|
|
233
|
+
#transformers = [];
|
|
234
|
+
/**
|
|
235
|
+
* Manage templates used for converting error to the HTML
|
|
236
|
+
* output
|
|
237
|
+
*/
|
|
238
|
+
templates = new Templates(false);
|
|
239
|
+
/**
|
|
240
|
+
* Define metadata to be displayed alongside the error output
|
|
241
|
+
*/
|
|
242
|
+
metadata = new Metadata();
|
|
243
|
+
/**
|
|
244
|
+
* Creates an instance of the ErrorParser and applies the
|
|
245
|
+
* source loader, parsers and transformers on it
|
|
246
|
+
*/
|
|
247
|
+
#createErrorParser(options) {
|
|
248
|
+
const errorParser = new ErrorParser(options);
|
|
249
|
+
if (this.#sourceLoader) {
|
|
250
|
+
errorParser.defineSourceLoader(this.#sourceLoader);
|
|
251
|
+
}
|
|
252
|
+
this.#parsers.forEach((parser) => errorParser.useParser(parser));
|
|
253
|
+
this.#transformers.forEach((transformer) => errorParser.useTransformer(transformer));
|
|
254
|
+
return errorParser;
|
|
255
|
+
}
|
|
256
|
+
/**
|
|
257
|
+
* Defines the request properties as a metadata group
|
|
258
|
+
*/
|
|
259
|
+
#defineRequestMetadataGroup(request) {
|
|
260
|
+
if (!request || Object.keys(request).length === 0) {
|
|
261
|
+
return;
|
|
262
|
+
}
|
|
263
|
+
this.metadata.group("Request", {
|
|
264
|
+
...request.url ? {
|
|
265
|
+
url: {
|
|
266
|
+
key: "URL",
|
|
267
|
+
value: request.url
|
|
268
|
+
}
|
|
269
|
+
} : {},
|
|
270
|
+
...request.method ? {
|
|
271
|
+
method: {
|
|
272
|
+
key: "Method",
|
|
273
|
+
value: request.method
|
|
274
|
+
}
|
|
275
|
+
} : {},
|
|
276
|
+
...request.headers ? {
|
|
277
|
+
headers: Object.keys(request.headers).map((key) => {
|
|
278
|
+
const value = request.headers[key];
|
|
279
|
+
return {
|
|
280
|
+
key,
|
|
281
|
+
value: key === "cookie" ? { ...cookie.parse(value) } : value
|
|
282
|
+
};
|
|
283
|
+
})
|
|
284
|
+
} : {}
|
|
285
|
+
});
|
|
286
|
+
}
|
|
287
|
+
/**
|
|
288
|
+
* Define custom implementation for loading the source code
|
|
289
|
+
* of a stack frame.
|
|
290
|
+
*/
|
|
291
|
+
defineSourceLoader(loader) {
|
|
292
|
+
this.#sourceLoader = loader;
|
|
293
|
+
return this;
|
|
294
|
+
}
|
|
295
|
+
/**
|
|
296
|
+
* Define a custom parser. Parsers are executed before the
|
|
297
|
+
* error gets parsed and provides you with an option to
|
|
298
|
+
* modify the error
|
|
299
|
+
*/
|
|
300
|
+
useParser(parser) {
|
|
301
|
+
this.#parsers.push(parser);
|
|
302
|
+
return this;
|
|
303
|
+
}
|
|
304
|
+
/**
|
|
305
|
+
* Define a custom transformer. Transformers are executed
|
|
306
|
+
* after the error has been parsed and can mutate the
|
|
307
|
+
* properties of the parsed error.
|
|
308
|
+
*/
|
|
309
|
+
useTransformer(transformer) {
|
|
310
|
+
this.#transformers.push(transformer);
|
|
311
|
+
return this;
|
|
312
|
+
}
|
|
313
|
+
/**
|
|
314
|
+
* Parses error to JSON
|
|
315
|
+
*/
|
|
316
|
+
async toJSON(error, options) {
|
|
317
|
+
options = { ...options };
|
|
318
|
+
return this.#createErrorParser({ offset: options.offset }).parse(error);
|
|
319
|
+
}
|
|
320
|
+
/**
|
|
321
|
+
* Render error to HTML
|
|
322
|
+
*/
|
|
323
|
+
async toHTML(error, options) {
|
|
324
|
+
options = { ...options };
|
|
325
|
+
this.#defineRequestMetadataGroup(options.request);
|
|
326
|
+
const parsedError = await this.#createErrorParser({ offset: options.offset }).parse(error);
|
|
327
|
+
return this.templates.toHTML({
|
|
328
|
+
title: options.title ?? "An error has occurred",
|
|
329
|
+
ide: options.ide ?? process.env.IDE ?? "vscode",
|
|
330
|
+
cspNonce: options.cspNonce,
|
|
331
|
+
error: parsedError,
|
|
332
|
+
metadata: this.metadata
|
|
333
|
+
});
|
|
334
|
+
}
|
|
335
|
+
/**
|
|
336
|
+
* Render error to ANSI output
|
|
337
|
+
*/
|
|
338
|
+
async toANSI(error, options) {
|
|
339
|
+
options = { ...options };
|
|
340
|
+
const parsedError = await this.#createErrorParser({ offset: options.offset }).parse(error);
|
|
341
|
+
return this.templates.toANSI({
|
|
342
|
+
title: "",
|
|
343
|
+
error: parsedError,
|
|
344
|
+
metadata: this.metadata
|
|
345
|
+
});
|
|
346
|
+
}
|
|
347
|
+
};
|
|
348
|
+
export {
|
|
349
|
+
BaseComponent,
|
|
350
|
+
Metadata,
|
|
351
|
+
Youch
|
|
352
|
+
};
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
function copyErrorMessage(button) {
|
|
2
|
+
const errorText = button.dataset.errorText;
|
|
3
|
+
|
|
4
|
+
navigator.clipboard.writeText(errorText)
|
|
5
|
+
.then(() => {
|
|
6
|
+
button.classList.add('copied');
|
|
7
|
+
setTimeout(() => button.classList.remove('copied'), 2000);
|
|
8
|
+
})
|
|
9
|
+
.catch(() => {
|
|
10
|
+
button.classList.add('copied');
|
|
11
|
+
setTimeout(() => button.classList.remove('copied'), 2000);
|
|
12
|
+
});
|
|
13
|
+
}
|
|
@@ -0,0 +1,144 @@
|
|
|
1
|
+
:root {
|
|
2
|
+
--copy-button-active-bg: var(--slate-a4);
|
|
3
|
+
--copy-button-border: var(--slate-7);
|
|
4
|
+
--copy-button-success-bg: var(--green-5);
|
|
5
|
+
--copy-button-success-border: var(--green-7);
|
|
6
|
+
--copy-button-success-fg: var(--green-12);
|
|
7
|
+
}
|
|
8
|
+
html.dark {
|
|
9
|
+
--copy-button-active-bg: var(--slate-a4);
|
|
10
|
+
--copy-button-border: var(--slate-7);
|
|
11
|
+
--copy-button-success-bg: var(--green-3);
|
|
12
|
+
--copy-button-success-border: var(--green-4);
|
|
13
|
+
--copy-button-success-fg: var(--green-11);
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
#error-name {
|
|
17
|
+
color: var(--danger-fg);
|
|
18
|
+
font-size: 16px;
|
|
19
|
+
-webkit-font-smoothing: antialiased;
|
|
20
|
+
-moz-osx-font-smoothing: grayscale;
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
#error-title {
|
|
24
|
+
color: var(--title-fg);
|
|
25
|
+
font-size: 32px;
|
|
26
|
+
-webkit-font-smoothing: antialiased;
|
|
27
|
+
-moz-osx-font-smoothing: grayscale;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
#error-message {
|
|
31
|
+
color: var(--danger-fg);
|
|
32
|
+
font-size: 22px;
|
|
33
|
+
font-weight: 700;
|
|
34
|
+
display: flex;
|
|
35
|
+
align-items: center;
|
|
36
|
+
align-items: flex-start;
|
|
37
|
+
gap: 12px;
|
|
38
|
+
-webkit-font-smoothing: antialiased;
|
|
39
|
+
-moz-osx-font-smoothing: grayscale;
|
|
40
|
+
position: relative;
|
|
41
|
+
}
|
|
42
|
+
#error-message svg {
|
|
43
|
+
margin-top: 1.5px;
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
#error-hint {
|
|
47
|
+
border-top: 1px solid var(--border);
|
|
48
|
+
padding-top: 15px;
|
|
49
|
+
margin-top: 15px;
|
|
50
|
+
font-size: 15px;
|
|
51
|
+
font-style: italic;
|
|
52
|
+
display: flex;
|
|
53
|
+
gap: 12px;
|
|
54
|
+
align-items: flex-start;
|
|
55
|
+
padding-left: 1px;
|
|
56
|
+
}
|
|
57
|
+
#error-hint svg {
|
|
58
|
+
margin-bottom: -2px;
|
|
59
|
+
}
|
|
60
|
+
#error-hint strong {
|
|
61
|
+
color: var(--title-fg);
|
|
62
|
+
}
|
|
63
|
+
#error-hint a {
|
|
64
|
+
color: var(--links-fg);
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
#copy-error-btn {
|
|
68
|
+
display: flex;
|
|
69
|
+
align-items: center;
|
|
70
|
+
justify-content: center;
|
|
71
|
+
margin-left: auto;
|
|
72
|
+
position: relative;
|
|
73
|
+
cursor: pointer;
|
|
74
|
+
|
|
75
|
+
background: transparent;
|
|
76
|
+
border: 1px solid var(--copy-button-border);
|
|
77
|
+
|
|
78
|
+
font-size: 13px;
|
|
79
|
+
font-family: inherit;
|
|
80
|
+
font-weight: 500;
|
|
81
|
+
padding: 4px 8px 6px 8px;
|
|
82
|
+
border-radius: var(--radius);
|
|
83
|
+
color: var(--surface-fg);
|
|
84
|
+
transition: all 0.2s ease;
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
#copy-error-btn svg {
|
|
88
|
+
width: 18px;
|
|
89
|
+
height: 18px;
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
#copy-error-btn:hover {
|
|
93
|
+
background: var(--copy-button-active-bg);
|
|
94
|
+
color: var(--title-fg);
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
#copy-error-btn:active {
|
|
98
|
+
transform: scale(0.95);
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
#copy-error-btn.copied::after {
|
|
102
|
+
content: 'Copied';
|
|
103
|
+
position: absolute;
|
|
104
|
+
top: -30px;
|
|
105
|
+
left: 50%;
|
|
106
|
+
transform: translateX(-50%);
|
|
107
|
+
background: var(--copy-button-success-bg);
|
|
108
|
+
color: var(--copy-button-success-fg);
|
|
109
|
+
border: 1px solid var(--copy-button-success-border);
|
|
110
|
+
border-radius: 20px;
|
|
111
|
+
font-size: 13px;
|
|
112
|
+
font-family: inherit;
|
|
113
|
+
font-weight: 500;
|
|
114
|
+
padding: 2px 8px 4px 8px;
|
|
115
|
+
letter-spacing: 0.3px;
|
|
116
|
+
white-space: nowrap;
|
|
117
|
+
opacity: 0;
|
|
118
|
+
animation: copyFeedback 2s ease-in-out forwards;
|
|
119
|
+
}
|
|
120
|
+
|
|
121
|
+
@keyframes copyFeedback {
|
|
122
|
+
0% {
|
|
123
|
+
opacity: 0;
|
|
124
|
+
transform: translateX(-50%) translateY(5px);
|
|
125
|
+
}
|
|
126
|
+
10% {
|
|
127
|
+
opacity: 1;
|
|
128
|
+
transform: translateX(-50%) translateY(0);
|
|
129
|
+
}
|
|
130
|
+
90% {
|
|
131
|
+
opacity: 1;
|
|
132
|
+
transform: translateX(-50%) translateY(0);
|
|
133
|
+
}
|
|
134
|
+
100% {
|
|
135
|
+
opacity: 0;
|
|
136
|
+
transform: translateX(-50%) translateY(-5px);
|
|
137
|
+
}
|
|
138
|
+
}
|
|
139
|
+
|
|
140
|
+
@media (min-width: 1024px) {
|
|
141
|
+
#error-hint {
|
|
142
|
+
align-items: center;
|
|
143
|
+
}
|
|
144
|
+
}
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
function showFormattedFrames(button) {
|
|
2
|
+
document.querySelector('#all-frames-toggle input[type="checkbox"]').disabled = false
|
|
3
|
+
const parent = button.closest('section')
|
|
4
|
+
|
|
5
|
+
const formattedFrames = parent.querySelector('#stack-frames-formatted')
|
|
6
|
+
formattedFrames.classList.add('visible')
|
|
7
|
+
|
|
8
|
+
const rawFrames = parent.querySelector('#stack-frames-raw')
|
|
9
|
+
rawFrames.classList.remove('visible')
|
|
10
|
+
|
|
11
|
+
button.parentElement.querySelectorAll('button').forEach((btn) => btn.classList.remove('active'))
|
|
12
|
+
button.classList.add('active')
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
function showRawFrames(button) {
|
|
16
|
+
document.querySelector('#all-frames-toggle input[type="checkbox"]').disabled = true
|
|
17
|
+
const parent = button.closest('section')
|
|
18
|
+
|
|
19
|
+
const formattedFrames = parent.querySelector('#stack-frames-formatted')
|
|
20
|
+
formattedFrames.classList.remove('visible')
|
|
21
|
+
|
|
22
|
+
const rawFrames = parent.querySelector('#stack-frames-raw')
|
|
23
|
+
rawFrames.classList.add('visible')
|
|
24
|
+
|
|
25
|
+
button.parentElement.querySelectorAll('button').forEach((btn) => btn.classList.remove('active'))
|
|
26
|
+
button.classList.add('active')
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
function toggleFrameSource(parent) {
|
|
30
|
+
if (parent.classList.contains('expanded')) {
|
|
31
|
+
parent.classList.remove('expanded')
|
|
32
|
+
} else {
|
|
33
|
+
parent.classList.add('expanded')
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
function toggleAllFrames() {
|
|
38
|
+
const wrapper = document.querySelector('#stack-frames-wrapper')
|
|
39
|
+
const indicator = document.querySelector('#all-frames-toggle input[type="checkbox"]')
|
|
40
|
+
if (indicator.checked) {
|
|
41
|
+
wrapper.classList.add('display-all')
|
|
42
|
+
} else {
|
|
43
|
+
wrapper.classList.remove('display-all')
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
onContentLoaded(() => {
|
|
48
|
+
document.querySelector('#formatted-frames-toggle').addEventListener('click', function () {
|
|
49
|
+
showFormattedFrames(this)
|
|
50
|
+
})
|
|
51
|
+
document.querySelector('#raw-frames-toggle').addEventListener('click', function () {
|
|
52
|
+
showRawFrames(this)
|
|
53
|
+
})
|
|
54
|
+
document
|
|
55
|
+
.querySelector('#all-frames-toggle input[type="checkbox"]')
|
|
56
|
+
.addEventListener('change', function () {
|
|
57
|
+
toggleAllFrames()
|
|
58
|
+
})
|
|
59
|
+
|
|
60
|
+
document.querySelectorAll('button[class="stack-frame-location"]').forEach((sfl) => {
|
|
61
|
+
sfl.addEventListener('click', function (e) {
|
|
62
|
+
if (e.target.tagName === 'A') {
|
|
63
|
+
return
|
|
64
|
+
}
|
|
65
|
+
toggleFrameSource(e.target.closest('li'))
|
|
66
|
+
})
|
|
67
|
+
})
|
|
68
|
+
|
|
69
|
+
document.querySelectorAll('button[class="stack-frame-toggle-indicator"]').forEach((sfl) => {
|
|
70
|
+
sfl.addEventListener('click', function (e) {
|
|
71
|
+
toggleFrameSource(e.target.closest('li'))
|
|
72
|
+
})
|
|
73
|
+
})
|
|
74
|
+
})
|