@kasoa/vite-plus-config 0.0.10 → 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 +1 @@
1
- {"version":3,"file":"index.d.mts","names":[],"sources":["../../../src/cloudflare-workers/index.ts"],"mappings":";;;;;KAUK,8BAAA,GAAiC,OAAA,CACpC,WAAA,CAAY,UAAA,QAAkB,cAAA,WAC1B,IAAA;AAAA,UAGW,8BAAA,SAAuC,IAAA,CACtD,8BAAA;EAGA,UAAA,GAAa,YAAA;EACb,MAAA,GAAS,UAAA;EACT,OAAA;EACA,IAAA,GAAO,UAAA;EACP,QAAA,GAAW,8BAAA;AAAA;AAAA,iBAGG,6BAAA,CACd,OAAA,GAAS,8BAAA,GACR,UAAA"}
1
+ {"version":3,"file":"index.d.mts","names":[],"sources":["../../../src/cloudflare-workers/index.ts"],"mappings":";;;;;KASK,8BAAA,GAAiC,OAAA,CACpC,WAAA,CAAY,UAAA,QAAkB,cAAA,WAC1B,IAAA;AAAA,UAGW,8BAAA,SAAuC,IAAA,CACtD,8BAAA;EAGA,UAAA,GAAa,YAAA;EACb,MAAA,GAAS,UAAA;EACT,OAAA;EACA,IAAA,GAAO,UAAA;EACP,QAAA,GAAW,8BAAA;AAAA;AAAA,iBAGG,6BAAA,CACd,OAAA,GAAS,8BAAA,GACR,UAAA"}
@@ -1,47 +1,19 @@
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
- import { createRequire } from "node:module";
4
3
  import { cloudflare } from "@cloudflare/vite-plugin";
5
4
  import { cloudflareTest } from "@cloudflare/vitest-pool-workers";
6
5
  import process from "node:process";
7
- import { join } from "node:path";
8
- //#region src/shared/vitest.ts
9
- const projectRequire = createRequire(join(process.cwd(), "package.json"));
10
- function assertVitePlusVitestAlias() {
11
- if (process.env.VITEST !== "true") return;
12
- let resolvedPath;
13
- try {
14
- resolvedPath = projectRequire.resolve("vitest/package.json");
15
- } catch {
16
- throw new Error([
17
- "Cloudflare Worker tests require `vitest` to resolve to Vite+'s test package.",
18
- "Install it as an alias, for example:",
19
- "`pnpm add -D vitest@npm:@voidzero-dev/vite-plus-test@latest`"
20
- ].join("\n"));
21
- }
22
- if (!resolvedPath.includes("@voidzero-dev+vite-plus-test") && !resolvedPath.includes("@voidzero-dev/vite-plus-test")) throw new Error([
23
- "Cloudflare Worker tests require `vitest` to resolve to `@voidzero-dev/vite-plus-test`.",
24
- `Resolved instead to: ${resolvedPath}`,
25
- "Install it as an alias, for example:",
26
- "`pnpm add -D vitest@npm:@voidzero-dev/vite-plus-test@latest`"
27
- ].join("\n"));
28
- }
29
- //#endregion
30
6
  //#region src/cloudflare-workers/index.ts
31
7
  function createCloudflareWorkersConfig(options = {}) {
32
8
  const { cloudflare: cloudflareOptions = {}, config = {}, include, test, wrangler, ...testPluginOptions } = options;
33
9
  const isTest = process.env.VITEST === "true";
34
- assertVitePlusVitestAlias();
35
- return createNodeConfig(mergeConfigFragments(createDefinedConfig({
36
- plugins: [cloudflareTest({
37
- ...testPluginOptions,
38
- wrangler: {
39
- configPath: DEFAULT_WRANGLER_CONFIG_PATH,
40
- ...wrangler
41
- }
42
- })],
43
- test: { include: include ?? [...DEFAULT_TEST_INCLUDE] }
44
- }, { 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));
45
17
  }
46
18
  //#endregion
47
19
  export { createCloudflareWorkersConfig, createCloudflareWorkersConfig as createConfig };
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","names":[],"sources":["../../../src/shared/vitest.ts","../../../src/cloudflare-workers/index.ts"],"sourcesContent":["import { createRequire } from \"node:module\";\nimport { join } from \"node:path\";\nimport process from \"node:process\";\n\nconst projectRequire = createRequire(join(process.cwd(), \"package.json\"));\n\nexport function assertVitePlusVitestAlias(): void {\n if (process.env.VITEST !== \"true\") {\n return;\n }\n\n let resolvedPath: string;\n\n try {\n resolvedPath = projectRequire.resolve(\"vitest/package.json\");\n } catch {\n throw new Error(\n [\n \"Cloudflare Worker tests require `vitest` to resolve to Vite+'s test package.\",\n \"Install it as an alias, for example:\",\n \"`pnpm add -D vitest@npm:@voidzero-dev/vite-plus-test@latest`\",\n ].join(\"\\n\"),\n );\n }\n\n if (\n !resolvedPath.includes(\"@voidzero-dev+vite-plus-test\") &&\n !resolvedPath.includes(\"@voidzero-dev/vite-plus-test\")\n ) {\n throw new Error(\n [\n \"Cloudflare Worker tests require `vitest` to resolve to `@voidzero-dev/vite-plus-test`.\",\n `Resolved instead to: ${resolvedPath}`,\n \"Install it as an alias, for example:\",\n \"`pnpm add -D vitest@npm:@voidzero-dev/vite-plus-test@latest`\",\n ].join(\"\\n\"),\n );\n }\n}\n","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\";\nimport { assertVitePlusVitestAlias } from \"../shared/vitest.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 assertVitePlusVitestAlias();\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":";;;;;;;;AAIA,MAAM,iBAAiB,cAAc,KAAK,QAAQ,KAAK,EAAE,eAAe,CAAC;AAEzE,SAAgB,4BAAkC;AAChD,KAAI,QAAQ,IAAI,WAAW,OACzB;CAGF,IAAI;AAEJ,KAAI;AACF,iBAAe,eAAe,QAAQ,sBAAsB;SACtD;AACN,QAAM,IAAI,MACR;GACE;GACA;GACA;GACD,CAAC,KAAK,KAAK,CACb;;AAGH,KACE,CAAC,aAAa,SAAS,+BAA+B,IACtD,CAAC,aAAa,SAAS,+BAA+B,CAEtD,OAAM,IAAI,MACR;EACE;EACA,wBAAwB;EACxB;EACA;EACD,CAAC,KAAK,KAAK,CACb;;;;ACVL,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,4BAA2B;AAE3B,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.10",
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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"}