@kasoa/vite-plus-config 0.0.11 → 0.0.12

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.
@@ -44,13 +44,10 @@ const baseFmt = {
44
44
  ]
45
45
  }
46
46
  };
47
- const reactFmt = {
48
- ...baseFmt,
49
- sortTailwindcss: {
50
- attributes: ["/.*ClassName/"],
51
- functions: ["tv"]
52
- }
53
- };
47
+ const reactFmt = { sortTailwindcss: {
48
+ attributes: ["/.*ClassName/"],
49
+ functions: ["tv"]
50
+ } };
54
51
  //#endregion
55
52
  //#region src/shared/lint.ts
56
53
  const BASE_LINT_PLUGINS = [
@@ -215,14 +212,8 @@ const baseLint = {
215
212
  ]
216
213
  };
217
214
  const reactLint = {
218
- ...baseLint,
219
- plugins: [
220
- ...baseLint.plugins ?? [],
221
- "react",
222
- "jsx-a11y"
223
- ],
215
+ plugins: ["react", "jsx-a11y"],
224
216
  rules: {
225
- ...baseLint.rules,
226
217
  "jsx-a11y/alt-text": "error",
227
218
  "react/jsx-props-no-spreading": "off",
228
219
  "react/react-in-jsx-scope": "off",
@@ -248,16 +239,9 @@ const reactLint = {
248
239
  }
249
240
  };
250
241
  const serverLint = {
251
- ...baseLint,
252
- plugins: [...baseLint.plugins ?? [], "node"],
253
- globals: {
254
- ...baseLint.globals,
255
- WebSocketPair: "readonly"
256
- },
257
- rules: {
258
- ...baseLint.rules,
259
- "node/no-exports-assign": "error"
260
- }
242
+ plugins: ["node"],
243
+ globals: { WebSocketPair: "readonly" },
244
+ rules: { "node/no-exports-assign": "error" }
261
245
  };
262
246
  //#endregion
263
247
  //#region src/base/index.ts
@@ -271,6 +255,6 @@ function createBaseConfig(overrides = {}) {
271
255
  return createDefinedConfig(baseConfig, overrides);
272
256
  }
273
257
  //#endregion
274
- export { DEFAULT_TEST_INCLUDE as a, mergeConfigFragments as c, reactFmt as i, reactLint as n, DEFAULT_WRANGLER_CONFIG_PATH as o, serverLint as r, createDefinedConfig as s, createBaseConfig as t };
258
+ export { DEFAULT_WRANGLER_CONFIG_PATH as a, reactFmt as i, reactLint as n, createDefinedConfig as o, serverLint as r, mergeConfigFragments as s, createBaseConfig as t };
275
259
 
276
- //# sourceMappingURL=base-DSsQy-0L.mjs.map
260
+ //# sourceMappingURL=base-Cwrw6jf3.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base-Cwrw6jf3.mjs","names":[],"sources":["../src/shared/config.ts","../src/shared/constants.ts","../src/shared/fmt.ts","../src/shared/lint.ts","../src/base/index.ts"],"sourcesContent":["import type { UserConfig } from \"vite-plus\";\nimport { defineConfig, mergeConfig } from \"vite-plus\";\n\nexport function mergeConfigFragments(base: UserConfig, ...overrides: UserConfig[]): UserConfig {\n return overrides.reduce<UserConfig>((result, override) => mergeConfig(result, override), base);\n}\n\nexport function createDefinedConfig(base: UserConfig, ...overrides: UserConfig[]): UserConfig {\n return defineConfig(mergeConfigFragments(base, ...overrides));\n}\n","export const DEFAULT_TEST_INCLUDE = [\"**/*.{test,spec}.{ts,tsx,mts,cts}\"] as const;\nexport const GENERATED_FILE_IGNORE_PATTERNS = [\n \"**/worker-configuration.d.ts\",\n \"**/migrations/**\",\n \"**/drizzle/migrations.js\",\n \"**/drizzle/meta/*.json\",\n] as const;\n\nexport const DEFAULT_STAGED_CHECK_GLOB = \"*.{js,jsx,ts,tsx,mjs,cjs,mts,cts}\";\nexport const DEFAULT_STAGED_CHECK_COMMAND = \"vp check --fix\";\nexport const DEFAULT_WRANGLER_CONFIG_PATH = \"./wrangler.jsonc\";\n","import type { UserConfig } from \"vite-plus\";\nimport { GENERATED_FILE_IGNORE_PATTERNS } from \"./constants.ts\";\n\ntype FmtConfig = NonNullable<UserConfig[\"fmt\"]>;\n\nexport const baseFmt: FmtConfig = {\n ignorePatterns: [...GENERATED_FILE_IGNORE_PATTERNS],\n sortImports: {\n internalPattern: [\"#\", \"@/\"],\n newlinesBetween: false,\n groups: [\n \"type-import\",\n [\"value-builtin\", \"value-external\"],\n \"type-internal\",\n \"value-internal\",\n [\"type-parent\", \"type-sibling\", \"type-index\"],\n [\"value-parent\", \"value-sibling\", \"value-index\"],\n \"unknown\",\n ],\n },\n};\n\nexport const reactFmt: FmtConfig = {\n sortTailwindcss: {\n attributes: [\"/.*ClassName/\"],\n functions: [\"tv\"],\n },\n};\n","import type { UserConfig } from \"vite-plus\";\nimport { GENERATED_FILE_IGNORE_PATTERNS } from \"./constants.ts\";\n\nexport const BASE_LINT_PLUGINS = [\"typescript\", \"unicorn\", \"oxc\", \"import\", \"promise\"] as const;\n\ntype LintConfig = NonNullable<UserConfig[\"lint\"]>;\n\nconst baseLintConfig: LintConfig = {\n plugins: [...BASE_LINT_PLUGINS],\n ignorePatterns: [...GENERATED_FILE_IGNORE_PATTERNS],\n env: {\n serviceworker: true,\n worker: true,\n },\n options: {\n reportUnusedDisableDirectives: \"error\",\n typeAware: true,\n typeCheck: true,\n },\n categories: {\n correctness: \"error\",\n suspicious: \"error\",\n pedantic: \"error\",\n perf: \"error\",\n style: \"error\",\n },\n rules: {\n \"capitalized-comments\": \"off\",\n \"func-style\": \"off\",\n \"id-length\": \"off\",\n \"init-declarations\": \"off\",\n \"max-classes-per-file\": \"off\",\n \"max-lines-per-function\": \"off\",\n \"max-statements\": \"off\",\n \"no-continue\": \"off\",\n \"no-magic-numbers\": \"off\",\n \"no-ternary\": \"off\",\n \"require-await\": \"off\",\n \"sort-imports\": \"off\",\n \"sort-keys\": \"off\",\n \"vars-on-top\": \"off\",\n\n complexity: [\"error\", { max: 20 }],\n curly: [\"error\", \"multi-line\", \"consistent\"],\n \"default-case-last\": \"error\",\n eqeqeq: \"error\",\n \"getter-return\": \"error\",\n \"grouped-accessor-pairs\": [\"error\", \"getBeforeSet\"],\n \"max-depth\": [\"error\", { max: 3 }],\n \"max-nested-callbacks\": [\"error\", { max: 3 }],\n \"max-params\": [\"error\", { max: 3 }],\n \"new-cap\": \"off\",\n \"no-alert\": \"error\",\n \"no-bitwise\": \"error\",\n \"no-console\": [\"error\", { allow: [\"info\", \"warn\", \"error\"] }],\n \"no-duplicate-imports\": [\"error\", { allowSeparateTypeImports: true }],\n \"no-param-reassign\": [\"error\", { props: true }],\n \"no-plusplus\": \"error\",\n \"no-undef\": \"error\",\n \"no-unneeded-ternary\": \"error\",\n \"no-unreachable\": \"error\",\n \"no-useless-return\": \"error\",\n \"prefer-template\": \"error\",\n\n \"import/exports-last\": \"off\",\n \"import/group-exports\": \"off\",\n \"import/no-anonymous-default-export\": \"off\",\n \"import/no-named-export\": \"off\",\n \"import/no-namespace\": \"off\",\n \"import/no-nodejs-modules\": \"off\",\n \"import/no-unassigned-import\": \"off\",\n \"import/prefer-default-export\": \"off\",\n \"import/no-cycle\": \"error\",\n\n \"promise/prefer-await-to-callbacks\": \"off\",\n\n \"typescript/ban-ts-comment\": [\"error\", { minimumDescriptionLength: 10 }],\n \"typescript/consistent-type-definitions\": \"off\",\n \"typescript/consistent-return\": \"error\",\n \"typescript/consistent-type-exports\": \"error\",\n \"typescript/consistent-type-imports\": [\n \"error\",\n { prefer: \"type-imports\", fixStyle: \"separate-type-imports\" },\n ],\n \"typescript/dot-notation\": \"error\",\n \"typescript/explicit-module-boundary-types\": \"error\",\n \"typescript/no-confusing-void-expression\": \"error\",\n \"typescript/no-dynamic-delete\": \"error\",\n \"typescript/no-explicit-any\": \"error\",\n \"typescript/no-floating-promises\": \"error\",\n \"typescript/no-misused-promises\": \"error\",\n \"typescript/no-misused-spread\": \"error\",\n \"typescript/no-non-null-assertion\": \"error\",\n \"typescript/no-require-imports\": \"error\",\n \"typescript/no-unnecessary-condition\": \"error\",\n \"typescript/no-unnecessary-qualifier\": \"error\",\n \"typescript/no-unnecessary-type-arguments\": \"error\",\n \"typescript/no-unnecessary-type-assertion\": \"error\",\n \"typescript/no-unnecessary-type-parameters\": \"error\",\n \"typescript/no-unsafe-argument\": \"error\",\n \"typescript/no-unsafe-assignment\": \"error\",\n \"typescript/no-unsafe-call\": \"error\",\n \"typescript/no-unsafe-member-access\": \"error\",\n \"typescript/no-unsafe-return\": \"error\",\n \"typescript/no-useless-default-assignment\": \"error\",\n \"typescript/non-nullable-type-assertion-style\": \"error\",\n \"typescript/only-throw-error\": \"error\",\n \"typescript/prefer-find\": \"error\",\n \"typescript/prefer-nullish-coalescing\": \"error\",\n \"typescript/prefer-optional-chain\": \"error\",\n \"typescript/prefer-readonly\": \"error\",\n \"typescript/prefer-regexp-exec\": \"error\",\n \"typescript/require-await\": \"off\",\n \"typescript/require-array-sort-compare\": \"error\",\n \"typescript/restrict-plus-operands\": \"error\",\n \"typescript/restrict-template-expressions\": \"error\",\n \"typescript/return-await\": \"error\",\n \"typescript/strict-boolean-expressions\": \"error\",\n \"typescript/strict-void-return\": \"error\",\n \"typescript/switch-exhaustiveness-check\": \"error\",\n \"typescript/unbound-method\": \"error\",\n \"typescript/use-unknown-in-catch-callback-variable\": \"error\",\n\n \"unicorn/no-null\": \"off\",\n \"unicorn/no-abusive-eslint-disable\": \"error\",\n \"unicorn/filename-case\": [\"error\", { case: \"kebabCase\" }],\n },\n overrides: [\n {\n files: [\"**/*.{cjs,cts}\"],\n env: {\n node: true,\n },\n rules: {\n \"typescript/no-require-imports\": \"off\",\n },\n },\n {\n files: [\"**/*.config.{js,jsx,ts,tsx,mjs,cjs,mts,cts}\"],\n env: {\n node: true,\n },\n rules: {\n \"func-names\": \"off\",\n },\n },\n {\n files: [\"**/*.d.ts\"],\n rules: {\n \"typescript/no-empty-interface\": \"off\",\n },\n },\n {\n files: [\n \"**/test/**\",\n \"**/tests/**\",\n \"**/__tests__/**\",\n \"**/*.{test,spec}.{js,jsx,ts,tsx,mjs,cjs,mts,cts}\",\n ],\n plugins: [...BASE_LINT_PLUGINS, \"vitest\"],\n env: {\n vitest: true,\n },\n rules: {\n \"vitest/no-importing-vitest-globals\": \"off\",\n \"vitest/max-nested-describe\": [\"error\", { max: 3 }],\n },\n },\n ],\n};\n\nexport const baseLint: LintConfig = baseLintConfig;\n\nconst reactLintConfig: LintConfig = {\n plugins: [\"react\", \"jsx-a11y\"],\n rules: {\n \"jsx-a11y/alt-text\": \"error\",\n\n \"react/jsx-props-no-spreading\": \"off\",\n \"react/react-in-jsx-scope\": \"off\",\n \"react/exhaustive-deps\": \"error\",\n \"react/jsx-key\": \"error\",\n \"react/jsx-max-depth\": [\"error\", { max: 4 }],\n \"react/jsx-no-constructed-context-values\": \"error\",\n \"react/jsx-no-duplicate-props\": \"error\",\n \"react/jsx-no-undef\": \"error\",\n \"react/no-array-index-key\": \"error\",\n \"react/no-children-prop\": \"error\",\n \"react/no-clone-element\": \"error\",\n \"react/no-danger\": \"error\",\n \"react/no-danger-with-children\": \"error\",\n \"react/no-direct-mutation-state\": \"error\",\n \"react/no-find-dom-node\": \"error\",\n \"react/no-react-children\": \"error\",\n \"react/no-string-refs\": \"error\",\n \"react/style-prop-object\": \"off\",\n \"react/no-unsafe\": \"error\",\n \"react/no-unknown-property\": \"error\",\n \"react/void-dom-elements-no-children\": \"error\",\n },\n};\n\nexport const reactLint: LintConfig = reactLintConfig;\n\nconst serverLintConfig: LintConfig = {\n plugins: [\"node\"],\n globals: {\n WebSocketPair: \"readonly\",\n },\n rules: {\n \"node/no-exports-assign\": \"error\",\n },\n};\n\nexport const serverLint: LintConfig = serverLintConfig;\n","import type { UserConfig } from \"vite-plus\";\nimport { createDefinedConfig } from \"../shared/config.ts\";\nimport {\n DEFAULT_STAGED_CHECK_COMMAND,\n DEFAULT_STAGED_CHECK_GLOB,\n DEFAULT_TEST_INCLUDE,\n} from \"../shared/constants.ts\";\nimport { baseFmt } from \"../shared/fmt.ts\";\nimport { baseLint } from \"../shared/lint.ts\";\n\nconst baseConfig: UserConfig = {\n fmt: baseFmt,\n lint: baseLint,\n test: {\n include: [...DEFAULT_TEST_INCLUDE],\n },\n staged: {\n [DEFAULT_STAGED_CHECK_GLOB]: DEFAULT_STAGED_CHECK_COMMAND,\n },\n};\n\nexport function createBaseConfig(overrides: UserConfig = {}): UserConfig {\n return createDefinedConfig(baseConfig, overrides);\n}\n\nexport { createBaseConfig as createConfig };\n"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- import { t as createBaseConfig } from "../../base-DSsQy-0L.mjs";
1
+ import { t as createBaseConfig } from "../../base-Cwrw6jf3.mjs";
2
2
  export { createBaseConfig, createBaseConfig as createConfig };
@@ -1,4 +1,4 @@
1
- import { a as DEFAULT_TEST_INCLUDE, c as mergeConfigFragments, o as DEFAULT_WRANGLER_CONFIG_PATH, s as createDefinedConfig } from "../../base-DSsQy-0L.mjs";
1
+ import { a as DEFAULT_WRANGLER_CONFIG_PATH, o as createDefinedConfig, s as mergeConfigFragments } from "../../base-Cwrw6jf3.mjs";
2
2
  import { createConfig as createNodeConfig } from "../node/index.mjs";
3
3
  import { cloudflare } from "@cloudflare/vite-plugin";
4
4
  import { cloudflareTest } from "@cloudflare/vitest-pool-workers";
@@ -7,16 +7,13 @@ import process from "node:process";
7
7
  function createCloudflareWorkersConfig(options = {}) {
8
8
  const { cloudflare: cloudflareOptions = {}, config = {}, include, test, wrangler, ...testPluginOptions } = options;
9
9
  const isTest = process.env.VITEST === "true";
10
- return createNodeConfig(mergeConfigFragments(createDefinedConfig({
11
- plugins: [cloudflareTest({
12
- ...testPluginOptions,
13
- wrangler: {
14
- configPath: DEFAULT_WRANGLER_CONFIG_PATH,
15
- ...wrangler
16
- }
17
- })],
18
- test: { include: include ?? [...DEFAULT_TEST_INCLUDE] }
19
- }, { test }), !isTest && cloudflareOptions !== false ? { plugins: [...cloudflare(cloudflareOptions)] } : {}, config));
10
+ return createNodeConfig(mergeConfigFragments(createDefinedConfig({ plugins: [cloudflareTest({
11
+ ...testPluginOptions,
12
+ wrangler: {
13
+ configPath: DEFAULT_WRANGLER_CONFIG_PATH,
14
+ ...wrangler
15
+ }
16
+ })] }, include === void 0 ? {} : { test: { include } }, { test }), !isTest && cloudflareOptions !== false ? { plugins: [...cloudflare(cloudflareOptions)] } : {}, config));
20
17
  }
21
18
  //#endregion
22
19
  export { createCloudflareWorkersConfig, createCloudflareWorkersConfig as createConfig };
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","names":[],"sources":["../../../src/cloudflare-workers/index.ts"],"sourcesContent":["import type { PluginConfig as CloudflareVitePluginConfig } from \"@cloudflare/vite-plugin\";\nimport type { UserConfig } from \"vite-plus\";\nimport { cloudflare } from \"@cloudflare/vite-plugin\";\nimport { cloudflareTest } from \"@cloudflare/vitest-pool-workers\";\nimport process from \"node:process\";\nimport { createNodeConfig } from \"../node/index.ts\";\nimport { createDefinedConfig, mergeConfigFragments } from \"../shared/config.ts\";\nimport { DEFAULT_TEST_INCLUDE, DEFAULT_WRANGLER_CONFIG_PATH } from \"../shared/constants.ts\";\n\ntype CloudflareWorkersPluginOptions = Exclude<\n NonNullable<Parameters<typeof cloudflareTest>[0]>,\n (...args: never[]) => unknown\n>;\n\nexport interface CloudflareWorkersConfigOptions extends Omit<\n CloudflareWorkersPluginOptions,\n \"wrangler\"\n> {\n cloudflare?: CloudflareVitePluginConfig | false;\n config?: UserConfig;\n include?: string[];\n test?: UserConfig[\"test\"];\n wrangler?: CloudflareWorkersPluginOptions[\"wrangler\"];\n}\n\nexport function createCloudflareWorkersConfig(\n options: CloudflareWorkersConfigOptions = {},\n): UserConfig {\n const {\n cloudflare: cloudflareOptions = {},\n config = {},\n include,\n test,\n wrangler,\n ...testPluginOptions\n } = options;\n const isTest = process.env.VITEST === \"true\";\n\n return createNodeConfig(\n mergeConfigFragments(\n createDefinedConfig(\n {\n plugins: [\n cloudflareTest({\n ...testPluginOptions,\n wrangler: {\n configPath: DEFAULT_WRANGLER_CONFIG_PATH,\n ...wrangler,\n },\n }),\n ],\n test: {\n include: include ?? [...DEFAULT_TEST_INCLUDE],\n },\n },\n {\n test,\n },\n ),\n !isTest && cloudflareOptions !== false\n ? {\n plugins: [...cloudflare(cloudflareOptions)],\n }\n : {},\n config,\n ),\n );\n}\n\nexport { createCloudflareWorkersConfig as createConfig };\n"],"mappings":";;;;;;AAyBA,SAAgB,8BACd,UAA0C,EAAE,EAChC;CACZ,MAAM,EACJ,YAAY,oBAAoB,EAAE,EAClC,SAAS,EAAE,EACX,SACA,MACA,UACA,GAAG,sBACD;CACJ,MAAM,SAAS,QAAQ,IAAI,WAAW;AAEtC,QAAO,iBACL,qBACE,oBACE;EACE,SAAS,CACP,eAAe;GACb,GAAG;GACH,UAAU;IACR,YAAY;IACZ,GAAG;IACJ;GACF,CAAC,CACH;EACD,MAAM,EACJ,SAAS,WAAW,CAAC,GAAG,qBAAqB,EAC9C;EACF,EACD,EACE,MACD,CACF,EACD,CAAC,UAAU,sBAAsB,QAC7B,EACE,SAAS,CAAC,GAAG,WAAW,kBAAkB,CAAC,EAC5C,GACD,EAAE,EACN,OACD,CACF"}
1
+ {"version":3,"file":"index.mjs","names":[],"sources":["../../../src/cloudflare-workers/index.ts"],"sourcesContent":["import type { PluginConfig as CloudflareVitePluginConfig } from \"@cloudflare/vite-plugin\";\nimport type { UserConfig } from \"vite-plus\";\nimport { cloudflare } from \"@cloudflare/vite-plugin\";\nimport { cloudflareTest } from \"@cloudflare/vitest-pool-workers\";\nimport process from \"node:process\";\nimport { createNodeConfig } from \"../node/index.ts\";\nimport { createDefinedConfig, mergeConfigFragments } from \"../shared/config.ts\";\nimport { DEFAULT_WRANGLER_CONFIG_PATH } from \"../shared/constants.ts\";\n\ntype CloudflareWorkersPluginOptions = Exclude<\n NonNullable<Parameters<typeof cloudflareTest>[0]>,\n (...args: never[]) => unknown\n>;\n\nexport interface CloudflareWorkersConfigOptions extends Omit<\n CloudflareWorkersPluginOptions,\n \"wrangler\"\n> {\n cloudflare?: CloudflareVitePluginConfig | false;\n config?: UserConfig;\n include?: string[];\n test?: UserConfig[\"test\"];\n wrangler?: CloudflareWorkersPluginOptions[\"wrangler\"];\n}\n\nexport function createCloudflareWorkersConfig(\n options: CloudflareWorkersConfigOptions = {},\n): UserConfig {\n const {\n cloudflare: cloudflareOptions = {},\n config = {},\n include,\n test,\n wrangler,\n ...testPluginOptions\n } = options;\n const isTest = process.env.VITEST === \"true\";\n const cloudflareTestConfig = createDefinedConfig(\n {\n plugins: [\n cloudflareTest({\n ...testPluginOptions,\n wrangler: {\n configPath: DEFAULT_WRANGLER_CONFIG_PATH,\n ...wrangler,\n },\n }),\n ],\n },\n include === undefined\n ? {}\n : {\n test: {\n include,\n },\n },\n {\n test,\n },\n );\n\n return createNodeConfig(\n mergeConfigFragments(\n cloudflareTestConfig,\n !isTest && cloudflareOptions !== false\n ? {\n plugins: [...cloudflare(cloudflareOptions)],\n }\n : {},\n config,\n ),\n );\n}\n\nexport { createCloudflareWorkersConfig as createConfig };\n"],"mappings":";;;;;;AAyBA,SAAgB,8BACd,UAA0C,EAAE,EAChC;CACZ,MAAM,EACJ,YAAY,oBAAoB,EAAE,EAClC,SAAS,EAAE,EACX,SACA,MACA,UACA,GAAG,sBACD;CACJ,MAAM,SAAS,QAAQ,IAAI,WAAW;AAyBtC,QAAO,iBACL,qBAzB2B,oBAC3B,EACE,SAAS,CACP,eAAe;EACb,GAAG;EACH,UAAU;GACR,YAAY;GACZ,GAAG;GACJ;EACF,CAAC,CACH,EACF,EACD,YAAY,KAAA,IACR,EAAE,GACF,EACE,MAAM,EACJ,SACD,EACF,EACL,EACE,MACD,CACF,EAKG,CAAC,UAAU,sBAAsB,QAC7B,EACE,SAAS,CAAC,GAAG,WAAW,kBAAkB,CAAC,EAC5C,GACD,EAAE,EACN,OACD,CACF"}
@@ -1,4 +1,4 @@
1
- import { s as createDefinedConfig, t as createBaseConfig } from "../../base-DSsQy-0L.mjs";
1
+ import { o as createDefinedConfig, t as createBaseConfig } from "../../base-Cwrw6jf3.mjs";
2
2
  //#region src/library/index.ts
