@absolutejs/absolute 0.19.0-beta.1078 → 0.19.0-beta.1079

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/cli/index.js CHANGED
@@ -170608,16 +170608,39 @@ ${serverOutput}` : "Server failed to start for pre-rendering";
170608
170608
  var init_prerender = () => {};
170609
170609
 
170610
170610
  // src/build/maskLiterals.ts
170611
- var SENTINEL = "\uE000", isIdentChar = (c) => /[A-Za-z0-9_$]/.test(c), REGEX_OK_AFTER_CHAR, REGEX_OK_AFTER_WORD, maskLiterals = (src) => {
170611
+ var SENTINEL, isIdentChar = (c) => /[A-Za-z0-9_$]/.test(c), REGEX_OK_AFTER_CHAR, REGEX_OK_AFTER_WORD, maskLiterals = (src) => {
170612
170612
  const n = src.length;
170613
170613
  const pieces = [];
170614
170614
  let out = "";
170615
170615
  let i = 0;
170616
170616
  let prevChar = "";
170617
170617
  let prevWord = "";
170618
+ let prevWasSpace = false;
170619
+ let wordBeforeParen = "";
170618
170620
  const mask = (text) => {
170619
170621
  out += SENTINEL + pieces.length + SENTINEL;
170620
170622
  pieces.push(text);
170623
+ prevChar = ")";
170624
+ prevWord = "";
170625
+ prevWasSpace = false;
170626
+ };
170627
+ const endOfString = (start) => {
170628
+ const q = src[start];
170629
+ let j = start + 1;
170630
+ while (j < n) {
170631
+ const c = src[j];
170632
+ if (c === "\\") {
170633
+ j += 2;
170634
+ continue;
170635
+ }
170636
+ if (c === q)
170637
+ return j + 1;
170638
+ if (c === `
170639
+ `)
170640
+ return j;
170641
+ j++;
170642
+ }
170643
+ return j;
170621
170644
  };
170622
170645
  const endOfInterp = (start) => {
170623
170646
  let j = start;
@@ -170673,24 +170696,6 @@ var SENTINEL = "\uE000", isIdentChar = (c) => /[A-Za-z0-9_$]/.test(c), REGEX_OK_
170673
170696
  }
170674
170697
  return j;
170675
170698
  }
170676
- function endOfString(start) {
170677
- const q = src[start];
170678
- let j = start + 1;
170679
- while (j < n) {
170680
- const c = src[j];
170681
- if (c === "\\") {
170682
- j += 2;
170683
- continue;
170684
- }
170685
- if (c === q)
170686
- return j + 1;
170687
- if (c === `
170688
- `)
170689
- return j;
170690
- j++;
170691
- }
170692
- return j;
170693
- }
170694
170699
  const endOfRegex = (start) => {
170695
170700
  let j = start + 1;
170696
170701
  let inClass = false;
@@ -170728,8 +170733,6 @@ var SENTINEL = "\uE000", isIdentChar = (c) => /[A-Za-z0-9_$]/.test(c), REGEX_OK_
170728
170733
  `)
170729
170734
  i++;
170730
170735
  mask(src.slice(s, i));
170731
- prevChar = "";
170732
- prevWord = "";
170733
170736
  continue;
170734
170737
  }
170735
170738
  if (c === "/" && c2 === "*") {
@@ -170747,16 +170750,20 @@ var SENTINEL = "\uE000", isIdentChar = (c) => /[A-Za-z0-9_$]/.test(c), REGEX_OK_
170747
170750
  const end = endOfTemplate(i);
170748
170751
  mask(src.slice(i, end));
170749
170752
  i = end;
170750
- prevChar = "`";
170751
- prevWord = "";
170752
170753
  continue;
170753
170754
  }
170754
170755
  if (c === '"' || c === "'") {
170755
170756
  const end = endOfString(i);
170756
- out += src.slice(i, end);
170757
+ const isSpecifier = prevWord === "from" || prevWord === "import" || prevChar === "(" && (wordBeforeParen === "import" || wordBeforeParen === "require");
170758
+ if (isSpecifier) {
170759
+ out += src.slice(i, end);
170760
+ prevChar = '"';
170761
+ prevWord = "";
170762
+ prevWasSpace = false;
170763
+ } else {
170764
+ mask(src.slice(i, end));
170765
+ }
170757
170766
  i = end;
170758
- prevChar = '"';
170759
- prevWord = "";
170760
170767
  continue;
170761
170768
  }
170762
170769
  if (c === "/" && (prevChar === "" || REGEX_OK_AFTER_CHAR.has(prevChar) || REGEX_OK_AFTER_WORD.has(prevWord))) {
@@ -170764,25 +170771,36 @@ var SENTINEL = "\uE000", isIdentChar = (c) => /[A-Za-z0-9_$]/.test(c), REGEX_OK_
170764
170771
  if (end > 0) {
170765
170772
  out += src.slice(i, end);
170766
170773
  i = end;
170767
- prevChar = "/";
170774
+ prevChar = ")";
170768
170775
  prevWord = "";
170776
+ prevWasSpace = false;
170769
170777
  continue;
170770
170778
  }
170771
170779
  }
