Commit 8a77c947109678c852cdcc9e60111076d85cfc4c

Authored by xingyu4j
1 parent a5287d71

refactor: less to scss

Showing 36 changed files with 293 additions and 327 deletions
yudao-ui-admin-vue3/README.md
@@ -9,7 +9,7 @@ @@ -9,7 +9,7 @@
9 <img src="https://img.shields.io/badge/-pnpm7-F69220?logo=pnpm&logoColor=white" /> 9 <img src="https://img.shields.io/badge/-pnpm7-F69220?logo=pnpm&logoColor=white" />
10 <img src="https://img.shields.io/badge/-Axios-008fc7?logo=axios.js&logoColor=white" /> 10 <img src="https://img.shields.io/badge/-Axios-008fc7?logo=axios.js&logoColor=white" />
11 <img src="https://img.shields.io/badge/-Prettier-ef9421?logo=Prettier&logoColor=white" alt="Prettier"> 11 <img src="https://img.shields.io/badge/-Prettier-ef9421?logo=Prettier&logoColor=white" alt="Prettier">
12 - <img src="https://img.shields.io/badge/-Less-1D365D?logo=less&logoColor=white" alt="Less"> 12 + <img src="https://img.shields.io/badge/-Sass-1D365D?logo=Sass&logoColor=white" alt="Sass">
13 <img src="https://img.shields.io/badge/-Wind%20CSS-06B6D4?logo=Tailwind%20CSS&logoColor=white" alt="Taiwind"> 13 <img src="https://img.shields.io/badge/-Wind%20CSS-06B6D4?logo=Tailwind%20CSS&logoColor=white" alt="Taiwind">
14 </p> 14 </p>
15 15
yudao-ui-admin-vue3/package.json
@@ -18,7 +18,7 @@ @@ -18,7 +18,7 @@
18 "clean": "npx rimraf node_modules", 18 "clean": "npx rimraf node_modules",
19 "clean:cache": "npx rimraf node_modules/.cache", 19 "clean:cache": "npx rimraf node_modules/.cache",
20 "lint:eslint": "eslint --fix --ext .js,.ts,.vue ./src", 20 "lint:eslint": "eslint --fix --ext .js,.ts,.vue ./src",
21 - "lint:format": "prettier --write --loglevel warn \"src/**/*.{js,ts,json,tsx,css,less,vue,html,md}\"", 21 + "lint:format": "prettier --write --loglevel warn \"src/**/*.{js,ts,json,tsx,css,less,scss,vue,html,md}\"",
22 "lint:style": "stylelint --fix \"**/*.{vue,less,postcss,css,scss}\" --cache --cache-location node_modules/.cache/stylelint/", 22 "lint:style": "stylelint --fix \"**/*.{vue,less,postcss,css,scss}\" --cache --cache-location node_modules/.cache/stylelint/",
23 "lint:lint-staged": "lint-staged -c ", 23 "lint:lint-staged": "lint-staged -c ",
24 "lint:pretty": "pretty-quick --staged", 24 "lint:pretty": "pretty-quick --staged",
@@ -78,12 +78,13 @@ @@ -78,12 +78,13 @@
78 "eslint-define-config": "^1.12.0", 78 "eslint-define-config": "^1.12.0",
79 "eslint-plugin-prettier": "^4.2.1", 79 "eslint-plugin-prettier": "^4.2.1",
80 "eslint-plugin-vue": "^9.7.0", 80 "eslint-plugin-vue": "^9.7.0",
81 - "less": "^4.1.3", 81 + "sass": "^1.56.1",
  82 + "sass-loader": "^13.2.0",
82 "lint-staged": "^13.0.3", 83 "lint-staged": "^13.0.3",
83 "plop": "^3.1.1", 84 "plop": "^3.1.1",
84 "postcss": "^8.4.19", 85 "postcss": "^8.4.19",
85 "postcss-html": "^1.5.0", 86 "postcss-html": "^1.5.0",
86 - "postcss-less": "^6.0.0", 87 + "postcss-scss": "^4.0.5",
87 "prettier": "^2.7.1", 88 "prettier": "^2.7.1",
88 "rimraf": "^3.0.2", 89 "rimraf": "^3.0.2",
89 "rollup": "^3.4.0", 90 "rollup": "^3.4.0",
yudao-ui-admin-vue3/pnpm-lock.yaml
@@ -37,7 +37,6 @@ specifiers: @@ -37,7 +37,6 @@ specifiers:
37 intro.js: ^6.0.0 37 intro.js: ^6.0.0
38 js-cookie: ^3.0.1 38 js-cookie: ^3.0.1
39 jsencrypt: ^3.3.1 39 jsencrypt: ^3.3.1
40 - less: ^4.1.3  
41 lint-staged: ^13.0.3 40 lint-staged: ^13.0.3
42 lodash-es: ^4.17.21 41 lodash-es: ^4.17.21
43 mitt: ^3.0.0 42 mitt: ^3.0.0
@@ -46,12 +45,14 @@ specifiers: @@ -46,12 +45,14 @@ specifiers:
46 plop: ^3.1.1 45 plop: ^3.1.1
47 postcss: ^8.4.19 46 postcss: ^8.4.19
48 postcss-html: ^1.5.0 47 postcss-html: ^1.5.0
49 - postcss-less: ^6.0.0 48 + postcss-scss: ^4.0.5
50 prettier: ^2.7.1 49 prettier: ^2.7.1
51 qrcode: ^1.5.1 50 qrcode: ^1.5.1
52 qs: ^6.11.0 51 qs: ^6.11.0
53 rimraf: ^3.0.2 52 rimraf: ^3.0.2
54 rollup: ^3.4.0 53 rollup: ^3.4.0
  54 + sass: ^1.56.1
  55 + sass-loader: ^13.2.0
55 stylelint: ^14.15.0 56 stylelint: ^14.15.0
56 stylelint-config-html: ^1.1.0 57 stylelint-config-html: ^1.1.0
57 stylelint-config-prettier: ^9.0.4 58 stylelint-config-prettier: ^9.0.4
@@ -134,15 +135,16 @@ devDependencies: @@ -134,15 +135,16 @@ devDependencies:
134 eslint-define-config: registry.npmmirror.com/eslint-define-config/1.12.0 135 eslint-define-config: registry.npmmirror.com/eslint-define-config/1.12.0
135 eslint-plugin-prettier: registry.npmmirror.com/eslint-plugin-prettier/4.2.1_pgxuib4rd7wiymfktharf5ydt4 136 eslint-plugin-prettier: registry.npmmirror.com/eslint-plugin-prettier/4.2.1_pgxuib4rd7wiymfktharf5ydt4
136 eslint-plugin-vue: registry.npmmirror.com/eslint-plugin-vue/9.7.0_eslint@8.28.0 137 eslint-plugin-vue: registry.npmmirror.com/eslint-plugin-vue/9.7.0_eslint@8.28.0
137 - less: registry.npmmirror.com/less/4.1.3  
138 lint-staged: registry.npmmirror.com/lint-staged/13.0.3 138 lint-staged: registry.npmmirror.com/lint-staged/13.0.3
139 plop: registry.npmmirror.com/plop/3.1.1 139 plop: registry.npmmirror.com/plop/3.1.1
140 postcss: registry.npmmirror.com/postcss/8.4.19 140 postcss: registry.npmmirror.com/postcss/8.4.19
141 postcss-html: registry.npmmirror.com/postcss-html/1.5.0 141 postcss-html: registry.npmmirror.com/postcss-html/1.5.0
142 - postcss-less: registry.npmmirror.com/postcss-less/6.0.0_postcss@8.4.19 142 + postcss-scss: registry.npmmirror.com/postcss-scss/4.0.5_postcss@8.4.19
143 prettier: registry.npmmirror.com/prettier/2.7.1 143 prettier: registry.npmmirror.com/prettier/2.7.1
144 rimraf: registry.npmmirror.com/rimraf/3.0.2 144 rimraf: registry.npmmirror.com/rimraf/3.0.2
145 rollup: registry.npmmirror.com/rollup/3.4.0 145 rollup: registry.npmmirror.com/rollup/3.4.0
  146 + sass: registry.npmmirror.com/sass/1.56.1
  147 + sass-loader: registry.npmmirror.com/sass-loader/13.2.0_sass@1.56.1
146 stylelint: registry.npmmirror.com/stylelint/14.15.0 148 stylelint: registry.npmmirror.com/stylelint/14.15.0
147 stylelint-config-html: registry.npmmirror.com/stylelint-config-html/1.1.0_qendsqix7hqecpnpx4fjs6qry4 149 stylelint-config-html: registry.npmmirror.com/stylelint-config-html/1.1.0_qendsqix7hqecpnpx4fjs6qry4
148 stylelint-config-prettier: registry.npmmirror.com/stylelint-config-prettier/9.0.4_stylelint@14.15.0 150 stylelint-config-prettier: registry.npmmirror.com/stylelint-config-prettier/9.0.4_stylelint@14.15.0
@@ -150,7 +152,7 @@ devDependencies: @@ -150,7 +152,7 @@ devDependencies:
150 stylelint-config-standard: registry.npmmirror.com/stylelint-config-standard/29.0.0_stylelint@14.15.0 152 stylelint-config-standard: registry.npmmirror.com/stylelint-config-standard/29.0.0_stylelint@14.15.0
151 stylelint-order: registry.npmmirror.com/stylelint-order/5.0.0_stylelint@14.15.0 153 stylelint-order: registry.npmmirror.com/stylelint-order/5.0.0_stylelint@14.15.0
152 typescript: registry.npmmirror.com/typescript/4.9.3 154 typescript: registry.npmmirror.com/typescript/4.9.3
153 - vite: registry.npmmirror.com/vite/3.2.4_mp5lu76ee5qtwstsyca37sdhqi 155 + vite: registry.npmmirror.com/vite/3.2.4_ajklay5k626t46b6fyghkbup3i
154 vite-plugin-compression: registry.npmmirror.com/vite-plugin-compression/0.5.1_vite@3.2.4 156 vite-plugin-compression: registry.npmmirror.com/vite-plugin-compression/0.5.1_vite@3.2.4
155 vite-plugin-eslint: registry.npmmirror.com/vite-plugin-eslint/1.8.1_eslint@8.28.0+vite@3.2.4 157 vite-plugin-eslint: registry.npmmirror.com/vite-plugin-eslint/1.8.1_eslint@8.28.0+vite@3.2.4
156 vite-plugin-html: registry.npmmirror.com/vite-plugin-html/3.2.0_vite@3.2.4 158 vite-plugin-html: registry.npmmirror.com/vite-plugin-html/3.2.0_vite@3.2.4
@@ -987,7 +989,7 @@ packages: @@ -987,7 +989,7 @@ packages:
987 debug: registry.npmmirror.com/debug/4.3.4 989 debug: registry.npmmirror.com/debug/4.3.4
988 fast-glob: registry.npmmirror.com/fast-glob/3.2.12 990 fast-glob: registry.npmmirror.com/fast-glob/3.2.12
989 source-map: registry.npmmirror.com/source-map/0.6.1 991 source-map: registry.npmmirror.com/source-map/0.6.1
990 - vite: registry.npmmirror.com/vite/3.2.4_mp5lu76ee5qtwstsyca37sdhqi 992 + vite: registry.npmmirror.com/vite/3.2.4_ajklay5k626t46b6fyghkbup3i
991 vue-i18n: registry.npmmirror.com/vue-i18n/9.2.2_vue@3.2.45 993 vue-i18n: registry.npmmirror.com/vue-i18n/9.2.2_vue@3.2.45
992 transitivePeerDependencies: 994 transitivePeerDependencies:
993 - supports-color 995 - supports-color
@@ -1540,7 +1542,7 @@ packages: @@ -1540,7 +1542,7 @@ packages:
1540 '@babel/core': registry.npmmirror.com/@babel/core/7.20.2 1542 '@babel/core': registry.npmmirror.com/@babel/core/7.20.2
1541 '@babel/plugin-transform-typescript': registry.npmmirror.com/@babel/plugin-transform-typescript/7.20.2_@babel+core@7.20.2 1543 '@babel/plugin-transform-typescript': registry.npmmirror.com/@babel/plugin-transform-typescript/7.20.2_@babel+core@7.20.2
1542 '@vue/babel-plugin-jsx': registry.npmmirror.com/@vue/babel-plugin-jsx/1.1.1_@babel+core@7.20.2 1544 '@vue/babel-plugin-jsx': registry.npmmirror.com/@vue/babel-plugin-jsx/1.1.1_@babel+core@7.20.2
1543 - vite: registry.npmmirror.com/vite/3.2.4_mp5lu76ee5qtwstsyca37sdhqi 1545 + vite: registry.npmmirror.com/vite/3.2.4_ajklay5k626t46b6fyghkbup3i
1544 vue: registry.npmmirror.com/vue/3.2.45 1546 vue: registry.npmmirror.com/vue/3.2.45
1545 transitivePeerDependencies: 1547 transitivePeerDependencies:
1546 - supports-color 1548 - supports-color
@@ -1556,7 +1558,7 @@ packages: @@ -1556,7 +1558,7 @@ packages:
1556 vite: ^3.0.0 1558 vite: ^3.0.0
1557 vue: ^3.2.25 1559 vue: ^3.2.25
1558 dependencies: 1560 dependencies:
1559 - vite: registry.npmmirror.com/vite/3.2.4_mp5lu76ee5qtwstsyca37sdhqi 1561 + vite: registry.npmmirror.com/vite/3.2.4_ajklay5k626t46b6fyghkbup3i
1560 vue: registry.npmmirror.com/vue/3.2.45 1562 vue: registry.npmmirror.com/vue/3.2.45
1561 dev: true 1563 dev: true
1562 1564
@@ -2167,6 +2169,16 @@ packages: @@ -2167,6 +2169,16 @@ packages:
2167 engines: {node: '>=12'} 2169 engines: {node: '>=12'}
2168 dev: true 2170 dev: true
2169 2171
  2172 + registry.npmmirror.com/anymatch/3.1.3:
  2173 + resolution: {integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/anymatch/-/anymatch-3.1.3.tgz}
  2174 + name: anymatch
  2175 + version: 3.1.3
  2176 + engines: {node: '>= 8'}
  2177 + dependencies:
  2178 + normalize-path: registry.npmmirror.com/normalize-path/3.0.0
  2179 + picomatch: registry.npmmirror.com/picomatch/2.3.1
  2180 + dev: true
  2181 +
