create-rsbuild 0.0.0-next-20240708070719 → 0.0.0-next-20240729023126

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/index.js CHANGED
@@ -38,12 +38,12 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
38
38
  mod
39
39
  ));
40
40
 
41
- // ../../node_modules/.pnpm/@modern-js+module-tools@2.54.6_eslint@9.6.0_typescript@5.5.2/node_modules/@modern-js/module-tools/shims/esm.js
41
+ // ../../node_modules/.pnpm/@modern-js+module-tools@2.56.2_typescript@5.5.2/node_modules/@modern-js/module-tools/shims/esm.js
42
42
  import { fileURLToPath } from "url";
43
43
  import path from "path";
44
44
  var getFilename, getDirname, __dirname;
45
45
  var init_esm = __esm({
46
- "../../node_modules/.pnpm/@modern-js+module-tools@2.54.6_eslint@9.6.0_typescript@5.5.2/node_modules/@modern-js/module-tools/shims/esm.js"() {
46
+ "../../node_modules/.pnpm/@modern-js+module-tools@2.56.2_typescript@5.5.2/node_modules/@modern-js/module-tools/shims/esm.js"() {
47
47
  "use strict";
48
48
  getFilename = () => fileURLToPath(import.meta.url);
49
49
  getDirname = () => path.dirname(getFilename());
@@ -276,6 +276,229 @@ var require_cjs = __commonJS({
276
276
  }
277
277
  });
278
278
 
279
+ // ../../node_modules/.pnpm/minimist@1.2.8/node_modules/minimist/index.js
280
+ var require_minimist = __commonJS({
281
+ "../../node_modules/.pnpm/minimist@1.2.8/node_modules/minimist/index.js"(exports, module) {
282
+ "use strict";
283
+ init_esm();
284
+ function hasKey(obj, keys) {
285
+ var o2 = obj;
286
+ keys.slice(0, -1).forEach(function(key2) {
287
+ o2 = o2[key2] || {};
288
+ });
289
+ var key = keys[keys.length - 1];
290
+ return key in o2;
291
+ }
292
+ function isNumber(x3) {
293
+ if (typeof x3 === "number") {
294
+ return true;
295
+ }
296
+ if (/^0x[0-9a-f]+$/i.test(x3)) {
297
+ return true;
298
+ }
299
+ return /^[-+]?(?:\d+(?:\.\d*)?|\.\d+)(e[-+]?\d+)?$/.test(x3);
300
+ }
301
+ function isConstructorOrProto(obj, key) {
302
+ return key === "constructor" && typeof obj[key] === "function" || key === "__proto__";
303
+ }
304
+ module.exports = function(args, opts) {
305
+ if (!opts) {
306
+ opts = {};
307
+ }
308
+ var flags = {
309
+ bools: {},
310
+ strings: {},
311
+ unknownFn: null
312
+ };
313
+ if (typeof opts.unknown === "function") {
314
+ flags.unknownFn = opts.unknown;
315
+ }
316
+ if (typeof opts.boolean === "boolean" && opts.boolean) {
317
+ flags.allBools = true;
318
+ } else {
319
+ [].concat(opts.boolean).filter(Boolean).forEach(function(key2) {
320
+ flags.bools[key2] = true;
321
+ });
322
+ }
323
+ var aliases = {};
324
+ function aliasIsBoolean(key2) {
325
+ return aliases[key2].some(function(x3) {
326
+ return flags.bools[x3];
327
+ });
328
+ }
329
+ Object.keys(opts.alias || {}).forEach(function(key2) {
330
+ aliases[key2] = [].concat(opts.alias[key2]);
331
+ aliases[key2].forEach(function(x3) {
332
+ aliases[x3] = [key2].concat(aliases[key2].filter(function(y3) {
333
+ return x3 !== y3;
334
+ }));
335
+ });
336
+ });
337
+ [].concat(opts.string).filter(Boolean).forEach(function(key2) {
338
+ flags.strings[key2] = true;
339
+ if (aliases[key2]) {
340
+ [].concat(aliases[key2]).forEach(function(k2) {
341
+ flags.strings[k2] = true;
342
+ });
343
+ }
344
+ });
345
+ var defaults = opts.default || {};
346
+ var argv = { _: [] };
347
+ function argDefined(key2, arg2) {
348
+ return flags.allBools && /^--[^=]+$/.test(arg2) || flags.strings[key2] || flags.bools[key2] || aliases[key2];
349
+ }
350
+ function setKey(obj, keys, value2) {
351
+ var o2 = obj;
352
+ for (var i2 = 0; i2 < keys.length - 1; i2++) {
353
+ var key2 = keys[i2];
354
+ if (isConstructorOrProto(o2, key2)) {
355
+ return;
356
+ }
357
+ if (o2[key2] === void 0) {
358
+ o2[key2] = {};
359
+ }
360
+ if (o2[key2] === Object.prototype || o2[key2] === Number.prototype || o2[key2] === String.prototype) {
361
+ o2[key2] = {};
362
+ }
363
+ if (o2[key2] === Array.prototype) {
364
+ o2[key2] = [];
365
+ }
366
+ o2 = o2[key2];
367
+ }
368
+ var lastKey = keys[keys.length - 1];
369
+ if (isConstructorOrProto(o2, lastKey)) {
370
+ return;
371
+ }
372
+ if (o2 === Object.prototype || o2 === Number.prototype || o2 === String.prototype) {
373
+ o2 = {};
374
+ }
375
+ if (o2 === Array.prototype) {
376
+ o2 = [];
377
+ }
378
+ if (o2[lastKey] === void 0 || flags.bools[lastKey] || typeof o2[lastKey] === "boolean") {
379
+ o2[lastKey] = value2;
380
+ } else if (Array.isArray(o2[lastKey])) {
381
+ o2[lastKey].push(value2);
382
+ } else {
383
+ o2[lastKey] = [o2[lastKey], value2];
384
+ }
385
+ }
386
+ function setArg(key2, val, arg2) {
387
+ if (arg2 && flags.unknownFn && !argDefined(key2, arg2)) {
388
+ if (flags.unknownFn(arg2) === false) {
389
+ return;
390
+ }
391
+ }
392
+ var value2 = !flags.strings[key2] && isNumber(val) ? Number(val) : val;
393
+ setKey(argv, key2.split("."), value2);
394
+ (aliases[key2] || []).forEach(function(x3) {
395
+ setKey(argv, x3.split("."), value2);
396
+ });
397
+ }
398
+ Object.keys(flags.bools).forEach(function(key2) {
399
+ setArg(key2, defaults[key2] === void 0 ? false : defaults[key2]);
400
+ });
401
+ var notFlags = [];
402
+ if (args.indexOf("--") !== -1) {
403
+ notFlags = args.slice(args.indexOf("--") + 1);
404
+ args = args.slice(0, args.indexOf("--"));
405
+ }
406
+ for (var i = 0; i < args.length; i++) {
407
+ var arg = args[i];
408
+ var key;
409
+ var next;
410
+ if (/^--.+=/.test(arg)) {
411
+ var m2 = arg.match(/^--([^=]+)=([\s\S]*)$/);
412
+ key = m2[1];
413
+ var value = m2[2];
414
+ if (flags.bools[key]) {
415
+ value = value !== "false";
416
+ }
417
+ setArg(key, value, arg);
418
+ } else if (/^--no-.+/.test(arg)) {
419
+ key = arg.match(/^--no-(.+)/)[1];
420
+ setArg(key, false, arg);
421
+ } else if (/^--.+/.test(arg)) {
422
+ key = arg.match(/^--(.+)/)[1];
423
+ next = args[i + 1];
424
+ if (next !== void 0 && !/^(-|--)[^-]/.test(next) && !flags.bools[key] && !flags.allBools && (aliases[key] ? !aliasIsBoolean(key) : true)) {
425
+ setArg(key, next, arg);
426
+ i += 1;
427
+ } else if (/^(true|false)$/.test(next)) {
428
+ setArg(key, next === "true", arg);
429
+ i += 1;
430
+ } else {
431
+ setArg(key, flags.strings[key] ? "" : true, arg);
432
+ }
433
+ } else if (/^-[^-]+/.test(arg)) {
434
+ var letters = arg.slice(1, -1).split("");
435
+ var broken = false;
436
+ for (var j2 = 0; j2 < letters.length; j2++) {
437
+ next = arg.slice(j2 + 2);
438
+ if (next === "-") {
439
+ setArg(letters[j2], next, arg);
440
+ continue;
441
+ }
442
+ if (/[A-Za-z]/.test(letters[j2]) && next[0] === "=") {
443
+ setArg(letters[j2], next.slice(1), arg);
444
+ broken = true;
445
+ break;
446
+ }
447
+ if (/[A-Za-z]/.test(letters[j2]) && /-?\d+(\.\d*)?(e-?\d+)?$/.test(next)) {
448
+ setArg(letters[j2], next, arg);
449
+ broken = true;
450
+ break;
451
+ }
452
+ if (letters[j2 + 1] && letters[j2 + 1].match(/\W/)) {
453
+ setArg(letters[j2], arg.slice(j2 + 2), arg);
454
+ broken = true;
455
+ break;
456
+ } else {
457
+ setArg(letters[j2], flags.strings[letters[j2]] ? "" : true, arg);
458
+ }
459
+ }
460
+ key = arg.slice(-1)[0];
461
+ if (!broken && key !== "-") {
462
+ if (args[i + 1] && !/^(-|--)[^-]/.test(args[i + 1]) && !flags.bools[key] && (aliases[key] ? !aliasIsBoolean(key) : true)) {
463
+ setArg(key, args[i + 1], arg);
464
+ i += 1;
465
+ } else if (args[i + 1] && /^(true|false)$/.test(args[i + 1])) {
466
+ setArg(key, args[i + 1] === "true", arg);
467
+ i += 1;
468
+ } else {
469
+ setArg(key, flags.strings[key] ? "" : true, arg);
470
+ }
471
+ }
472
+ } else {
473
+ if (!flags.unknownFn || flags.unknownFn(arg) !== false) {
474
+ argv._.push(flags.strings._ || !isNumber(arg) ? arg : Number(arg));
475
+ }
476
+ if (opts.stopEarly) {
477
+ argv._.push.apply(argv._, args.slice(i + 1));
478
+ break;
479
+ }
480
+ }
481
+ }
482
+ Object.keys(defaults).forEach(function(k2) {
483
+ if (!hasKey(argv, k2.split("."))) {
484
+ setKey(argv, k2.split("."), defaults[k2]);
485
+ (aliases[k2] || []).forEach(function(x3) {
486
+ setKey(argv, x3.split("."), defaults[k2]);
487
+ });
488
+ }
489
+ });
490
+ if (opts["--"]) {
491
+ argv["--"] = notFlags.slice();
492
+ } else {
493
+ notFlags.forEach(function(k2) {
494
+ argv._.push(k2);
495
+ });
496
+ }
497
+ return argv;
498
+ };
499
+ }
500
+ });
501
+
279
502
  // src/index.ts
280
503
  init_esm();
281
504
  import fs from "fs";
@@ -846,6 +1069,7 @@ function me() {
846
1069
 
847
1070
  // src/index.ts
848
1071
  var import_deepmerge = __toESM(require_cjs());
1072
+ var import_minimist = __toESM(require_minimist());
849
1073
 
850
1074
  // ../../node_modules/.pnpm/rslog@1.2.2/node_modules/rslog/dist/index.mjs
851
1075
  init_esm();
@@ -1140,8 +1364,12 @@ function checkCancel(value) {
1140
1364
  }
1141
1365
  return value;
1142
1366
  }
1143
- function formatTargetDir(targetDir) {
1144
- return targetDir.trim().replace(/\/+$/g, "");
1367
+ function formatProjectName(input) {
1368
+ const formatted = input.trim().replace(/\/+$/g, "");
1369
+ return {
1370
+ packageName: formatted.startsWith("@") ? formatted : path2.basename(formatted),
1371
+ targetDir: formatted
1372
+ };
1145
1373
  }
1146
1374
  function pkgFromUserAgent(userAgent) {
1147
1375
  if (!userAgent)
@@ -1157,41 +1385,43 @@ function isEmptyDir(path3) {
1157
1385
  const files = fs.readdirSync(path3);
1158
1386
  return files.length === 0 || files.length === 1 && files[0] === ".git";
1159
1387
  }
1160
- async function main() {
1161
- console.log("");
1162
- logger.greet("◆ Create Rsbuild Project");
1163
- const cwd = process.cwd();
1164
- const pkgInfo = pkgFromUserAgent(process.env.npm_config_user_agent);
1165
- const pkgManager = pkgInfo ? pkgInfo.name : "npm";
1166
- const packageRoot = path2.resolve(__dirname, "..");
1167
- const packageJsonPath = path2.join(packageRoot, "package.json");
1168
- const { version } = __require(packageJsonPath);
1169
- let targetDir = checkCancel(
1170
- await te({
1171
- message: "Input target folder",
1172
- placeholder: "my-project",
1173
- validate(value) {
1174
- if (value.length === 0) {
1175
- return "Target folder is required";
1176
- }
1177
- }
1178
- })
1179
- );
1180
- targetDir = formatTargetDir(targetDir);
1181
- const distFolder = path2.join(cwd, targetDir);
1182
- if (fs.existsSync(distFolder) && !isEmptyDir(distFolder)) {
1183
- const option = checkCancel(
1184
- await ie({
1185
- message: `"${targetDir}" is not empty, please choose:`,
1186
- options: [
1187
- { value: "yes", label: "Continue and override files" },
1188
- { value: "no", label: "Cancel operation" }
1189
- ]
1190
- })
1191
- );
1192
- if (option === "no") {
1193
- cancelAndExit();
1194
- }
1388
+ function logHelpMessage() {
1389
+ logger.log(`
1390
+ Usage: create-rsbuild [options]
1391
+
1392
+ Options:
1393
+
1394
+ -h, --help display help for command
1395
+ -d, --dir create project in specified directory
1396
+ -t, --template specify the template to use
1397
+ --tools select additional tools (biome, eslint, prettier)
1398
+ --override override files in target directory
1399
+
1400
+ Templates:
1401
+
1402
+ react react-ts
1403
+ vue3 vue3-ts
1404
+ vue2 vue2-ts
1405
+ lit lit-ts
1406
+ preact preact-ts
1407
+ svelte svelte-ts
1408
+ solid solid-ts
1409
+ vanilla vanilla-ts
1410
+ `);
1411
+ }
1412
+ var frameworkAlias = {
1413
+ vue: "vue3",
1414
+ "solid-js": "solid"
1415
+ };
1416
+ async function getTemplate({ template }) {
1417
+ if (typeof template === "string") {
1418
+ const pair = template.split("-");
1419
+ const language2 = pair[1] ?? "js";
1420
+ const framework2 = pair[0];
1421
+ return {
1422
+ framework: frameworkAlias[framework2] ?? framework2,
1423
+ language: language2
1424
+ };
1195
1425
  }
1196
1426
  const framework = checkCancel(
1197
1427
  await ie({
@@ -1217,7 +1447,19 @@ async function main() {
1217
1447
  ]
1218
1448
  })
1219
1449
  );
1220
- const tools = checkCancel(
1450
+ return {
1451
+ framework,
1452
+ language
1453
+ };
1454
+ }
1455
+ async function getTools({ tools, dir, template }) {
1456
+ if (tools) {
1457
+ return Array.isArray(tools) ? tools : [tools];
1458
+ }
1459
+ if (dir && template) {
1460
+ return [];
1461
+ }
1462
+ return checkCancel(
1221
1463
  await ae({
1222
1464
  message: "Select additional tools (press enter to continue)",
1223
1465
  options: [
@@ -1228,10 +1470,62 @@ async function main() {
1228
1470
  required: false
1229
1471
  })
1230
1472
  );
1473
+ }
1474
+ async function main() {
1475
+ const argv = (0, import_minimist.default)(process.argv.slice(2), {
1476
+ alias: { h: "help", d: "dir", t: "template" }
1477
+ });
1478
+ console.log("");
1479
+ logger.greet("◆ Create Rsbuild Project");
1480
+ if (argv.help) {
1481
+ logHelpMessage();
1482
+ return;
1483
+ }
1484
+ const cwd = process.cwd();
1485
+ const pkgInfo = pkgFromUserAgent(process.env.npm_config_user_agent);
1486
+ const pkgManager = pkgInfo ? pkgInfo.name : "npm";
1487
+ const packageRoot = path2.resolve(__dirname, "..");
1488
+ const packageJsonPath = path2.join(packageRoot, "package.json");
1489
+ const { version } = __require(packageJsonPath);
1490
+ const projectName = argv.dir ?? checkCancel(
1491
+ await te({
1492
+ message: "Project name or path",
1493
+ placeholder: "rsbuild-project",
1494
+ defaultValue: "rsbuild-project",
1495
+ validate(value) {
1496
+ if (value.length === 0) {
1497
+ return "Project name is required";
1498
+ }
1499
+ }
1500
+ })
1501
+ );
1502
+ const { targetDir, packageName } = formatProjectName(projectName);
1503
+ const distFolder = path2.isAbsolute(targetDir) ? targetDir : path2.join(cwd, targetDir);
1504
+ if (!argv.override && fs.existsSync(distFolder) && !isEmptyDir(distFolder)) {
1505
+ const option = checkCancel(
1506
+ await ie({
1507
+ message: `"${targetDir}" is not empty, please choose:`,
1508
+ options: [
1509
+ { value: "yes", label: "Continue and override files" },
1510
+ { value: "no", label: "Cancel operation" }
1511
+ ]
1512
+ })
1513
+ );
1514
+ if (option === "no") {
1515
+ cancelAndExit();
1516
+ }
1517
+ }
1518
+ const { framework, language } = await getTemplate(argv);
1519
+ const tools = await getTools(argv);
1231
1520
  const srcFolder = path2.join(packageRoot, `template-${framework}-${language}`);
1232
1521
  const commonFolder = path2.join(packageRoot, "template-common");
1522
+ if (!fs.existsSync(srcFolder)) {
1523
+ throw new Error(
1524
+ `Invalid input: template "${framework}-${language}" not found. `
1525
+ );
1526
+ }
1233
1527
  copyFolder(commonFolder, distFolder, version);
1234
- copyFolder(srcFolder, distFolder, version, path2.basename(targetDir));
1528
+ copyFolder(srcFolder, distFolder, version, packageName);
1235
1529
  for (const tool of tools) {
1236
1530
  const toolFolder = path2.join(packageRoot, `template-${tool}`);
1237
1531
  if (tool === "eslint") {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "create-rsbuild",
3
- "version": "0.0.0-next-20240708070719",
3
+ "version": "0.0.0-next-20240729023126",
4
4
  "description": "Create a new Rsbuild project",
5
5
  "homepage": "https://rsbuild.dev",
6
6
  "repository": {
@@ -27,8 +27,10 @@
27
27
  ],
28
28
  "devDependencies": {
29
29
  "@clack/prompts": "^0.7.0",
30
+ "@types/minimist": "^1.2.5",
30
31
  "@types/node": "18.x",
31
32
  "deepmerge": "^4.3.1",
33
+ "minimist": "^1.2.8",
32
34
  "rslog": "^1.2.2",
33
35
  "typescript": "^5.5.2"
34
36
  },
@@ -6,8 +6,8 @@
6
6
  "lint": "eslint ."
7
7
  },
8
8
  "devDependencies": {
9
- "@eslint/js": "^9.6.0",
10
- "eslint": "^9.6.0",
9
+ "@eslint/js": "^9.8.0",
10
+ "eslint": "^9.8.0",
11
11
  "globals": "^15.8.0"
12
12
  }
13
13
  }
@@ -6,9 +6,9 @@
6
6
  "lint": "eslint ."
7
7
  },
8
8
  "devDependencies": {
9
- "@eslint/js": "^9.6.0",
10
- "eslint": "^9.6.0",
9
+ "@eslint/js": "^9.8.0",
10
+ "eslint": "^9.8.0",
11
11
  "globals": "^15.8.0",
12
- "typescript-eslint": "^7.15.0"
12
+ "typescript-eslint": "^7.17.0"
13
13
  }
14
14
  }
@@ -6,10 +6,10 @@
6
6
  "lint": "eslint ."
7
7
  },
8
8
  "devDependencies": {
9
- "@eslint/compat": "^1.1.0",
10
- "@eslint/js": "^9.6.0",
11
- "eslint": "^9.6.0",
12
- "eslint-plugin-react": "^7.34.3",
9
+ "@eslint/compat": "^1.1.1",
10
+ "@eslint/js": "^9.8.0",
11
+ "eslint": "^9.8.0",
12
+ "eslint-plugin-react": "^7.35.0",
13
13
  "eslint-plugin-react-hooks": "^4.6.2",
14
14
  "globals": "^15.8.0"
15
15
  }
@@ -6,12 +6,12 @@
6
6
  "lint": "eslint ."
7
7
  },
8
8
  "devDependencies": {
9
- "@eslint/compat": "^1.1.0",
10
- "@eslint/js": "^9.6.0",
11
- "eslint": "^9.6.0",
12
- "eslint-plugin-react": "^7.34.3",
9
+ "@eslint/compat": "^1.1.1",
10
+ "@eslint/js": "^9.8.0",
11
+ "eslint": "^9.8.0",
12
+ "eslint-plugin-react": "^7.35.0",
13
13
  "eslint-plugin-react-hooks": "^4.6.2",
14
14
  "globals": "^15.8.0",
15
- "typescript-eslint": "^7.15.0"
15
+ "typescript-eslint": "^7.17.0"
16
16
  }
17
17
  }
@@ -6,9 +6,9 @@
6
6
  "lint": "eslint ."
7
7
  },
8
8
  "devDependencies": {
9
- "@eslint/js": "^9.6.0",
10
- "eslint": "^9.6.0",
11
- "eslint-plugin-svelte": "^2.41.0",
9
+ "@eslint/js": "^9.8.0",
10
+ "eslint": "^9.8.0",
11
+ "eslint-plugin-svelte": "^2.43.0",
12
12
  "globals": "^15.8.0"
13
13
  }
14
14
  }
@@ -6,11 +6,11 @@
6
6
  "lint": "eslint ."
7
7
  },
8
8
  "devDependencies": {
9
- "@eslint/js": "^9.6.0",
10
- "eslint": "^9.6.0",
11
- "eslint-plugin-svelte": "^2.41.0",
9
+ "@eslint/js": "^9.8.0",
10
+ "eslint": "^9.8.0",
11
+ "eslint-plugin-svelte": "^2.43.0",
12
12
  "globals": "^15.8.0",
13
- "typescript-eslint": "^8.0.0-alpha.39"
13
+ "typescript-eslint": "^8.0.0-alpha.54"
14
14
  },
15
15
  "type": "module"
16
16
  }
@@ -6,8 +6,8 @@
6
6
  "lint": "eslint ."
7
7
  },
8
8
  "devDependencies": {
9
- "@eslint/js": "^9.6.0",
10
- "eslint": "^9.6.0",
9
+ "@eslint/js": "^9.8.0",
10
+ "eslint": "^9.8.0",
11
11
  "eslint-plugin-vue": "^9.27.0",
12
12
  "globals": "^15.8.0"
13
13
  }
@@ -6,10 +6,10 @@
6
6
  "lint": "eslint ."
7
7
  },
