vite-plus 0.1.20-alpha.2 → 0.1.20-alpha.3
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/{agent-B8Iy9rtN.js → agent-C8Me6C5u.js} +13 -1
- package/dist/config/bin.js +1 -1
- package/dist/create/bin.js +100 -63
- package/dist/migration/bin.js +2 -2
- package/dist/staged/bin.js +2 -2
- package/dist/versions.js +1 -1
- package/dist/{workspace-DKef4Mgk.js → workspace-Du9O0xar.js} +1 -1
- package/docs/guide/check.md +1 -1
- package/docs/guide/commit-hooks.md +1 -1
- package/docs/guide/create.md +1 -3
- package/docs/guide/fmt.md +2 -2
- package/docs/guide/ide-integration.md +4 -10
- package/docs/guide/lint.md +1 -1
- package/docs/guide/migrate.md +4 -5
- package/docs/guide/pack.md +2 -2
- package/docs/guide/run.md +2 -2
- package/docs/guide/test.md +1 -1
- package/docs/package.json +1 -0
- package/docs/pnpm-lock.yaml +33 -0
- package/package.json +13 -13
|
@@ -4286,6 +4286,18 @@ function injectLintTypeCheckDefaults(projectPath, silent = false, report) {
|
|
|
4286
4286
|
function injectFmtDefaults(projectPath, silent = false, report) {
|
|
4287
4287
|
injectConfigDefaults(projectPath, "fmt", ".vite-plus-fmt-init.oxfmtrc.json", JSON.stringify({}), silent, report);
|
|
4288
4288
|
}
|
|
4289
|
+
/**
|
|
4290
|
+
* Wire `create.defaultTemplate: '<scope>'` into the new monorepo's
|
|
4291
|
+
* `vite.config.ts`. The caller is `bin.ts`, only when scaffolding a
|
|
4292
|
+
* monorepo from a bundled `@org` manifest entry — that's the case where
|
|
4293
|
+
* the user just picked a template from a specific org and naturally
|
|
4294
|
+
* wants subsequent `vp create` invocations from the workspace to default
|
|
4295
|
+
* to that same org's picker.
|
|
4296
|
+
*/
|
|
4297
|
+
function injectCreateDefaultTemplate(projectPath, scope, silent = false, report) {
|
|
4298
|
+
if (!scope) return;
|
|
4299
|
+
injectConfigDefaults(projectPath, "create", ".vite-plus-create-init.json", JSON.stringify({ defaultTemplate: scope }), silent, report);
|
|
4300
|
+
}
|
|
4289
4301
|
function injectConfigDefaults(projectPath, configKey, tempFileName, tempFileContent, silent, report) {
|
|
4290
4302
|
const configs = detectConfigs(projectPath);
|
|
4291
4303
|
if (configs.viteConfig) {
|
|
@@ -5120,4 +5132,4 @@ function getMarkedRange(content, startMarker, endMarker) {
|
|
|
5120
5132
|
};
|
|
5121
5133
|
}
|
|
5122
5134
|
//#endregion
|
|
5123
|
-
export {
|
|
5135
|
+
export { multiselect as $, setPackageManager as A, runViteFmt as B, migratePrettierToOxfmt as C, rewriteMonorepo as D, promptPrettierMigration as E, readYamlFile as F, templatesDir as G, selectPackageManager as H, cancelAndExit as I, require_semver as J, DependencyType as K, defaultInteractive as L, warnPackageLevelEslint as M, warnPackageLevelPrettier as N, rewriteMonorepoProject as O, editYamlFile as P, log as Q, downloadPackageManager$1 as R, migrateNodeVersionManagerFile as S, promptEslintMigration as T, upgradeYarn as U, runViteInstall as V, displayRelative as W, confirm as X, cancel as Y, intro as Z, hasStagedConfigInViteConfig as _, writeAgentInstructions as a, q as at, mergeViteConfigFiles as b, checkVitestVersion as c, detectEslintProject as d, outro as et, detectFramework as f, hasFrameworkShim as g, ensurePreCommitHook as h, updateExistingAgentInstructions as i, require_picocolors as it, warnLegacyEslintConfig as j, rewriteStandaloneProject as k, confirmEslintMigration as l, detectPrettierProject as m, detectExistingAgentTargetPaths as n, spinner as nt, addFrameworkShim as o, detectNodeVersionManagerFile as p, PackageManager as q, selectAgentTargetPaths as r, text as rt, checkViteVersion as s, detectAgentConflicts as t, select as tt, confirmPrettierMigration as u, injectCreateDefaultTemplate as v, preflightGitHooksSetup as w, migrateEslintToOxlint as x, installGitHooks as y, promptGitHooks as z };
|
package/dist/config/bin.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { a as printHeader, r as log } from "../terminal-CxTMfsxZ.js";
|
|
2
|
-
import {
|
|
2
|
+
import { L as defaultInteractive, _ as hasStagedConfigInViteConfig, h as ensurePreCommitHook, i as updateExistingAgentInstructions, z as promptGitHooks } from "../agent-C8Me6C5u.js";
|
|
3
3
|
import { t as lib_default } from "../lib-BamM40b7.js";
|
|
4
4
|
import { t as renderCliDoc } from "../help-BtkjXtRM.js";
|
|
5
5
|
import { join } from "node:path";
|
package/dist/create/bin.js
CHANGED
|
@@ -2,10 +2,10 @@ import { r as __toESM, t as __commonJSMin } from "../chunk-q7NCDQ7-.js";
|
|
|
2
2
|
import { a as require_cross_spawn } from "../tsconfig-DQTf06oN.js";
|
|
3
3
|
import { a as printHeader, i as muted, o as success, r as log, t as accent } from "../terminal-CxTMfsxZ.js";
|
|
4
4
|
import { i as resolveViteConfig, n as hasViteConfig, t as findWorkspaceRoot } from "../resolve-vite-config-C1KX9CZU.js";
|
|
5
|
-
import {
|
|
5
|
+
import { $ as multiselect, A as setPackageManager, B as runViteFmt, D as rewriteMonorepo, E as promptPrettierMigration, G as templatesDir, H as selectPackageManager, K as DependencyType, L as defaultInteractive, O as rewriteMonorepoProject, Q as log$1, R as downloadPackageManager$1, T as promptEslintMigration, V as runViteInstall, W as displayRelative, X as confirm, Y as cancel, Z as intro, a as writeAgentInstructions, at as q, d as detectEslintProject, f as detectFramework, g as hasFrameworkShim, it as require_picocolors, k as rewriteStandaloneProject, m as detectPrettierProject, n as detectExistingAgentTargetPaths, nt as spinner, o as addFrameworkShim, q as PackageManager, r as selectAgentTargetPaths, rt as text, tt as select, v as injectCreateDefaultTemplate, y as installGitHooks, z as promptGitHooks } from "../agent-C8Me6C5u.js";
|
|
6
6
|
import { t as lib_default } from "../lib-BamM40b7.js";
|
|
7
7
|
import { c as editJsonFile, o as fetchNpmResource, s as getNpmRegistry, t as checkNpmPackageExists, u as readJsonFile } from "../package-CrKanQYM.js";
|
|
8
|
-
import { a as detectExistingEditors, c as writeEditorConfigs, n as updatePackageJsonWithDeps, r as updateWorkspaceConfig, s as selectEditors, t as detectWorkspace$1 } from "../workspace-
|
|
8
|
+
import { a as detectExistingEditors, c as writeEditorConfigs, n as updatePackageJsonWithDeps, r as updateWorkspaceConfig, s as selectEditors, t as detectWorkspace$1 } from "../workspace-Du9O0xar.js";
|
|
9
9
|
import { t as renderCliDoc } from "../help-BtkjXtRM.js";
|
|
10
10
|
import path from "node:path";
|
|
11
11
|
import { runCommand, vitePlusHeader } from "../../binding/index.js";
|
|
@@ -13,7 +13,7 @@ import fs from "node:fs";
|
|
|
13
13
|
import { styleText } from "node:util";
|
|
14
14
|
import os from "node:os";
|
|
15
15
|
import fsPromises from "node:fs/promises";
|
|
16
|
-
import { createHash } from "node:crypto";
|
|
16
|
+
import { createHash, randomUUID } from "node:crypto";
|
|
17
17
|
import assert from "node:assert";
|
|
18
18
|
//#region src/create/command.ts
|
|
19
19
|
var import_cross_spawn = /* @__PURE__ */ __toESM(require_cross_spawn(), 1);
|
|
@@ -368,13 +368,9 @@ function validateEntry(entry, index, packageName) {
|
|
|
368
368
|
return value;
|
|
369
369
|
};
|
|
370
370
|
const name = requireString("name");
|
|
371
|
+
if (name.startsWith("__vp_")) throw new OrgManifestSchemaError(`createConfig.templates[${index}].name uses the reserved \`__vp_\` prefix`, packageName);
|
|
371
372
|
const description = requireString("description");
|
|
372
373
|
const template = requireString("template");
|
|
373
|
-
let keywords;
|
|
374
|
-
if (raw.keywords !== void 0) {
|
|
375
|
-
if (!Array.isArray(raw.keywords) || raw.keywords.some((k) => typeof k !== "string")) throw new OrgManifestSchemaError(`createConfig.templates[${index}].keywords must be an array of strings`, packageName);
|
|
376
|
-
keywords = raw.keywords;
|
|
377
|
-
}
|
|
378
374
|
let monorepo;
|
|
379
375
|
if (raw.monorepo !== void 0) {
|
|
380
376
|
if (typeof raw.monorepo !== "boolean") throw new OrgManifestSchemaError(`createConfig.templates[${index}].monorepo must be a boolean`, packageName);
|
|
@@ -388,7 +384,6 @@ function validateEntry(entry, index, packageName) {
|
|
|
388
384
|
name,
|
|
389
385
|
description,
|
|
390
386
|
template,
|
|
391
|
-
...keywords !== void 0 ? { keywords } : {},
|
|
392
387
|
...monorepo !== void 0 ? { monorepo } : {}
|
|
393
388
|
};
|
|
394
389
|
}
|
|
@@ -472,9 +467,9 @@ function filterManifestForContext(templates, isMonorepo) {
|
|
|
472
467
|
}
|
|
473
468
|
//#endregion
|
|
474
469
|
//#region src/create/org-picker.ts
|
|
475
|
-
const BUILTIN_ESCAPE_VALUE = "__vp_builtin_escape__";
|
|
476
470
|
const ORG_PICKER_CANCEL = Symbol("org-picker-cancel");
|
|
477
471
|
const ORG_PICKER_BUILTIN_ESCAPE = Symbol("org-picker-builtin-escape");
|
|
472
|
+
const ESCAPE_HATCH = Symbol("builtin-escape");
|
|
478
473
|
/**
|
|
479
474
|
* Render the interactive picker for an org manifest. Always appends a
|
|
480
475
|
* trailing "Vite+ built-in templates" escape-hatch entry.
|
|
@@ -488,14 +483,20 @@ const ORG_PICKER_BUILTIN_ESCAPE = Symbol("org-picker-builtin-escape");
|
|
|
488
483
|
async function pickOrgTemplate(manifest, opts) {
|
|
489
484
|
const filtered = filterManifestForContext(manifest.templates, opts.isMonorepo);
|
|
490
485
|
if (filtered.length === 0) return ORG_PICKER_BUILTIN_ESCAPE;
|
|
491
|
-
const
|
|
492
|
-
|
|
493
|
-
|
|
494
|
-
|
|
495
|
-
|
|
486
|
+
const escapeValue = `__vp_builtin_escape__::${randomUUID()}`;
|
|
487
|
+
const lookup = /* @__PURE__ */ new Map();
|
|
488
|
+
const options = filtered.map((entry) => {
|
|
489
|
+
lookup.set(entry.name, entry);
|
|
490
|
+
return {
|
|
491
|
+
value: entry.name,
|
|
492
|
+
label: entry.name,
|
|
493
|
+
hint: entry.description
|
|
494
|
+
};
|
|
495
|
+
});
|
|
496
|
+
lookup.set(escapeValue, ESCAPE_HATCH);
|
|
496
497
|
const builtinHint = opts.isMonorepo ? "Use defaults (application / library)" : "Use defaults (monorepo / application / library)";
|
|
497
498
|
options.push({
|
|
498
|
-
value:
|
|
499
|
+
value: escapeValue,
|
|
499
500
|
label: "Vite+ built-in templates",
|
|
500
501
|
hint: builtinHint
|
|
501
502
|
});
|
|
@@ -504,12 +505,12 @@ async function pickOrgTemplate(manifest, opts) {
|
|
|
504
505
|
options
|
|
505
506
|
});
|
|
506
507
|
if (q(picked)) return ORG_PICKER_CANCEL;
|
|
507
|
-
|
|
508
|
-
|
|
509
|
-
if (!
|
|
508
|
+
const found = lookup.get(picked);
|
|
509
|
+
if (found === ESCAPE_HATCH) return ORG_PICKER_BUILTIN_ESCAPE;
|
|
510
|
+
if (!found) throw new Error(`org-picker: prompts.select returned an unregistered value: ${picked}`);
|
|
510
511
|
return {
|
|
511
512
|
kind: "entry",
|
|
512
|
-
entry
|
|
513
|
+
entry: found
|
|
513
514
|
};
|
|
514
515
|
}
|
|
515
516
|
/**
|
|
@@ -685,8 +686,25 @@ function getCacheRoot() {
|
|
|
685
686
|
const home = process.env.VP_HOME || path.join(os.homedir(), ".vite-plus");
|
|
686
687
|
return path.join(home, "tmp", "create-org");
|
|
687
688
|
}
|
|
689
|
+
/**
|
|
690
|
+
* Replace characters that are illegal in Windows path segments
|
|
691
|
+
* (`\ / : * ? " < > |` plus the IPv6 bracket pair `[ ]`). The host
|
|
692
|
+
* comes from `new URL(...).host` which can carry a port (`:4873`) or
|
|
693
|
+
* IPv6 literal (`[::1]`); both end up in the cache path otherwise.
|
|
694
|
+
*/
|
|
695
|
+
function sanitizeHostForPath(host) {
|
|
696
|
+
return host.replaceAll(/[\\/:*?"<>|[\]]/g, "_");
|
|
697
|
+
}
|
|
698
|
+
/**
|
|
699
|
+
* Cache extracted tarballs under `<host>/<scope>/create/<version>` so two
|
|
700
|
+
* repos resolving the same `<scope>@<version>` through different registries
|
|
701
|
+
* (via `.npmrc` scope mappings) don't share a cache slot. The registry
|
|
702
|
+
* guarantees `manifest.tarballUrl` is a valid URL, so any parse failure
|
|
703
|
+
* here is a real bug worth surfacing.
|
|
704
|
+
*/
|
|
688
705
|
function getExtractionDir(manifest) {
|
|
689
|
-
|
|
706
|
+
const { host } = new URL(manifest.tarballUrl);
|
|
707
|
+
return path.join(getCacheRoot(), sanitizeHostForPath(host), manifest.scope, "create", manifest.version);
|
|
690
708
|
}
|
|
691
709
|
function parseIntegrity(integrity) {
|
|
692
710
|
const match = integrity.split(/\s+/)[0].match(/^(sha\d+)-(.+)$/);
|
|
@@ -3830,6 +3848,24 @@ function setPackageName(projectDir, packageName) {
|
|
|
3830
3848
|
return pkg;
|
|
3831
3849
|
});
|
|
3832
3850
|
}
|
|
3851
|
+
/**
|
|
3852
|
+
* Make sure the scaffolded project's `.gitignore` excludes `node_modules`.
|
|
3853
|
+
*
|
|
3854
|
+
* Called right after `git init` so even bundled `@org` templates (which
|
|
3855
|
+
* may ship without a `.gitignore`) don't end up tracking installed
|
|
3856
|
+
* dependencies on the user's first commit. No-op when an existing
|
|
3857
|
+
* `.gitignore` already lists `node_modules`.
|
|
3858
|
+
*/
|
|
3859
|
+
function ensureGitignoreNodeModules(projectDir) {
|
|
3860
|
+
const gitignorePath = path.join(projectDir, ".gitignore");
|
|
3861
|
+
let content = "";
|
|
3862
|
+
try {
|
|
3863
|
+
content = fs.readFileSync(gitignorePath, "utf-8");
|
|
3864
|
+
} catch {}
|
|
3865
|
+
if (/^\s*node_modules\/?\s*$/m.test(content)) return;
|
|
3866
|
+
const prefix = content === "" || content.endsWith("\n") ? "" : "\n";
|
|
3867
|
+
fs.appendFileSync(gitignorePath, `${prefix}node_modules\n`);
|
|
3868
|
+
}
|
|
3833
3869
|
function formatDisplayTargetDir(targetDir) {
|
|
3834
3870
|
const normalized = targetDir.split(path.sep).join("/");
|
|
3835
3871
|
if (normalized === "" || normalized === ".") return "./";
|
|
@@ -4000,6 +4036,7 @@ async function resolveEntry(manifest, entry) {
|
|
|
4000
4036
|
kind: "bundled",
|
|
4001
4037
|
bundledLocalPath: resolveBundledPath(await ensureOrgPackageExtracted(manifest), entry.template),
|
|
4002
4038
|
entryName: entry.name,
|
|
4039
|
+
scope: manifest.scope,
|
|
4003
4040
|
...entry.monorepo === true ? { monorepo: true } : {}
|
|
4004
4041
|
};
|
|
4005
4042
|
return {
|
|
@@ -4053,13 +4090,13 @@ async function resolveOrgManifestForCreate(args) {
|
|
|
4053
4090
|
return resolveEntry(manifest, entry);
|
|
4054
4091
|
}
|
|
4055
4092
|
/**
|
|
4056
|
-
* Read `create.defaultTemplate` from the workspace
|
|
4057
|
-
* `vite.config.ts`.
|
|
4093
|
+
* Read `create.defaultTemplate` from the workspace root's `vite.config.ts`.
|
|
4058
4094
|
*
|
|
4059
|
-
* Walks up from `startDir`
|
|
4060
|
-
*
|
|
4061
|
-
* `
|
|
4062
|
-
*
|
|
4095
|
+
* Walks up from `startDir` via `findWorkspaceRoot` (monorepo markers
|
|
4096
|
+
* only — `pnpm-workspace.yaml`, `workspaces` in `package.json`,
|
|
4097
|
+
* `lerna.json`) so monorepo invocations from any subdirectory still
|
|
4098
|
+
* pick up the root config. Standalone repos without a monorepo marker
|
|
4099
|
+
* only see a config that sits at `startDir` itself.
|
|
4063
4100
|
*
|
|
4064
4101
|
* Best-effort: if there's no config file or evaluation fails, return
|
|
4065
4102
|
* `undefined` so the create flow behaves as if no default was set.
|
|
@@ -4247,22 +4284,11 @@ async function executeBundledTemplate(workspaceInfo, templateInfo) {
|
|
|
4247
4284
|
//#endregion
|
|
4248
4285
|
//#region src/create/templates/monorepo.ts
|
|
4249
4286
|
const InitialMonorepoAppDir = "apps/website";
|
|
4250
|
-
async function executeMonorepoTemplate(workspaceInfo, templateInfo,
|
|
4287
|
+
async function executeMonorepoTemplate(workspaceInfo, templateInfo, options) {
|
|
4251
4288
|
assert(templateInfo.packageName, "packageName is required");
|
|
4252
4289
|
assert(templateInfo.targetDir, "targetDir is required");
|
|
4253
4290
|
workspaceInfo.monorepoScope = getScopeFromPackageName(templateInfo.packageName);
|
|
4254
4291
|
const fullPath = path.join(workspaceInfo.rootDir, templateInfo.targetDir);
|
|
4255
|
-
let initGit = true;
|
|
4256
|
-
if (interactive && !options?.silent) {
|
|
4257
|
-
const selected = await confirm({
|
|
4258
|
-
message: `Initialize git repository:`,
|
|
4259
|
-
initialValue: true
|
|
4260
|
-
});
|
|
4261
|
-
if (q(selected)) {
|
|
4262
|
-
log$1.info("Operation cancelled. Skipping git initialization");
|
|
4263
|
-
initGit = false;
|
|
4264
|
-
} else initGit = selected;
|
|
4265
|
-
} else if (!options?.silent) log$1.info(`Initializing git repository (default: yes)`);
|
|
4266
4292
|
if (!options?.silent) {
|
|
4267
4293
|
log$1.info(`Target directory: ${formatDisplayTargetDir(templateInfo.targetDir)}`);
|
|
4268
4294
|
log$1.step("Creating Vite+ monorepo...");
|
|
@@ -4299,18 +4325,6 @@ async function executeMonorepoTemplate(workspaceInfo, templateInfo, interactive,
|
|
|
4299
4325
|
if (fs.existsSync(yarnrcPath)) fs.unlinkSync(yarnrcPath);
|
|
4300
4326
|
}
|
|
4301
4327
|
if (!options?.silent) log$1.success("Monorepo template created");
|
|
4302
|
-
if (initGit) {
|
|
4303
|
-
const gitResult = import_cross_spawn.default.sync("git", ["init"], {
|
|
4304
|
-
stdio: "pipe",
|
|
4305
|
-
cwd: fullPath
|
|
4306
|
-
});
|
|
4307
|
-
if (gitResult.status === 0) {
|
|
4308
|
-
if (!options?.silent) log$1.success("Git repository initialized");
|
|
4309
|
-
} else {
|
|
4310
|
-
log$1.warn("Failed to initialize git repository");
|
|
4311
|
-
if (gitResult.stderr) log$1.info(gitResult.stderr.toString());
|
|
4312
|
-
}
|
|
4313
|
-
}
|
|
4314
4328
|
if (!options?.silent) log$1.step("Creating default application in apps/website...");
|
|
4315
4329
|
const appResult = await runRemoteTemplateCommand(workspaceInfo, fullPath, discoverTemplate("create-vite@latest", [
|
|
4316
4330
|
InitialMonorepoAppDir,
|
|
@@ -4664,9 +4678,7 @@ async function main() {
|
|
|
4664
4678
|
let selectedParentDir;
|
|
4665
4679
|
let remoteTargetDir;
|
|
4666
4680
|
let shouldSetupHooks = false;
|
|
4667
|
-
let
|
|
4668
|
-
let bundledEntryName;
|
|
4669
|
-
let isBundledMonorepo = false;
|
|
4681
|
+
let bundled;
|
|
4670
4682
|
let skipShorthandExpansion = false;
|
|
4671
4683
|
const installArgs = process.env.CI ? ["--no-frozen-lockfile"] : void 0;
|
|
4672
4684
|
if (!selectedTemplateName) {
|
|
@@ -4682,11 +4694,8 @@ async function main() {
|
|
|
4682
4694
|
if (resolved.kind === "replaced") {
|
|
4683
4695
|
selectedTemplateName = resolved.templateName;
|
|
4684
4696
|
skipShorthandExpansion = true;
|
|
4685
|
-
} else if (resolved.kind === "bundled")
|
|
4686
|
-
|
|
4687
|
-
bundledEntryName = resolved.entryName;
|
|
4688
|
-
isBundledMonorepo = resolved.monorepo === true;
|
|
4689
|
-
} else if (resolved.kind === "escape-hatch") selectedTemplateName = "";
|
|
4697
|
+
} else if (resolved.kind === "bundled") bundled = resolved;
|
|
4698
|
+
else if (resolved.kind === "escape-hatch") selectedTemplateName = "";
|
|
4690
4699
|
}
|
|
4691
4700
|
if (!selectedTemplateName && !options.interactive) {
|
|
4692
4701
|
console.error(`
|
|
@@ -4711,7 +4720,8 @@ Use \`vp create --list\` to list all available templates, or run \`vp create --h
|
|
|
4711
4720
|
selectedTemplateName = template;
|
|
4712
4721
|
}
|
|
4713
4722
|
const isBuiltinTemplate = selectedTemplateName.startsWith("vite:");
|
|
4714
|
-
const isBundledTemplate =
|
|
4723
|
+
const isBundledTemplate = bundled !== void 0;
|
|
4724
|
+
const isBundledMonorepo = bundled?.monorepo === true;
|
|
4715
4725
|
const isDirectScaffoldTemplate = isBuiltinTemplate || isBundledTemplate;
|
|
4716
4726
|
if (!isDirectScaffoldTemplate) compactOutput = false;
|
|
4717
4727
|
if (targetDir && !isDirectScaffoldTemplate) cancelAndExit("The --directory option is only available for builtin and bundled @org templates", 1);
|
|
@@ -4776,7 +4786,7 @@ Use \`vp create --list\` to list all available templates, or run \`vp create --h
|
|
|
4776
4786
|
remoteTargetDir = await promptTargetDir(defaultTargetDir, options.interactive, { cwd: remoteTargetBaseDir });
|
|
4777
4787
|
selectedTemplateArgs = [remoteTargetDir, ...selectedTemplateArgs];
|
|
4778
4788
|
}
|
|
4779
|
-
const directScaffoldFallbackName =
|
|
4789
|
+
const directScaffoldFallbackName = bundled ? `vite-plus-${bundled.entryName}` : selectedTemplateName === BuiltinTemplate.monorepo ? "vite-plus-monorepo" : `vite-plus-${selectedTemplateName.split(":")[1]}`;
|
|
4780
4790
|
if (isDirectScaffoldTemplate && (!targetDir || targetDir === ".")) if (targetDir === ".") {
|
|
4781
4791
|
packageName = deriveDefaultPackageName(cwd, workspaceInfoOptional.monorepoScope, directScaffoldFallbackName);
|
|
4782
4792
|
if (isMonorepo) {
|
|
@@ -4861,7 +4871,7 @@ Use \`vp create --list\` to list all available templates, or run \`vp create --h
|
|
|
4861
4871
|
}
|
|
4862
4872
|
};
|
|
4863
4873
|
updateCreateProgress("Scaffolding project");
|
|
4864
|
-
const templateInfo = discoverTemplate(selectedTemplateName, selectedTemplateArgs, workspaceInfo, options.interactive, bundledLocalPath, skipShorthandExpansion);
|
|
4874
|
+
const templateInfo = discoverTemplate(selectedTemplateName, selectedTemplateArgs, workspaceInfo, options.interactive, bundled?.bundledLocalPath, skipShorthandExpansion);
|
|
4865
4875
|
if (selectedParentDir) templateInfo.parentDir = selectedParentDir;
|
|
4866
4876
|
if (targetDir) templateInfo.parentDir = void 0;
|
|
4867
4877
|
if (remoteTargetDir) {
|
|
@@ -4871,6 +4881,19 @@ Use \`vp create --list\` to list all available templates, or run \`vp create --h
|
|
|
4871
4881
|
resumeCreateProgress();
|
|
4872
4882
|
}
|
|
4873
4883
|
if (templateInfo.command === BuiltinTemplate.monorepo || isBundledMonorepo) {
|
|
4884
|
+
let shouldInitGit = true;
|
|
4885
|
+
if (options.interactive && !compactOutput) {
|
|
4886
|
+
pauseCreateProgress();
|
|
4887
|
+
const selected = await confirm({
|
|
4888
|
+
message: "Initialize git repository:",
|
|
4889
|
+
initialValue: true
|
|
4890
|
+
});
|
|
4891
|
+
resumeCreateProgress();
|
|
4892
|
+
if (q(selected)) {
|
|
4893
|
+
log$1.info("Operation cancelled. Skipping git initialization");
|
|
4894
|
+
shouldInitGit = false;
|
|
4895
|
+
} else shouldInitGit = selected;
|
|
4896
|
+
} else if (!compactOutput) log$1.info("Initializing git repository (default: yes)");
|
|
4874
4897
|
updateCreateProgress("Creating monorepo");
|
|
4875
4898
|
await checkProjectDirExists(path.join(workspaceInfo.rootDir, targetDir), options.interactive);
|
|
4876
4899
|
const result = isBundledMonorepo ? await executeBundledTemplate(workspaceInfo, {
|
|
@@ -4881,13 +4904,26 @@ Use \`vp create --list\` to list all available templates, or run \`vp create --h
|
|
|
4881
4904
|
...templateInfo,
|
|
4882
4905
|
packageName,
|
|
4883
4906
|
targetDir
|
|
4884
|
-
},
|
|
4907
|
+
}, { silent: compactOutput });
|
|
4885
4908
|
const { projectDir } = result;
|
|
4886
4909
|
if (result.exitCode !== 0 || !projectDir) {
|
|
4887
4910
|
failCreateProgress("Scaffolding failed");
|
|
4888
4911
|
cancelAndExit(`Failed to create monorepo, exit code: ${result.exitCode}`, result.exitCode);
|
|
4889
4912
|
}
|
|
4890
4913
|
const fullPath = path.join(workspaceInfo.rootDir, projectDir);
|
|
4914
|
+
if (shouldInitGit) {
|
|
4915
|
+
const gitResult = import_cross_spawn.default.sync("git", ["init"], {
|
|
4916
|
+
stdio: "pipe",
|
|
4917
|
+
cwd: fullPath
|
|
4918
|
+
});
|
|
4919
|
+
if (gitResult.status === 0) {
|
|
4920
|
+
if (!compactOutput) log$1.success("Git repository initialized");
|
|
4921
|
+
ensureGitignoreNodeModules(fullPath);
|
|
4922
|
+
} else {
|
|
4923
|
+
log$1.warn("Failed to initialize git repository");
|
|
4924
|
+
if (gitResult.stderr) log$1.info(gitResult.stderr.toString());
|
|
4925
|
+
}
|
|
4926
|
+
}
|
|
4891
4927
|
updateCreateProgress("Writing agent instructions");
|
|
4892
4928
|
pauseCreateProgress();
|
|
4893
4929
|
await writeAgentInstructions({
|
|
@@ -4910,6 +4946,7 @@ Use \`vp create --list\` to list all available templates, or run \`vp create --h
|
|
|
4910
4946
|
workspaceInfo.rootDir = fullPath;
|
|
4911
4947
|
updateCreateProgress("Integrating monorepo");
|
|
4912
4948
|
rewriteMonorepo(workspaceInfo, void 0, compactOutput);
|
|
4949
|
+
if (bundled?.monorepo) injectCreateDefaultTemplate(fullPath, bundled.scope, compactOutput);
|
|
4913
4950
|
if (shouldSetupHooks) installGitHooks(fullPath, compactOutput);
|
|
4914
4951
|
updateCreateProgress("Installing dependencies");
|
|
4915
4952
|
const installSummary = await runViteInstall(fullPath, options.interactive, installArgs, { silent: compactOutput });
|
package/dist/migration/bin.js
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { r as __toESM } from "../chunk-q7NCDQ7-.js";
|
|
2
2
|
import { l as isForceOverrideMode } from "../main-A6UrSTYb.js";
|
|
3
3
|
import { a as printHeader, i as muted, r as log, t as accent } from "../terminal-CxTMfsxZ.js";
|
|
4
|
-
import {
|
|
4
|
+
import { C as migratePrettierToOxfmt, D as rewriteMonorepo, E as promptPrettierMigration, H as selectPackageManager, I as cancelAndExit, J as require_semver, L as defaultInteractive, M as warnPackageLevelEslint, N as warnPackageLevelPrettier, Q as log$1, R as downloadPackageManager, S as migrateNodeVersionManagerFile, T as promptEslintMigration, U as upgradeYarn, V as runViteInstall, W as displayRelative, X as confirm, a as writeAgentInstructions, at as q, b as mergeViteConfigFiles, c as checkVitestVersion, d as detectEslintProject, et as outro, f as detectFramework, g as hasFrameworkShim, j as warnLegacyEslintConfig, k as rewriteStandaloneProject, l as confirmEslintMigration, m as detectPrettierProject, n as detectExistingAgentTargetPaths, nt as spinner, o as addFrameworkShim, p as detectNodeVersionManagerFile, q as PackageManager, r as selectAgentTargetPaths, s as checkViteVersion, t as detectAgentConflicts, tt as select, u as confirmPrettierMigration, w as preflightGitHooksSetup, x as migrateEslintToOxlint, y as installGitHooks, z as promptGitHooks } from "../agent-C8Me6C5u.js";
|
|
5
5
|
import { t as lib_default } from "../lib-BamM40b7.js";
|
|
6
6
|
import { a as readNearestPackageJson, i as hasVitePlusDependency } from "../package-CrKanQYM.js";
|
|
7
7
|
import { r as createMigrationReport } from "../report-DbrfjWiP.js";
|
|
8
|
-
import { c as writeEditorConfigs, i as detectEditorConflicts, o as selectEditor, t as detectWorkspace } from "../workspace-
|
|
8
|
+
import { c as writeEditorConfigs, i as detectEditorConflicts, o as selectEditor, t as detectWorkspace } from "../workspace-Du9O0xar.js";
|
|
9
9
|
import { t as renderCliDoc } from "../help-BtkjXtRM.js";
|
|
10
10
|
import path from "node:path";
|
|
11
11
|
import { styleText } from "node:util";
|
package/dist/staged/bin.js
CHANGED
|
@@ -22,7 +22,7 @@ import { format } from "util";
|
|
|
22
22
|
import { EOL as EOL$1 } from "os";
|
|
23
23
|
import { StringDecoder } from "string_decoder";
|
|
24
24
|
import { Writable as Writable$1 } from "stream";
|
|
25
|
-
import { randomUUID } from "crypto";
|
|
25
|
+
import { randomUUID as randomUUID$1 } from "crypto";
|
|
26
26
|
//#region ../../node_modules/.pnpm/lint-staged@16.4.0/node_modules/lint-staged/lib/colors.js
|
|
27
27
|
/**
|
|
28
28
|
* @example NO_COLOR
|
|
@@ -2659,7 +2659,7 @@ var ListrTaskEventManager = class extends EventManager {};
|
|
|
2659
2659
|
*/
|
|
2660
2660
|
var Task = class extends ListrTaskEventManager {
|
|
2661
2661
|
/** Unique id per task, can be used for identifying a Task. */
|
|
2662
|
-
id = randomUUID();
|
|
2662
|
+
id = randomUUID$1();
|
|
2663
2663
|
/** The current state of the task. */
|
|
2664
2664
|
state = ListrTaskState.WAITING;
|
|
2665
2665
|
/** Subtasks of the current task. */
|
package/dist/versions.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { $ as multiselect, F as readYamlFile, P as editYamlFile, Q as log, at as q, q as PackageManager, tt as select } from "./agent-C8Me6C5u.js";
|
|
2
2
|
import { t as require_dist } from "./dist-DjG9AYbK.js";
|
|
3
3
|
import { c as editJsonFile, d as writeJsonFile, r as getScopeFromPackageName, u as readJsonFile } from "./package-CrKanQYM.js";
|
|
4
4
|
import path, { posix, win32 } from "node:path";
|
package/docs/guide/check.md
CHANGED
package/docs/guide/create.md
CHANGED
|
@@ -160,8 +160,7 @@ The manifest lives at `createConfig.templates` in `@org/create`'s `package.json`
|
|
|
160
160
|
{
|
|
161
161
|
"name": "web",
|
|
162
162
|
"description": "Web app template (Vite + React)",
|
|
163
|
-
"template": "@your-org/template-web"
|
|
164
|
-
"keywords": ["web", "react", "app"]
|
|
163
|
+
"template": "@your-org/template-web"
|
|
165
164
|
},
|
|
166
165
|
{
|
|
167
166
|
"name": "demo",
|
|
@@ -180,7 +179,6 @@ Each entry supports:
|
|
|
180
179
|
| `name` | yes | Kebab-case identifier. Used by `vp create @org:<name>` for direct selection. Must be unique within the array. |
|
|
181
180
|
| `description` | yes | One-line description shown in the picker. |
|
|
182
181
|
| `template` | yes | An npm specifier (`@org/template-foo`, optionally `@version`), a GitHub URL (`github:user/repo`), a `vite:*` builtin, a local workspace package name, or a relative path (`./templates/foo`) that resolves against the `@org/create` root. |
|
|
183
|
-
| `keywords` | no | Filter terms for picker search. |
|
|
184
182
|
| `monorepo` | no | If `true`, marks this entry as a monorepo-creating template. Hidden from the picker when `vp create` runs inside an existing monorepo, mirroring the built-in `vite:monorepo` filter. |
|
|
185
183
|
|
|
186
184
|
An invalid manifest is a hard error, not a silent fall-through — a maintainer who shipped a manifest should hear about the offending field, e.g. `@your-org/create: createConfig.templates[2].template must be a non-empty string`.
|
package/docs/guide/fmt.md
CHANGED
|
@@ -22,7 +22,7 @@ Put formatting configuration directly in the `fmt` block in `vite.config.ts` so
|
|
|
22
22
|
|
|
23
23
|
For editors, point the formatter config path at `./vite.config.ts` so format-on-save uses the same `fmt` block:
|
|
24
24
|
|
|
25
|
-
```json
|
|
25
|
+
```json [.vscode/settings.json]
|
|
26
26
|
{
|
|
27
27
|
"oxc.fmt.configPath": "./vite.config.ts"
|
|
28
28
|
}
|
|
@@ -30,7 +30,7 @@ For editors, point the formatter config path at `./vite.config.ts` so format-on-
|
|
|
30
30
|
|
|
31
31
|
For the upstream formatter behavior and configuration reference, see the [Oxfmt docs](https://oxc.rs/docs/guide/usage/formatter.html).
|
|
32
32
|
|
|
33
|
-
```ts
|
|
33
|
+
```ts [vite.config.ts]
|
|
34
34
|
import { defineConfig } from 'vite-plus';
|
|
35
35
|
|
|
36
36
|
export default defineConfig({
|
|
@@ -13,17 +13,13 @@ When you create or migrate a project, Vite+ prompts whether you want editor conf
|
|
|
13
13
|
|
|
14
14
|
You can also manually set up the VS Code config:
|
|
15
15
|
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
```json
|
|
16
|
+
```json [.vscode/extensions.json]
|
|
19
17
|
{
|
|
20
18
|
"recommendations": ["VoidZero.vite-plus-extension-pack"]
|
|
21
19
|
}
|
|
22
20
|
```
|
|
23
21
|
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
```json
|
|
22
|
+
```json [.vscode/settings.json]
|
|
27
23
|
{
|
|
28
24
|
"editor.defaultFormatter": "oxc.oxc-vscode",
|
|
29
25
|
"oxc.fmt.configPath": "./vite.config.ts",
|
|
@@ -39,7 +35,7 @@ This gives the project a shared default formatter and enables Oxc-powered fix ac
|
|
|
39
35
|
|
|
40
36
|
To let the VS Code NPM Scripts panel run scripts through `vp`, add the following to your `.vscode/settings.json`:
|
|
41
37
|
|
|
42
|
-
```json
|
|
38
|
+
```json [.vscode/settings.json]
|
|
43
39
|
{
|
|
44
40
|
"npm.scriptRunner": "vp"
|
|
45
41
|
}
|
|
@@ -55,9 +51,7 @@ When you create or migrate a project, Vite+ prompts you to choose whether you wa
|
|
|
55
51
|
|
|
56
52
|
You can also manually set up the Zed config:
|
|
57
53
|
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
```json
|
|
54
|
+
```json [.zed/settings.json]
|
|
61
55
|
{
|
|
62
56
|
"lsp": {
|
|
63
57
|
"oxlint": {
|
package/docs/guide/lint.md
CHANGED
|
@@ -22,7 +22,7 @@ Put lint configuration directly in the `lint` block in `vite.config.ts` so all y
|
|
|
22
22
|
|
|
23
23
|
For the upstream rule set, options, and compatibility details, see the [Oxlint docs](https://oxc.rs/docs/guide/usage/linter.html).
|
|
24
24
|
|
|
25
|
-
```ts
|
|
25
|
+
```ts [vite.config.ts]
|
|
26
26
|
import { defineConfig } from 'vite-plus';
|
|
27
27
|
|
|
28
28
|
export default defineConfig({
|
package/docs/guide/migrate.md
CHANGED
|
@@ -114,8 +114,7 @@ const { page } = await import('vite-plus/test/browser/context');
|
|
|
114
114
|
|
|
115
115
|
If your project uses a `tsdown.config.ts`, move its options into the `pack` block in `vite.config.ts`:
|
|
116
116
|
|
|
117
|
-
```ts
|
|
118
|
-
// before — tsdown.config.ts
|
|
117
|
+
```ts [tsdown.config.ts] {4-6}
|
|
119
118
|
import { defineConfig } from 'tsdown';
|
|
120
119
|
|
|
121
120
|
export default defineConfig({
|
|
@@ -123,8 +122,9 @@ export default defineConfig({
|
|
|
123
122
|
dts: true,
|
|
124
123
|
format: ['esm', 'cjs'],
|
|
125
124
|
});
|
|
125
|
+
```
|
|
126
126
|
|
|
127
|
-
|
|
127
|
+
```ts [vite.config.ts] {4-8}
|
|
128
128
|
import { defineConfig } from 'vite-plus';
|
|
129
129
|
|
|
130
130
|
export default defineConfig({
|
|
@@ -144,8 +144,7 @@ Vite+ replaces lint-staged with its own `staged` block in `vite.config.ts`. Only
|
|
|
144
144
|
|
|
145
145
|
Move your lint-staged rules into the `staged` block:
|
|
146
146
|
|
|
147
|
-
```ts
|
|
148
|
-
// vite.config.ts
|
|
147
|
+
```ts [vite.config.ts]
|
|
149
148
|
import { defineConfig } from 'vite-plus';
|
|
150
149
|
|
|
151
150
|
export default defineConfig({
|
package/docs/guide/pack.md
CHANGED
|
@@ -29,7 +29,7 @@ Use it for:
|
|
|
29
29
|
- [watch mode](https://tsdown.dev/options/watch-mode)
|
|
30
30
|
- [standalone executables](https://tsdown.dev/options/exe#executable)
|
|
31
31
|
|
|
32
|
-
```ts
|
|
32
|
+
```ts [vite.config.ts]
|
|
33
33
|
import { defineConfig } from 'vite-plus';
|
|
34
34
|
|
|
35
35
|
export default defineConfig({
|
|
@@ -47,7 +47,7 @@ export default defineConfig({
|
|
|
47
47
|
|
|
48
48
|
Use this when you want to ship a CLI or other Node-based tool as a native executable that runs without requiring Node.js to be installed separately.
|
|
49
49
|
|
|
50
|
-
```ts
|
|
50
|
+
```ts [vite.config.ts]
|
|
51
51
|
import { defineConfig } from 'vite-plus';
|
|
52
52
|
|
|
53
53
|
export default defineConfig({
|
package/docs/guide/run.md
CHANGED
|
@@ -71,7 +71,7 @@ $ node compile-legacy-app.js ✗ cache miss: 'legacy/index.js' modified, executi
|
|
|
71
71
|
|
|
72
72
|
Vite Task automatically tracks which files your command uses. You can define tasks directly in `vite.config.ts` to enable caching by default or control which files and environment variables affect cache behavior.
|
|
73
73
|
|
|
74
|
-
```ts
|
|
74
|
+
```ts [vite.config.ts]
|
|
75
75
|
import { defineConfig } from 'vite-plus';
|
|
76
76
|
|
|
77
77
|
export default defineConfig({
|
|
@@ -239,7 +239,7 @@ Flags also work inside nested scripts. For example, `vp run -r build` inside a s
|
|
|
239
239
|
::: info
|
|
240
240
|
A common monorepo pattern is a root script that runs a task recursively:
|
|
241
241
|
|
|
242
|
-
```json [package.json (root)]
|
|
242
|
+
```json [package.json (root) ~vscode-icons:file-type-node~]
|
|
243
243
|
{
|
|
244
244
|
"scripts": {
|
|
245
245
|
"build": "vp run -r build"
|
package/docs/guide/test.md
CHANGED
|
@@ -22,7 +22,7 @@ Unlike Vitest on its own, `vp test` does not stay in watch mode by default. Use
|
|
|
22
22
|
|
|
23
23
|
Put test configuration directly in the `test` block in `vite.config.ts` so all your configuration stays in one place. We do not recommend using `vitest.config.ts` with Vite+.
|
|
24
24
|
|
|
25
|
-
```ts
|
|
25
|
+
```ts [vite.config.ts]
|
|
26
26
|
import { defineConfig } from 'vite-plus';
|
|
27
27
|
|
|
28
28
|
export default defineConfig({
|
package/docs/package.json
CHANGED
package/docs/pnpm-lock.yaml
CHANGED
|
@@ -20,6 +20,9 @@ importers:
|
|
|
20
20
|
typewriter-effect:
|
|
21
21
|
specifier: ^2.22.0
|
|
22
22
|
version: 2.22.0(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
|
23
|
+
vitepress-plugin-group-icons:
|
|
24
|
+
specifier: ^1.7.5
|
|
25
|
+
version: 1.7.5(vite@7.3.1(jiti@2.6.1)(lightningcss@1.31.1))
|
|
23
26
|
vitepress-plugin-mermaid:
|
|
24
27
|
specifier: ^2.0.17
|
|
25
28
|
version: 2.0.17(mermaid@11.13.0)(vitepress@2.0.0-alpha.15(jiti@2.6.1)(lightningcss@1.31.1)(oxc-minify@0.120.0)(postcss@8.5.8))
|
|
@@ -272,9 +275,15 @@ packages:
|
|
|
272
275
|
'@floating-ui/vue@1.1.11':
|
|
273
276
|
resolution: {integrity: sha512-HzHKCNVxnGS35r9fCHBc3+uCnjw9IWIlCPL683cGgM9Kgj2BiAl8x1mS7vtvP6F9S/e/q4O6MApwSHj8hNLGfw==}
|
|
274
277
|
|
|
278
|
+
'@iconify-json/logos@1.2.11':
|
|
279
|
+
resolution: {integrity: sha512-fOo4pGEatuyuCFNL+cwquYMa2Im0oJHRHV7lt/Qqs5Ode/lPImHCQcfTtPzZj7qYMPb/h8YHN3TG54uEowrjNQ==}
|
|
280
|
+
|
|
275
281
|
'@iconify-json/simple-icons@1.2.74':
|
|
276
282
|
resolution: {integrity: sha512-yqaohfY6jnYjTVpuTkaBQHrWbdUrQyWXhau0r/0EZiNWYXPX/P8WWwl1DoLH5CbvDjjcWQw5J0zADhgCUklOqA==}
|
|
277
283
|
|
|
284
|
+
'@iconify-json/vscode-icons@1.2.46':
|
|
285
|
+
resolution: {integrity: sha512-ZuLQscdXzGfUy1BtpNE74rNRjhNkcT/BLUbclQpY7aNLS2ByBuF9RzSjJQ1c0nqRyyInBFWmEL8DbTufw6w5Vw==}
|
|
286
|
+
|
|
278
287
|
'@iconify/types@2.0.0':
|
|
279
288
|
resolution: {integrity: sha512-+wluvCrRhXrhyOmRDJ3q8mux9JkKy5SJ/v8ol2tu4FVjyYvtEzkc/3pK15ET6RKg4b4w4BmTk1+gsCUhf21Ykg==}
|
|
280
289
|
|
|
@@ -1641,6 +1650,14 @@ packages:
|
|
|
1641
1650
|
yaml:
|
|
1642
1651
|
optional: true
|
|
1643
1652
|
|
|
1653
|
+
vitepress-plugin-group-icons@1.7.5:
|
|
1654
|
+
resolution: {integrity: sha512-QzcroUuIiVKyXpmEiiHVbfRTQIy9Zbwxpk5JC/zavO8mavitwumz2RZWlwTchMCCHducYyPptkYvXvdnNUWkog==}
|
|
1655
|
+
peerDependencies:
|
|
1656
|
+
vite: '>=3'
|
|
1657
|
+
peerDependenciesMeta:
|
|
1658
|
+
vite:
|
|
1659
|
+
optional: true
|
|
1660
|
+
|
|
1644
1661
|
vitepress-plugin-mermaid@2.0.17:
|
|
1645
1662
|
resolution: {integrity: sha512-IUzYpwf61GC6k0XzfmAmNrLvMi9TRrVRMsUyCA8KNXhg/mQ1VqWnO0/tBVPiX5UoKF1mDUwqn5QV4qAJl6JnUg==}
|
|
1646
1663
|
peerDependencies:
|
|
@@ -1871,10 +1888,18 @@ snapshots:
|
|
|
1871
1888
|
- '@vue/composition-api'
|
|
1872
1889
|
- vue
|
|
1873
1890
|
|
|
1891
|
+
'@iconify-json/logos@1.2.11':
|
|
1892
|
+
dependencies:
|
|
1893
|
+
'@iconify/types': 2.0.0
|
|
1894
|
+
|
|
1874
1895
|
'@iconify-json/simple-icons@1.2.74':
|
|
1875
1896
|
dependencies:
|
|
1876
1897
|
'@iconify/types': 2.0.0
|
|
1877
1898
|
|
|
1899
|
+
'@iconify-json/vscode-icons@1.2.46':
|
|
1900
|
+
dependencies:
|
|
1901
|
+
'@iconify/types': 2.0.0
|
|
1902
|
+
|
|
1878
1903
|
'@iconify/types@2.0.0': {}
|
|
1879
1904
|
|
|
1880
1905
|
'@iconify/utils@3.1.0':
|
|
@@ -3239,6 +3264,14 @@ snapshots:
|
|
|
3239
3264
|
jiti: 2.6.1
|
|
3240
3265
|
lightningcss: 1.31.1
|
|
3241
3266
|
|
|
3267
|
+
vitepress-plugin-group-icons@1.7.5(vite@7.3.1(jiti@2.6.1)(lightningcss@1.31.1)):
|
|
3268
|
+
dependencies:
|
|
3269
|
+
'@iconify-json/logos': 1.2.11
|
|
3270
|
+
'@iconify-json/vscode-icons': 1.2.46
|
|
3271
|
+
'@iconify/utils': 3.1.0
|
|
3272
|
+
optionalDependencies:
|
|
3273
|
+
vite: 7.3.1(jiti@2.6.1)(lightningcss@1.31.1)
|
|
3274
|
+
|
|
3242
3275
|
vitepress-plugin-mermaid@2.0.17(mermaid@11.13.0)(vitepress@2.0.0-alpha.15(jiti@2.6.1)(lightningcss@1.31.1)(oxc-minify@0.120.0)(postcss@8.5.8)):
|
|
3243
3276
|
dependencies:
|
|
3244
3277
|
mermaid: 11.13.0
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "vite-plus",
|
|
3
|
-
"version": "0.1.20-alpha.
|
|
3
|
+
"version": "0.1.20-alpha.3",
|
|
4
4
|
"description": "The Unified Toolchain for the Web",
|
|
5
5
|
"homepage": "https://viteplus.dev/guide",
|
|
6
6
|
"bugs": {
|
|
@@ -321,9 +321,9 @@
|
|
|
321
321
|
"@oxc-project/types": "=0.127.0",
|
|
322
322
|
"oxfmt": "=0.46.0",
|
|
323
323
|
"oxlint": "=1.61.0",
|
|
324
|
-
"oxlint-tsgolint": "=0.
|
|
325
|
-
"@voidzero-dev/vite-plus-core": "0.1.20-alpha.
|
|
326
|
-
"@voidzero-dev/vite-plus-test": "0.1.20-alpha.
|
|
324
|
+
"oxlint-tsgolint": "=0.22.0",
|
|
325
|
+
"@voidzero-dev/vite-plus-core": "0.1.20-alpha.3",
|
|
326
|
+
"@voidzero-dev/vite-plus-test": "0.1.20-alpha.3"
|
|
327
327
|
},
|
|
328
328
|
"devDependencies": {
|
|
329
329
|
"@napi-rs/cli": "^3.6.1",
|
|
@@ -349,7 +349,7 @@
|
|
|
349
349
|
"validate-npm-package-name": "^7.0.2",
|
|
350
350
|
"yaml": "^2.8.1",
|
|
351
351
|
"@voidzero-dev/vite-plus-prompts": "0.0.0",
|
|
352
|
-
"vite": "npm:@voidzero-dev/vite-plus-core@0.1.20-alpha.
|
|
352
|
+
"vite": "npm:@voidzero-dev/vite-plus-core@0.1.20-alpha.3",
|
|
353
353
|
"@voidzero-dev/vite-plus-tools": "0.0.0"
|
|
354
354
|
},
|
|
355
355
|
"napi": {
|
|
@@ -370,14 +370,14 @@
|
|
|
370
370
|
"node": "^20.19.0 || >=22.12.0"
|
|
371
371
|
},
|
|
372
372
|
"optionalDependencies": {
|
|
373
|
-
"@voidzero-dev/vite-plus-darwin-arm64": "0.1.20-alpha.
|
|
374
|
-
"@voidzero-dev/vite-plus-darwin-x64": "0.1.20-alpha.
|
|
375
|
-
"@voidzero-dev/vite-plus-linux-arm64-gnu": "0.1.20-alpha.
|
|
376
|
-
"@voidzero-dev/vite-plus-linux-arm64-musl": "0.1.20-alpha.
|
|
377
|
-
"@voidzero-dev/vite-plus-linux-x64-gnu": "0.1.20-alpha.
|
|
378
|
-
"@voidzero-dev/vite-plus-linux-x64-musl": "0.1.20-alpha.
|
|
379
|
-
"@voidzero-dev/vite-plus-win32-x64-msvc": "0.1.20-alpha.
|
|
380
|
-
"@voidzero-dev/vite-plus-win32-arm64-msvc": "0.1.20-alpha.
|
|
373
|
+
"@voidzero-dev/vite-plus-darwin-arm64": "0.1.20-alpha.3",
|
|
374
|
+
"@voidzero-dev/vite-plus-darwin-x64": "0.1.20-alpha.3",
|
|
375
|
+
"@voidzero-dev/vite-plus-linux-arm64-gnu": "0.1.20-alpha.3",
|
|
376
|
+
"@voidzero-dev/vite-plus-linux-arm64-musl": "0.1.20-alpha.3",
|
|
377
|
+
"@voidzero-dev/vite-plus-linux-x64-gnu": "0.1.20-alpha.3",
|
|
378
|
+
"@voidzero-dev/vite-plus-linux-x64-musl": "0.1.20-alpha.3",
|
|
379
|
+
"@voidzero-dev/vite-plus-win32-x64-msvc": "0.1.20-alpha.3",
|
|
380
|
+
"@voidzero-dev/vite-plus-win32-arm64-msvc": "0.1.20-alpha.3"
|
|
381
381
|
},
|
|
382
382
|
"scripts": {
|
|
383
383
|
"build": "oxnode -C dev ./build.ts",
|