@lntvow/eslint-config 9.16.6 → 9.17.3
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.d.cts +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +1 -1
- package/package.json +5 -6
package/dist/index.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var de=Object.create;var x=Object.defineProperty;var ve=Object.getOwnPropertyDescriptor;var ge=Object.getOwnPropertyNames;var ye=Object.getPrototypeOf,xe=Object.prototype.hasOwnProperty;var be=(e,r)=>{for(var o in r)x(e,o,{get:r[o],enumerable:!0})},D=(e,r,o,i)=>{if(r&&typeof r=="object"||typeof r=="function")for(let n of ge(r))!xe.call(e,n)&&n!==o&&x(e,n,{get:()=>r[n],enumerable:!(i=ve(r,n))||i.enumerable});return e};var s=(e,r,o)=>(o=e!=null?de(ye(e)):{},D(r||!e||!e.__esModule?x(o,"default",{value:e,enumerable:!0}):o,e)),we=e=>D(x({},"__esModule",{value:!0}),e);var De={};be(De,{GLOB_ALL_SRC:()=>Ee,GLOB_ASTRO:()=>Be,GLOB_CSS:()=>Le,GLOB_EXCLUDE:()=>k,GLOB_GRAPHQL:()=>Pe,GLOB_HTML:()=>z,GLOB_JS:()=>he,GLOB_JSON:()=>X,GLOB_JSON5:()=>J,GLOB_JSONC:()=>Fe,GLOB_JSX:()=>Ce,GLOB_LESS:()=>je,GLOB_MARKDOWN:()=>S,GLOB_MARKDOWN_CODE:()=>Re,GLOB_MARKDOWN_IN_MARKDOWN:()=>Ie,GLOB_POSTCSS:()=>Se,GLOB_SCSS:()=>ke,GLOB_SRC:()=>f,GLOB_SRC_EXT:()=>l,GLOB_STYLE:()=>K,GLOB_SVELTE:()=>W,GLOB_TESTS:()=>j,GLOB_TOML:()=>Ge,GLOB_TS:()=>Te,GLOB_TSX:()=>_e,GLOB_VUE:()=>w,GLOB_XML:()=>Y,GLOB_YAML:()=>H,combine:()=>Oe,custom:()=>L,disables:()=>F,gitignore:()=>I,ignores:()=>G,imports:()=>B,javascript:()=>P,lntvow:()=>me,prettier:()=>R,regexp:()=>q,renameRules:()=>b,stylistic:()=>N,test:()=>A,typescript:()=>V,vue:()=>$});module.exports=we(De);function b(e,r){return Object.fromEntries(Object.entries(e).map(([o,i])=>{for(let[n,a]of Object.entries(r))if(o.startsWith(`${n}/`))return[a+o.slice(n.length),i];return[o,i]}))}async function Oe(...e){return(await Promise.all(e)).flat()}var M=s(require("@lntvow/eslint-plugin"),1);async function L(){return[{name:"lntvow/custom",plugins:{lntvow:M.default}}]}var l="?([cm])[jt]s?(x)",f="**/*.?([cm])[jt]s?(x)",he="**/*.?([cm])js",Ce="**/*.?([cm])jsx",Te="**/*.?([cm])ts",_e="**/*.?([cm])tsx",K="**/*.{c,le,sc}ss",Le="**/*.css",Se="**/*.{p,post}css",je="**/*.less",ke="**/*.scss",X="**/*.json",J="**/*.json5",Fe="**/*.jsonc",S="**/*.md",Ie="**/*.md/*.md",W="**/*.svelte",w="**/*.vue",H="**/*.y?(a)ml",Ge="**/*.toml",Y="**/*.xml",z="**/*.htm?(l)",Be="**/*.astro",Pe="**/*.{g,graph}ql",Re=`${S}/${f}`,j=[`**/__tests__/**/*.${l}`,`**/*.spec.${l}`,`**/*.test.${l}`,`**/*.bench.${l}`,`**/*.benchmark.${l}`],Ee=[f,K,X,J,S,W,w,H,Y,z],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 F(){return[{files:[`scripts/${f}`],name:"lntvow/disables/scripts",rules:{"no-console":"off"}},{files:[`cli/${f}`,`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 Q=s(require("fs"),1),Z=require("find-up-simple"),ee=require("@lntvow/utils"),re=s(require("parse-gitignore"),1);async function I(e){let{name:r=".gitignore",root:o=!1,files:i=o?r:(0,Z.findUpSync)(r)||[],strict:n=!0}=e,a=(0,ee.castArray)(i),c=[];for(let d of a){let v;try{v=Q.default.readFileSync(d,"utf8")}catch(t){if(n)throw t;continue}let T=(0,re.default)(v).globs();for(let t of T)t.type==="ignore"?c.push(...t.patterns):t.type==="unignore"&&c.push(...t.patterns.map(g=>`!${g}`))}if(n&&a.length===0)throw new Error("No .gitignore file found");return[{name:"lntvow/gitignore",ignores:c}]}async function G(e=[]){return[{name:"lntvow/ignores",ignores:[...k,...e]}]}var oe=s(require("eslint-plugin-import-x"),1);async function B(e={}){let{typescript:r=!1}=e;return[{name:"lntvow/imports/rules",plugins:{import:oe.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 te=s(require("@eslint/js"),1),O=s(require("globals"),1);async function P(e={}){let{overrides:r={}}=e;return[{name:"lntvow/javascript/setup",languageOptions:{ecmaVersion:2022,sourceType:"module",parserOptions:{ecmaVersion:2022,sourceType:"module",ecmaFeatures:{jsx:!0}},globals:{...O.default.browser,...O.default.es2021,...O.default.node}},linterOptions:{reportUnusedDisableDirectives:!0}},{name:"lntvow/javascript/rules",rules:{...te.default.configs.recommended.rules,...qe,"no-unused-vars":"warn",...r}}]}var qe={"array-callback-return":"error","no-await-in-loop":"off","no-constructor-return":"error","no-duplicate-imports":"error","no-inner-declarations":"error","no-promise-executor-return":"error","no-self-compare":"error","no-template-curly-in-string":"error","no-unmodified-loop-condition":"error","no-unreachable-loop":"error","no-use-before-define":["error",{functions:!1,variables:!1}],"no-useless-assignment":"off","require-atomic-updates":"off","accessor-pairs":"error","arrow-body-style":"error","block-scoped-var":"error",camelcase:"warn","capitalized-comments":"off","class-methods-use-this":"error",complexity:"off","consistent-return":"off","consistent-this":"off",curly:["error","multi-line"],"default-case":"error","default-case-last":"error","default-param-last":"error","dot-notation":"error",eqeqeq:"error","func-name-matching":"error","func-names":"off","func-style":"off","grouped-accessor-pairs":"error","guard-for-in":"off","id-denylist":"off","id-length":"off","id-match":"off","init-declarations":"off","logical-assignment-operators":"error","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-alert":"error","no-array-constructor":"error","no-bitwise":"off","no-caller":"error","no-console":"warn","no-continue":"off","no-div-regex":"error","no-else-return":"error","no-empty-function":"error","no-eq-null":"error","no-eval":"error","no-extend-native":"error","no-extra-bind":"error","no-extra-label":"error","no-implicit-coercion":"error","no-implicit-globals":"error","no-implied-eval":"error","no-inline-comments":"off","no-invalid-this":"error","no-iterator":"error","no-label-var":"error","no-labels":"error","no-lone-blocks":"error","no-lonely-if":"error","no-loop-func":"error","no-magic-numbers":"off","no-multi-assign":"error","no-multi-str":"error","no-negated-condition":"off","no-nested-ternary":"off","no-new":"off","no-new-func":"error","no-new-wrappers":"error","no-object-constructor":"error","no-octal-escape":"error","no-param-reassign":"error","no-plusplus":"off","no-proto":"error","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-return-assign":"error","no-script-url":"error","no-sequences":"error","no-shadow":0,"no-ternary":"off","no-throw-literal":"off","no-undef-init":"error","no-undefined":"off","no-underscore-dangle":"off","no-unneeded-ternary":"error","no-unused-expressions":["error",{allowShortCircuit:!0,allowTaggedTemplates:!0,allowTernary:!0}],"no-useless-call":"error","no-useless-computed-key":"error","no-useless-concat":"error","no-useless-constructor":"error","no-useless-rename":"error","no-useless-return":"error","no-var":"error","no-void":"off","no-warning-comments":"off","object-shorthand":"error","one-var":"off","operator-assignment":"error","prefer-arrow-callback":"error","prefer-const":"error","prefer-destructuring":"off","prefer-exponentiation-operator":"error","prefer-named-capture-group":"off","prefer-numeric-literals":"off","prefer-object-has-own":"error","prefer-object-spread":"error","prefer-promise-reject-errors":"off","prefer-regex-literals":"off","prefer-rest-params":"error","prefer-spread":"error","prefer-template":"error",radix:"off","require-await":"off","require-unicode-regexp":"off","sort-imports":"off","sort-keys":"off","sort-vars":"off",strict:"off","symbol-description":"error","vars-on-top":"error",yoda:"error","unicode-bom":"error"};var ne=s(require("eslint-plugin-prettier"),1),se=s(require("eslint-config-prettier"),1);async function R(){return[{name:"lntvow/prettier/rules",plugins:{prettier:ne.default},rules:{...se.default.rules,"prettier/prettier":"warn"}}]}var E=require("eslint-plugin-regexp");async function q(e={}){let{overrides:r}=e,o=E.configs["flat/recommended"].plugins.regexp,{rules:i}=E.configs["flat/recommended"];return[{name:"lntvow/regexp/rules",plugins:{regexp:o},rules:{...i,...r}}]}var ie=s(require("@stylistic/eslint-plugin"),1);async function N(e={}){let{overrides:r={}}=e;return[{name:"lntvow/stylistic/rules",plugins:{style:ie.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}],...r}}]}var pe=s(require("eslint-plugin-vitest"),1);async function A(e={}){let{overrides:r}=e;return[{name:"lntvow/test/setup",plugins:{test:pe.default}},{name:"lntvow/test/rules",files:[...j],rules:{"lntvow/newline-before-describe-test":"error",...r}}]}var h=s(require("@typescript-eslint/eslint-plugin"),1),ae=s(require("@typescript-eslint/parser"),1);async function V(e={}){let{componentExts:r=[],overrides:o={},parserOptions:i={}}=e,n=[f,...r.map(a=>`**/*.${a}`)];return[{name:"lntvow/typescript/setup",plugins:{ts:h.default}},{name:"lntvow/typescript/rules",languageOptions:{parser:ae.default,parserOptions:{sourceType:"module"}},files:n,rules:{...b(h.default.configs["eslint-recommended"].overrides[0].rules,{"@typescript-eslint":"ts"}),...b(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}],"no-unused-expressions":"off","ts/no-unused-expressions":["error",{allowShortCircuit:!0,allowTaggedTemplates:!0,allowTernary:!0}],...o}}]}var le=require("local-pkg"),U=s(require("@typescript-eslint/parser"),1),fe=s(require("vue-eslint-parser"),1),p=s(require("eslint-plugin-vue"),1);var Ne={...p.default.configs["vue3-essential"].rules,...p.default.configs["vue3-strongly-recommended"].rules,...p.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","vue/no-deprecated-model-definition":"error"},Ae={...p.default.configs.essential.rules,...p.default.configs["strongly-recommended"].rules,...p.default.configs.recommended.rules,"vue/block-lang":["error",{script:{allowNoLang:!0}}],"vue/block-order":["error",{order:[["script","template"],"style[scoped]"]}]};async function $(e={}){let{overrides:r={},vueVersion:o=Ve()}=e;return[{name:"lntvow/vue/setup",plugins:{vue:p.default}},{name:"lntvow/vue/rules",languageOptions:{parser:fe.default,parserOptions:{ecmaFeatures:{jsx:!0},parser:{ts:U.default,tsx:U.default},sourceType:"module"}},processor:p.default.processors[".vue"],files:[w],rules:{...p.default.configs.base.rules,...o===3?Ne:Ae,"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",...r}}]}function Ve(){let e=(0,le.getPackageInfoSync)("vue",{paths:[process.cwd()]});return e&&e.version?Number(e.version[0]):3}var ue=require("eslint-flat-config-utils"),ce=require("@lntvow/utils"),C=require("local-pkg");var Ue=["name","languageOptions","linterOptions","processor","plugins","rules","settings"],$e={"@stylistic":"style","@typescript-eslint":"typescript","import-x":"import",vitest:"test"};function me(e={},...r){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:o=!0,componentExts:i=[],gitignore:n=!0,regexp:a=!0,typescript:c=(0,C.isPackageExists)("typescript"),vue:d=["vue","nuxt","vitepress"].some(y=>(0,C.isPackageExists)(y)),test:v=(0,C.isPackageExists)("vitest"),stylistic:T=!0}=e,t=[];t.push(G(e.ignores),L(),P({...u(e,"javascript")}),B({typescript:!!c}),R()),n&&t.push(I({...u(e,"gitignore")})),d&&i.push("vue"),c&&t.push(V({...u(e,"typescript"),componentExts:i})),d&&t.push($({...u(e,"vue")})),a&&t.push(q({...u(e,"regexp")})),v&&t.push(A({...u(e,"test")})),T&&t.push(N({...u(e,"stylistic")})),t.push(F());let g=Ue.reduce((y,_)=>(_ in e&&(y[_]=e[_]),y),{});Object.keys(g).length&&t.push([g]);let m=new ue.FlatConfigComposer;return m=m.append(...t,...r),o&&(m=m.renamePlugins($e)),m}function u(e,r){return(0,ce.isBoolean)(e[r])?{}:e[r]||{}}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,combine,custom,disables,gitignore,ignores,imports,javascript,lntvow,prettier,regexp,renameRules,stylistic,test,typescript,vue});
|
|
1
|
+
"use strict";var be=Object.create;var b=Object.defineProperty;var we=Object.getOwnPropertyDescriptor;var Oe=Object.getOwnPropertyNames;var he=Object.getPrototypeOf,Ce=Object.prototype.hasOwnProperty;var Te=(e,r)=>{for(var o in r)b(e,o,{get:r[o],enumerable:!0})},M=(e,r,o,s)=>{if(r&&typeof r=="object"||typeof r=="function")for(let t of Oe(r))!Ce.call(e,t)&&t!==o&&b(e,t,{get:()=>r[t],enumerable:!(s=we(r,t))||s.enumerable});return e};var n=(e,r,o)=>(o=e!=null?be(he(e)):{},M(r||!e||!e.__esModule?b(o,"default",{value:e,enumerable:!0}):o,e)),_e=e=>M(b({},"__esModule",{value:!0}),e);var He={};Te(He,{GLOB_ALL_SRC:()=>Ve,GLOB_ASTRO:()=>Ne,GLOB_CSS:()=>ke,GLOB_EXCLUDE:()=>I,GLOB_GRAPHQL:()=>Ue,GLOB_HTML:()=>Q,GLOB_JS:()=>Se,GLOB_JSON:()=>J,GLOB_JSON5:()=>W,GLOB_JSONC:()=>Re,GLOB_JSX:()=>je,GLOB_LESS:()=>Be,GLOB_MARKDOWN:()=>j,GLOB_MARKDOWN_CODE:()=>Ae,GLOB_MARKDOWN_IN_MARKDOWN:()=>Ee,GLOB_POSTCSS:()=>Ge,GLOB_SCSS:()=>Pe,GLOB_SRC:()=>c,GLOB_SRC_EXT:()=>f,GLOB_STYLE:()=>X,GLOB_SVELTE:()=>H,GLOB_TESTS:()=>F,GLOB_TOML:()=>qe,GLOB_TS:()=>Fe,GLOB_TSX:()=>Ie,GLOB_VUE:()=>O,GLOB_XML:()=>z,GLOB_YAML:()=>Y,combine:()=>Le,custom:()=>S,disables:()=>k,gitignore:()=>G,ignores:()=>B,imports:()=>P,javascript:()=>R,lntvow:()=>xe,prettier:()=>E,regexp:()=>N,renameRules:()=>w,stylistic:()=>U,test:()=>A,typescript:()=>V,vue:()=>$});module.exports=_e(He);function w(e,r){return Object.fromEntries(Object.entries(e).map(([o,s])=>{for(let[t,p]of Object.entries(r))if(o.startsWith(`${t}/`))return[p+o.slice(t.length),s];return[o,s]}))}async function Le(...e){return(await Promise.all(e)).flat()}var K=n(require("@lntvow/eslint-plugin"),1);async function S(){return[{name:"lntvow/custom/setup",plugins:{lntvow:K.default}}]}var f="?([cm])[jt]s?(x)",c="**/*.?([cm])[jt]s?(x)",Se="**/*.?([cm])js",je="**/*.?([cm])jsx",Fe="**/*.?([cm])ts",Ie="**/*.?([cm])tsx",X="**/*.{c,le,sc}ss",ke="**/*.css",Ge="**/*.{p,post}css",Be="**/*.less",Pe="**/*.scss",J="**/*.json",W="**/*.json5",Re="**/*.jsonc",j="**/*.md",Ee="**/*.md/*.md",H="**/*.svelte",O="**/*.vue",Y="**/*.y?(a)ml",qe="**/*.toml",z="**/*.xml",Q="**/*.htm?(l)",Ne="**/*.astro",Ue="**/*.{g,graph}ql",Ae=`${j}/${c}`,F=[`**/__tests__/**/*.${f}`,`**/*.spec.${f}`,`**/*.test.${f}`,`**/*.bench.${f}`,`**/*.benchmark.${f}`],Ve=[c,X,J,W,j,H,O,Y,z,Q],I=["**/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/${c}`],name:"lntvow/disables/scripts",rules:{"no-console":"off"}},{files:[`cli/${c}`,`cli.${f}`],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 ne=n(require("fs"),1);var ee=n(require("process"),1),De=n(require("fs/promises"),1),re=require("url"),oe=n(require("fs"),1),m=n(require("path"),1),Z=e=>e instanceof URL?(0,re.fileURLToPath)(e):e;function te(e,{cwd:r=ee.default.cwd(),type:o="file",stopAt:s}={}){let t=m.default.resolve(Z(r)??""),{root:p}=m.default.parse(t);for(s=m.default.resolve(t,Z(s)??p);t&&t!==s&&t!==p;){let l=m.default.isAbsolute(e)?e:m.default.join(t,e);try{let u=oe.default.statSync(l,{throwIfNoEntry:!1});if(o==="file"&&u?.isFile()||o==="directory"&&u?.isDirectory())return l}catch{}t=m.default.dirname(t)}}var se=require("@lntvow/utils"),ie=n(require("parse-gitignore"),1);async function G(e){let{name:r=".gitignore",root:o=!1,files:s=o?r:te(r)||[],strict:t=!0}=e,p=(0,se.castArray)(s),l=[];for(let u of p){let g;try{g=ne.default.readFileSync(u,"utf8")}catch(i){if(t)throw i;continue}let _=(0,ie.default)(g).globs();for(let i of _)i.type==="ignore"?l.push(...i.patterns):i.type==="unignore"&&l.push(...i.patterns.map(y=>`!${y}`))}if(t&&p.length===0)throw new Error("No .gitignore file found");return[{name:"lntvow/gitignore",ignores:l}]}async function B(e=[]){return[{name:"lntvow/ignores",ignores:[...I,...e]}]}var pe=n(require("eslint-plugin-import-x"),1);async function P(e={}){let{typescript:r=!1}=e;return[{name:"lntvow/imports/rules",plugins:{import:pe.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 ae=n(require("@eslint/js"),1),h=n(require("globals"),1);async function R(e={}){let{overrides:r={}}=e;return[{name:"lntvow/javascript/setup",languageOptions:{ecmaVersion:2022,sourceType:"module",parserOptions:{ecmaVersion:2022,sourceType:"module",ecmaFeatures:{jsx:!0}},globals:{...h.default.browser,...h.default.es2021,...h.default.node}},linterOptions:{reportUnusedDisableDirectives:!0}},{name:"lntvow/javascript/rules",rules:{...ae.default.configs.recommended.rules,...$e,"no-unused-vars":"warn",...r}}]}var $e={"array-callback-return":"error","no-await-in-loop":"off","no-constructor-return":"error","no-duplicate-imports":"error","no-inner-declarations":"error","no-promise-executor-return":"error","no-self-compare":"error","no-template-curly-in-string":"error","no-unmodified-loop-condition":"error","no-unreachable-loop":"error","no-use-before-define":["error",{functions:!1,variables:!1}],"no-useless-assignment":"off","require-atomic-updates":"off","accessor-pairs":"error","arrow-body-style":"error","block-scoped-var":"error",camelcase:"warn","capitalized-comments":"off","class-methods-use-this":"error",complexity:"off","consistent-return":"off","consistent-this":"off",curly:["error","multi-line"],"default-case":"error","default-case-last":"error","default-param-last":"error","dot-notation":"error",eqeqeq:"error","func-name-matching":"error","func-names":"off","func-style":"off","grouped-accessor-pairs":"error","guard-for-in":"off","id-denylist":"off","id-length":"off","id-match":"off","init-declarations":"off","logical-assignment-operators":"error","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-alert":"error","no-array-constructor":"error","no-bitwise":"off","no-caller":"error","no-console":"warn","no-continue":"off","no-div-regex":"error","no-else-return":"error","no-empty-function":"error","no-eq-null":"error","no-eval":"error","no-extend-native":"error","no-extra-bind":"error","no-extra-label":"error","no-implicit-coercion":"error","no-implicit-globals":"error","no-implied-eval":"error","no-inline-comments":"off","no-invalid-this":"error","no-iterator":"error","no-label-var":"error","no-labels":"error","no-lone-blocks":"error","no-lonely-if":"error","no-loop-func":"error","no-magic-numbers":"off","no-multi-assign":"error","no-multi-str":"error","no-negated-condition":"off","no-nested-ternary":"off","no-new":"off","no-new-func":"error","no-new-wrappers":"error","no-object-constructor":"error","no-octal-escape":"error","no-param-reassign":"error","no-plusplus":"off","no-proto":"error","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-return-assign":"error","no-script-url":"error","no-sequences":"error","no-shadow":0,"no-ternary":"off","no-throw-literal":"off","no-undef-init":"error","no-undefined":"off","no-underscore-dangle":"off","no-unneeded-ternary":"error","no-unused-expressions":["error",{allowShortCircuit:!0,allowTaggedTemplates:!0,allowTernary:!0}],"no-useless-call":"error","no-useless-computed-key":"error","no-useless-concat":"error","no-useless-constructor":"error","no-useless-rename":"error","no-useless-return":"error","no-var":"error","no-void":"off","no-warning-comments":"off","object-shorthand":"error","one-var":"off","operator-assignment":"error","prefer-arrow-callback":"error","prefer-const":"error","prefer-destructuring":"off","prefer-exponentiation-operator":"error","prefer-named-capture-group":"off","prefer-numeric-literals":"off","prefer-object-has-own":"error","prefer-object-spread":"error","prefer-promise-reject-errors":"off","prefer-regex-literals":"off","prefer-rest-params":"error","prefer-spread":"error","prefer-template":"error",radix:"off","require-await":"off","require-unicode-regexp":"off","sort-imports":"off","sort-keys":"off","sort-vars":"off",strict:"off","symbol-description":"error","vars-on-top":"error",yoda:"error","unicode-bom":"error"};var le=n(require("eslint-plugin-prettier"),1),fe=n(require("eslint-config-prettier"),1);async function E(){return[{name:"lntvow/prettier/setup",plugins:{prettier:le.default}},{name:"lntvow/prettier/rules",rules:{...fe.default.rules,"prettier/prettier":"warn"}}]}var q=require("eslint-plugin-regexp");async function N(e={}){let{overrides:r}=e,o=q.configs["flat/recommended"].plugins.regexp,{rules:s}=q.configs["flat/recommended"];return[{name:"lntvow/regexp/setup",plugins:{regexp:o}},{name:"lntvow/regexp/rules",rules:{...s,...r}}]}var ce=n(require("@stylistic/eslint-plugin"),1);async function U(e={}){let{overrides:r={}}=e;return[{name:"lntvow/stylistic/setup",plugins:{style:ce.default}},{name:"lntvow/stylistic/rules",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}],...r}}]}var ue=n(require("eslint-plugin-vitest"),1);async function A(e={}){let{overrides:r}=e;return[{name:"lntvow/test/setup",plugins:{test:ue.default}},{name:"lntvow/test/rules",files:[...F],rules:{"lntvow/newline-before-describe-test":"error",...r}}]}var C=n(require("@typescript-eslint/eslint-plugin"),1),me=n(require("@typescript-eslint/parser"),1);async function V(e={}){let{componentExts:r=[],overrides:o={},parserOptions:s={}}=e,t=[c,...r.map(p=>`**/*.${p}`)];return[{name:"lntvow/typescript/setup",plugins:{ts:C.default}},{name:"lntvow/typescript/rules",languageOptions:{parser:me.default,parserOptions:{sourceType:"module"}},files:t,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}],"no-unused-expressions":"off","ts/no-unused-expressions":["error",{allowShortCircuit:!0,allowTaggedTemplates:!0,allowTernary:!0}],...o}}]}var de=require("local-pkg"),D=n(require("@typescript-eslint/parser"),1),ve=n(require("vue-eslint-parser"),1),a=n(require("eslint-plugin-vue"),1);var Me={...a.default.configs["vue3-essential"].rules,...a.default.configs["vue3-strongly-recommended"].rules,...a.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","vue/no-deprecated-model-definition":"error"},Ke={...a.default.configs.essential.rules,...a.default.configs["strongly-recommended"].rules,...a.default.configs.recommended.rules,"vue/block-lang":["error",{script:{allowNoLang:!0}}],"vue/block-order":["error",{order:[["script","template"],"style[scoped]"]}]};async function $(e={}){let{overrides:r={},vueVersion:o=Xe()}=e;return[{name:"lntvow/vue/setup",plugins:{vue:a.default}},{name:"lntvow/vue/rules",languageOptions:{parser:ve.default,parserOptions:{ecmaFeatures:{jsx:!0},parser:{ts:D.default,tsx:D.default},sourceType:"module"}},processor:a.default.processors[".vue"],files:[O],rules:{...a.default.configs.base.rules,...o===3?Me:Ke,"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",...r}}]}function Xe(){let e=(0,de.getPackageInfoSync)("vue",{paths:[process.cwd()]});return e&&e.version?Number(e.version[0]):3}var ge=require("eslint-flat-config-utils"),ye=require("@lntvow/utils"),T=require("local-pkg");var Je=["name","languageOptions","linterOptions","processor","plugins","rules","settings"],We={"@stylistic":"style","@typescript-eslint":"typescript","import-x":"import",vitest:"test"};function xe(e={},...r){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:o=!0,componentExts:s=[],gitignore:t=!0,regexp:p=!0,typescript:l=(0,T.isPackageExists)("typescript"),vue:u=["vue","nuxt","vitepress"].some(x=>(0,T.isPackageExists)(x)),test:g=(0,T.isPackageExists)("vitest"),stylistic:_=!0}=e,i=[];i.push(B(e.ignores),S(),R({...d(e,"javascript")}),P({typescript:!!l}),E()),t&&i.push(G({...d(e,"gitignore")})),u&&s.push("vue"),l&&i.push(V({...d(e,"typescript"),componentExts:s})),u&&i.push($({...d(e,"vue")})),p&&i.push(N({...d(e,"regexp")})),g&&i.push(A({...d(e,"test")})),_&&i.push(U({...d(e,"stylistic")})),i.push(k());let y=Je.reduce((x,L)=>(L in e&&(x[L]=e[L]),x),{});Object.keys(y).length&&i.push([y]);let v=new ge.FlatConfigComposer;return v=v.append(...i,...r),o&&(v=v.renamePlugins(We)),v}function d(e,r){return(0,ye.isBoolean)(e[r])?{}:e[r]||{}}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,combine,custom,disables,gitignore,ignores,imports,javascript,lntvow,prettier,regexp,renameRules,stylistic,test,typescript,vue});
|
package/dist/index.d.cts
CHANGED
|
@@ -10164,7 +10164,7 @@ type Yoda = []|[("always" | "never")]|[("always" | "never"), {
|
|
|
10164
10164
|
onlyEquality?: boolean
|
|
10165
10165
|
}]
|
|
10166
10166
|
// Names of all the configs
|
|
10167
|
-
type ConfigNames = 'lntvow/custom' | 'lntvow/javascript/setup' | 'lntvow/javascript/rules' | 'lntvow/prettier/rules' | 'lntvow/imports/rules' | 'lntvow/typescript/setup' | 'lntvow/typescript/rules' | 'lntvow/vue/setup' | 'lntvow/vue/rules' | 'lntvow/regexp/rules' | 'lntvow/test/setup' | 'lntvow/test/rules' | 'lntvow/stylistic/rules' | 'lntvow/disables/scripts' | 'lntvow/disables/cli' | 'lntvow/disables/dts' | 'lntvow/disables/test' | 'lntvow/disables/cjs'
|
|
10167
|
+
type ConfigNames = 'lntvow/custom/setup' | 'lntvow/javascript/setup' | 'lntvow/javascript/rules' | 'lntvow/prettier/setup' | 'lntvow/prettier/rules' | 'lntvow/imports/rules' | 'lntvow/typescript/setup' | 'lntvow/typescript/rules' | 'lntvow/vue/setup' | 'lntvow/vue/rules' | 'lntvow/regexp/setup' | 'lntvow/regexp/rules' | 'lntvow/test/setup' | 'lntvow/test/rules' | 'lntvow/stylistic/setup' | 'lntvow/stylistic/rules' | 'lntvow/disables/scripts' | 'lntvow/disables/cli' | 'lntvow/disables/dts' | 'lntvow/disables/test' | 'lntvow/disables/cjs'
|
|
10168
10168
|
|
|
10169
10169
|
type Awaitable<T> = T | Promise<T>;
|
|
10170
10170
|
type Rules = RuleOptions;
|
package/dist/index.d.ts
CHANGED
|
@@ -10164,7 +10164,7 @@ type Yoda = []|[("always" | "never")]|[("always" | "never"), {
|
|
|
10164
10164
|
onlyEquality?: boolean
|
|
10165
10165
|
}]
|
|
10166
10166
|
// Names of all the configs
|
|
10167
|
-
type ConfigNames = 'lntvow/custom' | 'lntvow/javascript/setup' | 'lntvow/javascript/rules' | 'lntvow/prettier/rules' | 'lntvow/imports/rules' | 'lntvow/typescript/setup' | 'lntvow/typescript/rules' | 'lntvow/vue/setup' | 'lntvow/vue/rules' | 'lntvow/regexp/rules' | 'lntvow/test/setup' | 'lntvow/test/rules' | 'lntvow/stylistic/rules' | 'lntvow/disables/scripts' | 'lntvow/disables/cli' | 'lntvow/disables/dts' | 'lntvow/disables/test' | 'lntvow/disables/cjs'
|
|
10167
|
+
type ConfigNames = 'lntvow/custom/setup' | 'lntvow/javascript/setup' | 'lntvow/javascript/rules' | 'lntvow/prettier/setup' | 'lntvow/prettier/rules' | 'lntvow/imports/rules' | 'lntvow/typescript/setup' | 'lntvow/typescript/rules' | 'lntvow/vue/setup' | 'lntvow/vue/rules' | 'lntvow/regexp/setup' | 'lntvow/regexp/rules' | 'lntvow/test/setup' | 'lntvow/test/rules' | 'lntvow/stylistic/setup' | 'lntvow/stylistic/rules' | 'lntvow/disables/scripts' | 'lntvow/disables/cli' | 'lntvow/disables/dts' | 'lntvow/disables/test' | 'lntvow/disables/cjs'
|
|
10168
10168
|
|
|
10169
10169
|
type Awaitable<T> = T | Promise<T>;
|
|
10170
10170
|
type Rules = RuleOptions;
|
package/dist/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
function b(e,r){return Object.fromEntries(Object.entries(e).map(([t,n])=>{for(let[s,p]of Object.entries(r))if(t.startsWith(`${s}/`))return[p+t.slice(s.length),n];return[t,n]}))}async function ye(...e){return(await Promise.all(e)).flat()}import U from"@lntvow/eslint-plugin";async function T(){return[{name:"lntvow/custom",plugins:{lntvow:U}}]}var a="?([cm])[jt]s?(x)",l="**/*.?([cm])[jt]s?(x)",Oe="**/*.?([cm])js",he="**/*.?([cm])jsx",Ce="**/*.?([cm])ts",Te="**/*.?([cm])tsx",$="**/*.{c,le,sc}ss",_e="**/*.css",Le="**/*.{p,post}css",Se="**/*.less",je="**/*.scss",D="**/*.json",M="**/*.json5",ke="**/*.jsonc",_="**/*.md",Fe="**/*.md/*.md",K="**/*.svelte",w="**/*.vue",X="**/*.y?(a)ml",Ie="**/*.toml",J="**/*.xml",W="**/*.htm?(l)",Ge="**/*.astro",Be="**/*.{g,graph}ql",Pe=`${_}/${l}`,L=[`**/__tests__/**/*.${a}`,`**/*.spec.${a}`,`**/*.test.${a}`,`**/*.bench.${a}`,`**/*.benchmark.${a}`],Re=[l,$,D,M,_,K,w,X,J,W],S=["**/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/${l}`],name:"lntvow/disables/scripts",rules:{"no-console":"off"}},{files:[`cli/${l}`,`cli.${a}`],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 H from"fs";import{findUpSync as Y}from"find-up-simple";import{castArray as z}from"@lntvow/utils";import Q from"parse-gitignore";async function k(e){let{name:r=".gitignore",root:t=!1,files:n=t?r:Y(r)||[],strict:s=!0}=e,p=z(n),u=[];for(let m of p){let d;try{d=H.readFileSync(m,"utf8")}catch(o){if(s)throw o;continue}let y=Q(d).globs();for(let o of y)o.type==="ignore"?u.push(...o.patterns):o.type==="unignore"&&u.push(...o.patterns.map(v=>`!${v}`))}if(s&&p.length===0)throw new Error("No .gitignore file found");return[{name:"lntvow/gitignore",ignores:u}]}async function F(e=[]){return[{name:"lntvow/ignores",ignores:[...S,...e]}]}import Z from"eslint-plugin-import-x";async function I(e={}){let{typescript:r=!1}=e;return[{name:"lntvow/imports/rules",plugins:{import:Z},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 ee from"@eslint/js";import O from"globals";async function G(e={}){let{overrides:r={}}=e;return[{name:"lntvow/javascript/setup",languageOptions:{ecmaVersion:2022,sourceType:"module",parserOptions:{ecmaVersion:2022,sourceType:"module",ecmaFeatures:{jsx:!0}},globals:{...O.browser,...O.es2021,...O.node}},linterOptions:{reportUnusedDisableDirectives:!0}},{name:"lntvow/javascript/rules",rules:{...ee.configs.recommended.rules,...re,"no-unused-vars":"warn",...r}}]}var re={"array-callback-return":"error","no-await-in-loop":"off","no-constructor-return":"error","no-duplicate-imports":"error","no-inner-declarations":"error","no-promise-executor-return":"error","no-self-compare":"error","no-template-curly-in-string":"error","no-unmodified-loop-condition":"error","no-unreachable-loop":"error","no-use-before-define":["error",{functions:!1,variables:!1}],"no-useless-assignment":"off","require-atomic-updates":"off","accessor-pairs":"error","arrow-body-style":"error","block-scoped-var":"error",camelcase:"warn","capitalized-comments":"off","class-methods-use-this":"error",complexity:"off","consistent-return":"off","consistent-this":"off",curly:["error","multi-line"],"default-case":"error","default-case-last":"error","default-param-last":"error","dot-notation":"error",eqeqeq:"error","func-name-matching":"error","func-names":"off","func-style":"off","grouped-accessor-pairs":"error","guard-for-in":"off","id-denylist":"off","id-length":"off","id-match":"off","init-declarations":"off","logical-assignment-operators":"error","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-alert":"error","no-array-constructor":"error","no-bitwise":"off","no-caller":"error","no-console":"warn","no-continue":"off","no-div-regex":"error","no-else-return":"error","no-empty-function":"error","no-eq-null":"error","no-eval":"error","no-extend-native":"error","no-extra-bind":"error","no-extra-label":"error","no-implicit-coercion":"error","no-implicit-globals":"error","no-implied-eval":"error","no-inline-comments":"off","no-invalid-this":"error","no-iterator":"error","no-label-var":"error","no-labels":"error","no-lone-blocks":"error","no-lonely-if":"error","no-loop-func":"error","no-magic-numbers":"off","no-multi-assign":"error","no-multi-str":"error","no-negated-condition":"off","no-nested-ternary":"off","no-new":"off","no-new-func":"error","no-new-wrappers":"error","no-object-constructor":"error","no-octal-escape":"error","no-param-reassign":"error","no-plusplus":"off","no-proto":"error","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-return-assign":"error","no-script-url":"error","no-sequences":"error","no-shadow":0,"no-ternary":"off","no-throw-literal":"off","no-undef-init":"error","no-undefined":"off","no-underscore-dangle":"off","no-unneeded-ternary":"error","no-unused-expressions":["error",{allowShortCircuit:!0,allowTaggedTemplates:!0,allowTernary:!0}],"no-useless-call":"error","no-useless-computed-key":"error","no-useless-concat":"error","no-useless-constructor":"error","no-useless-rename":"error","no-useless-return":"error","no-var":"error","no-void":"off","no-warning-comments":"off","object-shorthand":"error","one-var":"off","operator-assignment":"error","prefer-arrow-callback":"error","prefer-const":"error","prefer-destructuring":"off","prefer-exponentiation-operator":"error","prefer-named-capture-group":"off","prefer-numeric-literals":"off","prefer-object-has-own":"error","prefer-object-spread":"error","prefer-promise-reject-errors":"off","prefer-regex-literals":"off","prefer-rest-params":"error","prefer-spread":"error","prefer-template":"error",radix:"off","require-await":"off","require-unicode-regexp":"off","sort-imports":"off","sort-keys":"off","sort-vars":"off",strict:"off","symbol-description":"error","vars-on-top":"error",yoda:"error","unicode-bom":"error"};import oe from"eslint-plugin-prettier";import te from"eslint-config-prettier";async function B(){return[{name:"lntvow/prettier/rules",plugins:{prettier:oe},rules:{...te.rules,"prettier/prettier":"warn"}}]}import{configs as P}from"eslint-plugin-regexp";async function R(e={}){let{overrides:r}=e,t=P["flat/recommended"].plugins.regexp,{rules:n}=P["flat/recommended"];return[{name:"lntvow/regexp/rules",plugins:{regexp:t},rules:{...n,...r}}]}import ne from"@stylistic/eslint-plugin";async function E(e={}){let{overrides:r={}}=e;return[{name:"lntvow/stylistic/rules",plugins:{style:ne},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}],...r}}]}import se from"eslint-plugin-vitest";async function q(e={}){let{overrides:r}=e;return[{name:"lntvow/test/setup",plugins:{test:se}},{name:"lntvow/test/rules",files:[...L],rules:{"lntvow/newline-before-describe-test":"error",...r}}]}import h from"@typescript-eslint/eslint-plugin";import ie from"@typescript-eslint/parser";async function N(e={}){let{componentExts:r=[],overrides:t={},parserOptions:n={}}=e,s=[l,...r.map(p=>`**/*.${p}`)];return[{name:"lntvow/typescript/setup",plugins:{ts:h}},{name:"lntvow/typescript/rules",languageOptions:{parser:ie,parserOptions:{sourceType:"module"}},files:s,rules:{...b(h.configs["eslint-recommended"].overrides[0].rules,{"@typescript-eslint":"ts"}),...b(h.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}],"no-unused-expressions":"off","ts/no-unused-expressions":["error",{allowShortCircuit:!0,allowTaggedTemplates:!0,allowTernary:!0}],...t}}]}import{getPackageInfoSync as pe}from"local-pkg";import A from"@typescript-eslint/parser";import ae from"vue-eslint-parser";import i from"eslint-plugin-vue";var le={...i.configs["vue3-essential"].rules,...i.configs["vue3-strongly-recommended"].rules,...i.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","vue/no-deprecated-model-definition":"error"},fe={...i.configs.essential.rules,...i.configs["strongly-recommended"].rules,...i.configs.recommended.rules,"vue/block-lang":["error",{script:{allowNoLang:!0}}],"vue/block-order":["error",{order:[["script","template"],"style[scoped]"]}]};async function V(e={}){let{overrides:r={},vueVersion:t=ue()}=e;return[{name:"lntvow/vue/setup",plugins:{vue:i}},{name:"lntvow/vue/rules",languageOptions:{parser:ae,parserOptions:{ecmaFeatures:{jsx:!0},parser:{ts:A,tsx:A},sourceType:"module"}},processor:i.processors[".vue"],files:[w],rules:{...i.configs.base.rules,...t===3?le:fe,"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",...r}}]}function ue(){let e=pe("vue",{paths:[process.cwd()]});return e&&e.version?Number(e.version[0]):3}import{FlatConfigComposer as ce}from"eslint-flat-config-utils";import{isBoolean as me}from"@lntvow/utils";import{isPackageExists as C}from"local-pkg";var de=["name","languageOptions","linterOptions","processor","plugins","rules","settings"],ve={"@stylistic":"style","@typescript-eslint":"typescript","import-x":"import",vitest:"test"};function ge(e={},...r){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:t=!0,componentExts:n=[],gitignore:s=!0,regexp:p=!0,typescript:u=C("typescript"),vue:m=["vue","nuxt","vitepress"].some(g=>C(g)),test:d=C("vitest"),stylistic:y=!0}=e,o=[];o.push(F(e.ignores),T(),G({...f(e,"javascript")}),I({typescript:!!u}),B()),s&&o.push(k({...f(e,"gitignore")})),m&&n.push("vue"),u&&o.push(N({...f(e,"typescript"),componentExts:n})),m&&o.push(V({...f(e,"vue")})),p&&o.push(R({...f(e,"regexp")})),d&&o.push(q({...f(e,"test")})),y&&o.push(E({...f(e,"stylistic")})),o.push(j());let v=de.reduce((g,x)=>(x in e&&(g[x]=e[x]),g),{});Object.keys(v).length&&o.push([v]);let c=new ce;return c=c.append(...o,...r),t&&(c=c.renamePlugins(ve)),c}function f(e,r){return me(e[r])?{}:e[r]||{}}export{Re as GLOB_ALL_SRC,Ge as GLOB_ASTRO,_e as GLOB_CSS,S as GLOB_EXCLUDE,Be as GLOB_GRAPHQL,W as GLOB_HTML,Oe as GLOB_JS,D as GLOB_JSON,M as GLOB_JSON5,ke as GLOB_JSONC,he as GLOB_JSX,Se as GLOB_LESS,_ as GLOB_MARKDOWN,Pe as GLOB_MARKDOWN_CODE,Fe as GLOB_MARKDOWN_IN_MARKDOWN,Le as GLOB_POSTCSS,je as GLOB_SCSS,l as GLOB_SRC,a as GLOB_SRC_EXT,$ as GLOB_STYLE,K as GLOB_SVELTE,L as GLOB_TESTS,Ie as GLOB_TOML,Ce as GLOB_TS,Te as GLOB_TSX,w as GLOB_VUE,J as GLOB_XML,X as GLOB_YAML,ye as combine,T as custom,j as disables,k as gitignore,F as ignores,I as imports,G as javascript,ge as lntvow,B as prettier,R as regexp,b as renameRules,E as stylistic,q as test,N as typescript,V as vue};
|
|
1
|
+
function w(e,r){return Object.fromEntries(Object.entries(e).map(([n,s])=>{for(let[o,i]of Object.entries(r))if(n.startsWith(`${o}/`))return[i+n.slice(o.length),s];return[n,s]}))}async function he(...e){return(await Promise.all(e)).flat()}import M from"@lntvow/eslint-plugin";async function _(){return[{name:"lntvow/custom/setup",plugins:{lntvow:M}}]}var f="?([cm])[jt]s?(x)",c="**/*.?([cm])[jt]s?(x)",Le="**/*.?([cm])js",Se="**/*.?([cm])jsx",je="**/*.?([cm])ts",Fe="**/*.?([cm])tsx",K="**/*.{c,le,sc}ss",Ie="**/*.css",ke="**/*.{p,post}css",Ge="**/*.less",Be="**/*.scss",X="**/*.json",J="**/*.json5",Pe="**/*.jsonc",L="**/*.md",Re="**/*.md/*.md",W="**/*.svelte",O="**/*.vue",H="**/*.y?(a)ml",Ee="**/*.toml",Y="**/*.xml",z="**/*.htm?(l)",qe="**/*.astro",Ne="**/*.{g,graph}ql",Ue=`${L}/${c}`,S=[`**/__tests__/**/*.${f}`,`**/*.spec.${f}`,`**/*.test.${f}`,`**/*.bench.${f}`,`**/*.benchmark.${f}`],Ae=[c,K,X,J,L,W,O,H,Y,z],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 F(){return[{files:[`scripts/${c}`],name:"lntvow/disables/scripts",rules:{"no-console":"off"}},{files:[`cli/${c}`,`cli.${f}`],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 re from"fs";import Q from"node:process";import{fileURLToPath as Z}from"node:url";import ee from"node:fs";import m from"node:path";var I=e=>e instanceof URL?Z(e):e;function k(e,{cwd:r=Q.cwd(),type:n="file",stopAt:s}={}){let o=m.resolve(I(r)??""),{root:i}=m.parse(o);for(s=m.resolve(o,I(s)??i);o&&o!==s&&o!==i;){let p=m.isAbsolute(e)?e:m.join(o,e);try{let l=ee.statSync(p,{throwIfNoEntry:!1});if(n==="file"&&l?.isFile()||n==="directory"&&l?.isDirectory())return p}catch{}o=m.dirname(o)}}import{castArray as oe}from"@lntvow/utils";import te from"parse-gitignore";async function G(e){let{name:r=".gitignore",root:n=!1,files:s=n?r:k(r)||[],strict:o=!0}=e,i=oe(s),p=[];for(let l of i){let v;try{v=re.readFileSync(l,"utf8")}catch(t){if(o)throw t;continue}let x=te(v).globs();for(let t of x)t.type==="ignore"?p.push(...t.patterns):t.type==="unignore"&&p.push(...t.patterns.map(g=>`!${g}`))}if(o&&i.length===0)throw new Error("No .gitignore file found");return[{name:"lntvow/gitignore",ignores:p}]}async function B(e=[]){return[{name:"lntvow/ignores",ignores:[...j,...e]}]}import ne from"eslint-plugin-import-x";async function P(e={}){let{typescript:r=!1}=e;return[{name:"lntvow/imports/rules",plugins:{import:ne},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 se from"@eslint/js";import h from"globals";async function R(e={}){let{overrides:r={}}=e;return[{name:"lntvow/javascript/setup",languageOptions:{ecmaVersion:2022,sourceType:"module",parserOptions:{ecmaVersion:2022,sourceType:"module",ecmaFeatures:{jsx:!0}},globals:{...h.browser,...h.es2021,...h.node}},linterOptions:{reportUnusedDisableDirectives:!0}},{name:"lntvow/javascript/rules",rules:{...se.configs.recommended.rules,...ie,"no-unused-vars":"warn",...r}}]}var ie={"array-callback-return":"error","no-await-in-loop":"off","no-constructor-return":"error","no-duplicate-imports":"error","no-inner-declarations":"error","no-promise-executor-return":"error","no-self-compare":"error","no-template-curly-in-string":"error","no-unmodified-loop-condition":"error","no-unreachable-loop":"error","no-use-before-define":["error",{functions:!1,variables:!1}],"no-useless-assignment":"off","require-atomic-updates":"off","accessor-pairs":"error","arrow-body-style":"error","block-scoped-var":"error",camelcase:"warn","capitalized-comments":"off","class-methods-use-this":"error",complexity:"off","consistent-return":"off","consistent-this":"off",curly:["error","multi-line"],"default-case":"error","default-case-last":"error","default-param-last":"error","dot-notation":"error",eqeqeq:"error","func-name-matching":"error","func-names":"off","func-style":"off","grouped-accessor-pairs":"error","guard-for-in":"off","id-denylist":"off","id-length":"off","id-match":"off","init-declarations":"off","logical-assignment-operators":"error","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-alert":"error","no-array-constructor":"error","no-bitwise":"off","no-caller":"error","no-console":"warn","no-continue":"off","no-div-regex":"error","no-else-return":"error","no-empty-function":"error","no-eq-null":"error","no-eval":"error","no-extend-native":"error","no-extra-bind":"error","no-extra-label":"error","no-implicit-coercion":"error","no-implicit-globals":"error","no-implied-eval":"error","no-inline-comments":"off","no-invalid-this":"error","no-iterator":"error","no-label-var":"error","no-labels":"error","no-lone-blocks":"error","no-lonely-if":"error","no-loop-func":"error","no-magic-numbers":"off","no-multi-assign":"error","no-multi-str":"error","no-negated-condition":"off","no-nested-ternary":"off","no-new":"off","no-new-func":"error","no-new-wrappers":"error","no-object-constructor":"error","no-octal-escape":"error","no-param-reassign":"error","no-plusplus":"off","no-proto":"error","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-return-assign":"error","no-script-url":"error","no-sequences":"error","no-shadow":0,"no-ternary":"off","no-throw-literal":"off","no-undef-init":"error","no-undefined":"off","no-underscore-dangle":"off","no-unneeded-ternary":"error","no-unused-expressions":["error",{allowShortCircuit:!0,allowTaggedTemplates:!0,allowTernary:!0}],"no-useless-call":"error","no-useless-computed-key":"error","no-useless-concat":"error","no-useless-constructor":"error","no-useless-rename":"error","no-useless-return":"error","no-var":"error","no-void":"off","no-warning-comments":"off","object-shorthand":"error","one-var":"off","operator-assignment":"error","prefer-arrow-callback":"error","prefer-const":"error","prefer-destructuring":"off","prefer-exponentiation-operator":"error","prefer-named-capture-group":"off","prefer-numeric-literals":"off","prefer-object-has-own":"error","prefer-object-spread":"error","prefer-promise-reject-errors":"off","prefer-regex-literals":"off","prefer-rest-params":"error","prefer-spread":"error","prefer-template":"error",radix:"off","require-await":"off","require-unicode-regexp":"off","sort-imports":"off","sort-keys":"off","sort-vars":"off",strict:"off","symbol-description":"error","vars-on-top":"error",yoda:"error","unicode-bom":"error"};import pe from"eslint-plugin-prettier";import ae from"eslint-config-prettier";async function E(){return[{name:"lntvow/prettier/setup",plugins:{prettier:pe}},{name:"lntvow/prettier/rules",rules:{...ae.rules,"prettier/prettier":"warn"}}]}import{configs as q}from"eslint-plugin-regexp";async function N(e={}){let{overrides:r}=e,n=q["flat/recommended"].plugins.regexp,{rules:s}=q["flat/recommended"];return[{name:"lntvow/regexp/setup",plugins:{regexp:n}},{name:"lntvow/regexp/rules",rules:{...s,...r}}]}import le from"@stylistic/eslint-plugin";async function U(e={}){let{overrides:r={}}=e;return[{name:"lntvow/stylistic/setup",plugins:{style:le}},{name:"lntvow/stylistic/rules",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}],...r}}]}import fe from"eslint-plugin-vitest";async function A(e={}){let{overrides:r}=e;return[{name:"lntvow/test/setup",plugins:{test:fe}},{name:"lntvow/test/rules",files:[...S],rules:{"lntvow/newline-before-describe-test":"error",...r}}]}import C from"@typescript-eslint/eslint-plugin";import ce from"@typescript-eslint/parser";async function V(e={}){let{componentExts:r=[],overrides:n={},parserOptions:s={}}=e,o=[c,...r.map(i=>`**/*.${i}`)];return[{name:"lntvow/typescript/setup",plugins:{ts:C}},{name:"lntvow/typescript/rules",languageOptions:{parser:ce,parserOptions:{sourceType:"module"}},files:o,rules:{...w(C.configs["eslint-recommended"].overrides[0].rules,{"@typescript-eslint":"ts"}),...w(C.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}],"no-unused-expressions":"off","ts/no-unused-expressions":["error",{allowShortCircuit:!0,allowTaggedTemplates:!0,allowTernary:!0}],...n}}]}import{getPackageInfoSync as ue}from"local-pkg";import D from"@typescript-eslint/parser";import me from"vue-eslint-parser";import a from"eslint-plugin-vue";var de={...a.configs["vue3-essential"].rules,...a.configs["vue3-strongly-recommended"].rules,...a.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","vue/no-deprecated-model-definition":"error"},ve={...a.configs.essential.rules,...a.configs["strongly-recommended"].rules,...a.configs.recommended.rules,"vue/block-lang":["error",{script:{allowNoLang:!0}}],"vue/block-order":["error",{order:[["script","template"],"style[scoped]"]}]};async function $(e={}){let{overrides:r={},vueVersion:n=ge()}=e;return[{name:"lntvow/vue/setup",plugins:{vue:a}},{name:"lntvow/vue/rules",languageOptions:{parser:me,parserOptions:{ecmaFeatures:{jsx:!0},parser:{ts:D,tsx:D},sourceType:"module"}},processor:a.processors[".vue"],files:[O],rules:{...a.configs.base.rules,...n===3?de:ve,"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",...r}}]}function ge(){let e=ue("vue",{paths:[process.cwd()]});return e&&e.version?Number(e.version[0]):3}import{FlatConfigComposer as ye}from"eslint-flat-config-utils";import{isBoolean as xe}from"@lntvow/utils";import{isPackageExists as T}from"local-pkg";var be=["name","languageOptions","linterOptions","processor","plugins","rules","settings"],we={"@stylistic":"style","@typescript-eslint":"typescript","import-x":"import",vitest:"test"};function Oe(e={},...r){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:n=!0,componentExts:s=[],gitignore:o=!0,regexp:i=!0,typescript:p=T("typescript"),vue:l=["vue","nuxt","vitepress"].some(y=>T(y)),test:v=T("vitest"),stylistic:x=!0}=e,t=[];t.push(B(e.ignores),_(),R({...u(e,"javascript")}),P({typescript:!!p}),E()),o&&t.push(G({...u(e,"gitignore")})),l&&s.push("vue"),p&&t.push(V({...u(e,"typescript"),componentExts:s})),l&&t.push($({...u(e,"vue")})),i&&t.push(N({...u(e,"regexp")})),v&&t.push(A({...u(e,"test")})),x&&t.push(U({...u(e,"stylistic")})),t.push(F());let g=be.reduce((y,b)=>(b in e&&(y[b]=e[b]),y),{});Object.keys(g).length&&t.push([g]);let d=new ye;return d=d.append(...t,...r),n&&(d=d.renamePlugins(we)),d}function u(e,r){return xe(e[r])?{}:e[r]||{}}export{Ae as GLOB_ALL_SRC,qe as GLOB_ASTRO,Ie as GLOB_CSS,j as GLOB_EXCLUDE,Ne as GLOB_GRAPHQL,z as GLOB_HTML,Le as GLOB_JS,X as GLOB_JSON,J as GLOB_JSON5,Pe as GLOB_JSONC,Se as GLOB_JSX,Ge as GLOB_LESS,L as GLOB_MARKDOWN,Ue as GLOB_MARKDOWN_CODE,Re as GLOB_MARKDOWN_IN_MARKDOWN,ke as GLOB_POSTCSS,Be as GLOB_SCSS,c as GLOB_SRC,f as GLOB_SRC_EXT,K as GLOB_STYLE,W as GLOB_SVELTE,S as GLOB_TESTS,Ee as GLOB_TOML,je as GLOB_TS,Fe as GLOB_TSX,O as GLOB_VUE,Y as GLOB_XML,H as GLOB_YAML,he as combine,_ as custom,F as disables,G as gitignore,B as ignores,P as imports,R as javascript,Oe as lntvow,E as prettier,N as regexp,w as renameRules,U as stylistic,A as test,V as typescript,$ as vue};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@lntvow/eslint-config",
|
|
3
|
-
"version": "9.
|
|
3
|
+
"version": "9.17.3",
|
|
4
4
|
"description": "eslint-config",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"keywords": [
|
|
@@ -19,12 +19,13 @@
|
|
|
19
19
|
"module": "./dist/index.js",
|
|
20
20
|
"types": "./dist/index.d.ts",
|
|
21
21
|
"devDependencies": {
|
|
22
|
-
"@lntvow/dev": "3.
|
|
22
|
+
"@lntvow/dev": "^3.3.3",
|
|
23
23
|
"@types/node": "^22.9.0",
|
|
24
24
|
"axios": "^1.7.7",
|
|
25
25
|
"cheerio": "1.0.0",
|
|
26
26
|
"eslint-typegen": "^0.3.2",
|
|
27
27
|
"esno": "^4.8.0",
|
|
28
|
+
"find-up-simple": "^1.0.0",
|
|
28
29
|
"tsup": "^8.3.5",
|
|
29
30
|
"vitest": "^2.1.8",
|
|
30
31
|
"vue": "^3.5.12"
|
|
@@ -47,21 +48,19 @@
|
|
|
47
48
|
"eslint-plugin-regexp": "^2.6.0",
|
|
48
49
|
"eslint-plugin-vitest": "^0.5.4",
|
|
49
50
|
"eslint-plugin-vue": "^9.30.0",
|
|
50
|
-
"find-up-simple": "^1.0.0",
|
|
51
51
|
"globals": "^15.12.0",
|
|
52
52
|
"local-pkg": "^0.5.0",
|
|
53
53
|
"parse-gitignore": "^2.0.0",
|
|
54
54
|
"typescript": "~5.6.3",
|
|
55
55
|
"vue-eslint-parser": "^9.4.3",
|
|
56
|
-
"@lntvow/eslint-plugin": "^9.
|
|
56
|
+
"@lntvow/eslint-plugin": "^9.17.3"
|
|
57
57
|
},
|
|
58
58
|
"scripts": {
|
|
59
59
|
"dev": "tsup --format esm",
|
|
60
60
|
"build": "pnpm -r build && pnpm typegen && tsup",
|
|
61
61
|
"typegen": "esno scripts/typegen.ts",
|
|
62
62
|
"inspect": "pnpm eslint --inspect-config",
|
|
63
|
-
"
|
|
64
|
-
"type-check": "vue-tsc --noEmit",
|
|
63
|
+
"type-check": "tsc --noEmit",
|
|
65
64
|
"rimraf": "rimraf ./node_modules/",
|
|
66
65
|
"commit": "git add . && git-cz",
|
|
67
66
|
"release": "git add . && bumpp package.json packages/*/package.json --all --commit --no-tag --push"
|