@js-toolkit/configs 3.103.6 → 3.104.0

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/cjs/appEnv.js CHANGED
@@ -1 +1 @@
1
- "use strict";function parseJson(e){if(null==e)return e;try{return JSON.parse(e)}catch(t){return e}}function getAppEnvironment(){const e=/^APP_/i,t=process.env,n=Object.keys(t).filter(t=>e.test(t)).reduce((e,n)=>(e[n]=parseJson(t[n]),e),{NODE_ENV:parseJson(t.NODE_ENV||"development"),APP_SSR:!1,APP_TEST:!1}),r={raw:n,envStringify(){return{"process.env":Object.keys(this.raw).reduce((e,t)=>{const n=t;return e[t]=JSON.stringify(this.raw[n]),e},{})}},has:e=>e in n,get:e=>n[e],get ssr(){return this.raw.APP_SSR},get dev(){return"development"===this.raw.NODE_ENV},get test(){return"test"===this.raw.NODE_ENV||this.raw.APP_TEST},get prod(){return"production"===this.raw.NODE_ENV},ifDev(e,t){return this.dev?"function"==typeof e?e():e:"function"==typeof t?t():t},ifTest(e,t){return this.test?"function"==typeof e?e():e:"function"==typeof t?t():t},ifProd(e,t){return this.prod?"function"==typeof e?e():e:"function"==typeof t?t():t}};return("undefined"==typeof window?global:window).Proxy?new Proxy(r,{get:(e,t)=>"string"!=typeof t||t in e?e[t]:e.raw[t],has:(e,t)=>t in e||t in e.raw}):r}Object.defineProperty(exports,"__esModule",{value:!0}),exports.getAppEnvironment=getAppEnvironment;const appEnv=getAppEnvironment();exports.default=appEnv,"undefined"!=typeof module&&(module.exports=appEnv);
1
+ "use strict";function parseJson(e){if(null==e)return e;try{return JSON.parse(e)}catch(t){return e}}function getAppEnvironment(){const e=/^APP_/i,t=process.env,n=Object.keys(t).filter(t=>e.test(t)).reduce((e,n)=>(e[n]=parseJson(t[n]),e),{NODE_ENV:parseJson(t.NODE_ENV||"development"),APP_SSR:!1,APP_TEST:!1}),r={raw:n,envStringify(){return{"process.env":Object.keys(this.raw).reduce((e,t)=>{const n=t;return e[t]=JSON.stringify(this.raw[n]),e},{})}},has:e=>e in n,get:e=>n[e],get ssr(){return this.raw.APP_SSR},get dev(){return"development"===this.raw.NODE_ENV},get test(){return"test"===this.raw.NODE_ENV||this.raw.APP_TEST},get prod(){return"production"===this.raw.NODE_ENV},ifDev(e,t){return this.dev?"function"==typeof e?e():e:"function"==typeof t?t():t},ifTest(e,t){return this.test?"function"==typeof e?e():e:"function"==typeof t?t():t},ifProd(e,t){return this.prod?"function"==typeof e?e():e:"function"==typeof t?t():t}};return("undefined"==typeof window?global:window).Proxy?new Proxy(r,{get:(e,t)=>"string"!=typeof t||t in e?e[t]:e.raw[t],has:(e,t)=>t in e||t in e.raw}):r}Object.defineProperty(exports,"__esModule",{value:!0}),exports.getAppEnvironment=getAppEnvironment;const appEnv=getAppEnvironment();exports.default=appEnv,"undefined"!=typeof module&&(module.exports=appEnv,module.exports.getAppEnvironment=getAppEnvironment);
@@ -1 +1 @@
1
- "use strict";var __importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.resolveConfigPath=resolveConfigPath,exports.getBuildConfig=getBuildConfig;const buildConfigDefaults_ts_1=__importDefault(require("./buildConfigDefaults.js")),defaultRequire_ts_1=require("./defaultRequire.js");function resolveConfigPath(e=["build.config"],t=[process.cwd()]){let i="";const{length:r}=e;for(let o=0,u=e[o];o<r;o+=1)try{if(i=require.resolve(`./${u}`,{paths:t}),i)return i}catch(e){}return i}function merge(e,t){return Array.from(new Set([...Object.getOwnPropertyNames(e),...Object.getOwnPropertyNames(t)])).reduce((i,r)=>{var o,u;const n=r;return Array.isArray(e[n])||Array.isArray(t[n])?i[n]=null!==(o=t[n])&&void 0!==o?o:e[n]:"object"==typeof e[n]&&"object"==typeof t[n]?i[n]=merge(e[n],null!==(u=t[n])&&void 0!==u?u:{}):i[n]=n in t?t[n]:e[n],i},{})}function getBuildConfig(e=resolveConfigPath()){var t;const i=null!==(t=process.env.buildConfig?JSON.parse(process.env.buildConfig):void 0)&&void 0!==t?t:e?merge(buildConfigDefaults_ts_1.default,(0,defaultRequire_ts_1.defaultRequire)(e)):Object.assign(Object.assign({},buildConfigDefaults_ts_1.default),{web:void 0,node:void 0,shared:void 0});return Object.assign(Object.assign({},i),{default:buildConfigDefaults_ts_1.default,envStringify(){return{"process.env.buildConfig":JSON.stringify(this)}}})}const buildConfig=getBuildConfig();exports.default=buildConfig,"undefined"!=typeof module&&(module.exports=buildConfig);
1
+ "use strict";var __importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.resolveConfigPath=resolveConfigPath,exports.getBuildConfig=getBuildConfig;const buildConfigDefaults_ts_1=__importDefault(require("./buildConfigDefaults.js")),defaultRequire_ts_1=require("./defaultRequire.js");function resolveConfigPath(e=["build.config"],t=[process.cwd()]){let i="";const{length:o}=e;for(let r=0,u=e[r];r<o;r+=1)try{if(i=defaultRequire_ts_1.defaultRequire.resolve(`./${u}`,{paths:t}),i)return i}catch(e){}return i}function merge(e,t){return Array.from(new Set([...Object.getOwnPropertyNames(e),...Object.getOwnPropertyNames(t)])).reduce((i,o)=>{var r,u;const n=o;return Array.isArray(e[n])||Array.isArray(t[n])?i[n]=null!==(r=t[n])&&void 0!==r?r:e[n]:"object"==typeof e[n]&&"object"==typeof t[n]?i[n]=merge(e[n],null!==(u=t[n])&&void 0!==u?u:{}):i[n]=n in t?t[n]:e[n],i},{})}function getBuildConfig(e=resolveConfigPath()){var t;const i=null!==(t=process.env.buildConfig?JSON.parse(process.env.buildConfig):void 0)&&void 0!==t?t:e?merge(buildConfigDefaults_ts_1.default,(0,defaultRequire_ts_1.defaultRequire)(e)):Object.assign(Object.assign({},buildConfigDefaults_ts_1.default),{web:void 0,node:void 0,shared:void 0});return Object.assign(Object.assign({},i),{default:buildConfigDefaults_ts_1.default,envStringify(){return{"process.env.buildConfig":JSON.stringify(this)}}})}const buildConfig=getBuildConfig();exports.default=buildConfig,"undefined"!=typeof module&&(module.exports=buildConfig,module.exports.getBuildConfig=getBuildConfig,module.exports.resolveConfigPath=resolveConfigPath);
@@ -1 +1 @@
1
- "use strict";function getWebAppConfig(e="web"){return{root:e,sources:["src"],assets:["src/assets"],staticContent:["public"],html:[],tsconfig:"tsconfig.json",output:{root:e,js:"js",styles:"styles",assets:"assets",external:"lib",publicPath:"/",assetManifest:{fileName:void 0,filterTemplate:void 0},sw:{swDest:void 0,swSrc:void 0}}}}function getNodeAppConfig(e="node"){return{root:e,sources:["src"],tsconfig:"tsconfig.json",output:{root:e,publicPath:"/"}}}function getSharedConfig(e="shared"){return{root:e,sources:["src"],tsconfig:"tsconfig.json"}}Object.defineProperty(exports,"__esModule",{value:!0}),exports.getWebAppConfig=getWebAppConfig,exports.getNodeAppConfig=getNodeAppConfig,exports.getSharedConfig=getSharedConfig;const buildConfigDefaults={output:{root:"build"},nodeModules:{root:"node_modules"},web:getWebAppConfig(),node:getNodeAppConfig(),shared:getSharedConfig()},config=Object.freeze(buildConfigDefaults);exports.default=config,"undefined"!=typeof module&&(module.exports=config);
1
+ "use strict";function getWebAppConfig(e="web"){return{root:e,sources:["src"],assets:["src/assets"],staticContent:["public"],html:[],tsconfig:"tsconfig.json",output:{root:e,js:"js",styles:"styles",assets:"assets",external:"lib",publicPath:"/",assetManifest:{fileName:void 0,filterTemplate:void 0},sw:{swDest:void 0,swSrc:void 0}}}}function getNodeAppConfig(e="node"){return{root:e,sources:["src"],tsconfig:"tsconfig.json",output:{root:e,publicPath:"/"}}}function getSharedConfig(e="shared"){return{root:e,sources:["src"],tsconfig:"tsconfig.json"}}Object.defineProperty(exports,"__esModule",{value:!0}),exports.getWebAppConfig=getWebAppConfig,exports.getNodeAppConfig=getNodeAppConfig,exports.getSharedConfig=getSharedConfig;const buildConfigDefaults={output:{root:"build"},nodeModules:{root:"node_modules"},web:getWebAppConfig(),node:getNodeAppConfig(),shared:getSharedConfig()};exports.default=buildConfigDefaults,"undefined"!=typeof module&&(module.exports=buildConfigDefaults,module.exports.getWebAppConfig=getWebAppConfig,module.exports.getNodeAppConfig=getNodeAppConfig,module.exports.getSharedConfig=getSharedConfig);
@@ -1 +1 @@
1
- "use strict";var __importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0});const appEnv_1=__importDefault(require("../appEnv")),paths_1=__importDefault(require("../paths")),config=({import:e=paths_1.default.web.sources.length>0&&{path:paths_1.default.web.sources},presetEnv:t,nested:s=!0,minimizer:p=appEnv_1.default.prod,autoprefixer:r=appEnv_1.default.prod}={})=>({sourceMap:appEnv_1.default.dev,plugins:[e&&["postcss-import",e],s&&"postcss-nested",["postcss-preset-env",Object.assign(Object.assign({stage:2},t),{features:Object.assign({"custom-media-queries":!0,autoprefixer:r},t?t.features:void 0)})],p&&["cssnano",{preset:["default",{discardComments:{removeAll:!0}}]}]].filter(Boolean)});exports.default=config,"undefined"!=typeof module&&(module.exports=config);
1
+ "use strict";var __importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0});const appEnv_ts_1=__importDefault(require("../appEnv.js")),paths_ts_1=__importDefault(require("../paths.js")),config=({import:e=paths_ts_1.default.web.sources.length>0&&{path:paths_ts_1.default.web.sources},presetEnv:t,nested:s=!0,minimizer:p=appEnv_ts_1.default.prod,autoprefixer:r=appEnv_ts_1.default.prod}={})=>({sourceMap:appEnv_ts_1.default.dev,plugins:[e&&["postcss-import",e],s&&"postcss-nested",["postcss-preset-env",Object.assign(Object.assign({stage:2},t),{features:Object.assign({"custom-media-queries":!0,autoprefixer:r},t?t.features:void 0)})],p&&["cssnano",{preset:["default",{discardComments:{removeAll:!0}}]}]].filter(Boolean)});exports.default=config,"undefined"!=typeof module&&(module.exports=config);
@@ -1 +1 @@
1
- "use strict";var __importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0});const path_1=__importDefault(require("path")),paths_1=__importDefault(require("../paths")),config={extends:["stylelint-config-standard","stylelint-config-css-modules"],plugins:["stylelint-prettier"],defaultSeverity:"error",ignoreFiles:[path_1.default.join(paths_1.default.nodeModules.root,"/**"),path_1.default.join(paths_1.default.output.root,"/**")],rules:{"prettier/prettier":!0,"comment-empty-line-before":null,"no-descending-specificity":null,indentation:null,"max-line-length":null,"value-list-comma-newline-after":null,"declaration-colon-newline-after":null,"selector-descendant-combinator-no-non-space":null}};exports.default=config,"undefined"!=typeof module&&(module.exports=config);
1
+ "use strict";var __importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0});const path_1=__importDefault(require("path")),paths_ts_1=__importDefault(require("../paths.js")),config={extends:["stylelint-config-standard","stylelint-config-css-modules"],plugins:["stylelint-prettier"],defaultSeverity:"error",ignoreFiles:[path_1.default.join(paths_ts_1.default.nodeModules.root,"/**"),path_1.default.join(paths_ts_1.default.output.root,"/**")],rules:{"prettier/prettier":!0,"comment-empty-line-before":null,"no-descending-specificity":null,indentation:null,"max-line-length":null,"value-list-comma-newline-after":null,"declaration-colon-newline-after":null,"selector-descendant-combinator-no-non-space":null}};exports.default=config,"undefined"!=typeof module&&(module.exports=config);
@@ -1 +1 @@
1
- "use strict";var __importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.defaultRequire=void 0;const module_1=require("module"),path_1=__importDefault(require("path"));exports.defaultRequire=(0,module_1.createRequire)("undefined"!=typeof __dirname?path_1.default.join(__dirname,"index.js"):new Function("return import.meta.url")());
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.defaultRequire=void 0;const module_1=require("module");exports.defaultRequire=(0,module_1.createRequire)(__filename);
@@ -1 +1 @@
1
- "use strict";var __createBinding=this&&this.__createBinding||(Object.create?function(e,t,s,r){void 0===r&&(r=s);var i=Object.getOwnPropertyDescriptor(t,s);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[s]}}),Object.defineProperty(e,r,i)}:function(e,t,s,r){void 0===r&&(r=s),e[r]=t[s]}),__setModuleDefault=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),__importStar=this&&this.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(e){var t=[];for(var s in e)Object.prototype.hasOwnProperty.call(e,s)&&(t[t.length]=s);return t},e(t)};return function(t){if(t&&t.__esModule)return t;var s={};if(null!=t)for(var r=e(t),i=0;i<r.length;i++)"default"!==r[i]&&__createBinding(s,t,r[i]);return __setModuleDefault(s,t),s}}(),__importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.createTypeScriptImportResolver=createTypeScriptImportResolver,exports.create=create;const fs_1=__importDefault(require("fs")),path_1=__importDefault(require("path")),globals_1=__importDefault(require("globals")),config_1=require("eslint/config"),js_1=__importDefault(require("@eslint/js")),compat_1=require("@eslint/compat"),paths_ts_1=__importStar(require("../paths.js")),getInstalledPackage_ts_1=require("../getInstalledPackage.js"),defaultRequire_ts_1=require("../defaultRequire.js"),consts_ts_1=require("./consts.js"),hasBabelParser=!!(0,getInstalledPackage_ts_1.getInstalledPackage)("@babel/eslint-parser",{resolveFromCwd:!0}),hasPromisePlugin=!!(0,getInstalledPackage_ts_1.getInstalledPackage)("eslint-plugin-promise",{resolveFromCwd:!0}),hasImportXPlugin=!!(0,getInstalledPackage_ts_1.getInstalledPackage)("eslint-plugin-import-x",{resolveFromCwd:!0}),hasImportPlugin=!!(0,getInstalledPackage_ts_1.getInstalledPackage)("eslint-plugin-import",{resolveFromCwd:!0}),hasConfigStandard=!!(0,getInstalledPackage_ts_1.getInstalledPackage)("eslint-config-standard",{resolveFromCwd:!0}),hasConfigAirbnbBase=!!(0,getInstalledPackage_ts_1.getInstalledPackage)("eslint-config-airbnb-base",{resolveFromCwd:!0}),hasJsDocPlugin=!!(0,getInstalledPackage_ts_1.getInstalledPackage)("eslint-plugin-jsdoc",{resolveFromCwd:!0}),hasTsDocPlugin=!!(0,getInstalledPackage_ts_1.getInstalledPackage)("eslint-plugin-tsdoc",{resolveFromCwd:!0}),hasPrettierEslintPlugin=!!(0,getInstalledPackage_ts_1.getInstalledPackage)("eslint-plugin-prettier/recommended",{resolveFromCwd:!0}),hasTypescriptEslintPlugin=!!(0,getInstalledPackage_ts_1.getInstalledPackage)("typescript-eslint",{resolveFromCwd:!0}),hasImportResolverTypescript=!!(0,getInstalledPackage_ts_1.getInstalledPackage)("eslint-import-resolver-typescript",{resolveFromCwd:!0}),withFilteredStandardRules=()=>{var e;const t=!!(0,getInstalledPackage_ts_1.getInstalledPackage)("eslint-plugin-n",{resolveFromCwd:!0});return{rules:Object.entries(null!==(e=(0,defaultRequire_ts_1.defaultRequire)("eslint-config-standard").rules)&&void 0!==e?e:{}).reduce((e,[s,r])=>(s.startsWith("import/")?hasImportPlugin&&!hasImportXPlugin?e[s]=r:hasImportXPlugin&&(e[s.replace("import/","import-x/")]=r):s.startsWith("n/")?t&&(e[s]=r):s.startsWith("promise/")?hasPromisePlugin&&(e[s]=r):e[s]=r,e),{})}},filterAirbnbRules=()=>{const e=(0,defaultRequire_ts_1.defaultRequire)("eslint-config-airbnb-base").extends.map(e=>({rules:e.endsWith("imports.js")?hasImportXPlugin&&Object.entries((0,defaultRequire_ts_1.defaultRequire)(e).rules).reduce((e,[t,s])=>(e[t.replace("import/","import-x/")]=s,e),{})||hasImportPlugin&&(0,defaultRequire_ts_1.defaultRequire)(e).rules||{}:(0,defaultRequire_ts_1.defaultRequire)(e).rules}));return(0,compat_1.fixupConfigRules)(e)};function createTypeScriptImportResolver(e){return(0,defaultRequire_ts_1.defaultRequire)("eslint-import-resolver-typescript").createTypeScriptImportResolver(Object.assign({extensions:paths_ts_1.moduleExtensions},e))}function create(e){const t=hasTypescriptEslintPlugin?path_1.default.resolve(e,consts_ts_1.eslintTsProject):void 0,s=t&&fs_1.default.existsSync(t)?t:path_1.default.resolve(e,"tsconfig.json");return[js_1.default.configs.recommended,...hasPromisePlugin?[(0,defaultRequire_ts_1.defaultRequire)("eslint-plugin-promise").configs["flat/recommended"]]:[],...hasImportPlugin&&!hasImportXPlugin?(0,defaultRequire_ts_1.defaultRequire)("eslint-plugin-import").flatConfigs.recommended:[],...hasImportXPlugin?[(0,defaultRequire_ts_1.defaultRequire)("eslint-plugin-import-x").flatConfigs.recommended]:[],...hasConfigStandard?[withFilteredStandardRules()]:[],...hasJsDocPlugin?[Object.assign(Object.assign({},(0,defaultRequire_ts_1.defaultRequire)("eslint-plugin-jsdoc").configs["flat/recommended"]),{files:[(0,paths_ts_1.getFilesGlob)((0,paths_ts_1.getJSExtensions)())]})]:[],...hasConfigAirbnbBase?filterAirbnbRules():[],{languageOptions:Object.assign({ecmaVersion:"latest",parserOptions:{ecmaVersion:"latest"},globals:Object.assign({},globals_1.default.node)},hasBabelParser&&{parser:(0,defaultRequire_ts_1.defaultRequire)("@babel/eslint-parser"),parserOptions:{requireConfigFile:!1}}),linterOptions:{reportUnusedDisableDirectives:!0},settings:Object.assign(Object.assign({},hasImportPlugin&&!hasImportXPlugin&&Object.assign({"import/extensions":(0,paths_ts_1.getJSExtensions)(),"import-x/extensions":(0,paths_ts_1.getJSExtensions)(),"import/resolver":{node:{extensions:(0,paths_ts_1.getJSExtensions)(),moduleDirectory:["node_modules",...paths_ts_1.default.web.sources,...paths_ts_1.default.node.sources,...paths_ts_1.default.shared.sources].filter(e=>!!e)}}},hasBabelParser&&{"import/parsers":{"@babel/eslint-parser":(0,paths_ts_1.getJSExtensions)()}})),hasImportXPlugin&&Object.assign({"import-x/resolver-next":[(0,defaultRequire_ts_1.defaultRequire)("eslint-plugin-import-x").createNodeResolver({extensions:(0,paths_ts_1.getJSExtensions)(),modules:["node_modules",...paths_ts_1.default.web.sources,...paths_ts_1.default.node.sources,...paths_ts_1.default.shared.sources].filter(e=>!!e)})]},hasBabelParser&&{"import-x/parsers":{"@babel/eslint-parser":(0,paths_ts_1.getJSExtensions)()}})),rules:Object.assign(Object.assign({"lines-between-class-members":["error","always",{exceptAfterSingleLine:!0}],"func-names":["warn","as-needed",{generators:"as-needed"}],"no-console":"off","no-unused-expressions":["error",{allowShortCircuit:!0}],"no-plusplus":["error",{allowForLoopAfterthoughts:!0}],"no-param-reassign":["error",{props:!1}],"no-promise-executor-return":["error",{allowVoid:!0}],"no-restricted-exports":["error",{restrictedNamedExports:["then"],restrictDefaultExports:{named:!0,namedFrom:!0,namespaceFrom:!0,defaultFrom:!1}}],"no-restricted-syntax":["error","ForInStatement","LabeledStatement","WithStatement","CallExpression[callee.name='setTimeout'][arguments.length!=2]","CallExpression[arguments.length!=2] > MemberExpression[object.name='window'][property.name='setTimeout']"]},(hasImportPlugin||hasImportXPlugin)&&Object.entries({"import/no-extraneous-dependencies":["error",{devDependencies:!0}],"import/extensions":["error","ignorePackages",paths_ts_1.moduleExtensions.reduce((e,t)=>Object.assign(Object.assign({},e),{[t.substring(1)]:"never"}),{"":"never"})],"import/order":["error",{groups:["builtin","external","internal","parent","sibling","index","object"]}],"import/prefer-default-export":"off"}).reduce((e,[t,s])=>(hasImportXPlugin?e[t.replace("import/","import-x/")]=s:e[t]=s,e),{})),hasPromisePlugin&&{"promise/always-return":"off","promise/catch-or-return":["error",{allowFinally:!0,allowThenStrict:!0}]})},...hasTypescriptEslintPlugin?(()=>{const t=(0,defaultRequire_ts_1.defaultRequire)("typescript-eslint");return(0,config_1.defineConfig)({extends:[...t.configs.strictTypeChecked,...t.configs.stylisticTypeChecked,...hasImportPlugin&&!hasImportXPlugin?(0,defaultRequire_ts_1.defaultRequire)("eslint-plugin-import").flatConfigs.recommended:[],...hasImportXPlugin?[(0,defaultRequire_ts_1.defaultRequire)("eslint-plugin-import-x").flatConfigs.typescript]:[]],files:[(0,paths_ts_1.getFilesGlob)((0,paths_ts_1.getTSExtensions)())],plugins:Object.assign({},hasTsDocPlugin&&{tsdoc:(0,defaultRequire_ts_1.defaultRequire)("eslint-plugin-tsdoc")}),languageOptions:{parserOptions:{tsconfigRootDir:e,projectService:{defaultProject:s,allowDefaultProject:["*.config.ts","*.config.mts","packages/*/*.config.ts","packages/*/*.config.mts"]}}},settings:Object.assign(Object.assign({},hasImportPlugin&&!hasImportXPlugin&&{"import/extensions":paths_ts_1.moduleExtensions,"import/resolver":{node:{extensions:paths_ts_1.moduleExtensions},typescript:{project:s}},"import/parsers":Object.assign({"@typescript-eslint/parser":paths_ts_1.moduleExtensions},hasBabelParser&&{"@babel/eslint-parser":[]})}),hasImportXPlugin&&{"import-x/extensions":paths_ts_1.moduleExtensions,"import-x/external-module-folders":["node_modules","node_modules/@types"],"import-x/parsers":Object.assign({"@typescript-eslint/parser":paths_ts_1.moduleExtensions},hasBabelParser&&{"@babel/eslint-parser":[]}),"import-x/resolver-next":[hasImportResolverTypescript?createTypeScriptImportResolver({project:s}):[],(0,defaultRequire_ts_1.defaultRequire)("eslint-plugin-import-x").createNodeResolver({extensions:paths_ts_1.moduleExtensions,tsconfig:{configFile:s}})]}),rules:Object.assign(Object.assign({"no-useless-constructor":"off","no-void":["error",{allowAsStatement:!0}],"@typescript-eslint/explicit-member-accessibility":"off","@typescript-eslint/explicit-function-return-type":["warn",{allowExpressions:!0,allowTypedFunctionExpressions:!0,allowHigherOrderFunctions:!0,allowDirectConstAssertionInArrowFunctions:!0,allowConciseArrowFunctionExpressionsStartingWithVoid:!0}],"no-use-before-define":"off","@typescript-eslint/no-use-before-define":"error","no-shadow":"off","@typescript-eslint/no-shadow":["error",{ignoreTypeValueShadow:!0}],"no-empty-function":"off","@typescript-eslint/no-empty-function":["error",{allow:["private-constructors","protected-constructors","decoratedFunctions"]}],"@typescript-eslint/no-unused-expressions":["error",{allowShortCircuit:!0}],"@typescript-eslint/prefer-nullish-coalescing":["error",{ignorePrimitives:{string:!0,number:!0},ignoreMixedLogicalExpressions:!0}],"@typescript-eslint/strict-boolean-expressions":["error",{allowAny:!1,allowNullableEnum:!1,allowNullableNumber:!1,allowNullableBoolean:!0,allowNullableObject:!0,allowNullableString:!0,allowNumber:!1,allowString:!0}],"@typescript-eslint/no-unnecessary-condition":"off","@typescript-eslint/no-confusing-void-expression":["error",{ignoreVoidReturningFunctions:!0}],"@typescript-eslint/restrict-template-expressions":["error",{allowNumber:!0,allowBoolean:!0}]},hasImportXPlugin&&{"import-x/named":"off"}),hasTsDocPlugin&&{"tsdoc/syntax":"warn"})})})():[],...hasPrettierEslintPlugin?[(0,defaultRequire_ts_1.defaultRequire)("eslint-plugin-prettier/recommended")]:[],{files:[(0,paths_ts_1.getFilesGlob)([".d.ts"])],rules:{"max-classes-per-file":"off"}},{ignores:["node_modules","dist","build",".yarn"]}]}const config=create(process.cwd());exports.default=config,"undefined"!=typeof module&&(module.exports=config);
1
+ "use strict";var __importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.createTypeScriptImportResolver=createTypeScriptImportResolver,exports.create=create;const fs_1=__importDefault(require("fs")),path_1=__importDefault(require("path")),globals_1=__importDefault(require("globals")),config_1=require("eslint/config"),js_1=__importDefault(require("@eslint/js")),compat_1=require("@eslint/compat"),paths_ts_1=__importDefault(require("../paths.js")),extensions_ts_1=require("../extensions.js"),getInstalledPackage_ts_1=require("../getInstalledPackage.js"),defaultRequire_ts_1=require("../defaultRequire.js"),consts_ts_1=require("./consts.js"),hasBabelParser=!!(0,getInstalledPackage_ts_1.getInstalledPackage)("@babel/eslint-parser",{resolveFromCwd:!0}),hasPromisePlugin=!!(0,getInstalledPackage_ts_1.getInstalledPackage)("eslint-plugin-promise",{resolveFromCwd:!0}),hasImportXPlugin=!!(0,getInstalledPackage_ts_1.getInstalledPackage)("eslint-plugin-import-x",{resolveFromCwd:!0}),hasImportPlugin=!!(0,getInstalledPackage_ts_1.getInstalledPackage)("eslint-plugin-import",{resolveFromCwd:!0}),hasConfigStandard=!!(0,getInstalledPackage_ts_1.getInstalledPackage)("eslint-config-standard",{resolveFromCwd:!0}),hasConfigAirbnbBase=!!(0,getInstalledPackage_ts_1.getInstalledPackage)("eslint-config-airbnb-base",{resolveFromCwd:!0}),hasJsDocPlugin=!!(0,getInstalledPackage_ts_1.getInstalledPackage)("eslint-plugin-jsdoc",{resolveFromCwd:!0}),hasTsDocPlugin=!!(0,getInstalledPackage_ts_1.getInstalledPackage)("eslint-plugin-tsdoc",{resolveFromCwd:!0}),hasPrettierEslintPlugin=!!(0,getInstalledPackage_ts_1.getInstalledPackage)("eslint-plugin-prettier/recommended",{resolveFromCwd:!0}),hasTypescriptEslintPlugin=!!(0,getInstalledPackage_ts_1.getInstalledPackage)("typescript-eslint",{resolveFromCwd:!0}),hasImportResolverTypescript=!!(0,getInstalledPackage_ts_1.getInstalledPackage)("eslint-import-resolver-typescript",{resolveFromCwd:!0}),withFilteredStandardRules=()=>{var e;const t=!!(0,getInstalledPackage_ts_1.getInstalledPackage)("eslint-plugin-n",{resolveFromCwd:!0});return{rules:Object.entries(null!==(e=(0,defaultRequire_ts_1.defaultRequire)("eslint-config-standard").rules)&&void 0!==e?e:{}).reduce((e,[s,r])=>(s.startsWith("import/")?hasImportPlugin&&!hasImportXPlugin?e[s]=r:hasImportXPlugin&&(e[s.replace("import/","import-x/")]=r):s.startsWith("n/")?t&&(e[s]=r):s.startsWith("promise/")?hasPromisePlugin&&(e[s]=r):e[s]=r,e),{})}},filterAirbnbRules=()=>{const e=(0,defaultRequire_ts_1.defaultRequire)("eslint-config-airbnb-base").extends.map(e=>({rules:e.endsWith("imports.js")?hasImportXPlugin&&Object.entries((0,defaultRequire_ts_1.defaultRequire)(e).rules).reduce((e,[t,s])=>(e[t.replace("import/","import-x/")]=s,e),{})||hasImportPlugin&&(0,defaultRequire_ts_1.defaultRequire)(e).rules||{}:(0,defaultRequire_ts_1.defaultRequire)(e).rules}));return(0,compat_1.fixupConfigRules)(e)};function createTypeScriptImportResolver(e){return(0,defaultRequire_ts_1.defaultRequire)("eslint-import-resolver-typescript").createTypeScriptImportResolver(Object.assign({extensions:extensions_ts_1.moduleExtensions},e))}function create(e){const t=hasTypescriptEslintPlugin?path_1.default.resolve(e,consts_ts_1.eslintTsProject):void 0,s=t&&fs_1.default.existsSync(t)?t:path_1.default.resolve(e,"tsconfig.json");return[js_1.default.configs.recommended,...hasPromisePlugin?[(0,defaultRequire_ts_1.defaultRequire)("eslint-plugin-promise").configs["flat/recommended"]]:[],...hasImportPlugin&&!hasImportXPlugin?(0,defaultRequire_ts_1.defaultRequire)("eslint-plugin-import").flatConfigs.recommended:[],...hasImportXPlugin?[(0,defaultRequire_ts_1.defaultRequire)("eslint-plugin-import-x").flatConfigs.recommended]:[],...hasConfigStandard?[withFilteredStandardRules()]:[],...hasJsDocPlugin?[Object.assign(Object.assign({},(0,defaultRequire_ts_1.defaultRequire)("eslint-plugin-jsdoc").configs["flat/recommended"]),{files:[(0,extensions_ts_1.getFilesGlob)((0,extensions_ts_1.getJSExtensions)())]})]:[],...hasConfigAirbnbBase?filterAirbnbRules():[],{languageOptions:Object.assign({ecmaVersion:"latest",parserOptions:{ecmaVersion:"latest"},globals:Object.assign({},globals_1.default.node)},hasBabelParser&&{parser:(0,defaultRequire_ts_1.defaultRequire)("@babel/eslint-parser"),parserOptions:{requireConfigFile:!1}}),linterOptions:{reportUnusedDisableDirectives:!0},settings:Object.assign(Object.assign({},hasImportPlugin&&!hasImportXPlugin&&Object.assign({"import/extensions":(0,extensions_ts_1.getJSExtensions)(),"import-x/extensions":(0,extensions_ts_1.getJSExtensions)(),"import/resolver":{node:{extensions:(0,extensions_ts_1.getJSExtensions)(),moduleDirectory:["node_modules",...paths_ts_1.default.web.sources,...paths_ts_1.default.node.sources,...paths_ts_1.default.shared.sources].filter(e=>!!e)}}},hasBabelParser&&{"import/parsers":{"@babel/eslint-parser":(0,extensions_ts_1.getJSExtensions)()}})),hasImportXPlugin&&Object.assign({"import-x/resolver-next":[(0,defaultRequire_ts_1.defaultRequire)("eslint-plugin-import-x").createNodeResolver({extensions:(0,extensions_ts_1.getJSExtensions)(),modules:["node_modules",...paths_ts_1.default.web.sources,...paths_ts_1.default.node.sources,...paths_ts_1.default.shared.sources].filter(e=>!!e)})]},hasBabelParser&&{"import-x/parsers":{"@babel/eslint-parser":(0,extensions_ts_1.getJSExtensions)()}})),rules:Object.assign(Object.assign({"lines-between-class-members":["error","always",{exceptAfterSingleLine:!0}],"func-names":["warn","as-needed",{generators:"as-needed"}],"no-console":"off","no-unused-expressions":["error",{allowShortCircuit:!0}],"no-plusplus":["error",{allowForLoopAfterthoughts:!0}],"no-param-reassign":["error",{props:!1}],"no-promise-executor-return":["error",{allowVoid:!0}],"no-restricted-exports":["error",{restrictedNamedExports:["then"],restrictDefaultExports:{named:!0,namedFrom:!0,namespaceFrom:!0,defaultFrom:!1}}],"no-restricted-syntax":["error","ForInStatement","LabeledStatement","WithStatement","CallExpression[callee.name='setTimeout'][arguments.length!=2]","CallExpression[arguments.length!=2] > MemberExpression[object.name='window'][property.name='setTimeout']"]},(hasImportPlugin||hasImportXPlugin)&&Object.entries({"import/no-extraneous-dependencies":["error",{devDependencies:!0}],"import/extensions":["error","ignorePackages",extensions_ts_1.moduleExtensions.reduce((e,t)=>Object.assign(Object.assign({},e),{[t.substring(1)]:"never"}),{"":"never"})],"import/order":["error",{groups:["builtin","external","internal","parent","sibling","index","object"]}],"import/prefer-default-export":"off"}).reduce((e,[t,s])=>(hasImportXPlugin?e[t.replace("import/","import-x/")]=s:e[t]=s,e),{})),hasPromisePlugin&&{"promise/always-return":"off","promise/catch-or-return":["error",{allowFinally:!0,allowThenStrict:!0}]})},...hasTypescriptEslintPlugin?(()=>{const t=(0,defaultRequire_ts_1.defaultRequire)("typescript-eslint");return(0,config_1.defineConfig)({extends:[...t.configs.strictTypeChecked,...t.configs.stylisticTypeChecked,...hasImportPlugin&&!hasImportXPlugin?(0,defaultRequire_ts_1.defaultRequire)("eslint-plugin-import").flatConfigs.recommended:[],...hasImportXPlugin?[(0,defaultRequire_ts_1.defaultRequire)("eslint-plugin-import-x").flatConfigs.typescript]:[]],files:[(0,extensions_ts_1.getFilesGlob)((0,extensions_ts_1.getTSExtensions)())],plugins:Object.assign({},hasTsDocPlugin&&{tsdoc:(0,defaultRequire_ts_1.defaultRequire)("eslint-plugin-tsdoc")}),languageOptions:{parserOptions:{tsconfigRootDir:e,projectService:{defaultProject:s,allowDefaultProject:["*.config.ts","*.config.mts","packages/*/*.config.ts","packages/*/*.config.mts"]}}},settings:Object.assign(Object.assign({},hasImportPlugin&&!hasImportXPlugin&&{"import/extensions":extensions_ts_1.moduleExtensions,"import/resolver":{node:{extensions:extensions_ts_1.moduleExtensions},typescript:{project:s}},"import/parsers":Object.assign({"@typescript-eslint/parser":extensions_ts_1.moduleExtensions},hasBabelParser&&{"@babel/eslint-parser":[]})}),hasImportXPlugin&&{"import-x/extensions":extensions_ts_1.moduleExtensions,"import-x/external-module-folders":["node_modules","node_modules/@types"],"import-x/parsers":Object.assign({"@typescript-eslint/parser":extensions_ts_1.moduleExtensions},hasBabelParser&&{"@babel/eslint-parser":[]}),"import-x/resolver-next":[hasImportResolverTypescript?createTypeScriptImportResolver({project:s}):[],(0,defaultRequire_ts_1.defaultRequire)("eslint-plugin-import-x").createNodeResolver({extensions:extensions_ts_1.moduleExtensions,tsconfig:{configFile:s}})]}),rules:Object.assign(Object.assign({"no-useless-constructor":"off","no-void":["error",{allowAsStatement:!0}],"@typescript-eslint/explicit-member-accessibility":"off","@typescript-eslint/explicit-function-return-type":["warn",{allowExpressions:!0,allowTypedFunctionExpressions:!0,allowHigherOrderFunctions:!0,allowDirectConstAssertionInArrowFunctions:!0,allowConciseArrowFunctionExpressionsStartingWithVoid:!0}],"no-use-before-define":"off","@typescript-eslint/no-use-before-define":"error","no-shadow":"off","@typescript-eslint/no-shadow":["error",{ignoreTypeValueShadow:!0}],"no-empty-function":"off","@typescript-eslint/no-empty-function":["error",{allow:["private-constructors","protected-constructors","decoratedFunctions"]}],"@typescript-eslint/no-unused-expressions":["error",{allowShortCircuit:!0}],"@typescript-eslint/prefer-nullish-coalescing":["error",{ignorePrimitives:{string:!0,number:!0},ignoreMixedLogicalExpressions:!0}],"@typescript-eslint/strict-boolean-expressions":["error",{allowAny:!1,allowNullableEnum:!1,allowNullableNumber:!1,allowNullableBoolean:!0,allowNullableObject:!0,allowNullableString:!0,allowNumber:!1,allowString:!0}],"@typescript-eslint/no-unnecessary-condition":"off","@typescript-eslint/no-confusing-void-expression":["error",{ignoreVoidReturningFunctions:!0}],"@typescript-eslint/restrict-template-expressions":["error",{allowNumber:!0,allowBoolean:!0}]},hasImportXPlugin&&{"import-x/named":"off"}),hasTsDocPlugin&&{"tsdoc/syntax":"warn"})})})():[],...hasPrettierEslintPlugin?[(0,defaultRequire_ts_1.defaultRequire)("eslint-plugin-prettier/recommended")]:[],{files:[(0,extensions_ts_1.getFilesGlob)([".d.ts"])],rules:{"max-classes-per-file":"off"}},{ignores:["node_modules","dist","build",".yarn"]}]}const config=create(process.cwd());exports.default=config,"undefined"!=typeof module&&(module.exports=config,module.exports.create=create,module.exports.createTypeScriptImportResolver=createTypeScriptImportResolver);
@@ -1 +1 @@
1
- "use strict";var __createBinding=this&&this.__createBinding||(Object.create?function(e,t,s,l){void 0===l&&(l=s);var o=Object.getOwnPropertyDescriptor(t,s);o&&!("get"in o?!t.__esModule:o.writable||o.configurable)||(o={enumerable:!0,get:function(){return t[s]}}),Object.defineProperty(e,l,o)}:function(e,t,s,l){void 0===l&&(l=s),e[l]=t[s]}),__setModuleDefault=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),__importStar=this&&this.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(e){var t=[];for(var s in e)Object.prototype.hasOwnProperty.call(e,s)&&(t[t.length]=s);return t},e(t)};return function(t){if(t&&t.__esModule)return t;var s={};if(null!=t)for(var l=e(t),o=0;o<l.length;o++)"default"!==l[o]&&__createBinding(s,t,l[o]);return __setModuleDefault(s,t),s}}(),__importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0});const fs_1=__importDefault(require("fs")),defaultRequire_ts_1=require("../defaultRequire.js"),buildConfig_ts_1=__importDefault(require("../buildConfig.js")),paths_ts_1=__importStar(require("../paths.js")),filesGlobs={web:buildConfig_ts_1.default.web&&fs_1.default.existsSync(paths_ts_1.default.web.root)?[(0,paths_ts_1.getFilesGlob)(paths_ts_1.moduleExtensions,buildConfig_ts_1.default.web.root)]:[],node:buildConfig_ts_1.default.node&&fs_1.default.existsSync(paths_ts_1.default.node.root)?[(0,paths_ts_1.getFilesGlob)(paths_ts_1.moduleExtensions,buildConfig_ts_1.default.node.root)]:[],shared:buildConfig_ts_1.default.shared&&fs_1.default.existsSync(paths_ts_1.default.shared.root)?[(0,paths_ts_1.getFilesGlob)(paths_ts_1.moduleExtensions,buildConfig_ts_1.default.shared.root)]:[],other:paths_ts_1.moduleExtensions.map(e=>`*${e}`)},config=[{settings:{filesGlobs:filesGlobs,getFilesGlob:paths_ts_1.getFilesGlob}},...filesGlobs.web.length>0?[{files:filesGlobs.web,rules:{}},...(0,defaultRequire_ts_1.defaultRequire)("./web.ts")]:[],...filesGlobs.node.length>0?[{files:filesGlobs.node,rules:{}},...(0,defaultRequire_ts_1.defaultRequire)("./web.ts"),...(0,defaultRequire_ts_1.defaultRequire)("./node.ts")]:[],...filesGlobs.shared.length>0?[...(0,defaultRequire_ts_1.defaultRequire)("./common.ts")]:[],...filesGlobs.other.length>0?[{files:filesGlobs.other,ignores:[...filesGlobs.web,...filesGlobs.node,...filesGlobs.shared].filter(Boolean),rules:{}},...(0,defaultRequire_ts_1.defaultRequire)("./common.ts")]:[]];exports.default=config,"undefined"!=typeof module&&(module.exports=config);
1
+ "use strict";var __importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0});const fs_1=__importDefault(require("fs")),paths_ts_1=__importDefault(require("../paths.js")),buildConfig_ts_1=__importDefault(require("../buildConfig.js")),extensions_ts_1=require("../extensions.js"),defaultRequire_ts_1=require("../defaultRequire.js"),filesGlobs={web:buildConfig_ts_1.default.web&&fs_1.default.existsSync(paths_ts_1.default.web.root)?[(0,extensions_ts_1.getFilesGlob)(extensions_ts_1.moduleExtensions,buildConfig_ts_1.default.web.root)]:[],node:buildConfig_ts_1.default.node&&fs_1.default.existsSync(paths_ts_1.default.node.root)?[(0,extensions_ts_1.getFilesGlob)(extensions_ts_1.moduleExtensions,buildConfig_ts_1.default.node.root)]:[],shared:buildConfig_ts_1.default.shared&&fs_1.default.existsSync(paths_ts_1.default.shared.root)?[(0,extensions_ts_1.getFilesGlob)(extensions_ts_1.moduleExtensions,buildConfig_ts_1.default.shared.root)]:[],other:extensions_ts_1.moduleExtensions.map(e=>`*${e}`)},config=[{settings:{filesGlobs:filesGlobs,getFilesGlob:extensions_ts_1.getFilesGlob}},...filesGlobs.web.length>0?[{files:filesGlobs.web,rules:{}},...(0,defaultRequire_ts_1.defaultRequire)("./web.ts")]:[],...filesGlobs.node.length>0?[{files:filesGlobs.node,rules:{}},...(0,defaultRequire_ts_1.defaultRequire)("./web.ts"),...(0,defaultRequire_ts_1.defaultRequire)("./node.ts")]:[],...filesGlobs.shared.length>0?[...(0,defaultRequire_ts_1.defaultRequire)("./common.ts")]:[],...filesGlobs.other.length>0?[{files:filesGlobs.other,ignores:[...filesGlobs.web,...filesGlobs.node,...filesGlobs.shared].filter(Boolean),rules:{}},...(0,defaultRequire_ts_1.defaultRequire)("./common.ts")]:[]];exports.default=config,"undefined"!=typeof module&&(module.exports=config);
package/cjs/eslint/web.js CHANGED
@@ -1 +1 @@
1
- "use strict";var __importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0});const globals_1=__importDefault(require("globals")),compat_1=require("@eslint/compat"),paths_ts_1=require("../paths.js"),getInstalledPackage_ts_1=require("../getInstalledPackage.js"),defaultRequire_ts_1=require("../defaultRequire.js"),hasReactPlugin=!!(0,getInstalledPackage_ts_1.getInstalledPackage)("eslint-plugin-react",{resolveFromCwd:!0}),hasReactA11yPlugin=!!(0,getInstalledPackage_ts_1.getInstalledPackage)("eslint-plugin-jsx-a11y",{resolveFromCwd:!0}),hasReactHooksPlugin=!!(0,getInstalledPackage_ts_1.getInstalledPackage)("eslint-plugin-react-hooks",{resolveFromCwd:!0}),hasWCPlugin=!!(0,getInstalledPackage_ts_1.getInstalledPackage)("eslint-plugin-wc",{resolveFromCwd:!0}),hasLitPlugin=!!(0,getInstalledPackage_ts_1.getInstalledPackage)("eslint-plugin-lit",{resolveFromCwd:!0}),hasMobxPlugin=!!(0,getInstalledPackage_ts_1.getInstalledPackage)("eslint-plugin-mobx",{resolveFromCwd:!0}),hasConfigAirbnb=!!(0,getInstalledPackage_ts_1.getInstalledPackage)("eslint-config-airbnb",{resolveFromCwd:!0}),hasTypescriptEslintPlugin=!!(0,getInstalledPackage_ts_1.getInstalledPackage)("typescript-eslint",{resolveFromCwd:!0}),hasPrettierEslintPlugin=!!(0,getInstalledPackage_ts_1.getInstalledPackage)("eslint-plugin-prettier/recommended",{resolveFromCwd:!0}),filterAirbnbRules=e=>(0,compat_1.fixupConfigRules)({rules:(0,defaultRequire_ts_1.defaultRequire)((0,defaultRequire_ts_1.defaultRequire)("eslint-config-airbnb").extends.find(t=>t.endsWith(`${e}.js`))).rules}),config=[...(hasReactPlugin?(()=>{const e=(0,defaultRequire_ts_1.defaultRequire)("eslint-plugin-react");return[e.configs.flat.recommended,e.configs.flat["jsx-runtime"],{languageOptions:Object.assign(Object.assign({},e.configs.flat.recommended.languageOptions),{globals:Object.assign({},globals_1.default.browser)})},...hasConfigAirbnb?filterAirbnbRules("react"):[],{settings:{react:{version:"19"}},rules:{"react/jsx-props-no-spreading":"off","react/function-component-definition":["error",{namedComponents:"function-declaration",unnamedComponents:["arrow-function","function-expression"]}]}}]})():[{languageOptions:{globals:Object.assign({},globals_1.default.browser)}}]).map(e=>{var t;return Object.assign(Object.assign({},e),{files:[...null!==(t=e.files)&&void 0!==t?t:[],(0,paths_ts_1.getFilesGlob)((0,paths_ts_1.getSXExtensions)())]})}),...(hasReactA11yPlugin?[(0,defaultRequire_ts_1.defaultRequire)("eslint-plugin-jsx-a11y").flatConfigs.recommended,...hasConfigAirbnb?filterAirbnbRules("react-a11y"):[],{rules:{"jsx-a11y/anchor-is-valid":["error",{specialLink:["to"]}],"jsx-a11y/label-has-for":["error",{allowChildren:!0}]}}]:[]).map(e=>{var t;return Object.assign(Object.assign({},e),{files:[...null!==(t=e.files)&&void 0!==t?t:[],(0,paths_ts_1.getFilesGlob)((0,paths_ts_1.getSXExtensions)())]})}),...hasReactPlugin&&hasTypescriptEslintPlugin?[{files:[(0,paths_ts_1.getFilesGlob)((0,paths_ts_1.getTSXExtensions)())],rules:{"react/require-default-props":"off"}}]:[],...hasReactHooksPlugin?[(0,defaultRequire_ts_1.defaultRequire)("eslint-plugin-react-hooks").configs.flat["recommended-latest"],{rules:{"react-hooks/exhaustive-deps":"error"}}]:[],...[hasWCPlugin&&(0,defaultRequire_ts_1.defaultRequire)("eslint-plugin-wc").configs["flat/best-practice"],hasWCPlugin&&{settings:{wc:{elementBaseClasses:["HTMLElement"]}}},hasLitPlugin&&(0,defaultRequire_ts_1.defaultRequire)("eslint-plugin-lit").configs["flat/recommended"],hasLitPlugin&&{settings:{lit:{elementBaseClasses:["LitElement"]}}}].filter(Boolean).map(e=>{var t;return Object.assign(Object.assign({},e),{files:[...null!==(t=e.files)&&void 0!==t?t:[],(0,paths_ts_1.getFilesGlob)((0,paths_ts_1.getNonSXExtensions)())]})}),...hasPrettierEslintPlugin?[(0,defaultRequire_ts_1.defaultRequire)("eslint-plugin-prettier/recommended")]:[],...hasMobxPlugin?[(0,defaultRequire_ts_1.defaultRequire)("eslint-plugin-mobx").flatConfigs.recommended]:[]];exports.default=config,"undefined"!=typeof module&&(module.exports=config);
1
+ "use strict";var __importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0});const globals_1=__importDefault(require("globals")),compat_1=require("@eslint/compat"),extensions_ts_1=require("../extensions.js"),getInstalledPackage_ts_1=require("../getInstalledPackage.js"),defaultRequire_ts_1=require("../defaultRequire.js"),hasReactPlugin=!!(0,getInstalledPackage_ts_1.getInstalledPackage)("eslint-plugin-react",{resolveFromCwd:!0}),hasReactA11yPlugin=!!(0,getInstalledPackage_ts_1.getInstalledPackage)("eslint-plugin-jsx-a11y",{resolveFromCwd:!0}),hasReactHooksPlugin=!!(0,getInstalledPackage_ts_1.getInstalledPackage)("eslint-plugin-react-hooks",{resolveFromCwd:!0}),hasWCPlugin=!!(0,getInstalledPackage_ts_1.getInstalledPackage)("eslint-plugin-wc",{resolveFromCwd:!0}),hasLitPlugin=!!(0,getInstalledPackage_ts_1.getInstalledPackage)("eslint-plugin-lit",{resolveFromCwd:!0}),hasMobxPlugin=!!(0,getInstalledPackage_ts_1.getInstalledPackage)("eslint-plugin-mobx",{resolveFromCwd:!0}),hasConfigAirbnb=!!(0,getInstalledPackage_ts_1.getInstalledPackage)("eslint-config-airbnb",{resolveFromCwd:!0}),hasTypescriptEslintPlugin=!!(0,getInstalledPackage_ts_1.getInstalledPackage)("typescript-eslint",{resolveFromCwd:!0}),hasPrettierEslintPlugin=!!(0,getInstalledPackage_ts_1.getInstalledPackage)("eslint-plugin-prettier/recommended",{resolveFromCwd:!0}),filterAirbnbRules=e=>(0,compat_1.fixupConfigRules)({rules:(0,defaultRequire_ts_1.defaultRequire)((0,defaultRequire_ts_1.defaultRequire)("eslint-config-airbnb").extends.find(t=>t.endsWith(`${e}.js`))).rules}),config=[...(hasReactPlugin?(()=>{const e=(0,defaultRequire_ts_1.defaultRequire)("eslint-plugin-react");return[e.configs.flat.recommended,e.configs.flat["jsx-runtime"],{languageOptions:Object.assign(Object.assign({},e.configs.flat.recommended.languageOptions),{globals:Object.assign({},globals_1.default.browser)})},...hasConfigAirbnb?filterAirbnbRules("react"):[],{settings:{react:{version:"19"}},rules:{"react/jsx-props-no-spreading":"off","react/function-component-definition":["error",{namedComponents:"function-declaration",unnamedComponents:["arrow-function","function-expression"]}]}}]})():[{languageOptions:{globals:Object.assign({},globals_1.default.browser)}}]).map(e=>{var t;return Object.assign(Object.assign({},e),{files:[...null!==(t=e.files)&&void 0!==t?t:[],(0,extensions_ts_1.getFilesGlob)((0,extensions_ts_1.getSXExtensions)())]})}),...(hasReactA11yPlugin?[(0,defaultRequire_ts_1.defaultRequire)("eslint-plugin-jsx-a11y").flatConfigs.recommended,...hasConfigAirbnb?filterAirbnbRules("react-a11y"):[],{rules:{"jsx-a11y/anchor-is-valid":["error",{specialLink:["to"]}],"jsx-a11y/label-has-for":["error",{allowChildren:!0}]}}]:[]).map(e=>{var t;return Object.assign(Object.assign({},e),{files:[...null!==(t=e.files)&&void 0!==t?t:[],(0,extensions_ts_1.getFilesGlob)((0,extensions_ts_1.getSXExtensions)())]})}),...hasReactPlugin&&hasTypescriptEslintPlugin?[{files:[(0,extensions_ts_1.getFilesGlob)((0,extensions_ts_1.getTSXExtensions)())],rules:{"react/jsx-filename-extension":["error",{allow:"as-needed",extensions:(0,extensions_ts_1.getSXExtensions)()}],"react/require-default-props":"off"}}]:[],...hasReactHooksPlugin?[(0,defaultRequire_ts_1.defaultRequire)("eslint-plugin-react-hooks").configs.flat["recommended-latest"],{rules:{"react-hooks/exhaustive-deps":"error"}}]:[],...[hasWCPlugin&&(0,defaultRequire_ts_1.defaultRequire)("eslint-plugin-wc").configs["flat/best-practice"],hasWCPlugin&&{settings:{wc:{elementBaseClasses:["HTMLElement"]}}},hasLitPlugin&&(0,defaultRequire_ts_1.defaultRequire)("eslint-plugin-lit").configs["flat/recommended"],hasLitPlugin&&{settings:{lit:{elementBaseClasses:["LitElement"]}}}].filter(Boolean).map(e=>{var t;return Object.assign(Object.assign({},e),{files:[...null!==(t=e.files)&&void 0!==t?t:[],(0,extensions_ts_1.getFilesGlob)((0,extensions_ts_1.getNonSXExtensions)())]})}),...hasPrettierEslintPlugin?[(0,defaultRequire_ts_1.defaultRequire)("eslint-plugin-prettier/recommended")]:[],...hasMobxPlugin?[(0,defaultRequire_ts_1.defaultRequire)("eslint-plugin-mobx").flatConfigs.recommended]:[]];exports.default=config,"undefined"!=typeof module&&(module.exports=config);
@@ -0,0 +1 @@
1
+ "use strict";var __importDefault=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.moduleExtensions=void 0,exports.getFilesGlob=getFilesGlob,exports.getTSExtensions=getTSExtensions,exports.getJSExtensions=getJSExtensions,exports.getSXExtensions=getSXExtensions,exports.getTSXExtensions=getTSXExtensions,exports.getNonSXExtensions=getNonSXExtensions;const path_1=__importDefault(require("path"));function addStar(t){return t.map(t=>`*${t}`)}function getFilesGlob(t,e){return`${path_1.default.join(e||"","**/*.{")+t.map(t=>t.substring(1)).join(",")}}`}function getTSExtensions(t=!1){const e=exports.moduleExtensions.filter(t=>t.includes("ts"));return t?addStar(e):e}function getJSExtensions(t=!1){const e=exports.moduleExtensions.filter(t=>t.includes("js"));return t?addStar(e):e}function getSXExtensions(t=!1){const e=exports.moduleExtensions.filter(t=>t.endsWith("sx"));return t?addStar(e):e}function getTSXExtensions(t=!1){const e=exports.moduleExtensions.filter(t=>t.endsWith("tsx"));return t?addStar(e):e}function getNonSXExtensions(t=!1){const e=exports.moduleExtensions.filter(t=>!t.endsWith("sx"));return t?addStar(e):e}exports.moduleExtensions=[".js",".mjs",".cjs",".jsx",".mjsx",".cjsx",".ts",".mts",".cts",".tsx",".mtsx",".ctsx",".d.ts"],"undefined"!=typeof module&&(module.exports.moduleExtensions=exports.moduleExtensions,module.exports.getFilesGlob=getFilesGlob,module.exports.getTSExtensions=getTSExtensions,module.exports.getJSExtensions=getJSExtensions,module.exports.getSXExtensions=getSXExtensions,module.exports.getTSXExtensions=getTSXExtensions,module.exports.getNonSXExtensions=getNonSXExtensions);
package/cjs/paths.js CHANGED
@@ -1 +1 @@
1
- "use strict";var __importDefault=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.moduleExtensions=void 0,exports.getFilesGlob=getFilesGlob,exports.getTSExtensions=getTSExtensions,exports.getJSExtensions=getJSExtensions,exports.getSXExtensions=getSXExtensions,exports.getTSXExtensions=getTSXExtensions,exports.getNonSXExtensions=getNonSXExtensions,exports.getPaths=getPaths;const path_1=__importDefault(require("path")),buildConfig_ts_1=require("./buildConfig.js");function addStar(t){return t.map(t=>`*${t}`)}function getFilesGlob(t,e){return`${path_1.default.join(e||"","**/*.{")+t.map(t=>t.substring(1)).join(",")}}`}function getTSExtensions(t=!1){const e=exports.moduleExtensions.filter(t=>t.includes("ts"));return t?addStar(e):e}function getJSExtensions(t=!1){const e=exports.moduleExtensions.filter(t=>t.includes("js"));return t?addStar(e):e}function getSXExtensions(t=!1){const e=exports.moduleExtensions.filter(t=>t.endsWith("sx"));return t?addStar(e):e}function getTSXExtensions(t=!1){const e=exports.moduleExtensions.filter(t=>t.endsWith("tsx"));return t?addStar(e):e}function getNonSXExtensions(t=!1){const e=exports.moduleExtensions.filter(t=>!t.endsWith("sx"));return t?addStar(e):e}function getPaths(t=process.cwd(),e=(0,buildConfig_ts_1.getBuildConfig)()){return Object.freeze({root:t,nodeModules:{root:(()=>{const o=e.nodeModules.root;try{const e=__dirname.indexOf(o);return e>=0?__dirname.substring(0,e+o.length):path_1.default.resolve(t,o)}catch(e){return path_1.default.resolve(t,o)}})()},getNodeModulesRoot(t){const e=require.resolve(t),o="node_modules";return e.substring(0,e.indexOf(o)+12)},output:{root:path_1.default.resolve(t,e.output.root)},web:(()=>{const{web:o}=e;return o?{root:path_1.default.resolve(t,o.root),sources:o.sources.map(e=>path_1.default.resolve(t,o.root,e)),assets:o.assets.map(e=>path_1.default.resolve(t,o.root,e)),staticContent:o.staticContent.map(e=>{const s="string"==typeof e?{path:e}:e;return path_1.default.isAbsolute(s.path)?s:Object.assign(Object.assign({},s),{path:path_1.default.resolve(t,o.root,s.path)})}),tsconfig:path_1.default.resolve(t,o.root,o.tsconfig),output:{path:path_1.default.resolve(t,e.output.root,o.output.root),jsPath:path_1.default.resolve(t,e.output.root,o.output.root,o.output.js)}}:{root:"",sources:[],assets:[],staticContent:[],tsconfig:"",output:{path:"",jsPath:""}}})(),node:(()=>{const{node:o}=e;return o?{root:path_1.default.resolve(t,o.root),sources:o.sources.map(e=>path_1.default.resolve(t,o.root,e)),tsconfig:path_1.default.resolve(t,o.root,o.tsconfig),output:{path:path_1.default.resolve(t,e.output.root,o.output.root)}}:{root:"",sources:[],tsconfig:"",output:{path:""}}})(),shared:(()=>{const{shared:o}=e;return o?{root:path_1.default.resolve(t,o.root),sources:o.sources.map(e=>path_1.default.resolve(t,o.root,e)),tsconfig:path_1.default.resolve(t,o.root,o.tsconfig)}:{root:"",sources:[],tsconfig:""}})()})}exports.moduleExtensions=[".js",".mjs",".cjs",".jsx",".mjsx",".cjsx",".ts",".mts",".cts",".tsx",".mtsx",".ctsx",".d.ts"];const paths=getPaths();exports.default=paths,"undefined"!=typeof module&&(module.exports=paths);
1
+ "use strict";var __importDefault=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.getPaths=getPaths;const path_1=__importDefault(require("path")),buildConfig_ts_1=require("./buildConfig.js"),defaultRequire_ts_1=require("./defaultRequire.js");function getPaths(t=process.cwd(),e=(0,buildConfig_ts_1.getBuildConfig)()){return{root:t,nodeModules:{root:(()=>{const o=e.nodeModules.root;try{const e=__dirname,s=e.indexOf(o);return s>=0?e.substring(0,s+o.length):path_1.default.resolve(t,o)}catch(e){return path_1.default.resolve(t,o)}})()},output:{root:path_1.default.resolve(t,e.output.root)},web:e.web?{root:path_1.default.resolve(t,e.web.root),sources:e.web.sources.map(o=>path_1.default.resolve(t,e.web.root,o)),assets:e.web.assets.map(o=>path_1.default.resolve(t,e.web.root,o)),staticContent:e.web.staticContent.map(o=>{const s="string"==typeof o?{path:o}:o;return path_1.default.isAbsolute(s.path)?s:Object.assign(Object.assign({},s),{path:path_1.default.resolve(t,e.web.root,s.path)})}),tsconfig:path_1.default.resolve(t,e.web.root,e.web.tsconfig),output:{root:path_1.default.resolve(t,e.output.root,e.web.output.root),js:path_1.default.resolve(t,e.output.root,e.web.output.root,e.web.output.js)}}:{root:"",sources:[],assets:[],staticContent:[],tsconfig:"",output:{root:"",js:""}},node:e.node?{root:path_1.default.resolve(t,e.node.root),sources:e.node.sources.map(o=>path_1.default.resolve(t,e.node.root,o)),tsconfig:path_1.default.resolve(t,e.node.root,e.node.tsconfig),output:{root:path_1.default.resolve(t,e.output.root,e.node.output.root)}}:{root:"",sources:[],tsconfig:"",output:{root:""}},shared:e.shared?{root:path_1.default.resolve(t,e.shared.root),sources:e.shared.sources.map(o=>path_1.default.resolve(t,e.shared.root,o)),tsconfig:path_1.default.resolve(t,e.shared.root,e.shared.tsconfig)}:{root:"",sources:[],tsconfig:""},getNodeModulesRoot(t){const e=defaultRequire_ts_1.defaultRequire.resolve(t),o="node_modules";return e.substring(0,e.indexOf(o)+12)}}}const paths=getPaths();exports.default=paths,"undefined"!=typeof module&&(module.exports=paths);
@@ -1 +1 @@
1
- "use strict";var __createBinding=this&&this.__createBinding||(Object.create?function(e,t,i,n){void 0===n&&(n=i);var o=Object.getOwnPropertyDescriptor(t,i);o&&!("get"in o?!t.__esModule:o.writable||o.configurable)||(o={enumerable:!0,get:function(){return t[i]}}),Object.defineProperty(e,n,o)}:function(e,t,i,n){void 0===n&&(n=i),e[n]=t[i]}),__setModuleDefault=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),__importStar=this&&this.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(e){var t=[];for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[t.length]=i);return t},e(t)};return function(t){if(t&&t.__esModule)return t;var i={};if(null!=t)for(var n=e(t),o=0;o<n.length;o++)"default"!==n[o]&&__createBinding(i,t,n[o]);return __setModuleDefault(i,t),i}}(),__rest=this&&this.__rest||function(e,t){var i={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(i[n]=e[n]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var o=0;for(n=Object.getOwnPropertySymbols(e);o<n.length;o++)t.indexOf(n[o])<0&&Object.prototype.propertyIsEnumerable.call(e,n[o])&&(i[n[o]]=e[n[o]])}return i},__importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0});const path_1=__importDefault(require("path")),webpack_1=__importDefault(require("webpack")),appEnv_ts_1=__importDefault(require("../appEnv.js")),buildConfig_ts_1=__importDefault(require("../buildConfig.js")),paths_ts_1=__importStar(require("../paths.js")),loaders_ts_1=require("./loaders.js"),nodeRequire_ts_1=__importDefault(require("./nodeRequire.js"));exports.default=e=>{var t,i,n,o,r,s,u,a,{outputPath:l,outputPublicPath:p,outputJsDir:c,hash:d,chunkSuffix:_=".chunk",typescript:f,minimizerPlugin:g="terser",minimizerPluginOptions:v}=e,b=__rest(e,["outputPath","outputPublicPath","outputJsDir","hash","chunkSuffix","typescript","minimizerPlugin","minimizerPluginOptions"]);const h=!0===d||"object"==typeof d&&d.entry,m=!0===d||"object"==typeof d&&d.chunk;return Object.assign(Object.assign({context:paths_ts_1.default.root,mode:appEnv_ts_1.default.raw.NODE_ENV,bail:appEnv_ts_1.default.prod,devtool:appEnv_ts_1.default.ifDev("eval-cheap-module-source-map",!1)},b),{output:Object.assign({path:l,publicPath:p,pathinfo:!1,filename:path_1.default.join(c,`[name]${appEnv_ts_1.default.prod&&h?".[contenthash:8]":""}.js`),chunkFilename:path_1.default.join(c,`[name]${appEnv_ts_1.default.prod&&m?".[contenthash:8]":""}${null!=_?_:""}.js`)},b.output),optimization:Object.assign(Object.assign({},b.optimization),appEnv_ts_1.default.ifProd({minimizer:["terser"===g&&(()=>{var e;const t=Array.isArray(v)?v.reduce((e,t)=>Object.assign(Object.assign({},e),t),{}):v;return new((0,nodeRequire_ts_1.default)("terser-webpack-plugin"))(Object.assign(Object.assign({extractComments:!1},t),{terserOptions:Object.assign(Object.assign({},null==t?void 0:t.terserOptions),{output:Object.assign({comments:!1},null===(e=null==t?void 0:t.terserOptions)||void 0===e?void 0:e.output)})}))})(),"closure"===g&&(()=>{var e;const[t,i]=Array.isArray(v)?null!==(e=v)&&void 0!==e?e:[]:[v,void 0];return new((0,nodeRequire_ts_1.default)("closure-webpack-plugin"))(Object.assign({mode:"STANDARD"},t),Object.assign(Object.assign({},appEnv_ts_1.default.ifDev({formatting:"PRETTY_PRINT",debug:!0,renaming:!1},void 0)),i))})(),...null!==(i=null===(t=b.optimization)||void 0===t?void 0:t.minimizer)&&void 0!==i?i:[]]},void 0)),plugins:[new webpack_1.default.DefinePlugin(Object.assign(Object.assign({},appEnv_ts_1.default.envStringify()),buildConfig_ts_1.default.envStringify())),...(null==f?void 0:f.forkedChecks)&&f.configFile?[(0,loaders_ts_1.getTsCheckerPlugin)(Object.assign(Object.assign({loaderType:null!==(n=f.loader)&&void 0!==n?n:loaders_ts_1.TsLoaderType.Default},f.checkerOptions),{typescript:Object.assign({configFile:f.configFile},null===(o=f.checkerOptions)||void 0===o?void 0:o.typescript)}))]:[],...null!==(r=b.plugins)&&void 0!==r?r:[]],resolve:(()=>{var e,t,i,n,o,r;const s=[...f?paths_ts_1.moduleExtensions:(0,paths_ts_1.getJSExtensions)(),...null!==(t=null===(e=b.resolve)||void 0===e?void 0:e.extensions)&&void 0!==t?t:[]];return Object.assign(Object.assign({},b.resolve),{extensions:s,modules:["node_modules",paths_ts_1.default.nodeModules.root,paths_ts_1.default.root,...null!==(n=null===(i=b.resolve)||void 0===i?void 0:i.modules)&&void 0!==n?n:[]],plugins:[...f?[new((0,nodeRequire_ts_1.default)("tsconfig-paths-webpack-plugin"))({configFile:f.configFile,extensions:s})]:[],...null!==(r=null===(o=b.resolve)||void 0===o?void 0:o.plugins)&&void 0!==r?r:[]]})})(),ignoreWarnings:[...f?[/export .* was not found in/]:[],...null!==(s=b.ignoreWarnings)&&void 0!==s?s:[]],module:Object.assign(Object.assign({exprContextCritical:!1,unknownContextCritical:!1},b.module),{rules:null!==(a=null===(u=b.module)||void 0===u?void 0:u.rules)&&void 0!==a?a:[]})})};
1
+ "use strict";var __rest=this&&this.__rest||function(e,t){var i={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(i[n]=e[n]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var s=0;for(n=Object.getOwnPropertySymbols(e);s<n.length;s++)t.indexOf(n[s])<0&&Object.prototype.propertyIsEnumerable.call(e,n[s])&&(i[n[s]]=e[n[s]])}return i},__importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0});const path_1=__importDefault(require("path")),webpack_1=__importDefault(require("webpack")),appEnv_ts_1=__importDefault(require("../appEnv.js")),paths_ts_1=__importDefault(require("../paths.js")),buildConfig_ts_1=__importDefault(require("../buildConfig.js")),extensions_ts_1=require("../extensions.js"),loaders_ts_1=require("./loaders.js"),nodeRequire_ts_1=__importDefault(require("./nodeRequire.js"));exports.default=e=>{var t,i,n,s,o,r,u,l,{outputPath:a,outputPublicPath:p,outputJsDir:d,hash:c,chunkSuffix:_=".chunk",typescript:f,minimizerPlugin:g="terser",minimizerPluginOptions:v}=e,b=__rest(e,["outputPath","outputPublicPath","outputJsDir","hash","chunkSuffix","typescript","minimizerPlugin","minimizerPluginOptions"]);const m=!0===c||"object"==typeof c&&c.entry,O=!0===c||"object"==typeof c&&c.chunk;return Object.assign(Object.assign({context:paths_ts_1.default.root,mode:appEnv_ts_1.default.raw.NODE_ENV,bail:appEnv_ts_1.default.prod,devtool:appEnv_ts_1.default.ifDev("eval-cheap-module-source-map",!1)},b),{output:Object.assign({path:a,publicPath:p,pathinfo:!1,filename:path_1.default.join(d,`[name]${appEnv_ts_1.default.prod&&m?".[contenthash:8]":""}.js`),chunkFilename:path_1.default.join(d,`[name]${appEnv_ts_1.default.prod&&O?".[contenthash:8]":""}${null!=_?_:""}.js`)},b.output),optimization:Object.assign(Object.assign({},b.optimization),appEnv_ts_1.default.ifProd({minimizer:["terser"===g&&(()=>{var e;const t=Array.isArray(v)?v.reduce((e,t)=>Object.assign(Object.assign({},e),t),{}):v;return new((0,nodeRequire_ts_1.default)("terser-webpack-plugin"))(Object.assign(Object.assign({extractComments:!1},t),{terserOptions:Object.assign(Object.assign({},null==t?void 0:t.terserOptions),{output:Object.assign({comments:!1},null===(e=null==t?void 0:t.terserOptions)||void 0===e?void 0:e.output)})}))})(),"closure"===g&&(()=>{var e;const[t,i]=Array.isArray(v)?null!==(e=v)&&void 0!==e?e:[]:[v,void 0];return new((0,nodeRequire_ts_1.default)("closure-webpack-plugin"))(Object.assign({mode:"STANDARD"},t),Object.assign(Object.assign({},appEnv_ts_1.default.ifDev({formatting:"PRETTY_PRINT",debug:!0,renaming:!1},void 0)),i))})(),...null!==(i=null===(t=b.optimization)||void 0===t?void 0:t.minimizer)&&void 0!==i?i:[]]},void 0)),plugins:[new webpack_1.default.DefinePlugin(Object.assign(Object.assign({},appEnv_ts_1.default.envStringify()),buildConfig_ts_1.default.envStringify())),...(null==f?void 0:f.forkedChecks)&&f.configFile?[(0,loaders_ts_1.getTsCheckerPlugin)(Object.assign(Object.assign({loaderType:null!==(n=f.loader)&&void 0!==n?n:loaders_ts_1.TsLoaderType.Default},f.checkerOptions),{typescript:Object.assign({configFile:f.configFile},null===(s=f.checkerOptions)||void 0===s?void 0:s.typescript)}))]:[],...null!==(o=b.plugins)&&void 0!==o?o:[]],resolve:(()=>{var e,t,i,n,s,o;const r=[...f?extensions_ts_1.moduleExtensions:(0,extensions_ts_1.getJSExtensions)(),...null!==(t=null===(e=b.resolve)||void 0===e?void 0:e.extensions)&&void 0!==t?t:[]];return Object.assign(Object.assign({},b.resolve),{extensions:r,modules:["node_modules",paths_ts_1.default.nodeModules.root,paths_ts_1.default.root,...null!==(n=null===(i=b.resolve)||void 0===i?void 0:i.modules)&&void 0!==n?n:[]],plugins:[...f?[new((0,nodeRequire_ts_1.default)("tsconfig-paths-webpack-plugin"))({configFile:f.configFile,extensions:r})]:[],...null!==(o=null===(s=b.resolve)||void 0===s?void 0:s.plugins)&&void 0!==o?o:[]]})})(),ignoreWarnings:[...f?[/export .* was not found in/]:[],...null!==(r=b.ignoreWarnings)&&void 0!==r?r:[]],module:Object.assign(Object.assign({exprContextCritical:!1,unknownContextCritical:!1},b.module),{rules:null!==(l=null===(u=b.module)||void 0===u?void 0:u.rules)&&void 0!==l?l:[]})})};
package/esm/appEnv.js CHANGED
@@ -1 +1 @@
1
- function parseJson(t){if(null==t)return t;try{return JSON.parse(t)}catch(e){return t}}export function getAppEnvironment(){const t=/^APP_/i,e=process.env,n=Object.keys(e).filter(e=>t.test(e)).reduce((t,n)=>(t[n]=parseJson(e[n]),t),{NODE_ENV:parseJson(e.NODE_ENV||"development"),APP_SSR:!1,APP_TEST:!1}),r={raw:n,envStringify(){return{"process.env":Object.keys(this.raw).reduce((t,e)=>{const n=e;return t[e]=JSON.stringify(this.raw[n]),t},{})}},has:t=>t in n,get:t=>n[t],get ssr(){return this.raw.APP_SSR},get dev(){return"development"===this.raw.NODE_ENV},get test(){return"test"===this.raw.NODE_ENV||this.raw.APP_TEST},get prod(){return"production"===this.raw.NODE_ENV},ifDev(t,e){return this.dev?"function"==typeof t?t():t:"function"==typeof e?e():e},ifTest(t,e){return this.test?"function"==typeof t?t():t:"function"==typeof e?e():e},ifProd(t,e){return this.prod?"function"==typeof t?t():t:"function"==typeof e?e():e}};return("undefined"==typeof window?global:window).Proxy?new Proxy(r,{get:(t,e)=>"string"!=typeof e||e in t?t[e]:t.raw[e],has:(t,e)=>e in t||e in t.raw}):r}const appEnv=getAppEnvironment();export default appEnv;"undefined"!=typeof module&&(module.exports=appEnv);
1
+ function parseJson(t){if(null==t)return t;try{return JSON.parse(t)}catch(e){return t}}export function getAppEnvironment(){const t=/^APP_/i,e=process.env,n=Object.keys(e).filter(e=>t.test(e)).reduce((t,n)=>(t[n]=parseJson(e[n]),t),{NODE_ENV:parseJson(e.NODE_ENV||"development"),APP_SSR:!1,APP_TEST:!1}),r={raw:n,envStringify(){return{"process.env":Object.keys(this.raw).reduce((t,e)=>{const n=e;return t[e]=JSON.stringify(this.raw[n]),t},{})}},has:t=>t in n,get:t=>n[t],get ssr(){return this.raw.APP_SSR},get dev(){return"development"===this.raw.NODE_ENV},get test(){return"test"===this.raw.NODE_ENV||this.raw.APP_TEST},get prod(){return"production"===this.raw.NODE_ENV},ifDev(t,e){return this.dev?"function"==typeof t?t():t:"function"==typeof e?e():e},ifTest(t,e){return this.test?"function"==typeof t?t():t:"function"==typeof e?e():e},ifProd(t,e){return this.prod?"function"==typeof t?t():t:"function"==typeof e?e():e}};return("undefined"==typeof window?global:window).Proxy?new Proxy(r,{get:(t,e)=>"string"!=typeof e||e in t?t[e]:t.raw[e],has:(t,e)=>e in t||e in t.raw}):r}const appEnv=getAppEnvironment();export default appEnv;"undefined"!=typeof module&&(module.exports=appEnv,module.exports.getAppEnvironment=getAppEnvironment);
@@ -1 +1 @@
1
- import buildConfigDefaults,{}from"./buildConfigDefaults.js";import{defaultRequire}from"./defaultRequire.js";export function resolveConfigPath(e=["build.config"],i=[process.cwd()]){let r="";const{length:t}=e;for(let o=0,n=e[o];o<t;o+=1)try{if(r=require.resolve(`./${n}`,{paths:i}),r)return r}catch(e){}return r}function merge(e,i){return Array.from(new Set([...Object.getOwnPropertyNames(e),...Object.getOwnPropertyNames(i)])).reduce((r,t)=>{var o,n;const u=t;return Array.isArray(e[u])||Array.isArray(i[u])?r[u]=null!==(o=i[u])&&void 0!==o?o:e[u]:"object"==typeof e[u]&&"object"==typeof i[u]?r[u]=merge(e[u],null!==(n=i[u])&&void 0!==n?n:{}):r[u]=u in i?i[u]:e[u],r},{})}export function getBuildConfig(e=resolveConfigPath()){var i;const r=null!==(i=process.env.buildConfig?JSON.parse(process.env.buildConfig):void 0)&&void 0!==i?i:e?merge(buildConfigDefaults,defaultRequire(e)):Object.assign(Object.assign({},buildConfigDefaults),{web:void 0,node:void 0,shared:void 0});return Object.assign(Object.assign({},r),{default:buildConfigDefaults,envStringify(){return{"process.env.buildConfig":JSON.stringify(this)}}})}const buildConfig=getBuildConfig();export default buildConfig;"undefined"!=typeof module&&(module.exports=buildConfig);
1
+ import buildConfigDefaults,{}from"./buildConfigDefaults.js";import{defaultRequire}from"./defaultRequire.js";export function resolveConfigPath(e=["build.config"],o=[process.cwd()]){let i="";const{length:t}=e;for(let r=0,n=e[r];r<t;r+=1)try{if(i=defaultRequire.resolve(`./${n}`,{paths:o}),i)return i}catch(e){}return i}function merge(e,o){return Array.from(new Set([...Object.getOwnPropertyNames(e),...Object.getOwnPropertyNames(o)])).reduce((i,t)=>{var r,n;const u=t;return Array.isArray(e[u])||Array.isArray(o[u])?i[u]=null!==(r=o[u])&&void 0!==r?r:e[u]:"object"==typeof e[u]&&"object"==typeof o[u]?i[u]=merge(e[u],null!==(n=o[u])&&void 0!==n?n:{}):i[u]=u in o?o[u]:e[u],i},{})}export function getBuildConfig(e=resolveConfigPath()){var o;const i=null!==(o=process.env.buildConfig?JSON.parse(process.env.buildConfig):void 0)&&void 0!==o?o:e?merge(buildConfigDefaults,defaultRequire(e)):Object.assign(Object.assign({},buildConfigDefaults),{web:void 0,node:void 0,shared:void 0});return Object.assign(Object.assign({},i),{default:buildConfigDefaults,envStringify(){return{"process.env.buildConfig":JSON.stringify(this)}}})}const buildConfig=getBuildConfig();export default buildConfig;"undefined"!=typeof module&&(module.exports=buildConfig,module.exports.getBuildConfig=getBuildConfig,module.exports.resolveConfigPath=resolveConfigPath);
@@ -1 +1 @@
1
- export function getWebAppConfig(o="web"){return{root:o,sources:["src"],assets:["src/assets"],staticContent:["public"],html:[],tsconfig:"tsconfig.json",output:{root:o,js:"js",styles:"styles",assets:"assets",external:"lib",publicPath:"/",assetManifest:{fileName:void 0,filterTemplate:void 0},sw:{swDest:void 0,swSrc:void 0}}}}export function getNodeAppConfig(o="node"){return{root:o,sources:["src"],tsconfig:"tsconfig.json",output:{root:o,publicPath:"/"}}}export function getSharedConfig(o="shared"){return{root:o,sources:["src"],tsconfig:"tsconfig.json"}}const buildConfigDefaults={output:{root:"build"},nodeModules:{root:"node_modules"},web:getWebAppConfig(),node:getNodeAppConfig(),shared:getSharedConfig()},config=Object.freeze(buildConfigDefaults);export default config;"undefined"!=typeof module&&(module.exports=config);
1
+ export function getWebAppConfig(e="web"){return{root:e,sources:["src"],assets:["src/assets"],staticContent:["public"],html:[],tsconfig:"tsconfig.json",output:{root:e,js:"js",styles:"styles",assets:"assets",external:"lib",publicPath:"/",assetManifest:{fileName:void 0,filterTemplate:void 0},sw:{swDest:void 0,swSrc:void 0}}}}export function getNodeAppConfig(e="node"){return{root:e,sources:["src"],tsconfig:"tsconfig.json",output:{root:e,publicPath:"/"}}}export function getSharedConfig(e="shared"){return{root:e,sources:["src"],tsconfig:"tsconfig.json"}}const buildConfigDefaults={output:{root:"build"},nodeModules:{root:"node_modules"},web:getWebAppConfig(),node:getNodeAppConfig(),shared:getSharedConfig()};export default buildConfigDefaults;"undefined"!=typeof module&&(module.exports=buildConfigDefaults,module.exports.getWebAppConfig=getWebAppConfig,module.exports.getNodeAppConfig=getNodeAppConfig,module.exports.getSharedConfig=getSharedConfig);
@@ -1 +1 @@
1
- import appEnv from"../appEnv";import paths from"../paths";const config=({import:e=paths.web.sources.length>0&&{path:paths.web.sources},presetEnv:s,nested:t=!0,minimizer:p=appEnv.prod,autoprefixer:o=appEnv.prod}={})=>({sourceMap:appEnv.dev,plugins:[e&&["postcss-import",e],t&&"postcss-nested",["postcss-preset-env",Object.assign(Object.assign({stage:2},s),{features:Object.assign({"custom-media-queries":!0,autoprefixer:o},s?s.features:void 0)})],p&&["cssnano",{preset:["default",{discardComments:{removeAll:!0}}]}]].filter(Boolean)});export default config;"undefined"!=typeof module&&(module.exports=config);
1
+ import appEnv from"../appEnv.js";import paths from"../paths.js";const config=({import:e=paths.web.sources.length>0&&{path:paths.web.sources},presetEnv:s,nested:t=!0,minimizer:p=appEnv.prod,autoprefixer:o=appEnv.prod}={})=>({sourceMap:appEnv.dev,plugins:[e&&["postcss-import",e],t&&"postcss-nested",["postcss-preset-env",Object.assign(Object.assign({stage:2},s),{features:Object.assign({"custom-media-queries":!0,autoprefixer:o},s?s.features:void 0)})],p&&["cssnano",{preset:["default",{discardComments:{removeAll:!0}}]}]].filter(Boolean)});export default config;"undefined"!=typeof module&&(module.exports=config);
@@ -1 +1 @@
1
- import path from"path";import paths from"../paths";const config={extends:["stylelint-config-standard","stylelint-config-css-modules"],plugins:["stylelint-prettier"],defaultSeverity:"error",ignoreFiles:[path.join(paths.nodeModules.root,"/**"),path.join(paths.output.root,"/**")],rules:{"prettier/prettier":!0,"comment-empty-line-before":null,"no-descending-specificity":null,indentation:null,"max-line-length":null,"value-list-comma-newline-after":null,"declaration-colon-newline-after":null,"selector-descendant-combinator-no-non-space":null}};export default config;"undefined"!=typeof module&&(module.exports=config);
1
+ import path from"path";import paths from"../paths.js";const config={extends:["stylelint-config-standard","stylelint-config-css-modules"],plugins:["stylelint-prettier"],defaultSeverity:"error",ignoreFiles:[path.join(paths.nodeModules.root,"/**"),path.join(paths.output.root,"/**")],rules:{"prettier/prettier":!0,"comment-empty-line-before":null,"no-descending-specificity":null,indentation:null,"max-line-length":null,"value-list-comma-newline-after":null,"declaration-colon-newline-after":null,"selector-descendant-combinator-no-non-space":null}};export default config;"undefined"!=typeof module&&(module.exports=config);
@@ -1 +1 @@
1
- import{createRequire}from"module";import path from"path";export const defaultRequire=createRequire("undefined"!=typeof __dirname?path.join(__dirname,"index.js"):new Function("return import.meta.url")());
1
+ import{createRequire}from"module";export const defaultRequire=createRequire(import.meta.url);
@@ -1 +1 @@
1
- import fs from"fs";import path from"path";import globals from"globals";import{defineConfig}from"eslint/config";import eslintJs from"@eslint/js";import{fixupConfigRules}from"@eslint/compat";import paths,{getFilesGlob,getJSExtensions,getTSExtensions,moduleExtensions}from"../paths.js";import{getInstalledPackage}from"../getInstalledPackage.js";import{defaultRequire}from"../defaultRequire.js";import{eslintTsProject}from"./consts.js";const hasBabelParser=!!getInstalledPackage("@babel/eslint-parser",{resolveFromCwd:!0}),hasPromisePlugin=!!getInstalledPackage("eslint-plugin-promise",{resolveFromCwd:!0}),hasImportXPlugin=!!getInstalledPackage("eslint-plugin-import-x",{resolveFromCwd:!0}),hasImportPlugin=!!getInstalledPackage("eslint-plugin-import",{resolveFromCwd:!0}),hasConfigStandard=!!getInstalledPackage("eslint-config-standard",{resolveFromCwd:!0}),hasConfigAirbnbBase=!!getInstalledPackage("eslint-config-airbnb-base",{resolveFromCwd:!0}),hasJsDocPlugin=!!getInstalledPackage("eslint-plugin-jsdoc",{resolveFromCwd:!0}),hasTsDocPlugin=!!getInstalledPackage("eslint-plugin-tsdoc",{resolveFromCwd:!0}),hasPrettierEslintPlugin=!!getInstalledPackage("eslint-plugin-prettier/recommended",{resolveFromCwd:!0}),hasTypescriptEslintPlugin=!!getInstalledPackage("typescript-eslint",{resolveFromCwd:!0}),hasImportResolverTypescript=!!getInstalledPackage("eslint-import-resolver-typescript",{resolveFromCwd:!0}),withFilteredStandardRules=()=>{var e;const s=!!getInstalledPackage("eslint-plugin-n",{resolveFromCwd:!0});return{rules:Object.entries(null!==(e=defaultRequire("eslint-config-standard").rules)&&void 0!==e?e:{}).reduce((e,[t,r])=>(t.startsWith("import/")?hasImportPlugin&&!hasImportXPlugin?e[t]=r:hasImportXPlugin&&(e[t.replace("import/","import-x/")]=r):t.startsWith("n/")?s&&(e[t]=r):t.startsWith("promise/")?hasPromisePlugin&&(e[t]=r):e[t]=r,e),{})}},filterAirbnbRules=()=>{const e=defaultRequire("eslint-config-airbnb-base").extends.map(e=>({rules:e.endsWith("imports.js")?hasImportXPlugin&&Object.entries(defaultRequire(e).rules).reduce((e,[s,t])=>(e[s.replace("import/","import-x/")]=t,e),{})||hasImportPlugin&&defaultRequire(e).rules||{}:defaultRequire(e).rules}));return fixupConfigRules(e)};export function createTypeScriptImportResolver(e){return defaultRequire("eslint-import-resolver-typescript").createTypeScriptImportResolver(Object.assign({extensions:moduleExtensions},e))}export function create(e){const s=hasTypescriptEslintPlugin?path.resolve(e,eslintTsProject):void 0,t=s&&fs.existsSync(s)?s:path.resolve(e,"tsconfig.json");return[eslintJs.configs.recommended,...hasPromisePlugin?[defaultRequire("eslint-plugin-promise").configs["flat/recommended"]]:[],...hasImportPlugin&&!hasImportXPlugin?defaultRequire("eslint-plugin-import").flatConfigs.recommended:[],...hasImportXPlugin?[defaultRequire("eslint-plugin-import-x").flatConfigs.recommended]:[],...hasConfigStandard?[withFilteredStandardRules()]:[],...hasJsDocPlugin?[Object.assign(Object.assign({},defaultRequire("eslint-plugin-jsdoc").configs["flat/recommended"]),{files:[getFilesGlob(getJSExtensions())]})]:[],...hasConfigAirbnbBase?filterAirbnbRules():[],{languageOptions:Object.assign({ecmaVersion:"latest",parserOptions:{ecmaVersion:"latest"},globals:Object.assign({},globals.node)},hasBabelParser&&{parser:defaultRequire("@babel/eslint-parser"),parserOptions:{requireConfigFile:!1}}),linterOptions:{reportUnusedDisableDirectives:!0},settings:Object.assign(Object.assign({},hasImportPlugin&&!hasImportXPlugin&&Object.assign({"import/extensions":getJSExtensions(),"import-x/extensions":getJSExtensions(),"import/resolver":{node:{extensions:getJSExtensions(),moduleDirectory:["node_modules",...paths.web.sources,...paths.node.sources,...paths.shared.sources].filter(e=>!!e)}}},hasBabelParser&&{"import/parsers":{"@babel/eslint-parser":getJSExtensions()}})),hasImportXPlugin&&Object.assign({"import-x/resolver-next":[defaultRequire("eslint-plugin-import-x").createNodeResolver({extensions:getJSExtensions(),modules:["node_modules",...paths.web.sources,...paths.node.sources,...paths.shared.sources].filter(e=>!!e)})]},hasBabelParser&&{"import-x/parsers":{"@babel/eslint-parser":getJSExtensions()}})),rules:Object.assign(Object.assign({"lines-between-class-members":["error","always",{exceptAfterSingleLine:!0}],"func-names":["warn","as-needed",{generators:"as-needed"}],"no-console":"off","no-unused-expressions":["error",{allowShortCircuit:!0}],"no-plusplus":["error",{allowForLoopAfterthoughts:!0}],"no-param-reassign":["error",{props:!1}],"no-promise-executor-return":["error",{allowVoid:!0}],"no-restricted-exports":["error",{restrictedNamedExports:["then"],restrictDefaultExports:{named:!0,namedFrom:!0,namespaceFrom:!0,defaultFrom:!1}}],"no-restricted-syntax":["error","ForInStatement","LabeledStatement","WithStatement","CallExpression[callee.name='setTimeout'][arguments.length!=2]","CallExpression[arguments.length!=2] > MemberExpression[object.name='window'][property.name='setTimeout']"]},(hasImportPlugin||hasImportXPlugin)&&Object.entries({"import/no-extraneous-dependencies":["error",{devDependencies:!0}],"import/extensions":["error","ignorePackages",moduleExtensions.reduce((e,s)=>Object.assign(Object.assign({},e),{[s.substring(1)]:"never"}),{"":"never"})],"import/order":["error",{groups:["builtin","external","internal","parent","sibling","index","object"]}],"import/prefer-default-export":"off"}).reduce((e,[s,t])=>(hasImportXPlugin?e[s.replace("import/","import-x/")]=t:e[s]=t,e),{})),hasPromisePlugin&&{"promise/always-return":"off","promise/catch-or-return":["error",{allowFinally:!0,allowThenStrict:!0}]})},...hasTypescriptEslintPlugin?(()=>{const s=defaultRequire("typescript-eslint");return defineConfig({extends:[...s.configs.strictTypeChecked,...s.configs.stylisticTypeChecked,...hasImportPlugin&&!hasImportXPlugin?defaultRequire("eslint-plugin-import").flatConfigs.recommended:[],...hasImportXPlugin?[defaultRequire("eslint-plugin-import-x").flatConfigs.typescript]:[]],files:[getFilesGlob(getTSExtensions())],plugins:Object.assign({},hasTsDocPlugin&&{tsdoc:defaultRequire("eslint-plugin-tsdoc")}),languageOptions:{parserOptions:{tsconfigRootDir:e,projectService:{defaultProject:t,allowDefaultProject:["*.config.ts","*.config.mts","packages/*/*.config.ts","packages/*/*.config.mts"]}}},settings:Object.assign(Object.assign({},hasImportPlugin&&!hasImportXPlugin&&{"import/extensions":moduleExtensions,"import/resolver":{node:{extensions:moduleExtensions},typescript:{project:t}},"import/parsers":Object.assign({"@typescript-eslint/parser":moduleExtensions},hasBabelParser&&{"@babel/eslint-parser":[]})}),hasImportXPlugin&&{"import-x/extensions":moduleExtensions,"import-x/external-module-folders":["node_modules","node_modules/@types"],"import-x/parsers":Object.assign({"@typescript-eslint/parser":moduleExtensions},hasBabelParser&&{"@babel/eslint-parser":[]}),"import-x/resolver-next":[hasImportResolverTypescript?createTypeScriptImportResolver({project:t}):[],defaultRequire("eslint-plugin-import-x").createNodeResolver({extensions:moduleExtensions,tsconfig:{configFile:t}})]}),rules:Object.assign(Object.assign({"no-useless-constructor":"off","no-void":["error",{allowAsStatement:!0}],"@typescript-eslint/explicit-member-accessibility":"off","@typescript-eslint/explicit-function-return-type":["warn",{allowExpressions:!0,allowTypedFunctionExpressions:!0,allowHigherOrderFunctions:!0,allowDirectConstAssertionInArrowFunctions:!0,allowConciseArrowFunctionExpressionsStartingWithVoid:!0}],"no-use-before-define":"off","@typescript-eslint/no-use-before-define":"error","no-shadow":"off","@typescript-eslint/no-shadow":["error",{ignoreTypeValueShadow:!0}],"no-empty-function":"off","@typescript-eslint/no-empty-function":["error",{allow:["private-constructors","protected-constructors","decoratedFunctions"]}],"@typescript-eslint/no-unused-expressions":["error",{allowShortCircuit:!0}],"@typescript-eslint/prefer-nullish-coalescing":["error",{ignorePrimitives:{string:!0,number:!0},ignoreMixedLogicalExpressions:!0}],"@typescript-eslint/strict-boolean-expressions":["error",{allowAny:!1,allowNullableEnum:!1,allowNullableNumber:!1,allowNullableBoolean:!0,allowNullableObject:!0,allowNullableString:!0,allowNumber:!1,allowString:!0}],"@typescript-eslint/no-unnecessary-condition":"off","@typescript-eslint/no-confusing-void-expression":["error",{ignoreVoidReturningFunctions:!0}],"@typescript-eslint/restrict-template-expressions":["error",{allowNumber:!0,allowBoolean:!0}]},hasImportXPlugin&&{"import-x/named":"off"}),hasTsDocPlugin&&{"tsdoc/syntax":"warn"})})})():[],...hasPrettierEslintPlugin?[defaultRequire("eslint-plugin-prettier/recommended")]:[],{files:[getFilesGlob([".d.ts"])],rules:{"max-classes-per-file":"off"}},{ignores:["node_modules","dist","build",".yarn"]}]}const config=create(process.cwd());export default config;"undefined"!=typeof module&&(module.exports=config);
1
+ import fs from"fs";import path from"path";import globals from"globals";import{defineConfig}from"eslint/config";import eslintJs from"@eslint/js";import{fixupConfigRules}from"@eslint/compat";import paths from"../paths.js";import{getFilesGlob,getJSExtensions,getTSExtensions,moduleExtensions}from"../extensions.js";import{getInstalledPackage}from"../getInstalledPackage.js";import{defaultRequire}from"../defaultRequire.js";import{eslintTsProject}from"./consts.js";const hasBabelParser=!!getInstalledPackage("@babel/eslint-parser",{resolveFromCwd:!0}),hasPromisePlugin=!!getInstalledPackage("eslint-plugin-promise",{resolveFromCwd:!0}),hasImportXPlugin=!!getInstalledPackage("eslint-plugin-import-x",{resolveFromCwd:!0}),hasImportPlugin=!!getInstalledPackage("eslint-plugin-import",{resolveFromCwd:!0}),hasConfigStandard=!!getInstalledPackage("eslint-config-standard",{resolveFromCwd:!0}),hasConfigAirbnbBase=!!getInstalledPackage("eslint-config-airbnb-base",{resolveFromCwd:!0}),hasJsDocPlugin=!!getInstalledPackage("eslint-plugin-jsdoc",{resolveFromCwd:!0}),hasTsDocPlugin=!!getInstalledPackage("eslint-plugin-tsdoc",{resolveFromCwd:!0}),hasPrettierEslintPlugin=!!getInstalledPackage("eslint-plugin-prettier/recommended",{resolveFromCwd:!0}),hasTypescriptEslintPlugin=!!getInstalledPackage("typescript-eslint",{resolveFromCwd:!0}),hasImportResolverTypescript=!!getInstalledPackage("eslint-import-resolver-typescript",{resolveFromCwd:!0}),withFilteredStandardRules=()=>{var e;const s=!!getInstalledPackage("eslint-plugin-n",{resolveFromCwd:!0});return{rules:Object.entries(null!==(e=defaultRequire("eslint-config-standard").rules)&&void 0!==e?e:{}).reduce((e,[t,r])=>(t.startsWith("import/")?hasImportPlugin&&!hasImportXPlugin?e[t]=r:hasImportXPlugin&&(e[t.replace("import/","import-x/")]=r):t.startsWith("n/")?s&&(e[t]=r):t.startsWith("promise/")?hasPromisePlugin&&(e[t]=r):e[t]=r,e),{})}},filterAirbnbRules=()=>{const e=defaultRequire("eslint-config-airbnb-base").extends.map(e=>({rules:e.endsWith("imports.js")?hasImportXPlugin&&Object.entries(defaultRequire(e).rules).reduce((e,[s,t])=>(e[s.replace("import/","import-x/")]=t,e),{})||hasImportPlugin&&defaultRequire(e).rules||{}:defaultRequire(e).rules}));return fixupConfigRules(e)};export function createTypeScriptImportResolver(e){return defaultRequire("eslint-import-resolver-typescript").createTypeScriptImportResolver(Object.assign({extensions:moduleExtensions},e))}export function create(e){const s=hasTypescriptEslintPlugin?path.resolve(e,eslintTsProject):void 0,t=s&&fs.existsSync(s)?s:path.resolve(e,"tsconfig.json");return[eslintJs.configs.recommended,...hasPromisePlugin?[defaultRequire("eslint-plugin-promise").configs["flat/recommended"]]:[],...hasImportPlugin&&!hasImportXPlugin?defaultRequire("eslint-plugin-import").flatConfigs.recommended:[],...hasImportXPlugin?[defaultRequire("eslint-plugin-import-x").flatConfigs.recommended]:[],...hasConfigStandard?[withFilteredStandardRules()]:[],...hasJsDocPlugin?[Object.assign(Object.assign({},defaultRequire("eslint-plugin-jsdoc").configs["flat/recommended"]),{files:[getFilesGlob(getJSExtensions())]})]:[],...hasConfigAirbnbBase?filterAirbnbRules():[],{languageOptions:Object.assign({ecmaVersion:"latest",parserOptions:{ecmaVersion:"latest"},globals:Object.assign({},globals.node)},hasBabelParser&&{parser:defaultRequire("@babel/eslint-parser"),parserOptions:{requireConfigFile:!1}}),linterOptions:{reportUnusedDisableDirectives:!0},settings:Object.assign(Object.assign({},hasImportPlugin&&!hasImportXPlugin&&Object.assign({"import/extensions":getJSExtensions(),"import-x/extensions":getJSExtensions(),"import/resolver":{node:{extensions:getJSExtensions(),moduleDirectory:["node_modules",...paths.web.sources,...paths.node.sources,...paths.shared.sources].filter(e=>!!e)}}},hasBabelParser&&{"import/parsers":{"@babel/eslint-parser":getJSExtensions()}})),hasImportXPlugin&&Object.assign({"import-x/resolver-next":[defaultRequire("eslint-plugin-import-x").createNodeResolver({extensions:getJSExtensions(),modules:["node_modules",...paths.web.sources,...paths.node.sources,...paths.shared.sources].filter(e=>!!e)})]},hasBabelParser&&{"import-x/parsers":{"@babel/eslint-parser":getJSExtensions()}})),rules:Object.assign(Object.assign({"lines-between-class-members":["error","always",{exceptAfterSingleLine:!0}],"func-names":["warn","as-needed",{generators:"as-needed"}],"no-console":"off","no-unused-expressions":["error",{allowShortCircuit:!0}],"no-plusplus":["error",{allowForLoopAfterthoughts:!0}],"no-param-reassign":["error",{props:!1}],"no-promise-executor-return":["error",{allowVoid:!0}],"no-restricted-exports":["error",{restrictedNamedExports:["then"],restrictDefaultExports:{named:!0,namedFrom:!0,namespaceFrom:!0,defaultFrom:!1}}],"no-restricted-syntax":["error","ForInStatement","LabeledStatement","WithStatement","CallExpression[callee.name='setTimeout'][arguments.length!=2]","CallExpression[arguments.length!=2] > MemberExpression[object.name='window'][property.name='setTimeout']"]},(hasImportPlugin||hasImportXPlugin)&&Object.entries({"import/no-extraneous-dependencies":["error",{devDependencies:!0}],"import/extensions":["error","ignorePackages",moduleExtensions.reduce((e,s)=>Object.assign(Object.assign({},e),{[s.substring(1)]:"never"}),{"":"never"})],"import/order":["error",{groups:["builtin","external","internal","parent","sibling","index","object"]}],"import/prefer-default-export":"off"}).reduce((e,[s,t])=>(hasImportXPlugin?e[s.replace("import/","import-x/")]=t:e[s]=t,e),{})),hasPromisePlugin&&{"promise/always-return":"off","promise/catch-or-return":["error",{allowFinally:!0,allowThenStrict:!0}]})},...hasTypescriptEslintPlugin?(()=>{const s=defaultRequire("typescript-eslint");return defineConfig({extends:[...s.configs.strictTypeChecked,...s.configs.stylisticTypeChecked,...hasImportPlugin&&!hasImportXPlugin?defaultRequire("eslint-plugin-import").flatConfigs.recommended:[],...hasImportXPlugin?[defaultRequire("eslint-plugin-import-x").flatConfigs.typescript]:[]],files:[getFilesGlob(getTSExtensions())],plugins:Object.assign({},hasTsDocPlugin&&{tsdoc:defaultRequire("eslint-plugin-tsdoc")}),languageOptions:{parserOptions:{tsconfigRootDir:e,projectService:{defaultProject:t,allowDefaultProject:["*.config.ts","*.config.mts","packages/*/*.config.ts","packages/*/*.config.mts"]}}},settings:Object.assign(Object.assign({},hasImportPlugin&&!hasImportXPlugin&&{"import/extensions":moduleExtensions,"import/resolver":{node:{extensions:moduleExtensions},typescript:{project:t}},"import/parsers":Object.assign({"@typescript-eslint/parser":moduleExtensions},hasBabelParser&&{"@babel/eslint-parser":[]})}),hasImportXPlugin&&{"import-x/extensions":moduleExtensions,"import-x/external-module-folders":["node_modules","node_modules/@types"],"import-x/parsers":Object.assign({"@typescript-eslint/parser":moduleExtensions},hasBabelParser&&{"@babel/eslint-parser":[]}),"import-x/resolver-next":[hasImportResolverTypescript?createTypeScriptImportResolver({project:t}):[],defaultRequire("eslint-plugin-import-x").createNodeResolver({extensions:moduleExtensions,tsconfig:{configFile:t}})]}),rules:Object.assign(Object.assign({"no-useless-constructor":"off","no-void":["error",{allowAsStatement:!0}],"@typescript-eslint/explicit-member-accessibility":"off","@typescript-eslint/explicit-function-return-type":["warn",{allowExpressions:!0,allowTypedFunctionExpressions:!0,allowHigherOrderFunctions:!0,allowDirectConstAssertionInArrowFunctions:!0,allowConciseArrowFunctionExpressionsStartingWithVoid:!0}],"no-use-before-define":"off","@typescript-eslint/no-use-before-define":"error","no-shadow":"off","@typescript-eslint/no-shadow":["error",{ignoreTypeValueShadow:!0}],"no-empty-function":"off","@typescript-eslint/no-empty-function":["error",{allow:["private-constructors","protected-constructors","decoratedFunctions"]}],"@typescript-eslint/no-unused-expressions":["error",{allowShortCircuit:!0}],"@typescript-eslint/prefer-nullish-coalescing":["error",{ignorePrimitives:{string:!0,number:!0},ignoreMixedLogicalExpressions:!0}],"@typescript-eslint/strict-boolean-expressions":["error",{allowAny:!1,allowNullableEnum:!1,allowNullableNumber:!1,allowNullableBoolean:!0,allowNullableObject:!0,allowNullableString:!0,allowNumber:!1,allowString:!0}],"@typescript-eslint/no-unnecessary-condition":"off","@typescript-eslint/no-confusing-void-expression":["error",{ignoreVoidReturningFunctions:!0}],"@typescript-eslint/restrict-template-expressions":["error",{allowNumber:!0,allowBoolean:!0}]},hasImportXPlugin&&{"import-x/named":"off"}),hasTsDocPlugin&&{"tsdoc/syntax":"warn"})})})():[],...hasPrettierEslintPlugin?[defaultRequire("eslint-plugin-prettier/recommended")]:[],{files:[getFilesGlob([".d.ts"])],rules:{"max-classes-per-file":"off"}},{ignores:["node_modules","dist","build",".yarn"]}]}const config=create(process.cwd());export default config;"undefined"!=typeof module&&(module.exports=config,module.exports.create=create,module.exports.createTypeScriptImportResolver=createTypeScriptImportResolver);
@@ -1 +1 @@
1
- import fs from"fs";import{defaultRequire}from"../defaultRequire.js";import buildConfig,{}from"../buildConfig.js";import paths,{getFilesGlob,moduleExtensions}from"../paths.js";const filesGlobs={web:buildConfig.web&&fs.existsSync(paths.web.root)?[getFilesGlob(moduleExtensions,buildConfig.web.root)]:[],node:buildConfig.node&&fs.existsSync(paths.node.root)?[getFilesGlob(moduleExtensions,buildConfig.node.root)]:[],shared:buildConfig.shared&&fs.existsSync(paths.shared.root)?[getFilesGlob(moduleExtensions,buildConfig.shared.root)]:[],other:moduleExtensions.map(e=>`*${e}`)},config=[{settings:{filesGlobs:filesGlobs,getFilesGlob:getFilesGlob}},...filesGlobs.web.length>0?[{files:filesGlobs.web,rules:{}},...defaultRequire("./web.ts")]:[],...filesGlobs.node.length>0?[{files:filesGlobs.node,rules:{}},...defaultRequire("./web.ts"),...defaultRequire("./node.ts")]:[],...filesGlobs.shared.length>0?[...defaultRequire("./common.ts")]:[],...filesGlobs.other.length>0?[{files:filesGlobs.other,ignores:[...filesGlobs.web,...filesGlobs.node,...filesGlobs.shared].filter(Boolean),rules:{}},...defaultRequire("./common.ts")]:[]];export default config;"undefined"!=typeof module&&(module.exports=config);
1
+ import fs from"fs";import paths from"../paths.js";import buildConfig,{}from"../buildConfig.js";import{getFilesGlob,moduleExtensions}from"../extensions.js";import{defaultRequire}from"../defaultRequire.js";const filesGlobs={web:buildConfig.web&&fs.existsSync(paths.web.root)?[getFilesGlob(moduleExtensions,buildConfig.web.root)]:[],node:buildConfig.node&&fs.existsSync(paths.node.root)?[getFilesGlob(moduleExtensions,buildConfig.node.root)]:[],shared:buildConfig.shared&&fs.existsSync(paths.shared.root)?[getFilesGlob(moduleExtensions,buildConfig.shared.root)]:[],other:moduleExtensions.map(e=>`*${e}`)},config=[{settings:{filesGlobs:filesGlobs,getFilesGlob:getFilesGlob}},...filesGlobs.web.length>0?[{files:filesGlobs.web,rules:{}},...defaultRequire("./web.ts")]:[],...filesGlobs.node.length>0?[{files:filesGlobs.node,rules:{}},...defaultRequire("./web.ts"),...defaultRequire("./node.ts")]:[],...filesGlobs.shared.length>0?[...defaultRequire("./common.ts")]:[],...filesGlobs.other.length>0?[{files:filesGlobs.other,ignores:[...filesGlobs.web,...filesGlobs.node,...filesGlobs.shared].filter(Boolean),rules:{}},...defaultRequire("./common.ts")]:[]];export default config;"undefined"!=typeof module&&(module.exports=config);
package/esm/eslint/web.js CHANGED
@@ -1 +1 @@
1
- import globals from"globals";import{fixupConfigRules}from"@eslint/compat";import{getFilesGlob,getNonSXExtensions,getSXExtensions,getTSXExtensions}from"../paths.js";import{getInstalledPackage}from"../getInstalledPackage.js";import{defaultRequire}from"../defaultRequire.js";const hasReactPlugin=!!getInstalledPackage("eslint-plugin-react",{resolveFromCwd:!0}),hasReactA11yPlugin=!!getInstalledPackage("eslint-plugin-jsx-a11y",{resolveFromCwd:!0}),hasReactHooksPlugin=!!getInstalledPackage("eslint-plugin-react-hooks",{resolveFromCwd:!0}),hasWCPlugin=!!getInstalledPackage("eslint-plugin-wc",{resolveFromCwd:!0}),hasLitPlugin=!!getInstalledPackage("eslint-plugin-lit",{resolveFromCwd:!0}),hasMobxPlugin=!!getInstalledPackage("eslint-plugin-mobx",{resolveFromCwd:!0}),hasConfigAirbnb=!!getInstalledPackage("eslint-config-airbnb",{resolveFromCwd:!0}),hasTypescriptEslintPlugin=!!getInstalledPackage("typescript-eslint",{resolveFromCwd:!0}),hasPrettierEslintPlugin=!!getInstalledPackage("eslint-plugin-prettier/recommended",{resolveFromCwd:!0}),filterAirbnbRules=e=>fixupConfigRules({rules:defaultRequire(defaultRequire("eslint-config-airbnb").extends.find(s=>s.endsWith(`${e}.js`))).rules}),config=[...(hasReactPlugin?(()=>{const e=defaultRequire("eslint-plugin-react");return[e.configs.flat.recommended,e.configs.flat["jsx-runtime"],{languageOptions:Object.assign(Object.assign({},e.configs.flat.recommended.languageOptions),{globals:Object.assign({},globals.browser)})},...hasConfigAirbnb?filterAirbnbRules("react"):[],{settings:{react:{version:"19"}},rules:{"react/jsx-props-no-spreading":"off","react/function-component-definition":["error",{namedComponents:"function-declaration",unnamedComponents:["arrow-function","function-expression"]}]}}]})():[{languageOptions:{globals:Object.assign({},globals.browser)}}]).map(e=>{var s;return Object.assign(Object.assign({},e),{files:[...null!==(s=e.files)&&void 0!==s?s:[],getFilesGlob(getSXExtensions())]})}),...(hasReactA11yPlugin?[defaultRequire("eslint-plugin-jsx-a11y").flatConfigs.recommended,...hasConfigAirbnb?filterAirbnbRules("react-a11y"):[],{rules:{"jsx-a11y/anchor-is-valid":["error",{specialLink:["to"]}],"jsx-a11y/label-has-for":["error",{allowChildren:!0}]}}]:[]).map(e=>{var s;return Object.assign(Object.assign({},e),{files:[...null!==(s=e.files)&&void 0!==s?s:[],getFilesGlob(getSXExtensions())]})}),...hasReactPlugin&&hasTypescriptEslintPlugin?[{files:[getFilesGlob(getTSXExtensions())],rules:{"react/require-default-props":"off"}}]:[],...hasReactHooksPlugin?[defaultRequire("eslint-plugin-react-hooks").configs.flat["recommended-latest"],{rules:{"react-hooks/exhaustive-deps":"error"}}]:[],...[hasWCPlugin&&defaultRequire("eslint-plugin-wc").configs["flat/best-practice"],hasWCPlugin&&{settings:{wc:{elementBaseClasses:["HTMLElement"]}}},hasLitPlugin&&defaultRequire("eslint-plugin-lit").configs["flat/recommended"],hasLitPlugin&&{settings:{lit:{elementBaseClasses:["LitElement"]}}}].filter(Boolean).map(e=>{var s;return Object.assign(Object.assign({},e),{files:[...null!==(s=e.files)&&void 0!==s?s:[],getFilesGlob(getNonSXExtensions())]})}),...hasPrettierEslintPlugin?[defaultRequire("eslint-plugin-prettier/recommended")]:[],...hasMobxPlugin?[defaultRequire("eslint-plugin-mobx").flatConfigs.recommended]:[]];export default config;"undefined"!=typeof module&&(module.exports=config);
1
+ import globals from"globals";import{fixupConfigRules}from"@eslint/compat";import{getFilesGlob,getNonSXExtensions,getSXExtensions,getTSXExtensions}from"../extensions.js";import{getInstalledPackage}from"../getInstalledPackage.js";import{defaultRequire}from"../defaultRequire.js";const hasReactPlugin=!!getInstalledPackage("eslint-plugin-react",{resolveFromCwd:!0}),hasReactA11yPlugin=!!getInstalledPackage("eslint-plugin-jsx-a11y",{resolveFromCwd:!0}),hasReactHooksPlugin=!!getInstalledPackage("eslint-plugin-react-hooks",{resolveFromCwd:!0}),hasWCPlugin=!!getInstalledPackage("eslint-plugin-wc",{resolveFromCwd:!0}),hasLitPlugin=!!getInstalledPackage("eslint-plugin-lit",{resolveFromCwd:!0}),hasMobxPlugin=!!getInstalledPackage("eslint-plugin-mobx",{resolveFromCwd:!0}),hasConfigAirbnb=!!getInstalledPackage("eslint-config-airbnb",{resolveFromCwd:!0}),hasTypescriptEslintPlugin=!!getInstalledPackage("typescript-eslint",{resolveFromCwd:!0}),hasPrettierEslintPlugin=!!getInstalledPackage("eslint-plugin-prettier/recommended",{resolveFromCwd:!0}),filterAirbnbRules=e=>fixupConfigRules({rules:defaultRequire(defaultRequire("eslint-config-airbnb").extends.find(s=>s.endsWith(`${e}.js`))).rules}),config=[...(hasReactPlugin?(()=>{const e=defaultRequire("eslint-plugin-react");return[e.configs.flat.recommended,e.configs.flat["jsx-runtime"],{languageOptions:Object.assign(Object.assign({},e.configs.flat.recommended.languageOptions),{globals:Object.assign({},globals.browser)})},...hasConfigAirbnb?filterAirbnbRules("react"):[],{settings:{react:{version:"19"}},rules:{"react/jsx-props-no-spreading":"off","react/function-component-definition":["error",{namedComponents:"function-declaration",unnamedComponents:["arrow-function","function-expression"]}]}}]})():[{languageOptions:{globals:Object.assign({},globals.browser)}}]).map(e=>{var s;return Object.assign(Object.assign({},e),{files:[...null!==(s=e.files)&&void 0!==s?s:[],getFilesGlob(getSXExtensions())]})}),...(hasReactA11yPlugin?[defaultRequire("eslint-plugin-jsx-a11y").flatConfigs.recommended,...hasConfigAirbnb?filterAirbnbRules("react-a11y"):[],{rules:{"jsx-a11y/anchor-is-valid":["error",{specialLink:["to"]}],"jsx-a11y/label-has-for":["error",{allowChildren:!0}]}}]:[]).map(e=>{var s;return Object.assign(Object.assign({},e),{files:[...null!==(s=e.files)&&void 0!==s?s:[],getFilesGlob(getSXExtensions())]})}),...hasReactPlugin&&hasTypescriptEslintPlugin?[{files:[getFilesGlob(getTSXExtensions())],rules:{"react/jsx-filename-extension":["error",{allow:"as-needed",extensions:getSXExtensions()}],"react/require-default-props":"off"}}]:[],...hasReactHooksPlugin?[defaultRequire("eslint-plugin-react-hooks").configs.flat["recommended-latest"],{rules:{"react-hooks/exhaustive-deps":"error"}}]:[],...[hasWCPlugin&&defaultRequire("eslint-plugin-wc").configs["flat/best-practice"],hasWCPlugin&&{settings:{wc:{elementBaseClasses:["HTMLElement"]}}},hasLitPlugin&&defaultRequire("eslint-plugin-lit").configs["flat/recommended"],hasLitPlugin&&{settings:{lit:{elementBaseClasses:["LitElement"]}}}].filter(Boolean).map(e=>{var s;return Object.assign(Object.assign({},e),{files:[...null!==(s=e.files)&&void 0!==s?s:[],getFilesGlob(getNonSXExtensions())]})}),...hasPrettierEslintPlugin?[defaultRequire("eslint-plugin-prettier/recommended")]:[],...hasMobxPlugin?[defaultRequire("eslint-plugin-mobx").flatConfigs.recommended]:[]];export default config;"undefined"!=typeof module&&(module.exports=config);
@@ -0,0 +1 @@
1
+ import path from"path";export const moduleExtensions=[".js",".mjs",".cjs",".jsx",".mjsx",".cjsx",".ts",".mts",".cts",".tsx",".mtsx",".ctsx",".d.ts"];function addStar(t){return t.map(t=>`*${t}`)}export function getFilesGlob(t,e){return`${path.join(e||"","**/*.{")+t.map(t=>t.substring(1)).join(",")}}`}export function getTSExtensions(t=!1){const e=moduleExtensions.filter(t=>t.includes("ts"));return t?addStar(e):e}export function getJSExtensions(t=!1){const e=moduleExtensions.filter(t=>t.includes("js"));return t?addStar(e):e}export function getSXExtensions(t=!1){const e=moduleExtensions.filter(t=>t.endsWith("sx"));return t?addStar(e):e}export function getTSXExtensions(t=!1){const e=moduleExtensions.filter(t=>t.endsWith("tsx"));return t?addStar(e):e}export function getNonSXExtensions(t=!1){const e=moduleExtensions.filter(t=>!t.endsWith("sx"));return t?addStar(e):e}"undefined"!=typeof module&&(module.exports.moduleExtensions=moduleExtensions,module.exports.getFilesGlob=getFilesGlob,module.exports.getTSExtensions=getTSExtensions,module.exports.getJSExtensions=getJSExtensions,module.exports.getSXExtensions=getSXExtensions,module.exports.getTSXExtensions=getTSXExtensions,module.exports.getNonSXExtensions=getNonSXExtensions);
package/esm/paths.js CHANGED
@@ -1 +1 @@
1
- import path from"path";import{getBuildConfig}from"./buildConfig.js";export const moduleExtensions=[".js",".mjs",".cjs",".jsx",".mjsx",".cjsx",".ts",".mts",".cts",".tsx",".mtsx",".ctsx",".d.ts"];function addStar(t){return t.map(t=>`*${t}`)}export function getFilesGlob(t,o){return`${path.join(o||"","**/*.{")+t.map(t=>t.substring(1)).join(",")}}`}export function getTSExtensions(t=!1){const o=moduleExtensions.filter(t=>t.includes("ts"));return t?addStar(o):o}export function getJSExtensions(t=!1){const o=moduleExtensions.filter(t=>t.includes("js"));return t?addStar(o):o}export function getSXExtensions(t=!1){const o=moduleExtensions.filter(t=>t.endsWith("sx"));return t?addStar(o):o}export function getTSXExtensions(t=!1){const o=moduleExtensions.filter(t=>t.endsWith("tsx"));return t?addStar(o):o}export function getNonSXExtensions(t=!1){const o=moduleExtensions.filter(t=>!t.endsWith("sx"));return t?addStar(o):o}export function getPaths(t=process.cwd(),o=getBuildConfig()){return Object.freeze({root:t,nodeModules:{root:(()=>{const e=o.nodeModules.root;try{const o=__dirname.indexOf(e);return o>=0?__dirname.substring(0,o+e.length):path.resolve(t,e)}catch(o){return path.resolve(t,e)}})()},getNodeModulesRoot(t){const o=require.resolve(t),e="node_modules";return o.substring(0,o.indexOf(e)+12)},output:{root:path.resolve(t,o.output.root)},web:(()=>{const{web:e}=o;return e?{root:path.resolve(t,e.root),sources:e.sources.map(o=>path.resolve(t,e.root,o)),assets:e.assets.map(o=>path.resolve(t,e.root,o)),staticContent:e.staticContent.map(o=>{const s="string"==typeof o?{path:o}:o;return path.isAbsolute(s.path)?s:Object.assign(Object.assign({},s),{path:path.resolve(t,e.root,s.path)})}),tsconfig:path.resolve(t,e.root,e.tsconfig),output:{path:path.resolve(t,o.output.root,e.output.root),jsPath:path.resolve(t,o.output.root,e.output.root,e.output.js)}}:{root:"",sources:[],assets:[],staticContent:[],tsconfig:"",output:{path:"",jsPath:""}}})(),node:(()=>{const{node:e}=o;return e?{root:path.resolve(t,e.root),sources:e.sources.map(o=>path.resolve(t,e.root,o)),tsconfig:path.resolve(t,e.root,e.tsconfig),output:{path:path.resolve(t,o.output.root,e.output.root)}}:{root:"",sources:[],tsconfig:"",output:{path:""}}})(),shared:(()=>{const{shared:e}=o;return e?{root:path.resolve(t,e.root),sources:e.sources.map(o=>path.resolve(t,e.root,o)),tsconfig:path.resolve(t,e.root,e.tsconfig)}:{root:"",sources:[],tsconfig:""}})()})}const paths=getPaths();export default paths;"undefined"!=typeof module&&(module.exports=paths);
1
+ import path from"path";import{getBuildConfig}from"./buildConfig.js";import{defaultRequire}from"./defaultRequire.js";export function getPaths(o=process.cwd(),t=getBuildConfig()){return{root:o,nodeModules:{root:(()=>{const e=t.nodeModules.root;try{const t=import.meta.dirname,s=t.indexOf(e);return s>=0?t.substring(0,s+e.length):path.resolve(o,e)}catch(t){return path.resolve(o,e)}})()},output:{root:path.resolve(o,t.output.root)},web:t.web?{root:path.resolve(o,t.web.root),sources:t.web.sources.map(e=>path.resolve(o,t.web.root,e)),assets:t.web.assets.map(e=>path.resolve(o,t.web.root,e)),staticContent:t.web.staticContent.map(e=>{const s="string"==typeof e?{path:e}:e;return path.isAbsolute(s.path)?s:Object.assign(Object.assign({},s),{path:path.resolve(o,t.web.root,s.path)})}),tsconfig:path.resolve(o,t.web.root,t.web.tsconfig),output:{root:path.resolve(o,t.output.root,t.web.output.root),js:path.resolve(o,t.output.root,t.web.output.root,t.web.output.js)}}:{root:"",sources:[],assets:[],staticContent:[],tsconfig:"",output:{root:"",js:""}},node:t.node?{root:path.resolve(o,t.node.root),sources:t.node.sources.map(e=>path.resolve(o,t.node.root,e)),tsconfig:path.resolve(o,t.node.root,t.node.tsconfig),output:{root:path.resolve(o,t.output.root,t.node.output.root)}}:{root:"",sources:[],tsconfig:"",output:{root:""}},shared:t.shared?{root:path.resolve(o,t.shared.root),sources:t.shared.sources.map(e=>path.resolve(o,t.shared.root,e)),tsconfig:path.resolve(o,t.shared.root,t.shared.tsconfig)}:{root:"",sources:[],tsconfig:""},getNodeModulesRoot(o){const t=defaultRequire.resolve(o),e="node_modules";return t.substring(0,t.indexOf(e)+12)}}}const paths=getPaths();export default paths;"undefined"!=typeof module&&(module.exports=paths);
@@ -1 +1 @@
1
- var __rest=this&&this.__rest||function(e,i){var n={};for(var t in e)Object.prototype.hasOwnProperty.call(e,t)&&i.indexOf(t)<0&&(n[t]=e[t]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var o=0;for(t=Object.getOwnPropertySymbols(e);o<t.length;o++)i.indexOf(t[o])<0&&Object.prototype.propertyIsEnumerable.call(e,t[o])&&(n[t[o]]=e[t[o]])}return n};import path from"path";import webpack from"webpack";import appEnv from"../appEnv.js";import buildConfig from"../buildConfig.js";import paths,{getJSExtensions,moduleExtensions}from"../paths.js";import{TsLoaderType,getTsCheckerPlugin}from"./loaders.js";import nodeRequire from"./nodeRequire.js";export default e=>{var i,n,t,o,s,r,l,a,{outputPath:p,outputPublicPath:u,outputJsDir:c,hash:d,chunkSuffix:g=".chunk",typescript:v,minimizerPlugin:m="terser",minimizerPluginOptions:b}=e,f=__rest(e,["outputPath","outputPublicPath","outputJsDir","hash","chunkSuffix","typescript","minimizerPlugin","minimizerPluginOptions"]);const O=!0===d||"object"==typeof d&&d.entry,h=!0===d||"object"==typeof d&&d.chunk;return Object.assign(Object.assign({context:paths.root,mode:appEnv.raw.NODE_ENV,bail:appEnv.prod,devtool:appEnv.ifDev("eval-cheap-module-source-map",!1)},f),{output:Object.assign({path:p,publicPath:u,pathinfo:!1,filename:path.join(c,`[name]${appEnv.prod&&O?".[contenthash:8]":""}.js`),chunkFilename:path.join(c,`[name]${appEnv.prod&&h?".[contenthash:8]":""}${null!=g?g:""}.js`)},f.output),optimization:Object.assign(Object.assign({},f.optimization),appEnv.ifProd({minimizer:["terser"===m&&(()=>{var e;const i=Array.isArray(b)?b.reduce((e,i)=>Object.assign(Object.assign({},e),i),{}):b;return new(nodeRequire("terser-webpack-plugin"))(Object.assign(Object.assign({extractComments:!1},i),{terserOptions:Object.assign(Object.assign({},null==i?void 0:i.terserOptions),{output:Object.assign({comments:!1},null===(e=null==i?void 0:i.terserOptions)||void 0===e?void 0:e.output)})}))})(),"closure"===m&&(()=>{var e;const[i,n]=Array.isArray(b)?null!==(e=b)&&void 0!==e?e:[]:[b,void 0];return new(nodeRequire("closure-webpack-plugin"))(Object.assign({mode:"STANDARD"},i),Object.assign(Object.assign({},appEnv.ifDev({formatting:"PRETTY_PRINT",debug:!0,renaming:!1},void 0)),n))})(),...null!==(n=null===(i=f.optimization)||void 0===i?void 0:i.minimizer)&&void 0!==n?n:[]]},void 0)),plugins:[new webpack.DefinePlugin(Object.assign(Object.assign({},appEnv.envStringify()),buildConfig.envStringify())),...(null==v?void 0:v.forkedChecks)&&v.configFile?[getTsCheckerPlugin(Object.assign(Object.assign({loaderType:null!==(t=v.loader)&&void 0!==t?t:TsLoaderType.Default},v.checkerOptions),{typescript:Object.assign({configFile:v.configFile},null===(o=v.checkerOptions)||void 0===o?void 0:o.typescript)}))]:[],...null!==(s=f.plugins)&&void 0!==s?s:[]],resolve:(()=>{var e,i,n,t,o,s;const r=[...v?moduleExtensions:getJSExtensions(),...null!==(i=null===(e=f.resolve)||void 0===e?void 0:e.extensions)&&void 0!==i?i:[]];return Object.assign(Object.assign({},f.resolve),{extensions:r,modules:["node_modules",paths.nodeModules.root,paths.root,...null!==(t=null===(n=f.resolve)||void 0===n?void 0:n.modules)&&void 0!==t?t:[]],plugins:[...v?[new(nodeRequire("tsconfig-paths-webpack-plugin"))({configFile:v.configFile,extensions:r})]:[],...null!==(s=null===(o=f.resolve)||void 0===o?void 0:o.plugins)&&void 0!==s?s:[]]})})(),ignoreWarnings:[...v?[/export .* was not found in/]:[],...null!==(r=f.ignoreWarnings)&&void 0!==r?r:[]],module:Object.assign(Object.assign({exprContextCritical:!1,unknownContextCritical:!1},f.module),{rules:null!==(a=null===(l=f.module)||void 0===l?void 0:l.rules)&&void 0!==a?a:[]})})};
1
+ var __rest=this&&this.__rest||function(e,i){var n={};for(var t in e)Object.prototype.hasOwnProperty.call(e,t)&&i.indexOf(t)<0&&(n[t]=e[t]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var o=0;for(t=Object.getOwnPropertySymbols(e);o<t.length;o++)i.indexOf(t[o])<0&&Object.prototype.propertyIsEnumerable.call(e,t[o])&&(n[t[o]]=e[t[o]])}return n};import path from"path";import webpack from"webpack";import appEnv from"../appEnv.js";import paths from"../paths.js";import buildConfig from"../buildConfig.js";import{getJSExtensions,moduleExtensions}from"../extensions.js";import{TsLoaderType,getTsCheckerPlugin}from"./loaders.js";import nodeRequire from"./nodeRequire.js";export default e=>{var i,n,t,o,s,r,l,p,{outputPath:a,outputPublicPath:u,outputJsDir:c,hash:d,chunkSuffix:g=".chunk",typescript:v,minimizerPlugin:m="terser",minimizerPluginOptions:b}=e,f=__rest(e,["outputPath","outputPublicPath","outputJsDir","hash","chunkSuffix","typescript","minimizerPlugin","minimizerPluginOptions"]);const O=!0===d||"object"==typeof d&&d.entry,h=!0===d||"object"==typeof d&&d.chunk;return Object.assign(Object.assign({context:paths.root,mode:appEnv.raw.NODE_ENV,bail:appEnv.prod,devtool:appEnv.ifDev("eval-cheap-module-source-map",!1)},f),{output:Object.assign({path:a,publicPath:u,pathinfo:!1,filename:path.join(c,`[name]${appEnv.prod&&O?".[contenthash:8]":""}.js`),chunkFilename:path.join(c,`[name]${appEnv.prod&&h?".[contenthash:8]":""}${null!=g?g:""}.js`)},f.output),optimization:Object.assign(Object.assign({},f.optimization),appEnv.ifProd({minimizer:["terser"===m&&(()=>{var e;const i=Array.isArray(b)?b.reduce((e,i)=>Object.assign(Object.assign({},e),i),{}):b;return new(nodeRequire("terser-webpack-plugin"))(Object.assign(Object.assign({extractComments:!1},i),{terserOptions:Object.assign(Object.assign({},null==i?void 0:i.terserOptions),{output:Object.assign({comments:!1},null===(e=null==i?void 0:i.terserOptions)||void 0===e?void 0:e.output)})}))})(),"closure"===m&&(()=>{var e;const[i,n]=Array.isArray(b)?null!==(e=b)&&void 0!==e?e:[]:[b,void 0];return new(nodeRequire("closure-webpack-plugin"))(Object.assign({mode:"STANDARD"},i),Object.assign(Object.assign({},appEnv.ifDev({formatting:"PRETTY_PRINT",debug:!0,renaming:!1},void 0)),n))})(),...null!==(n=null===(i=f.optimization)||void 0===i?void 0:i.minimizer)&&void 0!==n?n:[]]},void 0)),plugins:[new webpack.DefinePlugin(Object.assign(Object.assign({},appEnv.envStringify()),buildConfig.envStringify())),...(null==v?void 0:v.forkedChecks)&&v.configFile?[getTsCheckerPlugin(Object.assign(Object.assign({loaderType:null!==(t=v.loader)&&void 0!==t?t:TsLoaderType.Default},v.checkerOptions),{typescript:Object.assign({configFile:v.configFile},null===(o=v.checkerOptions)||void 0===o?void 0:o.typescript)}))]:[],...null!==(s=f.plugins)&&void 0!==s?s:[]],resolve:(()=>{var e,i,n,t,o,s;const r=[...v?moduleExtensions:getJSExtensions(),...null!==(i=null===(e=f.resolve)||void 0===e?void 0:e.extensions)&&void 0!==i?i:[]];return Object.assign(Object.assign({},f.resolve),{extensions:r,modules:["node_modules",paths.nodeModules.root,paths.root,...null!==(t=null===(n=f.resolve)||void 0===n?void 0:n.modules)&&void 0!==t?t:[]],plugins:[...v?[new(nodeRequire("tsconfig-paths-webpack-plugin"))({configFile:v.configFile,extensions:r})]:[],...null!==(s=null===(o=f.resolve)||void 0===o?void 0:o.plugins)&&void 0!==s?s:[]]})})(),ignoreWarnings:[...v?[/export .* was not found in/]:[],...null!==(r=f.ignoreWarnings)&&void 0!==r?r:[]],module:Object.assign(Object.assign({exprContextCritical:!1,unknownContextCritical:!1},f.module),{rules:null!==(p=null===(l=f.module)||void 0===l?void 0:l.rules)&&void 0!==p?p:[]})})};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@js-toolkit/configs",
3
- "version": "3.103.6",
3
+ "version": "3.104.0",
4
4
  "description": "Preconfigured configurations",