3
3
  const libraryConfig = { pack: {
4
4
  clean: true,
@@ -1,4 +1,4 @@
1
- import { s as createDefinedConfig, t as createBaseConfig } from "../../base-DSsQy-0L.mjs";
1
+ import { o as createDefinedConfig, t as createBaseConfig } from "../../base-Cwrw6jf3.mjs";
2
2
  //#region src/monorepo/index.ts
3
3
  const monorepoConfig = { run: {
4
4
  cache: {
@@ -1,4 +1,4 @@
1
- import { r as serverLint, s as createDefinedConfig, t as createBaseConfig } from "../../base-DSsQy-0L.mjs";
1
+ import { o as createDefinedConfig, r as serverLint, t as createBaseConfig } from "../../base-Cwrw6jf3.mjs";
2
2
  //#region src/node/index.ts
3
3
  const nodeConfig = { lint: serverLint };
4
4
  function createNodeConfig(overrides = {}) {
@@ -1,4 +1,4 @@
1
- import { i as reactFmt, n as reactLint, s as createDefinedConfig, t as createBaseConfig } from "../../base-DSsQy-0L.mjs";
1
+ import { i as reactFmt, n as reactLint, o as createDefinedConfig, t as createBaseConfig } from "../../base-Cwrw6jf3.mjs";
2
2
  //#region src/react/index.ts
3
3
  const reactConfig = {
4
4
  fmt: reactFmt,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kasoa/vite-plus-config",
3
- "version": "0.0.11",
3
+ "version": "0.0.12",
4
4
  "description": "Kasoa's Vite+ configurations",
5
5
  "keywords": [
6
6
  "config",
@@ -90,9 +90,6 @@
90
90
  "build": "vp pack",
91
91
  "check": "vp check",
92
92
  "check:fix": "vp check --fix",
93
- "lint": "vp lint --fix .",
94
- "format": "vp fmt .",
95
- "typecheck": "vp exec tsgo --noEmit",
96
93
  "test": "vp test --passWithNoTests"
97
94
  }
98
95
  }
@@ -1 +0,0 @@
1
- {"version":3,"file":"base-DSsQy-0L.mjs","names":[],"sources":["../src/shared/config.ts","../src/shared/constants.ts","../src/shared/fmt.ts","../src/shared/lint.ts","../src/base/index.ts"],"sourcesContent":["import type { UserConfig } from \"vite-plus\";\nimport { defineConfig, mergeConfig } from \"vite-plus\";\n\nexport function mergeConfigFragments(base: UserConfig, ...overrides: UserConfig[]): UserConfig {\n return overrides.reduce<UserConfig>((result, override) => mergeConfig(result, override), base);\n}\n\nexport function createDefinedConfig(base: UserConfig, ...overrides: UserConfig[]): UserConfig {\n return defineConfig(mergeConfigFragments(base, ...overrides));\n}\n","export const DEFAULT_TEST_INCLUDE = [\"**/*.{test,spec}.{ts,tsx,mts,cts}\"] as const;\nexport const GENERATED_FILE_IGNORE_PATTERNS = [\n \"**/worker-configuration.d.ts\",\n \"**/migrations/**\",\n \"**/drizzle/migrations.js\",\n \"**/drizzle/meta/*.json\",\n] as const;\n\nexport const DEFAULT_STAGED_CHECK_GLOB = \"*.{js,jsx,ts,tsx,mjs,cjs,mts,cts}\";\nexport const DEFAULT_STAGED_CHECK_COMMAND = \"vp check --fix\";\nexport const DEFAULT_WRANGLER_CONFIG_PATH = \"./wrangler.jsonc\";\n","import type { UserConfig } from \"vite-plus\";\nimport { GENERATED_FILE_IGNORE_PATTERNS } from \"./constants.ts\";\n\ntype FmtConfig = NonNullable<UserConfig[\"fmt\"]>;\n\nexport const baseFmt = {\n ignorePatterns: [...GENERATED_FILE_IGNORE_PATTERNS],\n sortImports: {\n internalPattern: [\"#\", \"@/\"],\n newlinesBetween: false,\n groups: [\n \"type-import\",\n [\"value-builtin\", \"value-external\"],\n \"type-internal\",\n \"value-internal\",\n [\"type-parent\", \"type-sibling\", \"type-index\"],\n [\"value-parent\", \"value-sibling\", \"value-index\"],\n \"unknown\",\n ],\n },\n} satisfies FmtConfig;\n\nexport const reactFmt = {\n ...baseFmt,\n sortTailwindcss: {\n attributes: [\"/.*ClassName/\"],\n functions: [\"tv\"],\n },\n} satisfies FmtConfig;\n","import type { UserConfig } from \"vite-plus\";\nimport { GENERATED_FILE_IGNORE_PATTERNS } from \"./constants.ts\";\n\nexport const BASE_LINT_PLUGINS = [\"typescript\", \"unicorn\", \"oxc\", \"import\", \"promise\"] as const;\n\ntype LintConfig = NonNullable<UserConfig[\"lint\"]>;\n\nconst baseLintConfig: LintConfig = {\n plugins: [...BASE_LINT_PLUGINS],\n ignorePatterns: [...GENERATED_FILE_IGNORE_PATTERNS],\n env: {\n serviceworker: true,\n worker: true,\n },\n options: {\n reportUnusedDisableDirectives: \"error\",\n typeAware: true,\n typeCheck: true,\n },\n categories: {\n correctness: \"error\",\n suspicious: \"error\",\n pedantic: \"error\",\n perf: \"error\",\n style: \"error\",\n },\n rules: {\n \"capitalized-comments\": \"off\",\n \"func-style\": \"off\",\n \"id-length\": \"off\",\n \"init-declarations\": \"off\",\n \"max-classes-per-file\": \"off\",\n \"max-lines-per-function\": \"off\",\n \"max-statements\": \"off\",\n \"no-continue\": \"off\",\n \"no-magic-numbers\": \"off\",\n \"no-ternary\": \"off\",\n \"require-await\": \"off\",\n \"sort-imports\": \"off\",\n \"sort-keys\": \"off\",\n \"vars-on-top\": \"off\",\n\n complexity: [\"error\", { max: 20 }],\n curly: [\"error\", \"multi-line\", \"consistent\"],\n \"default-case-last\": \"error\",\n eqeqeq: \"error\",\n \"getter-return\": \"error\",\n \"grouped-accessor-pairs\": [\"error\", \"getBeforeSet\"],\n \"max-depth\": [\"error\", { max: 3 }],\n \"max-nested-callbacks\": [\"error\", { max: 3 }],\n \"max-params\": [\"error\", { max: 3 }],\n \"new-cap\": \"off\",\n \"no-alert\": \"error\",\n \"no-bitwise\": \"error\",\n \"no-console\": [\"error\", { allow: [\"info\", \"warn\", \"error\"] }],\n \"no-duplicate-imports\": [\"error\", { allowSeparateTypeImports: true }],\n \"no-param-reassign\": [\"error\", { props: true }],\n \"no-plusplus\": \"error\",\n \"no-undef\": \"error\",\n \"no-unneeded-ternary\": \"error\",\n \"no-unreachable\": \"error\",\n \"no-useless-return\": \"error\",\n \"prefer-template\": \"error\",\n\n \"import/exports-last\": \"off\",\n \"import/group-exports\": \"off\",\n \"import/no-anonymous-default-export\": \"off\",\n \"import/no-named-export\": \"off\",\n \"import/no-namespace\": \"off\",\n \"import/no-nodejs-modules\": \"off\",\n \"import/no-unassigned-import\": \"off\",\n \"import/prefer-default-export\": \"off\",\n \"import/no-cycle\": \"error\",\n\n \"promise/prefer-await-to-callbacks\": \"off\",\n\n \"typescript/ban-ts-comment\": [\"error\", { minimumDescriptionLength: 10 }],\n \"typescript/consistent-type-definitions\": \"off\",\n \"typescript/consistent-return\": \"error\",\n \"typescript/consistent-type-exports\": \"error\",\n \"typescript/consistent-type-imports\": [\n \"error\",\n { prefer: \"type-imports\", fixStyle: \"separate-type-imports\" },\n ],\n \"typescript/dot-notation\": \"error\",\n \"typescript/explicit-module-boundary-types\": \"error\",\n \"typescript/no-confusing-void-expression\": \"error\",\n \"typescript/no-dynamic-delete\": \"error\",\n \"typescript/no-explicit-any\": \"error\",\n \"typescript/no-floating-promises\": \"error\",\n \"typescript/no-misused-promises\": \"error\",\n \"typescript/no-misused-spread\": \"error\",\n \"typescript/no-non-null-assertion\": \"error\",\n \"typescript/no-require-imports\": \"error\",\n \"typescript/no-unnecessary-condition\": \"error\",\n \"typescript/no-unnecessary-qualifier\": \"error\",\n \"typescript/no-unnecessary-type-arguments\": \"error\",\n \"typescript/no-unnecessary-type-assertion\": \"error\",\n \"typescript/no-unnecessary-type-parameters\": \"error\",\n \"typescript/no-unsafe-argument\": \"error\",\n \"typescript/no-unsafe-assignment\": \"error\",\n \"typescript/no-unsafe-call\": \"error\",\n \"typescript/no-unsafe-member-access\": \"error\",\n \"typescript/no-unsafe-return\": \"error\",\n \"typescript/no-useless-default-assignment\": \"error\",\n \"typescript/non-nullable-type-assertion-style\": \"error\",\n \"typescript/only-throw-error\": \"error\",\n \"typescript/prefer-find\": \"error\",\n \"typescript/prefer-nullish-coalescing\": \"error\",\n \"typescript/prefer-optional-chain\": \"error\",\n \"typescript/prefer-readonly\": \"error\",\n \"typescript/prefer-regexp-exec\": \"error\",\n \"typescript/require-await\": \"off\",\n \"typescript/require-array-sort-compare\": \"error\",\n \"typescript/restrict-plus-operands\": \"error\",\n \"typescript/restrict-template-expressions\": \"error\",\n \"typescript/return-await\": \"error\",\n \"typescript/strict-boolean-expressions\": \"error\",\n \"typescript/strict-void-return\": \"error\",\n \"typescript/switch-exhaustiveness-check\": \"error\",\n \"typescript/unbound-method\": \"error\",\n \"typescript/use-unknown-in-catch-callback-variable\": \"error\",\n\n \"unicorn/no-null\": \"off\",\n \"unicorn/no-abusive-eslint-disable\": \"error\",\n \"unicorn/filename-case\": [\"error\", { case: \"kebabCase\" }],\n },\n overrides: [\n {\n files: [\"**/*.{cjs,cts}\"],\n env: {\n node: true,\n },\n rules: {\n \"typescript/no-require-imports\": \"off\",\n },\n },\n {\n files: [\"**/*.config.{js,jsx,ts,tsx,mjs,cjs,mts,cts}\"],\n env: {\n node: true,\n },\n rules: {\n \"func-names\": \"off\",\n },\n },\n {\n files: [\"**/*.d.ts\"],\n rules: {\n \"typescript/no-empty-interface\": \"off\",\n },\n },\n {\n files: [\n \"**/test/**\",\n \"**/tests/**\",\n \"**/__tests__/**\",\n \"**/*.{test,spec}.{js,jsx,ts,tsx,mjs,cjs,mts,cts}\",\n ],\n plugins: [...BASE_LINT_PLUGINS, \"vitest\"],\n env: {\n vitest: true,\n },\n rules: {\n \"vitest/no-importing-vitest-globals\": \"off\",\n \"vitest/max-nested-describe\": [\"error\", { max: 3 }],\n },\n },\n ],\n};\n\nexport const baseLint: LintConfig = baseLintConfig;\n\nconst reactLintConfig: LintConfig = {\n ...baseLint,\n plugins: [...(baseLint.plugins ?? []), \"react\", \"jsx-a11y\"],\n rules: {\n ...baseLint.rules,\n \"jsx-a11y/alt-text\": \"error\",\n\n \"react/jsx-props-no-spreading\": \"off\",\n \"react/react-in-jsx-scope\": \"off\",\n \"react/exhaustive-deps\": \"error\",\n \"react/jsx-key\": \"error\",\n \"react/jsx-max-depth\": [\"error\", { max: 4 }],\n \"react/jsx-no-constructed-context-values\": \"error\",\n \"react/jsx-no-duplicate-props\": \"error\",\n \"react/jsx-no-undef\": \"error\",\n \"react/no-array-index-key\": \"error\",\n \"react/no-children-prop\": \"error\",\n \"react/no-clone-element\": \"error\",\n \"react/no-danger\": \"error\",\n \"react/no-danger-with-children\": \"error\",\n \"react/no-direct-mutation-state\": \"error\",\n \"react/no-find-dom-node\": \"error\",\n \"react/no-react-children\": \"error\",\n \"react/no-string-refs\": \"error\",\n \"react/style-prop-object\": \"off\",\n \"react/no-unsafe\": \"error\",\n \"react/no-unknown-property\": \"error\",\n \"react/void-dom-elements-no-children\": \"error\",\n },\n};\n\nexport const reactLint: LintConfig = reactLintConfig;\n\nconst serverLintConfig: LintConfig = {\n ...baseLint,\n plugins: [...(baseLint.plugins ?? []), \"node\"],\n globals: {\n ...baseLint.globals,\n WebSocketPair: \"readonly\",\n },\n rules: {\n ...baseLint.rules,\n \"node/no-exports-assign\": \"error\",\n },\n};\n\nexport const serverLint: LintConfig = serverLintConfig;\n","import type { UserConfig } from \"vite-plus\";\nimport { createDefinedConfig } from \"../shared/config.ts\";\nimport {\n DEFAULT_STAGED_CHECK_COMMAND,\n DEFAULT_STAGED_CHECK_GLOB,\n DEFAULT_TEST_INCLUDE,\n} from \"../shared/constants.ts\";\nimport { baseFmt } from \"../shared/fmt.ts\";\nimport { baseLint } from \"../shared/lint.ts\";\n\nconst baseConfig: UserConfig = {\n fmt: baseFmt,\n lint: baseLint,\n test: {\n include: [...DEFAULT_TEST_INCLUDE],\n },\n staged: {\n [DEFAULT_STAGED_CHECK_GLOB]: DEFAULT_STAGED_CHECK_COMMAND,\n },\n};\n\nexport function createBaseConfig(overrides: UserConfig = {}): UserConfig {\n return createDefinedConfig(baseConfig, overrides);\n}\n\nexport { createBaseConfig as createConfig };\n"],"mappings":"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"}