vize 0.390.0 → 0.404.8
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/dist/cli.mjs +15 -20
- package/dist/cli.mjs.map +1 -1
- package/dist/{config-BVly6DWf.d.mts → config-DyVRxv1Z.d.mts} +43 -2
- package/dist/config-DyVRxv1Z.d.mts.map +1 -0
- package/dist/config.d.mts +1 -1
- package/dist/index.d.mts +1 -1
- package/package.json +2 -2
- package/pkl/LinterConfig.pkl +67 -1
- package/pkl/jsonschema/ConfigArtifactDefinitions.pkl +141 -5
- package/pkl/jsonschema/generate.pkl +3 -3
- package/pkl/vize.pkl +53 -0
- package/schemas/vize.config.schema.json +135 -1
- package/src/init/templates.ts +7 -7
- package/src/setup/config.ts +2 -2
- package/src/setup/vite.ts +6 -12
- package/src/types/generated.ts +41 -0
- package/src/types/rules.ts +3 -0
- package/dist/config-BVly6DWf.d.mts.map +0 -1
package/src/init/templates.ts
CHANGED
|
@@ -6,8 +6,8 @@
|
|
|
6
6
|
* See `lint-target.ts` for why writing the wrong one of the two is silent.
|
|
7
7
|
*/
|
|
8
8
|
|
|
9
|
-
/**
|
|
10
|
-
export const INIT_LINT_PRESET = "
|
|
9
|
+
/** User-facing preset alias both Oxlint entry points run with. */
|
|
10
|
+
export const INIT_LINT_PRESET = "happy-path";
|
|
11
11
|
|
|
12
12
|
/** `settings.vize.helpLevel` both Oxlint entry points run with. */
|
|
13
13
|
export const INIT_LINT_HELP_LEVEL = "short";
|
|
@@ -87,7 +87,7 @@ export function renderTypecheckTsconfig(typescript: boolean): string {
|
|
|
87
87
|
/**
|
|
88
88
|
* Config for the `oxlint` binary.
|
|
89
89
|
*
|
|
90
|
-
* `.oxlintrc.json` cannot import `configs.
|
|
90
|
+
* `.oxlintrc.json` cannot import `configs.happyPath`, and the bridge only runs
|
|
91
91
|
* `vize/*` rules that appear in `rules`, so a JSON config would need every rule
|
|
92
92
|
* id inlined and would rot on the next rule addition. `oxlint.config.ts` is
|
|
93
93
|
* Oxlint's TypeScript config format and is auto-discovered (verified against
|
|
@@ -106,7 +106,7 @@ export default defineConfig({
|
|
|
106
106
|
helpLevel: "${INIT_LINT_HELP_LEVEL}",
|
|
107
107
|
},
|
|
108
108
|
},
|
|
109
|
-
rules: configs.
|
|
109
|
+
rules: configs.happyPath,
|
|
110
110
|
});
|
|
111
111
|
`;
|
|
112
112
|
|
|
@@ -118,9 +118,9 @@ export const VITE_LINT_IMPORT =
|
|
|
118
118
|
* The Vite+ `lint` block, the only Oxlint configuration `vp lint` and `vp check`
|
|
119
119
|
* read.
|
|
120
120
|
*
|
|
121
|
-
* `createVizeLintConfig()` returns
|
|
122
|
-
*
|
|
123
|
-
*
|
|
121
|
+
* `createVizeLintConfig()` returns a complete block, which is what makes the
|
|
122
|
+
* `jsPlugins` entry impossible to omit. Hand-assembling the block is how a config
|
|
123
|
+
* ends up looking wired while reporting nothing.
|
|
124
124
|
*/
|
|
125
125
|
export const VITE_LINT_BLOCK = ` lint: createVizeLintConfig({
|
|
126
126
|
preset: "${INIT_LINT_PRESET}",
|
package/src/setup/config.ts
CHANGED
|
@@ -79,11 +79,11 @@ export default defineConfig({
|
|
|
79
79
|
jsPlugins: ["oxlint-plugin-vize"],
|
|
80
80
|
settings: {
|
|
81
81
|
vize: {
|
|
82
|
-
preset: "
|
|
82
|
+
preset: "happy-path",
|
|
83
83
|
helpLevel: "short",
|
|
84
84
|
},
|
|
85
85
|
},
|
|
86
|
-
rules: configs.
|
|
86
|
+
rules: configs.happyPath,
|
|
87
87
|
});
|
|
88
88
|
`;
|
|
89
89
|
|
package/src/setup/vite.ts
CHANGED
|
@@ -10,20 +10,14 @@ const VITE_CONFIG_FILES = [
|
|
|
10
10
|
"vite.config.mjs",
|
|
11
11
|
] as const;
|
|
12
12
|
|
|
13
|
-
const VITE_PLUS_LINT_IMPORT =
|
|
14
|
-
'import { configs as vizePlusLintConfigs } from "oxlint-plugin-vize";\n';
|
|
13
|
+
const VITE_PLUS_LINT_IMPORT = 'import { createVizeLintConfig } from "oxlint-plugin-vize";\n';
|
|
15
14
|
|
|
16
|
-
const VITE_PLUS_LINT_BLOCK = ` lint: {
|
|
17
|
-
|
|
18
|
-
jsPlugins: ["oxlint-plugin-vize"],
|
|
15
|
+
const VITE_PLUS_LINT_BLOCK = ` lint: createVizeLintConfig({
|
|
16
|
+
preset: "happy-path",
|
|
19
17
|
settings: {
|
|
20
|
-
|
|
21
|
-
preset: "general-recommended",
|
|
22
|
-
helpLevel: "short",
|
|
23
|
-
},
|
|
18
|
+
helpLevel: "short",
|
|
24
19
|
},
|
|
25
|
-
|
|
26
|
-
},
|
|
20
|
+
}),
|
|
27
21
|
`;
|
|
28
22
|
|
|
29
23
|
export interface ViteMigrationPlan {
|
|
@@ -129,7 +123,7 @@ function canInjectVitePlusLint(source: string): boolean {
|
|
|
129
123
|
if (
|
|
130
124
|
!/from\s+["']vite-plus["']/u.test(source) ||
|
|
131
125
|
/^\s*lint\s*:/mu.test(source) ||
|
|
132
|
-
/\
|
|
126
|
+
/\bcreateVizeLintConfig\b/u.test(source)
|
|
133
127
|
) {
|
|
134
128
|
return false;
|
|
135
129
|
}
|
package/src/types/generated.ts
CHANGED
|
@@ -224,6 +224,30 @@ export interface LinterConfig {
|
|
|
224
224
|
export interface LintRuleOptions {
|
|
225
225
|
"script/no-restricted-globals"?: NoRestrictedGlobalsOptions;
|
|
226
226
|
"script/no-restricted-members"?: NoRestrictedMembersOptions;
|
|
227
|
+
"vue/component-name-in-template-casing"?: {
|
|
228
|
+
casing?: "PascalCase" | "kebab-case";
|
|
229
|
+
};
|
|
230
|
+
"script/custom-event-name-casing"?: {
|
|
231
|
+
casing?: "camelCase" | "kebab-case";
|
|
232
|
+
};
|
|
233
|
+
"vue/no-mutating-props"?: {
|
|
234
|
+
shallowOnly?: boolean;
|
|
235
|
+
};
|
|
236
|
+
"vue/sfc-element-order"?: {
|
|
237
|
+
order?: (string | string[])[];
|
|
238
|
+
};
|
|
239
|
+
"vue/html-self-closing"?: {
|
|
240
|
+
html?: {
|
|
241
|
+
void?: "always" | "never" | "any";
|
|
242
|
+
normal?: "always" | "never" | "any";
|
|
243
|
+
component?: "always" | "never" | "any";
|
|
244
|
+
};
|
|
245
|
+
svg?: "always" | "never" | "any";
|
|
246
|
+
math?: "always" | "never" | "any";
|
|
247
|
+
};
|
|
248
|
+
"vue/v-on-event-hyphenation"?: "always" | "never";
|
|
249
|
+
"vue/attribute-hyphenation"?: "always" | "never";
|
|
250
|
+
"musea/prefer-design-tokens"?: MuseaPreferDesignTokensOptions;
|
|
227
251
|
}
|
|
228
252
|
export interface NoRestrictedGlobalsOptions {
|
|
229
253
|
globals?: RestrictedGlobal[];
|
|
@@ -240,6 +264,23 @@ export interface RestrictedMember {
|
|
|
240
264
|
property: string;
|
|
241
265
|
message?: string;
|
|
242
266
|
}
|
|
267
|
+
export interface MuseaPreferDesignTokensOptions {
|
|
268
|
+
tokens?: MuseaDesignToken[];
|
|
269
|
+
}
|
|
270
|
+
export interface MuseaDesignToken {
|
|
271
|
+
/**
|
|
272
|
+
* Token path, for example color.primary
|
|
273
|
+
*/
|
|
274
|
+
path: string;
|
|
275
|
+
/**
|
|
276
|
+
* Primitive CSS value to match, for example #3b82f6
|
|
277
|
+
*/
|
|
278
|
+
value: string;
|
|
279
|
+
/**
|
|
280
|
+
* Token tier shown in diagnostics
|
|
281
|
+
*/
|
|
282
|
+
tier?: string;
|
|
283
|
+
}
|
|
243
284
|
export interface TypeCheckerConfig {
|
|
244
285
|
/**
|
|
245
286
|
* Enable type checking
|
package/src/types/rules.ts
CHANGED
|
@@ -166,6 +166,7 @@ export const LINT_RULE_NAMES = [
|
|
|
166
166
|
"vue/no-deprecated-filter",
|
|
167
167
|
"vue/no-deprecated-functional-template",
|
|
168
168
|
"vue/no-deprecated-html-element-is",
|
|
169
|
+
"vue/no-deprecated-inline-template",
|
|
169
170
|
"vue/no-deprecated-router-link-tag-prop",
|
|
170
171
|
"vue/no-deprecated-scope-attribute",
|
|
171
172
|
"vue/no-deprecated-slot-attribute",
|
|
@@ -184,11 +185,13 @@ export const LINT_RULE_NAMES = [
|
|
|
184
185
|
"vue/no-multiple-template-root",
|
|
185
186
|
"vue/no-mutating-props",
|
|
186
187
|
"vue/no-negated-v-if-condition",
|
|
188
|
+
"vue/no-non-component-keep-alive-child",
|
|
187
189
|
"vue/no-preprocessor-lang",
|
|
188
190
|
"vue/no-reserved-component-names",
|
|
189
191
|
"vue/no-root-v-if",
|
|
190
192
|
"vue/no-script-non-standard-lang",
|
|
191
193
|
"vue/no-src-attribute",
|
|
194
|
+
"vue/no-static-inline-styles",
|
|
192
195
|
"vue/no-template-key",
|
|
193
196
|
"vue/no-template-lang",
|
|
194
197
|
"vue/no-template-shadow",
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"config-BVly6DWf.d.mts","names":[],"sources":["../src/types/generated.ts","../src/types/rules.ts","../src/types/runtime.ts","../src/types/index.ts","../src/config.ts"],"mappings":"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"}
|