5
5
  "author": "VZH",
6
6
  "license": "MIT",
@@ -30,12 +30,12 @@
30
30
  },
31
31
  "scripts": {
32
32
  "clean": "rimraf dist/*",
33
- "copy:configs": "copyfiles package.json .npmignore README.md LICENSE ./dist/ && node scripts/postbuild.ts",
33
+ "copy:configs": "copyfiles package.json .npmignore README.md LICENSE ./dist/",
34
34
  "copy": "copyfiles --exclude './src/**/*.ts' --up 1 './src/**/*' ./dist/ && npm run copy:configs",
35
35
  "minify": "node ../node-utils/dist/bin/minify.js --replace ./dist",
36
- "build:cjs": "tsc -p tsconfig.cjs.json",
36
+ "build:cjs": "node scripts/build.cjs.ts",
37
37
  "build:esm": "tsc -p tsconfig.json",
38
- "build": "npm run clean && npm run build:esm && npm run build:cjs",
38
+ "build": "npm run clean && npm run build:esm && npm run build:cjs && node scripts/postbuild.ts",
39
39
  "patch-publish": "yarn run build && yarn run minify && npm version patch --no-workspaces-update -m 'v%s' && yarn run copy && cd ./dist && npm publish --access public && git push --follow-tags",
40
40
  "minor-publish": "yarn run build && yarn run minify && npm version minor --no-workspaces-update -m 'v%s' && yarn run copy && cd ./dist && npm publish --access public && git push --follow-tags"
41
41
  },
