@nuxt/devtools 1.3.8 → 1.3.14

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.
Files changed (113) hide show
  1. package/dist/chunks/module-main.mjs +526 -5
  2. package/dist/chunks/vscode.mjs +1 -1
  3. package/dist/client/200.html +27 -27
  4. package/dist/client/404.html +27 -27
  5. package/dist/client/_nuxt/{C7cYo4YF.js → 2tJW9cKr.js} +1 -1
  6. package/dist/client/_nuxt/{CbM9OHn3.js → B-wfK0SS.js} +1 -1
  7. package/dist/client/_nuxt/B2TuRHFi.js +1 -0
  8. package/dist/client/_nuxt/{DKSts1V4.js → BEKXAodE.js} +1 -1
  9. package/dist/client/_nuxt/{Ckn823xU.js → BF_UD7ZT.js} +114 -114
  10. package/dist/client/_nuxt/{Cuq1Z6bh.js → BHBvn5Xs.js} +1 -1
  11. package/dist/client/_nuxt/BLmvGqlk.js +1 -0
  12. package/dist/client/_nuxt/{DX-YUedo.js → BMUgLter.js} +9 -9
  13. package/dist/client/_nuxt/BMbUeBqv.js +1 -1
  14. package/dist/client/_nuxt/{BjYCaXNT.js → BO314c-_.js} +1 -1
  15. package/dist/client/_nuxt/{GdB9kz-4.js → BWPbreBU.js} +1 -1
  16. package/dist/client/_nuxt/BYelj_cE.js +1 -0
  17. package/dist/client/_nuxt/{BLxIf9BH.js → BZZpaKJQ.js} +1 -1
  18. package/dist/client/_nuxt/{CPUwo9Dx.js → BZvh3yot.js} +2 -2
  19. package/dist/client/_nuxt/BcJweaq3.js +9 -0
  20. package/dist/client/_nuxt/{CH-roGkP.js → Bi99gj7u.js} +1 -1
  21. package/dist/client/_nuxt/{DETXY6Xa.js → BkmSFWMo.js} +1 -1
  22. package/dist/client/_nuxt/{DvDu1JUs.js → Bl8OBrwH.js} +1 -1
  23. package/dist/client/_nuxt/BrzmMRQX.js +2 -0
  24. package/dist/client/_nuxt/{8q1pCtVS.js → C4OO6w_e.js} +1 -1
  25. package/dist/client/_nuxt/{DuFGBY9A.js → C8RrL2-P.js} +1 -1
  26. package/dist/client/_nuxt/{BnXFHUk0.js → CA5wVMK1.js} +1 -1
  27. package/dist/client/_nuxt/{Dslz6rss.js → CE84j0J9.js} +1 -1
  28. package/dist/client/_nuxt/{o8QbmO42.js → CLVHkiJk.js} +1 -1
  29. package/dist/client/_nuxt/{DE5e3ZuV.js → CPWqrNrA.js} +1 -1
  30. package/dist/client/_nuxt/{C8N9kWh2.js → CPr4CZHz.js} +1 -1
  31. package/dist/client/_nuxt/CTKqK4eG.js +1 -1
  32. package/dist/client/_nuxt/CVW-sDYN.js +1 -0
  33. package/dist/client/_nuxt/{D0h9jATl.js → CWyKSuRn.js} +1 -1
  34. package/dist/client/_nuxt/CbViG2Xw.js +1 -1
  35. package/dist/client/_nuxt/{fwfpIEej.js → Cb_ad2sg.js} +1 -1
  36. package/dist/client/_nuxt/{dXjzJhiW.js → CcKfWHXB.js} +2 -2
  37. package/dist/client/_nuxt/{BG5RUyXI.js → CfVBzxeB.js} +1 -1
  38. package/dist/client/_nuxt/Cic6Ln_D.js +98 -0
  39. package/dist/client/_nuxt/{B_lF4o9u.js → CjFkCrIW.js} +1 -1
  40. package/dist/client/_nuxt/{D7m39p-9.js → CmbkPMjd.js} +1 -1
  41. package/dist/client/_nuxt/CnW1WPg6.js +1 -0
  42. package/dist/client/_nuxt/CsgBhI1g.js +16 -0
  43. package/dist/client/_nuxt/Cvo3JE8Q.js +1 -0
  44. package/dist/client/_nuxt/{DJdrWIcn.js → CxLTb5RC.js} +1 -1
  45. package/dist/client/_nuxt/{DVk2I1gO.js → CyS6YlEb.js} +1 -1
  46. package/dist/client/_nuxt/{mQFKENXH.js → CyvuMq07.js} +1 -1
  47. package/dist/client/_nuxt/D-a-w6CR.js +9 -0
  48. package/dist/client/_nuxt/{Xpd7UJs5.js → D4Ks82zD.js} +1 -1
  49. package/dist/client/_nuxt/{DdjW6vu9.js → D8XE2BC8.js} +1 -1
  50. package/dist/client/_nuxt/DDMtKJxh.js +1 -1
  51. package/dist/client/_nuxt/{C5gCGmDW.js → DK4oFTHQ.js} +1 -1
  52. package/dist/client/_nuxt/{C3FSKLnj.js → DKlNNSWk.js} +1 -1
  53. package/dist/client/_nuxt/{Cda7aUrs.js → DN0HCnq5.js} +1 -1
  54. package/dist/client/_nuxt/{H6yjxI9R.js → DOv5BRyJ.js} +1 -1
  55. package/dist/client/_nuxt/{Bxh-fvdv.js → DVZAdofw.js} +1 -1
  56. package/dist/client/_nuxt/{DeSj8VZN.js → DYx1ZwvQ.js} +1 -1
  57. package/dist/client/_nuxt/Di9lD2rK.js +1 -0
  58. package/dist/client/_nuxt/{BM3cCZms.js → DoQHeYxB.js} +3 -3
  59. package/dist/client/_nuxt/{ix9IAXj6.js → DpYuRYxj.js} +92 -22
  60. package/dist/client/_nuxt/{B04hL9Ab.js → Dv0NFAnW.js} +1 -1
  61. package/dist/client/_nuxt/{DEkvPDn8.js → DwVKZd3-.js} +1 -1
  62. package/dist/client/_nuxt/{QBzUTbSD.js → DwdKwQHN.js} +1 -1
  63. package/dist/client/_nuxt/{BRFlSxxW.js → JMx2uAI6.js} +1 -1
  64. package/dist/client/_nuxt/{BS5FcDmG.js → VNvxalkE.js} +1 -1
  65. package/dist/client/_nuxt/W2Tyz6z1.js +9 -0
  66. package/dist/client/_nuxt/{QQ7YbgtC.js → awWHqjli.js} +1 -1
  67. package/dist/client/_nuxt/builds/latest.json +1 -1
  68. package/dist/client/_nuxt/builds/meta/a69820c2-31c2-48f6-8161-842a62467079.json +1 -0
  69. package/dist/client/_nuxt/ciodjZaS.js +43 -0
  70. package/dist/client/_nuxt/entry.Gpl6Gx6M.css +1 -0
  71. package/dist/client/_nuxt/error-404.Bssqox27.css +1 -0
  72. package/dist/client/_nuxt/error-500.D3oXMFZl.css +1 -0
  73. package/dist/client/_nuxt/{Csl1JfEo.js → ewAh1ZiX.js} +1 -1
  74. package/dist/client/_nuxt/{CHQglk26.js → gXK6hV6W.js} +8 -8
  75. package/dist/client/_nuxt/pl_4MfI2.js +1 -0
  76. package/dist/client/_nuxt/{BTj8T8Us.js → rLudNEh9.js} +1 -1
  77. package/dist/client/_nuxt/terminals.BIEho_Pa.css +1 -0
  78. package/dist/client/_nuxt/timeline.BVVcTKn-.css +1 -0
  79. package/dist/client/_nuxt/{BdSLTmjP.js → viHXAOJs.js} +1 -1
  80. package/dist/client/_nuxt/yFeWtr-M.js +1 -0
  81. package/dist/client/_nuxt/{CyiHZscW.js → z0xAc3RC.js} +1 -1
  82. package/dist/client/_nuxt/{_OFeGLwh.js → zLQhdF7m.js} +1 -1
  83. package/dist/client/_nuxt/{CGZO0Dbu.js → zjxoDR5L.js} +1 -1
  84. package/dist/client/index.html +27 -27
  85. package/dist/module.json +1 -1
  86. package/dist/runtime/auth/index.html +2 -12
  87. package/dist/runtime/function-metrics-helpers.mjs +1 -1
  88. package/dist/runtime/plugins/view/Main.vue +1 -1
  89. package/dist/runtime/plugins/view/client.mjs +7 -5
  90. package/dist/runtime/plugins/view/utils.mjs +10 -6
  91. package/package.json +37 -37
  92. package/dist/client/_nuxt/B6TDWpKk.js +0 -1
  93. package/dist/client/_nuxt/BvHZCDLj.js +0 -9
  94. package/dist/client/_nuxt/BwKcIQOa.js +0 -16
  95. package/dist/client/_nuxt/C2c19bzT.js +0 -1
  96. package/dist/client/_nuxt/C9duD8Qg.js +0 -1
  97. package/dist/client/_nuxt/CCEQErg8.js +0 -1
  98. package/dist/client/_nuxt/CSGOJSAd.js +0 -1
  99. package/dist/client/_nuxt/CZLRDnsa.js +0 -1
  100. package/dist/client/_nuxt/CfkdovQd.js +0 -98
  101. package/dist/client/_nuxt/CssX2CxZ.js +0 -2
  102. package/dist/client/_nuxt/CwTcTc2N.js +0 -43
  103. package/dist/client/_nuxt/D5ctTtkd.js +0 -1
  104. package/dist/client/_nuxt/DJS8TjB-.js +0 -1
  105. package/dist/client/_nuxt/DluxqTUE.js +0 -1
  106. package/dist/client/_nuxt/builds/meta/8ac9da91-0524-4abf-a805-60b3d6199fe9.json +0 -1
  107. package/dist/client/_nuxt/entry.hxdKUDpu.css +0 -1
  108. package/dist/client/_nuxt/error-404.C4UNnO0a.css +0 -1
  109. package/dist/client/_nuxt/error-500.BbJ9e2Fk.css +0 -1
  110. package/dist/client/_nuxt/pA_iBoe4.js +0 -9
  111. package/dist/client/_nuxt/terminals.dNTO8Cf0.css +0 -1
  112. package/dist/client/_nuxt/timeline.DvDJbalt.css +0 -1
  113. package/dist/client/_nuxt/wGyJxDW5.js +0 -9