2170 registry.npmmirror.com/arg/4.1.3: 2182 registry.npmmirror.com/arg/4.1.3:
2171 resolution: {integrity: sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/arg/-/arg-4.1.3.tgz} 2183 resolution: {integrity: sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/arg/-/arg-4.1.3.tgz}
2172 name: arg 2184 name: arg
@@ -2362,6 +2374,13 @@ packages: @@ -2362,6 +2374,13 @@ packages:
2362 version: 5.2.2 2374 version: 5.2.2
2363 dev: true 2375 dev: true
2364 2376
  2377 + registry.npmmirror.com/binary-extensions/2.2.0:
  2378 + resolution: {integrity: sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/binary-extensions/-/binary-extensions-2.2.0.tgz}
  2379 + name: binary-extensions
  2380 + version: 2.2.0
  2381 + engines: {node: '>=8'}
  2382 + dev: true
  2383 +
2365 registry.npmmirror.com/bl/4.1.0: 2384 registry.npmmirror.com/bl/4.1.0:
2366 resolution: {integrity: sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/bl/-/bl-4.1.0.tgz} 2385 resolution: {integrity: sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/bl/-/bl-4.1.0.tgz}
2367 name: bl 2386 name: bl
@@ -2625,6 +2644,23 @@ packages: @@ -2625,6 +2644,23 @@ packages:
2625 version: 0.7.0 2644 version: 0.7.0
2626 dev: true 2645 dev: true
2627 2646
  2647 + registry.npmmirror.com/chokidar/3.5.3:
  2648 + resolution: {integrity: sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/chokidar/-/chokidar-3.5.3.tgz}
  2649 + name: chokidar
  2650 + version: 3.5.3
  2651 + engines: {node: '>= 8.10.0'}
  2652 + dependencies:
  2653 + anymatch: registry.npmmirror.com/anymatch/3.1.3
  2654 + braces: registry.npmmirror.com/braces/3.0.2
  2655 + glob-parent: registry.npmmirror.com/glob-parent/5.1.2
  2656 + is-binary-path: registry.npmmirror.com/is-binary-path/2.1.0
  2657 + is-glob: registry.npmmirror.com/is-glob/4.0.3
  2658 + normalize-path: registry.npmmirror.com/normalize-path/3.0.0
  2659 + readdirp: registry.npmmirror.com/readdirp/3.6.0
  2660 + optionalDependencies:
  2661 + fsevents: registry.npmmirror.com/fsevents/2.3.2
  2662 + dev: true
  2663 +
2628 registry.npmmirror.com/class-utils/0.3.6: 2664 registry.npmmirror.com/class-utils/0.3.6:
2629 resolution: {integrity: sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/class-utils/-/class-utils-0.3.6.tgz} 2665 resolution: {integrity: sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/class-utils/-/class-utils-0.3.6.tgz}
2630 name: class-utils 2666 name: class-utils
@@ -2923,14 +2959,6 @@ packages: @@ -2923,14 +2959,6 @@ packages:
2923 version: 1.9.0 2959 version: 1.9.0
2924 dev: true 2960 dev: true
2925 2961
2926 - registry.npmmirror.com/copy-anything/2.0.6:  
2927 - resolution: {integrity: sha512-1j20GZTsvKNkc4BY3NpMOM8tt///wY3FpIzozTOFO2ffuZcV61nojHXVKIy3WM+7ADCy5FVhdZYHYDdgTU0yJw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/copy-anything/-/copy-anything-2.0.6.tgz}  
2928 - name: copy-anything  
2929 - version: 2.0.6  
2930 - dependencies:  
2931 - is-what: registry.npmmirror.com/is-what/3.14.1  
2932 - dev: true  
2933 -  
2934 registry.npmmirror.com/copy-descriptor/0.1.1: 2962 registry.npmmirror.com/copy-descriptor/0.1.1:
2935 resolution: {integrity: sha512-XgZ0pFcakEUlbwQEVNg3+QAis1FyTL3Qel9FYy8pSkQqoG3PNoT0bOCQtOXcOkur21r2Eq2kI+IE+gsmAEVlYw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/copy-descriptor/-/copy-descriptor-0.1.1.tgz} 2963 resolution: {integrity: sha512-XgZ0pFcakEUlbwQEVNg3+QAis1FyTL3Qel9FYy8pSkQqoG3PNoT0bOCQtOXcOkur21r2Eq2kI+IE+gsmAEVlYw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/copy-descriptor/-/copy-descriptor-0.1.1.tgz}
2936 name: copy-descriptor 2964 name: copy-descriptor
@@ -3111,20 +3139,6 @@ packages: @@ -3111,20 +3139,6 @@ packages:
3111 ms: registry.npmmirror.com/ms/2.0.0 3139 ms: registry.npmmirror.com/ms/2.0.0
3112 dev: true 3140 dev: true
3113 3141
3114 - registry.npmmirror.com/debug/3.2.7:  
3115 - resolution: {integrity: sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/debug/-/debug-3.2.7.tgz}  
3116 - name: debug  
3117 - version: 3.2.7  
3118 - peerDependencies:  
3119 - supports-color: '*'  
3120 - peerDependenciesMeta:  
3121 - supports-color:  
3122 - optional: true  
3123 - dependencies:  
3124 - ms: registry.npmmirror.com/ms/2.1.3  
3125 - dev: true  
3126 - optional: true  
3127 -  
3128 registry.npmmirror.com/debug/4.3.4: 3142 registry.npmmirror.com/debug/4.3.4:
3129 resolution: {integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/debug/-/debug-4.3.4.tgz} 3143 resolution: {integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/debug/-/debug-4.3.4.tgz}
3130 name: debug 3144 name: debug
@@ -3514,17 +3528,6 @@ packages: @@ -3514,17 +3528,6 @@ packages:
3514 engines: {node: '>=0.12'} 3528 engines: {node: '>=0.12'}
3515 dev: true 3529 dev: true
3516 3530
3517 - registry.npmmirror.com/errno/0.1.8:  
3518 - resolution: {integrity: sha512-dJ6oBr5SQ1VSd9qkk7ByRgb/1SH4JZjCHSW/mr63/QcXO9zLVxvJ6Oy13nio03rxpSnVDDjFor75SjVeZWPW/A==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/errno/-/errno-0.1.8.tgz}  
3519 - name: errno  
3520 - version: 0.1.8  
3521 - hasBin: true  
3522 - requiresBuild: true  
3523 - dependencies:  
3524 - prr: registry.npmmirror.com/prr/1.0.1  
3525 - dev: true  
3526 - optional: true  
3527 -  
3528 registry.npmmirror.com/error-ex/1.3.2: 3531 registry.npmmirror.com/error-ex/1.3.2:
3529 resolution: {integrity: sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/error-ex/-/error-ex-1.3.2.tgz} 3532 resolution: {integrity: sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/error-ex/-/error-ex-1.3.2.tgz}
3530 name: error-ex 3533 name: error-ex
@@ -4903,16 +4906,6 @@ packages: @@ -4903,16 +4906,6 @@ packages:
4903 safer-buffer: registry.npmmirror.com/safer-buffer/2.1.2 4906 safer-buffer: registry.npmmirror.com/safer-buffer/2.1.2
4904 dev: true 4907 dev: true
4905 4908
4906 - registry.npmmirror.com/iconv-lite/0.6.3:  
4907 - resolution: {integrity: sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/iconv-lite/-/iconv-lite-0.6.3.tgz}  
4908 - name: iconv-lite  
4909 - version: 0.6.3  
4910 - engines: {node: '>=0.10.0'}  
4911 - dependencies:  
4912 - safer-buffer: registry.npmmirror.com/safer-buffer/2.1.2  
4913 - dev: true  
4914 - optional: true  
4915 -  
4916 registry.npmmirror.com/ieee754/1.2.1: 4909 registry.npmmirror.com/ieee754/1.2.1:
4917 resolution: {integrity: sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/ieee754/-/ieee754-1.2.1.tgz} 4910 resolution: {integrity: sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/ieee754/-/ieee754-1.2.1.tgz}
4918 name: ieee754 4911 name: ieee754
@@ -4940,6 +4933,12 @@ packages: @@ -4940,6 +4933,12 @@ packages:
4940 version: 9.0.16 4933 version: 9.0.16
4941 dev: false 4934 dev: false
4942 4935
  4936 + registry.npmmirror.com/immutable/4.1.0:
  4937 + resolution: {integrity: sha512-oNkuqVTA8jqG1Q6c+UglTOD1xhC1BtjKI7XkCXRkZHrN5m18/XsnUp8Q89GkQO/z+0WjonSvl0FLhDYftp46nQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/immutable/-/immutable-4.1.0.tgz}
  4938 + name: immutable
  4939 + version: 4.1.0
  4940 + dev: true
  4941 +
4943 registry.npmmirror.com/import-fresh/3.3.0: 4942 registry.npmmirror.com/import-fresh/3.3.0:
4944 resolution: {integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/import-fresh/-/import-fresh-3.3.0.tgz} 4943 resolution: {integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/import-fresh/-/import-fresh-3.3.0.tgz}
4945 name: import-fresh 4944 name: import-fresh
@@ -5062,6 +5061,15 @@ packages: @@ -5062,6 +5061,15 @@ packages:
5062 version: 0.2.1 5061 version: 0.2.1
5063 dev: true 5062 dev: true
5064 5063
  5064 + registry.npmmirror.com/is-binary-path/2.1.0:
  5065 + resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/is-binary-path/-/is-binary-path-2.1.0.tgz}
  5066 + name: is-binary-path
  5067 + version: 2.1.0
  5068 + engines: {node: '>=8'}
  5069 + dependencies:
  5070 + binary-extensions: registry.npmmirror.com/binary-extensions/2.2.0
  5071 + dev: true
  5072 +