@@ -43,6 +43,7 @@
43
43
  "@eslint/compat": "2.0.2",
44
44
  "@eslint/js": "10.0.1",
45
45
  "@types/eslint": "9.6.1",
46
+ "@types/node": "25.3.3",
46
47
  "@types/webpack-node-externals": "3.0.4",
47
48
  "copy-webpack-plugin": "13.0.1",
48
49
  "copyfiles": "2.4.1",
@@ -67,5 +67,5 @@ export interface BuildConfigDefaults {
67
67
  node: ReturnType<typeof getNodeAppConfig>;
68
68
  shared: ReturnType<typeof getSharedConfig>;
69
69
  }
70
- declare const config: Readonly<BuildConfigDefaults>;
71
- export default config;
70
+ declare const buildConfigDefaults: BuildConfigDefaults;
71
+ export default buildConfigDefaults;
@@ -1,2 +1 @@
1
- /** Универсальный require, работает и в CJS и в ESM */
2
- export declare const defaultRequire: NodeRequire;
1
+ export declare const defaultRequire: NodeJS.Require;
@@ -0,0 +1,7 @@
1
+ export declare const moduleExtensions: string[];
2
+ export declare function getFilesGlob(extensions: string[], basePath?: string): string;
3
+ export declare function getTSExtensions(withStar?: boolean): string[];
4
+ export declare function getJSExtensions(withStar?: boolean): string[];
5
+ export declare function getSXExtensions(withStar?: boolean): string[];
6
+ export declare function getTSXExtensions(withStar?: boolean): string[];
7
+ export declare function getNonSXExtensions(withStar?: boolean): string[];
@@ -1,5 +1,5 @@
1
1
  export interface GetInstalledPackageOptions {
2
- requireFn?: typeof require;
2
+ requireFn?: NodeRequire;
3
3
  resolveFromCwd?: boolean;
4
4
  }
