@danieljvdm/dev-kit 0.15.0 → 0.16.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/src/vite-plus.js CHANGED
@@ -1,5 +1,5 @@
1
1
  import { recommendedOxfmtConfig } from "./oxfmt.js";
2
- import { recommendedOxlintConfig } from "./oxlint.js";
2
+ import { createAbsoluteImportsOxlintOverride, recommendedOxlintConfig } from "./oxlint.js";
3
3
  import { devKitToolIgnorePatterns } from "./tool-ignore-patterns.js";
4
4
 
5
5
  export { devKitToolIgnorePatterns } from "./tool-ignore-patterns.js";
@@ -58,6 +58,12 @@ const createTypecheckTask = (options) => {
58
58
  /** Build composable quality defaults for a project-owned Vite+ config. */
59
59
  export const createRecommendedVitePlusConfig = (options = {}) => {
60
60
  const ignorePatterns = [...devKitToolIgnorePatterns, ...(options.ignorePatterns ?? [])];
61
+ const lintOverrides = options.absoluteImports
62
+ ? [
63
+ ...recommendedOxlintConfig.overrides,
64
+ createAbsoluteImportsOxlintOverride(options.absoluteImports),
65
+ ]
66
+ : recommendedOxlintConfig.overrides;
61
67
 
62
68
  return {
63
69
  staged: {
@@ -70,6 +76,7 @@ export const createRecommendedVitePlusConfig = (options = {}) => {
70
76
  lint: {
71
77
  ...recommendedOxlintConfig,
72
78
  ignorePatterns,
79
+ overrides: lintOverrides,
73
80
  },
74
81
  run: {
75
82
  tasks: {
package/src/vite-plus.ts CHANGED
@@ -1,7 +1,12 @@
1
1
  import { recommendedOxfmtConfig } from "./oxfmt.ts";
2
- import { recommendedOxlintConfig } from "./oxlint.ts";
2
+ import {
3
+ type AbsoluteImportsOptions,
4
+ createAbsoluteImportsOxlintOverride,
5
+ recommendedOxlintConfig,
6
+ } from "./oxlint.ts";
3
7
  import { devKitToolIgnorePatterns } from "./tool-ignore-patterns.ts";
4
8
 
9
+ export type { AbsoluteImportsOptions } from "./oxlint.ts";
5
10
  export { devKitToolIgnorePatterns } from "./tool-ignore-patterns.ts";
6
11
 
7
12
  export type VitePlusTypecheckOptions =
@@ -16,6 +21,8 @@ export type VitePlusTypecheckOptions =
16
21
  };
17
22
 
18
23
  export type RecommendedVitePlusConfigOptions = {
24
+ /** Enforce path-alias imports (no `../`) inside the given globs. */
25
+ readonly absoluteImports?: AbsoluteImportsOptions;
19
26
  /** Additional project-owned generated or vendored paths. */
20
27
  readonly ignorePatterns?: ReadonlyArray<string>;
21
28
  readonly typecheck?: VitePlusTypecheckOptions;
@@ -79,6 +86,12 @@ const createTypecheckTask = (options: VitePlusTypecheckOptions | undefined) => {
79
86
  */
80
87
  export const createRecommendedVitePlusConfig = (options: RecommendedVitePlusConfigOptions = {}) => {
81
88
  const ignorePatterns = [...devKitToolIgnorePatterns, ...(options.ignorePatterns ?? [])];
89
+ const lintOverrides = options.absoluteImports
90
+ ? [
91
+ ...recommendedOxlintConfig.overrides,
92
+ createAbsoluteImportsOxlintOverride(options.absoluteImports),
93
+ ]
94
+ : recommendedOxlintConfig.overrides;
82
95
 
83
96
  return {
84
97
  staged: {
@@ -91,6 +104,7 @@ export const createRecommendedVitePlusConfig = (options: RecommendedVitePlusConf
91
104
  lint: {
92
105
  ...recommendedOxlintConfig,
93
106
  ignorePatterns,
107
+ overrides: lintOverrides,
94
108
  },
95
109
  run: {
96
110
  tasks: {