8
8
  "devDependencies": {
9
- "@eslint/js": "^9.6.0",
10
- "eslint": "^9.6.0",
9
+ "@eslint/js": "^9.8.0",
10
+ "eslint": "^9.8.0",
11
11
  "eslint-plugin-vue": "^9.27.0",
12
12
  "globals": "^15.8.0",
13
- "typescript-eslint": "^7.15.0"
13
+ "typescript-eslint": "^7.17.0"
14
14
  }
15
15
  }
@@ -7,8 +7,10 @@
7
7
  "build": "rsbuild build",
8
8
  "preview": "rsbuild preview"
9
9
  },
10
- "devDependencies": {
11
- "@rsbuild/core": "workspace:*",
10
+ "dependencies": {
12
11
  "lit": "^3.1.4"
12
+ },
13
+ "devDependencies": {
14
+ "@rsbuild/core": "workspace:*"
13
15
  }
14
16
  }
@@ -7,9 +7,11 @@
7
7
  "build": "rsbuild build",
8
8
  "preview": "rsbuild preview"
9
9
  },
10
+ "dependencies": {
11
+ "lit": "^3.1.4"
12
+ },
10
13
  "devDependencies": {
11
14
  "@rsbuild/core": "workspace:*",
12
- "lit": "^3.1.4",
13
15
  "typescript": "^5.5.2"
14
16
  }