5065 registry.npmmirror.com/is-buffer/1.1.6: 5073 registry.npmmirror.com/is-buffer/1.1.6:
5066 resolution: {integrity: sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/is-buffer/-/is-buffer-1.1.6.tgz} 5074 resolution: {integrity: sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/is-buffer/-/is-buffer-1.1.6.tgz}
5067 name: is-buffer 5075 name: is-buffer
@@ -5301,12 +5309,6 @@ packages: @@ -5301,12 +5309,6 @@ packages:
5301 version: 1.2.4 5309 version: 1.2.4
5302 dev: false 5310 dev: false
5303 5311
5304 - registry.npmmirror.com/is-what/3.14.1:  
5305 - resolution: {integrity: sha512-sNxgpk9793nzSs7bA6JQJGeIuRBQhAaNGG77kzYQgMkrID+lS6SlK07K5LaptscDlSaIgH+GPFzf+d75FVxozA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/is-what/-/is-what-3.14.1.tgz}  
5306 - name: is-what  
5307 - version: 3.14.1  
5308 - dev: true  
5309 -  
5310 registry.npmmirror.com/is-windows/1.0.2: 5312 registry.npmmirror.com/is-windows/1.0.2:
5311 resolution: {integrity: sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/is-windows/-/is-windows-1.0.2.tgz} 5313 resolution: {integrity: sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/is-windows/-/is-windows-1.0.2.tgz}
5312 name: is-windows 5314 name: is-windows
@@ -5526,6 +5528,13 @@ packages: @@ -5526,6 +5528,13 @@ packages:
5526 engines: {node: '>=0.10.0'} 5528 engines: {node: '>=0.10.0'}
5527 dev: true 5529 dev: true
5528 5530
  5531 + registry.npmmirror.com/klona/2.0.5:
  5532 + resolution: {integrity: sha512-pJiBpiXMbt7dkzXe8Ghj/u4FfXOOa98fPW+bihOJ4SjnoijweJrNThJfd3ifXpXhREjpoF2mZVH1GfS9LV3kHQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/klona/-/klona-2.0.5.tgz}
  5533 + name: klona
  5534 + version: 2.0.5
  5535 + engines: {node: '>= 8'}
  5536 + dev: true
  5537 +
5529 registry.npmmirror.com/known-css-properties/0.26.0: 5538 registry.npmmirror.com/known-css-properties/0.26.0:
5530 resolution: {integrity: sha512-5FZRzrZzNTBruuurWpvZnvP9pum+fe0HcK8z/ooo+U+Hmp4vtbyp1/QDsqmufirXy4egGzbaH/y2uCZf+6W5Kg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/known-css-properties/-/known-css-properties-0.26.0.tgz} 5539 resolution: {integrity: sha512-5FZRzrZzNTBruuurWpvZnvP9pum+fe0HcK8z/ooo+U+Hmp4vtbyp1/QDsqmufirXy4egGzbaH/y2uCZf+6W5Kg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/known-css-properties/-/known-css-properties-0.26.0.tgz}
5531 name: known-css-properties 5540 name: known-css-properties
@@ -5538,28 +5547,6 @@ packages: @@ -5538,28 +5547,6 @@ packages:
5538 version: 1.6.0 5547 version: 1.6.0
5539 dev: true 5548 dev: true
5540 5549
5541 - registry.npmmirror.com/less/4.1.3:  
5542 - resolution: {integrity: sha512-w16Xk/Ta9Hhyei0Gpz9m7VS8F28nieJaL/VyShID7cYvP6IL5oHeL6p4TXSDJqZE/lNv0oJ2pGVjJsRkfwm5FA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/less/-/less-4.1.3.tgz}  
5543 - name: less  
5544 - version: 4.1.3  
5545 - engines: {node: '>=6'}  
5546 - hasBin: true  
5547 - dependencies:  
5548 - copy-anything: registry.npmmirror.com/copy-anything/2.0.6  
5549 - parse-node-version: registry.npmmirror.com/parse-node-version/1.0.1  
5550 - tslib: registry.npmmirror.com/tslib/2.4.1  
5551 - optionalDependencies:  
5552 - errno: registry.npmmirror.com/errno/0.1.8  
5553 - graceful-fs: registry.npmmirror.com/graceful-fs/4.2.10  
5554 - image-size: registry.npmmirror.com/image-size/0.5.5  
5555 - make-dir: registry.npmmirror.com/make-dir/2.1.0  
5556 - mime: registry.npmmirror.com/mime/1.6.0  
5557 - needle: registry.npmmirror.com/needle/3.2.0  
5558 - source-map: registry.npmmirror.com/source-map/0.6.1  
5559 - transitivePeerDependencies:  
5560 - - supports-color  
5561 - dev: true  
5562 -  
5563 registry.npmmirror.com/levn/0.4.1: 5550 registry.npmmirror.com/levn/0.4.1:
5564 resolution: {integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/levn/-/levn-0.4.1.tgz} 5551 resolution: {integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/levn/-/levn-0.4.1.tgz}
5565 name: levn 5552 name: levn
@@ -5871,18 +5858,6 @@ packages: @@ -5871,18 +5858,6 @@ packages:
5871 sourcemap-codec: registry.npmmirror.com/sourcemap-codec/1.4.8 5858 sourcemap-codec: registry.npmmirror.com/sourcemap-codec/1.4.8
5872 dev: true 5859 dev: true
5873 5860
5874 - registry.npmmirror.com/make-dir/2.1.0:  
5875 - resolution: {integrity: sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/make-dir/-/make-dir-2.1.0.tgz}  
5876 - name: make-dir  
5877 - version: 2.1.0  
5878 - engines: {node: '>=6'}  
5879 - requiresBuild: true  
5880 - dependencies:  
5881 - pify: registry.npmmirror.com/pify/4.0.1  
5882 - semver: registry.npmmirror.com/semver/5.7.1  
5883 - dev: true  
5884 - optional: true  
5885 -  
5886 registry.npmmirror.com/make-error/1.3.6: 5861 registry.npmmirror.com/make-error/1.3.6:
5887 resolution: {integrity: sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/make-error/-/make-error-1.3.6.tgz} 5862 resolution: {integrity: sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/make-error/-/make-error-1.3.6.tgz}
5888 name: make-error 5863 name: make-error
@@ -6064,16 +6039,6 @@ packages: @@ -6064,16 +6039,6 @@ packages:
6064 mime-db: registry.npmmirror.com/mime-db/1.52.0 6039 mime-db: registry.npmmirror.com/mime-db/1.52.0
6065 dev: false 6040 dev: false
6066 6041
6067 - registry.npmmirror.com/mime/1.6.0:  
6068 - resolution: {integrity: sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/mime/-/mime-1.6.0.tgz}  
6069 - name: mime  
6070 - version: 1.6.0  
6071 - engines: {node: '>=4'}  
6072 - hasBin: true  
6073 - requiresBuild: true  
6074 - dev: true  
6075 - optional: true  
6076 -  
6077 registry.npmmirror.com/mimic-fn/2.1.0: 6042 registry.npmmirror.com/mimic-fn/2.1.0:
6078 resolution: {integrity: sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/mimic-fn/-/mimic-fn-2.1.0.tgz} 6043 resolution: {integrity: sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/mimic-fn/-/mimic-fn-2.1.0.tgz}
6079 name: mimic-fn 6044 name: mimic-fn
@@ -6165,13 +6130,6 @@ packages: @@ -6165,13 +6130,6 @@ packages:
6165 version: 2.1.2 6130 version: 2.1.2
6166 dev: true 6131 dev: true
6167 6132
6168 - registry.npmmirror.com/ms/2.1.3:  
6169 - resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/ms/-/ms-2.1.3.tgz}  
6170 - name: ms  
6171 - version: 2.1.3  
6172 - dev: true  
6173 - optional: true  
6174 -  
6175 registry.npmmirror.com/muggle-string/0.1.0: 6133 registry.npmmirror.com/muggle-string/0.1.0:
6176 resolution: {integrity: sha512-Tr1knR3d2mKvvWthlk7202rywKbiOm4rVFLsfAaSIhJ6dt9o47W4S+JMtWhd/PW9Wrdew2/S2fSvhz3E2gkfEg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/muggle-string/-/muggle-string-0.1.0.tgz} 6134 resolution: {integrity: sha512-Tr1knR3d2mKvvWthlk7202rywKbiOm4rVFLsfAaSIhJ6dt9o47W4S+JMtWhd/PW9Wrdew2/S2fSvhz3E2gkfEg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/muggle-string/-/muggle-string-0.1.0.tgz}
6177 name: muggle-string 6135 name: muggle-string
@@ -6230,22 +6188,6 @@ packages: @@ -6230,22 +6188,6 @@ packages:
6230 version: 1.4.0 6188 version: 1.4.0
6231 dev: true 6189 dev: true
6232 6190
6233 - registry.npmmirror.com/needle/3.2.0:  
6234 - resolution: {integrity: sha512-oUvzXnyLiVyVGoianLijF9O/RecZUf7TkBfimjGrLM4eQhXyeJwM6GeAWccwfQ9aa4gMCZKqhAOuLaMIcQxajQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/needle/-/needle-3.2.0.tgz}  
6235 - name: needle  
6236 - version: 3.2.0  
6237 - engines: {node: '>= 4.4.x'}  
6238 - hasBin: true  
6239 - requiresBuild: true  
6240 - dependencies:  
6241 - debug: registry.npmmirror.com/debug/3.2.7  
6242 - iconv-lite: registry.npmmirror.com/iconv-lite/0.6.3  
6243 - sax: registry.npmmirror.com/sax/1.2.4  
6244 - transitivePeerDependencies:  
6245 - - supports-color  
6246 - dev: true  
6247 - optional: true  
6248 -  
6249 registry.npmmirror.com/neo-async/2.6.2: 6191 registry.npmmirror.com/neo-async/2.6.2:
6250 resolution: {integrity: sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/neo-async/-/neo-async-2.6.2.tgz} 6192 resolution: {integrity: sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/neo-async/-/neo-async-2.6.2.tgz}
6251 name: neo-async 6193 name: neo-async
@@ -6626,13 +6568,6 @@ packages: @@ -6626,13 +6568,6 @@ packages:
6626 lines-and-columns: registry.npmmirror.com/lines-and-columns/1.2.4 6568 lines-and-columns: registry.npmmirror.com/lines-and-columns/1.2.4
6627 dev: true 6569 dev: true
6628 6570
6629 - registry.npmmirror.com/parse-node-version/1.0.1:  
6630 - resolution: {integrity: sha512-3YHlOa/JgH6Mnpr05jP9eDG254US9ek25LyIxZlDItp2iJtwyaXQb57lBYLdT3MowkUFYEV2XXNAYIPlESvJlA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/parse-node-version/-/parse-node-version-1.0.1.tgz}  
6631 - name: parse-node-version  
6632 - version: 1.0.1  
6633 - engines: {node: '>= 0.10'}  
6634 - dev: true  
6635 -  
6636 registry.npmmirror.com/parse-passwd/1.0.0: 6571 registry.npmmirror.com/parse-passwd/1.0.0:
6637 resolution: {integrity: sha512-1Y1A//QUXEZK7YKz+rD9WydcE1+EuPr6ZBgKecAB8tmoW6UFv0NREVJe1p+jRxtThkcbbKkfwIbWJe/IeE6m2Q==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/parse-passwd/-/parse-passwd-1.0.0.tgz} 6572 resolution: {integrity: sha512-1Y1A//QUXEZK7YKz+rD9WydcE1+EuPr6ZBgKecAB8tmoW6UFv0NREVJe1p+jRxtThkcbbKkfwIbWJe/IeE6m2Q==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/parse-passwd/-/parse-passwd-1.0.0.tgz}
6638 name: parse-passwd 6573 name: parse-passwd
@@ -6753,14 +6688,6 @@ packages: @@ -6753,14 +6688,6 @@ packages:
6753 hasBin: true 6688 hasBin: true
6754 dev: true 6689 dev: true
6755 6690
6756 - registry.npmmirror.com/pify/4.0.1:  
6757 - resolution: {integrity: sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/pify/-/pify-4.0.1.tgz}  
6758 - name: pify  
6759 - version: 4.0.1  
6760 - engines: {node: '>=6'}  
6761 - dev: true  
6762 - optional: true  
6763 -  
6764 registry.npmmirror.com/pinia/2.0.25_mgnvym7yiazkylwwogi5r767ue: 6691 registry.npmmirror.com/pinia/2.0.25_mgnvym7yiazkylwwogi5r767ue:
6765 resolution: {integrity: sha512-3reAkjJ6bW2D5hZKRMS0c9rUbHVlsVyZd037xO0PJr2AuF/09RRSBnFLlJgmHF4Jx6dEoW/jZBOHTushY7IMlw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/pinia/-/pinia-2.0.25.tgz} 6692 resolution: {integrity: sha512-3reAkjJ6bW2D5hZKRMS0c9rUbHVlsVyZd037xO0PJr2AuF/09RRSBnFLlJgmHF4Jx6dEoW/jZBOHTushY7IMlw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/pinia/-/pinia-2.0.25.tgz}
6766 id: registry.npmmirror.com/pinia/2.0.25 6693 id: registry.npmmirror.com/pinia/2.0.25
@@ -6825,18 +6752,6 @@ packages: @@ -6825,18 +6752,6 @@ packages:
6825 postcss-safe-parser: registry.npmmirror.com/postcss-safe-parser/6.0.0_postcss@8.4.19 6752 postcss-safe-parser: registry.npmmirror.com/postcss-safe-parser/6.0.0_postcss@8.4.19
6826 dev: true 6753 dev: true
6827 6754
6828 - registry.npmmirror.com/postcss-less/6.0.0_postcss@8.4.19:  
6829 - resolution: {integrity: sha512-FPX16mQLyEjLzEuuJtxA8X3ejDLNGGEG503d2YGZR5Ask1SpDN8KmZUMpzCvyalWRywAn1n1VOA5dcqfCLo5rg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/postcss-less/-/postcss-less-6.0.0.tgz}  
6830 - id: registry.npmmirror.com/postcss-less/6.0.0  
6831 - name: postcss-less  
6832 - version: 6.0.0  
6833 - engines: {node: '>=12'}  
6834 - peerDependencies:  
6835 - postcss: ^8.3.5  
6836 - dependencies:  
6837 - postcss: registry.npmmirror.com/postcss/8.4.19  
6838 - dev: true  
6839 -  
6840 registry.npmmirror.com/postcss-media-query-parser/0.2.3: 6755 registry.npmmirror.com/postcss-media-query-parser/0.2.3:
6841 resolution: {integrity: sha512-3sOlxmbKcSHMjlUXQZKQ06jOswE7oVkXPxmZdoB1r5l0q6gTFTQSHxNxOrCccElbW7dxNytifNEo8qidX2Vsig==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/postcss-media-query-parser/-/postcss-media-query-parser-0.2.3.tgz} 6756 resolution: {integrity: sha512-3sOlxmbKcSHMjlUXQZKQ06jOswE7oVkXPxmZdoB1r5l0q6gTFTQSHxNxOrCccElbW7dxNytifNEo8qidX2Vsig==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/postcss-media-query-parser/-/postcss-media-query-parser-0.2.3.tgz}
6842 name: postcss-media-query-parser 6757 name: postcss-media-query-parser
@@ -6872,6 +6787,18 @@ packages: @@ -6872,6 +6787,18 @@ packages:
6872 postcss: registry.npmmirror.com/postcss/8.4.19 6787 postcss: registry.npmmirror.com/postcss/8.4.19
6873 dev: true 6788 dev: true
6874 6789
  6790 + registry.npmmirror.com/postcss-scss/4.0.5_postcss@8.4.19:
  6791 + resolution: {integrity: sha512-F7xpB6TrXyqUh3GKdyB4Gkp3QL3DDW1+uI+gxx/oJnUt/qXI4trj5OGlp9rOKdoABGULuqtqeG+3HEVQk4DjmA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/postcss-scss/-/postcss-scss-4.0.5.tgz}
  6792 + id: registry.npmmirror.com/postcss-scss/4.0.5
  6793 + name: postcss-scss
  6794 + version: 4.0.5
  6795 + engines: {node: '>=12.0'}
  6796 + peerDependencies:
  6797 + postcss: ^8.3.3
  6798 + dependencies:
  6799 + postcss: registry.npmmirror.com/postcss/8.4.19
  6800 + dev: true
  6801 +
6875 registry.npmmirror.com/postcss-selector-parser/6.0.10: 6802 registry.npmmirror.com/postcss-selector-parser/6.0.10:
6876 resolution: {integrity: sha512-IQ7TZdoaqbT+LCpShg46jnZVlhWD2w6iQYAcYXfHARZ7X1t/UGhhceQDs5X0cGqKvYlHNOuv7Oa1xmb0oQuA3w==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/postcss-selector-parser/-/postcss-selector-parser-6.0.10.tgz} 6803 resolution: {integrity: sha512-IQ7TZdoaqbT+LCpShg46jnZVlhWD2w6iQYAcYXfHARZ7X1t/UGhhceQDs5X0cGqKvYlHNOuv7Oa1xmb0oQuA3w==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/postcss-selector-parser/-/postcss-selector-parser-6.0.10.tgz}
6877 name: postcss-selector-parser 6804 name: postcss-selector-parser
@@ -7016,13 +6943,6 @@ packages: @@ -7016,13 +6943,6 @@ packages:
7016 version: 1.1.0 6943 version: 1.1.0
7017 dev: false 6944 dev: false
7018 6945
7019 - registry.npmmirror.com/prr/1.0.1:  
7020 - resolution: {integrity: sha512-yPw4Sng1gWghHQWj0B3ZggWUm4qVbPwPFcRG8KyxiU7J2OHFSoEHKS+EZ3fv5l1t9CyCiop6l/ZYeWbrgoQejw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/prr/-/prr-1.0.1.tgz}  
7021 - name: prr  
7022 - version: 1.0.1  
7023 - dev: true  
7024 - optional: true  
7025 -  
7026 registry.npmmirror.com/punycode/1.3.2: 6946 registry.npmmirror.com/punycode/1.3.2:
7027 resolution: {integrity: sha512-RofWgt/7fL5wP1Y7fxE7/EmTLzQVnB0ycyibJ0OOHIlJqTNzglYFxVwETOcIoJqJmpDXJ9xImDv+Fq34F/d4Dw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/punycode/-/punycode-1.3.2.tgz} 6947 resolution: {integrity: sha512-RofWgt/7fL5wP1Y7fxE7/EmTLzQVnB0ycyibJ0OOHIlJqTNzglYFxVwETOcIoJqJmpDXJ9xImDv+Fq34F/d4Dw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/punycode/-/punycode-1.3.2.tgz}
7028 name: punycode 6948 name: punycode
@@ -7138,6 +7058,15 @@ packages: @@ -7138,6 +7058,15 @@ packages:
7138 util-deprecate: registry.npmmirror.com/util-deprecate/1.0.2 7058 util-deprecate: registry.npmmirror.com/util-deprecate/1.0.2
7139 dev: true 7059 dev: true
7140 7060
  7061 + registry.npmmirror.com/readdirp/3.6.0:
  7062 + resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/readdirp/-/readdirp-3.6.0.tgz}
  7063 + name: readdirp
  7064 + version: 3.6.0
  7065 + engines: {node: '>=8.10.0'}
  7066 + dependencies:
  7067 + picomatch: registry.npmmirror.com/picomatch/2.3.1
  7068 + dev: true
  7069 +
