@longzai-intelligence-oxlint/vitest-config-plugin 0.1.42 → 0.1.44

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.
Files changed (2) hide show
  1. package/dist/index.js +1 -1
  2. package/package.json +2 -2
package/dist/index.js CHANGED
@@ -1 +1 @@
1
- import{defineRule as e,eslintCompatPlugin as t}from"@oxlint/plugins";const n=[],r=[],i=[],a=[];function o(e){if(typeof e!=`object`||!e)return!1;if(`configPackagePaths`in e){let t=Object.getOwnPropertyDescriptor(e,`configPackagePaths`)?.value;if(t!==void 0&&!Array.isArray(t))return!1}if(`allowedExportNames`in e){let t=Object.getOwnPropertyDescriptor(e,`allowedExportNames`)?.value;if(t!==void 0&&!Array.isArray(t))return!1}if(`forbiddenExportNames`in e){let t=Object.getOwnPropertyDescriptor(e,`forbiddenExportNames`)?.value;if(t!==void 0&&!Array.isArray(t))return!1}if(`excludedPaths`in e){let t=Object.getOwnPropertyDescriptor(e,`excludedPaths`)?.value;if(t!==void 0&&!Array.isArray(t))return!1}return!0}function s(e){let t=Array.isArray(e)?e[0]:e;return o(t)?{configPackagePaths:t.configPackagePaths??n,allowedExportNames:t.allowedExportNames??r,forbiddenExportNames:t.forbiddenExportNames??i,excludedPaths:t.excludedPaths??a}:{configPackagePaths:n,allowedExportNames:r,forbiddenExportNames:i,excludedPaths:a}}function c(e){return e.replace(/\\/g,`/`).endsWith(`/vitest.config.ts`)}function l(e,t){return t.some(t=>e.includes(t))}function u(e){if(typeof e!=`object`||!e||!(`type`in e)||!(`callee`in e)||Object.getOwnPropertyDescriptor(e,`type`)?.value!==`CallExpression`)return null;let t=Object.getOwnPropertyDescriptor(e,`callee`)?.value;if(typeof t!=`object`||!t)return null;let n=Object.getOwnPropertyDescriptor(t,`type`)?.value,r=Object.getOwnPropertyDescriptor(t,`name`)?.value;return{type:`CallExpression`,callee:{type:typeof n==`string`?n:``,name:typeof r==`string`?r:void 0}}}function d(e){return typeof e==`object`&&!!e&&`type`in e&&Object.getOwnPropertyDescriptor(e,`type`)?.value===`ObjectExpression`}function f(){return{hasValidImport:!1,hasForbiddenImport:!1,hasExportDefault:!1,forbiddenImportName:``}}function p(e){return e.source.type===`Literal`&&typeof e.source.value==`string`?e.source.value:null}function m(e){return e.imported?.type===`Identifier`?e.imported.name??null:null}function h(e){return`必须使用共享配置函数(${e.allowedExportNames.join(`, `)})从 ${e.configPackagePaths.join(` 或 `)} 导入`}function g(e,t,n){c(t)?(e.resolvedOptions=s(n),l(t,e.resolvedOptions.excludedPaths)?e.isActive=!1:(e.isActive=!0,e.state.hasValidImport=!1,e.state.hasForbiddenImport=!1,e.state.hasExportDefault=!1,e.state.forbiddenImportName=``)):e.isActive=!1}function _(e,t,n){if(e.isActive&&e.resolvedOptions&&t)for(let r of n){if(r.type!==`ImportSpecifier`)continue;let n=m(r);n&&(t===`vitest`&&e.resolvedOptions.forbiddenExportNames.includes(n)?(e.state.hasForbiddenImport=!0,e.state.forbiddenImportName=n):e.resolvedOptions.configPackagePaths.includes(t)&&e.resolvedOptions.allowedExportNames.includes(n)&&(e.state.hasValidImport=!0))}}function v(e,t,n){if(!e.isActive||!e.resolvedOptions)return;if(e.state.hasExportDefault=!0,e.state.hasForbiddenImport){n(`禁止从 vitest 包导入 "${e.state.forbiddenImportName}"。应使用共享配置函数(${e.resolvedOptions.allowedExportNames.join(`, `)})从 ${e.resolvedOptions.configPackagePaths.join(` 或 `)} 导入`);return}let r=u(t);r?r.callee.type===`Identifier`&&r.callee.name&&!e.resolvedOptions.allowedExportNames.includes(r.callee.name)&&!e.state.hasValidImport&&n(h(e.resolvedOptions)):d(t)&&(e.state.hasValidImport||n(h(e.resolvedOptions)))}function y(e,t){e.isActive&&e.resolvedOptions&&(e.state.hasExportDefault||t(`vitest.config.ts 必须使用共享配置函数(${e.resolvedOptions.allowedExportNames.join(`, `)})从 ${e.resolvedOptions.configPackagePaths.join(` 或 `)} 导入`))}const b=e({meta:{type:`problem`,docs:{description:`强制执行 vitest.config.ts 文件中的配置导入规范,必须使用共享配置函数`},schema:[{type:`object`,properties:{configPackagePaths:{type:`array`,items:{type:`string`}},allowedExportNames:{type:`array`,items:{type:`string`}},forbiddenExportNames:{type:`array`,items:{type:`string`}},excludedPaths:{type:`array`,items:{type:`string`}}},additionalProperties:!1}]},createOnce(e){let t={resolvedOptions:null,state:f(),isActive:!1};return{Program(n){g(t,e.filename,e.options)},ImportDeclaration(e){_(t,p(e),e.specifiers)},ExportDefaultDeclaration(n){n.type===`ExportDefaultDeclaration`&&n.declaration&&typeof n.declaration==`object`&&v(t,n.declaration,t=>{e.report({node:n,message:t})})},"Program:exit"(n){y(t,t=>{e.report({node:n,message:t})})}}}}),x=t({meta:{name:`@longzai-intelligence-oxlint/vitest-config-plugin`},rules:{"require-vitest-config-import":b}});export{x as default,x as vitestConfigPlugin,b as requireVitestConfigImportRule};
1
+ import{defineRule as e,eslintCompatPlugin as t}from"@oxlint/plugins";const n=[],r=[],i=[],a=[];function o(e){if(typeof e!=`object`||!e)return!1;if(`configPackagePaths`in e){let t=Object.getOwnPropertyDescriptor(e,`configPackagePaths`)?.value;if(t!==void 0&&!Array.isArray(t))return!1}if(`allowedExportNames`in e){let t=Object.getOwnPropertyDescriptor(e,`allowedExportNames`)?.value;if(t!==void 0&&!Array.isArray(t))return!1}if(`forbiddenExportNames`in e){let t=Object.getOwnPropertyDescriptor(e,`forbiddenExportNames`)?.value;if(t!==void 0&&!Array.isArray(t))return!1}if(`excludedPaths`in e){let t=Object.getOwnPropertyDescriptor(e,`excludedPaths`)?.value;if(t!==void 0&&!Array.isArray(t))return!1}return!0}function s(e){let t=Array.isArray(e)?e[0]:e;return o(t)?{configPackagePaths:t.configPackagePaths??n,allowedExportNames:t.allowedExportNames??r,forbiddenExportNames:t.forbiddenExportNames??i,excludedPaths:t.excludedPaths??a}:{configPackagePaths:n,allowedExportNames:r,forbiddenExportNames:i,excludedPaths:a}}function c(e){return e.replace(/\\/g,`/`).endsWith(`/vitest.config.ts`)}function l(e,t){return t.some(t=>e.includes(t))}function u(e){if(typeof e!=`object`||!e||!(`type`in e)||!(`callee`in e)||Object.getOwnPropertyDescriptor(e,`type`)?.value!==`CallExpression`)return null;let t=Object.getOwnPropertyDescriptor(e,`callee`)?.value;if(typeof t!=`object`||!t)return null;let n=Object.getOwnPropertyDescriptor(t,`type`)?.value,r=Object.getOwnPropertyDescriptor(t,`name`)?.value;return{type:`CallExpression`,callee:{type:typeof n==`string`?n:``,name:typeof r==`string`?r:void 0}}}function d(e){return typeof e==`object`&&!!e&&`type`in e&&Object.getOwnPropertyDescriptor(e,`type`)?.value===`ObjectExpression`}function f(){return{hasValidImport:!1,hasForbiddenImport:!1,hasExportDefault:!1,forbiddenImportName:``}}function p(e){return e.source.type===`Literal`&&typeof e.source.value==`string`?e.source.value:null}function m(e){return e.imported?.type===`Identifier`?e.imported.name??null:null}function h(e){return`必须使用共享配置函数(${e.allowedExportNames.join(`, `)})从 ${e.configPackagePaths.join(` 或 `)} 导入`}function g(e,t,n){c(t)?(e.resolvedOptions=s(n),e.resolvedOptions.configPackagePaths.length===0||e.resolvedOptions.allowedExportNames.length===0||l(t,e.resolvedOptions.excludedPaths)?e.isActive=!1:(e.isActive=!0,e.state.hasValidImport=!1,e.state.hasForbiddenImport=!1,e.state.hasExportDefault=!1,e.state.forbiddenImportName=``)):e.isActive=!1}function _(e,t,n){if(e.isActive&&e.resolvedOptions&&t)for(let r of n){if(r.type!==`ImportSpecifier`)continue;let n=m(r);n&&(t===`vitest`&&e.resolvedOptions.forbiddenExportNames.includes(n)?(e.state.hasForbiddenImport=!0,e.state.forbiddenImportName=n):e.resolvedOptions.configPackagePaths.includes(t)&&e.resolvedOptions.allowedExportNames.includes(n)&&(e.state.hasValidImport=!0))}}function v(e,t,n){if(!e.isActive||!e.resolvedOptions)return;if(e.state.hasExportDefault=!0,e.state.hasForbiddenImport){n(`禁止从 vitest 包导入 "${e.state.forbiddenImportName}"。应使用共享配置函数(${e.resolvedOptions.allowedExportNames.join(`, `)})从 ${e.resolvedOptions.configPackagePaths.join(` 或 `)} 导入`);return}let r=u(t);r?r.callee.type===`Identifier`&&r.callee.name&&!e.resolvedOptions.allowedExportNames.includes(r.callee.name)&&!e.state.hasValidImport&&n(h(e.resolvedOptions)):d(t)&&(e.state.hasValidImport||n(h(e.resolvedOptions)))}function y(e,t){e.isActive&&e.resolvedOptions&&(e.state.hasExportDefault||t(`vitest.config.ts 必须使用共享配置函数(${e.resolvedOptions.allowedExportNames.join(`, `)})从 ${e.resolvedOptions.configPackagePaths.join(` 或 `)} 导入`))}const b=e({meta:{type:`problem`,docs:{description:`强制执行 vitest.config.ts 文件中的配置导入规范,必须使用共享配置函数`},schema:[{type:`object`,properties:{configPackagePaths:{type:`array`,items:{type:`string`}},allowedExportNames:{type:`array`,items:{type:`string`}},forbiddenExportNames:{type:`array`,items:{type:`string`}},excludedPaths:{type:`array`,items:{type:`string`}}},additionalProperties:!1}]},createOnce(e){let t={resolvedOptions:null,state:f(),isActive:!1};return{Program(n){g(t,e.filename,e.options)},ImportDeclaration(e){_(t,p(e),e.specifiers)},ExportDefaultDeclaration(n){n.type===`ExportDefaultDeclaration`&&n.declaration&&typeof n.declaration==`object`&&v(t,n.declaration,t=>{e.report({node:n,message:t})})},"Program:exit"(n){y(t,t=>{e.report({node:n,message:t})})}}}}),x=t({meta:{name:`@longzai-intelligence-oxlint/vitest-config-plugin`},rules:{"require-vitest-config-import":b}});export{x as default,x as vitestConfigPlugin,b as requireVitestConfigImportRule};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@longzai-intelligence-oxlint/vitest-config-plugin",
3
- "version": "0.1.42",
3
+ "version": "0.1.44",
4
4
  "description": "Longzai Intelligence oxlint vitest 配置规则插件",
5
5
  "keywords": [
6
6
  "config",
@@ -43,7 +43,7 @@
43
43
  "typecheck:test": "lzi-tsgo typecheck tsconfig/test.json"
44
44
  },
45
45
  "dependencies": {
46
- "@longzai-intelligence-oxlint/core": "0.1.42",
46
+ "@longzai-intelligence-oxlint/core": "0.1.44",
47
47
  "@oxlint/plugins": "^1.74.0"
48
48
  },
49
49
  "devDependencies": {