From 9a781229adbcdb575c024b779f49740ed974f7c0 Mon Sep 17 00:00:00 2001 From: ruotiantang Date: Thu, 25 May 2023 09:30:42 +0800 Subject: [PATCH 001/856] =?UTF-8?q?kubernetes-manager=20=E6=94=AF=E6=8C=81?= =?UTF-8?q?docker=20inspect=20image=20#8862?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../kubernetes-management/Chart.yaml | 4 +- .../templates/deployment.yaml | 30 ++- .../kubernetes-manager-configmap.yaml | 3 + .../kubernetes-management/values.yaml | 15 +- src/backend/dispatch-k8s-manager/Makefile | 5 +- .../cmd/apiserver/apiserver.go | 8 +- src/backend/dispatch-k8s-manager/go.mod | 44 ++-- src/backend/dispatch-k8s-manager/go.sum | 83 ++++--- .../pkg/apiserver/apis/apis.go | 1 + .../pkg/apiserver/apis/docker.go | 44 ++++ .../pkg/apiserver/apis/task.go | 4 +- .../pkg/apiserver/service/docker.go | 106 +++++++++ .../pkg/apiserver/service/docker_type.go | 18 ++ .../pkg/config/config_type.go | 5 + .../pkg/constant/constant.go | 5 + .../dispatch-k8s-manager/pkg/docker/docker.go | 91 ++++++++ .../dispatch-k8s-manager/pkg/docker/type.go | 12 + .../dispatch-k8s-manager/pkg/logs/logs.go | 15 +- .../pkg/task/builder_task.go | 29 +-- .../dispatch-k8s-manager/pkg/task/job_task.go | 23 +- .../dispatch-k8s-manager/pkg/task/task.go | 20 +- .../pkg/types/task_type.go | 6 + .../resources/config.yaml | 11 +- .../swagger/apiserver/docs.go | 212 ++++++++++++++++-- .../swagger/apiserver/swagger.json | 206 +++++++++++++++-- .../swagger/apiserver/swagger.yaml | 134 +++++++++-- .../swagger/init-swager.sh | 0 27 files changed, 1002 insertions(+), 132 deletions(-) create mode 100644 src/backend/dispatch-k8s-manager/pkg/apiserver/apis/docker.go create mode 100644 src/backend/dispatch-k8s-manager/pkg/apiserver/service/docker.go create mode 100644 src/backend/dispatch-k8s-manager/pkg/apiserver/service/docker_type.go create mode 100644 src/backend/dispatch-k8s-manager/pkg/constant/constant.go create mode 100644 src/backend/dispatch-k8s-manager/pkg/docker/docker.go create mode 100644 src/backend/dispatch-k8s-manager/pkg/docker/type.go mode change 100644 => 100755 src/backend/dispatch-k8s-manager/swagger/init-swager.sh diff --git a/helm-charts/core/ci/local_chart/kubernetes-management/Chart.yaml b/helm-charts/core/ci/local_chart/kubernetes-management/Chart.yaml index ccd88943079..fcfbe3d23f5 100644 --- a/helm-charts/core/ci/local_chart/kubernetes-management/Chart.yaml +++ b/helm-charts/core/ci/local_chart/kubernetes-management/Chart.yaml @@ -2,8 +2,8 @@ apiVersion: v2 name: kubernetes-manager description: A Helm chart for BlueKing CI Kubernetes Manager type: application -version: 0.0.36 -appVersion: 0.0.31 +version: 0.0.37 +appVersion: 0.0.32 home: https://github.com/Tencent/bk-ci dependencies: diff --git a/helm-charts/core/ci/local_chart/kubernetes-management/templates/deployment.yaml b/helm-charts/core/ci/local_chart/kubernetes-management/templates/deployment.yaml index ab40cdc0ca6..63110efdd33 100644 --- a/helm-charts/core/ci/local_chart/kubernetes-management/templates/deployment.yaml +++ b/helm-charts/core/ci/local_chart/kubernetes-management/templates/deployment.yaml @@ -67,6 +67,14 @@ spec: value: {{ .Values.multiCluster.enabled | quote }} - name: DEFAULT_NAMESPACE value: {{ .Values.multiCluster.defaultNamespace }} + {{- if .Values.kubernetesManager.docker.enable }} + - name: DOCKER_HOST + value: tcp://localhost:2375 + {{- end}} + {{- if .Values.kubernetesManager.debug }} + - name: KUBERNETES_MANAGER_DEBUG_ENABLE + value: true + {{- end}} workingDir: /data/workspace/kubernetes-manager livenessProbe: tcpSocket: @@ -90,8 +98,22 @@ spec: mountPath: /data/workspace/kubernetes-manager/config readOnly: true {{- end}} - {{- if .Values.configmap.enabled}} + {{- if .Values.kubernetesManager.docker.enable }} + - name: kuberentes-manager-docker + image: {{ .Values.kubernetesManager.docker.image }} + command: ["dockerd", "--host", "tcp://localhost:2375"] + {{- if .Values.kubernetesManager.docker.resources }} + resources: {{- toYaml .Values.kubernetesManager.docker.resources | nindent 12 }} + {{- end }} + securityContext: + privileged: true + volumeMounts: + - name: docker-graph-storage + mountPath: /var/lib/docker + {{- end }} + volumes: + {{- if .Values.configmap.enabled}} - name: kubernetes-manager-config configMap: name: kubernetes-manager @@ -101,6 +123,10 @@ spec: {{- if .Values.kubeConfig.useKubeConfig}} - key: kubeConfig.yaml path: kubeConfig.yaml - {{- end}} + {{- end}} + {{- if .Values.kubernetesManager.docker.enable }} + - name: docker-graph-storage + emptyDir: {} + {{- end}} {{- end}} {{- end -}} diff --git a/helm-charts/core/ci/local_chart/kubernetes-management/templates/kubernetes-manager-configmap.yaml b/helm-charts/core/ci/local_chart/kubernetes-management/templates/kubernetes-manager-configmap.yaml index 0b8c359d842..37da7e85e0d 100644 --- a/helm-charts/core/ci/local_chart/kubernetes-management/templates/kubernetes-manager-configmap.yaml +++ b/helm-charts/core/ci/local_chart/kubernetes-management/templates/kubernetes-manager-configmap.yaml @@ -109,6 +109,9 @@ data: rsaPrivateKey: | {{- .Values.kubernetesManager.apiserver.auth.rsaPrivateKey | nindent 10 }} + docker: + enable: {{ .Values.kubernetesManager.docker.enable }} + {{ if .Values.kubeConfig.useKubeConfig -}} kubeConfig.yaml: | {{- .Values.kubeConfig.content | nindent 4 }} diff --git a/helm-charts/core/ci/local_chart/kubernetes-management/values.yaml b/helm-charts/core/ci/local_chart/kubernetes-management/values.yaml index 01782a5852b..d418a1bc864 100644 --- a/helm-charts/core/ci/local_chart/kubernetes-management/values.yaml +++ b/helm-charts/core/ci/local_chart/kubernetes-management/values.yaml @@ -94,6 +94,7 @@ service: # kubernetesManager Deployment kubernetesManager: enabled: true + debug: false replicas: 1 resources: requests: @@ -147,11 +148,23 @@ kubernetesManager: apiToken: key: Devops-Token value: landun - rsaPrivateKey: | + rsaPrivateKey: "" volumeMount: # 流水线构建工作空间和agent日志在容器内的挂载点 dataPath: /data/devops/workspace logPath: /data/devops/logs + # manager使用docker相关配置 + docker: + enable: true + image: docker:24.0.1-dind + resources: + requests: + cpu: 50m + memory: 512Mi + limits: + cpu: 100m + memory: 1024Mi + dockerInit: # 是否使用当前chart的 dockerinit.sh useDockerInit: true diff --git a/src/backend/dispatch-k8s-manager/Makefile b/src/backend/dispatch-k8s-manager/Makefile index e6b0b5e5b93..030f21133e7 100644 --- a/src/backend/dispatch-k8s-manager/Makefile +++ b/src/backend/dispatch-k8s-manager/Makefile @@ -1,5 +1,5 @@ LOCAL_REGISTRY=bkci -LOCAL_IMAGE=kubernetes-manager:0.0.31 +LOCAL_IMAGE=kubernetes-manager:0.0.32 CONFIG_DIR=/data/workspace/kubernetes-manager/config OUT_DIR=/data/workspace/kubernetes-manager/out @@ -13,6 +13,9 @@ GOFLAGS := # gin export GIN_MODE=release +format: + find ./ -name "*.go" | xargs gofmt -w + test: test-unit .PHONY: test-unit diff --git a/src/backend/dispatch-k8s-manager/cmd/apiserver/apiserver.go b/src/backend/dispatch-k8s-manager/cmd/apiserver/apiserver.go index 159a82572b4..37076b1e838 100644 --- a/src/backend/dispatch-k8s-manager/cmd/apiserver/apiserver.go +++ b/src/backend/dispatch-k8s-manager/cmd/apiserver/apiserver.go @@ -3,9 +3,11 @@ package main import ( "disaptch-k8s-manager/pkg/apiserver" "disaptch-k8s-manager/pkg/config" + "disaptch-k8s-manager/pkg/constant" "disaptch-k8s-manager/pkg/cron" "disaptch-k8s-manager/pkg/db/mysql" "disaptch-k8s-manager/pkg/db/redis" + "disaptch-k8s-manager/pkg/docker" "disaptch-k8s-manager/pkg/kubeclient" "disaptch-k8s-manager/pkg/logs" "disaptch-k8s-manager/pkg/task" @@ -60,6 +62,10 @@ func main() { os.Exit(1) } + if config.Config.Docker.Enable { + docker.InitDockerCli() + } + if err := apiserver.InitApiServer(filepath.Join(outDir, "logs", config.AccessLog)); err != nil { fmt.Printf("init api server error %v\n", err) os.Exit(1) @@ -69,7 +75,7 @@ func main() { } func initConfig(configDir string) { - if debug == "true" { + if debug == "true" || os.Getenv(constant.KubernetesManagerDebugEnable) == "true" { config.Envs.IsDebug = true } else { config.Envs.IsDebug = false diff --git a/src/backend/dispatch-k8s-manager/go.mod b/src/backend/dispatch-k8s-manager/go.mod index b9803b9a281..67106179c12 100644 --- a/src/backend/dispatch-k8s-manager/go.mod +++ b/src/backend/dispatch-k8s-manager/go.mod @@ -1,8 +1,9 @@ module disaptch-k8s-manager -go 1.18 +go 1.19 require ( + github.com/docker/docker v24.0.1+incompatible github.com/gin-gonic/gin v1.8.1 github.com/go-playground/locales v0.14.0 github.com/go-playground/universal-translator v0.18.0 @@ -12,12 +13,13 @@ require ( github.com/gorilla/websocket v1.4.2 github.com/pkg/errors v0.9.1 github.com/robfig/cron/v3 v3.0.0 - github.com/sirupsen/logrus v1.8.1 + github.com/sirupsen/logrus v1.9.0 github.com/spf13/viper v1.11.0 - github.com/stretchr/testify v1.8.0 + github.com/stretchr/testify v1.8.1 github.com/swaggo/files v0.0.0-20220610200504-28940afbdbfe github.com/swaggo/gin-swagger v1.5.1 - github.com/swaggo/swag v1.8.4 + github.com/swaggo/swag v1.16.1 + golang.org/x/net v0.10.0 gopkg.in/natefinch/lumberjack.v2 v2.0.0 k8s.io/api v0.24.0 k8s.io/apimachinery v0.24.0 @@ -25,18 +27,21 @@ require ( ) require ( + github.com/BurntSushi/toml v1.2.1 // indirect github.com/KyleBanks/depth v1.2.1 // indirect - github.com/PuerkitoBio/purell v1.1.1 // indirect - github.com/PuerkitoBio/urlesc v0.0.0-20170810143723-de5bf2ad4578 // indirect + github.com/Microsoft/go-winio v0.6.1 // indirect github.com/davecgh/go-spew v1.1.1 // indirect + github.com/docker/distribution v2.8.2+incompatible // indirect + github.com/docker/go-connections v0.4.0 // indirect + github.com/docker/go-units v0.5.0 // indirect github.com/emicklei/go-restful v2.16.0+incompatible // indirect github.com/fsnotify/fsnotify v1.5.1 // indirect github.com/gin-contrib/sse v0.1.0 // indirect github.com/go-logr/logr v1.2.0 // indirect - github.com/go-openapi/jsonpointer v0.19.5 // indirect - github.com/go-openapi/jsonreference v0.19.6 // indirect - github.com/go-openapi/spec v0.20.4 // indirect - github.com/go-openapi/swag v0.19.15 // indirect + github.com/go-openapi/jsonpointer v0.19.6 // indirect + github.com/go-openapi/jsonreference v0.20.2 // indirect + github.com/go-openapi/spec v0.20.9 // indirect + github.com/go-openapi/swag v0.22.3 // indirect github.com/goccy/go-json v0.9.7 // indirect github.com/gogo/protobuf v1.3.2 // indirect github.com/golang/protobuf v1.5.2 // indirect @@ -49,12 +54,16 @@ require ( github.com/json-iterator/go v1.1.12 // indirect github.com/leodido/go-urn v1.2.1 // indirect github.com/magiconair/properties v1.8.6 // indirect - github.com/mailru/easyjson v0.7.6 // indirect + github.com/mailru/easyjson v0.7.7 // indirect github.com/mattn/go-isatty v0.0.14 // indirect github.com/mitchellh/mapstructure v1.4.3 // indirect + github.com/moby/term v0.5.0 // indirect github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd // indirect github.com/modern-go/reflect2 v1.0.2 // indirect + github.com/morikuni/aec v1.0.0 // indirect github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 // indirect + github.com/opencontainers/go-digest v1.0.0 // indirect + github.com/opencontainers/image-spec v1.0.2 // indirect github.com/pelletier/go-toml v1.9.4 // indirect github.com/pelletier/go-toml/v2 v2.0.1 // indirect github.com/pmezard/go-difflib v1.0.0 // indirect @@ -65,23 +74,24 @@ require ( github.com/subosito/gotenv v1.2.0 // indirect github.com/ugorji/go/codec v1.2.7 // indirect golang.org/x/crypto v0.0.0-20220411220226-7b82a4e95df4 // indirect - golang.org/x/net v0.7.0 // indirect + golang.org/x/mod v0.10.0 // indirect golang.org/x/oauth2 v0.0.0-20220411215720-9780585627b5 // indirect - golang.org/x/sys v0.5.0 // indirect - golang.org/x/term v0.5.0 // indirect - golang.org/x/text v0.7.0 // indirect + golang.org/x/sys v0.8.0 // indirect + golang.org/x/term v0.8.0 // indirect + golang.org/x/text v0.9.0 // indirect golang.org/x/time v0.0.0-20220210224613-90d013bbcef8 // indirect - golang.org/x/tools v0.1.12 // indirect + golang.org/x/tools v0.9.1 // indirect google.golang.org/appengine v1.6.7 // indirect google.golang.org/protobuf v1.28.0 // indirect gopkg.in/inf.v0 v0.9.1 // indirect gopkg.in/ini.v1 v1.66.4 // indirect gopkg.in/yaml.v2 v2.4.0 // indirect gopkg.in/yaml.v3 v3.0.1 // indirect + gotest.tools/v3 v3.4.0 // indirect k8s.io/klog/v2 v2.60.1 // indirect k8s.io/kube-openapi v0.0.0-20220328201542-3ee0da9b0b42 // indirect k8s.io/utils v0.0.0-20220210201930-3a6ce19ff2f9 // indirect sigs.k8s.io/json v0.0.0-20211208200746-9f7c6b3444d2 // indirect sigs.k8s.io/structured-merge-diff/v4 v4.2.1 // indirect - sigs.k8s.io/yaml v1.2.0 // indirect + sigs.k8s.io/yaml v1.3.0 // indirect ) diff --git a/src/backend/dispatch-k8s-manager/go.sum b/src/backend/dispatch-k8s-manager/go.sum index 91cd0f1b950..3c7e9993f6d 100644 --- a/src/backend/dispatch-k8s-manager/go.sum +++ b/src/backend/dispatch-k8s-manager/go.sum @@ -39,6 +39,7 @@ cloud.google.com/go/storage v1.8.0/go.mod h1:Wv1Oy7z6Yz3DshWRJFhqM/UCfaWIRTdp0RX cloud.google.com/go/storage v1.10.0/go.mod h1:FLPqc6j+Ki4BU591ie1oL6qBQGu2Bl/tZ9ullr3+Kg0= cloud.google.com/go/storage v1.14.0/go.mod h1:GrKmX003DSIwi9o29oFT7YDnHYwZoctc3fOKtUw0Xmo= dmitri.shuralyov.com/gpu/mtl v0.0.0-20190408044501-666a987793e9/go.mod h1:H6x//7gZCb22OMCxBHrMx7a5I7Hp++hsVxbQ4BYO7hU= +github.com/Azure/go-ansiterm v0.0.0-20210617225240-d185dfc1b5a1 h1:UQHMgLO+TxOElx5B5HZ4hJQsoJ/PvUvKRhJHDQXO8P8= github.com/Azure/go-autorest v14.2.0+incompatible/go.mod h1:r+4oMnoxhatjLLJ6zxSWATqVooLgysK6ZNox3g/xq24= github.com/Azure/go-autorest/autorest v0.11.18/go.mod h1:dSiJPy22c3u0OtOKDNttNgqpNFY/GeWa7GH/Pz56QRA= github.com/Azure/go-autorest/autorest/adal v0.9.13/go.mod h1:W/MM4U6nLxnIskrw4UwWzlHfGjwUS50aOsc/I3yuU8M= @@ -46,15 +47,16 @@ github.com/Azure/go-autorest/autorest/date v0.3.0/go.mod h1:BI0uouVdmngYNUzGWeSY github.com/Azure/go-autorest/autorest/mocks v0.4.1/go.mod h1:LTp+uSrOhSkaKrUy935gNZuuIPPVsHlr9DSOxSayd+k= github.com/Azure/go-autorest/logger v0.2.1/go.mod h1:T9E3cAhj2VqvPOtCYAvby9aBXkZmbF5NWuPV8+WeEW8= github.com/Azure/go-autorest/tracing v0.6.0/go.mod h1:+vhtPC754Xsa23ID7GlGsrdKBpUA79WCAKPPZVC2DeU= -github.com/BurntSushi/toml v0.3.1 h1:WXkYYl6Yr3qBf1K79EBnL4mak0OimBfB0XUf9Vl28OQ= github.com/BurntSushi/toml v0.3.1/go.mod h1:xHWCNGjB5oqiDr8zfno3MHue2Ht5sIBksp03qcyfWMU= +github.com/BurntSushi/toml v1.2.1 h1:9F2/+DoOYIOksmaJFPw1tGFy1eDnIJXg+UHjuD8lTak= +github.com/BurntSushi/toml v1.2.1/go.mod h1:CxXYINrC8qIiEnFrOxCa7Jy5BFHlXnUU2pbicEuybxQ= github.com/BurntSushi/xgb v0.0.0-20160522181843-27f122750802/go.mod h1:IVnqGOEym/WlBOVXweHU+Q+/VP0lqqI8lqeDx9IjBqo= github.com/KyleBanks/depth v1.2.1 h1:5h8fQADFrWtarTdtDudMmGsC7GPbOAu6RVB3ffsVFHc= github.com/KyleBanks/depth v1.2.1/go.mod h1:jzSb9d0L43HxTQfT+oSA1EEp2q+ne2uh6XgeJcm8brE= +github.com/Microsoft/go-winio v0.6.1 h1:9/kr64B9VUZrLm5YYwbGtUJnMgqWVOdUAXu6Migciow= +github.com/Microsoft/go-winio v0.6.1/go.mod h1:LRdKpFKfdobln8UmuiYcKPot9D2v6svN5+sAH+4kjUM= github.com/NYTimes/gziphandler v0.0.0-20170623195520-56545f4a5d46/go.mod h1:3wb06e3pkSAbeQ52E9H9iFoQsEEwGN64994WTCIhntQ= -github.com/PuerkitoBio/purell v1.1.1 h1:WEQqlqaGbrPkxLJWfBwQmfEAE1Z7ONdDLqrN38tNFfI= github.com/PuerkitoBio/purell v1.1.1/go.mod h1:c11w/QuzBsJSee3cPx9rAFu61PvFxuPbtSwDGJws/X0= -github.com/PuerkitoBio/urlesc v0.0.0-20170810143723-de5bf2ad4578 h1:d+Bc7a5rLufV/sSk/8dngufqelfh6jnri85riMAaF/M= github.com/PuerkitoBio/urlesc v0.0.0-20170810143723-de5bf2ad4578/go.mod h1:uGdkoq3SwY9Y+13GIhn11/XLaGBb4BfwItxLd5jeuXE= github.com/agiledragon/gomonkey/v2 v2.3.1/go.mod h1:ap1AmDzcVOAz1YpeJ3TCzIgstoaWLA6jbbgxfB4w2iY= github.com/armon/go-socks5 v0.0.0-20160902184237-e75332964ef5/go.mod h1:wHh0iHkYZB8zMSxRWpUBQtwG5a7fFgvEO+odwuTv2gs= @@ -72,6 +74,14 @@ github.com/creack/pty v1.1.9/go.mod h1:oKZEueFk5CKHvIhNR5MUki03XCEU+Q6VDXinZuGJ3 github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= +github.com/docker/distribution v2.8.2+incompatible h1:T3de5rq0dB1j30rp0sA2rER+m322EBzniBPB6ZIzuh8= +github.com/docker/distribution v2.8.2+incompatible/go.mod h1:J2gT2udsDAN96Uj4KfcMRqY0/ypR+oyYUYmja8H+y+w= +github.com/docker/docker v24.0.1+incompatible h1:NxN81beIxDlUaVt46iUQrYHD9/W3u9EGl52r86O/IGw= +github.com/docker/docker v24.0.1+incompatible/go.mod h1:eEKB0N0r5NX/I1kEveEz05bcu8tLC/8azJZsviup8Sk= +github.com/docker/go-connections v0.4.0 h1:El9xVISelRB7BuFusrZozjnkIM5YnzCViNKohAFqRJQ= +github.com/docker/go-connections v0.4.0/go.mod h1:Gbd7IOopHjR8Iph03tsViu4nIes5XhDvyHbTtUxmeec= +github.com/docker/go-units v0.5.0 h1:69rxXcBk27SvSaaxTtLh/8llcHD8vYHT7WSdRZ/jvr4= +github.com/docker/go-units v0.5.0/go.mod h1:fgPhTUdO+D/Jk86RDLlptpiXQzgHJF7gydDDbaIK4Dk= github.com/docopt/docopt-go v0.0.0-20180111231733-ee0de3bc6815/go.mod h1:WwZ+bS3ebgob9U8Nd0kOddGdZWjyMGR8Wziv+TBNwSE= github.com/elazarl/goproxy v0.0.0-20180725130230-947c36da3153/go.mod h1:/Zj4wYkgs4iZTTu3o/KG3Itv/qCCa8VVMlb3i9OVuzc= github.com/emicklei/go-restful v0.0.0-20170410110728-ff4f55a20633/go.mod h1:otzb+WCGbkyDHkqmQmT5YD2WR4BBwUdeQoFo8l/7tVs= @@ -107,18 +117,23 @@ github.com/go-logr/logr v0.2.0/go.mod h1:z6/tIYblkpsD+a4lm/fGIIU9mZ+XfAiaFtq7xTg github.com/go-logr/logr v1.2.0 h1:QK40JKJyMdUDz+h+xvCsru/bJhvG0UxvePV0ufL/AcE= github.com/go-logr/logr v1.2.0/go.mod h1:jdQByPbusPIv2/zmleS9BjJVeZ6kBagPoEUsqbVz/1A= github.com/go-openapi/jsonpointer v0.19.3/go.mod h1:Pl9vOtqEWErmShwVjC8pYs9cog34VGT37dQOVbmoatg= -github.com/go-openapi/jsonpointer v0.19.5 h1:gZr+CIYByUqjcgeLXnQu2gHYQC9o73G2XUeOFYEICuY= github.com/go-openapi/jsonpointer v0.19.5/go.mod h1:Pl9vOtqEWErmShwVjC8pYs9cog34VGT37dQOVbmoatg= +github.com/go-openapi/jsonpointer v0.19.6 h1:eCs3fxoIi3Wh6vtgmLTOjdhSpiqphQ+DaPn38N2ZdrE= +github.com/go-openapi/jsonpointer v0.19.6/go.mod h1:osyAmYz/mB/C3I+WsTTSgw1ONzaLJoLCyoi6/zppojs= github.com/go-openapi/jsonreference v0.19.3/go.mod h1:rjx6GuL8TTa9VaixXglHmQmIL98+wF9xc8zWvFonSJ8= github.com/go-openapi/jsonreference v0.19.5/go.mod h1:RdybgQwPxbL4UEjuAruzK1x3nE69AqPYEJeo/TWfEeg= -github.com/go-openapi/jsonreference v0.19.6 h1:UBIxjkht+AWIgYzCDSv2GN+E/togfwXUJFRTWhl2Jjs= github.com/go-openapi/jsonreference v0.19.6/go.mod h1:diGHMEHg2IqXZGKxqyvWdfWU/aim5Dprw5bqpKkTvns= -github.com/go-openapi/spec v0.20.4 h1:O8hJrt0UMnhHcluhIdUgCLRWyM2x7QkBXRvOs7m+O1M= +github.com/go-openapi/jsonreference v0.20.0/go.mod h1:Ag74Ico3lPc+zR+qjn4XBUmXymS4zJbYVCZmcgkasdo= +github.com/go-openapi/jsonreference v0.20.2 h1:3sVjiK66+uXK/6oQ8xgcRKcFgQ5KXa2KvnJRumpMGbE= +github.com/go-openapi/jsonreference v0.20.2/go.mod h1:Bl1zwGIM8/wsvqjsOQLJ/SH+En5Ap4rVB5KVcIDZG2k= github.com/go-openapi/spec v0.20.4/go.mod h1:faYFR1CvsJZ0mNsmsphTMSoRrNV3TEDoAM7FOEWeq8I= +github.com/go-openapi/spec v0.20.9 h1:xnlYNQAwKd2VQRRfwTEI0DcK+2cbuvI/0c7jx3gA8/8= +github.com/go-openapi/spec v0.20.9/go.mod h1:2OpW+JddWPrpXSCIX8eOx7lZ5iyuWj3RYR6VaaBKcWA= github.com/go-openapi/swag v0.19.5/go.mod h1:POnQmlKehdgb5mhVOsnJFsivZCEZ/vjK9gh66Z9tfKk= github.com/go-openapi/swag v0.19.14/go.mod h1:QYRuS/SOXUCsnplDa677K7+DxSOj6IPNl/eQntq43wQ= -github.com/go-openapi/swag v0.19.15 h1:D2NRCBzS9/pEY3gP9Nl8aDqGUcPFrwG2p+CNFrLyrCM= github.com/go-openapi/swag v0.19.15/go.mod h1:QYRuS/SOXUCsnplDa677K7+DxSOj6IPNl/eQntq43wQ= +github.com/go-openapi/swag v0.22.3 h1:yMBqmnQ0gyZvEb/+KzuWZOXgllrXT4SADYbvDaXHv/g= +github.com/go-openapi/swag v0.22.3/go.mod h1:UzaqsxGiab7freDnrUUra0MwWfN/q7tE4j+VcZ0yl14= github.com/go-playground/assert/v2 v2.0.1 h1:MsBgLAaY856+nPRTKrp3/OZK38U/wa0CcBYNjji3q3A= github.com/go-playground/assert/v2 v2.0.1/go.mod h1:VDjEfimB/XKnb+ZQfWdccd7VUvScMdVu0Titje2rxJ4= github.com/go-playground/locales v0.14.0 h1:u50s323jtVGugKlcYeyzC0etD1HifMjqmJqb8WugfUU= @@ -249,20 +264,25 @@ github.com/magiconair/properties v1.8.6 h1:5ibWZ6iY0NctNGWo87LalDlEZ6R41TqbbDamh github.com/magiconair/properties v1.8.6/go.mod h1:y3VJvCyxH9uVvJTWEGAELF3aiYNyPKd5NZ3oSwXrF60= github.com/mailru/easyjson v0.0.0-20190614124828-94de47d64c63/go.mod h1:C1wdFJiN94OJF2b5HbByQZoLdCWB1Yqtg26g4irojpc= github.com/mailru/easyjson v0.0.0-20190626092158-b2ccc519800e/go.mod h1:C1wdFJiN94OJF2b5HbByQZoLdCWB1Yqtg26g4irojpc= -github.com/mailru/easyjson v0.7.6 h1:8yTIVnZgCoiM1TgqoeTl+LfU5Jg6/xL3QhGQnimLYnA= github.com/mailru/easyjson v0.7.6/go.mod h1:xzfreul335JAWq5oZzymOObrkdz5UnU4kGfJJLY9Nlc= +github.com/mailru/easyjson v0.7.7 h1:UGYAvKxe3sBsEDzO8ZeWOSlIQfWFlxbzLZe7hwFURr0= +github.com/mailru/easyjson v0.7.7/go.mod h1:xzfreul335JAWq5oZzymOObrkdz5UnU4kGfJJLY9Nlc= github.com/mattn/go-isatty v0.0.14 h1:yVuAays6BHfxijgZPzw+3Zlu5yQgKGP2/hcQbHb7S9Y= github.com/mattn/go-isatty v0.0.14/go.mod h1:7GGIvUiUoEMVVmxf/4nioHXj79iQHKdU27kJ6hsGG94= github.com/mitchellh/mapstructure v1.1.2/go.mod h1:FVVH3fgwuzCH5S8UJGiWEs2h04kUh9fWfEaFds41c1Y= github.com/mitchellh/mapstructure v1.4.3 h1:OVowDSCllw/YjdLkam3/sm7wEtOy59d8ndGgCcyj8cs= github.com/mitchellh/mapstructure v1.4.3/go.mod h1:bFUtVrKA4DC2yAKiSyO/QUcy7e+RRV2QTWOzhPopBRo= github.com/moby/spdystream v0.2.0/go.mod h1:f7i0iNDQJ059oMTcWxx8MA/zKFIuD/lY+0GqbN2Wy8c= +github.com/moby/term v0.5.0 h1:xt8Q1nalod/v7BqbG21f8mQPqH+xAaC9C3N3wfWbVP0= +github.com/moby/term v0.5.0/go.mod h1:8FzsFHVUBGZdbDsJw/ot+X+d5HLUbvklYLJ9uGfcI3Y= github.com/modern-go/concurrent v0.0.0-20180228061459-e0a39a4cb421/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd h1:TRLaZ9cD/w8PVh93nsPXa1VrQ6jlwL5oN8l14QlcNfg= github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= github.com/modern-go/reflect2 v1.0.1/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0= github.com/modern-go/reflect2 v1.0.2 h1:xBagoLtFs94CBntxluKeaWgTMpvLxC4ur3nMaC9Gz0M= github.com/modern-go/reflect2 v1.0.2/go.mod h1:yWuevngMOJpCy52FWWMvUC8ws7m/LJsjYzDa0/r8luk= +github.com/morikuni/aec v1.0.0 h1:nP9CBfwrvYnBRgY6qfDQkygYDmYwOilePFkwzv4dU8A= +github.com/morikuni/aec v1.0.0/go.mod h1:BbKIizmSmc5MMPqRYbxO4ZU0S0+P200+tUnFx7PXmsc= github.com/munnerz/goautoneg v0.0.0-20120707110453-a547fc61f48d/go.mod h1:+n7T8mK8HuQTcFwEeznm/DIxMOiR9yIdICNftLE1DvQ= github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 h1:C3w9PqII01/Oq1c1nUAm88MOHcQC9l5mIlSMApZMrHA= github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822/go.mod h1:+n7T8mK8HuQTcFwEeznm/DIxMOiR9yIdICNftLE1DvQ= @@ -279,6 +299,10 @@ github.com/onsi/gomega v0.0.0-20170829124025-dcabb60a477c/go.mod h1:C1qb7wdrVGGV github.com/onsi/gomega v1.7.1/go.mod h1:XdKZgCCFLUoM/7CFJVPcG8C1xQ1AJ0vpAezJrB7JYyY= github.com/onsi/gomega v1.10.1 h1:o0+MgICZLuZ7xjH7Vx6zS/zcu93/BEp1VwkIW1mEXCE= github.com/onsi/gomega v1.10.1/go.mod h1:iN09h71vgCQne3DLsj+A5owkum+a2tYe+TOCB1ybHNo= +github.com/opencontainers/go-digest v1.0.0 h1:apOUWs51W5PlhuyGyz9FCeeBIOUDA/6nW8Oi/yOhh5U= +github.com/opencontainers/go-digest v1.0.0/go.mod h1:0JzlMkj0TRzQZfJkVvzbP0HBR3IKzErnv2BNG4W4MAM= +github.com/opencontainers/image-spec v1.0.2 h1:9yCKha/T5XdGtO0q9Q9a6T5NUCsTn/DrBg0D7ufOcFM= +github.com/opencontainers/image-spec v1.0.2/go.mod h1:BtxoFyWECRxE4U/7sNtV5W15zMzWCbyJoFRP3s7yZA0= github.com/otiai10/copy v1.7.0/go.mod h1:rmRl6QPdJj6EiUqXQ/4Nn2lLXoNQjFCQbbNrxgc/t3U= github.com/otiai10/curr v0.0.0-20150429015615-9b4961190c95/go.mod h1:9qAhocn7zKJG+0mI8eUu6xqkFDYS2kb2saOteoSB3cE= github.com/otiai10/curr v1.0.0/go.mod h1:LskTG5wDwr8Rs+nNQ+1LlxRjAtTZZjtJW4rMXl6j4vs= @@ -304,8 +328,8 @@ github.com/rogpeppe/go-internal v1.8.0 h1:FCbCCtXNOY3UtUuHUYaghJg4y7Fd14rXifAYUA github.com/rogpeppe/go-internal v1.8.0/go.mod h1:WmiCO8CzOY8rg0OYDC4/i/2WRWAB6poM+XZ2dLUbcbE= github.com/russross/blackfriday/v2 v2.0.1/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM= github.com/shurcooL/sanitized_anchor_name v1.0.0/go.mod h1:1NzhyTcUVG4SuEtjjoZeVRXNmyL/1OwPU0+IJeTBvfc= -github.com/sirupsen/logrus v1.8.1 h1:dJKuHgqk1NNQlqoA6BTlM1Wf9DOH3NBjQyu0h9+AZZE= -github.com/sirupsen/logrus v1.8.1/go.mod h1:yWOB1SBYBC5VeMP7gHvWumXLIWorT60ONWic61uBYv0= +github.com/sirupsen/logrus v1.9.0 h1:trlNQbNUG3OdDrDil03MCb1H2o9nJ1x4/5LYw7byDE0= +github.com/sirupsen/logrus v1.9.0/go.mod h1:naHLuLoDiP4jHNo9R0sCBMtWGeIprob74mVsIT4qYEQ= github.com/smartystreets/assertions v0.0.0-20180927180507-b2de0cb4f26d/go.mod h1:OnSkiWE9lh6wB0YB77sQom3nweQdgAjqCqsofrRNTgc= github.com/smartystreets/goconvey v1.6.4/go.mod h1:syvi0/a8iFYH4r/RixwvyeAJjdLS9QV7WQ/tjFTllLA= github.com/spf13/afero v1.2.2/go.mod h1:9ZxEEn6pIJ8Rxe320qSDBk6AsU0r9pR7Q4OcevTdifk= @@ -322,6 +346,7 @@ github.com/spf13/viper v1.11.0/go.mod h1:djo0X/bA5+tYVoCn+C7cAYJGcVn/qYLFTG8gdUs github.com/stoewer/go-strcase v1.2.0/go.mod h1:IBiWB2sKIp3wVVQ3Y035++gc+knqhUQag1KpM8ahLw8= github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= github.com/stretchr/objx v0.4.0/go.mod h1:YvHI0jy2hoMjB+UWwv71VJQ9isScKT/TqJzVSSt89Yw= +github.com/stretchr/objx v0.5.0/go.mod h1:Yh+to48EsGEfYuaHDzXPcE3xhTkx73EhmCGUpEOglKo= github.com/stretchr/testify v1.2.2/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXfy6kDkUVs= github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI= github.com/stretchr/testify v1.4.0/go.mod h1:j7eGeouHqKxXV5pUuKE4zz7dFj8WfuZ+81PSLYec5m4= @@ -329,8 +354,9 @@ github.com/stretchr/testify v1.5.1/go.mod h1:5W2xD1RspED5o8YsWQXVCued0rvSQ+mT+I5 github.com/stretchr/testify v1.6.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= github.com/stretchr/testify v1.7.0/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= github.com/stretchr/testify v1.7.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= -github.com/stretchr/testify v1.8.0 h1:pSgiaMZlXftHpm5L7V1+rVB+AZJydKsMxsQBIJw4PKk= github.com/stretchr/testify v1.8.0/go.mod h1:yNjHg4UonilssWZ8iaSj1OCr/vHnekPRkoO+kdMU+MU= +github.com/stretchr/testify v1.8.1 h1:w7B6lhMri9wdJUVmEZPGGhZzrYTPvgJArz7wNPgYKsk= +github.com/stretchr/testify v1.8.1/go.mod h1:w2LPCIKwWwSfY2zedu0+kehJoqGctiVI29o6fzry7u4= github.com/subosito/gotenv v1.2.0 h1:Slr1R9HxAlEKefgq5jn9U+DnETlIUa6HfgEzj0g5d7s= github.com/subosito/gotenv v1.2.0/go.mod h1:N0PQaV/YGNqwC0u51sEeR/aUtSLEXKX9iv69rRypqCw= github.com/swaggo/files v0.0.0-20220610200504-28940afbdbfe h1:K8pHPVoTgxFJt1lXuIzzOX7zZhZFldJQK/CgKx9BFIc= @@ -338,8 +364,8 @@ github.com/swaggo/files v0.0.0-20220610200504-28940afbdbfe/go.mod h1:lKJPbtWzJ9J github.com/swaggo/gin-swagger v1.5.1 h1:PFmlJU1LPn8DjrR0meVLX5gyFdgcPOkLcoFRRFx7WcY= github.com/swaggo/gin-swagger v1.5.1/go.mod h1:Cbj/MlHApPOjZdf4joWFXLLgmZVPyh54GPvPPyVjVZM= github.com/swaggo/swag v1.8.1/go.mod h1:ugemnJsPZm/kRwFUnzBlbHRd0JY9zE1M4F+uy2pAaPQ= -github.com/swaggo/swag v1.8.4 h1:oGB351qH1JqUqK1tsMYEE5qTBbPk394BhsZxmUfebcI= -github.com/swaggo/swag v1.8.4/go.mod h1:jMLeXOOmYyjk8PvHTsXBdrubsNd9gUJTTCzL5iBnseg= +github.com/swaggo/swag v1.16.1 h1:fTNRhKstPKxcnoKsytm4sahr8FaYzUcT7i1/3nd/fBg= +github.com/swaggo/swag v1.16.1/go.mod h1:9/LMvHycG3NFHfR6LwvikHv5iFvmPADQ359cKikGxto= github.com/ugorji/go v1.2.7/go.mod h1:nF9osbDWLy6bDVv/Rtoh6QgnvNDpmCalQV5urGCCS6M= github.com/ugorji/go/codec v1.2.7 h1:YPXUKf7fYbp/y8xloBqZOw2qaVggbfwMlI8WM3wZUJ0= github.com/ugorji/go/codec v1.2.7/go.mod h1:WGN1fab3R1fzQlVQTkfxVtIBhWDRqOviHU95kRgeqEY= @@ -404,7 +430,8 @@ golang.org/x/mod v0.3.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/mod v0.4.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/mod v0.4.1/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/mod v0.4.2/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= -golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4 h1:6zppjxzCulZykYSLyVDYbneBfbaBIQPYMevg0bEwv2s= +golang.org/x/mod v0.10.0 h1:lFO9qtOdlre5W1jxS3r/4szv2/6iXxScdzjoBMXNhYk= +golang.org/x/mod v0.10.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs= golang.org/x/net v0.0.0-20180724234803-3673e40ba225/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20180826012351-8a410e7b638d/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20180906233101-161cd47e91fd/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= @@ -448,8 +475,8 @@ golang.org/x/net v0.0.0-20210805182204-aaa1db679c0d/go.mod h1:9nx3DQGgdP8bBQD5qx golang.org/x/net v0.0.0-20211112202133-69e39bad7dc2/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= golang.org/x/net v0.0.0-20220127200216-cd36cc0744dd/go.mod h1:CfG3xpIq0wQ8r1q4Su4UZFWDARRcnwPjda9FqA0JpMk= golang.org/x/net v0.0.0-20220425223048-2871e0cb64e4/go.mod h1:CfG3xpIq0wQ8r1q4Su4UZFWDARRcnwPjda9FqA0JpMk= -golang.org/x/net v0.7.0 h1:rJrUqqhjsgNp7KqAIc25s9pZnjU7TUcSY7HcVZjdn1g= -golang.org/x/net v0.7.0/go.mod h1:2Tu9+aMcznHK/AK1HMvgo6xiTLG5rD5rZLDS+rp2Bjs= +golang.org/x/net v0.10.0 h1:X2//UzNDwYmtCLn7To6G58Wr6f5ahEAQgKNzv9Y951M= +golang.org/x/net v0.10.0/go.mod h1:0qNGK6F8kojg2nk9dLZ2mShWaEBan6FAoqfSigmmuDg= golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U= golang.org/x/oauth2 v0.0.0-20190226205417-e64efc72b421/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= golang.org/x/oauth2 v0.0.0-20190604053449-0f29369cfe45/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= @@ -475,6 +502,7 @@ golang.org/x/sync v0.0.0-20200625203802-6e8e738ad208/go.mod h1:RxMgew5VJxzue5/jJ golang.org/x/sync v0.0.0-20201020160332-67f06af15bc9/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20201207232520-09787c993a3a/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20210220032951-036812b2e83c/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sync v0.2.0 h1:PUR+T4wwASmuSTYdKjYHI5TD22Wy5ogLU5qZCOLxBrI= golang.org/x/sys v0.0.0-20180830151530-49385e6e1522/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20180909124046-d0be0721c37e/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= @@ -488,7 +516,6 @@ golang.org/x/sys v0.0.0-20190726091711-fc99dfbffb4e/go.mod h1:h1NjWce9XRLGQEsW7w golang.org/x/sys v0.0.0-20190904154756-749cb33beabd/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20191001151750-bb3f8db39f24/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20191005200804-aed5e4c7ecf9/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20191026070338-33540a1f6037/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20191120155948-bd437916bb0e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20191204072324-ce4227a45e2e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20191228213918-04cbcbbfeed8/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= @@ -528,12 +555,13 @@ golang.org/x/sys v0.0.0-20210806184541-e5e7981a1069/go.mod h1:oPkhp1MJrh7nUepCBc golang.org/x/sys v0.0.0-20210809222454-d867a43fc93e/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20211216021012-1d35b9e2eb4e/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220209214540-3681064d5158/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.5.0 h1:MUK/U/4lj1t1oPg0HfuXDN/Z1wv31ZJ/YcPiGccS4DU= -golang.org/x/sys v0.5.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20220715151400-c0bba94af5f8/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.8.0 h1:EBmGv8NaZBZTWvrbjNoL6HVt+IVy3QDQpJs7VRIw3tU= +golang.org/x/sys v0.8.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= -golang.org/x/term v0.5.0 h1:n2a8QNdAb0sZNpU9R1ALUXBbY+w51fCQDN+7EdxNBsY= -golang.org/x/term v0.5.0/go.mod h1:jMB1sMXY+tzblOD4FWmEbocvup2/aLOaQEp7JmGp78k= +golang.org/x/term v0.8.0 h1:n5xxQn2i3PC0yLAbjTpNT85q/Kgzcr2gIoX9OrJUols= +golang.org/x/term v0.8.0/go.mod h1:xPskH00ivmX89bAKVGSKKtLOWNx2+17Eiy94tnKShWo= golang.org/x/text v0.0.0-20170915032832-14c0d48ead0c/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.1-0.20180807135948-17ff2d5776d2/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= @@ -543,8 +571,8 @@ golang.org/x/text v0.3.4/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= golang.org/x/text v0.3.5/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= golang.org/x/text v0.3.6/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ= -golang.org/x/text v0.7.0 h1:4BRB4x83lYWy72KwLD/qYDuTu7q9PjSagHvijDw7cLo= -golang.org/x/text v0.7.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8= +golang.org/x/text v0.9.0 h1:2sjJmO8cDvYveuX97RDLsxlyUxLl+GHoLxBiRdHllBE= +golang.org/x/text v0.9.0/go.mod h1:e1OnstbJyHTd6l/uOt8jFFHp6TRDWZR/bV3emEE/zU8= golang.org/x/time v0.0.0-20181108054448-85acf8d2951c/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= golang.org/x/time v0.0.0-20190308202827-9d24e82272b4/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= golang.org/x/time v0.0.0-20191024005414-555d28b269f0/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= @@ -603,8 +631,8 @@ golang.org/x/tools v0.0.0-20210108195828-e2f9c7f1fc8e/go.mod h1:emZCQorbCU4vsT4f golang.org/x/tools v0.1.0/go.mod h1:xkSsbof2nBLbhDlRMhhhyNLN/zl3eTqcnHD5viDpcZ0= golang.org/x/tools v0.1.5/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk= golang.org/x/tools v0.1.7/go.mod h1:LGqMHiF4EqQNHR1JncWGqT5BVaXmza+X+BDGol+dOxo= -golang.org/x/tools v0.1.12 h1:VveCTK38A2rkS8ZqFY25HIDFscX5X9OoEhJd3quQmXU= -golang.org/x/tools v0.1.12/go.mod h1:hNGJHUnrk76NpqgfD5Aqm5Crs+Hm0VOH/i9J2+nxYbc= +golang.org/x/tools v0.9.1 h1:8WMNJAz3zrtPmnYC7ISf5dEn3MT0gY7jBJfw27yrrLo= +golang.org/x/tools v0.9.1/go.mod h1:owI94Op576fPu3cIGQeHs3joujW/2Oc6MtlxbF5dfNc= golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= @@ -743,6 +771,8 @@ gopkg.in/yaml.v3 v3.0.0-20200615113413-eeeca48fe776/go.mod h1:K4uyk7z7BCEPqu6E+C gopkg.in/yaml.v3 v3.0.0-20210107192922-496545a6307b/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= +gotest.tools/v3 v3.4.0 h1:ZazjZUfuVeZGLAmlKKuyv3IKP5orXcwtOwDQH6YVr6o= +gotest.tools/v3 v3.4.0/go.mod h1:CtbdzLSsqVhDgMtKsx03ird5YTGB3ar27v0u/yKBW5g= honnef.co/go/tools v0.0.0-20190102054323-c2f93a96b099/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= honnef.co/go/tools v0.0.0-20190106161140-3f1c8253044a/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= honnef.co/go/tools v0.0.0-20190418001031-e561f6794a2a/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= @@ -774,5 +804,6 @@ sigs.k8s.io/json v0.0.0-20211208200746-9f7c6b3444d2/go.mod h1:B+TnT182UBxE84DiCz sigs.k8s.io/structured-merge-diff/v4 v4.0.2/go.mod h1:bJZC9H9iH24zzfZ/41RGcq60oK1F7G282QMXDPYydCw= sigs.k8s.io/structured-merge-diff/v4 v4.2.1 h1:bKCqE9GvQ5tiVHn5rfn1r+yao3aLQEaLzkkmAkf+A6Y= sigs.k8s.io/structured-merge-diff/v4 v4.2.1/go.mod h1:j/nl6xW8vLS49O8YvXW1ocPhZawJtm+Yrr7PPRQ0Vg4= -sigs.k8s.io/yaml v1.2.0 h1:kr/MCeFWJWTwyaHoR9c8EjH9OumOmoF9YGiZd7lFm/Q= sigs.k8s.io/yaml v1.2.0/go.mod h1:yfXDCHCao9+ENCvLSE62v9VSji2MKu5jeNfTrofGhJc= +sigs.k8s.io/yaml v1.3.0 h1:a2VclLzOGrwOHDiV8EfBGhvjHvP46CtW5j6POvhYGGo= +sigs.k8s.io/yaml v1.3.0/go.mod h1:GeOyir5tyXNByN85N/dRIT9es5UQNerPYEKK56eTBm8= diff --git a/src/backend/dispatch-k8s-manager/pkg/apiserver/apis/apis.go b/src/backend/dispatch-k8s-manager/pkg/apiserver/apis/apis.go index d0e71d6ec6c..73f04e2083d 100644 --- a/src/backend/dispatch-k8s-manager/pkg/apiserver/apis/apis.go +++ b/src/backend/dispatch-k8s-manager/pkg/apiserver/apis/apis.go @@ -36,6 +36,7 @@ func InitApis(r *gin.Engine, handlers ...gin.HandlerFunc) { initJobsApis(apis) initBuilderApis(apis) initTasksApis(apis) + initDockerApis(apis) } func ok(c *gin.Context, data interface{}) { diff --git a/src/backend/dispatch-k8s-manager/pkg/apiserver/apis/docker.go b/src/backend/dispatch-k8s-manager/pkg/apiserver/apis/docker.go new file mode 100644 index 00000000000..c065d92cd2c --- /dev/null +++ b/src/backend/dispatch-k8s-manager/pkg/apiserver/apis/docker.go @@ -0,0 +1,44 @@ +package apis + +import ( + "disaptch-k8s-manager/pkg/apiserver/service" + "net/http" + + "github.com/gin-gonic/gin" +) + +const ( + dockerPrefix = "/docker" +) + +func initDockerApis(r *gin.RouterGroup) { + docker := r.Group(dockerPrefix) + { + docker.POST("/inspect", dockerInspect) + } +} + +// @Tags docker +// @Summary docker inspect命令(同时会pull) +// @Accept json +// @Product json +// @Param Devops-Token header string true "凭证信息" +// @Param info body service.DockerInspectInfo true "构建机信息" +// @Success 200 {object} types.Result{data=service.TaskId} "任务ID" +// @Router /docker/inspect [post] +func dockerInspect(c *gin.Context) { + info := &service.DockerInspectInfo{} + + if err := c.BindJSON(info); err != nil { + fail(c, http.StatusBadRequest, err) + return + } + + taskId, err := service.DockerInspect(info) + if err != nil { + fail(c, http.StatusInternalServerError, err) + return + } + + ok(c, service.TaskId{TaskId: taskId}) +} diff --git a/src/backend/dispatch-k8s-manager/pkg/apiserver/apis/task.go b/src/backend/dispatch-k8s-manager/pkg/apiserver/apis/task.go index e7bcbd6e7cd..216c0ea27ac 100644 --- a/src/backend/dispatch-k8s-manager/pkg/apiserver/apis/task.go +++ b/src/backend/dispatch-k8s-manager/pkg/apiserver/apis/task.go @@ -8,9 +8,9 @@ import ( ) func initTasksApis(r *gin.RouterGroup) { - jobs := r.Group("/tasks") + tasks := r.Group("/tasks") { - jobs.GET("/:taskId/status", getTaskStatus) + tasks .GET("/:taskId/status", getTaskStatus) } } diff --git a/src/backend/dispatch-k8s-manager/pkg/apiserver/service/docker.go b/src/backend/dispatch-k8s-manager/pkg/apiserver/service/docker.go new file mode 100644 index 00000000000..9179adf5e96 --- /dev/null +++ b/src/backend/dispatch-k8s-manager/pkg/apiserver/service/docker.go @@ -0,0 +1,106 @@ +package service + +import ( + "context" + "disaptch-k8s-manager/pkg/db/mysql" + "disaptch-k8s-manager/pkg/docker" + "disaptch-k8s-manager/pkg/logs" + "disaptch-k8s-manager/pkg/task" + "disaptch-k8s-manager/pkg/types" + "encoding/json" + "strings" + "time" + + dockerTypes "github.com/docker/docker/api/types" + "github.com/pkg/errors" +) + +func DockerInspect(info *DockerInspectInfo) (string, error) { + taskId := generateTaskId() + + if err := mysql.InsertTask(types.Task{ + TaskId: taskId, + TaskKey: info.Name, + TaskBelong: types.TaskBelongDocker, + Action: types.TaskDockerActionInspect, + Status: types.TaskWaiting, + Message: nil, + ActionTime: time.Now(), + UpdateTime: time.Now(), + }); err != nil { + return "", err + } + + go inspect(taskId, info) + + return taskId, nil +} + +func inspect(taskId string, info *DockerInspectInfo) { + task.UpdateTask(taskId, types.TaskRunning) + + ctx := context.Background() + + // 拉取镜像 + pullMsg, err := docker.ImagePull(ctx, info.Ref, info.Credential.Username, info.Credential.Password) + if err != nil { + logs.Error("inspect ImagePull error", err) + task.FailTask(taskId, err.Error()) + return + } + + // 寻找ID + imageName := strings.TrimSpace(info.Ref) + imageStr := strings.TrimPrefix(strings.TrimPrefix(imageName, "http://"), "https://") + images, err := docker.ImageList(ctx) + if err != nil { + logs.Error("get image list error", err) + task.FailTask(taskId, err.Error()) + return + } + id := "" + for _, image := range images { + for _, tagName := range image.RepoTags { + if tagName == imageStr { + id = image.ID + } + } + } + if id == "" { + err = errors.Errorf("image %s not found", imageName) + logs.Errorf("pullMsg %s error %s", pullMsg, err.Error()) + task.FailTask(taskId, err.Error()) + return + } + + defer func() { + // 完事后删除镜像 + if err = docker.ImageRemove(ctx, id, dockerTypes.ImageRemoveOptions{Force: true}); err != nil { + logs.Errorf("remove image %s id %s error %s", info.Ref, id, err.Error()) + } + }() + + // 分析镜像 + image, err := docker.ImageInspect(ctx, info.Ref) + if err != nil { + logs.Error("inspect ImageInspect error", err) + task.FailTask(taskId, err.Error()) + return + } + + msg := &DockerInspectResp{ + Architecture: image.Architecture, + Os: image.Os, + Size: image.Size, + } + + msgStr, err := json.Marshal(msg) + if err != nil { + logs.Error("inspect jsonMarshal error", err) + task.FailTask(taskId, err.Error()) + return + } + + task.OkTaskWithMessage(taskId, string(msgStr)) + +} diff --git a/src/backend/dispatch-k8s-manager/pkg/apiserver/service/docker_type.go b/src/backend/dispatch-k8s-manager/pkg/apiserver/service/docker_type.go new file mode 100644 index 00000000000..4cee25c7c13 --- /dev/null +++ b/src/backend/dispatch-k8s-manager/pkg/apiserver/service/docker_type.go @@ -0,0 +1,18 @@ +package service + +type DockerInspectInfo struct { + Name string `json:"name" binding:"required"` // 任务名称,唯一 + Ref string `json:"ref" binding:"required"` // docker镜像信息 如:docker:latest + Credential Credential `json:"cred"` // 拉取镜像凭据 +} + +type Credential struct { + Username string `json:"username"` + Password string `json:"password"` +} + +type DockerInspectResp struct { + Architecture string `json:"arch"` // 架构 + Os string `json:"os"` // 系统 + Size int64 `json:"size"` // 大小 +} diff --git a/src/backend/dispatch-k8s-manager/pkg/config/config_type.go b/src/backend/dispatch-k8s-manager/pkg/config/config_type.go index 1b8ae7e51e6..7d8d44d3256 100644 --- a/src/backend/dispatch-k8s-manager/pkg/config/config_type.go +++ b/src/backend/dispatch-k8s-manager/pkg/config/config_type.go @@ -9,6 +9,7 @@ type ConfigYaml struct { Dispatch Dispatch `json:"dispatch"` BuildAndPushImage BuildAndPushImage `json:"buildAndPushImage"` ApiServer ApiServer `json:"apiServer"` + Docker Docker `json:"docker"` } type Server struct { @@ -135,3 +136,7 @@ type ApiToken struct { Key string `json:"key"` Value string `json:"value"` } + +type Docker struct { + Enable bool `json:"enable"` +} diff --git a/src/backend/dispatch-k8s-manager/pkg/constant/constant.go b/src/backend/dispatch-k8s-manager/pkg/constant/constant.go new file mode 100644 index 00000000000..444b4a13be6 --- /dev/null +++ b/src/backend/dispatch-k8s-manager/pkg/constant/constant.go @@ -0,0 +1,5 @@ +package constant + +const ( + KubernetesManagerDebugEnable = "KUBERNETES_MANAGER_DEBUG_ENABLE" +) diff --git a/src/backend/dispatch-k8s-manager/pkg/docker/docker.go b/src/backend/dispatch-k8s-manager/pkg/docker/docker.go new file mode 100644 index 00000000000..ca4991f3a5a --- /dev/null +++ b/src/backend/dispatch-k8s-manager/pkg/docker/docker.go @@ -0,0 +1,91 @@ +package docker + +import ( + "encoding/base64" + "encoding/json" + "io" + "strings" + + "github.com/docker/docker/api/types" + "github.com/docker/docker/client" + "github.com/pkg/errors" + "golang.org/x/net/context" +) + +var cli *client.Client + +func InitDockerCli() error { + c, err := client.NewClientWithOpts(client.FromEnv, client.WithAPIVersionNegotiation()) + if err != nil { + return err + } + cli = c + + return nil +} + +func ImageList(ctx context.Context) ([]types.ImageSummary, error) { + images, err := cli.ImageList(ctx, types.ImageListOptions{}) + if err != nil { + return nil, errors.Wrap(err, "list image error") + } + + return images, nil +} + +func ImagePull( + ctx context.Context, + ref string, + username string, + password string, +) (string, error) { + imageName := strings.TrimSpace(ref) + + reader, err := cli.ImagePull(ctx, imageName, types.ImagePullOptions{ + RegistryAuth: generateDockerAuth(username, password), + }) + if err != nil { + return "", errors.Wrap(err, "pull new image error") + } + defer reader.Close() + buf := new(strings.Builder) + _, _ = io.Copy(buf, reader) + + return buf.String(), nil +} + +func ImageInspect(ctx context.Context, imageId string) (*types.ImageInspect, error) { + image, _, err := cli.ImageInspectWithRaw(ctx, imageId) + if err != nil { + return nil, errors.Wrap(err, "image inspect error") + } + + return &image, nil +} + +func ImageRemove(ctx context.Context, imageId string, opts types.ImageRemoveOptions) error { + _, err := cli.ImageRemove(ctx, imageId, opts) + if err != nil { + return err + } + + return nil +} + +// generateDockerAuth 创建拉取docker凭据 +func generateDockerAuth(user, password string) string { + if user == "" || password == "" { + return "" + } + + authConfig := types.AuthConfig{ + Username: user, + Password: password, + } + encodedJSON, err := json.Marshal(authConfig) + if err != nil { + panic(err) + } + + return base64.URLEncoding.EncodeToString(encodedJSON) +} diff --git a/src/backend/dispatch-k8s-manager/pkg/docker/type.go b/src/backend/dispatch-k8s-manager/pkg/docker/type.go new file mode 100644 index 00000000000..c89a0d84d55 --- /dev/null +++ b/src/backend/dispatch-k8s-manager/pkg/docker/type.go @@ -0,0 +1,12 @@ +package docker + +type ImagePullPolicyEnum string + +const ( + ImagePullPolicyAlways ImagePullPolicyEnum = "always" + ImagePullPolicyIfNotPresent ImagePullPolicyEnum = "if-not-present" +) + +func (i ImagePullPolicyEnum) String() string { + return string(i) +} diff --git a/src/backend/dispatch-k8s-manager/pkg/logs/logs.go b/src/backend/dispatch-k8s-manager/pkg/logs/logs.go index 21b03f0c10d..78aa7a1ecfe 100644 --- a/src/backend/dispatch-k8s-manager/pkg/logs/logs.go +++ b/src/backend/dispatch-k8s-manager/pkg/logs/logs.go @@ -5,9 +5,6 @@ import ( "disaptch-k8s-manager/pkg/config" "disaptch-k8s-manager/pkg/types" "fmt" - "github.com/gin-gonic/gin" - "github.com/sirupsen/logrus" - "gopkg.in/natefinch/lumberjack.v2" "net" "net/http" "net/http/httputil" @@ -15,6 +12,10 @@ import ( "path/filepath" "runtime/debug" "strings" + + "github.com/gin-gonic/gin" + "github.com/sirupsen/logrus" + "gopkg.in/natefinch/lumberjack.v2" ) var Logs *logrus.Logger @@ -118,3 +119,11 @@ func Warn(args ...interface{}) { func Error(args ...interface{}) { Logs.Error(args...) } + +func Errorf(format string, args ...interface{}) { + Logs.Errorf(format, args...) +} + +func WithError(err error) *logrus.Entry { + return Logs.WithError(err) +} diff --git a/src/backend/dispatch-k8s-manager/pkg/task/builder_task.go b/src/backend/dispatch-k8s-manager/pkg/task/builder_task.go index e0c8f6ed7bb..469a9d31652 100644 --- a/src/backend/dispatch-k8s-manager/pkg/task/builder_task.go +++ b/src/backend/dispatch-k8s-manager/pkg/task/builder_task.go @@ -9,17 +9,18 @@ import ( "disaptch-k8s-manager/pkg/prometheus" "disaptch-k8s-manager/pkg/types" "fmt" + "time" + "github.com/pkg/errors" appsv1 "k8s.io/api/apps/v1" corev1 "k8s.io/api/core/v1" "k8s.io/apimachinery/pkg/watch" - "time" ) func DoCreateBuilder(taskId string, dep *kubeclient.Deployment) { _, err := kubeclient.CreateDockerRegistry(dep.Pod.PullImageSecret) if err != nil { - failTask(taskId, errors.Wrap(err, "create builder pull image secret error").Error()) + FailTask(taskId, errors.Wrap(err, "create builder pull image secret error").Error()) return } @@ -29,14 +30,14 @@ func DoCreateBuilder(taskId string, dep *kubeclient.Deployment) { } // 创建失败后的操作 - failTask(taskId, errors.Wrap(err, "create builder error").Error()) + FailTask(taskId, errors.Wrap(err, "create builder error").Error()) deleteBuilderLinkRes(dep.Name) } func DoStartBuilder(taskId string, builderName string, data []byte) { err := kubeclient.PatchDeployment(builderName, data) if err != nil { - failTask(taskId, errors.Wrap(err, "start builder error").Error()) + FailTask(taskId, errors.Wrap(err, "start builder error").Error()) return } } @@ -55,7 +56,7 @@ func DoStopBuilder(taskId string, builderName string, data []byte) { err = kubeclient.PatchDeployment(builderName, data) if err != nil { - failTask(taskId, errors.Wrap(err, "stop builder error").Error()) + FailTask(taskId, errors.Wrap(err, "stop builder error").Error()) return } @@ -123,14 +124,14 @@ func saveRealResourceUsage(builderName string, pods []*corev1.Pod) error { func DoDeleteBuilder(taskId string, builderName string) { err := kubeclient.DeleteDeployment(builderName) if err != nil { - failTask(taskId, errors.Wrap(err, "delete builder error").Error()) + FailTask(taskId, errors.Wrap(err, "delete builder error").Error()) return } deleteBuilderLinkRes(builderName) deleteBuilderLinkDbData(builderName) - okTask(taskId) + OkTask(taskId) } // deleteBuilderLinkRes 删除构建机相关联的kubernetes资源 @@ -177,7 +178,7 @@ func watchBuilderTaskPodCreateOrStart(event watch.Event, pod *corev1.Pod, taskId { switch podStatus.Phase { case corev1.PodPending: - updateTask(taskId, types.TaskRunning) + UpdateTask(taskId, types.TaskRunning) // 对于task的start/create来说,启动了就算成功,而不关心启动成功还是失败了 case corev1.PodRunning, corev1.PodSucceeded, corev1.PodFailed: { @@ -206,7 +207,7 @@ func watchBuilderTaskPodCreateOrStart(event watch.Event, pod *corev1.Pod, taskId } defer redis.UnLock(key) - okTask(taskId) + OkTask(taskId) // mysql中保存分配至节点成功的构建机最近三次节点信息,用来做下一次调度的依据 if builderName == "" { @@ -222,13 +223,13 @@ func watchBuilderTaskPodCreateOrStart(event watch.Event, pod *corev1.Pod, taskId return } case corev1.PodUnknown: - updateTask(taskId, types.TaskUnknown) + UpdateTask(taskId, types.TaskUnknown) } } case watch.Error: { logs.Error("add job error. ", pod) - failTask(taskId, podStatus.Message+"|"+podStatus.Reason) + FailTask(taskId, podStatus.Message+"|"+podStatus.Reason) } } } @@ -265,14 +266,14 @@ func watchBuilderTaskDeploymentStop(event watch.Event, dep *appsv1.Deployment, t switch event.Type { case watch.Modified: if dep.Spec.Replicas != nil && *dep.Spec.Replicas == 0 { - okTask(taskId) + OkTask(taskId) } case watch.Error: logs.Error("stop builder error. ", dep) if len(dep.Status.Conditions) > 0 { - failTask(taskId, dep.Status.Conditions[0].String()) + FailTask(taskId, dep.Status.Conditions[0].String()) } else { - failTask(taskId, "stop builder error") + FailTask(taskId, "stop builder error") } } } diff --git a/src/backend/dispatch-k8s-manager/pkg/task/job_task.go b/src/backend/dispatch-k8s-manager/pkg/task/job_task.go index 0c8abc352c4..478363cdd98 100644 --- a/src/backend/dispatch-k8s-manager/pkg/task/job_task.go +++ b/src/backend/dispatch-k8s-manager/pkg/task/job_task.go @@ -5,6 +5,7 @@ import ( "disaptch-k8s-manager/pkg/logs" "disaptch-k8s-manager/pkg/types" "fmt" + "github.com/pkg/errors" corev1 "k8s.io/api/core/v1" "k8s.io/apimachinery/pkg/watch" @@ -18,12 +19,12 @@ func DoCreateBuildAndPushImageJob( // 创建镜像拉取凭据 _, err := kubeclient.CreateDockerRegistry(job.Pod.PullImageSecret) if err != nil { - failTask(taskId, errors.Wrap(err, "create build and push image job pull image secret error").Error()) + FailTask(taskId, errors.Wrap(err, "create build and push image job pull image secret error").Error()) return } if _, err = kubeclient.CreateDockerRegistry(kanikoSecret); err != nil { - failTask(taskId, errors.Wrap(err, "create build and push image push secret error").Error()) + FailTask(taskId, errors.Wrap(err, "create build and push image push secret error").Error()) return } @@ -32,14 +33,14 @@ func DoCreateBuildAndPushImageJob( return } - failTask(taskId, errors.Wrap(err, "create job error").Error()) + FailTask(taskId, errors.Wrap(err, "create job error").Error()) deleteJobLinkRes(job.Name) } func DoCreateJob(taskId string, job *kubeclient.Job) { _, err := kubeclient.CreateDockerRegistry(job.Pod.PullImageSecret) if err != nil { - failTask(taskId, errors.Wrap(err, "create job pull image secret error").Error()) + FailTask(taskId, errors.Wrap(err, "create job pull image secret error").Error()) return } @@ -49,7 +50,7 @@ func DoCreateJob(taskId string, job *kubeclient.Job) { } // 创建失败后的操作 - failTask(taskId, errors.Wrap(err, "create job error").Error()) + FailTask(taskId, errors.Wrap(err, "create job error").Error()) deleteJobLinkRes(job.Name) } @@ -57,13 +58,13 @@ func DoCreateJob(taskId string, job *kubeclient.Job) { func DoDeleteJob(taskId string, jobName string) { err := kubeclient.DeleteJob(jobName) if err != nil { - failTask(taskId, errors.Wrap(err, "delete job error").Error()) + FailTask(taskId, errors.Wrap(err, "delete job error").Error()) return } deleteJobLinkRes(jobName) - okTask(taskId) + OkTask(taskId) } // deleteJobLinkRes 删除JOB相关联的kubernetes资源 @@ -103,18 +104,18 @@ func watchJobTaskPodCreateOrStart(event watch.Event, pod *corev1.Pod, taskId str { switch podStatus.Phase { case corev1.PodPending: - updateTask(taskId, types.TaskRunning) + UpdateTask(taskId, types.TaskRunning) // 对于task的start/create来说,启动了就算成功,而不关系启动成功还是失败了 case corev1.PodRunning, corev1.PodSucceeded, corev1.PodFailed: - okTask(taskId) + OkTask(taskId) case corev1.PodUnknown: - updateTask(taskId, types.TaskUnknown) + UpdateTask(taskId, types.TaskUnknown) } } case watch.Error: { logs.Error("add job error. ", pod) - failTask(taskId, podStatus.Message+"|"+podStatus.Reason) + FailTask(taskId, podStatus.Message+"|"+podStatus.Reason) } } } diff --git a/src/backend/dispatch-k8s-manager/pkg/task/task.go b/src/backend/dispatch-k8s-manager/pkg/task/task.go index dc9fbf4c388..bb9bbf4fbff 100644 --- a/src/backend/dispatch-k8s-manager/pkg/task/task.go +++ b/src/backend/dispatch-k8s-manager/pkg/task/task.go @@ -4,7 +4,6 @@ import ( "disaptch-k8s-manager/pkg/db/mysql" "disaptch-k8s-manager/pkg/logs" "disaptch-k8s-manager/pkg/types" - "github.com/pkg/errors" ) func InitTask() { @@ -12,23 +11,30 @@ func InitTask() { go WatchTaskDeployment() } -func okTask(taskId string) { +func OkTask(taskId string) { err := mysql.UpdateTask(taskId, types.TaskSucceeded, "") if err != nil { - logs.Error(errors.Wrapf(err, "save okTask %s %s error. ", taskId, "")) + logs.Errorf("save OkTask %s error %s", taskId, err.Error()) } } -func updateTask(taskId string, state types.TaskState) { +func OkTaskWithMessage(taskId string, message string) { + err := mysql.UpdateTask(taskId, types.TaskSucceeded, message) + if err != nil { + logs.Errorf("save OkTaskWithMessage %s %s error %s", taskId, message, err.Error()) + } +} + +func UpdateTask(taskId string, state types.TaskState) { err := mysql.UpdateTask(taskId, state, "") if err != nil { - logs.Error(errors.Wrapf(err, "update okTask %s %s error. ", taskId, "")) + logs.Errorf("save UpdateTask %s %s error %s", taskId, state, err.Error()) } } -func failTask(taskId string, message string) { +func FailTask(taskId string, message string) { err := mysql.UpdateTask(taskId, types.TaskFailed, message) if err != nil { - logs.Error(errors.Wrapf(err, "save failTask %s %s error. ", taskId, message)) + logs.Errorf("save FailTask %s %s error %s", taskId, message, err.Error()) } } diff --git a/src/backend/dispatch-k8s-manager/pkg/types/task_type.go b/src/backend/dispatch-k8s-manager/pkg/types/task_type.go index ce8bdb9bdd9..75f5bc54043 100644 --- a/src/backend/dispatch-k8s-manager/pkg/types/task_type.go +++ b/src/backend/dispatch-k8s-manager/pkg/types/task_type.go @@ -23,6 +23,11 @@ const ( TaskActionDelete TaskAction = "delete" ) +// docker 交互操作 +const ( + TaskDockerActionInspect TaskAction = "inspect" +) + type TaskLabelType string const ( @@ -36,6 +41,7 @@ type TaskBelong string const ( TaskBelongBuilder = "builder" TaskBelongJob = "job" + TaskBelongDocker = "docker" ) type Task struct { diff --git a/src/backend/dispatch-k8s-manager/resources/config.yaml b/src/backend/dispatch-k8s-manager/resources/config.yaml index f54d2fc5e10..3b68ed3b474 100644 --- a/src/backend/dispatch-k8s-manager/resources/config.yaml +++ b/src/backend/dispatch-k8s-manager/resources/config.yaml @@ -2,7 +2,7 @@ server: port: 8081 mysql: - dataSourceName: root:123456@tcp(localhost:3306)/devops_kubernetes_manager?parseTime=true&loc=Local + dataSourceName: root:123456@tcp(localhost:3306)/devops_ci_kubernetes_manager?parseTime=true&loc=Local connMaxLifetime: 3 maxOpenConns: 10 maxIdleConns: 10 @@ -86,6 +86,9 @@ apiserver: apiToken: key: Devops-Token value: landun - rsaPrivateKey: | - # 在这里保存私钥用来解密apitoken - # 推荐使用rsa-generate生成公私钥,rsa-generate可通过make打包获得 + # 在这里保存私钥用来解密apitoken + # 推荐使用rsa-generate生成公私钥,rsa-generate可通过make打包获得 + rsaPrivateKey: "" + +docker: + enable: true diff --git a/src/backend/dispatch-k8s-manager/swagger/apiserver/docs.go b/src/backend/dispatch-k8s-manager/swagger/apiserver/docs.go index 609c9e87d6b..b1a5352f9bf 100644 --- a/src/backend/dispatch-k8s-manager/swagger/apiserver/docs.go +++ b/src/backend/dispatch-k8s-manager/swagger/apiserver/docs.go @@ -1,5 +1,5 @@ -// Package apiserver GENERATED BY SWAG; DO NOT EDIT -// This file was generated by swaggo/swag +// Code generated by swaggo/swag. DO NOT EDIT. + package apiserver import "github.com/swaggo/swag" @@ -309,6 +309,55 @@ const docTemplate = `{ } } }, + "/docker/inspect": { + "post": { + "consumes": [ + "application/json" + ], + "tags": [ + "docker" + ], + "summary": "docker inspect命令(同时会pull)", + "parameters": [ + { + "type": "string", + "description": "凭证信息", + "name": "Devops-Token", + "in": "header", + "required": true + }, + { + "description": "构建机信息", + "name": "info", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/service.DockerInspectInfo" + } + } + ], + "responses": { + "200": { + "description": "任务ID", + "schema": { + "allOf": [ + { + "$ref": "#/definitions/types.Result" + }, + { + "type": "object", + "properties": { + "data": { + "$ref": "#/definitions/service.TaskId" + } + } + } + ] + } + } + } + } + }, "/jobs": { "post": { "consumes": [ @@ -618,7 +667,11 @@ const docTemplate = `{ }, "info": { "description": "构建并推送镜像的具体信息", - "$ref": "#/definitions/service.buildImageInfo" + "allOf": [ + { + "$ref": "#/definitions/service.buildImageInfo" + } + ] }, "name": { "description": "唯一名称", @@ -627,11 +680,19 @@ const docTemplate = `{ }, "podNameSelector": { "description": "Pod名称调度", - "$ref": "#/definitions/service.PodNameSelector" + "allOf": [ + { + "$ref": "#/definitions/service.PodNameSelector" + } + ] }, "resource": { "description": "工作负载资源", - "$ref": "#/definitions/service.CommonWorkLoadResource" + "allOf": [ + { + "$ref": "#/definitions/service.CommonWorkLoadResource" + } + ] } } }, @@ -675,19 +736,35 @@ const docTemplate = `{ }, "privateBuilder": { "description": "私有构建机配置", - "$ref": "#/definitions/service.DedicatedBuilder" + "allOf": [ + { + "$ref": "#/definitions/service.DedicatedBuilder" + } + ] }, "registry": { "description": "镜像凭证", - "$ref": "#/definitions/types.Registry" + "allOf": [ + { + "$ref": "#/definitions/types.Registry" + } + ] }, "resource": { "description": "工作负载资源", - "$ref": "#/definitions/service.CommonWorkLoadResource" + "allOf": [ + { + "$ref": "#/definitions/service.CommonWorkLoadResource" + } + ] }, "specialBuilder": { "description": "特殊构建机配置", - "$ref": "#/definitions/service.DedicatedBuilder" + "allOf": [ + { + "$ref": "#/definitions/service.DedicatedBuilder" + } + ] } } }, @@ -708,6 +785,27 @@ const docTemplate = `{ } } }, + "service.BuilderState": { + "type": "string", + "enum": [ + "readyToRun", + "notExist", + "pending", + "running", + "succeeded", + "failed", + "unknown" + ], + "x-enum-varnames": [ + "BuilderReadyToRun", + "BuilderNotExist", + "BuilderPending", + "BuilderRunning", + "BuilderSucceeded", + "BuilderFailed", + "BuilderUnknown" + ] + }, "service.BuilderStatus": { "type": "object", "properties": { @@ -715,7 +813,7 @@ const docTemplate = `{ "type": "string" }, "status": { - "type": "string" + "$ref": "#/definitions/service.BuilderState" } } }, @@ -766,6 +864,17 @@ const docTemplate = `{ } } }, + "service.Credential": { + "type": "object", + "properties": { + "password": { + "type": "string" + }, + "username": { + "type": "string" + } + } + }, "service.DedicatedBuilder": { "type": "object", "properties": { @@ -774,6 +883,31 @@ const docTemplate = `{ } } }, + "service.DockerInspectInfo": { + "type": "object", + "required": [ + "name", + "ref" + ], + "properties": { + "cred": { + "description": "拉取镜像凭据", + "allOf": [ + { + "$ref": "#/definitions/service.Credential" + } + ] + }, + "name": { + "description": "任务名称,唯一", + "type": "string" + }, + "ref": { + "description": "docker镜像信息 如:docker:latest", + "type": "string" + } + } + }, "service.Job": { "type": "object", "required": [ @@ -818,18 +952,47 @@ const docTemplate = `{ }, "podNameSelector": { "description": "Pod名称调度选项", - "$ref": "#/definitions/service.PodNameSelector" + "allOf": [ + { + "$ref": "#/definitions/service.PodNameSelector" + } + ] }, "registry": { "description": "镜像凭证", - "$ref": "#/definitions/types.Registry" + "allOf": [ + { + "$ref": "#/definitions/types.Registry" + } + ] }, "resource": { "description": "工作负载资源", - "$ref": "#/definitions/service.CommonWorkLoadResource" + "allOf": [ + { + "$ref": "#/definitions/service.CommonWorkLoadResource" + } + ] } } }, + "service.JobState": { + "type": "string", + "enum": [ + "pending", + "running", + "succeeded", + "failed", + "unknown" + ], + "x-enum-varnames": [ + "JobPending", + "JobRunning", + "JobSucceeded", + "JobFailed", + "JobUnknown" + ] + }, "service.JobStatus": { "type": "object", "properties": { @@ -840,7 +1003,7 @@ const docTemplate = `{ "type": "string" }, "state": { - "type": "string" + "$ref": "#/definitions/service.JobState" } } }, @@ -875,7 +1038,7 @@ const docTemplate = `{ "type": "string" }, "status": { - "type": "string" + "$ref": "#/definitions/types.TaskState" } } }, @@ -958,6 +1121,23 @@ const docTemplate = `{ "type": "integer" } } + }, + "types.TaskState": { + "type": "string", + "enum": [ + "waiting", + "running", + "succeeded", + "failed", + "unknown" + ], + "x-enum-varnames": [ + "TaskWaiting", + "TaskRunning", + "TaskSucceeded", + "TaskFailed", + "TaskUnknown" + ] } } }` @@ -972,6 +1152,8 @@ var SwaggerInfo = &swag.Spec{ Description: "", InfoInstanceName: "swagger", SwaggerTemplate: docTemplate, + LeftDelim: "{{", + RightDelim: "}}", } func init() { diff --git a/src/backend/dispatch-k8s-manager/swagger/apiserver/swagger.json b/src/backend/dispatch-k8s-manager/swagger/apiserver/swagger.json index d53e59cc2a0..66563b9aa23 100644 --- a/src/backend/dispatch-k8s-manager/swagger/apiserver/swagger.json +++ b/src/backend/dispatch-k8s-manager/swagger/apiserver/swagger.json @@ -300,6 +300,55 @@ } } }, + "/docker/inspect": { + "post": { + "consumes": [ + "application/json" + ], + "tags": [ + "docker" + ], + "summary": "docker inspect命令(同时会pull)", + "parameters": [ + { + "type": "string", + "description": "凭证信息", + "name": "Devops-Token", + "in": "header", + "required": true + }, + { + "description": "构建机信息", + "name": "info", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/service.DockerInspectInfo" + } + } + ], + "responses": { + "200": { + "description": "任务ID", + "schema": { + "allOf": [ + { + "$ref": "#/definitions/types.Result" + }, + { + "type": "object", + "properties": { + "data": { + "$ref": "#/definitions/service.TaskId" + } + } + } + ] + } + } + } + } + }, "/jobs": { "post": { "consumes": [ @@ -609,7 +658,11 @@ }, "info": { "description": "构建并推送镜像的具体信息", - "$ref": "#/definitions/service.buildImageInfo" + "allOf": [ + { + "$ref": "#/definitions/service.buildImageInfo" + } + ] }, "name": { "description": "唯一名称", @@ -618,11 +671,19 @@ }, "podNameSelector": { "description": "Pod名称调度", - "$ref": "#/definitions/service.PodNameSelector" + "allOf": [ + { + "$ref": "#/definitions/service.PodNameSelector" + } + ] }, "resource": { "description": "工作负载资源", - "$ref": "#/definitions/service.CommonWorkLoadResource" + "allOf": [ + { + "$ref": "#/definitions/service.CommonWorkLoadResource" + } + ] } } }, @@ -666,19 +727,35 @@ }, "privateBuilder": { "description": "私有构建机配置", - "$ref": "#/definitions/service.DedicatedBuilder" + "allOf": [ + { + "$ref": "#/definitions/service.DedicatedBuilder" + } + ] }, "registry": { "description": "镜像凭证", - "$ref": "#/definitions/types.Registry" + "allOf": [ + { + "$ref": "#/definitions/types.Registry" + } + ] }, "resource": { "description": "工作负载资源", - "$ref": "#/definitions/service.CommonWorkLoadResource" + "allOf": [ + { + "$ref": "#/definitions/service.CommonWorkLoadResource" + } + ] }, "specialBuilder": { "description": "特殊构建机配置", - "$ref": "#/definitions/service.DedicatedBuilder" + "allOf": [ + { + "$ref": "#/definitions/service.DedicatedBuilder" + } + ] } } }, @@ -699,6 +776,27 @@ } } }, + "service.BuilderState": { + "type": "string", + "enum": [ + "readyToRun", + "notExist", + "pending", + "running", + "succeeded", + "failed", + "unknown" + ], + "x-enum-varnames": [ + "BuilderReadyToRun", + "BuilderNotExist", + "BuilderPending", + "BuilderRunning", + "BuilderSucceeded", + "BuilderFailed", + "BuilderUnknown" + ] + }, "service.BuilderStatus": { "type": "object", "properties": { @@ -706,7 +804,7 @@ "type": "string" }, "status": { - "type": "string" + "$ref": "#/definitions/service.BuilderState" } } }, @@ -757,6 +855,17 @@ } } }, + "service.Credential": { + "type": "object", + "properties": { + "password": { + "type": "string" + }, + "username": { + "type": "string" + } + } + }, "service.DedicatedBuilder": { "type": "object", "properties": { @@ -765,6 +874,31 @@ } } }, + "service.DockerInspectInfo": { + "type": "object", + "required": [ + "name", + "ref" + ], + "properties": { + "cred": { + "description": "拉取镜像凭据", + "allOf": [ + { + "$ref": "#/definitions/service.Credential" + } + ] + }, + "name": { + "description": "任务名称,唯一", + "type": "string" + }, + "ref": { + "description": "docker镜像信息 如:docker:latest", + "type": "string" + } + } + }, "service.Job": { "type": "object", "required": [ @@ -809,18 +943,47 @@ }, "podNameSelector": { "description": "Pod名称调度选项", - "$ref": "#/definitions/service.PodNameSelector" + "allOf": [ + { + "$ref": "#/definitions/service.PodNameSelector" + } + ] }, "registry": { "description": "镜像凭证", - "$ref": "#/definitions/types.Registry" + "allOf": [ + { + "$ref": "#/definitions/types.Registry" + } + ] }, "resource": { "description": "工作负载资源", - "$ref": "#/definitions/service.CommonWorkLoadResource" + "allOf": [ + { + "$ref": "#/definitions/service.CommonWorkLoadResource" + } + ] } } }, + "service.JobState": { + "type": "string", + "enum": [ + "pending", + "running", + "succeeded", + "failed", + "unknown" + ], + "x-enum-varnames": [ + "JobPending", + "JobRunning", + "JobSucceeded", + "JobFailed", + "JobUnknown" + ] + }, "service.JobStatus": { "type": "object", "properties": { @@ -831,7 +994,7 @@ "type": "string" }, "state": { - "type": "string" + "$ref": "#/definitions/service.JobState" } } }, @@ -866,7 +1029,7 @@ "type": "string" }, "status": { - "type": "string" + "$ref": "#/definitions/types.TaskState" } } }, @@ -949,6 +1112,23 @@ "type": "integer" } } + }, + "types.TaskState": { + "type": "string", + "enum": [ + "waiting", + "running", + "succeeded", + "failed", + "unknown" + ], + "x-enum-varnames": [ + "TaskWaiting", + "TaskRunning", + "TaskSucceeded", + "TaskFailed", + "TaskUnknown" + ] } } } \ No newline at end of file diff --git a/src/backend/dispatch-k8s-manager/swagger/apiserver/swagger.yaml b/src/backend/dispatch-k8s-manager/swagger/apiserver/swagger.yaml index 03fecc91edb..96ebce4efc4 100644 --- a/src/backend/dispatch-k8s-manager/swagger/apiserver/swagger.yaml +++ b/src/backend/dispatch-k8s-manager/swagger/apiserver/swagger.yaml @@ -6,17 +6,20 @@ definitions: description: Job存活时间 type: integer info: - $ref: '#/definitions/service.buildImageInfo' + allOf: + - $ref: '#/definitions/service.buildImageInfo' description: 构建并推送镜像的具体信息 name: description: 唯一名称 maxLength: 32 type: string podNameSelector: - $ref: '#/definitions/service.PodNameSelector' + allOf: + - $ref: '#/definitions/service.PodNameSelector' description: Pod名称调度 resource: - $ref: '#/definitions/service.CommonWorkLoadResource' + allOf: + - $ref: '#/definitions/service.CommonWorkLoadResource' description: 工作负载资源 required: - info @@ -49,16 +52,20 @@ definitions: $ref: '#/definitions/types.NFS' type: array privateBuilder: - $ref: '#/definitions/service.DedicatedBuilder' + allOf: + - $ref: '#/definitions/service.DedicatedBuilder' description: 私有构建机配置 registry: - $ref: '#/definitions/types.Registry' + allOf: + - $ref: '#/definitions/types.Registry' description: 镜像凭证 resource: - $ref: '#/definitions/service.CommonWorkLoadResource' + allOf: + - $ref: '#/definitions/service.CommonWorkLoadResource' description: 工作负载资源 specialBuilder: - $ref: '#/definitions/service.DedicatedBuilder' + allOf: + - $ref: '#/definitions/service.DedicatedBuilder' description: 特殊构建机配置 required: - image @@ -76,12 +83,30 @@ definitions: type: string type: object type: object + service.BuilderState: + enum: + - readyToRun + - notExist + - pending + - running + - succeeded + - failed + - unknown + type: string + x-enum-varnames: + - BuilderReadyToRun + - BuilderNotExist + - BuilderPending + - BuilderRunning + - BuilderSucceeded + - BuilderFailed + - BuilderUnknown service.BuilderStatus: properties: message: type: string status: - type: string + $ref: '#/definitions/service.BuilderState' type: object service.CommonWorkLoadResource: properties: @@ -119,11 +144,34 @@ definitions: - requestDiskIO - requestMem type: object + service.Credential: + properties: + password: + type: string + username: + type: string + type: object service.DedicatedBuilder: properties: name: type: string type: object + service.DockerInspectInfo: + properties: + cred: + allOf: + - $ref: '#/definitions/service.Credential' + description: 拉取镜像凭据 + name: + description: 任务名称,唯一 + type: string + ref: + description: docker镜像信息 如:docker:latest + type: string + required: + - name + - ref + type: object service.Job: properties: activeDeadlineSeconds: @@ -152,19 +200,36 @@ definitions: $ref: '#/definitions/types.NFS' type: array podNameSelector: - $ref: '#/definitions/service.PodNameSelector' + allOf: + - $ref: '#/definitions/service.PodNameSelector' description: Pod名称调度选项 registry: - $ref: '#/definitions/types.Registry' + allOf: + - $ref: '#/definitions/types.Registry' description: 镜像凭证 resource: - $ref: '#/definitions/service.CommonWorkLoadResource' + allOf: + - $ref: '#/definitions/service.CommonWorkLoadResource' description: 工作负载资源 required: - image - name - resource type: object + service.JobState: + enum: + - pending + - running + - succeeded + - failed + - unknown + type: string + x-enum-varnames: + - JobPending + - JobRunning + - JobSucceeded + - JobFailed + - JobUnknown service.JobStatus: properties: message: @@ -172,7 +237,7 @@ definitions: podIp: type: string state: - type: string + $ref: '#/definitions/service.JobState' type: object service.PodNameSelector: properties: @@ -195,7 +260,7 @@ definitions: detail: type: string status: - type: string + $ref: '#/definitions/types.TaskState' type: object service.buildImageInfo: properties: @@ -252,6 +317,20 @@ definitions: status: type: integer type: object + types.TaskState: + enum: + - waiting + - running + - succeeded + - failed + - unknown + type: string + x-enum-varnames: + - TaskWaiting + - TaskRunning + - TaskSucceeded + - TaskFailed + - TaskUnknown info: contact: {} title: kubernetes-manager api文档 @@ -432,6 +511,35 @@ paths: summary: 获取远程登录链接 tags: - builder + /docker/inspect: + post: + consumes: + - application/json + parameters: + - description: 凭证信息 + in: header + name: Devops-Token + required: true + type: string + - description: 构建机信息 + in: body + name: info + required: true + schema: + $ref: '#/definitions/service.DockerInspectInfo' + responses: + "200": + description: 任务ID + schema: + allOf: + - $ref: '#/definitions/types.Result' + - properties: + data: + $ref: '#/definitions/service.TaskId' + type: object + summary: docker inspect命令(同时会pull) + tags: + - docker /jobs: post: consumes: diff --git a/src/backend/dispatch-k8s-manager/swagger/init-swager.sh b/src/backend/dispatch-k8s-manager/swagger/init-swager.sh old mode 100644 new mode 100755 From 59e0a949941ec68232d6ae0fa8122fca275807aa Mon Sep 17 00:00:00 2001 From: ruotiantang Date: Thu, 25 May 2023 09:44:31 +0800 Subject: [PATCH 002/856] =?UTF-8?q?kubernetes-manager=20=E6=94=AF=E6=8C=81?= =?UTF-8?q?docker=20inspect=20image=20#8862?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../local_chart/kubernetes-management/templates/deployment.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/helm-charts/core/ci/local_chart/kubernetes-management/templates/deployment.yaml b/helm-charts/core/ci/local_chart/kubernetes-management/templates/deployment.yaml index 63110efdd33..8a3ea65fbc3 100644 --- a/helm-charts/core/ci/local_chart/kubernetes-management/templates/deployment.yaml +++ b/helm-charts/core/ci/local_chart/kubernetes-management/templates/deployment.yaml @@ -73,7 +73,7 @@ spec: {{- end}} {{- if .Values.kubernetesManager.debug }} - name: KUBERNETES_MANAGER_DEBUG_ENABLE - value: true + value: "true" {{- end}} workingDir: /data/workspace/kubernetes-manager livenessProbe: From 74b9dc6609230c8a0345ecb7c4a346df9739bc65 Mon Sep 17 00:00:00 2001 From: stubenhuang Date: Mon, 27 May 2024 20:06:08 +0800 Subject: [PATCH 003/856] =?UTF-8?q?feat:=20=E8=AE=A9worker=E6=94=AF?= =?UTF-8?q?=E6=8C=81=E5=9C=A8JDK17=E4=B8=AD=E8=BF=90=E8=A1=8C=20#10412?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../tencent/devops/common/api/util/EnumUtil.kt | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/src/backend/ci/core/common/common-api/src/main/kotlin/com/tencent/devops/common/api/util/EnumUtil.kt b/src/backend/ci/core/common/common-api/src/main/kotlin/com/tencent/devops/common/api/util/EnumUtil.kt index f30a88eb446..d60e44c923a 100644 --- a/src/backend/ci/core/common/common-api/src/main/kotlin/com/tencent/devops/common/api/util/EnumUtil.kt +++ b/src/backend/ci/core/common/common-api/src/main/kotlin/com/tencent/devops/common/api/util/EnumUtil.kt @@ -27,10 +27,9 @@ package com.tencent.devops.common.api.util -import sun.reflect.ConstructorAccessor -import sun.reflect.FieldAccessor import sun.reflect.ReflectionFactory import java.lang.reflect.AccessibleObject +import java.lang.reflect.Constructor import java.lang.reflect.Field import java.lang.reflect.Modifier import kotlin.reflect.full.isSubclassOf @@ -131,8 +130,7 @@ object EnumUtil { var modifiers: Int = modifiersField.getInt(field) modifiers = modifiers and Modifier.FINAL.inv() modifiersField.setInt(field, modifiers) - val fieldAccessor: FieldAccessor = reflectionFactory.newFieldAccessor(field, false) - fieldAccessor.set(target, value) + field.set(target, value) } @Throws(NoSuchFieldException::class, IllegalAccessException::class) @@ -155,7 +153,7 @@ object EnumUtil { inline fun getConstructorAccessor( enumClass: Class, additionalParameterTypes: Array> - ): ConstructorAccessor? { + ): Constructor? { val parameterTypes = arrayOfNulls?>(additionalParameterTypes.size + 2) parameterTypes[0] = String::class.java // enum class first field: field name parameterTypes[1] = Int::class.javaPrimitiveType // enum class second field: ordinal @@ -163,14 +161,17 @@ object EnumUtil { enumClass.declaredConstructors.forEach { constructor -> if (compareParameterType(constructor.parameterTypes, parameterTypes)) { try { - return reflectionFactory.newConstructorAccessor(constructor) + constructor.isAccessible = true + return constructor } catch (ignored: IllegalArgumentException) { // skip illegal argument try next one } } } - return reflectionFactory.newConstructorAccessor(enumClass.getDeclaredConstructor(*parameterTypes)) + val constructor = enumClass.getDeclaredConstructor(*parameterTypes) + constructor.isAccessible = true + return constructor } fun compareParameterType(constructorParameterType: Array>, parameterTypes: Array?>): Boolean { @@ -181,7 +182,8 @@ object EnumUtil { if (constructorParameterType[i] !== parameterTypes[i]) { if (constructorParameterType[i].isPrimitive && parameterTypes[i]!!.isPrimitive) { if (constructorParameterType[i].kotlin.javaPrimitiveType - !== parameterTypes[i]!!.kotlin.javaPrimitiveType) { + !== parameterTypes[i]!!.kotlin.javaPrimitiveType + ) { return false } } From 9a0bd1f264f07751aa6dff8385c361fd972fea9d Mon Sep 17 00:00:00 2001 From: stubenhuang Date: Tue, 28 May 2024 12:18:08 +0800 Subject: [PATCH 004/856] =?UTF-8?q?feat:=20=E8=AE=A9worker=E6=94=AF?= =?UTF-8?q?=E6=8C=81=E5=9C=A8JDK17=E4=B8=AD=E8=BF=90=E8=A1=8C=20#10412?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ci/core/common/common-api/build.gradle.kts | 1 + .../tencent/devops/common/api/util/EnumUtil.kt | 18 +++++++++++++++--- 2 files changed, 16 insertions(+), 3 deletions(-) diff --git a/src/backend/ci/core/common/common-api/build.gradle.kts b/src/backend/ci/core/common/common-api/build.gradle.kts index da14be40068..5bb6780e936 100644 --- a/src/backend/ci/core/common/common-api/build.gradle.kts +++ b/src/backend/ci/core/common/common-api/build.gradle.kts @@ -53,4 +53,5 @@ dependencies { api("com.github.ben-manes.caffeine:caffeine") api("com.fasterxml.jackson.datatype:jackson-datatype-jsr310") api("com.jakewharton:disklrucache") + api("org.apache.commons:commons-lang3") } diff --git a/src/backend/ci/core/common/common-api/src/main/kotlin/com/tencent/devops/common/api/util/EnumUtil.kt b/src/backend/ci/core/common/common-api/src/main/kotlin/com/tencent/devops/common/api/util/EnumUtil.kt index d60e44c923a..df20a35ee57 100644 --- a/src/backend/ci/core/common/common-api/src/main/kotlin/com/tencent/devops/common/api/util/EnumUtil.kt +++ b/src/backend/ci/core/common/common-api/src/main/kotlin/com/tencent/devops/common/api/util/EnumUtil.kt @@ -27,6 +27,7 @@ package com.tencent.devops.common.api.util +import org.apache.commons.lang3.reflect.MethodUtils import sun.reflect.ReflectionFactory import java.lang.reflect.AccessibleObject import java.lang.reflect.Constructor @@ -130,7 +131,15 @@ object EnumUtil { var modifiers: Int = modifiersField.getInt(field) modifiers = modifiers and Modifier.FINAL.inv() modifiersField.setInt(field, modifiers) - field.set(target, value) + + val fieldAccessor = MethodUtils.invokeMethod(field, true, "acquireFieldAccessor", false) + MethodUtils.invokeMethod( + fieldAccessor, + true, + "set", + arrayOf(target, value), + arrayOf>(Object::class.java, Object::class.java) + ) } @Throws(NoSuchFieldException::class, IllegalAccessException::class) @@ -150,7 +159,7 @@ object EnumUtil { } @Throws(NoSuchMethodException::class) - inline fun getConstructorAccessor( + inline fun getConstructor( enumClass: Class, additionalParameterTypes: Array> ): Constructor? { @@ -204,7 +213,10 @@ object EnumUtil { params[0] = value params[1] = Integer.valueOf(ordinal) System.arraycopy(additionalValues, 0, params, 2, additionalValues.size) - return enumClass.cast(getConstructorAccessor(enumClass, additionalTypes)!!.newInstance(params)) + val constructor = getConstructor(enumClass, additionalTypes) + val constructorAccessor = MethodUtils.invokeMethod(constructor, true, "acquireConstructorAccessor") + val instance = MethodUtils.invokeMethod(constructorAccessor, true, "newInstance", params) + return enumClass.cast(instance) } val reflectionFactory: ReflectionFactory = ReflectionFactory.getReflectionFactory() From 977c473e2c715c7617763ce79841a8140a88ff5c Mon Sep 17 00:00:00 2001 From: v_yjjiaoyu <1981190393@qq.com> Date: Tue, 28 May 2024 14:24:39 +0800 Subject: [PATCH 005/856] =?UTF-8?q?bug:=20=E5=9B=9E=E6=94=B6=E7=AB=99?= =?UTF-8?q?=E6=90=9C=E7=B4=A2=E4=B8=8D=E5=8F=AF=E7=94=A8=20#8440=20#=20Rev?= =?UTF-8?q?iewed,=20transaction=20id:=208795?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../pipelineList/PipelineTableView.vue | 5 +++++ .../views/PipelineList/PipelineManageList.vue | 22 +++++++++++++++++-- 2 files changed, 25 insertions(+), 2 deletions(-) diff --git a/src/frontend/devops-pipeline/src/components/pipelineList/PipelineTableView.vue b/src/frontend/devops-pipeline/src/components/pipelineList/PipelineTableView.vue index 5e746e82578..057a80210fe 100755 --- a/src/frontend/devops-pipeline/src/components/pipelineList/PipelineTableView.vue +++ b/src/frontend/devops-pipeline/src/components/pipelineList/PipelineTableView.vue @@ -342,6 +342,10 @@ filterParams: { type: Object, default: () => ({}) + }, + filterByPipelineName: { + type: String, + default: '' } }, data () { @@ -608,6 +612,7 @@ page: this.pagination.current, pageSize: this.pagination.limit, viewId: this.$route.params.viewId, + filterByPipelineName: this.filterByPipelineName || null, ...this.filterParams, ...query }) diff --git a/src/frontend/devops-pipeline/src/views/PipelineList/PipelineManageList.vue b/src/frontend/devops-pipeline/src/views/PipelineList/PipelineManageList.vue index f1fc5da26d8..27ab43de5f6 100644 --- a/src/frontend/devops-pipeline/src/views/PipelineList/PipelineManageList.vue +++ b/src/frontend/devops-pipeline/src/views/PipelineList/PipelineManageList.vue @@ -2,7 +2,15 @@
{{$t('restore.recycleBin')}}
- +
+ + diff --git a/src/frontend/devops-manage/src/components/user-group/svg/user-active.svg b/src/frontend/devops-manage/src/components/user-group/svg/user-active.svg new file mode 100644 index 00000000000..13e6fc235da --- /dev/null +++ b/src/frontend/devops-manage/src/components/user-group/svg/user-active.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/frontend/devops-manage/src/css/svg/close.svg b/src/frontend/devops-manage/src/css/svg/close.svg new file mode 100644 index 00000000000..9910df9f4d7 --- /dev/null +++ b/src/frontend/devops-manage/src/css/svg/close.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/frontend/devops-manage/src/router/index.ts b/src/frontend/devops-manage/src/router/index.ts index 30a36c2d4e2..04fe97d5b8f 100644 --- a/src/frontend/devops-manage/src/router/index.ts +++ b/src/frontend/devops-manage/src/router/index.ts @@ -12,6 +12,8 @@ const ShowProject = () => import(/* webpackChunkName: "ShowProject" */ '../views // 用户组管理 const UserGroup = () => import(/* webpackChunkName: "UserGroup" */ '../views/manage/group/group-entry.vue'); const ExpandManage = () => import(/* webpackChunkName: "ExpandManage" */ '../views/manage/expand/expand-manage.vue'); +// 授权管理 +const Permission = () => import(/* webpackChunkName: "ExpandManage" */ '../views/manage/permission/permission-manage.vue'); const router = createRouter({ history: createWebHistory('manage'), @@ -55,6 +57,11 @@ const router = createRouter({ name: 'group', component: UserGroup, }, + { + path: 'permission', + name: 'permission', + component: Permission, + }, { path: 'expand', name: 'expand', diff --git a/src/frontend/devops-manage/src/views/manage/manage-entry.vue b/src/frontend/devops-manage/src/views/manage/manage-entry.vue index 1a0e72062de..d3750cb21cd 100644 --- a/src/frontend/devops-manage/src/views/manage/manage-entry.vue +++ b/src/frontend/devops-manage/src/views/manage/manage-entry.vue @@ -23,6 +23,10 @@ const manageTabs = ref([ title: t('用户管理'), name: 'group', }, + { + title: t('授权管理'), + name: 'permission', + }, // { // title: t('微扩展管理'), // name: 'expand', diff --git a/src/frontend/devops-manage/src/views/manage/permission/permission-manage.vue b/src/frontend/devops-manage/src/views/manage/permission/permission-manage.vue new file mode 100644 index 00000000000..b7716003018 --- /dev/null +++ b/src/frontend/devops-manage/src/views/manage/permission/permission-manage.vue @@ -0,0 +1,494 @@ + + + + + \ No newline at end of file From 4ea20bebaa7fb2e943f6549cf4244b9ab9b656c8 Mon Sep 17 00:00:00 2001 From: v_yjjiaoyu <1981190393@qq.com> Date: Tue, 4 Jun 2024 15:49:44 +0800 Subject: [PATCH 013/856] =?UTF-8?q?feat:=20=E9=A1=B9=E7=9B=AE=E6=88=90?= =?UTF-8?q?=E5=91=98=E7=AE=A1=E7=90=86=20#9620=20#=20Reviewed,=20transacti?= =?UTF-8?q?on=20id:=209239?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../children/permission-manage/manage-all.vue | 209 +++++++++++++++++- .../manage/permission/permission-manage.vue | 1 - 2 files changed, 204 insertions(+), 6 deletions(-) diff --git a/src/frontend/devops-manage/src/components/user-group/components/children/permission-manage/manage-all.vue b/src/frontend/devops-manage/src/components/user-group/components/children/permission-manage/manage-all.vue index 985ba5862ec..b32711e1c59 100644 --- a/src/frontend/devops-manage/src/components/user-group/components/children/permission-manage/manage-all.vue +++ b/src/frontend/devops-manage/src/components/user-group/components/children/permission-manage/manage-all.vue @@ -51,10 +51,23 @@ diff --git a/src/frontend/devops-manage/src/views/manage/permission/permission-manage.vue b/src/frontend/devops-manage/src/views/manage/permission/permission-manage.vue index b7716003018..4586c7a5a03 100644 --- a/src/frontend/devops-manage/src/views/manage/permission/permission-manage.vue +++ b/src/frontend/devops-manage/src/views/manage/permission/permission-manage.vue @@ -33,7 +33,6 @@ :columns="columns" height="100%" show-overflow-tooltip - v-bkloading="{ isLoading }" :scroll-loading="isScrollLoading" @select-all="handleSelectAll" @selection-change="handleSelectionChange" From d1178810893e053b05347a3464f50eb864e9812f Mon Sep 17 00:00:00 2001 From: yjieliang Date: Wed, 5 Jun 2024 15:36:37 +0800 Subject: [PATCH 014/856] =?UTF-8?q?pref=EF=BC=9A=E6=8B=89=E5=8F=96?= =?UTF-8?q?=E6=8F=92=E4=BB=B6task.json=E6=96=87=E4=BB=B6=E5=86=85=E5=AE=B9?= =?UTF-8?q?=E6=8A=A5=E9=94=99=E6=8F=90=E7=A4=BA=E4=BC=98=E5=8C=96=20#10446?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../tencent/devops/store/constant/StoreMessageCode.kt | 4 ++++ .../store/atom/service/impl/AtomReleaseServiceImpl.kt | 9 ++++++++- .../devops/store/atom/service/impl/OpAtomServiceImpl.kt | 2 +- support-files/i18n/store/message_en_US.properties | 2 ++ support-files/i18n/store/message_zh_CN.properties | 2 ++ 5 files changed, 17 insertions(+), 2 deletions(-) diff --git a/src/backend/ci/core/store/api-store/src/main/kotlin/com/tencent/devops/store/constant/StoreMessageCode.kt b/src/backend/ci/core/store/api-store/src/main/kotlin/com/tencent/devops/store/constant/StoreMessageCode.kt index bd5dbed7b37..7ba00848499 100644 --- a/src/backend/ci/core/store/api-store/src/main/kotlin/com/tencent/devops/store/constant/StoreMessageCode.kt +++ b/src/backend/ci/core/store/api-store/src/main/kotlin/com/tencent/devops/store/constant/StoreMessageCode.kt @@ -93,6 +93,10 @@ object StoreMessageCode { const val TASK_JSON_CONFIG_IS_INVALID = "2120040" // 研发商店:java插件配置文件[task.json]target配置不正确,java插件的target命令配置需要以java开头 const val JAVA_ATOM_TASK_JSON_TARGET_IS_INVALID = "2120041" + // 研发商店: 拉取文件[{0}]失败,失败原因:{1} + const val USER_PULL_FILE_FAIL = "2120042" + // 插件包文件[{0}]不存在,请检查文件所在路径是否正确 + const val ATOM_PACKAGE_FILE_NOT_FOUND = "2120043" const val USER_TEMPLATE_VERSION_IS_NOT_FINISH = "2120201" // 研发商店:模板{0}的{1}版本发布未结束,请稍后再试 const val USER_TEMPLATE_RELEASE_STEPS_ERROR = "2120202" // 研发商店:模板发布流程状态变更顺序不正确 diff --git a/src/backend/ci/core/store/biz-store/src/main/kotlin/com/tencent/devops/store/atom/service/impl/AtomReleaseServiceImpl.kt b/src/backend/ci/core/store/biz-store/src/main/kotlin/com/tencent/devops/store/atom/service/impl/AtomReleaseServiceImpl.kt index 2de95c5200f..19867810e8e 100644 --- a/src/backend/ci/core/store/biz-store/src/main/kotlin/com/tencent/devops/store/atom/service/impl/AtomReleaseServiceImpl.kt +++ b/src/backend/ci/core/store/biz-store/src/main/kotlin/com/tencent/devops/store/atom/service/impl/AtomReleaseServiceImpl.kt @@ -40,6 +40,7 @@ import com.tencent.devops.common.api.constant.SECURITY import com.tencent.devops.common.api.constant.TEST import com.tencent.devops.common.api.enums.FrontendTypeEnum import com.tencent.devops.common.api.exception.ErrorCodeException +import com.tencent.devops.common.api.exception.RemoteServiceException import com.tencent.devops.common.api.pojo.Result import com.tencent.devops.common.api.util.JsonSchemaUtil import com.tencent.devops.common.api.util.JsonUtil @@ -811,6 +812,12 @@ abstract class AtomReleaseServiceImpl @Autowired constructor() : AtomReleaseServ repositoryHashId = repositoryHashId, branch = branch ) + } catch (exception: RemoteServiceException) { + logger.error("BKSystemErrorMonitor|getTaskJsonContent|$atomCode|error=${exception.message}", exception) + throw ErrorCodeException( + errorCode = StoreMessageCode.USER_PULL_FILE_FAIL, + params = arrayOf(TASK_JSON_NAME, exception.message ?: "") + ) } catch (ignored: Throwable) { logger.error("BKSystemErrorMonitor|getTaskJsonContent|$atomCode|error=${ignored.message}", ignored) throw ErrorCodeException( @@ -818,7 +825,7 @@ abstract class AtomReleaseServiceImpl @Autowired constructor() : AtomReleaseServ params = arrayOf(TASK_JSON_NAME) ) } - if (null == taskJsonStr || !JsonSchemaUtil.validateJson(taskJsonStr)) { + if ((null == taskJsonStr) || !JsonSchemaUtil.validateJson(taskJsonStr)) { throw ErrorCodeException( errorCode = StoreMessageCode.USER_REPOSITORY_PULL_TASK_JSON_FILE_FAIL, params = arrayOf(branch ?: MASTER, TASK_JSON_NAME) diff --git a/src/backend/ci/core/store/biz-store/src/main/kotlin/com/tencent/devops/store/atom/service/impl/OpAtomServiceImpl.kt b/src/backend/ci/core/store/biz-store/src/main/kotlin/com/tencent/devops/store/atom/service/impl/OpAtomServiceImpl.kt index e8581e9554a..c2a8f3946c1 100644 --- a/src/backend/ci/core/store/biz-store/src/main/kotlin/com/tencent/devops/store/atom/service/impl/OpAtomServiceImpl.kt +++ b/src/backend/ci/core/store/biz-store/src/main/kotlin/com/tencent/devops/store/atom/service/impl/OpAtomServiceImpl.kt @@ -394,7 +394,7 @@ class OpAtomServiceImpl @Autowired constructor( val taskJsonFile = File("$atomPath$fileSeparator$TASK_JSON_NAME") if (!taskJsonFile.exists()) { return I18nUtil.generateResponseDataObject( - messageCode = StoreMessageCode.USER_ATOM_CONF_INVALID, + messageCode = StoreMessageCode.ATOM_PACKAGE_FILE_NOT_FOUND, params = arrayOf(TASK_JSON_NAME), language = I18nUtil.getLanguage(userId) ) diff --git a/support-files/i18n/store/message_en_US.properties b/support-files/i18n/store/message_en_US.properties index fc224604fa0..3138ee819d0 100644 --- a/support-files/i18n/store/message_en_US.properties +++ b/support-files/i18n/store/message_en_US.properties @@ -39,6 +39,8 @@ 2120039=Failed to get environment variable information related to atom development language 2120040=store: Atom configuration file [task.json] config format is incorrect.{0} 2120041=store:the configuration file [task.json] target of the java atom configuration file is incorrect, and the target command configuration of the java atom needs to start with java +2120042=store: pull file[{0}]failed,fail cause:{1} +2120043=atom file [{0}] not exist,please check that the file is located in the correct path 2120201=store: the release of {1} version of template {0} is not over. Please try again later. 2120202=store: template release process status change order is incorrect 2120203=store: the visible range of the template is not within the visible range of the atom {0}. If necessary, please contact the publisher of the atom. diff --git a/support-files/i18n/store/message_zh_CN.properties b/support-files/i18n/store/message_zh_CN.properties index d5b0acff5df..142f636c09c 100644 --- a/support-files/i18n/store/message_zh_CN.properties +++ b/support-files/i18n/store/message_zh_CN.properties @@ -39,6 +39,8 @@ 2120039=获取插件开发语言相关的环境变量信息失败 2120040=研发商店:插件配置文件[task.json]config配置格式不正确,{0} 2120041=研发商店:java插件配置文件[task.json]target配置不正确,java插件的target命令配置需要以java开头 +2120042=研发商店: 拉取文件[{0}]失败,失败原因:{1} +2120043=插件包文件[{0}]不存在,请检查文件所在路径是否正确 2120201=研发商店: 模板{0}的{1}版本发布未结束,请稍后再试 2120202=研发商店: 模板发布流程状态变更顺序不正确 2120203=研发商店: 模板的可见范围不在插件{0}的可见范围之内,如有需要请联系插件的发布者 From b10cfdcb724eb6983d37f0c191c04d5d2f94dc2d Mon Sep 17 00:00:00 2001 From: v_yjjiaoyu <1981190393@qq.com> Date: Thu, 6 Jun 2024 11:26:58 +0800 Subject: [PATCH 015/856] =?UTF-8?q?feat:=20=E9=A1=B9=E7=9B=AE=E6=88=90?= =?UTF-8?q?=E5=91=98=E7=AE=A1=E7=90=86=20#9620=20#=20Reviewed,=20transacti?= =?UTF-8?q?on=20id:=209378?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../permission-manage/group-table.vue | 437 ++++++++++++ .../children/permission-manage/manage-all.vue | 674 +++++++++--------- .../children/permission-manage/time-limit.vue | 127 ++++ 3 files changed, 888 insertions(+), 350 deletions(-) create mode 100644 src/frontend/devops-manage/src/components/user-group/components/children/permission-manage/group-table.vue create mode 100644 src/frontend/devops-manage/src/components/user-group/components/children/permission-manage/time-limit.vue diff --git a/src/frontend/devops-manage/src/components/user-group/components/children/permission-manage/group-table.vue b/src/frontend/devops-manage/src/components/user-group/components/children/permission-manage/group-table.vue new file mode 100644 index 00000000000..edf430237a0 --- /dev/null +++ b/src/frontend/devops-manage/src/components/user-group/components/children/permission-manage/group-table.vue @@ -0,0 +1,437 @@ + + + + + diff --git a/src/frontend/devops-manage/src/components/user-group/components/children/permission-manage/manage-all.vue b/src/frontend/devops-manage/src/components/user-group/components/children/permission-manage/manage-all.vue index b32711e1c59..b5a1bfe041e 100644 --- a/src/frontend/devops-manage/src/components/user-group/components/children/permission-manage/manage-all.vue +++ b/src/frontend/devops-manage/src/components/user-group/components/children/permission-manage/manage-all.vue @@ -37,170 +37,42 @@ 批量移交 批量移出 -
-

项目级用户组

-
- - - - - - -
+
+
-
-

资源级用户组

-
-

- 流水线-流水线组 - 3 -

- -
- - - - - - - - - - -
-
-
-
-

- 流水线-流水线组 - 3 +

+ +

+ 由于该用户仍有部分授权未移交,未能自动移出项目;如有需要,可前往「 + + 授权管理 + + 」处理

- -
- - - - - - - - - - -
-
-
+
- - diff --git a/src/frontend/devops-manage/src/components/user-group/components/children/permission-manage/time-limit.vue b/src/frontend/devops-manage/src/components/user-group/components/children/permission-manage/time-limit.vue new file mode 100644 index 00000000000..07cfb35dad1 --- /dev/null +++ b/src/frontend/devops-manage/src/components/user-group/components/children/permission-manage/time-limit.vue @@ -0,0 +1,127 @@ + + + + + From 040884e5f0434edd04efc1c778cc0eca3c2865b9 Mon Sep 17 00:00:00 2001 From: lockiechen Date: Tue, 11 Jun 2024 10:48:39 +0800 Subject: [PATCH 016/856] feat: update lerna +yarn workspace to pnpm issue #8125 --- src/frontend/bk-permission/dist/main.css | 1 - src/frontend/bk-permission/dist/main.js | 7 ----- .../bk-pipeline/dist/bk-pipeline.min.js | 2 -- src/frontend/bk-pipeline/package.json | 1 + src/frontend/bk-pipeline/webpack.config.js | 12 ++++++++- src/frontend/devops-manage/package.json | 4 +-- src/frontend/devops-nav/package.json | 2 +- src/frontend/devops-pipeline/package.json | 2 +- src/frontend/pnpm-lock.yaml | 27 ++++++------------- 9 files changed, 24 insertions(+), 34 deletions(-) delete mode 100644 src/frontend/bk-permission/dist/main.css delete mode 100644 src/frontend/bk-permission/dist/main.js delete mode 100644 src/frontend/bk-pipeline/dist/bk-pipeline.min.js diff --git a/src/frontend/bk-permission/dist/main.css b/src/frontend/bk-permission/dist/main.css deleted file mode 100644 index cfc7c071791..00000000000 --- a/src/frontend/bk-permission/dist/main.css +++ /dev/null @@ -1 +0,0 @@ -.no-enable-permission[data-v-34d87135]{height:100%}.content-wrapper[data-v-34d87135]{-webkit-box-align:center;-ms-flex-align:center;-webkit-box-orient:vertical;-webkit-box-direction:normal;align-items:center;background-color:#fff;-webkit-box-shadow:0 2px 2px 0 #00000026;box-shadow:0 2px 2px 0 #00000026;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;font-size:14px;height:100%;padding-top:10%;text-align:center;width:100%}[data-v-34d87135] .bk-exception-img{height:240px}.mt10[data-v-34d87135]{margin-top:10px}.apply-form[data-v-cf69882c]{width:98%}[data-v-cf69882c] .bk-dialog-header{text-align:left!important}.deadline-wrapper[data-v-cf69882c]{display:-webkit-box;display:-ms-flexbox;display:flex}.deadline-btn[data-v-cf69882c]{min-width:100px}.custom-time-select[data-v-cf69882c]{width:110px}.expired[data-v-cf69882c]{padding-right:10px}.new-expired[data-v-cf69882c]{padding-left:10px}.arrows-icon[data-v-cf69882c]{height:12px;width:12px}.btn[data-v-a13c2f58]{margin-right:5px}.group-name[data-v-a13c2f58]{color:#979ba5;font-size:12px;margin-left:10px}.status-content[data-v-a13c2f58]{-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-ms-flexbox;display:flex}.status-icon[data-v-a13c2f58]{height:16px;margin-right:5px;width:16px}.detail-content[data-v-a13c2f58]{padding:20px}.detail-content .title[data-v-a13c2f58]{color:#313238;font-size:14px;margin-left:14px}.detail-content .title[data-v-a13c2f58]:before{background:#699df4;border-radius:1px;content:"";height:16px;left:20px;position:absolute;top:22px;width:4px}.detail-content .content[data-v-a13c2f58]{margin-top:15px}.detail-content .permission-item[data-v-a13c2f58]{cursor:default!important;margin-bottom:10px;min-width:150px}.detail-content .is-disabled .bk-checkbox-text[data-v-a13c2f58]{color:#d6d7d7!important}.detail-content .is-checked .bk-checkbox[data-v-a13c2f58]{background-color:#c2daff!important;border-color:#c2daff!important}.detail-content .is-checked .bk-checkbox-text[data-v-a13c2f58]{color:#63656e!important}.group-manage[data-v-0ce31da9]{-webkit-box-flex:1;-ms-flex:1;flex:1}.content-wrapper[data-v-0ce31da9]{-webkit-box-align:center;-ms-flex-align:center;-webkit-box-orient:vertical;-webkit-box-direction:normal;align-items:center;background-color:#fff;-webkit-box-shadow:0 2px 2px 0 #00000026;box-shadow:0 2px 2px 0 #00000026;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;font-size:14px;height:100%;padding-top:10%;text-align:center;width:100%}.btn[data-v-0ce31da9]{margin-top:32px}[data-v-0ce31da9] .bk-exception-img{height:240px}[data-v-0ce31da9] .bk-exception-title{color:#313238;font-size:24px;margin-top:18px}.bk-scroll-load-list[data-v-fce37e0c]{height:100%;overflow:auto}.group-aside[data-v-46795eef]{background-color:#fff;border-right:1px solid #dde0e6;height:100%;min-width:240px;width:240px}.group-list[data-v-46795eef]{height:auto;max-height:calc(100% - 130px);overflow-y:auto}.group-list[data-v-46795eef]::-webkit-scrollbar-thumb{background-color:#c4c6cc!important;border-radius:5px!important}.group-list[data-v-46795eef]::-webkit-scrollbar-thumb:hover{background-color:#979ba5!important}.group-list[data-v-46795eef]::-webkit-scrollbar{height:4px!important;width:4px!important}.group-title[data-v-46795eef]{display:inline-block;font-size:14px;font-weight:700;line-height:50px;margin-bottom:8px;padding-left:24px;width:100%}.group-item[data-v-46795eef]{-webkit-box-align:center;-ms-flex-align:center;align-items:center;color:#63656e;cursor:pointer;display:-webkit-box;display:-ms-flexbox;display:flex;font-size:14px;height:40px;line-height:40px;padding:0 12px;width:100%}.group-item[data-v-46795eef]:hover{background-color:#eaebf0}.group-active[data-v-46795eef]{background-color:#e1ecff!important;color:#3a84ff!important}.group-active .group-num[data-v-46795eef],.group-active .user-num[data-v-46795eef]{background-color:#a3c5fd;color:#fff}.group-active .group-icon[data-v-46795eef]{-webkit-filter:invert(100%) sepia(0) saturate(1%) hue-rotate(151deg) brightness(104%) contrast(101%);filter:invert(100%) sepia(0) saturate(1%) hue-rotate(151deg) brightness(104%) contrast(101%)}.group-num[data-v-46795eef],.user-num[data-v-46795eef]{background-color:#a3c5fd;color:#fff}.group-name[data-v-46795eef]{-webkit-box-flex:1;display:inline-block;-ms-flex:1;flex:1;max-width:130px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.group-num[data-v-46795eef],.user-num[data-v-46795eef]{-webkit-box-align:center;-ms-flex-align:center;-webkit-box-pack:space-evenly;-ms-flex-pack:space-evenly;align-items:center;background:#f0f1f5;border-radius:2px;color:#c4c6cc;display:-webkit-box;display:-ms-flexbox;display:flex;font-size:12px;height:16px;justify-content:space-evenly;line-height:16px;margin-right:3px;text-align:center;width:40px}.more-icon[data-v-46795eef]{border-radius:50%;color:#63656e;padding:1px}.more-icon[data-v-46795eef]:hover{background-color:#dcdee5;color:#3a84ff!important}.group-icon[data-v-46795eef]{-webkit-filter:invert(89%) sepia(8%) saturate(136%) hue-rotate(187deg) brightness(91%) contrast(86%);filter:invert(89%) sepia(8%) saturate(136%) hue-rotate(187deg) brightness(91%) contrast(86%);height:12px;width:12px}.line-split[data-v-46795eef]{background:#ccc;height:1px;margin:10px auto;width:80%}.add-group-btn[data-v-46795eef]{-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-ms-flexbox;display:flex}.add-icon[data-v-46795eef]{margin-right:10px}.group-more-option[data-v-46795eef]{-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-ms-flexbox;display:flex;height:18px}.close-btn[data-v-46795eef]{margin-bottom:20px;text-align:center}.small-size[data-v-46795eef]{scale:.9}.close-manage-dialog .title-icon[data-v-46795eef]{color:#ff9c01;font-size:42px;margin-bottom:15px}.close-manage-dialog .close-title[data-v-46795eef]{margin-top:10px;white-space:normal!important}.close-manage-dialog .bk-dialog-header[data-v-46795eef]{padding:15px 0}.close-manage-dialog .bk-dialog-title[data-v-46795eef]{height:26px!important;overflow:visible!important;overflow:initial!important}.close-manage-dialog .confirm-close[data-v-46795eef]{margin:15px 0 30px}.close-manage-dialog .close-tips[data-v-46795eef]{background:#f5f6fa;padding:20px}.close-manage-dialog .option-btns[data-v-46795eef]{margin-top:20px;text-align:center}.close-manage-dialog .option-btns .close-btn[data-v-46795eef]{margin-bottom:0!important;margin-right:10px}.close-manage-dialog .option-btns .btn[data-v-46795eef]{width:88px}.group-more-option .bk-tooltip-ref{-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-ms-flexbox;display:flex;height:18px}.permission-manage[data-v-8efa30a2]{-webkit-box-shadow:0 2px 2px 0 rgba(0,0,0,.149);box-shadow:0 2px 2px 0 rgba(0,0,0,.149);display:-webkit-box;display:-ms-flexbox;display:flex;height:100%}.permission-wrapper[data-v-05c80676]{height:100%;overflow:auto;width:100%}.bk-permission-cursor-element{background:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTIiIGhlaWdodD0iMTYiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZmlsbD0iIzYzNjU2RSIgZD0iTTEwLjg3NSA4aC41OGMuMzAxIDAgLjU0NS4yNS41NDUuNTZ2Ni44OGMwIC4zMS0uMjQ0LjU2LS41NDUuNTZILjU0NUEuNTUyLjU1MiAwIDAgMSAwIDE1LjQ0VjguNTZDMCA4LjI1LjI0NCA4IC41NDUgOCIvPjxwYXRoIGZpbGw9IiM2MzY1NkUiIGQ9Ik0xLjcwNSA4VjIuMjRDMS43MDUgMS4wMDMgMi42OCAwIDMuODg2IDBoNC4yMjhjMS4yMDUgMCAyLjE4MSAxLjAwMyAyLjE4MSAyLjI0VjZIOS4wNjhWMi4yNGMwLS41NC0uNDI4LS45OC0uOTU0LS45OEgzLjg4NmEuOTY4Ljk2OCAwIDAgMC0uOTU0Ljk4VjhoNy45NDNaIj48YW5pbWF0ZVRyYW5zZm9ybSBhdHRyaWJ1dGVOYW1lPSJ0cmFuc2Zvcm0iIGF0dHJpYnV0ZVR5cGU9IlhNTCIgdHlwZT0idHJhbnNsYXRlIiB2YWx1ZXM9IjAgMjsgMCAwOyAwIDAiIGtleVRpbWVzPSIwOyAuNTsgMSIgZHVyPSIxcyIgcmVwZWF0Q291bnQ9ImluZGVmaW5pdGUiLz48L3BhdGg+PC9zdmc+);height:16px;width:12px}.bk-permission-disable .bk-button,.bk-permission-disable .bk-button:hover,.bk-permission-disable.bk-button,.bk-permission-disable.bk-button:hover{background:#fff!important;border-color:#dcdee5!important;color:#c4c6cc!important}.bk-permission-disable .bk-button.bk-button-primary,.bk-permission-disable .bk-button.bk-button-primary:hover,.bk-permission-disable .bk-button.bk-primary,.bk-permission-disable .bk-button.bk-primary:hover,.bk-permission-disable.bk-button.bk-button-primary,.bk-permission-disable.bk-button.bk-button-primary:hover,.bk-permission-disable.bk-button.bk-primary,.bk-permission-disable.bk-button.bk-primary:hover{background:#dcdee5!important;border-color:#dcdee5!important;color:#fff!important}.bk-permission-disable .bk-button.bk-button-text,.bk-permission-disable .bk-button.bk-button-text:hover,.bk-permission-disable.bk-button.bk-button-text,.bk-permission-disable.bk-button.bk-button-text:hover{background:#0000!important;border-color:#0000!important;color:#dcdee5!important}.bk-permission-disable,.bk-permission-disable:hover{color:#dcdee5!important}.bk-permission-tooltips{position:relative;white-space:nowrap}.bk-permission-tooltips[tooltips]:before{border-color:#000 #0000 #0000;border-style:solid;border-width:4px 6px 0;content:"";left:50%;opacity:0;position:absolute;top:-5px;-webkit-transform:translateX(-50%);transform:translateX(-50%);z-index:99}.bk-permission-tooltips[tooltips]:after{background-color:#000c;border-radius:5px;color:#fff;content:attr(tooltips);font-size:12px;left:50%;line-height:18px;opacity:0;padding:7px 14px;pointer-events:none;position:absolute;text-align:center;top:-5px;-webkit-transform:translateX(-50%) translateY(-100%);transform:translateX(-50%) translateY(-100%);z-index:9999}.bk-permission-tooltips[tooltips]:hover:after,.bk-permission-tooltips[tooltips]:hover:before{opacity:1}.permission-dialog .bk-dialog-sub-header{padding:0!important;text-align:center}.permission-exception .bk-exception-text{margin:-5px 0 25px}.permission-table{margin-bottom:20px;margin-left:25px;width:590px!important}.permission-table.bk-table:before{background:#dfe0e5}.permission-table .bk-table-empty-block{width:auto}.permission-table .cell{width:90%}.permission-footer{-webkit-box-align:center;-ms-flex-align:center;-webkit-box-pack:end;-ms-flex-pack:end;align-items:center;background:#fafbfd;-webkit-box-shadow:0 -1px 0 0 #dcdee5;box-shadow:0 -1px 0 0 #dcdee5;display:-webkit-box;display:-ms-flexbox;display:flex;height:48px;justify-content:flex-end}.permission-confirm{margin-right:5px}.permission-cancel{margin-right:25px}.permission-list{background:#3a84ff;border-radius:2px;height:32px;margin-right:5px;width:94px}.permission-list .bk-dropdown-trigger{-webkit-box-align:center;-ms-flex-align:center;-webkit-box-pack:center;-ms-flex-pack:center;align-items:center;color:#fff;cursor:pointer;display:-webkit-box;display:-ms-flexbox;display:flex;font-size:14px!important;height:100%;justify-content:center;line-height:30px;padding:0 14px}.permission-list .bk-dropdown-list{width:auto}.permission-list .bk-dropdown-list>li{cursor:pointer;font-size:14px!important;font-weight:400;line-height:32px;padding:0 14px}.permission-list .bk-dropdown-list>li:hover{background:#f5f7fa}.permission-list .icon-angle-down{font-size:20px}.permission-refresh-dialog{-webkit-box-pack:center;-ms-flex-pack:center;display:-webkit-box;display:-ms-flexbox;display:flex;justify-content:center;margin:25px}.permission-dialog-v3 .bk-modal-header{height:30px}.permission-dialog-v3 .bk-modal-content{padding:0!important}.permission-dialog-v3 .bk-exception-part{margin-bottom:20px}.permission-dialog-v3.bk-modal-wrapper.bk-info-wrapper .bk-modal-content .bk-info-sub-title{margin-bottom:0}.permission-dialog-v3 .permission-table-wrapper{margin-bottom:20px;margin-left:25px;width:590px!important}.mr10{margin-right:10px}.mr20{margin-right:20px}.mr25{margin-right:25px}.icon-angle-down-v3{font-size:20px;margin:0 -7px 0 2px} \ No newline at end of file diff --git a/src/frontend/bk-permission/dist/main.js b/src/frontend/bk-permission/dist/main.js deleted file mode 100644 index 5fb79bf429a..00000000000 --- a/src/frontend/bk-permission/dist/main.js +++ /dev/null @@ -1,7 +0,0 @@ -(function(kt,Wt){typeof exports=="object"&&typeof module=="object"?module.exports=Wt(require("vue")):typeof define=="function"&&define.amd?define(["vue"],Wt):typeof exports=="object"?exports.MyLibrary=Wt(require("vue")):kt.MyLibrary=Wt(kt.vue)})(typeof self<"u"?self:this,function(ue){return function(){var kt={6112:function(s,c,t){"use strict";t.r(c)},8310:function(s,c,t){"use strict";t.r(c)},1193:function(s,c,t){"use strict";var n=t(5264);Object.defineProperty(c,"__esModule",{value:!0}),c.default=void 0,t(5488),t(5539);var e=n(t(5455)),r=e.default.create({validateStatus:function(l){return l>400&&console.warn("HTTP \u8BF7\u6C42\u51FA\u9519 status: ".concat(l)),l>=200&&l<=503},withCredentials:!0});function o(i){return Promise.reject(i)}r.interceptors.response.use(function(i){var l=i.data,u=l.status,f=l.message,d=l.code,v=l.result,p=i.status;if(p===503){var h={status:p,message:f||"service is in deployment"};return Promise.reject(h)}if(p===403){var g={httpStatus:p,code:p,message:f||"Permission Deny"};return Promise.reject(g)}if(typeof u<"u"&&u!==0||typeof v<"u"&&!v){var y={httpStatus:p,message:f,code:d||u};return Promise.reject(y)}if(p===400){var m={httpStatus:p,message:f||"service is abnormal"};return Promise.reject(m)}return i.data},o);var a=c.default=r},3725:function(s,c,t){"use strict";t(3324),t(9879),t(2731),t(7861);var n=t(5264);Object.defineProperty(c,"__esModule",{value:!0}),c.AuthorityDirectiveV2=E,c.AuthorityDirectiveV3=O,c.default=void 0;var e=n(t(8437));t(7563);var r=n(t(619)),o=n(t(4763));t(2874),t(7100),t(2859),t(2039),t(1924),t(5488),t(5539),t(707),t(7154),t(7608),t(8310);var a=n(t(1193)),i=t(6824),l=["projectId"];function u(T,x){var N=Object.keys(T);if(Object.getOwnPropertySymbols){var I=Object.getOwnPropertySymbols(T);x&&(I=I.filter(function(M){return Object.getOwnPropertyDescriptor(T,M).enumerable})),N.push.apply(N,I)}return N}function f(T){for(var x=1;x1&&arguments[1]!==void 0?arguments[1]:"";return d=T,class{static install(N){N.directive("perm",{bind(I,M,j){j.key||(j.key=new Date().getTime())},inserted(I,M,j){var C=M.value.disablePermissionApi;C?p(I,M.value,j):y(I,M.value,j,x)},update(I,M,j){var C=M.value,Y=M.oldValue;C.hasPermission!==Y.hasPermission&&p(I,M.value,j)},unbind(I,M,j){h(I,j)}})}}}function O(T){var x=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"";return d=T,class{static install(N){N.directive("perm",{created(I,M,j){j.key||(j.key=new Date().getTime())},mounted(I,M,j){var C=M.value.disablePermissionApi;C?p(I,M.value,j):y(I,M.value,j,x)},updated(I,M,j){var C=M.value,Y=M.oldValue;C.hasPermission!==Y.hasPermission&&p(I,M.value,j)},beforeUnmount(I,M,j){h(I,j)}})}}}var S=c.default=i.version===2?E:O},356:function(s,c,t){"use strict";var n=t(5264);Object.defineProperty(c,"__esModule",{value:!0}),c.handleNoPermissionV3=c.handleNoPermissionV2=c.default=void 0,t(9879),t(2039),t(5488),t(6112);var e=n(t(1193)),r=t(6824),o=t(8052),a=c.handleNoPermissionV2=function(f,d,v){var p=arguments.length>3&&arguments[3]!==void 0?arguments[3]:void 0,h=arguments.length>4&&arguments[4]!==void 0?arguments[4]:"",g={},y={},m=[{label:(0,o.t)("\u9700\u8981\u7533\u8BF7\u7684\u6743\u9650"),prop:"actionName"},{label:(0,o.t)("\u5173\u8054\u7684\u8D44\u6E90\u7C7B\u578B"),prop:"resourceTypeName"},{label:(0,o.t)("\u5173\u8054\u7684\u8D44\u6E90\u5B9E\u4F8B"),prop:"resourceName"}],E=function(){return v(f.bkException,{class:"permission-exception",props:{type:"403",scene:"part"}},(0,o.t)("\u6CA1\u6709\u64CD\u4F5C\u6743\u9650"))},O=function(I){return v(f.bkTable,{class:"permission-table",props:{outerBorder:!1,data:[I]}},m.filter(function(M){return I[M.prop]}).map(function(M){return v(f.bkTableColumn,{props:{showOverflowTooltip:!0,label:M.label,prop:M.prop}})}))},S=function(I){return v("section",{class:"permission-footer"},[I.auth?v(f.bkDropdownMenu,{class:"permission-list",scopedSlots:{"dropdown-content"(){return v("ui",{class:"bk-dropdown-list"},I.groupInfoList.map(function(M){return v("li",{on:{click(){window.open(encodeURI(M.url),"_blank"),T()}}},[M.groupName])}))},"dropdown-trigger"(){return[v("span",{class:"bk-dropdown-list permission-confirm"},[(0,o.t)("\u53BB\u7533\u8BF7")]),v("i",{class:"bk-icon icon-angle-down"})]}}}):v(f.bkButton,{class:"permission-confirm",props:{theme:"primary"},on:{click(){window.open(encodeURI(I.groupInfoList[0].url),"_blank"),T()}}},[(0,o.t)("\u53BB\u7533\u8BF7")]),v(f.bkButton,{class:"permission-cancel",on:{click(){var M,j;(M=g)===null||M===void 0||(j=M.close)===null||j===void 0||j.call(M)}}},[(0,o.t)("\u53D6\u6D88")])])},T=function(){var I,M;(I=g)===null||I===void 0||(M=I.close)===null||M===void 0||M.call(I),y=f.bkInfoBox({title:(0,o.t)("\u6743\u9650\u7533\u8BF7\u5355\u5DF2\u63D0\u4EA4"),subHeader:v("section",[(0,o.t)("\u8BF7\u5728\u6743\u9650\u7BA1\u7406\u9875\u586B\u5199\u6743\u9650\u7533\u8BF7\u5355\uFF0C\u63D0\u4EA4\u5B8C\u6210\u540E\u518D\u5237\u65B0\u8BE5\u9875\u9762"),v("section",{class:"permission-refresh-dialog"},[v(f.bkButton,{class:"mr20",props:{theme:"primary"},on:{click(){location.reload()}}},[(0,o.t)("\u5237\u65B0\u9875\u9762")]),v(f.bkButton,{on:{click(){var j,C;(j=(C=y).close)===null||j===void 0||j.call(C)}}},[(0,o.t)("\u5173\u95ED")])])]),extCls:"permission-dialog",width:500,showFooter:!1})},x=function(I){g=f.bkInfoBox({subHeader:v("section",[E(),O(I),S(I)]),extCls:"permission-dialog",width:640,showFooter:!1})};p?x(p):e.default.get("".concat(h,"/ms/auth/api/user/auth/apply/getRedirectInformation"),{params:d}).then(function(){var N=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},I=N.data?N.data:N;x(I)})},i=c.handleNoPermissionV3=function(f,d,v,p){var h=arguments.length>4&&arguments[4]!==void 0?arguments[4]:"",g={},y={},m=[{label:(0,o.t)("\u9700\u8981\u7533\u8BF7\u7684\u6743\u9650"),prop:"actionName"},{label:(0,o.t)("\u5173\u8054\u7684\u8D44\u6E90\u7C7B\u578B"),prop:"resourceTypeName"},{label:(0,o.t)("\u5173\u8054\u7684\u8D44\u6E90\u5B9E\u4F8B"),prop:"resourceName"}],E=function(){return v(f.Exception,{type:"403",scene:"part"},(0,o.t)("\u6CA1\u6709\u64CD\u4F5C\u6743\u9650"))},O=function(I){return v("section",{class:"permission-table-wrapper"},v(f.Table,{border:"none",data:[I]},m.filter(function(M){return I[M.prop]}).map(function(M){return v(f.TableColumn,{showOverflowTooltip:!0,label:M.label,prop:M.prop})})))},S=function(I){return v("section",{class:"permission-footer"},[I.auth?v(f.Dropdown,{},{content(){return v(f.Dropdown.DropdownMenu,{},I.groupInfoList.map(function(M){return v(f.Dropdown.DropdownItem,{onClick(){window.open(encodeURI(M.url),"_blank"),T()}},[M.groupName])}))},default(){return[v(f.Button,{theme:"primary",class:"mr10"},[(0,o.t)("\u53BB\u7533\u8BF7"),v(f.AngleDown,{class:"icon-angle-down-v3"})])]}}):v(f.Button,{class:"mr10",theme:"primary",onClick(){window.open(encodeURI(I.groupInfoList[0].url),"_blank"),T()}},[(0,o.t)("\u53BB\u7533\u8BF7")]),v(f.Button,{class:"mr25",onClick(){var M,j;(M=g)===null||M===void 0||(j=M.hide)===null||j===void 0||j.call(M)}},[(0,o.t)("\u53D6\u6D88")])])},T=function(){var I,M;(I=g)===null||I===void 0||(M=I.hide)===null||M===void 0||M.call(I),y=f.InfoBox({title:(0,o.t)("\u6743\u9650\u7533\u8BF7\u5355\u5DF2\u63D0\u4EA4"),subTitle:v("section",[(0,o.t)("\u8BF7\u5728\u6743\u9650\u7BA1\u7406\u9875\u586B\u5199\u6743\u9650\u7533\u8BF7\u5355\uFF0C\u63D0\u4EA4\u5B8C\u6210\u540E\u518D\u5237\u65B0\u8BE5\u9875\u9762"),v("section",{class:"permission-refresh-dialog"},[v(f.Button,{class:"mr20",theme:"primary",onClick(){location.reload()}},[(0,o.t)("\u5237\u65B0\u9875\u9762")]),v(f.Button,{onClick(){var j,C;(j=(C=y).hide)===null||j===void 0||j.call(C)}},[(0,o.t)("\u5173\u95ED")])])]),extCls:"permission-dialog",width:500,dialogType:"show"})},x=function(I){g=f.InfoBox({title:"",subTitle:v("section",[E(),O(I),S(I)]),extCls:"permission-dialog-v3",width:640,dialogType:"show"})};p?x(p):e.default.get("".concat(h,"/ms/auth/api/user/auth/apply/getRedirectInformation"),{params:d}).then(function(){var N=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},I=N.data?N.data:N;x(I)})},l=c.default=r.version===2?a:i},3433:function(s,c,t){"use strict";t(2859),t(5488),t(7331),t(7608);var n=t(5264);Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"AuthorityDirectiveV3",{enumerable:!0,get:function(){return r.AuthorityDirectiveV3}}),Object.defineProperty(c,"BkPermission",{enumerable:!0,get:function(){return e.default}}),Object.defineProperty(c,"PermissionDirective",{enumerable:!0,get:function(){return r.default}}),Object.defineProperty(c,"handleNoPermission",{enumerable:!0,get:function(){return o.default}}),Object.defineProperty(c,"handleNoPermissionV3",{enumerable:!0,get:function(){return o.handleNoPermissionV3}});var e=n(t(350)),r=l(t(3725)),o=l(t(356)),a=t(8052);function i(f){if(typeof WeakMap!="function")return null;var d=new WeakMap,v=new WeakMap;return(i=function(h){return h?v:d})(f)}function l(f,d){if(!d&&f&&f.__esModule)return f;if(f===null||typeof f!="object"&&typeof f!="function")return{default:f};var v=i(d);if(v&&v.has(f))return v.get(f);var p={__proto__:null},h=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var g in f)if(g!=="default"&&{}.hasOwnProperty.call(f,g)){var y=h?Object.getOwnPropertyDescriptor(f,g):null;y&&(y.get||y.set)?Object.defineProperty(p,g,y):p[g]=f[g]}return p.default=f,v&&v.set(f,p),p}function u(f){var d=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};(0,a.loadI18nMessages)(d.i18n),f.component("bk-permission",e.default)}e.default.install=u},8052:function(s,c,t){"use strict";t(3324),t(9879),t(2731),t(7861);var n=t(5264);Object.defineProperty(c,"__esModule",{value:!0}),c.loadI18nMessages=d,c.localeMixins=void 0,c.t=v,t(1561),t(2859),t(9995),t(5488),t(7608);var e=n(t(619)),r=n(t(3079)),o=n(t(2380));function a(h,g){var y=Object.keys(h);if(Object.getOwnPropertySymbols){var m=Object.getOwnPropertySymbols(h);g&&(m=m.filter(function(E){return Object.getOwnPropertyDescriptor(h,E).enumerable})),y.push.apply(y,m)}return y}function i(h){for(var g=1;g1?y-1:0),E=1;E"u"&&Q.toLowerCase()==="content-type"?delete S[Q]:M.setRequestHeader(Q,F)}),n.isUndefined(g.withCredentials)||(M.withCredentials=!!g.withCredentials),T&&T!=="json"&&(M.responseType=g.responseType),typeof g.onDownloadProgress=="function"&&M.addEventListener("progress",g.onDownloadProgress),typeof g.onUploadProgress=="function"&&M.upload&&M.upload.addEventListener("progress",g.onUploadProgress),(g.cancelToken||g.signal)&&(N=function(F){!M||(E(!F||F.type?new d(null,g,req):F),M.abort(),M=null)},g.cancelToken&&g.cancelToken.subscribe(N),g.signal&&(g.signal.aborted?N():g.signal.addEventListener("abort",N))),!O&&O!==!1&&O!==0&&O!==""&&(O=null);var B=v(Y);if(B&&p.protocols.indexOf(B)===-1){E(new f("Unsupported protocol "+B+":",f.ERR_BAD_REQUEST,g));return}M.send(O)})}},7281:function(s,c,t){"use strict";t(2859),t(5488),t(5539),t(7608);var n=t(6733),e=t(7190),r=t(7089),o=t(6713),a=t(5106),i=t(2612);function l(f){var d=new r(f),v=e(r.prototype.request,d);return n.extend(v,r.prototype,d),n.extend(v,d),v.create=function(h){return l(o(f,h))},v}var u=l(a);u.Axios=r,u.CanceledError=t(7757),u.CancelToken=t(2293),u.isCancel=t(1618),u.VERSION=t(6595).version,u.toFormData=t(7354),u.AxiosError=t(3991),u.Cancel=u.CanceledError,u.all=function(d){return Promise.all(d)},u.spread=t(6846),u.isAxiosError=t(1713),u.formToJSON=function(f){return i(n.isHTMLForm(f)?new FormData(f):f)},s.exports=u,s.exports.default=u},2293:function(s,c,t){"use strict";t(9631),t(889),t(5488),t(5539);var n=t(7757);function e(r){if(typeof r!="function")throw new TypeError("executor must be a function.");var o;this.promise=new Promise(function(l){o=l});var a=this;this.promise.then(function(i){if(!!a._listeners){for(var l=a._listeners.length;l-- >0;)a._listeners[l](i);a._listeners=null}}),this.promise.then=function(i){var l,u=new Promise(function(f){a.subscribe(f),l=f}).then(i);return u.cancel=function(){a.unsubscribe(l)},u},r(function(l,u,f){a.reason||(a.reason=new n(l,u,f),o(a.reason))})}e.prototype.throwIfRequested=function(){if(this.reason)throw this.reason},e.prototype.subscribe=function(o){if(this.reason){o(this.reason);return}this._listeners?this._listeners.push(o):this._listeners=[o]},e.prototype.unsubscribe=function(o){if(!!this._listeners){var a=this._listeners.indexOf(o);a!==-1&&this._listeners.splice(a,1)}},e.source=function(){var o,a=new e(function(l){o=l});return{token:a,cancel:o}},s.exports=e},7757:function(s,c,t){"use strict";var n=t(3991),e=t(6733);function r(o,a,i){n.call(this,o??"canceled",n.ERR_CANCELED,a,i),this.name="CanceledError"}e.inherits(r,n,{__CANCEL__:!0}),s.exports=r},1618:function(s){"use strict";s.exports=function(t){return!!(t&&t.__CANCEL__)}},7089:function(s,c,t){"use strict";t(1561),t(5488),t(5539),t(7861);var n=t(6733),e=t(8036),r=t(2353),o=t(504),a=t(6713),i=t(5693),l=t(3619),u=l.validators;function f(d){this.defaults=d,this.interceptors={request:new r,response:new r}}f.prototype.request=function(v,p){typeof v=="string"?(p=p||{},p.url=v):p=v||{},p=a(this.defaults,p),p.method?p.method=p.method.toLowerCase():this.defaults.method?p.method=this.defaults.method.toLowerCase():p.method="get";var h=p.transitional;h!==void 0&&l.assertOptions(h,{silentJSONParsing:u.transitional(u.boolean),forcedJSONParsing:u.transitional(u.boolean),clarifyTimeoutError:u.transitional(u.boolean)},!1);var g=p.paramsSerializer;n.isFunction(g)&&(p.paramsSerializer={serialize:g});var y=[],m=!0;this.interceptors.request.forEach(function(M){typeof M.runWhen=="function"&&M.runWhen(p)===!1||(m=m&&M.synchronous,y.unshift(M.fulfilled,M.rejected))});var E=[];this.interceptors.response.forEach(function(M){E.push(M.fulfilled,M.rejected)});var O;if(!m){var S=[o,void 0];for(Array.prototype.unshift.apply(S,y),S=S.concat(E),O=Promise.resolve(p);S.length;)O=O.then(S.shift(),S.shift());return O}for(var T=p;y.length;){var x=y.shift(),N=y.shift();try{T=x(T)}catch(I){N(I);break}}try{O=o(T)}catch(I){return Promise.reject(I)}for(;E.length;)O=O.then(E.shift(),E.shift());return O},f.prototype.getUri=function(v){v=a(this.defaults,v);var p=i(v.baseURL,v.url);return e(p,v.params,v.paramsSerializer)},n.forEach(["delete","get","head","options"],function(v){f.prototype[v]=function(p,h){return this.request(a(h||{},{method:v,url:p,data:(h||{}).data}))}}),n.forEach(["post","put","patch"],function(v){function p(h){return function(y,m,E){return this.request(a(E||{},{method:v,headers:h?{"Content-Type":"multipart/form-data"}:{},url:y,data:m}))}}f.prototype[v]=p(),f.prototype[v+"Form"]=p(!0)}),s.exports=f},3991:function(s,c,t){"use strict";t(3324),t(5284),t(1924),t(5488);var n=t(6733);function e(a,i,l,u,f){Error.call(this),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack,this.message=a,this.name="AxiosError",i&&(this.code=i),l&&(this.config=l),u&&(this.request=u),f&&(this.response=f)}n.inherits(e,Error,{toJSON:function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:this.config,code:this.code,status:this.response&&this.response.status?this.response.status:null}}});var r=e.prototype,o={};["ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","ECONNABORTED","ETIMEDOUT","ERR_NETWORK","ERR_FR_TOO_MANY_REDIRECTS","ERR_DEPRECATED","ERR_BAD_RESPONSE","ERR_BAD_REQUEST","ERR_CANCELED","ERR_NOT_SUPPORT","ERR_INVALID_URL"].forEach(function(a){o[a]={value:a}}),Object.defineProperties(e,o),Object.defineProperty(r,"isAxiosError",{value:!0}),e.from=function(a,i,l,u,f,d){var v=Object.create(r);return n.toFlatObject(a,v,function(h){return h!==Error.prototype}),e.call(v,a.message,i,l,u,f),v.cause=a,v.name=a.name,d&&Object.assign(v,d),v},s.exports=e},2353:function(s,c,t){"use strict";t(5488),t(7861);var n=t(6733);function e(){this.handlers=[]}e.prototype.use=function(o,a,i){return this.handlers.push({fulfilled:o,rejected:a,synchronous:i?i.synchronous:!1,runWhen:i?i.runWhen:null}),this.handlers.length-1},e.prototype.eject=function(o){this.handlers[o]&&(this.handlers[o]=null)},e.prototype.clear=function(){this.handlers&&(this.handlers=[])},e.prototype.forEach=function(o){n.forEach(this.handlers,function(i){i!==null&&o(i)})},s.exports=e},5693:function(s,c,t){"use strict";var n=t(491),e=t(6046);s.exports=function(o,a){return o&&!n(a)?e(o,a):a}},504:function(s,c,t){"use strict";t(5488),t(5539),t(7861);var n=t(6733),e=t(5623),r=t(1618),o=t(5106),a=t(7757),i=t(2288);function l(u){if(u.cancelToken&&u.cancelToken.throwIfRequested(),u.signal&&u.signal.aborted)throw new a}s.exports=function(f){l(f),f.headers=f.headers||{},f.data=e.call(f,f.data,f.headers,null,f.transformRequest),i(f.headers,"Accept"),i(f.headers,"Content-Type"),f.headers=n.merge(f.headers.common||{},f.headers[f.method]||{},f.headers),n.forEach(["delete","get","head","post","put","patch","common"],function(p){delete f.headers[p]});var d=f.adapter||o.adapter;return d(f).then(function(p){return l(f),p.data=e.call(f,p.data,p.headers,p.status,f.transformResponse),p},function(p){return r(p)||(l(f),p&&p.response&&(p.response.data=e.call(f,p.response.data,p.response.headers,p.response.status,f.transformResponse))),Promise.reject(p)})}},6713:function(s,c,t){"use strict";t(1561),t(4683),t(5488),t(7861);var n=t(6733);s.exports=function(r,o){o=o||{};var a={};function i(p,h){return n.isPlainObject(p)&&n.isPlainObject(h)?n.merge(p,h):n.isEmptyObject(h)?n.merge({},p):n.isPlainObject(h)?n.merge({},h):n.isArray(h)?h.slice():h}function l(p){if(n.isUndefined(o[p])){if(!n.isUndefined(r[p]))return i(void 0,r[p])}else return i(r[p],o[p])}function u(p){if(!n.isUndefined(o[p]))return i(void 0,o[p])}function f(p){if(n.isUndefined(o[p])){if(!n.isUndefined(r[p]))return i(void 0,r[p])}else return i(void 0,o[p])}function d(p){if(p in o)return i(r[p],o[p]);if(p in r)return i(void 0,r[p])}var v={url:u,method:u,data:u,baseURL:f,transformRequest:f,transformResponse:f,paramsSerializer:f,timeout:f,timeoutMessage:f,withCredentials:f,withXSRFToken:f,adapter:f,responseType:f,xsrfCookieName:f,xsrfHeaderName:f,onUploadProgress:f,onDownloadProgress:f,decompress:f,maxContentLength:f,maxBodyLength:f,beforeRedirect:f,transport:f,httpAgent:f,httpsAgent:f,cancelToken:f,socketPath:f,responseEncoding:f,validateStatus:d};return n.forEach(Object.keys(r).concat(Object.keys(o)),function(h){var g=v[h]||l,y=g(h);n.isUndefined(y)&&g!==d||(a[h]=y)}),a}},456:function(s,c,t){"use strict";var n=t(3991);s.exports=function(r,o,a){var i=a.config.validateStatus;!a.status||!i||i(a.status)?r(a):o(new n("Request failed with status code "+a.status,[n.ERR_BAD_REQUEST,n.ERR_BAD_RESPONSE][Math.floor(a.status/100)-4],a.config,a.request,a))}},5623:function(s,c,t){"use strict";t(5488),t(7861);var n=t(6733),e=t(5106);s.exports=function(o,a,i,l){var u=this||e;return n.forEach(l,function(d){o=d.call(u,o,a,i)}),o}},5106:function(s,c,t){"use strict";t(9631),t(5488),t(6698),t(4719),t(7861);var n=t(6733),e=t(2288),r=t(3991),o=t(8666),a=t(7354),i=t(255),l=t(1571),u=t(2612),f={"Content-Type":"application/x-www-form-urlencoded"};function d(g,y){!n.isUndefined(g)&&n.isUndefined(g["Content-Type"])&&(g["Content-Type"]=y)}function v(){var g;return(typeof XMLHttpRequest<"u"||typeof process<"u"&&Object.prototype.toString.call(process)==="[object process]")&&(g=t(1838)),g}function p(g,y,m){if(n.isString(g))try{return(y||JSON.parse)(g),n.trim(g)}catch(E){if(E.name!=="SyntaxError")throw E}return(m||JSON.stringify)(g)}var h={transitional:o,adapter:v(),transformRequest:[function(y,m){e(m,"Accept"),e(m,"Content-Type");var E=m&&m["Content-Type"]||"",O=E.indexOf("application/json")>-1,S=n.isObject(y);S&&n.isHTMLForm(y)&&(y=new FormData(y));var T=n.isFormData(y);if(T)return O?JSON.stringify(u(y)):y;if(n.isArrayBuffer(y)||n.isBuffer(y)||n.isStream(y)||n.isFile(y)||n.isBlob(y))return y;if(n.isArrayBufferView(y))return y.buffer;if(n.isURLSearchParams(y))return d(m,"application/x-www-form-urlencoded;charset=utf-8"),y.toString();var x;if(S){if(E.indexOf("application/x-www-form-urlencoded")!==-1)return i(y,this.formSerializer).toString();if((x=n.isFileList(y))||E.indexOf("multipart/form-data")>-1){var N=this.env&&this.env.FormData;return a(x?{"files[]":y}:y,N&&new N,this.formSerializer)}}return S||O?(d(m,"application/json"),p(y)):y}],transformResponse:[function(y){var m=this.transitional||h.transitional,E=m&&m.forcedJSONParsing,O=this.responseType==="json";if(y&&n.isString(y)&&(E&&!this.responseType||O)){var S=m&&m.silentJSONParsing,T=!S&&O;try{return JSON.parse(y)}catch(x){if(T)throw x.name==="SyntaxError"?r.from(x,r.ERR_BAD_RESPONSE,this,null,this.response):x}}return y}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:l.classes.FormData,Blob:l.classes.Blob},validateStatus:function(y){return y>=200&&y<300},headers:{common:{Accept:"application/json, text/plain, */*"}}};n.forEach(["delete","get","head"],function(y){h.headers[y]={}}),n.forEach(["post","put","patch"],function(y){h.headers[y]=n.merge(f)}),s.exports=h},8666:function(s){"use strict";s.exports={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1}},8220:function(s,c,t){s.exports=t(2233)},6595:function(s){s.exports={version:"0.28.0"}},8748:function(s,c,t){"use strict";t(2039),t(5488),t(7390),t(6698),t(1971);var n=t(7354);function e(a){var i={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(a).replace(/[!'\(\)~]|%20|%00/g,function(u){return i[u]})}function r(a,i){this._pairs=[],a&&n(a,this,i)}var o=r.prototype;o.append=function(i,l){this._pairs.push([i,l])},o.toString=function(i){var l=i?function(u){return i.call(this,u,e)}:e;return this._pairs.map(function(f){return l(f[0])+"="+l(f[1])},"").join("&")},s.exports=r},7190:function(s){"use strict";s.exports=function(t,n){return function(){return t.apply(n,arguments)}}},8036:function(s,c,t){"use strict";t(9631),t(4683),t(5488),t(7390),t(6698),t(1971);var n=t(6733),e=t(8748);function r(o){return encodeURIComponent(o).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}s.exports=function(a,i,l){if(!i)return a;var u=a.indexOf("#");u!==-1&&(a=a.slice(0,u));var f=l&&l.encode||r,d=n.isURLSearchParams(i)?i.toString():new e(i,l).toString(f);return d&&(a+=(a.indexOf("?")===-1?"?":"&")+d),a}},6046:function(s,c,t){"use strict";t(7390),t(1971),s.exports=function(e,r){return r?e.replace(/\/+$/,"")+"/"+r.replace(/^\/+/,""):e}},1454:function(s,c,t){"use strict";t(9527),t(7390),t(6698),t(5350);var n=t(6733);s.exports=n.isStandardBrowserEnv()?function(){return{write:function(o,a,i,l,u,f){var d=[];d.push(o+"="+encodeURIComponent(a)),n.isNumber(i)&&d.push("expires="+new Date(i).toGMTString()),n.isString(l)&&d.push("path="+l),n.isString(u)&&d.push("domain="+u),f===!0&&d.push("secure"),document.cookie=d.join("; ")},read:function(o){var a=document.cookie.match(new RegExp("(^|;\\s*)("+o+")=([^;]*)"));return a?decodeURIComponent(a[3]):null},remove:function(o){this.write(o,"",Date.now()-864e5)}}}():function(){return{write:function(){},read:function(){return null},remove:function(){}}}()},2612:function(s,c,t){"use strict";t(2859),t(2039),t(5488),t(7390),t(1003),t(7608);var n=t(6733);function e(a){return n.matchAll(/\w+|\[(\w*)]/g,a).map(function(i){return i[0]==="[]"?"":i[1]||i[0]})}function r(a){var i={},l=Object.keys(a),u,f=l.length,d;for(u=0;u=u.length;if(p=!p&&n.isArray(d)?d.length:p,g)return n.hasOwnProperty(d,p)?d[p]=[d[p],f]:d[p]=f,!h;(!d[p]||!n.isObject(d[p]))&&(d[p]=[]);var y=i(u,f,d[p],v);return y&&n.isArray(d[p])&&(d[p]=r(d[p])),!h}if(n.isFormData(a)&&n.isFunction(a.entries)){var l={};return n.forEachEntry(a,function(u,f){i(e(u),f,l,0)}),l}return null}s.exports=o},491:function(s,c,t){"use strict";t(7390),s.exports=function(e){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(e)}},1713:function(s,c,t){"use strict";var n=t(6733);s.exports=function(r){return n.isObject(r)&&r.isAxiosError===!0}},4548:function(s,c,t){"use strict";t(7390),t(1971),t(3599);var n=t(6733);s.exports=n.isStandardBrowserEnv()?function(){var r=/(msie|trident)/i.test(navigator.userAgent),o=document.createElement("a"),a;function i(l){var u=l;return r&&(o.setAttribute("href",u),u=o.href),o.setAttribute("href",u),{href:o.href,protocol:o.protocol?o.protocol.replace(/:$/,""):"",host:o.host,search:o.search?o.search.replace(/^\?/,""):"",hash:o.hash?o.hash.replace(/^#/,""):"",hostname:o.hostname,port:o.port,pathname:o.pathname.charAt(0)==="/"?o.pathname:"/"+o.pathname}}return a=i(window.location.href),function(u){var f=n.isString(u)?i(u):u;return f.protocol===a.protocol&&f.host===a.host}}():function(){return function(){return!0}}()},2288:function(s,c,t){"use strict";t(5488),t(7861);var n=t(6733);s.exports=function(r,o){n.forEach(r,function(i,l){l!==o&&l.toUpperCase()===o.toUpperCase()&&(r[o]=i,delete r[l])})}},5950:function(s,c,t){"use strict";t(1561),t(9631),t(4683),t(5488),t(4719),t(7861);var n=t(6733),e=["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"];s.exports=function(o){var a={},i,l,u;return o&&n.forEach(o.split(` -`),function(d){if(u=d.indexOf(":"),i=n.trim(d.slice(0,u)).toLowerCase(),l=n.trim(d.slice(u+1)),i){if(a[i]&&e.indexOf(i)>=0)return;i==="set-cookie"?a[i]=(a[i]?a[i]:[]).concat([l]):a[i]=a[i]?a[i]+", "+l:l}}),a}},7474:function(s,c,t){"use strict";t(7390),s.exports=function(e){var r=/^([-+\w]{1,25})(:?\/\/|:)/.exec(e);return r&&r[1]||""}},6846:function(s){"use strict";s.exports=function(t){return function(e){return t.apply(null,e)}}},7354:function(s,c,t){"use strict";t(8210),t(1561),t(9631),t(2859),t(2039),t(4683),t(9624),t(7540),t(1924),t(5488),t(5539),t(7390),t(5654),t(4719),t(7861),t(7608);var n=t(6733),e=t(3991),r=t(8220);function o(v){return n.isPlainObject(v)||n.isArray(v)}function a(v){return n.endsWith(v,"[]")?v.slice(0,-2):v}function i(v,p,h){return v?v.concat(p).map(function(y,m){return y=a(y),!h&&m?"["+y+"]":y}).join(h?".":""):p}function l(v){return n.isArray(v)&&!v.some(o)}var u=n.toFlatObject(n,{},null,function(p){return/^is[A-Z]/.test(p)});function f(v){return v&&n.isFunction(v.append)&&v[Symbol.toStringTag]==="FormData"&&v[Symbol.iterator]}function d(v,p,h){if(!n.isObject(v))throw new TypeError("target must be an object");p=p||new(r||FormData),h=n.toFlatObject(h,{metaTokens:!0,dots:!1,indexes:!1},!1,function(C,Y){return!n.isUndefined(Y[C])});var g=h.metaTokens,y=h.visitor||x,m=h.dots,E=h.indexes,O=h.Blob||typeof Blob<"u"&&Blob,S=O&&f(p);if(!n.isFunction(y))throw new TypeError("visitor must be a function");function T(j){if(j===null)return"";if(n.isDate(j))return j.toISOString();if(!S&&n.isBlob(j))throw new e("Blob is not supported. Use a Buffer instead.");return n.isArrayBuffer(j)||n.isTypedArray(j)?S&&typeof Blob=="function"?new Blob([j]):Buffer.from(j):j}function x(j,C,Y){var H=j;if(j&&!Y&&typeof j=="object"){if(n.endsWith(C,"{}"))C=g?C:C.slice(0,-2),j=JSON.stringify(j);else if(n.isArray(j)&&l(j)||n.isFileList(j)||n.endsWith(C,"[]")&&(H=n.toArray(j)))return C=a(C),H.forEach(function(B,P){!n.isUndefined(B)&&p.append(E===!0?i([C],P,m):E===null?C:C+"[]",T(B))}),!1}return o(j)?!0:(p.append(i(Y,C,m),T(j)),!1)}var N=[],I=Object.assign(u,{defaultVisitor:x,convertValue:T,isVisitable:o});function M(j,C){if(!n.isUndefined(j)){if(N.indexOf(j)!==-1)throw Error("Circular reference detected in "+C.join("."));N.push(j),n.forEach(j,function(H,U){var B=!n.isUndefined(H)&&y.call(p,H,n.isString(U)?U.trim():U,C,I);B===!0&&M(H,C?C.concat(U):[U])}),N.pop()}}if(!n.isObject(v))throw new TypeError("data must be an object");return M(v),p}s.exports=d},255:function(s,c,t){"use strict";t(1924),t(5488),t(6698);var n=t(6733),e=t(7354),r=t(1571);s.exports=function(a,i){return e(a,new r.classes.URLSearchParams,Object.assign({visitor:function(u,f,d,v){return r.isNode&&n.isBuffer(u)?(this.append(f,u.toString("base64")),!1):v.defaultVisitor.apply(this,arguments)}},i))}},3619:function(s,c,t){"use strict";t(5488);var n=t(6595).version,e=t(3991),r={};["object","boolean","number","function","string","symbol"].forEach(function(i,l){r[i]=function(f){return typeof f===i||"a"+(l<1?"n ":" ")+i}});var o={};r.transitional=function(l,u,f){function d(v,p){return"[Axios v"+n+"] Transitional option '"+v+"'"+p+(f?". "+f:"")}return function(v,p,h){if(l===!1)throw new e(d(p," has been removed"+(u?" in "+u:"")),e.ERR_DEPRECATED);return u&&!o[p]&&(o[p]=!0,console.warn(d(p," has been deprecated since v"+u+" and will be removed in the near future"))),l?l(v,p,h):!0}};function a(i,l,u){if(typeof i!="object")throw new e("options must be an object",e.ERR_BAD_OPTION_VALUE);for(var f=Object.keys(i),d=f.length;d-- >0;){var v=f[d],p=l[v];if(p){var h=i[v],g=h===void 0||p(h,v,i);if(g!==!0)throw new e("option "+v+" must be "+g,e.ERR_BAD_OPTION_VALUE);continue}if(u!==!0)throw new e("Unknown option "+v,e.ERR_BAD_OPTION)}}s.exports={assertOptions:a,validators:r}},3161:function(s){"use strict";s.exports=FormData},4616:function(s,c,t){"use strict";t(2859),t(5488),t(7608),t(6019);var n=t(8748);s.exports=typeof URLSearchParams<"u"?URLSearchParams:n},4160:function(s,c,t){"use strict";s.exports={isBrowser:!0,classes:{URLSearchParams:t(4616),FormData:t(3161),Blob},protocols:["http","https","file","blob","url","data"]}},1571:function(s,c,t){"use strict";s.exports=t(4160)},6733:function(s,c,t){"use strict";t(9631),t(2859),t(4683),t(5532),t(5277),t(1924),t(5488),t(7390),t(6698),t(1971),t(4719),t(9328),t(8767),t(6379),t(2044),t(8672),t(3130),t(2570),t(97),t(7608);var n=t(7190),e=Object.prototype.toString,r=function(A){return function(b){var V=e.call(b);return A[V]||(A[V]=V.slice(8,-1).toLowerCase())}}(Object.create(null));function o(A){return A=A.toLowerCase(),function(V){return r(V)===A}}function a(A){return Array.isArray(A)}function i(A){return typeof A>"u"}function l(A){return A!==null&&!i(A)&&A.constructor!==null&&!i(A.constructor)&&typeof A.constructor.isBuffer=="function"&&A.constructor.isBuffer(A)}var u=o("ArrayBuffer");function f(A){var b;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?b=ArrayBuffer.isView(A):b=A&&A.buffer&&u(A.buffer),b}function d(A){return typeof A=="string"}function v(A){return typeof A=="number"}function p(A){return A!==null&&typeof A=="object"}function h(A){if(r(A)!=="object")return!1;var b=Object.getPrototypeOf(A);return b===null||b===Object.prototype}function g(A){return A&&Object.keys(A).length===0&&Object.getPrototypeOf(A)===Object.prototype}var y=o("Date"),m=o("File"),E=o("Blob"),O=o("FileList");function S(A){return e.call(A)==="[object Function]"}function T(A){return p(A)&&S(A.pipe)}function x(A){var b="[object FormData]";return A&&(typeof FormData=="function"&&A instanceof FormData||e.call(A)===b||S(A.toString)&&A.toString()===b)}var N=o("URLSearchParams");function I(A){return A.trim?A.trim():A.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"")}function M(){var A;return typeof navigator<"u"&&((A=navigator.product)==="ReactNative"||A==="NativeScript"||A==="NS")?!1:typeof window<"u"&&typeof document<"u"}function j(A,b){if(!(A===null||typeof A>"u"))if(typeof A!="object"&&(A=[A]),a(A))for(var V=0,k=A.length;V0;)et=Z[ot],(!k||k(et,A,b))&&!_[et]&&(b[et]=A[et],_[et]=!0);A=V!==!1&&Object.getPrototypeOf(A)}while(A&&(!V||V(A,b))&&A!==Object.prototype);return b}function P(A,b,V){A=String(A),(V===void 0||V>A.length)&&(V=A.length),V-=b.length;var k=A.indexOf(b,V);return k!==-1&&k===V}function F(A){if(!A)return null;if(a(A))return A;var b=A.length;if(!v(b))return null;for(var V=new Array(b);b-- >0;)V[b]=A[b];return V}var Q=function(A){return function(b){return A&&b instanceof A}}(typeof Uint8Array<"u"&&Object.getPrototypeOf(Uint8Array));function W(A,b){for(var V=A&&A[Symbol.iterator],k=V.call(A),Z;(Z=k.next())&&!Z.done;){var ot=Z.value;b.call(A,ot[0],ot[1])}}function z(A,b){for(var V,k=[];(V=A.exec(b))!==null;)k.push(V);return k}var D=o("HTMLFormElement"),R=function(b){return function(V,k){return b.call(V,k)}}(Object.prototype.hasOwnProperty);s.exports={isArray:a,isArrayBuffer:u,isBuffer:l,isFormData:x,isArrayBufferView:f,isString:d,isNumber:v,isObject:p,isPlainObject:h,isEmptyObject:g,isUndefined:i,isDate:y,isFile:m,isBlob:E,isFunction:S,isStream:T,isURLSearchParams:N,isStandardBrowserEnv:M,forEach:j,merge:C,extend:Y,trim:I,stripBOM:H,inherits:U,toFlatObject:B,kindOf:r,kindOfTest:o,endsWith:P,toArray:F,isTypedArray:Q,isFileList:O,forEachEntry:W,matchAll:z,isHTMLForm:D,hasOwnProperty:R}},2071:function(s,c,t){var n=t(2418),e=t(6744),r=TypeError;s.exports=function(o){if(n(o))return o;throw r(e(o)+" is not a function")}},8451:function(s,c,t){var n=t(3572),e=t(6744),r=TypeError;s.exports=function(o){if(n(o))return o;throw r(e(o)+" is not a constructor")}},1923:function(s,c,t){var n=t(2418),e=String,r=TypeError;s.exports=function(o){if(typeof o=="object"||n(o))return o;throw r("Can't set "+e(o)+" as a prototype")}},5732:function(s,c,t){var n=t(9552),e=t(6867),r=t(9204).f,o=n("unscopables"),a=Array.prototype;a[o]==null&&r(a,o,{configurable:!0,value:e(null)}),s.exports=function(i){a[o][i]=!0}},7728:function(s,c,t){"use strict";var n=t(6982).charAt;s.exports=function(e,r,o){return r+(o?n(e,r).length:1)}},8612:function(s,c,t){var n=t(9088),e=TypeError;s.exports=function(r,o){if(n(o,r))return r;throw e("Incorrect invocation")}},4248:function(s,c,t){var n=t(4213),e=String,r=TypeError;s.exports=function(o){if(n(o))return o;throw r(e(o)+" is not an object")}},7178:function(s){s.exports=typeof ArrayBuffer<"u"&&typeof DataView<"u"},1103:function(s,c,t){var n=t(1252);s.exports=n(function(){if(typeof ArrayBuffer=="function"){var e=new ArrayBuffer(8);Object.isExtensible(e)&&Object.defineProperty(e,"a",{value:8})}})},3409:function(s,c,t){"use strict";var n=t(7178),e=t(3743),r=t(5546),o=t(2418),a=t(4213),i=t(6388),l=t(7444),u=t(6744),f=t(7138),d=t(8383),v=t(9204).f,p=t(9088),h=t(7068),g=t(9616),y=t(9552),m=t(1035),E=t(3068),O=E.enforce,S=E.get,T=r.Int8Array,x=T&&T.prototype,N=r.Uint8ClampedArray,I=N&&N.prototype,M=T&&h(T),j=x&&h(x),C=Object.prototype,Y=r.TypeError,H=y("toStringTag"),U=m("TYPED_ARRAY_TAG"),B="TypedArrayConstructor",P=n&&!!g&&l(r.opera)!=="Opera",F=!1,Q,W,z,D={Int8Array:1,Uint8Array:1,Uint8ClampedArray:1,Int16Array:2,Uint16Array:2,Int32Array:4,Uint32Array:4,Float32Array:4,Float64Array:8},R={BigInt64Array:8,BigUint64Array:8},A=function(it){if(!a(it))return!1;var ft=l(it);return ft==="DataView"||i(D,ft)||i(R,ft)},b=function(_){var it=h(_);if(!!a(it)){var ft=S(it);return ft&&i(ft,B)?ft[B]:b(it)}},V=function(_){if(!a(_))return!1;var it=l(_);return i(D,it)||i(R,it)},k=function(_){if(V(_))return _;throw Y("Target is not a typed array")},Z=function(_){if(o(_)&&(!g||p(M,_)))return _;throw Y(u(_)+" is not a typed array constructor")},ot=function(_,it,ft,gt){if(!!e){if(ft)for(var yt in D){var Tt=r[yt];if(Tt&&i(Tt.prototype,_))try{delete Tt.prototype[_]}catch{try{Tt.prototype[_]=it}catch{}}}(!j[_]||ft)&&d(j,_,ft?it:P&&x[_]||it,gt)}},et=function(_,it,ft){var gt,yt;if(!!e){if(g){if(ft){for(gt in D)if(yt=r[gt],yt&&i(yt,_))try{delete yt[_]}catch{}}if(!M[_]||ft)try{return d(M,_,ft?it:P&&M[_]||it)}catch{}else return}for(gt in D)yt=r[gt],yt&&(!yt[_]||ft)&&d(yt,_,it)}};for(Q in D)W=r[Q],z=W&&W.prototype,z?O(z)[B]=W:P=!1;for(Q in R)W=r[Q],z=W&&W.prototype,z&&(O(z)[B]=W);if((!P||!o(M)||M===Function.prototype)&&(M=function(){throw Y("Incorrect invocation")},P))for(Q in D)r[Q]&&g(r[Q],M);if((!P||!j||j===C)&&(j=M.prototype,P))for(Q in D)r[Q]&&g(r[Q].prototype,j);if(P&&h(I)!==j&&g(I,j),e&&!i(j,H)){F=!0,v(j,H,{get:function(){return a(this)?this[U]:void 0}});for(Q in D)r[Q]&&f(r[Q],U,Q)}s.exports={NATIVE_ARRAY_BUFFER_VIEWS:P,TYPED_ARRAY_TAG:F&&U,aTypedArray:k,aTypedArrayConstructor:Z,exportTypedArrayMethod:ot,exportTypedArrayStaticMethod:et,getTypedArrayConstructor:b,isView:A,isTypedArray:V,TypedArray:M,TypedArrayPrototype:j}},6583:function(s,c,t){"use strict";var n=t(5546),e=t(811),r=t(3743),o=t(7178),a=t(1881),i=t(7138),l=t(2954),u=t(1252),f=t(8612),d=t(5970),v=t(5929),p=t(6481),h=t(8381),g=t(7068),y=t(9616),m=t(2067).f,E=t(9204).f,O=t(8608),S=t(9114),T=t(1392),x=t(3068),N=a.PROPER,I=a.CONFIGURABLE,M=x.get,j=x.set,C="ArrayBuffer",Y="DataView",H="prototype",U="Wrong length",B="Wrong index",P=n[C],F=P,Q=F&&F[H],W=n[Y],z=W&&W[H],D=Object.prototype,R=n.Array,A=n.RangeError,b=e(O),V=e([].reverse),k=h.pack,Z=h.unpack,ot=function(tt){return[tt&255]},et=function(tt){return[tt&255,tt>>8&255]},_=function(tt){return[tt&255,tt>>8&255,tt>>16&255,tt>>24&255]},it=function(tt){return tt[3]<<24|tt[2]<<16|tt[1]<<8|tt[0]},ft=function(tt){return k(tt,23,4)},gt=function(tt){return k(tt,52,8)},yt=function(tt,st){E(tt[H],st,{get:function(){return M(this)[st]}})},Tt=function(tt,st,$,ut){var vt=p($),at=M(tt);if(vt+st>at.byteLength)throw A(B);var ht=M(at.buffer).bytes,xt=vt+at.byteOffset,ct=S(ht,xt,xt+st);return ut?ct:V(ct)},jt=function(tt,st,$,ut,vt,at){var ht=p($),xt=M(tt);if(ht+st>xt.byteLength)throw A(B);for(var ct=M(xt.buffer).bytes,mt=ht+xt.byteOffset,pt=ut(+vt),K=0;Kvt)throw A("Wrong offset");if(ut=ut===void 0?vt-at:v(ut),at+ut>vt)throw A(U);j(this,{buffer:st,byteLength:ut,byteOffset:at}),r||(this.buffer=st,this.byteLength=ut,this.byteOffset=at)},z=W[H],r&&(yt(F,"byteLength"),yt(W,"buffer"),yt(W,"byteLength"),yt(W,"byteOffset")),l(z,{getInt8:function(st){return Tt(this,1,st)[0]<<24>>24},getUint8:function(st){return Tt(this,1,st)[0]},getInt16:function(st){var $=Tt(this,2,st,arguments.length>1?arguments[1]:void 0);return($[1]<<8|$[0])<<16>>16},getUint16:function(st){var $=Tt(this,2,st,arguments.length>1?arguments[1]:void 0);return $[1]<<8|$[0]},getInt32:function(st){return it(Tt(this,4,st,arguments.length>1?arguments[1]:void 0))},getUint32:function(st){return it(Tt(this,4,st,arguments.length>1?arguments[1]:void 0))>>>0},getFloat32:function(st){return Z(Tt(this,4,st,arguments.length>1?arguments[1]:void 0),23)},getFloat64:function(st){return Z(Tt(this,8,st,arguments.length>1?arguments[1]:void 0),52)},setInt8:function(st,$){jt(this,1,st,ot,$)},setUint8:function(st,$){jt(this,1,st,ot,$)},setInt16:function(st,$){jt(this,2,st,et,$,arguments.length>2?arguments[2]:void 0)},setUint16:function(st,$){jt(this,2,st,et,$,arguments.length>2?arguments[2]:void 0)},setInt32:function(st,$){jt(this,4,st,_,$,arguments.length>2?arguments[2]:void 0)},setUint32:function(st,$){jt(this,4,st,_,$,arguments.length>2?arguments[2]:void 0)},setFloat32:function(st,$){jt(this,4,st,ft,$,arguments.length>2?arguments[2]:void 0)},setFloat64:function(st,$){jt(this,8,st,gt,$,arguments.length>2?arguments[2]:void 0)}});else{var Et=N&&P.name!==C;if(!u(function(){P(1)})||!u(function(){new P(-1)})||u(function(){return new P,new P(1.5),new P(NaN),P.length!=1||Et&&!I})){F=function(st){return f(this,Q),new P(p(st))},F[H]=Q;for(var Ot=m(P),Lt=0,At;Ot.length>Lt;)(At=Ot[Lt++])in F||i(F,At,P[At]);Q.constructor=F}else Et&&I&&i(P,"name",C);y&&g(z)!==D&&y(z,D);var It=new W(new F(2)),Mt=e(z.setInt8);It.setInt8(0,2147483648),It.setInt8(1,2147483649),(It.getInt8(0)||!It.getInt8(1))&&l(z,{setInt8:function(st,$){Mt(this,st,$<<24>>24)},setUint8:function(st,$){Mt(this,st,$<<24>>24)}},{unsafe:!0})}T(F,C),T(W,Y),s.exports={ArrayBuffer:F,DataView:W}},8608:function(s,c,t){"use strict";var n=t(1002),e=t(1673),r=t(1111);s.exports=function(a){for(var i=n(this),l=r(i),u=arguments.length,f=e(u>1?arguments[1]:void 0,l),d=u>2?arguments[2]:void 0,v=d===void 0?l:e(d,l);v>f;)i[f++]=a;return i}},4346:function(s,c,t){"use strict";var n=t(6798).forEach,e=t(9615),r=e("forEach");s.exports=r?[].forEach:function(a){return n(this,a,arguments.length>1?arguments[1]:void 0)}},9493:function(s,c,t){"use strict";var n=t(6815),e=t(4418),r=t(1002),o=t(4954),a=t(7292),i=t(3572),l=t(1111),u=t(9295),f=t(9940),d=t(8976),v=Array;s.exports=function(h){var g=r(h),y=i(this),m=arguments.length,E=m>1?arguments[1]:void 0,O=E!==void 0;O&&(E=n(E,m>2?arguments[2]:void 0));var S=d(g),T=0,x,N,I,M,j,C;if(S&&!(this===v&&a(S)))for(M=f(g,S),j=M.next,N=y?new this:[];!(I=e(j,M)).done;T++)C=O?o(M,E,[I.value,T],!0):I.value,u(N,T,C);else for(x=l(g),N=y?new this(x):v(x);x>T;T++)C=O?E(g[T],T):g[T],u(N,T,C);return N.length=T,N}},4092:function(s,c,t){var n=t(1846),e=t(1673),r=t(1111),o=function(a){return function(i,l,u){var f=n(i),d=r(f),v=e(u,d),p;if(a&&l!=l){for(;d>v;)if(p=f[v++],p!=p)return!0}else for(;d>v;v++)if((a||v in f)&&f[v]===l)return a||v||0;return!a&&-1}};s.exports={includes:o(!0),indexOf:o(!1)}},6798:function(s,c,t){var n=t(6815),e=t(811),r=t(6250),o=t(1002),a=t(1111),i=t(6624),l=e([].push),u=function(f){var d=f==1,v=f==2,p=f==3,h=f==4,g=f==6,y=f==7,m=f==5||g;return function(E,O,S,T){for(var x=o(E),N=r(x),I=n(O,S),M=a(N),j=0,C=T||i,Y=d?C(E,M):v||y?C(E,0):void 0,H,U;M>j;j++)if((m||j in N)&&(H=N[j],U=I(H,j,x),f))if(d)Y[j]=U;else if(U)switch(f){case 3:return!0;case 5:return H;case 6:return j;case 2:l(Y,H)}else switch(f){case 4:return!1;case 7:l(Y,H)}return g?-1:p||h?h:Y}};s.exports={forEach:u(0),map:u(1),filter:u(2),some:u(3),every:u(4),find:u(5),findIndex:u(6),filterReject:u(7)}},8280:function(s,c,t){var n=t(1252),e=t(9552),r=t(8603),o=e("species");s.exports=function(a){return r>=51||!n(function(){var i=[],l=i.constructor={};return l[o]=function(){return{foo:1}},i[a](Boolean).foo!==1})}},9615:function(s,c,t){"use strict";var n=t(1252);s.exports=function(e,r){var o=[][e];return!!o&&n(function(){o.call(null,r||function(){return 1},1)})}},8651:function(s,c,t){var n=t(2071),e=t(1002),r=t(6250),o=t(1111),a=TypeError,i=function(l){return function(u,f,d,v){n(f);var p=e(u),h=r(p),g=o(p),y=l?g-1:0,m=l?-1:1;if(d<2)for(;;){if(y in h){v=h[y],y+=m;break}if(y+=m,l?y<0:g<=y)throw a("Reduce of empty array with no initial value")}for(;l?y>=0:g>y;y+=m)y in h&&(v=f(v,h[y],y,p));return v}};s.exports={left:i(!1),right:i(!0)}},8018:function(s,c,t){"use strict";var n=t(3743),e=t(4825),r=TypeError,o=Object.getOwnPropertyDescriptor,a=n&&!function(){if(this!==void 0)return!0;try{Object.defineProperty([],"length",{writable:!1}).length=1}catch(i){return i instanceof TypeError}}();s.exports=a?function(i,l){if(e(i)&&!o(i,"length").writable)throw r("Cannot set read only .length");return i.length=l}:function(i,l){return i.length=l}},9114:function(s,c,t){var n=t(1673),e=t(1111),r=t(9295),o=Array,a=Math.max;s.exports=function(i,l,u){for(var f=e(i),d=n(l,f),v=n(u===void 0?f:u,f),p=o(a(v-d,0)),h=0;d0;)i[v]=i[--v];v!==f++&&(i[v]=d)}return i},a=function(i,l,u,f){for(var d=l.length,v=u.length,p=0,h=0;p"u"&&c!==void 0;s.exports={all:c,IS_HTMLDDA:t}},2216:function(s,c,t){var n=t(5546),e=t(4213),r=n.document,o=e(r)&&e(r.createElement);s.exports=function(a){return o?r.createElement(a):{}}},8640:function(s){var c=TypeError,t=9007199254740991;s.exports=function(n){if(n>t)throw c("Maximum allowed index exceeded");return n}},7663:function(s){s.exports={CSSRuleList:0,CSSStyleDeclaration:0,CSSValueList:0,ClientRectList:0,DOMRectList:0,DOMStringList:0,DOMTokenList:1,DataTransferItemList:0,FileList:0,HTMLAllCollection:0,HTMLCollection:0,HTMLFormElement:0,HTMLSelectElement:0,MediaList:0,MimeTypeArray:0,NamedNodeMap:0,NodeList:1,PaintRequestList:0,Plugin:0,PluginArray:0,SVGLengthList:0,SVGNumberList:0,SVGPathSegList:0,SVGPointList:0,SVGStringList:0,SVGTransformList:0,SourceBufferList:0,StyleSheetList:0,TextTrackCueList:0,TextTrackList:0,TouchList:0}},2421:function(s,c,t){var n=t(2216),e=n("span").classList,r=e&&e.constructor&&e.constructor.prototype;s.exports=r===Object.prototype?void 0:r},2897:function(s,c,t){var n=t(2779),e=n.match(/firefox\/(\d+)/i);s.exports=!!e&&+e[1]},7797:function(s,c,t){var n=t(6497),e=t(4749);s.exports=!n&&!e&&typeof window=="object"&&typeof document=="object"},6497:function(s){s.exports=typeof Deno=="object"&&Deno&&typeof Deno.version=="object"},9055:function(s,c,t){var n=t(2779);s.exports=/MSIE|Trident/.test(n)},2205:function(s,c,t){var n=t(2779),e=t(5546);s.exports=/ipad|iphone|ipod/i.test(n)&&e.Pebble!==void 0},8884:function(s,c,t){var n=t(2779);s.exports=/(?:ipad|iphone|ipod).*applewebkit/i.test(n)},4749:function(s,c,t){var n=t(839),e=t(5546);s.exports=n(e.process)=="process"},2072:function(s,c,t){var n=t(2779);s.exports=/web0s(?!.*chrome)/i.test(n)},2779:function(s,c,t){var n=t(2454);s.exports=n("navigator","userAgent")||""},8603:function(s,c,t){var n=t(5546),e=t(2779),r=n.process,o=n.Deno,a=r&&r.versions||o&&o.version,i=a&&a.v8,l,u;i&&(l=i.split("."),u=l[0]>0&&l[0]<4?1:+(l[0]+l[1])),!u&&e&&(l=e.match(/Edge\/(\d+)/),(!l||l[1]>=74)&&(l=e.match(/Chrome\/(\d+)/),l&&(u=+l[1]))),s.exports=u},739:function(s,c,t){var n=t(2779),e=n.match(/AppleWebKit\/(\d+)\./);s.exports=!!e&&+e[1]},9040:function(s){s.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]},6939:function(s,c,t){var n=t(5546),e=t(1902).f,r=t(7138),o=t(8383),a=t(1308),i=t(9683),l=t(2943);s.exports=function(u,f){var d=u.target,v=u.global,p=u.stat,h,g,y,m,E,O;if(v?g=n:p?g=n[d]||a(d,{}):g=(n[d]||{}).prototype,g)for(y in f){if(E=f[y],u.dontCallGetSet?(O=e(g,y),m=O&&O.value):m=g[y],h=l(v?y:d+(p?".":"#")+y,u.forced),!h&&m!==void 0){if(typeof E==typeof m)continue;i(E,m)}(u.sham||m&&m.sham)&&r(E,"sham",!0),o(g,y,E,u)}}},1252:function(s){s.exports=function(c){try{return!!c()}catch{return!0}}},5557:function(s,c,t){"use strict";t(7390);var n=t(811),e=t(8383),r=t(9756),o=t(1252),a=t(9552),i=t(7138),l=a("species"),u=RegExp.prototype;s.exports=function(f,d,v,p){var h=a(f),g=!o(function(){var O={};return O[h]=function(){return 7},""[f](O)!=7}),y=g&&!o(function(){var O=!1,S=/a/;return f==="split"&&(S={},S.constructor={},S.constructor[l]=function(){return S},S.flags="",S[h]=/./[h]),S.exec=function(){return O=!0,null},S[h](""),!O});if(!g||!y||v){var m=n(/./[h]),E=d(h,""[f],function(O,S,T,x,N){var I=n(O),M=S.exec;return M===r||M===u.exec?g&&!N?{done:!0,value:m(S,T,x)}:{done:!0,value:I(T,S,x)}:{done:!1}});e(String.prototype,f,E[0]),e(u,h,E[1])}p&&i(u[h],"sham",!0)}},9609:function(s,c,t){var n=t(1252);s.exports=!n(function(){return Object.isExtensible(Object.preventExtensions({}))})},2144:function(s,c,t){var n=t(5353),e=Function.prototype,r=e.apply,o=e.call;s.exports=typeof Reflect=="object"&&Reflect.apply||(n?o.bind(r):function(){return o.apply(r,arguments)})},6815:function(s,c,t){var n=t(811),e=t(2071),r=t(5353),o=n(n.bind);s.exports=function(a,i){return e(a),i===void 0?a:r?o(a,i):function(){return a.apply(i,arguments)}}},5353:function(s,c,t){var n=t(1252);s.exports=!n(function(){var e=function(){}.bind();return typeof e!="function"||e.hasOwnProperty("prototype")})},4418:function(s,c,t){var n=t(5353),e=Function.prototype.call;s.exports=n?e.bind(e):function(){return e.apply(e,arguments)}},1881:function(s,c,t){var n=t(3743),e=t(6388),r=Function.prototype,o=n&&Object.getOwnPropertyDescriptor,a=e(r,"name"),i=a&&function(){}.name==="something",l=a&&(!n||n&&o(r,"name").configurable);s.exports={EXISTS:a,PROPER:i,CONFIGURABLE:l}},7824:function(s,c,t){var n=t(5353),e=Function.prototype,r=e.call,o=n&&e.bind.bind(r,r);s.exports=n?o:function(a){return function(){return r.apply(a,arguments)}}},811:function(s,c,t){var n=t(839),e=t(7824);s.exports=function(r){if(n(r)==="Function")return e(r)}},2454:function(s,c,t){var n=t(5546),e=t(2418),r=function(o){return e(o)?o:void 0};s.exports=function(o,a){return arguments.length<2?r(n[o]):n[o]&&n[o][a]}},8976:function(s,c,t){var n=t(7444),e=t(6415),r=t(9032),o=t(1430),a=t(9552),i=a("iterator");s.exports=function(l){if(!r(l))return e(l,i)||e(l,"@@iterator")||o[n(l)]}},9940:function(s,c,t){var n=t(4418),e=t(2071),r=t(4248),o=t(6744),a=t(8976),i=TypeError;s.exports=function(l,u){var f=arguments.length<2?a(l):u;if(e(f))return r(n(f,l));throw i(o(l)+" is not iterable")}},6415:function(s,c,t){var n=t(2071),e=t(9032);s.exports=function(r,o){var a=r[o];return e(a)?void 0:n(a)}},4575:function(s,c,t){var n=t(811),e=t(1002),r=Math.floor,o=n("".charAt),a=n("".replace),i=n("".slice),l=/\$([$&'`]|\d{1,2}|<[^>]*>)/g,u=/\$([$&'`]|\d{1,2})/g;s.exports=function(f,d,v,p,h,g){var y=v+f.length,m=p.length,E=u;return h!==void 0&&(h=e(h),E=l),a(g,E,function(O,S){var T;switch(o(S,0)){case"$":return"$";case"&":return f;case"`":return i(d,0,v);case"'":return i(d,y);case"<":T=h[i(S,1,-1)];break;default:var x=+S;if(x===0)return O;if(x>m){var N=r(x/10);return N===0?O:N<=m?p[N-1]===void 0?o(S,1):p[N-1]+o(S,1):O}T=p[x-1]}return T===void 0?"":T})}},5546:function(s,c,t){var n=function(e){return e&&e.Math==Math&&e};s.exports=n(typeof globalThis=="object"&&globalThis)||n(typeof window=="object"&&window)||n(typeof self=="object"&&self)||n(typeof t.g=="object"&&t.g)||function(){return this}()||Function("return this")()},6388:function(s,c,t){var n=t(811),e=t(1002),r=n({}.hasOwnProperty);s.exports=Object.hasOwn||function(a,i){return r(e(a),i)}},6362:function(s){s.exports={}},1800:function(s,c,t){var n=t(5546);s.exports=function(e,r){var o=n.console;o&&o.error&&(arguments.length==1?o.error(e):o.error(e,r))}},4360:function(s,c,t){var n=t(2454);s.exports=n("document","documentElement")},2920:function(s,c,t){var n=t(3743),e=t(1252),r=t(2216);s.exports=!n&&!e(function(){return Object.defineProperty(r("div"),"a",{get:function(){return 7}}).a!=7})},8381:function(s){var c=Array,t=Math.abs,n=Math.pow,e=Math.floor,r=Math.log,o=Math.LN2,a=function(l,u,f){var d=c(f),v=f*8-u-1,p=(1<>1,g=u===23?n(2,-24)-n(2,-77):0,y=l<0||l===0&&1/l<0?1:0,m=0,E,O,S;for(l=t(l),l!=l||l===1/0?(O=l!=l?1:0,E=p):(E=e(r(l)/o),S=n(2,-E),l*S<1&&(E--,S*=2),E+h>=1?l+=g/S:l+=g*n(2,1-h),l*S>=2&&(E++,S/=2),E+h>=p?(O=0,E=p):E+h>=1?(O=(l*S-1)*n(2,u),E=E+h):(O=l*n(2,h-1)*n(2,u),E=0));u>=8;)d[m++]=O&255,O/=256,u-=8;for(E=E<0;)d[m++]=E&255,E/=256,v-=8;return d[--m]|=y*128,d},i=function(l,u){var f=l.length,d=f*8-u-1,v=(1<>1,h=d-7,g=f-1,y=l[g--],m=y&127,E;for(y>>=7;h>0;)m=m*256+l[g--],h-=8;for(E=m&(1<<-h)-1,m>>=-h,h+=u;h>0;)E=E*256+l[g--],h-=8;if(m===0)m=1-p;else{if(m===v)return E?NaN:y?-1/0:1/0;E=E+n(2,u),m=m-p}return(y?-1:1)*E*n(2,m-u)};s.exports={pack:a,unpack:i}},6250:function(s,c,t){var n=t(811),e=t(1252),r=t(839),o=Object,a=n("".split);s.exports=e(function(){return!o("z").propertyIsEnumerable(0)})?function(i){return r(i)=="String"?a(i,""):o(i)}:o},1212:function(s,c,t){var n=t(2418),e=t(4213),r=t(9616);s.exports=function(o,a,i){var l,u;return r&&n(l=a.constructor)&&l!==i&&e(u=l.prototype)&&u!==i.prototype&&r(o,u),o}},4255:function(s,c,t){var n=t(811),e=t(2418),r=t(4328),o=n(Function.toString);e(r.inspectSource)||(r.inspectSource=function(a){return o(a)}),s.exports=r.inspectSource},468:function(s,c,t){var n=t(6939),e=t(811),r=t(6362),o=t(4213),a=t(6388),i=t(9204).f,l=t(2067),u=t(1319),f=t(6597),d=t(1035),v=t(9609),p=!1,h=d("meta"),g=0,y=function(x){i(x,h,{value:{objectID:"O"+g++,weakData:{}}})},m=function(x,N){if(!o(x))return typeof x=="symbol"?x:(typeof x=="string"?"S":"P")+x;if(!a(x,h)){if(!f(x))return"F";if(!N)return"E";y(x)}return x[h].objectID},E=function(x,N){if(!a(x,h)){if(!f(x))return!0;if(!N)return!1;y(x)}return x[h].weakData},O=function(x){return v&&p&&f(x)&&!a(x,h)&&y(x),x},S=function(){T.enable=function(){},p=!0;var x=l.f,N=e([].splice),I={};I[h]=1,x(I).length&&(l.f=function(M){for(var j=x(M),C=0,Y=j.length;Cj;j++)if(Y=P(g[j]),Y&&l(h,Y))return Y;return new p(!1)}I=u(g,M)}for(H=S?g.next:I.next;!(U=e(H,I)).done;){try{Y=P(U.value)}catch(F){d(I,"throw",F)}if(typeof Y=="object"&&Y&&l(h,Y))return Y}return new p(!1)}},9906:function(s,c,t){var n=t(4418),e=t(4248),r=t(6415);s.exports=function(o,a,i){var l,u;e(o);try{if(l=r(o,"return"),!l){if(a==="throw")throw i;return i}l=n(l,o)}catch(f){u=!0,l=f}if(a==="throw")throw i;if(u)throw l;return e(l),i}},5301:function(s,c,t){"use strict";var n=t(6292).IteratorPrototype,e=t(6867),r=t(3601),o=t(1392),a=t(1430),i=function(){return this};s.exports=function(l,u,f,d){var v=u+" Iterator";return l.prototype=e(n,{next:r(+!d,f)}),o(l,v,!1,!0),a[v]=i,l}},2047:function(s,c,t){"use strict";var n=t(6939),e=t(4418),r=t(9976),o=t(1881),a=t(2418),i=t(5301),l=t(7068),u=t(9616),f=t(1392),d=t(7138),v=t(8383),p=t(9552),h=t(1430),g=t(6292),y=o.PROPER,m=o.CONFIGURABLE,E=g.IteratorPrototype,O=g.BUGGY_SAFARI_ITERATORS,S=p("iterator"),T="keys",x="values",N="entries",I=function(){return this};s.exports=function(M,j,C,Y,H,U,B){i(C,j,Y);var P=function(k){if(k===H&&D)return D;if(!O&&k in W)return W[k];switch(k){case T:return function(){return new C(this,k)};case x:return function(){return new C(this,k)};case N:return function(){return new C(this,k)}}return function(){return new C(this)}},F=j+" Iterator",Q=!1,W=M.prototype,z=W[S]||W["@@iterator"]||H&&W[H],D=!O&&z||P(H),R=j=="Array"&&W.entries||z,A,b,V;if(R&&(A=l(R.call(new M)),A!==Object.prototype&&A.next&&(!r&&l(A)!==E&&(u?u(A,E):a(A[S])||v(A,S,I)),f(A,F,!0,!0),r&&(h[F]=I))),y&&H==x&&z&&z.name!==x&&(!r&&m?d(W,"name",x):(Q=!0,D=function(){return e(z,this)})),H)if(b={values:P(x),keys:U?D:P(T),entries:P(N)},B)for(V in b)(O||Q||!(V in W))&&v(W,V,b[V]);else n({target:j,proto:!0,forced:O||Q},b);return(!r||B)&&W[S]!==D&&v(W,S,D,{name:H}),h[j]=D,b}},6292:function(s,c,t){"use strict";var n=t(1252),e=t(2418),r=t(4213),o=t(6867),a=t(7068),i=t(8383),l=t(9552),u=t(9976),f=l("iterator"),d=!1,v,p,h;[].keys&&(h=[].keys(),"next"in h?(p=a(a(h)),p!==Object.prototype&&(v=p)):d=!0);var g=!r(v)||n(function(){var y={};return v[f].call(y)!==y});g?v={}:u&&(v=o(v)),e(v[f])||i(v,f,function(){return this}),s.exports={IteratorPrototype:v,BUGGY_SAFARI_ITERATORS:d}},1430:function(s){s.exports={}},1111:function(s,c,t){var n=t(5929);s.exports=function(e){return n(e.length)}},5008:function(s,c,t){var n=t(1252),e=t(2418),r=t(6388),o=t(3743),a=t(1881).CONFIGURABLE,i=t(4255),l=t(3068),u=l.enforce,f=l.get,d=Object.defineProperty,v=o&&!n(function(){return d(function(){},"length",{value:8}).length!==8}),p=String(String).split("String"),h=s.exports=function(g,y,m){String(y).slice(0,7)==="Symbol("&&(y="["+String(y).replace(/^Symbol\(([^)]*)\)/,"$1")+"]"),m&&m.getter&&(y="get "+y),m&&m.setter&&(y="set "+y),(!r(g,"name")||a&&g.name!==y)&&(o?d(g,"name",{value:y,configurable:!0}):g.name=y),v&&m&&r(m,"arity")&&g.length!==m.arity&&d(g,"length",{value:m.arity});try{m&&r(m,"constructor")&&m.constructor?o&&d(g,"prototype",{writable:!1}):g.prototype&&(g.prototype=void 0)}catch{}var E=u(g);return r(E,"source")||(E.source=p.join(typeof y=="string"?y:"")),g};Function.prototype.toString=h(function(){return e(this)&&f(this).source||i(this)},"toString")},2976:function(s){var c=Math.ceil,t=Math.floor;s.exports=Math.trunc||function(e){var r=+e;return(r>0?t:c)(r)}},6860:function(s,c,t){var n=t(5546),e=t(6815),r=t(1902).f,o=t(2264).set,a=t(8884),i=t(2205),l=t(2072),u=t(4749),f=n.MutationObserver||n.WebKitMutationObserver,d=n.document,v=n.process,p=n.Promise,h=r(n,"queueMicrotask"),g=h&&h.value,y,m,E,O,S,T,x,N;g||(y=function(){var I,M;for(u&&(I=v.domain)&&I.exit();m;){M=m.fn,m=m.next;try{M()}catch(j){throw m?O():E=void 0,j}}E=void 0,I&&I.enter()},!a&&!u&&!l&&f&&d?(S=!0,T=d.createTextNode(""),new f(y).observe(T,{characterData:!0}),O=function(){T.data=S=!S}):!i&&p&&p.resolve?(x=p.resolve(void 0),x.constructor=p,N=e(x.then,x),O=function(){N(y)}):u?O=function(){v.nextTick(y)}:(o=e(o,n),O=function(){o(y)})),s.exports=g||function(I){var M={fn:I,next:void 0};E&&(E.next=M),m||(m=M,O()),E=M}},4982:function(s,c,t){"use strict";var n=t(2071),e=TypeError,r=function(o){var a,i;this.promise=new o(function(l,u){if(a!==void 0||i!==void 0)throw e("Bad Promise constructor");a=l,i=u}),this.resolve=n(a),this.reject=n(i)};s.exports.f=function(o){return new r(o)}},4722:function(s,c,t){var n=t(8815),e=TypeError;s.exports=function(r){if(n(r))throw e("The method doesn't accept regular expressions");return r}},4242:function(s,c,t){var n=t(5546),e=t(1252),r=t(811),o=t(5032),a=t(6193).trim,i=t(5203),l=n.parseInt,u=n.Symbol,f=u&&u.iterator,d=/^[+-]?0x/i,v=r(d.exec),p=l(i+"08")!==8||l(i+"0x16")!==22||f&&!e(function(){l(Object(f))});s.exports=p?function(g,y){var m=a(o(g));return l(m,y>>>0||(v(d,m)?16:10))}:l},122:function(s,c,t){"use strict";var n=t(3743),e=t(811),r=t(4418),o=t(1252),a=t(435),i=t(7658),l=t(294),u=t(1002),f=t(6250),d=Object.assign,v=Object.defineProperty,p=e([].concat);s.exports=!d||o(function(){if(n&&d({b:1},d(v({},"a",{enumerable:!0,get:function(){v(this,"b",{value:3,enumerable:!1})}}),{b:2})).b!==1)return!0;var h={},g={},y=Symbol(),m="abcdefghijklmnopqrst";return h[y]=7,m.split("").forEach(function(E){g[E]=E}),d({},h)[y]!=7||a(d({},g)).join("")!=m})?function(g,y){for(var m=u(g),E=arguments.length,O=1,S=i.f,T=l.f;E>O;)for(var x=f(arguments[O++]),N=S?p(a(x),S(x)):a(x),I=N.length,M=0,j;I>M;)j=N[M++],(!n||r(T,x,j))&&(m[j]=x[j]);return m}:d},6867:function(s,c,t){var n=t(4248),e=t(8516),r=t(9040),o=t(6362),a=t(4360),i=t(2216),l=t(2898),u=">",f="<",d="prototype",v="script",p=l("IE_PROTO"),h=function(){},g=function(S){return f+v+u+S+f+"/"+v+u},y=function(S){S.write(g("")),S.close();var T=S.parentWindow.Object;return S=null,T},m=function(){var S=i("iframe"),T="java"+v+":",x;return S.style.display="none",a.appendChild(S),S.src=String(T),x=S.contentWindow.document,x.open(),x.write(g("document.F=Object")),x.close(),x.F},E,O=function(){try{E=new ActiveXObject("htmlfile")}catch{}O=typeof document<"u"?document.domain&&E?y(E):m():y(E);for(var S=r.length;S--;)delete O[d][r[S]];return O()};o[p]=!0,s.exports=Object.create||function(T,x){var N;return T!==null?(h[d]=n(T),N=new h,h[d]=null,N[p]=T):N=O(),x===void 0?N:e.f(N,x)}},8516:function(s,c,t){var n=t(3743),e=t(4957),r=t(9204),o=t(4248),a=t(1846),i=t(435);c.f=n&&!e?Object.defineProperties:function(u,f){o(u);for(var d=a(f),v=i(f),p=v.length,h=0,g;p>h;)r.f(u,g=v[h++],d[g]);return u}},9204:function(s,c,t){var n=t(3743),e=t(2920),r=t(4957),o=t(4248),a=t(1950),i=TypeError,l=Object.defineProperty,u=Object.getOwnPropertyDescriptor,f="enumerable",d="configurable",v="writable";c.f=n?r?function(h,g,y){if(o(h),g=a(g),o(y),typeof h=="function"&&g==="prototype"&&"value"in y&&v in y&&!y[v]){var m=u(h,g);m&&m[v]&&(h[g]=y.value,y={configurable:d in y?y[d]:m[d],enumerable:f in y?y[f]:m[f],writable:!1})}return l(h,g,y)}:l:function(h,g,y){if(o(h),g=a(g),o(y),e)try{return l(h,g,y)}catch{}if("get"in y||"set"in y)throw i("Accessors not supported");return"value"in y&&(h[g]=y.value),h}},1902:function(s,c,t){var n=t(3743),e=t(4418),r=t(294),o=t(3601),a=t(1846),i=t(1950),l=t(6388),u=t(2920),f=Object.getOwnPropertyDescriptor;c.f=n?f:function(v,p){if(v=a(v),p=i(p),u)try{return f(v,p)}catch{}if(l(v,p))return o(!e(r.f,v,p),v[p])}},1319:function(s,c,t){var n=t(839),e=t(1846),r=t(2067).f,o=t(9114),a=typeof window=="object"&&window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[],i=function(l){try{return r(l)}catch{return o(a)}};s.exports.f=function(u){return a&&n(u)=="Window"?i(u):r(e(u))}},2067:function(s,c,t){var n=t(5725),e=t(9040),r=e.concat("length","prototype");c.f=Object.getOwnPropertyNames||function(a){return n(a,r)}},7658:function(s,c){c.f=Object.getOwnPropertySymbols},7068:function(s,c,t){var n=t(6388),e=t(2418),r=t(1002),o=t(2898),a=t(6958),i=o("IE_PROTO"),l=Object,u=l.prototype;s.exports=a?l.getPrototypeOf:function(f){var d=r(f);if(n(d,i))return d[i];var v=d.constructor;return e(v)&&d instanceof v?v.prototype:d instanceof l?u:null}},6597:function(s,c,t){var n=t(1252),e=t(4213),r=t(839),o=t(1103),a=Object.isExtensible,i=n(function(){a(1)});s.exports=i||o?function(u){return!e(u)||o&&r(u)=="ArrayBuffer"?!1:a?a(u):!0}:a},9088:function(s,c,t){var n=t(811);s.exports=n({}.isPrototypeOf)},5725:function(s,c,t){var n=t(811),e=t(6388),r=t(1846),o=t(4092).indexOf,a=t(6362),i=n([].push);s.exports=function(l,u){var f=r(l),d=0,v=[],p;for(p in f)!e(a,p)&&e(f,p)&&i(v,p);for(;u.length>d;)e(f,p=u[d++])&&(~o(v,p)||i(v,p));return v}},435:function(s,c,t){var n=t(5725),e=t(9040);s.exports=Object.keys||function(o){return n(o,e)}},294:function(s,c){"use strict";var t={}.propertyIsEnumerable,n=Object.getOwnPropertyDescriptor,e=n&&!t.call({1:2},1);c.f=e?function(o){var a=n(this,o);return!!a&&a.enumerable}:t},9616:function(s,c,t){var n=t(811),e=t(4248),r=t(1923);s.exports=Object.setPrototypeOf||("__proto__"in{}?function(){var o=!1,a={},i;try{i=n(Object.getOwnPropertyDescriptor(Object.prototype,"__proto__").set),i(a,[]),o=a instanceof Array}catch{}return function(u,f){return e(u),r(f),o?i(u,f):u.__proto__=f,u}}():void 0)},3206:function(s,c,t){"use strict";var n=t(4839),e=t(7444);s.exports=n?{}.toString:function(){return"[object "+e(this)+"]"}},9421:function(s,c,t){var n=t(4418),e=t(2418),r=t(4213),o=TypeError;s.exports=function(a,i){var l,u;if(i==="string"&&e(l=a.toString)&&!r(u=n(l,a))||e(l=a.valueOf)&&!r(u=n(l,a))||i!=="string"&&e(l=a.toString)&&!r(u=n(l,a)))return u;throw o("Can't convert object to primitive value")}},2858:function(s,c,t){var n=t(2454),e=t(811),r=t(2067),o=t(7658),a=t(4248),i=e([].concat);s.exports=n("Reflect","ownKeys")||function(u){var f=r.f(a(u)),d=o.f;return d?i(f,d(u)):f}},3574:function(s,c,t){var n=t(5546);s.exports=n},1532:function(s){s.exports=function(c){try{return{error:!1,value:c()}}catch(t){return{error:!0,value:t}}}},9255:function(s,c,t){var n=t(5546),e=t(1871),r=t(2418),o=t(2943),a=t(4255),i=t(9552),l=t(7797),u=t(6497),f=t(9976),d=t(8603),v=e&&e.prototype,p=i("species"),h=!1,g=r(n.PromiseRejectionEvent),y=o("Promise",function(){var m=a(e),E=m!==String(e);if(!E&&d===66||f&&!(v.catch&&v.finally))return!0;if(!d||d<51||!/native code/.test(m)){var O=new e(function(x){x(1)}),S=function(x){x(function(){},function(){})},T=O.constructor={};if(T[p]=S,h=O.then(function(){})instanceof S,!h)return!0}return!E&&(l||u)&&!g});s.exports={CONSTRUCTOR:y,REJECTION_EVENT:g,SUBCLASSING:h}},1871:function(s,c,t){var n=t(5546);s.exports=n.Promise},985:function(s,c,t){var n=t(4248),e=t(4213),r=t(4982);s.exports=function(o,a){if(n(o),e(a)&&a.constructor===o)return a;var i=r.f(o),l=i.resolve;return l(a),i.promise}},8474:function(s,c,t){var n=t(1871),e=t(5153),r=t(9255).CONSTRUCTOR;s.exports=r||!e(function(o){n.all(o).then(void 0,function(){})})},7509:function(s,c,t){var n=t(9204).f;s.exports=function(e,r,o){o in e||n(e,o,{configurable:!0,get:function(){return r[o]},set:function(a){r[o]=a}})}},626:function(s){var c=function(){this.head=null,this.tail=null};c.prototype={add:function(t){var n={item:t,next:null};this.head?this.tail.next=n:this.head=n,this.tail=n},get:function(){var t=this.head;if(t)return this.head=t.next,this.tail===t&&(this.tail=null),t.item}},s.exports=c},5619:function(s,c,t){var n=t(4418),e=t(4248),r=t(2418),o=t(839),a=t(9756),i=TypeError;s.exports=function(l,u){var f=l.exec;if(r(f)){var d=n(f,l,u);return d!==null&&e(d),d}if(o(l)==="RegExp")return n(a,l,u);throw i("RegExp#exec called on incompatible receiver")}},9756:function(s,c,t){"use strict";var n=t(4418),e=t(811),r=t(5032),o=t(4894),a=t(8830),i=t(8592),l=t(6867),u=t(3068).get,f=t(7150),d=t(3435),v=i("native-string-replace",String.prototype.replace),p=RegExp.prototype.exec,h=p,g=e("".charAt),y=e("".indexOf),m=e("".replace),E=e("".slice),O=function(){var N=/a/,I=/b*/g;return n(p,N,"a"),n(p,I,"a"),N.lastIndex!==0||I.lastIndex!==0}(),S=a.BROKEN_CARET,T=/()??/.exec("")[1]!==void 0,x=O||T||S||f||d;x&&(h=function(I){var M=this,j=u(M),C=r(I),Y=j.raw,H,U,B,P,F,Q,W;if(Y)return Y.lastIndex=M.lastIndex,H=n(h,Y,C),M.lastIndex=Y.lastIndex,H;var z=j.groups,D=S&&M.sticky,R=n(o,M),A=M.source,b=0,V=C;if(D&&(R=m(R,"y",""),y(R,"g")===-1&&(R+="g"),V=E(C,M.lastIndex),M.lastIndex>0&&(!M.multiline||M.multiline&&g(C,M.lastIndex-1)!==` -`)&&(A="(?: "+A+")",V=" "+V,b++),U=new RegExp("^(?:"+A+")",R)),T&&(U=new RegExp("^"+A+"$(?!\\s)",R)),O&&(B=M.lastIndex),P=n(p,D?U:M,V),D?P?(P.input=E(P.input,b),P[0]=E(P[0],b),P.index=M.lastIndex,M.lastIndex+=P[0].length):M.lastIndex=0:O&&P&&(M.lastIndex=M.global?P.index+P[0].length:B),T&&P&&P.length>1&&n(v,P[0],U,function(){for(F=1;Fb)","g");return o.exec("b").groups.a!=="b"||"b".replace(o,"$c")!=="bc"})},7559:function(s,c,t){var n=t(9032),e=TypeError;s.exports=function(r){if(n(r))throw e("Can't call method on "+r);return r}},443:function(s){s.exports=Object.is||function(t,n){return t===n?t!==0||1/t===1/n:t!=t&&n!=n}},3110:function(s,c,t){"use strict";var n=t(2454),e=t(9204),r=t(9552),o=t(3743),a=r("species");s.exports=function(i){var l=n(i),u=e.f;o&&l&&!l[a]&&u(l,a,{configurable:!0,get:function(){return this}})}},1392:function(s,c,t){var n=t(9204).f,e=t(6388),r=t(9552),o=r("toStringTag");s.exports=function(a,i,l){a&&!l&&(a=a.prototype),a&&!e(a,o)&&n(a,o,{configurable:!0,value:i})}},2898:function(s,c,t){var n=t(8592),e=t(1035),r=n("keys");s.exports=function(o){return r[o]||(r[o]=e(o))}},4328:function(s,c,t){var n=t(5546),e=t(1308),r="__core-js_shared__",o=n[r]||e(r,{});s.exports=o},8592:function(s,c,t){var n=t(9976),e=t(4328);(s.exports=function(r,o){return e[r]||(e[r]=o!==void 0?o:{})})("versions",[]).push({version:"3.26.0",mode:n?"pure":"global",copyright:"\xA9 2014-2022 Denis Pushkarev (zloirock.ru)",license:"https://github.com/zloirock/core-js/blob/v3.26.0/LICENSE",source:"https://github.com/zloirock/core-js"})},138:function(s,c,t){var n=t(4248),e=t(8451),r=t(9032),o=t(9552),a=o("species");s.exports=function(i,l){var u=n(i).constructor,f;return u===void 0||r(f=n(u)[a])?l:e(f)}},6982:function(s,c,t){var n=t(811),e=t(5970),r=t(5032),o=t(7559),a=n("".charAt),i=n("".charCodeAt),l=n("".slice),u=function(f){return function(d,v){var p=r(o(d)),h=e(v),g=p.length,y,m;return h<0||h>=g?f?"":void 0:(y=i(p,h),y<55296||y>56319||h+1===g||(m=i(p,h+1))<56320||m>57343?f?a(p,h):y:f?l(p,h,h+2):(y-55296<<10)+(m-56320)+65536)}};s.exports={codeAt:u(!1),charAt:u(!0)}},1372:function(s,c,t){"use strict";var n=t(811),e=2147483647,r=36,o=1,a=26,i=38,l=700,u=72,f=128,d="-",v=/[^\0-\u007E]/,p=/[.\u3002\uFF0E\uFF61]/g,h="Overflow: input needs wider integers to process",g=r-o,y=RangeError,m=n(p.exec),E=Math.floor,O=String.fromCharCode,S=n("".charCodeAt),T=n([].join),x=n([].push),N=n("".replace),I=n("".split),M=n("".toLowerCase),j=function(U){for(var B=[],P=0,F=U.length;P=55296&&Q<=56319&&P>1,U+=E(U/B);U>g*a>>1;)U=E(U/g),F+=r;return E(F+(g+1)*U/(U+i))},H=function(U){var B=[];U=j(U);var P=U.length,F=f,Q=0,W=u,z,D;for(z=0;z=F&&DE((e-Q)/V))throw y(h);for(Q+=(b-F)*V,F=b,z=0;ze)throw y(h);if(D==F){for(var k=Q,Z=r;;){var ot=Z<=W?o:Z>=W+a?a:Z-W;if(k0?e(n(r),9007199254740991):0}},1002:function(s,c,t){var n=t(7559),e=Object;s.exports=function(r){return e(n(r))}},590:function(s,c,t){var n=t(6945),e=RangeError;s.exports=function(r,o){var a=n(r);if(a%o)throw e("Wrong offset");return a}},6945:function(s,c,t){var n=t(5970),e=RangeError;s.exports=function(r){var o=n(r);if(o<0)throw e("The argument can't be less than 0");return o}},2852:function(s,c,t){var n=t(4418),e=t(4213),r=t(482),o=t(6415),a=t(9421),i=t(9552),l=TypeError,u=i("toPrimitive");s.exports=function(f,d){if(!e(f)||r(f))return f;var v=o(f,u),p;if(v){if(d===void 0&&(d="default"),p=n(v,f,d),!e(p)||r(p))return p;throw l("Can't convert object to primitive value")}return d===void 0&&(d="number"),a(f,d)}},1950:function(s,c,t){var n=t(2852),e=t(482);s.exports=function(r){var o=n(r,"string");return e(o)?o:o+""}},4839:function(s,c,t){var n=t(9552),e=n("toStringTag"),r={};r[e]="z",s.exports=String(r)==="[object z]"},5032:function(s,c,t){var n=t(7444),e=String;s.exports=function(r){if(n(r)==="Symbol")throw TypeError("Cannot convert a Symbol value to a string");return e(r)}},6744:function(s){var c=String;s.exports=function(t){try{return c(t)}catch{return"Object"}}},7660:function(s,c,t){"use strict";var n=t(6939),e=t(5546),r=t(4418),o=t(3743),a=t(2738),i=t(3409),l=t(6583),u=t(8612),f=t(3601),d=t(7138),v=t(210),p=t(5929),h=t(6481),g=t(590),y=t(1950),m=t(6388),E=t(7444),O=t(4213),S=t(482),T=t(6867),x=t(9088),N=t(9616),I=t(2067).f,M=t(7126),j=t(6798).forEach,C=t(3110),Y=t(9204),H=t(1902),U=t(3068),B=t(1212),P=U.get,F=U.set,Q=U.enforce,W=Y.f,z=H.f,D=Math.round,R=e.RangeError,A=l.ArrayBuffer,b=A.prototype,V=l.DataView,k=i.NATIVE_ARRAY_BUFFER_VIEWS,Z=i.TYPED_ARRAY_TAG,ot=i.TypedArray,et=i.TypedArrayPrototype,_=i.aTypedArrayConstructor,it=i.isTypedArray,ft="BYTES_PER_ELEMENT",gt="Wrong length",yt=function(At,It){_(At);for(var Mt=0,tt=It.length,st=new At(tt);tt>Mt;)st[Mt]=It[Mt++];return st},Tt=function(At,It){W(At,It,{get:function(){return P(this)[It]}})},jt=function(At){var It;return x(b,At)||(It=E(At))=="ArrayBuffer"||It=="SharedArrayBuffer"},Et=function(At,It){return it(At)&&!S(It)&&It in At&&v(+It)&&It>=0},Ot=function(It,Mt){return Mt=y(Mt),Et(It,Mt)?f(2,It[Mt]):z(It,Mt)},Lt=function(It,Mt,tt){return Mt=y(Mt),Et(It,Mt)&&O(tt)&&m(tt,"value")&&!m(tt,"get")&&!m(tt,"set")&&!tt.configurable&&(!m(tt,"writable")||tt.writable)&&(!m(tt,"enumerable")||tt.enumerable)?(It[Mt]=tt.value,It):W(It,Mt,tt)};o?(k||(H.f=Ot,Y.f=Lt,Tt(et,"buffer"),Tt(et,"byteOffset"),Tt(et,"byteLength"),Tt(et,"length")),n({target:"Object",stat:!0,forced:!k},{getOwnPropertyDescriptor:Ot,defineProperty:Lt}),s.exports=function(At,It,Mt){var tt=At.match(/\d+$/)[0]/8,st=At+(Mt?"Clamped":"")+"Array",$="get"+At,ut="set"+At,vt=e[st],at=vt,ht=at&&at.prototype,xt={},ct=function(rt,nt){var dt=P(rt);return dt.view[$](nt*tt+dt.byteOffset,!0)},mt=function(rt,nt,dt){var St=P(rt);Mt&&(dt=(dt=D(dt))<0?0:dt>255?255:dt&255),St.view[ut](nt*tt+St.byteOffset,dt,!0)},pt=function(rt,nt){W(rt,nt,{get:function(){return ct(this,nt)},set:function(dt){return mt(this,nt,dt)},enumerable:!0})};k?a&&(at=It(function(rt,nt,dt,St){return u(rt,ht),B(function(){return O(nt)?jt(nt)?St!==void 0?new vt(nt,g(dt,tt),St):dt!==void 0?new vt(nt,g(dt,tt)):new vt(nt):it(nt)?yt(at,nt):r(M,at,nt):new vt(h(nt))}(),rt,at)}),N&&N(at,ot),j(I(vt),function(rt){rt in at||d(at,rt,vt[rt])}),at.prototype=ht):(at=It(function(rt,nt,dt,St){u(rt,ht);var Dt=0,bt=0,Yt,Ct,Bt;if(!O(nt))Bt=h(nt),Ct=Bt*tt,Yt=new A(Ct);else if(jt(nt)){Yt=nt,bt=g(dt,tt);var Jt=nt.byteLength;if(St===void 0){if(Jt%tt||(Ct=Jt-bt,Ct<0))throw R(gt)}else if(Ct=p(St)*tt,Ct+bt>Jt)throw R(gt);Bt=Ct/tt}else return it(nt)?yt(at,nt):r(M,at,nt);for(F(rt,{buffer:Yt,byteOffset:bt,byteLength:Ct,length:Bt,view:new V(Yt)});Dt1?arguments[1]:void 0,O=E!==void 0,S=l(y),T,x,N,I,M,j,C,Y;if(S&&!u(S))for(C=i(y,S),Y=C.next,y=[];!(j=e(Y,C)).done;)y.push(j.value);for(O&&m>2&&(E=n(E,arguments[2])),x=a(y),N=new(d(g))(x),I=f(N),T=0;x>T;T++)M=O?E(y[T],T):y[T],N[T]=I?v(M):+M;return N}},1035:function(s,c,t){var n=t(811),e=0,r=Math.random(),o=n(1 .toString);s.exports=function(a){return"Symbol("+(a===void 0?"":a)+")_"+o(++e+r,36)}},1087:function(s,c,t){var n=t(1252),e=t(9552),r=t(9976),o=e("iterator");s.exports=!n(function(){var a=new URL("b?a=1&b=2&c=3","http://a"),i=a.searchParams,l="";return a.pathname="c%20d",i.forEach(function(u,f){i.delete("b"),l+=f+u}),r&&!a.toJSON||!i.sort||a.href!=="http://a/c%20d?a=1&c=3"||i.get("c")!=="3"||String(new URLSearchParams("?a=1"))!=="a=1"||!i[o]||new URL("https://a@b").username!=="a"||new URLSearchParams(new URLSearchParams("a=b")).get("a")!=="b"||new URL("http://\u0442\u0435\u0441\u0442").host!=="xn--e1aybc"||new URL("http://a#\u0431").hash!=="#%D0%B1"||l!=="a1c3"||new URL("http://x",void 0).host!=="x"})},3055:function(s,c,t){var n=t(4750);s.exports=n&&!Symbol.sham&&typeof Symbol.iterator=="symbol"},4957:function(s,c,t){var n=t(3743),e=t(1252);s.exports=n&&e(function(){return Object.defineProperty(function(){},"prototype",{value:42,writable:!1}).prototype!=42})},7163:function(s){var c=TypeError;s.exports=function(t,n){if(t=51||!e(function(){var O=[];return O[h]=!1,O.concat()[0]!==O}),y=d("concat"),m=function(O){if(!o(O))return!1;var S=O[h];return S!==void 0?!!S:r(O)},E=!g||!y;n({target:"Array",proto:!0,arity:1,forced:E},{concat:function(S){var T=a(this),x=f(T,0),N=0,I,M,j,C,Y;for(I=-1,j=arguments.length;I1?arguments[1]:void 0)}})},687:function(s,c,t){"use strict";var n=t(6939),e=t(6798).findIndex,r=t(5732),o="findIndex",a=!0;o in[]&&Array(1)[o](function(){a=!1}),n({target:"Array",proto:!0,forced:a},{findIndex:function(l){return e(this,l,arguments.length>1?arguments[1]:void 0)}}),r(o)},2874:function(s,c,t){"use strict";var n=t(6939),e=t(6798).find,r=t(5732),o="find",a=!0;o in[]&&Array(1)[o](function(){a=!1}),n({target:"Array",proto:!0,forced:a},{find:function(l){return e(this,l,arguments.length>1?arguments[1]:void 0)}}),r(o)},3349:function(s,c,t){var n=t(6939),e=t(9493),r=t(5153),o=!r(function(a){Array.from(a)});n({target:"Array",stat:!0,forced:o},{from:e})},7100:function(s,c,t){"use strict";var n=t(6939),e=t(4092).includes,r=t(1252),o=t(5732),a=r(function(){return!Array(1).includes()});n({target:"Array",proto:!0,forced:a},{includes:function(l){return e(this,l,arguments.length>1?arguments[1]:void 0)}}),o("includes")},9631:function(s,c,t){"use strict";var n=t(6939),e=t(811),r=t(4092).indexOf,o=t(9615),a=e([].indexOf),i=!!a&&1/a([1],1,-0)<0,l=o("indexOf");n({target:"Array",proto:!0,forced:i||!l},{indexOf:function(f){var d=arguments.length>1?arguments[1]:void 0;return i?a(this,f,d)||0:r(this,f,d)}})},2859:function(s,c,t){"use strict";var n=t(1846),e=t(5732),r=t(1430),o=t(3068),a=t(9204).f,i=t(2047),l=t(8326),u=t(9976),f=t(3743),d="Array Iterator",v=o.set,p=o.getterFor(d);s.exports=i(Array,"Array",function(g,y){v(this,{type:d,target:n(g),index:0,kind:y})},function(){var g=p(this),y=g.target,m=g.kind,E=g.index++;return!y||E>=y.length?(g.target=void 0,l(void 0,!0)):m=="keys"?l(E,!1):m=="values"?l(y[E],!1):l([E,y[E]],!1)},"values");var h=r.Arguments=r.Array;if(e("keys"),e("values"),e("entries"),!u&&f&&h.name!=="values")try{a(h,"name",{value:"values"})}catch{}},2039:function(s,c,t){"use strict";var n=t(6939),e=t(6798).map,r=t(8280),o=r("map");n({target:"Array",proto:!0,forced:!o},{map:function(i){return e(this,i,arguments.length>1?arguments[1]:void 0)}})},9995:function(s,c,t){"use strict";var n=t(6939),e=t(8651).left,r=t(9615),o=t(8603),a=t(4749),i=r("reduce"),l=!a&&o>79&&o<83;n({target:"Array",proto:!0,forced:!i||l},{reduce:function(f){var d=arguments.length;return e(this,f,d,d>1?arguments[1]:void 0)}})},6455:function(s,c,t){"use strict";var n=t(6939),e=t(811),r=t(4825),o=e([].reverse),a=[1,2];n({target:"Array",proto:!0,forced:String(a)===String(a.reverse())},{reverse:function(){return r(this)&&(this.length=this.length),o(this)}})},4683:function(s,c,t){"use strict";var n=t(6939),e=t(4825),r=t(3572),o=t(4213),a=t(1673),i=t(1111),l=t(1846),u=t(9295),f=t(9552),d=t(8280),v=t(3419),p=d("slice"),h=f("species"),g=Array,y=Math.max;n({target:"Array",proto:!0,forced:!p},{slice:function(E,O){var S=l(this),T=i(S),x=a(E,T),N=a(O===void 0?T:O,T),I,M,j;if(e(S)&&(I=S.constructor,r(I)&&(I===g||e(I.prototype))?I=void 0:o(I)&&(I=I[h],I===null&&(I=void 0)),I===g||I===void 0))return v(S,x,N);for(M=new(I===void 0?g:I)(y(N-x,0)),j=0;xS-I+N;j--)d(O,j-1)}else if(N>I)for(j=S-I;j>T;j--)C=j+I-1,Y=j+N-1,C in O?O[Y]=O[C]:d(O,Y);for(j=0;j2){if(B=m(B),P=N(B,0),P===43||P===45){if(F=N(B,2),F===88||F===120)return NaN}else if(P===48){switch(N(B,1)){case 66:case 98:Q=2,W=49;break;case 79:case 111:Q=8,W=55;break;default:return+B}for(z=x(B,2),D=z.length,R=0;RW)return NaN;return parseInt(z,Q)}}return+B};if(o(E,!O(" 0o1")||!O("0b1")||O("+0x1"))){for(var j=function(B){var P=arguments.length<1?0:O(I(B)),F=this;return u(S,F)&&v(function(){y(F)})?l(Object(P),F,j):P},C=n?p(O):"MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,EPSILON,MAX_SAFE_INTEGER,MIN_SAFE_INTEGER,isFinite,isInteger,isNaN,isSafeInteger,parseFloat,parseInt,fromString,range".split(","),Y=0,H;C.length>Y;Y++)i(O,H=C[Y])&&!i(j,H)&&g(j,H,h(O,H));j.prototype=S,S.constructor=j,a(e,E,j,{constructor:!0})}},1924:function(s,c,t){var n=t(6939),e=t(122);n({target:"Object",stat:!0,arity:2,forced:Object.assign!==e},{assign:e})},2731:function(s,c,t){var n=t(6939),e=t(3743),r=t(2858),o=t(1846),a=t(1902),i=t(9295);n({target:"Object",stat:!0,sham:!e},{getOwnPropertyDescriptors:function(u){for(var f=o(u),d=a.f,v=r(f),p={},h=0,g,y;v.length>h;)y=d(f,g=v[h++]),y!==void 0&&i(p,g,y);return p}})},1192:function(s,c,t){var n=t(6939),e=t(4750),r=t(1252),o=t(7658),a=t(1002),i=!e||r(function(){o.f(1)});n({target:"Object",stat:!0,forced:i},{getOwnPropertySymbols:function(u){var f=o.f;return f?f(a(u)):[]}})},5488:function(s,c,t){var n=t(4839),e=t(8383),r=t(3206);n||e(Object.prototype,"toString",r,{unsafe:!0})},4777:function(s,c,t){var n=t(6939),e=t(4242);n({global:!0,forced:parseInt!=e},{parseInt:e})},4078:function(s,c,t){"use strict";var n=t(6939),e=t(4418),r=t(2071),o=t(4982),a=t(1532),i=t(4495),l=t(8474);n({target:"Promise",stat:!0,forced:l},{all:function(f){var d=this,v=o.f(d),p=v.resolve,h=v.reject,g=a(function(){var y=r(d.resolve),m=[],E=0,O=1;i(f,function(S){var T=E++,x=!1;O++,e(y,d,S).then(function(N){x||(x=!0,m[T]=N,--O||p(m))},h)}),--O||p(m)});return g.error&&h(g.value),v.promise}})},1074:function(s,c,t){"use strict";var n=t(6939),e=t(9976),r=t(9255).CONSTRUCTOR,o=t(1871),a=t(2454),i=t(2418),l=t(8383),u=o&&o.prototype;if(n({target:"Promise",proto:!0,forced:r,real:!0},{catch:function(d){return this.then(void 0,d)}}),!e&&i(o)){var f=a("Promise").prototype.catch;u.catch!==f&&l(u,"catch",f,{unsafe:!0})}},7561:function(s,c,t){"use strict";var n=t(6939),e=t(9976),r=t(4749),o=t(5546),a=t(4418),i=t(8383),l=t(9616),u=t(1392),f=t(3110),d=t(2071),v=t(2418),p=t(4213),h=t(8612),g=t(138),y=t(2264).set,m=t(6860),E=t(1800),O=t(1532),S=t(626),T=t(3068),x=t(1871),N=t(9255),I=t(4982),M="Promise",j=N.CONSTRUCTOR,C=N.REJECTION_EVENT,Y=N.SUBCLASSING,H=T.getterFor(M),U=T.set,B=x&&x.prototype,P=x,F=B,Q=o.TypeError,W=o.document,z=o.process,D=I.f,R=D,A=!!(W&&W.createEvent&&o.dispatchEvent),b="unhandledrejection",V="rejectionhandled",k=0,Z=1,ot=2,et=1,_=2,it,ft,gt,yt,Tt=function($){var ut;return p($)&&v(ut=$.then)?ut:!1},jt=function($,ut){var vt=ut.value,at=ut.state==Z,ht=at?$.ok:$.fail,xt=$.resolve,ct=$.reject,mt=$.domain,pt,K,rt;try{ht?(at||(ut.rejection===_&&It(ut),ut.rejection=et),ht===!0?pt=vt:(mt&&mt.enter(),pt=ht(vt),mt&&(mt.exit(),rt=!0)),pt===$.promise?ct(Q("Promise-chain cycle")):(K=Tt(pt))?a(K,pt,xt,ct):xt(pt)):ct(vt)}catch(nt){mt&&!rt&&mt.exit(),ct(nt)}},Et=function($,ut){$.notified||($.notified=!0,m(function(){for(var vt=$.reactions,at;at=vt.get();)jt(at,$);$.notified=!1,ut&&!$.rejection&&Lt($)}))},Ot=function($,ut,vt){var at,ht;A?(at=W.createEvent("Event"),at.promise=ut,at.reason=vt,at.initEvent($,!1,!0),o.dispatchEvent(at)):at={promise:ut,reason:vt},!C&&(ht=o["on"+$])?ht(at):$===b&&E("Unhandled promise rejection",vt)},Lt=function($){a(y,o,function(){var ut=$.facade,vt=$.value,at=At($),ht;if(at&&(ht=O(function(){r?z.emit("unhandledRejection",vt,ut):Ot(b,ut,vt)}),$.rejection=r||At($)?_:et,ht.error))throw ht.value})},At=function($){return $.rejection!==et&&!$.parent},It=function($){a(y,o,function(){var ut=$.facade;r?z.emit("rejectionHandled",ut):Ot(V,ut,$.value)})},Mt=function($,ut,vt){return function(at){$(ut,at,vt)}},tt=function($,ut,vt){$.done||($.done=!0,vt&&($=vt),$.value=ut,$.state=ot,Et($,!0))},st=function($,ut,vt){if(!$.done){$.done=!0,vt&&($=vt);try{if($.facade===ut)throw Q("Promise can't be resolved itself");var at=Tt(ut);at?m(function(){var ht={done:!1};try{a(at,ut,Mt(st,ht,$),Mt(tt,ht,$))}catch(xt){tt(ht,xt,$)}}):($.value=ut,$.state=Z,Et($,!1))}catch(ht){tt({done:!1},ht,$)}}};if(j&&(P=function(ut){h(this,F),d(ut),a(it,this);var vt=H(this);try{ut(Mt(st,vt),Mt(tt,vt))}catch(at){tt(vt,at)}},F=P.prototype,it=function(ut){U(this,{type:M,done:!1,notified:!1,parent:!1,reactions:new S,rejection:!1,state:k,value:void 0})},it.prototype=i(F,"then",function(ut,vt){var at=H(this),ht=D(g(this,P));return at.parent=!0,ht.ok=v(ut)?ut:!0,ht.fail=v(vt)&&vt,ht.domain=r?z.domain:void 0,at.state==k?at.reactions.add(ht):m(function(){jt(ht,at)}),ht.promise}),ft=function(){var $=new it,ut=H($);this.promise=$,this.resolve=Mt(st,ut),this.reject=Mt(tt,ut)},I.f=D=function($){return $===P||$===gt?new ft($):R($)},!e&&v(x)&&B!==Object.prototype)){yt=B.then,Y||i(B,"then",function(ut,vt){var at=this;return new P(function(ht,xt){a(yt,at,ht,xt)}).then(ut,vt)},{unsafe:!0});try{delete B.constructor}catch{}l&&l(B,F)}n({global:!0,constructor:!0,wrap:!0,forced:j},{Promise:P}),u(P,M,!1,!0),f(M)},666:function(s,c,t){"use strict";var n=t(6939),e=t(9976),r=t(1871),o=t(1252),a=t(2454),i=t(2418),l=t(138),u=t(985),f=t(8383),d=r&&r.prototype,v=!!r&&o(function(){d.finally.call({then:function(){}},function(){})});if(n({target:"Promise",proto:!0,real:!0,forced:v},{finally:function(h){var g=l(this,a("Promise")),y=i(h);return this.then(y?function(m){return u(g,h()).then(function(){return m})}:h,y?function(m){return u(g,h()).then(function(){throw m})}:h)}}),!e&&i(r)){var p=a("Promise").prototype.finally;d.finally!==p&&f(d,"finally",p,{unsafe:!0})}},5539:function(s,c,t){t(7561),t(4078),t(1074),t(6440),t(6574),t(2529)},6440:function(s,c,t){"use strict";var n=t(6939),e=t(4418),r=t(2071),o=t(4982),a=t(1532),i=t(4495),l=t(8474);n({target:"Promise",stat:!0,forced:l},{race:function(f){var d=this,v=o.f(d),p=v.reject,h=a(function(){var g=r(d.resolve);i(f,function(y){e(g,d,y).then(v.resolve,p)})});return h.error&&p(h.value),v.promise}})},6574:function(s,c,t){"use strict";var n=t(6939),e=t(4418),r=t(4982),o=t(9255).CONSTRUCTOR;n({target:"Promise",stat:!0,forced:o},{reject:function(i){var l=r.f(this);return e(l.reject,void 0,i),l.promise}})},2529:function(s,c,t){"use strict";var n=t(6939),e=t(2454),r=t(9976),o=t(1871),a=t(9255).CONSTRUCTOR,i=t(985),l=e("Promise"),u=r&&!a;n({target:"Promise",stat:!0,forced:r||a},{resolve:function(d){return i(u&&this===l?o:this,d)}})},707:function(s,c,t){var n=t(6939);n({target:"Reflect",stat:!0},{has:function(r,o){return o in r}})},9527:function(s,c,t){var n=t(3743),e=t(5546),r=t(811),o=t(2943),a=t(1212),i=t(7138),l=t(2067).f,u=t(9088),f=t(8815),d=t(5032),v=t(3375),p=t(8830),h=t(7509),g=t(8383),y=t(1252),m=t(6388),E=t(3068).enforce,O=t(3110),S=t(9552),T=t(7150),x=t(3435),N=S("match"),I=e.RegExp,M=I.prototype,j=e.SyntaxError,C=r(M.exec),Y=r("".charAt),H=r("".replace),U=r("".indexOf),B=r("".slice),P=/^\?<[^\s\d!#%&*+<=>@^][^\s!#%&*+<=>@^]*>/,F=/a/g,Q=/a/g,W=new I(F)!==F,z=p.MISSED_STICKY,D=p.UNSUPPORTED_Y,R=n&&(!W||z||T||x||y(function(){return Q[N]=!1,I(F)!=F||I(Q)==Q||I(F,"i")!="/a/i"})),A=function(ot){for(var et=ot.length,_=0,it="",ft=!1,gt;_<=et;_++){if(gt=Y(ot,_),gt==="\\"){it+=gt+Y(ot,++_);continue}!ft&>==="."?it+="[\\s\\S]":(gt==="["?ft=!0:gt==="]"&&(ft=!1),it+=gt)}return it},b=function(ot){for(var et=ot.length,_=0,it="",ft=[],gt={},yt=!1,Tt=!1,jt=0,Et="",Ot;_<=et;_++){if(Ot=Y(ot,_),Ot==="\\")Ot=Ot+Y(ot,++_);else if(Ot==="]")yt=!1;else if(!yt)switch(!0){case Ot==="[":yt=!0;break;case Ot==="(":C(P,B(ot,_+1))&&(_+=2,Tt=!0),it+=Ot,jt++;continue;case(Ot===">"&&Tt):if(Et===""||m(gt,Et))throw new j("Invalid capture group name");gt[Et]=!0,ft[ft.length]=[Et,jt],Tt=!1,Et="";continue}Tt?Et+=Ot:it+=Ot}return[it,ft]};if(o("RegExp",R)){for(var V=function(et,_){var it=u(M,this),ft=f(et),gt=_===void 0,yt=[],Tt=et,jt,Et,Ot,Lt,At,It;if(!it&&ft&>&&et.constructor===V)return et;if((ft||u(M,et))&&(et=et.source,gt&&(_=v(Tt))),et=et===void 0?"":d(et),_=_===void 0?"":d(_),Tt=et,T&&"dotAll"in F&&(Et=!!_&&U(_,"s")>-1,Et&&(_=H(_,/s/g,""))),jt=_,z&&"sticky"in F&&(Ot=!!_&&U(_,"y")>-1,Ot&&D&&(_=H(_,/y/g,""))),x&&(Lt=b(et),et=Lt[0],yt=Lt[1]),At=a(I(et,_),it?this:M,V),(Et||Ot||yt.length)&&(It=E(At),Et&&(It.dotAll=!0,It.raw=V(A(et),jt)),Ot&&(It.sticky=!0),yt.length&&(It.groups=yt)),et!==Tt)try{i(At,"source",Tt===""?"(?:)":Tt)}catch{}return At},k=l(I),Z=0;k.length>Z;)h(V,I,k[Z++]);M.constructor=V,V.prototype=M,g(e,"RegExp",V,{constructor:!0})}O("RegExp")},7390:function(s,c,t){"use strict";var n=t(6939),e=t(9756);n({target:"RegExp",proto:!0,forced:/./.exec!==e},{exec:e})},6698:function(s,c,t){"use strict";var n=t(1881).PROPER,e=t(8383),r=t(4248),o=t(5032),a=t(1252),i=t(3375),l="toString",u=RegExp.prototype,f=u[l],d=a(function(){return f.call({source:"a",flags:"b"})!="/a/b"}),v=n&&f.name!=l;(d||v)&&e(RegExp.prototype,l,function(){var h=r(this),g=o(h.source),y=o(i(h));return"/"+g+"/"+y},{unsafe:!0})},5654:function(s,c,t){"use strict";var n=t(6939),e=t(811),r=t(1902).f,o=t(5929),a=t(5032),i=t(4722),l=t(7559),u=t(4428),f=t(9976),d=e("".endsWith),v=e("".slice),p=Math.min,h=u("endsWith"),g=!f&&!h&&!!function(){var y=r(String.prototype,"endsWith");return y&&!y.writable}();n({target:"String",proto:!0,forced:!g&&!h},{endsWith:function(m){var E=a(l(this));i(m);var O=arguments.length>1?arguments[1]:void 0,S=E.length,T=O===void 0?S:p(o(O),S),x=a(m);return d?d(E,x,T):v(E,T-x.length,T)===x}})},7154:function(s,c,t){"use strict";var n=t(6939),e=t(811),r=t(4722),o=t(7559),a=t(5032),i=t(4428),l=e("".indexOf);n({target:"String",proto:!0,forced:!i("includes")},{includes:function(f){return!!~l(a(o(this)),a(r(f)),arguments.length>1?arguments[1]:void 0)}})},7417:function(s,c,t){"use strict";var n=t(6982).charAt,e=t(5032),r=t(3068),o=t(2047),a=t(8326),i="String Iterator",l=r.set,u=r.getterFor(i);o(String,"String",function(f){l(this,{type:i,string:e(f),index:0})},function(){var d=u(this),v=d.string,p=d.index,h;return p>=v.length?a(void 0,!0):(h=n(v,p),d.index+=h.length,a(h,!1))})},4056:function(s,c,t){"use strict";var n=t(6939),e=t(4418),r=t(811),o=t(5301),a=t(8326),i=t(7559),l=t(5929),u=t(5032),f=t(4248),d=t(9032),v=t(839),p=t(8815),h=t(3375),g=t(6415),y=t(8383),m=t(1252),E=t(9552),O=t(138),S=t(7728),T=t(5619),x=t(3068),N=t(9976),I=E("matchAll"),M="RegExp String",j=M+" Iterator",C=x.set,Y=x.getterFor(j),H=RegExp.prototype,U=TypeError,B=r("".indexOf),P=r("".matchAll),F=!!P&&!m(function(){P("a",/./)}),Q=o(function(D,R,A,b){C(this,{type:j,regexp:D,string:R,global:A,unicode:b,done:!1})},M,function(){var D=Y(this);if(D.done)return a(void 0,!0);var R=D.regexp,A=D.string,b=T(R,A);return b===null?(D.done=!0,a(void 0,!0)):D.global?(u(b[0])===""&&(R.lastIndex=S(A,l(R.lastIndex),D.unicode)),a(b,!1)):(D.done=!0,a(b,!1))}),W=function(z){var D=f(this),R=u(z),A=O(D,RegExp),b=u(h(D)),V,k,Z;return V=new A(A===RegExp?D.source:D,b),k=!!~B(b,"g"),Z=!!~B(b,"u"),V.lastIndex=l(D.lastIndex),new Q(V,R,k,Z)};n({target:"String",proto:!0,forced:F},{matchAll:function(D){var R=i(this),A,b,V,k;if(d(D)){if(F)return P(R,D)}else{if(p(D)&&(A=u(i(h(D))),!~B(A,"g")))throw U("`.matchAll` does not allow non-global regexes");if(F)return P(R,D);if(V=g(D,I),V===void 0&&N&&v(D)=="RegExp"&&(V=W),V)return e(V,D,R)}return b=u(R),k=new RegExp(D,"g"),N?e(W,k,b):k[I](b)}}),N||I in H||y(H,I,W)},5350:function(s,c,t){"use strict";var n=t(4418),e=t(5557),r=t(4248),o=t(9032),a=t(5929),i=t(5032),l=t(7559),u=t(6415),f=t(7728),d=t(5619);e("match",function(v,p,h){return[function(y){var m=l(this),E=o(y)?void 0:u(y,v);return E?n(E,y,m):new RegExp(y)[v](i(m))},function(g){var y=r(this),m=i(g),E=h(p,y,m);if(E.done)return E.value;if(!y.global)return d(y,m);var O=y.unicode;y.lastIndex=0;for(var S=[],T=0,x;(x=d(y,m))!==null;){var N=i(x[0]);S[T]=N,N===""&&(y.lastIndex=f(m,a(y.lastIndex),O)),T++}return T===0?null:S}]})},1971:function(s,c,t){"use strict";var n=t(2144),e=t(4418),r=t(811),o=t(5557),a=t(1252),i=t(4248),l=t(2418),u=t(9032),f=t(5970),d=t(5929),v=t(5032),p=t(7559),h=t(7728),g=t(6415),y=t(4575),m=t(5619),E=t(9552),O=E("replace"),S=Math.max,T=Math.min,x=r([].concat),N=r([].push),I=r("".indexOf),M=r("".slice),j=function(U){return U===void 0?U:String(U)},C=function(){return"a".replace(/./,"$0")==="$0"}(),Y=function(){return/./[O]?/./[O]("a","$0")==="":!1}(),H=!a(function(){var U=/./;return U.exec=function(){var B=[];return B.groups={a:"7"},B},"".replace(U,"$")!=="7"});o("replace",function(U,B,P){var F=Y?"$":"$0";return[function(W,z){var D=p(this),R=u(W)?void 0:g(W,O);return R?e(R,W,D,z):e(B,v(D),W,z)},function(Q,W){var z=i(this),D=v(Q);if(typeof W=="string"&&I(W,F)===-1&&I(W,"$<")===-1){var R=P(B,z,D,W);if(R.done)return R.value}var A=l(W);A||(W=v(W));var b=z.global;if(b){var V=z.unicode;z.lastIndex=0}for(var k=[];;){var Z=m(z,D);if(Z===null||(N(k,Z),!b))break;var ot=v(Z[0]);ot===""&&(z.lastIndex=h(D,d(z.lastIndex),V))}for(var et="",_=0,it=0;it=_&&(et+=M(D,_,gt)+Ot,_=gt+ft.length)}return et+M(D,_)}]},!H||!C||Y)},3599:function(s,c,t){"use strict";var n=t(4418),e=t(5557),r=t(4248),o=t(9032),a=t(7559),i=t(443),l=t(5032),u=t(6415),f=t(5619);e("search",function(d,v,p){return[function(g){var y=a(this),m=o(g)?void 0:u(g,d);return m?n(m,g,y):new RegExp(g)[d](l(y))},function(h){var g=r(this),y=l(h),m=p(v,g,y);if(m.done)return m.value;var E=g.lastIndex;i(E,0)||(g.lastIndex=0);var O=f(g,y);return i(g.lastIndex,E)||(g.lastIndex=E),O===null?-1:O.index}]})},4719:function(s,c,t){"use strict";var n=t(6939),e=t(6193).trim,r=t(7763);n({target:"String",proto:!0,forced:r("trim")},{trim:function(){return e(this)}})},4773:function(s,c,t){var n=t(73);n("asyncIterator")},7090:function(s,c,t){"use strict";var n=t(6939),e=t(5546),r=t(4418),o=t(811),a=t(9976),i=t(3743),l=t(4750),u=t(1252),f=t(6388),d=t(9088),v=t(4248),p=t(1846),h=t(1950),g=t(5032),y=t(3601),m=t(6867),E=t(435),O=t(2067),S=t(1319),T=t(7658),x=t(1902),N=t(9204),I=t(8516),M=t(294),j=t(8383),C=t(8592),Y=t(2898),H=t(6362),U=t(1035),B=t(9552),P=t(4168),F=t(73),Q=t(755),W=t(1392),z=t(3068),D=t(6798).forEach,R=Y("hidden"),A="Symbol",b="prototype",V=z.set,k=z.getterFor(A),Z=Object[b],ot=e.Symbol,et=ot&&ot[b],_=e.TypeError,it=e.QObject,ft=x.f,gt=N.f,yt=S.f,Tt=M.f,jt=o([].push),Et=C("symbols"),Ot=C("op-symbols"),Lt=C("wks"),At=!it||!it[b]||!it[b].findChild,It=i&&u(function(){return m(gt({},"a",{get:function(){return gt(this,"a",{value:7}).a}})).a!=7})?function(xt,ct,mt){var pt=ft(Z,ct);pt&&delete Z[ct],gt(xt,ct,mt),pt&&xt!==Z&>(Z,ct,pt)}:gt,Mt=function(xt,ct){var mt=Et[xt]=m(et);return V(mt,{type:A,tag:xt,description:ct}),i||(mt.description=ct),mt},tt=function(ct,mt,pt){ct===Z&&tt(Ot,mt,pt),v(ct);var K=h(mt);return v(pt),f(Et,K)?(pt.enumerable?(f(ct,R)&&ct[R][K]&&(ct[R][K]=!1),pt=m(pt,{enumerable:y(0,!1)})):(f(ct,R)||gt(ct,R,y(1,{})),ct[R][K]=!0),It(ct,K,pt)):gt(ct,K,pt)},st=function(ct,mt){v(ct);var pt=p(mt),K=E(pt).concat(ht(pt));return D(K,function(rt){(!i||r(ut,pt,rt))&&tt(ct,rt,pt[rt])}),ct},$=function(ct,mt){return mt===void 0?m(ct):st(m(ct),mt)},ut=function(ct){var mt=h(ct),pt=r(Tt,this,mt);return this===Z&&f(Et,mt)&&!f(Ot,mt)?!1:pt||!f(this,mt)||!f(Et,mt)||f(this,R)&&this[R][mt]?pt:!0},vt=function(ct,mt){var pt=p(ct),K=h(mt);if(!(pt===Z&&f(Et,K)&&!f(Ot,K))){var rt=ft(pt,K);return rt&&f(Et,K)&&!(f(pt,R)&&pt[R][K])&&(rt.enumerable=!0),rt}},at=function(ct){var mt=yt(p(ct)),pt=[];return D(mt,function(K){!f(Et,K)&&!f(H,K)&&jt(pt,K)}),pt},ht=function(xt){var ct=xt===Z,mt=yt(ct?Ot:p(xt)),pt=[];return D(mt,function(K){f(Et,K)&&(!ct||f(Z,K))&&jt(pt,Et[K])}),pt};l||(ot=function(){if(d(et,this))throw _("Symbol is not a constructor");var ct=!arguments.length||arguments[0]===void 0?void 0:g(arguments[0]),mt=U(ct),pt=function(K){this===Z&&r(pt,Ot,K),f(this,R)&&f(this[R],mt)&&(this[R][mt]=!1),It(this,mt,y(1,K))};return i&&At&&It(Z,mt,{configurable:!0,set:pt}),Mt(mt,ct)},et=ot[b],j(et,"toString",function(){return k(this).tag}),j(ot,"withoutSetter",function(xt){return Mt(U(xt),xt)}),M.f=ut,N.f=tt,I.f=st,x.f=vt,O.f=S.f=at,T.f=ht,P.f=function(xt){return Mt(B(xt),xt)},i&&(gt(et,"description",{configurable:!0,get:function(){return k(this).description}}),a||j(Z,"propertyIsEnumerable",ut,{unsafe:!0}))),n({global:!0,constructor:!0,wrap:!0,forced:!l,sham:!l},{Symbol:ot}),D(E(Lt),function(xt){F(xt)}),n({target:A,stat:!0,forced:!l},{useSetter:function(){At=!0},useSimple:function(){At=!1}}),n({target:"Object",stat:!0,forced:!l,sham:!i},{create:$,defineProperty:tt,defineProperties:st,getOwnPropertyDescriptor:vt}),n({target:"Object",stat:!0,forced:!l},{getOwnPropertyNames:at}),Q(),W(ot,A),H[R]=!0},5284:function(s,c,t){"use strict";var n=t(6939),e=t(3743),r=t(5546),o=t(811),a=t(6388),i=t(2418),l=t(9088),u=t(5032),f=t(9204).f,d=t(9683),v=r.Symbol,p=v&&v.prototype;if(e&&i(v)&&(!("description"in p)||v().description!==void 0)){var h={},g=function(){var N=arguments.length<1||arguments[0]===void 0?void 0:u(arguments[0]),I=l(p,this)?new v(N):N===void 0?v():v(N);return N===""&&(h[I]=!0),I};d(g,v),g.prototype=p,p.constructor=g;var y=String(v("test"))=="Symbol(test)",m=o(p.valueOf),E=o(p.toString),O=/^Symbol\((.*)\)[^)]+$/,S=o("".replace),T=o("".slice);f(p,"description",{configurable:!0,get:function(){var N=m(this);if(a(h,N))return"";var I=E(N),M=y?T(I,7,-1):S(I,O,"$1");return M===""?void 0:M}}),n({global:!0,constructor:!0,forced:!0},{Symbol:g})}},8665:function(s,c,t){var n=t(6939),e=t(2454),r=t(6388),o=t(5032),a=t(8592),i=t(6515),l=a("string-to-symbol-registry"),u=a("symbol-to-string-registry");n({target:"Symbol",stat:!0,forced:!i},{for:function(f){var d=o(f);if(r(l,d))return l[d];var v=e("Symbol")(d);return l[d]=v,u[v]=d,v}})},3324:function(s,c,t){t(7090),t(8665),t(7220),t(689),t(1192)},7220:function(s,c,t){var n=t(6939),e=t(6388),r=t(482),o=t(6744),a=t(8592),i=t(6515),l=a("symbol-to-string-registry");n({target:"Symbol",stat:!0,forced:!i},{keyFor:function(f){if(!r(f))throw TypeError(o(f)+" is not a symbol");if(e(l,f))return l[f]}})},9933:function(s,c,t){var n=t(73),e=t(755);n("toPrimitive"),e()},8210:function(s,c,t){var n=t(2454),e=t(73),r=t(1392);e("toStringTag"),r(n("Symbol"),"Symbol")},8767:function(s,c,t){"use strict";var n=t(3409),e=t(8608),r=t(7779),o=t(7444),a=t(4418),i=t(811),l=t(1252),u=n.aTypedArray,f=n.exportTypedArrayMethod,d=i("".slice),v=l(function(){var p=0;return new Int8Array(2).fill({valueOf:function(){return p++}}),p!==1});f("fill",function(h){var g=arguments.length;u(this);var y=d(o(this),0,3)==="Big"?r(h):+h;return a(e,this,y,g>1?arguments[1]:void 0,g>2?arguments[2]:void 0)},v)},6379:function(s,c,t){"use strict";var n=t(3409),e=t(4092).includes,r=n.aTypedArray,o=n.exportTypedArrayMethod;o("includes",function(i){return e(r(this),i,arguments.length>1?arguments[1]:void 0)})},2044:function(s,c,t){"use strict";var n=t(5546),e=t(1252),r=t(811),o=t(3409),a=t(2859),i=t(9552),l=i("iterator"),u=n.Uint8Array,f=r(a.values),d=r(a.keys),v=r(a.entries),p=o.aTypedArray,h=o.exportTypedArrayMethod,g=u&&u.prototype,y=!e(function(){g[l].call([1])}),m=!!g&&g.values&&g[l]===g.values&&g.values.name==="values",E=function(){return f(p(this))};h("entries",function(){return v(p(this))},y),h("keys",function(){return d(p(this))},y),h("values",E,y||!m,{name:"values"}),h(l,E,y||!m,{name:"values"})},8672:function(s,c,t){"use strict";var n=t(5546),e=t(4418),r=t(3409),o=t(1111),a=t(590),i=t(1002),l=t(1252),u=n.RangeError,f=n.Int8Array,d=f&&f.prototype,v=d&&d.set,p=r.aTypedArray,h=r.exportTypedArrayMethod,g=!l(function(){var m=new Uint8ClampedArray(2);return e(v,m,{length:1,0:3},1),m[1]!==3}),y=g&&r.NATIVE_ARRAY_BUFFER_VIEWS&&l(function(){var m=new f(2);return m.set(1),m.set("2",1),m[0]!==0||m[1]!==2});h("set",function(E){p(this);var O=a(arguments.length>1?arguments[1]:void 0,1),S=i(E);if(g)return e(v,this,S,O);var T=this.length,x=o(S),N=0;if(x+O>T)throw u("Wrong length");for(;N0&&1/T<0?1:-1:S>T}};p("sort",function(S){return S!==void 0&&o(S),m?g(this,S):a(v(this),E(S))},!m||y)},2570:function(s,c,t){"use strict";var n=t(5546),e=t(2144),r=t(3409),o=t(1252),a=t(3419),i=n.Int8Array,l=r.aTypedArray,u=r.exportTypedArrayMethod,f=[].toLocaleString,d=!!i&&o(function(){f.call(new i(1))}),v=o(function(){return[1,2].toLocaleString()!=new i([1,2]).toLocaleString()})||!o(function(){i.prototype.toLocaleString.call([1,2])});u("toLocaleString",function(){return e(f,d?a(l(this)):l(this),a(arguments))},v)},97:function(s,c,t){"use strict";var n=t(3409).exportTypedArrayMethod,e=t(1252),r=t(5546),o=t(811),a=r.Uint8Array,i=a&&a.prototype||{},l=[].toString,u=o([].join);e(function(){l.call({})})&&(l=function(){return u(this)});var f=i.toString!=l;n("toString",l,f)},9328:function(s,c,t){var n=t(7660);n("Uint8",function(e){return function(o,a,i){return e(this,o,a,i)}})},8537:function(s,c,t){"use strict";var n=t(5546),e=t(811),r=t(2954),o=t(468),a=t(9937),i=t(5945),l=t(4213),u=t(6597),f=t(3068).enforce,d=t(5327),v=!n.ActiveXObject&&"ActiveXObject"in n,p,h=function(T){return function(){return T(this,arguments.length?arguments[0]:void 0)}},g=a("WeakMap",h,i);if(d&&v){p=i.getConstructor(h,"WeakMap",!0),o.enable();var y=g.prototype,m=e(y.delete),E=e(y.has),O=e(y.get),S=e(y.set);r(y,{delete:function(T){if(l(T)&&!u(T)){var x=f(this);return x.frozen||(x.frozen=new p),m(this,T)||x.frozen.delete(T)}return m(this,T)},has:function(x){if(l(x)&&!u(x)){var N=f(this);return N.frozen||(N.frozen=new p),E(this,x)||N.frozen.has(x)}return E(this,x)},get:function(x){if(l(x)&&!u(x)){var N=f(this);return N.frozen||(N.frozen=new p),E(this,x)?O(this,x):N.frozen.get(x)}return O(this,x)},set:function(x,N){if(l(x)&&!u(x)){var I=f(this);I.frozen||(I.frozen=new p),E(this,x)?S(this,x,N):I.frozen.set(x,N)}else S(this,x,N);return this}})}},7331:function(s,c,t){t(8537)},4149:function(s,c,t){t(3376)},1003:function(s,c,t){t(4056)},7861:function(s,c,t){var n=t(5546),e=t(7663),r=t(2421),o=t(4346),a=t(7138),i=function(u){if(u&&u.forEach!==o)try{a(u,"forEach",o)}catch{u.forEach=o}};for(var l in e)e[l]&&i(n[l]&&n[l].prototype);i(r)},7608:function(s,c,t){var n=t(5546),e=t(7663),r=t(2421),o=t(2859),a=t(7138),i=t(9552),l=i("iterator"),u=i("toStringTag"),f=o.values,d=function(p,h){if(p){if(p[l]!==f)try{a(p,l,f)}catch{p[l]=f}if(p[u]||a(p,u,h),e[h]){for(var g in o)if(p[g]!==o[g])try{a(p,g,o[g])}catch{p[g]=o[g]}}}};for(var v in e)d(n[v]&&n[v].prototype,v);d(r,"DOMTokenList")},4473:function(s,c,t){"use strict";t(2859);var n=t(6939),e=t(5546),r=t(4418),o=t(811),a=t(3743),i=t(1087),l=t(8383),u=t(2954),f=t(1392),d=t(5301),v=t(3068),p=t(8612),h=t(2418),g=t(6388),y=t(6815),m=t(7444),E=t(4248),O=t(4213),S=t(5032),T=t(6867),x=t(3601),N=t(9940),I=t(8976),M=t(7163),j=t(9552),C=t(9209),Y=j("iterator"),H="URLSearchParams",U=H+"Iterator",B=v.set,P=v.getterFor(H),F=v.getterFor(U),Q=Object.getOwnPropertyDescriptor,W=function(K){if(!a)return e[K];var rt=Q(e,K);return rt&&rt.value},z=W("fetch"),D=W("Request"),R=W("Headers"),A=D&&D.prototype,b=R&&R.prototype,V=e.RegExp,k=e.TypeError,Z=e.decodeURIComponent,ot=e.encodeURIComponent,et=o("".charAt),_=o([].join),it=o([].push),ft=o("".replace),gt=o([].shift),yt=o([].splice),Tt=o("".split),jt=o("".slice),Et=/\+/g,Ot=Array(4),Lt=function(K){return Ot[K-1]||(Ot[K-1]=V("((?:%[\\da-f]{2}){"+K+"})","gi"))},At=function(K){try{return Z(K)}catch{return K}},It=function(K){var rt=ft(K,Et," "),nt=4;try{return Z(rt)}catch{for(;nt;)rt=ft(rt,Lt(nt--),At);return rt}},Mt=/[!'()~]|%20/g,tt={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+"},st=function(K){return tt[K]},$=function(K){return ft(ot(K),Mt,st)},ut=d(function(rt,nt){B(this,{type:U,iterator:N(P(rt).entries),kind:nt})},"Iterator",function(){var rt=F(this),nt=rt.kind,dt=rt.iterator.next(),St=dt.value;return dt.done||(dt.value=nt==="keys"?St.key:nt==="values"?St.value:[St.key,St.value]),dt},!0),vt=function(K){this.entries=[],this.url=null,K!==void 0&&(O(K)?this.parseObject(K):this.parseQuery(typeof K=="string"?et(K,0)==="?"?jt(K,1):K:S(K)))};vt.prototype={type:H,bindURL:function(K){this.url=K,this.update()},parseObject:function(K){var rt=I(K),nt,dt,St,Dt,bt,Yt,Ct;if(rt)for(nt=N(K,rt),dt=nt.next;!(St=r(dt,nt)).done;){if(Dt=N(E(St.value)),bt=Dt.next,(Yt=r(bt,Dt)).done||(Ct=r(bt,Dt)).done||!r(bt,Dt).done)throw k("Expected sequence with length 2");it(this.entries,{key:S(Yt.value),value:S(Ct.value)})}else for(var Bt in K)g(K,Bt)&&it(this.entries,{key:Bt,value:S(K[Bt])})},parseQuery:function(K){if(K)for(var rt=Tt(K,"&"),nt=0,dt,St;nt0?arguments[0]:void 0;B(this,new vt(rt))},ht=at.prototype;if(u(ht,{append:function(rt,nt){M(arguments.length,2);var dt=P(this);it(dt.entries,{key:S(rt),value:S(nt)}),dt.updateURL()},delete:function(K){M(arguments.length,1);for(var rt=P(this),nt=rt.entries,dt=S(K),St=0;Stdt.key?1:-1}),rt.updateURL()},forEach:function(rt){for(var nt=P(this).entries,dt=y(rt,arguments.length>1?arguments[1]:void 0),St=0,Dt;St1?mt(arguments[1]):{})}}),h(D)){var pt=function(rt){return p(this,A),new D(rt,arguments.length>1?mt(arguments[1]):{})};A.constructor=pt,pt.prototype=A,n({global:!0,constructor:!0,dontCallGetSet:!0,forced:!0},{Request:pt})}}s.exports={URLSearchParams:at,getState:P}},6019:function(s,c,t){t(4473)},6309:function(s,c,t){"use strict";t(7417);var n=t(6939),e=t(3743),r=t(1087),o=t(5546),a=t(6815),i=t(811),l=t(8383),u=t(5963),f=t(8612),d=t(6388),v=t(122),p=t(9493),h=t(9114),g=t(6982).codeAt,y=t(1372),m=t(5032),E=t(1392),O=t(7163),S=t(4473),T=t(3068),x=T.set,N=T.getterFor("URL"),I=S.URLSearchParams,M=S.getState,j=o.URL,C=o.TypeError,Y=o.parseInt,H=Math.floor,U=Math.pow,B=i("".charAt),P=i(/./.exec),F=i([].join),Q=i(1 .toString),W=i([].pop),z=i([].push),D=i("".replace),R=i([].shift),A=i("".split),b=i("".slice),V=i("".toLowerCase),k=i([].unshift),Z="Invalid authority",ot="Invalid scheme",et="Invalid host",_="Invalid port",it=/[a-z]/i,ft=/[\d+-.a-z]/i,gt=/\d/,yt=/^0x/i,Tt=/^[0-7]+$/,jt=/^\d+$/,Et=/^[\da-f]+$/i,Ot=/[\0\t\n\r #%/:<>?@[\\\]^|]/,Lt=/[\0\t\n\r #/:<>?@[\\\]^|]/,At=/^[\u0000-\u0020]+|[\u0000-\u0020]+$/g,It=/[\t\n\r]/g,Mt,tt=function(w){var q=A(w,"."),G,L,J,Nt,lt,Pt,Rt;if(q.length&&q[q.length-1]==""&&q.length--,G=q.length,G>4)return w;for(L=[],J=0;J1&&B(Nt,0)=="0"&&(lt=P(yt,Nt)?16:8,Nt=b(Nt,lt==8?1:2)),Nt==="")Pt=0;else{if(!P(lt==10?jt:lt==8?Tt:Et,Nt))return w;Pt=Y(Nt,lt)}z(L,Pt)}for(J=0;J=U(256,5-G))return null}else if(Pt>255)return null;for(Rt=W(L),J=0;J6))return;for(Pt=0;zt();){if(Rt=null,Pt>0)if(zt()=="."&&Pt<4)J++;else return;if(!P(gt,zt()))return;for(;P(gt,zt());){if(Ut=Y(zt(),10),Rt===null)Rt=Ut;else{if(Rt==0)return;Rt=Rt*10+Ut}if(Rt>255)return;J++}q[G]=q[G]*256+Rt,Pt++,(Pt==2||Pt==4)&&G++}if(Pt!=4)return;break}else if(zt()==":"){if(J++,!zt())return}else if(zt())return;q[G++]=Nt}if(L!==null)for(Vt=G-L,G=7;G!=0&&Vt>0;)X=q[G],q[G--]=q[L+Vt-1],q[L+--Vt]=X;else if(G!=8)return;return q},$=function(w){for(var q=null,G=1,L=null,J=0,Nt=0;Nt<8;Nt++)w[Nt]!==0?(J>G&&(q=L,G=J),L=null,J=0):(L===null&&(L=Nt),++J);return J>G&&(q=L,G=J),q},ut=function(w){var q,G,L,J;if(typeof w=="number"){for(q=[],G=0;G<4;G++)k(q,w%256),w=H(w/256);return F(q,".")}else if(typeof w=="object"){for(q="",L=$(w),G=0;G<8;G++)J&&w[G]===0||(J&&(J=!1),L===G?(q+=G?":":"::",J=!0):(q+=Q(w[G],16),G<7&&(q+=":")));return"["+q+"]"}return w},vt={},at=v({},vt,{" ":1,'"':1,"<":1,">":1,"`":1}),ht=v({},at,{"#":1,"?":1,"{":1,"}":1}),xt=v({},ht,{"/":1,":":1,";":1,"=":1,"@":1,"[":1,"\\":1,"]":1,"^":1,"|":1}),ct=function(w,q){var G=g(w,0);return G>32&&G<127&&!d(q,w)?w:encodeURIComponent(w)},mt={ftp:21,file:null,http:80,https:443,ws:80,wss:443},pt=function(w,q){var G;return w.length==2&&P(it,B(w,0))&&((G=B(w,1))==":"||!q&&G=="|")},K=function(w){var q;return w.length>1&&pt(b(w,0,2))&&(w.length==2||(q=B(w,2))==="/"||q==="\\"||q==="?"||q==="#")},rt=function(w){return w==="."||V(w)==="%2e"},nt=function(w){return w=V(w),w===".."||w==="%2e."||w===".%2e"||w==="%2e%2e"},dt={},St={},Dt={},bt={},Yt={},Ct={},Bt={},Jt={},qt={},_t={},te={},ee={},re={},ne={},le={},oe={},Zt={},Gt={},fe={},Kt={},$t={},ae=function(w,q,G){var L=m(w),J,Nt,lt;if(q){if(Nt=this.parse(L),Nt)throw C(Nt);this.searchParams=null}else{if(G!==void 0&&(J=new ae(G,!0)),Nt=this.parse(L,null,J),Nt)throw C(Nt);lt=M(new I),lt.bindURL(this),this.searchParams=lt}};ae.prototype={type:"URL",parse:function(w,q,G){var L=this,J=q||dt,Nt=0,lt="",Pt=!1,Rt=!1,Ut=!1,Vt,X,zt,Qt;for(w=m(w),q||(L.scheme="",L.username="",L.password="",L.host=null,L.port=null,L.path=[],L.query=null,L.fragment=null,L.cannotBeABaseURL=!1,w=D(w,At,"")),w=D(w,It,""),Vt=p(w);Nt<=Vt.length;){switch(X=Vt[Nt],J){case dt:if(X&&P(it,X))lt+=V(X),J=St;else{if(q)return ot;J=Dt;continue}break;case St:if(X&&(P(ft,X)||X=="+"||X=="-"||X=="."))lt+=V(X);else if(X==":"){if(q&&(L.isSpecial()!=d(mt,lt)||lt=="file"&&(L.includesCredentials()||L.port!==null)||L.scheme=="file"&&!L.host))return;if(L.scheme=lt,q){L.isSpecial()&&mt[L.scheme]==L.port&&(L.port=null);return}lt="",L.scheme=="file"?J=ne:L.isSpecial()&&G&&G.scheme==L.scheme?J=bt:L.isSpecial()?J=Jt:Vt[Nt+1]=="/"?(J=Yt,Nt++):(L.cannotBeABaseURL=!0,z(L.path,""),J=fe)}else{if(q)return ot;lt="",J=Dt,Nt=0;continue}break;case Dt:if(!G||G.cannotBeABaseURL&&X!="#")return ot;if(G.cannotBeABaseURL&&X=="#"){L.scheme=G.scheme,L.path=h(G.path),L.query=G.query,L.fragment="",L.cannotBeABaseURL=!0,J=$t;break}J=G.scheme=="file"?ne:Ct;continue;case bt:if(X=="/"&&Vt[Nt+1]=="/")J=qt,Nt++;else{J=Ct;continue}break;case Yt:if(X=="/"){J=_t;break}else{J=Gt;continue}case Ct:if(L.scheme=G.scheme,X==Mt)L.username=G.username,L.password=G.password,L.host=G.host,L.port=G.port,L.path=h(G.path),L.query=G.query;else if(X=="/"||X=="\\"&&L.isSpecial())J=Bt;else if(X=="?")L.username=G.username,L.password=G.password,L.host=G.host,L.port=G.port,L.path=h(G.path),L.query="",J=Kt;else if(X=="#")L.username=G.username,L.password=G.password,L.host=G.host,L.port=G.port,L.path=h(G.path),L.query=G.query,L.fragment="",J=$t;else{L.username=G.username,L.password=G.password,L.host=G.host,L.port=G.port,L.path=h(G.path),L.path.length--,J=Gt;continue}break;case Bt:if(L.isSpecial()&&(X=="/"||X=="\\"))J=qt;else if(X=="/")J=_t;else{L.username=G.username,L.password=G.password,L.host=G.host,L.port=G.port,J=Gt;continue}break;case Jt:if(J=qt,X!="/"||B(lt,Nt+1)!="/")continue;Nt++;break;case qt:if(X!="/"&&X!="\\"){J=_t;continue}break;case _t:if(X=="@"){Pt&&(lt="%40"+lt),Pt=!0,zt=p(lt);for(var se=0;se65535)return _;L.port=L.isSpecial()&&ie===mt[L.scheme]?null:ie,lt=""}if(q)return;J=Zt;continue}else return _;break;case ne:if(L.scheme="file",X=="/"||X=="\\")J=le;else if(G&&G.scheme=="file")if(X==Mt)L.host=G.host,L.path=h(G.path),L.query=G.query;else if(X=="?")L.host=G.host,L.path=h(G.path),L.query="",J=Kt;else if(X=="#")L.host=G.host,L.path=h(G.path),L.query=G.query,L.fragment="",J=$t;else{K(F(h(Vt,Nt),""))||(L.host=G.host,L.path=h(G.path),L.shortenPath()),J=Gt;continue}else{J=Gt;continue}break;case le:if(X=="/"||X=="\\"){J=oe;break}G&&G.scheme=="file"&&!K(F(h(Vt,Nt),""))&&(pt(G.path[0],!0)?z(L.path,G.path[0]):L.host=G.host),J=Gt;continue;case oe:if(X==Mt||X=="/"||X=="\\"||X=="?"||X=="#"){if(!q&&pt(lt))J=Gt;else if(lt==""){if(L.host="",q)return;J=Zt}else{if(Qt=L.parseHost(lt),Qt)return Qt;if(L.host=="localhost"&&(L.host=""),q)return;lt="",J=Zt}continue}else lt+=X;break;case Zt:if(L.isSpecial()){if(J=Gt,X!="/"&&X!="\\")continue}else if(!q&&X=="?")L.query="",J=Kt;else if(!q&&X=="#")L.fragment="",J=$t;else if(X!=Mt&&(J=Gt,X!="/"))continue;break;case Gt:if(X==Mt||X=="/"||X=="\\"&&L.isSpecial()||!q&&(X=="?"||X=="#")){if(nt(lt)?(L.shortenPath(),X!="/"&&!(X=="\\"&&L.isSpecial())&&z(L.path,"")):rt(lt)?X!="/"&&!(X=="\\"&&L.isSpecial())&&z(L.path,""):(L.scheme=="file"&&!L.path.length&&pt(lt)&&(L.host&&(L.host=""),lt=B(lt,0)+":"),z(L.path,lt)),lt="",L.scheme=="file"&&(X==Mt||X=="?"||X=="#"))for(;L.path.length>1&&L.path[0]==="";)R(L.path);X=="?"?(L.query="",J=Kt):X=="#"&&(L.fragment="",J=$t)}else lt+=ct(X,ht);break;case fe:X=="?"?(L.query="",J=Kt):X=="#"?(L.fragment="",J=$t):X!=Mt&&(L.path[0]+=ct(X,vt));break;case Kt:!q&&X=="#"?(L.fragment="",J=$t):X!=Mt&&(X=="'"&&L.isSpecial()?L.query+="%27":X=="#"?L.query+="%23":L.query+=ct(X,vt));break;case $t:X!=Mt&&(L.fragment+=ct(X,at));break}Nt++}},parseHost:function(w){var q,G,L;if(B(w,0)=="["){if(B(w,w.length-1)!="]"||(q=st(b(w,1,-1)),!q))return et;this.host=q}else if(this.isSpecial()){if(w=y(w),P(Ot,w)||(q=tt(w),q===null))return et;this.host=q}else{if(P(Lt,w))return et;for(q="",G=p(w),L=0;L1?arguments[1]:void 0,J=x(G,new ae(q,!1,L));e||(G.href=J.serialize(),G.origin=J.getOrigin(),G.protocol=J.getProtocol(),G.username=J.getUsername(),G.password=J.getPassword(),G.host=J.getHost(),G.hostname=J.getHostname(),G.port=J.getPort(),G.pathname=J.getPathname(),G.search=J.getSearch(),G.searchParams=J.getSearchParams(),G.hash=J.getHash())},Ft=Xt.prototype,wt=function(w,q){return{get:function(){return N(this)[w]()},set:q&&function(G){return N(this)[q](G)},configurable:!0,enumerable:!0}};if(e&&(u(Ft,"href",wt("serialize","setHref")),u(Ft,"origin",wt("getOrigin")),u(Ft,"protocol",wt("getProtocol","setProtocol")),u(Ft,"username",wt("getUsername","setUsername")),u(Ft,"password",wt("getPassword","setPassword")),u(Ft,"host",wt("getHost","setHost")),u(Ft,"hostname",wt("getHostname","setHostname")),u(Ft,"port",wt("getPort","setPort")),u(Ft,"pathname",wt("getPathname","setPathname")),u(Ft,"search",wt("getSearch","setSearch")),u(Ft,"searchParams",wt("getSearchParams")),u(Ft,"hash",wt("getHash","setHash"))),l(Ft,"toJSON",function(){return N(this).serialize()},{enumerable:!0}),l(Ft,"toString",function(){return N(this).serialize()},{enumerable:!0}),j){var ce=j.createObjectURL,ve=j.revokeObjectURL;ce&&l(Xt,"createObjectURL",a(ce,j)),ve&&l(Xt,"revokeObjectURL",a(ve,j))}E(Xt,"URL"),n({global:!0,constructor:!0,forced:!r,sham:!e},{URL:Xt})},8183:function(s,c,t){t(6309)},7703:function(s,c,t){"use strict";var n=t(6939),e=t(4418);n({target:"URL",proto:!0,enumerable:!0},{toJSON:function(){return e(URL.prototype.toString,this)}})},2233:function(s){s.exports=typeof self=="object"?self.FormData:window.FormData},7563:function(s,c,t){t(3324),t(5284),t(4773),t(8210),t(2859),t(6455),t(4683),t(9624),t(7540),t(5488),t(5539),t(4149),t(7861),t(7608);var n=function(e){"use strict";var r=Object.prototype,o=r.hasOwnProperty,a=Object.defineProperty||function(z,D,R){z[D]=R.value},i,l=typeof Symbol=="function"?Symbol:{},u=l.iterator||"@@iterator",f=l.asyncIterator||"@@asyncIterator",d=l.toStringTag||"@@toStringTag";function v(z,D,R){return Object.defineProperty(z,D,{value:R,enumerable:!0,configurable:!0,writable:!0}),z[D]}try{v({},"")}catch{v=function(R,A,b){return R[A]=b}}function p(z,D,R,A){var b=D&&D.prototype instanceof S?D:S,V=Object.create(b.prototype),k=new F(A||[]);return a(V,"_invoke",{value:H(z,R,k)}),V}e.wrap=p;function h(z,D,R){try{return{type:"normal",arg:z.call(D,R)}}catch(A){return{type:"throw",arg:A}}}var g="suspendedStart",y="suspendedYield",m="executing",E="completed",O={};function S(){}function T(){}function x(){}var N={};v(N,u,function(){return this});var I=Object.getPrototypeOf,M=I&&I(I(Q([])));M&&M!==r&&o.call(M,u)&&(N=M);var j=x.prototype=S.prototype=Object.create(N);T.prototype=x,a(j,"constructor",{value:x,configurable:!0}),a(x,"constructor",{value:T,configurable:!0}),T.displayName=v(x,d,"GeneratorFunction");function C(z){["next","throw","return"].forEach(function(D){v(z,D,function(R){return this._invoke(D,R)})})}e.isGeneratorFunction=function(z){var D=typeof z=="function"&&z.constructor;return D?D===T||(D.displayName||D.name)==="GeneratorFunction":!1},e.mark=function(z){return Object.setPrototypeOf?Object.setPrototypeOf(z,x):(z.__proto__=x,v(z,d,"GeneratorFunction")),z.prototype=Object.create(j),z},e.awrap=function(z){return{__await:z}};function Y(z,D){function R(V,k,Z,ot){var et=h(z[V],z,k);if(et.type==="throw")ot(et.arg);else{var _=et.arg,it=_.value;return it&&typeof it=="object"&&o.call(it,"__await")?D.resolve(it.__await).then(function(ft){R("next",ft,Z,ot)},function(ft){R("throw",ft,Z,ot)}):D.resolve(it).then(function(ft){_.value=ft,Z(_)},function(ft){return R("throw",ft,Z,ot)})}}var A;function b(V,k){function Z(){return new D(function(ot,et){R(V,k,ot,et)})}return A=A?A.then(Z,Z):Z()}a(this,"_invoke",{value:b})}C(Y.prototype),v(Y.prototype,f,function(){return this}),e.AsyncIterator=Y,e.async=function(z,D,R,A,b){b===void 0&&(b=Promise);var V=new Y(p(z,D,R,A),b);return e.isGeneratorFunction(D)?V:V.next().then(function(k){return k.done?k.value:V.next()})};function H(z,D,R){var A=g;return function(V,k){if(A===m)throw new Error("Generator is already running");if(A===E){if(V==="throw")throw k;return W()}for(R.method=V,R.arg=k;;){var Z=R.delegate;if(Z){var ot=U(Z,R);if(ot){if(ot===O)continue;return ot}}if(R.method==="next")R.sent=R._sent=R.arg;else if(R.method==="throw"){if(A===g)throw A=E,R.arg;R.dispatchException(R.arg)}else R.method==="return"&&R.abrupt("return",R.arg);A=m;var et=h(z,D,R);if(et.type==="normal"){if(A=R.done?E:y,et.arg===O)continue;return{value:et.arg,done:R.done}}else et.type==="throw"&&(A=E,R.method="throw",R.arg=et.arg)}}}function U(z,D){var R=D.method,A=z.iterator[R];if(A===i)return D.delegate=null,R==="throw"&&z.iterator.return&&(D.method="return",D.arg=i,U(z,D),D.method==="throw")||R!=="return"&&(D.method="throw",D.arg=new TypeError("The iterator does not provide a '"+R+"' method")),O;var b=h(A,z.iterator,D.arg);if(b.type==="throw")return D.method="throw",D.arg=b.arg,D.delegate=null,O;var V=b.arg;if(!V)return D.method="throw",D.arg=new TypeError("iterator result is not an object"),D.delegate=null,O;if(V.done)D[z.resultName]=V.value,D.next=z.nextLoc,D.method!=="return"&&(D.method="next",D.arg=i);else return V;return D.delegate=null,O}C(j),v(j,d,"Generator"),v(j,u,function(){return this}),v(j,"toString",function(){return"[object Generator]"});function B(z){var D={tryLoc:z[0]};1 in z&&(D.catchLoc=z[1]),2 in z&&(D.finallyLoc=z[2],D.afterLoc=z[3]),this.tryEntries.push(D)}function P(z){var D=z.completion||{};D.type="normal",delete D.arg,z.completion=D}function F(z){this.tryEntries=[{tryLoc:"root"}],z.forEach(B,this),this.reset(!0)}e.keys=function(z){var D=Object(z),R=[];for(var A in D)R.push(A);return R.reverse(),function b(){for(;R.length;){var V=R.pop();if(V in D)return b.value=V,b.done=!1,b}return b.done=!0,b}};function Q(z){if(z!=null){var D=z[u];if(D)return D.call(z);if(typeof z.next=="function")return z;if(!isNaN(z.length)){var R=-1,A=function b(){for(;++R=0;--b){var V=this.tryEntries[b],k=V.completion;if(V.tryLoc==="root")return A("end");if(V.tryLoc<=this.prev){var Z=o.call(V,"catchLoc"),ot=o.call(V,"finallyLoc");if(Z&&ot){if(this.prev=0;--A){var b=this.tryEntries[A];if(b.tryLoc<=this.prev&&o.call(b,"finallyLoc")&&this.prev=0;--R){var A=this.tryEntries[R];if(A.finallyLoc===D)return this.complete(A.completion,A.afterLoc),P(A),O}},catch:function(D){for(var R=this.tryEntries.length-1;R>=0;--R){var A=this.tryEntries[R];if(A.tryLoc===D){var b=A.completion;if(b.type==="throw"){var V=b.arg;P(A)}return V}}throw new Error("illegal catch attempt")},delegateYield:function(D,R,A){return this.delegate={iterator:Q(D),resultName:R,nextLoc:A},this.method==="next"&&(this.arg=i),O}},e}(s.exports);try{regeneratorRuntime=n}catch{typeof globalThis=="object"?globalThis.regeneratorRuntime=n:Function("r","regeneratorRuntime = r")(n)}},8122:function(s,c,t){"use strict";var n=t(5264);Object.defineProperty(c,"B",{value:!0}),c.A=void 0,t(1561),t(5488),t(5539),t(666);var e=n(t(1193)),r=t(8052),o=c.A={mixins:[r.localeMixins],props:{hasPermission:{type:Boolean},resourceType:{type:String,default:""},resourceCode:{type:String,default:""},projectCode:{type:String,default:""},ajaxPrefix:{type:String,default:""}},emits:["open-manage"],data(){return{isOpenManageLoading:!1}},computed:{title(){var a={pipeline:this.t("\u5C1A\u672A\u5F00\u542F\u6B64\u6D41\u6C34\u7EBF\u6743\u9650\u7BA1\u7406\u529F\u80FD"),pipeline_group:this.t("\u5C1A\u672A\u5F00\u542F\u6D41\u6C34\u7EBF\u7EC4\u6743\u9650\u7BA1\u7406\u3002\u5F00\u542F\u540E\uFF0C\u53EF\u4EE5\u7ED9\u7EC4\u5185\u6D41\u6C34\u7EBF\u6279\u91CF\u6DFB\u52A0\u7F16\u8F91\u8005\u3001\u6267\u884C\u8005\u6216\u67E5\u770B\u8005\u6743\u9650")};return a[this.resourceType]}},methods:{openManage(){var a=this;return this.isOpenManageLoading=!0,e.default.put("".concat(this.ajaxPrefix,"/auth/api/user/auth/resource/").concat(this.projectCode,"/").concat(this.resourceType,"/").concat(this.resourceCode,"/enable")).then(function(){a.$emit("open-manage")}).finally(function(){a.isOpenManageLoading=!1})}}}},2420:function(s,c,t){"use strict";var n=t(5264);Object.defineProperty(c,"B",{value:!0}),c.A=void 0,t(1561),t(687),t(889),t(1363),t(5488),t(4777),t(5539),t(666),t(7390);var e=n(t(1193)),r=t(8052),o=c.A={mixins:[r.localeMixins],props:{isShow:{type:Boolean},groupName:{type:String},groupId:{type:String},expiredDisplay:{type:String},title:{type:String},type:{type:String,default:"apply"},resourceType:{type:String},ajaxPrefix:{type:String,default:""},projectCode:{type:String,default:""}},emits:["update:show"],data(){var a=this,i=this;return{isLoading:!1,pagination:{page:1,pageSize:20,projectName:""},customTime:1,formData:{expireTime:0,reason:""},currentActive:2592e3,timeFilters:{2592e3:i.t("1\u4E2A\u6708"),7776e3:i.t("3\u4E2A\u6708"),15552e3:i.t("6\u4E2A\u6708"),31104e3:i.t("12\u4E2A\u6708")},rules:{expireTime:[{validator:function(){return a.currentActive==="custom"&&a.customTime?!0:a.currentActive!=="custom"},message:i.t("\u8BF7\u9009\u62E9\u7533\u8BF7\u671F\u9650"),trigger:"blur"}],reason:[{required:!0,message:i.t("\u8BF7\u586B\u5199\u7533\u8BF7\u7406\u7531"),trigger:"blur"}]}}},computed:{userName(){return this.$userInfo&&this.$userInfo.username?this.$userInfo.username:""},projectId(){return this.$route.params.projectId},newExpiredDisplay(){var a={2592e3:30,7776e3:90,15552e3:180,31104e3:360};return this.currentActive==="custom"?Number(this.expiredDisplay)+Number(this.customTime):Number(this.expiredDisplay)+a[this.currentActive]}},created(){this.formData.expireTime=this.formatTimes(2592e3),this.projectCode&&(this.formData.englishName=this.projectCode),this.type==="apply"&&(this.formData.reason="")},methods:{handleConfirm(){if(this.currentActive==="custom"){var a=this.customTime*24*3600;this.formData.expireTime=this.formatTimes(a)}if(this.type==="renewal"){var i=this.newExpiredDisplay*24*3600,l=this.formatTimes(i);this.formData.expireTime=l,this.handleRenewalGroup()}else this.handleApplyGroup()},handleCancel(){var a=this;this.$emit("cancel"),this.customTime=1,this.formData.expireTime=this.formatTimes(2592e3),this.formData.reason="",this.currentActive=2592e3,setTimeout(function(){a.$refs.applyFrom.clearError()},500)},handleChangeCustomTime(a){var i=this;/^[0-9]*$/.test(a)?this.customTime>365&&this.$nextTick(function(){i.customTime=365}):this.$nextTick(function(){i.customTime=1})},handleChangeTime(a){this.$refs.applyFrom.clearError(),this.currentActive=Number(a),this.formData.expireTime=this.formatTimes(a)},handleChangCustom(){this.currentActive="custom"},formatTimes(a){var i=+new Date/1e3,l=String(i).split(""),u=l.findIndex(function(d){return d==="."}),f=parseInt(l.splice(0,u).join(""),10);return Number(a)+f},handleApplyGroup(){var a=this;this.$refs.applyFrom.validate().then(function(){a.isLoading=!0,e.default.post("".concat(a.ajaxPrefix,"/auth/api/user/auth/apply/applyToJoinGroup"),{groupIds:[a.groupId],expiredAt:a.formData.expireTime,reason:a.formData.reason,applicant:a.userName,projectCode:a.projectCode}).then(function(){a.$bkMessage({theme:"success",message:a.t("\u7533\u8BF7\u6210\u529F\uFF0C\u8BF7\u7B49\u5F85\u5BA1\u6279")})}).catch(function(i){a.$bkMessage({theme:"error",message:i.message})}).finally(function(){a.isLoading=!1,a.handleCancel()})})},handleRenewalGroup(){var a=this;this.isLoading=!0,e.default.put("".concat(this.ajaxPrefix,"/auth/api/user/auth/resource/group/").concat(this.projectCode,"/").concat(this.resourceType,"/").concat(this.groupId,"/member/renewal"),{expiredAt:this.formData.expireTime,projectId:this.projectId,resourceType:this.resourceType}).then(function(){a.$bkMessage({theme:"success",message:a.t("\u7533\u8BF7\u6210\u529F\uFF0C\u8BF7\u7B49\u5F85\u5BA1\u6279")})}).catch(function(i){a.$bkMessage({theme:"error",message:i.message})}).finally(function(){a.isLoading=!1,a.handleCancel()})}}}},7123:function(s,c,t){"use strict";var n=t(5264);Object.defineProperty(c,"B",{value:!0}),c.A=void 0,t(1561),t(5488),t(5539),t(666);var e=n(t(1193)),r=n(t(2877)),o=n(t(1651)),a=n(t(1117)),i=n(t(7263)),l=t(8052),u=function(){return{isShow:!1,groupName:"",groupId:"",expiredDisplay:"",title:"",type:""}},f=c.A={components:{ApplyDialog:r.default},mixins:[l.localeMixins],props:{resourceType:{type:String,default:""},resourceCode:{type:String,default:""},projectCode:{type:String,default:""},ajaxPrefix:{type:String,default:""}},data(){return{showDetail:!1,logout:{loading:!1,isShow:!1,groupId:"",name:""},apply:u(),memberList:[],isLoading:!1,isDetailLoading:!1,groupPolicies:[],groupName:""}},computed:{permissionTitle(){var d={pipeline:this.t("\u6D41\u6C34\u7EBF\u7BA1\u7406"),pipeline_template:this.t("\u6D41\u6C34\u7EBF\u6A21\u677F\u7BA1\u7406"),pipeline_group:this.t("\u6D41\u6C34\u7EBF\u7EC4\u7BA1\u7406")};return d[this.resourceType]}},mounted(){this.getMemberList()},methods:{handleHidden(){this.showDetail=!1},getMemberList(){var d=this;return this.isLoading=!0,e.default.get("".concat(this.ajaxPrefix,"/auth/api/user/auth/resource/").concat(this.projectCode,"/").concat(this.resourceType,"/").concat(this.resourceCode,"/groupMember")).then(function(v){d.memberList=v.data}).catch(function(v){d.$bkMessage({theme:"error",message:v.message||v})}).finally(function(){d.isLoading=!1})},handleViewDetail(d){var v=this,p=d.groupId,h=d.groupName;this.groupName=h,this.showDetail=!0,this.isDetailLoading=!0,e.default.get("".concat(this.ajaxPrefix,"/auth/api/user/auth/resource/group/").concat(this.projectCode,"/").concat(this.resourceType,"/").concat(p,"/groupPolicies")).then(function(g){var y=g.data;v.groupPolicies=y}).catch(function(g){v.$bkMessage({theme:"error",message:g.message||g})}).finally(function(){v.isDetailLoading=!1})},statusFormatter(d){var v={NOT_JOINED:this.t("\u672A\u52A0\u5165"),NORMAL:this.t("\u6B63\u5E38"),EXPIRED:this.t("\u5DF2\u8FC7\u671F")};return v[d]},statusIcon(d){var v={NOT_JOINED:o.default,NORMAL:a.default,EXPIRED:i.default};return v[d]},handleRenewal(d){this.apply.isShow=!0,this.apply.groupName=d.groupName,this.apply.groupId=d.groupId,this.apply.expiredDisplay=d.expiredDisplay,this.apply.title=this.t("\u7EED\u671F"),this.apply.type="renewal"},handleApply(d){this.apply.isShow=!0,this.apply.groupName=d.groupName,this.apply.groupId=d.groupId,this.apply.title=this.t("\u7533\u8BF7\u52A0\u5165"),this.apply.type="apply"},handleShowLogout(d){this.logout.isShow=!0,this.logout.groupId=d.groupId,this.logout.name=d.groupName},handleCancelLogout(){this.logout.isShow=!1},handleLogout(){var d=this;return this.logout.loading=!0,e.default.delete("".concat(this.ajaxPrefix,"/auth/api/user/auth/resource/group/").concat(this.projectCode,"/").concat(this.resourceType,"/").concat(this.logout.groupId,"/member")).then(function(){d.handleCancelLogout(),d.getMemberList()}).catch(function(v){d.$bkMessage({theme:"error",message:v.message||v})}).finally(function(){d.logout.loading=!1})}}}},4465:function(s,c,t){"use strict";var n=t(5264);Object.defineProperty(c,"B",{value:!0}),c.A=void 0;var e=n(t(1379)),r=n(t(1648)),o=c.A={props:{title:{type:String,default:""},resourceType:{type:String,default:""},resourceCode:{type:String,default:""},projectCode:{type:String,default:""},ajaxPrefix:{type:String,default:""}},computed:{renderComponent(){return this.resourceType==="project"?r.default:e.default}}}},918:function(s,c,t){"use strict";Object.defineProperty(c,"B",{value:!0}),c.A=void 0;var n=t(8052),e=c.A={mixins:[n.localeMixins]}},5195:function(s,c,t){"use strict";var n=t(5264);Object.defineProperty(c,"B",{value:!0}),c.A=void 0,t(1561),t(9879),t(2874),t(687),t(2859),t(5488),t(5539),t(666),t(7390),t(1971),t(7608),t(7563);var e=n(t(4763)),r=n(t(5647)),o=n(t(1193)),a=t(8052),i=c.A={components:{ScrollLoadList:r.default},mixins:[a.localeMixins],props:{activeIndex:{type:Boolean,default:0},resourceType:{type:String,default:""},resourceCode:{type:String,default:""},resourceName:{type:String,default:""},projectCode:{type:String,default:""},showCreateGroup:{type:Boolean,default:!0},ajaxPrefix:{type:String,default:""}},emits:["choose-group","create-group","close-manage"],data(){return{page:1,activeTab:"",deleteObj:{group:{},isShow:!1,isLoading:!1},closeObj:{isShow:!1,isLoading:!1},groupList:[],hasLoadEnd:!1,isClosing:!1,curGroupIndex:-1}},watch:{activeIndex(l){var u;this.activeTab=((u=this.groupList[l])===null||u===void 0?void 0:u.groupId)||""}},created(){var l=this;return(0,e.default)(regeneratorRuntime.mark(function u(){return regeneratorRuntime.wrap(function(d){for(;;)switch(d.prev=d.next){case 0:window.addEventListener("message",l.handleMessage);case 1:case"end":return d.stop()}},u)}))()},beforeUnmount(){window.removeEventListener("message",this.handleMessage)},methods:{handleGetData(l){var u=this;return o.default.get("".concat(this.ajaxPrefix,"/auth/api/user/auth/resource/").concat(this.projectCode,"/").concat(this.resourceType,"/").concat(this.resourceCode,"/listGroup?page=").concat(this.page,"&pageSize=").concat(l)).then(function(f){var d=f.data;if(u.hasLoadEnd=!d.hasNext,u.groupList.push(...d.records),u.page===1){var v=u.groupList.find(function(p){var h;return+p.groupId==+((h=u.$route.query)===null||h===void 0?void 0:h.groupId)})||u.groupList[0];u.handleChooseGroup(v)}u.page+=1})},refreshList(){return this.groupList=[],this.hasLoadEnd=!1,this.page=1,this.handleGetData(100)},handleShowDeleteGroup(l){this.deleteObj.group=l,this.deleteObj.isShow=!0},handleHiddenDeleteGroup(){this.deleteObj.isShow=!1,this.deleteObj.group={}},handleDeleteGroup(){var l=this;return this.deleteObj.isLoading=!0,o.default.delete("".concat(this.ajaxPrefix,"/auth/api/user/auth/resource/group/").concat(this.projectCode,"/").concat(this.resourceType,"/").concat(this.deleteObj.group.groupId)).then(function(){l.handleHiddenDeleteGroup(),l.refreshList()}).finally(function(){l.deleteObj.isLoading=!1})},handleChooseGroup(l){this.$router.replace({query:{groupId:l.groupId}}),this.activeTab=l.groupId,this.curGroupIndex=this.groupList.findIndex(function(u){return u.groupId===l.groupId}),this.$emit("choose-group",l)},handleCreateGroup(){this.activeTab="",this.$emit("create-group")},handleCloseManage(){var l=this;return this.isClosing=!0,o.default.put("".concat(this.ajaxPrefix,"/auth/api/user/auth/resource/").concat(this.projectCode,"/").concat(this.resourceType,"/").concat(this.resourceCode,"/disable")).then(function(){l.$emit("close-manage")}).finally(function(){l.isClosing=!1})},showCloseManageDialog(){this.closeObj.isShow=!0},handleHiddenCloseManage(){this.closeObj.isShow=!1},handleMessage(l){var u=this,f=l.data;if(f.type==="IAM")switch(f.code){case"create_user_group_submit":this.refreshList().then(function(){var p=u.groupList.find(function(h){var g;return h.groupId===(f==null||(g=f.data)===null||g===void 0?void 0:g.id)})||u.groupList[0];u.handleChooseGroup(p)});break;case"create_user_group_cancel":this.handleChooseGroup(this.groupList[0]);break;case"add_user_confirm":this.groupList[this.curGroupIndex].departmentCount+=f.data.departments.length,this.groupList[this.curGroupIndex].userCount+=f.data.users.length;break;case"remove_user_confirm":var d=f.data.members.filter(function(p){return p.type==="department"}),v=f.data.members.filter(function(p){return p.type==="user"});this.groupList[this.curGroupIndex].departmentCount-=d.length,this.groupList[this.curGroupIndex].userCount-=v.length;break;case"change_group_detail_tab":this.$emit("change-group-detail-tab",f.data.tab)}}}}},2393:function(s,c,t){"use strict";t(3324),t(9879),t(2731);var n=t(5264);Object.defineProperty(c,"B",{value:!0}),c.A=void 0;var e=n(t(619));t(1561),t(2859),t(5488),t(7861),t(7608),t(8183),t(7703),t(6019);function r(i,l){var u=Object.keys(i);if(Object.getOwnPropertySymbols){var f=Object.getOwnPropertySymbols(i);l&&(f=f.filter(function(d){return Object.getOwnPropertyDescriptor(i,d).enumerable})),u.push.apply(u,f)}return u}function o(i){for(var l=1;l=i.length?{done:!0}:{done:!1,value:i[f++]}},e:function(y){throw y},f:d}}throw new TypeError(`Invalid attempt to iterate non-iterable instance. -In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var v,p=!0,h=!1;return{s:function(){u=u.call(i)},n:function(){var y=u.next();return p=y.done,y},e:function(y){h=!0,v=y},f:function(){try{p||u.return==null||u.return()}finally{if(h)throw v}}}}function o(i,l){if(i){if(typeof i=="string")return a(i,l);var u={}.toString.call(i).slice(8,-1);return u==="Object"&&i.constructor&&(u=i.constructor.name),u==="Map"||u==="Set"?Array.from(i):u==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(u)?a(i,l):void 0}}function a(i,l){(l==null||l>i.length)&&(l=i.length);for(var u=0,f=Array(l);ut.length)&&(n=t.length);for(var e=0,r=Array(n);e=0||{}.propertyIsEnumerable.call(r,a)&&(l[a]=r[a])}return l}s.exports=e,s.exports.__esModule=!0,s.exports.default=s.exports},5587:function(s,c,t){t(9631);function n(e,r){if(e==null)return{};var o={};for(var a in e)if({}.hasOwnProperty.call(e,a)){if(r.indexOf(a)>=0)continue;o[a]=e[a]}return o}s.exports=n,s.exports.__esModule=!0,s.exports.default=s.exports},8117:function(s,c,t){var n=t(9657),e=t(8434),r=t(9632),o=t(7674);function a(i,l){return n(i)||e(i,l)||r(i,l)||o()}s.exports=a,s.exports.__esModule=!0,s.exports.default=s.exports},5775:function(s,c,t){t(9933),t(6065),t(1363);var n=t(8260).default;function e(r,o){if(n(r)!="object"||!r)return r;var a=r[Symbol.toPrimitive];if(a!==void 0){var i=a.call(r,o||"default");if(n(i)!="object")return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return(o==="string"?String:Number)(r)}s.exports=e,s.exports.__esModule=!0,s.exports.default=s.exports},9306:function(s,c,t){var n=t(8260).default,e=t(5775);function r(o){var a=e(o,"string");return n(a)=="symbol"?a:a+""}s.exports=r,s.exports.__esModule=!0,s.exports.default=s.exports},8260:function(s,c,t){t(3324),t(5284),t(2859),t(5488),t(7608);function n(e){return s.exports=n=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(r){return typeof r}:function(r){return r&&typeof Symbol=="function"&&r.constructor===Symbol&&r!==Symbol.prototype?"symbol":typeof r},s.exports.__esModule=!0,s.exports.default=s.exports,n(e)}s.exports=n,s.exports.__esModule=!0,s.exports.default=s.exports},9632:function(s,c,t){t(3349),t(4683),t(5488),t(7390),t(6698);var n=t(8193);function e(r,o){if(r){if(typeof r=="string")return n(r,o);var a={}.toString.call(r).slice(8,-1);return a==="Object"&&r.constructor&&(a=r.constructor.name),a==="Map"||a==="Set"?Array.from(r):a==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(a)?n(r,o):void 0}}s.exports=e,s.exports.__esModule=!0,s.exports.default=s.exports},3079:function(s){"use strict";s.exports=JSON.parse('{"zh-CN":{"\u5F00\u542F\u6743\u9650\u7BA1\u7406":"\u5F00\u542F\u6743\u9650\u7BA1\u7406","\u7528\u6237\u7EC4\u540D":"\u7528\u6237\u7EC4\u540D","\u6388\u6743\u671F\u9650":"\u6388\u6743\u671F\u9650","\u81EA\u5B9A\u4E49":"\u81EA\u5B9A\u4E49","\u5929":"\u5929","\u5230\u671F\u65F6\u95F4":"\u5230\u671F\u65F6\u95F4","\u7406\u7531":"\u7406\u7531","\u786E\u5B9A":"\u786E\u5B9A","\u53D6\u6D88":"\u53D6\u6D88","1\u4E2A\u6708":"1\u4E2A\u6708","3\u4E2A\u6708":"3\u4E2A\u6708","6\u4E2A\u6708":"6\u4E2A\u6708","12\u4E2A\u6708":"12\u4E2A\u6708","\u8BF7\u9009\u62E9\u7533\u8BF7\u671F\u9650":"\u8BF7\u9009\u62E9\u7533\u8BF7\u671F\u9650","\u8BF7\u586B\u5199\u7533\u8BF7\u7406\u7531":"\u8BF7\u586B\u5199\u7533\u8BF7\u7406\u7531","\u7533\u8BF7\u6210\u529F\uFF0C\u8BF7\u7B49\u5F85\u5BA1\u6279":"\u7533\u8BF7\u6210\u529F\uFF0C\u8BF7\u7B49\u5F85\u5BA1\u6279","\u7528\u6237\u7EC4":"\u7528\u6237\u7EC4","\u6DFB\u52A0\u65F6\u95F4":"\u6DFB\u52A0\u65F6\u95F4","\u6709\u6548\u671F":"\u6709\u6548\u671F","\u72B6\u6001":"\u72B6\u6001","\u64CD\u4F5C":"\u64CD\u4F5C","\u6743\u9650\u8BE6\u60C5":"\u6743\u9650\u8BE6\u60C5","\u7533\u8BF7\u52A0\u5165":"\u7533\u8BF7\u52A0\u5165","\u7EED\u671F":"\u7EED\u671F","\u9000\u51FA":"\u9000\u51FA","\u786E\u8BA4\u9000\u51FA\u7528\u6237\u7EC4":"\u786E\u8BA4\u9000\u51FA\u7528\u6237\u7EC4","\u9000\u51FA\u540E\uFF0C\u5C06\u65E0\u6CD5\u518D\u4F7F\u7528\u6240\u8D4B\u4E88\u7684\u6743\u9650\u3002":"\u9000\u51FA\u540E\uFF0C\u5C06\u65E0\u6CD5\u518D\u4F7F\u7528\u3010{0}\u3011\u6240\u8D4B\u4E88\u7684\u6743\u9650\u3002","\u672A\u52A0\u5165":"\u672A\u52A0\u5165","\u6B63\u5E38":"\u6B63\u5E38","\u5DF2\u8FC7\u671F":"\u5DF2\u8FC7\u671F","\u65E0\u8BE5\u9879\u76EE\u7528\u6237\u7EC4\u7BA1\u7406\u6743\u9650":"\u65E0\u8BE5\u9879\u76EE\u7528\u6237\u7EC4\u7BA1\u7406\u6743\u9650","\u6743\u9650\u89D2\u8272":"\u6743\u9650\u89D2\u8272","\u5220\u9664":"\u5220\u9664","\u65B0\u5EFA\u7528\u6237\u7EC4":"\u65B0\u5EFA\u7528\u6237\u7EC4","\u5173\u95ED\u6743\u9650\u7BA1\u7406":"\u5173\u95ED\u6743\u9650\u7BA1\u7406","\u662F\u5426\u5220\u9664\u7528\u6237\u7EC4":"\u662F\u5426\u5220\u9664\u7528\u6237\u7EC4","\u786E\u8BA4\u5173\u95ED\u3010\u3011\u7684\u6743\u9650\u7BA1\u7406\uFF1F":"\u786E\u8BA4\u5173\u95ED\u3010{0}\u3011\u7684\u6743\u9650\u7BA1\u7406\uFF1F","\u5173\u95ED\u6D41\u6C34\u7EBF\u6743\u9650\u7BA1\u7406\uFF0C\u5C06\u6267\u884C\u5982\u4E0B\u64CD\u4F5C\uFF1A":"\u5173\u95ED{0}\u6743\u9650\u7BA1\u7406\uFF0C\u5C06\u6267\u884C\u5982\u4E0B\u64CD\u4F5C\uFF1A","\u6D41\u6C34\u7EBF":"\u6D41\u6C34\u7EBF","\u6D41\u6C34\u7EBF\u7EC4":"\u6D41\u6C34\u7EBF\u7EC4","\u6D41\u6C34\u7EBF\u6A21\u677F":"\u6D41\u6C34\u7EBF\u6A21\u677F","\u5173\u95ED\u6743\u9650\u7BA1\u7406\uFF0C\u5C06\u6267\u884C\u5982\u4E0B\u64CD\u4F5C\uFF1A":"\u5173\u95ED{0}\u6743\u9650\u7BA1\u7406\uFF0C\u5C06\u6267\u884C\u5982\u4E0B\u64CD\u4F5C\uFF1A","\u5C06\u7F16\u8F91\u8005\u4E2D\u7684\u7528\u6237\u79FB\u9664":"\u5C06\u7F16\u8F91\u8005\u4E2D\u7684\u7528\u6237\u79FB\u9664","\u5C06\u7F16\u8F91\u8005\u3001\u6267\u884C\u8005\u3001\u67E5\u770B\u8005\u4E2D\u7684\u7528\u6237\u79FB\u9664":"\u5C06\u7F16\u8F91\u8005\u3001\u6267\u884C\u8005\u3001\u67E5\u770B\u8005\u4E2D\u7684\u7528\u6237\u79FB\u9664","\u5220\u9664\u5BF9\u5E94\u7EC4\u5185\u7528\u6237\u7EE7\u627F\u8BE5\u7EC4\u7684\u6743\u9650":"\u5220\u9664\u5BF9\u5E94\u7EC4\u5185\u7528\u6237\u7EE7\u627F\u8BE5\u7EC4\u7684\u6743\u9650","\u5220\u9664\u5BF9\u5E94\u7EC4\u4FE1\u606F\u548C\u7EC4\u6743\u9650":"\u5220\u9664\u5BF9\u5E94\u7EC4\u4FE1\u606F\u548C\u7EC4\u6743\u9650","\u63D0\u4EA4\u540E\uFF0C\u518D\u6B21\u5F00\u542F\u6743\u9650\u7BA1\u7406\u65F6\u5BF9\u5E94\u7EC4\u5185\u7528\u6237\u5C06\u4E0D\u80FD\u6062\u590D,\u8BF7\u8C28\u614E\u64CD\u4F5C!":"\u63D0\u4EA4\u540E\uFF0C\u518D\u6B21\u5F00\u542F\u6743\u9650\u7BA1\u7406\u65F6\u5BF9\u5E94\u7EC4\u5185\u7528\u6237\u5C06\u4E0D\u80FD\u6062\u590D,\u8BF7\u8C28\u614E\u64CD\u4F5C!","\u4E0D\u80FD\u6062\u590D":"\u4E0D\u80FD\u6062\u590D","\u9700\u8981\u7533\u8BF7\u7684\u6743\u9650":"\u9700\u8981\u7533\u8BF7\u7684\u6743\u9650","\u5173\u8054\u7684\u8D44\u6E90\u7C7B\u578B":"\u5173\u8054\u7684\u8D44\u6E90\u7C7B\u578B","\u5173\u8054\u7684\u8D44\u6E90\u5B9E\u4F8B":"\u5173\u8054\u7684\u8D44\u6E90\u5B9E\u4F8B","\u6CA1\u6709\u64CD\u4F5C\u6743\u9650":"\u6CA1\u6709\u64CD\u4F5C\u6743\u9650","\u53BB\u7533\u8BF7":"\u53BB\u7533\u8BF7","\u8BF7\u5728\u6743\u9650\u7BA1\u7406\u9875\u586B\u5199\u6743\u9650\u7533\u8BF7\u5355\uFF0C\u63D0\u4EA4\u5B8C\u6210\u540E\u518D\u5237\u65B0\u8BE5\u9875\u9762":"\u8BF7\u5728\u6743\u9650\u7BA1\u7406\u9875\u586B\u5199\u6743\u9650\u7533\u8BF7\u5355\uFF0C\u63D0\u4EA4\u5B8C\u6210\u540E\u518D\u5237\u65B0\u8BE5\u9875\u9762","\u5237\u65B0\u9875\u9762":"\u5237\u65B0\u9875\u9762","\u5173\u95ED":"\u5173\u95ED","\u6743\u9650\u7533\u8BF7\u5355\u5DF2\u63D0\u4EA4":"\u6743\u9650\u7533\u8BF7\u5355\u5DF2\u63D0\u4EA4","\u5C1A\u672A\u5F00\u542F\u6D41\u6C34\u7EBF\u7EC4\u6743\u9650\u7BA1\u7406\u3002\u5F00\u542F\u540E\uFF0C\u53EF\u4EE5\u7ED9\u7EC4\u5185\u6D41\u6C34\u7EBF\u6279\u91CF\u6DFB\u52A0\u7F16\u8F91\u8005\u3001\u6267\u884C\u8005\u6216\u67E5\u770B\u8005\u6743\u9650":"\u5C1A\u672A\u5F00\u542F\u6D41\u6C34\u7EBF\u7EC4\u6743\u9650\u7BA1\u7406\u3002\u5F00\u542F\u540E\uFF0C\u53EF\u4EE5\u7ED9\u7EC4\u5185\u6D41\u6C34\u7EBF\u6279\u91CF\u6DFB\u52A0\u7F16\u8F91\u8005\u3001\u6267\u884C\u8005\u6216\u67E5\u770B\u8005\u6743\u9650","\u5C1A\u672A\u5F00\u542F\u6B64\u6D41\u6C34\u7EBF\u6743\u9650\u7BA1\u7406\u529F\u80FD":"\u5C1A\u672A\u5F00\u542F\u6B64\u6D41\u6C34\u7EBF\u6743\u9650\u7BA1\u7406\u529F\u80FD","\u6D41\u6C34\u7EBF\u7BA1\u7406":"\u6D41\u6C34\u7EBF\u7BA1\u7406","\u6D41\u6C34\u7EBF\u6A21\u677F\u7BA1\u7406":"\u6D41\u6C34\u7EBF\u6A21\u677F\u7BA1\u7406","\u6D41\u6C34\u7EBF\u7EC4\u7BA1\u7406":"\u6D41\u6C34\u7EBF\u7EC4\u7BA1\u7406","\u901A\u8FC7\u7528\u6237\u7EC4\u83B7\u5F97\u6743\u9650\uFF0C\u82E5\u9700\u7EED\u671F\u8BF7\u8054\u7CFB\u9879\u76EE\u7BA1\u7406\u5458\u7EED\u671F\u7528\u6237\u7EC4":"\u901A\u8FC7\u7528\u6237\u7EC4\u83B7\u5F97\u6743\u9650\uFF0C\u82E5\u9700\u7EED\u671F\u8BF7\u8054\u7CFB\u9879\u76EE\u7BA1\u7406\u5458\u7EED\u671F\u7528\u6237\u7EC4","\u901A\u8FC7\u7528\u6237\u7EC4\u83B7\u5F97\u6743\u9650\uFF0C\u82E5\u9700\u9000\u51FA\u5148\u8054\u7CFB\u9879\u76EE\u7BA1\u7406\u5458\u9000\u51FA\u7528\u6237\u7EC4":"\u901A\u8FC7\u7528\u6237\u7EC4\u83B7\u5F97\u6743\u9650\uFF0C\u82E5\u9700\u9000\u51FA\u5148\u8054\u7CFB\u9879\u76EE\u7BA1\u7406\u5458\u9000\u51FA\u7528\u6237\u7EC4"},"en-US":{"\u5F00\u542F\u6743\u9650\u7BA1\u7406":"Turn on permission management","\u7528\u6237\u7EC4\u540D":"User Group Name","\u6388\u6743\u671F\u9650":"Authorization Term","\u81EA\u5B9A\u4E49":"Custom","\u5929":"day","\u5230\u671F\u65F6\u95F4":"Expire at","\u7406\u7531":"Reason","\u786E\u5B9A":"Confirm","\u53D6\u6D88":"Cancel","1\u4E2A\u6708":"1 Month","3\u4E2A\u6708":"3 Month","6\u4E2A\u6708":"6 Month","12\u4E2A\u6708":"12 Month","\u8BF7\u9009\u62E9\u7533\u8BF7\u671F\u9650":"Please select the application period","\u8BF7\u586B\u5199\u7533\u8BF7\u7406\u7531":"Please fill in the reason for application","\u7533\u8BF7\u6210\u529F\uFF0C\u8BF7\u7B49\u5F85\u5BA1\u6279":"Application successful, please wait for approval","\u7528\u6237\u7EC4":"User Group","\u6DFB\u52A0\u65F6\u95F4":"Add Time","\u6709\u6548\u671F":"Validity","\u72B6\u6001":"Status","\u64CD\u4F5C":"Actions","\u6743\u9650\u8BE6\u60C5":"Permission Details","\u7533\u8BF7\u52A0\u5165":"Apply to join","\u7EED\u671F":"Renewal","\u9000\u51FA":"Exit","\u786E\u8BA4\u9000\u51FA\u7528\u6237\u7EC4":"Confirm exit user group","\u9000\u51FA\u540E\uFF0C\u5C06\u65E0\u6CD5\u518D\u4F7F\u7528\u6240\u8D4B\u4E88\u7684\u6743\u9650\u3002":"After logging out, you will no longer be able to use the permissions granted by {0}.","\u672A\u52A0\u5165":"Not Joined","\u6B63\u5E38":"Normal","\u5DF2\u8FC7\u671F":"Expired","\u65E0\u8BE5\u9879\u76EE\u7528\u6237\u7EC4\u7BA1\u7406\u6743\u9650":"No user group management permission for this project","\u6743\u9650\u89D2\u8272":"Permission Roles","\u5220\u9664":"Delete","\u65B0\u5EFA\u7528\u6237\u7EC4":"Create new user group","\u5173\u95ED\u6743\u9650\u7BA1\u7406":"Close Permission Manage","\u786E\u8BA4\u5173\u95ED\u3010\u3011\u7684\u6743\u9650\u7BA1\u7406\uFF1F":"Are you sure to close \u3010{0}\u3011 permission management?","\u5173\u95ED\u6D41\u6C34\u7EBF\u6743\u9650\u7BA1\u7406\uFF0C\u5C06\u6267\u884C\u5982\u4E0B\u64CD\u4F5C\uFF1A":"Turning off {0} permission management will perform the following actions:","\u6D41\u6C34\u7EBF":"pipeline","\u6D41\u6C34\u7EBF\u7EC4":"pipeline group","\u6D41\u6C34\u7EBF\u6A21\u677F":"pipeline template","\u5173\u95ED\u6743\u9650\u7BA1\u7406\uFF0C\u5C06\u6267\u884C\u5982\u4E0B\u64CD\u4F5C\uFF1A":"To close {0} permission management, the following operations will be performed:","\u5C06\u7F16\u8F91\u8005\u4E2D\u7684\u7528\u6237\u79FB\u9664":"Remove users from editors","\u5C06\u7F16\u8F91\u8005\u3001\u6267\u884C\u8005\u3001\u67E5\u770B\u8005\u4E2D\u7684\u7528\u6237\u79FB\u9664":"Remove users from editors, executors, and viewers","\u5220\u9664\u5BF9\u5E94\u7EC4\u5185\u7528\u6237\u7EE7\u627F\u8BE5\u7EC4\u7684\u6743\u9650":"Delete the permissions inherited by users in the corresponding group","\u5220\u9664\u5BF9\u5E94\u7EC4\u4FE1\u606F\u548C\u7EC4\u6743\u9650":"Delete the corresponding group information and group permissions","\u63D0\u4EA4\u540E\uFF0C\u518D\u6B21\u5F00\u542F\u6743\u9650\u7BA1\u7406\u65F6\u5BF9\u5E94\u7EC4\u5185\u7528\u6237\u5C06\u4E0D\u80FD\u6062\u590D,\u8BF7\u8C28\u614E\u64CD\u4F5C!":"After submission, group members who have been removed from the corresponding permissions will not be able to recover them when permission management is reopened. Please proceed with caution !","\u4E0D\u80FD\u6062\u590D":"not be able to recover","\u9700\u8981\u7533\u8BF7\u7684\u6743\u9650":"Operation","\u5173\u8054\u7684\u8D44\u6E90\u7C7B\u578B":"Related Resource Type","\u5173\u8054\u7684\u8D44\u6E90\u5B9E\u4F8B":"Related Resource","\u6CA1\u6709\u64CD\u4F5C\u6743\u9650":"No operation permissions","\u53BB\u7533\u8BF7":"Apply","\u8BF7\u5728\u6743\u9650\u7BA1\u7406\u9875\u586B\u5199\u6743\u9650\u7533\u8BF7\u5355\uFF0C\u63D0\u4EA4\u5B8C\u6210\u540E\u518D\u5237\u65B0\u8BE5\u9875\u9762":"Please fill in the permission application form on the permission management page, and refresh the page after submission","\u5237\u65B0\u9875\u9762":"Refresh","\u5173\u95ED":"Close","\u6743\u9650\u7533\u8BF7\u5355\u5DF2\u63D0\u4EA4":"Permission application has been submitted","\u5C1A\u672A\u5F00\u542F\u6D41\u6C34\u7EBF\u7EC4\u6743\u9650\u7BA1\u7406\u3002\u5F00\u542F\u540E\uFF0C\u53EF\u4EE5\u7ED9\u7EC4\u5185\u6D41\u6C34\u7EBF\u6279\u91CF\u6DFB\u52A0\u7F16\u8F91\u8005\u3001\u6267\u884C\u8005\u6216\u67E5\u770B\u8005\u6743\u9650":"Pipeline group permission management is not yet enabled. Once enabled, it will be possible to add editors, executors, or viewers permissions in bulk to pipelines within the group.","\u5C1A\u672A\u5F00\u542F\u6B64\u6D41\u6C34\u7EBF\u6743\u9650\u7BA1\u7406\u529F\u80FD":"The permission management function of this pipeline has not been enabled","\u6D41\u6C34\u7EBF\u7BA1\u7406":"Pipeline Management","\u6D41\u6C34\u7EBF\u6A21\u677F\u7BA1\u7406":"Pipeline Template Management","\u6D41\u6C34\u7EBF\u7EC4\u7BA1\u7406":"Pipeline Group Management","\u901A\u8FC7\u7528\u6237\u7EC4\u83B7\u5F97\u6743\u9650\uFF0C\u82E5\u9700\u7EED\u671F\u8BF7\u8054\u7CFB\u9879\u76EE\u7BA1\u7406\u5458\u7EED\u671F\u7528\u6237\u7EC4":"Obtained permissions through user group, if you need to renew, please contact the project administrator to renew the user group","\u901A\u8FC7\u7528\u6237\u7EC4\u83B7\u5F97\u6743\u9650\uFF0C\u82E5\u9700\u9000\u51FA\u5148\u8054\u7CFB\u9879\u76EE\u7BA1\u7406\u5458\u9000\u51FA\u7528\u6237\u7EC4":"Obtained permissions through user group, if you need to exit, please contact the project administrator to exit the user group first"}}')}},Wt={};function Ht(s){var c=Wt[s];if(c!==void 0)return c.exports;var t=Wt[s]={exports:{}};return kt[s](t,t.exports,Ht),t.exports}(function(){Ht.d=function(s,c){for(var t in c)Ht.o(c,t)&&!Ht.o(s,t)&&Object.defineProperty(s,t,{enumerable:!0,get:c[t]})}})(),function(){Ht.g=function(){if(typeof globalThis=="object")return globalThis;try{return this||new Function("return this")()}catch{if(typeof window=="object")return window}}()}(),function(){Ht.o=function(s,c){return Object.prototype.hasOwnProperty.call(s,c)}}(),function(){Ht.r=function(s){typeof Symbol<"u"&&Symbol.toStringTag&&Object.defineProperty(s,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(s,"__esModule",{value:!0})}}(),function(){Ht.p=""}();var he=Ht(4636);return he}()}); diff --git a/src/frontend/bk-pipeline/dist/bk-pipeline.min.js b/src/frontend/bk-pipeline/dist/bk-pipeline.min.js deleted file mode 100644 index 15df0332388..00000000000 --- a/src/frontend/bk-pipeline/dist/bk-pipeline.min.js +++ /dev/null @@ -1,2 +0,0 @@ -/*! For license information please see bk-pipeline.min.js.LICENSE.txt */ -!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("vue"),require("bk-magic-vue")):"function"==typeof define&&define.amd?define(["vue","bk-magic-vue"],t):"object"==typeof exports?exports.bkPipeline=t(require("vue"),require("bk-magic-vue")):e.bkPipeline=t(e.Vue,e.bkMagic)}(self,((e,t)=>(()=>{var i={606:()=>{!function(){const e='';document.body?document.body.insertAdjacentHTML("afterbegin",e):document.addEventListener("DOMContentLoaded",(function(){document.body.insertAdjacentHTML("afterbegin",e)}))}()},688:(e,t,i)=>{"use strict";i.d(t,{A:()=>s});var n=i(441),o=i.n(n),a=i(562),r=i.n(a)()(o());r.push([e.id,'/*!\n * Tencent is pleased to support the open source community by making BK-CI 蓝鲸持续集成平台 available.\n *\n * Copyright (C) 2019 THL A29 Limited, a Tencent company. All rights reserved.\n *\n * BK-CI 蓝鲸持续集成平台 is licensed under the MIT license.\n *\n * A copy of the MIT License is included in this file.\n *\n *\n * Terms of the MIT License:\n * ---------------------------------------------------\n * 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:\n *\n * The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\n *\n * 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.\n *//*!\n * Tencent is pleased to support the open source community by making BK-CI 蓝鲸持续集成平台 available.\n *\n * Copyright (C) 2019 THL A29 Limited, a Tencent company. All rights reserved.\n *\n * BK-CI 蓝鲸持续集成平台 is licensed under the MIT license.\n *\n * A copy of the MIT License is included in this file.\n *\n *\n * Terms of the MIT License:\n * ---------------------------------------------------\n * 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:\n *\n * The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\n *\n * 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.\n */@keyframes rotating{from{transform:rotate(0)}to{transform:rotate(359deg)}}.connect-line{position:absolute;width:58px;top:19px;stroke:#3c96ff;stroke-width:1;fill:none}.insert-tip{position:absolute;display:block;padding:0 10px;max-width:100px;height:24px;display:flex;align-items:center;border:1px solid #addaff;border-radius:22px;color:#3c96ff;font-size:10px;cursor:pointer;background-color:#fff;box-shadow:0px 2px 4px 0px rgba(60,150,255,.2)}.insert-tip.direction:after{content:"";position:absolute;height:6px;width:6px;background-color:#fff;transform:rotate(45deg);bottom:-4px;left:20px;border-right:1px solid #addaff;border-bottom:1px solid #addaff}.insert-tip .tip-icon{margin:0 5px 0 0;cursor:pointer;position:relative;display:block;width:8px;height:8px;transition:all .3s ease}.insert-tip .tip-icon:before,.insert-tip .tip-icon:after{content:"";position:absolute;left:3px;top:0px;height:8px;width:2px;background-color:#3c96ff}.insert-tip .tip-icon:after{transform:rotate(90deg)}.insert-tip>span{white-space:nowrap}.insert-tip:hover{background-color:#3c96ff;color:#fff;border-color:#3c96ff}.insert-tip:hover.direction:after{background-color:#3c96ff;border-right-color:#3c96ff;border-bottom-color:#3c96ff}.insert-tip:hover .tip-icon{position:relative;display:block;width:8px;height:8px;transition:all .3s ease}.insert-tip:hover .tip-icon:before,.insert-tip:hover .tip-icon:after{content:"";position:absolute;left:3px;top:0px;height:8px;width:2px;background-color:#fff}.insert-tip:hover .tip-icon:after{transform:rotate(90deg)}.pointer{cursor:pointer}span.skip-name{text-decoration:line-through;color:#c4cdd6}span.skip-name:hover{color:#c4cdd6}.spin-icon{display:inline-block;animation:loading .8s linear infinite}.add-plus-icon,.minus-icon{position:relative;display:block;width:18px;height:18px;border:1px solid #addaff;background-color:#fff;border-radius:50%;transition:all .3s ease}.add-plus-icon:before,.minus-icon:before,.add-plus-icon:after,.minus-icon:after{content:"";position:absolute;left:8px;top:5px;left:7px;top:4px;height:8px;width:2px;background-color:#3c96ff}.add-plus-icon:after,.minus-icon:after{transform:rotate(90deg)}.add-plus-icon.active,.active.minus-icon{border-color:#3c96ff;background-color:#3c96ff}.add-plus-icon.active:before,.active.minus-icon:before,.add-plus-icon.active:after,.active.minus-icon:after{background-color:#fff}.add-plus-icon:hover,.minus-icon:hover{border-color:#3c96ff;background-color:#3c96ff}.add-plus-icon:hover:before,.minus-icon:hover:before,.add-plus-icon:hover:after,.minus-icon:hover:after{background-color:#fff}.minus-icon:before{display:none}.un-exec-this-time{opacity:.5}.un-exec-this-time .un-exec-this-time{opacity:1}.readonly .stage-connector{background:#c3cdd7;color:#c3cdd7}.readonly .stage-connector:before{background:#c3cdd7}.readonly .connect-line.left,.readonly .connect-line.right{stroke:#c3cdd7}.readonly .connect-line.left:before,.readonly .connect-line.right:before{stroke:#c3cdd7}.readonly .connect-line.left:after,.readonly .connect-line.right:after{stroke:#c3cdd7;background-color:#c3cdd7}.readonly:after{background:#c3cdd7}.readonly .container-connect-triangle{color:#c3cdd7}.readonly .container-title{cursor:pointer;background-color:#63656e}.readonly .container-title:before,.readonly .container-title:after{border-top-color:#c3cdd7}.readonly .container-title>.container-name span{color:#fff}.editing .stage-connector{background:#3c96ff;color:#3c96ff}.editing .stage-connector:before{background:#3c96ff}.editing .connect-line.left,.editing .connect-line.right{stroke:#3c96ff}.editing .connect-line.left:before,.editing .connect-line.right:before{stroke:#3c96ff}.editing .connect-line.left:after,.editing .connect-line.right:after{stroke:#3c96ff;background-color:#3c96ff}.editing:after{background:#3c96ff}.editing:before{color:#3c96ff}.container-type{font-size:12px;margin-right:12px;font-style:normal}.container-type .devops-icon{font-size:18px}.container-type .devops-icon.icon-exclamation-triangle-shape{font-size:14px}.container-type .devops-icon.icon-exclamation-triangle-shape.is-danger{color:#ff5656}.container-type i{font-style:normal}.bk-pipeline .stage-status:not(.readonly){background-color:#3c96ff}.bk-pipeline .stage-status:not(.readonly).WARNING{background-color:#ffb400;color:#fff}.bk-pipeline .stage-status:not(.readonly).FAILED{background-color:#ff5656;color:#fff}.bk-pipeline .stage-status:not(.readonly).SUCCEED{background-color:#34d97b;color:#fff}.bk-pipeline .stage-status.CANCELED,.bk-pipeline .stage-status.REVIEW_ABORT,.bk-pipeline .stage-status.REVIEWING,.bk-pipeline .stage-name-status-icon.CANCELED,.bk-pipeline .stage-name-status-icon.REVIEW_ABORT,.bk-pipeline .stage-name-status-icon.REVIEWING{color:#ffb400}.bk-pipeline .stage-status.FAILED,.bk-pipeline .stage-status.QUALITY_CHECK_FAIL,.bk-pipeline .stage-status.HEARTBEAT_TIMEOUT,.bk-pipeline .stage-status.QUEUE_TIMEOUT,.bk-pipeline .stage-status.EXEC_TIMEOUT,.bk-pipeline .stage-name-status-icon.FAILED,.bk-pipeline .stage-name-status-icon.QUALITY_CHECK_FAIL,.bk-pipeline .stage-name-status-icon.HEARTBEAT_TIMEOUT,.bk-pipeline .stage-name-status-icon.QUEUE_TIMEOUT,.bk-pipeline .stage-name-status-icon.EXEC_TIMEOUT{color:#ff5656}.bk-pipeline .stage-status.SUCCEED,.bk-pipeline .stage-status.REVIEW_PROCESSED,.bk-pipeline .stage-name-status-icon.SUCCEED,.bk-pipeline .stage-name-status-icon.REVIEW_PROCESSED{color:#34d97b}.bk-pipeline .stage-status.PAUSE,.bk-pipeline .stage-name-status-icon.PAUSE{color:#63656e}.bk-pipeline .container-title .stage-status{color:#fff}.bk-pipeline .container-title.UNEXEC,.bk-pipeline .container-title.SKIP,.bk-pipeline .container-title.DISABLED{color:#fff;background-color:#63656e}.bk-pipeline .container-title.UNEXEC .fold-atom-icon,.bk-pipeline .container-title.SKIP .fold-atom-icon,.bk-pipeline .container-title.DISABLED .fold-atom-icon{color:#63656e}.bk-pipeline .container-title.QUEUE,.bk-pipeline .container-title.RUNNING,.bk-pipeline .container-title.REVIEWING,.bk-pipeline .container-title.PREPARE_ENV,.bk-pipeline .container-title.LOOP_WAITING,.bk-pipeline .container-title.DEPENDENT_WAITING,.bk-pipeline .container-title.CALL_WAITING{background-color:#459fff;color:#fff}.bk-pipeline .container-title.QUEUE .fold-atom-icon,.bk-pipeline .container-title.RUNNING .fold-atom-icon,.bk-pipeline .container-title.REVIEWING .fold-atom-icon,.bk-pipeline .container-title.PREPARE_ENV .fold-atom-icon,.bk-pipeline .container-title.LOOP_WAITING .fold-atom-icon,.bk-pipeline .container-title.DEPENDENT_WAITING .fold-atom-icon,.bk-pipeline .container-title.CALL_WAITING .fold-atom-icon{color:#459fff}.bk-pipeline .container-title.CANCELED,.bk-pipeline .container-title.REVIEW_ABORT,.bk-pipeline .container-title.TRY_FINALLY,.bk-pipeline .container-title.QUEUE_CACHE{background-color:#f6b026}.bk-pipeline .container-title.CANCELED span.skip-name,.bk-pipeline .container-title.REVIEW_ABORT span.skip-name,.bk-pipeline .container-title.TRY_FINALLY span.skip-name,.bk-pipeline .container-title.QUEUE_CACHE span.skip-name{color:#fff}.bk-pipeline .container-title.CANCELED .fold-atom-icon,.bk-pipeline .container-title.REVIEW_ABORT .fold-atom-icon,.bk-pipeline .container-title.TRY_FINALLY .fold-atom-icon,.bk-pipeline .container-title.QUEUE_CACHE .fold-atom-icon{color:#f6b026}.bk-pipeline .container-title.FAILED,.bk-pipeline .container-title.TERMINATE,.bk-pipeline .container-title.HEARTBEAT_TIMEOUT,.bk-pipeline .container-title.QUALITY_CHECK_FAIL,.bk-pipeline .container-title.QUEUE_TIMEOUT,.bk-pipeline .container-title.EXEC_TIMEOUT{color:#fff;background-color:#ff5656}.bk-pipeline .container-title.FAILED .fold-atom-icon,.bk-pipeline .container-title.TERMINATE .fold-atom-icon,.bk-pipeline .container-title.HEARTBEAT_TIMEOUT .fold-atom-icon,.bk-pipeline .container-title.QUALITY_CHECK_FAIL .fold-atom-icon,.bk-pipeline .container-title.QUEUE_TIMEOUT .fold-atom-icon,.bk-pipeline .container-title.EXEC_TIMEOUT .fold-atom-icon{color:#ff5656}.bk-pipeline .container-title.SUCCEED,.bk-pipeline .container-title.REVIEW_PROCESSED,.bk-pipeline .container-title.STAGE_SUCCESS{color:#fff;background-color:#34d97b}.bk-pipeline .container-title.SUCCEED .fold-atom-icon,.bk-pipeline .container-title.REVIEW_PROCESSED .fold-atom-icon,.bk-pipeline .container-title.STAGE_SUCCESS .fold-atom-icon{color:#34d97b}.bk-pipeline .container-title.PAUSE{color:#fff;background-color:#ff9801}.bk-pipeline .container-title.PAUSE .fold-atom-icon{color:#ff9801}.bk-pipeline .bk-pipeline-atom.UNEXEC,.bk-pipeline .bk-pipeline-atom.SKIP,.bk-pipeline .bk-pipeline-atom.DISABLED{color:#63656e}.bk-pipeline .bk-pipeline-atom.CANCELED,.bk-pipeline .bk-pipeline-atom.REVIEW_ABORT,.bk-pipeline .bk-pipeline-atom.REVIEWING{border-color:#ffb400}.bk-pipeline .bk-pipeline-atom.CANCELED:before,.bk-pipeline .bk-pipeline-atom.REVIEW_ABORT:before,.bk-pipeline .bk-pipeline-atom.REVIEWING:before{background-color:#ffb400}.bk-pipeline .bk-pipeline-atom.CANCELED:after,.bk-pipeline .bk-pipeline-atom.REVIEW_ABORT:after,.bk-pipeline .bk-pipeline-atom.REVIEWING:after{border-color:#ffb400}.bk-pipeline .bk-pipeline-atom.CANCELED .atom-icon,.bk-pipeline .bk-pipeline-atom.CANCELED .atom-execute-time,.bk-pipeline .bk-pipeline-atom.CANCELED .stage-check-icon,.bk-pipeline .bk-pipeline-atom.REVIEW_ABORT .atom-icon,.bk-pipeline .bk-pipeline-atom.REVIEW_ABORT .atom-execute-time,.bk-pipeline .bk-pipeline-atom.REVIEW_ABORT .stage-check-icon,.bk-pipeline .bk-pipeline-atom.REVIEWING .atom-icon,.bk-pipeline .bk-pipeline-atom.REVIEWING .atom-execute-time,.bk-pipeline .bk-pipeline-atom.REVIEWING .stage-check-icon{color:#ffb400}.bk-pipeline .bk-pipeline-atom.FAILED,.bk-pipeline .bk-pipeline-atom.TERMINATE,.bk-pipeline .bk-pipeline-atom.HEARTBEAT_TIMEOUT,.bk-pipeline .bk-pipeline-atom.QUALITY_CHECK_FAIL,.bk-pipeline .bk-pipeline-atom.QUEUE_TIMEOUT,.bk-pipeline .bk-pipeline-atom.EXEC_TIMEOUT{border-color:#ff5656}.bk-pipeline .bk-pipeline-atom.FAILED:before,.bk-pipeline .bk-pipeline-atom.TERMINATE:before,.bk-pipeline .bk-pipeline-atom.HEARTBEAT_TIMEOUT:before,.bk-pipeline .bk-pipeline-atom.QUALITY_CHECK_FAIL:before,.bk-pipeline .bk-pipeline-atom.QUEUE_TIMEOUT:before,.bk-pipeline .bk-pipeline-atom.EXEC_TIMEOUT:before{background-color:#ff5656}.bk-pipeline .bk-pipeline-atom.FAILED:after,.bk-pipeline .bk-pipeline-atom.TERMINATE:after,.bk-pipeline .bk-pipeline-atom.HEARTBEAT_TIMEOUT:after,.bk-pipeline .bk-pipeline-atom.QUALITY_CHECK_FAIL:after,.bk-pipeline .bk-pipeline-atom.QUEUE_TIMEOUT:after,.bk-pipeline .bk-pipeline-atom.EXEC_TIMEOUT:after{border-color:#ff5656}.bk-pipeline .bk-pipeline-atom.FAILED .atom-icon,.bk-pipeline .bk-pipeline-atom.FAILED .atom-execute-time,.bk-pipeline .bk-pipeline-atom.FAILED .stage-check-icon,.bk-pipeline .bk-pipeline-atom.TERMINATE .atom-icon,.bk-pipeline .bk-pipeline-atom.TERMINATE .atom-execute-time,.bk-pipeline .bk-pipeline-atom.TERMINATE .stage-check-icon,.bk-pipeline .bk-pipeline-atom.HEARTBEAT_TIMEOUT .atom-icon,.bk-pipeline .bk-pipeline-atom.HEARTBEAT_TIMEOUT .atom-execute-time,.bk-pipeline .bk-pipeline-atom.HEARTBEAT_TIMEOUT .stage-check-icon,.bk-pipeline .bk-pipeline-atom.QUALITY_CHECK_FAIL .atom-icon,.bk-pipeline .bk-pipeline-atom.QUALITY_CHECK_FAIL .atom-execute-time,.bk-pipeline .bk-pipeline-atom.QUALITY_CHECK_FAIL .stage-check-icon,.bk-pipeline .bk-pipeline-atom.QUEUE_TIMEOUT .atom-icon,.bk-pipeline .bk-pipeline-atom.QUEUE_TIMEOUT .atom-execute-time,.bk-pipeline .bk-pipeline-atom.QUEUE_TIMEOUT .stage-check-icon,.bk-pipeline .bk-pipeline-atom.EXEC_TIMEOUT .atom-icon,.bk-pipeline .bk-pipeline-atom.EXEC_TIMEOUT .atom-execute-time,.bk-pipeline .bk-pipeline-atom.EXEC_TIMEOUT .stage-check-icon{color:#ff5656}.bk-pipeline .bk-pipeline-atom.SUCCEED,.bk-pipeline .bk-pipeline-atom.REVIEW_PROCESSED{border-color:#34d97b}.bk-pipeline .bk-pipeline-atom.SUCCEED:before,.bk-pipeline .bk-pipeline-atom.REVIEW_PROCESSED:before{background-color:#34d97b}.bk-pipeline .bk-pipeline-atom.SUCCEED:after,.bk-pipeline .bk-pipeline-atom.REVIEW_PROCESSED:after{border-color:#34d97b}.bk-pipeline .bk-pipeline-atom.SUCCEED .atom-icon,.bk-pipeline .bk-pipeline-atom.SUCCEED .atom-execute-time,.bk-pipeline .bk-pipeline-atom.SUCCEED .stage-check-icon,.bk-pipeline .bk-pipeline-atom.REVIEW_PROCESSED .atom-icon,.bk-pipeline .bk-pipeline-atom.REVIEW_PROCESSED .atom-execute-time,.bk-pipeline .bk-pipeline-atom.REVIEW_PROCESSED .stage-check-icon{color:#34d97b}.bk-pipeline .bk-pipeline-atom.SUCCEED .stage-check-icon,.bk-pipeline .bk-pipeline-atom.REVIEW_PROCESSED .stage-check-icon{border-color:#34d97b}.bk-pipeline .bk-pipeline-atom.PAUSE{border-color:#ff9801;color:#ff9801}.bk-pipeline .bk-pipeline-atom.PAUSE:before{background-color:#ff9801}.bk-pipeline .bk-pipeline-atom.PAUSE:after{border-color:#ff9801}.bk-pipeline .bk-pipeline-atom.PAUSE .atom-icon,.bk-pipeline .bk-pipeline-atom.PAUSE .atom-execute-time{color:#63656e}.bk-pipeline .bk-pipeline-atom.template-compare-atom{border-color:#ff6e00}.bk-pipeline .bk-pipeline-atom.template-compare-atom:before{background-color:#ff6e00}.bk-pipeline .bk-pipeline-atom.template-compare-atom:after{border-color:#ff6e00}.bk-pipeline .bk-pipeline-atom.template-compare-atom:hover{border-color:#ffb400}.bk-pipeline .bk-pipeline-atom.quality-atom{background-color:rgba(0,0,0,0)}.bk-pipeline .bk-pipeline-atom.quality-atom.SUCCEED{border-color:#34d97b}.bk-pipeline .bk-pipeline-atom.quality-atom.SUCCEED .atom-title{color:#34d97b}.bk-pipeline .bk-pipeline-atom.quality-atom.SUCCEED .atom-title>i{border-color:#34d97b}.bk-pipeline .bk-pipeline-atom.quality-atom.REVIEWING{border-color:#ffb400}.bk-pipeline .bk-pipeline-atom.quality-atom.REVIEWING .atom-title{color:#ffb400}.bk-pipeline .bk-pipeline-atom.quality-atom.REVIEWING .atom-title>i{border-color:#ffb400}.bk-pipeline .bk-pipeline-atom.quality-atom.REVIEWING .atom-title>i:last-child{border-color:rgba(0,0,0,0)}.bk-pipeline .bk-pipeline-atom.quality-atom.FAILED{border-color:#ff5656}.bk-pipeline .bk-pipeline-atom.quality-atom.FAILED .atom-title{color:#ff5656}.bk-pipeline .bk-pipeline-atom.quality-atom.FAILED .atom-title>i{border-top:2px solid #ff5656}',""]);const s=r},29:(e,t,i)=>{"use strict";i.d(t,{A:()=>s});var n=i(441),o=i.n(n),a=i(562),r=i.n(a)()(o());r.push([e.id,'/*!\n * Tencent is pleased to support the open source community by making BK-CI 蓝鲸持续集成平台 available.\n *\n * Copyright (C) 2019 THL A29 Limited, a Tencent company. All rights reserved.\n *\n * BK-CI 蓝鲸持续集成平台 is licensed under the MIT license.\n *\n * A copy of the MIT License is included in this file.\n *\n *\n * Terms of the MIT License:\n * ---------------------------------------------------\n * 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:\n *\n * The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\n *\n * 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.\n */@keyframes rotating{from{transform:rotate(0)}to{transform:rotate(359deg)}}.bk-pipeline .bk-pipeline-atom{cursor:pointer;position:relative;display:flex;flex-direction:row;align-items:center;height:42px;margin:0 0 11px 0;background-color:#fff;border-radius:2px;font-size:14px;transition:all .4s ease-in-out;z-index:2;border:1px solid #c4cdd6}.bk-pipeline .bk-pipeline-atom .atom-progress{display:inline-flex;width:42px;height:42px;align-items:center;justify-content:center}.bk-pipeline .bk-pipeline-atom .active-atom-location-icon{position:absolute;color:#3c96ff;left:-30px}.bk-pipeline .bk-pipeline-atom.trigger-atom:before,.bk-pipeline .bk-pipeline-atom.trigger-atom:after{display:none}.bk-pipeline .bk-pipeline-atom:first-child:before{top:-16px}.bk-pipeline .bk-pipeline-atom:before{content:"";position:absolute;height:14px;width:2px;background:#c4cdd6;top:-12px;left:22px;z-index:1}.bk-pipeline .bk-pipeline-atom:after{content:"";position:absolute;height:4px;width:4px;border:2px solid #c4cdd6;border-radius:50%;background:#fff !important;top:-5px;left:19px;z-index:2}.bk-pipeline .bk-pipeline-atom.is-intercept{border-color:#ffb400}.bk-pipeline .bk-pipeline-atom.is-intercept:hover{border-color:#ffb400}.bk-pipeline .bk-pipeline-atom.is-error{border-color:#ff5656;color:#ff5656}.bk-pipeline .bk-pipeline-atom.is-error:hover .atom-invalid-icon{display:none}.bk-pipeline .bk-pipeline-atom.is-error .atom-invalid-icon{margin:0 12px}.bk-pipeline .bk-pipeline-atom:not(.readonly):hover{border-color:#3c96ff}.bk-pipeline .bk-pipeline-atom:not(.readonly):hover .atom-icon.skip-icon{color:#c4cdd6}.bk-pipeline .bk-pipeline-atom:not(.readonly):hover .atom-icon,.bk-pipeline .bk-pipeline-atom:not(.readonly):hover .atom-name{color:#3c96ff}.bk-pipeline .bk-pipeline-atom:not(.readonly):hover .add-plus-icon.close,.bk-pipeline .bk-pipeline-atom:not(.readonly):hover .copy{cursor:pointer;display:block}.bk-pipeline .bk-pipeline-atom .atom-icon{text-align:center;margin:0 14.5px;font-size:18px;width:18px;color:#63656e;fill:currentColor}.bk-pipeline .bk-pipeline-atom .atom-icon.skip-icon{color:#c4cdd6}.bk-pipeline .bk-pipeline-atom .atom-name span.skip-name{text-decoration:line-through;color:#c4cdd6}.bk-pipeline .bk-pipeline-atom .atom-name span.skip-name:hover{color:#c4cdd6}.bk-pipeline .bk-pipeline-atom .pause-button{margin-right:8px;color:#3c96ff}.bk-pipeline .bk-pipeline-atom .add-plus-icon.close{position:relative;display:block;width:16px;height:16px;border:1px solid #fff;background-color:#c4c6cd;border-radius:50%;transition:all .3s ease;display:none;margin-right:10px;border:none;transform:rotate(45deg)}.bk-pipeline .bk-pipeline-atom .add-plus-icon.close:before,.bk-pipeline .bk-pipeline-atom .add-plus-icon.close:after{content:"";position:absolute;left:7px;top:4px;left:6px;top:3px;height:8px;width:2px;background-color:#fff}.bk-pipeline .bk-pipeline-atom .add-plus-icon.close:after{transform:rotate(90deg)}.bk-pipeline .bk-pipeline-atom .add-plus-icon.close:hover{border-color:#ff5656;background-color:#ff5656}.bk-pipeline .bk-pipeline-atom .add-plus-icon.close:hover:before,.bk-pipeline .bk-pipeline-atom .add-plus-icon.close:hover:after{background-color:#fff}.bk-pipeline .bk-pipeline-atom .add-plus-icon.close:before,.bk-pipeline .bk-pipeline-atom .add-plus-icon.close:after{left:7px;top:4px}.bk-pipeline .bk-pipeline-atom .copy{display:none;margin-right:10px;color:#c4cdd6}.bk-pipeline .bk-pipeline-atom .copy:hover{color:#3c96ff}.bk-pipeline .bk-pipeline-atom>.atom-name{flex:1;color:#63656e;display:inline-block;max-width:auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:188px;margin-right:2px}.bk-pipeline .bk-pipeline-atom>.atom-name span:hover{color:#3c96ff}.bk-pipeline .bk-pipeline-atom .disabled{cursor:not-allowed;color:#c4cdd6}.bk-pipeline .bk-pipeline-atom .atom-execounter{color:#3c96ff;font-size:12px}.bk-pipeline .bk-pipeline-atom .atom-operate-area{margin:0 8px 0 0;color:#3c96ff;font-size:12px}.bk-pipeline .bk-pipeline-atom .atom-reviewing-tips[disabled]{cursor:not-allowed;color:#c3cdd7}.bk-pipeline .bk-pipeline-atom .atom-review-diasbled-tips{color:#c3cdd7;margin:0 8px 0 2px}.bk-pipeline .bk-pipeline-atom .atom-canskip-checkbox{margin-right:6px}.bk-pipeline .bk-pipeline-atom.quality-atom{display:flex;justify-content:center;border-color:rgba(0,0,0,0);height:24px;background:rgba(0,0,0,0);border-color:rgba(0,0,0,0) !important;font-size:12px}.bk-pipeline .bk-pipeline-atom.quality-atom:before{height:40px;z-index:8}.bk-pipeline .bk-pipeline-atom.quality-atom:after{display:none}.bk-pipeline .bk-pipeline-atom.quality-atom.last-quality-atom:before{height:22px}.bk-pipeline .bk-pipeline-atom.quality-atom .atom-title{display:flex;width:100%;align-items:center;justify-content:center;margin-left:22px}.bk-pipeline .bk-pipeline-atom.quality-atom .atom-title>span{border-radius:12px;font-weight:bold;border:1px solid #c4cdd6;padding:0 12px;margin:0 4px}.bk-pipeline .bk-pipeline-atom.quality-atom .atom-title>i{height:0;flex:1;border-top:2px dashed #c4cdd6}.bk-pipeline .bk-pipeline-atom.quality-atom .handler-list{position:absolute;right:0}.bk-pipeline .bk-pipeline-atom.quality-atom .handler-list span{color:#3c96ff;font-size:12px}.bk-pipeline .bk-pipeline-atom.quality-atom .handler-list span:first-child{margin-right:5px}.bk-pipeline .bk-pipeline-atom.quality-atom .executing-job{position:absolute;top:6px;right:42px}.bk-pipeline .bk-pipeline-atom.quality-atom .executing-job:before{display:inline-block;animation:rotating infinite .6s ease-in-out}.bk-pipeline .bk-pipeline-atom.quality-atom .disabled-review span{color:#c4cdd6;cursor:default}.bk-pipeline .bk-pipeline-atom.readonly{background-color:#fff}.bk-pipeline .bk-pipeline-atom.readonly .atom-name:hover span{color:#63656e}.bk-pipeline .bk-pipeline-atom.readonly .atom-name:hover .skip-name{text-decoration:line-through;color:#c4cdd6}.bk-pipeline .bk-pipeline-atom.readonly.quality-prev-atom:before{height:24px;top:-23px}',""]);const s=r},259:(e,t,i)=>{"use strict";i.d(t,{A:()=>s});var n=i(441),o=i.n(n),a=i(562),r=i.n(a)()(o());r.push([e.id,'/*!\n * Tencent is pleased to support the open source community by making BK-CI 蓝鲸持续集成平台 available.\n *\n * Copyright (C) 2019 THL A29 Limited, a Tencent company. All rights reserved.\n *\n * BK-CI 蓝鲸持续集成平台 is licensed under the MIT license.\n *\n * A copy of the MIT License is included in this file.\n *\n *\n * Terms of the MIT License:\n * ---------------------------------------------------\n * 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:\n *\n * The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\n *\n * 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.\n */@keyframes rotating{from{transform:rotate(0)}to{transform:rotate(359deg)}}.container-atom-list{position:relative;z-index:3}.container-atom-list .sortable-ghost-atom{opacity:.5}.container-atom-list .sortable-chosen-atom{transform:scale(1)}.container-atom-list .add-atom-entry{position:absolute;bottom:-10px;left:calc(50% - 9px);cursor:pointer;z-index:3}.container-atom-list .add-atom-entry .add-plus-icon{position:relative;display:block;width:18px;height:18px;border:1px solid #c4cdd6;background-color:#fff;border-radius:50%;transition:all .3s ease}.container-atom-list .add-atom-entry .add-plus-icon:before,.container-atom-list .add-atom-entry .add-plus-icon:after{content:"";position:absolute;left:8px;top:5px;left:7px;top:4px;height:8px;width:2px;background-color:#c4cdd6}.container-atom-list .add-atom-entry .add-plus-icon:after{transform:rotate(90deg)}.container-atom-list .add-atom-entry .add-plus-icon:hover{border-color:#3c96ff;background-color:#3c96ff}.container-atom-list .add-atom-entry .add-plus-icon:hover:before,.container-atom-list .add-atom-entry .add-plus-icon:hover:after{background-color:#fff}.container-atom-list .add-atom-entry.block-add-entry{display:flex;flex-direction:row;align-items:center;height:42px;margin:0 0 11px 0;background-color:#fff;border-radius:2px;font-size:14px;transition:all .4s ease-in-out;z-index:2;position:static;padding-right:12px;border-style:dashed;color:#ff5656;border-color:#ff5656;border-width:1px}.container-atom-list .add-atom-entry.block-add-entry .add-atom-label{flex:1;color:#dde4eb}.container-atom-list .add-atom-entry.block-add-entry .add-plus-icon{margin:12px 13px}.container-atom-list .add-atom-entry.block-add-entry:before,.container-atom-list .add-atom-entry.block-add-entry:after{display:none}.container-atom-list .add-atom-entry:hover{border-color:#3c96ff;color:#3c96ff}.container-atom-list .post-action-arrow{position:relativecd;display:flex;align-items:center;justify-content:center;position:absolute;height:14px;width:14px;border:1px solid #c4cdd6;color:#c4cdd6;border-radius:50%;background:#fff !important;top:-7px;left:17px;z-index:3;font-weight:bold}.container-atom-list .post-action-arrow .toggle-post-action-icon{display:block;transition:all .5s ease}.container-atom-list .post-action-arrow.post-action-arrow-show .toggle-post-action-icon{transform:rotate(180deg)}.container-atom-list .post-action-arrow::after{content:"";position:absolute;width:2px;height:6px;background-color:#c4cdd6;left:5px;top:-6px}.container-atom-list .post-action-arrow.FAILED{border-color:#ff5656;color:#ff5656}.container-atom-list .post-action-arrow.FAILED::after{background-color:#ff5656}.container-atom-list .post-action-arrow.CANCELED{border-color:#ffb400;color:#ffb400}.container-atom-list .post-action-arrow.CANCELED::after{background-color:#ffb400}.container-atom-list .post-action-arrow.SUCCEED{border-color:#34d97b;color:#34d97b}.container-atom-list .post-action-arrow.SUCCEED::after{background-color:#34d97b}.container-atom-list .post-action-arrow.RUNNING{border-color:#3c96ff;color:#3c96ff}.container-atom-list .post-action-arrow.RUNNING::after{background-color:#3c96ff}',""]);const s=r},162:(e,t,i)=>{"use strict";i.d(t,{A:()=>s});var n=i(441),o=i.n(n),a=i(562),r=i.n(a)()(o());r.push([e.id,".is-danger[data-v-8b5d140e]{color:#ff5656}",""]);const s=r},662:(e,t,i)=>{"use strict";i.d(t,{A:()=>s});var n=i(441),o=i.n(n),a=i(562),r=i.n(a)()(o());r.push([e.id,'/*!\n * Tencent is pleased to support the open source community by making BK-CI 蓝鲸持续集成平台 available.\n *\n * Copyright (C) 2019 THL A29 Limited, a Tencent company. All rights reserved.\n *\n * BK-CI 蓝鲸持续集成平台 is licensed under the MIT license.\n *\n * A copy of the MIT License is included in this file.\n *\n *\n * Terms of the MIT License:\n * ---------------------------------------------------\n * 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:\n *\n * The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\n *\n * 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.\n */@keyframes rotating{from{transform:rotate(0)}to{transform:rotate(359deg)}}.devops-stage-container .container-title{display:flex;height:42px;background:#33333f;cursor:pointer;color:#fff;font-size:14px;align-items:center;position:relative;margin:0 0 16px 0;z-index:3}.devops-stage-container .container-title>.container-name{display:inline-block;max-width:auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;padding:0 6px}.devops-stage-container .container-title .atom-canskip-checkbox{margin-right:6px}.devops-stage-container .container-title .atom-canskip-checkbox.is-disabled .bk-checkbox{background-color:rgba(0,0,0,0);border-color:#979ba4}.devops-stage-container .container-title input[type=checkbox]{border-radius:3px}.devops-stage-container .container-title .matrix-flag-icon{position:absolute;top:0px;font-size:16px}.devops-stage-container .container-title .fold-atom-icon{position:absolute;background:#fff;border-radius:50%;bottom:-10px;left:calc(50% - 9px);color:#c4cdd6;transition:all .3s ease}.devops-stage-container .container-title .fold-atom-icon.open{transform:rotate(-180deg)}.devops-stage-container .container-title .copyJob{display:none;margin-right:10px;color:#c4cdd6;cursor:pointer}.devops-stage-container .container-title .copyJob:hover{color:#3c96ff}.devops-stage-container .container-title .close{position:relative;display:block;width:16px;height:16px;border:1px solid #2e2e3a;background-color:#c4c6cd;border-radius:50%;transition:all .3s ease;border:none;display:none;margin-right:10px;transform:rotate(45deg);cursor:pointer}.devops-stage-container .container-title .close:before,.devops-stage-container .container-title .close:after{content:"";position:absolute;left:7px;top:4px;left:6px;top:3px;height:8px;width:2px;background-color:#2e2e3a}.devops-stage-container .container-title .close:after{transform:rotate(90deg)}.devops-stage-container .container-title .close:hover{border-color:#ff5656;background-color:#ff5656}.devops-stage-container .container-title .close:hover:before,.devops-stage-container .container-title .close:hover:after{background-color:#fff}.devops-stage-container .container-title .close:before,.devops-stage-container .container-title .close:after{left:7px;top:4px}.devops-stage-container .container-title .debug-btn{position:absolute;height:100%;right:0}.devops-stage-container .container-title .container-locate-icon{position:absolute;left:-30px;top:13px;color:#3c96ff}.devops-stage-container .container-title:hover .copyJob,.devops-stage-container .container-title:hover .close{display:block}.devops-stage-container .container-title:hover .hover-hide{display:none}',""]);const s=r},637:(e,t,i)=>{"use strict";i.d(t,{A:()=>s});var n=i(441),o=i.n(n),a=i(562),r=i.n(a)()(o());r.push([e.id,'/*!\n * Tencent is pleased to support the open source community by making BK-CI 蓝鲸持续集成平台 available.\n *\n * Copyright (C) 2019 THL A29 Limited, a Tencent company. All rights reserved.\n *\n * BK-CI 蓝鲸持续集成平台 is licensed under the MIT license.\n *\n * A copy of the MIT License is included in this file.\n *\n *\n * Terms of the MIT License:\n * ---------------------------------------------------\n * 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:\n *\n * The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\n *\n * 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.\n */@keyframes rotating{from{transform:rotate(0)}to{transform:rotate(359deg)}}.bk-pipeline-matrix-group{border:1px solid #b5c0d5;padding:10px;background:#fff}.bk-pipeline-matrix-group .bk-pipeline-matrix-group-header{display:flex;align-items:center;cursor:pointer;justify-content:space-between;height:20px}.bk-pipeline-matrix-group .bk-pipeline-matrix-group-header .matrix-name{display:flex;align-items:center;font-size:14px;color:#222;min-width:0}.bk-pipeline-matrix-group .bk-pipeline-matrix-group-header .matrix-name .matrix-fold-icon{display:block;margin-right:10px;transition:all .3s ease;flex-shrink:0}.bk-pipeline-matrix-group .bk-pipeline-matrix-group-header .matrix-name .matrix-fold-icon.open{transform:rotate(-180deg)}.bk-pipeline-matrix-group .bk-pipeline-matrix-group-header .matrix-name>span{display:inline-block;max-width:auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bk-pipeline-matrix-group .bk-pipeline-matrix-group-header .matrix-status{color:#3c96ff;display:flex;align-items:center}.bk-pipeline-matrix-group .bk-pipeline-matrix-group-header .matrix-status .status-desc{font-size:12px;display:inline-block;max-width:110px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bk-pipeline-matrix-group .matrix-body{margin-top:12px}.bk-pipeline-matrix-group .matrix-body>div{margin-bottom:34px}',""]);const s=r},533:(e,t,i)=>{"use strict";i.d(t,{A:()=>s});var n=i(441),o=i.n(n),a=i(562),r=i.n(a)()(o());r.push([e.id,'/*!\n * Tencent is pleased to support the open source community by making BK-CI 蓝鲸持续集成平台 available.\n *\n * Copyright (C) 2019 THL A29 Limited, a Tencent company. All rights reserved.\n *\n * BK-CI 蓝鲸持续集成平台 is licensed under the MIT license.\n *\n * A copy of the MIT License is included in this file.\n *\n *\n * Terms of the MIT License:\n * ---------------------------------------------------\n * 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:\n *\n * The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\n *\n * 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.\n */@keyframes rotating{from{transform:rotate(0)}to{transform:rotate(359deg)}}.pipeline-drag{cursor:grab,default}.pipeline-stage{position:relative;width:280px;border-radius:2px;padding:0;background:#f5f5f5;margin:0 80px 0 0}.pipeline-stage .pipeline-stage-entry{position:relative;cursor:pointer;display:flex;width:100%;height:50px;align-items:center;min-width:0;font-size:14px;background-color:#eff5ff;border:1px solid #d4e8ff;color:#3c96ff}.pipeline-stage .pipeline-stage-entry:hover{border-color:#1a6df3;background-color:#d1e2fd}.pipeline-stage .pipeline-stage-entry .check-in-icon,.pipeline-stage .pipeline-stage-entry .check-out-icon{position:absolute;left:-14px;top:11px}.pipeline-stage .pipeline-stage-entry .check-in-icon.check-out-icon,.pipeline-stage .pipeline-stage-entry .check-out-icon.check-out-icon{left:auto;right:-14px}.pipeline-stage .pipeline-stage-entry .stage-entry-name{flex:1;display:flex;align-items:center;justify-content:center;margin:0 80px;overflow:hidden}.pipeline-stage .pipeline-stage-entry .stage-entry-name .stage-title-name{display:inline-block;max-width:auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-left:6px}.pipeline-stage .pipeline-stage-entry .stage-single-retry{cursor:pointer;position:absolute;right:6%;color:#3c96ff}.pipeline-stage .pipeline-stage-entry .stage-entry-error-icon,.pipeline-stage .pipeline-stage-entry .check-total-stage{position:absolute;right:27px}.pipeline-stage .pipeline-stage-entry .stage-entry-error-icon.stage-entry-error-icon,.pipeline-stage .pipeline-stage-entry .check-total-stage.stage-entry-error-icon{top:16px;right:8px;color:#ff5656}.pipeline-stage .pipeline-stage-entry .stage-entry-btns{position:absolute;right:0;top:16px;display:none;width:80px;align-items:center;justify-content:flex-end;color:#fff;fill:#fff;z-index:2}.pipeline-stage .pipeline-stage-entry .stage-entry-btns .copy-stage:hover{color:#3c96ff}.pipeline-stage .pipeline-stage-entry .stage-entry-btns .close{position:relative;display:block;width:16px;height:16px;border:1px solid #2e2e3a;background-color:#fff;border-radius:50%;transition:all .3s ease;border:none;margin:0 10px 0 8px;transform:rotate(45deg);cursor:pointer}.pipeline-stage .pipeline-stage-entry .stage-entry-btns .close:before,.pipeline-stage .pipeline-stage-entry .stage-entry-btns .close:after{content:"";position:absolute;left:7px;top:4px;left:6px;top:3px;height:8px;width:2px;background-color:#2e2e3a}.pipeline-stage .pipeline-stage-entry .stage-entry-btns .close:after{transform:rotate(90deg)}.pipeline-stage .pipeline-stage-entry .stage-entry-btns .close:hover{border-color:#ff5656;background-color:#ff5656}.pipeline-stage .pipeline-stage-entry .stage-entry-btns .close:hover:before,.pipeline-stage .pipeline-stage-entry .stage-entry-btns .close:hover:after{background-color:#fff}.pipeline-stage .pipeline-stage-entry .stage-entry-btns .close:before,.pipeline-stage .pipeline-stage-entry .stage-entry-btns .close:after{left:7px;top:4px}.pipeline-stage.editable:not(.readonly) .pipeline-stage-entry:hover{color:#000;border-color:#1a6df3;background-color:#d1e2fd}.pipeline-stage.editable .pipeline-stage-entry:hover .stage-entry-btns{display:flex}.pipeline-stage.editable .pipeline-stage-entry:hover .stage-entry-error-icon{display:none}.pipeline-stage.readonly.SKIP .pipeline-stage-entry{color:#c3cdd7;fill:#c3cdd7}.pipeline-stage.readonly.RUNNING .pipeline-stage-entry{background-color:#eff5ff;border-color:#d4e8ff;color:#3c96ff}.pipeline-stage.readonly.REVIEWING .pipeline-stage-entry{background-color:#f3f3f3;border-color:#d0d8ea;color:#000}.pipeline-stage.readonly.FAILED .pipeline-stage-entry{border-color:#ffd4d4;background-color:#fff9f9;color:#000}.pipeline-stage.readonly.SUCCEED .pipeline-stage-entry{background-color:#f3fff6;border-color:#bbefc9;color:#000}.pipeline-stage.readonly .pipeline-stage-entry{background-color:#f3f3f3;border-color:#d0d8ea;color:#000}.pipeline-stage.readonly .pipeline-stage-entry .skip-icon{vertical-align:middle}.pipeline-stage .add-connector{stroke-dasharray:4,4;top:7px;left:10px}.pipeline-stage .append-stage{position:absolute;top:16px;right:-44px;z-index:3}.pipeline-stage .append-stage .add-plus-icon{box-shadow:0px 2px 4px 0px rgba(60,150,255,.2)}.pipeline-stage .append-stage .line-add{top:-46px;left:-16px}.pipeline-stage .append-stage .add-plus-connector{position:absolute;width:40px;height:2px;left:-26px;top:8px;background-color:#3c96ff}.pipeline-stage .add-menu{position:absolute;top:16px;left:-53px;cursor:pointer;z-index:3}.pipeline-stage .add-menu .add-plus-icon{box-shadow:0px 2px 4px 0px rgba(60,150,255,.2)}.pipeline-stage .add-menu .minus-icon{z-index:4}.pipeline-stage .add-menu .line-add{top:-46px;left:-16px}.pipeline-stage .add-menu .parallel-add{left:50px}.pipeline-stage .add-menu .add-plus-connector{position:absolute;width:24px;height:2px;left:17px;top:8px;background-color:#3c96ff}.pipeline-stage:first-child .stage-connector{display:none}.pipeline-stage.is-final-stage .stage-connector{width:80px}.pipeline-stage .stage-connector{position:absolute;width:66px;height:2px;left:-80px;top:24px;color:#3c96ff;background-color:#3c96ff}.pipeline-stage .stage-connector:before{content:"";width:8px;height:8px;position:absolute;left:-4px;top:-3px;background-color:#3c96ff;border-radius:50%}.pipeline-stage .stage-connector .connector-angle{position:absolute;right:-3px;top:-6px}.pipeline-stage .insert-stage{position:absolute;display:block;width:160px;background-color:#fff;border:1px solid #dcdee5}.pipeline-stage .insert-stage .click-item{padding:0 15px;font-size:12px;line-height:32px}.pipeline-stage .insert-stage .click-item:hover,.pipeline-stage .insert-stage .click-item :hover{color:#3c96ff;background-color:#eaf3ff}.pipeline-stage .insert-stage .disabled-item{cursor:not-allowed;color:#c4cdd6}.pipeline-stage .insert-stage .disabled-item:hover,.pipeline-stage .insert-stage .disabled-item :hover{color:#c4cdd6;background-color:#fff}.stage-retry-dialog .bk-form-radio{display:block;margin-top:15px}.stage-retry-dialog .bk-form-radio .bk-radio-text{font-size:14px}',""]);const s=r},935:(e,t,i)=>{"use strict";i.d(t,{A:()=>s});var n=i(441),o=i.n(n),a=i(562),r=i.n(a)()(o());r.push([e.id,'/*!\n * Tencent is pleased to support the open source community by making BK-CI 蓝鲸持续集成平台 available.\n *\n * Copyright (C) 2019 THL A29 Limited, a Tencent company. All rights reserved.\n *\n * BK-CI 蓝鲸持续集成平台 is licensed under the MIT license.\n *\n * A copy of the MIT License is included in this file.\n *\n *\n * Terms of the MIT License:\n * ---------------------------------------------------\n * 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:\n *\n * The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\n *\n * 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.\n */@keyframes rotating{from{transform:rotate(0)}to{transform:rotate(359deg)}}.stage-check-icon{border-radius:100px;border:1px solid #d0d8ea;display:flex;align-items:center;background:#fff;font-size:12px;z-index:3;color:#63656e}.stage-check-icon.is-readonly-check-icon{filter:grayscale(100%)}.stage-check-icon.reviewing{color:#3c96ff;border-color:#3c96ff}.stage-check-icon.quality-check{color:#34d97b;border-color:#34d97b}.stage-check-icon.quality-check-error,.stage-check-icon.review-error{color:#ff5656;border-color:#ff5656}.stage-check-icon .stage-check-txt{padding-right:10px}',""]);const s=r},49:(e,t,i)=>{"use strict";i.d(t,{A:()=>s});var n=i(441),o=i.n(n),a=i(562),r=i.n(a)()(o());r.push([e.id,'/*!\n * Tencent is pleased to support the open source community by making BK-CI 蓝鲸持续集成平台 available.\n *\n * Copyright (C) 2019 THL A29 Limited, a Tencent company. All rights reserved.\n *\n * BK-CI 蓝鲸持续集成平台 is licensed under the MIT license.\n *\n * A copy of the MIT License is included in this file.\n *\n *\n * Terms of the MIT License:\n * ---------------------------------------------------\n * 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:\n *\n * The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\n *\n * 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.\n */@keyframes rotating{from{transform:rotate(0)}to{transform:rotate(359deg)}}.devops-stage-container{text-align:left;margin:16px 20px 24px 20px;position:relative}.devops-stage-container:not(.last-stage-container):after{content:"";width:6px;height:6px;position:absolute;right:-3px;top:19px;border-radius:50%}.devops-stage-container:not(.last-stage-container):after:not(.readonly){background:#3c96ff}.devops-stage-container .container-connect-triangle{position:absolute;color:#3c96ff;left:-9px;top:15.5px;z-index:2}.devops-stage-container .connect-line{position:absolute;top:1px;stroke:#3c96ff;stroke-width:1;fill:none;z-index:0}.devops-stage-container .connect-line.left{left:-54px}.devops-stage-container .connect-line.right{right:-46px}.devops-stage-container .connect-line.first-connect-line{height:76px;width:58px;top:-43px}.devops-stage-container .connect-line.first-connect-line.left{left:-63px}.devops-stage-container .connect-line.first-connect-line.right{left:auto;right:-55px}',""]);const s=r},82:(e,t,i)=>{"use strict";i.d(t,{A:()=>s});var n=i(441),o=i.n(n),a=i(562),r=i.n(a)()(o());r.push([e.id,'/*!\n * Tencent is pleased to support the open source community by making BK-CI 蓝鲸持续集成平台 available.\n *\n * Copyright (C) 2019 THL A29 Limited, a Tencent company. All rights reserved.\n *\n * BK-CI 蓝鲸持续集成平台 is licensed under the MIT license.\n *\n * A copy of the MIT License is included in this file.\n *\n *\n * Terms of the MIT License:\n * ---------------------------------------------------\n * 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:\n *\n * The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\n *\n * 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.\n */@keyframes rotating{from{transform:rotate(0)}to{transform:rotate(359deg)}}.stage-status{position:relative;text-align:center;overflow:hidden;font-size:14px;width:42px;height:42px;box-sizing:border-box}.stage-status>span{position:absolute;width:100%;height:100%;display:flex;align-items:center;justify-content:center;left:0;top:0;transition:all .3s cubic-bezier(1, 0.5, 0.8, 1)}.stage-status.matrix{width:20px;height:20px}.stage-status .status-logo{position:absolute;left:15px;top:15px}.stage-status .slide-top-enter,.stage-status .slide-top-leave-to{transform:translateY(42px)}.stage-status .slide-down-enter,.stage-status .slide-down-leave-to{transform:translateY(-42px)}.stage-status .slide-left-enter,.stage-status .slide-left-leave-to{transform:translateX(42px)}.stage-status .slide-right-enter,.stage-status .slide-right-leave-to{transform:translateX(-42px)}.stage-status.readonly{font-size:12px;font-weight:normal;background-color:rgba(0,0,0,0)}.stage-status.readonly.container{color:#fff}',""]);const s=r},157:(e,t,i)=>{"use strict";i.d(t,{A:()=>s});var n=i(441),o=i.n(n),a=i(562),r=i.n(a)()(o());r.push([e.id,".bk-pipeline{display:flex;padding-right:120px;width:fit-content;position:relative;align-items:flex-start}.bk-pipeline ul,.bk-pipeline li{margin:0;padding:0}.list-item{transition:transform .2s ease-out}.list-enter,.list-leave-to{opacity:0;transform:translateY(36px) scale(0, 1)}.list-leave-active{position:absolute !important}",""]);const s=r},562:e=>{"use strict";e.exports=function(e){var t=[];return t.toString=function(){return this.map((function(t){var i="",n=void 0!==t[5];return t[4]&&(i+="@supports (".concat(t[4],") {")),t[2]&&(i+="@media ".concat(t[2]," {")),n&&(i+="@layer".concat(t[5].length>0?" ".concat(t[5]):""," {")),i+=e(t),n&&(i+="}"),t[2]&&(i+="}"),t[4]&&(i+="}"),i})).join("")},t.i=function(e,i,n,o,a){"string"==typeof e&&(e=[[null,e,void 0]]);var r={};if(n)for(var s=0;s0?" ".concat(p[5]):""," {").concat(p[1],"}")),p[5]=a),i&&(p[2]?(p[1]="@media ".concat(p[2]," {").concat(p[1],"}"),p[2]=i):p[2]=i),o&&(p[4]?(p[1]="@supports (".concat(p[4],") {").concat(p[1],"}"),p[4]=o):p[4]="".concat(o)),t.push(p))}},t}},441:e=>{"use strict";e.exports=function(e){return e[1]}},713:(e,t,i)=>{"use strict";function n(e){return n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},n(e)}function o(e,t,i){return t in e?Object.defineProperty(e,t,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[t]=i,e}function a(){return a=Object.assign||function(e){for(var t=1;tgt,Sortable:()=>ze,Swap:()=>at,default:()=>yt});var l=s(/(?:Trident.*rv[ :]?11\.|msie|iemobile|Windows Phone)/i),c=s(/Edge/i),p=s(/firefox/i),d=s(/safari/i)&&!s(/chrome/i)&&!s(/android/i),u=s(/iP(ad|od|hone)/i),h=s(/chrome/i)&&s(/android/i),f={capture:!1,passive:!1};function m(e,t,i){e.addEventListener(t,i,!l&&f)}function g(e,t,i){e.removeEventListener(t,i,!l&&f)}function b(e,t){if(t){if(">"===t[0]&&(t=t.substring(1)),e)try{if(e.matches)return e.matches(t);if(e.msMatchesSelector)return e.msMatchesSelector(t);if(e.webkitMatchesSelector)return e.webkitMatchesSelector(t)}catch(e){return!1}return!1}}function v(e){return e.host&&e!==document&&e.host.nodeType?e.host:e.parentNode}function y(e,t,i,n){if(e){i=i||document;do{if(null!=t&&(">"===t[0]?e.parentNode===i&&b(e,t):b(e,t))||n&&e===i)return e;if(e===i)break}while(e=v(e))}return null}var E,x=/\s+/g;function k(e,t,i){if(e&&t)if(e.classList)e.classList[i?"add":"remove"](t);else{var n=(" "+e.className+" ").replace(x," ").replace(" "+t+" "," ");e.className=(n+(i?" "+t:"")).replace(x," ")}}function I(e,t,i){var n=e&&e.style;if(n){if(void 0===i)return document.defaultView&&document.defaultView.getComputedStyle?i=document.defaultView.getComputedStyle(e,""):e.currentStyle&&(i=e.currentStyle),void 0===t?i:i[t];t in n||-1!==t.indexOf("webkit")||(t="-webkit-"+t),n[t]=i+("string"==typeof i?"":"px")}}function T(e,t){var i="";if("string"==typeof e)i=e;else do{var n=I(e,"transform");n&&"none"!==n&&(i=n+" "+i)}while(!t&&(e=e.parentNode));var o=window.DOMMatrix||window.WebKitCSSMatrix||window.CSSMatrix||window.MSCSSMatrix;return o&&new o(i)}function S(e,t,i){if(e){var n=e.getElementsByTagName(t),o=0,a=n.length;if(i)for(;o=a:o<=a))return n;if(n===C())break;n=M(n,!1)}return!1}function O(e,t,i){for(var n=0,o=0,a=e.children;o2&&void 0!==arguments[2]?arguments[2]:{},n=i.evt,o=function(e,t){if(null==e)return{};var i,n,o=function(e,t){if(null==e)return{};var i,n,o={},a=Object.keys(e);for(n=0;n=0||(o[i]=e[i]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,i)&&(o[i]=e[i])}return o}(i,["evt"]);W.pluginEvent.bind(ze)(e,t,r({dragEl:Y,parentEl:q,ghostEl:K,rootEl:X,nextEl:Q,lastDownEl:J,cloneEl:Z,cloneHidden:ee,dragStarted:he,putSortable:re,activeSortable:ze.active,originalEvent:n,oldIndex:te,oldDraggableIndex:ne,newIndex:ie,newDraggableIndex:oe,hideGhostForTarget:Me,unhideGhostForTarget:Le,cloneNowHidden:function(){ee=!0},cloneNowShown:function(){ee=!1},dispatchSortableEvent:function(e){$({sortable:t,name:e,originalEvent:n})}},o))};function $(e){j(r({putSortable:re,cloneEl:Z,targetEl:Y,rootEl:X,oldIndex:te,oldDraggableIndex:ne,newIndex:ie,newDraggableIndex:oe},e))}var Y,q,K,X,Q,J,Z,ee,te,ie,ne,oe,ae,re,se,le,ce,pe,de,ue,he,fe,me,ge,be,ve=!1,ye=!1,Ee=[],xe=!1,ke=!1,Ie=[],Te=!1,Se=[],Ce="undefined"!=typeof document,Ae=u,we=c||l?"cssFloat":"float",Oe=Ce&&!h&&!u&&"draggable"in document.createElement("div"),_e=function(){if(Ce){if(l)return!1;var e=document.createElement("x");return e.style.cssText="pointer-events:auto","auto"===e.style.pointerEvents}}(),Ne=function(e,t){var i=I(e),n=parseInt(i.width)-parseInt(i.paddingLeft)-parseInt(i.paddingRight)-parseInt(i.borderLeftWidth)-parseInt(i.borderRightWidth),o=O(e,0,t),a=O(e,1,t),r=o&&I(o),s=a&&I(a),l=r&&parseInt(r.marginLeft)+parseInt(r.marginRight)+A(o).width,c=s&&parseInt(s.marginLeft)+parseInt(s.marginRight)+A(a).width;if("flex"===i.display)return"column"===i.flexDirection||"column-reverse"===i.flexDirection?"vertical":"horizontal";if("grid"===i.display)return i.gridTemplateColumns.split(" ").length<=1?"vertical":"horizontal";if(o&&r.float&&"none"!==r.float){var p="left"===r.float?"left":"right";return!a||"both"!==s.clear&&s.clear!==p?"horizontal":"vertical"}return o&&("block"===r.display||"flex"===r.display||"table"===r.display||"grid"===r.display||l>=n&&"none"===i[we]||a&&"none"===i[we]&&l+c>n)?"vertical":"horizontal"},Re=function(e){function t(e,i){return function(n,o,a,r){var s=n.options.group.name&&o.options.group.name&&n.options.group.name===o.options.group.name;if(null==e&&(i||s))return!0;if(null==e||!1===e)return!1;if(i&&"clone"===e)return e;if("function"==typeof e)return t(e(n,o,a,r),i)(n,o,a,r);var l=(i?n:o).options.group.name;return!0===e||"string"==typeof e&&e===l||e.join&&e.indexOf(l)>-1}}var i={},o=e.group;o&&"object"==n(o)||(o={name:o}),i.name=o.name,i.checkPull=t(o.pull,!0),i.checkPut=t(o.put),i.revertClone=o.revertClone,e.group=i},Me=function(){!_e&&K&&I(K,"display","none")},Le=function(){!_e&&K&&I(K,"display","")};Ce&&document.addEventListener("click",(function(e){if(ye)return e.preventDefault(),e.stopPropagation&&e.stopPropagation(),e.stopImmediatePropagation&&e.stopImmediatePropagation(),ye=!1,!1}),!0);var De=function(e){if(Y){e=e.touches?e.touches[0]:e;var t=(o=e.clientX,a=e.clientY,Ee.some((function(e){if(!_(e)){var t=A(e),i=e[U].options.emptyInsertThreshold,n=o>=t.left-i&&o<=t.right+i,s=a>=t.top-i&&a<=t.bottom+i;return i&&n&&s?r=e:void 0}})),r);if(t){var i={};for(var n in e)e.hasOwnProperty(n)&&(i[n]=e[n]);i.target=i.rootEl=t,i.preventDefault=void 0,i.stopPropagation=void 0,t[U]._onDragOver(i)}}var o,a,r},He=function(e){Y&&Y.parentNode[U]._isOutsideThisEl(e.target)};function ze(e,t){if(!e||!e.nodeType||1!==e.nodeType)throw"Sortable: `el` must be an HTMLElement, not ".concat({}.toString.call(e));this.el=e,this.options=t=a({},t),e[U]=this;var i,n,o={group:null,sort:!0,disabled:!1,store:null,handle:null,draggable:/^[uo]l$/i.test(e.nodeName)?">li":">*",swapThreshold:1,invertSwap:!1,invertedSwapThreshold:null,removeCloneOnHide:!0,direction:function(){return Ne(e,this.options)},ghostClass:"sortable-ghost",chosenClass:"sortable-chosen",dragClass:"sortable-drag",ignore:"a, img",filter:null,preventOnFilter:!0,animation:0,easing:null,setData:function(e,t){e.setData("Text",t.textContent)},dropBubble:!1,dragoverBubble:!1,dataIdAttr:"data-id",delay:0,delayOnTouchOnly:!1,touchStartThreshold:(Number.parseInt?Number:window).parseInt(window.devicePixelRatio,10)||1,forceFallback:!1,fallbackClass:"sortable-fallback",fallbackOnBody:!1,fallbackTolerance:0,fallbackOffset:{x:0,y:0},supportPointer:!1!==ze.supportPointer&&"PointerEvent"in window,emptyInsertThreshold:5};for(var s in W.initializePlugins(this,e,o),o)!(s in t)&&(t[s]=o[s]);for(var l in Re(t),this)"_"===l.charAt(0)&&"function"==typeof this[l]&&(this[l]=this[l].bind(this));this.nativeDraggable=!t.forceFallback&&Oe,this.nativeDraggable&&(this.options.touchStartThreshold=1),t.supportPointer?m(e,"pointerdown",this._onTapStart):(m(e,"mousedown",this._onTapStart),m(e,"touchstart",this._onTapStart)),this.nativeDraggable&&(m(e,"dragover",this),m(e,"dragenter",this)),Ee.push(this.el),t.store&&t.store.get&&this.sort(t.store.get(this)||[]),a(this,(n=[],{captureAnimationState:function(){n=[],this.options.animation&&[].slice.call(this.el.children).forEach((function(e){if("none"!==I(e,"display")&&e!==ze.ghost){n.push({target:e,rect:A(e)});var t=r({},n[n.length-1].rect);if(e.thisAnimationDuration){var i=T(e,!0);i&&(t.top-=i.f,t.left-=i.e)}e.fromRect=t}}))},addAnimationState:function(e){n.push(e)},removeAnimationState:function(e){n.splice(function(e,t){for(var i in e)if(e.hasOwnProperty(i))for(var n in t)if(t.hasOwnProperty(n)&&t[n]===e[i][n])return Number(i);return-1}(n,{target:e}),1)},animateAll:function(e){var t=this;if(!this.options.animation)return clearTimeout(i),void("function"==typeof e&&e());var o=!1,a=0;n.forEach((function(e){var i=0,n=e.target,r=n.fromRect,s=A(n),l=n.prevFromRect,c=n.prevToRect,p=e.rect,d=T(n,!0);d&&(s.top-=d.f,s.left-=d.e),n.toRect=s,n.thisAnimationDuration&&L(l,s)&&!L(r,s)&&(p.top-s.top)/(p.left-s.left)==(r.top-s.top)/(r.left-s.left)&&(i=function(e,t,i,n){return Math.sqrt(Math.pow(t.top-e.top,2)+Math.pow(t.left-e.left,2))/Math.sqrt(Math.pow(t.top-i.top,2)+Math.pow(t.left-i.left,2))*n.animation}(p,l,c,t.options)),L(s,r)||(n.prevFromRect=r,n.prevToRect=s,i||(i=t.options.animation),t.animate(n,p,s,i)),i&&(o=!0,a=Math.max(a,i),clearTimeout(n.animationResetTimer),n.animationResetTimer=setTimeout((function(){n.animationTime=0,n.prevFromRect=null,n.fromRect=null,n.prevToRect=null,n.thisAnimationDuration=null}),i),n.thisAnimationDuration=i)})),clearTimeout(i),o?i=setTimeout((function(){"function"==typeof e&&e()}),a):"function"==typeof e&&e(),n=[]},animate:function(e,t,i,n){if(n){I(e,"transition",""),I(e,"transform","");var o=T(this.el),a=o&&o.a,r=o&&o.d,s=(t.left-i.left)/(a||1),l=(t.top-i.top)/(r||1);e.animatingX=!!s,e.animatingY=!!l,I(e,"transform","translate3d("+s+"px,"+l+"px,0)"),function(e){e.offsetWidth}(e),I(e,"transition","transform "+n+"ms"+(this.options.easing?" "+this.options.easing:"")),I(e,"transform","translate3d(0,0,0)"),"number"==typeof e.animated&&clearTimeout(e.animated),e.animated=setTimeout((function(){I(e,"transition",""),I(e,"transform",""),e.animated=!1,e.animatingX=!1,e.animatingY=!1}),n)}}}))}function Pe(e,t,i,n,o,a,r,s){var p,d,u=e[U],h=u.options.onMove;return!window.CustomEvent||l||c?(p=document.createEvent("Event")).initEvent("move",!0,!0):p=new CustomEvent("move",{bubbles:!0,cancelable:!0}),p.to=t,p.from=e,p.dragged=i,p.draggedRect=n,p.related=o||t,p.relatedRect=a||A(t),p.willInsertAfter=s,p.originalEvent=r,e.dispatchEvent(p),h&&(d=h.call(u,p,r)),d}function Fe(e){e.draggable=!1}function Ue(){Te=!1}function Be(e){for(var t=e.tagName+e.className+e.src+e.href+e.textContent,i=t.length,n=0;i--;)n+=t.charCodeAt(i);return n.toString(36)}function Ve(e){return setTimeout(e,0)}function We(e){return clearTimeout(e)}ze.prototype={constructor:ze,_isOutsideThisEl:function(e){this.el.contains(e)||e===this.el||(fe=null)},_getDirection:function(e,t){return"function"==typeof this.options.direction?this.options.direction.call(this,e,t,Y):this.options.direction},_onTapStart:function(e){if(e.cancelable){var t=this,i=this.el,n=this.options,o=n.preventOnFilter,a=e.type,r=e.touches&&e.touches[0]||e.pointerType&&"touch"===e.pointerType&&e,s=(r||e).target,l=e.target.shadowRoot&&(e.path&&e.path[0]||e.composedPath&&e.composedPath()[0])||s,c=n.filter;if(function(e){Se.length=0;for(var t=e.getElementsByTagName("input"),i=t.length;i--;){var n=t[i];n.checked&&Se.push(n)}}(i),!Y&&!(/mousedown|pointerdown/.test(a)&&0!==e.button||n.disabled||l.isContentEditable||(s=y(s,n.draggable,i,!1))&&s.animated||J===s)){if(te=N(s),ne=N(s,n.draggable),"function"==typeof c){if(c.call(this,e,s,this))return $({sortable:t,rootEl:l,name:"filter",targetEl:s,toEl:i,fromEl:i}),G("filter",t,{evt:e}),void(o&&e.cancelable&&e.preventDefault())}else if(c&&(c=c.split(",").some((function(n){if(n=y(l,n.trim(),i,!1))return $({sortable:t,rootEl:n,name:"filter",targetEl:s,fromEl:i,toEl:i}),G("filter",t,{evt:e}),!0}))))return void(o&&e.cancelable&&e.preventDefault());n.handle&&!y(l,n.handle,i,!1)||this._prepareDragStart(e,r,s)}}},_prepareDragStart:function(e,t,i){var n,o=this,a=o.el,r=o.options,s=a.ownerDocument;if(i&&!Y&&i.parentNode===a){var d=A(i);if(X=a,q=(Y=i).parentNode,Q=Y.nextSibling,J=i,ae=r.group,ze.dragged=Y,se={target:Y,clientX:(t||e).clientX,clientY:(t||e).clientY},de=se.clientX-d.left,ue=se.clientY-d.top,this._lastX=(t||e).clientX,this._lastY=(t||e).clientY,Y.style["will-change"]="all",n=function(){G("delayEnded",o,{evt:e}),ze.eventCanceled?o._onDrop():(o._disableDelayedDragEvents(),!p&&o.nativeDraggable&&(Y.draggable=!0),o._triggerDragStart(e,t),$({sortable:o,name:"choose",originalEvent:e}),k(Y,r.chosenClass,!0))},r.ignore.split(",").forEach((function(e){S(Y,e.trim(),Fe)})),m(s,"dragover",De),m(s,"mousemove",De),m(s,"touchmove",De),m(s,"mouseup",o._onDrop),m(s,"touchend",o._onDrop),m(s,"touchcancel",o._onDrop),p&&this.nativeDraggable&&(this.options.touchStartThreshold=4,Y.draggable=!0),G("delayStart",this,{evt:e}),!r.delay||r.delayOnTouchOnly&&!t||this.nativeDraggable&&(c||l))n();else{if(ze.eventCanceled)return void this._onDrop();m(s,"mouseup",o._disableDelayedDrag),m(s,"touchend",o._disableDelayedDrag),m(s,"touchcancel",o._disableDelayedDrag),m(s,"mousemove",o._delayedDragTouchMoveHandler),m(s,"touchmove",o._delayedDragTouchMoveHandler),r.supportPointer&&m(s,"pointermove",o._delayedDragTouchMoveHandler),o._dragStartTimer=setTimeout(n,r.delay)}}},_delayedDragTouchMoveHandler:function(e){var t=e.touches?e.touches[0]:e;Math.max(Math.abs(t.clientX-this._lastX),Math.abs(t.clientY-this._lastY))>=Math.floor(this.options.touchStartThreshold/(this.nativeDraggable&&window.devicePixelRatio||1))&&this._disableDelayedDrag()},_disableDelayedDrag:function(){Y&&Fe(Y),clearTimeout(this._dragStartTimer),this._disableDelayedDragEvents()},_disableDelayedDragEvents:function(){var e=this.el.ownerDocument;g(e,"mouseup",this._disableDelayedDrag),g(e,"touchend",this._disableDelayedDrag),g(e,"touchcancel",this._disableDelayedDrag),g(e,"mousemove",this._delayedDragTouchMoveHandler),g(e,"touchmove",this._delayedDragTouchMoveHandler),g(e,"pointermove",this._delayedDragTouchMoveHandler)},_triggerDragStart:function(e,t){t=t||"touch"==e.pointerType&&e,!this.nativeDraggable||t?this.options.supportPointer?m(document,"pointermove",this._onTouchMove):m(document,t?"touchmove":"mousemove",this._onTouchMove):(m(Y,"dragend",this),m(X,"dragstart",this._onDragStart));try{document.selection?Ve((function(){document.selection.empty()})):window.getSelection().removeAllRanges()}catch(e){}},_dragStarted:function(e,t){if(ve=!1,X&&Y){G("dragStarted",this,{evt:t}),this.nativeDraggable&&m(document,"dragover",He);var i=this.options;!e&&k(Y,i.dragClass,!1),k(Y,i.ghostClass,!0),ze.active=this,e&&this._appendGhost(),$({sortable:this,name:"start",originalEvent:t})}else this._nulling()},_emulateDragOver:function(){if(le){this._lastX=le.clientX,this._lastY=le.clientY,Me();for(var e=document.elementFromPoint(le.clientX,le.clientY),t=e;e&&e.shadowRoot&&(e=e.shadowRoot.elementFromPoint(le.clientX,le.clientY))!==t;)t=e;if(Y.parentNode[U]._isOutsideThisEl(e),t)do{if(t[U]&&t[U]._onDragOver({clientX:le.clientX,clientY:le.clientY,target:e,rootEl:t})&&!this.options.dragoverBubble)break;e=t}while(t=t.parentNode);Le()}},_onTouchMove:function(e){if(se){var t=this.options,i=t.fallbackTolerance,n=t.fallbackOffset,o=e.touches?e.touches[0]:e,a=K&&T(K,!0),r=K&&a&&a.a,s=K&&a&&a.d,l=Ae&&be&&R(be),c=(o.clientX-se.clientX+n.x)/(r||1)+(l?l[0]-Ie[0]:0)/(r||1),p=(o.clientY-se.clientY+n.y)/(s||1)+(l?l[1]-Ie[1]:0)/(s||1);if(!ze.active&&!ve){if(i&&Math.max(Math.abs(o.clientX-this._lastX),Math.abs(o.clientY-this._lastY))n.right+10||e.clientX<=n.right&&e.clientY>n.bottom&&e.clientX>=n.left:e.clientX>n.right&&e.clientY>n.top||e.clientX<=n.right&&e.clientY>n.bottom+10}(e,o,this)&&!g.animated){if(g===Y)return F(!1);if(g&&a===e.target&&(s=g),s&&(i=A(s)),!1!==Pe(X,a,Y,t,s,i,e,!!s))return P(),a.appendChild(Y),q=a,B(),F(!0)}else if(s.parentNode===a){i=A(s);var b,v,E,x=Y.parentNode!==a,T=!function(e,t,i){var n=i?e.left:e.top,o=i?e.right:e.bottom,a=i?e.width:e.height,r=i?t.left:t.top,s=i?t.right:t.bottom,l=i?t.width:t.height;return n===r||o===s||n+a/2===r+l/2}(Y.animated&&Y.toRect||t,s.animated&&s.toRect||i,o),S=o?"top":"left",C=w(s,"top","top")||w(Y,"top","top"),O=C?C.scrollTop:void 0;if(fe!==s&&(v=i[S],xe=!1,ke=!T&&l.invertSwap||x),b=function(e,t,i,n,o,a,r,s){var l=n?e.clientY:e.clientX,c=n?i.height:i.width,p=n?i.top:i.left,d=n?i.bottom:i.right,u=!1;if(!r)if(s&&gep+c*a/2:ld-ge)return-me}else if(l>p+c*(1-o)/2&&ld-c*a/2)?l>p+c/2?1:-1:0}(e,s,i,o,T?1:l.swapThreshold,null==l.invertedSwapThreshold?l.swapThreshold:l.invertedSwapThreshold,ke,fe===s),0!==b){var R=N(Y);do{R-=b,E=q.children[R]}while(E&&("none"===I(E,"display")||E===K))}if(0===b||E===s)return F(!1);fe=s,me=b;var M=s.nextElementSibling,L=!1,D=Pe(X,a,Y,t,s,i,e,L=1===b);if(!1!==D)return 1!==D&&-1!==D||(L=1===D),Te=!0,setTimeout(Ue,30),P(),L&&!M?a.appendChild(Y):s.parentNode.insertBefore(Y,L?M:s),C&&H(C,0,O-C.scrollTop),q=Y.parentNode,void 0===v||ke||(ge=Math.abs(v-A(s)[S])),B(),F(!0)}if(a.contains(Y))return F(!1)}return!1}function z(l,c){G(l,f,r({evt:e,isOwner:d,axis:o?"vertical":"horizontal",revert:n,dragRect:t,targetRect:i,canSort:u,fromSortable:h,target:s,completed:F,onMove:function(i,n){return Pe(X,a,Y,t,i,A(i),e,n)},changed:B},c))}function P(){z("dragOverAnimationCapture"),f.captureAnimationState(),f!==h&&h.captureAnimationState()}function F(t){return z("dragOverCompleted",{insertion:t}),t&&(d?p._hideClone():p._showClone(f),f!==h&&(k(Y,re?re.options.ghostClass:p.options.ghostClass,!1),k(Y,l.ghostClass,!0)),re!==f&&f!==ze.active?re=f:f===ze.active&&re&&(re=null),h===f&&(f._ignoreWhileAnimating=s),f.animateAll((function(){z("dragOverAnimationComplete"),f._ignoreWhileAnimating=null})),f!==h&&(h.animateAll(),h._ignoreWhileAnimating=null)),(s===Y&&!Y.animated||s===a&&!s.animated)&&(fe=null),l.dragoverBubble||e.rootEl||s===document||(Y.parentNode[U]._isOutsideThisEl(e.target),!t&&De(e)),!l.dragoverBubble&&e.stopPropagation&&e.stopPropagation(),m=!0}function B(){ie=N(Y),oe=N(Y,l.draggable),$({sortable:f,name:"change",toEl:a,newIndex:ie,newDraggableIndex:oe,originalEvent:e})}},_ignoreWhileAnimating:null,_offMoveEvents:function(){g(document,"mousemove",this._onTouchMove),g(document,"touchmove",this._onTouchMove),g(document,"pointermove",this._onTouchMove),g(document,"dragover",De),g(document,"mousemove",De),g(document,"touchmove",De)},_offUpEvents:function(){var e=this.el.ownerDocument;g(e,"mouseup",this._onDrop),g(e,"touchend",this._onDrop),g(e,"pointerup",this._onDrop),g(e,"touchcancel",this._onDrop),g(document,"selectstart",this)},_onDrop:function(e){var t=this.el,i=this.options;ie=N(Y),oe=N(Y,i.draggable),G("drop",this,{evt:e}),q=Y&&Y.parentNode,ie=N(Y),oe=N(Y,i.draggable),ze.eventCanceled||(ve=!1,ke=!1,xe=!1,clearInterval(this._loopId),clearTimeout(this._dragStartTimer),We(this.cloneId),We(this._dragStartId),this.nativeDraggable&&(g(document,"drop",this),g(t,"dragstart",this._onDragStart)),this._offMoveEvents(),this._offUpEvents(),d&&I(document.body,"user-select",""),I(Y,"transform",""),e&&(he&&(e.cancelable&&e.preventDefault(),!i.dropBubble&&e.stopPropagation()),K&&K.parentNode&&K.parentNode.removeChild(K),(X===q||re&&"clone"!==re.lastPutMode)&&Z&&Z.parentNode&&Z.parentNode.removeChild(Z),Y&&(this.nativeDraggable&&g(Y,"dragend",this),Fe(Y),Y.style["will-change"]="",he&&!ve&&k(Y,re?re.options.ghostClass:this.options.ghostClass,!1),k(Y,this.options.chosenClass,!1),$({sortable:this,name:"unchoose",toEl:q,newIndex:null,newDraggableIndex:null,originalEvent:e}),X!==q?(ie>=0&&($({rootEl:q,name:"add",toEl:q,fromEl:X,originalEvent:e}),$({sortable:this,name:"remove",toEl:q,originalEvent:e}),$({rootEl:q,name:"sort",toEl:q,fromEl:X,originalEvent:e}),$({sortable:this,name:"sort",toEl:q,originalEvent:e})),re&&re.save()):ie!==te&&ie>=0&&($({sortable:this,name:"update",toEl:q,originalEvent:e}),$({sortable:this,name:"sort",toEl:q,originalEvent:e})),ze.active&&(null!=ie&&-1!==ie||(ie=te,oe=ne),$({sortable:this,name:"end",toEl:q,originalEvent:e}),this.save())))),this._nulling()},_nulling:function(){G("nulling",this),X=Y=q=K=Q=Z=J=ee=se=le=he=ie=oe=te=ne=fe=me=re=ae=ze.dragged=ze.ghost=ze.clone=ze.active=null,Se.forEach((function(e){e.checked=!0})),Se.length=ce=pe=0},handleEvent:function(e){switch(e.type){case"drop":case"dragend":this._onDrop(e);break;case"dragenter":case"dragover":Y&&(this._onDragOver(e),function(e){e.dataTransfer&&(e.dataTransfer.dropEffect="move"),e.cancelable&&e.preventDefault()}(e));break;case"selectstart":e.preventDefault()}},toArray:function(){for(var e,t=[],i=this.el.children,n=0,o=i.length,a=this.options;n1&&(dt.forEach((function(e){n.addAnimationState({target:e,rect:ft?A(e):o}),F(e),e.fromRect=o,t.removeAnimationState(e)})),ft=!1,function(e,t){dt.forEach((function(i,n){var o=t.children[i.sortableIndex+(e?Number(n):0)];o?t.insertBefore(i,o):t.appendChild(i)}))}(!this.options.removeCloneOnHide,i))},dragOverCompleted:function(e){var t=e.sortable,i=e.isOwner,n=e.insertion,o=e.activeSortable,a=e.parentEl,r=e.putSortable,s=this.options;if(n){if(i&&o._hideClone(),ht=!1,s.animation&&dt.length>1&&(ft||!i&&!o.options.sort&&!r)){var l=A(lt,!1,!0,!0);dt.forEach((function(e){e!==lt&&(P(e,l),a.appendChild(e))})),ft=!0}if(!i)if(ft||vt(),dt.length>1){var c=pt;o._showClone(t),o.options.animation&&!pt&&c&&ut.forEach((function(e){o.addAnimationState({target:e,rect:ct}),e.fromRect=ct,e.thisAnimationDuration=null}))}else o._showClone(t)}},dragOverAnimationCapture:function(e){var t=e.dragRect,i=e.isOwner,n=e.activeSortable;if(dt.forEach((function(e){e.thisAnimationDuration=null})),n.options.animation&&!i&&n.multiDrag.isMultiDrag){ct=a({},t);var o=T(lt,!0);ct.top-=o.f,ct.left-=o.e}},dragOverAnimationComplete:function(){ft&&(ft=!1,vt())},drop:function(e){var t=e.originalEvent,i=e.rootEl,n=e.parentEl,o=e.sortable,a=e.dispatchSortableEvent,r=e.oldIndex,s=e.putSortable,l=s||this.sortable;if(t){var c=this.options,p=n.children;if(!mt)if(c.multiDragKey&&!this.multiDragKeyDown&&this._deselectMultiDrag(),k(lt,c.selectedClass,!~dt.indexOf(lt)),~dt.indexOf(lt))dt.splice(dt.indexOf(lt),1),rt=null,j({sortable:o,rootEl:i,name:"deselect",targetEl:lt,originalEvt:t});else{if(dt.push(lt),j({sortable:o,rootEl:i,name:"select",targetEl:lt,originalEvt:t}),t.shiftKey&&rt&&o.el.contains(rt)){var d,u,h=N(rt),f=N(lt);if(~h&&~f&&h!==f)for(f>h?(u=h,d=f):(u=f,d=h+1);u1){var m=A(lt),g=N(lt,":not(."+this.options.selectedClass+")");if(!ht&&c.animation&&(lt.thisAnimationDuration=null),l.captureAnimationState(),!ht&&(c.animation&&(lt.fromRect=m,dt.forEach((function(e){if(e.thisAnimationDuration=null,e!==lt){var t=ft?A(e):m;e.fromRect=t,l.addAnimationState({target:e,rect:t})}}))),vt(),dt.forEach((function(e){p[g]?n.insertBefore(e,p[g]):n.appendChild(e),g++})),r===N(lt))){var b=!1;dt.forEach((function(e){e.sortableIndex===N(e)||(b=!0)})),b&&a("update")}dt.forEach((function(e){F(e)})),l.animateAll()}st=l}(i===n||s&&"clone"!==s.lastPutMode)&&ut.forEach((function(e){e.parentNode&&e.parentNode.removeChild(e)}))}},nullingGlobal:function(){this.isMultiDrag=mt=!1,ut.length=0},destroyGlobal:function(){this._deselectMultiDrag(),g(document,"pointerup",this._deselectMultiDrag),g(document,"mouseup",this._deselectMultiDrag),g(document,"touchend",this._deselectMultiDrag),g(document,"keydown",this._checkKeyDown),g(document,"keyup",this._checkKeyUp)},_deselectMultiDrag:function(e){if(!(void 0!==mt&&mt||st!==this.sortable||e&&y(e.target,this.options.draggable,this.sortable.el,!1)||e&&0!==e.button))for(;dt.length;){var t=dt[0];k(t,this.options.selectedClass,!1),dt.shift(),j({sortable:this.sortable,rootEl:this.sortable.el,name:"deselect",targetEl:t,originalEvt:e})}},_checkKeyDown:function(e){e.key===this.options.multiDragKey&&(this.multiDragKeyDown=!0)},_checkKeyUp:function(e){e.key===this.options.multiDragKey&&(this.multiDragKeyDown=!1)}},a(e,{pluginName:"multiDrag",utils:{select:function(e){var t=e.parentNode[U];t&&t.options.multiDrag&&!~dt.indexOf(e)&&(st&&st!==t&&(st.multiDrag._deselectMultiDrag(),st=t),k(e,t.options.selectedClass,!0),dt.push(e))},deselect:function(e){var t=e.parentNode[U],i=dt.indexOf(e);t&&t.options.multiDrag&&~i&&(k(e,t.options.selectedClass,!1),dt.splice(i,1))}},eventProperties:function(){var e,t=this,i=[],n=[];return dt.forEach((function(e){var o;i.push({multiDragElement:e,index:e.sortableIndex}),o=ft&&e!==lt?-1:ft?N(e,":not(."+t.options.selectedClass+")"):N(e),n.push({multiDragElement:e,index:o})})),{items:(e=dt,function(e){if(Array.isArray(e)){for(var t=0,i=new Array(e.length);t1&&(e=e.charAt(0).toUpperCase()+e.substr(1)),e}}})}function bt(e,t){ut.forEach((function(i,n){var o=t.children[i.sortableIndex+(e?Number(n):0)];o?t.insertBefore(i,o):t.appendChild(i)}))}function vt(){dt.forEach((function(e){e!==lt&&e.parentNode&&e.parentNode.removeChild(e)}))}ze.mount(new function(){function e(){for(var e in this.defaults={scroll:!0,scrollSensitivity:30,scrollSpeed:10,bubbleScroll:!0},this)"_"===e.charAt(0)&&"function"==typeof this[e]&&(this[e]=this[e].bind(this))}return e.prototype={dragStarted:function(e){var t=e.originalEvent;this.sortable.nativeDraggable?m(document,"dragover",this._handleAutoScroll):this.options.supportPointer?m(document,"pointermove",this._handleFallbackAutoScroll):t.touches?m(document,"touchmove",this._handleFallbackAutoScroll):m(document,"mousemove",this._handleFallbackAutoScroll)},dragOverCompleted:function(e){var t=e.originalEvent;this.options.dragOverBubble||t.rootEl||this._handleAutoScroll(t)},drop:function(){this.sortable.nativeDraggable?g(document,"dragover",this._handleAutoScroll):(g(document,"pointermove",this._handleFallbackAutoScroll),g(document,"touchmove",this._handleFallbackAutoScroll),g(document,"mousemove",this._handleFallbackAutoScroll)),Ze(),Je(),clearTimeout(E),E=void 0},nulling:function(){qe=Ge=je=Qe=Ke=$e=Ye=null,Xe.length=0},_handleFallbackAutoScroll:function(e){this._handleAutoScroll(e,!0)},_handleAutoScroll:function(e,t){var i=this,n=(e.touches?e.touches[0]:e).clientX,o=(e.touches?e.touches[0]:e).clientY,a=document.elementFromPoint(n,o);if(qe=e,t||c||l||d){tt(e,this.options,a,t);var r=M(a,!0);!Qe||Ke&&n===$e&&o===Ye||(Ke&&Ze(),Ke=setInterval((function(){var a=M(document.elementFromPoint(n,o),!0);a!==r&&(r=a,Je()),tt(e,i.options,a,t)}),10),$e=n,Ye=o)}else{if(!this.options.bubbleScroll||M(a,!0)===C())return void Je();tt(e,this.options,M(a,!1),!1)}}},a(e,{pluginName:"scroll",initializeByDefault:!0})}),ze.mount(ot,nt);const yt=ze},946:e=>{"use strict";var t=[];function i(e){for(var i=-1,n=0;n{"use strict";var t={};e.exports=function(e,i){var n=function(e){if(void 0===t[e]){var i=document.querySelector(e);if(window.HTMLIFrameElement&&i instanceof window.HTMLIFrameElement)try{i=i.contentDocument.head}catch(e){i=null}t[e]=i}return t[e]}(e);if(!n)throw new Error("Couldn't find a style target. This probably means that the value for the 'insert' parameter is invalid.");n.appendChild(i)}},430:e=>{"use strict";e.exports=function(e){var t=document.createElement("style");return e.setAttributes(t,e.attributes),e.insert(t,e.options),t}},714:(e,t,i)=>{"use strict";e.exports=function(e){var t=i.nc;t&&e.setAttribute("nonce",t)}},571:e=>{"use strict";e.exports=function(e){if("undefined"==typeof document)return{update:function(){},remove:function(){}};var t=e.insertStyleElement(e);return{update:function(i){!function(e,t,i){var n="";i.supports&&(n+="@supports (".concat(i.supports,") {")),i.media&&(n+="@media ".concat(i.media," {"));var o=void 0!==i.layer;o&&(n+="@layer".concat(i.layer.length>0?" ".concat(i.layer):""," {")),n+=i.css,o&&(n+="}"),i.media&&(n+="}"),i.supports&&(n+="}");var a=i.sourceMap;a&&"undefined"!=typeof btoa&&(n+="\n/*# sourceMappingURL=data:application/json;base64,".concat(btoa(unescape(encodeURIComponent(JSON.stringify(a))))," */")),t.styleTagTransform(n,e,t.options)}(t,e,i)},remove:function(){!function(e){if(null===e.parentNode)return!1;e.parentNode.removeChild(e)}(t)}}}},307:e=>{"use strict";e.exports=function(e,t){if(t.styleSheet)t.styleSheet.cssText=e;else{for(;t.firstChild;)t.removeChild(t.firstChild);t.appendChild(document.createTextNode(e))}}},102:function(e,t,i){var n;"undefined"!=typeof self&&self,n=function(e){return function(e){var t={};function i(n){if(t[n])return t[n].exports;var o=t[n]={i:n,l:!1,exports:{}};return e[n].call(o.exports,o,o.exports,i),o.l=!0,o.exports}return i.m=e,i.c=t,i.d=function(e,t,n){i.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:n})},i.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},i.t=function(e,t){if(1&t&&(e=i(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var n=Object.create(null);if(i.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var o in e)i.d(n,o,function(t){return e[t]}.bind(null,o));return n},i.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return i.d(t,"a",t),t},i.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},i.p="",i(i.s="fb15")}({"01f9":function(e,t,i){"use strict";var n=i("2d00"),o=i("5ca1"),a=i("2aba"),r=i("32e9"),s=i("84f2"),l=i("41a0"),c=i("7f20"),p=i("38fd"),d=i("2b4c")("iterator"),u=!([].keys&&"next"in[].keys()),h="keys",f="values",m=function(){return this};e.exports=function(e,t,i,g,b,v,y){l(i,t,g);var E,x,k,I=function(e){if(!u&&e in A)return A[e];switch(e){case h:case f:return function(){return new i(this,e)}}return function(){return new i(this,e)}},T=t+" Iterator",S=b==f,C=!1,A=e.prototype,w=A[d]||A["@@iterator"]||b&&A[b],O=w||I(b),_=b?S?I("entries"):O:void 0,N="Array"==t&&A.entries||w;if(N&&(k=p(N.call(new e)))!==Object.prototype&&k.next&&(c(k,T,!0),n||"function"==typeof k[d]||r(k,d,m)),S&&w&&w.name!==f&&(C=!0,O=function(){return w.call(this)}),n&&!y||!u&&!C&&A[d]||r(A,d,O),s[t]=O,s[T]=m,b)if(E={values:S?O:I(f),keys:v?O:I(h),entries:_},y)for(x in E)x in A||a(A,x,E[x]);else o(o.P+o.F*(u||C),t,E);return E}},"02f4":function(e,t,i){var n=i("4588"),o=i("be13");e.exports=function(e){return function(t,i){var a,r,s=String(o(t)),l=n(i),c=s.length;return l<0||l>=c?e?"":void 0:(a=s.charCodeAt(l))<55296||a>56319||l+1===c||(r=s.charCodeAt(l+1))<56320||r>57343?e?s.charAt(l):a:e?s.slice(l,l+2):r-56320+(a-55296<<10)+65536}}},"0390":function(e,t,i){"use strict";var n=i("02f4")(!0);e.exports=function(e,t,i){return t+(i?n(e,t).length:1)}},"0bfb":function(e,t,i){"use strict";var n=i("cb7c");e.exports=function(){var e=n(this),t="";return e.global&&(t+="g"),e.ignoreCase&&(t+="i"),e.multiline&&(t+="m"),e.unicode&&(t+="u"),e.sticky&&(t+="y"),t}},"0d58":function(e,t,i){var n=i("ce10"),o=i("e11e");e.exports=Object.keys||function(e){return n(e,o)}},1495:function(e,t,i){var n=i("86cc"),o=i("cb7c"),a=i("0d58");e.exports=i("9e1e")?Object.defineProperties:function(e,t){o(e);for(var i,r=a(t),s=r.length,l=0;s>l;)n.f(e,i=r[l++],t[i]);return e}},"214f":function(e,t,i){"use strict";i("b0c5");var n=i("2aba"),o=i("32e9"),a=i("79e5"),r=i("be13"),s=i("2b4c"),l=i("520a"),c=s("species"),p=!a((function(){var e=/./;return e.exec=function(){var e=[];return e.groups={a:"7"},e},"7"!=="".replace(e,"$")})),d=function(){var e=/(?:)/,t=e.exec;e.exec=function(){return t.apply(this,arguments)};var i="ab".split(e);return 2===i.length&&"a"===i[0]&&"b"===i[1]}();e.exports=function(e,t,i){var u=s(e),h=!a((function(){var t={};return t[u]=function(){return 7},7!=""[e](t)})),f=h?!a((function(){var t=!1,i=/a/;return i.exec=function(){return t=!0,null},"split"===e&&(i.constructor={},i.constructor[c]=function(){return i}),i[u](""),!t})):void 0;if(!h||!f||"replace"===e&&!p||"split"===e&&!d){var m=/./[u],g=i(r,u,""[e],(function(e,t,i,n,o){return t.exec===l?h&&!o?{done:!0,value:m.call(t,i,n)}:{done:!0,value:e.call(i,t,n)}:{done:!1}})),b=g[0],v=g[1];n(String.prototype,e,b),o(RegExp.prototype,u,2==t?function(e,t){return v.call(e,this,t)}:function(e){return v.call(e,this)})}}},"230e":function(e,t,i){var n=i("d3f4"),o=i("7726").document,a=n(o)&&n(o.createElement);e.exports=function(e){return a?o.createElement(e):{}}},"23c6":function(e,t,i){var n=i("2d95"),o=i("2b4c")("toStringTag"),a="Arguments"==n(function(){return arguments}());e.exports=function(e){var t,i,r;return void 0===e?"Undefined":null===e?"Null":"string"==typeof(i=function(e,t){try{return e[t]}catch(e){}}(t=Object(e),o))?i:a?n(t):"Object"==(r=n(t))&&"function"==typeof t.callee?"Arguments":r}},2621:function(e,t){t.f=Object.getOwnPropertySymbols},"2aba":function(e,t,i){var n=i("7726"),o=i("32e9"),a=i("69a8"),r=i("ca5a")("src"),s=i("fa5b"),l="toString",c=(""+s).split(l);i("8378").inspectSource=function(e){return s.call(e)},(e.exports=function(e,t,i,s){var l="function"==typeof i;l&&(a(i,"name")||o(i,"name",t)),e[t]!==i&&(l&&(a(i,r)||o(i,r,e[t]?""+e[t]:c.join(String(t)))),e===n?e[t]=i:s?e[t]?e[t]=i:o(e,t,i):(delete e[t],o(e,t,i)))})(Function.prototype,l,(function(){return"function"==typeof this&&this[r]||s.call(this)}))},"2aeb":function(e,t,i){var n=i("cb7c"),o=i("1495"),a=i("e11e"),r=i("613b")("IE_PROTO"),s=function(){},l="prototype",c=function(){var e,t=i("230e")("iframe"),n=a.length;for(t.style.display="none",i("fab2").appendChild(t),t.src="javascript:",(e=t.contentWindow.document).open(),e.write(" diff --git a/src/frontend/devops-manage/src/components/user-group/components/children/permission-manage/manage-aside.vue b/src/frontend/devops-manage/src/components/user-group/components/children/permission-manage/manage-aside.vue index ad8c94ae1f4..2e568b3d8d3 100644 --- a/src/frontend/devops-manage/src/components/user-group/components/children/permission-manage/manage-aside.vue +++ b/src/frontend/devops-manage/src/components/user-group/components/children/permission-manage/manage-aside.vue @@ -1,66 +1,40 @@