5
5
  /**
package/types/paths.d.ts CHANGED
@@ -1,85 +1,15 @@
1
- export declare const moduleExtensions: string[];
2
- export declare function getFilesGlob(extensions: string[], basePath?: string): string;
3
- export declare function getTSExtensions(withStar?: boolean): string[];
4
- export declare function getJSExtensions(withStar?: boolean): string[];
5
- export declare function getSXExtensions(withStar?: boolean): string[];
6
- export declare function getTSXExtensions(withStar?: boolean): string[];
7
- export declare function getNonSXExtensions(withStar?: boolean): string[];
8
- export declare function getPaths(baseDir?: string, buildConfig?: import("./buildConfig.ts").BuildConfig): Readonly<{
1
+ import type { BuildConfigDefaults } from './buildConfigDefaults.ts';
2
+ import type { PickInner } from './types/index.ts';
3
+ export interface Paths extends Omit<BuildConfigDefaults, 'web' | 'node'> {
9
4
  root: string;
10
- nodeModules: {
11
- root: string;
5
+ web: PickInner<Omit<BuildConfigDefaults['web'], 'html' | 'staticContent'>, 'output', 'root' | 'js'> & {
6
+ staticContent: Exclude<BuildConfigDefaults['web']['staticContent'][number], string>[];
12
7
  };
8
+ node: PickInner<BuildConfigDefaults['node'], 'output', 'root'>;
13
9
  /** Any installed package. */