@@ -23,15 +23,15 @@ import { addNuxtModule, getDefaultExportOptions } from 'magicast/helpers';
23
23
  import { createRequire } from 'node:module';
24
24
  import 'pkg-types';
25
25
  import semver from 'semver';
26
+ import destr from 'destr';
26
27
  import { getPackageInfo } from 'local-pkg';
27
28
  import { resolveBuiltinPresets } from 'unimport';
28
- import destr from 'destr';
29
29
  import { snakeCase } from 'scule';
30
30
  import { setupHooksDebug } from '../runtime/shared/hooks.mjs';
31
31
  import Git from 'simple-git';
32
32
  import { runtimeDir, clientDir, packageDir, isGlobalInstall } from '../dirs.mjs';
33
33
 
34
- const version = "1.3.8";
34
+ const version = "1.3.14";
35
35
 
36
36
  function getHomeDir() {
37
37
  return process.env.XDG_CONFIG_HOME || homedir();
@@ -270,7 +270,7 @@ You can configure it in Nuxt config at \`devtools.assets.uploadExtensions\`.`);
270
270
  while (await fs.access(`${base}-${i}.${ext}`).then(() => true).catch(() => false))
271
271
  i++;
272
272
  finalPath = `${base}-${i}.${ext}`;
273
- } catch (err) {
273
+ } catch {
274
274
  }
