void 0.21.8 → 0.22.0

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 (132) hide show
  1. package/dist/{account-cmd-CQ2wi4Th.mjs → account-cmd-CjyxcGkM.mjs} +4 -4
  2. package/dist/{auth-link-B_lceSHK.mjs → auth-link-BLO4ptzo.mjs} +4 -4
  3. package/dist/{auth-router-cZq0HuWe.mjs → auth-router-ZUg9MF_U.mjs} +5 -5
  4. package/dist/{build-cmd-Dpt0jd-x.mjs → build-cmd-BxR5FROK.mjs} +3 -3
  5. package/dist/{cache-7_UeZdTk.mjs → cache-D0sWhgKI.mjs} +3 -3
  6. package/dist/{cancel-deploy-D23R1RXT.mjs → cancel-deploy-D4NUqFbi.mjs} +3 -3
  7. package/dist/{cf-build-output-CGT03qCD.mjs → cf-build-output-BJ6yGEIS.mjs} +139 -62
  8. package/dist/cli/cf-compat.mjs +164 -42
  9. package/dist/cli/cli.mjs +73 -44
  10. package/dist/cli/env-schema-probe.d.mts +1 -1
  11. package/dist/{client-QTl6ko_D.mjs → client-BTZ3XkrB.mjs} +25 -0
  12. package/dist/client-Czz8o5jP.mjs +2 -0
  13. package/dist/{cloudflare-auth-C4_GPZr0.mjs → cloudflare-auth-DQkqoMYa.mjs} +1 -6
  14. package/dist/{cloudflare-cmd-bSmZ1d5L.mjs → cloudflare-cmd-BKlfGHAy.mjs} +6 -7
  15. package/dist/{cloudflare-connect-jAwacxxP.mjs → cloudflare-connect-Ctmrw579.mjs} +3 -3
  16. package/dist/{cloudflare-operations-sMZXpk_S.mjs → cloudflare-operations-B9tzgjmf.mjs} +10 -39
  17. package/dist/{cloudflare-operations-BipGMJ5O.mjs → cloudflare-operations-BT6OWFBk.mjs} +1 -1
  18. package/dist/{config-CafTW6Cz.mjs → config-Br_JZD6u.mjs} +2 -7
  19. package/dist/{config-s7Xj7tPb.mjs → config-CyQ-wVd7.mjs} +1 -1
  20. package/dist/{config-CF69HgXc.d.mts → config-VavjpDnp.d.mts} +1 -2
  21. package/dist/config-entry.d.mts +1 -1
  22. package/dist/{config-write-BSduPMY8.mjs → config-write-B1f88wJA.mjs} +1 -1
  23. package/dist/{connect-BY38i-9E.mjs → connect-Dg-WkW-C.mjs} +5 -5
  24. package/dist/{create-project-BniEV0OW.mjs → create-project-DdoqwFLF.mjs} +1 -1
  25. package/dist/{create-project-DBfFSZKY.mjs → create-project-l9J7pbtm.mjs} +8 -4
  26. package/dist/{db-BIo37Y7H.mjs → db-gp2sCXyN.mjs} +14 -14
  27. package/dist/{delete-D6dZ9B6B.mjs → delete-TTedbH6B.mjs} +3 -3
  28. package/dist/{deploy-BM_LoBXC.mjs → deploy-B19L2Bra.mjs} +1 -1
  29. package/dist/{deploy-C0JaQSWS.mjs → deploy-CH-o2CaZ.mjs} +47 -36
  30. package/dist/{dist-BR1quN_w.mjs → dist-AoCzRTJE.mjs} +226 -60
  31. package/dist/{dist-C5fND3R0.mjs → dist-BuDuKZJv.mjs} +1 -1
  32. package/dist/{dist-Dn6nn2IU.mjs → dist-CTBk70IR.mjs} +42 -42
  33. package/dist/{domain-Dmhvb2oU.mjs → domain-JRF59P_r.mjs} +4 -4
  34. package/dist/{email-dMnE_Lat.mjs → email-Bo6G9LOZ.mjs} +6 -6
  35. package/dist/{env-Csi-tMbT.mjs → env-BYOrWQnv.mjs} +4 -4
  36. package/dist/{env-public-D_6u46fX.d.mts → env-public-BxU_0yTL.d.mts} +2 -1
  37. package/dist/gen-CNJ62MM7.mjs +2 -0
  38. package/dist/{gen-Dz3X1Qab.mjs → gen-sCtlCOdA.mjs} +3 -3
  39. package/dist/{github-cmd-BED3_9JD.mjs → github-cmd-0-7PexDq.mjs} +5 -7
  40. package/dist/{handler-BXJTXd02.d.mts → handler-HEcZsaij.d.mts} +2 -1
  41. package/dist/{headers-BOg_velo.mjs → headers-DWi2IXWx.mjs} +1 -1
  42. package/dist/help-CmZzxUba.mjs +2 -0
  43. package/dist/{help-DC7gdz7L.mjs → help-GKtwl07I.mjs} +124 -4
  44. package/dist/index.d.mts +1 -1
  45. package/dist/index.mjs +53 -24
  46. package/dist/{init-CJSnEcuj.mjs → init-FZx3Elvz.mjs} +13 -13
  47. package/dist/{link-CsHOinF7.mjs → link-BrQfb_CU.mjs} +4 -4
  48. package/dist/{list-CDb-4bZ1.mjs → list-D44jmIAM.mjs} +4 -4
  49. package/dist/{live-CKiJilLr.d.mts → live-CKJlvlNp.d.mts} +1 -1
  50. package/dist/{local-d1-CC8sKFGu.mjs → local-d1-Bg9OzEEO.mjs} +1 -1
  51. package/dist/{login-DZldyb8c.mjs → login-CAsAsQ-_.mjs} +4 -4
  52. package/dist/login-CGcRKEoi.mjs +2 -0
  53. package/dist/{logs-BdfiOezj.mjs → logs-BjKvFnVM.mjs} +4 -4
  54. package/dist/{migrate-B8KuoYsO.mjs → migrate-BPITvDJN.mjs} +4 -4
  55. package/dist/migrate-CYfbKkXh.mjs +2 -0
  56. package/dist/{node-BM43oz4G.mjs → node-Dt7z256D.mjs} +1 -1
  57. package/dist/{operator-cmd-B9dbG3Od.mjs → operator-cmd-BK5CCiT9.mjs} +4 -4
  58. package/dist/output-Dm_A4Tbv.mjs +81 -0
  59. package/dist/pages/client.d.mts +1 -1
  60. package/dist/pages/index.d.mts +1 -1
  61. package/dist/pages/index.mjs +2 -2
  62. package/dist/pages/islands-plugin.d.mts +16 -6
  63. package/dist/pages/islands-plugin.mjs +1 -1
  64. package/dist/pages/protocol.d.mts +2 -2
  65. package/dist/{output-CCH48AMM.mjs → picocolors-BTps1_gs.mjs} +2 -76
  66. package/dist/{platform-auth-config-Bex45lQt.mjs → platform-auth-config-BlN8xTdD.mjs} +3 -3
  67. package/dist/{platform-auth-protection-Dma02l6-.mjs → platform-auth-protection-7d5aV2Jg.mjs} +3 -3
  68. package/dist/{platform-auth-recovery-COOhMCvx.mjs → platform-auth-recovery-Dxij8ZbR.mjs} +3 -3
  69. package/dist/{platform-cmd-BtxZrT6w.mjs → platform-cmd-B3hwKrFK.mjs} +5 -5
  70. package/dist/{platform-cmd-CjNB09OF.mjs → platform-cmd-E0FuL212.mjs} +1 -1
  71. package/dist/{platform-domain-DppaTARe.mjs → platform-domain-D6Xcy9ZX.mjs} +36 -9
  72. package/dist/{platform-lifecycle-CYll-oKE.mjs → platform-lifecycle-DMh_qrry.mjs} +1 -1
  73. package/dist/{platform-lifecycle-BpDlxT3t.mjs → platform-lifecycle-k0E0xoxx.mjs} +769 -59
  74. package/dist/{platform-management-BKYenDlE.mjs → platform-management-Brz_BDiT.mjs} +72 -10
  75. package/dist/{platform-management-BS5r6Ao8.mjs → platform-management-DOtss0BN.mjs} +1 -1
  76. package/dist/{platform-recovery-dJ5Me-I0.mjs → platform-recovery-BvtcXON5.mjs} +2 -2
  77. package/dist/prepare-Bm3iq-u4.mjs +2 -0
  78. package/dist/{prepare-DyZ-Yok5.mjs → prepare-C-6YZyyg.mjs} +3 -3
  79. package/dist/{prepare-C3kt3Rst.mjs → prepare-CRhJbVrG.mjs} +1 -1
  80. package/dist/{project-cmd-B44I8J_W.mjs → project-cmd-BZLCqOqw.mjs} +29 -15
  81. package/dist/{project-team-BkbYIsXN.mjs → project-team-BvgM0WoX.mjs} +3 -3
  82. package/dist/{project-token-C8xEEQnB.mjs → project-token-l5DqK6Az.mjs} +3 -3
  83. package/dist/project-zero-trust-v6Mvpp8y.mjs +63 -0
  84. package/dist/{protocol-ZH3jP4a7.d.mts → protocol-BBa6cstI.d.mts} +1 -1
  85. package/dist/{provision-BhreDAOS.mjs → provision-C4IGqkBf.mjs} +24 -19
  86. package/dist/{provision-DNtrtaVD.mjs → provision-Fr9pRqce.mjs} +1 -1
  87. package/dist/{requests-DFyhBMaf.mjs → requests-DN-BbNiM.mjs} +3 -3
  88. package/dist/{rollback-DHHxXZiS.mjs → rollback-D7rzSaZM.mjs} +4 -4
  89. package/dist/runtime/env-public.d.mts +1 -1
  90. package/dist/runtime/handler.d.mts +1 -1
  91. package/dist/runtime/live-client.d.mts +1 -1
  92. package/dist/runtime/live.d.mts +1 -1
  93. package/dist/runtime/sandbox-container.d.mts +3 -0
  94. package/dist/runtime/sandbox-container.mjs +2 -0
  95. package/dist/runtime/sandbox.d.mts +4 -32
  96. package/dist/runtime/sandbox.mjs +118 -72
  97. package/dist/runtime/validator.d.mts +1 -1
  98. package/dist/runtime/ws-server.d.mts +1 -1
  99. package/dist/runtime/ws.d.mts +1 -1
  100. package/dist/sandbox-container-4fdqLnyb.mjs +279 -0
  101. package/dist/sandbox-container-DdNEBfCc.d.mts +72 -0
  102. package/dist/sandbox-qpNBT8a3.d.mts +49 -0
  103. package/dist/{secret-DN9sSNiV.mjs → secret-BOtOl_cb.mjs} +4 -4
  104. package/dist/{skills-O6FUaizK.mjs → skills-D1II1Juz.mjs} +1 -1
  105. package/dist/{subcommand-prompt-BuGYkAkC.mjs → subcommand-prompt-CY1C4fvl.mjs} +2 -2
  106. package/dist/{wrangler-BymcxrRa.mjs → wrangler-DQF1vKyf.mjs} +37 -27
  107. package/dist/{ws-BwcqizuH.d.mts → ws-BoY7vQML.d.mts} +1 -1
  108. package/package.json +40 -32
  109. package/sandbox.Dockerfile +4 -0
  110. package/schema.json +10 -22
  111. package/skills/void/SKILL.md +2 -0
  112. package/skills/void/docs/guide/deployment.md +1 -1
  113. package/skills/void/docs/guide/edge/revalidation.md +1 -1
  114. package/skills/void/docs/guide/edge/static-assets.md +1 -0
  115. package/skills/void/docs/guide/platform/administration/zero-trust.md +318 -0
  116. package/skills/void/docs/guide/platform/development/local.md +2 -2
  117. package/skills/void/docs/guide/platform/installation/domains.md +1 -1
  118. package/skills/void/docs/guide/platform/installation/first-deployment.md +4 -0
  119. package/skills/void/docs/guide/platform/installation/prerequisites.md +1 -1
  120. package/skills/void/docs/guide/platform/installation/uninstall.md +17 -2
  121. package/skills/void/docs/guide/platform-administration.md +1 -0
  122. package/skills/void/docs/guide/sandboxes.md +70 -41
  123. package/skills/void/docs/integrations/cloudflare.md +1 -1
  124. package/skills/void/docs/reference/api.md +35 -35
  125. package/skills/void/docs/reference/cli.md +68 -6
  126. package/skills/void/docs/reference/config.md +16 -16
  127. package/dist/client-4cDVv7BO.mjs +0 -2
  128. package/dist/gen-Vnv2f65C.mjs +0 -2
  129. package/dist/help-DQMfeKMz.mjs +0 -2
  130. package/dist/login-t6rndSRW.mjs +0 -2
  131. package/dist/migrate-TsHGBnDA.mjs +0 -2
  132. package/dist/prepare-BZXkjdNe.mjs +0 -2