14
10
  getNodeModulesRoot(packageName: string): string;
15
- output: {
16
- root: string;
17
- };
18
- web: {
19
- root: string;
20
- sources: string[];
21
- assets: string[];
22
- staticContent: {
23
- path: string;
24
- ignore?: (string | RegExp)[] | undefined;
25
- }[];
26
- tsconfig: string;
27
- output: {
28
- path: string;
29
- jsPath: string;
30
- };
31
- };
32
- node: {
33
- root: string;
34
- sources: string[];
35
- tsconfig: string;
36
- output: {
37
- path: string;
38
- };
39
- };
40
- shared: {
41
- root: string;
42
- sources: string[];
43
- tsconfig: string;
44
- };
45
- }>;
11
+ }
12
+ export declare function getPaths(baseDir?: string, buildConfig?: import("./buildConfig.ts").BuildConfig): Paths;
46
13
  /** Do not use it in runtime in browser environment! */
47
- declare const paths: Readonly<{
48
- root: string;
49
- nodeModules: {
50
- root: string;
51
- };
52
- /** Any installed package. */
53
- getNodeModulesRoot(packageName: string): string;
54
- output: {
55
- root: string;
56
- };
57
- web: {
58
- root: string;
59
- sources: string[];
60
- assets: string[];
61
- staticContent: {
62
- path: string;
63
- ignore?: (string | RegExp)[] | undefined;
64
- }[];
65
- tsconfig: string;
66
- output: {
67
- path: string;
68
- jsPath: string;
69
- };
70
- };
71
- node: {
72
- root: string;
73
- sources: string[];
74
- tsconfig: string;
75
- output: {
76
- path: string;
77
- };
78
- };
79
- shared: {
80
- root: string;
81
- sources: string[];
82
- tsconfig: string;
83
- };
84
- }>;
14
+ declare const paths: Paths;
85
15
  export default paths;
@@ -5,3 +5,6 @@ export type OptionalToUndefined<T> = {
5
5
  export type RequiredStrict<T> = {
6
6
  [P in keyof T]-?: Exclude<T[P], undefined>;
7
7
  };
8
+ export type PickInner<T, K extends keyof T, IK extends keyof NonNullable<T[K]>> = T extends T ? {
9
+ [P in keyof T]: P extends K ? Pick<NonNullable<T[P]>, IK extends keyof T[P] ? IK : never> : T[P];
10
+ } : never;
@@ -1,3 +1,3 @@
1
1
  /** Original require function (non webpack) to correct load modules in universal projects */
2
- declare const _default: NodeRequire;
2
+ declare const _default: NodeJS.Require;
3
3
  export default _default;