7141 registry.npmmirror.com/rechoir/0.8.0: 7070 registry.npmmirror.com/rechoir/0.8.0:
7142 resolution: {integrity: sha512-/vxpCXddiX8NGfGO/mTafwjq4aFa/71pvamip0++IQk3zG8cbCj0fifNPrjjF1XMXUne91jL9OoxmdykoEtifQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/rechoir/-/rechoir-0.8.0.tgz} 7071 resolution: {integrity: sha512-/vxpCXddiX8NGfGO/mTafwjq4aFa/71pvamip0++IQk3zG8cbCj0fifNPrjjF1XMXUne91jL9OoxmdykoEtifQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/rechoir/-/rechoir-0.8.0.tgz}
7143 name: rechoir 7072 name: rechoir
@@ -7396,12 +7325,44 @@ packages: @@ -7396,12 +7325,44 @@ packages:
7396 version: 2.1.2 7325 version: 2.1.2
7397 dev: true 7326 dev: true
7398 7327
7399 - registry.npmmirror.com/sax/1.2.4:  
7400 - resolution: {integrity: sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/sax/-/sax-1.2.4.tgz}  
7401 - name: sax  
7402 - version: 1.2.4 7328 + registry.npmmirror.com/sass-loader/13.2.0_sass@1.56.1:
  7329 + resolution: {integrity: sha512-JWEp48djQA4nbZxmgC02/Wh0eroSUutulROUusYJO9P9zltRbNN80JCBHqRGzjd4cmZCa/r88xgfkjGD0TXsHg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/sass-loader/-/sass-loader-13.2.0.tgz}
  7330 + id: registry.npmmirror.com/sass-loader/13.2.0
  7331 + name: sass-loader
  7332 + version: 13.2.0
  7333 + engines: {node: '>= 14.15.0'}
  7334 + peerDependencies:
  7335 + fibers: '>= 3.1.0'
  7336 + node-sass: ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0
  7337 + sass: ^1.3.0
  7338 + sass-embedded: '*'
  7339 + webpack: ^5.0.0
  7340 + peerDependenciesMeta:
  7341 + fibers:
  7342 + optional: true
  7343 + node-sass:
  7344 + optional: true
  7345 + sass:
  7346 + optional: true
  7347 + sass-embedded:
  7348 + optional: true
  7349 + dependencies:
  7350 + klona: registry.npmmirror.com/klona/2.0.5
  7351 + neo-async: registry.npmmirror.com/neo-async/2.6.2
  7352 + sass: registry.npmmirror.com/sass/1.56.1
  7353 + dev: true
  7354 +
  7355 + registry.npmmirror.com/sass/1.56.1:
  7356 + resolution: {integrity: sha512-VpEyKpyBPCxE7qGDtOcdJ6fFbcpOM+Emu7uZLxVrkX8KVU/Dp5UF7WLvzqRuUhB6mqqQt1xffLoG+AndxTZrCQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/sass/-/sass-1.56.1.tgz}
  7357 + name: sass
  7358 + version: 1.56.1
  7359 + engines: {node: '>=12.0.0'}
  7360 + hasBin: true
  7361 + dependencies:
  7362 + chokidar: registry.npmmirror.com/chokidar/3.5.3
  7363 + immutable: registry.npmmirror.com/immutable/4.1.0
  7364 + source-map-js: registry.npmmirror.com/source-map-js/1.0.2