@@ -2,11 +2,11 @@
2
2
  var comma = ",".charCodeAt(0);
3
3
  var semicolon = ";".charCodeAt(0);
4
4
  var chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
5
- var intToChar = /* @__PURE__ */ new Uint8Array(64);
5
+ var intToChar$1 = /* @__PURE__ */ new Uint8Array(64);
6
6
  var charToInt = /* @__PURE__ */ new Uint8Array(128);
7
7
  for (let i = 0; i < chars.length; i++) {
8
8
  const c = chars.charCodeAt(i);
9
- intToChar[i] = c;
9
+ intToChar$1[i] = c;
10
10
  charToInt[c] = i;
11
11
  }
12
12
  function encodeInteger(builder, num) {
@@ -14,7 +14,7 @@ function encodeInteger(builder, num) {
14
14
  let clamped = num & 31;
15
15
  num >>>= 5;
16
16
  if (num > 0) clamped |= 32;
17
- builder.write(intToChar[clamped]);
17
+ builder.write(intToChar$1[clamped]);
18
18
  } while (num > 0);
19
19
  }
20
20
  function encodeSign(num) {
@@ -93,7 +93,7 @@ function encode(decoded) {
93
93
  return writer.flush();
94
94
  }
95
95
  //#endregion
96
- //#region ../../node_modules/.pnpm/magic-string@1.3.1/node_modules/magic-string/dist/index.mjs
96
+ //#region ../../node_modules/.pnpm/magic-string@1.4.2/node_modules/magic-string/dist/index.mjs
97
97
  var BitSet = class BitSet {
98
98
  constructor(arg) {
99
99
  this.bits = arg instanceof BitSet ? arg.bits.slice() : [];
@@ -187,7 +187,7 @@ var Chunk = class Chunk {
187
187
  this.outro = "";
188
188
  this.end = index;
189
189
  if (this.edited) {
190
- newChunk.edit("", false);
190
+ newChunk.edit("", false, true);
191
191
  this.content = "";
192
192
  } else this.content = originalBefore;
193
193
  newChunk.next = this.next;
@@ -265,7 +265,7 @@ var SourceMap = class {
265
265
  this.sources = properties.sources;
266
266
  this.sourcesContent = properties.sourcesContent;
267
267
  this.names = properties.names;
268
- this.mappings = encode(properties.mappings);
268
+ this.mappings = typeof properties.mappings === "string" ? properties.mappings : encode(properties.mappings);
269
269
  if (typeof properties.x_google_ignoreList !== "undefined") this.x_google_ignoreList = properties.x_google_ignoreList;
270
270
  if (typeof properties.debugId !== "undefined") this.debugId = properties.debugId;
271
271
  if (typeof properties.rangeMappings !== "undefined") {
@@ -339,12 +339,100 @@ const toString = Object.prototype.toString;
339
339
  function isObject(thing) {
340
340
  return toString.call(thing) === "[object Object]";
341
341
  }
342
+ const BASE64_CHARS = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
343
+ const intToChar = /* #__PURE__ */ (() => {
344
+ const chars = /* @__PURE__ */ new Uint8Array(64);
345
+ for (let i = 0; i < 64; i++) chars[i] = BASE64_CHARS.charCodeAt(i);
346
+ return chars;
347
+ })();
348
+ const COMMA = 44;
349
+ const SEMICOLON = 59;
350
+ const BUFFER_SIZE = 16384;
351
+ const FLUSH_THRESHOLD = 16348;
352
+ const scratch = /* #__PURE__ */ new Uint8Array(BUFFER_SIZE);
353
+ function writeVlq(pos, num) {
354
+ num = num < 0 ? -num << 1 | 1 : num << 1;
355
+ do {
356
+ let clamped = num & 31;
357
+ num >>>= 5;
358
+ if (num > 0) clamped |= 32;
359
+ scratch[pos++] = intToChar[clamped];
360
+ } while (num > 0);
361
+ return pos;
362
+ }
363
+ const decoder = /* #__PURE__ */ new TextDecoder();
364
+ var MappingsEncoder = class {
365
+ constructor() {
366
+ this.out = "";
367
+ this.pos = 0;
368
+ this.lines = [];
369
+ this.buffered = 0;
370
+ this.needsComma = false;
371
+ this.prevGenColumn = 0;
372
+ this.prevSourceIndex = 0;
373
+ this.prevSourceLine = 0;
374
+ this.prevSourceColumn = 0;
375
+ this.prevNameIndex = 0;
376
+ }
377
+ endLine(segments) {
378
+ this.lines.push(segments);
379
+ this.buffered += segments.length + 1;
380
+ if (this.buffered >= 4096) this.drain(null);
381
+ }
382
+ segments(segments) {
383
+ this.drain(segments);
384
+ }
385
+ finish(segments) {
386
+ this.drain(segments);
387
+ this.flush();
388
+ return this.out;
389
+ }
390
+ drain(trailing) {
391
+ const lines = this.lines;
392
+ const lineCount = lines.length;
393
+ for (let l = 0; l <= lineCount; l++) {
394
+ const line = l < lineCount ? lines[l] : trailing;
395
+ if (line === null) break;
396
+ for (let i = 0; i < line.length; i++) {
397
+ if (this.pos > FLUSH_THRESHOLD) this.flush();
398
+ const segment = line[i];
399
+ if (this.needsComma) scratch[this.pos++] = COMMA;
400
+ this.needsComma = true;
401
+ this.pos = writeVlq(this.pos, segment[0] - this.prevGenColumn);
402
+ this.prevGenColumn = segment[0];
403
+ this.pos = writeVlq(this.pos, segment[1] - this.prevSourceIndex);
404
+ this.prevSourceIndex = segment[1];
405
+ this.pos = writeVlq(this.pos, segment[2] - this.prevSourceLine);
406
+ this.prevSourceLine = segment[2];
407
+ this.pos = writeVlq(this.pos, segment[3] - this.prevSourceColumn);
408
+ this.prevSourceColumn = segment[3];
409
+ if (segment.length === 5) {
410
+ this.pos = writeVlq(this.pos, segment[4] - this.prevNameIndex);
411
+ this.prevNameIndex = segment[4];
412
+ }
413
+ }
414
+ if (l < lineCount) {
415
+ if (this.pos > FLUSH_THRESHOLD) this.flush();
416
+ scratch[this.pos++] = SEMICOLON;
417
+ this.needsComma = false;
418
+ this.prevGenColumn = 0;
419
+ }
420
+ }
421
+ lines.length = 0;
422
+ this.buffered = 0;
423
+ this.flush();
424
+ }
425
+ flush() {
426
+ this.out += decoder.decode(scratch.subarray(0, this.pos));
427
+ this.pos = 0;
428
+ }
429
+ };
342
430
  const NEWLINE_CHAR$1 = 10;
343
431
  function isWordCode(code) {
344
432
  return code >= 97 && code <= 122 || code >= 65 && code <= 90 || code >= 48 && code <= 57 || code === 95;
345
433
  }
346
434
  var Mappings = class {
347
- constructor(hires) {
435
+ constructor(hires, encoder = null) {
348
436
  this.hires = hires;
349
437
  this.generatedCodeLine = 0;
350
438
  this.generatedCodeColumn = 0;
@@ -352,10 +440,21 @@ var Mappings = class {
352
440
  this.rawSegments = this.raw[this.generatedCodeLine] = [];
353
441
  this.rawRangeMappings = [];
354
442
  this.rawRangeMappingsIndices = this.rawRangeMappings[this.generatedCodeLine] = [];
355
- this.pending = null;
443
+ this.encoder = encoder;
444
+ }
445
+ nextLine() {
446
+ if (this.encoder === null) {
447
+ this.generatedCodeLine += 1;
448
+ this.raw[this.generatedCodeLine] = this.rawSegments = [];
449
+ } else {
450
+ this.encoder.endLine(this.rawSegments);
451
+ this.rawSegments = [];
452
+ this.generatedCodeLine += 1;
453
+ }
454
+ this.generatedCodeColumn = 0;
455
+ this.rawRangeMappings[this.generatedCodeLine] = this.rawRangeMappingsIndices = [];
356
456
  }
357
457
  addEdit(sourceIndex, content, loc, nameIndex) {
358
- /* v8 ignore else -- `pending` is never assigned a truthy value */
359
458
  if (content.length) {
360
459
  const contentLengthMinusOne = content.length - 1;
361
460
  let contentLineEnd = content.indexOf("\n", 0);
@@ -369,10 +468,7 @@ var Mappings = class {
369
468
  ];
370
469
  if (nameIndex >= 0) segment.push(nameIndex);
371
470
  this.rawSegments.push(segment);
372
- this.generatedCodeLine += 1;
373
- this.raw[this.generatedCodeLine] = this.rawSegments = [];
374
- this.rawRangeMappings[this.generatedCodeLine] = this.rawRangeMappingsIndices = [];
375
- this.generatedCodeColumn = 0;
471
+ this.nextLine();
376
472
  previousContentLineEnd = contentLineEnd;
377
473
  contentLineEnd = content.indexOf("\n", contentLineEnd + 1);
378
474
  }
@@ -385,11 +481,7 @@ var Mappings = class {
385
481
  if (nameIndex >= 0) segment.push(nameIndex);
386
482
  this.rawSegments.push(segment);
387
483
  this.advance(content.slice(previousContentLineEnd + 1));
388
- } else if (this.pending) {
389
- this.rawSegments.push(this.pending);
390
- this.advance(content);
391
484
  }
392
- this.pending = null;
393
485
  }
394
486
  addUneditedChunk(sourceIndex, chunk, original, loc, sourcemapLocations) {
395
487
  const end = chunk.end;
@@ -397,8 +489,13 @@ var Mappings = class {
397
489
  if (this.hires) {
398
490
  const boundary = this.hires === "boundary";
399
491
  const experimentalRange = this.hires === "experimental-range";
492
+ const encoder = experimentalRange ? null : this.encoder;
400
493
  let charInHiresBoundary = false;
401
494
  while (i < end) {
495
+ if (encoder !== null && this.rawSegments.length >= 4096) {
496
+ encoder.segments(this.rawSegments);
497
+ this.rawSegments.length = 0;
498
+ }
402
499
  if (experimentalRange && i + 1 >= end) this.rawSegments.push([
403
500
  this.generatedCodeColumn,
404
501
  sourceIndex,
@@ -409,10 +506,7 @@ var Mappings = class {
409
506
  if (code === NEWLINE_CHAR$1) {
410
507
  loc.line += 1;
411
508
  loc.column = 0;
412
- this.generatedCodeLine += 1;
413
- this.raw[this.generatedCodeLine] = this.rawSegments = [];
414
- this.rawRangeMappings[this.generatedCodeLine] = this.rawRangeMappingsIndices = [];
415
- this.generatedCodeColumn = 0;
509
+ this.nextLine();
416
510
  charInHiresBoundary = false;
417
511
  } else {
418
512
  if (boundary) {
@@ -493,26 +587,15 @@ var Mappings = class {
493
587
  if (newline === end) break;
494
588
  loc.line += 1;
495
589
  loc.column = 0;
496
- this.generatedCodeLine += 1;
497
- this.raw[this.generatedCodeLine] = this.rawSegments = [];
498
- this.rawRangeMappings[this.generatedCodeLine] = this.rawRangeMappingsIndices = [];
499
- this.generatedCodeColumn = 0;
590
+ this.nextLine();
500
591
  i = newline + 1;
501
592
  }
502
593
  }
503
- this.pending = null;
504
594
  }
505
595
  advance(str) {
506
596
  if (!str) return;
507
597
  const lastNewline = str.lastIndexOf("\n");
508
- if (lastNewline !== -1) {
509
- for (let i = str.indexOf("\n"); i !== -1; i = str.indexOf("\n", i + 1)) {
510
- this.generatedCodeLine++;
511
- this.raw[this.generatedCodeLine] = this.rawSegments = [];
512
- this.rawRangeMappings[this.generatedCodeLine] = this.rawRangeMappingsIndices = [];
513
- }
514
- this.generatedCodeColumn = 0;
515
- }
598
+ for (let i = str.indexOf("\n"); i !== -1; i = str.indexOf("\n", i + 1)) this.nextLine();
516
599
  this.generatedCodeColumn += str.length - lastNewline - 1;
517
600
  }
518
601
  };
@@ -731,9 +814,32 @@ var MagicString = class MagicString {
731
814
  */
732
815
  generateDecodedMap(options) {
733
816
  options = options || {};
817
+ const mappings = new Mappings(options.hires);
818
+ const names = this._generateMappings(mappings);
819
+ return {
820
+ ...this._mapProperties(options, names),
821
+ mappings: mappings.raw,
822
+ rangeMappings: mappings.rawRangeMappings
823
+ };
824
+ }
825
+ /**
826
+ * Generates a version 3 sourcemap.
827
+ */
828
+ generateMap(options) {
829
+ options = options || {};
830
+ const encoder = new MappingsEncoder();
831
+ const mappings = new Mappings(options.hires, encoder);
832
+ const names = this._generateMappings(mappings);
833
+ return new SourceMap({
834
+ ...this._mapProperties(options, names),
835
+ mappings: encoder.finish(mappings.rawSegments),
836
+ rangeMappings: mappings.rawRangeMappings
837
+ });
838
+ }
839
+ /** @internal */
840
+ _generateMappings(mappings) {
734
841
  const sourceIndex = 0;
735
842
  const names = Object.keys(this.storedNames);
736
- const mappings = new Mappings(options.hires);
737
843
  const locate = getLocator(this.original);
738
844
  if (this.intro) mappings.advance(this.intro);
739
845
  this.firstChunk.eachNext((chunk) => {
@@ -744,22 +850,18 @@ var MagicString = class MagicString {
744
850
  if (chunk.outro.length) mappings.advance(chunk.outro);
745
851
  });
746
852
  if (this.outro) mappings.advance(this.outro);
853
+ return names;
854
+ }
855
+ /** @internal */
856
+ _mapProperties(options, names) {
747
857
  return {
748
858
  file: options.file ? options.file.split(/[/\\]/).pop() : void 0,
749
859
  sources: [options.source ? getRelativePath(options.file || "", options.source) : options.file || ""],
750
860
  sourcesContent: options.includeContent ? [this.original] : void 0,
751
861
  names,
752
- mappings: mappings.raw,
753
- x_google_ignoreList: this.ignoreList ? [sourceIndex] : void 0,
754
- rangeMappings: mappings.rawRangeMappings
862
+ x_google_ignoreList: this.ignoreList ? [0] : void 0
755
863
  };
756
864
  }
757
- /**
758
- * Generates a version 3 sourcemap.
759
- */
760
- generateMap(options) {
761
- return new SourceMap(this.generateDecodedMap(options));
762
- }
763
865
  /** @internal */
764
866
  _ensureindentStr() {
765
867
  if (this.indentStr === void 0) this.indentStr = guessIndent(this.original);
@@ -872,8 +974,14 @@ var MagicString = class MagicString {
872
974
  }
873
975
  /**
874
976
  * Moves the characters from `start` and `end` to `index`.
977
+ *
978
+ * `affinity` controls where the range is anchored at `index`. With the
979
+ * default `'right'`, it is inserted before the content that starts at `index`;
980
+ * with `'left'`, it is inserted after the content that ends at `index`. The
981
+ * two differ only when other content has already been moved to that boundary,
982
+ * mirroring the `appendLeft`/`appendRight` distinction.
875
983
  */
876
- move(start, end, index) {
984
+ move(start, end, index, affinity = "right") {
877
985
  start = start + this.offset;
878
986
  end = end + this.offset;
879
987
  index = index + this.offset;
@@ -893,9 +1001,27 @@ var MagicString = class MagicString {
893
1001
  }
894
1002
  const oldLeft = first.previous;
895
1003
  const oldRight = last.next;
896
- const newRight = this.byStart.get(index);
897
- if (!newRight && last === this.lastChunk) return this;
898
- const newLeft = newRight ? newRight.previous : this.lastChunk;
1004
+ let newLeft;
1005
+ let newRight;
1006
+ if (affinity === "left") {
1007
+ newLeft = this.byEnd.get(index) ?? null;
1008
+ if (!newLeft) {
1009
+ if (first === this.firstChunk) return this;
1010
+ newRight = this.firstChunk;
1011
+ } else {
1012
+ if (newLeft.next === first) return this;
1013
+ newRight = newLeft.next;
1014
+ }
1015
+ } else {
1016
+ newRight = this.byStart.get(index) ?? null;
1017
+ if (!newRight) {
1018
+ if (last === this.lastChunk) return this;
1019
+ newLeft = this.lastChunk;
1020
+ } else {
1021
+ if (newRight.previous === last) return this;
1022
+ newLeft = newRight.previous;
1023
+ }
1024
+ }
899
1025
  if (oldLeft) oldLeft.next = oldRight;
900
1026
  if (oldRight) oldRight.previous = oldLeft;
901
1027
  if (newLeft) newLeft.next = first;
@@ -1020,7 +1146,10 @@ var MagicString = class MagicString {
1020
1146
  }
1021
1147
  /**
1022
1148
  * Removes the characters from `start` to `end` (of the original string, **not** the generated string).
1023
- * Removing the same content twice, or making removals that partially overlap, will cause an error.
1149
+ * Content appended or prepended at positions strictly inside the range is removed with it, while
1150
+ * content attached at `start` or `end` is preserved — use `s.overwrite(start, end, '')` to remove
1151
+ * the range including its edge inserts.
1152
+ * Repeated removals and removals with partially overlapping ranges are allowed.
1024
1153
  */
1025
1154
  remove(start, end) {
1026
1155
  start = start + this.offset;
@@ -1036,9 +1165,9 @@ var MagicString = class MagicString {
1036
1165
  this._split(end);
1037
1166
  let chunk = this.byStart.get(start);
1038
1167
  while (chunk) {
1039
- chunk.intro = "";
1040
- chunk.outro = "";
1041
- chunk.edit("");
1168
+ if (chunk.start > start) chunk.intro = "";
1169
+ if (chunk.end < end) chunk.outro = "";
1170
+ chunk.edit("", false, true);
1042
1171
  chunk = end > chunk.end ? this.byStart.get(chunk.end) : null;
1043
1172
  }
1044
1173
  return this;
@@ -1118,12 +1247,13 @@ var MagicString = class MagicString {
1118
1247
  let result = "";
1119
1248
  let chunk = this.firstChunk;
1120
1249
  while (chunk && (chunk.start > start || chunk.end <= start)) {
1121
- if (chunk.start < end && chunk.end >= end) return result;
1250
+ if (chunk.start < end && chunk.end >= end || end === 0 && chunk.start === 0) return result;
1122
1251
  chunk = chunk.next;
1123
1252
  }
1124
1253
  if (chunk && chunk.edited && chunk.start !== start) throw new MagicStringError(`cannot use edited character ${start} as slice start anchor`);
1125
1254
  const startChunk = chunk;
1126
1255
  while (chunk) {
1256
+ if (end === 0 && chunk.start === 0) break;
1127
1257
  if (chunk.intro && (startChunk !== chunk || chunk.start === start)) result += chunk.intro;
1128
1258
  const containsEnd = chunk.start < end && chunk.end >= end;
1129
1259
  if (containsEnd && chunk.edited && chunk.end !== end) throw new MagicStringError(`cannot use edited character ${end} as slice end anchor`);
@@ -1236,7 +1366,8 @@ var MagicString = class MagicString {
1236
1366
  if (aborted) return true;
1237
1367
  chunk = chunk.previous;
1238
1368
  } while (chunk);
1239
- return false;
1369
+ this.intro = this.intro.replace(rx, "");
1370
+ return this.intro.length > 0;
1240
1371
  }
1241
1372
  /**
1242
1373
  * Trims content matching `charType` (defaults to `\s`, i.e. whitespace) from the end.
@@ -1263,7 +1394,8 @@ var MagicString = class MagicString {
1263
1394
  if (aborted) return true;
1264
1395
  chunk = chunk.next;
1265
1396
  } while (chunk);
1266
- return false;
1397
+ this.outro = this.outro.replace(rx, "");
1398
+ return this.outro.length > 0;
1267
1399
  }
1268
1400
  /**
1269
1401
  * Trims content matching `charType` (defaults to `\s`, i.e. whitespace) from the start.
@@ -1290,6 +1422,28 @@ var MagicString = class MagicString {
1290
1422
  }
1291
1423
  return outputIndex !== this.original.length;
1292
1424
  }
1425
+ /**
1426
+ * Whether the original range [start, end) has had any of its characters
1427
+ * removed. `replace`/`replaceAll` search `original`, so a match can land on
1428
+ * text that is no longer in the output - overwriting it would resurrect the
1429
+ * removed characters, so such matches are skipped instead.
1430
+ *
1431
+ * @internal
1432
+ */
1433
+ _hasRemovedContent(start, end) {
1434
+ let chunk = this.byStart.get(start);
1435
+ if (!chunk) {
1436
+ chunk = this.lastSearchedChunk;
1437
+ const searchForward = start >= chunk.end;
1438
+ while (chunk && !chunk.contains(start)) chunk = searchForward ? this.byStart.get(chunk.end) : this.byEnd.get(chunk.start);
1439
+ if (chunk) this.lastSearchedChunk = chunk;
1440
+ }
1441
+ while (chunk && chunk.start < end) {
1442
+ if (chunk.content === "") return true;
1443
+ chunk = this.byStart.get(chunk.end);
1444
+ }
1445
+ return false;
1446
+ }
1293
1447
  /** @internal */
1294
1448
  _replaceRegexp(searchValue, replacement) {
1295
1449
  function getReplacement(match, str) {
@@ -1298,32 +1452,42 @@ var MagicString = class MagicString {
1298
1452
  }
1299
1453
  const replaceMatch = (match) => {
1300
1454
  /* v8 ignore next 2 -- `match.index` is always defined for matches from `matchAll` */
1301
- if (match.index == null) return;
1455
+ if (match.index == null) return false;
1456
+ if (this._hasRemovedContent(match.index, match.index + match[0].length)) return false;
1302
1457
  const replacement = getReplacement(match, this.original);
1303
- if (replacement === match[0]) return;
1458
+ if (replacement === match[0]) return true;
1304
1459
  if (match[0].length === 0) this.appendRight(match.index, replacement);
1305
1460
  else this.overwrite(match.index, match.index + match[0].length, replacement);
1461
+ return true;
1306
1462
  };
1307
1463
  if (searchValue.global) {
1308
1464
  searchValue.lastIndex = 0;
1309
1465
  for (const match of this.original.matchAll(searchValue)) replaceMatch(match);
1310
1466
  } else {
1311
1467
  const match = this.original.match(searchValue);
1312
- if (match) replaceMatch(match);
1468
+ if (match && !replaceMatch(match)) {
1469
+ const global = new RegExp(searchValue.source, `${searchValue.flags}g`);
1470
+ for (const next of this.original.matchAll(global)) if (replaceMatch(next)) break;
1471
+ }
1313
1472
  }
1314
1473
  return this;
1315
1474
  }
1316
1475
  /** @internal */
1317
1476
  _replaceString(string, replacement) {
1318
1477
  const { original } = this;
1319
- const index = original.indexOf(string);
1320
- if (index !== -1) {
1478
+ let index = original.indexOf(string);
1479
+ while (index !== -1) {
1480
+ if (this._hasRemovedContent(index, index + string.length)) {
1481
+ index = original.indexOf(string, index + string.length);
1482
+ continue;
1483
+ }
1321
1484
  if (typeof replacement === "function") replacement = replacement(string, index, original);
1322
1485
  else replacement = expandReplacement(replacement, string, index, original, [], void 0);
1323
1486
  if (string !== replacement) {
1324
1487
  if (string.length === 0) this.appendRight(index, replacement);
1325
1488
  else this.overwrite(index, index + string.length, replacement);
1326
1489
  }
1490
+ break;
1327
1491
  }
1328
1492
  return this;
1329
1493
  }
@@ -1340,12 +1504,14 @@ var MagicString = class MagicString {
1340
1504
  const stringLength = string.length;
1341
1505
  if (stringLength === 0) {
1342
1506
  for (let index = 0; index <= original.length; index += 1) {
1507
+ if (this._hasRemovedContent(index, index)) continue;
1343
1508
  const _replacement = typeof replacement === "function" ? replacement("", index, original) : expandReplacement(replacement, "", index, original, [], void 0);
1344
1509
  if (_replacement !== "") this.appendRight(index, _replacement);
1345
1510
  }
1346
1511
  return this;
1347
1512
  }
1348
1513
  for (let index = original.indexOf(string); index !== -1; index = original.indexOf(string, index + stringLength)) {
1514
+ if (this._hasRemovedContent(index, index + stringLength)) continue;
1349
1515
  const previous = original.slice(index, index + stringLength);
1350
1516
  const _replacement = typeof replacement === "function" ? replacement(previous, index, original) : expandReplacement(replacement, previous, index, original, [], void 0);
1351
1517
  if (previous !== _replacement) this.overwrite(index, index + stringLength, _replacement);
@@ -1,2 +1,2 @@
1
- import { B as text, I as select, W as isCancel, j as log } from "./dist-Dn6nn2IU.mjs";
1
+ import { B as text, I as select, W as isCancel, j as log } from "./dist-CTBk70IR.mjs";
2
2
  export { isCancel, log, select, text };