create-rsbuild 1.0.1-beta.0 → 1.0.1-beta.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/dist/index.js +328 -39
- package/package.json +3 -1
- package/template-eslint/common-js/package.json +2 -2
- package/template-eslint/common-ts/package.json +2 -2
- package/template-eslint/react-js/package.json +4 -4
- package/template-eslint/react-ts/package.json +4 -4
- package/template-eslint/svelte-js/package.json +2 -2
- package/template-eslint/svelte-ts/package.json +3 -3
- package/template-eslint/vue-js/package.json +2 -2
- package/template-eslint/vue-ts/package.json +2 -2
- package/template-lit-js/package.json +4 -2
- package/template-lit-ts/package.json +3 -1
- package/template-prettier/package.json +1 -1
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.
|
|
41
|
+
// ../../node_modules/.pnpm/@modern-js+module-tools@2.55.0_eslint@9.6.0_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.
|
|
46
|
+
"../../node_modules/.pnpm/@modern-js+module-tools@2.55.0_eslint@9.6.0_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();
|
|
@@ -1161,42 +1385,43 @@ function isEmptyDir(path3) {
|
|
|
1161
1385
|
const files = fs.readdirSync(path3);
|
|
1162
1386
|
return files.length === 0 || files.length === 1 && files[0] === ".git";
|
|
1163
1387
|
}
|
|
1164
|
-
|
|
1165
|
-
|
|
1166
|
-
|
|
1167
|
-
|
|
1168
|
-
|
|
1169
|
-
|
|
1170
|
-
|
|
1171
|
-
|
|
1172
|
-
|
|
1173
|
-
|
|
1174
|
-
|
|
1175
|
-
|
|
1176
|
-
|
|
1177
|
-
|
|
1178
|
-
|
|
1179
|
-
|
|
1180
|
-
|
|
1181
|
-
|
|
1182
|
-
|
|
1183
|
-
|
|
1184
|
-
|
|
1185
|
-
|
|
1186
|
-
|
|
1187
|
-
|
|
1188
|
-
|
|
1189
|
-
|
|
1190
|
-
|
|
1191
|
-
|
|
1192
|
-
|
|
1193
|
-
|
|
1194
|
-
|
|
1195
|
-
|
|
1196
|
-
|
|
1197
|
-
|
|
1198
|
-
|
|
1199
|
-
|
|
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
|
+
};
|
|
1200
1425
|
}
|
|
1201
1426
|
const framework = checkCancel(
|
|
1202
1427
|
await ie({
|
|
@@ -1222,7 +1447,19 @@ async function main() {
|
|
|
1222
1447
|
]
|
|
1223
1448
|
})
|
|
1224
1449
|
);
|
|
1225
|
-
|
|
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(
|
|
1226
1463
|
await ae({
|
|
1227
1464
|
message: "Select additional tools (press enter to continue)",
|
|
1228
1465
|
options: [
|
|
@@ -1233,8 +1470,60 @@ async function main() {
|
|
|
1233
1470
|
required: false
|
|
1234
1471
|
})
|
|
1235
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);
|
|
1236
1520
|
const srcFolder = path2.join(packageRoot, `template-${framework}-${language}`);
|
|
1237
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
|
+
}
|
|
1238
1527
|
copyFolder(commonFolder, distFolder, version);
|
|
1239
1528
|
copyFolder(srcFolder, distFolder, version, packageName);
|
|
1240
1529
|
for (const tool of tools) {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "create-rsbuild",
|
|
3
|
-
"version": "1.0.1-beta.
|
|
3
|
+
"version": "1.0.1-beta.2",
|
|
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,10 +6,10 @@
|
|
|
6
6
|
"lint": "eslint ."
|
|
7
7
|
},
|
|
8
8
|
"devDependencies": {
|
|
9
|
-
"@eslint/compat": "^1.1.
|
|
10
|
-
"@eslint/js": "^9.
|
|
11
|
-
"eslint": "^9.
|
|
12
|
-
"eslint-plugin-react": "^7.34.
|
|
9
|
+
"@eslint/compat": "^1.1.1",
|
|
10
|
+
"@eslint/js": "^9.7.0",
|
|
11
|
+
"eslint": "^9.7.0",
|
|
12
|
+
"eslint-plugin-react": "^7.34.4",
|
|
13
13
|
"eslint-plugin-react-hooks": "^4.6.2",
|
|
14
14
|
"globals": "^15.8.0"
|
|
15
15
|
}
|
|
@@ -6,10 +6,10 @@
|
|
|
6
6
|
"lint": "eslint ."
|
|
7
7
|
},
|
|
8
8
|
"devDependencies": {
|
|
9
|
-
"@eslint/compat": "^1.1.
|
|
10
|
-
"@eslint/js": "^9.
|
|
11
|
-
"eslint": "^9.
|
|
12
|
-
"eslint-plugin-react": "^7.34.
|
|
9
|
+
"@eslint/compat": "^1.1.1",
|
|
10
|
+
"@eslint/js": "^9.7.0",
|
|
11
|
+
"eslint": "^9.7.0",
|
|
12
|
+
"eslint-plugin-react": "^7.34.4",
|
|
13
13
|
"eslint-plugin-react-hooks": "^4.6.2",
|
|
14
14
|
"globals": "^15.8.0",
|
|
15
15
|
"typescript-eslint": "^7.16.0"
|
|
@@ -6,11 +6,11 @@
|
|
|
6
6
|
"lint": "eslint ."
|
|
7
7
|
},
|
|
8
8
|
"devDependencies": {
|
|
9
|
-
"@eslint/js": "^9.
|
|
10
|
-
"eslint": "^9.
|
|
9
|
+
"@eslint/js": "^9.7.0",
|
|
10
|
+
"eslint": "^9.7.0",
|
|
11
11
|
"eslint-plugin-svelte": "^2.42.0",
|
|
12
12
|
"globals": "^15.8.0",
|
|
13
|
-
"typescript-eslint": "^8.0.0-alpha.
|
|
13
|
+
"typescript-eslint": "^8.0.0-alpha.44"
|
|
14
14
|
},
|
|
15
15
|
"type": "module"
|
|
16
16
|
}
|