refactor: less to scss

This commit is contained in:
xingyu4j 2022-11-23 15:18:59 +08:00
parent a5287d7186
commit 8a77c94710
36 changed files with 293 additions and 327 deletions

View File

@ -9,7 +9,7 @@
<img src="https://img.shields.io/badge/-pnpm7-F69220?logo=pnpm&logoColor=white" />
<img src="https://img.shields.io/badge/-Axios-008fc7?logo=axios.js&logoColor=white" />
<img src="https://img.shields.io/badge/-Prettier-ef9421?logo=Prettier&logoColor=white" alt="Prettier">
<img src="https://img.shields.io/badge/-Less-1D365D?logo=less&logoColor=white" alt="Less">
<img src="https://img.shields.io/badge/-Sass-1D365D?logo=Sass&logoColor=white" alt="Sass">
<img src="https://img.shields.io/badge/-Wind%20CSS-06B6D4?logo=Tailwind%20CSS&logoColor=white" alt="Taiwind">
</p>

View File

@ -18,7 +18,7 @@
"clean": "npx rimraf node_modules",
"clean:cache": "npx rimraf node_modules/.cache",
"lint:eslint": "eslint --fix --ext .js,.ts,.vue ./src",
"lint:format": "prettier --write --loglevel warn \"src/**/*.{js,ts,json,tsx,css,less,vue,html,md}\"",
"lint:format": "prettier --write --loglevel warn \"src/**/*.{js,ts,json,tsx,css,less,scss,vue,html,md}\"",
"lint:style": "stylelint --fix \"**/*.{vue,less,postcss,css,scss}\" --cache --cache-location node_modules/.cache/stylelint/",
"lint:lint-staged": "lint-staged -c ",
"lint:pretty": "pretty-quick --staged",
@ -78,12 +78,13 @@
"eslint-define-config": "^1.12.0",
"eslint-plugin-prettier": "^4.2.1",
"eslint-plugin-vue": "^9.7.0",
"less": "^4.1.3",
"sass": "^1.56.1",
"sass-loader": "^13.2.0",
"lint-staged": "^13.0.3",
"plop": "^3.1.1",
"postcss": "^8.4.19",
"postcss-html": "^1.5.0",
"postcss-less": "^6.0.0",
"postcss-scss": "^4.0.5",
"prettier": "^2.7.1",
"rimraf": "^3.0.2",
"rollup": "^3.4.0",

View File