7403 dev: true 7365 dev: true
7404 - optional: true  
7405 7366
7406 registry.npmmirror.com/scroll-into-view-if-needed/2.2.29: 7367 registry.npmmirror.com/scroll-into-view-if-needed/2.2.29:
7407 resolution: {integrity: sha512-hxpAR6AN+Gh53AdAimHM6C8oTN1ppwVZITihix+WqalywBeFcQ6LdQP5ABNl26nX8GTEL7VT+b8lKpdqq65wXg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/scroll-into-view-if-needed/-/scroll-into-view-if-needed-2.2.29.tgz} 7368 resolution: {integrity: sha512-hxpAR6AN+Gh53AdAimHM6C8oTN1ppwVZITihix+WqalywBeFcQ6LdQP5ABNl26nX8GTEL7VT+b8lKpdqq65wXg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/scroll-into-view-if-needed/-/scroll-into-view-if-needed-2.2.29.tgz}
@@ -8490,7 +8451,7 @@ packages: @@ -8490,7 +8451,7 @@ packages:
8490 chalk: registry.npmmirror.com/chalk/4.1.2 8451 chalk: registry.npmmirror.com/chalk/4.1.2
8491 debug: registry.npmmirror.com/debug/4.3.4 8452 debug: registry.npmmirror.com/debug/4.3.4
8492 fs-extra: registry.npmmirror.com/fs-extra/10.1.0 8453 fs-extra: registry.npmmirror.com/fs-extra/10.1.0
8493 - vite: registry.npmmirror.com/vite/3.2.4_mp5lu76ee5qtwstsyca37sdhqi 8454 + vite: registry.npmmirror.com/vite/3.2.4_ajklay5k626t46b6fyghkbup3i
8494 transitivePeerDependencies: 8455 transitivePeerDependencies:
8495 - supports-color 8456 - supports-color
8496 dev: true 8457 dev: true
@@ -8508,7 +8469,7 @@ packages: @@ -8508,7 +8469,7 @@ packages:
8508 '@types/eslint': registry.npmmirror.com/@types/eslint/8.4.10 8469 '@types/eslint': registry.npmmirror.com/@types/eslint/8.4.10
8509 eslint: registry.npmmirror.com/eslint/8.28.0 8470 eslint: registry.npmmirror.com/eslint/8.28.0
8510 rollup: registry.npmmirror.com/rollup/2.79.1 8471 rollup: registry.npmmirror.com/rollup/2.79.1
8511 - vite: registry.npmmirror.com/vite/3.2.4_mp5lu76ee5qtwstsyca37sdhqi 8472 + vite: registry.npmmirror.com/vite/3.2.4_ajklay5k626t46b6fyghkbup3i
8512 dev: true 8473 dev: true
8513 8474
8514 registry.npmmirror.com/vite-plugin-html/3.2.0_vite@3.2.4: 8475 registry.npmmirror.com/vite-plugin-html/3.2.0_vite@3.2.4:
@@ -8531,7 +8492,7 @@ packages: @@ -8531,7 +8492,7 @@ packages:
8531 html-minifier-terser: registry.npmmirror.com/html-minifier-terser/6.1.0 8492 html-minifier-terser: registry.npmmirror.com/html-minifier-terser/6.1.0
8532 node-html-parser: registry.npmmirror.com/node-html-parser/5.4.2 8493 node-html-parser: registry.npmmirror.com/node-html-parser/5.4.2
8533 pathe: registry.npmmirror.com/pathe/0.2.0 8494 pathe: registry.npmmirror.com/pathe/0.2.0
8534 - vite: registry.npmmirror.com/vite/3.2.4_mp5lu76ee5qtwstsyca37sdhqi 8495 + vite: registry.npmmirror.com/vite/3.2.4_ajklay5k626t46b6fyghkbup3i
8535 dev: true 8496 dev: true
8536 8497
8537 registry.npmmirror.com/vite-plugin-progress/0.0.6_vite@3.2.4: 8498 registry.npmmirror.com/vite-plugin-progress/0.0.6_vite@3.2.4:
@@ -8546,7 +8507,7 @@ packages: @@ -8546,7 +8507,7 @@ packages:
8546 picocolors: registry.npmmirror.com/picocolors/1.0.0 8507 picocolors: registry.npmmirror.com/picocolors/1.0.0
8547 progress: registry.npmmirror.com/progress/2.0.3 8508 progress: registry.npmmirror.com/progress/2.0.3
8548 rd: registry.npmmirror.com/rd/2.0.1 8509 rd: registry.npmmirror.com/rd/2.0.1
8549 - vite: registry.npmmirror.com/vite/3.2.4_mp5lu76ee5qtwstsyca37sdhqi 8510 + vite: registry.npmmirror.com/vite/3.2.4_ajklay5k626t46b6fyghkbup3i
8550 dev: true 8511 dev: true
8551 8512
8552 registry.npmmirror.com/vite-plugin-purge-icons/0.9.1_vite@3.2.4: 8513 registry.npmmirror.com/vite-plugin-purge-icons/0.9.1_vite@3.2.4:
@@ -8561,7 +8522,7 @@ packages: @@ -8561,7 +8522,7 @@ packages:
8561 '@purge-icons/core': registry.npmmirror.com/@purge-icons/core/0.9.1 8522 '@purge-icons/core': registry.npmmirror.com/@purge-icons/core/0.9.1
8562 '@purge-icons/generated': registry.npmmirror.com/@purge-icons/generated/0.9.0 8523 '@purge-icons/generated': registry.npmmirror.com/@purge-icons/generated/0.9.0
8563 rollup-plugin-purge-icons: registry.npmmirror.com/rollup-plugin-purge-icons/0.9.1 8524 rollup-plugin-purge-icons: registry.npmmirror.com/rollup-plugin-purge-icons/0.9.1
8564 - vite: registry.npmmirror.com/vite/3.2.4_mp5lu76ee5qtwstsyca37sdhqi 8525 + vite: registry.npmmirror.com/vite/3.2.4_ajklay5k626t46b6fyghkbup3i
8565 transitivePeerDependencies: 8526 transitivePeerDependencies:
8566 - encoding 8527 - encoding
8567 - supports-color 8528 - supports-color
@@ -8582,7 +8543,7 @@ packages: @@ -8582,7 +8543,7 @@ packages:
8582 fs-extra: registry.npmmirror.com/fs-extra/10.1.0 8543 fs-extra: registry.npmmirror.com/fs-extra/10.1.0
8583 magic-string: registry.npmmirror.com/magic-string/0.25.9 8544 magic-string: registry.npmmirror.com/magic-string/0.25.9
8584 pathe: registry.npmmirror.com/pathe/0.2.0 8545 pathe: registry.npmmirror.com/pathe/0.2.0
8585 - vite: registry.npmmirror.com/vite/3.2.4_mp5lu76ee5qtwstsyca37sdhqi 8546 + vite: registry.npmmirror.com/vite/3.2.4_ajklay5k626t46b6fyghkbup3i
8586 dev: true 8547 dev: true
8587 8548
8588 registry.npmmirror.com/vite-plugin-svg-icons/2.0.1_vite@3.2.4: 8549 registry.npmmirror.com/vite-plugin-svg-icons/2.0.1_vite@3.2.4:
@@ -8601,7 +8562,7 @@ packages: @@ -8601,7 +8562,7 @@ packages:
8601 pathe: registry.npmmirror.com/pathe/0.2.0 8562 pathe: registry.npmmirror.com/pathe/0.2.0
8602 svg-baker: registry.npmmirror.com/svg-baker/1.7.0 8563 svg-baker: registry.npmmirror.com/svg-baker/1.7.0
8603 svgo: registry.npmmirror.com/svgo/2.8.0 8564 svgo: registry.npmmirror.com/svgo/2.8.0
8604 - vite: registry.npmmirror.com/vite/3.2.4_mp5lu76ee5qtwstsyca37sdhqi 8565 + vite: registry.npmmirror.com/vite/3.2.4_ajklay5k626t46b6fyghkbup3i
8605 transitivePeerDependencies: 8566 transitivePeerDependencies:
8606 - supports-color 8567 - supports-color
8607 dev: true 8568 dev: true
@@ -8617,13 +8578,13 @@ packages: @@ -8617,13 +8578,13 @@ packages:
8617 '@windicss/plugin-utils': registry.npmmirror.com/@windicss/plugin-utils/1.8.8 8578 '@windicss/plugin-utils': registry.npmmirror.com/@windicss/plugin-utils/1.8.8
8618 debug: registry.npmmirror.com/debug/4.3.4 8579 debug: registry.npmmirror.com/debug/4.3.4
8619 kolorist: registry.npmmirror.com/kolorist/1.6.0 8580 kolorist: registry.npmmirror.com/kolorist/1.6.0
8620 - vite: registry.npmmirror.com/vite/3.2.4_mp5lu76ee5qtwstsyca37sdhqi 8581 + vite: registry.npmmirror.com/vite/3.2.4_ajklay5k626t46b6fyghkbup3i
8621 windicss: registry.npmmirror.com/windicss/3.5.6 8582 windicss: registry.npmmirror.com/windicss/3.5.6
8622 transitivePeerDependencies: 8583 transitivePeerDependencies:
8623 - supports-color 8584 - supports-color
8624 dev: true 8585 dev: true
8625 8586
8626 - registry.npmmirror.com/vite/3.2.4_mp5lu76ee5qtwstsyca37sdhqi: 8587 + registry.npmmirror.com/vite/3.2.4_ajklay5k626t46b6fyghkbup3i:
8627 resolution: {integrity: sha512-Z2X6SRAffOUYTa+sLy3NQ7nlHFU100xwanq1WDwqaiFiCe+25zdxP1TfCS5ojPV2oDDcXudHIoPnI1Z/66B7Yw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/vite/-/vite-3.2.4.tgz} 8588 resolution: {integrity: sha512-Z2X6SRAffOUYTa+sLy3NQ7nlHFU100xwanq1WDwqaiFiCe+25zdxP1TfCS5ojPV2oDDcXudHIoPnI1Z/66B7Yw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/vite/-/vite-3.2.4.tgz}
8628 id: registry.npmmirror.com/vite/3.2.4 8589 id: registry.npmmirror.com/vite/3.2.4
8629 name: vite 8590 name: vite
@@ -8653,10 +8614,10 @@ packages: @@ -8653,10 +8614,10 @@ packages:
8653 dependencies: 8614 dependencies:
8654 '@types/node': registry.npmmirror.com/@types/node/18.11.9 8615 '@types/node': registry.npmmirror.com/@types/node/18.11.9
8655 esbuild: registry.npmmirror.com/esbuild/0.15.14 8616 esbuild: registry.npmmirror.com/esbuild/0.15.14
8656 - less: registry.npmmirror.com/less/4.1.3  
8657 postcss: registry.npmmirror.com/postcss/8.4.19 8617 postcss: registry.npmmirror.com/postcss/8.4.19
8658 resolve: registry.npmmirror.com/resolve/1.22.1 8618 resolve: registry.npmmirror.com/resolve/1.22.1
8659 rollup: registry.npmmirror.com/rollup/2.79.1 8619 rollup: registry.npmmirror.com/rollup/2.79.1
  8620 + sass: registry.npmmirror.com/sass/1.56.1
