@absolutejs/absolute 0.19.0-beta.16 → 0.19.0-beta.18

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/build.js CHANGED
@@ -172396,12 +172396,18 @@ var trySendMessage = (client, messageStr) => {
172396
172396
  state.activeFrameworks.add(data.framework);
172397
172397
  }
172398
172398
  break;
172399
- case "hmr-timing":
172400
- if (data.duration !== undefined) {
172399
+ case "hmr-timing": {
172400
+ const timing = data;
172401
+ if (timing.duration !== undefined) {
172401
172402
  const lastPath = state.lastHmrPath ?? "";
172402
- logHmrUpdate(lastPath, state.lastHmrFramework, data.duration);
172403
+ const breakdown = timing.serverMs !== undefined ? ` (server ${timing.serverMs}ms + fetch ${timing.fetchMs ?? 0}ms + refresh ${timing.refreshMs ?? 0}ms)` : "";
172404
+ logHmrUpdate(lastPath, state.lastHmrFramework, timing.duration);
172405
+ if (breakdown) {
172406
+ console.log(` ${breakdown}`);
172407
+ }
172403
172408
  }
172404
172409
  break;
172410
+ }
172405
172411
  }
172406
172412
  }, handleHMRMessage = (state, client, message) => {
172407
172413
  try {
@@ -202143,7 +202149,6 @@ __export(exports_moduleServer, {
202143
202149
  });
202144
202150
  import { readFileSync as readFileSync9, statSync as statSync2 } from "fs";
202145
202151
  import { dirname as dirname7, extname as extname3, resolve as resolve16, relative as relative6 } from "path";
202146
- var {build: bunBuild5 } = globalThis.Bun;
202147
202152
  var SRC_PREFIX = "/@src/", jsTranspiler2, TRANSPILABLE, REACT_EXTENSIONS, escapeRegex3 = (str) => str.replace(/[.*+?^${}()|[\]\\]/g, "\\$&"), buildImportRewriter = (vendorPaths) => {
202148
202153
  const entries = Object.entries(vendorPaths).sort(([a], [b]) => b.length - a.length);
202149
202154
  if (entries.length === 0)
@@ -202209,26 +202214,30 @@ var SRC_PREFIX = "/@src/", jsTranspiler2, TRANSPILABLE, REACT_EXTENSIONS, escape
202209
202214
  return `${prefix}${SRC_PREFIX}${srcPath.replace(/\\/g, "/")}${suffix}`;
202210
202215
  });
202211
202216
  return result;
202212
- }, transformReactFile = async (filePath, projectRoot, vendorPaths, rewriter) => {
202213
- const buildConfig = {
202214
- entrypoints: [filePath],
202215
- external: Object.keys(vendorPaths),
202216
- format: "esm",
202217
- jsx: { development: true },
202218
- reactFastRefresh: true,
202219
- splitting: false,
202220
- target: "browser",
202221
- throw: false,
202222
- write: false
202223
- };
202224
- const result = await bunBuild5(buildConfig);
202225
- if (!result.success || result.outputs.length === 0)
202226
- return;
202227
- const output = result.outputs[0];
202228
- if (!output)
202229
- return;
202230
- const code = await output.text();
202231
- return rewriteImports2(code, filePath, projectRoot, rewriter);
202217
+ }, COMPONENT_RE, injectRefreshRegistration = (code, filePath) => {
202218
+ const components = [];
202219
+ let match;
202220
+ COMPONENT_RE.lastIndex = 0;
202221
+ while ((match = COMPONENT_RE.exec(code)) !== null) {
202222
+ if (match[1])
202223
+ components.push(match[1]);
202224
+ }
202225
+ if (components.length === 0)
202226
+ return code;
202227
+ const registrations = components.map((name) => `$RefreshReg$(${name}, ${JSON.stringify(name)});`).join(`
202228
+ `);
202229
+ const sigSetup = "var _s = $RefreshSig$();";
202230
+ return `${sigSetup}
202231
+ ${code}
202232
+ ${registrations}
202233
+ `;
202234
+ }, transformReactFile = (filePath, projectRoot, rewriter) => {
202235
+ const raw = readFileSync9(filePath, "utf-8");
202236
+ const transpiled = new Bun.Transpiler({
202237
+ loader: extname3(filePath) === ".jsx" ? "jsx" : "tsx"
202238
+ }).transformSync(raw);
202239
+ const withRefresh = injectRefreshRegistration(transpiled, filePath);
202240
+ return rewriteImports2(withRefresh, filePath, projectRoot, rewriter);
202232
202241
  }, transformPlainFile = (filePath, projectRoot, rewriter) => {
202233
202242
  const raw = readFileSync9(filePath, "utf-8");
202234
202243
  const ext = extname3(filePath);
@@ -202249,7 +202258,7 @@ var SRC_PREFIX = "/@src/", jsTranspiler2, TRANSPILABLE, REACT_EXTENSIONS, escape
202249
202258
  }, createModuleServer = (config) => {
202250
202259
  const { projectRoot, vendorPaths } = config;
202251
202260
  const rewriter = buildImportRewriter(vendorPaths);
202252
- return async (pathname) => {
202261
+ return (pathname) => {
202253
202262
  if (!pathname.startsWith(SRC_PREFIX))
202254
202263
  return;
202255
202264
  const relPath = pathname.slice(SRC_PREFIX.length);
@@ -202278,9 +202287,8 @@ var SRC_PREFIX = "/@src/", jsTranspiler2, TRANSPILABLE, REACT_EXTENSIONS, escape
202278
202287
  const stat2 = statSync2(filePath);
202279
202288
  let content;
202280
202289
  if (REACT_EXTENSIONS.has(ext)) {
202281
- content = await transformReactFile(filePath, projectRoot, vendorPaths, rewriter);
202282
- }
202283
- if (!content) {
202290
+ content = transformReactFile(filePath, projectRoot, rewriter);
202291
+ } else {
202284
202292
  content = transformPlainFile(filePath, projectRoot, rewriter);
202285
202293
  }
202286
202294
  setTransformed(filePath, content, stat2.mtimeMs);
@@ -202304,6 +202312,7 @@ var init_moduleServer = __esm(() => {
202304
202312
  jsTranspiler2 = new Bun.Transpiler({ loader: "js" });
202305
202313
  TRANSPILABLE = new Set([".ts", ".tsx", ".js", ".jsx", ".mjs"]);
202306
202314
  REACT_EXTENSIONS = new Set([".tsx", ".jsx"]);
202315
+ COMPONENT_RE = /(?:export\s+(?:default\s+)?(?:function|const|let|var)\s+)([A-Z][a-zA-Z0-9]*)/g;
202307
202316
  invalidateModule = invalidate;
202308
202317
  SRC_URL_PREFIX = SRC_PREFIX;
202309
202318
  });
@@ -202620,7 +202629,7 @@ var parseErrorLocationFromMessage = (msg) => {
202620
202629
  }
202621
202630
  state.manifest[toPascal(baseName)] = artifact.path;
202622
202631
  }, bundleAngularClient = async (state, clientPaths, buildDir) => {
202623
- const { build: bunBuild6 } = await Promise.resolve(globalThis.Bun);
202632
+ const { build: bunBuild5 } = await Promise.resolve(globalThis.Bun);
202624
202633
  const { generateManifest: generateManifest2 } = await Promise.resolve().then(() => (init_generateManifest(), exports_generateManifest));
202625
202634
  const { getAngularVendorPaths: getAngularVendorPaths2 } = await Promise.resolve().then(() => exports_devVendorPaths);
202626
202635
  const clientRoot = await computeClientRoot(state.resolvedPaths);
@@ -202631,7 +202640,7 @@ var parseErrorLocationFromMessage = (msg) => {
202631
202640
  angVendorPaths = computeAngularVendorPaths2();
202632
202641
  setAngularVendorPaths2(angVendorPaths);
202633
202642
  }
202634
- const clientResult = await bunBuild6({
202643
+ const clientResult = await bunBuild5({
202635
202644
  entrypoints: clientPaths,
202636
202645
  ...angVendorPaths ? { external: Object.keys(angVendorPaths) } : {},
202637
202646
  format: "esm",
@@ -202741,7 +202750,7 @@ var parseErrorLocationFromMessage = (msg) => {
202741
202750
  });
202742
202751
  return reactEntries;
202743
202752
  }, bundleReactClient = async (state, reactEntries, reactIndexesPath, buildDir) => {
202744
- const { build: bunBuild6 } = await Promise.resolve(globalThis.Bun);
202753
+ const { build: bunBuild5 } = await Promise.resolve(globalThis.Bun);
202745
202754
  const { generateManifest: generateManifest2 } = await Promise.resolve().then(() => (init_generateManifest(), exports_generateManifest));
202746
202755
  const { getDevVendorPaths: getDevVendorPaths2 } = await Promise.resolve().then(() => exports_devVendorPaths);
202747
202756
  const { rewriteReactImports: rewriteReactImports2 } = await Promise.resolve().then(() => (init_rewriteReactImports(), exports_rewriteReactImports));
@@ -202762,7 +202771,7 @@ var parseErrorLocationFromMessage = (msg) => {
202762
202771
  force: true,
202763
202772
  recursive: true
202764
202773
  });
202765
- const clientResult = await bunBuild6({
202774
+ const clientResult = await bunBuild5({
202766
202775
  entrypoints: reactEntries,
202767
202776
  format: "esm",
202768
202777
  jsx: { development: true },
@@ -202870,7 +202879,7 @@ var parseErrorLocationFromMessage = (msg) => {
202870
202879
  const svelteFiles = filesToRebuild.filter((file3) => file3.endsWith(".svelte") && resolve19(file3).startsWith(resolve19(svelteDir, "pages")));
202871
202880
  if (svelteFiles.length > 0) {
202872
202881
  const { compileSvelte: compileSvelte2 } = await Promise.resolve().then(() => (init_compileSvelte(), exports_compileSvelte));
202873
- const { build: bunBuild6 } = await Promise.resolve(globalThis.Bun);
202882
+ const { build: bunBuild5 } = await Promise.resolve(globalThis.Bun);
202874
202883
  const clientRoot = await computeClientRoot(state.resolvedPaths);
202875
202884
  const { svelteServerPaths, svelteIndexPaths, svelteClientPaths } = await compileSvelte2(svelteFiles, svelteDir, new Map, true);
202876
202885
  const serverEntries = [...svelteServerPaths];
@@ -202878,7 +202887,7 @@ var parseErrorLocationFromMessage = (msg) => {
202878
202887
  const serverRoot = resolve19(svelteDir, "server");
202879
202888
  const serverOutDir = resolve19(buildDir, basename7(svelteDir));
202880
202889
  const [serverResult, clientResult] = await Promise.all([
202881
- serverEntries.length > 0 ? bunBuild6({
202890
+ serverEntries.length > 0 ? bunBuild5({
202882
202891
  entrypoints: serverEntries,
202883
202892
  external: ["svelte", "svelte/*"],
202884
202893
  format: "esm",
@@ -202888,7 +202897,7 @@ var parseErrorLocationFromMessage = (msg) => {
202888
202897
  target: "bun",
202889
202898
  throw: false
202890
202899
  }) : undefined,
202891
- clientEntries.length > 0 ? bunBuild6({
202900
+ clientEntries.length > 0 ? bunBuild5({
202892
202901
  entrypoints: clientEntries,
202893
202902
  format: "esm",
202894
202903
  naming: "[dir]/[name].[hash].[ext]",
@@ -202946,7 +202955,7 @@ var parseErrorLocationFromMessage = (msg) => {
202946
202955
  const vueFiles = filesToRebuild.filter((file3) => file3.endsWith(".vue") && resolve19(file3).startsWith(resolve19(vueDir, "pages")));
202947
202956
  if (vueFiles.length > 0) {
202948
202957
  const { compileVue: compileVue2 } = await Promise.resolve().then(() => (init_compileVue(), exports_compileVue));
202949
- const { build: bunBuild6 } = await Promise.resolve(globalThis.Bun);
202958
+ const { build: bunBuild5 } = await Promise.resolve(globalThis.Bun);
202950
202959
  const clientRoot = await computeClientRoot(state.resolvedPaths);
202951
202960
  const { vueServerPaths, vueIndexPaths, vueClientPaths } = await compileVue2(vueFiles, vueDir, true);
202952
202961
  const serverEntries = [...vueServerPaths];
@@ -202959,7 +202968,7 @@ var parseErrorLocationFromMessage = (msg) => {
202959
202968
  __VUE_PROD_HYDRATION_MISMATCH_DETAILS__: "true"
202960
202969
  };
202961
202970
  const [serverResult, clientResult] = await Promise.all([
202962
- serverEntries.length > 0 ? bunBuild6({
202971
+ serverEntries.length > 0 ? bunBuild5({
202963
202972
  entrypoints: serverEntries,
202964
202973
  external: ["vue", "vue/*"],
202965
202974
  format: "esm",
@@ -202969,7 +202978,7 @@ var parseErrorLocationFromMessage = (msg) => {
202969
202978
  target: "bun",
202970
202979
  throw: false
202971
202980
  }) : undefined,
202972
- clientEntries.length > 0 ? bunBuild6({
202981
+ clientEntries.length > 0 ? bunBuild5({
202973
202982
  define: vueFeatureFlags2,
202974
202983
  entrypoints: clientEntries,
202975
202984
  format: "esm",
@@ -203894,5 +203903,5 @@ export {
203894
203903
  build
203895
203904
  };
203896
203905
 
203897
- //# debugId=150BC8C8F3176CC564756E2164756E21
203906
+ //# debugId=C9A1342CB6A6BB8964756E2164756E21
203898
203907
  //# sourceMappingURL=build.js.map