@ -37,7 +37,6 @@ specifiers:
intro.js: ^6.0.0
js-cookie: ^3.0.1
jsencrypt: ^3.3.1
less: ^4.1.3
lint-staged: ^13.0.3
lodash-es: ^4.17.21
mitt: ^3.0.0
@ -46,12 +45,14 @@ specifiers:
plop: ^3.1.1
postcss: ^8.4.19
postcss-html: ^1.5.0
postcss-less: ^6.0.0
postcss-scss: ^4.0.5
prettier: ^2.7.1
qrcode: ^1.5.1
qs: ^6.11.0
rimraf: ^3.0.2
rollup: ^3.4.0
sass: ^1.56.1
sass-loader: ^13.2.0
stylelint: ^14.15.0
stylelint-config-html: ^1.1.0
stylelint-config-prettier: ^9.0.4
@ -134,15 +135,16 @@ devDependencies:
eslint-define-config: registry.npmmirror.com/eslint-define-config/1.12.0
eslint-plugin-prettier: registry.npmmirror.com/eslint-plugin-prettier/4.2.1_pgxuib4rd7wiymfktharf5ydt4
eslint-plugin-vue: registry.npmmirror.com/eslint-plugin-vue/9.7.0_eslint@8.28.0
less: registry.npmmirror.com/less/4.1.3
lint-staged: registry.npmmirror.com/lint-staged/13.0.3
plop: registry.npmmirror.com/plop/3.1.1
postcss: registry.npmmirror.com/postcss/8.4.19
postcss-html: registry.npmmirror.com/postcss-html/1.5.0
postcss-less: registry.npmmirror.com/postcss-less/6.0.0_postcss@8.4.19
postcss-scss: registry.npmmirror.com/postcss-scss/4.0.5_postcss@8.4.19
prettier: registry.npmmirror.com/prettier/2.7.1
rimraf: registry.npmmirror.com/rimraf/3.0.2
rollup: registry.npmmirror.com/rollup/3.4.0
sass: registry.npmmirror.com/sass/1.56.1
sass-loader: registry.npmmirror.com/sass-loader/13.2.0_sass@1.56.1
stylelint: registry.npmmirror.com/stylelint/14.15.0
stylelint-config-html: registry.npmmirror.com/stylelint-config-html/1.1.0_qendsqix7hqecpnpx4fjs6qry4
stylelint-config-prettier: registry.npmmirror.com/stylelint-config-prettier/9.0.4_stylelint@14.15.0
@ -150,7 +152,7 @@ devDependencies:
stylelint-config-standard: registry.npmmirror.com/stylelint-config-standard/29.0.0_stylelint@14.15.0
stylelint-order: registry.npmmirror.com/stylelint-order/5.0.0_stylelint@14.15.0
typescript: registry.npmmirror.com/typescript/4.9.3
vite: registry.npmmirror.com/vite/3.2.4_mp5lu76ee5qtwstsyca37sdhqi
vite: registry.npmmirror.com/vite/3.2.4_ajklay5k626t46b6fyghkbup3i
vite-plugin-compression: registry.npmmirror.com/vite-plugin-compression/0.5.1_vite@3.2.4
vite-plugin-eslint: registry.npmmirror.com/vite-plugin-eslint/1.8.1_eslint@8.28.0+vite@3.2.4
vite-plugin-html: registry.npmmirror.com/vite-plugin-html/3.2.0_vite@3.2.4
@ -987,7 +989,7 @@ packages:
debug: registry.npmmirror.com/debug/4.3.4
fast-glob: registry.npmmirror.com/fast-glob/3.2.12
source-map: registry.npmmirror.com/source-map/0.6.1
vite: registry.npmmirror.com/vite/3.2.4_mp5lu76ee5qtwstsyca37sdhqi
vite: registry.npmmirror.com/vite/3.2.4_ajklay5k626t46b6fyghkbup3i
vue-i18n: registry.npmmirror.com/vue-i18n/9.2.2_vue@3.2.45
transitivePeerDependencies:
- supports-color
@ -1540,7 +1542,7 @@ packages:
'@babel/core': registry.npmmirror.com/@babel/core/7.20.2
'@babel/plugin-transform-typescript': registry.npmmirror.com/@babel/plugin-transform-typescript/7.20.2_@babel+core@7.20.2
'@vue/babel-plugin-jsx': registry.npmmirror.com/@vue/babel-plugin-jsx/1.1.1_@babel+core@7.20.2
vite: registry.npmmirror.com/vite/3.2.4_mp5lu76ee5qtwstsyca37sdhqi
vite: registry.npmmirror.com/vite/3.2.4_ajklay5k626t46b6fyghkbup3i
vue: registry.npmmirror.com/vue/3.2.45
transitivePeerDependencies:
- supports-color
@ -1556,7 +1558,7 @@ packages:
vite: ^3.0.0
vue: ^3.2.25
dependencies:
vite: registry.npmmirror.com/vite/3.2.4_mp5lu76ee5qtwstsyca37sdhqi
vite: registry.npmmirror.com/vite/3.2.4_ajklay5k626t46b6fyghkbup3i
vue: registry.npmmirror.com/vue/3.2.45
dev: true
@ -2167,6 +2169,16 @@ packages:
engines: {node: '>=12'}
dev: true
registry.npmmirror.com/anymatch/3.1.3:
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}
name: anymatch
version: 3.1.3
engines: {node: '>= 8'}
dependencies:
normalize-path: registry.npmmirror.com/normalize-path/3.0.0
picomatch: registry.npmmirror.com/picomatch/2.3.1
dev: true
registry.npmmirror.com/arg/4.1.3:
resolution: {integrity: sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/arg/-/arg-4.1.3.tgz}
name: arg
@ -2362,6 +2374,13 @@ packages:
version: 5.2.2
dev: true
registry.npmmirror.com/binary-extensions/2.2.0:
resolution: {integrity: sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/binary-extensions/-/binary-extensions-2.2.0.tgz}
name: binary-extensions
version: 2.2.0
engines: {node: '>=8'}
dev: true
registry.npmmirror.com/bl/4.1.0:
resolution: {integrity: sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/bl/-/bl-4.1.0.tgz}
name: bl
@ -2625,6 +2644,23 @@ packages:
version: 0.7.0
dev: true
registry.npmmirror.com/chokidar/3.5.3:
resolution: {integrity: sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/chokidar/-/chokidar-3.5.3.tgz}
name: chokidar
version: 3.5.3
engines: {node: '>= 8.10.0'}
dependencies:
anymatch: registry.npmmirror.com/anymatch/3.1.3
braces: registry.npmmirror.com/braces/3.0.2
glob-parent: registry.npmmirror.com/glob-parent/5.1.2
is-binary-path: registry.npmmirror.com/is-binary-path/2.1.0
is-glob: registry.npmmirror.com/is-glob/4.0.3
normalize-path: registry.npmmirror.com/normalize-path/3.0.0
readdirp: registry.npmmirror.com/readdirp/3.6.0
optionalDependencies:
fsevents: registry.npmmirror.com/fsevents/2.3.2
dev: true
registry.npmmirror.com/class-utils/0.3.6:
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}
name: class-utils
@ -2923,14 +2959,6 @@ packages:
version: 1.9.0
dev: true
registry.npmmirror.com/copy-anything/2.0.6:
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}
name: copy-anything
version: 2.0.6
dependencies:
is-what: registry.npmmirror.com/is-what/3.14.1
dev: true
registry.npmmirror.com/copy-descriptor/0.1.1:
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}
name: copy-descriptor
@ -3111,20 +3139,6 @@ packages:
ms: registry.npmmirror.com/ms/2.0.0
dev: true
registry.npmmirror.com/debug/3.2.7:
resolution: {integrity: sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/debug/-/debug-3.2.7.tgz}
name: debug
version: 3.2.7
peerDependencies:
supports-color: '*'
peerDependenciesMeta:
supports-color:
optional: true
dependencies:
ms: registry.npmmirror.com/ms/2.1.3
dev: true
optional: true
registry.npmmirror.com/debug/4.3.4:
resolution: {integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/debug/-/debug-4.3.4.tgz}
name: debug
@ -3514,17 +3528,6 @@ packages:
engines: {node: '>=0.12'}
dev: true
registry.npmmirror.com/errno/0.1.8:
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}
name: errno
version: 0.1.8
hasBin: true
requiresBuild: true
dependencies:
prr: registry.npmmirror.com/prr/1.0.1
dev: true
optional: true
registry.npmmirror.com/error-ex/1.3.2:
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}
name: error-ex
@ -4903,16 +4906,6 @@ packages:
safer-buffer: registry.npmmirror.com/safer-buffer/2.1.2
dev: true
registry.npmmirror.com/iconv-lite/0.6.3:
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}
name: iconv-lite
version: 0.6.3
engines: {node: '>=0.10.0'}
dependencies:
safer-buffer: registry.npmmirror.com/safer-buffer/2.1.2
dev: true
optional: true
registry.npmmirror.com/ieee754/1.2.1:
resolution: {integrity: sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/ieee754/-/ieee754-1.2.1.tgz}
name: ieee754
@ -4940,6 +4933,12 @@ packages:
version: 9.0.16
dev: false
registry.npmmirror.com/immutable/4.1.0:
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}
name: immutable
version: 4.1.0
dev: true
registry.npmmirror.com/import-fresh/3.3.0:
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}
name: import-fresh
@ -5062,6 +5061,15 @@ packages:
version: 0.2.1
dev: true
registry.npmmirror.com/is-binary-path/2.1.0:
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}
name: is-binary-path
version: 2.1.0
engines: {node: '>=8'}
dependencies:
binary-extensions: registry.npmmirror.com/binary-extensions/2.2.0
dev: true
registry.npmmirror.com/is-buffer/1.1.6:
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}
name: is-buffer
@ -5301,12 +5309,6 @@ packages:
version: 1.2.4
dev: false
registry.npmmirror.com/is-what/3.14.1:
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}
name: is-what
version: 3.14.1
dev: true
registry.npmmirror.com/is-windows/1.0.2:
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}
name: is-windows
@ -5526,6 +5528,13 @@ packages:
engines: {node: '>=0.10.0'}
dev: true
registry.npmmirror.com/klona/2.0.5:
resolution: {integrity: sha512-pJiBpiXMbt7dkzXe8Ghj/u4FfXOOa98fPW+bihOJ4SjnoijweJrNThJfd3ifXpXhREjpoF2mZVH1GfS9LV3kHQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/klona/-/klona-2.0.5.tgz}
name: klona
version: 2.0.5
engines: {node: '>= 8'}
dev: true
registry.npmmirror.com/known-css-properties/0.26.0:
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}
name: known-css-properties
@ -5538,28 +5547,6 @@ packages:
version: 1.6.0
dev: true
registry.npmmirror.com/less/4.1.3:
resolution: {integrity: sha512-w16Xk/Ta9Hhyei0Gpz9m7VS8F28nieJaL/VyShID7cYvP6IL5oHeL6p4TXSDJqZE/lNv0oJ2pGVjJsRkfwm5FA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/less/-/less-4.1.3.tgz}
name: less
version: 4.1.3
engines: {node: '>=6'}
hasBin: true
dependencies:
copy-anything: registry.npmmirror.com/copy-anything/2.0.6
parse-node-version: registry.npmmirror.com/parse-node-version/1.0.1
tslib: registry.npmmirror.com/tslib/2.4.1
optionalDependencies:
errno: registry.npmmirror.com/errno/0.1.8
graceful-fs: registry.npmmirror.com/graceful-fs/4.2.10
image-size: registry.npmmirror.com/image-size/0.5.5
make-dir: registry.npmmirror.com/make-dir/2.1.0
mime: registry.npmmirror.com/mime/1.6.0
needle: registry.npmmirror.com/needle/3.2.0
source-map: registry.npmmirror.com/source-map/0.6.1
transitivePeerDependencies:
- supports-color
dev: true
registry.npmmirror.com/levn/0.4.1:
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}
name: levn
@ -5871,18 +5858,6 @@ packages:
sourcemap-codec: registry.npmmirror.com/sourcemap-codec/1.4.8
dev: true
registry.npmmirror.com/make-dir/2.1.0:
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}
name: make-dir
version: 2.1.0
engines: {node: '>=6'}
requiresBuild: true
dependencies:
pify: registry.npmmirror.com/pify/4.0.1
semver: registry.npmmirror.com/semver/5.7.1
dev: true
optional: true
registry.npmmirror.com/make-error/1.3.6:
resolution: {integrity: sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/make-error/-/make-error-1.3.6.tgz}
name: make-error
@ -6064,16 +6039,6 @@ packages:
mime-db: registry.npmmirror.com/mime-db/1.52.0
dev: false
registry.npmmirror.com/mime/1.6.0:
resolution: {integrity: sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/mime/-/mime-1.6.0.tgz}
name: mime
version: 1.6.0
engines: {node: '>=4'}
hasBin: true
requiresBuild: true
dev: true
optional: true
registry.npmmirror.com/mimic-fn/2.1.0:
resolution: {integrity: sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/mimic-fn/-/mimic-fn-2.1.0.tgz}
name: mimic-fn
@ -6165,13 +6130,6 @@ packages:
version: 2.1.2
dev: true
registry.npmmirror.com/ms/2.1.3:
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}
name: ms
version: 2.1.3
dev: true
optional: true
registry.npmmirror.com/muggle-string/0.1.0:
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}
name: muggle-string
@ -6230,22 +6188,6 @@ packages:
version: 1.4.0
dev: true
registry.npmmirror.com/needle/3.2.0:
resolution: {integrity: sha512-oUvzXnyLiVyVGoianLijF9O/RecZUf7TkBfimjGrLM4eQhXyeJwM6GeAWccwfQ9aa4gMCZKqhAOuLaMIcQxajQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/needle/-/needle-3.2.0.tgz}
name: needle
version: 3.2.0
engines: {node: '>= 4.4.x'}
hasBin: true
requiresBuild: true
dependencies:
debug: registry.npmmirror.com/debug/3.2.7
iconv-lite: registry.npmmirror.com/iconv-lite/0.6.3
sax: registry.npmmirror.com/sax/1.2.4
transitivePeerDependencies:
- supports-color
dev: true
optional: true
registry.npmmirror.com/neo-async/2.6.2:
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}
name: neo-async
@ -6626,13 +6568,6 @@ packages:
lines-and-columns: registry.npmmirror.com/lines-and-columns/1.2.4
dev: true
registry.npmmirror.com/parse-node-version/1.0.1:
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}
name: parse-node-version
version: 1.0.1
engines: {node: '>= 0.10'}
dev: true
registry.npmmirror.com/parse-passwd/1.0.0:
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}
name: parse-passwd
@ -6753,14 +6688,6 @@ packages:
hasBin: true
dev: true
registry.npmmirror.com/pify/4.0.1:
resolution: {integrity: sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/pify/-/pify-4.0.1.tgz}
name: pify
version: 4.0.1
engines: {node: '>=6'}
dev: true
optional: true
registry.npmmirror.com/pinia/2.0.25_mgnvym7yiazkylwwogi5r767ue:
resolution: {integrity: sha512-3reAkjJ6bW2D5hZKRMS0c9rUbHVlsVyZd037xO0PJr2AuF/09RRSBnFLlJgmHF4Jx6dEoW/jZBOHTushY7IMlw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/pinia/-/pinia-2.0.25.tgz}
id: registry.npmmirror.com/pinia/2.0.25
@ -6825,18 +6752,6 @@ packages:
postcss-safe-parser: registry.npmmirror.com/postcss-safe-parser/6.0.0_postcss@8.4.19
dev: true
registry.npmmirror.com/postcss-less/6.0.0_postcss@8.4.19:
resolution: {integrity: sha512-FPX16mQLyEjLzEuuJtxA8X3ejDLNGGEG503d2YGZR5Ask1SpDN8KmZUMpzCvyalWRywAn1n1VOA5dcqfCLo5rg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/postcss-less/-/postcss-less-6.0.0.tgz}
id: registry.npmmirror.com/postcss-less/6.0.0
name: postcss-less
version: 6.0.0
engines: {node: '>=12'}
peerDependencies:
postcss: ^8.3.5
dependencies:
postcss: registry.npmmirror.com/postcss/8.4.19
dev: true
registry.npmmirror.com/postcss-media-query-parser/0.2.3:
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}
name: postcss-media-query-parser
@ -6872,6 +6787,18 @@ packages:
postcss: registry.npmmirror.com/postcss/8.4.19
dev: true
registry.npmmirror.com/postcss-scss/4.0.5_postcss@8.4.19:
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}
id: registry.npmmirror.com/postcss-scss/4.0.5
name: postcss-scss
version: 4.0.5
engines: {node: '>=12.0'}
peerDependencies:
postcss: ^8.3.3
dependencies:
postcss: registry.npmmirror.com/postcss/8.4.19
dev: true
registry.npmmirror.com/postcss-selector-parser/6.0.10:
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}
name: postcss-selector-parser
@ -7016,13 +6943,6 @@ packages:
version: 1.1.0
dev: false
registry.npmmirror.com/prr/1.0.1:
resolution: {integrity: sha512-yPw4Sng1gWghHQWj0B3ZggWUm4qVbPwPFcRG8KyxiU7J2OHFSoEHKS+EZ3fv5l1t9CyCiop6l/ZYeWbrgoQejw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/prr/-/prr-1.0.1.tgz}
name: prr
version: 1.0.1
dev: true
optional: true
registry.npmmirror.com/punycode/1.3.2:
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}
name: punycode
@ -7138,6 +7058,15 @@ packages:
util-deprecate: registry.npmmirror.com/util-deprecate/1.0.2
dev: true
registry.npmmirror.com/readdirp/3.6.0:
resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/readdirp/-/readdirp-3.6.0.tgz}
name: readdirp
version: 3.6.0
engines: {node: '>=8.10.0'}
dependencies:
picomatch: registry.npmmirror.com/picomatch/2.3.1
dev: true
registry.npmmirror.com/rechoir/0.8.0:
resolution: {integrity: sha512-/vxpCXddiX8NGfGO/mTafwjq4aFa/71pvamip0++IQk3zG8cbCj0fifNPrjjF1XMXUne91jL9OoxmdykoEtifQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/rechoir/-/rechoir-0.8.0.tgz}
name: rechoir
@ -7396,12 +7325,44 @@ packages:
version: 2.1.2
dev: true
registry.npmmirror.com/sax/1.2.4:
resolution: {integrity: sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/sax/-/sax-1.2.4.tgz}
name: sax
version: 1.2.4
dev: true
registry.npmmirror.com/sass-loader/13.2.0_sass@1.56.1:
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}
id: registry.npmmirror.com/sass-loader/13.2.0
name: sass-loader
version: 13.2.0
engines: {node: '>= 14.15.0'}
peerDependencies:
fibers: '>= 3.1.0'
node-sass: ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0
sass: ^1.3.0
sass-embedded: '*'
webpack: ^5.0.0
peerDependenciesMeta:
fibers:
optional: true
node-sass:
optional: true
sass:
optional: true
sass-embedded:
optional: true
dependencies:
klona: registry.npmmirror.com/klona/2.0.5
neo-async: registry.npmmirror.com/neo-async/2.6.2
sass: registry.npmmirror.com/sass/1.56.1
dev: true
registry.npmmirror.com/sass/1.56.1:
resolution: {integrity: sha512-VpEyKpyBPCxE7qGDtOcdJ6fFbcpOM+Emu7uZLxVrkX8KVU/Dp5UF7WLvzqRuUhB6mqqQt1xffLoG+AndxTZrCQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/sass/-/sass-1.56.1.tgz}
name: sass
version: 1.56.1
engines: {node: '>=12.0.0'}
hasBin: true
dependencies:
chokidar: registry.npmmirror.com/chokidar/3.5.3
immutable: registry.npmmirror.com/immutable/4.1.0
source-map-js: registry.npmmirror.com/source-map-js/1.0.2
dev: true
registry.npmmirror.com/scroll-into-view-if-needed/2.2.29:
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:
chalk: registry.npmmirror.com/chalk/4.1.2
debug: registry.npmmirror.com/debug/4.3.4
fs-extra: registry.npmmirror.com/fs-extra/10.1.0
vite: registry.npmmirror.com/vite/3.2.4_mp5lu76ee5qtwstsyca37sdhqi
vite: registry.npmmirror.com/vite/3.2.4_ajklay5k626t46b6fyghkbup3i
transitivePeerDependencies:
- supports-color
dev: true
@ -8508,7 +8469,7 @@ packages:
'@types/eslint': registry.npmmirror.com/@types/eslint/8.4.10
eslint: registry.npmmirror.com/eslint/8.28.0
rollup: registry.npmmirror.com/rollup/2.79.1
vite: registry.npmmirror.com/vite/3.2.4_mp5lu76ee5qtwstsyca37sdhqi
vite: registry.npmmirror.com/vite/3.2.4_ajklay5k626t46b6fyghkbup3i
dev: true
registry.npmmirror.com/vite-plugin-html/3.2.0_vite@3.2.4:
@ -8531,7 +8492,7 @@ packages:
html-minifier-terser: registry.npmmirror.com/html-minifier-terser/6.1.0
node-html-parser: registry.npmmirror.com/node-html-parser/5.4.2
pathe: registry.npmmirror.com/pathe/0.2.0
vite: registry.npmmirror.com/vite/3.2.4_mp5lu76ee5qtwstsyca37sdhqi
vite: registry.npmmirror.com/vite/3.2.4_ajklay5k626t46b6fyghkbup3i
dev: true
registry.npmmirror.com/vite-plugin-progress/0.0.6_vite@3.2.4:
@ -8546,7 +8507,7 @@ packages:
picocolors: registry.npmmirror.com/picocolors/1.0.0
progress: registry.npmmirror.com/progress/2.0.3
rd: registry.npmmirror.com/rd/2.0.1
vite: registry.npmmirror.com/vite/3.2.4_mp5lu76ee5qtwstsyca37sdhqi
vite: registry.npmmirror.com/vite/3.2.4_ajklay5k626t46b6fyghkbup3i
dev: true
registry.npmmirror.com/vite-plugin-purge-icons/0.9.1_vite@3.2.4:
@ -8561,7 +8522,7 @@ packages:
'@purge-icons/core': registry.npmmirror.com/@purge-icons/core/0.9.1
'@purge-icons/generated': registry.npmmirror.com/@purge-icons/generated/0.9.0
rollup-plugin-purge-icons: registry.npmmirror.com/rollup-plugin-purge-icons/0.9.1
vite: registry.npmmirror.com/vite/3.2.4_mp5lu76ee5qtwstsyca37sdhqi
vite: registry.npmmirror.com/vite/3.2.4_ajklay5k626t46b6fyghkbup3i
transitivePeerDependencies:
- encoding
- supports-color
@ -8582,7 +8543,7 @@ packages:
fs-extra: registry.npmmirror.com/fs-extra/10.1.0
magic-string: registry.npmmirror.com/magic-string/0.25.9
pathe: registry.npmmirror.com/pathe/0.2.0
vite: registry.npmmirror.com/vite/3.2.4_mp5lu76ee5qtwstsyca37sdhqi
vite: registry.npmmirror.com/vite/3.2.4_ajklay5k626t46b6fyghkbup3i
dev: true
registry.npmmirror.com/vite-plugin-svg-icons/2.0.1_vite@3.2.4:
@ -8601,7 +8562,7 @@ packages:
pathe: registry.npmmirror.com/pathe/0.2.0
svg-baker: registry.npmmirror.com/svg-baker/1.7.0
svgo: registry.npmmirror.com/svgo/2.8.0
vite: registry.npmmirror.com/vite/3.2.4_mp5lu76ee5qtwstsyca37sdhqi
vite: registry.npmmirror.com/vite/3.2.4_ajklay5k626t46b6fyghkbup3i
transitivePeerDependencies:
- supports-color
dev: true
@ -8617,13 +8578,13 @@ packages:
'@windicss/plugin-utils': registry.npmmirror.com/@windicss/plugin-utils/1.8.8
debug: registry.npmmirror.com/debug/4.3.4
kolorist: registry.npmmirror.com/kolorist/1.6.0
vite: registry.npmmirror.com/vite/3.2.4_mp5lu76ee5qtwstsyca37sdhqi
vite: registry.npmmirror.com/vite/3.2.4_ajklay5k626t46b6fyghkbup3i
windicss: registry.npmmirror.com/windicss/3.5.6
transitivePeerDependencies:
- supports-color
dev: true
registry.npmmirror.com/vite/3.2.4_mp5lu76ee5qtwstsyca37sdhqi:
registry.npmmirror.com/vite/3.2.4_ajklay5k626t46b6fyghkbup3i:
resolution: {integrity: sha512-Z2X6SRAffOUYTa+sLy3NQ7nlHFU100xwanq1WDwqaiFiCe+25zdxP1TfCS5ojPV2oDDcXudHIoPnI1Z/66B7Yw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/vite/-/vite-3.2.4.tgz}
id: registry.npmmirror.com/vite/3.2.4
name: vite
@ -8653,10 +8614,10 @@ packages:
dependencies:
'@types/node': registry.npmmirror.com/@types/node/18.11.9
esbuild: registry.npmmirror.com/esbuild/0.15.14
less: registry.npmmirror.com/less/4.1.3
postcss: registry.npmmirror.com/postcss/8.4.19
resolve: registry.npmmirror.com/resolve/1.22.1
rollup: registry.npmmirror.com/rollup/2.79.1
sass: registry.npmmirror.com/sass/1.56.1
optionalDependencies:
fsevents: registry.npmmirror.com/fsevents/2.3.2
dev: true