15
17
  }
@@ -8,7 +8,7 @@
8
8
  "preview": "rsbuild preview"
9
9
  },
10
10
  "dependencies": {
11
- "preact": "^10.22.1"
11
+ "preact": "^10.23.1"
12
12
  },
13
13
  "devDependencies": {
14
14
  "@rsbuild/core": "workspace:*",
@@ -8,7 +8,7 @@
8
8
  "preview": "rsbuild preview"
9
9
  },
10
10
  "dependencies": {
11
- "preact": "^10.22.1"
11
+ "preact": "^10.23.1"
12
12
  },
13
13
  "devDependencies": {
14
14
  "@rsbuild/core": "workspace:*",
@@ -6,6 +6,6 @@
6
6
  "format": "prettier --write ."
7
7
  },
8
8
  "devDependencies": {
9
- "prettier": "^3.3.2"
9
+ "prettier": "^3.3.3"
10
10
  }
11
11
  }
@@ -8,7 +8,7 @@
8
8
  "preview": "rsbuild preview"
9
9
  },
10
10
  "dependencies": {
11
- "solid-js": "^1.8.18"
11
+ "solid-js": "^1.8.19"
12
12
  },
13
13
  "devDependencies": {
14
14
  "@rsbuild/core": "workspace:*",
@@ -8,7 +8,7 @@
8
8
  "preview": "rsbuild preview"
9
9
  },
10
10
  "dependencies": {
11
- "solid-js": "^1.8.18"
11
+ "solid-js": "^1.8.19"
12
12
  },
13
13
  "devDependencies": {
14
14
  "@rsbuild/core": "workspace:*",