Explorar el Código

chore: 移除prettier

xyh hace 2 años
padre
commit
9155f7d454

+ 14 - 3
.eslintrc.js

@@ -2,7 +2,6 @@ module.exports = {
   extends: [
     'proste/typescript.js',
     'plugin:vue/vue3-recommended',
-    'eslint-config-prettier',
   ],
   globals: {
     suite: true,
@@ -27,8 +26,20 @@ module.exports = {
     extraFileExtensions: ['.vue'],
   },
   rules: {
-    // defineOptions is not supported
-    'vue/multi-word-component-names': 0,
+    'vue/html-self-closing': [
+      2, {
+        html: {
+          void: 'always',
+          normal: 'always',
+          component: 'always',
+        },
+        svg: 'always',
+        math: 'always',
+      },
+    ],
+    'vue/max-attributes-per-line': 0,
+    'vue/singleline-html-element-content-newline': 0,
+    'vue/mustache-interpolation-spacing': [1, 'never'],
   },
   overrides: [
     {

+ 0 - 35
.prettierignore

@@ -1,35 +0,0 @@
-**/*.png
-**/*.svg
-*.yaml
-CODEOWNERS
-.dockerignore
-Dockerfile.ui-test
-AUTHORS.txt
-lib/
-es/
-dist/
-build/
-public/
-coverage/
-CNAME
-LICENSE
-yarn.lock
-netlify.toml
-yarn-error.log
-.DS_Store
-.editorconfig
-.eslintignore
-.history
-.bablerc
-.eslintrc.json
-**/*.yml
-**/.gitkeep
-.stylelintignore
-.temp-cache/
-analyzer/
-node_modules/
-pnpm-lock.yaml
-.env*
-.eslintcache
-.gitignore
-.prettierignore

+ 0 - 16
.prettierrc.json

@@ -1,16 +0,0 @@
-{
-  "printWidth": 80,
-  "tabWidth": 2,
-  "useTabs": false,
-  "semi": true,
-  "singleQuote": true,
-  "quoteProps": "as-needed",
-  "jsxSingleQuote": true,
-  "trailingComma": "all",
-  "bracketSpacing": false,
-  "bracketSameLine": false,
-  "arrowParens": "avoid",
-  "proseWrap": "always",
-  "htmlWhitespaceSensitivity": "css",
-  "endOfLine": "lf"
-}

+ 1 - 1
cypress.config.ts

@@ -2,6 +2,6 @@ import {defineConfig} from 'cypress';
 
 export default defineConfig({
   e2e: {
-    baseUrl: `http://localhost:3000/`,
+    baseUrl: 'http://localhost:3000/',
   },
 });

+ 2 - 2
cypress/e2e/home.cy.ts

@@ -1,5 +1,5 @@
-describe('Home page', function () {
-  it('Home page e2e', function () {
+describe('Home page', function() {
+  it('Home page e2e', function() {
     cy.visit('/');
 
     cy.getById('count').should('contain.text', 'count is 0');

+ 1 - 1
cypress/support/commands.ts

@@ -7,6 +7,6 @@
 // eslint-disable-next-line @typescript-eslint/ban-ts-comment
 // @ts-nocheck
 
-Cypress.Commands.add('getById' as any, function (value) {
+Cypress.Commands.add('getById' as any, function(value) {
   return cy.get(`#${value}`);
 });

+ 7 - 9
package.json

@@ -13,8 +13,7 @@
     "lint:style": "stylelint packages/app/src *.*.css",
     "lint:js": "eslint . --ext .js,.jsx,.ts,.tsx",
     "lint:style-fix": "pnpm run lint:style --fix",
-    "lint:js-fix": "pnpm run lint:script --fix",
-    "prettier": "prettier -c --write **/*",
+    "lint:js-fix": "pnpm run lint:js --fix",
     "prepare": "husky install",
     "postinstall": "husky install",
     "pre-commit": "lint-staged",
@@ -73,12 +72,10 @@
   },
   "lint-staged": {
     "**/*/*.css": [
-      "stylelint",
-      "prettier --write"
+      "stylelint"
     ],
-    "**/*/*.{js,jsx,ts,tsx,.vue}": [
-      "eslint",
-      "prettier --write"
+    "**/*/*.{js,jsx,ts,tsx,vue}": [
+      "eslint"
     ]
   },
   "dependencies": {
@@ -114,10 +111,11 @@
     "editorconfig": "^1.0.2",
     "eslint": "^8.40.0",
     "eslint-config-prettier": "^8.8.0",
-    "eslint-config-proste": "^5.1.0",
+    "eslint-config-proste": "^6.1.2",
     "eslint-plugin-cypress": "^2.13.3",
     "eslint-plugin-import": "^2.27.5",
-    "eslint-plugin-vue": "^9.12.0",
+    "eslint-plugin-import-newlines": "^1.3.1",
+    "eslint-plugin-vue": "^9.13.0",
     "husky": "^8.0.3",
     "jsdom": "^22.0.0",
     "lint-staged": "^13.2.2",

+ 56 - 24
pnpm-lock.yaml

@@ -94,17 +94,20 @@ devDependencies:
     specifier: ^8.8.0
     version: 8.8.0(eslint@8.40.0)
   eslint-config-proste:
-    specifier: ^5.1.0
-    version: 5.1.0(@typescript-eslint/eslint-plugin@5.59.5)(@typescript-eslint/parser@5.59.5)(eslint-plugin-import@2.27.5)(eslint@8.40.0)
+    specifier: ^6.1.2
+    version: 6.1.2(@typescript-eslint/eslint-plugin@5.59.5)(@typescript-eslint/parser@5.59.5)(eslint-plugin-import-newlines@1.3.1)(eslint-plugin-import@2.27.5)(eslint@8.40.0)
   eslint-plugin-cypress:
     specifier: ^2.13.3
     version: 2.13.3(eslint@8.40.0)
   eslint-plugin-import:
     specifier: ^2.27.5
     version: 2.27.5(@typescript-eslint/parser@5.59.5)(eslint@8.40.0)
+  eslint-plugin-import-newlines:
+    specifier: ^1.3.1
+    version: 1.3.1(eslint@8.40.0)
   eslint-plugin-vue:
-    specifier: ^9.12.0
-    version: 9.12.0(eslint@8.40.0)
+    specifier: ^9.13.0
+    version: 9.13.0(eslint@8.40.0)
   husky:
     specifier: ^8.0.3
     version: 8.0.3
@@ -454,9 +457,9 @@ packages:
     peerDependencies:
       postcss: ^8.4
     dependencies:
-      '@csstools/selector-specificity': 2.2.0(postcss-selector-parser@6.0.12)
+      '@csstools/selector-specificity': 2.2.0(postcss-selector-parser@6.0.13)
       postcss: 8.4.23
-      postcss-selector-parser: 6.0.12
+      postcss-selector-parser: 6.0.13
     dev: true
 
   /@csstools/postcss-color-function@2.2.1(postcss@8.4.23):
@@ -537,9 +540,9 @@ packages:
     peerDependencies:
       postcss: ^8.4
     dependencies:
-      '@csstools/selector-specificity': 2.2.0(postcss-selector-parser@6.0.12)
+      '@csstools/selector-specificity': 2.2.0(postcss-selector-parser@6.0.13)
       postcss: 8.4.23
-      postcss-selector-parser: 6.0.12
+      postcss-selector-parser: 6.0.13
     dev: true
 
   /@csstools/postcss-logical-float-and-clear@1.0.1(postcss@8.4.23):
@@ -646,7 +649,7 @@ packages:
       postcss: ^8.4
     dependencies:
       postcss: 8.4.23
-      postcss-selector-parser: 6.0.12
+      postcss-selector-parser: 6.0.13
     dev: true
 
   /@csstools/postcss-stepped-value-functions@2.1.1(postcss@8.4.23):
@@ -702,6 +705,15 @@ packages:
       postcss-selector-parser: 6.0.12
     dev: true
 
+  /@csstools/selector-specificity@2.2.0(postcss-selector-parser@6.0.13):
+    resolution: {integrity: sha512-+OJ9konv95ClSTOJCmMZqpd5+YGsB2S+x6w3E1oaM8UuR5j8nTNHYSz8c9BEPGDOCMQYIEEGlVPj/VY64iTbGw==}
+    engines: {node: ^14 || ^16 || >=18}
+    peerDependencies:
+      postcss-selector-parser: ^6.0.10
+    dependencies:
+      postcss-selector-parser: 6.0.13
+    dev: true
+
   /@ctrl/tinycolor@3.6.0:
     resolution: {integrity: sha512-/Z3l6pXthq0JvMYdUFyX9j0MaCltlIn6mfh9jLyQwg5aPKxkyNa0PTHtU1AlFXLNk55ZuAeJRcpvq+tmLfKmaQ==}
     engines: {node: '>=10'}
@@ -2555,7 +2567,7 @@ packages:
       postcss: ^8.4
     dependencies:
       postcss: 8.4.23
-      postcss-selector-parser: 6.0.12
+      postcss-selector-parser: 6.0.13
     dev: true
 
   /css-functions-list@3.1.0:
@@ -2569,9 +2581,9 @@ packages:
     peerDependencies:
       postcss: ^8.4
     dependencies:
-      '@csstools/selector-specificity': 2.2.0(postcss-selector-parser@6.0.12)
+      '@csstools/selector-specificity': 2.2.0(postcss-selector-parser@6.0.13)
       postcss: 8.4.23
-      postcss-selector-parser: 6.0.12
+      postcss-selector-parser: 6.0.13
       postcss-value-parser: 4.2.0
     dev: true
 
@@ -3080,13 +3092,14 @@ packages:
       eslint: 8.40.0
     dev: true
 
-  /eslint-config-proste@5.1.0(@typescript-eslint/eslint-plugin@5.59.5)(@typescript-eslint/parser@5.59.5)(eslint-plugin-import@2.27.5)(eslint@8.40.0):
-    resolution: {integrity: sha512-zo4du6niqOsYX8csslPjxPcBa/eWIwXM6/BVZ4G6Rf0sI13e0RkWV+5yb4hu1bdZ1mgX2ogcIr3vUho5GEBgLg==}
+  /eslint-config-proste@6.1.2(@typescript-eslint/eslint-plugin@5.59.5)(@typescript-eslint/parser@5.59.5)(eslint-plugin-import-newlines@1.3.1)(eslint-plugin-import@2.27.5)(eslint@8.40.0):
+    resolution: {integrity: sha512-dL0WvTl6YEm9O2bXNDmLwGqxF3AnyR72juj/Au+OqkQxjQ33uuwlpEEe7cRrj/enfVkUwPltebmf71xVeU6WIw==}
     peerDependencies:
       '@typescript-eslint/eslint-plugin': '>=5.4.0'
       '@typescript-eslint/parser': '>=5.4.0'
       eslint: '>=7.32.0'
       eslint-plugin-import: '>=2.25.3'
+      eslint-plugin-import-newlines: '>=1.3.0'
       eslint-plugin-react: '>=7.27.1'
       eslint-plugin-react-hooks: '>=4.3.0'
     peerDependenciesMeta:
@@ -3103,6 +3116,7 @@ packages:
       '@typescript-eslint/parser': 5.59.5(eslint@8.40.0)(typescript@5.0.4)
       eslint: 8.40.0
       eslint-plugin-import: 2.27.5(@typescript-eslint/parser@5.59.5)(eslint@8.40.0)
+      eslint-plugin-import-newlines: 1.3.1(eslint@8.40.0)
     dev: true
 
   /eslint-import-resolver-node@0.3.7:
@@ -3153,6 +3167,16 @@ packages:
       globals: 11.12.0
     dev: true
 
+  /eslint-plugin-import-newlines@1.3.1(eslint@8.40.0):
+    resolution: {integrity: sha512-7vyhwliGm+CTwteRw2ym+IO9OaksGYmSt63elPPBM0QJ3zwRwMKtgHOSHVtdHlrSERRTVCsWtMO8dDdAdmHMXg==}
+    engines: {node: '>=10.0.0'}
+    hasBin: true
+    peerDependencies:
+      eslint: '>=6.0.0'
+    dependencies:
+      eslint: 8.40.0
+    dev: true
+
   /eslint-plugin-import@2.27.5(@typescript-eslint/parser@5.59.5)(eslint@8.40.0):
     resolution: {integrity: sha512-LmEt3GVofgiGuiE+ORpnvP+kAm3h6MLZJ4Q5HCyHADofsb4VzXFsRiWj3c0OFiV+3DWFh0qg3v9gcPlfc3zRow==}
     engines: {node: '>=4'}
@@ -3186,8 +3210,8 @@ packages:
       - supports-color
     dev: true
 
-  /eslint-plugin-vue@9.12.0(eslint@8.40.0):
-    resolution: {integrity: sha512-xH8PgpDW2WwmFSmRfs/3iWogef1CJzQqX264I65zz77jDuxF2yLy7+GA2diUM8ZNATuSl1+UehMQkb5YEyau5w==}
+  /eslint-plugin-vue@9.13.0(eslint@8.40.0):
+    resolution: {integrity: sha512-aBz9A8WB4wmpnVv0pYUt86cmH9EkcwWzgEwecBxMoRNhQjTL5i4sqadnwShv/hOdr8Hbl8XANGV7dtX9UQIAyA==}
     engines: {node: ^14.17.0 || >=16.0.0}
     peerDependencies:
       eslint: ^6.2.0 || ^7.0.0 || ^8.0.0
@@ -3196,7 +3220,7 @@ packages:
       eslint: 8.40.0
       natural-compare: 1.4.0
       nth-check: 2.1.1
-      postcss-selector-parser: 6.0.12
+      postcss-selector-parser: 6.0.13
       semver: 7.5.1
       vue-eslint-parser: 9.3.0(eslint@8.40.0)
       xml-name-validator: 4.0.0
@@ -5329,7 +5353,7 @@ packages:
       postcss: ^8.4
     dependencies:
       postcss: 8.4.23
-      postcss-selector-parser: 6.0.12
+      postcss-selector-parser: 6.0.13
     dev: true
 
   /postcss-clamp@4.1.0(postcss@8.4.23):
@@ -5408,7 +5432,7 @@ packages:
       '@csstools/css-parser-algorithms': 2.1.1(@csstools/css-tokenizer@2.1.1)
       '@csstools/css-tokenizer': 2.1.1
       postcss: 8.4.23
-      postcss-selector-parser: 6.0.12
+      postcss-selector-parser: 6.0.13
     dev: true
 
   /postcss-dir-pseudo-class@7.0.2(postcss@8.4.23):
@@ -5418,7 +5442,7 @@ packages:
       postcss: ^8.4
     dependencies:
       postcss: 8.4.23
-      postcss-selector-parser: 6.0.12
+      postcss-selector-parser: 6.0.13
     dev: true
 
   /postcss-double-position-gradients@4.0.2(postcss@8.4.23):
@@ -5439,7 +5463,7 @@ packages:
       postcss: ^8.4
     dependencies:
       postcss: 8.4.23
-      postcss-selector-parser: 6.0.12
+      postcss-selector-parser: 6.0.13
     dev: true
 
   /postcss-focus-within@7.0.2(postcss@8.4.23):
@@ -5449,7 +5473,7 @@ packages:
       postcss: ^8.4
     dependencies:
       postcss: 8.4.23
-      postcss-selector-parser: 6.0.12
+      postcss-selector-parser: 6.0.13
     dev: true
 
   /postcss-font-variant@5.0.0(postcss@8.4.23):
@@ -5633,7 +5657,7 @@ packages:
       postcss: ^8.4
     dependencies:
       postcss: 8.4.23
-      postcss-selector-parser: 6.0.12
+      postcss-selector-parser: 6.0.13
     dev: true
 
   /postcss-replace-overflow-wrap@4.0.0(postcss@8.4.23):
@@ -5664,7 +5688,7 @@ packages:
       postcss: ^8.4
     dependencies:
       postcss: 8.4.23
-      postcss-selector-parser: 6.0.12
+      postcss-selector-parser: 6.0.13
     dev: true
 
   /postcss-selector-parser@6.0.12:
@@ -5675,6 +5699,14 @@ packages:
       util-deprecate: 1.0.2
     dev: true
 
+  /postcss-selector-parser@6.0.13:
+    resolution: {integrity: sha512-EaV1Gl4mUEV4ddhDnv/xtj7sxwrwxdetHdWUGnT4VJQf+4d05v6lHYZr8N573k5Z0BViss7BDhfWtKS3+sfAqQ==}
+    engines: {node: '>=4'}
+    dependencies:
+      cssesc: 3.0.0
+      util-deprecate: 1.0.2
+    dev: true
+
   /postcss-sorting@8.0.2(postcss@8.4.23):
     resolution: {integrity: sha512-M9dkSrmU00t/jK7rF6BZSZauA5MAaBW4i5EnJXspMwt4iqTh/L9j6fgMnbElEOfyRyfLfVbIHj/R52zHzAPe1Q==}
     peerDependencies:

+ 4 - 4
src/pages/home/index.test.ts

@@ -2,20 +2,20 @@ import Home from '@pages/home/index.vue';
 import {mount, VueWrapper} from '@vue/test-utils';
 import {setActivePinia, createPinia} from 'pinia';
 
-describe('Home page', function () {
+describe('Home page', function() {
   let app: VueWrapper<any>;
 
-  beforeEach(function () {
+  beforeEach(function() {
     setActivePinia(createPinia());
     app = mount(Home);
   });
 
-  test('should render', function () {
+  test('should render', function() {
     const img = app.get('img');
     expect(img.attributes('src')?.length).toBeGreaterThan(0);
   });
 
-  test('Correct operation data', async function () {
+  test('Correct operation data', async function() {
     const incBtn = app.get('#inc_btn');
     const decBtn = app.get('#dec_btn');
 

+ 1 - 1
src/pages/login/hooks.ts

@@ -31,7 +31,7 @@ export function useFormState() {
     validateOnMount: false,
   });
 
-  const onSubmit = handleSubmit(function (value) {
+  const onSubmit = handleSubmit(function(value) {
     console.log(value);
   });
 

+ 12 - 12
src/pages/login/login-info/index.vue

@@ -21,10 +21,10 @@ const [isPassword, togglePassword] = useToggle(true);
 const [remberPassword, toggleRemberPassword] = useToggle();
 
 const {value: nameValue, errorMessage: nameErrorMessage} = useFieldItem('name');
-const {value: passwordValue, errorMessage: passwordErrorMessage} =
-  useFieldItem('password');
-const {value: companyValue, errorMessage: companyErrorMessage} =
-  useFieldItem('company');
+const {value: passwordValue, errorMessage: passwordErrorMessage}
+  = useFieldItem('password');
+const {value: companyValue, errorMessage: companyErrorMessage}
+  = useFieldItem('company');
 
 const {t} = useI18n();
 </script>
@@ -44,7 +44,7 @@ const {t} = useI18n();
       @click="onTabClick(1)"
     />
 
-    <i class="tab-indicator"></i>
+    <i class="tab-indicator" />
   </div>
 
   <div class="info">
@@ -58,7 +58,7 @@ const {t} = useI18n();
       </template>
     </ElInput>
     <p :class="['error-tip', {'error-top-hidden': !nameErrorMessage}]">
-      {{ nameErrorMessage }}
+      {{nameErrorMessage}}
     </p>
 
     <ElInput
@@ -82,7 +82,7 @@ const {t} = useI18n();
       </template>
     </ElInput>
     <p :class="['error-tip', {'error-top-hidden': !passwordErrorMessage}]">
-      {{ passwordErrorMessage }}
+      {{passwordErrorMessage}}
     </p>
 
     <ElInput
@@ -95,7 +95,7 @@ const {t} = useI18n();
       </template>
     </ElInput>
     <p :class="['error-tip', {'error-top-hidden': !companyErrorMessage}]">
-      {{ companyErrorMessage }}
+      {{companyErrorMessage}}
     </p>
 
     <div class="operation">
@@ -103,17 +103,17 @@ const {t} = useI18n();
         :class="{'rember-password': remberPassword}"
         @click="toggleRemberPassword(!remberPassword)"
       >
-        {{ t('login.remberPassword') }}
+        {{t('login.remberPassword')}}
       </span>
-      <span>{{ t('login.forgetPassword') }}</span>
+      <span>{{t('login.forgetPassword')}}</span>
     </div>
 
     <ElButton native-type="submit" class="login-btn">
-      {{ t('login.loginBtnText') }}
+      {{t('login.loginBtnText')}}
     </ElButton>
   </div>
 
-  <RouterLink to="/" class="regist">{{ t('login.regist') }}</RouterLink>
+  <RouterLink to="/" class="regist">{{t('login.regist')}}</RouterLink>
 </template>
 
 <style scoped lang="css">

+ 8 - 8
src/stores/count.ts

@@ -14,10 +14,10 @@ type CountAction = {
 };
 
 export const useCountState = defineStore<
-  string,
-  CountState,
-  CountGetters,
-  CountAction
+string,
+CountState,
+CountGetters,
+CountAction
 >('count', {
   state() {
     return {
@@ -31,12 +31,12 @@ export const useCountState = defineStore<
   },
   actions: {
     increment() {
-      this.count =
-        process.env.IS_E2E === 'true' ? this.count + 2 : this.count + 1;
+      this.count
+        = process.env.IS_E2E === 'true' ? this.count + 2 : this.count + 1;
     },
     reduce() {
-      this.count =
-        process.env.IS_E2E === 'true' ? this.count - 2 : this.count - 1;
+      this.count
+        = process.env.IS_E2E === 'true' ? this.count - 2 : this.count - 1;
     },
   },
 });