275
275
  }
276
276
  await fs.writeFile(finalPath, content, {
@@ -312,6 +312,525 @@ function guessType(path) {
312
312
  return "other";
313
313
  }
314
314
 
315
+ const HASH_RE = /#/g;
316
+ const AMPERSAND_RE = /&/g;
317
+ const SLASH_RE = /\//g;
318
+ const EQUAL_RE = /=/g;
319
+ const PLUS_RE = /\+/g;
320
+ const ENC_CARET_RE = /%5e/gi;
321
+ const ENC_BACKTICK_RE = /%60/gi;
322
+ const ENC_PIPE_RE = /%7c/gi;
323
+ const ENC_SPACE_RE = /%20/gi;
324
+ function encode(text) {
325
+ return encodeURI("" + text).replace(ENC_PIPE_RE, "|");
326
+ }
327
+ function encodeQueryValue(input) {
328
+ return encode(typeof input === "string" ? input : JSON.stringify(input)).replace(PLUS_RE, "%2B").replace(ENC_SPACE_RE, "+").replace(HASH_RE, "%23").replace(AMPERSAND_RE, "%26").replace(ENC_BACKTICK_RE, "`").replace(ENC_CARET_RE, "^").replace(SLASH_RE, "%2F");
329
+ }
330
+ function encodeQueryKey(text) {
331
+ return encodeQueryValue(text).replace(EQUAL_RE, "%3D");
332
+ }
333
+ function decode(text = "") {
334
+ try {
335
+ return decodeURIComponent("" + text);
336
+ } catch {
337
+ return "" + text;
338
+ }
339
+ }
340
+ function decodeQueryKey(text) {
341
+ return decode(text.replace(PLUS_RE, " "));
342
+ }
343
+ function decodeQueryValue(text) {
344
+ return decode(text.replace(PLUS_RE, " "));
345
+ }
346
+
347
+ function parseQuery(parametersString = "") {
348
+ const object = {};
349
+ if (parametersString[0] === "?") {
350
+ parametersString = parametersString.slice(1);
351
+ }
352
+ for (const parameter of parametersString.split("&")) {
353
+ const s = parameter.match(/([^=]+)=?(.*)/) || [];
354
+ if (s.length < 2) {
355
+ continue;
356
+ }
357
+ const key = decodeQueryKey(s[1]);
358
+ if (key === "__proto__" || key === "constructor") {
359
+ continue;
360
+ }
361
+ const value = decodeQueryValue(s[2] || "");
362
+ if (object[key] === void 0) {
363
+ object[key] = value;
364
+ } else if (Array.isArray(object[key])) {
365
+ object[key].push(value);
366
+ } else {
367
+ object[key] = [object[key], value];
368
+ }
369
+ }
370
+ return object;
371
+ }
372
+ function encodeQueryItem(key, value) {
373
+ if (typeof value === "number" || typeof value === "boolean") {
374
+ value = String(value);
375
+ }
376
+ if (!value) {
377
+ return encodeQueryKey(key);
378
+ }
379
+ if (Array.isArray(value)) {
380
+ return value.map((_value) => `${encodeQueryKey(key)}=${encodeQueryValue(_value)}`).join("&");
381
+ }
382
+ return `${encodeQueryKey(key)}=${encodeQueryValue(value)}`;
383
+ }
384
+ function stringifyQuery(query) {
385
+ return Object.keys(query).filter((k) => query[k] !== void 0).map((k) => encodeQueryItem(k, query[k])).filter(Boolean).join("&");
386
+ }
387
+
388
+ const PROTOCOL_STRICT_REGEX = /^[\s\w\0+.-]{2,}:([/\\]{1,2})/;
389
+ const PROTOCOL_REGEX = /^[\s\w\0+.-]{2,}:([/\\]{2})?/;
390
+ const PROTOCOL_RELATIVE_REGEX = /^([/\\]\s*){2,}[^/\\]/;
391
+ const TRAILING_SLASH_RE = /\/$|\/\?|\/#/;
392
+ const JOIN_LEADING_SLASH_RE = /^\.?\//;
393
+ function hasProtocol(inputString, opts = {}) {
394
+ if (typeof opts === "boolean") {
395
+ opts = { acceptRelative: opts };
396
+ }
397
+ if (opts.strict) {
398
+ return PROTOCOL_STRICT_REGEX.test(inputString);
399
+ }
400
+ return PROTOCOL_REGEX.test(inputString) || (opts.acceptRelative ? PROTOCOL_RELATIVE_REGEX.test(inputString) : false);
401
+ }
402
+ function hasTrailingSlash(input = "", respectQueryAndFragment) {
403
+ if (!respectQueryAndFragment) {
404
+ return input.endsWith("/");
405
+ }
406
+ return TRAILING_SLASH_RE.test(input);
407
+ }
408
+ function withoutTrailingSlash(input = "", respectQueryAndFragment) {
409
+ if (!respectQueryAndFragment) {
410
+ return (hasTrailingSlash(input) ? input.slice(0, -1) : input) || "/";
411
+ }
412
+ if (!hasTrailingSlash(input, true)) {
413
+ return input || "/";
414
+ }
415
+ let path = input;
416
+ let fragment = "";
417
+ const fragmentIndex = input.indexOf("#");
418
+ if (fragmentIndex >= 0) {
419
+ path = input.slice(0, fragmentIndex);
420
+ fragment = input.slice(fragmentIndex);
421
+ }
422
+ const [s0, ...s] = path.split("?");
423
+ const cleanPath = s0.endsWith("/") ? s0.slice(0, -1) : s0;
424
+ return (cleanPath || "/") + (s.length > 0 ? `?${s.join("?")}` : "") + fragment;
425
+ }
426
+ function withTrailingSlash(input = "", respectQueryAndFragment) {
427
+ if (!respectQueryAndFragment) {
428
+ return input.endsWith("/") ? input : input + "/";
429
+ }
430
+ if (hasTrailingSlash(input, true)) {
431
+ return input || "/";
432
+ }
433
+ let path = input;
434
+ let fragment = "";
435
+ const fragmentIndex = input.indexOf("#");
436
+ if (fragmentIndex >= 0) {
437
+ path = input.slice(0, fragmentIndex);
438
+ fragment = input.slice(fragmentIndex);
439
+ if (!path) {
440
+ return fragment;
441
+ }
442
+ }
443
+ const [s0, ...s] = path.split("?");
444
+ return s0 + "/" + (s.length > 0 ? `?${s.join("?")}` : "") + fragment;
445
+ }
446
+ function withBase(input, base) {
447
+ if (isEmptyURL(base) || hasProtocol(input)) {
448
+ return input;
449
+ }
450
+ const _base = withoutTrailingSlash(base);
451
+ if (input.startsWith(_base)) {
452
+ return input;
453
+ }
454
+ return joinURL(_base, input);
455
+ }
456
+ function withQuery(input, query) {
457
+ const parsed = parseURL(input);
458
+ const mergedQuery = { ...parseQuery(parsed.search), ...query };
459
+ parsed.search = stringifyQuery(mergedQuery);
460
+ return stringifyParsedURL(parsed);
461
+ }
462
+ function isEmptyURL(url) {
463
+ return !url || url === "/";
464
+ }
465
+ function isNonEmptyURL(url) {
466
+ return url && url !== "/";
467
+ }
468
+ function joinURL(base, ...input) {
469
+ let url = base || "";
470
+ for (const segment of input.filter((url2) => isNonEmptyURL(url2))) {
471
+ if (url) {
472
+ const _segment = segment.replace(JOIN_LEADING_SLASH_RE, "");
473
+ url = withTrailingSlash(url) + _segment;
474
+ } else {
475
+ url = segment;
476
+ }
477
+ }
478
+ return url;
479
+ }
480
+
481
+ const protocolRelative = Symbol.for("ufo:protocolRelative");
482
+ function parseURL(input = "", defaultProto) {
483
+ const _specialProtoMatch = input.match(
484
+ /^[\s\0]*(blob:|data:|javascript:|vbscript:)(.*)/i
485
+ );
486
+ if (_specialProtoMatch) {
487
+ const [, _proto, _pathname = ""] = _specialProtoMatch;
488
+ return {
489
+ protocol: _proto.toLowerCase(),
490
+ pathname: _pathname,
491
+ href: _proto + _pathname,
492
+ auth: "",
493
+ host: "",
494
+ search: "",
495
+ hash: ""
496
+ };
497
+ }
498
+ if (!hasProtocol(input, { acceptRelative: true })) {
499
+ return defaultProto ? parseURL(defaultProto + input) : parsePath(input);
500
+ }
501
+ const [, protocol = "", auth, hostAndPath = ""] = input.replace(/\\/g, "/").match(/^[\s\0]*([\w+.-]{2,}:)?\/\/([^/@]+@)?(.*)/) || [];
502
+ let [, host = "", path = ""] = hostAndPath.match(/([^#/?]*)(.*)?/) || [];
503
+ if (protocol === "file:") {
504
+ path = path.replace(/\/(?=[A-Za-z]:)/, "");
505
+ }
506
+ const { pathname, search, hash } = parsePath(path);
507
+ return {
508
+ protocol: protocol.toLowerCase(),
509
+ auth: auth ? auth.slice(0, Math.max(0, auth.length - 1)) : "",
510
+ host,
511
+ pathname,
512
+ search,
513
+ hash,
514
+ [protocolRelative]: !protocol
515
+ };
516
+ }
517
+ function parsePath(input = "") {
518
+ const [pathname = "", search = "", hash = ""] = (input.match(/([^#?]*)(\?[^#]*)?(#.*)?/) || []).splice(1);
519
+ return {
520
+ pathname,
521
+ search,
522
+ hash
523
+ };
524
+ }
525
+ function stringifyParsedURL(parsed) {
526
+ const pathname = parsed.pathname || "";
527
+ const search = parsed.search ? (parsed.search.startsWith("?") ? "" : "?") + parsed.search : "";
528
+ const hash = parsed.hash || "";
529
+ const auth = parsed.auth ? parsed.auth + "@" : "";
530
+ const host = parsed.host || "";
531
+ const proto = parsed.protocol || parsed[protocolRelative] ? (parsed.protocol || "") + "//" : "";
532
+ return proto + auth + host + pathname + search + hash;
533
+ }
534
+
535
+ class FetchError extends Error {
536
+ constructor(message, opts) {
537
+ super(message, opts);
538
+ this.name = "FetchError";
539
+ if (opts?.cause && !this.cause) {
540
+ this.cause = opts.cause;
541
+ }
542
+ }
543
+ }
544
+ function createFetchError(ctx) {
545
+ const errorMessage = ctx.error?.message || ctx.error?.toString() || "";
546
+ const method = ctx.request?.method || ctx.options?.method || "GET";
547
+ const url = ctx.request?.url || String(ctx.request) || "/";
548
+ const requestStr = `[${method}] ${JSON.stringify(url)}`;
549
+ const statusStr = ctx.response ? `${ctx.response.status} ${ctx.response.statusText}` : "<no response>";
550
+ const message = `${requestStr}: ${statusStr}${errorMessage ? ` ${errorMessage}` : ""}`;
551
+ const fetchError = new FetchError(
552
+ message,
553
+ ctx.error ? { cause: ctx.error } : void 0
554
+ );
555
+ for (const key of ["request", "options", "response"]) {
556
+ Object.defineProperty(fetchError, key, {
557
+ get() {
558
+ return ctx[key];
559
+ }
560
+ });
561
+ }
562
+ for (const [key, refKey] of [
563
+ ["data", "_data"],
564
+ ["status", "status"],
565
+ ["statusCode", "status"],
566
+ ["statusText", "statusText"],
567
+ ["statusMessage", "statusText"]
568
+ ]) {
569
+ Object.defineProperty(fetchError, key, {
570
+ get() {
571
+ return ctx.response && ctx.response[refKey];
572
+ }
573
+ });
574
+ }
575
+ return fetchError;
576
+ }
577
+
578
+ const payloadMethods = new Set(
579
+ Object.freeze(["PATCH", "POST", "PUT", "DELETE"])
580
+ );
581
+ function isPayloadMethod(method = "GET") {
582
+ return payloadMethods.has(method.toUpperCase());
583
+ }
584
+ function isJSONSerializable(value) {
585
+ if (value === void 0) {
586
+ return false;
587
+ }
588
+ const t = typeof value;
589
+ if (t === "string" || t === "number" || t === "boolean" || t === null) {
590
+ return true;
591
+ }
592
+ if (t !== "object") {
593
+ return false;
594
+ }
595
+ if (Array.isArray(value)) {
596
+ return true;
597
+ }
598
+ if (value.buffer) {
599
+ return false;
600
+ }
601
+ return value.constructor && value.constructor.name === "Object" || typeof value.toJSON === "function";
602
+ }
603
+ const textTypes = /* @__PURE__ */ new Set([
604
+ "image/svg",
605
+ "application/xml",
606
+ "application/xhtml",
607
+ "application/html"
608
+ ]);
609
+ const JSON_RE = /^application\/(?:[\w!#$%&*.^`~-]*\+)?json(;.+)?$/i;
610
+ function detectResponseType(_contentType = "") {
611
+ if (!_contentType) {
612
+ return "json";
613
+ }
614
+ const contentType = _contentType.split(";").shift() || "";
615
+ if (JSON_RE.test(contentType)) {
616
+ return "json";
617
+ }
618
+ if (textTypes.has(contentType) || contentType.startsWith("text/")) {
619
+ return "text";
620
+ }
621
+ return "blob";
622
+ }
623
+ function mergeFetchOptions(input, defaults, Headers = globalThis.Headers) {
624
+ const merged = {
625
+ ...defaults,
626
+ ...input
627
+ };
628
+ if (defaults?.params && input?.params) {
629
+ merged.params = {
630
+ ...defaults?.params,
631
+ ...input?.params
632
+ };
633
+ }
634
+ if (defaults?.query && input?.query) {
635
+ merged.query = {
636
+ ...defaults?.query,
637
+ ...input?.query
638
+ };
639
+ }
640
+ if (defaults?.headers && input?.headers) {
641
+ merged.headers = new Headers(defaults?.headers || {});
642
+ for (const [key, value] of new Headers(input?.headers || {})) {
643
+ merged.headers.set(key, value);
644
+ }
645
+ }
646
+ return merged;
647
+ }
648
+
649
+ const retryStatusCodes = /* @__PURE__ */ new Set([
650
+ 408,
651
+ // Request Timeout
652
+ 409,
653
+ // Conflict
654
+ 425,
655
+ // Too Early
656
+ 429,
657
+ // Too Many Requests
658
+ 500,
659
+ // Internal Server Error
660
+ 502,
661
+ // Bad Gateway
662
+ 503,
663
+ // Service Unavailable
664
+ 504
665
+ // Gateway Timeout
666
+ ]);
667
+ const nullBodyResponses = /* @__PURE__ */ new Set([101, 204, 205, 304]);
668
+ function createFetch(globalOptions = {}) {
669
+ const {
670
+ fetch = globalThis.fetch,
671
+ Headers = globalThis.Headers,
672
+ AbortController = globalThis.AbortController
673
+ } = globalOptions;
674
+ async function onError(context) {
675
+ const isAbort = context.error && context.error.name === "AbortError" && !context.options.timeout || false;
676
+ if (context.options.retry !== false && !isAbort) {
677
+ let retries;
678
+ if (typeof context.options.retry === "number") {
679
+ retries = context.options.retry;
680
+ } else {
681
+ retries = isPayloadMethod(context.options.method) ? 0 : 1;
682
+ }
683
+ const responseCode = context.response && context.response.status || 500;
684
+ if (retries > 0 && (Array.isArray(context.options.retryStatusCodes) ? context.options.retryStatusCodes.includes(responseCode) : retryStatusCodes.has(responseCode))) {
685
+ const retryDelay = context.options.retryDelay || 0;
686
+ if (retryDelay > 0) {
687
+ await new Promise((resolve) => setTimeout(resolve, retryDelay));
688
+ }
689
+ return $fetchRaw(context.request, {
690
+ ...context.options,
691
+ retry: retries - 1
692
+ });
693
+ }
694
+ }
695
+ const error = createFetchError(context);
696
+ if (Error.captureStackTrace) {
697
+ Error.captureStackTrace(error, $fetchRaw);
698
+ }
699
+ throw error;
700
+ }
701
+ const $fetchRaw = async function $fetchRaw2(_request, _options = {}) {
702
+ const context = {
703
+ request: _request,
704
+ options: mergeFetchOptions(_options, globalOptions.defaults, Headers),
705
+ response: void 0,
706
+ error: void 0
707
+ };
708
+ context.options.method = context.options.method?.toUpperCase();
709
+ if (context.options.onRequest) {
710
+ await context.options.onRequest(context);
711
+ }
712
+ if (typeof context.request === "string") {
713
+ if (context.options.baseURL) {
714
+ context.request = withBase(context.request, context.options.baseURL);
715
+ }
716
+ if (context.options.query || context.options.params) {
717
+ context.request = withQuery(context.request, {
718
+ ...context.options.params,
719
+ ...context.options.query
720
+ });
721
+ }
722
+ }
723
+ if (context.options.body && isPayloadMethod(context.options.method)) {
724
+ if (isJSONSerializable(context.options.body)) {
725
+ context.options.body = typeof context.options.body === "string" ? context.options.body : JSON.stringify(context.options.body);
726
+ context.options.headers = new Headers(context.options.headers || {});
727
+ if (!context.options.headers.has("content-type")) {
728
+ context.options.headers.set("content-type", "application/json");
729
+ }
730
+ if (!context.options.headers.has("accept")) {
731
+ context.options.headers.set("accept", "application/json");
732
+ }
733
+ } else if (
734
+ // ReadableStream Body
735
+ "pipeTo" in context.options.body && typeof context.options.body.pipeTo === "function" || // Node.js Stream Body
736
+ typeof context.options.body.pipe === "function"
737
+ ) {
738
+ if (!("duplex" in context.options)) {
739
+ context.options.duplex = "half";
740
+ }
741
+ }
742
+ }
743
+ let abortTimeout;
744
+ if (!context.options.signal && context.options.timeout) {
745
+ const controller = new AbortController();
746
+ abortTimeout = setTimeout(
747
+ () => controller.abort(),
748
+ context.options.timeout
749
+ );
750
+ context.options.signal = controller.signal;
751
+ }
752
+ try {
753
+ context.response = await fetch(
754
+ context.request,
755
+ context.options
756
+ );
757
+ } catch (error) {
758
+ context.error = error;
759
+ if (context.options.onRequestError) {
760
+ await context.options.onRequestError(context);
761
+ }
762
+ return await onError(context);
763
+ } finally {
764
+ if (abortTimeout) {
765
+ clearTimeout(abortTimeout);
766
+ }
767
+ }
768
+ const hasBody = context.response.body && !nullBodyResponses.has(context.response.status) && context.options.method !== "HEAD";
769
+ if (hasBody) {
770
+ const responseType = (context.options.parseResponse ? "json" : context.options.responseType) || detectResponseType(context.response.headers.get("content-type") || "");
771
+ switch (responseType) {
772
+ case "json": {
773
+ const data = await context.response.text();
774
+ const parseFunction = context.options.parseResponse || destr;
775
+ context.response._data = parseFunction(data);
776
+ break;
777
+ }
778
+ case "stream": {
779
+ context.response._data = context.response.body;
780
+ break;
781
+ }
782
+ default: {
783
+ context.response._data = await context.response[responseType]();
784
+ }
785
+ }
786
+ }
787
+ if (context.options.onResponse) {
788
+ await context.options.onResponse(context);
789
+ }
790
+ if (!context.options.ignoreResponseError && context.response.status >= 400 && context.response.status < 600) {
791
+ if (context.options.onResponseError) {
792
+ await context.options.onResponseError(context);
793
+ }
794
+ return await onError(context);
795
+ }
796
+ return context.response;
797
+ };
798
+ const $fetch = async function $fetch2(request, options) {
799
+ const r = await $fetchRaw(request, options);
800
+ return r._data;
801
+ };
802
+ $fetch.raw = $fetchRaw;
803
+ $fetch.native = (...args) => fetch(...args);
804
+ $fetch.create = (defaultOptions = {}) => createFetch({
805
+ ...globalOptions,
806
+ defaults: {
807
+ ...globalOptions.defaults,
808
+ ...defaultOptions
809
+ }
810
+ });
811
+ return $fetch;
812
+ }
813
+
814
+ const _globalThis = function() {
815
+ if (typeof globalThis !== "undefined") {
816
+ return globalThis;
817
+ }
818
+ if (typeof self !== "undefined") {
819
+ return self;
820
+ }
821
+ if (typeof window !== "undefined") {
822
+ return window;
823
+ }
824
+ if (typeof global !== "undefined") {
825
+ return global;
826
+ }
827
+ throw new Error("unable to locate global object");
828
+ }();
829
+ const fetch = _globalThis.fetch || (() => Promise.reject(new Error("[ofetch] global.fetch is not supported!")));
830
+ const Headers = _globalThis.Headers;
831
+ const AbortController = _globalThis.AbortController;
832
+ createFetch({ fetch, Headers, AbortController });
833
+
315
834
  async function checkForUpdateOf(name, current, nuxt = useNuxt()) {
316
835
  try {
317
836
  if (!current) {
@@ -324,7 +843,9 @@ async function checkForUpdateOf(name, current, nuxt = useNuxt()) {
324
843
  if (!current)
325
844
  return;
326
845
  const { getLatestVersion } = await import('fast-npm-meta');
327
- const { version: latest } = await getLatestVersion(name);
846
+ const { version: latest } = await getLatestVersion(name, {
847
+ fetch
848
+ });
328
849
  const needsUpdate = !!latest && latest !== current && semver.lt(current, latest);
329
850
  return {
330
851
  name,
@@ -1027,7 +1548,7 @@ function setupAnalyzeBuildRPC({ nuxt, refresh, ensureDevAuthToken }) {
1027
1548
  if (isWorkingTreeClean)
1028
1549
  return `${branchName}#${sha}`;
1029
1550
  return `${branchName}#${sha}-dirty`;
1030
- } catch (e) {
1551
+ } catch {
1031
1552
  return (/* @__PURE__ */ new Date()).toISOString().replace(/:/g, "-");
1032
1553
  }
1033
1554
  }
@@ -29,9 +29,9 @@ import 'magicast/helpers';
29
29
  import 'node:module';
30
30
  import 'pkg-types';
31
31
  import 'semver';
32
+ import 'destr';
32
33
  import 'local-pkg';
33
34
  import 'unimport';
34
- import 'destr';
35
35
  import 'scule';
36
36
  import '../runtime/shared/hooks.mjs';
37
37
  import 'simple-git';
@@ -1,36 +1,36 @@
1
1
  <!DOCTYPE html><html data-capo=""><head><meta charset="utf-8">
2
2
  <meta name="viewport" content="width=device-width, initial-scale=1">
3
- <link rel="stylesheet" href="/__NUXT_DEVTOOLS_BASE__/_nuxt/entry.hxdKUDpu.css">
4
- <link rel="modulepreload" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/CwTcTc2N.js">
3
+ <link rel="stylesheet" href="/__NUXT_DEVTOOLS_BASE__/_nuxt/entry.Gpl6Gx6M.css">
4
+ <link rel="modulepreload" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/ciodjZaS.js">
5
5
  <link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/Blr6EMNg.js">
6
- <link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/Bxkoe-BC.js">
7
- <link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/Br6ll-O0.js">
6
+ <link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/BLmvGqlk.js">
7
+ <link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/BYelj_cE.js">
8
8
  <link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/CupVZNk8.js">
9
- <link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/C5gCGmDW.js">
9
+ <link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/DK4oFTHQ.js">
10
10
  <link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/CbYhyuC0.js">
11
- <link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/Dch3xQiY.js">
12
- <link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/DC8MraHL.js">
13
- <link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/ix9IAXj6.js">
11
+ <link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/CHuuZgn4.js">
12
+ <link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/_ECCzcZq.js">
13
+ <link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/DpYuRYxj.js">
14
14
  <link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/CbViG2Xw.js">
15
- <link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/DuFGBY9A.js">
15
+ <link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/C8RrL2-P.js">
16
16
  <link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/DvyTQcux.js">
17
- <link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/BZfs-ost.js">
17
+ <link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/DOv5BRyJ.js">
18
18
  <link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/CsTmP73Z.js">
19
- <link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/C8N9kWh2.js">
20
- <link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/Bxh-fvdv.js">
21
- <link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/BLxIf9BH.js">
19
+ <link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/CPr4CZHz.js">
20
+ <link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/DVZAdofw.js">
21
+ <link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/BZZpaKJQ.js">
22
22
  <link rel="prefetch" as="style" href="/__NUXT_DEVTOOLS_BASE__/_nuxt/NCodeBlock.BJ-XAY5s.css">
23
- <link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/Ckn823xU.js">
24
- <link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/B_lF4o9u.js">
25
- <link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/BdSLTmjP.js">
26
- <link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/B04hL9Ab.js">
27
- <link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/CPUwo9Dx.js">
28
- <link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/CSGOJSAd.js">
29
- <link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/C3FSKLnj.js">
30
- <link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/CssX2CxZ.js">
31
- <link rel="prefetch" as="style" href="/__NUXT_DEVTOOLS_BASE__/_nuxt/error-404.C4UNnO0a.css">
32
- <link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/DETXY6Xa.js">
33
- <link rel="prefetch" as="style" href="/__NUXT_DEVTOOLS_BASE__/_nuxt/error-500.BbJ9e2Fk.css">
34
- <link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/CyiHZscW.js">
35
- <script type="module" src="/__NUXT_DEVTOOLS_BASE__/_nuxt/CwTcTc2N.js" crossorigin></script></head><body><div id="__nuxt"></div><div id="teleports"></div><script type="application/json" id="__NUXT_DATA__" data-ssr="false">[{"serverRendered":1},false]</script>
36
- <script>window.__NUXT__={};window.__NUXT__.config={public:{fixture4:"public runtime config from nuxt.config.ts"},app:{baseURL:"/__NUXT_DEVTOOLS_BASE__/",buildId:"8ac9da91-0524-4abf-a805-60b3d6199fe9",buildAssetsDir:"/_nuxt/",cdnURL:""}}</script></body></html>
23
+ <link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/BF_UD7ZT.js">
24
+ <link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/CjFkCrIW.js">
25
+ <link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/viHXAOJs.js">
26
+ <link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/Dv0NFAnW.js">
27
+ <link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/BZvh3yot.js">
28
+ <link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/yFeWtr-M.js">
29
+ <link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/DKlNNSWk.js">
30
+ <link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/BrzmMRQX.js">
31
+ <link rel="prefetch" as="style" href="/__NUXT_DEVTOOLS_BASE__/_nuxt/error-404.Bssqox27.css">
32
+ <link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/BkmSFWMo.js">
33
+ <link rel="prefetch" as="style" href="/__NUXT_DEVTOOLS_BASE__/_nuxt/error-500.D3oXMFZl.css">
34
+ <link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/z0xAc3RC.js">
35
+ <script type="module" src="/__NUXT_DEVTOOLS_BASE__/_nuxt/ciodjZaS.js" crossorigin></script></head><body><div id="__nuxt"></div><div id="teleports"></div><script type="application/json" id="__NUXT_DATA__" data-ssr="false">[{"serverRendered":1},false]</script>
36
+ <script>window.__NUXT__={};window.__NUXT__.config={public:{fixture4:"public runtime config from nuxt.config.ts"},app:{baseURL:"/__NUXT_DEVTOOLS_BASE__/",buildId:"a69820c2-31c2-48f6-8161-842a62467079",buildAssetsDir:"/_nuxt/",cdnURL:""}}</script></body></html>