170772
170780
  out += c;
170773
170781
  i++;
170774
170782
  if (c === " " || c === "\t" || c === "\r" || c === `
170775
- `)
170783
+ `) {
170784
+ prevWasSpace = true;
170776
170785
  continue;
170777
- const wasIdent = isIdentChar(prevChar);
170786
+ }
170787
+ if (isIdentChar(c)) {
170788
+ const contiguous = isIdentChar(prevChar) && !prevWasSpace;
170789
+ prevWord = contiguous ? prevWord + c : c;
170790
+ } else {
170791
+ if (c === "(")
170792
+ wordBeforeParen = prevWord;
170793
+ prevWord = "";
170794
+ }
170778
170795
  prevChar = c;
170779
- prevWord = isIdentChar(c) ? wasIdent ? prevWord + c : c : "";
170796
+ prevWasSpace = false;
170780
170797
  }
170781
170798
  const restoreRegex = new RegExp(`${SENTINEL}(\\d+)${SENTINEL}`, "g");
170782
170799
  const restore = (rewritten) => rewritten.replace(restoreRegex, (_m, d) => pieces[Number(d)] ?? "");
170783
170800
  return { masked: out, restore };
170784
170801
  };
170785
170802
  var init_maskLiterals = __esm(() => {
170803
+ SENTINEL = String.fromCharCode(57344);
170786
170804
  REGEX_OK_AFTER_CHAR = new Set([
170787
170805
  "(",
170788
170806
  ",",
@@ -177252,7 +177270,8 @@ var cliTag4 = (color, message) => `\x1B[2m${formatTimestamp()}\x1B[0m ${color}[c
177252
177270
  continue;
177253
177271
  seen.add(filePath);
177254
177272
  const source = readFileSync33(filePath, "utf-8");
177255
- const rewritten = source.replace(MODULE_SPECIFIER_RE, (match, prefix, quote, specifier) => {
177273
+ const { masked, restore } = maskLiterals(source);
177274
+ const rewrittenMasked = masked.replace(MODULE_SPECIFIER_RE, (match, prefix, quote, specifier) => {
177256
177275
  if (typeof specifier === "string" && specifier.startsWith(".")) {
177257
177276
  enqueue(resolveRuntimeJsFile(resolve21(dirname14(filePath), specifier)));
177258
177277
  return match;
@@ -177268,6 +177287,7 @@ var cliTag4 = (color, message) => `\x1B[2m${formatTimestamp()}\x1B[0m ${color}[c
177268
177287
  enqueue(target);
177269
177288
  return `${prefix}${quote}${ensureRelativeModuleSpecifier(filePath, target)}${quote}`;
177270
177289
  });
177290
+ const rewritten = restore(rewrittenMasked);
177271
177291
  if (rewritten !== source) {
177272
177292
  writeFileSync18(filePath, rewritten);
177273
177293
  }
@@ -177930,6 +177950,7 @@ console.log(\`
177930
177950
  };
177931
177951
  var init_compile = __esm(() => {
177932
177952
  init_externalAssetPlugin();
177953
+ init_maskLiterals();
177933
177954
  init_islandEntries();
177934
177955
  init_islandRegistryTransform();
177935
177956
  init_constants();
package/dist/index.js CHANGED
@@ -7238,16 +7238,39 @@ var init_islandSsr = __esm(() => {
7238
7238
  });
7239
7239
 
7240
7240
  // src/build/maskLiterals.ts
7241
- var SENTINEL = "\uE000", isIdentChar = (c) => /[A-Za-z0-9_$]/.test(c), REGEX_OK_AFTER_CHAR, REGEX_OK_AFTER_WORD, maskLiterals = (src) => {
7241
+ var SENTINEL, isIdentChar = (c) => /[A-Za-z0-9_$]/.test(c), REGEX_OK_AFTER_CHAR, REGEX_OK_AFTER_WORD, maskLiterals = (src) => {
7242
7242
  const n = src.length;
7243
7243
  const pieces = [];
7244
7244
  let out = "";
7245
7245
  let i = 0;
7246
7246
  let prevChar = "";
7247
7247
  let prevWord = "";
7248
+ let prevWasSpace = false;
7249
+ let wordBeforeParen = "";
7248
7250
  const mask = (text) => {
7249
7251
  out += SENTINEL + pieces.length + SENTINEL;
7250
7252
  pieces.push(text);
7253
+ prevChar = ")";
7254
+ prevWord = "";
7255
+ prevWasSpace = false;
7256
+ };
7257
+ const endOfString = (start) => {
7258
+ const q2 = src[start];
7259
+ let j2 = start + 1;
7260
+ while (j2 < n) {
7261
+ const c = src[j2];
7262
+ if (c === "\\") {
7263
+ j2 += 2;
7264
+ continue;
7265
+ }
7266
+ if (c === q2)
7267
+ return j2 + 1;
7268
+ if (c === `
7269
+ `)
7270
+ return j2;
7271
+ j2++;
7272
+ }
7273
+ return j2;
7251
7274
  };
7252
7275
  const endOfInterp = (start) => {
7253
7276
  let j2 = start;
@@ -7303,24 +7326,6 @@ var SENTINEL = "\uE000", isIdentChar = (c) => /[A-Za-z0-9_$]/.test(c), REGEX_OK_
7303
7326
  }
7304
7327
  return j2;
7305
7328
  }
7306
- function endOfString(start) {
7307
- const q2 = src[start];
7308
- let j2 = start + 1;
7309
- while (j2 < n) {
7310
- const c = src[j2];
7311
- if (c === "\\") {
7312
- j2 += 2;
7313
- continue;
7314
- }
7315
- if (c === q2)
7316
- return j2 + 1;
7317
- if (c === `
7318
- `)
7319
- return j2;
7320
- j2++;
7321
- }
7322
- return j2;
7323
- }
7324
7329
  const endOfRegex = (start) => {
7325
7330
  let j2 = start + 1;
7326
7331
  let inClass = false;
@@ -7358,8 +7363,6 @@ var SENTINEL = "\uE000", isIdentChar = (c) => /[A-Za-z0-9_$]/.test(c), REGEX_OK_
7358
7363
  `)
7359
7364
  i++;
7360
7365
  mask(src.slice(s2, i));
7361
- prevChar = "";
7362
- prevWord = "";
7363
7366
  continue;
7364
7367
  }
7365
7368
  if (c === "/" && c2 === "*") {
@@ -7377,16 +7380,20 @@ var SENTINEL = "\uE000", isIdentChar = (c) => /[A-Za-z0-9_$]/.test(c), REGEX_OK_
7377
7380
  const end = endOfTemplate(i);
7378
7381
  mask(src.slice(i, end));
7379
7382
  i = end;
7380
- prevChar = "`";
7381
- prevWord = "";
7382
7383
  continue;
7383
7384
  }
7384
7385
  if (c === '"' || c === "'") {
7385
7386
  const end = endOfString(i);
7386
- out += src.slice(i, end);
7387
+ const isSpecifier = prevWord === "from" || prevWord === "import" || prevChar === "(" && (wordBeforeParen === "import" || wordBeforeParen === "require");
7388
+ if (isSpecifier) {
7389
+ out += src.slice(i, end);
7390
+ prevChar = '"';
7391
+ prevWord = "";
7392
+ prevWasSpace = false;
7393
+ } else {
7394
+ mask(src.slice(i, end));
7395
+ }
7387
7396
  i = end;
7388
- prevChar = '"';
7389
- prevWord = "";
7390
7397
  continue;
7391
7398
  }
7392
7399
  if (c === "/" && (prevChar === "" || REGEX_OK_AFTER_CHAR.has(prevChar) || REGEX_OK_AFTER_WORD.has(prevWord))) {
@@ -7394,25 +7401,36 @@ var SENTINEL = "\uE000", isIdentChar = (c) => /[A-Za-z0-9_$]/.test(c), REGEX_OK_
7394
7401
  if (end > 0) {
7395
7402
  out += src.slice(i, end);
7396
7403
  i = end;
7397
- prevChar = "/";
7404
+ prevChar = ")";
7398
7405
  prevWord = "";
7406
+ prevWasSpace = false;
7399
7407
  continue;
7400
7408
  }
7401
7409
  }
7402
7410
  out += c;
7403
7411
  i++;
7404
7412
  if (c === " " || c === "\t" || c === "\r" || c === `
7405
- `)
7413
+ `) {
7414
+ prevWasSpace = true;
7406
7415
  continue;
7407
- const wasIdent = isIdentChar(prevChar);
7416
+ }
7417
+ if (isIdentChar(c)) {
7418
+ const contiguous = isIdentChar(prevChar) && !prevWasSpace;
7419
+ prevWord = contiguous ? prevWord + c : c;
7420
+ } else {
7421
+ if (c === "(")
7422
+ wordBeforeParen = prevWord;
7423
+ prevWord = "";
7424
+ }
7408
7425
  prevChar = c;
7409
- prevWord = isIdentChar(c) ? wasIdent ? prevWord + c : c : "";
7426
+ prevWasSpace = false;
7410
7427
  }
7411
7428
  const restoreRegex = new RegExp(`${SENTINEL}(\\d+)${SENTINEL}`, "g");
7412
7429
  const restore = (rewritten) => rewritten.replace(restoreRegex, (_m, d2) => pieces[Number(d2)] ?? "");
7413
7430
  return { masked: out, restore };
7414
7431
  };
7415
7432
  var init_maskLiterals = __esm(() => {
7433
+ SENTINEL = String.fromCharCode(57344);
7416
7434
  REGEX_OK_AFTER_CHAR = new Set([
7417
7435
  "(",
7418
7436
  ",",
@@ -46957,5 +46975,5 @@ export {
46957
46975
  ANGULAR_INIT_TIMEOUT_MS
46958
46976
  };
46959
46977
 
46960
- //# debugId=C3D862B3C898113964756E2164756E21
46978
+ //# debugId=8D7748D6ECBDDF8764756E2164756E21
46961
46979
  //# sourceMappingURL=index.js.map