feat(planning): grille hebdomadaire complète avec API et filtres

- Connexion API via proxy Angular (résolution CORS, base path /api)
- Import CSS ng-zorro global pour les modales et composants
- Filtres Camion/Show câblés sur l'affichage de la grille
- Camions affichés via TrucksService (linkés au show du même créneau)
- Panneau de détails : spectacles + camions du jour sélectionné
- Modale de création de spectacle stylisée avec fond et centrage
- Positionnement précis des events à la minute dans leur créneau
- Auto-scroll vers l'heure courante au chargement
- Ligne "maintenant" sur la colonne du jour actuel
- Régénération des services OpenAPI (nouveaux noms de types)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-05-27 20:36:03 +02:00
parent 150b97cd2e
commit 654b297e2e
3131 changed files with 149304 additions and 104334 deletions
+3
View File
@@ -77,6 +77,9 @@
},
"serve": {
"builder": "@angular/build:dev-server",
"options": {
"proxyConfig": "proxy.conf.json"
},
"configurations": {
"production": {
"buildTarget": "first-app:build:production"
Generated Vendored
+1 -16
View File
@@ -1,16 +1 @@
#!/bin/sh
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
case `uname` in
*CYGWIN*|*MINGW*|*MSYS*)
if command -v cygpath > /dev/null 2>&1; then
basedir=`cygpath -w "$basedir"`
fi
;;
esac
if [ -x "$basedir/node" ]; then
exec "$basedir/node" "$basedir/../acorn/bin/acorn" "$@"
else
exec node "$basedir/../acorn/bin/acorn" "$@"
fi
../acorn/bin/acorn
+1 -16
View File
@@ -1,16 +1 @@
#!/bin/sh
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
case `uname` in
*CYGWIN*|*MINGW*|*MSYS*)
if command -v cygpath > /dev/null 2>&1; then
basedir=`cygpath -w "$basedir"`
fi
;;
esac
if [ -x "$basedir/node" ]; then
exec "$basedir/node" "$basedir/../baseline-browser-mapping/dist/cli.js" "$@"
else
exec node "$basedir/../baseline-browser-mapping/dist/cli.js" "$@"
fi
../baseline-browser-mapping/dist/cli.js
+1 -16
View File
@@ -1,16 +1 @@
#!/bin/sh
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
case `uname` in
*CYGWIN*|*MINGW*|*MSYS*)
if command -v cygpath > /dev/null 2>&1; then
basedir=`cygpath -w "$basedir"`
fi
;;
esac
if [ -x "$basedir/node" ]; then
exec "$basedir/node" "$basedir/../browserslist/cli.js" "$@"
else
exec node "$basedir/../browserslist/cli.js" "$@"
fi
../browserslist/cli.js
+1 -16
View File
@@ -1,16 +1 @@
#!/bin/sh
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
case `uname` in
*CYGWIN*|*MINGW*|*MSYS*)
if command -v cygpath > /dev/null 2>&1; then
basedir=`cygpath -w "$basedir"`
fi
;;
esac
if [ -x "$basedir/node" ]; then
exec "$basedir/node" "$basedir/../lmdb/bin/download-prebuilds.js" "$@"
else
exec node "$basedir/../lmdb/bin/download-prebuilds.js" "$@"
fi
../lmdb/bin/download-prebuilds.js
+1 -16
View File
@@ -1,16 +1 @@
#!/bin/sh
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
case `uname` in
*CYGWIN*|*MINGW*|*MSYS*)
if command -v cygpath > /dev/null 2>&1; then
basedir=`cygpath -w "$basedir"`
fi
;;
esac
if [ -x "$basedir/node" ]; then
exec "$basedir/node" "$basedir/../msgpackr-extract/bin/download-prebuilds.js" "$@"
else
exec node "$basedir/../msgpackr-extract/bin/download-prebuilds.js" "$@"
fi
../msgpackr-extract/bin/download-prebuilds.js
Generated Vendored
+1 -16
View File
@@ -1,16 +1 @@
#!/bin/sh
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
case `uname` in
*CYGWIN*|*MINGW*|*MSYS*)
if command -v cygpath > /dev/null 2>&1; then
basedir=`cygpath -w "$basedir"`
fi
;;
esac
if [ -x "$basedir/node" ]; then
exec "$basedir/node" "$basedir/../errno/cli.js" "$@"
else
exec node "$basedir/../errno/cli.js" "$@"
fi
../errno/cli.js
Generated Vendored
+1 -16
View File
@@ -1,16 +1 @@
#!/bin/sh
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
case `uname` in
*CYGWIN*|*MINGW*|*MSYS*)
if command -v cygpath > /dev/null 2>&1; then
basedir=`cygpath -w "$basedir"`
fi
;;
esac
if [ -x "$basedir/node" ]; then
exec "$basedir/node" "$basedir/../esbuild/bin/esbuild" "$@"
else
exec node "$basedir/../esbuild/bin/esbuild" "$@"
fi
../esbuild/bin/esbuild
+1 -16
View File
@@ -1,16 +1 @@
#!/bin/sh
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
case `uname` in
*CYGWIN*|*MINGW*|*MSYS*)
if command -v cygpath > /dev/null 2>&1; then
basedir=`cygpath -w "$basedir"`
fi
;;
esac
if [ -x "$basedir/node" ]; then
exec "$basedir/node" "$basedir/../image-size/bin/image-size.js" "$@"
else
exec node "$basedir/../image-size/bin/image-size.js" "$@"
fi
../image-size/bin/image-size.js
+1 -16
View File
@@ -1,16 +1 @@
#!/bin/sh
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
case `uname` in
*CYGWIN*|*MINGW*|*MSYS*)
if command -v cygpath > /dev/null 2>&1; then
basedir=`cygpath -w "$basedir"`
fi
;;
esac
if [ -x "$basedir/node" ]; then
exec "$basedir/node" "$basedir/../@npmcli/installed-package-contents/bin/index.js" "$@"
else
exec node "$basedir/../@npmcli/installed-package-contents/bin/index.js" "$@"
fi
../@npmcli/installed-package-contents/bin/index.js
Generated Vendored
+1 -16
View File
@@ -1,16 +1 @@
#!/bin/sh
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
case `uname` in
*CYGWIN*|*MINGW*|*MSYS*)
if command -v cygpath > /dev/null 2>&1; then
basedir=`cygpath -w "$basedir"`
fi
;;
esac
if [ -x "$basedir/node" ]; then
exec "$basedir/node" "$basedir/../jsesc/bin/jsesc" "$@"
else
exec node "$basedir/../jsesc/bin/jsesc" "$@"
fi
../jsesc/bin/jsesc
Generated Vendored
+1 -16
View File
@@ -1,16 +1 @@
#!/bin/sh
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
case `uname` in
*CYGWIN*|*MINGW*|*MSYS*)
if command -v cygpath > /dev/null 2>&1; then
basedir=`cygpath -w "$basedir"`
fi
;;
esac
if [ -x "$basedir/node" ]; then
exec "$basedir/node" "$basedir/../json5/lib/cli.js" "$@"
else
exec node "$basedir/../json5/lib/cli.js" "$@"
fi
../json5/lib/cli.js
Generated Vendored
+1 -16
View File
@@ -1,16 +1 @@
#!/bin/sh
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
case `uname` in
*CYGWIN*|*MINGW*|*MSYS*)
if command -v cygpath > /dev/null 2>&1; then
basedir=`cygpath -w "$basedir"`
fi
;;
esac
if [ -x "$basedir/node" ]; then
exec "$basedir/node" "$basedir/../less/bin/lessc" "$@"
else
exec node "$basedir/../less/bin/lessc" "$@"
fi
../less/bin/lessc
Generated Vendored
+1 -16
View File
@@ -1,16 +1 @@
#!/bin/sh
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
case `uname` in
*CYGWIN*|*MINGW*|*MSYS*)
if command -v cygpath > /dev/null 2>&1; then
basedir=`cygpath -w "$basedir"`
fi
;;
esac
if [ -x "$basedir/node" ]; then
exec "$basedir/node" "$basedir/../mime/cli.js" "$@"
else
exec node "$basedir/../mime/cli.js" "$@"
fi
../mime/cli.js
Generated Vendored
+1 -16
View File
@@ -1,16 +1 @@
#!/bin/sh
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
case `uname` in
*CYGWIN*|*MINGW*|*MSYS*)
if command -v cygpath > /dev/null 2>&1; then
basedir=`cygpath -w "$basedir"`
fi
;;
esac
if [ -x "$basedir/node" ]; then
exec "$basedir/node" "$basedir/../nanoid/bin/nanoid.cjs" "$@"
else
exec node "$basedir/../nanoid/bin/nanoid.cjs" "$@"
fi
../nanoid/bin/nanoid.cjs
Generated Vendored
+1 -16
View File
@@ -1,16 +1 @@
#!/bin/sh
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
case `uname` in
*CYGWIN*|*MINGW*|*MSYS*)
if command -v cygpath > /dev/null 2>&1; then
basedir=`cygpath -w "$basedir"`
fi
;;
esac
if [ -x "$basedir/node" ]; then
exec "$basedir/node" "$basedir/../needle/bin/needle" "$@"
else
exec node "$basedir/../needle/bin/needle" "$@"
fi
../needle/bin/needle
Generated Vendored
+1 -16
View File
@@ -1,16 +1 @@
#!/bin/sh
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
case `uname` in
*CYGWIN*|*MINGW*|*MSYS*)
if command -v cygpath > /dev/null 2>&1; then
basedir=`cygpath -w "$basedir"`
fi
;;
esac
if [ -x "$basedir/node" ]; then
exec "$basedir/node" "$basedir/../@angular/cli/bin/ng.js" "$@"
else
exec node "$basedir/../@angular/cli/bin/ng.js" "$@"
fi
../@angular/cli/bin/ng.js
Generated Vendored
+1 -16
View File
@@ -1,16 +1 @@
#!/bin/sh
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
case `uname` in
*CYGWIN*|*MINGW*|*MSYS*)
if command -v cygpath > /dev/null 2>&1; then
basedir=`cygpath -w "$basedir"`
fi
;;
esac
if [ -x "$basedir/node" ]; then
exec "$basedir/node" "$basedir/../@angular/compiler-cli/bundles/src/bin/ng_xi18n.js" "$@"
else
exec node "$basedir/../@angular/compiler-cli/bundles/src/bin/ng_xi18n.js" "$@"
fi
../@angular/compiler-cli/bundles/src/bin/ng_xi18n.js
Generated Vendored
+1 -16
View File
@@ -1,16 +1 @@
#!/bin/sh
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
case `uname` in
*CYGWIN*|*MINGW*|*MSYS*)
if command -v cygpath > /dev/null 2>&1; then
basedir=`cygpath -w "$basedir"`
fi
;;
esac
if [ -x "$basedir/node" ]; then
exec "$basedir/node" "$basedir/../@angular/compiler-cli/bundles/src/bin/ngc.js" "$@"
else
exec node "$basedir/../@angular/compiler-cli/bundles/src/bin/ngc.js" "$@"
fi
../@angular/compiler-cli/bundles/src/bin/ngc.js
Generated Vendored
+1 -16
View File
@@ -1,16 +1 @@
#!/bin/sh
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
case `uname` in
*CYGWIN*|*MINGW*|*MSYS*)
if command -v cygpath > /dev/null 2>&1; then
basedir=`cygpath -w "$basedir"`
fi
;;
esac
if [ -x "$basedir/node" ]; then
exec "$basedir/node" "$basedir/../node-gyp/bin/node-gyp.js" "$@"
else
exec node "$basedir/../node-gyp/bin/node-gyp.js" "$@"
fi
../node-gyp/bin/node-gyp.js
+1 -16
View File
@@ -1,16 +1 @@
#!/bin/sh
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
case `uname` in
*CYGWIN*|*MINGW*|*MSYS*)
if command -v cygpath > /dev/null 2>&1; then
basedir=`cygpath -w "$basedir"`
fi
;;
esac
if [ -x "$basedir/node" ]; then
exec "$basedir/node" "$basedir/../node-gyp-build-optional-packages/bin.js" "$@"
else
exec node "$basedir/../node-gyp-build-optional-packages/bin.js" "$@"
fi
../node-gyp-build-optional-packages/bin.js
+1 -16
View File
@@ -1,16 +1 @@
#!/bin/sh
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
case `uname` in
*CYGWIN*|*MINGW*|*MSYS*)
if command -v cygpath > /dev/null 2>&1; then
basedir=`cygpath -w "$basedir"`
fi
;;
esac
if [ -x "$basedir/node" ]; then
exec "$basedir/node" "$basedir/../node-gyp-build-optional-packages/optional.js" "$@"
else
exec node "$basedir/../node-gyp-build-optional-packages/optional.js" "$@"
fi
../node-gyp-build-optional-packages/optional.js
+1 -16
View File
@@ -1,16 +1 @@
#!/bin/sh
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
case `uname` in
*CYGWIN*|*MINGW*|*MSYS*)
if command -v cygpath > /dev/null 2>&1; then
basedir=`cygpath -w "$basedir"`
fi
;;
esac
if [ -x "$basedir/node" ]; then
exec "$basedir/node" "$basedir/../node-gyp-build-optional-packages/build-test.js" "$@"
else
exec node "$basedir/../node-gyp-build-optional-packages/build-test.js" "$@"
fi
../node-gyp-build-optional-packages/build-test.js
+1 -16
View File
@@ -1,16 +1 @@
#!/bin/sh
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
case `uname` in
*CYGWIN*|*MINGW*|*MSYS*)
if command -v cygpath > /dev/null 2>&1; then
basedir=`cygpath -w "$basedir"`
fi
;;
esac
if [ -x "$basedir/node" ]; then
exec "$basedir/node" "$basedir/../which/bin/node-which" "$@"
else
exec node "$basedir/../which/bin/node-which" "$@"
fi
../which/bin/node-which
Generated Vendored
+1 -16
View File
@@ -1,16 +1 @@
#!/bin/sh
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
case `uname` in
*CYGWIN*|*MINGW*|*MSYS*)
if command -v cygpath > /dev/null 2>&1; then
basedir=`cygpath -w "$basedir"`
fi
;;
esac
if [ -x "$basedir/node" ]; then
exec "$basedir/node" "$basedir/../nopt/bin/nopt.js" "$@"
else
exec node "$basedir/../nopt/bin/nopt.js" "$@"
fi
../nopt/bin/nopt.js
Generated Vendored
+1 -16
View File
@@ -1,16 +1 @@
#!/bin/sh
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
case `uname` in
*CYGWIN*|*MINGW*|*MSYS*)
if command -v cygpath > /dev/null 2>&1; then
basedir=`cygpath -w "$basedir"`
fi
;;
esac
if [ -x "$basedir/node" ]; then
exec "$basedir/node" "$basedir/../pacote/bin/index.js" "$@"
else
exec node "$basedir/../pacote/bin/index.js" "$@"
fi
../pacote/bin/index.js
Generated Vendored
+1 -16
View File
@@ -1,16 +1 @@
#!/bin/sh
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
case `uname` in
*CYGWIN*|*MINGW*|*MSYS*)
if command -v cygpath > /dev/null 2>&1; then
basedir=`cygpath -w "$basedir"`
fi
;;
esac
if [ -x "$basedir/node" ]; then
exec "$basedir/node" "$basedir/../@babel/parser/bin/babel-parser.js" "$@"
else
exec node "$basedir/../@babel/parser/bin/babel-parser.js" "$@"
fi
../@babel/parser/bin/babel-parser.js
Generated Vendored
+1 -16
View File
@@ -1,16 +1 @@
#!/bin/sh
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
case `uname` in
*CYGWIN*|*MINGW*|*MSYS*)
if command -v cygpath > /dev/null 2>&1; then
basedir=`cygpath -w "$basedir"`
fi
;;
esac
if [ -x "$basedir/node" ]; then
exec "$basedir/node" "$basedir/../resolve/bin/resolve" "$@"
else
exec node "$basedir/../resolve/bin/resolve" "$@"
fi
../resolve/bin/resolve
Generated Vendored
+1 -16
View File
@@ -1,16 +1 @@
#!/bin/sh
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
case `uname` in
*CYGWIN*|*MINGW*|*MSYS*)
if command -v cygpath > /dev/null 2>&1; then
basedir=`cygpath -w "$basedir"`
fi
;;
esac
if [ -x "$basedir/node" ]; then
exec "$basedir/node" "$basedir/../rollup/dist/bin/rollup" "$@"
else
exec node "$basedir/../rollup/dist/bin/rollup" "$@"
fi
../rollup/dist/bin/rollup
Generated Vendored
+1 -16
View File
@@ -1,16 +1 @@
#!/bin/sh
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
case `uname` in
*CYGWIN*|*MINGW*|*MSYS*)
if command -v cygpath > /dev/null 2>&1; then
basedir=`cygpath -w "$basedir"`
fi
;;
esac
if [ -x "$basedir/node" ]; then
exec "$basedir/node" "$basedir/../sass/sass.js" "$@"
else
exec node "$basedir/../sass/sass.js" "$@"
fi
../sass/sass.js
Generated Vendored
+1 -16
View File
@@ -1,16 +1 @@
#!/bin/sh
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
case `uname` in
*CYGWIN*|*MINGW*|*MSYS*)
if command -v cygpath > /dev/null 2>&1; then
basedir=`cygpath -w "$basedir"`
fi
;;
esac
if [ -x "$basedir/node" ]; then
exec "$basedir/node" "$basedir/../semver/bin/semver.js" "$@"
else
exec node "$basedir/../semver/bin/semver.js" "$@"
fi
../semver/bin/semver.js
Generated Vendored
+1 -16
View File
@@ -1,16 +1 @@
#!/bin/sh
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
case `uname` in
*CYGWIN*|*MINGW*|*MSYS*)
if command -v cygpath > /dev/null 2>&1; then
basedir=`cygpath -w "$basedir"`
fi
;;
esac
if [ -x "$basedir/node" ]; then
exec "$basedir/node" "$basedir/../ts-node/dist/bin.js" "$@"
else
exec node "$basedir/../ts-node/dist/bin.js" "$@"
fi
../ts-node/dist/bin.js
+1 -16
View File
@@ -1,16 +1 @@
#!/bin/sh
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
case `uname` in
*CYGWIN*|*MINGW*|*MSYS*)
if command -v cygpath > /dev/null 2>&1; then
basedir=`cygpath -w "$basedir"`
fi
;;
esac
if [ -x "$basedir/node" ]; then
exec "$basedir/node" "$basedir/../ts-node/dist/bin-cwd.js" "$@"
else
exec node "$basedir/../ts-node/dist/bin-cwd.js" "$@"
fi
../ts-node/dist/bin-cwd.js
+1 -16
View File
@@ -1,16 +1 @@
#!/bin/sh
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
case `uname` in
*CYGWIN*|*MINGW*|*MSYS*)
if command -v cygpath > /dev/null 2>&1; then
basedir=`cygpath -w "$basedir"`
fi
;;
esac
if [ -x "$basedir/node" ]; then
exec "$basedir/node" "$basedir/../ts-node/dist/bin-esm.js" "$@"
else
exec node "$basedir/../ts-node/dist/bin-esm.js" "$@"
fi
../ts-node/dist/bin-esm.js
+1 -16
View File
@@ -1,16 +1 @@
#!/bin/sh
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
case `uname` in
*CYGWIN*|*MINGW*|*MSYS*)
if command -v cygpath > /dev/null 2>&1; then
basedir=`cygpath -w "$basedir"`
fi
;;
esac
if [ -x "$basedir/node" ]; then
exec "$basedir/node" "$basedir/../ts-node/dist/bin-script.js" "$@"
else
exec node "$basedir/../ts-node/dist/bin-script.js" "$@"
fi
../ts-node/dist/bin-script.js
+1 -16
View File
@@ -1,16 +1 @@
#!/bin/sh
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
case `uname` in
*CYGWIN*|*MINGW*|*MSYS*)
if command -v cygpath > /dev/null 2>&1; then
basedir=`cygpath -w "$basedir"`
fi
;;
esac
if [ -x "$basedir/node" ]; then
exec "$basedir/node" "$basedir/../ts-node/dist/bin-transpile.js" "$@"
else
exec node "$basedir/../ts-node/dist/bin-transpile.js" "$@"
fi
../ts-node/dist/bin-transpile.js
+1 -16
View File
@@ -1,16 +1 @@
#!/bin/sh
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
case `uname` in
*CYGWIN*|*MINGW*|*MSYS*)
if command -v cygpath > /dev/null 2>&1; then
basedir=`cygpath -w "$basedir"`
fi
;;
esac
if [ -x "$basedir/node" ]; then
exec "$basedir/node" "$basedir/../ts-node/dist/bin-script-deprecated.js" "$@"
else
exec node "$basedir/../ts-node/dist/bin-script-deprecated.js" "$@"
fi
../ts-node/dist/bin-script-deprecated.js
Generated Vendored
+1 -16
View File
@@ -1,16 +1 @@
#!/bin/sh
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
case `uname` in
*CYGWIN*|*MINGW*|*MSYS*)
if command -v cygpath > /dev/null 2>&1; then
basedir=`cygpath -w "$basedir"`
fi
;;
esac
if [ -x "$basedir/node" ]; then
exec "$basedir/node" "$basedir/../typescript/bin/tsc" "$@"
else
exec node "$basedir/../typescript/bin/tsc" "$@"
fi
../typescript/bin/tsc
Generated Vendored
+1 -16
View File
@@ -1,16 +1 @@
#!/bin/sh
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
case `uname` in
*CYGWIN*|*MINGW*|*MSYS*)
if command -v cygpath > /dev/null 2>&1; then
basedir=`cygpath -w "$basedir"`
fi
;;
esac
if [ -x "$basedir/node" ]; then
exec "$basedir/node" "$basedir/../typescript/bin/tsserver" "$@"
else
exec node "$basedir/../typescript/bin/tsserver" "$@"
fi
../typescript/bin/tsserver
+1 -16
View File
@@ -1,16 +1 @@
#!/bin/sh
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
case `uname` in
*CYGWIN*|*MINGW*|*MSYS*)
if command -v cygpath > /dev/null 2>&1; then
basedir=`cygpath -w "$basedir"`
fi
;;
esac
if [ -x "$basedir/node" ]; then
exec "$basedir/node" "$basedir/../update-browserslist-db/cli.js" "$@"
else
exec node "$basedir/../update-browserslist-db/cli.js" "$@"
fi
../update-browserslist-db/cli.js
+1765 -148
View File
File diff suppressed because it is too large Load Diff
+2 -2
View File
@@ -1,12 +1,12 @@
{
"name": "@angular-devkit/architect",
"version": "0.2003.26",
"version": "0.2003.10",
"description": "Angular Build Facade",
"experimental": true,
"main": "src/index.js",
"typings": "src/index.d.ts",
"dependencies": {
"@angular-devkit/core": "20.3.26",
"@angular-devkit/core": "20.3.10",
"rxjs": "7.8.2"
},
"builders": "./builders/builders.json",
+3 -3
View File
@@ -1,6 +1,6 @@
{
"name": "@angular-devkit/core",
"version": "20.3.26",
"version": "20.3.10",
"description": "Angular DevKit - Core Utility Library",
"main": "src/index.js",
"typings": "src/index.d.ts",
@@ -30,10 +30,10 @@
"./*.js": "./*.js"
},
"dependencies": {
"ajv": "8.18.0",
"ajv": "8.17.1",
"ajv-formats": "3.0.1",
"jsonc-parser": "3.3.1",
"picomatch": "4.0.4",
"picomatch": "4.0.3",
"rxjs": "7.8.2",
"source-map": "0.7.6"
},
+2 -2
View File
@@ -1,6 +1,6 @@
{
"name": "@angular-devkit/schematics",
"version": "20.3.26",
"version": "20.3.10",
"description": "Angular Schematics - Library",
"main": "src/index.js",
"typings": "src/index.d.ts",
@@ -18,7 +18,7 @@
"tooling"
],
"dependencies": {
"@angular-devkit/core": "20.3.26",
"@angular-devkit/core": "20.3.10",
"jsonc-parser": "3.3.1",
"magic-string": "0.30.17",
"ora": "8.2.0",
+1 -1
View File
@@ -1,5 +1,5 @@
/**
* @license Angular v20.3.21
* @license Angular v20.3.11
* (c) 2010-2025 Google LLC. https://angular.dev/
* License: MIT
*/
+1 -1
View File
@@ -1,5 +1,5 @@
/**
* @license Angular v20.3.21
* @license Angular v20.3.11
* (c) 2010-2025 Google LLC. https://angular.dev/
* License: MIT
*/
+1 -1
View File
@@ -1,5 +1,5 @@
/**
* @license Angular v20.3.21
* @license Angular v20.3.11
* (c) 2010-2025 Google LLC. https://angular.dev/
* License: MIT
*/
+1 -1
View File
@@ -1,5 +1,5 @@
/**
* @license Angular v20.3.21
* @license Angular v20.3.11
* (c) 2010-2025 Google LLC. https://angular.dev/
* License: MIT
*/
+7 -7
View File
@@ -1,5 +1,5 @@
/**
* @license Angular v20.3.21
* @license Angular v20.3.11
* (c) 2010-2025 Google LLC. https://angular.dev/
* License: MIT
*/
@@ -58,10 +58,10 @@ export { AUTO_STYLE, AnimationMetadataType, NoopAnimationPlayer, animate, animat
* @deprecated 20.2 Use `animate.enter` or `animate.leave` instead. Intent to remove in v23
*/
class AnimationBuilder {
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.21", ngImport: i0, type: AnimationBuilder, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.21", ngImport: i0, type: AnimationBuilder, providedIn: 'root', useFactory: () => inject(BrowserAnimationBuilder) });
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.11", ngImport: i0, type: AnimationBuilder, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.11", ngImport: i0, type: AnimationBuilder, providedIn: 'root', useFactory: () => inject(BrowserAnimationBuilder) });
}
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.21", ngImport: i0, type: AnimationBuilder, decorators: [{
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.11", ngImport: i0, type: AnimationBuilder, decorators: [{
type: Injectable,
args: [{ providedIn: 'root', useFactory: () => inject(BrowserAnimationBuilder) }]
}] });
@@ -103,10 +103,10 @@ class BrowserAnimationBuilder extends AnimationBuilder {
issueAnimationCommand(this._renderer, null, id, 'register', [entry]);
return new BrowserAnimationFactory(id, this._renderer);
}
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.21", ngImport: i0, type: BrowserAnimationBuilder, deps: [{ token: i0.RendererFactory2 }, { token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Injectable });
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.21", ngImport: i0, type: BrowserAnimationBuilder, providedIn: 'root' });
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.11", ngImport: i0, type: BrowserAnimationBuilder, deps: [{ token: i0.RendererFactory2 }, { token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Injectable });
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.11", ngImport: i0, type: BrowserAnimationBuilder, providedIn: 'root' });
}
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.21", ngImport: i0, type: BrowserAnimationBuilder, decorators: [{
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.11", ngImport: i0, type: BrowserAnimationBuilder, decorators: [{
type: Injectable,
args: [{ providedIn: 'root' }]
}], ctorParameters: () => [{ type: i0.RendererFactory2 }, { type: Document, decorators: [{
File diff suppressed because one or more lines are too long
+4 -4
View File
@@ -1,5 +1,5 @@
/**
* @license Angular v20.3.21
* @license Angular v20.3.11
* (c) 2010-2025 Google LLC. https://angular.dev/
* License: MIT
*/
@@ -55,10 +55,10 @@ class NoopAnimationDriver {
animate(element, keyframes, duration, delay, easing, previousPlayers = [], scrubberAccessRequested) {
return new NoopAnimationPlayer(duration, delay);
}
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.21", ngImport: i0, type: NoopAnimationDriver, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.21", ngImport: i0, type: NoopAnimationDriver });
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.11", ngImport: i0, type: NoopAnimationDriver, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.11", ngImport: i0, type: NoopAnimationDriver });
}
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.21", ngImport: i0, type: NoopAnimationDriver, decorators: [{
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.11", ngImport: i0, type: NoopAnimationDriver, decorators: [{
type: Injectable
}] });
/**
File diff suppressed because one or more lines are too long
+1 -1
View File
@@ -1,5 +1,5 @@
/**
* @license Angular v20.3.21
* @license Angular v20.3.11
* (c) 2010-2025 Google LLC. https://angular.dev/
* License: MIT
*/
File diff suppressed because one or more lines are too long
+1 -1
View File
@@ -1,5 +1,5 @@
/**
* @license Angular v20.3.21
* @license Angular v20.3.11
* (c) 2010-2025 Google LLC. https://angular.dev/
* License: MIT
*/
File diff suppressed because one or more lines are too long
+1 -1
View File
@@ -1,5 +1,5 @@
/**
* @license Angular v20.3.21
* @license Angular v20.3.11
* (c) 2010-2025 Google LLC. https://angular.dev/
* License: MIT
*/
File diff suppressed because one or more lines are too long
+1 -1
View File
@@ -1,5 +1,5 @@
/**
* @license Angular v20.3.21
* @license Angular v20.3.11
* (c) 2010-2025 Google LLC. https://angular.dev/
* License: MIT
*/
+2 -2
View File
@@ -1,6 +1,6 @@
{
"name": "@angular/animations",
"version": "20.3.21",
"version": "20.3.11",
"description": "Angular - animations integration with web-animations",
"author": "angular",
"license": "MIT",
@@ -11,7 +11,7 @@
"tslib": "^2.3.0"
},
"peerDependencies": {
"@angular/core": "20.3.21"
"@angular/core": "20.3.11"
},
"repository": {
"type": "git",
+1 -16
View File
@@ -1,16 +1 @@
#!/bin/sh
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
case `uname` in
*CYGWIN*|*MINGW*|*MSYS*)
if command -v cygpath > /dev/null 2>&1; then
basedir=`cygpath -w "$basedir"`
fi
;;
esac
if [ -x "$basedir/node" ]; then
exec "$basedir/node" "$basedir/../vite/bin/vite.js" "$@"
else
exec node "$basedir/../vite/bin/vite.js" "$@"
fi
../vite/bin/vite.js
+134 -110
View File
@@ -31,7 +31,7 @@ BSD-2-Clause, CC0-1.0, ISC, MIT
## @jridgewell/gen-mapping, @jridgewell/remapping, @jridgewell/sourcemap-codec, @jridgewell/trace-mapping
License: MIT
By: Justin Ridgewell
Repositories: https://github.com/jridgewell/sourcemaps, https://github.com/jridgewell/sourcemaps, https://github.com/jridgewell/sourcemaps, https://github.com/jridgewell/sourcemaps
Repositories: git+https://github.com/jridgewell/sourcemaps.git, git+https://github.com/jridgewell/sourcemaps.git, git+https://github.com/jridgewell/sourcemaps.git, git+https://github.com/jridgewell/sourcemaps.git
> Copyright 2024 Justin Ridgewell <justin@ridgewell.name>
>
@@ -84,20 +84,20 @@ Repository: https://github.com/jridgewell/resolve-uri
## @polka/compression
License: MIT
Repository: https://github.com/lukeed/polka
Repository: lukeed/polka
---------------------------------------
## @polka/url
License: MIT
By: Luke Edwards
Repository: https://github.com/lukeed/polka
Repository: lukeed/polka
---------------------------------------
## @rolldown/pluginutils
License: MIT
Repository: https://github.com/rolldown/rolldown
Repository: git+https://github.com/rolldown/rolldown.git
> MIT License
>
@@ -130,19 +130,19 @@ Repository: https://github.com/rolldown/rolldown
## @rollup/plugin-alias, @rollup/plugin-commonjs, @rollup/plugin-dynamic-import-vars, @rollup/pluginutils
License: MIT
By: Johannes Stein
Repository: https://github.com/rollup/plugins
Repository: rollup/plugins
License: MIT
By: Rich Harris
Repository: https://github.com/rollup/plugins
Repository: rollup/plugins
License: MIT
By: LarsDenBakker
Repository: https://github.com/rollup/plugins
Repository: rollup/plugins
License: MIT
By: Rich Harris
Repository: https://github.com/rollup/plugins
Repository: rollup/plugins
> The MIT License (MIT)
>
@@ -194,7 +194,7 @@ Repository: https://github.com/micromatch/anymatch
## artichokie
License: MIT
By: sapphi-red, Evan You
Repository: https://github.com/sapphi-red/artichokie
Repository: git+https://github.com/sapphi-red/artichokie.git
> MIT License
>
@@ -224,7 +224,7 @@ Repository: https://github.com/sapphi-red/artichokie
## binary-extensions
License: MIT
By: Sindre Sorhus
Repository: https://github.com/sindresorhus/binary-extensions
Repository: sindresorhus/binary-extensions
> MIT License
>
@@ -242,15 +242,15 @@ Repository: https://github.com/sindresorhus/binary-extensions
## braces, fill-range, is-number
License: MIT
By: Jon Schlinkert, Brian Woodward, Elan Shanker, Eugene Sharygin, hemanth.hm
Repository: https://github.com/micromatch/braces
Repository: micromatch/braces
License: MIT
By: Jon Schlinkert, Edo Rivai, Paul Miller, Rouven Weßling
Repository: https://github.com/jonschlinkert/fill-range
Repository: jonschlinkert/fill-range
License: MIT
By: Jon Schlinkert, Olsten Larck, Rouven Weßling
Repository: https://github.com/jonschlinkert/is-number
Repository: jonschlinkert/is-number
> The MIT License (MIT)
>
@@ -279,7 +279,7 @@ Repository: https://github.com/jonschlinkert/is-number
## bundle-name, default-browser, default-browser-id, define-lazy-prop, is-docker, is-inside-container, is-wsl, open, run-applescript, wsl-utils
License: MIT
By: Sindre Sorhus
Repositories: https://github.com/sindresorhus/bundle-name, https://github.com/sindresorhus/default-browser, https://github.com/sindresorhus/default-browser-id, https://github.com/sindresorhus/define-lazy-prop, https://github.com/sindresorhus/is-docker, https://github.com/sindresorhus/is-inside-container, https://github.com/sindresorhus/is-wsl, https://github.com/sindresorhus/open, https://github.com/sindresorhus/run-applescript, https://github.com/sindresorhus/wsl-utils
Repositories: sindresorhus/bundle-name, sindresorhus/default-browser, sindresorhus/default-browser-id, sindresorhus/define-lazy-prop, sindresorhus/is-docker, sindresorhus/is-inside-container, sindresorhus/is-wsl, sindresorhus/open, sindresorhus/run-applescript, sindresorhus/wsl-utils
> MIT License
>
@@ -296,7 +296,7 @@ Repositories: https://github.com/sindresorhus/bundle-name, https://github.com/si
## cac
License: MIT
By: egoist
Repository: https://github.com/egoist/cac
Repository: egoist/cac
> The MIT License (MIT)
>
@@ -325,7 +325,7 @@ Repository: https://github.com/egoist/cac
## chokidar
License: MIT
By: Paul Miller, Elan Shanker
Repository: https://github.com/paulmillr/chokidar
Repository: git+https://github.com/paulmillr/chokidar.git
> The MIT License (MIT)
>
@@ -354,7 +354,7 @@ Repository: https://github.com/paulmillr/chokidar
## commondir, shell-quote
License: MIT
By: James Halliday
Repositories: http://github.com/substack/node-commondir, http://github.com/ljharb/shell-quote
Repositories: http://github.com/substack/node-commondir.git, http://github.com/ljharb/shell-quote.git
> The MIT License
>
@@ -386,7 +386,7 @@ Repositories: http://github.com/substack/node-commondir, http://github.com/ljhar
## connect
License: MIT
By: TJ Holowaychuk, Douglas Christopher Wilson, Jonathan Ong, Tim Caswell
Repository: https://github.com/senchalabs/connect
Repository: senchalabs/connect
> (The MIT License)
>
@@ -419,7 +419,7 @@ Repository: https://github.com/senchalabs/connect
## convert-source-map
License: MIT
By: Thorsten Lorenz
Repository: https://github.com/thlorenz/convert-source-map
Repository: git://github.com/thlorenz/convert-source-map.git
> Copyright 2013 Thorsten Lorenz.
> All rights reserved.
@@ -450,7 +450,7 @@ Repository: https://github.com/thlorenz/convert-source-map
## cors
License: MIT
By: Troy Goode
Repository: https://github.com/expressjs/cors
Repository: expressjs/cors
> (The MIT License)
>
@@ -480,7 +480,7 @@ Repository: https://github.com/expressjs/cors
## cross-spawn
License: MIT
By: André Cruz
Repository: https://github.com/moxystudio/node-cross-spawn
Repository: git@github.com:moxystudio/node-cross-spawn.git
> The MIT License (MIT)
>
@@ -509,7 +509,7 @@ Repository: https://github.com/moxystudio/node-cross-spawn
## cssesc
License: MIT
By: Mathias Bynens
Repository: https://github.com/mathiasbynens/cssesc
Repository: https://github.com/mathiasbynens/cssesc.git
> Copyright Mathias Bynens <https://mathiasbynens.be/>
>
@@ -534,9 +534,36 @@ Repository: https://github.com/mathiasbynens/cssesc
---------------------------------------
## debug
License: MIT
By: Josh Junon, TJ Holowaychuk, Nathan Rajlich, Andrew Rhyne
Repository: git://github.com/debug-js/debug.git
> (The MIT License)
>
> Copyright (c) 2014-2017 TJ Holowaychuk <tj@vision-media.ca>
> Copyright (c) 2018-2021 Josh Junon
>
> Permission is hereby granted, free of charge, to any person obtaining a copy of this software
> and associated documentation files (the 'Software'), to deal in the Software without restriction,
> including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense,
> and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so,
> subject to the following conditions:
>
> The above copyright notice and this permission notice shall be included in all copies or substantial
> portions of the Software.
>
> THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT
> LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
> IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
> WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
> SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
---------------------------------------
## dotenv
License: BSD-2-Clause
Repository: https://github.com/motdotla/dotenv
Repository: git://github.com/motdotla/dotenv.git
> Copyright (c) 2015, Scott Motte
> All rights reserved.
@@ -598,7 +625,7 @@ Repository: https://github.com/motdotla/dotenv-expand
## ee-first
License: MIT
By: Jonathan Ong, Douglas Christopher Wilson
Repository: https://github.com/jonathanong/ee-first
Repository: jonathanong/ee-first
> The MIT License (MIT)
>
@@ -627,7 +654,7 @@ Repository: https://github.com/jonathanong/ee-first
## encodeurl
License: MIT
By: Douglas Christopher Wilson
Repository: https://github.com/pillarjs/encodeurl
Repository: pillarjs/encodeurl
> (The MIT License)
>
@@ -657,7 +684,7 @@ Repository: https://github.com/pillarjs/encodeurl
## entities
License: BSD-2-Clause
By: Felix Boehm
Repository: https://github.com/fb55/entities
Repository: git://github.com/fb55/entities.git
> Copyright (c) Felix Böhm
> All rights reserved.
@@ -676,7 +703,7 @@ Repository: https://github.com/fb55/entities
## es-module-lexer
License: MIT
By: Guy Bedford
Repository: https://github.com/guybedford/es-module-lexer
Repository: git+https://github.com/guybedford/es-module-lexer.git
> MIT License
> -----------
@@ -693,7 +720,7 @@ Repository: https://github.com/guybedford/es-module-lexer
## escape-html
License: MIT
Repository: https://github.com/component/escape-html
Repository: component/escape-html
> (The MIT License)
>
@@ -740,7 +767,7 @@ Repository: https://github.com/Rich-Harris/estree-walker
## etag
License: MIT
By: Douglas Christopher Wilson, David Björklund
Repository: https://github.com/jshttp/etag
Repository: jshttp/etag
> (The MIT License)
>
@@ -770,7 +797,7 @@ Repository: https://github.com/jshttp/etag
## finalhandler
License: MIT
By: Douglas Christopher Wilson
Repository: https://github.com/pillarjs/finalhandler
Repository: pillarjs/finalhandler
> (The MIT License)
>
@@ -800,7 +827,7 @@ Repository: https://github.com/pillarjs/finalhandler
## follow-redirects
License: MIT
By: Ruben Verborgh, Olivier Lalonde, James Talmage
Repository: https://github.com/follow-redirects/follow-redirects
Repository: git+ssh://git@github.com/follow-redirects/follow-redirects.git
> Copyright 2014present Olivier Lalonde <olalonde@gmail.com>, James Talmage <james@talmage.io>, Ruben Verborgh
>
@@ -826,7 +853,7 @@ Repository: https://github.com/follow-redirects/follow-redirects
## generic-names
License: MIT
By: Alexey Litvinov
Repository: https://github.com/css-modules/generic-names
Repository: git+https://github.com/css-modules/generic-names.git
> The MIT License (MIT)
>
@@ -855,7 +882,7 @@ Repository: https://github.com/css-modules/generic-names
## glob-parent
License: ISC
By: Gulp Team, Elan Shanker, Blaine Bublitz
Repository: https://github.com/gulpjs/glob-parent
Repository: gulpjs/glob-parent
> The ISC License
>
@@ -878,7 +905,7 @@ Repository: https://github.com/gulpjs/glob-parent
## host-validation-middleware
License: MIT
By: sapphi-red
Repository: https://github.com/sapphi-red/host-validation-middleware
Repository: git+https://github.com/sapphi-red/host-validation-middleware.git
> MIT License
>
@@ -907,7 +934,7 @@ Repository: https://github.com/sapphi-red/host-validation-middleware
## http-proxy-3
License: MIT
By: William Stein, Charlie Robbins, Jimb Esser, jcrugzz
Repository: https://github.com/sagemathinc/http-proxy-3
Repository: https://github.com/sagemathinc/http-proxy-3.git
> node-http-3
>
@@ -937,7 +964,7 @@ Repository: https://github.com/sagemathinc/http-proxy-3
## icss-utils
License: ISC
By: Glen Maddern
Repository: https://github.com/css-modules/icss-utils
Repository: git+https://github.com/css-modules/icss-utils.git
> ISC License (ISC)
> Copyright 2018 Glen Maddern
@@ -951,7 +978,7 @@ Repository: https://github.com/css-modules/icss-utils
## is-binary-path
License: MIT
By: Sindre Sorhus
Repository: https://github.com/sindresorhus/is-binary-path
Repository: sindresorhus/is-binary-path
> MIT License
>
@@ -968,7 +995,7 @@ Repository: https://github.com/sindresorhus/is-binary-path
## is-extglob
License: MIT
By: Jon Schlinkert
Repository: https://github.com/jonschlinkert/is-extglob
Repository: jonschlinkert/is-extglob
> The MIT License (MIT)
>
@@ -997,7 +1024,7 @@ Repository: https://github.com/jonschlinkert/is-extglob
## is-glob
License: MIT
By: Jon Schlinkert, Brian Woodward, Daniel Perez
Repository: https://github.com/micromatch/is-glob
Repository: micromatch/is-glob
> The MIT License (MIT)
>
@@ -1026,14 +1053,14 @@ Repository: https://github.com/micromatch/is-glob
## is-reference
License: MIT
By: Rich Harris
Repository: https://github.com/Rich-Harris/is-reference
Repository: git+https://github.com/Rich-Harris/is-reference.git
---------------------------------------
## isexe, which
License: ISC
By: Isaac Z. Schlueter
Repositories: https://github.com/isaacs/isexe, https://github.com/isaacs/node-which
Repositories: git+https://github.com/isaacs/isexe.git, git://github.com/isaacs/node-which.git
> The ISC License
>
@@ -1056,7 +1083,7 @@ Repositories: https://github.com/isaacs/isexe, https://github.com/isaacs/node-wh
## js-tokens
License: MIT
By: Simon Lydell
Repository: https://github.com/lydell/js-tokens
Repository: lydell/js-tokens
> The MIT License (MIT)
>
@@ -1085,7 +1112,7 @@ Repository: https://github.com/lydell/js-tokens
## launch-editor, launch-editor-middleware
License: MIT
By: Evan You
Repositories: https://github.com/yyx990803/launch-editor, https://github.com/yyx990803/launch-editor
Repositories: git+https://github.com/yyx990803/launch-editor.git, git+https://github.com/yyx990803/launch-editor.git
> The MIT License (MIT)
>
@@ -1143,7 +1170,7 @@ Repository: https://github.com/antonk52/lilconfig
## loader-utils
License: MIT
By: Tobias Koppers @sokra
Repository: https://github.com/webpack/loader-utils
Repository: https://github.com/webpack/loader-utils.git
> Copyright JS Foundation and other contributors
>
@@ -1171,7 +1198,7 @@ Repository: https://github.com/webpack/loader-utils
## lodash.camelcase
License: MIT
By: John-David Dalton, Blaine Bublitz, Mathias Bynens
Repository: https://github.com/lodash/lodash
Repository: lodash/lodash
> Copyright jQuery Foundation and other contributors <https://jquery.org/>
>
@@ -1226,7 +1253,7 @@ Repository: https://github.com/lodash/lodash
## magic-string
License: MIT
By: Rich Harris
Repository: https://github.com/Rich-Harris/magic-string
Repository: https://github.com/rich-harris/magic-string.git
> Copyright 2018 Rich Harris
>
@@ -1240,7 +1267,7 @@ Repository: https://github.com/Rich-Harris/magic-string
## mlly, ufo
License: MIT
Repositories: https://github.com/unjs/mlly, https://github.com/unjs/ufo
Repositories: unjs/mlly, unjs/ufo
> MIT License
>
@@ -1269,7 +1296,7 @@ Repositories: https://github.com/unjs/mlly, https://github.com/unjs/ufo
## mrmime
License: MIT
By: Luke Edwards
Repository: https://github.com/lukeed/mrmime
Repository: lukeed/mrmime
> The MIT License (MIT)
>
@@ -1295,10 +1322,38 @@ Repository: https://github.com/lukeed/mrmime
---------------------------------------
## ms
License: MIT
Repository: vercel/ms
> The MIT License (MIT)
>
> Copyright (c) 2020 Vercel, Inc.
>
> Permission is hereby granted, free of charge, to any person obtaining a copy
> of this software and associated documentation files (the "Software"), to deal
> in the Software without restriction, including without limitation the rights
> to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
> copies of the Software, and to permit persons to whom the Software is
> furnished to do so, subject to the following conditions:
>
> The above copyright notice and this permission notice shall be included in all
> copies or substantial portions of the Software.
>
> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
> FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
> AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
> LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
> OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
> SOFTWARE.
---------------------------------------
## normalize-path
License: MIT
By: Jon Schlinkert, Blaine Bublitz
Repository: https://github.com/jonschlinkert/normalize-path
Repository: jonschlinkert/normalize-path
> The MIT License (MIT)
>
@@ -1327,7 +1382,7 @@ Repository: https://github.com/jonschlinkert/normalize-path
## object-assign
License: MIT
By: Sindre Sorhus
Repository: https://github.com/sindresorhus/object-assign
Repository: sindresorhus/object-assign
> The MIT License (MIT)
>
@@ -1353,41 +1408,10 @@ Repository: https://github.com/sindresorhus/object-assign
---------------------------------------
## obug
License: MIT
By: Kevin Deng
Repository: https://github.com/sxzz/obug
> The MIT License (MIT)
>
> Copyright © 2025-PRESENT Kevin Deng (https://github.com/sxzz)
> Copyright (c) 2014-2017 TJ Holowaychuk <tj@vision-media.ca>
> Copyright (c) 2018-2021 Josh Junon
>
> Permission is hereby granted, free of charge, to any person obtaining a copy
> of this software and associated documentation files (the "Software"), to deal
> in the Software without restriction, including without limitation the rights
> to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
> copies of the Software, and to permit persons to whom the Software is
> furnished to do so, subject to the following conditions:
>
> The above copyright notice and this permission notice shall be included in all
> copies or substantial portions of the Software.
>
> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
> FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
> AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
> LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
> OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
> SOFTWARE.
---------------------------------------
## on-finished
License: MIT
By: Douglas Christopher Wilson, Jonathan Ong
Repository: https://github.com/jshttp/on-finished
Repository: jshttp/on-finished
> (The MIT License)
>
@@ -1418,7 +1442,7 @@ Repository: https://github.com/jshttp/on-finished
## parse5
License: MIT
By: Ivan Nikulin, https://github.com/inikulin/parse5/graphs/contributors
Repository: https://github.com/inikulin/parse5
Repository: git://github.com/inikulin/parse5.git
> Copyright (c) 2013-2019 Ivan Nikulin (ifaaan@gmail.com, https://github.com/inikulin)
>
@@ -1445,7 +1469,7 @@ Repository: https://github.com/inikulin/parse5
## parseurl
License: MIT
By: Douglas Christopher Wilson, Jonathan Ong
Repository: https://github.com/pillarjs/parseurl
Repository: pillarjs/parseurl
> (The MIT License)
>
@@ -1476,7 +1500,7 @@ Repository: https://github.com/pillarjs/parseurl
## path-key, shebang-regex
License: MIT
By: Sindre Sorhus
Repositories: https://github.com/sindresorhus/path-key, https://github.com/sindresorhus/shebang-regex
Repositories: sindresorhus/path-key, sindresorhus/shebang-regex
> MIT License
>
@@ -1492,7 +1516,7 @@ Repositories: https://github.com/sindresorhus/path-key, https://github.com/sindr
## periscopic
License: MIT
Repository: https://github.com/Rich-Harris/periscopic
Repository: Rich-Harris/periscopic
> Copyright (c) 2019 Rich Harris
>
@@ -1507,7 +1531,7 @@ Repository: https://github.com/Rich-Harris/periscopic
## picocolors
License: ISC
By: Alexey Raspopov
Repository: https://github.com/alexeyraspopov/picocolors
Repository: alexeyraspopov/picocolors
> ISC License
>
@@ -1530,7 +1554,7 @@ Repository: https://github.com/alexeyraspopov/picocolors
## postcss-import
License: MIT
By: Maxime Thirouin
Repository: https://github.com/postcss/postcss-import
Repository: https://github.com/postcss/postcss-import.git
> The MIT License (MIT)
>
@@ -1558,7 +1582,7 @@ Repository: https://github.com/postcss/postcss-import
## postcss-load-config
License: MIT
By: Michael Ciniawky, Ryan Dunckel, Mateusz Derks, Dalton Santos, Patrick Gilday, François Wouts
Repository: https://github.com/postcss/postcss-load-config
Repository: postcss/postcss-load-config
> The MIT License (MIT)
>
@@ -1586,7 +1610,7 @@ Repository: https://github.com/postcss/postcss-load-config
## postcss-modules
License: MIT
By: Alexander Madyankin
Repository: https://github.com/css-modules/postcss-modules
Repository: https://github.com/css-modules/postcss-modules.git
> The MIT License (MIT)
>
@@ -1614,7 +1638,7 @@ Repository: https://github.com/css-modules/postcss-modules
## postcss-modules-extract-imports
License: ISC
By: Glen Maddern
Repository: https://github.com/css-modules/postcss-modules-extract-imports
Repository: https://github.com/css-modules/postcss-modules-extract-imports.git
> Copyright 2015 Glen Maddern
>
@@ -1627,7 +1651,7 @@ Repository: https://github.com/css-modules/postcss-modules-extract-imports
## postcss-modules-local-by-default
License: MIT
By: Mark Dalgleish
Repository: https://github.com/css-modules/postcss-modules-local-by-default
Repository: https://github.com/css-modules/postcss-modules-local-by-default.git
> The MIT License (MIT)
>
@@ -1655,7 +1679,7 @@ Repository: https://github.com/css-modules/postcss-modules-local-by-default
## postcss-modules-scope
License: ISC
By: Glen Maddern
Repository: https://github.com/css-modules/postcss-modules-scope
Repository: https://github.com/css-modules/postcss-modules-scope.git
> ISC License (ISC)
>
@@ -1670,7 +1694,7 @@ Repository: https://github.com/css-modules/postcss-modules-scope
## postcss-modules-values
License: ISC
By: Glen Maddern
Repository: https://github.com/css-modules/postcss-modules-values
Repository: git+https://github.com/css-modules/postcss-modules-values.git
> ISC License (ISC)
>
@@ -1685,7 +1709,7 @@ Repository: https://github.com/css-modules/postcss-modules-values
## postcss-selector-parser
License: MIT
By: Ben Briggs, Chris Eppstein
Repository: https://github.com/postcss/postcss-selector-parser
Repository: postcss/postcss-selector-parser
> Copyright (c) Ben Briggs <beneb.info@gmail.com> (http://beneb.info)
>
@@ -1715,7 +1739,7 @@ Repository: https://github.com/postcss/postcss-selector-parser
## postcss-value-parser
License: MIT
By: Bogdan Chadkin
Repository: https://github.com/TrySound/postcss-value-parser
Repository: https://github.com/TrySound/postcss-value-parser.git
> Copyright (c) Bogdan Chadkin <trysound@yandex.ru>
>
@@ -1745,7 +1769,7 @@ Repository: https://github.com/TrySound/postcss-value-parser
## readdirp
License: MIT
By: Thorsten Lorenz, Paul Miller
Repository: https://github.com/paulmillr/readdirp
Repository: git://github.com/paulmillr/readdirp.git
> MIT License
>
@@ -1774,7 +1798,7 @@ Repository: https://github.com/paulmillr/readdirp
## resolve.exports, totalist
License: MIT
By: Luke Edwards
Repositories: https://github.com/lukeed/resolve.exports, https://github.com/lukeed/totalist
Repositories: lukeed/resolve.exports, lukeed/totalist
> The MIT License (MIT)
>
@@ -1803,7 +1827,7 @@ Repositories: https://github.com/lukeed/resolve.exports, https://github.com/luke
## shebang-command
License: MIT
By: Kevin Mårtensson
Repository: https://github.com/kevva/shebang-command
Repository: kevva/shebang-command
> MIT License
>
@@ -1820,14 +1844,14 @@ Repository: https://github.com/kevva/shebang-command
## sirv
License: MIT
By: Luke Edwards
Repository: https://github.com/lukeed/sirv
Repository: lukeed/sirv
---------------------------------------
## statuses
License: MIT
By: Douglas Christopher Wilson, Jonathan Ong
Repository: https://github.com/jshttp/statuses
Repository: jshttp/statuses
> The MIT License (MIT)
>
@@ -1857,14 +1881,14 @@ Repository: https://github.com/jshttp/statuses
## string-hash
License: CC0-1.0
By: The Dark Sky Company
Repository: https://github.com/darkskyapp/string-hash
Repository: git://github.com/darkskyapp/string-hash.git
---------------------------------------
## strip-literal
License: MIT
By: Anthony Fu
Repository: https://github.com/antfu/strip-literal
Repository: git+https://github.com/antfu/strip-literal.git
> MIT License
>
@@ -1893,7 +1917,7 @@ Repository: https://github.com/antfu/strip-literal
## to-regex-range
License: MIT
By: Jon Schlinkert, Rouven Weßling
Repository: https://github.com/micromatch/to-regex-range
Repository: micromatch/to-regex-range
> The MIT License (MIT)
>
@@ -1922,7 +1946,7 @@ Repository: https://github.com/micromatch/to-regex-range
## tsconfck
License: MIT
By: dominikg
Repository: https://github.com/dominikg/tsconfck
Repository: git+https://github.com/dominikg/tsconfck.git
> MIT License
>
@@ -1976,7 +2000,7 @@ Repository: https://github.com/dominikg/tsconfck
## unpipe
License: MIT
By: Douglas Christopher Wilson
Repository: https://github.com/stream-utils/unpipe
Repository: stream-utils/unpipe
> (The MIT License)
>
@@ -2006,7 +2030,7 @@ Repository: https://github.com/stream-utils/unpipe
## util-deprecate
License: MIT
By: Nathan Rajlich
Repository: https://github.com/TooTallNate/util-deprecate
Repository: git://github.com/TooTallNate/util-deprecate.git
> (The MIT License)
>
@@ -2038,7 +2062,7 @@ Repository: https://github.com/TooTallNate/util-deprecate
## utils-merge
License: MIT
By: Jared Hanson
Repository: https://github.com/jaredhanson/utils-merge
Repository: git://github.com/jaredhanson/utils-merge.git
> The MIT License (MIT)
>
@@ -2066,7 +2090,7 @@ Repository: https://github.com/jaredhanson/utils-merge
## vary
License: MIT
By: Douglas Christopher Wilson
Repository: https://github.com/jshttp/vary
Repository: jshttp/vary
> (The MIT License)
>
@@ -2096,7 +2120,7 @@ Repository: https://github.com/jshttp/vary
## ws
License: MIT
By: Einar Otto Stangvik
Repository: https://github.com/websockets/ws
Repository: git+https://github.com/websockets/ws.git
> Copyright (c) 2011 Einar Otto Stangvik <einaros@gmail.com>
> Copyright (c) 2013 Arnout Kazemier and contributors
+4 -4
View File
@@ -1,6 +1,6 @@
import "@vite/env";
//#region \0@oxc-project+runtime@0.99.0/helpers/typeof.js
//#region \0@oxc-project+runtime@0.94.0/helpers/typeof.js
function _typeof(o) {
"@babel/helpers - typeof";
return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(o$1) {
@@ -11,7 +11,7 @@ function _typeof(o) {
}
//#endregion
//#region \0@oxc-project+runtime@0.99.0/helpers/toPrimitive.js
//#region \0@oxc-project+runtime@0.94.0/helpers/toPrimitive.js
function toPrimitive(t, r) {
if ("object" != _typeof(t) || !t) return t;
var e = t[Symbol.toPrimitive];
@@ -24,14 +24,14 @@ function toPrimitive(t, r) {
}
//#endregion
//#region \0@oxc-project+runtime@0.99.0/helpers/toPropertyKey.js
//#region \0@oxc-project+runtime@0.94.0/helpers/toPropertyKey.js
function toPropertyKey(t) {
var i = toPrimitive(t, "string");
return "symbol" == _typeof(i) ? i : i + "";
}
//#endregion
//#region \0@oxc-project+runtime@0.99.0/helpers/defineProperty.js
//#region \0@oxc-project+runtime@0.94.0/helpers/defineProperty.js
function _defineProperty(e, r, t) {
return (r = toPropertyKey(r)) in e ? Object.defineProperty(e, r, {
value: t,
+1 -1
View File
@@ -1,4 +1,4 @@
import "./logger.js";
import { A as toOutputFilePathInCss, C as onRollupLog, D as resolveBuilderOptions, E as resolveBuildPlugins, M as toOutputFilePathInJS, N as toOutputFilePathWithoutRuntime, O as resolveLibFilename, S as injectEnvironmentToHooks, T as resolveBuildOutputs, _ as build, b as createBuilder, g as BuildEnvironment, j as toOutputFilePathInHtml, k as resolveUserExternal, v as buildEnvironmentOptionsDefaults, w as resolveBuildEnvironmentOptions, x as createToImportMetaURLBasedRelativeRuntime, y as builderOptionsDefaults } from "./config.js";
import { BuildEnvironment, build, buildEnvironmentOptionsDefaults, builderOptionsDefaults, createBuilder, createToImportMetaURLBasedRelativeRuntime, injectEnvironmentToHooks, onRollupLog, resolveBuildEnvironmentOptions, resolveBuildOutputs, resolveBuildPlugins, resolveBuilderOptions, resolveLibFilename, resolveUserExternal, toOutputFilePathInCss, toOutputFilePathInHtml, toOutputFilePathInJS, toOutputFilePathWithoutRuntime } from "./config.js";
export { createBuilder, resolveBuildPlugins };
+124 -139
View File
@@ -1,8 +1,8 @@
import { i as __require, t as __commonJSMin } from "./chunk.js";
import { t as require_lib } from "./lib.js";
import { __commonJS, __require } from "./chunk.js";
import { require_lib } from "./lib.js";
//#region ../../node_modules/.pnpm/postcss-modules@6.0.1_postcss@8.5.6/node_modules/postcss-modules/build/fs.js
var require_fs = /* @__PURE__ */ __commonJSMin(((exports) => {
var require_fs = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/postcss-modules@6.0.1_postcss@8.5.6/node_modules/postcss-modules/build/fs.js": ((exports) => {
Object.defineProperty(exports, "__esModule", { value: true });
exports.getFileSystem = getFileSystem;
exports.setFileSystem = setFileSystem;
@@ -21,11 +21,11 @@ var require_fs = /* @__PURE__ */ __commonJSMin(((exports) => {
function getFileSystem() {
return fileSystem;
}
}));
}) });
//#endregion
//#region ../../node_modules/.pnpm/postcss-modules@6.0.1_postcss@8.5.6/node_modules/postcss-modules/build/unquote.js
var require_unquote = /* @__PURE__ */ __commonJSMin(((exports) => {
var require_unquote = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/postcss-modules@6.0.1_postcss@8.5.6/node_modules/postcss-modules/build/unquote.js": ((exports) => {
Object.defineProperty(exports, "__esModule", { value: true });
exports.default = unquote;
const reg = /['"]/;
@@ -35,11 +35,11 @@ var require_unquote = /* @__PURE__ */ __commonJSMin(((exports) => {
if (reg.test(str$1.charAt(str$1.length - 1))) str$1 = str$1.substr(0, str$1.length - 1);
return str$1;
}
}));
}) });
//#endregion
//#region ../../node_modules/.pnpm/icss-utils@5.1.0_postcss@8.5.6/node_modules/icss-utils/src/replaceValueSymbols.js
var require_replaceValueSymbols = /* @__PURE__ */ __commonJSMin(((exports, module) => {
var require_replaceValueSymbols = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/icss-utils@5.1.0_postcss@8.5.6/node_modules/icss-utils/src/replaceValueSymbols.js": ((exports, module) => {
const matchValueName = /[$]?[\w-]+/g;
const replaceValueSymbols$2 = (value, replacements) => {
let matches;
@@ -53,11 +53,11 @@ var require_replaceValueSymbols = /* @__PURE__ */ __commonJSMin(((exports, modul
return value;
};
module.exports = replaceValueSymbols$2;
}));
}) });
//#endregion
//#region ../../node_modules/.pnpm/icss-utils@5.1.0_postcss@8.5.6/node_modules/icss-utils/src/replaceSymbols.js
var require_replaceSymbols = /* @__PURE__ */ __commonJSMin(((exports, module) => {
var require_replaceSymbols = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/icss-utils@5.1.0_postcss@8.5.6/node_modules/icss-utils/src/replaceSymbols.js": ((exports, module) => {
const replaceValueSymbols$1 = require_replaceValueSymbols();
const replaceSymbols$1 = (css, replacements) => {
css.walk((node) => {
@@ -67,11 +67,11 @@ var require_replaceSymbols = /* @__PURE__ */ __commonJSMin(((exports, module) =>
});
};
module.exports = replaceSymbols$1;
}));
}) });
//#endregion
//#region ../../node_modules/.pnpm/icss-utils@5.1.0_postcss@8.5.6/node_modules/icss-utils/src/extractICSS.js
var require_extractICSS = /* @__PURE__ */ __commonJSMin(((exports, module) => {
var require_extractICSS = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/icss-utils@5.1.0_postcss@8.5.6/node_modules/icss-utils/src/extractICSS.js": ((exports, module) => {
const importPattern = /^:import\(("[^"]*"|'[^']*'|[^"']+)\)$/;
const balancedQuotes = /^("[^"]*"|'[^']*'|[^"']+)$/;
const getDeclsObject = (rule) => {
@@ -122,11 +122,11 @@ var require_extractICSS = /* @__PURE__ */ __commonJSMin(((exports, module) => {
};
};
module.exports = extractICSS$2;
}));
}) });
//#endregion
//#region ../../node_modules/.pnpm/icss-utils@5.1.0_postcss@8.5.6/node_modules/icss-utils/src/createICSSRules.js
var require_createICSSRules = /* @__PURE__ */ __commonJSMin(((exports, module) => {
var require_createICSSRules = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/icss-utils@5.1.0_postcss@8.5.6/node_modules/icss-utils/src/createICSSRules.js": ((exports, module) => {
const createImports = (imports, postcss, mode = "rule") => {
return Object.keys(imports).map((path$2) => {
const aliases = imports[path$2];
@@ -167,11 +167,11 @@ var require_createICSSRules = /* @__PURE__ */ __commonJSMin(((exports, module) =
};
const createICSSRules$1 = (imports, exports$1, postcss, mode) => [...createImports(imports, postcss, mode), ...createExports(exports$1, postcss, mode)];
module.exports = createICSSRules$1;
}));
}) });
//#endregion
//#region ../../node_modules/.pnpm/icss-utils@5.1.0_postcss@8.5.6/node_modules/icss-utils/src/index.js
var require_src$4 = /* @__PURE__ */ __commonJSMin(((exports, module) => {
var require_src$4 = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/icss-utils@5.1.0_postcss@8.5.6/node_modules/icss-utils/src/index.js": ((exports, module) => {
const replaceValueSymbols = require_replaceValueSymbols();
const replaceSymbols = require_replaceSymbols();
const extractICSS$1 = require_extractICSS();
@@ -182,13 +182,12 @@ var require_src$4 = /* @__PURE__ */ __commonJSMin(((exports, module) => {
extractICSS: extractICSS$1,
createICSSRules
};
}));
}) });
//#endregion
//#region ../../node_modules/.pnpm/postcss-modules@6.0.1_postcss@8.5.6/node_modules/postcss-modules/build/Parser.js
var require_Parser = /* @__PURE__ */ __commonJSMin(((exports) => {
var require_Parser = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/postcss-modules@6.0.1_postcss@8.5.6/node_modules/postcss-modules/build/Parser.js": ((exports) => {
Object.defineProperty(exports, "__esModule", { value: true });
exports.default = void 0;
var _icssUtils = require_src$4();
const importRegexp = /^:import\((.+)\)$/;
var Parser$1 = class {
@@ -251,11 +250,11 @@ var require_Parser = /* @__PURE__ */ __commonJSMin(((exports) => {
}
};
exports.default = Parser$1;
}));
}) });
//#endregion
//#region ../../node_modules/.pnpm/postcss-modules@6.0.1_postcss@8.5.6/node_modules/postcss-modules/build/saveJSON.js
var require_saveJSON = /* @__PURE__ */ __commonJSMin(((exports) => {
var require_saveJSON = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/postcss-modules@6.0.1_postcss@8.5.6/node_modules/postcss-modules/build/saveJSON.js": ((exports) => {
Object.defineProperty(exports, "__esModule", { value: true });
exports.default = saveJSON;
var _fs$2 = require_fs();
@@ -265,11 +264,11 @@ var require_saveJSON = /* @__PURE__ */ __commonJSMin(((exports) => {
writeFile(`${cssFile}.json`, JSON.stringify(json), (e) => e ? reject(e) : resolve(json));
});
}
}));
}) });
//#endregion
//#region ../../node_modules/.pnpm/lodash.camelcase@4.3.0/node_modules/lodash.camelcase/index.js
var require_lodash = /* @__PURE__ */ __commonJSMin(((exports, module) => {
var require_lodash = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/lodash.camelcase@4.3.0/node_modules/lodash.camelcase/index.js": ((exports, module) => {
/**
* lodash (Custom Build) <https://lodash.com/>
* Build: `lodash modularize exports="npm" -o ./`
@@ -909,11 +908,11 @@ var require_lodash = /* @__PURE__ */ __commonJSMin(((exports, module) => {
return string$1.match(pattern) || [];
}
module.exports = camelCase;
}));
}) });
//#endregion
//#region ../../node_modules/.pnpm/postcss-modules@6.0.1_postcss@8.5.6/node_modules/postcss-modules/build/localsConvention.js
var require_localsConvention = /* @__PURE__ */ __commonJSMin(((exports) => {
var require_localsConvention = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/postcss-modules@6.0.1_postcss@8.5.6/node_modules/postcss-modules/build/localsConvention.js": ((exports) => {
Object.defineProperty(exports, "__esModule", { value: true });
exports.makeLocalsConventionReducer = makeLocalsConventionReducer;
var _lodash = _interopRequireDefault$22(require_lodash());
@@ -950,13 +949,12 @@ var require_localsConvention = /* @__PURE__ */ __commonJSMin(((exports) => {
return tokens$1;
};
}
}));
}) });
//#endregion
//#region ../../node_modules/.pnpm/postcss-modules@6.0.1_postcss@8.5.6/node_modules/postcss-modules/build/FileSystemLoader.js
var require_FileSystemLoader = /* @__PURE__ */ __commonJSMin(((exports) => {
var require_FileSystemLoader = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/postcss-modules@6.0.1_postcss@8.5.6/node_modules/postcss-modules/build/FileSystemLoader.js": ((exports) => {
Object.defineProperty(exports, "__esModule", { value: true });
exports.default = void 0;
var _postcss$1 = _interopRequireDefault$21(__require("postcss"));
var _path = _interopRequireDefault$21(__require("path"));
var _Parser$1 = _interopRequireDefault$21(require_Parser());
@@ -1036,11 +1034,11 @@ var require_FileSystemLoader = /* @__PURE__ */ __commonJSMin(((exports) => {
}
};
exports.default = FileSystemLoader;
}));
}) });
//#endregion
//#region ../../node_modules/.pnpm/postcss-modules-extract-imports@3.1.0_postcss@8.5.6/node_modules/postcss-modules-extract-imports/src/topologicalSort.js
var require_topologicalSort = /* @__PURE__ */ __commonJSMin(((exports, module) => {
var require_topologicalSort = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/postcss-modules-extract-imports@3.1.0_postcss@8.5.6/node_modules/postcss-modules-extract-imports/src/topologicalSort.js": ((exports, module) => {
const PERMANENT_MARKER = 2;
const TEMPORARY_MARKER = 1;
function createError(node, graph) {
@@ -1076,11 +1074,11 @@ var require_topologicalSort = /* @__PURE__ */ __commonJSMin(((exports, module) =
return result;
}
module.exports = topologicalSort$1;
}));
}) });
//#endregion
//#region ../../node_modules/.pnpm/postcss-modules-extract-imports@3.1.0_postcss@8.5.6/node_modules/postcss-modules-extract-imports/src/index.js
var require_src$3 = /* @__PURE__ */ __commonJSMin(((exports, module) => {
var require_src$3 = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/postcss-modules-extract-imports@3.1.0_postcss@8.5.6/node_modules/postcss-modules-extract-imports/src/index.js": ((exports, module) => {
const topologicalSort = require_topologicalSort();
const matchImports$1 = /^(.+?)\s+from\s+(?:"([^"]+)"|'([^']+)'|(global))$/;
const icssImport = /^:import\((?:"([^"]+)"|'([^']+)')\)/;
@@ -1205,11 +1203,11 @@ var require_src$3 = /* @__PURE__ */ __commonJSMin(((exports, module) => {
};
};
module.exports.postcss = true;
}));
}) });
//#endregion
//#region ../../node_modules/.pnpm/loader-utils@3.3.1/node_modules/loader-utils/lib/hash/wasm-hash.js
var require_wasm_hash = /* @__PURE__ */ __commonJSMin(((exports, module) => {
var require_wasm_hash = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/loader-utils@3.3.1/node_modules/loader-utils/lib/hash/wasm-hash.js": ((exports, module) => {
const MAX_SHORT_STRING$1 = Math.floor(65472 / 4) & -4;
var WasmHash = class {
/**
@@ -1340,19 +1338,19 @@ var require_wasm_hash = /* @__PURE__ */ __commonJSMin(((exports, module) => {
};
module.exports = create$2;
module.exports.MAX_SHORT_STRING = MAX_SHORT_STRING$1;
}));
}) });
//#endregion
//#region ../../node_modules/.pnpm/loader-utils@3.3.1/node_modules/loader-utils/lib/hash/xxhash64.js
var require_xxhash64 = /* @__PURE__ */ __commonJSMin(((exports, module) => {
var require_xxhash64 = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/loader-utils@3.3.1/node_modules/loader-utils/lib/hash/xxhash64.js": ((exports, module) => {
const create$1 = require_wasm_hash();
const xxhash64 = new WebAssembly.Module(Buffer.from("AGFzbQEAAAABCAJgAX8AYAAAAwQDAQAABQMBAAEGGgV+AUIAC34BQgALfgFCAAt+AUIAC34BQgALByIEBGluaXQAAAZ1cGRhdGUAAQVmaW5hbAACBm1lbW9yeQIACrUIAzAAQtbrgu7q/Yn14AAkAELP1tO+0ser2UIkAUIAJAJC+erQ0OfJoeThACQDQgAkBAvUAQIBfwR+IABFBEAPCyMEIACtfCQEIwAhAiMBIQMjAiEEIwMhBQNAIAIgASkDAELP1tO+0ser2UJ+fEIfiUKHla+vmLbem55/fiECIAMgASkDCELP1tO+0ser2UJ+fEIfiUKHla+vmLbem55/fiEDIAQgASkDEELP1tO+0ser2UJ+fEIfiUKHla+vmLbem55/fiEEIAUgASkDGELP1tO+0ser2UJ+fEIfiUKHla+vmLbem55/fiEFIAAgAUEgaiIBSw0ACyACJAAgAyQBIAQkAiAFJAMLqwYCAX8EfiMEQgBSBH4jACICQgGJIwEiA0IHiXwjAiIEQgyJfCMDIgVCEol8IAJCz9bTvtLHq9lCfkIfiUKHla+vmLbem55/foVCh5Wvr5i23puef35CnaO16oOxjYr6AH0gA0LP1tO+0ser2UJ+Qh+JQoeVr6+Ytt6bnn9+hUKHla+vmLbem55/fkKdo7Xqg7GNivoAfSAEQs/W077Sx6vZQn5CH4lCh5Wvr5i23puef36FQoeVr6+Ytt6bnn9+Qp2jteqDsY2K+gB9IAVCz9bTvtLHq9lCfkIfiUKHla+vmLbem55/foVCh5Wvr5i23puef35CnaO16oOxjYr6AH0FQsXP2bLx5brqJwsjBCAArXx8IQIDQCABQQhqIABNBEAgAiABKQMAQs/W077Sx6vZQn5CH4lCh5Wvr5i23puef36FQhuJQoeVr6+Ytt6bnn9+Qp2jteqDsY2K+gB9IQIgAUEIaiEBDAELCyABQQRqIABNBEACfyACIAE1AgBCh5Wvr5i23puef36FQheJQs/W077Sx6vZQn5C+fPd8Zn2masWfCECIAFBBGoLIQELA0AgACABRwRAIAIgATEAAELFz9my8eW66id+hUILiUKHla+vmLbem55/fiECIAFBAWohAQwBCwtBACACIAJCIYiFQs/W077Sx6vZQn4iAiACQh2IhUL5893xmfaZqxZ+IgIgAkIgiIUiAkIgiCIDQv//A4NCIIYgA0KAgPz/D4NCEIiEIgNC/4GAgPAfg0IQhiADQoD+g4CA4D+DQgiIhCIDQo+AvIDwgcAHg0IIhiADQvCBwIeAnoD4AINCBIiEIgNChoyYsODAgYMGfEIEiEKBgoSIkKDAgAGDQid+IANCsODAgYOGjJgwhHw3AwBBCCACQv////8PgyICQv//A4NCIIYgAkKAgPz/D4NCEIiEIgJC/4GAgPAfg0IQhiACQoD+g4CA4D+DQgiIhCICQo+AvIDwgcAHg0IIhiACQvCBwIeAnoD4AINCBIiEIgJChoyYsODAgYMGfEIEiEKBgoSIkKDAgAGDQid+IAJCsODAgYOGjJgwhHw3AwAL", "base64"));
module.exports = create$1.bind(null, xxhash64, [], 32, 16);
}));
}) });
//#endregion
//#region ../../node_modules/.pnpm/loader-utils@3.3.1/node_modules/loader-utils/lib/hash/BatchedHash.js
var require_BatchedHash = /* @__PURE__ */ __commonJSMin(((exports, module) => {
var require_BatchedHash = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/loader-utils@3.3.1/node_modules/loader-utils/lib/hash/BatchedHash.js": ((exports, module) => {
const MAX_SHORT_STRING = require_wasm_hash().MAX_SHORT_STRING;
var BatchedHash$1 = class {
constructor(hash$1) {
@@ -1393,19 +1391,19 @@ var require_BatchedHash = /* @__PURE__ */ __commonJSMin(((exports, module) => {
}
};
module.exports = BatchedHash$1;
}));
}) });
//#endregion
//#region ../../node_modules/.pnpm/loader-utils@3.3.1/node_modules/loader-utils/lib/hash/md4.js
var require_md4 = /* @__PURE__ */ __commonJSMin(((exports, module) => {
var require_md4 = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/loader-utils@3.3.1/node_modules/loader-utils/lib/hash/md4.js": ((exports, module) => {
const create = require_wasm_hash();
const md4 = new WebAssembly.Module(Buffer.from("AGFzbQEAAAABCAJgAX8AYAAAAwUEAQAAAAUDAQABBhoFfwFBAAt/AUEAC38BQQALfwFBAAt/AUEACwciBARpbml0AAAGdXBkYXRlAAIFZmluYWwAAwZtZW1vcnkCAAqFEAQmAEGBxpS6BiQBQYnXtv5+JAJB/rnrxXkkA0H2qMmBASQEQQAkAAvMCgEYfyMBIQojAiEGIwMhByMEIQgDQCAAIAVLBEAgBSgCCCINIAcgBiAFKAIEIgsgCCAHIAUoAgAiDCAKIAggBiAHIAhzcXNqakEDdyIDIAYgB3Nxc2pqQQd3IgEgAyAGc3FzampBC3chAiAFKAIUIg8gASACIAUoAhAiCSADIAEgBSgCDCIOIAYgAyACIAEgA3Nxc2pqQRN3IgQgASACc3FzampBA3ciAyACIARzcXNqakEHdyEBIAUoAiAiEiADIAEgBSgCHCIRIAQgAyAFKAIYIhAgAiAEIAEgAyAEc3FzampBC3ciAiABIANzcXNqakETdyIEIAEgAnNxc2pqQQN3IQMgBSgCLCIVIAQgAyAFKAIoIhQgAiAEIAUoAiQiEyABIAIgAyACIARzcXNqakEHdyIBIAMgBHNxc2pqQQt3IgIgASADc3FzampBE3chBCAPIBAgCSAVIBQgEyAFKAI4IhYgAiAEIAUoAjQiFyABIAIgBSgCMCIYIAMgASAEIAEgAnNxc2pqQQN3IgEgAiAEc3FzampBB3ciAiABIARzcXNqakELdyIDIAkgAiAMIAEgBSgCPCIJIAQgASADIAEgAnNxc2pqQRN3IgEgAiADcnEgAiADcXJqakGZ84nUBWpBA3ciAiABIANycSABIANxcmpqQZnzidQFakEFdyIEIAEgAnJxIAEgAnFyaiASakGZ84nUBWpBCXciAyAPIAQgCyACIBggASADIAIgBHJxIAIgBHFyampBmfOJ1AVqQQ13IgEgAyAEcnEgAyAEcXJqakGZ84nUBWpBA3ciAiABIANycSABIANxcmpqQZnzidQFakEFdyIEIAEgAnJxIAEgAnFyampBmfOJ1AVqQQl3IgMgECAEIAIgFyABIAMgAiAEcnEgAiAEcXJqakGZ84nUBWpBDXciASADIARycSADIARxcmogDWpBmfOJ1AVqQQN3IgIgASADcnEgASADcXJqakGZ84nUBWpBBXciBCABIAJycSABIAJxcmpqQZnzidQFakEJdyIDIBEgBCAOIAIgFiABIAMgAiAEcnEgAiAEcXJqakGZ84nUBWpBDXciASADIARycSADIARxcmpqQZnzidQFakEDdyICIAEgA3JxIAEgA3FyampBmfOJ1AVqQQV3IgQgASACcnEgASACcXJqakGZ84nUBWpBCXciAyAMIAIgAyAJIAEgAyACIARycSACIARxcmpqQZnzidQFakENdyIBcyAEc2pqQaHX5/YGakEDdyICIAQgASACcyADc2ogEmpBodfn9gZqQQl3IgRzIAFzampBodfn9gZqQQt3IgMgAiADIBggASADIARzIAJzampBodfn9gZqQQ93IgFzIARzaiANakGh1+f2BmpBA3ciAiAUIAQgASACcyADc2pqQaHX5/YGakEJdyIEcyABc2pqQaHX5/YGakELdyIDIAsgAiADIBYgASADIARzIAJzampBodfn9gZqQQ93IgFzIARzampBodfn9gZqQQN3IgIgEyAEIAEgAnMgA3NqakGh1+f2BmpBCXciBHMgAXNqakGh1+f2BmpBC3chAyAKIA4gAiADIBcgASADIARzIAJzampBodfn9gZqQQ93IgFzIARzampBodfn9gZqQQN3IgJqIQogBiAJIAEgESADIAIgFSAEIAEgAnMgA3NqakGh1+f2BmpBCXciBHMgAXNqakGh1+f2BmpBC3ciAyAEcyACc2pqQaHX5/YGakEPd2ohBiADIAdqIQcgBCAIaiEIIAVBQGshBQwBCwsgCiQBIAYkAiAHJAMgCCQECw0AIAAQASMAIABqJAAL/wQCA38BfiMAIABqrUIDhiEEIABByABqQUBxIgJBCGshAyAAIgFBAWohACABQYABOgAAA0AgACACSUEAIABBB3EbBEAgAEEAOgAAIABBAWohAAwBCwsDQCAAIAJJBEAgAEIANwMAIABBCGohAAwBCwsgAyAENwMAIAIQAUEAIwGtIgRC//8DgyAEQoCA/P8Pg0IQhoQiBEL/gYCA8B+DIARCgP6DgIDgP4NCCIaEIgRCj4C8gPCBwAeDQgiGIARC8IHAh4CegPgAg0IEiIQiBEKGjJiw4MCBgwZ8QgSIQoGChIiQoMCAAYNCJ34gBEKw4MCBg4aMmDCEfDcDAEEIIwKtIgRC//8DgyAEQoCA/P8Pg0IQhoQiBEL/gYCA8B+DIARCgP6DgIDgP4NCCIaEIgRCj4C8gPCBwAeDQgiGIARC8IHAh4CegPgAg0IEiIQiBEKGjJiw4MCBgwZ8QgSIQoGChIiQoMCAAYNCJ34gBEKw4MCBg4aMmDCEfDcDAEEQIwOtIgRC//8DgyAEQoCA/P8Pg0IQhoQiBEL/gYCA8B+DIARCgP6DgIDgP4NCCIaEIgRCj4C8gPCBwAeDQgiGIARC8IHAh4CegPgAg0IEiIQiBEKGjJiw4MCBgwZ8QgSIQoGChIiQoMCAAYNCJ34gBEKw4MCBg4aMmDCEfDcDAEEYIwStIgRC//8DgyAEQoCA/P8Pg0IQhoQiBEL/gYCA8B+DIARCgP6DgIDgP4NCCIaEIgRCj4C8gPCBwAeDQgiGIARC8IHAh4CegPgAg0IEiIQiBEKGjJiw4MCBgwZ8QgSIQoGChIiQoMCAAYNCJ34gBEKw4MCBg4aMmDCEfDcDAAs=", "base64"));
module.exports = create.bind(null, md4, [], 64, 32);
}));
}) });
//#endregion
//#region ../../node_modules/.pnpm/loader-utils@3.3.1/node_modules/loader-utils/lib/hash/BulkUpdateDecorator.js
var require_BulkUpdateDecorator = /* @__PURE__ */ __commonJSMin(((exports, module) => {
var require_BulkUpdateDecorator = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/loader-utils@3.3.1/node_modules/loader-utils/lib/hash/BulkUpdateDecorator.js": ((exports, module) => {
const BULK_SIZE = 2e3;
const digestCaches = {};
var BulkUpdateDecorator$1 = class {
@@ -1471,11 +1469,11 @@ var require_BulkUpdateDecorator = /* @__PURE__ */ __commonJSMin(((exports, modul
}
};
module.exports = BulkUpdateDecorator$1;
}));
}) });
//#endregion
//#region ../../node_modules/.pnpm/loader-utils@3.3.1/node_modules/loader-utils/lib/getHashDigest.js
var require_getHashDigest = /* @__PURE__ */ __commonJSMin(((exports, module) => {
var require_getHashDigest = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/loader-utils@3.3.1/node_modules/loader-utils/lib/getHashDigest.js": ((exports, module) => {
const baseEncodeTables = {
26: "abcdefghijklmnopqrstuvwxyz",
32: "123456789abcdefghjkmnpqrstuvwxyz",
@@ -1550,11 +1548,11 @@ var require_getHashDigest = /* @__PURE__ */ __commonJSMin(((exports, module) =>
return hash$1.digest(digestType || "hex").substr(0, maxLength);
}
module.exports = getHashDigest$1;
}));
}) });
//#endregion
//#region ../../node_modules/.pnpm/loader-utils@3.3.1/node_modules/loader-utils/lib/interpolateName.js
var require_interpolateName = /* @__PURE__ */ __commonJSMin(((exports, module) => {
var require_interpolateName = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/loader-utils@3.3.1/node_modules/loader-utils/lib/interpolateName.js": ((exports, module) => {
const path$1 = __require("path");
const getHashDigest = require_getHashDigest();
function interpolateName$1(loaderContext, name, options = {}) {
@@ -1603,11 +1601,11 @@ var require_interpolateName = /* @__PURE__ */ __commonJSMin(((exports, module) =
return url;
}
module.exports = interpolateName$1;
}));
}) });
//#endregion
//#region ../../node_modules/.pnpm/generic-names@4.0.0/node_modules/generic-names/index.js
var require_generic_names = /* @__PURE__ */ __commonJSMin(((exports, module) => {
var require_generic_names = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/generic-names@4.0.0/node_modules/generic-names/index.js": ((exports, module) => {
var interpolateName = require_interpolateName();
var path = __require("path");
/**
@@ -1634,11 +1632,11 @@ var require_generic_names = /* @__PURE__ */ __commonJSMin(((exports, module) =>
}).replace(new RegExp("[^a-zA-Z0-9\\-_\xA0-￿]", "g"), "-").replace(/^((-?[0-9])|--)/, "_$1");
};
};
}));
}) });
//#endregion
//#region ../../node_modules/.pnpm/postcss-selector-parser@7.1.0/node_modules/postcss-selector-parser/dist/util/unesc.js
var require_unesc = /* @__PURE__ */ __commonJSMin(((exports, module) => {
var require_unesc = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/postcss-selector-parser@7.1.0/node_modules/postcss-selector-parser/dist/util/unesc.js": ((exports, module) => {
exports.__esModule = true;
exports["default"] = unesc;
/**
@@ -1687,11 +1685,11 @@ var require_unesc = /* @__PURE__ */ __commonJSMin(((exports, module) => {
return ret;
}
module.exports = exports.default;
}));
}) });
//#endregion
//#region ../../node_modules/.pnpm/postcss-selector-parser@7.1.0/node_modules/postcss-selector-parser/dist/util/getProp.js
var require_getProp = /* @__PURE__ */ __commonJSMin(((exports, module) => {
var require_getProp = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/postcss-selector-parser@7.1.0/node_modules/postcss-selector-parser/dist/util/getProp.js": ((exports, module) => {
exports.__esModule = true;
exports["default"] = getProp;
function getProp(obj) {
@@ -1704,11 +1702,11 @@ var require_getProp = /* @__PURE__ */ __commonJSMin(((exports, module) => {
return obj;
}
module.exports = exports.default;
}));
}) });
//#endregion
//#region ../../node_modules/.pnpm/postcss-selector-parser@7.1.0/node_modules/postcss-selector-parser/dist/util/ensureObject.js
var require_ensureObject = /* @__PURE__ */ __commonJSMin(((exports, module) => {
var require_ensureObject = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/postcss-selector-parser@7.1.0/node_modules/postcss-selector-parser/dist/util/ensureObject.js": ((exports, module) => {
exports.__esModule = true;
exports["default"] = ensureObject;
function ensureObject(obj) {
@@ -1720,11 +1718,11 @@ var require_ensureObject = /* @__PURE__ */ __commonJSMin(((exports, module) => {
}
}
module.exports = exports.default;
}));
}) });
//#endregion
//#region ../../node_modules/.pnpm/postcss-selector-parser@7.1.0/node_modules/postcss-selector-parser/dist/util/stripComments.js
var require_stripComments = /* @__PURE__ */ __commonJSMin(((exports, module) => {
var require_stripComments = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/postcss-selector-parser@7.1.0/node_modules/postcss-selector-parser/dist/util/stripComments.js": ((exports, module) => {
exports.__esModule = true;
exports["default"] = stripComments;
function stripComments(str$1) {
@@ -1742,13 +1740,12 @@ var require_stripComments = /* @__PURE__ */ __commonJSMin(((exports, module) =>
return s;
}
module.exports = exports.default;
}));
}) });
//#endregion
//#region ../../node_modules/.pnpm/postcss-selector-parser@7.1.0/node_modules/postcss-selector-parser/dist/util/index.js
var require_util = /* @__PURE__ */ __commonJSMin(((exports) => {
var require_util = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/postcss-selector-parser@7.1.0/node_modules/postcss-selector-parser/dist/util/index.js": ((exports) => {
exports.__esModule = true;
exports.unesc = exports.stripComments = exports.getProp = exports.ensureObject = void 0;
var _unesc$1 = _interopRequireDefault$20(require_unesc());
exports.unesc = _unesc$1["default"];
var _getProp = _interopRequireDefault$20(require_getProp());
@@ -1760,11 +1757,11 @@ var require_util = /* @__PURE__ */ __commonJSMin(((exports) => {
function _interopRequireDefault$20(obj) {
return obj && obj.__esModule ? obj : { "default": obj };
}
}));
}) });
//#endregion
//#region ../../node_modules/.pnpm/postcss-selector-parser@7.1.0/node_modules/postcss-selector-parser/dist/selectors/node.js
var require_node$1 = /* @__PURE__ */ __commonJSMin(((exports, module) => {
var require_node$1 = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/postcss-selector-parser@7.1.0/node_modules/postcss-selector-parser/dist/selectors/node.js": ((exports, module) => {
exports.__esModule = true;
exports["default"] = void 0;
var _util$3 = require_util();
@@ -1897,13 +1894,12 @@ var require_node$1 = /* @__PURE__ */ __commonJSMin(((exports, module) => {
}();
exports["default"] = Node;
module.exports = exports.default;
}));
}) });
//#endregion
//#region ../../node_modules/.pnpm/postcss-selector-parser@7.1.0/node_modules/postcss-selector-parser/dist/selectors/types.js
var require_types = /* @__PURE__ */ __commonJSMin(((exports) => {
var require_types = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/postcss-selector-parser@7.1.0/node_modules/postcss-selector-parser/dist/selectors/types.js": ((exports) => {
exports.__esModule = true;
exports.UNIVERSAL = exports.TAG = exports.STRING = exports.SELECTOR = exports.ROOT = exports.PSEUDO = exports.NESTING = exports.ID = exports.COMMENT = exports.COMBINATOR = exports.CLASS = exports.ATTRIBUTE = void 0;
var TAG = "tag";
exports.TAG = TAG;
var STRING = "string";
@@ -1928,11 +1924,11 @@ var require_types = /* @__PURE__ */ __commonJSMin(((exports) => {
exports.ATTRIBUTE = ATTRIBUTE;
var UNIVERSAL = "universal";
exports.UNIVERSAL = UNIVERSAL;
}));
}) });
//#endregion
//#region ../../node_modules/.pnpm/postcss-selector-parser@7.1.0/node_modules/postcss-selector-parser/dist/selectors/container.js
var require_container = /* @__PURE__ */ __commonJSMin(((exports, module) => {
var require_container = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/postcss-selector-parser@7.1.0/node_modules/postcss-selector-parser/dist/selectors/container.js": ((exports, module) => {
exports.__esModule = true;
exports["default"] = void 0;
var _node$7 = _interopRequireDefault$19(require_node$1());
@@ -2269,11 +2265,11 @@ var require_container = /* @__PURE__ */ __commonJSMin(((exports, module) => {
}(_node$7["default"]);
exports["default"] = Container;
module.exports = exports.default;
}));
}) });
//#endregion
//#region ../../node_modules/.pnpm/postcss-selector-parser@7.1.0/node_modules/postcss-selector-parser/dist/selectors/root.js
var require_root = /* @__PURE__ */ __commonJSMin(((exports, module) => {
var require_root = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/postcss-selector-parser@7.1.0/node_modules/postcss-selector-parser/dist/selectors/root.js": ((exports, module) => {
exports.__esModule = true;
exports["default"] = void 0;
var _container$2 = _interopRequireDefault$18(require_container());
@@ -2337,11 +2333,11 @@ var require_root = /* @__PURE__ */ __commonJSMin(((exports, module) => {
}(_container$2["default"]);
exports["default"] = Root;
module.exports = exports.default;
}));
}) });
//#endregion
//#region ../../node_modules/.pnpm/postcss-selector-parser@7.1.0/node_modules/postcss-selector-parser/dist/selectors/selector.js
var require_selector = /* @__PURE__ */ __commonJSMin(((exports, module) => {
var require_selector = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/postcss-selector-parser@7.1.0/node_modules/postcss-selector-parser/dist/selectors/selector.js": ((exports, module) => {
exports.__esModule = true;
exports["default"] = void 0;
var _container$1 = _interopRequireDefault$17(require_container());
@@ -2372,12 +2368,11 @@ var require_selector = /* @__PURE__ */ __commonJSMin(((exports, module) => {
}(_container$1["default"]);
exports["default"] = Selector;
module.exports = exports.default;
}));
}) });
//#endregion
//#region ../../node_modules/.pnpm/cssesc@3.0.0/node_modules/cssesc/cssesc.js
/*! https://mths.be/cssesc v3.0.0 by @mathias */
var require_cssesc = /* @__PURE__ */ __commonJSMin(((exports, module) => {
var require_cssesc = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/cssesc@3.0.0/node_modules/cssesc/cssesc.js": ((exports, module) => {
var hasOwnProperty$1 = {}.hasOwnProperty;
var merge = function merge$1(options, defaults) {
if (!options) return defaults;
@@ -2434,11 +2429,11 @@ var require_cssesc = /* @__PURE__ */ __commonJSMin(((exports, module) => {
};
cssesc.version = "3.0.0";
module.exports = cssesc;
}));
}) });
//#endregion
//#region ../../node_modules/.pnpm/postcss-selector-parser@7.1.0/node_modules/postcss-selector-parser/dist/selectors/className.js
var require_className = /* @__PURE__ */ __commonJSMin(((exports, module) => {
var require_className = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/postcss-selector-parser@7.1.0/node_modules/postcss-selector-parser/dist/selectors/className.js": ((exports, module) => {
exports.__esModule = true;
exports["default"] = void 0;
var _cssesc$2 = _interopRequireDefault$16(require_cssesc());
@@ -2507,11 +2502,11 @@ var require_className = /* @__PURE__ */ __commonJSMin(((exports, module) => {
}(_node$6["default"]);
exports["default"] = ClassName;
module.exports = exports.default;
}));
}) });
//#endregion
//#region ../../node_modules/.pnpm/postcss-selector-parser@7.1.0/node_modules/postcss-selector-parser/dist/selectors/comment.js
var require_comment = /* @__PURE__ */ __commonJSMin(((exports, module) => {
var require_comment = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/postcss-selector-parser@7.1.0/node_modules/postcss-selector-parser/dist/selectors/comment.js": ((exports, module) => {
exports.__esModule = true;
exports["default"] = void 0;
var _node$5 = _interopRequireDefault$15(require_node$1());
@@ -2542,11 +2537,11 @@ var require_comment = /* @__PURE__ */ __commonJSMin(((exports, module) => {
}(_node$5["default"]);
exports["default"] = Comment;
module.exports = exports.default;
}));
}) });
//#endregion
//#region ../../node_modules/.pnpm/postcss-selector-parser@7.1.0/node_modules/postcss-selector-parser/dist/selectors/id.js
var require_id = /* @__PURE__ */ __commonJSMin(((exports, module) => {
var require_id = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/postcss-selector-parser@7.1.0/node_modules/postcss-selector-parser/dist/selectors/id.js": ((exports, module) => {
exports.__esModule = true;
exports["default"] = void 0;
var _node$4 = _interopRequireDefault$14(require_node$1());
@@ -2581,11 +2576,11 @@ var require_id = /* @__PURE__ */ __commonJSMin(((exports, module) => {
}(_node$4["default"]);
exports["default"] = ID;
module.exports = exports.default;
}));
}) });
//#endregion
//#region ../../node_modules/.pnpm/postcss-selector-parser@7.1.0/node_modules/postcss-selector-parser/dist/selectors/namespace.js
var require_namespace = /* @__PURE__ */ __commonJSMin(((exports, module) => {
var require_namespace = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/postcss-selector-parser@7.1.0/node_modules/postcss-selector-parser/dist/selectors/namespace.js": ((exports, module) => {
exports.__esModule = true;
exports["default"] = void 0;
var _cssesc$1 = _interopRequireDefault$13(require_cssesc());
@@ -2678,11 +2673,11 @@ var require_namespace = /* @__PURE__ */ __commonJSMin(((exports, module) => {
}(_node$3["default"]);
exports["default"] = Namespace;
module.exports = exports.default;
}));
}) });
//#endregion
//#region ../../node_modules/.pnpm/postcss-selector-parser@7.1.0/node_modules/postcss-selector-parser/dist/selectors/tag.js
var require_tag = /* @__PURE__ */ __commonJSMin(((exports, module) => {
var require_tag = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/postcss-selector-parser@7.1.0/node_modules/postcss-selector-parser/dist/selectors/tag.js": ((exports, module) => {
exports.__esModule = true;
exports["default"] = void 0;
var _namespace$2 = _interopRequireDefault$12(require_namespace());
@@ -2713,11 +2708,11 @@ var require_tag = /* @__PURE__ */ __commonJSMin(((exports, module) => {
}(_namespace$2["default"]);
exports["default"] = Tag;
module.exports = exports.default;
}));
}) });
//#endregion
//#region ../../node_modules/.pnpm/postcss-selector-parser@7.1.0/node_modules/postcss-selector-parser/dist/selectors/string.js
var require_string = /* @__PURE__ */ __commonJSMin(((exports, module) => {
var require_string = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/postcss-selector-parser@7.1.0/node_modules/postcss-selector-parser/dist/selectors/string.js": ((exports, module) => {
exports.__esModule = true;
exports["default"] = void 0;
var _node$2 = _interopRequireDefault$11(require_node$1());
@@ -2748,11 +2743,11 @@ var require_string = /* @__PURE__ */ __commonJSMin(((exports, module) => {
}(_node$2["default"]);
exports["default"] = String$1;
module.exports = exports.default;
}));
}) });
//#endregion
//#region ../../node_modules/.pnpm/postcss-selector-parser@7.1.0/node_modules/postcss-selector-parser/dist/selectors/pseudo.js
var require_pseudo = /* @__PURE__ */ __commonJSMin(((exports, module) => {
var require_pseudo = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/postcss-selector-parser@7.1.0/node_modules/postcss-selector-parser/dist/selectors/pseudo.js": ((exports, module) => {
exports.__esModule = true;
exports["default"] = void 0;
var _container = _interopRequireDefault$10(require_container());
@@ -2793,22 +2788,21 @@ var require_pseudo = /* @__PURE__ */ __commonJSMin(((exports, module) => {
}(_container["default"]);
exports["default"] = Pseudo;
module.exports = exports.default;
}));
}) });
//#endregion
//#region ../../node_modules/.pnpm/util-deprecate@1.0.2/node_modules/util-deprecate/node.js
var require_node = /* @__PURE__ */ __commonJSMin(((exports, module) => {
var require_node = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/util-deprecate@1.0.2/node_modules/util-deprecate/node.js": ((exports, module) => {
/**
* For Node.js, simply re-export the core `util.deprecate` function.
*/
module.exports = __require("util").deprecate;
}));
}) });
//#endregion
//#region ../../node_modules/.pnpm/postcss-selector-parser@7.1.0/node_modules/postcss-selector-parser/dist/selectors/attribute.js
var require_attribute = /* @__PURE__ */ __commonJSMin(((exports) => {
var require_attribute = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/postcss-selector-parser@7.1.0/node_modules/postcss-selector-parser/dist/selectors/attribute.js": ((exports) => {
exports.__esModule = true;
exports["default"] = void 0;
exports.unescapeValue = unescapeValue;
var _cssesc = _interopRequireDefault$9(require_cssesc());
var _unesc = _interopRequireDefault$9(require_unesc());
@@ -3129,11 +3123,11 @@ var require_attribute = /* @__PURE__ */ __commonJSMin(((exports) => {
function defaultAttrConcat(attrValue, attrSpaces) {
return "" + attrSpaces.before + attrValue + attrSpaces.after;
}
}));
}) });
//#endregion
//#region ../../node_modules/.pnpm/postcss-selector-parser@7.1.0/node_modules/postcss-selector-parser/dist/selectors/universal.js
var require_universal = /* @__PURE__ */ __commonJSMin(((exports, module) => {
var require_universal = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/postcss-selector-parser@7.1.0/node_modules/postcss-selector-parser/dist/selectors/universal.js": ((exports, module) => {
exports.__esModule = true;
exports["default"] = void 0;
var _namespace = _interopRequireDefault$8(require_namespace());
@@ -3165,11 +3159,11 @@ var require_universal = /* @__PURE__ */ __commonJSMin(((exports, module) => {
}(_namespace["default"]);
exports["default"] = Universal;
module.exports = exports.default;
}));
}) });
//#endregion
//#region ../../node_modules/.pnpm/postcss-selector-parser@7.1.0/node_modules/postcss-selector-parser/dist/selectors/combinator.js
var require_combinator = /* @__PURE__ */ __commonJSMin(((exports, module) => {
var require_combinator = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/postcss-selector-parser@7.1.0/node_modules/postcss-selector-parser/dist/selectors/combinator.js": ((exports, module) => {
exports.__esModule = true;
exports["default"] = void 0;
var _node$1 = _interopRequireDefault$7(require_node$1());
@@ -3200,11 +3194,11 @@ var require_combinator = /* @__PURE__ */ __commonJSMin(((exports, module) => {
}(_node$1["default"]);
exports["default"] = Combinator;
module.exports = exports.default;
}));
}) });
//#endregion
//#region ../../node_modules/.pnpm/postcss-selector-parser@7.1.0/node_modules/postcss-selector-parser/dist/selectors/nesting.js
var require_nesting = /* @__PURE__ */ __commonJSMin(((exports, module) => {
var require_nesting = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/postcss-selector-parser@7.1.0/node_modules/postcss-selector-parser/dist/selectors/nesting.js": ((exports, module) => {
exports.__esModule = true;
exports["default"] = void 0;
var _node = _interopRequireDefault$6(require_node$1());
@@ -3236,11 +3230,11 @@ var require_nesting = /* @__PURE__ */ __commonJSMin(((exports, module) => {
}(_node["default"]);
exports["default"] = Nesting;
module.exports = exports.default;
}));
}) });
//#endregion
//#region ../../node_modules/.pnpm/postcss-selector-parser@7.1.0/node_modules/postcss-selector-parser/dist/sortAscending.js
var require_sortAscending = /* @__PURE__ */ __commonJSMin(((exports, module) => {
var require_sortAscending = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/postcss-selector-parser@7.1.0/node_modules/postcss-selector-parser/dist/sortAscending.js": ((exports, module) => {
exports.__esModule = true;
exports["default"] = sortAscending;
function sortAscending(list) {
@@ -3249,13 +3243,12 @@ var require_sortAscending = /* @__PURE__ */ __commonJSMin(((exports, module) =>
});
}
module.exports = exports.default;
}));
}) });
//#endregion
//#region ../../node_modules/.pnpm/postcss-selector-parser@7.1.0/node_modules/postcss-selector-parser/dist/tokenTypes.js
var require_tokenTypes = /* @__PURE__ */ __commonJSMin(((exports) => {
var require_tokenTypes = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/postcss-selector-parser@7.1.0/node_modules/postcss-selector-parser/dist/tokenTypes.js": ((exports) => {
exports.__esModule = true;
exports.word = exports.tilde = exports.tab = exports.str = exports.space = exports.slash = exports.singleQuote = exports.semicolon = exports.plus = exports.pipe = exports.openSquare = exports.openParenthesis = exports.newline = exports.greaterThan = exports.feed = exports.equals = exports.doubleQuote = exports.dollar = exports.cr = exports.comment = exports.comma = exports.combinator = exports.colon = exports.closeSquare = exports.closeParenthesis = exports.caret = exports.bang = exports.backslash = exports.at = exports.asterisk = exports.ampersand = void 0;
var ampersand = 38;
exports.ampersand = ampersand;
var asterisk = 42;
@@ -3318,13 +3311,12 @@ var require_tokenTypes = /* @__PURE__ */ __commonJSMin(((exports) => {
exports.word = word;
var combinator$1 = -3;
exports.combinator = combinator$1;
}));
}) });
//#endregion
//#region ../../node_modules/.pnpm/postcss-selector-parser@7.1.0/node_modules/postcss-selector-parser/dist/tokenize.js
var require_tokenize = /* @__PURE__ */ __commonJSMin(((exports) => {
var require_tokenize = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/postcss-selector-parser@7.1.0/node_modules/postcss-selector-parser/dist/tokenize.js": ((exports) => {
exports.__esModule = true;
exports.FIELDS = void 0;
exports["default"] = tokenize;
var t = _interopRequireWildcard$2(require_tokenTypes());
var _unescapable, _wordDelimiters;
@@ -3545,11 +3537,11 @@ var require_tokenize = /* @__PURE__ */ __commonJSMin(((exports) => {
}
return tokens$1;
}
}));
}) });
//#endregion
//#region ../../node_modules/.pnpm/postcss-selector-parser@7.1.0/node_modules/postcss-selector-parser/dist/parser.js
var require_parser = /* @__PURE__ */ __commonJSMin(((exports, module) => {
var require_parser = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/postcss-selector-parser@7.1.0/node_modules/postcss-selector-parser/dist/parser.js": ((exports, module) => {
exports.__esModule = true;
exports["default"] = void 0;
var _root$1 = _interopRequireDefault$5(require_root());
@@ -4407,11 +4399,11 @@ var require_parser = /* @__PURE__ */ __commonJSMin(((exports, module) => {
}();
exports["default"] = Parser;
module.exports = exports.default;
}));
}) });
//#endregion
//#region ../../node_modules/.pnpm/postcss-selector-parser@7.1.0/node_modules/postcss-selector-parser/dist/processor.js
var require_processor = /* @__PURE__ */ __commonJSMin(((exports, module) => {
var require_processor = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/postcss-selector-parser@7.1.0/node_modules/postcss-selector-parser/dist/processor.js": ((exports, module) => {
exports.__esModule = true;
exports["default"] = void 0;
var _parser = _interopRequireDefault$4(require_parser());
@@ -4511,13 +4503,12 @@ var require_processor = /* @__PURE__ */ __commonJSMin(((exports, module) => {
}();
exports["default"] = Processor;
module.exports = exports.default;
}));
}) });
//#endregion
//#region ../../node_modules/.pnpm/postcss-selector-parser@7.1.0/node_modules/postcss-selector-parser/dist/selectors/constructors.js
var require_constructors = /* @__PURE__ */ __commonJSMin(((exports) => {
var require_constructors = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/postcss-selector-parser@7.1.0/node_modules/postcss-selector-parser/dist/selectors/constructors.js": ((exports) => {
exports.__esModule = true;
exports.universal = exports.tag = exports.string = exports.selector = exports.root = exports.pseudo = exports.nesting = exports.id = exports.comment = exports.combinator = exports.className = exports.attribute = void 0;
var _attribute = _interopRequireDefault$3(require_attribute());
var _className = _interopRequireDefault$3(require_className());
var _combinator = _interopRequireDefault$3(require_combinator());
@@ -4581,22 +4572,17 @@ var require_constructors = /* @__PURE__ */ __commonJSMin(((exports) => {
return new _universal["default"](opts);
};
exports.universal = universal;
}));
}) });
//#endregion
//#region ../../node_modules/.pnpm/postcss-selector-parser@7.1.0/node_modules/postcss-selector-parser/dist/selectors/guards.js
var require_guards = /* @__PURE__ */ __commonJSMin(((exports) => {
var require_guards = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/postcss-selector-parser@7.1.0/node_modules/postcss-selector-parser/dist/selectors/guards.js": ((exports) => {
exports.__esModule = true;
exports.isComment = exports.isCombinator = exports.isClassName = exports.isAttribute = void 0;
exports.isContainer = isContainer;
exports.isIdentifier = void 0;
exports.isNamespace = isNamespace;
exports.isNesting = void 0;
exports.isNode = isNode;
exports.isPseudo = void 0;
exports.isPseudoClass = isPseudoClass;
exports.isPseudoElement = isPseudoElement;
exports.isUniversal = exports.isTag = exports.isString = exports.isSelector = exports.isRoot = void 0;
var _types$1 = require_types();
var _IS_TYPE;
var IS_TYPE = (_IS_TYPE = {}, _IS_TYPE[_types$1.ATTRIBUTE] = true, _IS_TYPE[_types$1.CLASS] = true, _IS_TYPE[_types$1.COMBINATOR] = true, _IS_TYPE[_types$1.COMMENT] = true, _IS_TYPE[_types$1.ID] = true, _IS_TYPE[_types$1.NESTING] = true, _IS_TYPE[_types$1.PSEUDO] = true, _IS_TYPE[_types$1.ROOT] = true, _IS_TYPE[_types$1.SELECTOR] = true, _IS_TYPE[_types$1.STRING] = true, _IS_TYPE[_types$1.TAG] = true, _IS_TYPE[_types$1.UNIVERSAL] = true, _IS_TYPE);
@@ -4642,11 +4628,11 @@ var require_guards = /* @__PURE__ */ __commonJSMin(((exports) => {
function isNamespace(node) {
return isAttribute(node) || isTag(node);
}
}));
}) });
//#endregion
//#region ../../node_modules/.pnpm/postcss-selector-parser@7.1.0/node_modules/postcss-selector-parser/dist/selectors/index.js
var require_selectors = /* @__PURE__ */ __commonJSMin(((exports) => {
var require_selectors = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/postcss-selector-parser@7.1.0/node_modules/postcss-selector-parser/dist/selectors/index.js": ((exports) => {
exports.__esModule = true;
var _types = require_types();
Object.keys(_types).forEach(function(key) {
@@ -4666,11 +4652,11 @@ var require_selectors = /* @__PURE__ */ __commonJSMin(((exports) => {
if (key in exports && exports[key] === _guards[key]) return;
exports[key] = _guards[key];
});
}));
}) });
//#endregion
//#region ../../node_modules/.pnpm/postcss-selector-parser@7.1.0/node_modules/postcss-selector-parser/dist/index.js
var require_dist = /* @__PURE__ */ __commonJSMin(((exports, module) => {
var require_dist = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/postcss-selector-parser@7.1.0/node_modules/postcss-selector-parser/dist/index.js": ((exports, module) => {
exports.__esModule = true;
exports["default"] = void 0;
var _processor = _interopRequireDefault$2(require_processor());
@@ -4709,11 +4695,11 @@ var require_dist = /* @__PURE__ */ __commonJSMin(((exports, module) => {
var _default = parser;
exports["default"] = _default;
module.exports = exports.default;
}));
}) });
//#endregion
//#region ../../node_modules/.pnpm/postcss-modules-local-by-default@4.2.0_postcss@8.5.6/node_modules/postcss-modules-local-by-default/src/index.js
var require_src$2 = /* @__PURE__ */ __commonJSMin(((exports, module) => {
var require_src$2 = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/postcss-modules-local-by-default@4.2.0_postcss@8.5.6/node_modules/postcss-modules-local-by-default/src/index.js": ((exports, module) => {
const selectorParser$1 = require_dist();
const valueParser = require_lib();
const { extractICSS } = require_src$4();
@@ -5108,11 +5094,11 @@ var require_src$2 = /* @__PURE__ */ __commonJSMin(((exports, module) => {
};
};
module.exports.postcss = true;
}));
}) });
//#endregion
//#region ../../node_modules/.pnpm/postcss-modules-scope@3.2.1_postcss@8.5.6/node_modules/postcss-modules-scope/src/index.js
var require_src$1 = /* @__PURE__ */ __commonJSMin(((exports, module) => {
var require_src$1 = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/postcss-modules-scope@3.2.1_postcss@8.5.6/node_modules/postcss-modules-scope/src/index.js": ((exports, module) => {
const selectorParser = require_dist();
const hasOwnProperty = Object.prototype.hasOwnProperty;
function isNestedRule(rule) {
@@ -5279,22 +5265,22 @@ var require_src$1 = /* @__PURE__ */ __commonJSMin(((exports, module) => {
};
};
module.exports = plugin;
}));
}) });
//#endregion
//#region ../../node_modules/.pnpm/string-hash@1.1.3/node_modules/string-hash/index.js
var require_string_hash = /* @__PURE__ */ __commonJSMin(((exports, module) => {
var require_string_hash = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/string-hash@1.1.3/node_modules/string-hash/index.js": ((exports, module) => {
function hash(str$1) {
var hash$1 = 5381, i$1 = str$1.length;
while (i$1) hash$1 = hash$1 * 33 ^ str$1.charCodeAt(--i$1);
return hash$1 >>> 0;
}
module.exports = hash;
}));
}) });
//#endregion
//#region ../../node_modules/.pnpm/postcss-modules-values@4.0.0_postcss@8.5.6/node_modules/postcss-modules-values/src/index.js
var require_src = /* @__PURE__ */ __commonJSMin(((exports, module) => {
var require_src = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/postcss-modules-values@4.0.0_postcss@8.5.6/node_modules/postcss-modules-values/src/index.js": ((exports, module) => {
const ICSSUtils = require_src$4();
const matchImports = /^(.+?|\([\s\S]+?\))\s+from\s+("[^"]*"|'[^']*'|[\w-]+)$/;
const matchValueDefinition = /(?:\s+|^)([\w-]+):?(.*?)$/;
@@ -5378,13 +5364,12 @@ var require_src = /* @__PURE__ */ __commonJSMin(((exports, module) => {
};
};
module.exports.postcss = true;
}));
}) });
//#endregion
//#region ../../node_modules/.pnpm/postcss-modules@6.0.1_postcss@8.5.6/node_modules/postcss-modules/build/scoping.js
var require_scoping = /* @__PURE__ */ __commonJSMin(((exports) => {
var require_scoping = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/postcss-modules@6.0.1_postcss@8.5.6/node_modules/postcss-modules/build/scoping.js": ((exports) => {
Object.defineProperty(exports, "__esModule", { value: true });
exports.behaviours = void 0;
exports.getDefaultPlugins = getDefaultPlugins;
exports.getDefaultScopeBehaviour = getDefaultScopeBehaviour;
exports.getScopedNameGenerator = getScopedNameGenerator;
@@ -5441,11 +5426,11 @@ var require_scoping = /* @__PURE__ */ __commonJSMin(((exports) => {
hashPrefix
});
}
}));
}) });
//#endregion
//#region ../../node_modules/.pnpm/postcss-modules@6.0.1_postcss@8.5.6/node_modules/postcss-modules/build/pluginFactory.js
var require_pluginFactory = /* @__PURE__ */ __commonJSMin(((exports) => {
var require_pluginFactory = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/postcss-modules@6.0.1_postcss@8.5.6/node_modules/postcss-modules/build/pluginFactory.js": ((exports) => {
Object.defineProperty(exports, "__esModule", { value: true });
exports.makePlugin = makePlugin;
var _postcss = _interopRequireDefault(__require("postcss"));
@@ -5516,11 +5501,11 @@ var require_pluginFactory = /* @__PURE__ */ __commonJSMin(((exports) => {
}
};
}
}));
}) });
//#endregion
//#region ../../node_modules/.pnpm/postcss-modules@6.0.1_postcss@8.5.6/node_modules/postcss-modules/build/index.js
var require_build = /* @__PURE__ */ __commonJSMin(((exports, module) => {
var require_build = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/postcss-modules@6.0.1_postcss@8.5.6/node_modules/postcss-modules/build/index.js": ((exports, module) => {
var _fs = __require("fs");
var _fs2 = require_fs();
var _pluginFactory = require_pluginFactory();
@@ -5530,7 +5515,7 @@ var require_build = /* @__PURE__ */ __commonJSMin(((exports, module) => {
});
module.exports = (opts = {}) => (0, _pluginFactory.makePlugin)(opts);
module.exports.postcss = true;
}));
}) });
//#endregion
export default require_build();
+9 -26
View File
@@ -7,32 +7,16 @@ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
var __getOwnPropNames = Object.getOwnPropertyNames;
var __getProtoOf = Object.getPrototypeOf;
var __hasOwnProp = Object.prototype.hasOwnProperty;
var __esmMin = (fn, res) => () => (fn && (res = fn(fn = 0)), res);
var __commonJSMin = (cb, mod) => () => (mod || cb((mod = { exports: {} }).exports, mod), mod.exports);
var __export = (all, symbols) => {
let target = {};
for (var name in all) {
__defProp(target, name, {
get: all[name],
enumerable: true
});
}
if (symbols) {
__defProp(target, Symbol.toStringTag, { value: "Module" });
}
return target;
var __commonJS = (cb, mod) => function() {
return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
};
var __copyProps = (to, from, except, desc) => {
if (from && typeof from === "object" || typeof from === "function") {
for (var keys = __getOwnPropNames(from), i = 0, n = keys.length, key; i < n; i++) {
key = keys[i];
if (!__hasOwnProp.call(to, key) && key !== except) {
__defProp(to, key, {
get: ((k) => from[k]).bind(null, key),
enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
});
}
}
if (from && typeof from === "object" || typeof from === "function") for (var keys = __getOwnPropNames(from), i = 0, n = keys.length, key; i < n; i++) {
key = keys[i];
if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
get: ((k) => from[k]).bind(null, key),
enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
});
}
return to;
};
@@ -40,9 +24,8 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
value: mod,
enumerable: true
}) : target, mod));
var __toCommonJS = (mod) => __hasOwnProp.call(mod, "module.exports") ? mod["module.exports"] : __copyProps(__defProp({}, "__esModule", { value: true }), mod);
var __toDynamicImportESM = (isNodeMode) => (mod) => __toESM(mod.default, isNodeMode);
var __require = /* @__PURE__ */ createRequire(import.meta.url);
//#endregion
export { __toCommonJS as a, __require as i, __esmMin as n, __toDynamicImportESM as o, __export as r, __toESM as s, __commonJSMin as t };
export { __commonJS, __require, __toDynamicImportESM, __toESM };
File diff suppressed because one or more lines are too long
+1 -1
View File
@@ -1,4 +1,4 @@
import "./logger.js";
import { a as resolveBaseUrl, c as sortUserPlugins, i as loadConfigFromFile, n as getDefaultEnvironmentOptions, o as resolveConfig, r as isResolvedConfig, s as resolveDevEnvironmentOptions, t as defineConfig } from "./config.js";
import { configDefaults, defineConfig, getDefaultEnvironmentOptions, isResolvedConfig, loadConfigFromFile, resolveBaseUrl, resolveConfig, resolveDevEnvironmentOptions, sortUserPlugins } from "./config.js";
export { resolveConfig };
+12 -12
View File
@@ -1,7 +1,7 @@
import { t as __commonJSMin } from "./chunk.js";
import { __commonJS } from "./chunk.js";
//#region ../../node_modules/.pnpm/postcss-value-parser@4.2.0/node_modules/postcss-value-parser/lib/parse.js
var require_parse = /* @__PURE__ */ __commonJSMin(((exports, module) => {
var require_parse = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/postcss-value-parser@4.2.0/node_modules/postcss-value-parser/lib/parse.js": ((exports, module) => {
var openParentheses = "(".charCodeAt(0);
var closeParentheses = ")".charCodeAt(0);
var singleQuote = "'".charCodeAt(0);
@@ -229,11 +229,11 @@ var require_parse = /* @__PURE__ */ __commonJSMin(((exports, module) => {
}
return stack[0].nodes;
};
}));
}) });
//#endregion
//#region ../../node_modules/.pnpm/postcss-value-parser@4.2.0/node_modules/postcss-value-parser/lib/walk.js
var require_walk = /* @__PURE__ */ __commonJSMin(((exports, module) => {
var require_walk = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/postcss-value-parser@4.2.0/node_modules/postcss-value-parser/lib/walk.js": ((exports, module) => {
module.exports = function walk$1(nodes, cb, bubble) {
var i, max, node, result;
for (i = 0, max = nodes.length; i < max; i += 1) {
@@ -243,11 +243,11 @@ var require_walk = /* @__PURE__ */ __commonJSMin(((exports, module) => {
if (bubble) cb(node, i, nodes);
}
};
}));
}) });
//#endregion
//#region ../../node_modules/.pnpm/postcss-value-parser@4.2.0/node_modules/postcss-value-parser/lib/stringify.js
var require_stringify = /* @__PURE__ */ __commonJSMin(((exports, module) => {
var require_stringify = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/postcss-value-parser@4.2.0/node_modules/postcss-value-parser/lib/stringify.js": ((exports, module) => {
function stringifyNode(node, custom) {
var type = node.type;
var value = node.value;
@@ -277,11 +277,11 @@ var require_stringify = /* @__PURE__ */ __commonJSMin(((exports, module) => {
return stringifyNode(nodes, custom);
}
module.exports = stringify$1;
}));
}) });
//#endregion
//#region ../../node_modules/.pnpm/postcss-value-parser@4.2.0/node_modules/postcss-value-parser/lib/unit.js
var require_unit = /* @__PURE__ */ __commonJSMin(((exports, module) => {
var require_unit = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/postcss-value-parser@4.2.0/node_modules/postcss-value-parser/lib/unit.js": ((exports, module) => {
var minus = "-".charCodeAt(0);
var plus = "+".charCodeAt(0);
var dot = ".".charCodeAt(0);
@@ -345,11 +345,11 @@ var require_unit = /* @__PURE__ */ __commonJSMin(((exports, module) => {
unit: value.slice(pos)
};
};
}));
}) });
//#endregion
//#region ../../node_modules/.pnpm/postcss-value-parser@4.2.0/node_modules/postcss-value-parser/lib/index.js
var require_lib = /* @__PURE__ */ __commonJSMin(((exports, module) => {
var require_lib = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/postcss-value-parser@4.2.0/node_modules/postcss-value-parser/lib/index.js": ((exports, module) => {
var parse = require_parse();
var walk = require_walk();
var stringify = require_stringify();
@@ -371,7 +371,7 @@ var require_lib = /* @__PURE__ */ __commonJSMin(((exports, module) => {
ValueParser.walk = walk;
ValueParser.stringify = stringify;
module.exports = ValueParser;
}));
}) });
//#endregion
export { require_lib as t };
export { require_lib };
+4 -13
View File
@@ -1,11 +1,11 @@
import { s as __toESM, t as __commonJSMin } from "./chunk.js";
import { __commonJS, __toESM } from "./chunk.js";
import { readFileSync } from "node:fs";
import path, { resolve } from "node:path";
import { fileURLToPath } from "node:url";
import readline from "node:readline";
//#region ../../node_modules/.pnpm/picocolors@1.1.1/node_modules/picocolors/picocolors.js
var require_picocolors = /* @__PURE__ */ __commonJSMin(((exports, module) => {
var require_picocolors = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/picocolors@1.1.1/node_modules/picocolors/picocolors.js": ((exports, module) => {
let p = process || {}, argv = p.argv || [], env = p.env || {};
let isColorSupported = !(!!env.NO_COLOR || argv.includes("--no-color")) && (!!env.FORCE_COLOR || argv.includes("--color") || p.platform === "win32" || (p.stdout || {}).isTTY && env.TERM !== "dumb" || !!env.CI);
let formatter = (open, close, replace = open) => (input) => {
@@ -70,7 +70,7 @@ var require_picocolors = /* @__PURE__ */ __commonJSMin(((exports, module) => {
};
module.exports = createColors();
module.exports.createColors = createColors;
}));
}) });
//#endregion
//#region src/node/constants.ts
@@ -127,15 +127,6 @@ const DEFAULT_CONDITIONS = [
const DEFAULT_CLIENT_CONDITIONS = Object.freeze(DEFAULT_CONDITIONS.filter((c) => c !== "node"));
const DEFAULT_SERVER_CONDITIONS = Object.freeze(DEFAULT_CONDITIONS.filter((c) => c !== "browser"));
const DEFAULT_EXTERNAL_CONDITIONS = Object.freeze(["node", "module-sync"]);
const DEFAULT_EXTENSIONS = [
".mjs",
".js",
".mts",
".ts",
".jsx",
".tsx",
".json"
];
/**
* The browser versions that are included in the Baseline Widely Available on 2025-05-01.
*
@@ -326,4 +317,4 @@ function printServerUrls(urls, optionsHost, info) {
}
//#endregion
export { OPTIMIZABLE_ENTRY_RE as A, ERR_FILE_NOT_FOUND_IN_OPTIMIZED_DEP_DIR as C, JS_TYPES_RE as D, FS_PREFIX as E, defaultAllowedOrigins as F, loopbackHosts as I, wildcardHosts as L, SPECIAL_QUERY_RE as M, VERSION as N, KNOWN_ASSET_TYPES as O, VITE_PACKAGE_DIR as P, require_picocolors as R, ENV_PUBLIC_PATH as S, ESBUILD_BASELINE_WIDELY_AVAILABLE_TARGET as T, DEFAULT_SERVER_CONDITIONS as _, CLIENT_ENTRY as a, DEV_PROD_CONDITION as b, DEFAULT_ASSETS_INLINE_LIMIT as c, DEFAULT_CLIENT_MAIN_FIELDS as d, DEFAULT_CONFIG_FILES as f, DEFAULT_PREVIEW_PORT as g, DEFAULT_EXTERNAL_CONDITIONS as h, CLIENT_DIR as i, ROLLUP_HOOKS as j, METADATA_FILENAME as k, DEFAULT_ASSETS_RE as l, DEFAULT_EXTENSIONS as m, createLogger as n, CLIENT_PUBLIC_PATH as o, DEFAULT_DEV_PORT as p, printServerUrls as r, CSS_LANGS_RE as s, LogLevels as t, DEFAULT_CLIENT_CONDITIONS as u, DEFAULT_SERVER_MAIN_FIELDS as v, ERR_OPTIMIZE_DEPS_PROCESSING_ERROR as w, ENV_ENTRY as x, DEP_VERSION_RE as y };
export { CLIENT_DIR, CLIENT_ENTRY, CLIENT_PUBLIC_PATH, CSS_LANGS_RE, DEFAULT_ASSETS_INLINE_LIMIT, DEFAULT_ASSETS_RE, DEFAULT_CLIENT_CONDITIONS, DEFAULT_CLIENT_MAIN_FIELDS, DEFAULT_CONFIG_FILES, DEFAULT_DEV_PORT, DEFAULT_EXTERNAL_CONDITIONS, DEFAULT_PREVIEW_PORT, DEFAULT_SERVER_CONDITIONS, DEFAULT_SERVER_MAIN_FIELDS, DEP_VERSION_RE, DEV_PROD_CONDITION, ENV_ENTRY, ENV_PUBLIC_PATH, ERR_FILE_NOT_FOUND_IN_OPTIMIZED_DEP_DIR, ERR_OPTIMIZE_DEPS_PROCESSING_ERROR, ESBUILD_BASELINE_WIDELY_AVAILABLE_TARGET, FS_PREFIX, JS_TYPES_RE, KNOWN_ASSET_TYPES, LogLevels, METADATA_FILENAME, OPTIMIZABLE_ENTRY_RE, ROLLUP_HOOKS, SPECIAL_QUERY_RE, VERSION, VITE_PACKAGE_DIR, createLogger, defaultAllowedOrigins, loopbackHosts, printServerUrls, require_picocolors, wildcardHosts };
@@ -8,59 +8,51 @@ interface FetchFunctionOptions {
type FetchResult = CachedFetchResult | ExternalFetchResult | ViteFetchResult;
interface CachedFetchResult {
/**
* If module cached in the runner, we can just confirm
* it wasn't invalidated on the server side.
*/
* If module cached in the runner, we can just confirm
* it wasn't invalidated on the server side.
*/
cache: true;
}
interface ExternalFetchResult {
/**
* The path to the externalized module starting with file://,
* by default this will be imported via a dynamic "import"
* instead of being transformed by vite and loaded with vite runner
*/
* The path to the externalized module starting with file://,
* by default this will be imported via a dynamic "import"
* instead of being transformed by vite and loaded with vite runner
*/
externalize: string;
/**
* Type of the module. Will be used to determine if import statement is correct.
* For example, if Vite needs to throw an error if variable is not actually exported
*/
type: "module" | "commonjs" | "builtin" | "network";
* Type of the module. Will be used to determine if import statement is correct.
* For example, if Vite needs to throw an error if variable is not actually exported
*/
type: 'module' | 'commonjs' | 'builtin' | 'network';
}
interface ViteFetchResult {
/**
* Code that will be evaluated by vite runner
* by default this will be wrapped in an async function
*/
* Code that will be evaluated by vite runner
* by default this will be wrapped in an async function
*/
code: string;
/**
* File path of the module on disk.
* This will be resolved as import.meta.url/filename
* Will be equal to `null` for virtual modules
*/
* File path of the module on disk.
* This will be resolved as import.meta.url/filename
* Will be equal to `null` for virtual modules
*/
file: string | null;
/**
* Module ID in the server module graph.
*/
* Module ID in the server module graph.
*/
id: string;
/**
* Module URL used in the import.
*/
* Module URL used in the import.
*/
url: string;
/**
* Invalidate module on the client side.
*/
* Invalidate module on the client side.
*/
invalidate: boolean;
}
type InvokeMethods = {
fetchModule: (id: string, importer?: string, options?: FetchFunctionOptions) => Promise<FetchResult>;
getBuiltins: () => Promise<Array<{
type: "string";
value: string;
} | {
type: "RegExp";
source: string;
flags: string;
}>>;
};
//#endregion
//#region src/shared/moduleRunnerTransport.d.ts
@@ -69,8 +61,8 @@ type ModuleRunnerTransportHandlers = {
onDisconnection: () => void;
};
/**
* "send and connect" or "invoke" must be implemented
*/
* "send and connect" or "invoke" must be implemented
*/
interface ModuleRunnerTransport {
connect?(handlers: ModuleRunnerTransportHandlers): Promise<void> | void;
disconnect?(): Promise<void> | void;
@@ -93,4 +85,4 @@ declare const createWebSocketModuleRunnerTransport: (options: {
pingInterval?: number;
}) => Required<Pick<ModuleRunnerTransport, "connect" | "disconnect" | "send">>;
//#endregion
export { ExternalFetchResult as a, ViteFetchResult as c, createWebSocketModuleRunnerTransport as i, ModuleRunnerTransportHandlers as n, FetchFunctionOptions as o, NormalizedModuleRunnerTransport as r, FetchResult as s, ModuleRunnerTransport as t };
export { ExternalFetchResult, FetchFunctionOptions, FetchResult, ModuleRunnerTransport, ModuleRunnerTransportHandlers, NormalizedModuleRunnerTransport, ViteFetchResult, createWebSocketModuleRunnerTransport };
@@ -1,4 +1,4 @@
import "./logger.js";
import { $ as runOptimizeDeps, B as depsLogString, F as addOptimizedDepInfo, G as initDepsOptimizerMetadata, H as extractExportsData, I as cleanupDepsCacheStaleDirs, J as optimizeDeps, K as isDepOptimizationDisabled, L as createIsOptimizedDepFile, P as addManuallyIncludedOptimizeDeps, Q as optimizedDepNeedsInterop, R as createIsOptimizedDepUrl, U as getDepsCacheDir, V as discoverProjectDependencies, W as getOptimizedDepPath, X as optimizedDepInfoFromFile, Y as optimizeExplicitEnvironmentDeps, Z as optimizedDepInfoFromId, et as toDiscoveredDependencies, q as loadCachedDepOptimizationMetadata, z as depsFromOptimizedDepInfo } from "./config.js";
import { addManuallyIncludedOptimizeDeps, addOptimizedDepInfo, cleanupDepsCacheStaleDirs, createIsOptimizedDepFile, createIsOptimizedDepUrl, depsFromOptimizedDepInfo, depsLogString, discoverProjectDependencies, extractExportsData, getDepsCacheDir, getOptimizedDepPath, initDepsOptimizerMetadata, isDepOptimizationDisabled, loadCachedDepOptimizationMetadata, optimizeDeps, optimizeExplicitEnvironmentDeps, optimizedDepInfoFromFile, optimizedDepInfoFromId, optimizedDepNeedsInterop, runOptimizeDeps, toDiscoveredDependencies } from "./config.js";
export { optimizeDeps };
@@ -1,8 +1,8 @@
import { i as __require, t as __commonJSMin } from "./chunk.js";
import { t as require_lib } from "./lib.js";
import { __commonJS, __require } from "./chunk.js";
import { require_lib } from "./lib.js";
//#region ../../node_modules/.pnpm/postcss-import@16.1.1_postcss@8.5.6/node_modules/postcss-import/lib/format-import-prelude.js
var require_format_import_prelude = /* @__PURE__ */ __commonJSMin(((exports, module) => {
var require_format_import_prelude = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/postcss-import@16.1.1_postcss@8.5.6/node_modules/postcss-import/lib/format-import-prelude.js": ((exports, module) => {
module.exports = function formatImportPrelude$2(layer, media, supports) {
const parts = [];
if (typeof layer !== "undefined") {
@@ -14,11 +14,11 @@ var require_format_import_prelude = /* @__PURE__ */ __commonJSMin(((exports, mod
if (typeof media !== "undefined") parts.push(media);
return parts.join(" ");
};
}));
}) });
//#endregion
//#region ../../node_modules/.pnpm/postcss-import@16.1.1_postcss@8.5.6/node_modules/postcss-import/lib/base64-encoded-import.js
var require_base64_encoded_import = /* @__PURE__ */ __commonJSMin(((exports, module) => {
var require_base64_encoded_import = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/postcss-import@16.1.1_postcss@8.5.6/node_modules/postcss-import/lib/base64-encoded-import.js": ((exports, module) => {
const formatImportPrelude$1 = require_format_import_prelude();
module.exports = function base64EncodedConditionalImport$1(prelude, conditions) {
if (!conditions?.length) return prelude;
@@ -28,11 +28,11 @@ var require_base64_encoded_import = /* @__PURE__ */ __commonJSMin(((exports, mod
for (const condition of conditions) params = `'data:text/css;base64,${Buffer.from(`@import ${params}`).toString("base64")}' ${formatImportPrelude$1(condition.layer, condition.media, condition.supports)}`;
return params;
};
}));
}) });
//#endregion
//#region ../../node_modules/.pnpm/postcss-import@16.1.1_postcss@8.5.6/node_modules/postcss-import/lib/apply-conditions.js
var require_apply_conditions = /* @__PURE__ */ __commonJSMin(((exports, module) => {
var require_apply_conditions = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/postcss-import@16.1.1_postcss@8.5.6/node_modules/postcss-import/lib/apply-conditions.js": ((exports, module) => {
const base64EncodedConditionalImport = require_base64_encoded_import();
module.exports = function applyConditions$1(bundle, atRule) {
const firstImportStatementIndex = bundle.findIndex((stmt) => stmt.type === "import");
@@ -104,11 +104,11 @@ var require_apply_conditions = /* @__PURE__ */ __commonJSMin(((exports, module)
delete stmt.node;
});
};
}));
}) });
//#endregion
//#region ../../node_modules/.pnpm/postcss-import@16.1.1_postcss@8.5.6/node_modules/postcss-import/lib/apply-raws.js
var require_apply_raws = /* @__PURE__ */ __commonJSMin(((exports, module) => {
var require_apply_raws = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/postcss-import@16.1.1_postcss@8.5.6/node_modules/postcss-import/lib/apply-raws.js": ((exports, module) => {
module.exports = function applyRaws$1(bundle) {
bundle.forEach((stmt, index) => {
if (index === 0) return;
@@ -119,11 +119,11 @@ var require_apply_raws = /* @__PURE__ */ __commonJSMin(((exports, module) => {
} else if (stmt.type === "nodes") stmt.nodes[0].raws.before = stmt.nodes[0].raws.before || "\n";
});
};
}));
}) });
//#endregion
//#region ../../node_modules/.pnpm/postcss-import@16.1.1_postcss@8.5.6/node_modules/postcss-import/lib/apply-styles.js
var require_apply_styles = /* @__PURE__ */ __commonJSMin(((exports, module) => {
var require_apply_styles = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/postcss-import@16.1.1_postcss@8.5.6/node_modules/postcss-import/lib/apply-styles.js": ((exports, module) => {
module.exports = function applyStyles$1(bundle, styles) {
styles.nodes = [];
bundle.forEach((stmt) => {
@@ -140,11 +140,11 @@ var require_apply_styles = /* @__PURE__ */ __commonJSMin(((exports, module) => {
});
});
};
}));
}) });
//#endregion
//#region ../../node_modules/.pnpm/postcss-import@16.1.1_postcss@8.5.6/node_modules/postcss-import/lib/data-url.js
var require_data_url = /* @__PURE__ */ __commonJSMin(((exports, module) => {
var require_data_url = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/postcss-import@16.1.1_postcss@8.5.6/node_modules/postcss-import/lib/data-url.js": ((exports, module) => {
const anyDataURLRegexp = /^data:text\/css(?:;(base64|plain))?,/i;
const base64DataURLRegexp = /^data:text\/css;base64,/i;
const plainDataURLRegexp = /^data:text\/css;plain,/i;
@@ -160,11 +160,11 @@ var require_data_url = /* @__PURE__ */ __commonJSMin(((exports, module) => {
isValid,
contents
};
}));
}) });
//#endregion
//#region ../../node_modules/.pnpm/postcss-import@16.1.1_postcss@8.5.6/node_modules/postcss-import/lib/parse-statements.js
var require_parse_statements = /* @__PURE__ */ __commonJSMin(((exports, module) => {
var require_parse_statements = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/postcss-import@16.1.1_postcss@8.5.6/node_modules/postcss-import/lib/parse-statements.js": ((exports, module) => {
const valueParser = require_lib();
const { stringify } = valueParser;
module.exports = function parseStatements$1(result, styles, conditions, from) {
@@ -286,11 +286,11 @@ var require_parse_statements = /* @__PURE__ */ __commonJSMin(((exports, module)
from
};
}
}));
}) });
//#endregion
//#region ../../node_modules/.pnpm/postcss-import@16.1.1_postcss@8.5.6/node_modules/postcss-import/lib/process-content.js
var require_process_content = /* @__PURE__ */ __commonJSMin(((exports, module) => {
var require_process_content = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/postcss-import@16.1.1_postcss@8.5.6/node_modules/postcss-import/lib/process-content.js": ((exports, module) => {
const path$2 = __require("path");
let sugarss;
module.exports = function processContent$1(result, content, filename, options, postcss) {
@@ -321,11 +321,11 @@ var require_process_content = /* @__PURE__ */ __commonJSMin(((exports, module) =
return runPostcss(postcss, content, filename, plugins, parsers, index);
});
}
}));
}) });
//#endregion
//#region ../../node_modules/.pnpm/postcss-import@16.1.1_postcss@8.5.6/node_modules/postcss-import/lib/parse-styles.js
var require_parse_styles = /* @__PURE__ */ __commonJSMin(((exports, module) => {
var require_parse_styles = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/postcss-import@16.1.1_postcss@8.5.6/node_modules/postcss-import/lib/parse-styles.js": ((exports, module) => {
const path$1 = __require("path");
const dataURL = require_data_url();
const parseStatements = require_parse_statements();
@@ -425,11 +425,11 @@ var require_parse_styles = /* @__PURE__ */ __commonJSMin(((exports, module) => {
return true;
}
module.exports = parseStyles$1;
}));
}) });
//#endregion
//#region ../../node_modules/.pnpm/postcss-import@16.1.1_postcss@8.5.6/node_modules/postcss-import/index.js
var require_postcss_import = /* @__PURE__ */ __commonJSMin(((exports, module) => {
var require_postcss_import = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/postcss-import@16.1.1_postcss@8.5.6/node_modules/postcss-import/index.js": ((exports, module) => {
const path = __require("path");
const applyConditions = require_apply_conditions();
const applyRaws = require_apply_raws();
@@ -471,7 +471,7 @@ var require_postcss_import = /* @__PURE__ */ __commonJSMin(((exports, module) =>
}
AtImport.postcss = true;
module.exports = AtImport;
}));
}) });
//#endregion
export default require_postcss_import();
+1 -1
View File
@@ -1,4 +1,4 @@
import "./logger.js";
import { d as resolvePreviewOptions, u as preview } from "./config.js";
import { preview, resolvePreviewOptions } from "./config.js";
export { preview };
+1 -1
View File
@@ -1,4 +1,4 @@
import "./logger.js";
import { at as _createServer, ct as resolveServerOptions, lt as restartServerWithUrls, ot as createServer, st as createServerCloseFn, ut as serverConfigDefaults } from "./config.js";
import { _createServer, createServer, createServerCloseFn, resolveServerOptions, restartServerWithUrls, serverConfigDefaults } from "./config.js";
export { createServer };
+2 -2
View File
@@ -1,5 +1,5 @@
import { s as __toESM } from "./chunks/chunk.js";
import { N as VERSION, R as require_picocolors, n as createLogger } from "./chunks/logger.js";
import { __toESM } from "./chunks/chunk.js";
import { VERSION, createLogger, require_picocolors } from "./chunks/logger.js";
import fs from "node:fs";
import path from "node:path";
import { performance } from "node:perf_hooks";
File diff suppressed because it is too large Load Diff
+2 -2
View File
@@ -1,5 +1,5 @@
import { F as defaultAllowedOrigins, N as VERSION, _ as DEFAULT_SERVER_CONDITIONS, d as DEFAULT_CLIENT_MAIN_FIELDS, h as DEFAULT_EXTERNAL_CONDITIONS, n as createLogger, u as DEFAULT_CLIENT_CONDITIONS, v as DEFAULT_SERVER_MAIN_FIELDS } from "./chunks/logger.js";
import { Ct as perEnvironmentPlugin, Dt as mergeConfig, Et as mergeAlias, J as optimizeDeps, Ot as normalizePath, St as perEnvironmentState, Tt as isCSSRequest, _ as build, _t as createServerModuleRunnerTransport, b as createBuilder, bt as resolveEnvPrefix, c as sortUserPlugins, dt as searchForWorkspaceRoot, f as createRunnableDevEnvironment, ft as isFileLoadingAllowed, g as BuildEnvironment, gt as createServerModuleRunner, h as fetchModule, ht as ssrTransform, i as loadConfigFromFile, it as createServerHotChannel, kt as rollupVersion, l as runnerImport, m as DevEnvironment, mt as send, nt as preprocessCSS, o as resolveConfig, ot as createServer, p as isRunnableDevEnvironment, pt as isFileServingAllowed, rt as createIdResolver, t as defineConfig, tt as formatPostcssSourceMap, u as preview, vt as buildErrorMessage, wt as createFilter, xt as transformWithEsbuild, yt as loadEnv } from "./chunks/config.js";
import { DEFAULT_CLIENT_CONDITIONS, DEFAULT_CLIENT_MAIN_FIELDS, DEFAULT_EXTERNAL_CONDITIONS, DEFAULT_SERVER_CONDITIONS, DEFAULT_SERVER_MAIN_FIELDS, VERSION, createLogger, defaultAllowedOrigins } from "./chunks/logger.js";
import { BuildEnvironment, DevEnvironment, build, buildErrorMessage, createBuilder, createFilter, createIdResolver, createRunnableDevEnvironment, createServer, createServerHotChannel, createServerModuleRunner, createServerModuleRunnerTransport, defineConfig, fetchModule, formatPostcssSourceMap, isCSSRequest, isFileLoadingAllowed, isFileServingAllowed, isRunnableDevEnvironment, loadConfigFromFile, loadEnv, mergeAlias, mergeConfig, normalizePath, optimizeDeps, perEnvironmentPlugin, perEnvironmentState, preprocessCSS, preview, resolveConfig, resolveEnvPrefix, rollupVersion, runnerImport, searchForWorkspaceRoot, send, sortUserPlugins, ssrTransform, transformWithEsbuild } from "./chunks/config.js";
import { parseAst, parseAstAsync } from "rollup/parseAst";
import { version as esbuildVersion } from "esbuild";
+78 -82
View File
@@ -1,4 +1,4 @@
import { a as ExternalFetchResult, c as ViteFetchResult, i as createWebSocketModuleRunnerTransport, n as ModuleRunnerTransportHandlers, o as FetchFunctionOptions, r as NormalizedModuleRunnerTransport, s as FetchResult, t as ModuleRunnerTransport } from "./chunks/moduleRunnerTransport.js";
import { ExternalFetchResult, FetchFunctionOptions, FetchResult, ModuleRunnerTransport, ModuleRunnerTransportHandlers, NormalizedModuleRunnerTransport, ViteFetchResult, createWebSocketModuleRunnerTransport } from "./chunks/moduleRunnerTransport.js";
import { ModuleNamespace, ViteHotContext } from "#types/hot";
import { HotPayload, Update } from "#types/hmrPayload";
import { InferCustomEventPayload } from "#types/customEvent";
@@ -17,7 +17,6 @@ declare class DecodedMap {
_decoded: undefined | number[][][];
_decodedMemo: Stats;
url: string;
file: string;
version: number;
names: string[];
resolvedSources: string[];
@@ -63,10 +62,10 @@ declare class HMRClient {
private updateQueue;
private pendingUpdateQueue;
/**
* buffer multiple hot updates triggered by the same src change
* so that they are invoked in the same order they were sent.
* (otherwise the order may be inconsistent because of the http request round trip)
*/
* buffer multiple hot updates triggered by the same src change
* so that they are invoked in the same order they were sent.
* (otherwise the order may be inconsistent because of the http request round trip)
*/
queueUpdate(payload: Update): Promise<void>;
private fetchUpdate;
}
@@ -74,14 +73,14 @@ declare class HMRClient {
//#region src/shared/ssrTransform.d.ts
interface DefineImportMetadata {
/**
* Imported names before being transformed to `ssrImportKey`
*
* import foo, { bar as baz, qux } from 'hello'
* => ['default', 'bar', 'qux']
*
* import * as namespace from 'world
* => undefined
*/
* Imported names before being transformed to `ssrImportKey`
*
* import foo, { bar as baz, qux } from 'hello'
* => ['default', 'bar', 'qux']
*
* import * as namespace from 'world
* => undefined
*/
importedNames?: string[];
}
interface SSRImportMetadata extends DefineImportMetadata {
@@ -109,33 +108,30 @@ declare class ModuleRunner {
private readonly transport;
private readonly resetSourceMapSupport?;
private readonly concurrentModuleNodePromises;
private isBuiltin?;
private builtinsPromise?;
private closed;
constructor(options: ModuleRunnerOptions, evaluator?: ModuleEvaluator, debug?: ModuleRunnerDebugger | undefined);
/**
* URL to execute. Accepts file path, server path or id relative to the root.
*/
* URL to execute. Accepts file path, server path or id relative to the root.
*/
import<T = any>(url: string): Promise<T>;
/**
* Clear all caches including HMR listeners.
*/
* Clear all caches including HMR listeners.
*/
clearCache(): void;
/**
* Clears all caches, removes all HMR listeners, and resets source map support.
* This method doesn't stop the HMR connection.
*/
* Clears all caches, removes all HMR listeners, and resets source map support.
* This method doesn't stop the HMR connection.
*/
close(): Promise<void>;
/**
* Returns `true` if the runtime has been closed by calling `close()` method.
*/
* Returns `true` if the runtime has been closed by calling `close()` method.
*/
isClosed(): boolean;
private processImport;
private isCircularModule;
private isCircularImport;
private cachedRequest;
private cachedModule;
private ensureBuiltins;
private getModuleInformation;
protected directRequest(url: string, mod: EvaluatedModuleNode, _callstack: string[]): Promise<any>;
}
@@ -172,20 +168,20 @@ interface ModuleRunnerContext {
}
interface ModuleEvaluator {
/**
* Number of prefixed lines in the transformed code.
*/
* Number of prefixed lines in the transformed code.
*/
startOffset?: number;
/**
* Run code that was transformed by Vite.
* @param context Function context
* @param code Transformed code
* @param module The module node
*/
* Run code that was transformed by Vite.
* @param context Function context
* @param code Transformed code
* @param module The module node
*/
runInlinedModule(context: ModuleRunnerContext, code: string, module: Readonly<EvaluatedModuleNode>): Promise<any>;
/**
* Run externalized module.
* @param file File URL to the external module
*/
* Run externalized module.
* @param file File URL to the external module
*/
runExternalModule(file: string): Promise<any>;
}
type ResolvedResult = (ExternalFetchResult | ViteFetchResult) & {
@@ -195,36 +191,36 @@ type ResolvedResult = (ExternalFetchResult | ViteFetchResult) & {
type FetchFunction = (id: string, importer?: string, options?: FetchFunctionOptions) => Promise<FetchResult>;
interface ModuleRunnerHmr {
/**
* Configure HMR logger.
*/
* Configure HMR logger.
*/
logger?: false | HMRLogger;
}
interface ModuleRunnerOptions {
/**
* A set of methods to communicate with the server.
*/
* A set of methods to communicate with the server.
*/
transport: ModuleRunnerTransport;
/**
* Configure how source maps are resolved. Prefers `node` if `process.setSourceMapsEnabled` is available.
* Otherwise it will use `prepareStackTrace` by default which overrides `Error.prepareStackTrace` method.
* You can provide an object to configure how file contents and source maps are resolved for files that were not processed by Vite.
*/
sourcemapInterceptor?: false | "node" | "prepareStackTrace" | InterceptorOptions;
* Configure how source maps are resolved. Prefers `node` if `process.setSourceMapsEnabled` is available.
* Otherwise it will use `prepareStackTrace` by default which overrides `Error.prepareStackTrace` method.
* You can provide an object to configure how file contents and source maps are resolved for files that were not processed by Vite.
*/
sourcemapInterceptor?: false | 'node' | 'prepareStackTrace' | InterceptorOptions;
/**
* Disable HMR or configure HMR options.
*
* @default true
*/
* Disable HMR or configure HMR options.
*
* @default true
*/
hmr?: boolean | ModuleRunnerHmr;
/**
* Create import.meta object for the module.
*
* @default createDefaultImportMeta
*/
* Create import.meta object for the module.
*
* @default createDefaultImportMeta
*/
createImportMeta?: (modulePath: string) => ModuleRunnerImportMeta | Promise<ModuleRunnerImportMeta>;
/**
* Custom module cache. If not provided, creates a separate module cache for each ModuleRunner instance.
*/
* Custom module cache. If not provided, creates a separate module cache for each ModuleRunner instance.
*/
evaluatedModules?: EvaluatedModules;
}
interface ImportMetaEnv {
@@ -255,40 +251,40 @@ declare class EvaluatedModules {
readonly fileToModulesMap: Map<string, Set<EvaluatedModuleNode>>;
readonly urlToIdModuleMap: Map<string, EvaluatedModuleNode>;
/**
* Returns the module node by the resolved module ID. Usually, module ID is
* the file system path with query and/or hash. It can also be a virtual module.
*
* Module runner graph will have 1 to 1 mapping with the server module graph.
* @param id Resolved module ID
*/
* Returns the module node by the resolved module ID. Usually, module ID is
* the file system path with query and/or hash. It can also be a virtual module.
*
* Module runner graph will have 1 to 1 mapping with the server module graph.
* @param id Resolved module ID
*/
getModuleById(id: string): EvaluatedModuleNode | undefined;
/**
* Returns all modules related to the file system path. Different modules
* might have different query parameters or hash, so it's possible to have
* multiple modules for the same file.
* @param file The file system path of the module
*/
* Returns all modules related to the file system path. Different modules
* might have different query parameters or hash, so it's possible to have
* multiple modules for the same file.
* @param file The file system path of the module
*/
getModulesByFile(file: string): Set<EvaluatedModuleNode> | undefined;
/**
* Returns the module node by the URL that was used in the import statement.
* Unlike module graph on the server, the URL is not resolved and is used as is.
* @param url Server URL that was used in the import statement
*/
* Returns the module node by the URL that was used in the import statement.
* Unlike module graph on the server, the URL is not resolved and is used as is.
* @param url Server URL that was used in the import statement
*/
getModuleByUrl(url: string): EvaluatedModuleNode | undefined;
/**
* Ensure that module is in the graph. If the module is already in the graph,
* it will return the existing module node. Otherwise, it will create a new
* module node and add it to the graph.
* @param id Resolved module ID
* @param url URL that was used in the import statement
*/
* Ensure that module is in the graph. If the module is already in the graph,
* it will return the existing module node. Otherwise, it will create a new
* module node and add it to the graph.
* @param id Resolved module ID
* @param url URL that was used in the import statement
*/
ensureModule(id: string, url: string): EvaluatedModuleNode;
invalidateModule(node: EvaluatedModuleNode): void;
/**
* Extracts the inlined source map from the module code and returns the decoded
* source map. If the source map is not inlined, it will return null.
* @param id Resolved module ID
*/
* Extracts the inlined source map from the module code and returns the decoded
* source map. If the source map is not inlined, it will return null.
* @param id Resolved module ID
*/
getModuleSourceMapById(id: string): DecodedMap | null;
clear(): void;
}
@@ -304,8 +300,8 @@ declare class ESModulesEvaluator implements ModuleEvaluator {
//#region src/module-runner/createImportMeta.d.ts
declare function createDefaultImportMeta(modulePath: string): ModuleRunnerImportMeta;
/**
* Create import.meta object for Node.js.
*/
* Create import.meta object for Node.js.
*/
declare function createNodeImportMeta(modulePath: string): Promise<ModuleRunnerImportMeta>;
//#endregion
export { ESModulesEvaluator, type EvaluatedModuleNode, EvaluatedModules, type FetchFunction, type FetchFunctionOptions, type FetchResult, type HMRLogger, type InterceptorOptions, type ModuleEvaluator, ModuleRunner, type ModuleRunnerContext, type ModuleRunnerHmr, type ModuleRunnerImportMeta, type ModuleRunnerOptions, type ModuleRunnerTransport, type ModuleRunnerTransportHandlers, type ResolvedResult, type SSRImportMetadata, createDefaultImportMeta, createNodeImportMeta, createWebSocketModuleRunnerTransport, normalizeModuleId, ssrDynamicImportKey, ssrExportAllKey, ssrExportNameKey, ssrImportKey, ssrImportMetaKey, ssrModuleExportsKey };
+13 -47
View File
@@ -216,16 +216,13 @@ var DecodedMap = class {
_decoded;
_decodedMemo;
url;
file;
version;
names = [];
resolvedSources;
constructor(map, from) {
this.map = map;
let { mappings, names, sources } = map;
this.version = map.version, this.names = names || [], this._encoded = mappings || "", this._decodedMemo = memoizedState(), this.url = from, this.file = from;
let originDir = posixDirname(from);
this.resolvedSources = (sources || []).map((s) => posixResolve(originDir, s || ""));
this.version = map.version, this.names = names || [], this._encoded = mappings || "", this._decodedMemo = memoizedState(), this.url = from, this.resolvedSources = (sources || []).map((s) => posixResolve(s || "", from));
}
};
function memoizedState() {
@@ -622,12 +619,7 @@ const createInvokeableTransport = (transport) => {
ws.send(JSON.stringify(data));
}
};
};
function createIsBuiltin(builtins) {
let plainBuiltinsSet = new Set(builtins.filter((builtin) => typeof builtin == "string")), regexBuiltins = builtins.filter((builtin) => typeof builtin != "string");
return (id) => plainBuiltinsSet.has(id) || regexBuiltins.some((regexp) => regexp.test(id));
}
const ssrModuleExportsKey = "__vite_ssr_exports__", ssrImportKey = "__vite_ssr_import__", ssrDynamicImportKey = "__vite_ssr_dynamic_import__", ssrExportAllKey = "__vite_ssr_exportAll__", ssrExportNameKey = "__vite_ssr_exportName__", ssrImportMetaKey = "__vite_ssr_import_meta__", noop = () => {}, silentConsole = {
}, ssrModuleExportsKey = "__vite_ssr_exports__", ssrImportKey = "__vite_ssr_import__", ssrDynamicImportKey = "__vite_ssr_dynamic_import__", ssrExportAllKey = "__vite_ssr_exportAll__", ssrExportNameKey = "__vite_ssr_exportName__", ssrImportMetaKey = "__vite_ssr_import_meta__", noop = () => {}, silentConsole = {
debug: noop,
error: noop
}, hmrLogger = {
@@ -925,17 +917,11 @@ export async function resolve(specifier, context, nextResolve) {
specifier = parsedSpecifier
context.parentURL = parsedImporter
}
return nextResolve(specifier, context)
}
`;
function customizationHookResolve(specifier, context, nextResolve) {
if (specifier.startsWith(customizationHookNamespace)) {
let data = specifier.slice(42), [parsedSpecifier, parsedImporter] = JSON.parse(data);
specifier = parsedSpecifier, context.parentURL = parsedImporter;
}
return nextResolve(specifier, context);
}
async function createImportMetaResolver() {
let module;
try {
@@ -943,24 +929,17 @@ async function createImportMetaResolver() {
} catch {
return;
}
if (module) {
if (module.registerHooks) return module.registerHooks({ resolve: customizationHookResolve }), importMetaResolveWithCustomHook;
if (module.register) {
try {
let hookModuleContent = `data:text/javascript,${encodeURI(customizationHooksModule)}`;
module.register(hookModuleContent);
} catch (e) {
if ("code" in e && e.code === "ERR_NETWORK_IMPORT_DISALLOWED") return;
throw e;
}
return importMetaResolveWithCustomHook;
if (module?.register) {
try {
let hookModuleContent = `data:text/javascript,${encodeURI(customizationHooksModule)}`;
module.register(hookModuleContent);
} catch (e) {
if ("code" in e && e.code === "ERR_NETWORK_IMPORT_DISALLOWED") return;
throw e;
}
return (specifier, importer) => import.meta.resolve(`${customizationHookNamespace}${JSON.stringify([specifier, importer])}`);
}
}
function importMetaResolveWithCustomHook(specifier, importer) {
return import.meta.resolve(`${customizationHookNamespace}${JSON.stringify([specifier, importer])}`);
}
`${customizationHookNamespace}`;
const envProxy = new Proxy({}, { get(_, p) {
throw Error(`[module runner] Dynamic access of "import.meta.env" is not supported. Please, use "import.meta.env.${String(p)}" instead.`);
} });
@@ -998,8 +977,6 @@ var ModuleRunner = class {
transport;
resetSourceMapSupport;
concurrentModuleNodePromises = /* @__PURE__ */ new Map();
isBuiltin;
builtinsPromise;
closed = !1;
constructor(options, evaluator = new ESModulesEvaluator(), debug) {
if (this.options = options, this.evaluator = evaluator, this.debug = debug, this.evaluatedModules = options.evaluatedModules ?? new EvaluatedModules(), this.transport = normalizeModuleRunnerTransport(options.transport), options.hmr !== !1) {
@@ -1066,21 +1043,10 @@ var ModuleRunner = class {
}
return cached;
}
ensureBuiltins() {
if (!this.isBuiltin) return this.builtinsPromise ??= (async () => {
try {
this.debug?.("[module runner] fetching builtins from server");
let builtins = (await this.transport.invoke("getBuiltins", [])).map((builtin) => typeof builtin == "object" && builtin && "type" in builtin ? builtin.type === "string" ? builtin.value : new RegExp(builtin.source, builtin.flags) : builtin);
this.isBuiltin = createIsBuiltin(builtins), this.debug?.("[module runner] builtins loaded:", builtins);
} finally {
this.builtinsPromise = void 0;
}
})(), this.builtinsPromise;
}
async getModuleInformation(url, importer, cachedModule) {
if (this.closed) throw Error("Vite module runner has been closed.");
await this.ensureBuiltins(), this.debug?.("[module runner] fetching", url);
let isCached = !!(typeof cachedModule == "object" && cachedModule.meta), fetchedModule = url.startsWith("data:") || this.isBuiltin?.(url) ? {
this.debug?.("[module runner] fetching", url);
let isCached = !!(typeof cachedModule == "object" && cachedModule.meta), fetchedModule = url.startsWith("data:") ? {
externalize: url,
type: "builtin"
} : await this.transport.invoke("fetchModule", [
@@ -8,7 +8,7 @@ A fast and minimal alternative to globby and fast-glob, meant to behave the same
Both globby and fast-glob present some behavior no other globbing lib has,
which makes it hard to manually replace with something smaller and better.
This library uses only two subdependencies, compared to `globby`'s [23](https://npmgraph.js.org/?q=globby@16.2.0)
This library uses only two subdependencies, compared to `globby`'s [23](https://npmgraph.js.org/?q=globby@14.1.0)
and `fast-glob`'s [17](https://npmgraph.js.org/?q=fast-glob@3.3.3).
## Usage
@@ -1,5 +1,4 @@
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
//#region \0rolldown/runtime.js
//#region rolldown:runtime
var __create = Object.create;
var __defProp = Object.defineProperty;
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
@@ -20,45 +19,51 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
value: mod,
enumerable: true
}) : target, mod));
//#endregion
let fs = require("fs");
fs = __toESM(fs);
let path = require("path");
path = __toESM(path);
let url = require("url");
url = __toESM(url);
let fdir = require("fdir");
fdir = __toESM(fdir);
let picomatch = require("picomatch");
picomatch = __toESM(picomatch);
//#region src/utils.ts
const isReadonlyArray = Array.isArray;
const BACKSLASHES = /\\/g;
const isWin = process.platform === "win32";
const ONLY_PARENT_DIRECTORIES = /^(\/?\.\.)+$/;
function getPartialMatcher(patterns, options = {}) {
const patternsCount = patterns.length;
const patternsParts = Array(patternsCount);
const matchers = Array(patternsCount);
let i, j;
for (i = 0; i < patternsCount; i++) {
const globstarEnabled = !options.noglobstar;
for (let i = 0; i < patternsCount; i++) {
const parts = splitPattern(patterns[i]);
patternsParts[i] = parts;
const partsCount = parts.length;
const partMatchers = Array(partsCount);
for (j = 0; j < partsCount; j++) partMatchers[j] = (0, picomatch.default)(parts[j], options);
for (let j = 0; j < partsCount; j++) partMatchers[j] = (0, picomatch.default)(parts[j], options);
matchers[i] = partMatchers;
}
return (input) => {
const inputParts = input.split("/");
if (inputParts[0] === ".." && ONLY_PARENT_DIRECTORIES.test(input)) return true;
for (i = 0; i < patternsCount; i++) {
for (let i = 0; i < patterns.length; i++) {
const patternParts = patternsParts[i];
const matcher = matchers[i];
const inputPatternCount = inputParts.length;
const minParts = Math.min(inputPatternCount, patternParts.length);
j = 0;
let j = 0;
while (j < minParts) {
const part = patternParts[j];
if (part.includes("/")) return true;
if (!matcher[j](inputParts[j])) break;
if (!options.noglobstar && part === "**") return true;
const match = matcher[j](inputParts[j]);
if (!match) break;
if (globstarEnabled && part === "**") return true;
j++;
}
if (j === inputPatternCount) return true;
@@ -72,7 +77,7 @@ const isRoot = isWin ? (p) => WIN32_ROOT_DIR.test(p) : (p) => p === "/";
function buildFormat(cwd, root, absolute) {
if (cwd === root || root.startsWith(`${cwd}/`)) {
if (absolute) {
const start = cwd.length + +!isRoot(cwd);
const start = isRoot(cwd) ? cwd.length : cwd.length + 1;
return (p, isDir) => p.slice(start, isDir ? -1 : void 0) || ".";
}
const prefix = root.slice(cwd.length + 1);
@@ -93,21 +98,22 @@ function buildRelative(cwd, root) {
}
return (p) => {
const result = path.posix.relative(cwd, `${root}/${p}`);
return p[p.length - 1] === "/" && result !== "" ? `${result}/` : result || ".";
if (p.endsWith("/") && result !== "") return `${result}/`;
return result || ".";
};
}
const splitPatternOptions = { parts: true };
function splitPattern(path$1) {
function splitPattern(path$2) {
var _result$parts;
const result = picomatch.default.scan(path$1, splitPatternOptions);
return ((_result$parts = result.parts) === null || _result$parts === void 0 ? void 0 : _result$parts.length) ? result.parts : [path$1];
const result = picomatch.default.scan(path$2, splitPatternOptions);
return ((_result$parts = result.parts) === null || _result$parts === void 0 ? void 0 : _result$parts.length) ? result.parts : [path$2];
}
const ESCAPED_WIN32_BACKSLASHES = /\\(?![()[\]{}!+@])/g;
function convertPosixPathToPattern(path$2) {
return escapePosixPath(path$2);
}
function convertWin32PathToPattern(path$3) {
return escapeWin32Path(path$3).replace(ESCAPED_WIN32_BACKSLASHES, "/");
function convertWin32PathToPattern(path$2) {
return escapeWin32Path(path$2).replace(ESCAPED_WIN32_BACKSLASHES, "/");
}
/**
* Converts a path to a pattern depending on the platform.
@@ -118,8 +124,8 @@ function convertWin32PathToPattern(path$3) {
const convertPathToPattern = isWin ? convertWin32PathToPattern : convertPosixPathToPattern;
const POSIX_UNESCAPED_GLOB_SYMBOLS = /(?<!\\)([()[\]{}*?|]|^!|[!+@](?=\()|\\(?![()[\]{}!*+?@|]))/g;
const WIN32_UNESCAPED_GLOB_SYMBOLS = /(?<!\\)([()[\]{}]|^!|[!+@](?=\())/g;
const escapePosixPath = (path$4) => path$4.replace(POSIX_UNESCAPED_GLOB_SYMBOLS, "\\$&");
const escapeWin32Path = (path$5) => path$5.replace(WIN32_UNESCAPED_GLOB_SYMBOLS, "\\$&");
const escapePosixPath = (path$2) => path$2.replace(POSIX_UNESCAPED_GLOB_SYMBOLS, "\\$&");
const escapeWin32Path = (path$2) => path$2.replace(WIN32_UNESCAPED_GLOB_SYMBOLS, "\\$&");
/**
* Escapes a path's special characters depending on the platform.
* @see {@link https://superchupu.dev/tinyglobby/documentation#escapePath}
@@ -146,33 +152,31 @@ function isDynamicPattern(pattern, options) {
function log(...tasks) {
console.log(`[tinyglobby ${(/* @__PURE__ */ new Date()).toLocaleTimeString("es")}]`, ...tasks);
}
function ensureStringArray(value) {
return typeof value === "string" ? [value] : value !== null && value !== void 0 ? value : [];
}
//#endregion
//#region src/patterns.ts
//#region src/index.ts
const PARENT_DIRECTORY = /^(\/?\.\.)+/;
const ESCAPING_BACKSLASHES = /\\(?=[()[\]{}!*+?@|])/g;
function normalizePattern(pattern, opts, props, isIgnore) {
var _PARENT_DIRECTORY$exe;
const cwd = opts.cwd;
const BACKSLASHES = /\\/g;
function normalizePattern(pattern, expandDirectories, cwd, props, isIgnore) {
let result = pattern;
if (pattern[pattern.length - 1] === "/") result = pattern.slice(0, -1);
if (result[result.length - 1] !== "*" && opts.expandDirectories) result += "/**";
if (pattern.endsWith("/")) result = pattern.slice(0, -1);
if (!result.endsWith("*") && expandDirectories) result += "/**";
const escapedCwd = escapePath(cwd);
result = (0, path.isAbsolute)(result.replace(ESCAPING_BACKSLASHES, "")) ? path.posix.relative(escapedCwd, result) : path.posix.normalize(result);
const parentDir = (_PARENT_DIRECTORY$exe = PARENT_DIRECTORY.exec(result)) === null || _PARENT_DIRECTORY$exe === void 0 ? void 0 : _PARENT_DIRECTORY$exe[0];
if (path.default.isAbsolute(result.replace(ESCAPING_BACKSLASHES, ""))) result = path.posix.relative(escapedCwd, result);
else result = path.posix.normalize(result);
const parentDirectoryMatch = PARENT_DIRECTORY.exec(result);
const parts = splitPattern(result);
if (parentDir) {
const n = (parentDir.length + 1) / 3;
if (parentDirectoryMatch === null || parentDirectoryMatch === void 0 ? void 0 : parentDirectoryMatch[0]) {
const n = (parentDirectoryMatch[0].length + 1) / 3;
let i = 0;
const cwdParts = escapedCwd.split("/");
while (i < n && parts[i + n] === cwdParts[cwdParts.length + i - n]) {
result = result.slice(0, (n - i - 1) * 3) + result.slice((n - i) * 3 + parts[i + n].length + 1) || ".";
i++;
}
const potentialRoot = path.posix.join(cwd, parentDir.slice(i * 3));
if (potentialRoot[0] !== "." && props.root.length > potentialRoot.length) {
const potentialRoot = path.posix.join(cwd, parentDirectoryMatch[0].slice(i * 3));
if (!potentialRoot.startsWith(".") && props.root.length > potentialRoot.length) {
props.root = potentialRoot;
props.depthOffset = -n + i;
}
@@ -188,7 +192,7 @@ function normalizePattern(pattern, opts, props, isIgnore) {
newCommonPath.pop();
break;
}
if (i === parts.length - 1 || part !== props.commonPath[i] || isDynamicPattern(part)) break;
if (part !== props.commonPath[i] || isDynamicPattern(part) || i === parts.length - 1) break;
newCommonPath.push(part);
}
props.depthOffset = newCommonPath.length;
@@ -197,138 +201,150 @@ function normalizePattern(pattern, opts, props, isIgnore) {
}
return result;
}
function processPatterns(options, patterns, props) {
function processPatterns({ patterns = ["**/*"], ignore = [], expandDirectories = true }, cwd, props) {
if (typeof patterns === "string") patterns = [patterns];
if (typeof ignore === "string") ignore = [ignore];
const matchPatterns = [];
const ignorePatterns = [];
for (const pattern of options.ignore) {
for (const pattern of ignore) {
if (!pattern) continue;
if (pattern[0] !== "!" || pattern[1] === "(") ignorePatterns.push(normalizePattern(pattern, options, props, true));
if (pattern[0] !== "!" || pattern[1] === "(") ignorePatterns.push(normalizePattern(pattern, expandDirectories, cwd, props, true));
}
for (const pattern of patterns) {
if (!pattern) continue;
if (pattern[0] !== "!" || pattern[1] === "(") matchPatterns.push(normalizePattern(pattern, options, props, false));
else if (pattern[1] !== "!" || pattern[2] === "(") ignorePatterns.push(normalizePattern(pattern.slice(1), options, props, true));
if (pattern[0] !== "!" || pattern[1] === "(") matchPatterns.push(normalizePattern(pattern, expandDirectories, cwd, props, false));
else if (pattern[1] !== "!" || pattern[2] === "(") ignorePatterns.push(normalizePattern(pattern.slice(1), expandDirectories, cwd, props, true));
}
return {
match: matchPatterns,
ignore: ignorePatterns
};
}
//#endregion
//#region src/crawler.ts
function buildCrawler(options, patterns) {
const cwd = options.cwd;
function formatPaths(paths, relative) {
for (let i = paths.length - 1; i >= 0; i--) {
const path$2 = paths[i];
paths[i] = relative(path$2);
}
return paths;
}
function normalizeCwd(cwd) {
if (!cwd) return process.cwd().replace(BACKSLASHES, "/");
if (cwd instanceof URL) return (0, url.fileURLToPath)(cwd).replace(BACKSLASHES, "/");
return path.default.resolve(cwd).replace(BACKSLASHES, "/");
}
function getCrawler(patterns, inputOptions = {}) {
const options = process.env.TINYGLOBBY_DEBUG ? {
...inputOptions,
debug: true
} : inputOptions;
const cwd = normalizeCwd(options.cwd);
if (options.debug) log("globbing with:", {
patterns,
options,
cwd
});
if (Array.isArray(patterns) && patterns.length === 0) return [{
sync: () => [],
withPromise: async () => []
}, false];
const props = {
root: cwd,
commonPath: null,
depthOffset: 0
};
const processed = processPatterns(options, patterns, props);
const processed = processPatterns({
...options,
patterns
}, cwd, props);
if (options.debug) log("internal processing patterns:", processed);
const { absolute, caseSensitiveMatch, debug, dot, followSymbolicLinks, onlyDirectories } = options;
const root = props.root.replace(BACKSLASHES, "");
const matchOptions = {
dot,
dot: options.dot,
nobrace: options.braceExpansion === false,
nocase: !caseSensitiveMatch,
nocase: options.caseSensitiveMatch === false,
noextglob: options.extglob === false,
noglobstar: options.globstar === false,
posix: true
};
const matcher = (0, picomatch.default)(processed.match, matchOptions);
const matcher = (0, picomatch.default)(processed.match, {
...matchOptions,
ignore: processed.ignore
});
const ignore = (0, picomatch.default)(processed.ignore, matchOptions);
const partialMatcher = getPartialMatcher(processed.match, matchOptions);
const format = buildFormat(cwd, root, absolute);
const excludeFormatter = absolute ? format : buildFormat(cwd, root, true);
const excludePredicate = (_, p) => {
const relativePath = excludeFormatter(p, true);
return relativePath !== "." && !partialMatcher(relativePath) || ignore(relativePath);
};
let maxDepth;
if (options.deep !== void 0) maxDepth = Math.round(options.deep - props.depthOffset);
const crawler = new fdir.fdir({
filters: [debug ? (p, isDirectory) => {
const path = format(p, isDirectory);
const matches = matcher(path) && !ignore(path);
if (matches) log(`matched ${path}`);
const format = buildFormat(cwd, props.root, options.absolute);
const formatExclude = options.absolute ? format : buildFormat(cwd, props.root, true);
const fdirOptions = {
filters: [options.debug ? (p, isDirectory) => {
const path$2 = format(p, isDirectory);
const matches = matcher(path$2);
if (matches) log(`matched ${path$2}`);
return matches;
} : (p, isDirectory) => {
const path = format(p, isDirectory);
return matcher(path) && !ignore(path);
}],
exclude: debug ? (_, p) => {
const skipped = excludePredicate(_, p);
log(`${skipped ? "skipped" : "crawling"} ${p}`);
} : (p, isDirectory) => matcher(format(p, isDirectory))],
exclude: options.debug ? (_, p) => {
const relativePath = formatExclude(p, true);
const skipped = relativePath !== "." && !partialMatcher(relativePath) || ignore(relativePath);
if (skipped) log(`skipped ${p}`);
else log(`crawling ${p}`);
return skipped;
} : excludePredicate,
fs: options.fs,
} : (_, p) => {
const relativePath = formatExclude(p, true);
return relativePath !== "." && !partialMatcher(relativePath) || ignore(relativePath);
},
fs: options.fs ? {
readdir: options.fs.readdir || fs.default.readdir,
readdirSync: options.fs.readdirSync || fs.default.readdirSync,
realpath: options.fs.realpath || fs.default.realpath,
realpathSync: options.fs.realpathSync || fs.default.realpathSync,
stat: options.fs.stat || fs.default.stat,
statSync: options.fs.statSync || fs.default.statSync
} : void 0,
pathSeparator: "/",
relativePaths: !absolute,
resolvePaths: absolute,
includeBasePath: absolute,
resolveSymlinks: followSymbolicLinks,
excludeSymlinks: !followSymbolicLinks,
excludeFiles: onlyDirectories,
includeDirs: onlyDirectories || !options.onlyFiles,
maxDepth,
relativePaths: true,
resolveSymlinks: true,
signal: options.signal
}).crawl(root);
if (options.debug) log("internal properties:", {
...props,
root
});
return [crawler, cwd !== root && !absolute && buildRelative(cwd, root)];
}
//#endregion
//#region src/index.ts
function formatPaths(paths, mapper) {
if (mapper) for (let i = paths.length - 1; i >= 0; i--) paths[i] = mapper(paths[i]);
return paths;
}
const defaultOptions = {
caseSensitiveMatch: true,
cwd: process.cwd(),
debug: !!process.env.TINYGLOBBY_DEBUG,
expandDirectories: true,
followSymbolicLinks: true,
onlyFiles: true
};
function getOptions(options) {
const opts = {
...defaultOptions,
...options
};
opts.cwd = (opts.cwd instanceof URL ? (0, url.fileURLToPath)(opts.cwd) : (0, path.resolve)(opts.cwd)).replace(BACKSLASHES, "/");
opts.ignore = ensureStringArray(opts.ignore);
opts.fs && (opts.fs = {
readdir: opts.fs.readdir || fs.readdir,
readdirSync: opts.fs.readdirSync || fs.readdirSync,
realpath: opts.fs.realpath || fs.realpath,
realpathSync: opts.fs.realpathSync || fs.realpathSync,
stat: opts.fs.stat || fs.stat,
statSync: opts.fs.statSync || fs.statSync
});
if (opts.debug) log("globbing with options:", opts);
return opts;
if (options.deep !== void 0) fdirOptions.maxDepth = Math.round(options.deep - props.depthOffset);
if (options.absolute) {
fdirOptions.relativePaths = false;
fdirOptions.resolvePaths = true;
fdirOptions.includeBasePath = true;
}
if (options.followSymbolicLinks === false) {
fdirOptions.resolveSymlinks = false;
fdirOptions.excludeSymlinks = true;
}
if (options.onlyDirectories) {
fdirOptions.excludeFiles = true;
fdirOptions.includeDirs = true;
} else if (options.onlyFiles === false) fdirOptions.includeDirs = true;
props.root = props.root.replace(BACKSLASHES, "");
const root = props.root;
if (options.debug) log("internal properties:", props);
const relative = cwd !== root && !options.absolute && buildRelative(cwd, props.root);
return [new fdir.fdir(fdirOptions).crawl(root), relative];
}
function getCrawler(globInput, inputOptions = {}) {
var _ref;
if (globInput && (inputOptions === null || inputOptions === void 0 ? void 0 : inputOptions.patterns)) throw new Error("Cannot pass patterns as both an argument and an option");
const isModern = isReadonlyArray(globInput) || typeof globInput === "string";
const patterns = ensureStringArray((_ref = isModern ? globInput : globInput.patterns) !== null && _ref !== void 0 ? _ref : "**/*");
const options = getOptions(isModern ? inputOptions : globInput);
return patterns.length > 0 ? buildCrawler(options, patterns) : [];
async function glob(patternsOrOptions, options) {
if (patternsOrOptions && (options === null || options === void 0 ? void 0 : options.patterns)) throw new Error("Cannot pass patterns as both an argument and an option");
const isModern = isReadonlyArray(patternsOrOptions) || typeof patternsOrOptions === "string";
const opts = isModern ? options : patternsOrOptions;
const patterns = isModern ? patternsOrOptions : patternsOrOptions.patterns;
const [crawler, relative] = getCrawler(patterns, opts);
if (!relative) return crawler.withPromise();
return formatPaths(await crawler.withPromise(), relative);
}
async function glob(globInput, options) {
const [crawler, relative] = getCrawler(globInput, options);
return crawler ? formatPaths(await crawler.withPromise(), relative) : [];
}
function globSync(globInput, options) {
const [crawler, relative] = getCrawler(globInput, options);
return crawler ? formatPaths(crawler.sync(), relative) : [];
function globSync(patternsOrOptions, options) {
if (patternsOrOptions && (options === null || options === void 0 ? void 0 : options.patterns)) throw new Error("Cannot pass patterns as both an argument and an option");
const isModern = isReadonlyArray(patternsOrOptions) || typeof patternsOrOptions === "string";
const opts = isModern ? options : patternsOrOptions;
const patterns = isModern ? patternsOrOptions : patternsOrOptions.patterns;
const [crawler, relative] = getCrawler(patterns, opts);
if (!relative) return crawler.sync();
return formatPaths(crawler.sync(), relative);
}
//#endregion
exports.convertPathToPattern = convertPathToPattern;
exports.escapePath = escapePath;
exports.glob = glob;
exports.globSync = globSync;
exports.isDynamicPattern = isDynamicPattern;
exports.isDynamicPattern = isDynamicPattern;
@@ -1,7 +1,35 @@
import { FSLike } from "fdir";
//#region src/types.d.ts
type FileSystemAdapter = Partial<FSLike>;
//#region src/utils.d.ts
/**
* Converts a path to a pattern depending on the platform.
* Identical to {@link escapePath} on POSIX systems.
* @see {@link https://superchupu.dev/tinyglobby/documentation#convertPathToPattern}
*/
declare const convertPathToPattern: (path: string) => string;
/**
* Escapes a path's special characters depending on the platform.
* @see {@link https://superchupu.dev/tinyglobby/documentation#escapePath}
*/
declare const escapePath: (path: string) => string;
/**
* Checks if a pattern has dynamic parts.
*
* Has a few minor differences with [`fast-glob`](https://github.com/mrmlnc/fast-glob) for better accuracy:
*
* - Doesn't necessarily return `false` on patterns that include `\`.
* - Returns `true` if the pattern includes parentheses, regardless of them representing one single pattern or not.
* - Returns `true` for unfinished glob extensions i.e. `(h`, `+(h`.
* - Returns `true` for unfinished brace expansions as long as they include `,` or `..`.
*
* @see {@link https://superchupu.dev/tinyglobby/documentation#isDynamicPattern}
*/
declare function isDynamicPattern(pattern: string, options?: {
caseSensitiveMatch: boolean;
}): boolean;
//#endregion
//#region src/index.d.ts
interface GlobOptions {
/**
* Whether to return absolute paths. Disable to have relative paths.
@@ -96,36 +124,7 @@ interface GlobOptions {
*/
signal?: AbortSignal;
}
//#endregion
//#region src/utils.d.ts
/**
* Converts a path to a pattern depending on the platform.
* Identical to {@link escapePath} on POSIX systems.
* @see {@link https://superchupu.dev/tinyglobby/documentation#convertPathToPattern}
*/
declare const convertPathToPattern: (path: string) => string;
/**
* Escapes a path's special characters depending on the platform.
* @see {@link https://superchupu.dev/tinyglobby/documentation#escapePath}
*/
declare const escapePath: (path: string) => string;
/**
* Checks if a pattern has dynamic parts.
*
* Has a few minor differences with [`fast-glob`](https://github.com/mrmlnc/fast-glob) for better accuracy:
*
* - Doesn't necessarily return `false` on patterns that include `\`.
* - Returns `true` if the pattern includes parentheses, regardless of them representing one single pattern or not.
* - Returns `true` for unfinished glob extensions i.e. `(h`, `+(h`.
* - Returns `true` for unfinished brace expansions as long as they include `,` or `..`.
*
* @see {@link https://superchupu.dev/tinyglobby/documentation#isDynamicPattern}
*/
declare function isDynamicPattern(pattern: string, options?: {
caseSensitiveMatch: boolean;
}): boolean;
//#endregion
//#region src/index.d.ts
type FileSystemAdapter = Partial<FSLike>;
/**
* Asynchronously match files following a glob pattern.
* @see {@link https://superchupu.dev/tinyglobby/documentation#glob}
@@ -145,4 +144,4 @@ declare function globSync(patterns: string | readonly string[], options?: Omit<G
*/
declare function globSync(options: GlobOptions): string[];
//#endregion
export { type GlobOptions, convertPathToPattern, escapePath, glob, globSync, isDynamicPattern };
export { FileSystemAdapter, GlobOptions, convertPathToPattern, escapePath, glob, globSync, isDynamicPattern };
@@ -1,7 +1,35 @@
import { FSLike } from "fdir";
//#region src/types.d.ts
type FileSystemAdapter = Partial<FSLike>;
//#region src/utils.d.ts
/**
* Converts a path to a pattern depending on the platform.
* Identical to {@link escapePath} on POSIX systems.
* @see {@link https://superchupu.dev/tinyglobby/documentation#convertPathToPattern}
*/
declare const convertPathToPattern: (path: string) => string;
/**
* Escapes a path's special characters depending on the platform.
* @see {@link https://superchupu.dev/tinyglobby/documentation#escapePath}
*/
declare const escapePath: (path: string) => string;
/**
* Checks if a pattern has dynamic parts.
*
* Has a few minor differences with [`fast-glob`](https://github.com/mrmlnc/fast-glob) for better accuracy:
*
* - Doesn't necessarily return `false` on patterns that include `\`.
* - Returns `true` if the pattern includes parentheses, regardless of them representing one single pattern or not.
* - Returns `true` for unfinished glob extensions i.e. `(h`, `+(h`.
* - Returns `true` for unfinished brace expansions as long as they include `,` or `..`.
*
* @see {@link https://superchupu.dev/tinyglobby/documentation#isDynamicPattern}
*/
declare function isDynamicPattern(pattern: string, options?: {
caseSensitiveMatch: boolean;
}): boolean;
//#endregion
//#region src/index.d.ts
interface GlobOptions {
/**
* Whether to return absolute paths. Disable to have relative paths.
@@ -96,36 +124,7 @@ interface GlobOptions {
*/
signal?: AbortSignal;
}
//#endregion
//#region src/utils.d.ts
/**
* Converts a path to a pattern depending on the platform.
* Identical to {@link escapePath} on POSIX systems.
* @see {@link https://superchupu.dev/tinyglobby/documentation#convertPathToPattern}
*/
declare const convertPathToPattern: (path: string) => string;
/**
* Escapes a path's special characters depending on the platform.
* @see {@link https://superchupu.dev/tinyglobby/documentation#escapePath}
*/
declare const escapePath: (path: string) => string;
/**
* Checks if a pattern has dynamic parts.
*
* Has a few minor differences with [`fast-glob`](https://github.com/mrmlnc/fast-glob) for better accuracy:
*
* - Doesn't necessarily return `false` on patterns that include `\`.
* - Returns `true` if the pattern includes parentheses, regardless of them representing one single pattern or not.
* - Returns `true` for unfinished glob extensions i.e. `(h`, `+(h`.
* - Returns `true` for unfinished brace expansions as long as they include `,` or `..`.
*
* @see {@link https://superchupu.dev/tinyglobby/documentation#isDynamicPattern}
*/
declare function isDynamicPattern(pattern: string, options?: {
caseSensitiveMatch: boolean;
}): boolean;
//#endregion
//#region src/index.d.ts
type FileSystemAdapter = Partial<FSLike>;
/**
* Asynchronously match files following a glob pattern.
* @see {@link https://superchupu.dev/tinyglobby/documentation#glob}
@@ -145,4 +144,4 @@ declare function globSync(patterns: string | readonly string[], options?: Omit<G
*/
declare function globSync(options: GlobOptions): string[];
//#endregion
export { type GlobOptions, convertPathToPattern, escapePath, glob, globSync, isDynamicPattern };
export { FileSystemAdapter, GlobOptions, convertPathToPattern, escapePath, glob, globSync, isDynamicPattern };
@@ -1,40 +1,41 @@
import { readdir, readdirSync, realpath, realpathSync, stat, statSync } from "fs";
import { isAbsolute, posix, resolve } from "path";
import nativeFs from "fs";
import path, { posix } from "path";
import { fileURLToPath } from "url";
import { fdir } from "fdir";
import picomatch from "picomatch";
//#region src/utils.ts
const isReadonlyArray = Array.isArray;
const BACKSLASHES = /\\/g;
const isWin = process.platform === "win32";
const ONLY_PARENT_DIRECTORIES = /^(\/?\.\.)+$/;
function getPartialMatcher(patterns, options = {}) {
const patternsCount = patterns.length;
const patternsParts = Array(patternsCount);
const matchers = Array(patternsCount);
let i, j;
for (i = 0; i < patternsCount; i++) {
const globstarEnabled = !options.noglobstar;
for (let i = 0; i < patternsCount; i++) {
const parts = splitPattern(patterns[i]);
patternsParts[i] = parts;
const partsCount = parts.length;
const partMatchers = Array(partsCount);
for (j = 0; j < partsCount; j++) partMatchers[j] = picomatch(parts[j], options);
for (let j = 0; j < partsCount; j++) partMatchers[j] = picomatch(parts[j], options);
matchers[i] = partMatchers;
}
return (input) => {
const inputParts = input.split("/");
if (inputParts[0] === ".." && ONLY_PARENT_DIRECTORIES.test(input)) return true;
for (i = 0; i < patternsCount; i++) {
for (let i = 0; i < patterns.length; i++) {
const patternParts = patternsParts[i];
const matcher = matchers[i];
const inputPatternCount = inputParts.length;
const minParts = Math.min(inputPatternCount, patternParts.length);
j = 0;
let j = 0;
while (j < minParts) {
const part = patternParts[j];
if (part.includes("/")) return true;
if (!matcher[j](inputParts[j])) break;
if (!options.noglobstar && part === "**") return true;
const match = matcher[j](inputParts[j]);
if (!match) break;
if (globstarEnabled && part === "**") return true;
j++;
}
if (j === inputPatternCount) return true;
@@ -48,7 +49,7 @@ const isRoot = isWin ? (p) => WIN32_ROOT_DIR.test(p) : (p) => p === "/";
function buildFormat(cwd, root, absolute) {
if (cwd === root || root.startsWith(`${cwd}/`)) {
if (absolute) {
const start = cwd.length + +!isRoot(cwd);
const start = isRoot(cwd) ? cwd.length : cwd.length + 1;
return (p, isDir) => p.slice(start, isDir ? -1 : void 0) || ".";
}
const prefix = root.slice(cwd.length + 1);
@@ -69,21 +70,22 @@ function buildRelative(cwd, root) {
}
return (p) => {
const result = posix.relative(cwd, `${root}/${p}`);
return p[p.length - 1] === "/" && result !== "" ? `${result}/` : result || ".";
if (p.endsWith("/") && result !== "") return `${result}/`;
return result || ".";
};
}
const splitPatternOptions = { parts: true };
function splitPattern(path) {
function splitPattern(path$1) {
var _result$parts;
const result = picomatch.scan(path, splitPatternOptions);
return ((_result$parts = result.parts) === null || _result$parts === void 0 ? void 0 : _result$parts.length) ? result.parts : [path];
const result = picomatch.scan(path$1, splitPatternOptions);
return ((_result$parts = result.parts) === null || _result$parts === void 0 ? void 0 : _result$parts.length) ? result.parts : [path$1];
}
const ESCAPED_WIN32_BACKSLASHES = /\\(?![()[\]{}!+@])/g;
function convertPosixPathToPattern(path) {
return escapePosixPath(path);
function convertPosixPathToPattern(path$1) {
return escapePosixPath(path$1);
}
function convertWin32PathToPattern(path) {
return escapeWin32Path(path).replace(ESCAPED_WIN32_BACKSLASHES, "/");
function convertWin32PathToPattern(path$1) {
return escapeWin32Path(path$1).replace(ESCAPED_WIN32_BACKSLASHES, "/");
}
/**
* Converts a path to a pattern depending on the platform.
@@ -94,8 +96,8 @@ function convertWin32PathToPattern(path) {
const convertPathToPattern = isWin ? convertWin32PathToPattern : convertPosixPathToPattern;
const POSIX_UNESCAPED_GLOB_SYMBOLS = /(?<!\\)([()[\]{}*?|]|^!|[!+@](?=\()|\\(?![()[\]{}!*+?@|]))/g;
const WIN32_UNESCAPED_GLOB_SYMBOLS = /(?<!\\)([()[\]{}]|^!|[!+@](?=\())/g;
const escapePosixPath = (path) => path.replace(POSIX_UNESCAPED_GLOB_SYMBOLS, "\\$&");
const escapeWin32Path = (path) => path.replace(WIN32_UNESCAPED_GLOB_SYMBOLS, "\\$&");
const escapePosixPath = (path$1) => path$1.replace(POSIX_UNESCAPED_GLOB_SYMBOLS, "\\$&");
const escapeWin32Path = (path$1) => path$1.replace(WIN32_UNESCAPED_GLOB_SYMBOLS, "\\$&");
/**
* Escapes a path's special characters depending on the platform.
* @see {@link https://superchupu.dev/tinyglobby/documentation#escapePath}
@@ -122,33 +124,31 @@ function isDynamicPattern(pattern, options) {
function log(...tasks) {
console.log(`[tinyglobby ${(/* @__PURE__ */ new Date()).toLocaleTimeString("es")}]`, ...tasks);
}
function ensureStringArray(value) {
return typeof value === "string" ? [value] : value !== null && value !== void 0 ? value : [];
}
//#endregion
//#region src/patterns.ts
//#region src/index.ts
const PARENT_DIRECTORY = /^(\/?\.\.)+/;
const ESCAPING_BACKSLASHES = /\\(?=[()[\]{}!*+?@|])/g;
function normalizePattern(pattern, opts, props, isIgnore) {
var _PARENT_DIRECTORY$exe;
const cwd = opts.cwd;
const BACKSLASHES = /\\/g;
function normalizePattern(pattern, expandDirectories, cwd, props, isIgnore) {
let result = pattern;
if (pattern[pattern.length - 1] === "/") result = pattern.slice(0, -1);
if (result[result.length - 1] !== "*" && opts.expandDirectories) result += "/**";
if (pattern.endsWith("/")) result = pattern.slice(0, -1);
if (!result.endsWith("*") && expandDirectories) result += "/**";
const escapedCwd = escapePath(cwd);
result = isAbsolute(result.replace(ESCAPING_BACKSLASHES, "")) ? posix.relative(escapedCwd, result) : posix.normalize(result);
const parentDir = (_PARENT_DIRECTORY$exe = PARENT_DIRECTORY.exec(result)) === null || _PARENT_DIRECTORY$exe === void 0 ? void 0 : _PARENT_DIRECTORY$exe[0];
if (path.isAbsolute(result.replace(ESCAPING_BACKSLASHES, ""))) result = posix.relative(escapedCwd, result);
else result = posix.normalize(result);
const parentDirectoryMatch = PARENT_DIRECTORY.exec(result);
const parts = splitPattern(result);
if (parentDir) {
const n = (parentDir.length + 1) / 3;
if (parentDirectoryMatch === null || parentDirectoryMatch === void 0 ? void 0 : parentDirectoryMatch[0]) {
const n = (parentDirectoryMatch[0].length + 1) / 3;
let i = 0;
const cwdParts = escapedCwd.split("/");
while (i < n && parts[i + n] === cwdParts[cwdParts.length + i - n]) {
result = result.slice(0, (n - i - 1) * 3) + result.slice((n - i) * 3 + parts[i + n].length + 1) || ".";
i++;
}
const potentialRoot = posix.join(cwd, parentDir.slice(i * 3));
if (potentialRoot[0] !== "." && props.root.length > potentialRoot.length) {
const potentialRoot = posix.join(cwd, parentDirectoryMatch[0].slice(i * 3));
if (!potentialRoot.startsWith(".") && props.root.length > potentialRoot.length) {
props.root = potentialRoot;
props.depthOffset = -n + i;
}
@@ -164,7 +164,7 @@ function normalizePattern(pattern, opts, props, isIgnore) {
newCommonPath.pop();
break;
}
if (i === parts.length - 1 || part !== props.commonPath[i] || isDynamicPattern(part)) break;
if (part !== props.commonPath[i] || isDynamicPattern(part) || i === parts.length - 1) break;
newCommonPath.push(part);
}
props.depthOffset = newCommonPath.length;
@@ -173,134 +173,146 @@ function normalizePattern(pattern, opts, props, isIgnore) {
}
return result;
}
function processPatterns(options, patterns, props) {
function processPatterns({ patterns = ["**/*"], ignore = [], expandDirectories = true }, cwd, props) {
if (typeof patterns === "string") patterns = [patterns];
if (typeof ignore === "string") ignore = [ignore];
const matchPatterns = [];
const ignorePatterns = [];
for (const pattern of options.ignore) {
for (const pattern of ignore) {
if (!pattern) continue;
if (pattern[0] !== "!" || pattern[1] === "(") ignorePatterns.push(normalizePattern(pattern, options, props, true));
if (pattern[0] !== "!" || pattern[1] === "(") ignorePatterns.push(normalizePattern(pattern, expandDirectories, cwd, props, true));
}
for (const pattern of patterns) {
if (!pattern) continue;
if (pattern[0] !== "!" || pattern[1] === "(") matchPatterns.push(normalizePattern(pattern, options, props, false));
else if (pattern[1] !== "!" || pattern[2] === "(") ignorePatterns.push(normalizePattern(pattern.slice(1), options, props, true));
if (pattern[0] !== "!" || pattern[1] === "(") matchPatterns.push(normalizePattern(pattern, expandDirectories, cwd, props, false));
else if (pattern[1] !== "!" || pattern[2] === "(") ignorePatterns.push(normalizePattern(pattern.slice(1), expandDirectories, cwd, props, true));
}
return {
match: matchPatterns,
ignore: ignorePatterns
};
}
//#endregion
//#region src/crawler.ts
function buildCrawler(options, patterns) {
const cwd = options.cwd;
function formatPaths(paths, relative) {
for (let i = paths.length - 1; i >= 0; i--) {
const path$1 = paths[i];
paths[i] = relative(path$1);
}
return paths;
}
function normalizeCwd(cwd) {
if (!cwd) return process.cwd().replace(BACKSLASHES, "/");
if (cwd instanceof URL) return fileURLToPath(cwd).replace(BACKSLASHES, "/");
return path.resolve(cwd).replace(BACKSLASHES, "/");
}
function getCrawler(patterns, inputOptions = {}) {
const options = process.env.TINYGLOBBY_DEBUG ? {
...inputOptions,
debug: true
} : inputOptions;
const cwd = normalizeCwd(options.cwd);
if (options.debug) log("globbing with:", {
patterns,
options,
cwd
});
if (Array.isArray(patterns) && patterns.length === 0) return [{
sync: () => [],
withPromise: async () => []
}, false];
const props = {
root: cwd,
commonPath: null,
depthOffset: 0
};
const processed = processPatterns(options, patterns, props);
const processed = processPatterns({
...options,
patterns
}, cwd, props);
if (options.debug) log("internal processing patterns:", processed);
const { absolute, caseSensitiveMatch, debug, dot, followSymbolicLinks, onlyDirectories } = options;
const root = props.root.replace(BACKSLASHES, "");
const matchOptions = {
dot,
dot: options.dot,
nobrace: options.braceExpansion === false,
nocase: !caseSensitiveMatch,
nocase: options.caseSensitiveMatch === false,
noextglob: options.extglob === false,
noglobstar: options.globstar === false,
posix: true
};
const matcher = picomatch(processed.match, matchOptions);
const matcher = picomatch(processed.match, {
...matchOptions,
ignore: processed.ignore
});
const ignore = picomatch(processed.ignore, matchOptions);
const partialMatcher = getPartialMatcher(processed.match, matchOptions);
const format = buildFormat(cwd, root, absolute);
const excludeFormatter = absolute ? format : buildFormat(cwd, root, true);
const excludePredicate = (_, p) => {
const relativePath = excludeFormatter(p, true);
return relativePath !== "." && !partialMatcher(relativePath) || ignore(relativePath);
};
let maxDepth;
if (options.deep !== void 0) maxDepth = Math.round(options.deep - props.depthOffset);
const crawler = new fdir({
filters: [debug ? (p, isDirectory) => {
const path = format(p, isDirectory);
const matches = matcher(path) && !ignore(path);
if (matches) log(`matched ${path}`);
const format = buildFormat(cwd, props.root, options.absolute);
const formatExclude = options.absolute ? format : buildFormat(cwd, props.root, true);
const fdirOptions = {
filters: [options.debug ? (p, isDirectory) => {
const path$1 = format(p, isDirectory);
const matches = matcher(path$1);
if (matches) log(`matched ${path$1}`);
return matches;
} : (p, isDirectory) => {
const path = format(p, isDirectory);
return matcher(path) && !ignore(path);
}],
exclude: debug ? (_, p) => {
const skipped = excludePredicate(_, p);
log(`${skipped ? "skipped" : "crawling"} ${p}`);
} : (p, isDirectory) => matcher(format(p, isDirectory))],
exclude: options.debug ? (_, p) => {
const relativePath = formatExclude(p, true);
const skipped = relativePath !== "." && !partialMatcher(relativePath) || ignore(relativePath);
if (skipped) log(`skipped ${p}`);
else log(`crawling ${p}`);
return skipped;
} : excludePredicate,
fs: options.fs,
} : (_, p) => {
const relativePath = formatExclude(p, true);
return relativePath !== "." && !partialMatcher(relativePath) || ignore(relativePath);
},
fs: options.fs ? {
readdir: options.fs.readdir || nativeFs.readdir,
readdirSync: options.fs.readdirSync || nativeFs.readdirSync,
realpath: options.fs.realpath || nativeFs.realpath,
realpathSync: options.fs.realpathSync || nativeFs.realpathSync,
stat: options.fs.stat || nativeFs.stat,
statSync: options.fs.statSync || nativeFs.statSync
} : void 0,
pathSeparator: "/",
relativePaths: !absolute,
resolvePaths: absolute,
includeBasePath: absolute,
resolveSymlinks: followSymbolicLinks,
excludeSymlinks: !followSymbolicLinks,
excludeFiles: onlyDirectories,
includeDirs: onlyDirectories || !options.onlyFiles,
maxDepth,
relativePaths: true,
resolveSymlinks: true,
signal: options.signal
}).crawl(root);
if (options.debug) log("internal properties:", {
...props,
root
});
return [crawler, cwd !== root && !absolute && buildRelative(cwd, root)];
}
//#endregion
//#region src/index.ts
function formatPaths(paths, mapper) {
if (mapper) for (let i = paths.length - 1; i >= 0; i--) paths[i] = mapper(paths[i]);
return paths;
}
const defaultOptions = {
caseSensitiveMatch: true,
cwd: process.cwd(),
debug: !!process.env.TINYGLOBBY_DEBUG,
expandDirectories: true,
followSymbolicLinks: true,
onlyFiles: true
};
function getOptions(options) {
const opts = {
...defaultOptions,
...options
};
opts.cwd = (opts.cwd instanceof URL ? fileURLToPath(opts.cwd) : resolve(opts.cwd)).replace(BACKSLASHES, "/");
opts.ignore = ensureStringArray(opts.ignore);
opts.fs && (opts.fs = {
readdir: opts.fs.readdir || readdir,
readdirSync: opts.fs.readdirSync || readdirSync,
realpath: opts.fs.realpath || realpath,
realpathSync: opts.fs.realpathSync || realpathSync,
stat: opts.fs.stat || stat,
statSync: opts.fs.statSync || statSync
});
if (opts.debug) log("globbing with options:", opts);
return opts;
if (options.deep !== void 0) fdirOptions.maxDepth = Math.round(options.deep - props.depthOffset);
if (options.absolute) {
fdirOptions.relativePaths = false;
fdirOptions.resolvePaths = true;
fdirOptions.includeBasePath = true;
}
if (options.followSymbolicLinks === false) {
fdirOptions.resolveSymlinks = false;
fdirOptions.excludeSymlinks = true;
}
if (options.onlyDirectories) {
fdirOptions.excludeFiles = true;
fdirOptions.includeDirs = true;
} else if (options.onlyFiles === false) fdirOptions.includeDirs = true;
props.root = props.root.replace(BACKSLASHES, "");
const root = props.root;
if (options.debug) log("internal properties:", props);
const relative = cwd !== root && !options.absolute && buildRelative(cwd, props.root);
return [new fdir(fdirOptions).crawl(root), relative];
}
function getCrawler(globInput, inputOptions = {}) {
var _ref;
if (globInput && (inputOptions === null || inputOptions === void 0 ? void 0 : inputOptions.patterns)) throw new Error("Cannot pass patterns as both an argument and an option");
const isModern = isReadonlyArray(globInput) || typeof globInput === "string";
const patterns = ensureStringArray((_ref = isModern ? globInput : globInput.patterns) !== null && _ref !== void 0 ? _ref : "**/*");
const options = getOptions(isModern ? inputOptions : globInput);
return patterns.length > 0 ? buildCrawler(options, patterns) : [];
async function glob(patternsOrOptions, options) {
if (patternsOrOptions && (options === null || options === void 0 ? void 0 : options.patterns)) throw new Error("Cannot pass patterns as both an argument and an option");
const isModern = isReadonlyArray(patternsOrOptions) || typeof patternsOrOptions === "string";
const opts = isModern ? options : patternsOrOptions;
const patterns = isModern ? patternsOrOptions : patternsOrOptions.patterns;
const [crawler, relative] = getCrawler(patterns, opts);
if (!relative) return crawler.withPromise();
return formatPaths(await crawler.withPromise(), relative);
}
async function glob(globInput, options) {
const [crawler, relative] = getCrawler(globInput, options);
return crawler ? formatPaths(await crawler.withPromise(), relative) : [];
}
function globSync(globInput, options) {
const [crawler, relative] = getCrawler(globInput, options);
return crawler ? formatPaths(crawler.sync(), relative) : [];
function globSync(patternsOrOptions, options) {
if (patternsOrOptions && (options === null || options === void 0 ? void 0 : options.patterns)) throw new Error("Cannot pass patterns as both an argument and an option");
const isModern = isReadonlyArray(patternsOrOptions) || typeof patternsOrOptions === "string";
const opts = isModern ? options : patternsOrOptions;
const patterns = isModern ? patternsOrOptions : patternsOrOptions.patterns;
const [crawler, relative] = getCrawler(patterns, opts);
if (!relative) return crawler.sync();
return formatPaths(crawler.sync(), relative);
}
//#endregion
export { convertPathToPattern, escapePath, glob, globSync, isDynamicPattern };
export { convertPathToPattern, escapePath, glob, globSync, isDynamicPattern };
@@ -1,6 +1,6 @@
{
"name": "tinyglobby",
"version": "0.2.16",
"version": "0.2.15",
"description": "A fast and minimal alternative to globby and fast-glob",
"type": "module",
"main": "./dist/index.cjs",
@@ -38,18 +38,18 @@
},
"dependencies": {
"fdir": "^6.5.0",
"picomatch": "^4.0.4"
"picomatch": "^4.0.3"
},
"devDependencies": {
"@biomejs/biome": "^2.4.10",
"@types/node": "^25.5.2",
"@types/picomatch": "^4.0.3",
"@biomejs/biome": "^2.2.3",
"@types/node": "^24.3.1",
"@types/picomatch": "^4.0.2",
"fast-glob": "^3.3.3",
"fs-fixture": "^2.13.0",
"glob": "^13.0.6",
"tinybench": "^6.0.0",
"tsdown": "^0.21.7",
"typescript": "^6.0.2"
"fs-fixture": "^2.8.1",
"glob": "^11.0.3",
"tinybench": "^5.0.1",
"tsdown": "^0.14.2",
"typescript": "^5.9.2"
},
"engines": {
"node": ">=12.0.0"
+16 -16
View File
@@ -1,6 +1,6 @@
{
"name": "vite",
"version": "7.3.2",
"version": "7.1.11",
"type": "module",
"license": "MIT",
"author": "Evan You",
@@ -68,7 +68,7 @@
"funding": "https://github.com/vitejs/vite?sponsor=1",
"//": "READ CONTRIBUTING.md to understand what to put under deps vs. devDeps!",
"dependencies": {
"esbuild": "^0.27.0",
"esbuild": "^0.25.0",
"fdir": "^6.5.0",
"picomatch": "^4.0.3",
"postcss": "^8.5.6",
@@ -79,27 +79,27 @@
"fsevents": "~2.3.3"
},
"devDependencies": {
"@babel/parser": "^7.28.5",
"@babel/parser": "^7.28.4",
"@jridgewell/remapping": "^2.3.5",
"@jridgewell/trace-mapping": "^0.3.31",
"@oxc-project/types": "0.95.0",
"@oxc-project/types": "0.90.0",
"@polka/compression": "^1.0.0-next.25",
"@rolldown/pluginutils": "^1.0.0-beta.52",
"@rolldown/pluginutils": "^1.0.0-beta.43",
"@rollup/plugin-alias": "^5.1.1",
"@rollup/plugin-commonjs": "^29.0.0",
"@rollup/plugin-commonjs": "^28.0.8",
"@rollup/plugin-dynamic-import-vars": "2.1.4",
"@rollup/pluginutils": "^5.3.0",
"@types/escape-html": "^1.0.4",
"@types/pnpapi": "^0.0.5",
"artichokie": "^0.4.2",
"baseline-browser-mapping": "^2.8.32",
"baseline-browser-mapping": "^2.8.18",
"cac": "^6.7.14",
"chokidar": "^3.6.0",
"connect": "^3.7.0",
"convert-source-map": "^2.0.0",
"cors": "^2.8.5",
"cross-spawn": "^7.0.6",
"obug": "^1.0.2",
"debug": "^4.4.3",
"dotenv": "^17.2.3",
"dotenv-expand": "^12.0.3",
"es-module-lexer": "^1.7.0",
@@ -108,9 +108,9 @@
"etag": "^1.8.1",
"host-validation-middleware": "^0.1.2",
"http-proxy-3": "^1.22.0",
"launch-editor-middleware": "^2.12.0",
"launch-editor-middleware": "^2.11.1",
"lightningcss": "^1.30.2",
"magic-string": "^0.30.21",
"magic-string": "^0.30.19",
"mlly": "^1.8.0",
"mrmime": "^2.0.1",
"nanoid": "^5.1.6",
@@ -124,14 +124,14 @@
"postcss-modules": "^6.0.1",
"premove": "^4.0.0",
"resolve.exports": "^2.0.3",
"rolldown": "^1.0.0-beta.52",
"rolldown-plugin-dts": "^0.18.1",
"rolldown": "^1.0.0-beta.43",
"rolldown-plugin-dts": "^0.16.11",
"rollup-plugin-license": "^3.6.0",
"sass": "^1.94.2",
"sass-embedded": "^1.93.3",
"sass": "^1.93.2",
"sass-embedded": "^1.93.2",
"sirv": "^3.0.2",
"strip-literal": "^3.1.0",
"terser": "^5.44.1",
"terser": "^5.44.0",
"tsconfck": "^3.1.6",
"ufo": "^1.6.1",
"ws": "^8.18.3"
@@ -191,7 +191,7 @@
"build-types": "pnpm build-types-roll && pnpm build-types-check",
"build-types-roll": "rolldown --config rolldown.dts.config.ts",
"build-types-check": "tsc --project tsconfig.check.json",
"typecheck": "tsc && tsc -p src/node && tsc -p src/module-runner && tsc -p src/shared && tsc -p src/node/__tests_dts__",
"typecheck": "tsc && tsc -p src/node",
"lint": "eslint --cache --ext .ts src/**",
"format": "prettier --write --cache --parser typescript \"src/**/*.ts\"",
"generate-target": "tsx scripts/generateTarget.ts"
-5
View File
@@ -6,7 +6,6 @@ import type {
} from './hmrPayload'
export interface CustomEventMap {
// client events
'vite:beforeUpdate': UpdatePayload
'vite:afterUpdate': UpdatePayload
'vite:beforePrune': PrunePayload
@@ -15,10 +14,6 @@ export interface CustomEventMap {
'vite:invalidate': InvalidatePayload
'vite:ws:connect': WebSocketConnectionPayload
'vite:ws:disconnect': WebSocketConnectionPayload
// server events
'vite:client:connect': undefined
'vite:client:disconnect': undefined
}
export interface WebSocketConnectionPayload {
+7 -7
View File
@@ -1,6 +1,6 @@
{
"name": "@angular/build",
"version": "20.3.26",
"version": "20.3.10",
"description": "Official build system for Angular",
"keywords": [
"Angular CLI",
@@ -23,7 +23,7 @@
"builders": "builders.json",
"dependencies": {
"@ampproject/remapping": "2.3.0",
"@angular-devkit/architect": "0.2003.26",
"@angular-devkit/architect": "0.2003.10",
"@babel/core": "7.28.3",
"@babel/helper-annotate-as-pure": "7.27.3",
"@babel/helper-split-export-declaration": "7.24.7",
@@ -31,7 +31,7 @@
"@vitejs/plugin-basic-ssl": "2.1.0",
"beasties": "0.3.5",
"browserslist": "^4.23.0",
"esbuild": "0.28.0",
"esbuild": "0.25.9",
"https-proxy-agent": "7.0.6",
"istanbul-lib-instrument": "6.0.3",
"jsonc-parser": "3.3.1",
@@ -39,14 +39,14 @@
"magic-string": "0.30.17",
"mrmime": "2.0.1",
"parse5-html-rewriting-stream": "8.0.0",
"picomatch": "4.0.4",
"picomatch": "4.0.3",
"piscina": "5.1.3",
"rollup": "4.59.0",
"rollup": "4.52.3",
"sass": "1.90.0",
"semver": "7.7.2",
"source-map-support": "0.5.21",
"tinyglobby": "0.2.14",
"vite": "7.3.2",
"vite": "7.1.11",
"watchpack": "2.4.4"
},
"optionalDependencies": {
@@ -60,7 +60,7 @@
"@angular/platform-browser": "^20.0.0",
"@angular/platform-server": "^20.0.0",
"@angular/service-worker": "^20.0.0",
"@angular/ssr": "^20.3.26",
"@angular/ssr": "^20.3.10",
"karma": "^6.4.0",
"less": "^4.2.0",
"ng-packagr": "^20.0.0",
+2 -2
View File
@@ -60,7 +60,7 @@ const i18n_1 = require("./i18n");
const setup_bundling_1 = require("./setup-bundling");
// eslint-disable-next-line max-lines-per-function
async function executeBuild(options, context, rebuildState) {
const { projectRoot, workspaceRoot, i18nOptions, optimizationOptions, assets, cacheOptions, serverEntryPoint, baseHref, ssrOptions, verbose, colors, jsonLogs, security, } = options;
const { projectRoot, workspaceRoot, i18nOptions, optimizationOptions, assets, cacheOptions, serverEntryPoint, baseHref, ssrOptions, verbose, colors, jsonLogs, } = options;
// TODO: Consider integrating into watch mode. Would require full rebuild on target changes.
const browsers = (0, supported_browsers_1.getSupportedBrowsers)(projectRoot, context.logger);
// Load active translations if inlining
@@ -216,7 +216,7 @@ async function executeBuild(options, context, rebuildState) {
}
// Create server app engine manifest
if (serverEntryPoint) {
executionResult.addOutputFile(manifest_1.SERVER_APP_ENGINE_MANIFEST_FILENAME, (0, manifest_1.generateAngularServerAppEngineManifest)(i18nOptions, security.allowedHosts, baseHref), bundler_context_1.BuildOutputFileType.ServerRoot);
executionResult.addOutputFile(manifest_1.SERVER_APP_ENGINE_MANIFEST_FILENAME, (0, manifest_1.generateAngularServerAppEngineManifest)(i18nOptions, baseHref), bundler_context_1.BuildOutputFileType.ServerRoot);
}
// Perform i18n translation inlining if enabled
if (i18nOptions.shouldInline) {
-1
View File
@@ -197,7 +197,6 @@ export declare function normalizeOptions(context: BuilderContext, projectName: s
externalRuntimeStyles: boolean | undefined;
instrumentForCoverage: ((filename: string) => boolean) | undefined;
security: {
allowedHosts: string[];
autoCsp: {
unsafeEval: boolean;
} | undefined;
+2 -5
View File
@@ -247,9 +247,8 @@ async function normalizeOptions(context, projectName, options, extensions) {
throw new Error('The "index" option cannot be set to false when enabling "ssr", "prerender" or "app-shell".');
}
}
const { autoCsp, allowedHosts = [] } = options.security ?? {};
const autoCsp = options.security?.autoCsp;
const security = {
allowedHosts,
autoCsp: autoCsp
? {
unsafeEval: autoCsp === true ? false : !!autoCsp.unsafeEval,
@@ -450,9 +449,7 @@ function getLocaleBaseHref(baseHref = '', i18n, locale) {
return undefined;
}
const baseHrefSuffix = localeData.baseHref ?? localeData.subPath + '/';
return baseHrefSuffix !== ''
? (0, url_1.addTrailingSlash)((0, url_1.joinUrlParts)(baseHref, baseHrefSuffix))
: undefined;
return baseHrefSuffix !== '' ? (0, url_1.urlJoin)(baseHref, baseHrefSuffix) : undefined;
}
/**
* Normalizes an array of external dependency paths by ensuring that
-6
View File
@@ -496,12 +496,6 @@ export type ScriptClass = {
* Security features to protect against XSS and other common attacks
*/
export type Security = {
/**
* A list of hostnames that are allowed to access the server-side application. For more
* information, see
* https://angular.dev/best-practices/security#preventing-server-side-request-forgery-ssrf.
*/
allowedHosts?: string[];
/**
* Enables automatic generation of a hash-based Strict Content Security Policy
* (https://web.dev/articles/strict-csp#choose-hash) based on scripts in index.html. Will
-8
View File
@@ -52,14 +52,6 @@
"type": "object",
"additionalProperties": false,
"properties": {
"allowedHosts": {
"description": "A list of hostnames that are allowed to access the server-side application. For more information, see https://angular.dev/best-practices/security#preventing-server-side-request-forgery-ssrf.",
"type": "array",
"uniqueItems": true,
"items": {
"type": "string"
}
},
"autoCsp": {
"description": "Enables automatic generation of a hash-based Strict Content Security Policy (https://web.dev/articles/strict-csp#choose-hash) based on scripts in index.html. Will default to true once we are out of experimental/preview phases.",
"default": false,
+3 -11
View File
@@ -84,14 +84,7 @@ async function* serveWithVite(serverOptions, builderName, builderAction, context
browserOptions.ssr ||= true;
}
// Disable auto CSP.
const allowedHosts = Array.isArray(serverOptions.allowedHosts)
? [...serverOptions.allowedHosts]
: [];
// Always allow the dev server host
allowedHosts.push(serverOptions.host);
browserOptions.security = {
allowedHosts,
// Disable auto CSP.
autoCsp: false,
};
// Disable JSON build stats.
@@ -430,10 +423,9 @@ async function invalidateUpdatedFiles(normalizePath, generatedFiles, assetFiles,
updatedModules?.forEach((m) => server.moduleGraph.invalidateModule(m));
}
if (serverApplicationChanged) {
// Clear the server app cache and trigger module evaluation before reload to initiate dependency optimization.
// The querystring is needed as a workaround for:
// `ɵgetOrCreateAngularServerApp` can be undefined right after an error.
const { ɵdestroyAngularServerApp } = (await server.ssrLoadModule(`/main.server.mjs?timestamp=${Date.now()}`));
// Clear the server app cache and
// trigger module evaluation before reload to initiate dependency optimization.
const { ɵdestroyAngularServerApp } = (await server.ssrLoadModule('/main.server.mjs'));
ɵdestroyAngularServerApp();
}
return updatedFiles;
@@ -23,6 +23,11 @@ function createAngularSsrInternalMiddleware(server, indexHtmlTransformer) {
await (0, load_esm_1.loadEsmModule)('@angular/compiler');
const { writeResponseToNodeResponse, createWebRequestFromNodeRequest } = await (0, load_esm_1.loadEsmModule)('@angular/ssr/node');
const { ɵgetOrCreateAngularServerApp } = (await server.ssrLoadModule('/main.server.mjs'));
// `ɵgetOrCreateAngularServerApp` can be undefined right after an error.
// See: https://github.com/angular/angular-cli/issues/29907
if (!ɵgetOrCreateAngularServerApp) {
return next();
}
const angularServerApp = ɵgetOrCreateAngularServerApp({
allowStaticRouteRender: true,
});
+1 -1
View File
@@ -10,7 +10,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
exports.normalizeCacheOptions = normalizeCacheOptions;
const node_path_1 = require("node:path");
/** Version placeholder is replaced during the build process with actual package version */
const VERSION = '20.3.26';
const VERSION = '20.3.10';
function hasCacheMetadata(value) {
return (!!value &&
typeof value === 'object' &&
+1 -2
View File
@@ -19,11 +19,10 @@ export declare const SERVER_APP_ENGINE_MANIFEST_FILENAME = "angular-app-engine-m
*
* @param i18nOptions - The internationalization options for the application build. This
* includes settings for inlining locales and determining the output structure.
* @param allowedHosts - A list of hosts that are allowed to access the server-side application.
* @param baseHref - The base HREF for the application. This is used to set the base URL
* for all relative URLs in the application.
*/
export declare function generateAngularServerAppEngineManifest(i18nOptions: NormalizedApplicationBuildOptions['i18nOptions'], allowedHosts: string[], baseHref: string | undefined): string;
export declare function generateAngularServerAppEngineManifest(i18nOptions: NormalizedApplicationBuildOptions['i18nOptions'], baseHref: string | undefined): string;
/**
* Generates the server manifest for the standard Node.js environment.
*
+1 -3
View File
@@ -45,11 +45,10 @@ function escapeUnsafeChars(str) {
*
* @param i18nOptions - The internationalization options for the application build. This
* includes settings for inlining locales and determining the output structure.
* @param allowedHosts - A list of hosts that are allowed to access the server-side application.
* @param baseHref - The base HREF for the application. This is used to set the base URL
* for all relative URLs in the application.
*/
function generateAngularServerAppEngineManifest(i18nOptions, allowedHosts, baseHref) {
function generateAngularServerAppEngineManifest(i18nOptions, baseHref) {
const entryPoints = {};
const supportedLocales = {};
if (i18nOptions.shouldInline && !i18nOptions.flatOutput) {
@@ -72,7 +71,6 @@ function generateAngularServerAppEngineManifest(i18nOptions, allowedHosts, baseH
const manifestContent = `
export default {
basePath: '${basePath}',
allowedHosts: ${JSON.stringify(allowedHosts, undefined, 2)},
supportedLocales: ${JSON.stringify(supportedLocales, undefined, 2)},
entryPoints: {
${Object.entries(entryPoints)
+16 -15
View File
@@ -51,7 +51,7 @@ async function prerenderPages(workspaceRoot, baseHref, appShellOptions, prerende
serverBundlesSourceMaps.clear();
const assetsReversed = {};
for (const { source, destination } of assets) {
assetsReversed[(0, url_1.addLeadingSlash)((0, path_1.toPosixPath)(destination))] = source;
assetsReversed[addLeadingSlash((0, path_1.toPosixPath)(destination))] = source;
}
// Get routes to prerender
const { errors: extractionErrors, serializedRouteTree: serializableRouteTreeNode, appShellRoute, } = await getAllRoutes(workspaceRoot, baseHref, outputFilesForWorker, assetsReversed, appShellOptions, prerenderOptions, sourcemap, outputMode).catch((err) => {
@@ -126,21 +126,17 @@ async function renderPages(baseHref, sourcemap, serializableRouteTreeNode, maxTh
hasSsrEntry: !!outputFilesForWorker['server.mjs'],
},
execArgv: workerExecArgv,
env: {
...process.env,
'NG_ALLOWED_HOSTS': 'localhost',
},
});
try {
const renderingPromises = [];
const appShellRouteWithLeadingSlash = appShellRoute && (0, url_1.addLeadingSlash)(appShellRoute);
const appShellRouteWithLeadingSlash = appShellRoute && addLeadingSlash(appShellRoute);
const baseHrefPathnameWithLeadingSlash = new URL(baseHref, 'http://localhost').pathname;
for (const { route, redirectTo } of serializableRouteTreeNode) {
// Remove the base href from the file output path.
const routeWithoutBaseHref = (0, url_1.addTrailingSlash)(route).startsWith(baseHrefPathnameWithLeadingSlash)
? (0, url_1.addLeadingSlash)(route.slice(baseHrefPathnameWithLeadingSlash.length))
const routeWithoutBaseHref = addTrailingSlash(route).startsWith(baseHrefPathnameWithLeadingSlash)
? addLeadingSlash(route.slice(baseHrefPathnameWithLeadingSlash.length))
: route;
const outPath = (0, url_1.stripLeadingSlash)(node_path_1.posix.join(routeWithoutBaseHref, 'index.html'));
const outPath = node_path_1.posix.join(removeLeadingSlash(routeWithoutBaseHref), 'index.html');
if (typeof redirectTo === 'string') {
output[outPath] = { content: (0, utils_2.generateRedirectStaticPage)(redirectTo), appShellRoute: false };
continue;
@@ -176,7 +172,7 @@ async function getAllRoutes(workspaceRoot, baseHref, outputFilesForWorker, asset
const routes = [];
let appShellRoute;
if (appShellOptions) {
appShellRoute = (0, url_1.joinUrlParts)(baseHref, appShellOptions.route);
appShellRoute = (0, url_1.urlJoin)(baseHref, appShellOptions.route);
routes.push({
renderMode: models_1.RouteRenderMode.Prerender,
route: appShellRoute,
@@ -187,7 +183,7 @@ async function getAllRoutes(workspaceRoot, baseHref, outputFilesForWorker, asset
for (const route of routesFromFile) {
routes.push({
renderMode: models_1.RouteRenderMode.Prerender,
route: (0, url_1.joinUrlParts)(baseHref, route.trim()),
route: (0, url_1.urlJoin)(baseHref, route.trim()),
});
}
}
@@ -209,10 +205,6 @@ async function getAllRoutes(workspaceRoot, baseHref, outputFilesForWorker, asset
hasSsrEntry: !!outputFilesForWorker['server.mjs'],
},
execArgv: workerExecArgv,
env: {
...process.env,
'NG_ALLOWED_HOSTS': 'localhost',
},
});
try {
const { serializedRouteTree, appShellRoute, errors } = await renderWorker.run({});
@@ -241,3 +233,12 @@ async function getAllRoutes(workspaceRoot, baseHref, outputFilesForWorker, asset
void renderWorker.destroy();
}
}
function addLeadingSlash(value) {
return value[0] === '/' ? value : '/' + value;
}
function addTrailingSlash(url) {
return url[url.length - 1] === '/' ? url : `${url}/`;
}
function removeLeadingSlash(value) {
return value[0] === '/' ? value.slice(1) : value;
}

Some files were not shown because too many files have changed in this diff Show More