diff --git a/.eslintrc.js b/.eslintrc.js new file mode 100644 index 0000000..d7b2949 --- /dev/null +++ b/.eslintrc.js @@ -0,0 +1,52 @@ +module.export = { + root: true, + env: { + node: true, + }, + parserOptions: { + parser: '@babel/eslint-parser', + ecmaVersion: 2020, + requireConfigFile: false, + }, + extends: [ + 'eslint:recommended', + 'plugin:vue/vue3-recommended', + 'plugin:@intlify/vue-i18n/recommended', + 'prettier', + ], + settings: { + 'vue-i18n': { + localeDir: '@/lang/*.{json,json5,yaml,yml}', + messageSyntaxVersion: '^9.0.0', + }, + }, + rules: { + indent: 'off', + camelcase: 'off', + 'space-before-function-paren': 'off', + 'object-curly-spacing': 'off', + 'comma-dangle': 'off', + 'vue/html-self-closing': 'warn', + '@intlify/vue-i18n/no-v-html': 'off', + '@intlify/vue-i18n/no-dynamic-keys': 'off', + '@intlify/vue-i18n/no-raw-text': [ + 'warn', + { + ignorePattern: '^(([\\W\\d]+)|(http.*))|()$', + ignoreNodes: [ + 'code', + ], + }, + ], + '@intlify/vue-i18n/no-unused-keys': [ + 'error', + { + extensions: [ + '.js', + '.ts', + '.vue', + ], + }, + ], + }, +} \ No newline at end of file diff --git a/.prettierrc.js b/.prettierrc.js new file mode 100644 index 0000000..e041d72 --- /dev/null +++ b/.prettierrc.js @@ -0,0 +1,7 @@ +module.export = { + trailingComma: 'es5', + printWidth: 120, + tabWidth: 2, + semi: false, + singleQuote: true, +} \ No newline at end of file diff --git a/package.json b/package.json index 4b9aab8..e6ae8b7 100644 --- a/package.json +++ b/package.json @@ -62,64 +62,5 @@ "prettier": "3.2.4", "tailwindcss": "^3.4.1" }, - "eslintConfig": { - "root": true, - "env": { - "node": true - }, - "parserOptions": { - "parser": "@babel/eslint-parser", - "emcaVersion": 2020, - "requireConfigFile": false - }, - "extends": [ - "eslint:recommended", - "plugin:vue/vue3-recommended", - "plugin:@intlify/vue-i18n/recommended", - "prettier" - ], - "settings": { - "vue-i18n": { - "localeDir": "@/lang/*.{json,json5,yaml,yml}", - "messageSyntaxVersion": "^9.0.0" - } - }, - "rules": { - "indent": "off", - "camelcase": "off", - "space-before-function-paren": "off", - "object-curly-spacing": "off", - "comma-dangle": "off", - "vue/html-self-closing": "warn", - "@intlify/vue-i18n/no-v-html": "off", - "@intlify/vue-i18n/no-dynamic-keys": "off", - "@intlify/vue-i18n/no-raw-text": [ - "warn", - { - "ignorePattern": "^(([\\W\\d]+)|(http.*))|()$", - "ignoreNodes": [ - "code" - ] - } - ], - "@intlify/vue-i18n/no-unused-keys": [ - "error", - { - "extensions": [ - ".js", - ".ts", - ".vue" - ] - } - ] - } - }, - "prettier": { - "trailingComma": "es5", - "printWidth": 120, - "tabWidth": 2, - "semi": false, - "singleQuote": true - }, "web-types": "./web-types.json" }