mirror of
https://github.com/0xJacky/nginx-ui.git
synced 2026-06-19 07:36:59 +00:00
chore: prepare v2.2.0
This commit is contained in:
Vendored
-1
@@ -44,7 +44,6 @@ declare module 'vue' {
|
||||
AMenu: typeof import('ant-design-vue/es')['Menu']
|
||||
AMenuItem: typeof import('ant-design-vue/es')['MenuItem']
|
||||
AModal: typeof import('ant-design-vue/es')['Modal']
|
||||
APageHeader: typeof import('ant-design-vue/es')['PageHeader']
|
||||
APopconfirm: typeof import('ant-design-vue/es')['Popconfirm']
|
||||
APopover: typeof import('ant-design-vue/es')['Popover']
|
||||
AProgress: typeof import('ant-design-vue/es')['Progress']
|
||||
|
||||
+1
-1
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"name": "nginx-ui-app-next",
|
||||
"type": "module",
|
||||
"version": "2.1.17",
|
||||
"version": "2.2.0",
|
||||
"packageManager": "pnpm@10.15.0+sha512.486ebc259d3e999a4e8691ce03b5cac4a71cbeca39372a9b762cb500cfdf0873e2cb16abe3d951b1ee2cf012503f027b98b6584e4df22524e0c7450d9ec7aa7b",
|
||||
"scripts": {
|
||||
"dev": "vite --host",
|
||||
|
||||
@@ -1 +1 @@
|
||||
{"version":"2.1.17","build_id":32,"total_build":499}
|
||||
{"version":"2.2.0","build_id":1,"total_build":500}
|
||||
@@ -51,9 +51,6 @@ function removeBannedIP(ip: string) {
|
||||
|
||||
<template>
|
||||
<div>
|
||||
<h2>
|
||||
{{ $gettext('Authentication Settings') }}
|
||||
</h2>
|
||||
<div
|
||||
v-if="data.webauthn.rpid
|
||||
&& data.webauthn.rp_display_name
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
//go:generate go run .
|
||||
package main
|
||||
|
||||
import (
|
||||
@@ -44,7 +45,7 @@ func main() {
|
||||
log.Printf("INFO: Backend license collection completed: %d components", len(backendLicenses))
|
||||
}
|
||||
|
||||
// Generate frontend licenses
|
||||
// Generate frontend licenses
|
||||
frontendLicenses, err := generateFrontendLicenses()
|
||||
if err != nil {
|
||||
log.Printf("Error generating frontend licenses: %v", err)
|
||||
@@ -78,7 +79,7 @@ func main() {
|
||||
if err != nil {
|
||||
log.Fatalf("Error closing xz writer: %v", err)
|
||||
}
|
||||
log.Printf("INFO: Compressed size: %d bytes (%.1f%% of original)",
|
||||
log.Printf("INFO: Compressed size: %d bytes (%.1f%% of original)",
|
||||
compressed.Len(), float64(compressed.Len())/float64(len(jsonData))*100)
|
||||
|
||||
// Write compressed data to file
|
||||
@@ -106,7 +107,7 @@ func generateBackendLicenses() ([]License, error) {
|
||||
var licenses []License
|
||||
|
||||
log.Println("INFO: Collecting backend Go modules...")
|
||||
|
||||
|
||||
// Get only direct and indirect dependencies, exclude workspace modules
|
||||
cmd := exec.Command("go", "mod", "graph")
|
||||
output, err := cmd.Output()
|
||||
@@ -117,40 +118,40 @@ func generateBackendLicenses() ([]License, error) {
|
||||
// Parse module graph to get unique dependencies
|
||||
depMap := make(map[string]string) // path -> version
|
||||
lines := strings.Split(string(output), "\n")
|
||||
|
||||
|
||||
for _, line := range lines {
|
||||
line = strings.TrimSpace(line)
|
||||
if line == "" {
|
||||
continue
|
||||
}
|
||||
|
||||
|
||||
parts := strings.Fields(line)
|
||||
if len(parts) != 2 {
|
||||
continue
|
||||
}
|
||||
|
||||
|
||||
// Extract dependency info from "module@version dependency@version"
|
||||
dep := parts[1]
|
||||
if dep == "" || !strings.Contains(dep, "@") {
|
||||
continue
|
||||
}
|
||||
|
||||
|
||||
atIndex := strings.LastIndex(dep, "@")
|
||||
if atIndex == -1 {
|
||||
continue
|
||||
}
|
||||
|
||||
|
||||
path := dep[:atIndex]
|
||||
version := dep[atIndex+1:]
|
||||
|
||||
|
||||
// Skip our own module and workspace modules
|
||||
if path == "" ||
|
||||
strings.HasPrefix(path, "github.com/0xJacky/Nginx-UI") ||
|
||||
strings.Contains(path, "git.uozi.org") ||
|
||||
strings.Contains(path, "apple-store-helper") {
|
||||
if path == "" ||
|
||||
strings.HasPrefix(path, "github.com/0xJacky/Nginx-UI") ||
|
||||
strings.Contains(path, "git.uozi.org") ||
|
||||
strings.Contains(path, "apple-store-helper") {
|
||||
continue
|
||||
}
|
||||
|
||||
|
||||
// Only keep the first version we see (go mod graph shows all versions)
|
||||
if _, exists := depMap[path]; !exists {
|
||||
depMap[path] = version
|
||||
@@ -162,7 +163,7 @@ func generateBackendLicenses() ([]License, error) {
|
||||
Path string `json:"Path"`
|
||||
Version string `json:"Version"`
|
||||
}
|
||||
|
||||
|
||||
for path, version := range depMap {
|
||||
allMods = append(allMods, struct {
|
||||
Path string `json:"Path"`
|
||||
@@ -191,13 +192,13 @@ func generateBackendLicenses() ([]License, error) {
|
||||
Version string
|
||||
Index int
|
||||
}, len(allMods))
|
||||
|
||||
|
||||
results := make(chan License, len(allMods))
|
||||
|
||||
|
||||
// Progress tracking
|
||||
var processed int32
|
||||
var mu sync.Mutex
|
||||
|
||||
|
||||
// Start workers
|
||||
var wg sync.WaitGroup
|
||||
for i := 0; i < maxWorkers; i++ {
|
||||
@@ -222,7 +223,7 @@ func generateBackendLicenses() ([]License, error) {
|
||||
processed++
|
||||
currentCount := processed
|
||||
mu.Unlock()
|
||||
|
||||
|
||||
log.Printf("INFO: [%d/%d] Backend: %s -> %s", currentCount, len(allMods), job.Path, licenseText)
|
||||
results <- license
|
||||
}
|
||||
@@ -292,7 +293,7 @@ func generateFrontendLicenses() ([]License, error) {
|
||||
Version string
|
||||
Index int
|
||||
}
|
||||
|
||||
|
||||
i := 0
|
||||
for name, version := range pkg.Dependencies {
|
||||
packages = append(packages, struct {
|
||||
@@ -314,13 +315,13 @@ func generateFrontendLicenses() ([]License, error) {
|
||||
Version string
|
||||
Index int
|
||||
}, len(packages))
|
||||
|
||||
|
||||
results := make(chan License, len(packages))
|
||||
|
||||
|
||||
// Progress tracking
|
||||
var processed int32
|
||||
var mu sync.Mutex
|
||||
|
||||
|
||||
// Start workers
|
||||
var wg sync.WaitGroup
|
||||
for i := 0; i < maxWorkers; i++ {
|
||||
@@ -345,7 +346,7 @@ func generateFrontendLicenses() ([]License, error) {
|
||||
processed++
|
||||
currentCount := processed
|
||||
mu.Unlock()
|
||||
|
||||
|
||||
log.Printf("INFO: [%d/%d] Frontend: %s -> %s", currentCount, len(packages), job.Name, licenseText)
|
||||
results <- license
|
||||
}
|
||||
@@ -387,15 +388,15 @@ func tryGetLicenseFromGitHub(modulePath string) string {
|
||||
|
||||
owner := parts[1]
|
||||
repo := parts[2]
|
||||
|
||||
|
||||
// Try common license files and branches
|
||||
licenseFiles := []string{"LICENSE", "LICENSE.txt", "LICENSE.md", "COPYING", "COPYING.txt", "License", "license"}
|
||||
branches := []string{"master", "main", "HEAD"}
|
||||
|
||||
|
||||
for _, branch := range branches {
|
||||
for _, file := range licenseFiles {
|
||||
url := fmt.Sprintf("https://raw.githubusercontent.com/%s/%s/%s/%s", owner, repo, branch, file)
|
||||
|
||||
|
||||
client := &http.Client{Timeout: 10 * time.Second}
|
||||
resp, err := client.Get(url)
|
||||
if err != nil {
|
||||
@@ -408,7 +409,7 @@ func tryGetLicenseFromGitHub(modulePath string) string {
|
||||
if err != nil {
|
||||
continue
|
||||
}
|
||||
|
||||
|
||||
// Extract license type from content
|
||||
content := string(body)
|
||||
licenseType := extractLicenseType(content)
|
||||
@@ -427,19 +428,19 @@ func tryGetLicenseFromGit(modulePath string) string {
|
||||
if strings.HasPrefix(modulePath, "github.com/") {
|
||||
return tryGetLicenseFromGitHub(modulePath)
|
||||
}
|
||||
|
||||
|
||||
if strings.HasPrefix(modulePath, "gitlab.com/") {
|
||||
return tryGetLicenseFromGitLab(modulePath)
|
||||
}
|
||||
|
||||
|
||||
if strings.HasPrefix(modulePath, "gitee.com/") {
|
||||
return tryGetLicenseFromGitee(modulePath)
|
||||
}
|
||||
|
||||
|
||||
if strings.HasPrefix(modulePath, "bitbucket.org/") {
|
||||
return tryGetLicenseFromBitbucket(modulePath)
|
||||
}
|
||||
|
||||
|
||||
// Try to use go.mod info or pkg.go.dev API
|
||||
return tryGetLicenseFromPkgGoDev(modulePath)
|
||||
}
|
||||
@@ -449,18 +450,18 @@ func tryGetLicenseFromGitLab(modulePath string) string {
|
||||
if len(parts) < 3 {
|
||||
return ""
|
||||
}
|
||||
|
||||
|
||||
owner := parts[1]
|
||||
repo := parts[2]
|
||||
|
||||
|
||||
// GitLab raw file URL format
|
||||
licenseFiles := []string{"LICENSE", "LICENSE.txt", "LICENSE.md", "COPYING", "License"}
|
||||
branches := []string{"master", "main"}
|
||||
|
||||
|
||||
for _, branch := range branches {
|
||||
for _, file := range licenseFiles {
|
||||
url := fmt.Sprintf("https://gitlab.com/%s/%s/-/raw/%s/%s", owner, repo, branch, file)
|
||||
|
||||
|
||||
client := &http.Client{Timeout: 10 * time.Second}
|
||||
resp, err := client.Get(url)
|
||||
if err != nil {
|
||||
@@ -473,7 +474,7 @@ func tryGetLicenseFromGitLab(modulePath string) string {
|
||||
if err != nil {
|
||||
continue
|
||||
}
|
||||
|
||||
|
||||
content := string(body)
|
||||
licenseType := extractLicenseType(content)
|
||||
if licenseType != "Custom" {
|
||||
@@ -482,7 +483,7 @@ func tryGetLicenseFromGitLab(modulePath string) string {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
return ""
|
||||
}
|
||||
|
||||
@@ -491,18 +492,18 @@ func tryGetLicenseFromGitee(modulePath string) string {
|
||||
if len(parts) < 3 {
|
||||
return ""
|
||||
}
|
||||
|
||||
|
||||
owner := parts[1]
|
||||
repo := parts[2]
|
||||
|
||||
|
||||
// Gitee raw file URL format
|
||||
licenseFiles := []string{"LICENSE", "LICENSE.txt", "LICENSE.md", "COPYING"}
|
||||
branches := []string{"master", "main"}
|
||||
|
||||
|
||||
for _, branch := range branches {
|
||||
for _, file := range licenseFiles {
|
||||
url := fmt.Sprintf("https://gitee.com/%s/%s/raw/%s/%s", owner, repo, branch, file)
|
||||
|
||||
|
||||
client := &http.Client{Timeout: 10 * time.Second}
|
||||
resp, err := client.Get(url)
|
||||
if err != nil {
|
||||
@@ -515,7 +516,7 @@ func tryGetLicenseFromGitee(modulePath string) string {
|
||||
if err != nil {
|
||||
continue
|
||||
}
|
||||
|
||||
|
||||
content := string(body)
|
||||
licenseType := extractLicenseType(content)
|
||||
if licenseType != "Custom" {
|
||||
@@ -524,7 +525,7 @@ func tryGetLicenseFromGitee(modulePath string) string {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
return ""
|
||||
}
|
||||
|
||||
@@ -533,18 +534,18 @@ func tryGetLicenseFromBitbucket(modulePath string) string {
|
||||
if len(parts) < 3 {
|
||||
return ""
|
||||
}
|
||||
|
||||
|
||||
owner := parts[1]
|
||||
repo := parts[2]
|
||||
|
||||
// Bitbucket raw file URL format
|
||||
|
||||
// Bitbucket raw file URL format
|
||||
licenseFiles := []string{"LICENSE", "LICENSE.txt", "LICENSE.md", "COPYING"}
|
||||
branches := []string{"master", "main"}
|
||||
|
||||
|
||||
for _, branch := range branches {
|
||||
for _, file := range licenseFiles {
|
||||
url := fmt.Sprintf("https://bitbucket.org/%s/%s/raw/%s/%s", owner, repo, branch, file)
|
||||
|
||||
|
||||
client := &http.Client{Timeout: 10 * time.Second}
|
||||
resp, err := client.Get(url)
|
||||
if err != nil {
|
||||
@@ -557,7 +558,7 @@ func tryGetLicenseFromBitbucket(modulePath string) string {
|
||||
if err != nil {
|
||||
continue
|
||||
}
|
||||
|
||||
|
||||
content := string(body)
|
||||
licenseType := extractLicenseType(content)
|
||||
if licenseType != "Custom" {
|
||||
@@ -566,14 +567,14 @@ func tryGetLicenseFromBitbucket(modulePath string) string {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
return ""
|
||||
}
|
||||
|
||||
func tryGetLicenseFromPkgGoDev(modulePath string) string {
|
||||
// Try to get license info from pkg.go.dev API
|
||||
url := fmt.Sprintf("https://api.deps.dev/v3alpha/systems/go/packages/%s", modulePath)
|
||||
|
||||
|
||||
client := &http.Client{Timeout: 10 * time.Second}
|
||||
resp, err := client.Get(url)
|
||||
if err != nil {
|
||||
@@ -607,7 +608,7 @@ func tryGetLicenseFromPkgGoDev(modulePath string) string {
|
||||
func tryGetNpmLicense(packageName string) string {
|
||||
// Try to get license from npm registry
|
||||
url := fmt.Sprintf("https://registry.npmjs.org/%s/latest", packageName)
|
||||
|
||||
|
||||
client := &http.Client{Timeout: 10 * time.Second}
|
||||
resp, err := client.Get(url)
|
||||
if err != nil {
|
||||
@@ -641,15 +642,15 @@ func tryGetNpmLicense(packageName string) string {
|
||||
|
||||
func extractLicenseType(content string) string {
|
||||
content = strings.ToUpper(content)
|
||||
|
||||
|
||||
licensePatterns := map[string]*regexp.Regexp{
|
||||
"MIT": regexp.MustCompile(`MIT\s+LICENSE`),
|
||||
"Apache-2.0": regexp.MustCompile(`APACHE\s+LICENSE.*VERSION\s+2\.0`),
|
||||
"GPL-3.0": regexp.MustCompile(`GNU\s+GENERAL\s+PUBLIC\s+LICENSE.*VERSION\s+3`),
|
||||
"BSD-3": regexp.MustCompile(`BSD\s+3-CLAUSE`),
|
||||
"BSD-2": regexp.MustCompile(`BSD\s+2-CLAUSE`),
|
||||
"ISC": regexp.MustCompile(`ISC\s+LICENSE`),
|
||||
"AGPL-3.0": regexp.MustCompile(`GNU\s+AFFERO\s+GENERAL\s+PUBLIC\s+LICENSE`),
|
||||
"MIT": regexp.MustCompile(`MIT\s+LICENSE`),
|
||||
"Apache-2.0": regexp.MustCompile(`APACHE\s+LICENSE.*VERSION\s+2\.0`),
|
||||
"GPL-3.0": regexp.MustCompile(`GNU\s+GENERAL\s+PUBLIC\s+LICENSE.*VERSION\s+3`),
|
||||
"BSD-3": regexp.MustCompile(`BSD\s+3-CLAUSE`),
|
||||
"BSD-2": regexp.MustCompile(`BSD\s+2-CLAUSE`),
|
||||
"ISC": regexp.MustCompile(`ISC\s+LICENSE`),
|
||||
"AGPL-3.0": regexp.MustCompile(`GNU\s+AFFERO\s+GENERAL\s+PUBLIC\s+LICENSE`),
|
||||
}
|
||||
|
||||
for license, pattern := range licensePatterns {
|
||||
@@ -664,32 +665,32 @@ func extractLicenseType(content string) string {
|
||||
func detectCommonLicense(modulePath string) string {
|
||||
// Common patterns for detecting license types based on module paths
|
||||
commonLicenses := map[string]string{
|
||||
"golang.org/x": "BSD-3-Clause",
|
||||
"google.golang.org": "Apache-2.0",
|
||||
"gopkg.in": "Various",
|
||||
"go.uber.org": "MIT",
|
||||
"go.etcd.io": "Apache-2.0",
|
||||
"go.mongodb.org": "Apache-2.0",
|
||||
"go.opentelemetry.io": "Apache-2.0",
|
||||
"k8s.io": "Apache-2.0",
|
||||
"sigs.k8s.io": "Apache-2.0",
|
||||
"cloud.google.com": "Apache-2.0",
|
||||
"go.opencensus.io": "Apache-2.0",
|
||||
"contrib.go.opencensus.io": "Apache-2.0",
|
||||
"github.com/golang/": "BSD-3-Clause",
|
||||
"github.com/google/": "Apache-2.0",
|
||||
"golang.org/x": "BSD-3-Clause",
|
||||
"google.golang.org": "Apache-2.0",
|
||||
"gopkg.in": "Various",
|
||||
"go.uber.org": "MIT",
|
||||
"go.etcd.io": "Apache-2.0",
|
||||
"go.mongodb.org": "Apache-2.0",
|
||||
"go.opentelemetry.io": "Apache-2.0",
|
||||
"k8s.io": "Apache-2.0",
|
||||
"sigs.k8s.io": "Apache-2.0",
|
||||
"cloud.google.com": "Apache-2.0",
|
||||
"go.opencensus.io": "Apache-2.0",
|
||||
"contrib.go.opencensus.io": "Apache-2.0",
|
||||
"github.com/golang/": "BSD-3-Clause",
|
||||
"github.com/google/": "Apache-2.0",
|
||||
"github.com/grpc-ecosystem/": "Apache-2.0",
|
||||
"github.com/prometheus/": "Apache-2.0",
|
||||
"github.com/coreos/": "Apache-2.0",
|
||||
"github.com/etcd-io/": "Apache-2.0",
|
||||
"github.com/go-kit/": "MIT",
|
||||
"github.com/sirupsen/": "MIT",
|
||||
"github.com/stretchr/": "MIT",
|
||||
"github.com/spf13/": "Apache-2.0",
|
||||
"github.com/gorilla/": "BSD-3-Clause",
|
||||
"github.com/gin-gonic/": "MIT",
|
||||
"github.com/labstack/": "MIT",
|
||||
"github.com/julienschmidt/": "BSD-2-Clause",
|
||||
"github.com/prometheus/": "Apache-2.0",
|
||||
"github.com/coreos/": "Apache-2.0",
|
||||
"github.com/etcd-io/": "Apache-2.0",
|
||||
"github.com/go-kit/": "MIT",
|
||||
"github.com/sirupsen/": "MIT",
|
||||
"github.com/stretchr/": "MIT",
|
||||
"github.com/spf13/": "Apache-2.0",
|
||||
"github.com/gorilla/": "BSD-3-Clause",
|
||||
"github.com/gin-gonic/": "MIT",
|
||||
"github.com/labstack/": "MIT",
|
||||
"github.com/julienschmidt/": "BSD-2-Clause",
|
||||
}
|
||||
|
||||
for prefix, license := range commonLicenses {
|
||||
@@ -707,12 +708,12 @@ func getGoVersion() string {
|
||||
if err != nil {
|
||||
return "Unknown"
|
||||
}
|
||||
|
||||
|
||||
// Parse "go version go1.21.5 darwin/amd64" to extract "go1.21.5"
|
||||
parts := strings.Fields(string(output))
|
||||
if len(parts) >= 3 {
|
||||
return parts[2] // "go1.21.5"
|
||||
}
|
||||
|
||||
|
||||
return "Unknown"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,5 +0,0 @@
|
||||
{
|
||||
"dependencies": {
|
||||
"@vueuse/router": "^13.8.0"
|
||||
}
|
||||
}
|
||||
Generated
-238
@@ -1,238 +0,0 @@
|
||||
lockfileVersion: '9.0'
|
||||
|
||||
settings:
|
||||
autoInstallPeers: true
|
||||
excludeLinksFromLockfile: false
|
||||
|
||||
importers:
|
||||
|
||||
.:
|
||||
dependencies:
|
||||
'@vueuse/router':
|
||||
specifier: ^13.8.0
|
||||
version: 13.8.0(vue-router@4.5.1(vue@3.5.18))(vue@3.5.18)
|
||||
|
||||
packages:
|
||||
|
||||
'@babel/helper-string-parser@7.27.1':
|
||||
resolution: {integrity: sha512-qMlSxKbpRlAridDExk92nSobyDdpPijUq2DW6oDnUqd0iOGxmQjyqhMIihI9+zv4LPyZdRje2cavWPbCbWm3eA==}
|
||||
engines: {node: '>=6.9.0'}
|
||||
|
||||
'@babel/helper-validator-identifier@7.27.1':
|
||||
resolution: {integrity: sha512-D2hP9eA+Sqx1kBZgzxZh0y1trbuU+JoDkiEwqhQ36nodYqJwyEIhPSdMNd7lOm/4io72luTPWH20Yda0xOuUow==}
|
||||
engines: {node: '>=6.9.0'}
|
||||
|
||||
'@babel/parser@7.28.3':
|
||||
resolution: {integrity: sha512-7+Ey1mAgYqFAx2h0RuoxcQT5+MlG3GTV0TQrgr7/ZliKsm/MNDxVVutlWaziMq7wJNAz8MTqz55XLpWvva6StA==}
|
||||
engines: {node: '>=6.0.0'}
|
||||
hasBin: true
|
||||
|
||||
'@babel/types@7.28.2':
|
||||
resolution: {integrity: sha512-ruv7Ae4J5dUYULmeXw1gmb7rYRz57OWCPM57pHojnLq/3Z1CK2lNSLTCVjxVk1F/TZHwOZZrOWi0ur95BbLxNQ==}
|
||||
engines: {node: '>=6.9.0'}
|
||||
|
||||
'@jridgewell/sourcemap-codec@1.5.5':
|
||||
resolution: {integrity: sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og==}
|
||||
|
||||
'@vue/compiler-core@3.5.18':
|
||||
resolution: {integrity: sha512-3slwjQrrV1TO8MoXgy3aynDQ7lslj5UqDxuHnrzHtpON5CBinhWjJETciPngpin/T3OuW3tXUf86tEurusnztw==}
|
||||
|
||||
'@vue/compiler-dom@3.5.18':
|
||||
resolution: {integrity: sha512-RMbU6NTU70++B1JyVJbNbeFkK+A+Q7y9XKE2EM4NLGm2WFR8x9MbAtWxPPLdm0wUkuZv9trpwfSlL6tjdIa1+A==}
|
||||
|
||||
'@vue/compiler-sfc@3.5.18':
|
||||
resolution: {integrity: sha512-5aBjvGqsWs+MoxswZPoTB9nSDb3dhd1x30xrrltKujlCxo48j8HGDNj3QPhF4VIS0VQDUrA1xUfp2hEa+FNyXA==}
|
||||
|
||||
'@vue/compiler-ssr@3.5.18':
|
||||
resolution: {integrity: sha512-xM16Ak7rSWHkM3m22NlmcdIM+K4BMyFARAfV9hYFl+SFuRzrZ3uGMNW05kA5pmeMa0X9X963Kgou7ufdbpOP9g==}
|
||||
|
||||
'@vue/devtools-api@6.6.4':
|
||||
resolution: {integrity: sha512-sGhTPMuXqZ1rVOk32RylztWkfXTRhuS7vgAKv0zjqk8gbsHkJ7xfFf+jbySxt7tWObEJwyKaHMikV/WGDiQm8g==}
|
||||
|
||||
'@vue/reactivity@3.5.18':
|
||||
resolution: {integrity: sha512-x0vPO5Imw+3sChLM5Y+B6G1zPjwdOri9e8V21NnTnlEvkxatHEH5B5KEAJcjuzQ7BsjGrKtfzuQ5eQwXh8HXBg==}
|
||||
|
||||
'@vue/runtime-core@3.5.18':
|
||||
resolution: {integrity: sha512-DUpHa1HpeOQEt6+3nheUfqVXRog2kivkXHUhoqJiKR33SO4x+a5uNOMkV487WPerQkL0vUuRvq/7JhRgLW3S+w==}
|
||||
|
||||
'@vue/runtime-dom@3.5.18':
|
||||
resolution: {integrity: sha512-YwDj71iV05j4RnzZnZtGaXwPoUWeRsqinblgVJwR8XTXYZ9D5PbahHQgsbmzUvCWNF6x7siQ89HgnX5eWkr3mw==}
|
||||
|
||||
'@vue/server-renderer@3.5.18':
|
||||
resolution: {integrity: sha512-PvIHLUoWgSbDG7zLHqSqaCoZvHi6NNmfVFOqO+OnwvqMz/tqQr3FuGWS8ufluNddk7ZLBJYMrjcw1c6XzR12mA==}
|
||||
peerDependencies:
|
||||
vue: 3.5.18
|
||||
|
||||
'@vue/shared@3.5.18':
|
||||
resolution: {integrity: sha512-cZy8Dq+uuIXbxCZpuLd2GJdeSO/lIzIspC2WtkqIpje5QyFbvLaI5wZtdUjLHjGZrlVX6GilejatWwVYYRc8tA==}
|
||||
|
||||
'@vueuse/router@13.8.0':
|
||||
resolution: {integrity: sha512-h9pT7ryg9eMbs0eprE+nKmER3oGiMMm0hT4PQKY9hkZ70oedZhPXPA2GM2TOcg+qg2/o953WVRYzxB7HpoT6FQ==}
|
||||
peerDependencies:
|
||||
vue: ^3.5.0
|
||||
vue-router: ^4.0.0
|
||||
|
||||
'@vueuse/shared@13.8.0':
|
||||
resolution: {integrity: sha512-x4nfM0ykW+RmNJ4/1IzZsuLuWWrNTxlTWUiehTGI54wnOxIgI9EDdu/O5S77ac6hvQ3hk2KpOVFHaM0M796Kbw==}
|
||||
peerDependencies:
|
||||
vue: ^3.5.0
|
||||
|
||||
csstype@3.1.3:
|
||||
resolution: {integrity: sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==}
|
||||
|
||||
entities@4.5.0:
|
||||
resolution: {integrity: sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==}
|
||||
engines: {node: '>=0.12'}
|
||||
|
||||
estree-walker@2.0.2:
|
||||
resolution: {integrity: sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==}
|
||||
|
||||
magic-string@0.30.17:
|
||||
resolution: {integrity: sha512-sNPKHvyjVf7gyjwS4xGTaW/mCnF8wnjtifKBEhxfZ7E/S8tQ0rssrwGNn6q8JH/ohItJfSQp9mBtQYuTlH5QnA==}
|
||||
|
||||
nanoid@3.3.11:
|
||||
resolution: {integrity: sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w==}
|
||||
engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1}
|
||||
hasBin: true
|
||||
|
||||
picocolors@1.1.1:
|
||||
resolution: {integrity: sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==}
|
||||
|
||||
postcss@8.5.6:
|
||||
resolution: {integrity: sha512-3Ybi1tAuwAP9s0r1UQ2J4n5Y0G05bJkpUIO0/bI9MhwmD70S5aTWbXGBwxHrelT+XM1k6dM0pk+SwNkpTRN7Pg==}
|
||||
engines: {node: ^10 || ^12 || >=14}
|
||||
|
||||
source-map-js@1.2.1:
|
||||
resolution: {integrity: sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==}
|
||||
engines: {node: '>=0.10.0'}
|
||||
|
||||
vue-router@4.5.1:
|
||||
resolution: {integrity: sha512-ogAF3P97NPm8fJsE4by9dwSYtDwXIY1nFY9T6DyQnGHd1E2Da94w9JIolpe42LJGIl0DwOHBi8TcRPlPGwbTtw==}
|
||||
peerDependencies:
|
||||
vue: ^3.2.0
|
||||
|
||||
vue@3.5.18:
|
||||
resolution: {integrity: sha512-7W4Y4ZbMiQ3SEo+m9lnoNpV9xG7QVMLa+/0RFwwiAVkeYoyGXqWE85jabU4pllJNUzqfLShJ5YLptewhCWUgNA==}
|
||||
peerDependencies:
|
||||
typescript: '*'
|
||||
peerDependenciesMeta:
|
||||
typescript:
|
||||
optional: true
|
||||
|
||||
snapshots:
|
||||
|
||||
'@babel/helper-string-parser@7.27.1': {}
|
||||
|
||||
'@babel/helper-validator-identifier@7.27.1': {}
|
||||
|
||||
'@babel/parser@7.28.3':
|
||||
dependencies:
|
||||
'@babel/types': 7.28.2
|
||||
|
||||
'@babel/types@7.28.2':
|
||||
dependencies:
|
||||
'@babel/helper-string-parser': 7.27.1
|
||||
'@babel/helper-validator-identifier': 7.27.1
|
||||
|
||||
'@jridgewell/sourcemap-codec@1.5.5': {}
|
||||
|
||||
'@vue/compiler-core@3.5.18':
|
||||
dependencies:
|
||||
'@babel/parser': 7.28.3
|
||||
'@vue/shared': 3.5.18
|
||||
entities: 4.5.0
|
||||
estree-walker: 2.0.2
|
||||
source-map-js: 1.2.1
|
||||
|
||||
'@vue/compiler-dom@3.5.18':
|
||||
dependencies:
|
||||
'@vue/compiler-core': 3.5.18
|
||||
'@vue/shared': 3.5.18
|
||||
|
||||
'@vue/compiler-sfc@3.5.18':
|
||||
dependencies:
|
||||
'@babel/parser': 7.28.3
|
||||
'@vue/compiler-core': 3.5.18
|
||||
'@vue/compiler-dom': 3.5.18
|
||||
'@vue/compiler-ssr': 3.5.18
|
||||
'@vue/shared': 3.5.18
|
||||
estree-walker: 2.0.2
|
||||
magic-string: 0.30.17
|
||||
postcss: 8.5.6
|
||||
source-map-js: 1.2.1
|
||||
|
||||
'@vue/compiler-ssr@3.5.18':
|
||||
dependencies:
|
||||
'@vue/compiler-dom': 3.5.18
|
||||
'@vue/shared': 3.5.18
|
||||
|
||||
'@vue/devtools-api@6.6.4': {}
|
||||
|
||||
'@vue/reactivity@3.5.18':
|
||||
dependencies:
|
||||
'@vue/shared': 3.5.18
|
||||
|
||||
'@vue/runtime-core@3.5.18':
|
||||
dependencies:
|
||||
'@vue/reactivity': 3.5.18
|
||||
'@vue/shared': 3.5.18
|
||||
|
||||
'@vue/runtime-dom@3.5.18':
|
||||
dependencies:
|
||||
'@vue/reactivity': 3.5.18
|
||||
'@vue/runtime-core': 3.5.18
|
||||
'@vue/shared': 3.5.18
|
||||
csstype: 3.1.3
|
||||
|
||||
'@vue/server-renderer@3.5.18(vue@3.5.18)':
|
||||
dependencies:
|
||||
'@vue/compiler-ssr': 3.5.18
|
||||
'@vue/shared': 3.5.18
|
||||
vue: 3.5.18
|
||||
|
||||
'@vue/shared@3.5.18': {}
|
||||
|
||||
'@vueuse/router@13.8.0(vue-router@4.5.1(vue@3.5.18))(vue@3.5.18)':
|
||||
dependencies:
|
||||
'@vueuse/shared': 13.8.0(vue@3.5.18)
|
||||
vue: 3.5.18
|
||||
vue-router: 4.5.1(vue@3.5.18)
|
||||
|
||||
'@vueuse/shared@13.8.0(vue@3.5.18)':
|
||||
dependencies:
|
||||
vue: 3.5.18
|
||||
|
||||
csstype@3.1.3: {}
|
||||
|
||||
entities@4.5.0: {}
|
||||
|
||||
estree-walker@2.0.2: {}
|
||||
|
||||
magic-string@0.30.17:
|
||||
dependencies:
|
||||
'@jridgewell/sourcemap-codec': 1.5.5
|
||||
|
||||
nanoid@3.3.11: {}
|
||||
|
||||
picocolors@1.1.1: {}
|
||||
|
||||
postcss@8.5.6:
|
||||
dependencies:
|
||||
nanoid: 3.3.11
|
||||
picocolors: 1.1.1
|
||||
source-map-js: 1.2.1
|
||||
|
||||
source-map-js@1.2.1: {}
|
||||
|
||||
vue-router@4.5.1(vue@3.5.18):
|
||||
dependencies:
|
||||
'@vue/devtools-api': 6.6.4
|
||||
vue: 3.5.18
|
||||
|
||||
vue@3.5.18:
|
||||
dependencies:
|
||||
'@vue/compiler-dom': 3.5.18
|
||||
'@vue/compiler-sfc': 3.5.18
|
||||
'@vue/runtime-dom': 3.5.18
|
||||
'@vue/server-renderer': 3.5.18(vue@3.5.18)
|
||||
'@vue/shared': 3.5.18
|
||||
Reference in New Issue
Block a user