View File

@ -33,8 +33,8 @@ const setDefaultTheme = () => {
setDefaultTheme()
</script>
<style lang="less">
@prefix-cls: ~'@{namespace}-app';
<style lang="scss">
$prefix-cls: #{$namespace}-app;
.size {
width: 100%;
@ -46,14 +46,14 @@ body {
padding: 0 !important;
margin: 0;
overflow: hidden;
.size;
@extend .size;
#app {
.size;
@extend .size;
}
}
.@{prefix-cls}-grey-mode {
.#{$prefix-cls}-grey-mode {
filter: grayscale(100%);
}
</style>

View File

@ -87,13 +87,13 @@ export default defineComponent({
})
</script>
<style lang="less" scoped>
@prefix-cls: ~'@{elNamespace}-breadcrumb';
<style lang="scss" scoped>
$prefix-cls: #{$elNamespace}-breadcrumb;
.@{prefix-cls} {
.#{$prefix-cls} {
:deep(&__item) {
display: flex;
.@{prefix-cls}__inner {
.#{$prefix-cls}__inner {
display: flex;
align-items: center;
color: var(--top-header-text-color);
@ -105,7 +105,7 @@ export default defineComponent({
}
:deep(&__item):not(:last-child) {
.@{prefix-cls}__inner {
.#{$prefix-cls}__inner {
color: var(--top-header-text-color);
&:hover {
@ -115,7 +115,7 @@ export default defineComponent({
}
:deep(&__item):last-child {
.@{prefix-cls}__inner {
.#{$prefix-cls}__inner {
color: var(--el-text-color-placeholder);
&:hover {

View File

@ -129,10 +129,10 @@ const toggleClick = () => {
</div>
</template>
<style lang="less" scoped>
@prefix-cls: ~'@{namespace}-descriptions';
<style lang="scss" scoped>
$prefix-cls: #{$namespace}-descriptions;
.@{prefix-cls}-header {
.#{$prefix-cls}-header {
&__title {
&::after {
position: absolute;
@ -146,8 +146,8 @@ const toggleClick = () => {
}
}
.@{prefix-cls}-content {
:deep(.@{elNamespace}-descriptions__cell) {
.#{$prefix-cls}-content {
:deep(.#{$elNamespace}-descriptions__cell) {
width: 0;
}
}

View File

@ -92,23 +92,14 @@ const dialogStyle = computed(() => {
</ElDialog>
</template>
<style lang="less">
.@{elNamespace}-dialog__header {
<style lang="scss">
.#{$elNamespace}-dialog__header {
margin-right: 0 !important;
padding-bottom: 6px;
padding-top: 10px;
border-bottom: 1px solid var(--tags-view-border-color);
}
.@{elNamespace}-dialog__headerbtn {
top: -4px !important;
}
.@{elNamespace}-dialog__footer {
border-top: 0px solid var(--tags-view-border-color);
}
.dialog-footer button:first-child {
margin-right: 10px;
.#{$elNamespace}-dialog__footer {
border-top: 1px solid var(--tags-view-border-color);
}
.is-hover {
@ -118,11 +109,11 @@ const dialogStyle = computed(() => {
}
.dark {
.@{elNamespace}-dialog__header {
.#{$elNamespace}-dialog__header {
border-bottom: 1px solid var(--el-border-color);
}
.@{elNamespace}-dialog__footer {
.#{$elNamespace}-dialog__footer {
border-top: 1px solid var(--el-border-color);
}
}

View File

@ -294,8 +294,8 @@ export default defineComponent({
})
</script>
<style lang="less" scoped>
.@{elNamespace}-form.@{namespace}-form .@{elNamespace}-row {
<style lang="scss" scoped>
.#{$elNamespace}-form.#{$namespace}-form .#{$elNamespace}-row {
margin-right: 0 !important;
margin-left: 0 !important;
}

View File

@ -29,4 +29,3 @@ onMounted(() => {
></iframe>
</div>
</template>
<script lang="less" scoped></script>

View File

@ -182,7 +182,7 @@ watch(
</div>
</template>
<style lang="less" scoped>
<style lang="scss" scoped>
.el-divider--horizontal {
margin: 1px auto !important;
}

View File

@ -74,11 +74,11 @@ const getIconName = computed(() => (unref(textType) === 'password' ? 'ep:hide' :
</div>
</template>
<style lang="less" scoped>
@prefix-cls: ~'@{namespace}-input-password';
<style lang="scss" scoped>
$prefix-cls: #{$namespace}-input-password;
.@{prefix-cls} {
:deep(.@{elNamespace}-input__clear) {
.#{$prefix-cls} {
:deep(.#{$elNamespace}-input__clear) {
margin-left: 5px;
}

View File

@ -121,8 +121,8 @@ export default defineComponent({
})
</script>
<style lang="less" scoped>
@prefix-cls: ~'@{namespace}-menu';
<style lang="scss" scoped>
$prefix-cls: #{$namespace}-menu;
.is-active--after {
position: absolute;
@ -134,7 +134,7 @@ export default defineComponent({
content: '';
}
.@{prefix-cls} {
.#{$prefix-cls} {
position: relative;
transition: width var(--transition-time-02);
@ -147,20 +147,20 @@ export default defineComponent({
content: '';
}
:deep(.@{elNamespace}-menu) {
:deep(.#{$elNamespace}-menu) {
width: 100% !important;
border-right: none;
//
.is-active {
& > .@{elNamespace}-sub-menu__title {
& > .#{$elNamespace}-sub-menu__title {
color: var(--left-menu-text-active-color) !important;
}
}
//
.@{elNamespace}-sub-menu__title,
.@{elNamespace}-menu-item {
.#{$elNamespace}-sub-menu__title,
.#{$elNamespace}-menu-item {
&:hover {
color: var(--left-menu-text-active-color) !important;
background-color: var(--left-menu-bg-color) !important;
@ -168,8 +168,8 @@ export default defineComponent({
}
//
.@{elNamespace}-sub-menu.is-active,
.@{elNamespace}-menu-item.is-active {
.#{$elNamespace}-sub-menu.is-active,
.#{$elNamespace}-menu-item.is-active {
color: var(--left-menu-text-active-color) !important;
background-color: var(--left-menu-bg-active-color) !important;
@ -178,34 +178,34 @@ export default defineComponent({
}
}
.@{elNamespace}-menu-item.is-active {
.#{$elNamespace}-menu-item.is-active {
position: relative;
&:after {
.is-active--after;
@extend .is-active--after;
}
}
//
.@{elNamespace}-menu {
.@{elNamespace}-sub-menu__title,
.@{elNamespace}-menu-item:not(.is-active) {
.#{$elNamespace}-menu {
.#{$elNamespace}-sub-menu__title,
.#{$elNamespace}-menu-item:not(.is-active) {
background-color: var(--left-menu-bg-light-color) !important;
}
}
}
//
:deep(.@{elNamespace}-menu--collapse) {
:deep(.#{$elNamespace}-menu--collapse) {
width: var(--left-menu-min-width);
& > .is-active,
& > .is-active > .@{elNamespace}-sub-menu__title {
& > .is-active > .#{$elNamespace}-sub-menu__title {
position: relative;
background-color: var(--left-menu-collapse-bg-active-color) !important;
&:after {
.is-active--after;
@extend .is-active--after;
}
}
}
@ -213,26 +213,26 @@ export default defineComponent({
//
:deep(.horizontal-collapse-transition) {
// transition: 0s width ease-in-out, 0s padding-left ease-in-out, 0s padding-right ease-in-out !important;
.@{prefix-cls}__title {
.#{$prefix-cls}__title {
display: none;
}
}
//
&__horizontal {
height: calc(~'var(--top-tool-height)') !important;
height: calc(var(--top-tool-height)) !important;
:deep(.@{elNamespace}-menu--horizontal) {
height: calc(~'var(--top-tool-height)');
:deep(.#{$elNamespace}-menu--horizontal) {
height: calc(var(--top-tool-height));
border-bottom: none;
//
& > .@{elNamespace}-sub-menu.is-active {
.@{elNamespace}-sub-menu__title {
& > .#{$elNamespace}-sub-menu.is-active {
.#{$elNamespace}-sub-menu__title {
border-bottom-color: var(--el-color-primary) !important;
}
}
.@{elNamespace}-menu-item.is-active {
.#{$elNamespace}-menu-item.is-active {
position: relative;
&:after {
@ -240,19 +240,19 @@ export default defineComponent({
}
}
.@{prefix-cls}__title {
.#{$prefix-cls}__title {
/* stylelint-disable-next-line */
max-height: calc(~'var(--top-tool-height) - 2px') !important;
max-height: calc(var(--top-tool-height) - 2px) !important;
/* stylelint-disable-next-line */
line-height: calc(~'var(--top-tool-height) - 2px');
line-height: calc(var(--top-tool-height) - 2px);
}
}
}
}
</style>
<style lang="less">
@prefix-cls: ~'@{namespace}-menu-popper';
<style lang="scss">
$prefix-cls: #{$namespace}-menu-popper;
.is-active--after {
position: absolute;
@ -264,8 +264,8 @@ export default defineComponent({
content: '';
}
.@{prefix-cls}--vertical,
.@{prefix-cls}--horizontal {
.#{$prefix-cls}--vertical,
.#{$prefix-cls}--horizontal {
//
.is-active {
& > .el-sub-menu__title {
@ -292,7 +292,7 @@ export default defineComponent({
}
&:after {
.is-active--after;
@extend .is-active--after;
}
}
}

View File

@ -237,10 +237,10 @@ const disabledClick = () => {
</div>
</template>
<style lang="less" scoped>
@prefix-cls: ~'@{namespace}-qrcode';
<style lang="scss" scoped>
$prefix-cls: #{$namespace}-qrcode;
.@{prefix-cls} {
.#{$prefix-cls} {
&--disabled {
background: rgba(255, 255, 255, 0.95);

View File

@ -288,10 +288,10 @@ const clear = () => {
</ElDrawer>
</template>
<style lang="less" scoped>
@prefix-cls: ~'@{namespace}-setting';
<style lang="scss" scoped>
$prefix-cls: #{$namespace}-setting;
.@{prefix-cls} {
.#{$prefix-cls} {
border-radius: 6px 0 0 6px;
}
</style>

View File

@ -54,10 +54,10 @@ watch(
</div>
</template>
<style lang="less" scoped>
@prefix-cls: ~'@{namespace}-color-radio-picker';
<style lang="scss" scoped>
$prefix-cls: #{$namespace}-color-radio-picker;
.@{prefix-cls} {
.#{$prefix-cls} {
.is-active {
border-color: var(--el-color-primary);
}

View File

@ -59,10 +59,10 @@ const layout = computed(() => appStore.getLayout)
</div>
</template>
<style lang="less" scoped>
@prefix-cls: ~'@{namespace}-layout-radio-picker';
<style lang="scss" scoped>
$prefix-cls: #{$namespace}-layout-radio-picker;
.@{prefix-cls} {
.#{$prefix-cls} {
&__classic {
border: 2px solid #e5e7eb;
border-radius: 4px;

View File

@ -213,10 +213,10 @@ export default defineComponent({
})
</script>
<style lang="less" scoped>
@prefix-cls: ~'@{namespace}-tab-menu';
<style lang="scss" scoped>
$prefix-cls: #{$namespace}-tab-menu;
.@{prefix-cls} {
.#{$prefix-cls} {
transition: all var(--transition-time-02);
&:after {

View File

@ -295,7 +295,7 @@ export default defineComponent({
}
})
</script>
<style lang="less" scoped>
<style lang="scss" scoped>
:deep(.el-button.is-text) {
margin-left: 0;
padding: 8px 4px;

View File

@ -463,11 +463,11 @@ watch(
</div>
</template>
<style lang="less" scoped>
@prefix-cls: ~'@{namespace}-tags-view';
<style lang="scss" scoped>
$prefix-cls: #{$namespace}-tags-view;
.@{prefix-cls} {
:deep(.@{elNamespace}-scrollbar__view) {
.#{$prefix-cls} {
:deep(.#{$elNamespace}-scrollbar__view) {
height: 100%;
}
@ -485,7 +485,7 @@ watch(
top: 1px;
left: 0;
width: 100%;
height: calc(~'100% - 1px');
height: calc(100% - 1px);
border-right: 1px solid var(--tags-view-border-color);
border-left: 1px solid var(--tags-view-border-color);
content: '';
@ -495,7 +495,7 @@ watch(
&__item {
position: relative;
top: 2px;
height: calc(~'100% - 4px');
height: calc(100% - 4px);
padding-right: 25px;
margin-left: 4px;
font-size: 12px;
@ -509,8 +509,8 @@ watch(
display: none;
transform: translate(0, -50%);
}
&:not(.@{prefix-cls}__item--affix):hover {
.@{prefix-cls}__item--close {
&:not(.#{$prefix-cls}__item--affix):hover {
.#{$prefix-cls}__item--close {
display: block;
}
}
@ -526,7 +526,7 @@ watch(
color: var(--el-color-white);
background-color: var(--el-color-primary);
border: 1px solid var(--el-color-primary);
.@{prefix-cls}__item--close {
.#{$prefix-cls}__item--close {
:deep(span) {
color: var(--el-color-white) !important;
}
@ -535,7 +535,7 @@ watch(
}
.dark {
.@{prefix-cls} {
.#{$prefix-cls} {
&__tool {
&:hover {
:deep(span) {
@ -552,7 +552,7 @@ watch(
&__item {
position: relative;
top: 2px;
height: calc(~'100% - 4px');
height: calc(100% - 4px);
padding-right: 25px;
font-size: 12px;
cursor: pointer;
@ -568,7 +568,7 @@ watch(
&__item.is-active {
color: var(--el-color-white);
background-color: var(--el-color-primary);
.@{prefix-cls}__item--close {
.#{$prefix-cls}__item--close {
:deep(span) {
color: var(--el-color-white) !important;
}

View File

@ -35,7 +35,7 @@ const getBindValue = computed(() => {
<Icon :icon="postIcon" v-if="postIcon" class="mr-1px" />
</el-button>
</template>
<style lang="less" scoped>
<style lang="scss" scoped>
:deep(.el-button.is-text) {
margin-left: 0;
padding: 8px 4px;

View File

@ -34,7 +34,7 @@ const getBindValue = computed(() => {
<Icon :icon="postIcon" v-if="postIcon" class="mr-1px" />
</el-button>
</template>
<style lang="less" scoped>
<style lang="scss" scoped>
:deep(.el-button.is-text) {
margin-left: 0;
padding: 8px 4px;

View File

@ -1,18 +1,18 @@
import variables from '@/styles/variables.module.less'
import variables from '@/styles/global.module.scss'
export const useDesign = () => {
const lessVariables = variables
const scssVariables = variables
/**
* @param scope
* @returns -
*/
const getPrefixCls = (scope: string) => {
return `${lessVariables.namespace}-${scope}`
return `${scssVariables.namespace}-${scope}`
}
return {
variables: lessVariables,
variables: scssVariables,
getPrefixCls
}
}

View File

@ -66,12 +66,12 @@ export default defineComponent({
})
</script>
<style lang="less" scoped>
@prefix-cls: ~'@{namespace}-layout';
<style lang="scss" scoped>
$prefix-cls: #{$namespace}-layout;
.@{prefix-cls} {
background-color: var(--app-contnet-bg-color);
:deep(.@{elNamespace}-scrollbar__view) {
.#{$prefix-cls} {
background-color: var(--app-content-bg-color);
:deep(.#{$elNamespace}-scrollbar__view) {
height: 100% !important;
}
}

View File

@ -74,10 +74,10 @@ export default defineComponent({
})
</script>
<style lang="less" scoped>
@prefix-cls: ~'@{namespace}-tool-header';
<style lang="scss" scoped>
$prefix-cls: #{$namespace}-tool-header;
.@{prefix-cls} {
.#{$prefix-cls} {
transition: left var(--transition-time-02);
}
</style>

View File

@ -20,7 +20,7 @@ import { setupElementPlus } from '@/plugins/elementPlus'
import { setupVxeTable } from '@/plugins/vxeTable'
// 引入全局样式
import '@/styles/index.less'
import '@/styles/index.scss'
// 引入动画
import '@/plugins/animate.css'

View File

@ -0,0 +1,6 @@
@import './variables.scss';
// 导出变量
:export {
namespace: $namespace;
elNamespace: $elNamespace;
}

View File

@ -1,3 +0,0 @@
@import './var.css';
@import './vxe.css';
@import 'element-plus/theme-chalk/dark/css-vars.css';

View File

@ -0,0 +1,23 @@
@import './var.css';
@import './vxe.css';
@import 'element-plus/theme-chalk/dark/css-vars.css';
.reset-margin [class*='el-icon'] + span {
margin-left: 2px !important;
}
/* nprogress 适配 element-plus 的主题色 */
#nprogress {
& .bar {
background-color: var(--el-color-primary) !important;
}
& .peg {
box-shadow: 0 0 10px var(--el-color-primary), 0 0 5px var(--el-color-primary) !important;
}
& .spinner-icon {
border-top-color: var(--el-color-primary);
border-left-color: var(--el-color-primary);
}
}

View File

@ -1,6 +0,0 @@
// .text-color {
// color: var(--el-text-color-regular);
// }
// .dark .dark\:text-color {
// color: rgba(255, 255, 255, var(--dark-text-color));
// }

View File

@ -1,10 +0,0 @@
// 命名空间
@namespace: v;
// el命名空间
@elNamespace: el;
// 导出变量
:export {
namespace: @namespace;
elNamespace: @elNamespace;
}

View File

@ -0,0 +1,4 @@
// 命名空间
$namespace: v;
// el命名空间
$elNamespace: el;

View File

@ -270,10 +270,10 @@ const getAllApi = async () => {
getAllApi()
</script>
<style lang="less" scoped>
@prefix-cls: ~'@{namespace}-panel';
<style lang="scss" scoped>
$prefix-cls: #{$namespace}-panel;
.@{prefix-cls} {
.#{$prefix-cls} {
&__item {
&--peoples {
color: #40c9c6;
@ -292,22 +292,22 @@ getAllApi()
}
&:hover {
:deep(.@{namespace}-icon) {
:deep(.#{$namespace}-icon) {
color: #fff !important;
}
.@{prefix-cls}__item--icon {
.#{$prefix-cls}__item--icon {
transition: all 0.38s ease-out;
}
.@{prefix-cls}__item--peoples {
.#{$prefix-cls}__item--peoples {
background: #40c9c6;
}
.@{prefix-cls}__item--message {
.#{$prefix-cls}__item--message {
background: #36a3f7;
}
.@{prefix-cls}__item--money {
.#{$prefix-cls}__item--money {
background: #f4516c;
}
.@{prefix-cls}__item--shopping {
.#{$prefix-cls}__item--shopping {
background: #34bfa3;
}
}

View File

@ -73,10 +73,10 @@ const { getPrefixCls } = useDesign()
const prefixCls = getPrefixCls('login')
</script>
<style lang="less" scoped>
@prefix-cls: ~'@{namespace}-login';
<style lang="scss" scoped>
$prefix-cls: #{$namespace}-panel;
.@{prefix-cls} {
.#{$prefix-cls} {
&__left {
&::before {
position: absolute;

View File

@ -307,7 +307,7 @@ onMounted(() => {
})
</script>
<style lang="less" scoped>
<style lang="scss" scoped>
:deep(.anticon) {
&:hover {
color: var(--el-color-primary) !important;

View File

@ -197,7 +197,7 @@ const signIn = async () => {
}
</script>
<style lang="less" scoped>
<style lang="scss" scoped>
:deep(.anticon) {
&:hover {
color: var(--el-color-primary) !important;

View File

@ -105,14 +105,14 @@ export default ({ command, mode }: ConfigEnv): UserConfig => {
],
css: {
preprocessorOptions: {
less: {
additionalData: '@import "./src/styles/variables.module.less";',
scss: {
additionalData: '@import "./src/styles/variables.scss";',
javascriptEnabled: true
}
}
},
resolve: {
extensions: ['.mjs', '.js', '.ts', '.jsx', '.tsx', '.json', '.less', '.css'],
extensions: ['.mjs', '.js', '.ts', '.jsx', '.tsx', '.json', '.scss', '.css'],
alias: [
{
find: 'vue-i18n',