mirror of
https://github.com/notherealmarco/WASAPhoto.git
synced 2025-03-14 14:16:15 +01:00
Add decaf webui
This commit is contained in:
parent
6b4c9bb531
commit
69c0388954
742 changed files with 608981 additions and 6 deletions
1
.vscode/launch.json
vendored
1
.vscode/launch.json
vendored
|
@ -9,6 +9,7 @@
|
||||||
"type": "go",
|
"type": "go",
|
||||||
"request": "launch",
|
"request": "launch",
|
||||||
"mode": "auto",
|
"mode": "auto",
|
||||||
|
"buildFlags": "-tags webui",
|
||||||
"program": "./cmd/webapi"
|
"program": "./cmd/webapi"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|
|
@ -122,11 +122,11 @@ func run() error {
|
||||||
}
|
}
|
||||||
router := apirouter.Handler()
|
router := apirouter.Handler()
|
||||||
|
|
||||||
//router, err = registerWebUI(router)
|
router, err = registerWebUI(router)
|
||||||
//if err != nil {
|
if err != nil {
|
||||||
// logger.WithError(err).Error("error registering web UI handler")
|
logger.WithError(err).Error("error registering web UI handler")
|
||||||
// return fmt.Errorf("registering web UI handler: %w", err)
|
return fmt.Errorf("registering web UI handler: %w", err)
|
||||||
//}
|
}
|
||||||
|
|
||||||
// Apply CORS policy
|
// Apply CORS policy
|
||||||
router = applyCORSHandler(router)
|
router = applyCORSHandler(router)
|
||||||
|
|
|
@ -4,13 +4,14 @@ package main
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"fmt"
|
"fmt"
|
||||||
//"github.com/notherealmarco/WASAPhoto/webui"
|
"github.com/notherealmarco/WASAPhoto/webui"
|
||||||
"io/fs"
|
"io/fs"
|
||||||
"net/http"
|
"net/http"
|
||||||
"strings"
|
"strings"
|
||||||
)
|
)
|
||||||
|
|
||||||
func registerWebUI(hdl http.Handler) (http.Handler, error) {
|
func registerWebUI(hdl http.Handler) (http.Handler, error) {
|
||||||
|
fmt.Printf("Registering WebUI...")
|
||||||
distDirectory, err := fs.Sub(webui.Dist, "dist")
|
distDirectory, err := fs.Sub(webui.Dist, "dist")
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, fmt.Errorf("error embedding WebUI dist/ directory: %w", err)
|
return nil, fmt.Errorf("error embedding WebUI dist/ directory: %w", err)
|
||||||
|
|
0
open-npm.sh
Normal file → Executable file
0
open-npm.sh
Normal file → Executable file
BIN
wasaphoto.db
Normal file
BIN
wasaphoto.db
Normal file
Binary file not shown.
BIN
webapi
Executable file
BIN
webapi
Executable file
Binary file not shown.
27
webui/.gitignore
vendored
Normal file
27
webui/.gitignore
vendored
Normal file
|
@ -0,0 +1,27 @@
|
||||||
|
# Logs
|
||||||
|
logs
|
||||||
|
*.log
|
||||||
|
npm-debug.log*
|
||||||
|
yarn-debug.log*
|
||||||
|
yarn-error.log*
|
||||||
|
pnpm-debug.log*
|
||||||
|
lerna-debug.log*
|
||||||
|
|
||||||
|
.DS_Store
|
||||||
|
/dist
|
||||||
|
/dist-ssr
|
||||||
|
coverage
|
||||||
|
*.local
|
||||||
|
|
||||||
|
/cypress/videos/
|
||||||
|
/cypress/screenshots/
|
||||||
|
|
||||||
|
# Editor directories and files
|
||||||
|
.vscode/*
|
||||||
|
!.vscode/extensions.json
|
||||||
|
.idea
|
||||||
|
*.suo
|
||||||
|
*.ntvs*
|
||||||
|
*.njsproj
|
||||||
|
*.sln
|
||||||
|
*.sw?
|
3
webui/.vscode/extensions.json
vendored
Normal file
3
webui/.vscode/extensions.json
vendored
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
{
|
||||||
|
"recommendations": ["Vue.volar", "Vue.vscode-typescript-vue-plugin"]
|
||||||
|
}
|
16
webui/index.html
Normal file
16
webui/index.html
Normal file
|
@ -0,0 +1,16 @@
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="en">
|
||||||
|
<head>
|
||||||
|
<title>Example app</title>
|
||||||
|
<meta charset="UTF-8">
|
||||||
|
<link rel="icon" href="/favicon.ico"/>
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||||
|
<link rel="stylesheet" href="/bootstrap/css/bootstrap.css">
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<div id="app"></div>
|
||||||
|
|
||||||
|
<script src="/bootstrap/js/bootstrap.bundle.js"></script>
|
||||||
|
<script type="module" src="/src/main.js"></script>
|
||||||
|
</body>
|
||||||
|
</html>
|
1
webui/node_modules/.bin/esbuild
generated
vendored
Symbolic link
1
webui/node_modules/.bin/esbuild
generated
vendored
Symbolic link
|
@ -0,0 +1 @@
|
||||||
|
../esbuild/bin/esbuild
|
1
webui/node_modules/.bin/nanoid
generated
vendored
Symbolic link
1
webui/node_modules/.bin/nanoid
generated
vendored
Symbolic link
|
@ -0,0 +1 @@
|
||||||
|
../nanoid/bin/nanoid.cjs
|
1
webui/node_modules/.bin/parser
generated
vendored
Symbolic link
1
webui/node_modules/.bin/parser
generated
vendored
Symbolic link
|
@ -0,0 +1 @@
|
||||||
|
../@babel/parser/bin/babel-parser.js
|
1
webui/node_modules/.bin/resolve
generated
vendored
Symbolic link
1
webui/node_modules/.bin/resolve
generated
vendored
Symbolic link
|
@ -0,0 +1 @@
|
||||||
|
../resolve/bin/resolve
|
1
webui/node_modules/.bin/rollup
generated
vendored
Symbolic link
1
webui/node_modules/.bin/rollup
generated
vendored
Symbolic link
|
@ -0,0 +1 @@
|
||||||
|
../rollup/dist/bin/rollup
|
1
webui/node_modules/.bin/vite
generated
vendored
Symbolic link
1
webui/node_modules/.bin/vite
generated
vendored
Symbolic link
|
@ -0,0 +1 @@
|
||||||
|
../vite/bin/vite.js
|
500
webui/node_modules/.package-lock.json
generated
vendored
Normal file
500
webui/node_modules/.package-lock.json
generated
vendored
Normal file
|
@ -0,0 +1,500 @@
|
||||||
|
{
|
||||||
|
"name": "teapot",
|
||||||
|
"version": "0.0.0",
|
||||||
|
"lockfileVersion": 2,
|
||||||
|
"requires": true,
|
||||||
|
"packages": {
|
||||||
|
"node_modules/@babel/parser": {
|
||||||
|
"version": "7.18.13",
|
||||||
|
"resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.18.13.tgz",
|
||||||
|
"integrity": "sha512-dgXcIfMuQ0kgzLB2b9tRZs7TTFFaGM2AbtA4fJgUUYukzGH4jwsS7hzQHEGs67jdehpm22vkgKwvbU+aEflgwg==",
|
||||||
|
"bin": {
|
||||||
|
"parser": "bin/babel-parser.js"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">=6.0.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@vitejs/plugin-vue": {
|
||||||
|
"version": "3.0.3",
|
||||||
|
"resolved": "https://registry.npmjs.org/@vitejs/plugin-vue/-/plugin-vue-3.0.3.tgz",
|
||||||
|
"integrity": "sha512-U4zNBlz9mg+TA+i+5QPc3N5lQvdUXENZLO2h0Wdzp56gI1MWhqJOv+6R+d4kOzoaSSq6TnGPBdZAXKOe4lXy6g==",
|
||||||
|
"dev": true,
|
||||||
|
"engines": {
|
||||||
|
"node": "^14.18.0 || >=16.0.0"
|
||||||
|
},
|
||||||
|
"peerDependencies": {
|
||||||
|
"vite": "^3.0.0",
|
||||||
|
"vue": "^3.2.25"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@vue/compiler-core": {
|
||||||
|
"version": "3.2.37",
|
||||||
|
"resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.2.37.tgz",
|
||||||
|
"integrity": "sha512-81KhEjo7YAOh0vQJoSmAD68wLfYqJvoiD4ulyedzF+OEk/bk6/hx3fTNVfuzugIIaTrOx4PGx6pAiBRe5e9Zmg==",
|
||||||
|
"dependencies": {
|
||||||
|
"@babel/parser": "^7.16.4",
|
||||||
|
"@vue/shared": "3.2.37",
|
||||||
|
"estree-walker": "^2.0.2",
|
||||||
|
"source-map": "^0.6.1"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@vue/compiler-dom": {
|
||||||
|
"version": "3.2.37",
|
||||||
|
"resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.2.37.tgz",
|
||||||
|
"integrity": "sha512-yxJLH167fucHKxaqXpYk7x8z7mMEnXOw3G2q62FTkmsvNxu4FQSu5+3UMb+L7fjKa26DEzhrmCxAgFLLIzVfqQ==",
|
||||||
|
"dependencies": {
|
||||||
|
"@vue/compiler-core": "3.2.37",
|
||||||
|
"@vue/shared": "3.2.37"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@vue/compiler-sfc": {
|
||||||
|
"version": "3.2.37",
|
||||||
|
"resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.2.37.tgz",
|
||||||
|
"integrity": "sha512-+7i/2+9LYlpqDv+KTtWhOZH+pa8/HnX/905MdVmAcI/mPQOBwkHHIzrsEsucyOIZQYMkXUiTkmZq5am/NyXKkg==",
|
||||||
|
"dependencies": {
|
||||||
|
"@babel/parser": "^7.16.4",
|
||||||
|
"@vue/compiler-core": "3.2.37",
|
||||||
|
"@vue/compiler-dom": "3.2.37",
|
||||||
|
"@vue/compiler-ssr": "3.2.37",
|
||||||
|
"@vue/reactivity-transform": "3.2.37",
|
||||||
|
"@vue/shared": "3.2.37",
|
||||||
|
"estree-walker": "^2.0.2",
|
||||||
|
"magic-string": "^0.25.7",
|
||||||
|
"postcss": "^8.1.10",
|
||||||
|
"source-map": "^0.6.1"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@vue/compiler-ssr": {
|
||||||
|
"version": "3.2.37",
|
||||||
|
"resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.2.37.tgz",
|
||||||
|
"integrity": "sha512-7mQJD7HdXxQjktmsWp/J67lThEIcxLemz1Vb5I6rYJHR5vI+lON3nPGOH3ubmbvYGt8xEUaAr1j7/tIFWiEOqw==",
|
||||||
|
"dependencies": {
|
||||||
|
"@vue/compiler-dom": "3.2.37",
|
||||||
|
"@vue/shared": "3.2.37"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@vue/devtools-api": {
|
||||||
|
"version": "6.2.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/@vue/devtools-api/-/devtools-api-6.2.1.tgz",
|
||||||
|
"integrity": "sha512-OEgAMeQXvCoJ+1x8WyQuVZzFo0wcyCmUR3baRVLmKBo1LmYZWMlRiXlux5jd0fqVJu6PfDbOrZItVqUEzLobeQ=="
|
||||||
|
},
|
||||||
|
"node_modules/@vue/reactivity": {
|
||||||
|
"version": "3.2.37",
|
||||||
|
"resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.2.37.tgz",
|
||||||
|
"integrity": "sha512-/7WRafBOshOc6m3F7plwzPeCu/RCVv9uMpOwa/5PiY1Zz+WLVRWiy0MYKwmg19KBdGtFWsmZ4cD+LOdVPcs52A==",
|
||||||
|
"dependencies": {
|
||||||
|
"@vue/shared": "3.2.37"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@vue/reactivity-transform": {
|
||||||
|
"version": "3.2.37",
|
||||||
|
"resolved": "https://registry.npmjs.org/@vue/reactivity-transform/-/reactivity-transform-3.2.37.tgz",
|
||||||
|
"integrity": "sha512-IWopkKEb+8qpu/1eMKVeXrK0NLw9HicGviJzhJDEyfxTR9e1WtpnnbYkJWurX6WwoFP0sz10xQg8yL8lgskAZg==",
|
||||||
|
"dependencies": {
|
||||||
|
"@babel/parser": "^7.16.4",
|
||||||
|
"@vue/compiler-core": "3.2.37",
|
||||||
|
"@vue/shared": "3.2.37",
|
||||||
|
"estree-walker": "^2.0.2",
|
||||||
|
"magic-string": "^0.25.7"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@vue/runtime-core": {
|
||||||
|
"version": "3.2.37",
|
||||||
|
"resolved": "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.2.37.tgz",
|
||||||
|
"integrity": "sha512-JPcd9kFyEdXLl/i0ClS7lwgcs0QpUAWj+SKX2ZC3ANKi1U4DOtiEr6cRqFXsPwY5u1L9fAjkinIdB8Rz3FoYNQ==",
|
||||||
|
"dependencies": {
|
||||||
|
"@vue/reactivity": "3.2.37",
|
||||||
|
"@vue/shared": "3.2.37"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@vue/runtime-dom": {
|
||||||
|
"version": "3.2.37",
|
||||||
|
"resolved": "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.2.37.tgz",
|
||||||
|
"integrity": "sha512-HimKdh9BepShW6YozwRKAYjYQWg9mQn63RGEiSswMbW+ssIht1MILYlVGkAGGQbkhSh31PCdoUcfiu4apXJoPw==",
|
||||||
|
"dependencies": {
|
||||||
|
"@vue/runtime-core": "3.2.37",
|
||||||
|
"@vue/shared": "3.2.37",
|
||||||
|
"csstype": "^2.6.8"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@vue/server-renderer": {
|
||||||
|
"version": "3.2.37",
|
||||||
|
"resolved": "https://registry.npmjs.org/@vue/server-renderer/-/server-renderer-3.2.37.tgz",
|
||||||
|
"integrity": "sha512-kLITEJvaYgZQ2h47hIzPh2K3jG8c1zCVbp/o/bzQOyvzaKiCquKS7AaioPI28GNxIsE/zSx+EwWYsNxDCX95MA==",
|
||||||
|
"dependencies": {
|
||||||
|
"@vue/compiler-ssr": "3.2.37",
|
||||||
|
"@vue/shared": "3.2.37"
|
||||||
|
},
|
||||||
|
"peerDependencies": {
|
||||||
|
"vue": "3.2.37"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@vue/shared": {
|
||||||
|
"version": "3.2.37",
|
||||||
|
"resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.2.37.tgz",
|
||||||
|
"integrity": "sha512-4rSJemR2NQIo9Klm1vabqWjD8rs/ZaJSzMxkMNeJS6lHiUjjUeYFbooN19NgFjztubEKh3WlZUeOLVdbbUWHsw=="
|
||||||
|
},
|
||||||
|
"node_modules/asynckit": {
|
||||||
|
"version": "0.4.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz",
|
||||||
|
"integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q=="
|
||||||
|
},
|
||||||
|
"node_modules/axios": {
|
||||||
|
"version": "0.27.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/axios/-/axios-0.27.2.tgz",
|
||||||
|
"integrity": "sha512-t+yRIyySRTp/wua5xEr+z1q60QmLq8ABsS5O9Me1AsE5dfKqgnCFzwiCZZ/cGNd1lq4/7akDWMxdhVlucjmnOQ==",
|
||||||
|
"dependencies": {
|
||||||
|
"follow-redirects": "^1.14.9",
|
||||||
|
"form-data": "^4.0.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/combined-stream": {
|
||||||
|
"version": "1.0.8",
|
||||||
|
"resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz",
|
||||||
|
"integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==",
|
||||||
|
"dependencies": {
|
||||||
|
"delayed-stream": "~1.0.0"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">= 0.8"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/csstype": {
|
||||||
|
"version": "2.6.20",
|
||||||
|
"resolved": "https://registry.npmjs.org/csstype/-/csstype-2.6.20.tgz",
|
||||||
|
"integrity": "sha512-/WwNkdXfckNgw6S5R125rrW8ez139lBHWouiBvX8dfMFtcn6V81REDqnH7+CRpRipfYlyU1CmOnOxrmGcFOjeA=="
|
||||||
|
},
|
||||||
|
"node_modules/delayed-stream": {
|
||||||
|
"version": "1.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz",
|
||||||
|
"integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==",
|
||||||
|
"engines": {
|
||||||
|
"node": ">=0.4.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/esbuild": {
|
||||||
|
"version": "0.14.54",
|
||||||
|
"resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.14.54.tgz",
|
||||||
|
"integrity": "sha512-Cy9llcy8DvET5uznocPyqL3BFRrFXSVqbgpMJ9Wz8oVjZlh/zUSNbPRbov0VX7VxN2JH1Oa0uNxZ7eLRb62pJA==",
|
||||||
|
"dev": true,
|
||||||
|
"hasInstallScript": true,
|
||||||
|
"bin": {
|
||||||
|
"esbuild": "bin/esbuild"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">=12"
|
||||||
|
},
|
||||||
|
"optionalDependencies": {
|
||||||
|
"@esbuild/linux-loong64": "0.14.54",
|
||||||
|
"esbuild-android-64": "0.14.54",
|
||||||
|
"esbuild-android-arm64": "0.14.54",
|
||||||
|
"esbuild-darwin-64": "0.14.54",
|
||||||
|
"esbuild-darwin-arm64": "0.14.54",
|
||||||
|
"esbuild-freebsd-64": "0.14.54",
|
||||||
|
"esbuild-freebsd-arm64": "0.14.54",
|
||||||
|
"esbuild-linux-32": "0.14.54",
|
||||||
|
"esbuild-linux-64": "0.14.54",
|
||||||
|
"esbuild-linux-arm": "0.14.54",
|
||||||
|
"esbuild-linux-arm64": "0.14.54",
|
||||||
|
"esbuild-linux-mips64le": "0.14.54",
|
||||||
|
"esbuild-linux-ppc64le": "0.14.54",
|
||||||
|
"esbuild-linux-riscv64": "0.14.54",
|
||||||
|
"esbuild-linux-s390x": "0.14.54",
|
||||||
|
"esbuild-netbsd-64": "0.14.54",
|
||||||
|
"esbuild-openbsd-64": "0.14.54",
|
||||||
|
"esbuild-sunos-64": "0.14.54",
|
||||||
|
"esbuild-windows-32": "0.14.54",
|
||||||
|
"esbuild-windows-64": "0.14.54",
|
||||||
|
"esbuild-windows-arm64": "0.14.54"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/esbuild-linux-64": {
|
||||||
|
"version": "0.14.54",
|
||||||
|
"resolved": "https://registry.npmjs.org/esbuild-linux-64/-/esbuild-linux-64-0.14.54.tgz",
|
||||||
|
"integrity": "sha512-EgjAgH5HwTbtNsTqQOXWApBaPVdDn7XcK+/PtJwZLT1UmpLoznPd8c5CxqsH2dQK3j05YsB3L17T8vE7cp4cCg==",
|
||||||
|
"cpu": [
|
||||||
|
"x64"
|
||||||
|
],
|
||||||
|
"dev": true,
|
||||||
|
"optional": true,
|
||||||
|
"os": [
|
||||||
|
"linux"
|
||||||
|
],
|
||||||
|
"engines": {
|
||||||
|
"node": ">=12"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/estree-walker": {
|
||||||
|
"version": "2.0.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz",
|
||||||
|
"integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w=="
|
||||||
|
},
|
||||||
|
"node_modules/follow-redirects": {
|
||||||
|
"version": "1.15.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.1.tgz",
|
||||||
|
"integrity": "sha512-yLAMQs+k0b2m7cVxpS1VKJVvoz7SS9Td1zss3XRwXj+ZDH00RJgnuLx7E44wx02kQLrdM3aOOy+FpzS7+8OizA==",
|
||||||
|
"funding": [
|
||||||
|
{
|
||||||
|
"type": "individual",
|
||||||
|
"url": "https://github.com/sponsors/RubenVerborgh"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"engines": {
|
||||||
|
"node": ">=4.0"
|
||||||
|
},
|
||||||
|
"peerDependenciesMeta": {
|
||||||
|
"debug": {
|
||||||
|
"optional": true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/form-data": {
|
||||||
|
"version": "4.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz",
|
||||||
|
"integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==",
|
||||||
|
"dependencies": {
|
||||||
|
"asynckit": "^0.4.0",
|
||||||
|
"combined-stream": "^1.0.8",
|
||||||
|
"mime-types": "^2.1.12"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">= 6"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/function-bind": {
|
||||||
|
"version": "1.1.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz",
|
||||||
|
"integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
|
"node_modules/has": {
|
||||||
|
"version": "1.0.3",
|
||||||
|
"resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz",
|
||||||
|
"integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==",
|
||||||
|
"dev": true,
|
||||||
|
"dependencies": {
|
||||||
|
"function-bind": "^1.1.1"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">= 0.4.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/is-core-module": {
|
||||||
|
"version": "2.10.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.10.0.tgz",
|
||||||
|
"integrity": "sha512-Erxj2n/LDAZ7H8WNJXd9tw38GYM3dv8rk8Zcs+jJuxYTW7sozH+SS8NtrSjVL1/vpLvWi1hxy96IzjJ3EHTJJg==",
|
||||||
|
"dev": true,
|
||||||
|
"dependencies": {
|
||||||
|
"has": "^1.0.3"
|
||||||
|
},
|
||||||
|
"funding": {
|
||||||
|
"url": "https://github.com/sponsors/ljharb"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/magic-string": {
|
||||||
|
"version": "0.25.9",
|
||||||
|
"resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.25.9.tgz",
|
||||||
|
"integrity": "sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ==",
|
||||||
|
"dependencies": {
|
||||||
|
"sourcemap-codec": "^1.4.8"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/mime-db": {
|
||||||
|
"version": "1.52.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz",
|
||||||
|
"integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==",
|
||||||
|
"engines": {
|
||||||
|
"node": ">= 0.6"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/mime-types": {
|
||||||
|
"version": "2.1.35",
|
||||||
|
"resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz",
|
||||||
|
"integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==",
|
||||||
|
"dependencies": {
|
||||||
|
"mime-db": "1.52.0"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">= 0.6"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/nanoid": {
|
||||||
|
"version": "3.3.4",
|
||||||
|
"resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.4.tgz",
|
||||||
|
"integrity": "sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==",
|
||||||
|
"bin": {
|
||||||
|
"nanoid": "bin/nanoid.cjs"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/path-parse": {
|
||||||
|
"version": "1.0.7",
|
||||||
|
"resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz",
|
||||||
|
"integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
|
"node_modules/picocolors": {
|
||||||
|
"version": "1.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz",
|
||||||
|
"integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ=="
|
||||||
|
},
|
||||||
|
"node_modules/postcss": {
|
||||||
|
"version": "8.4.16",
|
||||||
|
"resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.16.tgz",
|
||||||
|
"integrity": "sha512-ipHE1XBvKzm5xI7hiHCZJCSugxvsdq2mPnsq5+UF+VHCjiBvtDrlxJfMBToWaP9D5XlgNmcFGqoHmUn0EYEaRQ==",
|
||||||
|
"funding": [
|
||||||
|
{
|
||||||
|
"type": "opencollective",
|
||||||
|
"url": "https://opencollective.com/postcss/"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "tidelift",
|
||||||
|
"url": "https://tidelift.com/funding/github/npm/postcss"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"dependencies": {
|
||||||
|
"nanoid": "^3.3.4",
|
||||||
|
"picocolors": "^1.0.0",
|
||||||
|
"source-map-js": "^1.0.2"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": "^10 || ^12 || >=14"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/resolve": {
|
||||||
|
"version": "1.22.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz",
|
||||||
|
"integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==",
|
||||||
|
"dev": true,
|
||||||
|
"dependencies": {
|
||||||
|
"is-core-module": "^2.9.0",
|
||||||
|
"path-parse": "^1.0.7",
|
||||||
|
"supports-preserve-symlinks-flag": "^1.0.0"
|
||||||
|
},
|
||||||
|
"bin": {
|
||||||
|
"resolve": "bin/resolve"
|
||||||
|
},
|
||||||
|
"funding": {
|
||||||
|
"url": "https://github.com/sponsors/ljharb"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/rollup": {
|
||||||
|
"version": "2.77.3",
|
||||||
|
"resolved": "https://registry.npmjs.org/rollup/-/rollup-2.77.3.tgz",
|
||||||
|
"integrity": "sha512-/qxNTG7FbmefJWoeeYJFbHehJ2HNWnjkAFRKzWN/45eNBBF/r8lo992CwcJXEzyVxs5FmfId+vTSTQDb+bxA+g==",
|
||||||
|
"dev": true,
|
||||||
|
"bin": {
|
||||||
|
"rollup": "dist/bin/rollup"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">=10.0.0"
|
||||||
|
},
|
||||||
|
"optionalDependencies": {
|
||||||
|
"fsevents": "~2.3.2"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/source-map": {
|
||||||
|
"version": "0.6.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
|
||||||
|
"integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
|
||||||
|
"engines": {
|
||||||
|
"node": ">=0.10.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/source-map-js": {
|
||||||
|
"version": "1.0.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz",
|
||||||
|
"integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==",
|
||||||
|
"engines": {
|
||||||
|
"node": ">=0.10.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/sourcemap-codec": {
|
||||||
|
"version": "1.4.8",
|
||||||
|
"resolved": "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz",
|
||||||
|
"integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA=="
|
||||||
|
},
|
||||||
|
"node_modules/supports-preserve-symlinks-flag": {
|
||||||
|
"version": "1.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz",
|
||||||
|
"integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==",
|
||||||
|
"dev": true,
|
||||||
|
"engines": {
|
||||||
|
"node": ">= 0.4"
|
||||||
|
},
|
||||||
|
"funding": {
|
||||||
|
"url": "https://github.com/sponsors/ljharb"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/vite": {
|
||||||
|
"version": "3.0.9",
|
||||||
|
"resolved": "https://registry.npmjs.org/vite/-/vite-3.0.9.tgz",
|
||||||
|
"integrity": "sha512-waYABTM+G6DBTCpYAxvevpG50UOlZuynR0ckTK5PawNVt7ebX6X7wNXHaGIO6wYYFXSM7/WcuFuO2QzhBB6aMw==",
|
||||||
|
"dev": true,
|
||||||
|
"dependencies": {
|
||||||
|
"esbuild": "^0.14.47",
|
||||||
|
"postcss": "^8.4.16",
|
||||||
|
"resolve": "^1.22.1",
|
||||||
|
"rollup": ">=2.75.6 <2.77.0 || ~2.77.0"
|
||||||
|
},
|
||||||
|
"bin": {
|
||||||
|
"vite": "bin/vite.js"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": "^14.18.0 || >=16.0.0"
|
||||||
|
},
|
||||||
|
"optionalDependencies": {
|
||||||
|
"fsevents": "~2.3.2"
|
||||||
|
},
|
||||||
|
"peerDependencies": {
|
||||||
|
"less": "*",
|
||||||
|
"sass": "*",
|
||||||
|
"stylus": "*",
|
||||||
|
"terser": "^5.4.0"
|
||||||
|
},
|
||||||
|
"peerDependenciesMeta": {
|
||||||
|
"less": {
|
||||||
|
"optional": true
|
||||||
|
},
|
||||||
|
"sass": {
|
||||||
|
"optional": true
|
||||||
|
},
|
||||||
|
"stylus": {
|
||||||
|
"optional": true
|
||||||
|
},
|
||||||
|
"terser": {
|
||||||
|
"optional": true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/vue": {
|
||||||
|
"version": "3.2.37",
|
||||||
|
"resolved": "https://registry.npmjs.org/vue/-/vue-3.2.37.tgz",
|
||||||
|
"integrity": "sha512-bOKEZxrm8Eh+fveCqS1/NkG/n6aMidsI6hahas7pa0w/l7jkbssJVsRhVDs07IdDq7h9KHswZOgItnwJAgtVtQ==",
|
||||||
|
"dependencies": {
|
||||||
|
"@vue/compiler-dom": "3.2.37",
|
||||||
|
"@vue/compiler-sfc": "3.2.37",
|
||||||
|
"@vue/runtime-dom": "3.2.37",
|
||||||
|
"@vue/server-renderer": "3.2.37",
|
||||||
|
"@vue/shared": "3.2.37"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/vue-router": {
|
||||||
|
"version": "4.1.4",
|
||||||
|
"resolved": "https://registry.npmjs.org/vue-router/-/vue-router-4.1.4.tgz",
|
||||||
|
"integrity": "sha512-UgYen33gOtwT3cOG1+yRen+Brk9py8CSlC9LEa3UjvKZ4EAoSo8NjZPDeDnmNerfazorHIJG1NC7qdi1SuQJnQ==",
|
||||||
|
"dependencies": {
|
||||||
|
"@vue/devtools-api": "^6.1.4"
|
||||||
|
},
|
||||||
|
"funding": {
|
||||||
|
"url": "https://github.com/sponsors/posva"
|
||||||
|
},
|
||||||
|
"peerDependencies": {
|
||||||
|
"vue": "^3.2.0"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
1073
webui/node_modules/@babel/parser/CHANGELOG.md
generated
vendored
Normal file
1073
webui/node_modules/@babel/parser/CHANGELOG.md
generated
vendored
Normal file
File diff suppressed because it is too large
Load diff
19
webui/node_modules/@babel/parser/LICENSE
generated
vendored
Normal file
19
webui/node_modules/@babel/parser/LICENSE
generated
vendored
Normal file
|
@ -0,0 +1,19 @@
|
||||||
|
Copyright (C) 2012-2014 by various contributors (see AUTHORS)
|
||||||
|
|
||||||
|
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.
|
19
webui/node_modules/@babel/parser/README.md
generated
vendored
Normal file
19
webui/node_modules/@babel/parser/README.md
generated
vendored
Normal file
|
@ -0,0 +1,19 @@
|
||||||
|
# @babel/parser
|
||||||
|
|
||||||
|
> A JavaScript parser
|
||||||
|
|
||||||
|
See our website [@babel/parser](https://babeljs.io/docs/en/babel-parser) for more information or the [issues](https://github.com/babel/babel/issues?utf8=%E2%9C%93&q=is%3Aissue+label%3A%22pkg%3A%20parser%20(babylon)%22+is%3Aopen) associated with this package.
|
||||||
|
|
||||||
|
## Install
|
||||||
|
|
||||||
|
Using npm:
|
||||||
|
|
||||||
|
```sh
|
||||||
|
npm install --save-dev @babel/parser
|
||||||
|
```
|
||||||
|
|
||||||
|
or using yarn:
|
||||||
|
|
||||||
|
```sh
|
||||||
|
yarn add @babel/parser --dev
|
||||||
|
```
|
15
webui/node_modules/@babel/parser/bin/babel-parser.js
generated
vendored
Executable file
15
webui/node_modules/@babel/parser/bin/babel-parser.js
generated
vendored
Executable file
|
@ -0,0 +1,15 @@
|
||||||
|
#!/usr/bin/env node
|
||||||
|
/* eslint no-var: 0 */
|
||||||
|
|
||||||
|
var parser = require("..");
|
||||||
|
var fs = require("fs");
|
||||||
|
|
||||||
|
var filename = process.argv[2];
|
||||||
|
if (!filename) {
|
||||||
|
console.error("no filename specified");
|
||||||
|
} else {
|
||||||
|
var file = fs.readFileSync(filename, "utf8");
|
||||||
|
var ast = parser.parse(file);
|
||||||
|
|
||||||
|
console.log(JSON.stringify(ast, null, " "));
|
||||||
|
}
|
5
webui/node_modules/@babel/parser/index.cjs
generated
vendored
Normal file
5
webui/node_modules/@babel/parser/index.cjs
generated
vendored
Normal file
|
@ -0,0 +1,5 @@
|
||||||
|
try {
|
||||||
|
module.exports = require("./lib/index.cjs");
|
||||||
|
} catch {
|
||||||
|
module.exports = require("./lib/index.js");
|
||||||
|
}
|
16800
webui/node_modules/@babel/parser/lib/index.js
generated
vendored
Normal file
16800
webui/node_modules/@babel/parser/lib/index.js
generated
vendored
Normal file
File diff suppressed because it is too large
Load diff
1
webui/node_modules/@babel/parser/lib/index.js.map
generated
vendored
Normal file
1
webui/node_modules/@babel/parser/lib/index.js.map
generated
vendored
Normal file
File diff suppressed because one or more lines are too long
46
webui/node_modules/@babel/parser/package.json
generated
vendored
Normal file
46
webui/node_modules/@babel/parser/package.json
generated
vendored
Normal file
|
@ -0,0 +1,46 @@
|
||||||
|
{
|
||||||
|
"name": "@babel/parser",
|
||||||
|
"version": "7.18.13",
|
||||||
|
"description": "A JavaScript parser",
|
||||||
|
"author": "The Babel Team (https://babel.dev/team)",
|
||||||
|
"homepage": "https://babel.dev/docs/en/next/babel-parser",
|
||||||
|
"bugs": "https://github.com/babel/babel/issues?utf8=%E2%9C%93&q=is%3Aissue+label%3A%22pkg%3A+parser+%28babylon%29%22+is%3Aopen",
|
||||||
|
"license": "MIT",
|
||||||
|
"publishConfig": {
|
||||||
|
"access": "public"
|
||||||
|
},
|
||||||
|
"keywords": [
|
||||||
|
"babel",
|
||||||
|
"javascript",
|
||||||
|
"parser",
|
||||||
|
"tc39",
|
||||||
|
"ecmascript",
|
||||||
|
"@babel/parser"
|
||||||
|
],
|
||||||
|
"repository": {
|
||||||
|
"type": "git",
|
||||||
|
"url": "https://github.com/babel/babel.git",
|
||||||
|
"directory": "packages/babel-parser"
|
||||||
|
},
|
||||||
|
"main": "./lib/index.js",
|
||||||
|
"types": "./typings/babel-parser.d.ts",
|
||||||
|
"files": [
|
||||||
|
"bin",
|
||||||
|
"lib",
|
||||||
|
"typings",
|
||||||
|
"index.cjs"
|
||||||
|
],
|
||||||
|
"engines": {
|
||||||
|
"node": ">=6.0.0"
|
||||||
|
},
|
||||||
|
"devDependencies": {
|
||||||
|
"@babel/code-frame": "^7.18.6",
|
||||||
|
"@babel/helper-check-duplicate-nodes": "^7.18.6",
|
||||||
|
"@babel/helper-fixtures": "^7.18.6",
|
||||||
|
"@babel/helper-string-parser": "^7.18.10",
|
||||||
|
"@babel/helper-validator-identifier": "^7.18.6",
|
||||||
|
"charcodes": "^0.2.0"
|
||||||
|
},
|
||||||
|
"bin": "./bin/babel-parser.js",
|
||||||
|
"type": "commonjs"
|
||||||
|
}
|
214
webui/node_modules/@babel/parser/typings/babel-parser.d.ts
generated
vendored
Normal file
214
webui/node_modules/@babel/parser/typings/babel-parser.d.ts
generated
vendored
Normal file
|
@ -0,0 +1,214 @@
|
||||||
|
// Type definitions for @babel/parser
|
||||||
|
// Project: https://github.com/babel/babel/tree/main/packages/babel-parser
|
||||||
|
// Definitions by: Troy Gerwien <https://github.com/yortus>
|
||||||
|
// Marvin Hagemeister <https://github.com/marvinhagemeister>
|
||||||
|
// Avi Vahl <https://github.com/AviVahl>
|
||||||
|
// TypeScript Version: 2.9
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Parse the provided code as an entire ECMAScript program.
|
||||||
|
*/
|
||||||
|
export function parse(
|
||||||
|
input: string,
|
||||||
|
options?: ParserOptions
|
||||||
|
): ParseResult<import("@babel/types").File>;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Parse the provided code as a single expression.
|
||||||
|
*/
|
||||||
|
export function parseExpression(
|
||||||
|
input: string,
|
||||||
|
options?: ParserOptions
|
||||||
|
): ParseResult<import("@babel/types").Expression>;
|
||||||
|
|
||||||
|
export interface ParserOptions {
|
||||||
|
/**
|
||||||
|
* By default, import and export declarations can only appear at a program's top level.
|
||||||
|
* Setting this option to true allows them anywhere where a statement is allowed.
|
||||||
|
*/
|
||||||
|
allowImportExportEverywhere?: boolean;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* By default, await use is not allowed outside of an async function.
|
||||||
|
* Set this to true to accept such code.
|
||||||
|
*/
|
||||||
|
allowAwaitOutsideFunction?: boolean;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* By default, a return statement at the top level raises an error.
|
||||||
|
* Set this to true to accept such code.
|
||||||
|
*/
|
||||||
|
allowReturnOutsideFunction?: boolean;
|
||||||
|
|
||||||
|
allowSuperOutsideMethod?: boolean;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* By default, exported identifiers must refer to a declared variable.
|
||||||
|
* Set this to true to allow export statements to reference undeclared variables.
|
||||||
|
*/
|
||||||
|
allowUndeclaredExports?: boolean;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* By default, Babel attaches comments to adjacent AST nodes.
|
||||||
|
* When this option is set to false, comments are not attached.
|
||||||
|
* It can provide up to 30% performance improvement when the input code has many comments.
|
||||||
|
* @babel/eslint-parser will set it for you.
|
||||||
|
* It is not recommended to use attachComment: false with Babel transform,
|
||||||
|
* as doing so removes all the comments in output code, and renders annotations such as
|
||||||
|
* /* istanbul ignore next *\/ nonfunctional.
|
||||||
|
*/
|
||||||
|
attachComment?: boolean;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* By default, Babel always throws an error when it finds some invalid code.
|
||||||
|
* When this option is set to true, it will store the parsing error and
|
||||||
|
* try to continue parsing the invalid input file.
|
||||||
|
*/
|
||||||
|
errorRecovery?: boolean;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Indicate the mode the code should be parsed in.
|
||||||
|
* Can be one of "script", "module", or "unambiguous". Defaults to "script".
|
||||||
|
* "unambiguous" will make @babel/parser attempt to guess, based on the presence
|
||||||
|
* of ES6 import or export statements.
|
||||||
|
* Files with ES6 imports and exports are considered "module" and are otherwise "script".
|
||||||
|
*/
|
||||||
|
sourceType?: "script" | "module" | "unambiguous";
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Correlate output AST nodes with their source filename.
|
||||||
|
* Useful when generating code and source maps from the ASTs of multiple input files.
|
||||||
|
*/
|
||||||
|
sourceFilename?: string;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* By default, the first line of code parsed is treated as line 1.
|
||||||
|
* You can provide a line number to alternatively start with.
|
||||||
|
* Useful for integration with other source tools.
|
||||||
|
*/
|
||||||
|
startLine?: number;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* By default, the parsed code is treated as if it starts from line 1, column 0.
|
||||||
|
* You can provide a column number to alternatively start with.
|
||||||
|
* Useful for integration with other source tools.
|
||||||
|
*/
|
||||||
|
startColumn?: number;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Array containing the plugins that you want to enable.
|
||||||
|
*/
|
||||||
|
plugins?: ParserPlugin[];
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Should the parser work in strict mode.
|
||||||
|
* Defaults to true if sourceType === 'module'. Otherwise, false.
|
||||||
|
*/
|
||||||
|
strictMode?: boolean;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Adds a ranges property to each node: [node.start, node.end]
|
||||||
|
*/
|
||||||
|
ranges?: boolean;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Adds all parsed tokens to a tokens property on the File node.
|
||||||
|
*/
|
||||||
|
tokens?: boolean;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* By default, the parser adds information about parentheses by setting
|
||||||
|
* `extra.parenthesized` to `true` as needed.
|
||||||
|
* When this option is `true` the parser creates `ParenthesizedExpression`
|
||||||
|
* AST nodes instead of using the `extra` property.
|
||||||
|
*/
|
||||||
|
createParenthesizedExpressions?: boolean;
|
||||||
|
}
|
||||||
|
|
||||||
|
export type ParserPlugin =
|
||||||
|
| "asyncDoExpressions"
|
||||||
|
| "asyncGenerators"
|
||||||
|
| "bigInt"
|
||||||
|
| "classPrivateMethods"
|
||||||
|
| "classPrivateProperties"
|
||||||
|
| "classProperties"
|
||||||
|
| "classStaticBlock" // Enabled by default
|
||||||
|
| "decimal"
|
||||||
|
| "decorators"
|
||||||
|
| "decorators-legacy"
|
||||||
|
| "decoratorAutoAccessors"
|
||||||
|
| "destructuringPrivate"
|
||||||
|
| "doExpressions"
|
||||||
|
| "dynamicImport"
|
||||||
|
| "estree"
|
||||||
|
| "exportDefaultFrom"
|
||||||
|
| "exportNamespaceFrom" // deprecated
|
||||||
|
| "flow"
|
||||||
|
| "flowComments"
|
||||||
|
| "functionBind"
|
||||||
|
| "functionSent"
|
||||||
|
| "importMeta"
|
||||||
|
| "jsx"
|
||||||
|
| "logicalAssignment"
|
||||||
|
| "importAssertions"
|
||||||
|
| "moduleBlocks"
|
||||||
|
| "moduleStringNames"
|
||||||
|
| "nullishCoalescingOperator"
|
||||||
|
| "numericSeparator"
|
||||||
|
| "objectRestSpread"
|
||||||
|
| "optionalCatchBinding"
|
||||||
|
| "optionalChaining"
|
||||||
|
| "partialApplication"
|
||||||
|
| "pipelineOperator"
|
||||||
|
| "placeholders"
|
||||||
|
| "privateIn" // Enabled by default
|
||||||
|
| "regexpUnicodeSets"
|
||||||
|
| "throwExpressions"
|
||||||
|
| "topLevelAwait"
|
||||||
|
| "typescript"
|
||||||
|
| "v8intrinsic"
|
||||||
|
| ParserPluginWithOptions;
|
||||||
|
|
||||||
|
export type ParserPluginWithOptions =
|
||||||
|
| ["decorators", DecoratorsPluginOptions]
|
||||||
|
| ["pipelineOperator", PipelineOperatorPluginOptions]
|
||||||
|
| ["recordAndTuple", RecordAndTuplePluginOptions]
|
||||||
|
| ["flow", FlowPluginOptions]
|
||||||
|
| ["typescript", TypeScriptPluginOptions];
|
||||||
|
|
||||||
|
export interface DecoratorsPluginOptions {
|
||||||
|
decoratorsBeforeExport?: boolean;
|
||||||
|
}
|
||||||
|
|
||||||
|
export interface PipelineOperatorPluginOptions {
|
||||||
|
proposal: "minimal" | "fsharp" | "hack" | "smart";
|
||||||
|
topicToken?: "%" | "#" | "@@" | "^^" | "^";
|
||||||
|
}
|
||||||
|
|
||||||
|
export interface RecordAndTuplePluginOptions {
|
||||||
|
syntaxType: "bar" | "hash";
|
||||||
|
}
|
||||||
|
|
||||||
|
export interface FlowPluginOptions {
|
||||||
|
all?: boolean;
|
||||||
|
enums?: boolean;
|
||||||
|
}
|
||||||
|
|
||||||
|
export interface TypeScriptPluginOptions {
|
||||||
|
dts?: boolean;
|
||||||
|
disallowAmbiguousJSXLike?: boolean;
|
||||||
|
}
|
||||||
|
|
||||||
|
export const tokTypes: {
|
||||||
|
// todo(flow->ts) real token type
|
||||||
|
[name: string]: any;
|
||||||
|
};
|
||||||
|
|
||||||
|
export interface ParseError {
|
||||||
|
code: string;
|
||||||
|
reasonCode: string;
|
||||||
|
}
|
||||||
|
|
||||||
|
type ParseResult<Result> = Result & {
|
||||||
|
errors: ParseError[];
|
||||||
|
};
|
21
webui/node_modules/@vitejs/plugin-vue/LICENSE
generated
vendored
Normal file
21
webui/node_modules/@vitejs/plugin-vue/LICENSE
generated
vendored
Normal file
|
@ -0,0 +1,21 @@
|
||||||
|
MIT License
|
||||||
|
|
||||||
|
Copyright (c) 2019-present, Yuxi (Evan) You and Vite contributors
|
||||||
|
|
||||||
|
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.
|
171
webui/node_modules/@vitejs/plugin-vue/README.md
generated
vendored
Normal file
171
webui/node_modules/@vitejs/plugin-vue/README.md
generated
vendored
Normal file
|
@ -0,0 +1,171 @@
|
||||||
|
# @vitejs/plugin-vue [](https://npmjs.com/package/@vitejs/plugin-vue)
|
||||||
|
|
||||||
|
> Note: as of `vue` 3.2.13+ and `@vitejs/plugin-vue` 1.9.0+, `@vue/compiler-sfc` is no longer required as a peer dependency.
|
||||||
|
|
||||||
|
```js
|
||||||
|
// vite.config.js
|
||||||
|
import vue from '@vitejs/plugin-vue'
|
||||||
|
|
||||||
|
export default {
|
||||||
|
plugins: [vue()]
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
## Options
|
||||||
|
|
||||||
|
```ts
|
||||||
|
export interface Options {
|
||||||
|
include?: string | RegExp | (string | RegExp)[]
|
||||||
|
exclude?: string | RegExp | (string | RegExp)[]
|
||||||
|
|
||||||
|
ssr?: boolean
|
||||||
|
isProduction?: boolean
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Transform Vue SFCs into custom elements (requires vue@^3.2.0)
|
||||||
|
* - `true` -> all `*.vue` imports are converted into custom elements
|
||||||
|
* - `string | RegExp` -> matched files are converted into custom elements
|
||||||
|
*
|
||||||
|
* @default /\.ce\.vue$/
|
||||||
|
*/
|
||||||
|
customElement?: boolean | string | RegExp | (string | RegExp)[]
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Enable Vue reactivity transform (experimental, requires vue@^3.2.25).
|
||||||
|
* https://github.com/vuejs/core/tree/master/packages/reactivity-transform
|
||||||
|
*
|
||||||
|
* - `true`: transform will be enabled for all vue,js(x),ts(x) files except
|
||||||
|
* those inside node_modules
|
||||||
|
* - `string | RegExp`: apply to vue + only matched files (will include
|
||||||
|
* node_modules, so specify directories in necessary)
|
||||||
|
* - `false`: disable in all cases
|
||||||
|
*
|
||||||
|
* @default false
|
||||||
|
*/
|
||||||
|
reactivityTransform?: boolean | string | RegExp | (string | RegExp)[]
|
||||||
|
|
||||||
|
// options to pass on to vue/compiler-sfc
|
||||||
|
script?: Partial<Pick<SFCScriptCompileOptions, 'babelParserPlugins'>>
|
||||||
|
template?: Partial<
|
||||||
|
Pick<
|
||||||
|
SFCTemplateCompileOptions,
|
||||||
|
| 'compiler'
|
||||||
|
| 'compilerOptions'
|
||||||
|
| 'preprocessOptions'
|
||||||
|
| 'preprocessCustomRequire'
|
||||||
|
| 'transformAssetUrls'
|
||||||
|
>
|
||||||
|
>
|
||||||
|
style?: Partial<Pick<SFCStyleCompileOptions, 'trim'>>
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
## Asset URL handling
|
||||||
|
|
||||||
|
When `@vitejs/plugin-vue` compiles the `<template>` blocks in SFCs, it also converts any encountered asset URLs into ESM imports.
|
||||||
|
|
||||||
|
For example, the following template snippet:
|
||||||
|
|
||||||
|
```vue
|
||||||
|
<img src="../image.png" />
|
||||||
|
```
|
||||||
|
|
||||||
|
Is the same as:
|
||||||
|
|
||||||
|
```vue
|
||||||
|
<script setup>
|
||||||
|
import _imports_0 from '../image.png'
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<img src="_imports_0" />
|
||||||
|
```
|
||||||
|
|
||||||
|
By default the following tag/attribute combinations are transformed, and can be configured using the `template.transformAssetUrls` option.
|
||||||
|
|
||||||
|
```js
|
||||||
|
{
|
||||||
|
video: ['src', 'poster'],
|
||||||
|
source: ['src'],
|
||||||
|
img: ['src'],
|
||||||
|
image: ['xlink:href', 'href'],
|
||||||
|
use: ['xlink:href', 'href']
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
Note that only attribute values that are static strings are transformed. Otherwise, you'd need to import the asset manually, e.g. `import imgUrl from '../image.png'`.
|
||||||
|
|
||||||
|
## Example for passing options to `vue/compiler-sfc`:
|
||||||
|
|
||||||
|
```ts
|
||||||
|
import vue from '@vitejs/plugin-vue'
|
||||||
|
|
||||||
|
export default {
|
||||||
|
plugins: [
|
||||||
|
vue({
|
||||||
|
template: {
|
||||||
|
compilerOptions: {
|
||||||
|
// ...
|
||||||
|
},
|
||||||
|
transformAssetUrls: {
|
||||||
|
// ...
|
||||||
|
}
|
||||||
|
}
|
||||||
|
})
|
||||||
|
]
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
## Example for transforming custom blocks
|
||||||
|
|
||||||
|
```ts
|
||||||
|
import vue from '@vitejs/plugin-vue'
|
||||||
|
import yaml from 'js-yaml'
|
||||||
|
|
||||||
|
const vueI18nPlugin = {
|
||||||
|
name: 'vue-i18n',
|
||||||
|
transform(code, id) {
|
||||||
|
if (!/vue&type=i18n/.test(id)) {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
if (/\.ya?ml$/.test(id)) {
|
||||||
|
code = JSON.stringify(yaml.load(code.trim()))
|
||||||
|
}
|
||||||
|
return `export default Comp => {
|
||||||
|
Comp.i18n = ${code}
|
||||||
|
}`
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
export default {
|
||||||
|
plugins: [vue(), vueI18nPlugin]
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
## Using Vue SFCs as Custom Elements
|
||||||
|
|
||||||
|
> Requires `vue@^3.2.0` & `@vitejs/plugin-vue@^1.4.0`
|
||||||
|
|
||||||
|
Vue 3.2 introduces the `defineCustomElement` method, which works with SFCs. By default, `<style>` tags inside SFCs are extracted and merged into CSS files during build. However when shipping a library of custom elements, it may be desirable to inline the styles as JavaScript strings and inject them into the custom elements' shadow root instead.
|
||||||
|
|
||||||
|
Starting in 1.4.0, files ending with `*.ce.vue` will be compiled in "custom elements" mode: its `<style>` tags are compiled into inlined CSS strings and attached to the component as its `styles` property:
|
||||||
|
|
||||||
|
```js
|
||||||
|
import { defineCustomElement } from 'vue'
|
||||||
|
import Example from './Example.ce.vue'
|
||||||
|
|
||||||
|
console.log(Example.styles) // ['/* css content */']
|
||||||
|
|
||||||
|
// register
|
||||||
|
customElements.define('my-example', defineCustomElement(Example))
|
||||||
|
```
|
||||||
|
|
||||||
|
Note in custom elements mode there is no need to use `<style scoped>` since the CSS is already scoped inside the shadow DOM.
|
||||||
|
|
||||||
|
The `customElement` plugin option can be used to configure the behavior:
|
||||||
|
|
||||||
|
- `{ customElement: true }` will import all `*.vue` files in custom element mode.
|
||||||
|
- Use a string or regex pattern to change how files should be loaded as Custom Elements (this check is applied after `include` and `exclude` matches).
|
||||||
|
|
||||||
|
## License
|
||||||
|
|
||||||
|
MIT
|
2682
webui/node_modules/@vitejs/plugin-vue/dist/index.cjs
generated
vendored
Normal file
2682
webui/node_modules/@vitejs/plugin-vue/dist/index.cjs
generated
vendored
Normal file
File diff suppressed because it is too large
Load diff
61
webui/node_modules/@vitejs/plugin-vue/dist/index.d.ts
generated
vendored
Normal file
61
webui/node_modules/@vitejs/plugin-vue/dist/index.d.ts
generated
vendored
Normal file
|
@ -0,0 +1,61 @@
|
||||||
|
import { ViteDevServer, Plugin } from 'vite';
|
||||||
|
import * as _compiler from 'vue/compiler-sfc';
|
||||||
|
import { SFCScriptCompileOptions, SFCTemplateCompileOptions, SFCStyleCompileOptions } from 'vue/compiler-sfc';
|
||||||
|
|
||||||
|
interface VueQuery {
|
||||||
|
vue?: boolean;
|
||||||
|
src?: string;
|
||||||
|
type?: 'script' | 'template' | 'style' | 'custom';
|
||||||
|
index?: number;
|
||||||
|
lang?: string;
|
||||||
|
raw?: boolean;
|
||||||
|
scoped?: boolean;
|
||||||
|
}
|
||||||
|
declare function parseVueRequest(id: string): {
|
||||||
|
filename: string;
|
||||||
|
query: VueQuery;
|
||||||
|
};
|
||||||
|
|
||||||
|
interface Options {
|
||||||
|
include?: string | RegExp | (string | RegExp)[];
|
||||||
|
exclude?: string | RegExp | (string | RegExp)[];
|
||||||
|
isProduction?: boolean;
|
||||||
|
script?: Partial<Pick<SFCScriptCompileOptions, 'babelParserPlugins'>>;
|
||||||
|
template?: Partial<Pick<SFCTemplateCompileOptions, 'compiler' | 'compilerOptions' | 'preprocessOptions' | 'preprocessCustomRequire' | 'transformAssetUrls'>>;
|
||||||
|
style?: Partial<Pick<SFCStyleCompileOptions, 'trim'>>;
|
||||||
|
/**
|
||||||
|
* Transform Vue SFCs into custom elements.
|
||||||
|
* - `true`: all `*.vue` imports are converted into custom elements
|
||||||
|
* - `string | RegExp`: matched files are converted into custom elements
|
||||||
|
*
|
||||||
|
* @default /\.ce\.vue$/
|
||||||
|
*/
|
||||||
|
customElement?: boolean | string | RegExp | (string | RegExp)[];
|
||||||
|
/**
|
||||||
|
* Enable Vue reactivity transform (experimental).
|
||||||
|
* https://github.com/vuejs/core/tree/master/packages/reactivity-transform
|
||||||
|
* - `true`: transform will be enabled for all vue,js(x),ts(x) files except
|
||||||
|
* those inside node_modules
|
||||||
|
* - `string | RegExp`: apply to vue + only matched files (will include
|
||||||
|
* node_modules, so specify directories in necessary)
|
||||||
|
* - `false`: disable in all cases
|
||||||
|
*
|
||||||
|
* @default false
|
||||||
|
*/
|
||||||
|
reactivityTransform?: boolean | string | RegExp | (string | RegExp)[];
|
||||||
|
/**
|
||||||
|
* Use custom compiler-sfc instance. Can be used to force a specific version.
|
||||||
|
*/
|
||||||
|
compiler?: typeof _compiler;
|
||||||
|
}
|
||||||
|
interface ResolvedOptions extends Options {
|
||||||
|
compiler: typeof _compiler;
|
||||||
|
root: string;
|
||||||
|
sourceMap: boolean;
|
||||||
|
cssDevSourcemap: boolean;
|
||||||
|
devServer?: ViteDevServer;
|
||||||
|
devToolsEnabled?: boolean;
|
||||||
|
}
|
||||||
|
declare function vuePlugin(rawOptions?: Options): Plugin;
|
||||||
|
|
||||||
|
export { Options, ResolvedOptions, VueQuery, vuePlugin as default, parseVueRequest };
|
2669
webui/node_modules/@vitejs/plugin-vue/dist/index.mjs
generated
vendored
Normal file
2669
webui/node_modules/@vitejs/plugin-vue/dist/index.mjs
generated
vendored
Normal file
File diff suppressed because it is too large
Load diff
51
webui/node_modules/@vitejs/plugin-vue/package.json
generated
vendored
Normal file
51
webui/node_modules/@vitejs/plugin-vue/package.json
generated
vendored
Normal file
|
@ -0,0 +1,51 @@
|
||||||
|
{
|
||||||
|
"name": "@vitejs/plugin-vue",
|
||||||
|
"version": "3.0.3",
|
||||||
|
"license": "MIT",
|
||||||
|
"author": "Evan You",
|
||||||
|
"files": [
|
||||||
|
"dist"
|
||||||
|
],
|
||||||
|
"main": "./dist/index.cjs",
|
||||||
|
"module": "./dist/index.mjs",
|
||||||
|
"types": "./dist/index.d.ts",
|
||||||
|
"exports": {
|
||||||
|
".": {
|
||||||
|
"types": "./dist/index.d.ts",
|
||||||
|
"import": "./dist/index.mjs",
|
||||||
|
"require": "./dist/index.cjs"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"scripts": {
|
||||||
|
"dev": "unbuild --stub",
|
||||||
|
"build": "unbuild && pnpm run patch-cjs",
|
||||||
|
"patch-cjs": "tsx ../../scripts/patchCJS.ts",
|
||||||
|
"prepublishOnly": "npm run build"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": "^14.18.0 || >=16.0.0"
|
||||||
|
},
|
||||||
|
"repository": {
|
||||||
|
"type": "git",
|
||||||
|
"url": "git+https://github.com/vitejs/vite.git",
|
||||||
|
"directory": "packages/plugin-vue"
|
||||||
|
},
|
||||||
|
"bugs": {
|
||||||
|
"url": "https://github.com/vitejs/vite/issues"
|
||||||
|
},
|
||||||
|
"homepage": "https://github.com/vitejs/vite/tree/main/packages/plugin-vue#readme",
|
||||||
|
"peerDependencies": {
|
||||||
|
"vite": "^3.0.0",
|
||||||
|
"vue": "^3.2.25"
|
||||||
|
},
|
||||||
|
"devDependencies": {
|
||||||
|
"@jridgewell/gen-mapping": "^0.3.2",
|
||||||
|
"@jridgewell/trace-mapping": "^0.3.14",
|
||||||
|
"debug": "^4.3.4",
|
||||||
|
"rollup": ">=2.75.6 <2.77.0 || ~2.77.0",
|
||||||
|
"slash": "^4.0.0",
|
||||||
|
"source-map": "^0.6.1",
|
||||||
|
"vite": "workspace:*",
|
||||||
|
"vue": "^3.2.37"
|
||||||
|
}
|
||||||
|
}
|
21
webui/node_modules/@vue/compiler-core/LICENSE
generated
vendored
Normal file
21
webui/node_modules/@vue/compiler-core/LICENSE
generated
vendored
Normal file
|
@ -0,0 +1,21 @@
|
||||||
|
The MIT License (MIT)
|
||||||
|
|
||||||
|
Copyright (c) 2018-present, Yuxi (Evan) You
|
||||||
|
|
||||||
|
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.
|
1
webui/node_modules/@vue/compiler-core/README.md
generated
vendored
Normal file
1
webui/node_modules/@vue/compiler-core/README.md
generated
vendored
Normal file
|
@ -0,0 +1 @@
|
||||||
|
# @vue/compiler-core
|
5808
webui/node_modules/@vue/compiler-core/dist/compiler-core.cjs.js
generated
vendored
Normal file
5808
webui/node_modules/@vue/compiler-core/dist/compiler-core.cjs.js
generated
vendored
Normal file
File diff suppressed because it is too large
Load diff
5678
webui/node_modules/@vue/compiler-core/dist/compiler-core.cjs.prod.js
generated
vendored
Normal file
5678
webui/node_modules/@vue/compiler-core/dist/compiler-core.cjs.prod.js
generated
vendored
Normal file
File diff suppressed because it is too large
Load diff
1198
webui/node_modules/@vue/compiler-core/dist/compiler-core.d.ts
generated
vendored
Normal file
1198
webui/node_modules/@vue/compiler-core/dist/compiler-core.d.ts
generated
vendored
Normal file
File diff suppressed because it is too large
Load diff
4861
webui/node_modules/@vue/compiler-core/dist/compiler-core.esm-bundler.js
generated
vendored
Normal file
4861
webui/node_modules/@vue/compiler-core/dist/compiler-core.esm-bundler.js
generated
vendored
Normal file
File diff suppressed because it is too large
Load diff
7
webui/node_modules/@vue/compiler-core/index.js
generated
vendored
Normal file
7
webui/node_modules/@vue/compiler-core/index.js
generated
vendored
Normal file
|
@ -0,0 +1,7 @@
|
||||||
|
'use strict'
|
||||||
|
|
||||||
|
if (process.env.NODE_ENV === 'production') {
|
||||||
|
module.exports = require('./dist/compiler-core.cjs.prod.js')
|
||||||
|
} else {
|
||||||
|
module.exports = require('./dist/compiler-core.cjs.js')
|
||||||
|
}
|
43
webui/node_modules/@vue/compiler-core/package.json
generated
vendored
Normal file
43
webui/node_modules/@vue/compiler-core/package.json
generated
vendored
Normal file
|
@ -0,0 +1,43 @@
|
||||||
|
{
|
||||||
|
"name": "@vue/compiler-core",
|
||||||
|
"version": "3.2.37",
|
||||||
|
"description": "@vue/compiler-core",
|
||||||
|
"main": "index.js",
|
||||||
|
"module": "dist/compiler-core.esm-bundler.js",
|
||||||
|
"types": "dist/compiler-core.d.ts",
|
||||||
|
"files": [
|
||||||
|
"index.js",
|
||||||
|
"dist"
|
||||||
|
],
|
||||||
|
"buildOptions": {
|
||||||
|
"name": "VueCompilerCore",
|
||||||
|
"compat": true,
|
||||||
|
"formats": [
|
||||||
|
"esm-bundler",
|
||||||
|
"cjs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"repository": {
|
||||||
|
"type": "git",
|
||||||
|
"url": "git+https://github.com/vuejs/core.git",
|
||||||
|
"directory": "packages/compiler-core"
|
||||||
|
},
|
||||||
|
"keywords": [
|
||||||
|
"vue"
|
||||||
|
],
|
||||||
|
"author": "Evan You",
|
||||||
|
"license": "MIT",
|
||||||
|
"bugs": {
|
||||||
|
"url": "https://github.com/vuejs/core/issues"
|
||||||
|
},
|
||||||
|
"homepage": "https://github.com/vuejs/core/tree/main/packages/compiler-core#readme",
|
||||||
|
"dependencies": {
|
||||||
|
"@vue/shared": "3.2.37",
|
||||||
|
"@babel/parser": "^7.16.4",
|
||||||
|
"estree-walker": "^2.0.2",
|
||||||
|
"source-map": "^0.6.1"
|
||||||
|
},
|
||||||
|
"devDependencies": {
|
||||||
|
"@babel/types": "^7.16.0"
|
||||||
|
}
|
||||||
|
}
|
21
webui/node_modules/@vue/compiler-dom/LICENSE
generated
vendored
Normal file
21
webui/node_modules/@vue/compiler-dom/LICENSE
generated
vendored
Normal file
|
@ -0,0 +1,21 @@
|
||||||
|
The MIT License (MIT)
|
||||||
|
|
||||||
|
Copyright (c) 2018-present, Yuxi (Evan) You
|
||||||
|
|
||||||
|
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.
|
1
webui/node_modules/@vue/compiler-dom/README.md
generated
vendored
Normal file
1
webui/node_modules/@vue/compiler-dom/README.md
generated
vendored
Normal file
|
@ -0,0 +1 @@
|
||||||
|
# @vue/compiler-dom
|
3136
webui/node_modules/@vue/compiler-dom/dist/compiler-dom.cjs.js
generated
vendored
Normal file
3136
webui/node_modules/@vue/compiler-dom/dist/compiler-dom.cjs.js
generated
vendored
Normal file
File diff suppressed because it is too large
Load diff
3074
webui/node_modules/@vue/compiler-dom/dist/compiler-dom.cjs.prod.js
generated
vendored
Normal file
3074
webui/node_modules/@vue/compiler-dom/dist/compiler-dom.cjs.prod.js
generated
vendored
Normal file
File diff suppressed because it is too large
Load diff
66
webui/node_modules/@vue/compiler-dom/dist/compiler-dom.d.ts
generated
vendored
Normal file
66
webui/node_modules/@vue/compiler-dom/dist/compiler-dom.d.ts
generated
vendored
Normal file
|
@ -0,0 +1,66 @@
|
||||||
|
import { CodegenResult } from '@vue/compiler-core';
|
||||||
|
import { CompilerError } from '@vue/compiler-core';
|
||||||
|
import { CompilerOptions } from '@vue/compiler-core';
|
||||||
|
import { DirectiveTransform } from '@vue/compiler-core';
|
||||||
|
import { NodeTransform } from '@vue/compiler-core';
|
||||||
|
import { ParserOptions } from '@vue/compiler-core';
|
||||||
|
import { RootNode } from '@vue/compiler-core';
|
||||||
|
import { SourceLocation } from '@vue/compiler-core';
|
||||||
|
|
||||||
|
export declare function compile(template: string, options?: CompilerOptions): CodegenResult;
|
||||||
|
|
||||||
|
export declare function createDOMCompilerError(code: DOMErrorCodes, loc?: SourceLocation): DOMCompilerError;
|
||||||
|
|
||||||
|
declare interface DOMCompilerError extends CompilerError {
|
||||||
|
code: DOMErrorCodes;
|
||||||
|
}
|
||||||
|
|
||||||
|
export declare const DOMDirectiveTransforms: Record<string, DirectiveTransform>;
|
||||||
|
|
||||||
|
export declare const enum DOMErrorCodes {
|
||||||
|
X_V_HTML_NO_EXPRESSION = 50,
|
||||||
|
X_V_HTML_WITH_CHILDREN = 51,
|
||||||
|
X_V_TEXT_NO_EXPRESSION = 52,
|
||||||
|
X_V_TEXT_WITH_CHILDREN = 53,
|
||||||
|
X_V_MODEL_ON_INVALID_ELEMENT = 54,
|
||||||
|
X_V_MODEL_ARG_ON_ELEMENT = 55,
|
||||||
|
X_V_MODEL_ON_FILE_INPUT_ELEMENT = 56,
|
||||||
|
X_V_MODEL_UNNECESSARY_VALUE = 57,
|
||||||
|
X_V_SHOW_NO_EXPRESSION = 58,
|
||||||
|
X_TRANSITION_INVALID_CHILDREN = 59,
|
||||||
|
X_IGNORED_SIDE_EFFECT_TAG = 60,
|
||||||
|
__EXTEND_POINT__ = 61
|
||||||
|
}
|
||||||
|
|
||||||
|
export declare const DOMNodeTransforms: NodeTransform[];
|
||||||
|
|
||||||
|
export declare function parse(template: string, options?: ParserOptions): RootNode;
|
||||||
|
|
||||||
|
export declare const parserOptions: ParserOptions;
|
||||||
|
|
||||||
|
export declare const transformStyle: NodeTransform;
|
||||||
|
|
||||||
|
export declare const TRANSITION: unique symbol;
|
||||||
|
|
||||||
|
export declare const TRANSITION_GROUP: unique symbol;
|
||||||
|
|
||||||
|
export declare const V_MODEL_CHECKBOX: unique symbol;
|
||||||
|
|
||||||
|
export declare const V_MODEL_DYNAMIC: unique symbol;
|
||||||
|
|
||||||
|
export declare const V_MODEL_RADIO: unique symbol;
|
||||||
|
|
||||||
|
export declare const V_MODEL_SELECT: unique symbol;
|
||||||
|
|
||||||
|
export declare const V_MODEL_TEXT: unique symbol;
|
||||||
|
|
||||||
|
export declare const V_ON_WITH_KEYS: unique symbol;
|
||||||
|
|
||||||
|
export declare const V_ON_WITH_MODIFIERS: unique symbol;
|
||||||
|
|
||||||
|
export declare const V_SHOW: unique symbol;
|
||||||
|
|
||||||
|
|
||||||
|
export * from "@vue/compiler-core";
|
||||||
|
|
||||||
|
export { }
|
5492
webui/node_modules/@vue/compiler-dom/dist/compiler-dom.esm-browser.js
generated
vendored
Normal file
5492
webui/node_modules/@vue/compiler-dom/dist/compiler-dom.esm-browser.js
generated
vendored
Normal file
File diff suppressed because it is too large
Load diff
1
webui/node_modules/@vue/compiler-dom/dist/compiler-dom.esm-browser.prod.js
generated
vendored
Normal file
1
webui/node_modules/@vue/compiler-dom/dist/compiler-dom.esm-browser.prod.js
generated
vendored
Normal file
File diff suppressed because one or more lines are too long
483
webui/node_modules/@vue/compiler-dom/dist/compiler-dom.esm-bundler.js
generated
vendored
Normal file
483
webui/node_modules/@vue/compiler-dom/dist/compiler-dom.esm-bundler.js
generated
vendored
Normal file
|
@ -0,0 +1,483 @@
|
||||||
|
import { registerRuntimeHelpers, isBuiltInType, createSimpleExpression, createCompilerError, createObjectProperty, getConstantType, createCallExpression, TO_DISPLAY_STRING, transformModel as transformModel$1, findProp, hasDynamicKeyVBind, transformOn as transformOn$1, createCompoundExpression, isStaticExp, checkCompatEnabled, noopDirectiveTransform, baseCompile, baseParse } from '@vue/compiler-core';
|
||||||
|
export * from '@vue/compiler-core';
|
||||||
|
import { isVoidTag, isHTMLTag, isSVGTag, makeMap, parseStringStyle, capitalize, extend } from '@vue/shared';
|
||||||
|
|
||||||
|
const V_MODEL_RADIO = Symbol((process.env.NODE_ENV !== 'production') ? `vModelRadio` : ``);
|
||||||
|
const V_MODEL_CHECKBOX = Symbol((process.env.NODE_ENV !== 'production') ? `vModelCheckbox` : ``);
|
||||||
|
const V_MODEL_TEXT = Symbol((process.env.NODE_ENV !== 'production') ? `vModelText` : ``);
|
||||||
|
const V_MODEL_SELECT = Symbol((process.env.NODE_ENV !== 'production') ? `vModelSelect` : ``);
|
||||||
|
const V_MODEL_DYNAMIC = Symbol((process.env.NODE_ENV !== 'production') ? `vModelDynamic` : ``);
|
||||||
|
const V_ON_WITH_MODIFIERS = Symbol((process.env.NODE_ENV !== 'production') ? `vOnModifiersGuard` : ``);
|
||||||
|
const V_ON_WITH_KEYS = Symbol((process.env.NODE_ENV !== 'production') ? `vOnKeysGuard` : ``);
|
||||||
|
const V_SHOW = Symbol((process.env.NODE_ENV !== 'production') ? `vShow` : ``);
|
||||||
|
const TRANSITION = Symbol((process.env.NODE_ENV !== 'production') ? `Transition` : ``);
|
||||||
|
const TRANSITION_GROUP = Symbol((process.env.NODE_ENV !== 'production') ? `TransitionGroup` : ``);
|
||||||
|
registerRuntimeHelpers({
|
||||||
|
[V_MODEL_RADIO]: `vModelRadio`,
|
||||||
|
[V_MODEL_CHECKBOX]: `vModelCheckbox`,
|
||||||
|
[V_MODEL_TEXT]: `vModelText`,
|
||||||
|
[V_MODEL_SELECT]: `vModelSelect`,
|
||||||
|
[V_MODEL_DYNAMIC]: `vModelDynamic`,
|
||||||
|
[V_ON_WITH_MODIFIERS]: `withModifiers`,
|
||||||
|
[V_ON_WITH_KEYS]: `withKeys`,
|
||||||
|
[V_SHOW]: `vShow`,
|
||||||
|
[TRANSITION]: `Transition`,
|
||||||
|
[TRANSITION_GROUP]: `TransitionGroup`
|
||||||
|
});
|
||||||
|
|
||||||
|
/* eslint-disable no-restricted-globals */
|
||||||
|
let decoder;
|
||||||
|
function decodeHtmlBrowser(raw, asAttr = false) {
|
||||||
|
if (!decoder) {
|
||||||
|
decoder = document.createElement('div');
|
||||||
|
}
|
||||||
|
if (asAttr) {
|
||||||
|
decoder.innerHTML = `<div foo="${raw.replace(/"/g, '"')}">`;
|
||||||
|
return decoder.children[0].getAttribute('foo');
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
decoder.innerHTML = raw;
|
||||||
|
return decoder.textContent;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
const isRawTextContainer = /*#__PURE__*/ makeMap('style,iframe,script,noscript', true);
|
||||||
|
const parserOptions = {
|
||||||
|
isVoidTag,
|
||||||
|
isNativeTag: tag => isHTMLTag(tag) || isSVGTag(tag),
|
||||||
|
isPreTag: tag => tag === 'pre',
|
||||||
|
decodeEntities: decodeHtmlBrowser ,
|
||||||
|
isBuiltInComponent: (tag) => {
|
||||||
|
if (isBuiltInType(tag, `Transition`)) {
|
||||||
|
return TRANSITION;
|
||||||
|
}
|
||||||
|
else if (isBuiltInType(tag, `TransitionGroup`)) {
|
||||||
|
return TRANSITION_GROUP;
|
||||||
|
}
|
||||||
|
},
|
||||||
|
// https://html.spec.whatwg.org/multipage/parsing.html#tree-construction-dispatcher
|
||||||
|
getNamespace(tag, parent) {
|
||||||
|
let ns = parent ? parent.ns : 0 /* HTML */;
|
||||||
|
if (parent && ns === 2 /* MATH_ML */) {
|
||||||
|
if (parent.tag === 'annotation-xml') {
|
||||||
|
if (tag === 'svg') {
|
||||||
|
return 1 /* SVG */;
|
||||||
|
}
|
||||||
|
if (parent.props.some(a => a.type === 6 /* ATTRIBUTE */ &&
|
||||||
|
a.name === 'encoding' &&
|
||||||
|
a.value != null &&
|
||||||
|
(a.value.content === 'text/html' ||
|
||||||
|
a.value.content === 'application/xhtml+xml'))) {
|
||||||
|
ns = 0 /* HTML */;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else if (/^m(?:[ions]|text)$/.test(parent.tag) &&
|
||||||
|
tag !== 'mglyph' &&
|
||||||
|
tag !== 'malignmark') {
|
||||||
|
ns = 0 /* HTML */;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else if (parent && ns === 1 /* SVG */) {
|
||||||
|
if (parent.tag === 'foreignObject' ||
|
||||||
|
parent.tag === 'desc' ||
|
||||||
|
parent.tag === 'title') {
|
||||||
|
ns = 0 /* HTML */;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (ns === 0 /* HTML */) {
|
||||||
|
if (tag === 'svg') {
|
||||||
|
return 1 /* SVG */;
|
||||||
|
}
|
||||||
|
if (tag === 'math') {
|
||||||
|
return 2 /* MATH_ML */;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return ns;
|
||||||
|
},
|
||||||
|
// https://html.spec.whatwg.org/multipage/parsing.html#parsing-html-fragments
|
||||||
|
getTextMode({ tag, ns }) {
|
||||||
|
if (ns === 0 /* HTML */) {
|
||||||
|
if (tag === 'textarea' || tag === 'title') {
|
||||||
|
return 1 /* RCDATA */;
|
||||||
|
}
|
||||||
|
if (isRawTextContainer(tag)) {
|
||||||
|
return 2 /* RAWTEXT */;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return 0 /* DATA */;
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
// Parse inline CSS strings for static style attributes into an object.
|
||||||
|
// This is a NodeTransform since it works on the static `style` attribute and
|
||||||
|
// converts it into a dynamic equivalent:
|
||||||
|
// style="color: red" -> :style='{ "color": "red" }'
|
||||||
|
// It is then processed by `transformElement` and included in the generated
|
||||||
|
// props.
|
||||||
|
const transformStyle = node => {
|
||||||
|
if (node.type === 1 /* ELEMENT */) {
|
||||||
|
node.props.forEach((p, i) => {
|
||||||
|
if (p.type === 6 /* ATTRIBUTE */ && p.name === 'style' && p.value) {
|
||||||
|
// replace p with an expression node
|
||||||
|
node.props[i] = {
|
||||||
|
type: 7 /* DIRECTIVE */,
|
||||||
|
name: `bind`,
|
||||||
|
arg: createSimpleExpression(`style`, true, p.loc),
|
||||||
|
exp: parseInlineCSS(p.value.content, p.loc),
|
||||||
|
modifiers: [],
|
||||||
|
loc: p.loc
|
||||||
|
};
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
};
|
||||||
|
const parseInlineCSS = (cssText, loc) => {
|
||||||
|
const normalized = parseStringStyle(cssText);
|
||||||
|
return createSimpleExpression(JSON.stringify(normalized), false, loc, 3 /* CAN_STRINGIFY */);
|
||||||
|
};
|
||||||
|
|
||||||
|
function createDOMCompilerError(code, loc) {
|
||||||
|
return createCompilerError(code, loc, (process.env.NODE_ENV !== 'production') || !true ? DOMErrorMessages : undefined);
|
||||||
|
}
|
||||||
|
const DOMErrorMessages = {
|
||||||
|
[50 /* X_V_HTML_NO_EXPRESSION */]: `v-html is missing expression.`,
|
||||||
|
[51 /* X_V_HTML_WITH_CHILDREN */]: `v-html will override element children.`,
|
||||||
|
[52 /* X_V_TEXT_NO_EXPRESSION */]: `v-text is missing expression.`,
|
||||||
|
[53 /* X_V_TEXT_WITH_CHILDREN */]: `v-text will override element children.`,
|
||||||
|
[54 /* X_V_MODEL_ON_INVALID_ELEMENT */]: `v-model can only be used on <input>, <textarea> and <select> elements.`,
|
||||||
|
[55 /* X_V_MODEL_ARG_ON_ELEMENT */]: `v-model argument is not supported on plain elements.`,
|
||||||
|
[56 /* X_V_MODEL_ON_FILE_INPUT_ELEMENT */]: `v-model cannot be used on file inputs since they are read-only. Use a v-on:change listener instead.`,
|
||||||
|
[57 /* X_V_MODEL_UNNECESSARY_VALUE */]: `Unnecessary value binding used alongside v-model. It will interfere with v-model's behavior.`,
|
||||||
|
[58 /* X_V_SHOW_NO_EXPRESSION */]: `v-show is missing expression.`,
|
||||||
|
[59 /* X_TRANSITION_INVALID_CHILDREN */]: `<Transition> expects exactly one child element or component.`,
|
||||||
|
[60 /* X_IGNORED_SIDE_EFFECT_TAG */]: `Tags with side effect (<script> and <style>) are ignored in client component templates.`
|
||||||
|
};
|
||||||
|
|
||||||
|
const transformVHtml = (dir, node, context) => {
|
||||||
|
const { exp, loc } = dir;
|
||||||
|
if (!exp) {
|
||||||
|
context.onError(createDOMCompilerError(50 /* X_V_HTML_NO_EXPRESSION */, loc));
|
||||||
|
}
|
||||||
|
if (node.children.length) {
|
||||||
|
context.onError(createDOMCompilerError(51 /* X_V_HTML_WITH_CHILDREN */, loc));
|
||||||
|
node.children.length = 0;
|
||||||
|
}
|
||||||
|
return {
|
||||||
|
props: [
|
||||||
|
createObjectProperty(createSimpleExpression(`innerHTML`, true, loc), exp || createSimpleExpression('', true))
|
||||||
|
]
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
const transformVText = (dir, node, context) => {
|
||||||
|
const { exp, loc } = dir;
|
||||||
|
if (!exp) {
|
||||||
|
context.onError(createDOMCompilerError(52 /* X_V_TEXT_NO_EXPRESSION */, loc));
|
||||||
|
}
|
||||||
|
if (node.children.length) {
|
||||||
|
context.onError(createDOMCompilerError(53 /* X_V_TEXT_WITH_CHILDREN */, loc));
|
||||||
|
node.children.length = 0;
|
||||||
|
}
|
||||||
|
return {
|
||||||
|
props: [
|
||||||
|
createObjectProperty(createSimpleExpression(`textContent`, true), exp
|
||||||
|
? getConstantType(exp, context) > 0
|
||||||
|
? exp
|
||||||
|
: createCallExpression(context.helperString(TO_DISPLAY_STRING), [exp], loc)
|
||||||
|
: createSimpleExpression('', true))
|
||||||
|
]
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
const transformModel = (dir, node, context) => {
|
||||||
|
const baseResult = transformModel$1(dir, node, context);
|
||||||
|
// base transform has errors OR component v-model (only need props)
|
||||||
|
if (!baseResult.props.length || node.tagType === 1 /* COMPONENT */) {
|
||||||
|
return baseResult;
|
||||||
|
}
|
||||||
|
if (dir.arg) {
|
||||||
|
context.onError(createDOMCompilerError(55 /* X_V_MODEL_ARG_ON_ELEMENT */, dir.arg.loc));
|
||||||
|
}
|
||||||
|
function checkDuplicatedValue() {
|
||||||
|
const value = findProp(node, 'value');
|
||||||
|
if (value) {
|
||||||
|
context.onError(createDOMCompilerError(57 /* X_V_MODEL_UNNECESSARY_VALUE */, value.loc));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
const { tag } = node;
|
||||||
|
const isCustomElement = context.isCustomElement(tag);
|
||||||
|
if (tag === 'input' ||
|
||||||
|
tag === 'textarea' ||
|
||||||
|
tag === 'select' ||
|
||||||
|
isCustomElement) {
|
||||||
|
let directiveToUse = V_MODEL_TEXT;
|
||||||
|
let isInvalidType = false;
|
||||||
|
if (tag === 'input' || isCustomElement) {
|
||||||
|
const type = findProp(node, `type`);
|
||||||
|
if (type) {
|
||||||
|
if (type.type === 7 /* DIRECTIVE */) {
|
||||||
|
// :type="foo"
|
||||||
|
directiveToUse = V_MODEL_DYNAMIC;
|
||||||
|
}
|
||||||
|
else if (type.value) {
|
||||||
|
switch (type.value.content) {
|
||||||
|
case 'radio':
|
||||||
|
directiveToUse = V_MODEL_RADIO;
|
||||||
|
break;
|
||||||
|
case 'checkbox':
|
||||||
|
directiveToUse = V_MODEL_CHECKBOX;
|
||||||
|
break;
|
||||||
|
case 'file':
|
||||||
|
isInvalidType = true;
|
||||||
|
context.onError(createDOMCompilerError(56 /* X_V_MODEL_ON_FILE_INPUT_ELEMENT */, dir.loc));
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
// text type
|
||||||
|
(process.env.NODE_ENV !== 'production') && checkDuplicatedValue();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else if (hasDynamicKeyVBind(node)) {
|
||||||
|
// element has bindings with dynamic keys, which can possibly contain
|
||||||
|
// "type".
|
||||||
|
directiveToUse = V_MODEL_DYNAMIC;
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
// text type
|
||||||
|
(process.env.NODE_ENV !== 'production') && checkDuplicatedValue();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else if (tag === 'select') {
|
||||||
|
directiveToUse = V_MODEL_SELECT;
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
// textarea
|
||||||
|
(process.env.NODE_ENV !== 'production') && checkDuplicatedValue();
|
||||||
|
}
|
||||||
|
// inject runtime directive
|
||||||
|
// by returning the helper symbol via needRuntime
|
||||||
|
// the import will replaced a resolveDirective call.
|
||||||
|
if (!isInvalidType) {
|
||||||
|
baseResult.needRuntime = context.helper(directiveToUse);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
context.onError(createDOMCompilerError(54 /* X_V_MODEL_ON_INVALID_ELEMENT */, dir.loc));
|
||||||
|
}
|
||||||
|
// native vmodel doesn't need the `modelValue` props since they are also
|
||||||
|
// passed to the runtime as `binding.value`. removing it reduces code size.
|
||||||
|
baseResult.props = baseResult.props.filter(p => !(p.key.type === 4 /* SIMPLE_EXPRESSION */ &&
|
||||||
|
p.key.content === 'modelValue'));
|
||||||
|
return baseResult;
|
||||||
|
};
|
||||||
|
|
||||||
|
const isEventOptionModifier = /*#__PURE__*/ makeMap(`passive,once,capture`);
|
||||||
|
const isNonKeyModifier = /*#__PURE__*/ makeMap(
|
||||||
|
// event propagation management
|
||||||
|
`stop,prevent,self,` +
|
||||||
|
// system modifiers + exact
|
||||||
|
`ctrl,shift,alt,meta,exact,` +
|
||||||
|
// mouse
|
||||||
|
`middle`);
|
||||||
|
// left & right could be mouse or key modifiers based on event type
|
||||||
|
const maybeKeyModifier = /*#__PURE__*/ makeMap('left,right');
|
||||||
|
const isKeyboardEvent = /*#__PURE__*/ makeMap(`onkeyup,onkeydown,onkeypress`, true);
|
||||||
|
const resolveModifiers = (key, modifiers, context, loc) => {
|
||||||
|
const keyModifiers = [];
|
||||||
|
const nonKeyModifiers = [];
|
||||||
|
const eventOptionModifiers = [];
|
||||||
|
for (let i = 0; i < modifiers.length; i++) {
|
||||||
|
const modifier = modifiers[i];
|
||||||
|
if (modifier === 'native' &&
|
||||||
|
checkCompatEnabled("COMPILER_V_ON_NATIVE" /* COMPILER_V_ON_NATIVE */, context, loc)) {
|
||||||
|
eventOptionModifiers.push(modifier);
|
||||||
|
}
|
||||||
|
else if (isEventOptionModifier(modifier)) {
|
||||||
|
// eventOptionModifiers: modifiers for addEventListener() options,
|
||||||
|
// e.g. .passive & .capture
|
||||||
|
eventOptionModifiers.push(modifier);
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
// runtimeModifiers: modifiers that needs runtime guards
|
||||||
|
if (maybeKeyModifier(modifier)) {
|
||||||
|
if (isStaticExp(key)) {
|
||||||
|
if (isKeyboardEvent(key.content)) {
|
||||||
|
keyModifiers.push(modifier);
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
nonKeyModifiers.push(modifier);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
keyModifiers.push(modifier);
|
||||||
|
nonKeyModifiers.push(modifier);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
if (isNonKeyModifier(modifier)) {
|
||||||
|
nonKeyModifiers.push(modifier);
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
keyModifiers.push(modifier);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return {
|
||||||
|
keyModifiers,
|
||||||
|
nonKeyModifiers,
|
||||||
|
eventOptionModifiers
|
||||||
|
};
|
||||||
|
};
|
||||||
|
const transformClick = (key, event) => {
|
||||||
|
const isStaticClick = isStaticExp(key) && key.content.toLowerCase() === 'onclick';
|
||||||
|
return isStaticClick
|
||||||
|
? createSimpleExpression(event, true)
|
||||||
|
: key.type !== 4 /* SIMPLE_EXPRESSION */
|
||||||
|
? createCompoundExpression([
|
||||||
|
`(`,
|
||||||
|
key,
|
||||||
|
`) === "onClick" ? "${event}" : (`,
|
||||||
|
key,
|
||||||
|
`)`
|
||||||
|
])
|
||||||
|
: key;
|
||||||
|
};
|
||||||
|
const transformOn = (dir, node, context) => {
|
||||||
|
return transformOn$1(dir, node, context, baseResult => {
|
||||||
|
const { modifiers } = dir;
|
||||||
|
if (!modifiers.length)
|
||||||
|
return baseResult;
|
||||||
|
let { key, value: handlerExp } = baseResult.props[0];
|
||||||
|
const { keyModifiers, nonKeyModifiers, eventOptionModifiers } = resolveModifiers(key, modifiers, context, dir.loc);
|
||||||
|
// normalize click.right and click.middle since they don't actually fire
|
||||||
|
if (nonKeyModifiers.includes('right')) {
|
||||||
|
key = transformClick(key, `onContextmenu`);
|
||||||
|
}
|
||||||
|
if (nonKeyModifiers.includes('middle')) {
|
||||||
|
key = transformClick(key, `onMouseup`);
|
||||||
|
}
|
||||||
|
if (nonKeyModifiers.length) {
|
||||||
|
handlerExp = createCallExpression(context.helper(V_ON_WITH_MODIFIERS), [
|
||||||
|
handlerExp,
|
||||||
|
JSON.stringify(nonKeyModifiers)
|
||||||
|
]);
|
||||||
|
}
|
||||||
|
if (keyModifiers.length &&
|
||||||
|
// if event name is dynamic, always wrap with keys guard
|
||||||
|
(!isStaticExp(key) || isKeyboardEvent(key.content))) {
|
||||||
|
handlerExp = createCallExpression(context.helper(V_ON_WITH_KEYS), [
|
||||||
|
handlerExp,
|
||||||
|
JSON.stringify(keyModifiers)
|
||||||
|
]);
|
||||||
|
}
|
||||||
|
if (eventOptionModifiers.length) {
|
||||||
|
const modifierPostfix = eventOptionModifiers.map(capitalize).join('');
|
||||||
|
key = isStaticExp(key)
|
||||||
|
? createSimpleExpression(`${key.content}${modifierPostfix}`, true)
|
||||||
|
: createCompoundExpression([`(`, key, `) + "${modifierPostfix}"`]);
|
||||||
|
}
|
||||||
|
return {
|
||||||
|
props: [createObjectProperty(key, handlerExp)]
|
||||||
|
};
|
||||||
|
});
|
||||||
|
};
|
||||||
|
|
||||||
|
const transformShow = (dir, node, context) => {
|
||||||
|
const { exp, loc } = dir;
|
||||||
|
if (!exp) {
|
||||||
|
context.onError(createDOMCompilerError(58 /* X_V_SHOW_NO_EXPRESSION */, loc));
|
||||||
|
}
|
||||||
|
return {
|
||||||
|
props: [],
|
||||||
|
needRuntime: context.helper(V_SHOW)
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
const transformTransition = (node, context) => {
|
||||||
|
if (node.type === 1 /* ELEMENT */ &&
|
||||||
|
node.tagType === 1 /* COMPONENT */) {
|
||||||
|
const component = context.isBuiltInComponent(node.tag);
|
||||||
|
if (component === TRANSITION) {
|
||||||
|
return () => {
|
||||||
|
if (!node.children.length) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
// warn multiple transition children
|
||||||
|
if (hasMultipleChildren(node)) {
|
||||||
|
context.onError(createDOMCompilerError(59 /* X_TRANSITION_INVALID_CHILDREN */, {
|
||||||
|
start: node.children[0].loc.start,
|
||||||
|
end: node.children[node.children.length - 1].loc.end,
|
||||||
|
source: ''
|
||||||
|
}));
|
||||||
|
}
|
||||||
|
// check if it's s single child w/ v-show
|
||||||
|
// if yes, inject "persisted: true" to the transition props
|
||||||
|
const child = node.children[0];
|
||||||
|
if (child.type === 1 /* ELEMENT */) {
|
||||||
|
for (const p of child.props) {
|
||||||
|
if (p.type === 7 /* DIRECTIVE */ && p.name === 'show') {
|
||||||
|
node.props.push({
|
||||||
|
type: 6 /* ATTRIBUTE */,
|
||||||
|
name: 'persisted',
|
||||||
|
value: undefined,
|
||||||
|
loc: node.loc
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
};
|
||||||
|
}
|
||||||
|
}
|
||||||
|
};
|
||||||
|
function hasMultipleChildren(node) {
|
||||||
|
// #1352 filter out potential comment nodes.
|
||||||
|
const children = (node.children = node.children.filter(c => c.type !== 3 /* COMMENT */ &&
|
||||||
|
!(c.type === 2 /* TEXT */ && !c.content.trim())));
|
||||||
|
const child = children[0];
|
||||||
|
return (children.length !== 1 ||
|
||||||
|
child.type === 11 /* FOR */ ||
|
||||||
|
(child.type === 9 /* IF */ && child.branches.some(hasMultipleChildren)));
|
||||||
|
}
|
||||||
|
|
||||||
|
const ignoreSideEffectTags = (node, context) => {
|
||||||
|
if (node.type === 1 /* ELEMENT */ &&
|
||||||
|
node.tagType === 0 /* ELEMENT */ &&
|
||||||
|
(node.tag === 'script' || node.tag === 'style')) {
|
||||||
|
context.onError(createDOMCompilerError(60 /* X_IGNORED_SIDE_EFFECT_TAG */, node.loc));
|
||||||
|
context.removeNode();
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
const DOMNodeTransforms = [
|
||||||
|
transformStyle,
|
||||||
|
...((process.env.NODE_ENV !== 'production') ? [transformTransition] : [])
|
||||||
|
];
|
||||||
|
const DOMDirectiveTransforms = {
|
||||||
|
cloak: noopDirectiveTransform,
|
||||||
|
html: transformVHtml,
|
||||||
|
text: transformVText,
|
||||||
|
model: transformModel,
|
||||||
|
on: transformOn,
|
||||||
|
show: transformShow
|
||||||
|
};
|
||||||
|
function compile(template, options = {}) {
|
||||||
|
return baseCompile(template, extend({}, parserOptions, options, {
|
||||||
|
nodeTransforms: [
|
||||||
|
// ignore <script> and <tag>
|
||||||
|
// this is not put inside DOMNodeTransforms because that list is used
|
||||||
|
// by compiler-ssr to generate vnode fallback branches
|
||||||
|
ignoreSideEffectTags,
|
||||||
|
...DOMNodeTransforms,
|
||||||
|
...(options.nodeTransforms || [])
|
||||||
|
],
|
||||||
|
directiveTransforms: extend({}, DOMDirectiveTransforms, options.directiveTransforms || {}),
|
||||||
|
transformHoist: null
|
||||||
|
}));
|
||||||
|
}
|
||||||
|
function parse(template, options = {}) {
|
||||||
|
return baseParse(template, extend({}, parserOptions, options));
|
||||||
|
}
|
||||||
|
|
||||||
|
export { DOMDirectiveTransforms, DOMNodeTransforms, TRANSITION, TRANSITION_GROUP, V_MODEL_CHECKBOX, V_MODEL_DYNAMIC, V_MODEL_RADIO, V_MODEL_SELECT, V_MODEL_TEXT, V_ON_WITH_KEYS, V_ON_WITH_MODIFIERS, V_SHOW, compile, createDOMCompilerError, parse, parserOptions, transformStyle };
|
5642
webui/node_modules/@vue/compiler-dom/dist/compiler-dom.global.js
generated
vendored
Normal file
5642
webui/node_modules/@vue/compiler-dom/dist/compiler-dom.global.js
generated
vendored
Normal file
File diff suppressed because it is too large
Load diff
1
webui/node_modules/@vue/compiler-dom/dist/compiler-dom.global.prod.js
generated
vendored
Normal file
1
webui/node_modules/@vue/compiler-dom/dist/compiler-dom.global.prod.js
generated
vendored
Normal file
File diff suppressed because one or more lines are too long
7
webui/node_modules/@vue/compiler-dom/index.js
generated
vendored
Normal file
7
webui/node_modules/@vue/compiler-dom/index.js
generated
vendored
Normal file
|
@ -0,0 +1,7 @@
|
||||||
|
'use strict'
|
||||||
|
|
||||||
|
if (process.env.NODE_ENV === 'production') {
|
||||||
|
module.exports = require('./dist/compiler-dom.cjs.prod.js')
|
||||||
|
} else {
|
||||||
|
module.exports = require('./dist/compiler-dom.cjs.js')
|
||||||
|
}
|
43
webui/node_modules/@vue/compiler-dom/package.json
generated
vendored
Normal file
43
webui/node_modules/@vue/compiler-dom/package.json
generated
vendored
Normal file
|
@ -0,0 +1,43 @@
|
||||||
|
{
|
||||||
|
"name": "@vue/compiler-dom",
|
||||||
|
"version": "3.2.37",
|
||||||
|
"description": "@vue/compiler-dom",
|
||||||
|
"main": "index.js",
|
||||||
|
"module": "dist/compiler-dom.esm-bundler.js",
|
||||||
|
"types": "dist/compiler-dom.d.ts",
|
||||||
|
"unpkg": "dist/compiler-dom.global.js",
|
||||||
|
"jsdelivr": "dist/compiler-dom.global.js",
|
||||||
|
"files": [
|
||||||
|
"index.js",
|
||||||
|
"dist"
|
||||||
|
],
|
||||||
|
"sideEffects": false,
|
||||||
|
"buildOptions": {
|
||||||
|
"name": "VueCompilerDOM",
|
||||||
|
"compat": true,
|
||||||
|
"formats": [
|
||||||
|
"esm-bundler",
|
||||||
|
"esm-browser",
|
||||||
|
"cjs",
|
||||||
|
"global"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"repository": {
|
||||||
|
"type": "git",
|
||||||
|
"url": "git+https://github.com/vuejs/core.git",
|
||||||
|
"directory": "packages/compiler-dom"
|
||||||
|
},
|
||||||
|
"keywords": [
|
||||||
|
"vue"
|
||||||
|
],
|
||||||
|
"author": "Evan You",
|
||||||
|
"license": "MIT",
|
||||||
|
"bugs": {
|
||||||
|
"url": "https://github.com/vuejs/core/issues"
|
||||||
|
},
|
||||||
|
"homepage": "https://github.com/vuejs/core/tree/main/packages/compiler-dom#readme",
|
||||||
|
"dependencies": {
|
||||||
|
"@vue/shared": "3.2.37",
|
||||||
|
"@vue/compiler-core": "3.2.37"
|
||||||
|
}
|
||||||
|
}
|
21
webui/node_modules/@vue/compiler-sfc/LICENSE
generated
vendored
Normal file
21
webui/node_modules/@vue/compiler-sfc/LICENSE
generated
vendored
Normal file
|
@ -0,0 +1,21 @@
|
||||||
|
The MIT License (MIT)
|
||||||
|
|
||||||
|
Copyright (c) 2018-present, Yuxi (Evan) You
|
||||||
|
|
||||||
|
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.
|
80
webui/node_modules/@vue/compiler-sfc/README.md
generated
vendored
Normal file
80
webui/node_modules/@vue/compiler-sfc/README.md
generated
vendored
Normal file
|
@ -0,0 +1,80 @@
|
||||||
|
# @vue/compiler-sfc
|
||||||
|
|
||||||
|
> Lower level utilities for compiling Vue Single File Components
|
||||||
|
|
||||||
|
**Note: as of 3.2.13+, this package is included as a dependency of the main `vue` package and can be accessed as `vue/compiler-sfc`. This means you no longer need to explicitly install this package and ensure its version match that of `vue`'s. Just use the main `vue/compiler-sfc` deep import instead.**
|
||||||
|
|
||||||
|
This package contains lower level utilities that you can use if you are writing a plugin / transform for a bundler or module system that compiles Vue Single File Components (SFCs) into JavaScript. It is used in [vue-loader](https://github.com/vuejs/vue-loader), [rollup-plugin-vue](https://github.com/vuejs/rollup-plugin-vue) and [vite](https://github.com/vitejs/vite).
|
||||||
|
|
||||||
|
## API
|
||||||
|
|
||||||
|
The API is intentionally low-level due to the various considerations when integrating Vue SFCs in a build system:
|
||||||
|
|
||||||
|
- Separate hot-module replacement (HMR) for script, template and styles
|
||||||
|
|
||||||
|
- template updates should not reset component state
|
||||||
|
- style updates should be performed without component re-render
|
||||||
|
|
||||||
|
- Leveraging the tool's plugin system for pre-processor handling. e.g. `<style lang="scss">` should be processed by the corresponding webpack loader.
|
||||||
|
|
||||||
|
- In some cases, transformers of each block in an SFC do not share the same execution context. For example, when used with `thread-loader` or other parallelized configurations, the template sub-loader in `vue-loader` may not have access to the full SFC and its descriptor.
|
||||||
|
|
||||||
|
The general idea is to generate a facade module that imports the individual blocks of the component. The trick is the module imports itself with different query strings so that the build system can handle each request as "virtual" modules:
|
||||||
|
|
||||||
|
```
|
||||||
|
+--------------------+
|
||||||
|
| |
|
||||||
|
| script transform |
|
||||||
|
+----->+ |
|
||||||
|
| +--------------------+
|
||||||
|
|
|
||||||
|
+--------------------+ | +--------------------+
|
||||||
|
| | | | |
|
||||||
|
| facade transform +----------->+ template transform |
|
||||||
|
| | | | |
|
||||||
|
+--------------------+ | +--------------------+
|
||||||
|
|
|
||||||
|
| +--------------------+
|
||||||
|
+----->+ |
|
||||||
|
| style transform |
|
||||||
|
| |
|
||||||
|
+--------------------+
|
||||||
|
```
|
||||||
|
|
||||||
|
Where the facade module looks like this:
|
||||||
|
|
||||||
|
```js
|
||||||
|
// main script
|
||||||
|
import script from '/project/foo.vue?vue&type=script'
|
||||||
|
// template compiled to render function
|
||||||
|
import { render } from '/project/foo.vue?vue&type=template&id=xxxxxx'
|
||||||
|
// css
|
||||||
|
import '/project/foo.vue?vue&type=style&index=0&id=xxxxxx'
|
||||||
|
|
||||||
|
// attach render function to script
|
||||||
|
script.render = render
|
||||||
|
|
||||||
|
// attach additional metadata
|
||||||
|
// some of these should be dev only
|
||||||
|
script.__file = 'example.vue'
|
||||||
|
script.__scopeId = 'xxxxxx'
|
||||||
|
|
||||||
|
// additional tooling-specific HMR handling code
|
||||||
|
// using __VUE_HMR_API__ global
|
||||||
|
|
||||||
|
export default script
|
||||||
|
```
|
||||||
|
|
||||||
|
### High Level Workflow
|
||||||
|
|
||||||
|
1. In facade transform, parse the source into descriptor with the `parse` API and generate the above facade module code based on the descriptor;
|
||||||
|
|
||||||
|
2. In script transform, use `compileScript` to process the script. This handles features like `<script setup>` and CSS variable injection. Alternatively, this can be done directly in the facade module (with the code inlined instead of imported), but it will require rewriting `export default` to a temp variable (a `rewriteDefault` convenience API is provided for this purpose) so additional options can be attached to the exported object.
|
||||||
|
|
||||||
|
3. In template transform, use `compileTemplate` to compile the raw template into render function code.
|
||||||
|
|
||||||
|
4. In style transform, use `compileStyle` to compile raw CSS to handle `<style scoped>`, `<style module>` and CSS variable injection.
|
||||||
|
|
||||||
|
Options needed for these APIs can be passed via the query string.
|
||||||
|
|
||||||
|
For detailed API references and options, check out the source type definitions. For actual usage of these APIs, check out [rollup-plugin-vue](https://github.com/vuejs/rollup-plugin-vue/tree/next) or [vue-loader](https://github.com/vuejs/vue-loader/tree/next).
|
17594
webui/node_modules/@vue/compiler-sfc/dist/compiler-sfc.cjs.js
generated
vendored
Normal file
17594
webui/node_modules/@vue/compiler-sfc/dist/compiler-sfc.cjs.js
generated
vendored
Normal file
File diff suppressed because one or more lines are too long
321
webui/node_modules/@vue/compiler-sfc/dist/compiler-sfc.d.ts
generated
vendored
Normal file
321
webui/node_modules/@vue/compiler-sfc/dist/compiler-sfc.d.ts
generated
vendored
Normal file
|
@ -0,0 +1,321 @@
|
||||||
|
import { parse as babelParse } from '@babel/parser';
|
||||||
|
import { BindingMetadata } from '@vue/compiler-core';
|
||||||
|
import { CodegenResult } from '@vue/compiler-core';
|
||||||
|
import { CompilerError } from '@vue/compiler-core';
|
||||||
|
import { CompilerOptions } from '@vue/compiler-core';
|
||||||
|
import { ElementNode } from '@vue/compiler-core';
|
||||||
|
import { extractIdentifiers } from '@vue/compiler-core';
|
||||||
|
import { generateCodeFrame } from '@vue/compiler-core';
|
||||||
|
import { isInDestructureAssignment } from '@vue/compiler-core';
|
||||||
|
import { isStaticProperty } from '@vue/compiler-core';
|
||||||
|
import { LazyResult } from 'postcss';
|
||||||
|
import MagicString from 'magic-string';
|
||||||
|
import { ParserOptions } from '@vue/compiler-core';
|
||||||
|
import { ParserPlugin } from '@babel/parser';
|
||||||
|
import { RawSourceMap } from 'source-map';
|
||||||
|
import { Result } from 'postcss';
|
||||||
|
import { RootNode } from '@vue/compiler-core';
|
||||||
|
import { shouldTransform as shouldTransformRef } from '@vue/reactivity-transform';
|
||||||
|
import { SourceLocation } from '@vue/compiler-core';
|
||||||
|
import { transform as transformRef } from '@vue/reactivity-transform';
|
||||||
|
import { transformAST as transformRefAST } from '@vue/reactivity-transform';
|
||||||
|
import { walkIdentifiers } from '@vue/compiler-core';
|
||||||
|
|
||||||
|
export declare interface AssetURLOptions {
|
||||||
|
/**
|
||||||
|
* If base is provided, instead of transforming relative asset urls into
|
||||||
|
* imports, they will be directly rewritten to absolute urls.
|
||||||
|
*/
|
||||||
|
base?: string | null;
|
||||||
|
/**
|
||||||
|
* If true, also processes absolute urls.
|
||||||
|
*/
|
||||||
|
includeAbsolute?: boolean;
|
||||||
|
tags?: AssetURLTagConfig;
|
||||||
|
}
|
||||||
|
|
||||||
|
export declare interface AssetURLTagConfig {
|
||||||
|
[name: string]: string[];
|
||||||
|
}
|
||||||
|
|
||||||
|
export { babelParse }
|
||||||
|
|
||||||
|
export { BindingMetadata }
|
||||||
|
|
||||||
|
export { CompilerError }
|
||||||
|
|
||||||
|
export { CompilerOptions }
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Compile `<script setup>`
|
||||||
|
* It requires the whole SFC descriptor because we need to handle and merge
|
||||||
|
* normal `<script>` + `<script setup>` if both are present.
|
||||||
|
*/
|
||||||
|
export declare function compileScript(sfc: SFCDescriptor, options: SFCScriptCompileOptions): SFCScriptBlock;
|
||||||
|
|
||||||
|
export declare function compileStyle(options: SFCStyleCompileOptions): SFCStyleCompileResults;
|
||||||
|
|
||||||
|
export declare function compileStyleAsync(options: SFCAsyncStyleCompileOptions): Promise<SFCStyleCompileResults>;
|
||||||
|
|
||||||
|
export declare function compileTemplate(options: SFCTemplateCompileOptions): SFCTemplateCompileResults;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Aligns with postcss-modules
|
||||||
|
* https://github.com/css-modules/postcss-modules
|
||||||
|
*/
|
||||||
|
declare interface CSSModulesOptions {
|
||||||
|
scopeBehaviour?: 'global' | 'local';
|
||||||
|
generateScopedName?: string | ((name: string, filename: string, css: string) => string);
|
||||||
|
hashPrefix?: string;
|
||||||
|
localsConvention?: 'camelCase' | 'camelCaseOnly' | 'dashes' | 'dashesOnly';
|
||||||
|
exportGlobals?: boolean;
|
||||||
|
globalModulePaths?: RegExp[];
|
||||||
|
}
|
||||||
|
|
||||||
|
export { extractIdentifiers }
|
||||||
|
|
||||||
|
export { generateCodeFrame }
|
||||||
|
|
||||||
|
declare interface ImportBinding {
|
||||||
|
isType: boolean;
|
||||||
|
imported: string;
|
||||||
|
source: string;
|
||||||
|
isFromSetup: boolean;
|
||||||
|
isUsedInTemplate: boolean;
|
||||||
|
}
|
||||||
|
|
||||||
|
export { isInDestructureAssignment }
|
||||||
|
|
||||||
|
export { isStaticProperty }
|
||||||
|
|
||||||
|
export { MagicString }
|
||||||
|
|
||||||
|
export declare function parse(source: string, { sourceMap, filename, sourceRoot, pad, ignoreEmpty, compiler }?: SFCParseOptions): SFCParseResult;
|
||||||
|
|
||||||
|
declare type PreprocessLang = 'less' | 'sass' | 'scss' | 'styl' | 'stylus';
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Utility for rewriting `export default` in a script block into a variable
|
||||||
|
* declaration so that we can inject things into it
|
||||||
|
*/
|
||||||
|
export declare function rewriteDefault(input: string, as: string, parserPlugins?: ParserPlugin[]): string;
|
||||||
|
|
||||||
|
export declare interface SFCAsyncStyleCompileOptions extends SFCStyleCompileOptions {
|
||||||
|
isAsync?: boolean;
|
||||||
|
modules?: boolean;
|
||||||
|
modulesOptions?: CSSModulesOptions;
|
||||||
|
}
|
||||||
|
|
||||||
|
export declare interface SFCBlock {
|
||||||
|
type: string;
|
||||||
|
content: string;
|
||||||
|
attrs: Record<string, string | true>;
|
||||||
|
loc: SourceLocation;
|
||||||
|
map?: RawSourceMap;
|
||||||
|
lang?: string;
|
||||||
|
src?: string;
|
||||||
|
}
|
||||||
|
|
||||||
|
export declare interface SFCDescriptor {
|
||||||
|
filename: string;
|
||||||
|
source: string;
|
||||||
|
template: SFCTemplateBlock | null;
|
||||||
|
script: SFCScriptBlock | null;
|
||||||
|
scriptSetup: SFCScriptBlock | null;
|
||||||
|
styles: SFCStyleBlock[];
|
||||||
|
customBlocks: SFCBlock[];
|
||||||
|
cssVars: string[];
|
||||||
|
/**
|
||||||
|
* whether the SFC uses :slotted() modifier.
|
||||||
|
* this is used as a compiler optimization hint.
|
||||||
|
*/
|
||||||
|
slotted: boolean;
|
||||||
|
/**
|
||||||
|
* compare with an existing descriptor to determine whether HMR should perform
|
||||||
|
* a reload vs. re-render.
|
||||||
|
*
|
||||||
|
* Note: this comparison assumes the prev/next script are already identical,
|
||||||
|
* and only checks the special case where <script setup lang="ts"> unused import
|
||||||
|
* pruning result changes due to template changes.
|
||||||
|
*/
|
||||||
|
shouldForceReload: (prevImports: Record<string, ImportBinding>) => boolean;
|
||||||
|
}
|
||||||
|
|
||||||
|
export declare interface SFCParseOptions {
|
||||||
|
filename?: string;
|
||||||
|
sourceMap?: boolean;
|
||||||
|
sourceRoot?: string;
|
||||||
|
pad?: boolean | 'line' | 'space';
|
||||||
|
ignoreEmpty?: boolean;
|
||||||
|
compiler?: TemplateCompiler;
|
||||||
|
}
|
||||||
|
|
||||||
|
export declare interface SFCParseResult {
|
||||||
|
descriptor: SFCDescriptor;
|
||||||
|
errors: (CompilerError | SyntaxError)[];
|
||||||
|
}
|
||||||
|
|
||||||
|
export declare interface SFCScriptBlock extends SFCBlock {
|
||||||
|
type: 'script';
|
||||||
|
setup?: string | boolean;
|
||||||
|
bindings?: BindingMetadata;
|
||||||
|
imports?: Record<string, ImportBinding>;
|
||||||
|
/**
|
||||||
|
* import('\@babel/types').Statement
|
||||||
|
*/
|
||||||
|
scriptAst?: any[];
|
||||||
|
/**
|
||||||
|
* import('\@babel/types').Statement
|
||||||
|
*/
|
||||||
|
scriptSetupAst?: any[];
|
||||||
|
}
|
||||||
|
|
||||||
|
export declare interface SFCScriptCompileOptions {
|
||||||
|
/**
|
||||||
|
* Scope ID for prefixing injected CSS variables.
|
||||||
|
* This must be consistent with the `id` passed to `compileStyle`.
|
||||||
|
*/
|
||||||
|
id: string;
|
||||||
|
/**
|
||||||
|
* Production mode. Used to determine whether to generate hashed CSS variables
|
||||||
|
*/
|
||||||
|
isProd?: boolean;
|
||||||
|
/**
|
||||||
|
* Enable/disable source map. Defaults to true.
|
||||||
|
*/
|
||||||
|
sourceMap?: boolean;
|
||||||
|
/**
|
||||||
|
* https://babeljs.io/docs/en/babel-parser#plugins
|
||||||
|
*/
|
||||||
|
babelParserPlugins?: ParserPlugin[];
|
||||||
|
/**
|
||||||
|
* (Experimental) Enable syntax transform for using refs without `.value` and
|
||||||
|
* using destructured props with reactivity
|
||||||
|
*/
|
||||||
|
reactivityTransform?: boolean;
|
||||||
|
/**
|
||||||
|
* (Experimental) Enable syntax transform for using refs without `.value`
|
||||||
|
* https://github.com/vuejs/rfcs/discussions/369
|
||||||
|
* @deprecated now part of `reactivityTransform`
|
||||||
|
* @default false
|
||||||
|
*/
|
||||||
|
refTransform?: boolean;
|
||||||
|
/**
|
||||||
|
* (Experimental) Enable syntax transform for destructuring from defineProps()
|
||||||
|
* https://github.com/vuejs/rfcs/discussions/394
|
||||||
|
* @deprecated now part of `reactivityTransform`
|
||||||
|
* @default false
|
||||||
|
*/
|
||||||
|
propsDestructureTransform?: boolean;
|
||||||
|
/**
|
||||||
|
* @deprecated use `reactivityTransform` instead.
|
||||||
|
*/
|
||||||
|
refSugar?: boolean;
|
||||||
|
/**
|
||||||
|
* Compile the template and inline the resulting render function
|
||||||
|
* directly inside setup().
|
||||||
|
* - Only affects `<script setup>`
|
||||||
|
* - This should only be used in production because it prevents the template
|
||||||
|
* from being hot-reloaded separately from component state.
|
||||||
|
*/
|
||||||
|
inlineTemplate?: boolean;
|
||||||
|
/**
|
||||||
|
* Options for template compilation when inlining. Note these are options that
|
||||||
|
* would normally be passed to `compiler-sfc`'s own `compileTemplate()`, not
|
||||||
|
* options passed to `compiler-dom`.
|
||||||
|
*/
|
||||||
|
templateOptions?: Partial<SFCTemplateCompileOptions>;
|
||||||
|
}
|
||||||
|
|
||||||
|
export declare interface SFCStyleBlock extends SFCBlock {
|
||||||
|
type: 'style';
|
||||||
|
scoped?: boolean;
|
||||||
|
module?: string | boolean;
|
||||||
|
}
|
||||||
|
|
||||||
|
export declare interface SFCStyleCompileOptions {
|
||||||
|
source: string;
|
||||||
|
filename: string;
|
||||||
|
id: string;
|
||||||
|
scoped?: boolean;
|
||||||
|
trim?: boolean;
|
||||||
|
isProd?: boolean;
|
||||||
|
inMap?: RawSourceMap;
|
||||||
|
preprocessLang?: PreprocessLang;
|
||||||
|
preprocessOptions?: any;
|
||||||
|
preprocessCustomRequire?: (id: string) => any;
|
||||||
|
postcssOptions?: any;
|
||||||
|
postcssPlugins?: any[];
|
||||||
|
/**
|
||||||
|
* @deprecated use `inMap` instead.
|
||||||
|
*/
|
||||||
|
map?: RawSourceMap;
|
||||||
|
}
|
||||||
|
|
||||||
|
export declare interface SFCStyleCompileResults {
|
||||||
|
code: string;
|
||||||
|
map: RawSourceMap | undefined;
|
||||||
|
rawResult: Result | LazyResult | undefined;
|
||||||
|
errors: Error[];
|
||||||
|
modules?: Record<string, string>;
|
||||||
|
dependencies: Set<string>;
|
||||||
|
}
|
||||||
|
|
||||||
|
export declare interface SFCTemplateBlock extends SFCBlock {
|
||||||
|
type: 'template';
|
||||||
|
ast: ElementNode;
|
||||||
|
}
|
||||||
|
|
||||||
|
export declare interface SFCTemplateCompileOptions {
|
||||||
|
source: string;
|
||||||
|
filename: string;
|
||||||
|
id: string;
|
||||||
|
scoped?: boolean;
|
||||||
|
slotted?: boolean;
|
||||||
|
isProd?: boolean;
|
||||||
|
ssr?: boolean;
|
||||||
|
ssrCssVars?: string[];
|
||||||
|
inMap?: RawSourceMap;
|
||||||
|
compiler?: TemplateCompiler;
|
||||||
|
compilerOptions?: CompilerOptions;
|
||||||
|
preprocessLang?: string;
|
||||||
|
preprocessOptions?: any;
|
||||||
|
/**
|
||||||
|
* In some cases, compiler-sfc may not be inside the project root (e.g. when
|
||||||
|
* linked or globally installed). In such cases a custom `require` can be
|
||||||
|
* passed to correctly resolve the preprocessors.
|
||||||
|
*/
|
||||||
|
preprocessCustomRequire?: (id: string) => any;
|
||||||
|
/**
|
||||||
|
* Configure what tags/attributes to transform into asset url imports,
|
||||||
|
* or disable the transform altogether with `false`.
|
||||||
|
*/
|
||||||
|
transformAssetUrls?: AssetURLOptions | AssetURLTagConfig | boolean;
|
||||||
|
}
|
||||||
|
|
||||||
|
export declare interface SFCTemplateCompileResults {
|
||||||
|
code: string;
|
||||||
|
ast?: RootNode;
|
||||||
|
preamble?: string;
|
||||||
|
source: string;
|
||||||
|
tips: string[];
|
||||||
|
errors: (string | CompilerError)[];
|
||||||
|
map?: RawSourceMap;
|
||||||
|
}
|
||||||
|
|
||||||
|
export { shouldTransformRef }
|
||||||
|
|
||||||
|
export declare interface TemplateCompiler {
|
||||||
|
compile(template: string, options: CompilerOptions): CodegenResult;
|
||||||
|
parse(template: string, options: ParserOptions): RootNode;
|
||||||
|
}
|
||||||
|
|
||||||
|
export { transformRef }
|
||||||
|
|
||||||
|
export { transformRefAST }
|
||||||
|
|
||||||
|
export declare const walk: any;
|
||||||
|
|
||||||
|
export { walkIdentifiers }
|
||||||
|
|
||||||
|
export { }
|
49403
webui/node_modules/@vue/compiler-sfc/dist/compiler-sfc.esm-browser.js
generated
vendored
Normal file
49403
webui/node_modules/@vue/compiler-sfc/dist/compiler-sfc.esm-browser.js
generated
vendored
Normal file
File diff suppressed because it is too large
Load diff
59
webui/node_modules/@vue/compiler-sfc/package.json
generated
vendored
Normal file
59
webui/node_modules/@vue/compiler-sfc/package.json
generated
vendored
Normal file
|
@ -0,0 +1,59 @@
|
||||||
|
{
|
||||||
|
"name": "@vue/compiler-sfc",
|
||||||
|
"version": "3.2.37",
|
||||||
|
"description": "@vue/compiler-sfc",
|
||||||
|
"main": "dist/compiler-sfc.cjs.js",
|
||||||
|
"module": "dist/compiler-sfc.esm-browser.js",
|
||||||
|
"types": "dist/compiler-sfc.d.ts",
|
||||||
|
"files": [
|
||||||
|
"dist"
|
||||||
|
],
|
||||||
|
"buildOptions": {
|
||||||
|
"name": "VueCompilerSFC",
|
||||||
|
"formats": [
|
||||||
|
"cjs",
|
||||||
|
"esm-browser"
|
||||||
|
],
|
||||||
|
"prod": false,
|
||||||
|
"enableNonBrowserBranches": true
|
||||||
|
},
|
||||||
|
"repository": {
|
||||||
|
"type": "git",
|
||||||
|
"url": "git+https://github.com/vuejs/core.git",
|
||||||
|
"directory": "packages/compiler-sfc"
|
||||||
|
},
|
||||||
|
"keywords": [
|
||||||
|
"vue"
|
||||||
|
],
|
||||||
|
"author": "Evan You",
|
||||||
|
"license": "MIT",
|
||||||
|
"bugs": {
|
||||||
|
"url": "https://github.com/vuejs/core/issues"
|
||||||
|
},
|
||||||
|
"homepage": "https://github.com/vuejs/core/tree/main/packages/compiler-sfc#readme",
|
||||||
|
"dependencies": {
|
||||||
|
"@babel/parser": "^7.16.4",
|
||||||
|
"@vue/compiler-core": "3.2.37",
|
||||||
|
"@vue/compiler-dom": "3.2.37",
|
||||||
|
"@vue/compiler-ssr": "3.2.37",
|
||||||
|
"@vue/reactivity-transform": "3.2.37",
|
||||||
|
"@vue/shared": "3.2.37",
|
||||||
|
"estree-walker": "^2.0.2",
|
||||||
|
"magic-string": "^0.25.7",
|
||||||
|
"source-map": "^0.6.1",
|
||||||
|
"postcss": "^8.1.10"
|
||||||
|
},
|
||||||
|
"devDependencies": {
|
||||||
|
"@types/estree": "^0.0.48",
|
||||||
|
"@babel/types": "^7.16.0",
|
||||||
|
"@types/lru-cache": "^5.1.0",
|
||||||
|
"pug": "^3.0.1",
|
||||||
|
"sass": "^1.26.9",
|
||||||
|
"@vue/consolidate": "^0.17.3",
|
||||||
|
"hash-sum": "^2.0.0",
|
||||||
|
"lru-cache": "^5.1.1",
|
||||||
|
"merge-source-map": "^1.1.0",
|
||||||
|
"postcss-modules": "^4.0.0",
|
||||||
|
"postcss-selector-parser": "^6.0.4"
|
||||||
|
}
|
||||||
|
}
|
21
webui/node_modules/@vue/compiler-ssr/LICENSE
generated
vendored
Normal file
21
webui/node_modules/@vue/compiler-ssr/LICENSE
generated
vendored
Normal file
|
@ -0,0 +1,21 @@
|
||||||
|
The MIT License (MIT)
|
||||||
|
|
||||||
|
Copyright (c) 2018-present, Yuxi (Evan) You
|
||||||
|
|
||||||
|
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.
|
1
webui/node_modules/@vue/compiler-ssr/README.md
generated
vendored
Normal file
1
webui/node_modules/@vue/compiler-ssr/README.md
generated
vendored
Normal file
|
@ -0,0 +1 @@
|
||||||
|
# @vue/compiler-ssr
|
1266
webui/node_modules/@vue/compiler-ssr/dist/compiler-ssr.cjs.js
generated
vendored
Normal file
1266
webui/node_modules/@vue/compiler-ssr/dist/compiler-ssr.cjs.js
generated
vendored
Normal file
File diff suppressed because it is too large
Load diff
6
webui/node_modules/@vue/compiler-ssr/dist/compiler-ssr.d.ts
generated
vendored
Normal file
6
webui/node_modules/@vue/compiler-ssr/dist/compiler-ssr.d.ts
generated
vendored
Normal file
|
@ -0,0 +1,6 @@
|
||||||
|
import { CodegenResult } from '@vue/compiler-dom';
|
||||||
|
import { CompilerOptions } from '@vue/compiler-dom';
|
||||||
|
|
||||||
|
export declare function compile(template: string, options?: CompilerOptions): CodegenResult;
|
||||||
|
|
||||||
|
export { }
|
34
webui/node_modules/@vue/compiler-ssr/package.json
generated
vendored
Normal file
34
webui/node_modules/@vue/compiler-ssr/package.json
generated
vendored
Normal file
|
@ -0,0 +1,34 @@
|
||||||
|
{
|
||||||
|
"name": "@vue/compiler-ssr",
|
||||||
|
"version": "3.2.37",
|
||||||
|
"description": "@vue/compiler-ssr",
|
||||||
|
"main": "dist/compiler-ssr.cjs.js",
|
||||||
|
"types": "dist/compiler-ssr.d.ts",
|
||||||
|
"files": [
|
||||||
|
"dist"
|
||||||
|
],
|
||||||
|
"buildOptions": {
|
||||||
|
"prod": false,
|
||||||
|
"formats": [
|
||||||
|
"cjs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"repository": {
|
||||||
|
"type": "git",
|
||||||
|
"url": "git+https://github.com/vuejs/core.git",
|
||||||
|
"directory": "packages/compiler-ssr"
|
||||||
|
},
|
||||||
|
"keywords": [
|
||||||
|
"vue"
|
||||||
|
],
|
||||||
|
"author": "Evan You",
|
||||||
|
"license": "MIT",
|
||||||
|
"bugs": {
|
||||||
|
"url": "https://github.com/vuejs/core/issues"
|
||||||
|
},
|
||||||
|
"homepage": "https://github.com/vuejs/core/tree/main/packages/compiler-ssr#readme",
|
||||||
|
"dependencies": {
|
||||||
|
"@vue/shared": "3.2.37",
|
||||||
|
"@vue/compiler-dom": "3.2.37"
|
||||||
|
}
|
||||||
|
}
|
2
webui/node_modules/@vue/devtools-api/lib/cjs/api/api.js
generated
vendored
Normal file
2
webui/node_modules/@vue/devtools-api/lib/cjs/api/api.js
generated
vendored
Normal file
|
@ -0,0 +1,2 @@
|
||||||
|
"use strict";
|
||||||
|
Object.defineProperty(exports, "__esModule", { value: true });
|
2
webui/node_modules/@vue/devtools-api/lib/cjs/api/app.js
generated
vendored
Normal file
2
webui/node_modules/@vue/devtools-api/lib/cjs/api/app.js
generated
vendored
Normal file
|
@ -0,0 +1,2 @@
|
||||||
|
"use strict";
|
||||||
|
Object.defineProperty(exports, "__esModule", { value: true });
|
2
webui/node_modules/@vue/devtools-api/lib/cjs/api/component.js
generated
vendored
Normal file
2
webui/node_modules/@vue/devtools-api/lib/cjs/api/component.js
generated
vendored
Normal file
|
@ -0,0 +1,2 @@
|
||||||
|
"use strict";
|
||||||
|
Object.defineProperty(exports, "__esModule", { value: true });
|
2
webui/node_modules/@vue/devtools-api/lib/cjs/api/context.js
generated
vendored
Normal file
2
webui/node_modules/@vue/devtools-api/lib/cjs/api/context.js
generated
vendored
Normal file
|
@ -0,0 +1,2 @@
|
||||||
|
"use strict";
|
||||||
|
Object.defineProperty(exports, "__esModule", { value: true });
|
2
webui/node_modules/@vue/devtools-api/lib/cjs/api/hooks.js
generated
vendored
Normal file
2
webui/node_modules/@vue/devtools-api/lib/cjs/api/hooks.js
generated
vendored
Normal file
|
@ -0,0 +1,2 @@
|
||||||
|
"use strict";
|
||||||
|
Object.defineProperty(exports, "__esModule", { value: true });
|
22
webui/node_modules/@vue/devtools-api/lib/cjs/api/index.js
generated
vendored
Normal file
22
webui/node_modules/@vue/devtools-api/lib/cjs/api/index.js
generated
vendored
Normal file
|
@ -0,0 +1,22 @@
|
||||||
|
"use strict";
|
||||||
|
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
||||||
|
if (k2 === undefined) k2 = k;
|
||||||
|
var desc = Object.getOwnPropertyDescriptor(m, k);
|
||||||
|
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
||||||
|
desc = { enumerable: true, get: function() { return m[k]; } };
|
||||||
|
}
|
||||||
|
Object.defineProperty(o, k2, desc);
|
||||||
|
}) : (function(o, m, k, k2) {
|
||||||
|
if (k2 === undefined) k2 = k;
|
||||||
|
o[k2] = m[k];
|
||||||
|
}));
|
||||||
|
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
||||||
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
||||||
|
};
|
||||||
|
Object.defineProperty(exports, "__esModule", { value: true });
|
||||||
|
__exportStar(require("./api.js"), exports);
|
||||||
|
__exportStar(require("./app.js"), exports);
|
||||||
|
__exportStar(require("./component.js"), exports);
|
||||||
|
__exportStar(require("./context.js"), exports);
|
||||||
|
__exportStar(require("./hooks.js"), exports);
|
||||||
|
__exportStar(require("./util.js"), exports);
|
2
webui/node_modules/@vue/devtools-api/lib/cjs/api/util.js
generated
vendored
Normal file
2
webui/node_modules/@vue/devtools-api/lib/cjs/api/util.js
generated
vendored
Normal file
|
@ -0,0 +1,2 @@
|
||||||
|
"use strict";
|
||||||
|
Object.defineProperty(exports, "__esModule", { value: true });
|
5
webui/node_modules/@vue/devtools-api/lib/cjs/const.js
generated
vendored
Normal file
5
webui/node_modules/@vue/devtools-api/lib/cjs/const.js
generated
vendored
Normal file
|
@ -0,0 +1,5 @@
|
||||||
|
"use strict";
|
||||||
|
Object.defineProperty(exports, "__esModule", { value: true });
|
||||||
|
exports.HOOK_PLUGIN_SETTINGS_SET = exports.HOOK_SETUP = void 0;
|
||||||
|
exports.HOOK_SETUP = 'devtools-plugin:setup';
|
||||||
|
exports.HOOK_PLUGIN_SETTINGS_SET = 'plugin:settings:set';
|
17
webui/node_modules/@vue/devtools-api/lib/cjs/env.js
generated
vendored
Normal file
17
webui/node_modules/@vue/devtools-api/lib/cjs/env.js
generated
vendored
Normal file
|
@ -0,0 +1,17 @@
|
||||||
|
"use strict";
|
||||||
|
Object.defineProperty(exports, "__esModule", { value: true });
|
||||||
|
exports.isProxyAvailable = exports.getTarget = exports.getDevtoolsGlobalHook = void 0;
|
||||||
|
function getDevtoolsGlobalHook() {
|
||||||
|
return getTarget().__VUE_DEVTOOLS_GLOBAL_HOOK__;
|
||||||
|
}
|
||||||
|
exports.getDevtoolsGlobalHook = getDevtoolsGlobalHook;
|
||||||
|
function getTarget() {
|
||||||
|
// @ts-ignore
|
||||||
|
return (typeof navigator !== 'undefined' && typeof window !== 'undefined')
|
||||||
|
? window
|
||||||
|
: typeof global !== 'undefined'
|
||||||
|
? global
|
||||||
|
: {};
|
||||||
|
}
|
||||||
|
exports.getTarget = getTarget;
|
||||||
|
exports.isProxyAvailable = typeof Proxy === 'function';
|
44
webui/node_modules/@vue/devtools-api/lib/cjs/index.js
generated
vendored
Normal file
44
webui/node_modules/@vue/devtools-api/lib/cjs/index.js
generated
vendored
Normal file
|
@ -0,0 +1,44 @@
|
||||||
|
"use strict";
|
||||||
|
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
||||||
|
if (k2 === undefined) k2 = k;
|
||||||
|
var desc = Object.getOwnPropertyDescriptor(m, k);
|
||||||
|
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
||||||
|
desc = { enumerable: true, get: function() { return m[k]; } };
|
||||||
|
}
|
||||||
|
Object.defineProperty(o, k2, desc);
|
||||||
|
}) : (function(o, m, k, k2) {
|
||||||
|
if (k2 === undefined) k2 = k;
|
||||||
|
o[k2] = m[k];
|
||||||
|
}));
|
||||||
|
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
||||||
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
||||||
|
};
|
||||||
|
Object.defineProperty(exports, "__esModule", { value: true });
|
||||||
|
exports.setupDevtoolsPlugin = void 0;
|
||||||
|
const env_js_1 = require("./env.js");
|
||||||
|
const const_js_1 = require("./const.js");
|
||||||
|
const proxy_js_1 = require("./proxy.js");
|
||||||
|
__exportStar(require("./api/index.js"), exports);
|
||||||
|
__exportStar(require("./plugin.js"), exports);
|
||||||
|
__exportStar(require("./time.js"), exports);
|
||||||
|
function setupDevtoolsPlugin(pluginDescriptor, setupFn) {
|
||||||
|
const descriptor = pluginDescriptor;
|
||||||
|
const target = (0, env_js_1.getTarget)();
|
||||||
|
const hook = (0, env_js_1.getDevtoolsGlobalHook)();
|
||||||
|
const enableProxy = env_js_1.isProxyAvailable && descriptor.enableEarlyProxy;
|
||||||
|
if (hook && (target.__VUE_DEVTOOLS_PLUGIN_API_AVAILABLE__ || !enableProxy)) {
|
||||||
|
hook.emit(const_js_1.HOOK_SETUP, pluginDescriptor, setupFn);
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
const proxy = enableProxy ? new proxy_js_1.ApiProxy(descriptor, hook) : null;
|
||||||
|
const list = target.__VUE_DEVTOOLS_PLUGINS__ = target.__VUE_DEVTOOLS_PLUGINS__ || [];
|
||||||
|
list.push({
|
||||||
|
pluginDescriptor: descriptor,
|
||||||
|
setupFn,
|
||||||
|
proxy,
|
||||||
|
});
|
||||||
|
if (proxy)
|
||||||
|
setupFn(proxy.proxiedTarget);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
exports.setupDevtoolsPlugin = setupDevtoolsPlugin;
|
2
webui/node_modules/@vue/devtools-api/lib/cjs/plugin.js
generated
vendored
Normal file
2
webui/node_modules/@vue/devtools-api/lib/cjs/plugin.js
generated
vendored
Normal file
|
@ -0,0 +1,2 @@
|
||||||
|
"use strict";
|
||||||
|
Object.defineProperty(exports, "__esModule", { value: true });
|
111
webui/node_modules/@vue/devtools-api/lib/cjs/proxy.js
generated
vendored
Normal file
111
webui/node_modules/@vue/devtools-api/lib/cjs/proxy.js
generated
vendored
Normal file
|
@ -0,0 +1,111 @@
|
||||||
|
"use strict";
|
||||||
|
Object.defineProperty(exports, "__esModule", { value: true });
|
||||||
|
exports.ApiProxy = void 0;
|
||||||
|
const const_js_1 = require("./const.js");
|
||||||
|
const time_js_1 = require("./time.js");
|
||||||
|
class ApiProxy {
|
||||||
|
constructor(plugin, hook) {
|
||||||
|
this.target = null;
|
||||||
|
this.targetQueue = [];
|
||||||
|
this.onQueue = [];
|
||||||
|
this.plugin = plugin;
|
||||||
|
this.hook = hook;
|
||||||
|
const defaultSettings = {};
|
||||||
|
if (plugin.settings) {
|
||||||
|
for (const id in plugin.settings) {
|
||||||
|
const item = plugin.settings[id];
|
||||||
|
defaultSettings[id] = item.defaultValue;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
const localSettingsSaveId = `__vue-devtools-plugin-settings__${plugin.id}`;
|
||||||
|
let currentSettings = Object.assign({}, defaultSettings);
|
||||||
|
try {
|
||||||
|
const raw = localStorage.getItem(localSettingsSaveId);
|
||||||
|
const data = JSON.parse(raw);
|
||||||
|
Object.assign(currentSettings, data);
|
||||||
|
}
|
||||||
|
catch (e) {
|
||||||
|
// noop
|
||||||
|
}
|
||||||
|
this.fallbacks = {
|
||||||
|
getSettings() {
|
||||||
|
return currentSettings;
|
||||||
|
},
|
||||||
|
setSettings(value) {
|
||||||
|
try {
|
||||||
|
localStorage.setItem(localSettingsSaveId, JSON.stringify(value));
|
||||||
|
}
|
||||||
|
catch (e) {
|
||||||
|
// noop
|
||||||
|
}
|
||||||
|
currentSettings = value;
|
||||||
|
},
|
||||||
|
now() {
|
||||||
|
return (0, time_js_1.now)();
|
||||||
|
},
|
||||||
|
};
|
||||||
|
if (hook) {
|
||||||
|
hook.on(const_js_1.HOOK_PLUGIN_SETTINGS_SET, (pluginId, value) => {
|
||||||
|
if (pluginId === this.plugin.id) {
|
||||||
|
this.fallbacks.setSettings(value);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
this.proxiedOn = new Proxy({}, {
|
||||||
|
get: (_target, prop) => {
|
||||||
|
if (this.target) {
|
||||||
|
return this.target.on[prop];
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
return (...args) => {
|
||||||
|
this.onQueue.push({
|
||||||
|
method: prop,
|
||||||
|
args,
|
||||||
|
});
|
||||||
|
};
|
||||||
|
}
|
||||||
|
},
|
||||||
|
});
|
||||||
|
this.proxiedTarget = new Proxy({}, {
|
||||||
|
get: (_target, prop) => {
|
||||||
|
if (this.target) {
|
||||||
|
return this.target[prop];
|
||||||
|
}
|
||||||
|
else if (prop === 'on') {
|
||||||
|
return this.proxiedOn;
|
||||||
|
}
|
||||||
|
else if (Object.keys(this.fallbacks).includes(prop)) {
|
||||||
|
return (...args) => {
|
||||||
|
this.targetQueue.push({
|
||||||
|
method: prop,
|
||||||
|
args,
|
||||||
|
resolve: () => { },
|
||||||
|
});
|
||||||
|
return this.fallbacks[prop](...args);
|
||||||
|
};
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
return (...args) => {
|
||||||
|
return new Promise(resolve => {
|
||||||
|
this.targetQueue.push({
|
||||||
|
method: prop,
|
||||||
|
args,
|
||||||
|
resolve,
|
||||||
|
});
|
||||||
|
});
|
||||||
|
};
|
||||||
|
}
|
||||||
|
},
|
||||||
|
});
|
||||||
|
}
|
||||||
|
async setRealTarget(target) {
|
||||||
|
this.target = target;
|
||||||
|
for (const item of this.onQueue) {
|
||||||
|
this.target.on[item.method](...item.args);
|
||||||
|
}
|
||||||
|
for (const item of this.targetQueue) {
|
||||||
|
item.resolve(await this.target[item.method](...item.args));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
exports.ApiProxy = ApiProxy;
|
28
webui/node_modules/@vue/devtools-api/lib/cjs/time.js
generated
vendored
Normal file
28
webui/node_modules/@vue/devtools-api/lib/cjs/time.js
generated
vendored
Normal file
|
@ -0,0 +1,28 @@
|
||||||
|
"use strict";
|
||||||
|
Object.defineProperty(exports, "__esModule", { value: true });
|
||||||
|
exports.now = exports.isPerformanceSupported = void 0;
|
||||||
|
let supported;
|
||||||
|
let perf;
|
||||||
|
function isPerformanceSupported() {
|
||||||
|
var _a;
|
||||||
|
if (supported !== undefined) {
|
||||||
|
return supported;
|
||||||
|
}
|
||||||
|
if (typeof window !== 'undefined' && window.performance) {
|
||||||
|
supported = true;
|
||||||
|
perf = window.performance;
|
||||||
|
}
|
||||||
|
else if (typeof global !== 'undefined' && ((_a = global.perf_hooks) === null || _a === void 0 ? void 0 : _a.performance)) {
|
||||||
|
supported = true;
|
||||||
|
perf = global.perf_hooks.performance;
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
supported = false;
|
||||||
|
}
|
||||||
|
return supported;
|
||||||
|
}
|
||||||
|
exports.isPerformanceSupported = isPerformanceSupported;
|
||||||
|
function now() {
|
||||||
|
return isPerformanceSupported() ? perf.now() : Date.now();
|
||||||
|
}
|
||||||
|
exports.now = now;
|
108
webui/node_modules/@vue/devtools-api/lib/esm/api/api.d.ts
generated
vendored
Normal file
108
webui/node_modules/@vue/devtools-api/lib/esm/api/api.d.ts
generated
vendored
Normal file
|
@ -0,0 +1,108 @@
|
||||||
|
import type { ComponentBounds, Hookable } from './hooks.js';
|
||||||
|
import type { Context } from './context.js';
|
||||||
|
import type { ComponentInstance, ComponentState, StateBase } from './component.js';
|
||||||
|
import type { App } from './app.js';
|
||||||
|
import type { ID } from './util.js';
|
||||||
|
export interface DevtoolsPluginApi<TSettings> {
|
||||||
|
on: Hookable<Context>;
|
||||||
|
notifyComponentUpdate(instance?: ComponentInstance): void;
|
||||||
|
addTimelineLayer(options: TimelineLayerOptions): void;
|
||||||
|
addTimelineEvent(options: TimelineEventOptions): void;
|
||||||
|
addInspector(options: CustomInspectorOptions): void;
|
||||||
|
sendInspectorTree(inspectorId: string): void;
|
||||||
|
sendInspectorState(inspectorId: string): void;
|
||||||
|
selectInspectorNode(inspectorId: string, nodeId: string): void;
|
||||||
|
getComponentBounds(instance: ComponentInstance): Promise<ComponentBounds>;
|
||||||
|
getComponentName(instance: ComponentInstance): Promise<string>;
|
||||||
|
getComponentInstances(app: App): Promise<ComponentInstance[]>;
|
||||||
|
highlightElement(instance: ComponentInstance): void;
|
||||||
|
unhighlightElement(): void;
|
||||||
|
getSettings(pluginId?: string): TSettings;
|
||||||
|
now(): number;
|
||||||
|
/**
|
||||||
|
* @private Not implemented yet
|
||||||
|
*/
|
||||||
|
setSettings(values: TSettings): void;
|
||||||
|
}
|
||||||
|
export interface AppRecord {
|
||||||
|
id: string;
|
||||||
|
name: string;
|
||||||
|
instanceMap: Map<string, ComponentInstance>;
|
||||||
|
rootInstance: ComponentInstance;
|
||||||
|
}
|
||||||
|
export interface TimelineLayerOptions<TData = any, TMeta = any> {
|
||||||
|
id: string;
|
||||||
|
label: string;
|
||||||
|
color: number;
|
||||||
|
skipScreenshots?: boolean;
|
||||||
|
groupsOnly?: boolean;
|
||||||
|
ignoreNoDurationGroups?: boolean;
|
||||||
|
screenshotOverlayRender?: (event: TimelineEvent<TData, TMeta> & ScreenshotOverlayEvent, ctx: ScreenshotOverlayRenderContext) => ScreenshotOverlayRenderResult | Promise<ScreenshotOverlayRenderResult>;
|
||||||
|
}
|
||||||
|
export interface ScreenshotOverlayEvent {
|
||||||
|
layerId: string;
|
||||||
|
renderMeta: any;
|
||||||
|
}
|
||||||
|
export interface ScreenshotOverlayRenderContext<TData = any, TMeta = any> {
|
||||||
|
screenshot: ScreenshotData;
|
||||||
|
events: (TimelineEvent<TData, TMeta> & ScreenshotOverlayEvent)[];
|
||||||
|
index: number;
|
||||||
|
}
|
||||||
|
export declare type ScreenshotOverlayRenderResult = HTMLElement | string | false;
|
||||||
|
export interface ScreenshotData {
|
||||||
|
time: number;
|
||||||
|
}
|
||||||
|
export interface TimelineEventOptions {
|
||||||
|
layerId: string;
|
||||||
|
event: TimelineEvent;
|
||||||
|
all?: boolean;
|
||||||
|
}
|
||||||
|
export interface TimelineEvent<TData = any, TMeta = any> {
|
||||||
|
time: number;
|
||||||
|
data: TData;
|
||||||
|
logType?: 'default' | 'warning' | 'error';
|
||||||
|
meta?: TMeta;
|
||||||
|
groupId?: ID;
|
||||||
|
title?: string;
|
||||||
|
subtitle?: string;
|
||||||
|
}
|
||||||
|
export interface TimelineMarkerOptions {
|
||||||
|
id: string;
|
||||||
|
time: number;
|
||||||
|
color: number;
|
||||||
|
label: string;
|
||||||
|
all?: boolean;
|
||||||
|
}
|
||||||
|
export interface CustomInspectorOptions {
|
||||||
|
id: string;
|
||||||
|
label: string;
|
||||||
|
icon?: string;
|
||||||
|
treeFilterPlaceholder?: string;
|
||||||
|
stateFilterPlaceholder?: string;
|
||||||
|
noSelectionText?: string;
|
||||||
|
actions?: {
|
||||||
|
icon: string;
|
||||||
|
tooltip?: string;
|
||||||
|
action: () => void | Promise<void>;
|
||||||
|
}[];
|
||||||
|
nodeActions?: {
|
||||||
|
icon: string;
|
||||||
|
tooltip?: string;
|
||||||
|
action: (nodeId: string) => void | Promise<void>;
|
||||||
|
}[];
|
||||||
|
}
|
||||||
|
export interface CustomInspectorNode {
|
||||||
|
id: string;
|
||||||
|
label: string;
|
||||||
|
children?: CustomInspectorNode[];
|
||||||
|
tags?: InspectorNodeTag[];
|
||||||
|
}
|
||||||
|
export interface InspectorNodeTag {
|
||||||
|
label: string;
|
||||||
|
textColor: number;
|
||||||
|
backgroundColor: number;
|
||||||
|
tooltip?: string;
|
||||||
|
}
|
||||||
|
export interface CustomInspectorState {
|
||||||
|
[key: string]: (StateBase | Omit<ComponentState, 'type'>)[];
|
||||||
|
}
|
1
webui/node_modules/@vue/devtools-api/lib/esm/api/api.js
generated
vendored
Normal file
1
webui/node_modules/@vue/devtools-api/lib/esm/api/api.js
generated
vendored
Normal file
|
@ -0,0 +1 @@
|
||||||
|
export {};
|
1
webui/node_modules/@vue/devtools-api/lib/esm/api/app.d.ts
generated
vendored
Normal file
1
webui/node_modules/@vue/devtools-api/lib/esm/api/app.d.ts
generated
vendored
Normal file
|
@ -0,0 +1 @@
|
||||||
|
export declare type App = any;
|
1
webui/node_modules/@vue/devtools-api/lib/esm/api/app.js
generated
vendored
Normal file
1
webui/node_modules/@vue/devtools-api/lib/esm/api/app.js
generated
vendored
Normal file
|
@ -0,0 +1 @@
|
||||||
|
export {};
|
77
webui/node_modules/@vue/devtools-api/lib/esm/api/component.d.ts
generated
vendored
Normal file
77
webui/node_modules/@vue/devtools-api/lib/esm/api/component.d.ts
generated
vendored
Normal file
|
@ -0,0 +1,77 @@
|
||||||
|
import type { InspectorNodeTag } from './api.js';
|
||||||
|
import type { ID } from './util.js';
|
||||||
|
export declare type ComponentInstance = any;
|
||||||
|
export interface ComponentTreeNode {
|
||||||
|
uid: ID;
|
||||||
|
id: string;
|
||||||
|
name: string;
|
||||||
|
renderKey: string | number;
|
||||||
|
inactive: boolean;
|
||||||
|
isFragment: boolean;
|
||||||
|
hasChildren: boolean;
|
||||||
|
children: ComponentTreeNode[];
|
||||||
|
domOrder?: number[];
|
||||||
|
consoleId?: string;
|
||||||
|
isRouterView?: boolean;
|
||||||
|
macthedRouteSegment?: string;
|
||||||
|
tags: InspectorNodeTag[];
|
||||||
|
meta?: any;
|
||||||
|
}
|
||||||
|
export interface InspectedComponentData {
|
||||||
|
id: string;
|
||||||
|
name: string;
|
||||||
|
file: string;
|
||||||
|
state: ComponentState[];
|
||||||
|
functional?: boolean;
|
||||||
|
}
|
||||||
|
export interface StateBase {
|
||||||
|
key: string;
|
||||||
|
value: any;
|
||||||
|
editable?: boolean;
|
||||||
|
objectType?: 'ref' | 'reactive' | 'computed' | 'other';
|
||||||
|
raw?: string;
|
||||||
|
}
|
||||||
|
export interface ComponentStateBase extends StateBase {
|
||||||
|
type: string;
|
||||||
|
}
|
||||||
|
export interface ComponentPropState extends ComponentStateBase {
|
||||||
|
meta?: {
|
||||||
|
type: string;
|
||||||
|
required: boolean;
|
||||||
|
/** Vue 1 only */
|
||||||
|
mode?: 'default' | 'sync' | 'once';
|
||||||
|
};
|
||||||
|
}
|
||||||
|
export declare type ComponentBuiltinCustomStateTypes = 'function' | 'map' | 'set' | 'reference' | 'component' | 'component-definition' | 'router' | 'store';
|
||||||
|
export interface ComponentCustomState extends ComponentStateBase {
|
||||||
|
value: CustomState;
|
||||||
|
}
|
||||||
|
export declare type CustomState = {
|
||||||
|
_custom: {
|
||||||
|
type: ComponentBuiltinCustomStateTypes | string;
|
||||||
|
objectType?: string;
|
||||||
|
display?: string;
|
||||||
|
tooltip?: string;
|
||||||
|
value?: any;
|
||||||
|
abstract?: boolean;
|
||||||
|
file?: string;
|
||||||
|
uid?: number;
|
||||||
|
readOnly?: boolean;
|
||||||
|
/** Configure immediate child fields */
|
||||||
|
fields?: {
|
||||||
|
abstract?: boolean;
|
||||||
|
};
|
||||||
|
id?: any;
|
||||||
|
actions?: {
|
||||||
|
icon: string;
|
||||||
|
tooltip?: string;
|
||||||
|
action: () => void | Promise<void>;
|
||||||
|
}[];
|
||||||
|
/** internal */
|
||||||
|
_reviveId?: number;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
export declare type ComponentState = ComponentStateBase | ComponentPropState | ComponentCustomState;
|
||||||
|
export interface ComponentDevtoolsOptions {
|
||||||
|
hide?: boolean;
|
||||||
|
}
|
1
webui/node_modules/@vue/devtools-api/lib/esm/api/component.js
generated
vendored
Normal file
1
webui/node_modules/@vue/devtools-api/lib/esm/api/component.js
generated
vendored
Normal file
|
@ -0,0 +1 @@
|
||||||
|
export {};
|
5
webui/node_modules/@vue/devtools-api/lib/esm/api/context.d.ts
generated
vendored
Normal file
5
webui/node_modules/@vue/devtools-api/lib/esm/api/context.d.ts
generated
vendored
Normal file
|
@ -0,0 +1,5 @@
|
||||||
|
import type { AppRecord } from './api.js';
|
||||||
|
export interface Context {
|
||||||
|
currentTab: string;
|
||||||
|
currentAppRecord: AppRecord;
|
||||||
|
}
|
1
webui/node_modules/@vue/devtools-api/lib/esm/api/context.js
generated
vendored
Normal file
1
webui/node_modules/@vue/devtools-api/lib/esm/api/context.js
generated
vendored
Normal file
|
@ -0,0 +1 @@
|
||||||
|
export {};
|
179
webui/node_modules/@vue/devtools-api/lib/esm/api/hooks.d.ts
generated
vendored
Normal file
179
webui/node_modules/@vue/devtools-api/lib/esm/api/hooks.d.ts
generated
vendored
Normal file
|
@ -0,0 +1,179 @@
|
||||||
|
import type { ComponentTreeNode, InspectedComponentData, ComponentInstance, ComponentDevtoolsOptions } from './component.js';
|
||||||
|
import type { App } from './app.js';
|
||||||
|
import type { CustomInspectorNode, CustomInspectorState, TimelineEvent } from './api.js';
|
||||||
|
export declare const enum Hooks {
|
||||||
|
TRANSFORM_CALL = "transformCall",
|
||||||
|
GET_APP_RECORD_NAME = "getAppRecordName",
|
||||||
|
GET_APP_ROOT_INSTANCE = "getAppRootInstance",
|
||||||
|
REGISTER_APPLICATION = "registerApplication",
|
||||||
|
WALK_COMPONENT_TREE = "walkComponentTree",
|
||||||
|
VISIT_COMPONENT_TREE = "visitComponentTree",
|
||||||
|
WALK_COMPONENT_PARENTS = "walkComponentParents",
|
||||||
|
INSPECT_COMPONENT = "inspectComponent",
|
||||||
|
GET_COMPONENT_BOUNDS = "getComponentBounds",
|
||||||
|
GET_COMPONENT_NAME = "getComponentName",
|
||||||
|
GET_COMPONENT_INSTANCES = "getComponentInstances",
|
||||||
|
GET_ELEMENT_COMPONENT = "getElementComponent",
|
||||||
|
GET_COMPONENT_ROOT_ELEMENTS = "getComponentRootElements",
|
||||||
|
EDIT_COMPONENT_STATE = "editComponentState",
|
||||||
|
GET_COMPONENT_DEVTOOLS_OPTIONS = "getAppDevtoolsOptions",
|
||||||
|
GET_COMPONENT_RENDER_CODE = "getComponentRenderCode",
|
||||||
|
INSPECT_TIMELINE_EVENT = "inspectTimelineEvent",
|
||||||
|
TIMELINE_CLEARED = "timelineCleared",
|
||||||
|
GET_INSPECTOR_TREE = "getInspectorTree",
|
||||||
|
GET_INSPECTOR_STATE = "getInspectorState",
|
||||||
|
EDIT_INSPECTOR_STATE = "editInspectorState",
|
||||||
|
SET_PLUGIN_SETTINGS = "setPluginSettings"
|
||||||
|
}
|
||||||
|
export interface ComponentBounds {
|
||||||
|
left: number;
|
||||||
|
top: number;
|
||||||
|
width: number;
|
||||||
|
height: number;
|
||||||
|
}
|
||||||
|
export declare type HookPayloads = {
|
||||||
|
[Hooks.TRANSFORM_CALL]: {
|
||||||
|
callName: string;
|
||||||
|
inArgs: any[];
|
||||||
|
outArgs: any[];
|
||||||
|
};
|
||||||
|
[Hooks.GET_APP_RECORD_NAME]: {
|
||||||
|
app: App;
|
||||||
|
name: string;
|
||||||
|
};
|
||||||
|
[Hooks.GET_APP_ROOT_INSTANCE]: {
|
||||||
|
app: App;
|
||||||
|
root: ComponentInstance;
|
||||||
|
};
|
||||||
|
[Hooks.REGISTER_APPLICATION]: {
|
||||||
|
app: App;
|
||||||
|
};
|
||||||
|
[Hooks.WALK_COMPONENT_TREE]: {
|
||||||
|
componentInstance: ComponentInstance;
|
||||||
|
componentTreeData: ComponentTreeNode[];
|
||||||
|
maxDepth: number;
|
||||||
|
filter: string;
|
||||||
|
};
|
||||||
|
[Hooks.VISIT_COMPONENT_TREE]: {
|
||||||
|
app: App;
|
||||||
|
componentInstance: ComponentInstance;
|
||||||
|
treeNode: ComponentTreeNode;
|
||||||
|
filter: string;
|
||||||
|
};
|
||||||
|
[Hooks.WALK_COMPONENT_PARENTS]: {
|
||||||
|
componentInstance: ComponentInstance;
|
||||||
|
parentInstances: ComponentInstance[];
|
||||||
|
};
|
||||||
|
[Hooks.INSPECT_COMPONENT]: {
|
||||||
|
app: App;
|
||||||
|
componentInstance: ComponentInstance;
|
||||||
|
instanceData: InspectedComponentData;
|
||||||
|
};
|
||||||
|
[Hooks.GET_COMPONENT_BOUNDS]: {
|
||||||
|
componentInstance: ComponentInstance;
|
||||||
|
bounds: ComponentBounds;
|
||||||
|
};
|
||||||
|
[Hooks.GET_COMPONENT_NAME]: {
|
||||||
|
componentInstance: ComponentInstance;
|
||||||
|
name: string;
|
||||||
|
};
|
||||||
|
[Hooks.GET_COMPONENT_INSTANCES]: {
|
||||||
|
app: App;
|
||||||
|
componentInstances: ComponentInstance[];
|
||||||
|
};
|
||||||
|
[Hooks.GET_ELEMENT_COMPONENT]: {
|
||||||
|
element: HTMLElement | any;
|
||||||
|
componentInstance: ComponentInstance;
|
||||||
|
};
|
||||||
|
[Hooks.GET_COMPONENT_ROOT_ELEMENTS]: {
|
||||||
|
componentInstance: ComponentInstance;
|
||||||
|
rootElements: (HTMLElement | any)[];
|
||||||
|
};
|
||||||
|
[Hooks.EDIT_COMPONENT_STATE]: {
|
||||||
|
app: App;
|
||||||
|
componentInstance: ComponentInstance;
|
||||||
|
path: string[];
|
||||||
|
type: string;
|
||||||
|
state: EditStatePayload;
|
||||||
|
set: (object: any, path?: string | (string[]), value?: any, cb?: (object: any, field: string, value: any) => void) => void;
|
||||||
|
};
|
||||||
|
[Hooks.GET_COMPONENT_DEVTOOLS_OPTIONS]: {
|
||||||
|
componentInstance: ComponentInstance;
|
||||||
|
options: ComponentDevtoolsOptions;
|
||||||
|
};
|
||||||
|
[Hooks.GET_COMPONENT_RENDER_CODE]: {
|
||||||
|
componentInstance: ComponentInstance;
|
||||||
|
code: string;
|
||||||
|
};
|
||||||
|
[Hooks.INSPECT_TIMELINE_EVENT]: {
|
||||||
|
app: App;
|
||||||
|
layerId: string;
|
||||||
|
event: TimelineEvent;
|
||||||
|
all?: boolean;
|
||||||
|
data: any;
|
||||||
|
};
|
||||||
|
[Hooks.TIMELINE_CLEARED]: Record<string, never>;
|
||||||
|
[Hooks.GET_INSPECTOR_TREE]: {
|
||||||
|
app: App;
|
||||||
|
inspectorId: string;
|
||||||
|
filter: string;
|
||||||
|
rootNodes: CustomInspectorNode[];
|
||||||
|
};
|
||||||
|
[Hooks.GET_INSPECTOR_STATE]: {
|
||||||
|
app: App;
|
||||||
|
inspectorId: string;
|
||||||
|
nodeId: string;
|
||||||
|
state: CustomInspectorState;
|
||||||
|
};
|
||||||
|
[Hooks.EDIT_INSPECTOR_STATE]: {
|
||||||
|
app: App;
|
||||||
|
inspectorId: string;
|
||||||
|
nodeId: string;
|
||||||
|
path: string[];
|
||||||
|
type: string;
|
||||||
|
state: EditStatePayload;
|
||||||
|
set: (object: any, path?: string | (string[]), value?: any, cb?: (object: any, field: string, value: any) => void) => void;
|
||||||
|
};
|
||||||
|
[Hooks.SET_PLUGIN_SETTINGS]: {
|
||||||
|
app: App;
|
||||||
|
pluginId: string;
|
||||||
|
key: string;
|
||||||
|
newValue: any;
|
||||||
|
oldValue: any;
|
||||||
|
settings: any;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
export declare type EditStatePayload = {
|
||||||
|
value: any;
|
||||||
|
newKey?: string | null;
|
||||||
|
remove?: undefined | false;
|
||||||
|
} | {
|
||||||
|
value?: undefined;
|
||||||
|
newKey?: undefined;
|
||||||
|
remove: true;
|
||||||
|
};
|
||||||
|
export declare type HookHandler<TPayload, TContext> = (payload: TPayload, ctx: TContext) => void | Promise<void>;
|
||||||
|
export interface Hookable<TContext> {
|
||||||
|
transformCall(handler: HookHandler<HookPayloads[Hooks.TRANSFORM_CALL], TContext>): any;
|
||||||
|
getAppRecordName(handler: HookHandler<HookPayloads[Hooks.GET_APP_RECORD_NAME], TContext>): any;
|
||||||
|
getAppRootInstance(handler: HookHandler<HookPayloads[Hooks.GET_APP_ROOT_INSTANCE], TContext>): any;
|
||||||
|
registerApplication(handler: HookHandler<HookPayloads[Hooks.REGISTER_APPLICATION], TContext>): any;
|
||||||
|
walkComponentTree(handler: HookHandler<HookPayloads[Hooks.WALK_COMPONENT_TREE], TContext>): any;
|
||||||
|
visitComponentTree(handler: HookHandler<HookPayloads[Hooks.VISIT_COMPONENT_TREE], TContext>): any;
|
||||||
|
walkComponentParents(handler: HookHandler<HookPayloads[Hooks.WALK_COMPONENT_PARENTS], TContext>): any;
|
||||||
|
inspectComponent(handler: HookHandler<HookPayloads[Hooks.INSPECT_COMPONENT], TContext>): any;
|
||||||
|
getComponentBounds(handler: HookHandler<HookPayloads[Hooks.GET_COMPONENT_BOUNDS], TContext>): any;
|
||||||
|
getComponentName(handler: HookHandler<HookPayloads[Hooks.GET_COMPONENT_NAME], TContext>): any;
|
||||||
|
getComponentInstances(handler: HookHandler<HookPayloads[Hooks.GET_COMPONENT_INSTANCES], TContext>): any;
|
||||||
|
getElementComponent(handler: HookHandler<HookPayloads[Hooks.GET_ELEMENT_COMPONENT], TContext>): any;
|
||||||
|
getComponentRootElements(handler: HookHandler<HookPayloads[Hooks.GET_COMPONENT_ROOT_ELEMENTS], TContext>): any;
|
||||||
|
editComponentState(handler: HookHandler<HookPayloads[Hooks.EDIT_COMPONENT_STATE], TContext>): any;
|
||||||
|
getComponentDevtoolsOptions(handler: HookHandler<HookPayloads[Hooks.GET_COMPONENT_DEVTOOLS_OPTIONS], TContext>): any;
|
||||||
|
getComponentRenderCode(handler: HookHandler<HookPayloads[Hooks.GET_COMPONENT_RENDER_CODE], TContext>): any;
|
||||||
|
inspectTimelineEvent(handler: HookHandler<HookPayloads[Hooks.INSPECT_TIMELINE_EVENT], TContext>): any;
|
||||||
|
timelineCleared(handler: HookHandler<HookPayloads[Hooks.TIMELINE_CLEARED], TContext>): any;
|
||||||
|
getInspectorTree(handler: HookHandler<HookPayloads[Hooks.GET_INSPECTOR_TREE], TContext>): any;
|
||||||
|
getInspectorState(handler: HookHandler<HookPayloads[Hooks.GET_INSPECTOR_STATE], TContext>): any;
|
||||||
|
editInspectorState(handler: HookHandler<HookPayloads[Hooks.EDIT_INSPECTOR_STATE], TContext>): any;
|
||||||
|
setPluginSettings(handler: HookHandler<HookPayloads[Hooks.SET_PLUGIN_SETTINGS], TContext>): any;
|
||||||
|
}
|
1
webui/node_modules/@vue/devtools-api/lib/esm/api/hooks.js
generated
vendored
Normal file
1
webui/node_modules/@vue/devtools-api/lib/esm/api/hooks.js
generated
vendored
Normal file
|
@ -0,0 +1 @@
|
||||||
|
export {};
|
6
webui/node_modules/@vue/devtools-api/lib/esm/api/index.d.ts
generated
vendored
Normal file
6
webui/node_modules/@vue/devtools-api/lib/esm/api/index.d.ts
generated
vendored
Normal file
|
@ -0,0 +1,6 @@
|
||||||
|
export * from './api.js';
|
||||||
|
export * from './app.js';
|
||||||
|
export * from './component.js';
|
||||||
|
export * from './context.js';
|
||||||
|
export * from './hooks.js';
|
||||||
|
export * from './util.js';
|
6
webui/node_modules/@vue/devtools-api/lib/esm/api/index.js
generated
vendored
Normal file
6
webui/node_modules/@vue/devtools-api/lib/esm/api/index.js
generated
vendored
Normal file
|
@ -0,0 +1,6 @@
|
||||||
|
export * from './api.js';
|
||||||
|
export * from './app.js';
|
||||||
|
export * from './component.js';
|
||||||
|
export * from './context.js';
|
||||||
|
export * from './hooks.js';
|
||||||
|
export * from './util.js';
|
4
webui/node_modules/@vue/devtools-api/lib/esm/api/util.d.ts
generated
vendored
Normal file
4
webui/node_modules/@vue/devtools-api/lib/esm/api/util.d.ts
generated
vendored
Normal file
|
@ -0,0 +1,4 @@
|
||||||
|
export declare type ID = number | string;
|
||||||
|
export interface WithId {
|
||||||
|
id: ID;
|
||||||
|
}
|
1
webui/node_modules/@vue/devtools-api/lib/esm/api/util.js
generated
vendored
Normal file
1
webui/node_modules/@vue/devtools-api/lib/esm/api/util.js
generated
vendored
Normal file
|
@ -0,0 +1 @@
|
||||||
|
export {};
|
2
webui/node_modules/@vue/devtools-api/lib/esm/const.d.ts
generated
vendored
Normal file
2
webui/node_modules/@vue/devtools-api/lib/esm/const.d.ts
generated
vendored
Normal file
|
@ -0,0 +1,2 @@
|
||||||
|
export declare const HOOK_SETUP = "devtools-plugin:setup";
|
||||||
|
export declare const HOOK_PLUGIN_SETTINGS_SET = "plugin:settings:set";
|
2
webui/node_modules/@vue/devtools-api/lib/esm/const.js
generated
vendored
Normal file
2
webui/node_modules/@vue/devtools-api/lib/esm/const.js
generated
vendored
Normal file
|
@ -0,0 +1,2 @@
|
||||||
|
export const HOOK_SETUP = 'devtools-plugin:setup';
|
||||||
|
export const HOOK_PLUGIN_SETTINGS_SET = 'plugin:settings:set';
|
15
webui/node_modules/@vue/devtools-api/lib/esm/env.d.ts
generated
vendored
Normal file
15
webui/node_modules/@vue/devtools-api/lib/esm/env.d.ts
generated
vendored
Normal file
|
@ -0,0 +1,15 @@
|
||||||
|
import type { PluginDescriptor, SetupFunction } from './index.js';
|
||||||
|
import type { ApiProxy } from './proxy.js';
|
||||||
|
export interface PluginQueueItem {
|
||||||
|
pluginDescriptor: PluginDescriptor;
|
||||||
|
setupFn: SetupFunction;
|
||||||
|
proxy?: ApiProxy;
|
||||||
|
}
|
||||||
|
interface GlobalTarget {
|
||||||
|
__VUE_DEVTOOLS_PLUGINS__?: PluginQueueItem[];
|
||||||
|
__VUE_DEVTOOLS_PLUGIN_API_AVAILABLE__?: boolean;
|
||||||
|
}
|
||||||
|
export declare function getDevtoolsGlobalHook(): any;
|
||||||
|
export declare function getTarget(): GlobalTarget;
|
||||||
|
export declare const isProxyAvailable: boolean;
|
||||||
|
export {};
|
12
webui/node_modules/@vue/devtools-api/lib/esm/env.js
generated
vendored
Normal file
12
webui/node_modules/@vue/devtools-api/lib/esm/env.js
generated
vendored
Normal file
|
@ -0,0 +1,12 @@
|
||||||
|
export function getDevtoolsGlobalHook() {
|
||||||
|
return getTarget().__VUE_DEVTOOLS_GLOBAL_HOOK__;
|
||||||
|
}
|
||||||
|
export function getTarget() {
|
||||||
|
// @ts-ignore
|
||||||
|
return (typeof navigator !== 'undefined' && typeof window !== 'undefined')
|
||||||
|
? window
|
||||||
|
: typeof global !== 'undefined'
|
||||||
|
? global
|
||||||
|
: {};
|
||||||
|
}
|
||||||
|
export const isProxyAvailable = typeof Proxy === 'function';
|
18
webui/node_modules/@vue/devtools-api/lib/esm/index.d.ts
generated
vendored
Normal file
18
webui/node_modules/@vue/devtools-api/lib/esm/index.d.ts
generated
vendored
Normal file
|
@ -0,0 +1,18 @@
|
||||||
|
import type { DevtoolsPluginApi } from './api/index.js';
|
||||||
|
import type { PluginDescriptor, ExtractSettingsTypes, PluginSettingsItem } from './plugin.js';
|
||||||
|
export * from './api/index.js';
|
||||||
|
export * from './plugin.js';
|
||||||
|
export * from './time.js';
|
||||||
|
export { PluginQueueItem } from './env.js';
|
||||||
|
declare type Cast<A, B> = A extends B ? A : B;
|
||||||
|
declare type Narrowable = string | number | bigint | boolean;
|
||||||
|
declare type Narrow<A> = Cast<A, [] | (A extends Narrowable ? A : never) | ({
|
||||||
|
[K in keyof A]: Narrow<A[K]>;
|
||||||
|
})>;
|
||||||
|
declare type Exact<C, T> = {
|
||||||
|
[K in keyof C]: K extends keyof T ? T[K] : never;
|
||||||
|
};
|
||||||
|
export declare type SetupFunction<TSettings = any> = (api: DevtoolsPluginApi<TSettings>) => void;
|
||||||
|
export declare function setupDevtoolsPlugin<TDescriptor extends Exact<TDescriptor, PluginDescriptor>, TSettings = ExtractSettingsTypes<TDescriptor extends {
|
||||||
|
settings: infer S;
|
||||||
|
} ? S extends Record<string, PluginSettingsItem> ? S : Record<string, PluginSettingsItem> : Record<string, PluginSettingsItem>>>(pluginDescriptor: Narrow<TDescriptor>, setupFn: SetupFunction<TSettings>): void;
|
26
webui/node_modules/@vue/devtools-api/lib/esm/index.js
generated
vendored
Normal file
26
webui/node_modules/@vue/devtools-api/lib/esm/index.js
generated
vendored
Normal file
|
@ -0,0 +1,26 @@
|
||||||
|
import { getTarget, getDevtoolsGlobalHook, isProxyAvailable } from './env.js';
|
||||||
|
import { HOOK_SETUP } from './const.js';
|
||||||
|
import { ApiProxy } from './proxy.js';
|
||||||
|
export * from './api/index.js';
|
||||||
|
export * from './plugin.js';
|
||||||
|
export * from './time.js';
|
||||||
|
export function setupDevtoolsPlugin(pluginDescriptor, setupFn) {
|
||||||
|
const descriptor = pluginDescriptor;
|
||||||
|
const target = getTarget();
|
||||||
|
const hook = getDevtoolsGlobalHook();
|
||||||
|
const enableProxy = isProxyAvailable && descriptor.enableEarlyProxy;
|
||||||
|
if (hook && (target.__VUE_DEVTOOLS_PLUGIN_API_AVAILABLE__ || !enableProxy)) {
|
||||||
|
hook.emit(HOOK_SETUP, pluginDescriptor, setupFn);
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
const proxy = enableProxy ? new ApiProxy(descriptor, hook) : null;
|
||||||
|
const list = target.__VUE_DEVTOOLS_PLUGINS__ = target.__VUE_DEVTOOLS_PLUGINS__ || [];
|
||||||
|
list.push({
|
||||||
|
pluginDescriptor: descriptor,
|
||||||
|
setupFn,
|
||||||
|
proxy,
|
||||||
|
});
|
||||||
|
if (proxy)
|
||||||
|
setupFn(proxy.proxiedTarget);
|
||||||
|
}
|
||||||
|
}
|
47
webui/node_modules/@vue/devtools-api/lib/esm/plugin.d.ts
generated
vendored
Normal file
47
webui/node_modules/@vue/devtools-api/lib/esm/plugin.d.ts
generated
vendored
Normal file
|
@ -0,0 +1,47 @@
|
||||||
|
import type { App } from './api/index.js';
|
||||||
|
export interface PluginDescriptor {
|
||||||
|
id: string;
|
||||||
|
label: string;
|
||||||
|
app: App;
|
||||||
|
packageName?: string;
|
||||||
|
homepage?: string;
|
||||||
|
componentStateTypes?: string[];
|
||||||
|
logo?: string;
|
||||||
|
disableAppScope?: boolean;
|
||||||
|
disablePluginScope?: boolean;
|
||||||
|
/**
|
||||||
|
* Run the plugin setup and expose the api even if the devtools is not opened yet.
|
||||||
|
* Useful to record timeline events early.
|
||||||
|
*/
|
||||||
|
enableEarlyProxy?: boolean;
|
||||||
|
settings?: Record<string, PluginSettingsItem>;
|
||||||
|
}
|
||||||
|
export declare type PluginSettingsItem = {
|
||||||
|
label: string;
|
||||||
|
description?: string;
|
||||||
|
} & ({
|
||||||
|
type: 'boolean';
|
||||||
|
defaultValue: boolean;
|
||||||
|
} | {
|
||||||
|
type: 'choice';
|
||||||
|
defaultValue: string | number;
|
||||||
|
options: {
|
||||||
|
value: string | number;
|
||||||
|
label: string;
|
||||||
|
}[];
|
||||||
|
component?: 'select' | 'button-group';
|
||||||
|
} | {
|
||||||
|
type: 'text';
|
||||||
|
defaultValue: string;
|
||||||
|
});
|
||||||
|
declare type InferSettingsType<T extends PluginSettingsItem> = [T] extends [{
|
||||||
|
type: 'boolean';
|
||||||
|
}] ? boolean : [T] extends [{
|
||||||
|
type: 'choice';
|
||||||
|
}] ? T['options'][number]['value'] : [T] extends [{
|
||||||
|
type: 'text';
|
||||||
|
}] ? string : unknown;
|
||||||
|
export declare type ExtractSettingsTypes<O extends Record<string, PluginSettingsItem>> = {
|
||||||
|
[K in keyof O]: InferSettingsType<O[K]>;
|
||||||
|
};
|
||||||
|
export {};
|
1
webui/node_modules/@vue/devtools-api/lib/esm/plugin.js
generated
vendored
Normal file
1
webui/node_modules/@vue/devtools-api/lib/esm/plugin.js
generated
vendored
Normal file
|
@ -0,0 +1 @@
|
||||||
|
export {};
|
20
webui/node_modules/@vue/devtools-api/lib/esm/proxy.d.ts
generated
vendored
Normal file
20
webui/node_modules/@vue/devtools-api/lib/esm/proxy.d.ts
generated
vendored
Normal file
|
@ -0,0 +1,20 @@
|
||||||
|
import type { Context, DevtoolsPluginApi, Hookable } from './api/index.js';
|
||||||
|
import type { PluginDescriptor } from './plugin.js';
|
||||||
|
interface QueueItem {
|
||||||
|
method: string;
|
||||||
|
args: any[];
|
||||||
|
resolve?: (value?: any) => void;
|
||||||
|
}
|
||||||
|
export declare class ApiProxy<TTarget extends DevtoolsPluginApi<any> = DevtoolsPluginApi<any>> {
|
||||||
|
target: TTarget | null;
|
||||||
|
targetQueue: QueueItem[];
|
||||||
|
proxiedTarget: TTarget;
|
||||||
|
onQueue: QueueItem[];
|
||||||
|
proxiedOn: Hookable<Context>;
|
||||||
|
plugin: PluginDescriptor;
|
||||||
|
hook: any;
|
||||||
|
fallbacks: Record<string, any>;
|
||||||
|
constructor(plugin: PluginDescriptor, hook: any);
|
||||||
|
setRealTarget(target: TTarget): Promise<void>;
|
||||||
|
}
|
||||||
|
export {};
|
107
webui/node_modules/@vue/devtools-api/lib/esm/proxy.js
generated
vendored
Normal file
107
webui/node_modules/@vue/devtools-api/lib/esm/proxy.js
generated
vendored
Normal file
|
@ -0,0 +1,107 @@
|
||||||
|
import { HOOK_PLUGIN_SETTINGS_SET } from './const.js';
|
||||||
|
import { now } from './time.js';
|
||||||
|
export class ApiProxy {
|
||||||
|
constructor(plugin, hook) {
|
||||||
|
this.target = null;
|
||||||
|
this.targetQueue = [];
|
||||||
|
this.onQueue = [];
|
||||||
|
this.plugin = plugin;
|
||||||
|
this.hook = hook;
|
||||||
|
const defaultSettings = {};
|
||||||
|
if (plugin.settings) {
|
||||||
|
for (const id in plugin.settings) {
|
||||||
|
const item = plugin.settings[id];
|
||||||
|
defaultSettings[id] = item.defaultValue;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
const localSettingsSaveId = `__vue-devtools-plugin-settings__${plugin.id}`;
|
||||||
|
let currentSettings = Object.assign({}, defaultSettings);
|
||||||
|
try {
|
||||||
|
const raw = localStorage.getItem(localSettingsSaveId);
|
||||||
|
const data = JSON.parse(raw);
|
||||||
|
Object.assign(currentSettings, data);
|
||||||
|
}
|
||||||
|
catch (e) {
|
||||||
|
// noop
|
||||||
|
}
|
||||||
|
this.fallbacks = {
|
||||||
|
getSettings() {
|
||||||
|
return currentSettings;
|
||||||
|
},
|
||||||
|
setSettings(value) {
|
||||||
|
try {
|
||||||
|
localStorage.setItem(localSettingsSaveId, JSON.stringify(value));
|
||||||
|
}
|
||||||
|
catch (e) {
|
||||||
|
// noop
|
||||||
|
}
|
||||||
|
currentSettings = value;
|
||||||
|
},
|
||||||
|
now() {
|
||||||
|
return now();
|
||||||
|
},
|
||||||
|
};
|
||||||
|
if (hook) {
|
||||||
|
hook.on(HOOK_PLUGIN_SETTINGS_SET, (pluginId, value) => {
|
||||||
|
if (pluginId === this.plugin.id) {
|
||||||
|
this.fallbacks.setSettings(value);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
this.proxiedOn = new Proxy({}, {
|
||||||
|
get: (_target, prop) => {
|
||||||
|
if (this.target) {
|
||||||
|
return this.target.on[prop];
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
return (...args) => {
|
||||||
|
this.onQueue.push({
|
||||||
|
method: prop,
|
||||||
|
args,
|
||||||
|
});
|
||||||
|
};
|
||||||
|
}
|
||||||
|
},
|
||||||
|
});
|
||||||
|
this.proxiedTarget = new Proxy({}, {
|
||||||
|
get: (_target, prop) => {
|
||||||
|
if (this.target) {
|
||||||
|
return this.target[prop];
|
||||||
|
}
|
||||||
|
else if (prop === 'on') {
|
||||||
|
return this.proxiedOn;
|
||||||
|
}
|
||||||
|
else if (Object.keys(this.fallbacks).includes(prop)) {
|
||||||
|
return (...args) => {
|
||||||
|
this.targetQueue.push({
|
||||||
|
method: prop,
|
||||||
|
args,
|
||||||
|
resolve: () => { },
|
||||||
|
});
|
||||||
|
return this.fallbacks[prop](...args);
|
||||||
|
};
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
return (...args) => {
|
||||||
|
return new Promise(resolve => {
|
||||||
|
this.targetQueue.push({
|
||||||
|
method: prop,
|
||||||
|
args,
|
||||||
|
resolve,
|
||||||
|
});
|
||||||
|
});
|
||||||
|
};
|
||||||
|
}
|
||||||
|
},
|
||||||
|
});
|
||||||
|
}
|
||||||
|
async setRealTarget(target) {
|
||||||
|
this.target = target;
|
||||||
|
for (const item of this.onQueue) {
|
||||||
|
this.target.on[item.method](...item.args);
|
||||||
|
}
|
||||||
|
for (const item of this.targetQueue) {
|
||||||
|
item.resolve(await this.target[item.method](...item.args));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
2
webui/node_modules/@vue/devtools-api/lib/esm/time.d.ts
generated
vendored
Normal file
2
webui/node_modules/@vue/devtools-api/lib/esm/time.d.ts
generated
vendored
Normal file
|
@ -0,0 +1,2 @@
|
||||||
|
export declare function isPerformanceSupported(): boolean;
|
||||||
|
export declare function now(): number;
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Reference in a new issue