@icebreakers/monorepo 2.0.8 → 2.0.10

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.cjs CHANGED
@@ -638,7 +638,7 @@ var import_node_url = require("url");
638
638
 
639
639
  // package.json
640
640
  var name = "@icebreakers/monorepo";
641
- var version = "2.0.8";
641
+ var version = "2.0.10";
642
642
 
643
643
  // src/constants.ts
644
644
  var packageJsonPath = (0, import_node_url.fileURLToPath)(new URL("../package.json", importMetaUrl));
@@ -1013,14 +1013,11 @@ ${Array.from(set7).map((x) => `- ${import_picocolors2.default.green(x ?? "")}`).
1013
1013
 
1014
1014
  // src/commands/upgrade/index.ts
1015
1015
  init_cjs_shims();
1016
- var import_node_buffer = require("buffer");
1017
1016
  var import_node_process2 = __toESM(require("process"), 1);
1018
- var import_checkbox2 = __toESM(require("@inquirer/checkbox"), 1);
1019
- var import_confirm = __toESM(require("@inquirer/confirm"), 1);
1020
- var import_fs_extra7 = __toESM(require("fs-extra"), 1);
1017
+ var import_checkbox3 = __toESM(require("@inquirer/checkbox"), 1);
1018
+ var import_fs_extra8 = __toESM(require("fs-extra"), 1);
1021
1019
  var import_klaw = __toESM(require("klaw"), 1);
1022
1020
  var import_pathe11 = __toESM(require("pathe"), 1);
1023
- var import_picocolors3 = __toESM(require("picocolors"), 1);
1024
1021
  var import_set_value6 = __toESM(require_set_value(), 1);
1025
1022
 
1026
1023
  // src/utils/fs.ts
@@ -1066,6 +1063,98 @@ function isMatch(str, arr) {
1066
1063
  return false;
1067
1064
  }
1068
1065
 
1066
+ // src/commands/upgrade/overwrite.ts
1067
+ init_cjs_shims();
1068
+ var import_node_buffer = require("buffer");
1069
+ var import_checkbox2 = __toESM(require("@inquirer/checkbox"), 1);
1070
+ var import_fs_extra7 = __toESM(require("fs-extra"), 1);
1071
+ var import_picocolors3 = __toESM(require("picocolors"), 1);
1072
+ function asBuffer(data) {
1073
+ return typeof data === "string" ? import_node_buffer.Buffer.from(data) : data;
1074
+ }
1075
+ async function evaluateWriteIntent(targetPath, options) {
1076
+ const { skipOverwrite, source } = options;
1077
+ const exists = await import_fs_extra7.default.pathExists(targetPath);
1078
+ if (!exists) {
1079
+ return {
1080
+ type: "write",
1081
+ reason: "missing"
1082
+ };
1083
+ }
1084
+ if (skipOverwrite) {
1085
+ return {
1086
+ type: "skip",
1087
+ reason: "skipOverwrite"
1088
+ };
1089
+ }
1090
+ const src = asBuffer(source);
1091
+ let destSize = 0;
1092
+ try {
1093
+ const stat = await import_fs_extra7.default.stat(targetPath);
1094
+ destSize = stat.size;
1095
+ } catch {
1096
+ return {
1097
+ type: "write",
1098
+ reason: "missing"
1099
+ };
1100
+ }
1101
+ if (destSize !== src.length) {
1102
+ return {
1103
+ type: "prompt",
1104
+ reason: "changed"
1105
+ };
1106
+ }
1107
+ const dest = await import_fs_extra7.default.readFile(targetPath);
1108
+ if (!isFileChanged(src, dest)) {
1109
+ return {
1110
+ type: "skip",
1111
+ reason: "identical"
1112
+ };
1113
+ }
1114
+ return {
1115
+ type: "prompt",
1116
+ reason: "changed"
1117
+ };
1118
+ }
1119
+ async function scheduleOverwrite(intent, options) {
1120
+ const { relPath, targetPath, action, pending } = options;
1121
+ if (intent.type === "write") {
1122
+ await action();
1123
+ return;
1124
+ }
1125
+ if (intent.type === "prompt") {
1126
+ pending.push({
1127
+ relPath,
1128
+ targetPath,
1129
+ action
1130
+ });
1131
+ }
1132
+ }
1133
+ async function flushPendingOverwrites(pending) {
1134
+ if (!pending.length) {
1135
+ return;
1136
+ }
1137
+ const selected = await (0, import_checkbox2.default)({
1138
+ message: "\u68C0\u6D4B\u5230\u4EE5\u4E0B\u6587\u4EF6\u5185\u5BB9\u4E0E\u5F53\u524D\u4ED3\u5E93\u4E0D\u540C\uFF0C\u9009\u62E9\u9700\u8981\u8986\u76D6\u7684\u6587\u4EF6",
1139
+ choices: pending.map((item) => ({
1140
+ name: import_picocolors3.default.greenBright(item.relPath),
1141
+ value: item.targetPath,
1142
+ checked: false
1143
+ })),
1144
+ loop: false
1145
+ });
1146
+ const selectedSet = new Set(selected);
1147
+ for (const item of pending) {
1148
+ if (selectedSet.has(item.targetPath)) {
1149
+ await item.action();
1150
+ }
1151
+ }
1152
+ }
1153
+
1154
+ // src/commands/upgrade/pkg-json.ts
1155
+ init_cjs_shims();
1156
+ var import_semver = require("semver");
1157
+
1069
1158
  // src/commands/upgrade/scripts.ts
1070
1159
  init_cjs_shims();
1071
1160
  var scripts = {
@@ -1077,6 +1166,90 @@ var scripts = {
1077
1166
  };
1078
1167
  var scriptsEntries = Object.entries(scripts);
1079
1168
 
1169
+ // src/commands/upgrade/pkg-json.ts
1170
+ function isWorkspace(version2) {
1171
+ if (typeof version2 === "string") {
1172
+ return version2.startsWith("workspace:");
1173
+ }
1174
+ return false;
1175
+ }
1176
+ function parseVersion(input) {
1177
+ if (typeof input !== "string" || input.trim().length === 0) {
1178
+ return null;
1179
+ }
1180
+ return (0, import_semver.minVersion)(input) ?? (0, import_semver.coerce)(input);
1181
+ }
1182
+ function shouldAssignVersion(currentVersion, nextVersion) {
1183
+ if (typeof currentVersion !== "string" || currentVersion.trim().length === 0) {
1184
+ return true;
1185
+ }
1186
+ if (currentVersion === nextVersion) {
1187
+ return false;
1188
+ }
1189
+ const current = parseVersion(currentVersion);
1190
+ const next = parseVersion(nextVersion);
1191
+ if (!current || !next) {
1192
+ return true;
1193
+ }
1194
+ return !(0, import_semver.gte)(current, next);
1195
+ }
1196
+ function setPkgJson(sourcePkgJson, targetPkgJson, options) {
1197
+ const packageManager = sourcePkgJson.packageManager ?? "";
1198
+ const sourceDeps = sourcePkgJson.dependencies ?? {};
1199
+ const sourceDevDeps = sourcePkgJson.devDependencies ?? {};
1200
+ const targetDeps = { ...targetPkgJson.dependencies ?? {} };
1201
+ const targetDevDeps = { ...targetPkgJson.devDependencies ?? {} };
1202
+ if (packageManager) {
1203
+ targetPkgJson.packageManager = packageManager;
1204
+ }
1205
+ for (const [depName, depVersion] of Object.entries(sourceDeps)) {
1206
+ if (typeof depVersion !== "string") {
1207
+ continue;
1208
+ }
1209
+ const targetVersion = targetDeps[depName];
1210
+ if (isWorkspace(targetVersion)) {
1211
+ continue;
1212
+ }
1213
+ if (shouldAssignVersion(targetVersion, depVersion)) {
1214
+ targetDeps[depName] = depVersion;
1215
+ }
1216
+ }
1217
+ if (Object.keys(targetDeps).length) {
1218
+ targetPkgJson.dependencies = targetDeps;
1219
+ }
1220
+ for (const [depName, depVersion] of Object.entries(sourceDevDeps)) {
1221
+ if (typeof depVersion !== "string") {
1222
+ continue;
1223
+ }
1224
+ if (depName === name) {
1225
+ const nextVersion = `^${version}`;
1226
+ const targetVersion = targetDevDeps[depName];
1227
+ if (!isWorkspace(targetVersion) && shouldAssignVersion(targetVersion, nextVersion)) {
1228
+ targetDevDeps[depName] = nextVersion;
1229
+ }
1230
+ } else {
1231
+ const targetVersion = targetDevDeps[depName];
1232
+ if (isWorkspace(targetVersion)) {
1233
+ continue;
1234
+ }
1235
+ if (shouldAssignVersion(targetVersion, depVersion)) {
1236
+ targetDevDeps[depName] = depVersion;
1237
+ }
1238
+ }
1239
+ }
1240
+ if (Object.keys(targetDevDeps).length) {
1241
+ targetPkgJson.devDependencies = targetDevDeps;
1242
+ }
1243
+ const scriptPairs = (options == null ? void 0 : options.scripts) ? Object.entries(options.scripts) : scriptsEntries;
1244
+ if (scriptPairs.length) {
1245
+ const scripts2 = { ...targetPkgJson.scripts ?? {} };
1246
+ for (const [scriptName, scriptCmd] of scriptPairs) {
1247
+ scripts2[scriptName] = scriptCmd;
1248
+ }
1249
+ targetPkgJson.scripts = scripts2;
1250
+ }
1251
+ }
1252
+
1080
1253
  // src/commands/upgrade/targets.ts
1081
1254
  init_cjs_shims();
1082
1255
  function getAssetTargets(raw) {
@@ -1115,80 +1288,6 @@ function getAssetTargets(raw) {
1115
1288
  }
1116
1289
 
1117
1290
  // src/commands/upgrade/index.ts
1118
- function isWorkspace(version2) {
1119
- if (typeof version2 === "string") {
1120
- return version2.startsWith("workspace:");
1121
- }
1122
- return false;
1123
- }
1124
- function setPkgJson(sourcePkgJson, targetPkgJson, options) {
1125
- const packageManager = index_default(sourcePkgJson, "packageManager", { default: "" });
1126
- const sourceDeps = index_default(sourcePkgJson, "dependencies", { default: {} });
1127
- const sourceDevDeps = index_default(sourcePkgJson, "devDependencies", { default: {} });
1128
- const targetDeps = { ...index_default(targetPkgJson, "dependencies", { default: {} }) };
1129
- const targetDevDeps = { ...index_default(targetPkgJson, "devDependencies", { default: {} }) };
1130
- if (packageManager) {
1131
- targetPkgJson.packageManager = packageManager;
1132
- }
1133
- for (const [depName, depVersion] of Object.entries(sourceDeps)) {
1134
- if (!isWorkspace(targetDeps[depName])) {
1135
- targetDeps[depName] = depVersion;
1136
- }
1137
- }
1138
- if (Object.keys(targetDeps).length) {
1139
- targetPkgJson.dependencies = targetDeps;
1140
- }
1141
- for (const [depName, depVersion] of Object.entries(sourceDevDeps)) {
1142
- if (depName === name) {
1143
- targetDevDeps[depName] = `^${version}`;
1144
- } else if (!isWorkspace(targetDevDeps[depName])) {
1145
- targetDevDeps[depName] = depVersion;
1146
- }
1147
- }
1148
- if (Object.keys(targetDevDeps).length) {
1149
- targetPkgJson.devDependencies = targetDevDeps;
1150
- }
1151
- const scriptPairs = (options == null ? void 0 : options.scripts) ? Object.entries(options.scripts) : scriptsEntries;
1152
- if (scriptPairs.length) {
1153
- const scripts2 = { ...targetPkgJson.scripts ?? {} };
1154
- for (const [scriptName, scriptCmd] of scriptPairs) {
1155
- scripts2[scriptName] = scriptCmd;
1156
- }
1157
- targetPkgJson.scripts = scripts2;
1158
- }
1159
- }
1160
- function confirmOverwrite(filename) {
1161
- return (0, import_confirm.default)({ message: `${import_picocolors3.default.greenBright(filename)} \u6587\u4EF6\u5185\u5BB9\u53D1\u751F\u6539\u53D8,\u662F\u5426\u8986\u76D6?`, default: true });
1162
- }
1163
- function asBuffer(data) {
1164
- return typeof data === "string" ? import_node_buffer.Buffer.from(data) : data;
1165
- }
1166
- async function shouldWriteFile(targetPath, options) {
1167
- const { skipOverwrite, source, promptLabel } = options;
1168
- const exists = await import_fs_extra7.default.pathExists(targetPath);
1169
- if (!exists) {
1170
- return true;
1171
- }
1172
- if (skipOverwrite) {
1173
- return false;
1174
- }
1175
- const src = asBuffer(source);
1176
- let destSize = 0;
1177
- try {
1178
- const stat = await import_fs_extra7.default.stat(targetPath);
1179
- destSize = stat.size;
1180
- } catch {
1181
- return true;
1182
- }
1183
- if (destSize !== src.length) {
1184
- return confirmOverwrite(promptLabel);
1185
- }
1186
- const dest = await import_fs_extra7.default.readFile(targetPath);
1187
- if (!isFileChanged(src, dest)) {
1188
- return false;
1189
- }
1190
- return confirmOverwrite(promptLabel);
1191
- }
1192
1291
  async function upgradeMonorepo(opts) {
1193
1292
  const cwd = opts.cwd ?? import_node_process2.default.cwd();
1194
1293
  const upgradeConfig = await resolveCommandConfig("upgrade", cwd);
@@ -1209,7 +1308,7 @@ async function upgradeMonorepo(opts) {
1209
1308
  const mergeTargets = upgradeConfig == null ? void 0 : upgradeConfig.mergeTargets;
1210
1309
  let targets = configTargets.length ? mergeTargets === false ? [...configTargets] : Array.from(/* @__PURE__ */ new Set([...baseTargets, ...configTargets])) : baseTargets;
1211
1310
  if (merged.interactive) {
1212
- targets = await (0, import_checkbox2.default)({
1311
+ targets = await (0, import_checkbox3.default)({
1213
1312
  message: "\u9009\u62E9\u4F60\u9700\u8981\u7684\u6587\u4EF6",
1214
1313
  choices: targets.map((x) => {
1215
1314
  return {
@@ -1225,6 +1324,7 @@ async function upgradeMonorepo(opts) {
1225
1324
  const skipChangesetMarkdown = (upgradeConfig == null ? void 0 : upgradeConfig.skipChangesetMarkdown) ?? true;
1226
1325
  const scriptOverrides = upgradeConfig == null ? void 0 : upgradeConfig.scripts;
1227
1326
  const skipOverwrite = merged.skipOverwrite;
1327
+ const pendingOverwrites = [];
1228
1328
  for await (const file of (0, import_klaw.default)(assetsDir, {
1229
1329
  filter(p) {
1230
1330
  const str = import_pathe11.default.relative(assetsDir, p);
@@ -1244,43 +1344,72 @@ async function upgradeMonorepo(opts) {
1244
1344
  const targetPath = import_pathe11.default.resolve(absOutDir, relPath);
1245
1345
  try {
1246
1346
  if (relPath === "package.json") {
1247
- if (!await import_fs_extra7.default.pathExists(targetPath)) {
1347
+ if (!await import_fs_extra8.default.pathExists(targetPath)) {
1248
1348
  continue;
1249
1349
  }
1250
- const sourcePkgJson = await import_fs_extra7.default.readJson(file.path);
1251
- const targetPkgJson = await import_fs_extra7.default.readJson(targetPath);
1350
+ const sourcePkgJson = await import_fs_extra8.default.readJson(file.path);
1351
+ const targetPkgJson = await import_fs_extra8.default.readJson(targetPath);
1252
1352
  setPkgJson(sourcePkgJson, targetPkgJson, { scripts: scriptOverrides });
1253
1353
  const data = `${JSON.stringify(targetPkgJson, void 0, 2)}
1254
1354
  `;
1255
- if (await shouldWriteFile(targetPath, { skipOverwrite, source: data, promptLabel: relPath })) {
1256
- await import_fs_extra7.default.outputFile(targetPath, data, "utf8");
1355
+ const intent2 = await evaluateWriteIntent(targetPath, { skipOverwrite, source: data });
1356
+ const action2 = async () => {
1357
+ await import_fs_extra8.default.outputFile(targetPath, data, "utf8");
1257
1358
  logger.success(targetPath);
1258
- }
1359
+ };
1360
+ await scheduleOverwrite(intent2, {
1361
+ relPath,
1362
+ targetPath,
1363
+ action: action2,
1364
+ pending: pendingOverwrites
1365
+ });
1259
1366
  continue;
1260
1367
  }
1261
1368
  if (relPath === ".changeset/config.json" && repoName) {
1262
- const changesetJson = await import_fs_extra7.default.readJson(file.path);
1369
+ const changesetJson = await import_fs_extra8.default.readJson(file.path);
1263
1370
  (0, import_set_value6.default)(changesetJson, "changelog.1.repo", repoName);
1264
1371
  const data = `${JSON.stringify(changesetJson, void 0, 2)}
1265
1372
  `;
1266
- if (await shouldWriteFile(targetPath, { skipOverwrite, source: data, promptLabel: relPath })) {
1267
- await import_fs_extra7.default.outputFile(targetPath, data, "utf8");
1373
+ const intent2 = await evaluateWriteIntent(targetPath, { skipOverwrite, source: data });
1374
+ const action2 = async () => {
1375
+ await import_fs_extra8.default.outputFile(targetPath, data, "utf8");
1268
1376
  logger.success(targetPath);
1269
- }
1377
+ };
1378
+ await scheduleOverwrite(intent2, {
1379
+ relPath,
1380
+ targetPath,
1381
+ action: action2,
1382
+ pending: pendingOverwrites
1383
+ });
1270
1384
  continue;
1271
1385
  }
1272
1386
  if (relPath === "LICENSE") {
1273
- const source = await import_fs_extra7.default.readFile(file.path);
1274
- if (await shouldWriteFile(targetPath, { skipOverwrite: true, source, promptLabel: relPath })) {
1275
- await import_fs_extra7.default.copy(file.path, targetPath);
1387
+ const source2 = await import_fs_extra8.default.readFile(file.path);
1388
+ const intent2 = await evaluateWriteIntent(targetPath, { skipOverwrite: true, source: source2 });
1389
+ const action2 = async () => {
1390
+ await import_fs_extra8.default.outputFile(targetPath, source2);
1276
1391
  logger.success(targetPath);
1277
- }
1392
+ };
1393
+ await scheduleOverwrite(intent2, {
1394
+ relPath,
1395
+ targetPath,
1396
+ action: action2,
1397
+ pending: pendingOverwrites
1398
+ });
1278
1399
  continue;
1279
1400
  }
1280
- if (await shouldWriteFile(targetPath, { skipOverwrite, source: await import_fs_extra7.default.readFile(file.path), promptLabel: relPath })) {
1281
- await import_fs_extra7.default.copy(file.path, targetPath);
1401
+ const source = await import_fs_extra8.default.readFile(file.path);
1402
+ const intent = await evaluateWriteIntent(targetPath, { skipOverwrite, source });
1403
+ const action = async () => {
1404
+ await import_fs_extra8.default.outputFile(targetPath, source);
1282
1405
  logger.success(targetPath);
1283
- }
1406
+ };
1407
+ await scheduleOverwrite(intent, {
1408
+ relPath,
1409
+ targetPath,
1410
+ action,
1411
+ pending: pendingOverwrites
1412
+ });
1284
1413
  } catch (error) {
1285
1414
  if (isIgnorableFsError(error)) {
1286
1415
  continue;
@@ -1288,6 +1417,7 @@ async function upgradeMonorepo(opts) {
1288
1417
  throw error;
1289
1418
  }
1290
1419
  }
1420
+ await flushPendingOverwrites(pendingOverwrites);
1291
1421
  }
1292
1422
  // Annotate the CommonJS export names for ESM import in node:
1293
1423
  0 && (module.exports = {
package/dist/index.d.cts CHANGED
@@ -269,7 +269,7 @@ declare function syncNpmMirror(cwd: string, options?: GetWorkspacePackagesOption
269
269
  declare function upgradeMonorepo(opts: CliOpts): Promise<void>;
270
270
 
271
271
  var name = "@icebreakers/monorepo";
272
- var version = "2.0.8";
272
+ var version = "2.0.10";
273
273
 
274
274
  /**
275
275
  * @icebreakers/monorepo 包的根目录,所有模板与资产目录都以此为基准。
package/dist/index.d.ts CHANGED
@@ -269,7 +269,7 @@ declare function syncNpmMirror(cwd: string, options?: GetWorkspacePackagesOption
269
269
  declare function upgradeMonorepo(opts: CliOpts): Promise<void>;
270
270
 
271
271
  var name = "@icebreakers/monorepo";
272
- var version = "2.0.8";
272
+ var version = "2.0.10";
273
273
 
274
274
  /**
275
275
  * @icebreakers/monorepo 包的根目录,所有模板与资产目录都以此为基准。
package/dist/index.js CHANGED
@@ -28,7 +28,7 @@ import {
28
28
  templatesDir,
29
29
  upgradeMonorepo,
30
30
  version
31
- } from "./chunk-4R64J5LE.js";
31
+ } from "./chunk-3TJYHDE6.js";
32
32
 
33
33
  // src/index.ts
34
34
  init_esm_shims();
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@icebreakers/monorepo",
3
3
  "type": "module",
4
- "version": "2.0.8",
4
+ "version": "2.0.10",
5
5
  "description": "The icebreaker's monorepo manager",
6
6
  "author": "ice breaker <1324318532@qq.com>",
7
7
  "license": "MIT",
@@ -35,7 +35,6 @@
35
35
  ],
36
36
  "dependencies": {
37
37
  "@inquirer/checkbox": "^4.3.0",
38
- "@inquirer/confirm": "^5.1.19",
39
38
  "@inquirer/input": "^4.2.5",
40
39
  "@inquirer/select": "^4.4.0",
41
40
  "@pnpm/find-workspace-dir": "^1000.1.3",
@@ -55,6 +54,7 @@
55
54
  "p-queue": "^9.0.0",
56
55
  "pathe": "^2.0.3",
57
56
  "picocolors": "^1.1.1",
57
+ "semver": "^7.7.3",
58
58
  "simple-git": "^3.28.0"
59
59
  },
60
60
  "devDependencies": {
@@ -14,7 +14,7 @@
14
14
  "postinstall": "pnpm cf-typegen"
15
15
  },
16
16
  "dependencies": {
17
- "@faker-js/faker": "^10.0.0",
17
+ "@faker-js/faker": "^10.1.0",
18
18
  "@tanstack/vue-query": "^5.90.3",
19
19
  "@tanstack/vue-table": "^8.21.3",
20
20
  "@tanstack/vue-virtual": "^3.13.12",
@@ -22,10 +22,10 @@
22
22
  "pinia": "^3.0.3",
23
23
  "vue": "^3.5.22",
24
24
  "vue-i18n": "^11.1.12",
25
- "vue-router": "^4.6.0"
25
+ "vue-router": "^4.6.3"
26
26
  },
27
27
  "devDependencies": {
28
- "@cloudflare/vite-plugin": "^1.13.12",
28
+ "@cloudflare/vite-plugin": "^1.13.13",
29
29
  "@hono/node-server": "^1.19.5",
30
30
  "@hono/trpc-server": "^0.4.0",
31
31
  "@tailwindcss/vite": "^4.1.14",
@@ -36,12 +36,12 @@
36
36
  "hono": "^4.9.12",
37
37
  "tailwindcss": "^4.1.14",
38
38
  "typescript": "~5.9.3",
39
- "unplugin-vue-router": "^0.15.0",
39
+ "unplugin-vue-router": "^0.16.0",
40
40
  "vite": "^7.1.10",
41
41
  "vite-plugin-vue-devtools": "^8.0.2",
42
42
  "vite-tsconfig-paths": "^5.1.4",
43
43
  "vue-tsc": "3.1.1",
44
- "wrangler": "^4.42.2",
44
+ "wrangler": "^4.43.0",
45
45
  "zod": "^4.1.12"
46
46
  }
47
47
  }
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "$schema": "./node_modules/wrangler/config-schema.json",
3
3
  "name": "monorepo-client",
4
- "compatibility_date": "2025-09-17",
4
+ "compatibility_date": "2025-10-16",
5
5
  "main": "./worker/fetch-entry.ts",
6
6
  "assets": {
7
7
  "not_found_handling": "single-page-application"
@@ -53,7 +53,7 @@
53
53
  "devDependencies": {
54
54
  "@hono/node-server": "^1.19.5",
55
55
  "hono": "^4.9.12",
56
- "wrangler": "^4.42.2",
56
+ "wrangler": "^4.43.0",
57
57
  "zod": "^4.1.12"
58
58
  }
59
59
  }
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "$schema": "./node_modules/wrangler/config-schema.json",
3
3
  "name": "monorepo-service",
4
- "compatibility_date": "2025-09-13",
4
+ "compatibility_date": "2025-10-16",
5
5
  "main": "./src/fetch-entry.ts",
6
6
  "dev": {
7
7
  "port": 8787
@@ -51,11 +51,11 @@
51
51
  "@vue/tsconfig": "^0.8.1",
52
52
  "jsdom": "^27.0.0",
53
53
  "tailwindcss": "^4.1.14",
54
- "unplugin-vue-router": "^0.15.0",
54
+ "unplugin-vue-router": "^0.16.0",
55
55
  "vite": "^7.1.10",
56
56
  "vite-plugin-dts": "^4.5.4",
57
57
  "vue": "^3.5.22",
58
- "vue-router": "^4.6.0",
58
+ "vue-router": "^4.6.3",
59
59
  "vue-tsc": "^3.1.1"
60
60
  }
61
61
  }