create-vue 3.18.1 → 3.18.2
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/bundle.js +52 -68
- package/package.json +7 -7
- package/template/base/_gitignore +9 -3
- package/template/base/package.json +2 -2
- package/template/code/default/src/components/TheWelcome.vue +3 -2
- package/template/code/router/src/components/TheWelcome.vue +3 -2
- package/template/code/typescript-default/src/components/TheWelcome.vue +3 -2
- package/template/code/typescript-router/src/components/TheWelcome.vue +3 -2
- package/template/config/cypress/package.json +1 -1
- package/template/config/cypress-ct/package.json +1 -1
- package/template/config/jsx/package.json +1 -1
- package/template/config/nightwatch/package.json +3 -3
- package/template/config/playwright/package.json +1 -1
- package/template/config/router/package.json +1 -1
- package/template/config/typescript/package.json +2 -2
- package/template/config/vitest/package.json +1 -1
- package/template/eslint/package.json +2 -2
- package/template/tsconfig/vitest/package.json +1 -1
package/bundle.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
/*! create-vue v3.18.
|
|
2
|
+
/*! create-vue v3.18.2 | MIT */
|
|
3
3
|
import { createRequire } from "node:module";
|
|
4
4
|
import * as fs from "node:fs";
|
|
5
5
|
import * as path from "node:path";
|
|
@@ -430,16 +430,16 @@ function Y$1(e$1, u$1, t) {
|
|
|
430
430
|
`).map((F$1) => lD(F$1, u$1, t)).join(`
|
|
431
431
|
`);
|
|
432
432
|
}
|
|
433
|
-
const
|
|
434
|
-
|
|
435
|
-
|
|
436
|
-
|
|
437
|
-
|
|
438
|
-
|
|
439
|
-
|
|
440
|
-
|
|
441
|
-
|
|
442
|
-
|
|
433
|
+
const B = {
|
|
434
|
+
actions: new Set([
|
|
435
|
+
"up",
|
|
436
|
+
"down",
|
|
437
|
+
"left",
|
|
438
|
+
"right",
|
|
439
|
+
"space",
|
|
440
|
+
"enter",
|
|
441
|
+
"cancel"
|
|
442
|
+
]),
|
|
443
443
|
aliases: new Map([
|
|
444
444
|
["k", "up"],
|
|
445
445
|
["j", "down"],
|
|
@@ -2169,23 +2169,17 @@ function renderTemplate(src, dest, callbacks) {
|
|
|
2169
2169
|
}
|
|
2170
2170
|
const filename = path.basename(src);
|
|
2171
2171
|
if (filename === "package.json" && fs.existsSync(dest)) {
|
|
2172
|
-
const
|
|
2173
|
-
const newPackage = JSON.parse(fs.readFileSync(src, "utf8"));
|
|
2174
|
-
const pkg = sortDependencies(deepMerge_default(existing, newPackage));
|
|
2172
|
+
const pkg = sortDependencies(deepMerge_default(JSON.parse(fs.readFileSync(dest, "utf8")), JSON.parse(fs.readFileSync(src, "utf8"))));
|
|
2175
2173
|
fs.writeFileSync(dest, JSON.stringify(pkg, null, 2) + "\n");
|
|
2176
2174
|
return;
|
|
2177
2175
|
}
|
|
2178
2176
|
if (filename === "extensions.json" && fs.existsSync(dest)) {
|
|
2179
|
-
const
|
|
2180
|
-
const newExtensions = JSON.parse(fs.readFileSync(src, "utf8"));
|
|
2181
|
-
const extensions = deepMerge_default(existing, newExtensions);
|
|
2177
|
+
const extensions = deepMerge_default(JSON.parse(fs.readFileSync(dest, "utf8")), JSON.parse(fs.readFileSync(src, "utf8")));
|
|
2182
2178
|
fs.writeFileSync(dest, JSON.stringify(extensions, null, 2) + "\n");
|
|
2183
2179
|
return;
|
|
2184
2180
|
}
|
|
2185
2181
|
if (filename === "settings.json" && fs.existsSync(dest)) {
|
|
2186
|
-
const
|
|
2187
|
-
const newSettings = JSON.parse(fs.readFileSync(src, "utf8"));
|
|
2188
|
-
const settings = deepMerge_default(existing, newSettings);
|
|
2182
|
+
const settings = deepMerge_default(JSON.parse(fs.readFileSync(dest, "utf8")), JSON.parse(fs.readFileSync(src, "utf8")));
|
|
2189
2183
|
fs.writeFileSync(dest, JSON.stringify(settings, null, 2) + "\n");
|
|
2190
2184
|
return;
|
|
2191
2185
|
}
|
|
@@ -2420,8 +2414,7 @@ function linkLocale(locale) {
|
|
|
2420
2414
|
return linkedLocale;
|
|
2421
2415
|
}
|
|
2422
2416
|
function getLocale() {
|
|
2423
|
-
|
|
2424
|
-
return linkLocale(shellLocale.split(".")[0].replace("_", "-"));
|
|
2417
|
+
return linkLocale((process.env.LC_ALL || process.env.LC_MESSAGES || process.env.LANG || Intl.DateTimeFormat().resolvedOptions().locale || "en-US").split(".")[0].replace("_", "-"));
|
|
2425
2418
|
}
|
|
2426
2419
|
async function loadLanguageFile(filePath) {
|
|
2427
2420
|
return await fs.promises.readFile(filePath, "utf-8").then((data) => {
|
|
@@ -2437,7 +2430,7 @@ async function getLanguage(localesRoot) {
|
|
|
2437
2430
|
}
|
|
2438
2431
|
|
|
2439
2432
|
//#endregion
|
|
2440
|
-
//#region node_modules/.pnpm/@vue+create-eslint-config@0.
|
|
2433
|
+
//#region node_modules/.pnpm/@vue+create-eslint-config@0.13.0/node_modules/@vue/create-eslint-config/renderEjsFile.js
|
|
2441
2434
|
const templates = {
|
|
2442
2435
|
"./templates/_editorconfig.ejs": "[*.{js,jsx,mjs,cjs,ts,tsx,mts,cts,vue,css,scss,sass,less,styl}]\ncharset = utf-8\nindent_size = 2\nindent_style = space\ninsert_final_newline = true\ntrim_trailing_whitespace = true\nend_of_line = lf\nmax_line_length = 100\n",
|
|
2443
2436
|
"./templates/_gitattributes": "* text=auto eol=lf\n",
|
|
@@ -2450,9 +2443,9 @@ function renderEjsFile(filePath, data) {
|
|
|
2450
2443
|
}
|
|
2451
2444
|
|
|
2452
2445
|
//#endregion
|
|
2453
|
-
//#region node_modules/.pnpm/@vue+create-eslint-config@0.
|
|
2446
|
+
//#region node_modules/.pnpm/@vue+create-eslint-config@0.13.0/node_modules/@vue/create-eslint-config/package.json
|
|
2454
2447
|
var name$1 = "@vue/create-eslint-config";
|
|
2455
|
-
var version$1 = "0.
|
|
2448
|
+
var version$1 = "0.13.0";
|
|
2456
2449
|
var description$1 = "Utility to setup ESLint in Vue.js projects.";
|
|
2457
2450
|
var type$1 = "module";
|
|
2458
2451
|
var main = "index.js";
|
|
@@ -2485,18 +2478,18 @@ var dependencies = {
|
|
|
2485
2478
|
"kolorist": "^1.8.0"
|
|
2486
2479
|
};
|
|
2487
2480
|
var devDependencies$2 = {
|
|
2488
|
-
"@eslint/js": "^9.
|
|
2481
|
+
"@eslint/js": "^9.37.0",
|
|
2489
2482
|
"@prettier/plugin-oxc": "^0.0.4",
|
|
2490
|
-
"@types/node": "^22.
|
|
2483
|
+
"@types/node": "^22.18.10",
|
|
2491
2484
|
"@vue/eslint-config-prettier": "^10.2.0",
|
|
2492
2485
|
"@vue/eslint-config-typescript": "^14.6.0",
|
|
2493
|
-
"eslint": "^9.
|
|
2494
|
-
"eslint-plugin-oxlint": "~1.
|
|
2495
|
-
"eslint-plugin-vue": "~10.
|
|
2496
|
-
"globals": "^16.
|
|
2497
|
-
"jiti": "^2.
|
|
2486
|
+
"eslint": "^9.37.0",
|
|
2487
|
+
"eslint-plugin-oxlint": "~1.23.0",
|
|
2488
|
+
"eslint-plugin-vue": "~10.5.0",
|
|
2489
|
+
"globals": "^16.4.0",
|
|
2490
|
+
"jiti": "^2.6.1",
|
|
2498
2491
|
"npm-run-all2": "^8.0.4",
|
|
2499
|
-
"oxlint": "~1.
|
|
2492
|
+
"oxlint": "~1.23.0",
|
|
2500
2493
|
"prettier": "3.6.2",
|
|
2501
2494
|
"typescript": "~5.9.0"
|
|
2502
2495
|
};
|
|
@@ -2521,7 +2514,7 @@ var package_default$2 = {
|
|
|
2521
2514
|
};
|
|
2522
2515
|
|
|
2523
2516
|
//#endregion
|
|
2524
|
-
//#region node_modules/.pnpm/@vue+create-eslint-config@0.
|
|
2517
|
+
//#region node_modules/.pnpm/@vue+create-eslint-config@0.13.0/node_modules/@vue/create-eslint-config/index.js
|
|
2525
2518
|
const versionMap = package_default$2.devDependencies;
|
|
2526
2519
|
function createConfig({ styleGuide = "default", hasTypeScript = false, needsPrettier = false, needsOxlint = false, additionalConfigs = [] }) {
|
|
2527
2520
|
const pickDependencies = (keys) => pickKeysFromObject(versionMap, keys);
|
|
@@ -2550,9 +2543,9 @@ function createConfig({ styleGuide = "default", hasTypeScript = false, needsPret
|
|
|
2550
2543
|
}]
|
|
2551
2544
|
});
|
|
2552
2545
|
pkg.scripts["lint:oxlint"] = "oxlint . --fix -D correctness --ignore-path .gitignore";
|
|
2553
|
-
pkg.scripts["lint:eslint"] = "eslint . --fix";
|
|
2546
|
+
pkg.scripts["lint:eslint"] = "eslint . --fix --cache";
|
|
2554
2547
|
pkg.scripts.lint = "run-s lint:*";
|
|
2555
|
-
} else pkg.scripts.lint = "eslint . --fix";
|
|
2548
|
+
} else pkg.scripts.lint = "eslint . --fix --cache";
|
|
2556
2549
|
if (needsPrettier) {
|
|
2557
2550
|
additionalConfigs.push({
|
|
2558
2551
|
devDependencies: pickDependencies(["prettier", "@vue/eslint-config-prettier"]),
|
|
@@ -2622,8 +2615,8 @@ function deepMerge(target, obj) {
|
|
|
2622
2615
|
//#endregion
|
|
2623
2616
|
//#region template/eslint/package.json
|
|
2624
2617
|
var devDependencies$1 = {
|
|
2625
|
-
"@vitest/eslint-plugin": "^1.3.
|
|
2626
|
-
"eslint-plugin-cypress": "^5.
|
|
2618
|
+
"@vitest/eslint-plugin": "^1.3.23",
|
|
2619
|
+
"eslint-plugin-cypress": "^5.2.0",
|
|
2627
2620
|
"eslint-plugin-playwright": "^2.2.2"
|
|
2628
2621
|
};
|
|
2629
2622
|
var package_default$1 = { devDependencies: devDependencies$1 };
|
|
@@ -2632,23 +2625,21 @@ var package_default$1 = { devDependencies: devDependencies$1 };
|
|
|
2632
2625
|
//#region utils/renderEslint.ts
|
|
2633
2626
|
const eslintDeps = package_default$1.devDependencies;
|
|
2634
2627
|
function renderEslint(rootDir, { needsTypeScript, needsVitest, needsCypress, needsCypressCT, needsOxlint, needsPrettier, needsPlaywright }) {
|
|
2635
|
-
const additionalConfigs = getAdditionalConfigs({
|
|
2636
|
-
needsTypeScript,
|
|
2637
|
-
needsVitest,
|
|
2638
|
-
needsCypress,
|
|
2639
|
-
needsCypressCT,
|
|
2640
|
-
needsPlaywright
|
|
2641
|
-
});
|
|
2642
2628
|
const { pkg, files: files$1 } = createConfig({
|
|
2643
2629
|
styleGuide: "default",
|
|
2644
2630
|
hasTypeScript: needsTypeScript,
|
|
2645
2631
|
needsOxlint,
|
|
2646
2632
|
needsPrettier,
|
|
2647
|
-
additionalConfigs
|
|
2633
|
+
additionalConfigs: getAdditionalConfigs({
|
|
2634
|
+
needsTypeScript,
|
|
2635
|
+
needsVitest,
|
|
2636
|
+
needsCypress,
|
|
2637
|
+
needsCypressCT,
|
|
2638
|
+
needsPlaywright
|
|
2639
|
+
})
|
|
2648
2640
|
});
|
|
2649
2641
|
const packageJsonPath = path.resolve(rootDir, "package.json");
|
|
2650
|
-
const
|
|
2651
|
-
const updatedPkg = sortDependencies(deepMerge_default(existingPkg, pkg));
|
|
2642
|
+
const updatedPkg = sortDependencies(deepMerge_default(JSON.parse(fs.readFileSync(packageJsonPath, "utf8")), pkg));
|
|
2652
2643
|
fs.writeFileSync(packageJsonPath, JSON.stringify(updatedPkg, null, 2) + "\n", "utf8");
|
|
2653
2644
|
for (const [fileName, content] of Object.entries(files$1)) {
|
|
2654
2645
|
const fullPath = path.resolve(rootDir, fileName);
|
|
@@ -2719,26 +2710,21 @@ function trimBoilerplate(rootDir) {
|
|
|
2719
2710
|
}
|
|
2720
2711
|
}
|
|
2721
2712
|
function removeCSSImport(rootDir, needsTypeScript, needsCypressCT) {
|
|
2722
|
-
|
|
2723
|
-
replaceContent(
|
|
2724
|
-
if (needsCypressCT) {
|
|
2725
|
-
const ctSetupPath = path$1.resolve(rootDir, needsTypeScript ? "cypress/support/component.ts" : "cypress/support/component.js");
|
|
2726
|
-
replaceContent(ctSetupPath, (content) => content.replace("import '@/assets/main.css'", "// import '@/assets/main.css'"));
|
|
2727
|
-
}
|
|
2713
|
+
replaceContent(path$1.resolve(rootDir, needsTypeScript ? "src/main.ts" : "src/main.js"), (content) => content.replace("import './assets/main.css'\n\n", ""));
|
|
2714
|
+
if (needsCypressCT) replaceContent(path$1.resolve(rootDir, needsTypeScript ? "cypress/support/component.ts" : "cypress/support/component.js"), (content) => content.replace("import '@/assets/main.css'", "// import '@/assets/main.css'"));
|
|
2728
2715
|
}
|
|
2729
2716
|
function emptyRouterConfig(rootDir, needsTypeScript) {
|
|
2730
2717
|
const srcDir = path$1.resolve(rootDir, "src");
|
|
2731
|
-
|
|
2732
|
-
replaceContent(routerEntry, (content) => content.replace(`import HomeView from '../views/HomeView.vue'\n`, "").replace(/routes:\s*\[[\s\S]*?\],/, "routes: [],"));
|
|
2718
|
+
replaceContent(path$1.resolve(srcDir, needsTypeScript ? "router/index.ts" : "router/index.js"), (content) => content.replace(`import HomeView from '../views/HomeView.vue'\n`, "").replace(/routes:\s*\[[\s\S]*?\],/, "routes: [],"));
|
|
2733
2719
|
}
|
|
2734
2720
|
|
|
2735
2721
|
//#endregion
|
|
2736
2722
|
//#region package.json
|
|
2737
2723
|
var name = "create-vue";
|
|
2738
|
-
var version = "3.18.
|
|
2724
|
+
var version = "3.18.2";
|
|
2739
2725
|
var description = "🛠️ The recommended way to start a Vite-powered Vue project";
|
|
2740
2726
|
var type = "module";
|
|
2741
|
-
var packageManager = "pnpm@10.
|
|
2727
|
+
var packageManager = "pnpm@10.18.3";
|
|
2742
2728
|
var bin = { "create-vue": "bundle.js" };
|
|
2743
2729
|
var files = [
|
|
2744
2730
|
"locales",
|
|
@@ -2749,7 +2735,7 @@ var files = [
|
|
|
2749
2735
|
var engines = { "node": "^20.19.0 || >=22.12.0" };
|
|
2750
2736
|
var scripts = {
|
|
2751
2737
|
"prepare": "husky",
|
|
2752
|
-
"format": "prettier --write .",
|
|
2738
|
+
"format": "prettier --write . --experimental-cli",
|
|
2753
2739
|
"build": "rolldown -c rolldown.config.ts",
|
|
2754
2740
|
"snapshot": "zx ./scripts/snapshot.mjs",
|
|
2755
2741
|
"pretest": "pnpm run build && pnpm run snapshot",
|
|
@@ -2772,19 +2758,19 @@ var devDependencies = {
|
|
|
2772
2758
|
"@clack/prompts": "^0.11.0",
|
|
2773
2759
|
"@tsconfig/node22": "^22.0.2",
|
|
2774
2760
|
"@types/eslint": "^9.6.1",
|
|
2775
|
-
"@types/node": "^22.18.
|
|
2761
|
+
"@types/node": "^22.18.12",
|
|
2776
2762
|
"@types/prompts": "^2.4.9",
|
|
2777
|
-
"@vue/create-eslint-config": "^0.
|
|
2763
|
+
"@vue/create-eslint-config": "^0.13.0",
|
|
2778
2764
|
"@vue/tsconfig": "^0.8.1",
|
|
2779
2765
|
"ejs": "^3.1.10",
|
|
2780
2766
|
"husky": "^9.1.7",
|
|
2781
|
-
"lint-staged": "^16.2.
|
|
2767
|
+
"lint-staged": "^16.2.5",
|
|
2782
2768
|
"picocolors": "^1.1.1",
|
|
2783
2769
|
"prettier": "3.6.2",
|
|
2784
|
-
"rolldown": "1.0.0-beta.
|
|
2770
|
+
"rolldown": "1.0.0-beta.43",
|
|
2785
2771
|
"rollup-plugin-license": "^3.6.0",
|
|
2786
2772
|
"vitest": "^3.2.4",
|
|
2787
|
-
"zx": "^8.8.
|
|
2773
|
+
"zx": "^8.8.5"
|
|
2788
2774
|
};
|
|
2789
2775
|
var lint_staged = { "*.{js,ts,vue,json}": ["prettier --write"] };
|
|
2790
2776
|
var publishConfig = {
|
|
@@ -2969,10 +2955,9 @@ async function init() {
|
|
|
2969
2955
|
"help",
|
|
2970
2956
|
"version"
|
|
2971
2957
|
];
|
|
2972
|
-
const options = Object.fromEntries(flags.map((key) => [key, { type: "boolean" }]));
|
|
2973
2958
|
const { values: argv$1, positionals } = parseArgs({
|
|
2974
2959
|
args,
|
|
2975
|
-
options,
|
|
2960
|
+
options: Object.fromEntries(flags.map((key) => [key, { type: "boolean" }])),
|
|
2976
2961
|
strict: true,
|
|
2977
2962
|
allowPositionals: true
|
|
2978
2963
|
});
|
|
@@ -3087,8 +3072,7 @@ async function init() {
|
|
|
3087
3072
|
const templateRoot = fileURLToPath(new URL("./template", import.meta.url));
|
|
3088
3073
|
const callbacks = [];
|
|
3089
3074
|
const render = function render$1(templateName) {
|
|
3090
|
-
|
|
3091
|
-
renderTemplate_default(templateDir, root, callbacks);
|
|
3075
|
+
renderTemplate_default(path.resolve(templateRoot, templateName), root, callbacks);
|
|
3092
3076
|
};
|
|
3093
3077
|
const replaceVite = () => {
|
|
3094
3078
|
const content = fs.readFileSync(path.resolve(root, "package.json"), "utf-8");
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "create-vue",
|
|
3
|
-
"version": "3.18.
|
|
3
|
+
"version": "3.18.2",
|
|
4
4
|
"description": "🛠️ The recommended way to start a Vite-powered Vue project",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"bin": {
|
|
@@ -30,19 +30,19 @@
|
|
|
30
30
|
"@clack/prompts": "^0.11.0",
|
|
31
31
|
"@tsconfig/node22": "^22.0.2",
|
|
32
32
|
"@types/eslint": "^9.6.1",
|
|
33
|
-
"@types/node": "^22.18.
|
|
33
|
+
"@types/node": "^22.18.12",
|
|
34
34
|
"@types/prompts": "^2.4.9",
|
|
35
|
-
"@vue/create-eslint-config": "^0.
|
|
35
|
+
"@vue/create-eslint-config": "^0.13.0",
|
|
36
36
|
"@vue/tsconfig": "^0.8.1",
|
|
37
37
|
"ejs": "^3.1.10",
|
|
38
38
|
"husky": "^9.1.7",
|
|
39
|
-
"lint-staged": "^16.2.
|
|
39
|
+
"lint-staged": "^16.2.5",
|
|
40
40
|
"picocolors": "^1.1.1",
|
|
41
41
|
"prettier": "3.6.2",
|
|
42
|
-
"rolldown": "1.0.0-beta.
|
|
42
|
+
"rolldown": "1.0.0-beta.43",
|
|
43
43
|
"rollup-plugin-license": "^3.6.0",
|
|
44
44
|
"vitest": "^3.2.4",
|
|
45
|
-
"zx": "^8.8.
|
|
45
|
+
"zx": "^8.8.5"
|
|
46
46
|
},
|
|
47
47
|
"lint-staged": {
|
|
48
48
|
"*.{js,ts,vue,json}": [
|
|
@@ -54,7 +54,7 @@
|
|
|
54
54
|
"provenance": true
|
|
55
55
|
},
|
|
56
56
|
"scripts": {
|
|
57
|
-
"format": "prettier --write .",
|
|
57
|
+
"format": "prettier --write . --experimental-cli",
|
|
58
58
|
"build": "rolldown -c rolldown.config.ts",
|
|
59
59
|
"snapshot": "zx ./scripts/snapshot.mjs",
|
|
60
60
|
"pretest": "pnpm run build && pnpm run snapshot",
|
package/template/base/_gitignore
CHANGED
|
@@ -14,9 +14,6 @@ dist-ssr
|
|
|
14
14
|
coverage
|
|
15
15
|
*.local
|
|
16
16
|
|
|
17
|
-
/cypress/videos/
|
|
18
|
-
/cypress/screenshots/
|
|
19
|
-
|
|
20
17
|
# Editor directories and files
|
|
21
18
|
.vscode/*
|
|
22
19
|
!.vscode/extensions.json
|
|
@@ -28,3 +25,12 @@ coverage
|
|
|
28
25
|
*.sw?
|
|
29
26
|
|
|
30
27
|
*.tsbuildinfo
|
|
28
|
+
|
|
29
|
+
.eslintcache
|
|
30
|
+
|
|
31
|
+
# Cypress
|
|
32
|
+
/cypress/videos/
|
|
33
|
+
/cypress/screenshots/
|
|
34
|
+
|
|
35
|
+
# Vitest
|
|
36
|
+
__screenshots__/
|
|
@@ -32,8 +32,9 @@ const openReadmeInEditor = () => fetch('/__open-in-editor?file=README.md')
|
|
|
32
32
|
recommended IDE setup is
|
|
33
33
|
<a href="https://code.visualstudio.com/" target="_blank" rel="noopener">VSCode</a>
|
|
34
34
|
+
|
|
35
|
-
<a href="https://github.com/vuejs/language-tools" target="_blank" rel="noopener"
|
|
36
|
-
|
|
35
|
+
<a href="https://github.com/vuejs/language-tools" target="_blank" rel="noopener"
|
|
36
|
+
>Vue - Official</a
|
|
37
|
+
>. If you need to test your components and web pages, check out
|
|
37
38
|
<a href="https://vitest.dev/" target="_blank" rel="noopener">Vitest</a>
|
|
38
39
|
and
|
|
39
40
|
<a href="https://www.cypress.io/" target="_blank" rel="noopener">Cypress</a>
|
|
@@ -32,8 +32,9 @@ const openReadmeInEditor = () => fetch('/__open-in-editor?file=README.md')
|
|
|
32
32
|
recommended IDE setup is
|
|
33
33
|
<a href="https://code.visualstudio.com/" target="_blank" rel="noopener">VSCode</a>
|
|
34
34
|
+
|
|
35
|
-
<a href="https://github.com/vuejs/language-tools" target="_blank" rel="noopener"
|
|
36
|
-
|
|
35
|
+
<a href="https://github.com/vuejs/language-tools" target="_blank" rel="noopener"
|
|
36
|
+
>Vue - Official</a
|
|
37
|
+
>. If you need to test your components and web pages, check out
|
|
37
38
|
<a href="https://vitest.dev/" target="_blank" rel="noopener">Vitest</a>
|
|
38
39
|
and
|
|
39
40
|
<a href="https://www.cypress.io/" target="_blank" rel="noopener">Cypress</a>
|
|
@@ -32,8 +32,9 @@ const openReadmeInEditor = () => fetch('/__open-in-editor?file=README.md')
|
|
|
32
32
|
recommended IDE setup is
|
|
33
33
|
<a href="https://code.visualstudio.com/" target="_blank" rel="noopener">VSCode</a>
|
|
34
34
|
+
|
|
35
|
-
<a href="https://github.com/vuejs/language-tools" target="_blank" rel="noopener"
|
|
36
|
-
|
|
35
|
+
<a href="https://github.com/vuejs/language-tools" target="_blank" rel="noopener"
|
|
36
|
+
>Vue - Official</a
|
|
37
|
+
>. If you need to test your components and web pages, check out
|
|
37
38
|
<a href="https://vitest.dev/" target="_blank" rel="noopener">Vitest</a>
|
|
38
39
|
and
|
|
39
40
|
<a href="https://www.cypress.io/" target="_blank" rel="noopener">Cypress</a>
|
|
@@ -32,8 +32,9 @@ const openReadmeInEditor = () => fetch('/__open-in-editor?file=README.md')
|
|
|
32
32
|
recommended IDE setup is
|
|
33
33
|
<a href="https://code.visualstudio.com/" target="_blank" rel="noopener">VSCode</a>
|
|
34
34
|
+
|
|
35
|
-
<a href="https://github.com/vuejs/language-tools" target="_blank" rel="noopener"
|
|
36
|
-
|
|
35
|
+
<a href="https://github.com/vuejs/language-tools" target="_blank" rel="noopener"
|
|
36
|
+
>Vue - Official</a
|
|
37
|
+
>. If you need to test your components and web pages, check out
|
|
37
38
|
<a href="https://vitest.dev/" target="_blank" rel="noopener">Vitest</a>
|
|
38
39
|
and
|
|
39
40
|
<a href="https://www.cypress.io/" target="_blank" rel="noopener">Cypress</a>
|
|
@@ -5,11 +5,11 @@
|
|
|
5
5
|
"devDependencies": {
|
|
6
6
|
"@nightwatch/vue": "^3.1.2",
|
|
7
7
|
"@vitejs/plugin-vue": "^6.0.1",
|
|
8
|
-
"chromedriver": "^
|
|
9
|
-
"geckodriver": "^6.0.
|
|
8
|
+
"chromedriver": "^141.0.3",
|
|
9
|
+
"geckodriver": "^6.0.2",
|
|
10
10
|
"nightwatch": "^3.12.2",
|
|
11
11
|
"ts-node": "^10.9.2",
|
|
12
|
-
"vite": "^7.1.
|
|
12
|
+
"vite": "^7.1.11",
|
|
13
13
|
"vite-plugin-nightwatch": "^0.4.6"
|
|
14
14
|
}
|
|
15
15
|
}
|