8660 optionalDependencies: 8621 optionalDependencies:
8661 fsevents: registry.npmmirror.com/fsevents/2.3.2 8622 fsevents: registry.npmmirror.com/fsevents/2.3.2
8662 dev: true 8623 dev: true
yudao-ui-admin-vue3/src/App.vue
@@ -33,8 +33,8 @@ const setDefaultTheme = () =&gt; { @@ -33,8 +33,8 @@ const setDefaultTheme = () =&gt; {
33 setDefaultTheme() 33 setDefaultTheme()
34 </script> 34 </script>
35 35
36 -<style lang="less">  
37 -@prefix-cls: ~'@{namespace}-app'; 36 +<style lang="scss">
  37 +$prefix-cls: #{$namespace}-app;
38 38
39 .size { 39 .size {
40 width: 100%; 40 width: 100%;
@@ -46,14 +46,14 @@ body { @@ -46,14 +46,14 @@ body {
46 padding: 0 !important; 46 padding: 0 !important;
47 margin: 0; 47 margin: 0;
48 overflow: hidden; 48 overflow: hidden;
49 - .size; 49 + @extend .size;
50 50
51 #app { 51 #app {
52 - .size; 52 + @extend .size;
53 } 53 }
54 } 54 }
55 55
56 -.@{prefix-cls}-grey-mode { 56 +.#{$prefix-cls}-grey-mode {
57 filter: grayscale(100%); 57 filter: grayscale(100%);
58 } 58 }
59 </style> 59 </style>
yudao-ui-admin-vue3/src/components/Breadcrumb/src/Breadcrumb.vue
@@ -87,13 +87,13 @@ export default defineComponent({ @@ -87,13 +87,13 @@ export default defineComponent({
87 }) 87 })
88 </script> 88 </script>
89 89
90 -<style lang="less" scoped>  
91 -@prefix-cls: ~'@{elNamespace}-breadcrumb'; 90 +<style lang="scss" scoped>
  91 +$prefix-cls: #{$elNamespace}-breadcrumb;
92 92
93 -.@{prefix-cls} { 93 +.#{$prefix-cls} {
94 :deep(&__item) { 94 :deep(&__item) {
95 display: flex; 95 display: flex;
96 - .@{prefix-cls}__inner { 96 + .#{$prefix-cls}__inner {
97 display: flex; 97 display: flex;
98 align-items: center; 98 align-items: center;
99 color: var(--top-header-text-color); 99 color: var(--top-header-text-color);
@@ -105,7 +105,7 @@ export default defineComponent({ @@ -105,7 +105,7 @@ export default defineComponent({
105 } 105 }
106 106
107 :deep(&__item):not(:last-child) { 107 :deep(&__item):not(:last-child) {
108 - .@{prefix-cls}__inner { 108 + .#{$prefix-cls}__inner {
109 color: var(--top-header-text-color); 109 color: var(--top-header-text-color);
110 110
111 &:hover { 111 &:hover {
@@ -115,7 +115,7 @@ export default defineComponent({ @@ -115,7 +115,7 @@ export default defineComponent({
115 } 115 }
116 116
117 :deep(&__item):last-child { 117 :deep(&__item):last-child {
118 - .@{prefix-cls}__inner { 118 + .#{$prefix-cls}__inner {
119 color: var(--el-text-color-placeholder); 119 color: var(--el-text-color-placeholder);
120 120
121 &:hover { 121 &:hover {
yudao-ui-admin-vue3/src/components/Descriptions/src/Descriptions.vue
@@ -129,10 +129,10 @@ const toggleClick = () =&gt; { @@ -129,10 +129,10 @@ const toggleClick = () =&gt; {
129 </div> 129 </div>
130 </template> 130 </template>
131 131
132 -<style lang="less" scoped>  
133 -@prefix-cls: ~'@{namespace}-descriptions'; 132 +<style lang="scss" scoped>
  133 +$prefix-cls: #{$namespace}-descriptions;
134 134
135 -.@{prefix-cls}-header { 135 +.#{$prefix-cls}-header {
136 &__title { 136 &__title {
137 &::after { 137 &::after {
138 position: absolute; 138 position: absolute;
@@ -146,8 +146,8 @@ const toggleClick = () =&gt; { @@ -146,8 +146,8 @@ const toggleClick = () =&gt; {
146 } 146 }
147 } 147 }
148 148
149 -.@{prefix-cls}-content {  
150 - :deep(.@{elNamespace}-descriptions__cell) { 149 +.#{$prefix-cls}-content {
  150 + :deep(.#{$elNamespace}-descriptions__cell) {
151 width: 0; 151 width: 0;
152 } 152 }
153 } 153 }
yudao-ui-admin-vue3/src/components/Dialog/src/Dialog.vue
@@ -92,23 +92,14 @@ const dialogStyle = computed(() =&gt; { @@ -92,23 +92,14 @@ const dialogStyle = computed(() =&gt; {
92 </ElDialog> 92 </ElDialog>
93 </template> 93 </template>
94 94
95 -<style lang="less">  
96 -.@{elNamespace}-dialog__header { 95 +<style lang="scss">
  96 +.#{$elNamespace}-dialog__header {
97 margin-right: 0 !important; 97 margin-right: 0 !important;
98 - padding-bottom: 6px;  
99 - padding-top: 10px;  
100 border-bottom: 1px solid var(--tags-view-border-color); 98 border-bottom: 1px solid var(--tags-view-border-color);
101 } 99 }
102 100
103 -.@{elNamespace}-dialog__headerbtn {  
104 - top: -4px !important;  
105 -}  
106 -  
107 -.@{elNamespace}-dialog__footer {  
108 - border-top: 0px solid var(--tags-view-border-color);  
109 -}  
110 -.dialog-footer button:first-child {  
111 - margin-right: 10px; 101 +.#{$elNamespace}-dialog__footer {
  102 + border-top: 1px solid var(--tags-view-border-color);
112 } 103 }
113 104
114 .is-hover { 105 .is-hover {
@@ -118,11 +109,11 @@ const dialogStyle = computed(() =&gt; { @@ -118,11 +109,11 @@ const dialogStyle = computed(() =&gt; {
118 } 109 }
119 110
120 .dark { 111 .dark {
121 - .@{elNamespace}-dialog__header { 112 + .#{$elNamespace}-dialog__header {
122 border-bottom: 1px solid var(--el-border-color); 113 border-bottom: 1px solid var(--el-border-color);
123 } 114 }
124 115
125 - .@{elNamespace}-dialog__footer { 116 + .#{$elNamespace}-dialog__footer {
126 border-top: 1px solid var(--el-border-color); 117 border-top: 1px solid var(--el-border-color);
127 } 118 }
128 } 119 }
yudao-ui-admin-vue3/src/components/Form/src/Form.vue
@@ -294,8 +294,8 @@ export default defineComponent({ @@ -294,8 +294,8 @@ export default defineComponent({
294 }) 294 })
295 </script> 295 </script>
296 296
297 -<style lang="less" scoped>  
298 -.@{elNamespace}-form.@{namespace}-form .@{elNamespace}-row { 297 +<style lang="scss" scoped>
  298 +.#{$elNamespace}-form.#{$namespace}-form .#{$elNamespace}-row {
299 margin-right: 0 !important; 299 margin-right: 0 !important;
300 margin-left: 0 !important; 300 margin-left: 0 !important;
301 } 301 }
yudao-ui-admin-vue3/src/components/IFrame/src/IFrame.vue
@@ -29,4 +29,3 @@ onMounted(() =&gt; { @@ -29,4 +29,3 @@ onMounted(() =&gt; {
29 ></iframe> 29 ></iframe>
30 </div> 30 </div>
31 </template> 31 </template>
32 -<script lang="less" scoped></script>  
yudao-ui-admin-vue3/src/components/Icon/src/IconSelect.vue
@@ -182,7 +182,7 @@ watch( @@ -182,7 +182,7 @@ watch(
182 </div> 182 </div>
183 </template> 183 </template>
184 184
185 -<style lang="less" scoped> 185 +<style lang="scss" scoped>
186 .el-divider--horizontal { 186 .el-divider--horizontal {
187 margin: 1px auto !important; 187 margin: 1px auto !important;
188 } 188 }
yudao-ui-admin-vue3/src/components/InputPassword/src/InputPassword.vue
@@ -74,11 +74,11 @@ const getIconName = computed(() =&gt; (unref(textType) === &#39;password&#39; ? &#39;ep:hide&#39; : @@ -74,11 +74,11 @@ const getIconName = computed(() =&gt; (unref(textType) === &#39;password&#39; ? &#39;ep:hide&#39; :
74 </div> 74 </div>
75 </template> 75 </template>
76 76
77 -<style lang="less" scoped>  
78 -@prefix-cls: ~'@{namespace}-input-password'; 77 +<style lang="scss" scoped>
  78 +$prefix-cls: #{$namespace}-input-password;
79 79
80 -.@{prefix-cls} {  
81 - :deep(.@{elNamespace}-input__clear) { 80 +.#{$prefix-cls} {
  81 + :deep(.#{$elNamespace}-input__clear) {
82 margin-left: 5px; 82 margin-left: 5px;
83 } 83 }
84 84
yudao-ui-admin-vue3/src/components/Menu/src/Menu.vue
@@ -121,8 +121,8 @@ export default defineComponent({ @@ -121,8 +121,8 @@ export default defineComponent({
121 }) 121 })
122 </script> 122 </script>
123 123
124 -<style lang="less" scoped>  
125 -@prefix-cls: ~'@{namespace}-menu'; 124 +<style lang="scss" scoped>
  125 +$prefix-cls: #{$namespace}-menu;
126 126
127 .is-active--after { 127 .is-active--after {
128 position: absolute; 128 position: absolute;
@@ -134,7 +134,7 @@ export default defineComponent({ @@ -134,7 +134,7 @@ export default defineComponent({
134 content: ''; 134 content: '';
135 } 135 }
136 136
137 -.@{prefix-cls} { 137 +.#{$prefix-cls} {
138 position: relative; 138 position: relative;
139 transition: width var(--transition-time-02); 139 transition: width var(--transition-time-02);
140 140
@@ -147,20 +147,20 @@ export default defineComponent({ @@ -147,20 +147,20 @@ export default defineComponent({
147 content: ''; 147 content: '';
148 } 148 }
149 149
150 - :deep(.@{elNamespace}-menu) { 150 + :deep(.#{$elNamespace}-menu) {
151 width: 100% !important; 151 width: 100% !important;
152 border-right: none; 152 border-right: none;
153 153
154 // ่ฎพ็ฝฎ้€‰ไธญๆ—ถๅญๆ ‡้ข˜็š„้ขœ่‰ฒ 154 // ่ฎพ็ฝฎ้€‰ไธญๆ—ถๅญๆ ‡้ข˜็š„้ขœ่‰ฒ
155 .is-active { 155 .is-active {
156 - & > .@{elNamespace}-sub-menu__title { 156 + & > .#{$elNamespace}-sub-menu__title {
157 color: var(--left-menu-text-active-color) !important; 157 color: var(--left-menu-text-active-color) !important;
158 } 158 }
159 } 159 }
160 160
161 // ่ฎพ็ฝฎๅญ่œๅ•ๆ‚ฌๅœ็š„้ซ˜ไบฎๅ’Œ่ƒŒๆ™ฏ่‰ฒ 161 // ่ฎพ็ฝฎๅญ่œๅ•ๆ‚ฌๅœ็š„้ซ˜ไบฎๅ’Œ่ƒŒๆ™ฏ่‰ฒ
162 - .@{elNamespace}-sub-menu__title,  
163 - .@{elNamespace}-menu-item { 162 + .#{$elNamespace}-sub-menu__title,
  163 + .#{$elNamespace}-menu-item {
164 &:hover { 164 &:hover {
165 color: var(--left-menu-text-active-color) !important; 165 color: var(--left-menu-text-active-color) !important;
166 background-color: var(--left-menu-bg-color) !important; 166 background-color: var(--left-menu-bg-color) !important;
@@ -168,8 +168,8 @@ export default defineComponent({ @@ -168,8 +168,8 @@ export default defineComponent({
168 } 168 }
169 169
170 // ่ฎพ็ฝฎ้€‰ไธญๆ—ถ็š„้ซ˜ไบฎ่ƒŒๆ™ฏๅ’Œ้ซ˜ไบฎ้ขœ่‰ฒ 170 // ่ฎพ็ฝฎ้€‰ไธญๆ—ถ็š„้ซ˜ไบฎ่ƒŒๆ™ฏๅ’Œ้ซ˜ไบฎ้ขœ่‰ฒ
171 - .@{elNamespace}-sub-menu.is-active,  
172 - .@{elNamespace}-menu-item.is-active { 171 + .#{$elNamespace}-sub-menu.is-active,
  172 + .#{$elNamespace}-menu-item.is-active {
173 color: var(--left-menu-text-active-color) !important; 173 color: var(--left-menu-text-active-color) !important;
174 background-color: var(--left-menu-bg-active-color) !important; 174 background-color: var(--left-menu-bg-active-color) !important;
175 175
@@ -178,34 +178,34 @@ export default defineComponent({ @@ -178,34 +178,34 @@ export default defineComponent({
178 } 178 }
179 } 179 }
180 180
181 - .@{elNamespace}-menu-item.is-active { 181 + .#{$elNamespace}-menu-item.is-active {
182 position: relative; 182 position: relative;
183 183
184 &:after { 184 &:after {
185 - .is-active--after; 185 + @extend .is-active--after;
186 } 186 }
187 } 187 }
188 188
189 // ่ฎพ็ฝฎๅญ่œๅ•็š„่ƒŒๆ™ฏ้ขœ่‰ฒ 189 // ่ฎพ็ฝฎๅญ่œๅ•็š„่ƒŒๆ™ฏ้ขœ่‰ฒ
190 - .@{elNamespace}-menu {  
191 - .@{elNamespace}-sub-menu__title,  
192 - .@{elNamespace}-menu-item:not(.is-active) { 190 + .#{$elNamespace}-menu {
  191 + .#{$elNamespace}-sub-menu__title,
  192 + .#{$elNamespace}-menu-item:not(.is-active) {
193 background-color: var(--left-menu-bg-light-color) !important; 193 background-color: var(--left-menu-bg-light-color) !important;
194 } 194 }
195 } 195 }
196 } 196 }
197 197
198 // ๆŠ˜ๅ ๆ—ถ็š„ๆœ€ๅฐๅฎฝๅบฆ 198 // ๆŠ˜ๅ ๆ—ถ็š„ๆœ€ๅฐๅฎฝๅบฆ
199 - :deep(.@{elNamespace}-menu--collapse) { 199 + :deep(.#{$elNamespace}-menu--collapse) {
200 width: var(--left-menu-min-width); 200 width: var(--left-menu-min-width);
201 201
202 & > .is-active, 202 & > .is-active,
203 - & > .is-active > .@{elNamespace}-sub-menu__title { 203 + & > .is-active > .#{$elNamespace}-sub-menu__title {
204 position: relative; 204 position: relative;
205 background-color: var(--left-menu-collapse-bg-active-color) !important; 205 background-color: var(--left-menu-collapse-bg-active-color) !important;
206 206
207 &:after { 207 &:after {
208 - .is-active--after; 208 + @extend .is-active--after;
209 } 209 }
210 } 210 }
211 } 211 }
@@ -213,26 +213,26 @@ export default defineComponent({ @@ -213,26 +213,26 @@ export default defineComponent({
213 // ๆŠ˜ๅ ๅŠจ็”ป็š„ๆ—ถๅ€™๏ผŒๅฐฑ้œ€่ฆๆŠŠๆ–‡ๅญ—็ป™้š่—ๆމ 213 // ๆŠ˜ๅ ๅŠจ็”ป็š„ๆ—ถๅ€™๏ผŒๅฐฑ้œ€่ฆๆŠŠๆ–‡ๅญ—็ป™้š่—ๆމ
214 :deep(.horizontal-collapse-transition) { 214 :deep(.horizontal-collapse-transition) {
215 // transition: 0s width ease-in-out, 0s padding-left ease-in-out, 0s padding-right ease-in-out !important; 215 // transition: 0s width ease-in-out, 0s padding-left ease-in-out, 0s padding-right ease-in-out !important;
216 - .@{prefix-cls}__title { 216 + .#{$prefix-cls}__title {
217 display: none; 217 display: none;
218 } 218 }
219 } 219 }
220 220
221 // ๆฐดๅนณ่œๅ• 221 // ๆฐดๅนณ่œๅ•
222 &__horizontal { 222 &__horizontal {
223 - height: calc(~'var(--top-tool-height)') !important; 223 + height: calc(var(--top-tool-height)) !important;
224 224
225 - :deep(.@{elNamespace}-menu--horizontal) {  
226 - height: calc(~'var(--top-tool-height)'); 225 + :deep(.#{$elNamespace}-menu--horizontal) {
  226 + height: calc(var(--top-tool-height));
227 border-bottom: none; 227 border-bottom: none;
228 // ้‡ๆ–ฐ่ฎพ็ฝฎๅบ•้ƒจ้ซ˜ไบฎ้ขœ่‰ฒ 228 // ้‡ๆ–ฐ่ฎพ็ฝฎๅบ•้ƒจ้ซ˜ไบฎ้ขœ่‰ฒ
229 - & > .@{elNamespace}-sub-menu.is-active {  
230 - .@{elNamespace}-sub-menu__title { 229 + & > .#{$elNamespace}-sub-menu.is-active {
  230 + .#{$elNamespace}-sub-menu__title {
231 border-bottom-color: var(--el-color-primary) !important; 231 border-bottom-color: var(--el-color-primary) !important;
232 } 232 }
233 } 233 }
234 234
235 - .@{elNamespace}-menu-item.is-active { 235 + .#{$elNamespace}-menu-item.is-active {
236 position: relative; 236 position: relative;
237 237
238 &:after { 238 &:after {
@@ -240,19 +240,19 @@ export default defineComponent({ @@ -240,19 +240,19 @@ export default defineComponent({
240 } 240 }
241 } 241 }
242 242
243 - .@{prefix-cls}__title { 243 + .#{$prefix-cls}__title {
244 /* stylelint-disable-next-line */ 244 /* stylelint-disable-next-line */
245 - max-height: calc(~'var(--top-tool-height) - 2px') !important; 245 + max-height: calc(var(--top-tool-height) - 2px) !important;
246 /* stylelint-disable-next-line */ 246 /* stylelint-disable-next-line */
247 - line-height: calc(~'var(--top-tool-height) - 2px'); 247 + line-height: calc(var(--top-tool-height) - 2px);
248 } 248 }
249 } 249 }
250 } 250 }
251 } 251 }
252 </style> 252 </style>
253 253
254 -<style lang="less">  
255 -@prefix-cls: ~'@{namespace}-menu-popper'; 254 +<style lang="scss">
  255 +$prefix-cls: #{$namespace}-menu-popper;
256 256
257 .is-active--after { 257 .is-active--after {
258 position: absolute; 258 position: absolute;
@@ -264,8 +264,8 @@ export default defineComponent({ @@ -264,8 +264,8 @@ export default defineComponent({
264 content: ''; 264 content: '';
265 } 265 }
266 266
267 -.@{prefix-cls}--vertical,  
268 -.@{prefix-cls}--horizontal { 267 +.#{$prefix-cls}--vertical,
  268 +.#{$prefix-cls}--horizontal {
269 // ่ฎพ็ฝฎ้€‰ไธญๆ—ถๅญๆ ‡้ข˜็š„้ขœ่‰ฒ 269 // ่ฎพ็ฝฎ้€‰ไธญๆ—ถๅญๆ ‡้ข˜็š„้ขœ่‰ฒ
270 .is-active { 270 .is-active {
271 & > .el-sub-menu__title { 271 & > .el-sub-menu__title {
@@ -292,7 +292,7 @@ export default defineComponent({ @@ -292,7 +292,7 @@ export default defineComponent({
292 } 292 }
293 293
294 &:after { 294 &:after {
295 - .is-active--after; 295 + @extend .is-active--after;
296 } 296 }
297 } 297 }
298 } 298 }
yudao-ui-admin-vue3/src/components/Qrcode/src/Qrcode.vue
@@ -237,10 +237,10 @@ const disabledClick = () =&gt; { @@ -237,10 +237,10 @@ const disabledClick = () =&gt; {
237 </div> 237 </div>
238 </template> 238 </template>
239 239
240 -<style lang="less" scoped>  
241 -@prefix-cls: ~'@{namespace}-qrcode'; 240 +<style lang="scss" scoped>
  241 +$prefix-cls: #{$namespace}-qrcode;
242 242
243 -.@{prefix-cls} { 243 +.#{$prefix-cls} {
244 &--disabled { 244 &--disabled {
245 background: rgba(255, 255, 255, 0.95); 245 background: rgba(255, 255, 255, 0.95);
246 246
yudao-ui-admin-vue3/src/components/Setting/src/Setting.vue
@@ -288,10 +288,10 @@ const clear = () =&gt; { @@ -288,10 +288,10 @@ const clear = () =&gt; {
288 </ElDrawer> 288 </ElDrawer>
289 </template> 289 </template>
290 290
291 -<style lang="less" scoped>  
292 -@prefix-cls: ~'@{namespace}-setting'; 291 +<style lang="scss" scoped>
  292 +$prefix-cls: #{$namespace}-setting;
293 293
294 -.@{prefix-cls} { 294 +.#{$prefix-cls} {
295 border-radius: 6px 0 0 6px; 295 border-radius: 6px 0 0 6px;
296 } 296 }
297 </style> 297 </style>
yudao-ui-admin-vue3/src/components/Setting/src/components/ColorRadioPicker.vue
@@ -54,10 +54,10 @@ watch( @@ -54,10 +54,10 @@ watch(
54 </div> 54 </div>
55 </template> 55 </template>
56 56
57 -<style lang="less" scoped>  
58 -@prefix-cls: ~'@{namespace}-color-radio-picker'; 57 +<style lang="scss" scoped>
  58 +$prefix-cls: #{$namespace}-color-radio-picker;
59 59
60 -.@{prefix-cls} { 60 +.#{$prefix-cls} {
61 .is-active { 61 .is-active {
62 border-color: var(--el-color-primary); 62 border-color: var(--el-color-primary);
63 } 63 }
yudao-ui-admin-vue3/src/components/Setting/src/components/LayoutRadioPicker.vue
@@ -59,10 +59,10 @@ const layout = computed(() =&gt; appStore.getLayout) @@ -59,10 +59,10 @@ const layout = computed(() =&gt; appStore.getLayout)
59 </div> 59 </div>
60 </template> 60 </template>
61 61
62 -<style lang="less" scoped>  
63 -@prefix-cls: ~'@{namespace}-layout-radio-picker'; 62 +<style lang="scss" scoped>
  63 +$prefix-cls: #{$namespace}-layout-radio-picker;
64 64
65 -.@{prefix-cls} { 65 +.#{$prefix-cls} {
66 &__classic { 66 &__classic {
67 border: 2px solid #e5e7eb; 67 border: 2px solid #e5e7eb;
68 border-radius: 4px; 68 border-radius: 4px;
yudao-ui-admin-vue3/src/components/TabMenu/src/TabMenu.vue
@@ -213,10 +213,10 @@ export default defineComponent({ @@ -213,10 +213,10 @@ export default defineComponent({
213 }) 213 })
214 </script> 214 </script>
215 215
216 -<style lang="less" scoped>  
217 -@prefix-cls: ~'@{namespace}-tab-menu'; 216 +<style lang="scss" scoped>
  217 +$prefix-cls: #{$namespace}-tab-menu;
218 218
219 -.@{prefix-cls} { 219 +.#{$prefix-cls} {
220 transition: all var(--transition-time-02); 220 transition: all var(--transition-time-02);
221 221
222 &:after { 222 &:after {
yudao-ui-admin-vue3/src/components/Table/src/Table.vue
@@ -295,7 +295,7 @@ export default defineComponent({ @@ -295,7 +295,7 @@ export default defineComponent({
295 } 295 }
296 }) 296 })
297 </script> 297 </script>
298 -<style lang="less" scoped> 298 +<style lang="scss" scoped>
299 :deep(.el-button.is-text) { 299 :deep(.el-button.is-text) {
300 margin-left: 0; 300 margin-left: 0;
301 padding: 8px 4px; 301 padding: 8px 4px;
yudao-ui-admin-vue3/src/components/TagsView/src/TagsView.vue
@@ -463,11 +463,11 @@ watch( @@ -463,11 +463,11 @@ watch(
463 </div> 463 </div>
464 </template> 464 </template>
465 465
466 -<style lang="less" scoped>  
467 -@prefix-cls: ~'@{namespace}-tags-view'; 466 +<style lang="scss" scoped>
  467 +$prefix-cls: #{$namespace}-tags-view;
468 468
469 -.@{prefix-cls} {  
470 - :deep(.@{elNamespace}-scrollbar__view) { 469 +.#{$prefix-cls} {
  470 + :deep(.#{$elNamespace}-scrollbar__view) {
471 height: 100%; 471 height: 100%;
472 } 472 }
473 473
@@ -485,7 +485,7 @@ watch( @@ -485,7 +485,7 @@ watch(
485 top: 1px; 485 top: 1px;
486 left: 0; 486 left: 0;
487 width: 100%; 487 width: 100%;
488 - height: calc(~'100% - 1px'); 488 + height: calc(100% - 1px);
489 border-right: 1px solid var(--tags-view-border-color); 489 border-right: 1px solid var(--tags-view-border-color);
490 border-left: 1px solid var(--tags-view-border-color); 490 border-left: 1px solid var(--tags-view-border-color);
491 content: ''; 491 content: '';
@@ -495,7 +495,7 @@ watch( @@ -495,7 +495,7 @@ watch(
495 &__item { 495 &__item {
496 position: relative; 496 position: relative;
497 top: 2px; 497 top: 2px;
498 - height: calc(~'100% - 4px'); 498 + height: calc(100% - 4px);
499 padding-right: 25px; 499 padding-right: 25px;
500 margin-left: 4px; 500 margin-left: 4px;
501 font-size: 12px; 501 font-size: 12px;
@@ -509,8 +509,8 @@ watch( @@ -509,8 +509,8 @@ watch(
509 display: none; 509 display: none;
510 transform: translate(0, -50%); 510 transform: translate(0, -50%);
511 } 511 }
512 - &:not(.@{prefix-cls}__item--affix):hover {  
513 - .@{prefix-cls}__item--close { 512 + &:not(.#{$prefix-cls}__item--affix):hover {
  513 + .#{$prefix-cls}__item--close {
514 display: block; 514 display: block;
515 } 515 }
516 } 516 }
@@ -526,7 +526,7 @@ watch( @@ -526,7 +526,7 @@ watch(
526 color: var(--el-color-white); 526 color: var(--el-color-white);
527 background-color: var(--el-color-primary); 527 background-color: var(--el-color-primary);
528 border: 1px solid var(--el-color-primary); 528 border: 1px solid var(--el-color-primary);
529 - .@{prefix-cls}__item--close { 529 + .#{$prefix-cls}__item--close {
530 :deep(span) { 530 :deep(span) {
531 color: var(--el-color-white) !important; 531 color: var(--el-color-white) !important;
532 } 532 }
@@ -535,7 +535,7 @@ watch( @@ -535,7 +535,7 @@ watch(
535 } 535 }
536 536
537 .dark { 537 .dark {
538 - .@{prefix-cls} { 538 + .#{$prefix-cls} {
539 &__tool { 539 &__tool {
540 &:hover { 540 &:hover {
541 :deep(span) { 541 :deep(span) {
@@ -552,7 +552,7 @@ watch( @@ -552,7 +552,7 @@ watch(
552 &__item { 552 &__item {
553 position: relative; 553 position: relative;
554 top: 2px; 554 top: 2px;
555 - height: calc(~'100% - 4px'); 555 + height: calc(100% - 4px);
556 padding-right: 25px; 556 padding-right: 25px;
557 font-size: 12px; 557 font-size: 12px;
558 cursor: pointer; 558 cursor: pointer;
@@ -568,7 +568,7 @@ watch( @@ -568,7 +568,7 @@ watch(
568 &__item.is-active { 568 &__item.is-active {
569 color: var(--el-color-white); 569 color: var(--el-color-white);
570 background-color: var(--el-color-primary); 570 background-color: var(--el-color-primary);
571 - .@{prefix-cls}__item--close { 571 + .#{$prefix-cls}__item--close {
572 :deep(span) { 572 :deep(span) {
573 color: var(--el-color-white) !important; 573 color: var(--el-color-white) !important;
574 } 574 }
yudao-ui-admin-vue3/src/components/XButton/src/XButton.vue
@@ -35,7 +35,7 @@ const getBindValue = computed(() =&gt; { @@ -35,7 +35,7 @@ const getBindValue = computed(() =&gt; {
35 <Icon :icon="postIcon" v-if="postIcon" class="mr-1px" /> 35 <Icon :icon="postIcon" v-if="postIcon" class="mr-1px" />
36 </el-button> 36 </el-button>
37 </template> 37 </template>
38 -<style lang="less" scoped> 38 +<style lang="scss" scoped>
39 :deep(.el-button.is-text) { 39 :deep(.el-button.is-text) {
40 margin-left: 0; 40 margin-left: 0;
41 padding: 8px 4px; 41 padding: 8px 4px;
yudao-ui-admin-vue3/src/components/XButton/src/XTextButton.vue
@@ -34,7 +34,7 @@ const getBindValue = computed(() =&gt; { @@ -34,7 +34,7 @@ const getBindValue = computed(() =&gt; {
34 <Icon :icon="postIcon" v-if="postIcon" class="mr-1px" /> 34 <Icon :icon="postIcon" v-if="postIcon" class="mr-1px" />
35 </el-button> 35 </el-button>
36 </template> 36 </template>
37 -<style lang="less" scoped> 37 +<style lang="scss" scoped>
38 :deep(.el-button.is-text) { 38 :deep(.el-button.is-text) {
39 margin-left: 0; 39 margin-left: 0;
40 padding: 8px 4px; 40 padding: 8px 4px;
yudao-ui-admin-vue3/src/hooks/web/useDesign.ts
1 -import variables from '@/styles/variables.module.less' 1 +import variables from '@/styles/global.module.scss'
2 2
3 export const useDesign = () => { 3 export const useDesign = () => {
4 - const lessVariables = variables 4 + const scssVariables = variables
5 5
6 /** 6 /**
7 * @param scope ็ฑปๅ 7 * @param scope ็ฑปๅ
8 * @returns ่ฟ”ๅ›ž็ฉบ้—ดๅ-็ฑปๅ 8 * @returns ่ฟ”ๅ›ž็ฉบ้—ดๅ-็ฑปๅ
9 */ 9 */
10 const getPrefixCls = (scope: string) => { 10 const getPrefixCls = (scope: string) => {
11 - return `${lessVariables.namespace}-${scope}` 11 + return `${scssVariables.namespace}-${scope}`
12 } 12 }
13 13
14 return { 14 return {
15 - variables: lessVariables, 15 + variables: scssVariables,
16 getPrefixCls 16 getPrefixCls
17 } 17 }
18 } 18 }
yudao-ui-admin-vue3/src/layout/Layout.vue
@@ -66,12 +66,12 @@ export default defineComponent({ @@ -66,12 +66,12 @@ export default defineComponent({
66 }) 66 })
67 </script> 67 </script>
68 68
69 -<style lang="less" scoped>  
70 -@prefix-cls: ~'@{namespace}-layout'; 69 +<style lang="scss" scoped>
  70 +$prefix-cls: #{$namespace}-layout;
71 71
72 -.@{prefix-cls} {  
73 - background-color: var(--app-contnet-bg-color);  
74 - :deep(.@{elNamespace}-scrollbar__view) { 72 +.#{$prefix-cls} {
  73 + background-color: var(--app-content-bg-color);
  74 + :deep(.#{$elNamespace}-scrollbar__view) {
75 height: 100% !important; 75 height: 100% !important;
76 } 76 }
77 } 77 }
yudao-ui-admin-vue3/src/layout/components/ToolHeader.vue
@@ -74,10 +74,10 @@ export default defineComponent({ @@ -74,10 +74,10 @@ export default defineComponent({
74 }) 74 })
75 </script> 75 </script>
76 76
77 -<style lang="less" scoped>  
78 -@prefix-cls: ~'@{namespace}-tool-header'; 77 +<style lang="scss" scoped>
  78 +$prefix-cls: #{$namespace}-tool-header;
79 79
80 -.@{prefix-cls} { 80 +.#{$prefix-cls} {
81 transition: left var(--transition-time-02); 81 transition: left var(--transition-time-02);
82 } 82 }
83 </style> 83 </style>
yudao-ui-admin-vue3/src/main.ts
@@ -20,7 +20,7 @@ import { setupElementPlus } from &#39;@/plugins/elementPlus&#39; @@ -20,7 +20,7 @@ import { setupElementPlus } from &#39;@/plugins/elementPlus&#39;
20 import { setupVxeTable } from '@/plugins/vxeTable' 20 import { setupVxeTable } from '@/plugins/vxeTable'
21 21
22 // ๅผ•ๅ…ฅๅ…จๅฑ€ๆ ทๅผ 22 // ๅผ•ๅ…ฅๅ…จๅฑ€ๆ ทๅผ
23 -import '@/styles/index.less' 23 +import '@/styles/index.scss'
24 24
25 // ๅผ•ๅ…ฅๅŠจ็”ป 25 // ๅผ•ๅ…ฅๅŠจ็”ป
26 import '@/plugins/animate.css' 26 import '@/plugins/animate.css'
yudao-ui-admin-vue3/src/styles/global.module.scss 0 โ†’ 100644
  1 +@import './variables.scss';
  2 +// ๅฏผๅ‡บๅ˜้‡
  3 +:export {
  4 + namespace: $namespace;
  5 + elNamespace: $elNamespace;
  6 +}
yudao-ui-admin-vue3/src/styles/index.less deleted
1 -@import './var.css';  
2 -@import './vxe.css';  
3 -@import 'element-plus/theme-chalk/dark/css-vars.css';  
yudao-ui-admin-vue3/src/styles/index.scss 0 โ†’ 100644
  1 +@import './var.css';
  2 +@import './vxe.css';
  3 +@import 'element-plus/theme-chalk/dark/css-vars.css';
  4 +
  5 +.reset-margin [class*='el-icon'] + span {
  6 + margin-left: 2px !important;
  7 +}
  8 +
  9 +/* nprogress ้€‚้… element-plus ็š„ไธป้ข˜่‰ฒ */
  10 +#nprogress {
  11 + & .bar {
  12 + background-color: var(--el-color-primary) !important;
  13 + }
  14 +
  15 + & .peg {
  16 + box-shadow: 0 0 10px var(--el-color-primary), 0 0 5px var(--el-color-primary) !important;
  17 + }
  18 +
  19 + & .spinner-icon {
  20 + border-top-color: var(--el-color-primary);
  21 + border-left-color: var(--el-color-primary);
  22 + }
  23 +}
yudao-ui-admin-vue3/src/styles/theme.less deleted
1 -// .text-color {  
2 -// color: var(--el-text-color-regular);  
3 -// }  
4 -// .dark .dark\:text-color {  
5 -// color: rgba(255, 255, 255, var(--dark-text-color));  
6 -// }  
yudao-ui-admin-vue3/src/styles/variables.module.less deleted
1 -// ๅ‘ฝๅ็ฉบ้—ด  
2 -@namespace: v;  
3 -// elๅ‘ฝๅ็ฉบ้—ด  
4 -@elNamespace: el;  
5 -  
6 -// ๅฏผๅ‡บๅ˜้‡  
7 -:export {  
8 - namespace: @namespace;  
9 - elNamespace: @elNamespace;  
10 -}  
yudao-ui-admin-vue3/src/styles/variables.scss 0 โ†’ 100644
  1 +// ๅ‘ฝๅ็ฉบ้—ด
  2 +$namespace: v;
  3 +// elๅ‘ฝๅ็ฉบ้—ด
  4 +$elNamespace: el;
yudao-ui-admin-vue3/src/views/Home/Index2.vue
@@ -270,10 +270,10 @@ const getAllApi = async () =&gt; { @@ -270,10 +270,10 @@ const getAllApi = async () =&gt; {
270 getAllApi() 270 getAllApi()
271 </script> 271 </script>
272 272
273 -<style lang="less" scoped>  
274 -@prefix-cls: ~'@{namespace}-panel'; 273 +<style lang="scss" scoped>
  274 +$prefix-cls: #{$namespace}-panel;
275 275
276 -.@{prefix-cls} { 276 +.#{$prefix-cls} {
277 &__item { 277 &__item {
278 &--peoples { 278 &--peoples {
279 color: #40c9c6; 279 color: #40c9c6;
@@ -292,22 +292,22 @@ getAllApi() @@ -292,22 +292,22 @@ getAllApi()
292 } 292 }
293 293
294 &:hover { 294 &:hover {
295 - :deep(.@{namespace}-icon) { 295 + :deep(.#{$namespace}-icon) {
296 color: #fff !important; 296 color: #fff !important;
297 } 297 }
298 - .@{prefix-cls}__item--icon { 298 + .#{$prefix-cls}__item--icon {
299 transition: all 0.38s ease-out; 299 transition: all 0.38s ease-out;
300 } 300 }
301 - .@{prefix-cls}__item--peoples { 301 + .#{$prefix-cls}__item--peoples {
302 background: #40c9c6; 302 background: #40c9c6;
303 } 303 }
304 - .@{prefix-cls}__item--message { 304 + .#{$prefix-cls}__item--message {
305 background: #36a3f7; 305 background: #36a3f7;
306 } 306 }
307 - .@{prefix-cls}__item--money { 307 + .#{$prefix-cls}__item--money {
308 background: #f4516c; 308 background: #f4516c;
309 } 309 }
310 - .@{prefix-cls}__item--shopping { 310 + .#{$prefix-cls}__item--shopping {
311 background: #34bfa3; 311 background: #34bfa3;
312 } 312 }
313 } 313 }
yudao-ui-admin-vue3/src/views/Login/Login.vue
@@ -73,10 +73,10 @@ const { getPrefixCls } = useDesign() @@ -73,10 +73,10 @@ const { getPrefixCls } = useDesign()
73 const prefixCls = getPrefixCls('login') 73 const prefixCls = getPrefixCls('login')
74 </script> 74 </script>
75 75
76 -<style lang="less" scoped>  
77 -@prefix-cls: ~'@{namespace}-login'; 76 +<style lang="scss" scoped>
  77 +$prefix-cls: #{$namespace}-panel;
78 78
79 -.@{prefix-cls} { 79 +.#{$prefix-cls} {
80 &__left { 80 &__left {
81 &::before { 81 &::before {
82 position: absolute; 82 position: absolute;
yudao-ui-admin-vue3/src/views/Login/components/LoginForm.vue
@@ -307,7 +307,7 @@ onMounted(() =&gt; { @@ -307,7 +307,7 @@ onMounted(() =&gt; {
307 }) 307 })
308 </script> 308 </script>
309 309
310 -<style lang="less" scoped> 310 +<style lang="scss" scoped>
311 :deep(.anticon) { 311 :deep(.anticon) {
312 &:hover { 312 &:hover {
313 color: var(--el-color-primary) !important; 313 color: var(--el-color-primary) !important;
yudao-ui-admin-vue3/src/views/Login/components/MobileForm.vue
@@ -197,7 +197,7 @@ const signIn = async () =&gt; { @@ -197,7 +197,7 @@ const signIn = async () =&gt; {
197 } 197 }
198 </script> 198 </script>
199 199
200 -<style lang="less" scoped> 200 +<style lang="scss" scoped>
201 :deep(.anticon) { 201 :deep(.anticon) {
202 &:hover { 202 &:hover {
203 color: var(--el-color-primary) !important; 203 color: var(--el-color-primary) !important;
yudao-ui-admin-vue3/vite.config.ts
@@ -105,14 +105,14 @@ export default ({ command, mode }: ConfigEnv): UserConfig =&gt; { @@ -105,14 +105,14 @@ export default ({ command, mode }: ConfigEnv): UserConfig =&gt; {
105 ], 105 ],
106 css: { 106 css: {
107 preprocessorOptions: { 107 preprocessorOptions: {
108 - less: {  
109 - additionalData: '@import "./src/styles/variables.module.less";', 108 + scss: {
  109 + additionalData: '@import "./src/styles/variables.scss";',
110 javascriptEnabled: true 110 javascriptEnabled: true
111 } 111 }
112 } 112 }
113 }, 113 },
114 resolve: { 114 resolve: {
115 - extensions: ['.mjs', '.js', '.ts', '.jsx', '.tsx', '.json', '.less', '.css'], 115 + extensions: ['.mjs', '.js', '.ts', '.jsx', '.tsx', '.json', '.scss', '.css'],
116 alias: [ 116 alias: [
117 { 117 {
118 find: 'vue-i18n', 118 find: 'vue-i18n',