@lntvow/eslint-config 9.9.0 → 9.9.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs +1 -1
- package/dist/index.js +1 -1
- package/package.json +2 -2
package/dist/index.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var Se=Object.create;var h=Object.defineProperty;var Ie=Object.getOwnPropertyDescriptor;var Le=Object.getOwnPropertyNames;var Pe=Object.getPrototypeOf,Fe=Object.prototype.hasOwnProperty;var je=(e,t)=>{for(var r in t)h(e,r,{get:t[r],enumerable:!0})},J=(e,t,r,i)=>{if(t&&typeof t=="object"||typeof t=="function")for(let s of Le(t))!Fe.call(e,s)&&s!==r&&h(e,s,{get:()=>t[s],enumerable:!(i=Ie(t,s))||i.enumerable});return e};var n=(e,t,r)=>(r=e!=null?Se(Pe(e)):{},J(t||!e||!e.__esModule?h(r,"default",{value:e,enumerable:!0}):r,e)),ke=e=>J(h({},"__esModule",{value:!0}),e);var ot={};je(ot,{GLOB_ALL_SRC:()=>Ye,GLOB_ASTRO:()=>De,GLOB_CSS:()=>Re,GLOB_EXCLUDE:()=>j,GLOB_GRAPHQL:()=>Ke,GLOB_HTML:()=>re,GLOB_JS:()=>Ge,GLOB_JSON:()=>H,GLOB_JSON5:()=>Q,GLOB_JSONC:()=>Ve,GLOB_JSX:()=>Ee,GLOB_LESS:()=>Ue,GLOB_MARKDOWN:()=>P,GLOB_MARKDOWN_CODE:()=>Xe,GLOB_MARKDOWN_IN_MARKDOWN:()=>Me,GLOB_POSTCSS:()=>qe,GLOB_SCSS:()=>Ae,GLOB_SRC:()=>m,GLOB_SRC_EXT:()=>u,GLOB_STYLE:()=>z,GLOB_SVELTE:()=>Z,GLOB_TESTS:()=>F,GLOB_TOML:()=>$e,GLOB_TS:()=>Be,GLOB_TSX:()=>Ne,GLOB_VUE:()=>O,GLOB_XML:()=>te,GLOB_YAML:()=>ee,custom:()=>L,disables:()=>k,getVueVersion:()=>Oe,gitignore:()=>B,ignores:()=>N,imports:()=>R,javascript:()=>q,lntvow:()=>Ce,prettier:()=>U,regexp:()=>V,renameRules:()=>w,stylistic:()=>M,test:()=>$,typescript:()=>D,vue:()=>X});module.exports=ke(ot);function w(e,t){return Object.fromEntries(Object.entries(e).map(([r,i])=>{for(let[s,p]of Object.entries(t))if(r.startsWith(`${s}/`))return[p+r.slice(s.length),i];return[r,i]}))}var W=n(require("@lntvow/eslint-plugin"),1);async function L(){return[{name:"lntvow/custom",plugins:{lntvow:W.default}}]}var u="?([cm])[jt]s?(x)",m="**/*.?([cm])[jt]s?(x)",Ge="**/*.?([cm])js",Ee="**/*.?([cm])jsx",Be="**/*.?([cm])ts",Ne="**/*.?([cm])tsx",z="**/*.{c,le,sc}ss",Re="**/*.css",qe="**/*.{p,post}css",Ue="**/*.less",Ae="**/*.scss",H="**/*.json",Q="**/*.json5",Ve="**/*.jsonc",P="**/*.md",Me="**/*.md/*.md",Z="**/*.svelte",O="**/*.vue",ee="**/*.y?(a)ml",$e="**/*.toml",te="**/*.xml",re="**/*.htm?(l)",De="**/*.astro",Ke="**/*.{g,graph}ql",Xe=`${P}/${m}`,F=[`**/__tests__/**/*.${u}`,`**/*.spec.${u}`,`**/*.test.${u}`,`**/*.bench.${u}`,`**/*.benchmark.${u}`],Ye=[m,z,H,Q,P,Z,O,ee,te,re],j=["**/node_modules","**/dist","**/package-lock.json","**/yarn.lock","**/pnpm-lock.yaml","**/bun.lockb","**/output","**/coverage","**/temp","**/.temp","**/tmp","**/.tmp","**/.history","**/.vitepress/cache","**/.nuxt","**/.next","**/.svelte-kit","**/.vercel","**/.changeset","**/.idea","**/.cache","**/.output","**/.vite-inspect","**/.yarn","**/vite.config.*.timestamp-*","**/CHANGELOG*.md","**/*.min.*","**/LICENSE*","**/__snapshots__","**/auto-import?(s).d.ts","**/components.d.ts"];async function k(){return[{files:[`scripts/${m}`],name:"lntvow/disables/scripts",rules:{"no-console":"off"}},{files:[`cli/${m}`,`cli.${u}`],name:"lntvow/disables/cli",rules:{"no-console":"off"}},{files:["**/*.d.?([cm])ts"],name:"lntvow/disables/dts",rules:{}},{files:["**/*.{test,spec}.([tj])s?(x)"],name:"lntvow/disables/test",rules:{"no-unused-expressions":"off"}},{files:["**/*.js","**/*.cjs"],name:"lntvow/disables/cjs",rules:{"ts/no-require-imports":"off"}}]}var ce=n(require("fs"),1);var g=n(require("path"),1);var oe=n(require("process"),1),ne=n(require("path"),1),T=n(require("fs"),1),se=require("url");var ie={directory:"isDirectory",file:"isFile"};function Je(e){if(!Object.hasOwnProperty.call(ie,e))throw new Error(`Invalid type specified: ${e}`)}var We=(e,t)=>t[ie[e]](),ze=e=>e instanceof URL?(0,se.fileURLToPath)(e):e;function G(e,{cwd:t=oe.default.cwd(),type:r="file",allowSymlinks:i=!0}={}){Je(r),t=ze(t);let s=i?T.default.statSync:T.default.lstatSync;for(let p of e)try{let c=s(ne.default.resolve(t,p),{throwIfNoEntry:!1});if(!c)continue;if(We(r,c))return p}catch{}}var ae=require("url");function E(e){return e instanceof URL?(0,ae.fileURLToPath)(e):e}var pe=n(require("fs"),1);var He=Symbol("findUpStop");function Qe(e,t={}){let r=g.default.resolve(E(t.cwd)??""),{root:i}=g.default.parse(r),s=g.default.resolve(r,E(t.stopAt)??i),p=t.limit??Number.POSITIVE_INFINITY,c=[e].flat(),d=f=>{if(typeof e!="function")return G(c,f);let a=e(f.cwd);return typeof a=="string"?G([a],f):a},v=[];for(;;){let f=d({...t,cwd:r});if(f===He||(f&&v.push(g.default.resolve(r,f)),r===s||v.length>=p))break;r=g.default.dirname(r)}return v}function fe(e,t={}){return Qe(e,{...t,limit:1})[0]}var le=require("@lntvow/utils"),ue=n(require("parse-gitignore"),1);async function B(e){let{name:t=".gitignore",root:r=!1,files:i=r?t:fe(t)||[]}=e,s=(0,le.castArray)(i),p=[];for(let c of s)try{let d=ce.default.readFileSync(c,"utf8"),v=(0,ue.default)(d).globs();for(let f of v)f.type==="ignore"?p.push(...f.patterns):f.type==="unignore"&&p.push(...f.patterns.map(a=>`!${a}`))}catch{throw new Error(`Failed to read file: ${c}`)}return[{ignores:p}]}async function N(e=[]){return[{name:"lntvow/ignores",ignores:[...j,...e]}]}var me=n(require("eslint-plugin-import-x"),1);async function R(e){let{typescript:t}=e;return[{name:"lntvow/imports/rules",plugins:{import:me.default},rules:{"import/no-unresolved":"error","import/first":"error","import/newline-after-import":"error","import/no-duplicates":"error","import/order":"error"},settings:{"import-x/resolver":{alias:{map:[["@","./src"]],extensions:[".ts",".js",".jsx",".tsx",".d.ts"]},node:!0}}}]}var de=n(require("@eslint/js"),1),_=n(require("globals"),1);async function q(e={}){let{overrides:t={}}=e;return[{name:"lntvow/javascript/rules",languageOptions:{ecmaVersion:2022,sourceType:"module",parserOptions:{ecmaVersion:2022,sourceType:"module",ecmaFeatures:{jsx:!0}},globals:{..._.default.browser,..._.default.es2021,..._.default.node,document:"readonly",navigator:"readonly",window:"readonly"}},linterOptions:{reportUnusedDisableDirectives:!0},rules:{...de.default.configs.all.rules,"no-unused-vars":"warn","no-use-before-define":["error",{functions:!1,variables:!1}],"no-useless-assignment":"off","require-atomic-updates":"off",camelcase:"warn","capitalized-comments":"off","class-methods-use-this":"off",complexity:"off","consistent-return":"off",curly:["error","multi-line"],"func-names":"off","func-style":"off","guard-for-in":"off","id-denylist":"off","id-length":"off","id-match":"off","init-declarations":"off","max-classes-per-file":"off","max-depth":"off","max-lines":"off","max-lines-per-function":"off","max-nested-callbacks":"off","max-params":"off","max-statements":"off","new-cap":["error",{capIsNew:!1}],"no-bitwise":"off","no-case-declarations":"off","no-console":"warn","no-continue":"off","no-empty":["error",{allowEmptyCatch:!0}],"no-implicit-coercion":"off","no-implicit-globals":"off","no-magic-numbers":"off","no-nested-ternary":"off","no-new":"off","no-param-reassign":"off","no-plusplus":"off","no-restricted-exports":"off","no-restricted-globals":["error",{message:"Use `globalThis` instead.",name:"global"},{message:"Use `globalThis` instead.",name:"self"}],"no-restricted-imports":"off","no-restricted-properties":["error",{message:"Use `Object.getPrototypeOf` or `Object.setPrototypeOf` instead.",property:"__proto__"},{message:"Use `Object.defineProperty` instead.",property:"__defineGetter__"},{message:"Use `Object.defineProperty` instead.",property:"__defineSetter__"},{message:"Use `Object.getOwnPropertyDescriptor` instead.",property:"__lookupGetter__"},{message:"Use `Object.getOwnPropertyDescriptor` instead.",property:"__lookupSetter__"}],"no-restricted-syntax":"off","no-shadow":"off","no-ternary":"off","no-throw-literal":"off","no-undefined":"off","no-underscore-dangle":"off","no-unused-expressions":["error",{allowShortCircuit:!0,allowTaggedTemplates:!0,allowTernary:!0}],"no-void":"off","no-warning-comments":"off","one-var":"off","prefer-destructuring":"off","prefer-exponentiation-operator":"off","prefer-promise-reject-errors":"off",radix:"off","require-await":"off","require-unicode-regexp":"off","sort-imports":"off","sort-keys":"off","sort-vars":"off",strict:"off",...t}}]}var ve=n(require("eslint-plugin-prettier"),1),ye=n(require("eslint-config-prettier"),1);async function U(){return[{name:"lntvow/prettier/rules",plugins:{prettier:ve.default},rules:{...ye.default.rules,"prettier/prettier":"warn"}}]}var A=require("eslint-plugin-regexp");async function V(e={}){let{overrides:t}=e,r=A.configs["flat/recommended"].plugins.regexp,{rules:i}=A.configs["flat/recommended"];return[{name:"lntvow/regexp/rules",plugins:{regexp:r},rules:{...i,...t}}]}var ge=n(require("@stylistic/eslint-plugin"),1);async function M(e={}){let{overrides:t={}}=e;return[{name:"lntvow/stylistic/rules",plugins:{style:ge.default},rules:{"style/spaced-comment":"error","style/padding-line-between-statements":["error",{blankLine:"always",prev:"*",next:"cjs-export"},{blankLine:"always",prev:"*",next:"export"},{blankLine:"always",prev:"*",next:"function"},{blankLine:"always",prev:"*",next:["interface","type"]},{blankLine:"never",prev:"function-overload",next:"function"}],"style/lines-around-comment":[2,{beforeBlockComment:!0,allowBlockStart:!0,allowObjectStart:!0,allowInterfaceStart:!0,allowTypeStart:!0,allowArrayStart:!0,allowClassStart:!0,allowModuleStart:!0}],...t}}]}var xe=n(require("eslint-plugin-vitest"),1);async function $(e={}){let{overrides:t}=e;return[{name:"lntvow/test/setup",plugins:{test:xe.default}},{name:"lntvow/test/rules",files:[...F],rules:{"lntvow/newline-before-describe-test":"error",...t}}]}var C=n(require("@typescript-eslint/eslint-plugin"),1),be=n(require("@typescript-eslint/parser"),1);async function D(e={}){let{componentExts:t=[],overrides:r={},parserOptions:i={}}=e,s=[m,...t.map(p=>`**/*.${p}`)];return[{name:"lntvow/typescript/setup",plugins:{ts:C.default}},{name:"lntvow/typescript/rules",languageOptions:{parser:be.default,parserOptions:{sourceType:"module"}},files:s,rules:{...w(C.default.configs["eslint-recommended"].overrides[0].rules,{"@typescript-eslint":"ts"}),...w(C.default.configs.strict.rules,{"@typescript-eslint":"ts"}),"ts/no-non-null-assertion":"off","ts/no-explicit-any":"off","ts/ban-ts-comment":"off","ts/no-unused-vars":"warn","no-use-before-define":"off","ts/no-use-before-define":["error",{functions:!1,variables:!1}],...r}}]}var he=require("local-pkg"),K=n(require("@typescript-eslint/parser"),1),we=n(require("vue-eslint-parser"),1),l=n(require("eslint-plugin-vue"),1);var Ze={...l.default.configs["vue3-essential"].rules,...l.default.configs["vue3-strongly-recommended"].rules,...l.default.configs["vue3-recommended"].rules,"vue/block-lang":["error",{script:{lang:["ts","tsx"]}}],"vue/block-order":["error",{order:["script[setup]","template","style[scoped]"]}],"vue/component-api-style":"error"},et={...l.default.configs.essential.rules,...l.default.configs["strongly-recommended"].rules,...l.default.configs.recommended.rules,"vue/block-lang":["error",{script:{allowNoLang:!0}}],"vue/block-order":["error",{order:[["script","template"],"style[scoped]"]}]};async function X(e={}){let{overrides:t={},vueVersion:r=Oe()}=e;return[{name:"lntvow/vue/setup",plugins:{vue:l.default}},{name:"lntvow/vue/rules",languageOptions:{parser:we.default,parserOptions:{ecmaFeatures:{jsx:!0},parser:{ts:K.default,tsx:K.default},sourceType:"module"}},processor:l.default.processors[".vue"],files:[O],rules:{...l.default.configs.base.rules,...r===3?Ze:et,"vue/multi-word-component-names":"off","vue/attribute-hyphenation":"off","vue/html-indent":"off","vue/html-self-closing":["error",{html:{void:"always",normal:"always",component:"always"},svg:"always",math:"always"}],"vue/max-attributes-per-line":"off","vue/singleline-html-element-content-newline":"off","vue/v-on-event-hyphenation":"off","vue/block-tag-newline":"error","vue/component-name-in-template-casing":["error","PascalCase",{ignores:["/-/"]}],"vue/component-options-name-casing":"error","vue/custom-event-name-casing":"error","vue/define-emits-declaration":"error","vue/define-macros-order":"error","vue/define-props-declaration":"error","vue/enforce-style-attribute":"error","vue/html-button-has-type":"off","vue/html-comment-content-newline":"error","vue/html-comment-content-spacing":"error","vue/html-comment-indent":"off","vue/match-component-file-name":["error",{extensions:["jsx","tsx"],shouldMatchCase:!0}],"vue/match-component-import-name":"error","vue/max-lines-per-block":"off","vue/max-props":"off","vue/max-template-depth":"off","vue/new-line-between-multi-line-property":"off","vue/next-tick-style":"off","vue/no-bare-strings-in-template":"off","vue/no-boolean-default":"off","vue/no-deprecated-model-definition":"error","vue/no-duplicate-attr-inheritance":"error","vue/no-empty-component-block":"off","vue/no-multiple-objects-in-class":"error","vue/no-potential-component-option-typo":"error","vue/no-ref-object-reactivity-loss":"error","vue/no-required-prop-with-default":"error","vue/no-restricted-block":"off","vue/no-restricted-call-after-await":"off","vue/no-restricted-class":"off","vue/no-restricted-component-names":"off","vue/no-restricted-component-options":"off","vue/no-restricted-custom-event":"off","vue/no-restricted-html-elements":"off","vue/no-restricted-props":"off","vue/no-restricted-static-attribute":"off","vue/no-restricted-v-bind":"off","vue/no-root-v-if":"off","vue/no-setup-props-reactivity-loss":"error","vue/no-static-inline-styles":"error","vue/no-template-target-blank":"error","vue/no-this-in-before-route-enter":"error","vue/no-undef-components":"off","vue/no-undef-properties":"error","vue/no-unsupported-features":"off","vue/no-unused-emit-declarations":"error","vue/no-unused-properties":["warn",{groups:["props","data","computed","methods","setup"]}],"vue/no-unused-refs":"error","vue/no-use-v-else-with-v-for":"error","vue/no-useless-mustaches":"error","vue/no-useless-v-bind":"error","vue/no-v-text":"error","vue/padding-line-between-blocks":"error","vue/padding-line-between-tags":["error",[{blankLine:"never",prev:"*",next:"*"}]],"vue/padding-lines-in-component-definition":["error",{betweenOptions:"never"}],"vue/prefer-define-options":"error","vue/prefer-prop-type-boolean-first":"error","vue/prefer-separate-static-class":"error","vue/prefer-true-attribute-shorthand":"error","vue/require-default-export":"off","vue/require-direct-export":"error","vue/require-emit-validator":"off","vue/require-explicit-slots":"off","vue/require-expose":"error","vue/require-macro-variable-name":"error","vue/require-name-property":"off","vue/require-prop-comment":"off","vue/require-typed-object-prop":"error","vue/require-typed-ref":"error","vue/script-indent":"off","vue/sort-keys":"off","vue/static-class-names-order":"error","vue/v-for-delimiter-style":"error","vue/v-on-handler-style":"off","vue/valid-define-options":"error","vue/array-bracket-newline":"off","vue/array-bracket-spacing":"off","vue/array-element-newline":"off","vue/arrow-spacing":"off","vue/block-spacing":"off","vue/brace-style":"off","vue/camelcase":"error","vue/comma-dangle":"off","vue/comma-spacing":"off","vue/comma-style":"off","vue/dot-location":"off","vue/dot-notation":"error","vue/eqeqeq":"error","vue/func-call-spacing":"off","vue/key-spacing":"off","vue/keyword-spacing":"off","vue/max-len":"off","vue/multiline-ternary":"off","vue/no-console":"off","vue/no-constant-condition":"error","vue/no-extra-parens":"off","vue/no-empty-pattern":"error","vue/no-irregular-whitespace":"error","vue/no-loss-of-precision":"off","vue/no-restricted-syntax":"off","vue/no-sparse-arrays":"error","vue/no-useless-concat":"error","vue/object-curly-newline":"off","vue/object-curly-spacing":"off","vue/object-property-newline":"off","vue/object-shorthand":"error","vue/operator-linebreak":"off","vue/prefer-template":"error","vue/quote-props":"off","vue/space-in-parens":"off","vue/space-infix-ops":"off","vue/space-unary-ops":"off","vue/template-curly-spacing":"off",...t}}]}function Oe(){let e=(0,he.getPackageInfoSync)("vue",{paths:[process.cwd()]});return e&&e.version?+e.version[0]:3}var Te=require("eslint-flat-config-utils"),_e=require("@lntvow/utils"),S=require("local-pkg");var tt=["name","files","ignores","languageOptions","linterOptions","processor","plugins","rules","settings"],rt={"@stylistic":"style","@typescript-eslint":"typescript","import-x":"import",vitest:"test"};function Ce(e={},...t){if("files"in e)throw new Error('[@lntvow/eslint-config] The first argument should not contain the "files" property as the options are supposed to be global. Place it in the second or later config instead.');let{autoRenamePlugins:r=!0,componentExts:i=[],gitignore:s=!0,regexp:p=!0,typescript:c=(0,S.isPackageExists)("typescript"),vue:d=["vue","nuxt","vitepress"].some(b=>(0,S.isPackageExists)(b)),test:v=(0,S.isPackageExists)("vitest"),stylistic:f=!0}=e,a=[];a.push(N(e.ignores),L(),q({...y(e,"javascript")}),R({typescript:!!c})),s&&a.push(B({...y(e,"gitignore")})),d&&i.push("vue"),c&&a.push(D({...y(e,"typescript"),componentExts:i})),d&&a.push(X({...y(e,"vue")})),p&&a.push(V({...y(e,"regexp")})),v&&a.push($({...y(e,"test")})),f&&a.push(M({...y(e,"stylistic")})),a.push(k(),U());let Y=tt.reduce((b,I)=>(I in e&&(b[I]=e[I]),b),{});Object.keys(Y).length&&a.push([Y]);let x=new Te.FlatConfigComposer;return x=x.append(...a,...t),r&&(x=x.renamePlugins(rt)),x}function y(e,t){return(0,_e.isBoolean)(e[t])?{}:e[t]||{}}0&&(module.exports={GLOB_ALL_SRC,GLOB_ASTRO,GLOB_CSS,GLOB_EXCLUDE,GLOB_GRAPHQL,GLOB_HTML,GLOB_JS,GLOB_JSON,GLOB_JSON5,GLOB_JSONC,GLOB_JSX,GLOB_LESS,GLOB_MARKDOWN,GLOB_MARKDOWN_CODE,GLOB_MARKDOWN_IN_MARKDOWN,GLOB_POSTCSS,GLOB_SCSS,GLOB_SRC,GLOB_SRC_EXT,GLOB_STYLE,GLOB_SVELTE,GLOB_TESTS,GLOB_TOML,GLOB_TS,GLOB_TSX,GLOB_VUE,GLOB_XML,GLOB_YAML,custom,disables,getVueVersion,gitignore,ignores,imports,javascript,lntvow,prettier,regexp,renameRules,stylistic,test,typescript,vue});
|
|
1
|
+
"use strict";var Ce=Object.create;var b=Object.defineProperty;var Se=Object.getOwnPropertyDescriptor;var Ie=Object.getOwnPropertyNames;var Le=Object.getPrototypeOf,Pe=Object.prototype.hasOwnProperty;var Fe=(e,t)=>{for(var r in t)b(e,r,{get:t[r],enumerable:!0})},Y=(e,t,r,s)=>{if(t&&typeof t=="object"||typeof t=="function")for(let n of Ie(t))!Pe.call(e,n)&&n!==r&&b(e,n,{get:()=>t[n],enumerable:!(s=Se(t,n))||s.enumerable});return e};var o=(e,t,r)=>(r=e!=null?Ce(Le(e)):{},Y(t||!e||!e.__esModule?b(r,"default",{value:e,enumerable:!0}):r,e)),je=e=>Y(b({},"__esModule",{value:!0}),e);var rt={};Fe(rt,{GLOB_ALL_SRC:()=>Xe,GLOB_ASTRO:()=>$e,GLOB_CSS:()=>Ne,GLOB_EXCLUDE:()=>F,GLOB_GRAPHQL:()=>De,GLOB_HTML:()=>te,GLOB_JS:()=>ke,GLOB_JSON:()=>z,GLOB_JSON5:()=>H,GLOB_JSONC:()=>Ae,GLOB_JSX:()=>Ge,GLOB_LESS:()=>qe,GLOB_MARKDOWN:()=>L,GLOB_MARKDOWN_CODE:()=>Ke,GLOB_MARKDOWN_IN_MARKDOWN:()=>Ve,GLOB_POSTCSS:()=>Re,GLOB_SCSS:()=>Ue,GLOB_SRC:()=>u,GLOB_SRC_EXT:()=>l,GLOB_STYLE:()=>W,GLOB_SVELTE:()=>Q,GLOB_TESTS:()=>P,GLOB_TOML:()=>Me,GLOB_TS:()=>Ee,GLOB_TSX:()=>Be,GLOB_VUE:()=>w,GLOB_XML:()=>ee,GLOB_YAML:()=>Z,custom:()=>I,disables:()=>j,getVueVersion:()=>we,gitignore:()=>E,ignores:()=>B,imports:()=>N,javascript:()=>R,lntvow:()=>_e,prettier:()=>q,regexp:()=>A,renameRules:()=>h,stylistic:()=>V,test:()=>M,typescript:()=>$,vue:()=>K});module.exports=je(rt);function h(e,t){return Object.fromEntries(Object.entries(e).map(([r,s])=>{for(let[n,a]of Object.entries(t))if(r.startsWith(`${n}/`))return[a+r.slice(n.length),s];return[r,s]}))}var J=o(require("@lntvow/eslint-plugin"),1);async function I(){return[{name:"lntvow/custom",plugins:{lntvow:J.default}}]}var l="?([cm])[jt]s?(x)",u="**/*.?([cm])[jt]s?(x)",ke="**/*.?([cm])js",Ge="**/*.?([cm])jsx",Ee="**/*.?([cm])ts",Be="**/*.?([cm])tsx",W="**/*.{c,le,sc}ss",Ne="**/*.css",Re="**/*.{p,post}css",qe="**/*.less",Ue="**/*.scss",z="**/*.json",H="**/*.json5",Ae="**/*.jsonc",L="**/*.md",Ve="**/*.md/*.md",Q="**/*.svelte",w="**/*.vue",Z="**/*.y?(a)ml",Me="**/*.toml",ee="**/*.xml",te="**/*.htm?(l)",$e="**/*.astro",De="**/*.{g,graph}ql",Ke=`${L}/${u}`,P=[`**/__tests__/**/*.${l}`,`**/*.spec.${l}`,`**/*.test.${l}`,`**/*.bench.${l}`,`**/*.benchmark.${l}`],Xe=[u,W,z,H,L,Q,w,Z,ee,te],F=["**/node_modules","**/dist","**/package-lock.json","**/yarn.lock","**/pnpm-lock.yaml","**/bun.lockb","**/output","**/coverage","**/temp","**/.temp","**/tmp","**/.tmp","**/.history","**/.vitepress/cache","**/.nuxt","**/.next","**/.svelte-kit","**/.vercel","**/.changeset","**/.idea","**/.cache","**/.output","**/.vite-inspect","**/.yarn","**/vite.config.*.timestamp-*","**/CHANGELOG*.md","**/*.min.*","**/LICENSE*","**/__snapshots__","**/auto-import?(s).d.ts","**/components.d.ts"];async function j(){return[{files:[`scripts/${u}`],name:"lntvow/disables/scripts",rules:{"no-console":"off"}},{files:[`cli/${u}`,`cli.${l}`],name:"lntvow/disables/cli",rules:{"no-console":"off"}},{files:["**/*.d.?([cm])ts"],name:"lntvow/disables/dts",rules:{}},{files:["**/*.{test,spec}.([tj])s?(x)"],name:"lntvow/disables/test",rules:{"no-unused-expressions":"off"}},{files:["**/*.js","**/*.cjs"],name:"lntvow/disables/cjs",rules:{"ts/no-require-imports":"off"}}]}var fe=o(require("fs"),1);var y=o(require("path"),1);var re=o(require("process"),1),oe=o(require("path"),1),O=o(require("fs"),1),ne=require("url");var se={directory:"isDirectory",file:"isFile"};function Ye(e){if(!Object.hasOwnProperty.call(se,e))throw new Error(`Invalid type specified: ${e}`)}var Je=(e,t)=>t[se[e]](),We=e=>e instanceof URL?(0,ne.fileURLToPath)(e):e;function k(e,{cwd:t=re.default.cwd(),type:r="file",allowSymlinks:s=!0}={}){Ye(r),t=We(t);let n=s?O.default.statSync:O.default.lstatSync;for(let a of e)try{let f=n(oe.default.resolve(t,a),{throwIfNoEntry:!1});if(!f)continue;if(Je(r,f))return a}catch{}}var ie=require("url");function G(e){return e instanceof URL?(0,ie.fileURLToPath)(e):e}var ae=o(require("fs"),1);var ze=Symbol("findUpStop");function He(e,t={}){let r=y.default.resolve(G(t.cwd)??""),{root:s}=y.default.parse(r),n=y.default.resolve(r,G(t.stopAt)??s),a=t.limit??Number.POSITIVE_INFINITY,f=[e].flat(),m=p=>{if(typeof e!="function")return k(f,p);let i=e(p.cwd);return typeof i=="string"?k([i],p):i},d=[];for(;;){let p=m({...t,cwd:r});if(p===ze||(p&&d.push(y.default.resolve(r,p)),r===n||d.length>=a))break;r=y.default.dirname(r)}return d}function pe(e,t={}){return He(e,{...t,limit:1})[0]}var ce=require("@lntvow/utils"),le=o(require("parse-gitignore"),1);async function E(e){let{name:t=".gitignore",root:r=!1,files:s=r?t:pe(t)||[]}=e,n=(0,ce.castArray)(s),a=[];for(let f of n)try{let m=fe.default.readFileSync(f,"utf8"),d=(0,le.default)(m).globs();for(let p of d)p.type==="ignore"?a.push(...p.patterns):p.type==="unignore"&&a.push(...p.patterns.map(i=>`!${i}`))}catch{throw new Error(`Failed to read file: ${f}`)}return[{ignores:a}]}async function B(e=[]){return[{name:"lntvow/ignores",ignores:[...F,...e]}]}var ue=o(require("eslint-plugin-import-x"),1);async function N(e){let{typescript:t}=e;return[{name:"lntvow/imports/rules",plugins:{import:ue.default},rules:{"import/no-unresolved":"error","import/first":"error","import/newline-after-import":"error","import/no-duplicates":"error","import/order":"error"},settings:{"import-x/resolver":{alias:{map:[["@","./src"]],extensions:[".ts",".js",".jsx",".tsx",".d.ts"]},node:!0}}}]}var me=o(require("@eslint/js"),1),T=o(require("globals"),1);async function R(e={}){let{overrides:t={}}=e;return[{name:"lntvow/javascript/rules",languageOptions:{ecmaVersion:2022,sourceType:"module",parserOptions:{ecmaVersion:2022,sourceType:"module",ecmaFeatures:{jsx:!0}},globals:{...T.default.browser,...T.default.es2021,...T.default.node,document:"readonly",navigator:"readonly",window:"readonly"}},linterOptions:{reportUnusedDisableDirectives:!0},rules:{...me.default.configs.all.rules,"no-unused-vars":"warn","no-use-before-define":["error",{functions:!1,variables:!1}],"no-useless-assignment":"off","require-atomic-updates":"off",camelcase:"warn","capitalized-comments":"off","class-methods-use-this":"off",complexity:"off","consistent-return":"off",curly:["error","multi-line"],"func-names":"off","func-style":"off","guard-for-in":"off","id-denylist":"off","id-length":"off","id-match":"off","init-declarations":"off","max-classes-per-file":"off","max-depth":"off","max-lines":"off","max-lines-per-function":"off","max-nested-callbacks":"off","max-params":"off","max-statements":"off","new-cap":["error",{capIsNew:!1}],"no-bitwise":"off","no-case-declarations":"off","no-console":"warn","no-continue":"off","no-empty":["error",{allowEmptyCatch:!0}],"no-implicit-coercion":"off","no-implicit-globals":"off","no-magic-numbers":"off","no-nested-ternary":"off","no-new":"off","no-param-reassign":"off","no-plusplus":"off","no-restricted-exports":"off","no-restricted-globals":["error",{message:"Use `globalThis` instead.",name:"global"},{message:"Use `globalThis` instead.",name:"self"}],"no-restricted-imports":"off","no-restricted-properties":["error",{message:"Use `Object.getPrototypeOf` or `Object.setPrototypeOf` instead.",property:"__proto__"},{message:"Use `Object.defineProperty` instead.",property:"__defineGetter__"},{message:"Use `Object.defineProperty` instead.",property:"__defineSetter__"},{message:"Use `Object.getOwnPropertyDescriptor` instead.",property:"__lookupGetter__"},{message:"Use `Object.getOwnPropertyDescriptor` instead.",property:"__lookupSetter__"}],"no-restricted-syntax":"off","no-shadow":"off","no-ternary":"off","no-throw-literal":"off","no-undefined":"off","no-underscore-dangle":"off","no-unused-expressions":["error",{allowShortCircuit:!0,allowTaggedTemplates:!0,allowTernary:!0}],"no-void":"off","no-warning-comments":"off","one-var":"off","prefer-destructuring":"off","prefer-exponentiation-operator":"off","prefer-promise-reject-errors":"off",radix:"off","require-await":"off","require-unicode-regexp":"off","sort-imports":"off","sort-keys":"off","sort-vars":"off",strict:"off",...t}}]}var de=o(require("eslint-plugin-prettier"),1),ve=o(require("eslint-config-prettier"),1);async function q(){return[{name:"lntvow/prettier/rules",plugins:{prettier:de.default},rules:{...ve.default.rules,"prettier/prettier":"warn"}}]}var U=require("eslint-plugin-regexp");async function A(e={}){let{overrides:t}=e,r=U.configs["flat/recommended"].plugins.regexp,{rules:s}=U.configs["flat/recommended"];return[{name:"lntvow/regexp/rules",plugins:{regexp:r},rules:{...s,...t}}]}var ye=o(require("@stylistic/eslint-plugin"),1);async function V(e={}){let{overrides:t={}}=e;return[{name:"lntvow/stylistic/rules",plugins:{style:ye.default},rules:{"style/spaced-comment":"error","style/padding-line-between-statements":["error",{blankLine:"always",prev:"*",next:"cjs-export"},{blankLine:"always",prev:"*",next:"export"},{blankLine:"always",prev:"*",next:"function"},{blankLine:"always",prev:"*",next:["interface","type"]},{blankLine:"never",prev:"function-overload",next:"function"}],"style/lines-around-comment":[2,{beforeBlockComment:!0,allowBlockStart:!0,allowObjectStart:!0,allowInterfaceStart:!0,allowTypeStart:!0,allowArrayStart:!0,allowClassStart:!0,allowModuleStart:!0}],...t}}]}var ge=o(require("eslint-plugin-vitest"),1);async function M(e={}){let{overrides:t}=e;return[{name:"lntvow/test/setup",plugins:{test:ge.default}},{name:"lntvow/test/rules",files:[...P],rules:{"lntvow/newline-before-describe-test":"error",...t}}]}var _=o(require("@typescript-eslint/eslint-plugin"),1),xe=o(require("@typescript-eslint/parser"),1);async function $(e={}){let{componentExts:t=[],overrides:r={},parserOptions:s={}}=e,n=[u,...t.map(a=>`**/*.${a}`)];return[{name:"lntvow/typescript/setup",plugins:{ts:_.default}},{name:"lntvow/typescript/rules",languageOptions:{parser:xe.default,parserOptions:{sourceType:"module"}},files:n,rules:{...h(_.default.configs["eslint-recommended"].overrides[0].rules,{"@typescript-eslint":"ts"}),...h(_.default.configs.strict.rules,{"@typescript-eslint":"ts"}),"ts/no-non-null-assertion":"off","ts/no-explicit-any":"off","ts/ban-ts-comment":"off","ts/no-unused-vars":"warn","no-use-before-define":"off","ts/no-use-before-define":["error",{functions:!1,variables:!1}],...r}}]}var be=require("local-pkg"),D=o(require("@typescript-eslint/parser"),1),he=o(require("vue-eslint-parser"),1),c=o(require("eslint-plugin-vue"),1);var Qe={...c.default.configs["vue3-essential"].rules,...c.default.configs["vue3-strongly-recommended"].rules,...c.default.configs["vue3-recommended"].rules,"vue/block-lang":["error",{script:{lang:["ts","tsx"]}}],"vue/block-order":["error",{order:["script[setup]","template","style[scoped]"]}],"vue/component-api-style":"error"},Ze={...c.default.configs.essential.rules,...c.default.configs["strongly-recommended"].rules,...c.default.configs.recommended.rules,"vue/block-lang":["error",{script:{allowNoLang:!0}}],"vue/block-order":["error",{order:[["script","template"],"style[scoped]"]}]};async function K(e={}){let{overrides:t={},vueVersion:r=we()}=e;return[{name:"lntvow/vue/setup",plugins:{vue:c.default}},{name:"lntvow/vue/rules",languageOptions:{parser:he.default,parserOptions:{ecmaFeatures:{jsx:!0},parser:{ts:D.default,tsx:D.default},sourceType:"module"}},processor:c.default.processors[".vue"],files:[w],rules:{...c.default.configs.base.rules,...r===3?Qe:Ze,"vue/multi-word-component-names":"off","vue/attribute-hyphenation":"off","vue/html-indent":"off","vue/html-self-closing":["error",{html:{void:"always",normal:"always",component:"always"},svg:"always",math:"always"}],"vue/max-attributes-per-line":"off","vue/singleline-html-element-content-newline":"off","vue/v-on-event-hyphenation":"off","vue/block-tag-newline":"error","vue/component-name-in-template-casing":["error","PascalCase",{ignores:["/-/"]}],"vue/component-options-name-casing":"error","vue/custom-event-name-casing":"error","vue/define-emits-declaration":"error","vue/define-macros-order":"error","vue/define-props-declaration":"error","vue/enforce-style-attribute":"error","vue/html-button-has-type":"off","vue/html-comment-content-newline":"error","vue/html-comment-content-spacing":"error","vue/html-comment-indent":"off","vue/match-component-file-name":["error",{extensions:["jsx","tsx"],shouldMatchCase:!0}],"vue/match-component-import-name":"error","vue/max-lines-per-block":"off","vue/max-props":"off","vue/max-template-depth":"off","vue/new-line-between-multi-line-property":"off","vue/next-tick-style":"off","vue/no-bare-strings-in-template":"off","vue/no-boolean-default":"off","vue/no-deprecated-model-definition":"error","vue/no-duplicate-attr-inheritance":"error","vue/no-empty-component-block":"off","vue/no-multiple-objects-in-class":"error","vue/no-potential-component-option-typo":"error","vue/no-ref-object-reactivity-loss":"error","vue/no-required-prop-with-default":"error","vue/no-restricted-block":"off","vue/no-restricted-call-after-await":"off","vue/no-restricted-class":"off","vue/no-restricted-component-names":"off","vue/no-restricted-component-options":"off","vue/no-restricted-custom-event":"off","vue/no-restricted-html-elements":"off","vue/no-restricted-props":"off","vue/no-restricted-static-attribute":"off","vue/no-restricted-v-bind":"off","vue/no-root-v-if":"off","vue/no-setup-props-reactivity-loss":"error","vue/no-static-inline-styles":"error","vue/no-template-target-blank":"error","vue/no-this-in-before-route-enter":"error","vue/no-undef-components":"off","vue/no-undef-properties":"error","vue/no-unsupported-features":"off","vue/no-unused-emit-declarations":"error","vue/no-unused-properties":["warn",{groups:["props","data","computed","methods","setup"]}],"vue/no-unused-refs":"error","vue/no-use-v-else-with-v-for":"error","vue/no-useless-mustaches":"error","vue/no-useless-v-bind":"error","vue/no-v-text":"error","vue/padding-line-between-blocks":"error","vue/padding-line-between-tags":["error",[{blankLine:"never",prev:"*",next:"*"}]],"vue/padding-lines-in-component-definition":["error",{betweenOptions:"never"}],"vue/prefer-define-options":"error","vue/prefer-prop-type-boolean-first":"error","vue/prefer-separate-static-class":"error","vue/prefer-true-attribute-shorthand":"error","vue/require-default-export":"off","vue/require-direct-export":"error","vue/require-emit-validator":"off","vue/require-explicit-slots":"off","vue/require-expose":"error","vue/require-macro-variable-name":"error","vue/require-name-property":"off","vue/require-prop-comment":"off","vue/require-typed-object-prop":"error","vue/require-typed-ref":"error","vue/script-indent":"off","vue/sort-keys":"off","vue/static-class-names-order":"error","vue/v-for-delimiter-style":"error","vue/v-on-handler-style":"off","vue/valid-define-options":"error","vue/array-bracket-newline":"off","vue/array-bracket-spacing":"off","vue/array-element-newline":"off","vue/arrow-spacing":"off","vue/block-spacing":"off","vue/brace-style":"off","vue/camelcase":"error","vue/comma-dangle":"off","vue/comma-spacing":"off","vue/comma-style":"off","vue/dot-location":"off","vue/dot-notation":"error","vue/eqeqeq":"error","vue/func-call-spacing":"off","vue/key-spacing":"off","vue/keyword-spacing":"off","vue/max-len":"off","vue/multiline-ternary":"off","vue/no-console":"off","vue/no-constant-condition":"error","vue/no-extra-parens":"off","vue/no-empty-pattern":"error","vue/no-irregular-whitespace":"error","vue/no-loss-of-precision":"off","vue/no-restricted-syntax":"off","vue/no-sparse-arrays":"error","vue/no-useless-concat":"error","vue/object-curly-newline":"off","vue/object-curly-spacing":"off","vue/object-property-newline":"off","vue/object-shorthand":"error","vue/operator-linebreak":"off","vue/prefer-template":"error","vue/quote-props":"off","vue/space-in-parens":"off","vue/space-infix-ops":"off","vue/space-unary-ops":"off","vue/template-curly-spacing":"off",...t}}]}function we(){let e=(0,be.getPackageInfoSync)("vue",{paths:[process.cwd()]});return e&&e.version?+e.version[0]:3}var Oe=require("eslint-flat-config-utils"),Te=require("@lntvow/utils"),C=require("local-pkg");var et=["name","files","ignores","languageOptions","linterOptions","processor","plugins","rules","settings"],tt={"@stylistic":"style","@typescript-eslint":"typescript","import-x":"import",vitest:"test"};function _e(e={},...t){if("files"in e)throw new Error('[@lntvow/eslint-config] The first argument should not contain the "files" property as the options are supposed to be global. Place it in the second or later config instead.');let{autoRenamePlugins:r=!0,componentExts:s=[],gitignore:n=!0,regexp:a=!0,typescript:f=(0,C.isPackageExists)("typescript"),vue:m=["vue","nuxt","vitepress"].some(x=>(0,C.isPackageExists)(x)),test:d=(0,C.isPackageExists)("vitest"),stylistic:p=!0}=e,i=[];i.push(B(e.ignores),I(),R({...v(e,"javascript")}),N({typescript:!!f})),n&&i.push(E({...v(e,"gitignore")})),m&&s.push("vue"),f&&i.push($({...v(e,"typescript"),componentExts:s})),m&&i.push(K({...v(e,"vue")})),a&&i.push(A({...v(e,"regexp")})),d&&i.push(M({...v(e,"test")})),p&&i.push(V({...v(e,"stylistic")})),i.push(j(),q());let X=et.reduce((x,S)=>(S in e&&(x[S]=e[S]),x),{});Object.keys(X).length&&i.push([X]);let g=new Oe.FlatConfigComposer;return g=g.append(...i,...t),r&&(g=g.renamePlugins(tt)),g}function v(e,t){return(0,Te.isBoolean)(e[t])?{}:e[t]||{}}0&&(module.exports={GLOB_ALL_SRC,GLOB_ASTRO,GLOB_CSS,GLOB_EXCLUDE,GLOB_GRAPHQL,GLOB_HTML,GLOB_JS,GLOB_JSON,GLOB_JSON5,GLOB_JSONC,GLOB_JSX,GLOB_LESS,GLOB_MARKDOWN,GLOB_MARKDOWN_CODE,GLOB_MARKDOWN_IN_MARKDOWN,GLOB_POSTCSS,GLOB_SCSS,GLOB_SRC,GLOB_SRC_EXT,GLOB_STYLE,GLOB_SVELTE,GLOB_TESTS,GLOB_TOML,GLOB_TS,GLOB_TSX,GLOB_VUE,GLOB_XML,GLOB_YAML,custom,disables,getVueVersion,gitignore,ignores,imports,javascript,lntvow,prettier,regexp,renameRules,stylistic,test,typescript,vue});
|
package/dist/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
function w(e,t){return Object.fromEntries(Object.entries(e).map(([r,i])=>{for(let[f,a]of Object.entries(t))if(r.startsWith(`${f}/`))return[a+r.slice(f.length),i];return[r,i]}))}import W from"@lntvow/eslint-plugin";async function P(){return[{name:"lntvow/custom",plugins:{lntvow:W}}]}var d="?([cm])[jt]s?(x)",v="**/*.?([cm])[jt]s?(x)",Re="**/*.?([cm])js",qe="**/*.?([cm])jsx",Ue="**/*.?([cm])ts",Ae="**/*.?([cm])tsx",z="**/*.{c,le,sc}ss",Ve="**/*.css",Me="**/*.{p,post}css",$e="**/*.less",De="**/*.scss",H="**/*.json",Q="**/*.json5",Ke="**/*.jsonc",F="**/*.md",Xe="**/*.md/*.md",Z="**/*.svelte",O="**/*.vue",ee="**/*.y?(a)ml",Ye="**/*.toml",te="**/*.xml",re="**/*.htm?(l)",Je="**/*.astro",We="**/*.{g,graph}ql",ze=`${F}/${v}`,j=[`**/__tests__/**/*.${d}`,`**/*.spec.${d}`,`**/*.test.${d}`,`**/*.bench.${d}`,`**/*.benchmark.${d}`],He=[v,z,H,Q,F,Z,O,ee,te,re],k=["**/node_modules","**/dist","**/package-lock.json","**/yarn.lock","**/pnpm-lock.yaml","**/bun.lockb","**/output","**/coverage","**/temp","**/.temp","**/tmp","**/.tmp","**/.history","**/.vitepress/cache","**/.nuxt","**/.next","**/.svelte-kit","**/.vercel","**/.changeset","**/.idea","**/.cache","**/.output","**/.vite-inspect","**/.yarn","**/vite.config.*.timestamp-*","**/CHANGELOG*.md","**/*.min.*","**/LICENSE*","**/__snapshots__","**/auto-import?(s).d.ts","**/components.d.ts"];async function G(){return[{files:[`scripts/${v}`],name:"lntvow/disables/scripts",rules:{"no-console":"off"}},{files:[`cli/${v}`,`cli.${d}`],name:"lntvow/disables/cli",rules:{"no-console":"off"}},{files:["**/*.d.?([cm])ts"],name:"lntvow/disables/dts",rules:{}},{files:["**/*.{test,spec}.([tj])s?(x)"],name:"lntvow/disables/test",rules:{"no-unused-expressions":"off"}},{files:["**/*.js","**/*.cjs"],name:"lntvow/disables/cjs",rules:{"ts/no-require-imports":"off"}}]}import ue from"fs";import x from"node:path";import oe from"node:process";import ne from"node:path";import E,{promises as mt}from"node:fs";import{fileURLToPath as se}from"node:url";var B={directory:"isDirectory",file:"isFile"};function ie(e){if(!Object.hasOwnProperty.call(B,e))throw new Error(`Invalid type specified: ${e}`)}var ae=(e,t)=>t[B[e]](),pe=e=>e instanceof URL?se(e):e;function T(e,{cwd:t=oe.cwd(),type:r="file",allowSymlinks:i=!0}={}){ie(r),t=pe(t);let f=i?E.statSync:E.lstatSync;for(let a of e)try{let c=f(ne.resolve(t,a),{throwIfNoEntry:!1});if(!c)continue;if(ae(r,c))return a}catch{}}import{fileURLToPath as fe}from"node:url";function _(e){return e instanceof URL?fe(e):e}var ce=Symbol("findUpStop");function le(e,t={}){let r=x.resolve(_(t.cwd)??""),{root:i}=x.parse(r),f=x.resolve(r,_(t.stopAt)??i),a=t.limit??Number.POSITIVE_INFINITY,c=[e].flat(),u=p=>{if(typeof e!="function")return T(c,p);let s=e(p.cwd);return typeof s=="string"?T([s],p):s},m=[];for(;;){let p=u({...t,cwd:r});if(p===ce||(p&&m.push(x.resolve(r,p)),r===f||m.length>=a))break;r=x.dirname(r)}return m}function N(e,t={}){return le(e,{...t,limit:1})[0]}import{castArray as me}from"@lntvow/utils";import de from"parse-gitignore";async function R(e){let{name:t=".gitignore",root:r=!1,files:i=r?t:N(t)||[]}=e,f=me(i),a=[];for(let c of f)try{let u=ue.readFileSync(c,"utf8"),m=de(u).globs();for(let p of m)p.type==="ignore"?a.push(...p.patterns):p.type==="unignore"&&a.push(...p.patterns.map(s=>`!${s}`))}catch{throw new Error(`Failed to read file: ${c}`)}return[{ignores:a}]}async function q(e=[]){return[{name:"lntvow/ignores",ignores:[...k,...e]}]}import ve from"eslint-plugin-import-x";async function U(e){let{typescript:t}=e;return[{name:"lntvow/imports/rules",plugins:{import:ve},rules:{"import/no-unresolved":"error","import/first":"error","import/newline-after-import":"error","import/no-duplicates":"error","import/order":"error"},settings:{"import-x/resolver":{alias:{map:[["@","./src"]],extensions:[".ts",".js",".jsx",".tsx",".d.ts"]},node:!0}}}]}import ye from"@eslint/js";import C from"globals";async function A(e={}){let{overrides:t={}}=e;return[{name:"lntvow/javascript/rules",languageOptions:{ecmaVersion:2022,sourceType:"module",parserOptions:{ecmaVersion:2022,sourceType:"module",ecmaFeatures:{jsx:!0}},globals:{...C.browser,...C.es2021,...C.node,document:"readonly",navigator:"readonly",window:"readonly"}},linterOptions:{reportUnusedDisableDirectives:!0},rules:{...ye.configs.all.rules,"no-unused-vars":"warn","no-use-before-define":["error",{functions:!1,variables:!1}],"no-useless-assignment":"off","require-atomic-updates":"off",camelcase:"warn","capitalized-comments":"off","class-methods-use-this":"off",complexity:"off","consistent-return":"off",curly:["error","multi-line"],"func-names":"off","func-style":"off","guard-for-in":"off","id-denylist":"off","id-length":"off","id-match":"off","init-declarations":"off","max-classes-per-file":"off","max-depth":"off","max-lines":"off","max-lines-per-function":"off","max-nested-callbacks":"off","max-params":"off","max-statements":"off","new-cap":["error",{capIsNew:!1}],"no-bitwise":"off","no-case-declarations":"off","no-console":"warn","no-continue":"off","no-empty":["error",{allowEmptyCatch:!0}],"no-implicit-coercion":"off","no-implicit-globals":"off","no-magic-numbers":"off","no-nested-ternary":"off","no-new":"off","no-param-reassign":"off","no-plusplus":"off","no-restricted-exports":"off","no-restricted-globals":["error",{message:"Use `globalThis` instead.",name:"global"},{message:"Use `globalThis` instead.",name:"self"}],"no-restricted-imports":"off","no-restricted-properties":["error",{message:"Use `Object.getPrototypeOf` or `Object.setPrototypeOf` instead.",property:"__proto__"},{message:"Use `Object.defineProperty` instead.",property:"__defineGetter__"},{message:"Use `Object.defineProperty` instead.",property:"__defineSetter__"},{message:"Use `Object.getOwnPropertyDescriptor` instead.",property:"__lookupGetter__"},{message:"Use `Object.getOwnPropertyDescriptor` instead.",property:"__lookupSetter__"}],"no-restricted-syntax":"off","no-shadow":"off","no-ternary":"off","no-throw-literal":"off","no-undefined":"off","no-underscore-dangle":"off","no-unused-expressions":["error",{allowShortCircuit:!0,allowTaggedTemplates:!0,allowTernary:!0}],"no-void":"off","no-warning-comments":"off","one-var":"off","prefer-destructuring":"off","prefer-exponentiation-operator":"off","prefer-promise-reject-errors":"off",radix:"off","require-await":"off","require-unicode-regexp":"off","sort-imports":"off","sort-keys":"off","sort-vars":"off",strict:"off",...t}}]}import ge from"eslint-plugin-prettier";import xe from"eslint-config-prettier";async function V(){return[{name:"lntvow/prettier/rules",plugins:{prettier:ge},rules:{...xe.rules,"prettier/prettier":"warn"}}]}import{configs as M}from"eslint-plugin-regexp";async function $(e={}){let{overrides:t}=e,r=M["flat/recommended"].plugins.regexp,{rules:i}=M["flat/recommended"];return[{name:"lntvow/regexp/rules",plugins:{regexp:r},rules:{...i,...t}}]}import be from"@stylistic/eslint-plugin";async function D(e={}){let{overrides:t={}}=e;return[{name:"lntvow/stylistic/rules",plugins:{style:be},rules:{"style/spaced-comment":"error","style/padding-line-between-statements":["error",{blankLine:"always",prev:"*",next:"cjs-export"},{blankLine:"always",prev:"*",next:"export"},{blankLine:"always",prev:"*",next:"function"},{blankLine:"always",prev:"*",next:["interface","type"]},{blankLine:"never",prev:"function-overload",next:"function"}],"style/lines-around-comment":[2,{beforeBlockComment:!0,allowBlockStart:!0,allowObjectStart:!0,allowInterfaceStart:!0,allowTypeStart:!0,allowArrayStart:!0,allowClassStart:!0,allowModuleStart:!0}],...t}}]}import he from"eslint-plugin-vitest";async function K(e={}){let{overrides:t}=e;return[{name:"lntvow/test/setup",plugins:{test:he}},{name:"lntvow/test/rules",files:[...j],rules:{"lntvow/newline-before-describe-test":"error",...t}}]}import S from"@typescript-eslint/eslint-plugin";import we from"@typescript-eslint/parser";async function X(e={}){let{componentExts:t=[],overrides:r={},parserOptions:i={}}=e,f=[v,...t.map(a=>`**/*.${a}`)];return[{name:"lntvow/typescript/setup",plugins:{ts:S}},{name:"lntvow/typescript/rules",languageOptions:{parser:we,parserOptions:{sourceType:"module"}},files:f,rules:{...w(S.configs["eslint-recommended"].overrides[0].rules,{"@typescript-eslint":"ts"}),...w(S.configs.strict.rules,{"@typescript-eslint":"ts"}),"ts/no-non-null-assertion":"off","ts/no-explicit-any":"off","ts/ban-ts-comment":"off","ts/no-unused-vars":"warn","no-use-before-define":"off","ts/no-use-before-define":["error",{functions:!1,variables:!1}],...r}}]}import{getPackageInfoSync as Oe}from"local-pkg";import Y from"@typescript-eslint/parser";import Te from"vue-eslint-parser";import l from"eslint-plugin-vue";var _e={...l.configs["vue3-essential"].rules,...l.configs["vue3-strongly-recommended"].rules,...l.configs["vue3-recommended"].rules,"vue/block-lang":["error",{script:{lang:["ts","tsx"]}}],"vue/block-order":["error",{order:["script[setup]","template","style[scoped]"]}],"vue/component-api-style":"error"},Ce={...l.configs.essential.rules,...l.configs["strongly-recommended"].rules,...l.configs.recommended.rules,"vue/block-lang":["error",{script:{allowNoLang:!0}}],"vue/block-order":["error",{order:[["script","template"],"style[scoped]"]}]};async function J(e={}){let{overrides:t={},vueVersion:r=Se()}=e;return[{name:"lntvow/vue/setup",plugins:{vue:l}},{name:"lntvow/vue/rules",languageOptions:{parser:Te,parserOptions:{ecmaFeatures:{jsx:!0},parser:{ts:Y,tsx:Y},sourceType:"module"}},processor:l.processors[".vue"],files:[O],rules:{...l.configs.base.rules,...r===3?_e:Ce,"vue/multi-word-component-names":"off","vue/attribute-hyphenation":"off","vue/html-indent":"off","vue/html-self-closing":["error",{html:{void:"always",normal:"always",component:"always"},svg:"always",math:"always"}],"vue/max-attributes-per-line":"off","vue/singleline-html-element-content-newline":"off","vue/v-on-event-hyphenation":"off","vue/block-tag-newline":"error","vue/component-name-in-template-casing":["error","PascalCase",{ignores:["/-/"]}],"vue/component-options-name-casing":"error","vue/custom-event-name-casing":"error","vue/define-emits-declaration":"error","vue/define-macros-order":"error","vue/define-props-declaration":"error","vue/enforce-style-attribute":"error","vue/html-button-has-type":"off","vue/html-comment-content-newline":"error","vue/html-comment-content-spacing":"error","vue/html-comment-indent":"off","vue/match-component-file-name":["error",{extensions:["jsx","tsx"],shouldMatchCase:!0}],"vue/match-component-import-name":"error","vue/max-lines-per-block":"off","vue/max-props":"off","vue/max-template-depth":"off","vue/new-line-between-multi-line-property":"off","vue/next-tick-style":"off","vue/no-bare-strings-in-template":"off","vue/no-boolean-default":"off","vue/no-deprecated-model-definition":"error","vue/no-duplicate-attr-inheritance":"error","vue/no-empty-component-block":"off","vue/no-multiple-objects-in-class":"error","vue/no-potential-component-option-typo":"error","vue/no-ref-object-reactivity-loss":"error","vue/no-required-prop-with-default":"error","vue/no-restricted-block":"off","vue/no-restricted-call-after-await":"off","vue/no-restricted-class":"off","vue/no-restricted-component-names":"off","vue/no-restricted-component-options":"off","vue/no-restricted-custom-event":"off","vue/no-restricted-html-elements":"off","vue/no-restricted-props":"off","vue/no-restricted-static-attribute":"off","vue/no-restricted-v-bind":"off","vue/no-root-v-if":"off","vue/no-setup-props-reactivity-loss":"error","vue/no-static-inline-styles":"error","vue/no-template-target-blank":"error","vue/no-this-in-before-route-enter":"error","vue/no-undef-components":"off","vue/no-undef-properties":"error","vue/no-unsupported-features":"off","vue/no-unused-emit-declarations":"error","vue/no-unused-properties":["warn",{groups:["props","data","computed","methods","setup"]}],"vue/no-unused-refs":"error","vue/no-use-v-else-with-v-for":"error","vue/no-useless-mustaches":"error","vue/no-useless-v-bind":"error","vue/no-v-text":"error","vue/padding-line-between-blocks":"error","vue/padding-line-between-tags":["error",[{blankLine:"never",prev:"*",next:"*"}]],"vue/padding-lines-in-component-definition":["error",{betweenOptions:"never"}],"vue/prefer-define-options":"error","vue/prefer-prop-type-boolean-first":"error","vue/prefer-separate-static-class":"error","vue/prefer-true-attribute-shorthand":"error","vue/require-default-export":"off","vue/require-direct-export":"error","vue/require-emit-validator":"off","vue/require-explicit-slots":"off","vue/require-expose":"error","vue/require-macro-variable-name":"error","vue/require-name-property":"off","vue/require-prop-comment":"off","vue/require-typed-object-prop":"error","vue/require-typed-ref":"error","vue/script-indent":"off","vue/sort-keys":"off","vue/static-class-names-order":"error","vue/v-for-delimiter-style":"error","vue/v-on-handler-style":"off","vue/valid-define-options":"error","vue/array-bracket-newline":"off","vue/array-bracket-spacing":"off","vue/array-element-newline":"off","vue/arrow-spacing":"off","vue/block-spacing":"off","vue/brace-style":"off","vue/camelcase":"error","vue/comma-dangle":"off","vue/comma-spacing":"off","vue/comma-style":"off","vue/dot-location":"off","vue/dot-notation":"error","vue/eqeqeq":"error","vue/func-call-spacing":"off","vue/key-spacing":"off","vue/keyword-spacing":"off","vue/max-len":"off","vue/multiline-ternary":"off","vue/no-console":"off","vue/no-constant-condition":"error","vue/no-extra-parens":"off","vue/no-empty-pattern":"error","vue/no-irregular-whitespace":"error","vue/no-loss-of-precision":"off","vue/no-restricted-syntax":"off","vue/no-sparse-arrays":"error","vue/no-useless-concat":"error","vue/object-curly-newline":"off","vue/object-curly-spacing":"off","vue/object-property-newline":"off","vue/object-shorthand":"error","vue/operator-linebreak":"off","vue/prefer-template":"error","vue/quote-props":"off","vue/space-in-parens":"off","vue/space-infix-ops":"off","vue/space-unary-ops":"off","vue/template-curly-spacing":"off",...t}}]}function Se(){let e=Oe("vue",{paths:[process.cwd()]});return e&&e.version?+e.version[0]:3}import{FlatConfigComposer as Ie}from"eslint-flat-config-utils";import{isBoolean as Le}from"@lntvow/utils";import{isPackageExists as I}from"local-pkg";var Pe=["name","files","ignores","languageOptions","linterOptions","processor","plugins","rules","settings"],Fe={"@stylistic":"style","@typescript-eslint":"typescript","import-x":"import",vitest:"test"};function je(e={},...t){if("files"in e)throw new Error('[@lntvow/eslint-config] The first argument should not contain the "files" property as the options are supposed to be global. Place it in the second or later config instead.');let{autoRenamePlugins:r=!0,componentExts:i=[],gitignore:f=!0,regexp:a=!0,typescript:c=I("typescript"),vue:u=["vue","nuxt","vitepress"].some(b=>I(b)),test:m=I("vitest"),stylistic:p=!0}=e,s=[];s.push(q(e.ignores),P(),A({...y(e,"javascript")}),U({typescript:!!c})),f&&s.push(R({...y(e,"gitignore")})),u&&i.push("vue"),c&&s.push(X({...y(e,"typescript"),componentExts:i})),u&&s.push(J({...y(e,"vue")})),a&&s.push($({...y(e,"regexp")})),m&&s.push(K({...y(e,"test")})),p&&s.push(D({...y(e,"stylistic")})),s.push(G(),V());let L=Pe.reduce((b,h)=>(h in e&&(b[h]=e[h]),b),{});Object.keys(L).length&&s.push([L]);let g=new Ie;return g=g.append(...s,...t),r&&(g=g.renamePlugins(Fe)),g}function y(e,t){return Le(e[t])?{}:e[t]||{}}export{He as GLOB_ALL_SRC,Je as GLOB_ASTRO,Ve as GLOB_CSS,k as GLOB_EXCLUDE,We as GLOB_GRAPHQL,re as GLOB_HTML,Re as GLOB_JS,H as GLOB_JSON,Q as GLOB_JSON5,Ke as GLOB_JSONC,qe as GLOB_JSX,$e as GLOB_LESS,F as GLOB_MARKDOWN,ze as GLOB_MARKDOWN_CODE,Xe as GLOB_MARKDOWN_IN_MARKDOWN,Me as GLOB_POSTCSS,De as GLOB_SCSS,v as GLOB_SRC,d as GLOB_SRC_EXT,z as GLOB_STYLE,Z as GLOB_SVELTE,j as GLOB_TESTS,Ye as GLOB_TOML,Ue as GLOB_TS,Ae as GLOB_TSX,O as GLOB_VUE,te as GLOB_XML,ee as GLOB_YAML,P as custom,G as disables,Se as getVueVersion,R as gitignore,q as ignores,U as imports,A as javascript,je as lntvow,V as prettier,$ as regexp,w as renameRules,D as stylistic,K as test,X as typescript,J as vue};
|
|
1
|
+
function b(e,t){return Object.fromEntries(Object.entries(e).map(([r,n])=>{for(let[a,s]of Object.entries(t))if(r.startsWith(`${a}/`))return[s+r.slice(a.length),n];return[r,n]}))}import Y from"@lntvow/eslint-plugin";async function I(){return[{name:"lntvow/custom",plugins:{lntvow:Y}}]}var u="?([cm])[jt]s?(x)",m="**/*.?([cm])[jt]s?(x)",Ge="**/*.?([cm])js",Ee="**/*.?([cm])jsx",Be="**/*.?([cm])ts",Ne="**/*.?([cm])tsx",J="**/*.{c,le,sc}ss",Re="**/*.css",qe="**/*.{p,post}css",Ue="**/*.less",Ae="**/*.scss",W="**/*.json",z="**/*.json5",Ve="**/*.jsonc",L="**/*.md",Me="**/*.md/*.md",H="**/*.svelte",h="**/*.vue",Q="**/*.y?(a)ml",$e="**/*.toml",Z="**/*.xml",ee="**/*.htm?(l)",De="**/*.astro",Ke="**/*.{g,graph}ql",Xe=`${L}/${m}`,P=[`**/__tests__/**/*.${u}`,`**/*.spec.${u}`,`**/*.test.${u}`,`**/*.bench.${u}`,`**/*.benchmark.${u}`],Ye=[m,J,W,z,L,H,h,Q,Z,ee],F=["**/node_modules","**/dist","**/package-lock.json","**/yarn.lock","**/pnpm-lock.yaml","**/bun.lockb","**/output","**/coverage","**/temp","**/.temp","**/tmp","**/.tmp","**/.history","**/.vitepress/cache","**/.nuxt","**/.next","**/.svelte-kit","**/.vercel","**/.changeset","**/.idea","**/.cache","**/.output","**/.vite-inspect","**/.yarn","**/vite.config.*.timestamp-*","**/CHANGELOG*.md","**/*.min.*","**/LICENSE*","**/__snapshots__","**/auto-import?(s).d.ts","**/components.d.ts"];async function j(){return[{files:[`scripts/${m}`],name:"lntvow/disables/scripts",rules:{"no-console":"off"}},{files:[`cli/${m}`,`cli.${u}`],name:"lntvow/disables/cli",rules:{"no-console":"off"}},{files:["**/*.d.?([cm])ts"],name:"lntvow/disables/dts",rules:{}},{files:["**/*.{test,spec}.([tj])s?(x)"],name:"lntvow/disables/test",rules:{"no-unused-expressions":"off"}},{files:["**/*.js","**/*.cjs"],name:"lntvow/disables/cjs",rules:{"ts/no-require-imports":"off"}}]}import ce from"fs";import y from"node:path";import te from"node:process";import re from"node:path";import k,{promises as st}from"node:fs";import{fileURLToPath as oe}from"node:url";var G={directory:"isDirectory",file:"isFile"};function ne(e){if(!Object.hasOwnProperty.call(G,e))throw new Error(`Invalid type specified: ${e}`)}var se=(e,t)=>t[G[e]](),ie=e=>e instanceof URL?oe(e):e;function w(e,{cwd:t=te.cwd(),type:r="file",allowSymlinks:n=!0}={}){ne(r),t=ie(t);let a=n?k.statSync:k.lstatSync;for(let s of e)try{let p=a(re.resolve(t,s),{throwIfNoEntry:!1});if(!p)continue;if(se(r,p))return s}catch{}}import{fileURLToPath as ae}from"node:url";function O(e){return e instanceof URL?ae(e):e}var pe=Symbol("findUpStop");function fe(e,t={}){let r=y.resolve(O(t.cwd)??""),{root:n}=y.parse(r),a=y.resolve(r,O(t.stopAt)??n),s=t.limit??Number.POSITIVE_INFINITY,p=[e].flat(),c=i=>{if(typeof e!="function")return w(p,i);let o=e(i.cwd);return typeof o=="string"?w([o],i):o},l=[];for(;;){let i=c({...t,cwd:r});if(i===pe||(i&&l.push(y.resolve(r,i)),r===a||l.length>=s))break;r=y.dirname(r)}return l}function E(e,t={}){return fe(e,{...t,limit:1})[0]}import{castArray as le}from"@lntvow/utils";import ue from"parse-gitignore";async function B(e){let{name:t=".gitignore",root:r=!1,files:n=r?t:E(t)||[]}=e,a=le(n),s=[];for(let p of a)try{let c=ce.readFileSync(p,"utf8"),l=ue(c).globs();for(let i of l)i.type==="ignore"?s.push(...i.patterns):i.type==="unignore"&&s.push(...i.patterns.map(o=>`!${o}`))}catch{throw new Error(`Failed to read file: ${p}`)}return[{ignores:s}]}async function N(e=[]){return[{name:"lntvow/ignores",ignores:[...F,...e]}]}import me from"eslint-plugin-import-x";async function R(e){let{typescript:t}=e;return[{name:"lntvow/imports/rules",plugins:{import:me},rules:{"import/no-unresolved":"error","import/first":"error","import/newline-after-import":"error","import/no-duplicates":"error","import/order":"error"},settings:{"import-x/resolver":{alias:{map:[["@","./src"]],extensions:[".ts",".js",".jsx",".tsx",".d.ts"]},node:!0}}}]}import de from"@eslint/js";import T from"globals";async function q(e={}){let{overrides:t={}}=e;return[{name:"lntvow/javascript/rules",languageOptions:{ecmaVersion:2022,sourceType:"module",parserOptions:{ecmaVersion:2022,sourceType:"module",ecmaFeatures:{jsx:!0}},globals:{...T.browser,...T.es2021,...T.node,document:"readonly",navigator:"readonly",window:"readonly"}},linterOptions:{reportUnusedDisableDirectives:!0},rules:{...de.configs.all.rules,"no-unused-vars":"warn","no-use-before-define":["error",{functions:!1,variables:!1}],"no-useless-assignment":"off","require-atomic-updates":"off",camelcase:"warn","capitalized-comments":"off","class-methods-use-this":"off",complexity:"off","consistent-return":"off",curly:["error","multi-line"],"func-names":"off","func-style":"off","guard-for-in":"off","id-denylist":"off","id-length":"off","id-match":"off","init-declarations":"off","max-classes-per-file":"off","max-depth":"off","max-lines":"off","max-lines-per-function":"off","max-nested-callbacks":"off","max-params":"off","max-statements":"off","new-cap":["error",{capIsNew:!1}],"no-bitwise":"off","no-case-declarations":"off","no-console":"warn","no-continue":"off","no-empty":["error",{allowEmptyCatch:!0}],"no-implicit-coercion":"off","no-implicit-globals":"off","no-magic-numbers":"off","no-nested-ternary":"off","no-new":"off","no-param-reassign":"off","no-plusplus":"off","no-restricted-exports":"off","no-restricted-globals":["error",{message:"Use `globalThis` instead.",name:"global"},{message:"Use `globalThis` instead.",name:"self"}],"no-restricted-imports":"off","no-restricted-properties":["error",{message:"Use `Object.getPrototypeOf` or `Object.setPrototypeOf` instead.",property:"__proto__"},{message:"Use `Object.defineProperty` instead.",property:"__defineGetter__"},{message:"Use `Object.defineProperty` instead.",property:"__defineSetter__"},{message:"Use `Object.getOwnPropertyDescriptor` instead.",property:"__lookupGetter__"},{message:"Use `Object.getOwnPropertyDescriptor` instead.",property:"__lookupSetter__"}],"no-restricted-syntax":"off","no-shadow":"off","no-ternary":"off","no-throw-literal":"off","no-undefined":"off","no-underscore-dangle":"off","no-unused-expressions":["error",{allowShortCircuit:!0,allowTaggedTemplates:!0,allowTernary:!0}],"no-void":"off","no-warning-comments":"off","one-var":"off","prefer-destructuring":"off","prefer-exponentiation-operator":"off","prefer-promise-reject-errors":"off",radix:"off","require-await":"off","require-unicode-regexp":"off","sort-imports":"off","sort-keys":"off","sort-vars":"off",strict:"off",...t}}]}import ve from"eslint-plugin-prettier";import ye from"eslint-config-prettier";async function U(){return[{name:"lntvow/prettier/rules",plugins:{prettier:ve},rules:{...ye.rules,"prettier/prettier":"warn"}}]}import{configs as A}from"eslint-plugin-regexp";async function V(e={}){let{overrides:t}=e,r=A["flat/recommended"].plugins.regexp,{rules:n}=A["flat/recommended"];return[{name:"lntvow/regexp/rules",plugins:{regexp:r},rules:{...n,...t}}]}import ge from"@stylistic/eslint-plugin";async function M(e={}){let{overrides:t={}}=e;return[{name:"lntvow/stylistic/rules",plugins:{style:ge},rules:{"style/spaced-comment":"error","style/padding-line-between-statements":["error",{blankLine:"always",prev:"*",next:"cjs-export"},{blankLine:"always",prev:"*",next:"export"},{blankLine:"always",prev:"*",next:"function"},{blankLine:"always",prev:"*",next:["interface","type"]},{blankLine:"never",prev:"function-overload",next:"function"}],"style/lines-around-comment":[2,{beforeBlockComment:!0,allowBlockStart:!0,allowObjectStart:!0,allowInterfaceStart:!0,allowTypeStart:!0,allowArrayStart:!0,allowClassStart:!0,allowModuleStart:!0}],...t}}]}import xe from"eslint-plugin-vitest";async function $(e={}){let{overrides:t}=e;return[{name:"lntvow/test/setup",plugins:{test:xe}},{name:"lntvow/test/rules",files:[...P],rules:{"lntvow/newline-before-describe-test":"error",...t}}]}import _ from"@typescript-eslint/eslint-plugin";import be from"@typescript-eslint/parser";async function D(e={}){let{componentExts:t=[],overrides:r={},parserOptions:n={}}=e,a=[m,...t.map(s=>`**/*.${s}`)];return[{name:"lntvow/typescript/setup",plugins:{ts:_}},{name:"lntvow/typescript/rules",languageOptions:{parser:be,parserOptions:{sourceType:"module"}},files:a,rules:{...b(_.configs["eslint-recommended"].overrides[0].rules,{"@typescript-eslint":"ts"}),...b(_.configs.strict.rules,{"@typescript-eslint":"ts"}),"ts/no-non-null-assertion":"off","ts/no-explicit-any":"off","ts/ban-ts-comment":"off","ts/no-unused-vars":"warn","no-use-before-define":"off","ts/no-use-before-define":["error",{functions:!1,variables:!1}],...r}}]}import{getPackageInfoSync as he}from"local-pkg";import K from"@typescript-eslint/parser";import we from"vue-eslint-parser";import f from"eslint-plugin-vue";var Oe={...f.configs["vue3-essential"].rules,...f.configs["vue3-strongly-recommended"].rules,...f.configs["vue3-recommended"].rules,"vue/block-lang":["error",{script:{lang:["ts","tsx"]}}],"vue/block-order":["error",{order:["script[setup]","template","style[scoped]"]}],"vue/component-api-style":"error"},Te={...f.configs.essential.rules,...f.configs["strongly-recommended"].rules,...f.configs.recommended.rules,"vue/block-lang":["error",{script:{allowNoLang:!0}}],"vue/block-order":["error",{order:[["script","template"],"style[scoped]"]}]};async function X(e={}){let{overrides:t={},vueVersion:r=_e()}=e;return[{name:"lntvow/vue/setup",plugins:{vue:f}},{name:"lntvow/vue/rules",languageOptions:{parser:we,parserOptions:{ecmaFeatures:{jsx:!0},parser:{ts:K,tsx:K},sourceType:"module"}},processor:f.processors[".vue"],files:[h],rules:{...f.configs.base.rules,...r===3?Oe:Te,"vue/multi-word-component-names":"off","vue/attribute-hyphenation":"off","vue/html-indent":"off","vue/html-self-closing":["error",{html:{void:"always",normal:"always",component:"always"},svg:"always",math:"always"}],"vue/max-attributes-per-line":"off","vue/singleline-html-element-content-newline":"off","vue/v-on-event-hyphenation":"off","vue/block-tag-newline":"error","vue/component-name-in-template-casing":["error","PascalCase",{ignores:["/-/"]}],"vue/component-options-name-casing":"error","vue/custom-event-name-casing":"error","vue/define-emits-declaration":"error","vue/define-macros-order":"error","vue/define-props-declaration":"error","vue/enforce-style-attribute":"error","vue/html-button-has-type":"off","vue/html-comment-content-newline":"error","vue/html-comment-content-spacing":"error","vue/html-comment-indent":"off","vue/match-component-file-name":["error",{extensions:["jsx","tsx"],shouldMatchCase:!0}],"vue/match-component-import-name":"error","vue/max-lines-per-block":"off","vue/max-props":"off","vue/max-template-depth":"off","vue/new-line-between-multi-line-property":"off","vue/next-tick-style":"off","vue/no-bare-strings-in-template":"off","vue/no-boolean-default":"off","vue/no-deprecated-model-definition":"error","vue/no-duplicate-attr-inheritance":"error","vue/no-empty-component-block":"off","vue/no-multiple-objects-in-class":"error","vue/no-potential-component-option-typo":"error","vue/no-ref-object-reactivity-loss":"error","vue/no-required-prop-with-default":"error","vue/no-restricted-block":"off","vue/no-restricted-call-after-await":"off","vue/no-restricted-class":"off","vue/no-restricted-component-names":"off","vue/no-restricted-component-options":"off","vue/no-restricted-custom-event":"off","vue/no-restricted-html-elements":"off","vue/no-restricted-props":"off","vue/no-restricted-static-attribute":"off","vue/no-restricted-v-bind":"off","vue/no-root-v-if":"off","vue/no-setup-props-reactivity-loss":"error","vue/no-static-inline-styles":"error","vue/no-template-target-blank":"error","vue/no-this-in-before-route-enter":"error","vue/no-undef-components":"off","vue/no-undef-properties":"error","vue/no-unsupported-features":"off","vue/no-unused-emit-declarations":"error","vue/no-unused-properties":["warn",{groups:["props","data","computed","methods","setup"]}],"vue/no-unused-refs":"error","vue/no-use-v-else-with-v-for":"error","vue/no-useless-mustaches":"error","vue/no-useless-v-bind":"error","vue/no-v-text":"error","vue/padding-line-between-blocks":"error","vue/padding-line-between-tags":["error",[{blankLine:"never",prev:"*",next:"*"}]],"vue/padding-lines-in-component-definition":["error",{betweenOptions:"never"}],"vue/prefer-define-options":"error","vue/prefer-prop-type-boolean-first":"error","vue/prefer-separate-static-class":"error","vue/prefer-true-attribute-shorthand":"error","vue/require-default-export":"off","vue/require-direct-export":"error","vue/require-emit-validator":"off","vue/require-explicit-slots":"off","vue/require-expose":"error","vue/require-macro-variable-name":"error","vue/require-name-property":"off","vue/require-prop-comment":"off","vue/require-typed-object-prop":"error","vue/require-typed-ref":"error","vue/script-indent":"off","vue/sort-keys":"off","vue/static-class-names-order":"error","vue/v-for-delimiter-style":"error","vue/v-on-handler-style":"off","vue/valid-define-options":"error","vue/array-bracket-newline":"off","vue/array-bracket-spacing":"off","vue/array-element-newline":"off","vue/arrow-spacing":"off","vue/block-spacing":"off","vue/brace-style":"off","vue/camelcase":"error","vue/comma-dangle":"off","vue/comma-spacing":"off","vue/comma-style":"off","vue/dot-location":"off","vue/dot-notation":"error","vue/eqeqeq":"error","vue/func-call-spacing":"off","vue/key-spacing":"off","vue/keyword-spacing":"off","vue/max-len":"off","vue/multiline-ternary":"off","vue/no-console":"off","vue/no-constant-condition":"error","vue/no-extra-parens":"off","vue/no-empty-pattern":"error","vue/no-irregular-whitespace":"error","vue/no-loss-of-precision":"off","vue/no-restricted-syntax":"off","vue/no-sparse-arrays":"error","vue/no-useless-concat":"error","vue/object-curly-newline":"off","vue/object-curly-spacing":"off","vue/object-property-newline":"off","vue/object-shorthand":"error","vue/operator-linebreak":"off","vue/prefer-template":"error","vue/quote-props":"off","vue/space-in-parens":"off","vue/space-infix-ops":"off","vue/space-unary-ops":"off","vue/template-curly-spacing":"off",...t}}]}function _e(){let e=he("vue",{paths:[process.cwd()]});return e&&e.version?+e.version[0]:3}import{FlatConfigComposer as Ce}from"eslint-flat-config-utils";import{isBoolean as Se}from"@lntvow/utils";import{isPackageExists as C}from"local-pkg";var Ie=["name","files","ignores","languageOptions","linterOptions","processor","plugins","rules","settings"],Le={"@stylistic":"style","@typescript-eslint":"typescript","import-x":"import",vitest:"test"};function Pe(e={},...t){if("files"in e)throw new Error('[@lntvow/eslint-config] The first argument should not contain the "files" property as the options are supposed to be global. Place it in the second or later config instead.');let{autoRenamePlugins:r=!0,componentExts:n=[],gitignore:a=!0,regexp:s=!0,typescript:p=C("typescript"),vue:c=["vue","nuxt","vitepress"].some(g=>C(g)),test:l=C("vitest"),stylistic:i=!0}=e,o=[];o.push(N(e.ignores),I(),q({...d(e,"javascript")}),R({typescript:!!p})),a&&o.push(B({...d(e,"gitignore")})),c&&n.push("vue"),p&&o.push(D({...d(e,"typescript"),componentExts:n})),c&&o.push(X({...d(e,"vue")})),s&&o.push(V({...d(e,"regexp")})),l&&o.push($({...d(e,"test")})),i&&o.push(M({...d(e,"stylistic")})),o.push(j(),U());let S=Ie.reduce((g,x)=>(x in e&&(g[x]=e[x]),g),{});Object.keys(S).length&&o.push([S]);let v=new Ce;return v=v.append(...o,...t),r&&(v=v.renamePlugins(Le)),v}function d(e,t){return Se(e[t])?{}:e[t]||{}}export{Ye as GLOB_ALL_SRC,De as GLOB_ASTRO,Re as GLOB_CSS,F as GLOB_EXCLUDE,Ke as GLOB_GRAPHQL,ee as GLOB_HTML,Ge as GLOB_JS,W as GLOB_JSON,z as GLOB_JSON5,Ve as GLOB_JSONC,Ee as GLOB_JSX,Ue as GLOB_LESS,L as GLOB_MARKDOWN,Xe as GLOB_MARKDOWN_CODE,Me as GLOB_MARKDOWN_IN_MARKDOWN,qe as GLOB_POSTCSS,Ae as GLOB_SCSS,m as GLOB_SRC,u as GLOB_SRC_EXT,J as GLOB_STYLE,H as GLOB_SVELTE,P as GLOB_TESTS,$e as GLOB_TOML,Be as GLOB_TS,Ne as GLOB_TSX,h as GLOB_VUE,Z as GLOB_XML,Q as GLOB_YAML,I as custom,j as disables,_e as getVueVersion,B as gitignore,N as ignores,R as imports,q as javascript,Pe as lntvow,U as prettier,V as regexp,b as renameRules,M as stylistic,$ as test,D as typescript,X as vue};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@lntvow/eslint-config",
|
|
3
|
-
"version": "9.9.
|
|
3
|
+
"version": "9.9.4",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "eslint-config",
|
|
6
6
|
"keywords": [
|
|
@@ -47,7 +47,7 @@
|
|
|
47
47
|
"parse-gitignore": "^2.0.0",
|
|
48
48
|
"typescript": "^5.5.4",
|
|
49
49
|
"vue-eslint-parser": "^9.4.3",
|
|
50
|
-
"@lntvow/eslint-plugin": "^9.9.
|
|
50
|
+
"@lntvow/eslint-plugin": "^9.9.4"
|
|
51
51
|
},
|
|
52
52
|
"scripts": {
|
|
53
53
|
"dev": "pnpm build --format esm --watch",
|