@absolutejs/absolute 0.20.0-beta.116 → 0.20.0-beta.118

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 (31) hide show
  1. package/CHANGELOG.md +17 -0
  2. package/changelog.json +34 -1
  3. package/dist/angular/components/core/streamingSlotRegistrar.js +1 -1
  4. package/dist/angular/components/core/streamingSlotRegistry.js +2 -2
  5. package/dist/build.js +12 -10
  6. package/dist/build.js.map +7 -6
  7. package/dist/cli/{androidEmulatorController-nybhzc6c.js → androidEmulatorController-v6chbhem.js} +2 -2
  8. package/dist/cli/{androidNativeWatcher-2930tb8c.js → androidNativeWatcher-mgqws6ag.js} +2 -2
  9. package/dist/cli/{compile-kbhxgjat.js → compile-5m830csy.js} +2 -2
  10. package/dist/cli/{dev-daa7tdht.js → dev-ww30tdrv.js} +10 -7
  11. package/dist/cli/{expoProject-kcfcmfba.js → expoProject-w2pzjwnx.js} +1 -1
  12. package/dist/cli/{index-28pbrd3q.js → index-18q9qc7f.js} +15 -2
  13. package/dist/cli/{index-vjepnxr0.js → index-5268nwjx.js} +1 -1
  14. package/dist/cli/{index-5skbydh0.js → index-hneb973j.js} +1 -1
  15. package/dist/cli/{index-82wpxhvv.js → index-k8r00xh9.js} +1 -1
  16. package/dist/cli/{index-bhcxtf1x.js → index-nxcwg9ma.js} +268 -141
  17. package/dist/cli/{index-qr0pc777.js → index-wtyg9cy0.js} +1 -1
  18. package/dist/cli/index.js +5 -5
  19. package/dist/cli/{iosNativeWatcher-t6gv0p1w.js → iosNativeWatcher-8w1gawg4.js} +2 -2
  20. package/dist/cli/{iosSimulatorController-5n2a9fxv.js → iosSimulatorController-5vhqvhg6.js} +2 -2
  21. package/dist/cli/{mobile-03zwncxx.js → mobile-21vsmrjd.js} +28 -39
  22. package/dist/cli/{start-r606d5v9.js → start-3bhf56tj.js} +3 -3
  23. package/dist/index.js +15 -12
  24. package/dist/index.js.map +8 -7
  25. package/dist/mobile/index.js +207 -100
  26. package/dist/mobile/index.js.map +6 -5
  27. package/dist/mobile/remoteMacAgentEntry.js +251 -184
  28. package/dist/src/dev/serverEntryCopies.d.ts +2 -0
  29. package/dist/src/mobile/capacitorProject.d.ts +4 -0
  30. package/dist/src/mobile/nativePackages.d.ts +10 -0
  31. package/package.json +5 -3
@@ -1,7 +1,7 @@
1
1
  // @bun
2
2
  import {
3
3
  writeAbsoluteCapacitorConfig
4
- } from "./index-28pbrd3q.js";
4
+ } from "./index-18q9qc7f.js";
5
5
  import {
6
6
  ABSOLUTE_ANDROID_AVD_NAME,
7
7
  absoluteManagedAndroidSdkRoot,
package/dist/cli/index.js CHANGED
@@ -58,7 +58,7 @@ if (command === "dev") {
58
58
  }
59
59
  const positionalArgs = stripNamedArgs("--config", "--android-device", "--ios-device").filter((arg) => arg !== "--no-mobile" && arg !== "--eager");
60
60
  const serverEntry = positionalArgs[0] ?? DEFAULT_SERVER_ENTRY;
61
- const { dev } = await import("./dev-daa7tdht.js");
61
+ const { dev } = await import("./dev-ww30tdrv.js");
62
62
  await dev(serverEntry, configPath, {
63
63
  androidDevice,
64
64
  eager: args.includes("--eager"),
@@ -71,7 +71,7 @@ if (command === "dev") {
71
71
  const configPath = parseNamedArg("--config");
72
72
  const positionalArgs = stripNamedArgs("--outdir", "--config").filter((arg) => arg !== "--prebuilt");
73
73
  const serverEntry = positionalArgs[0] ?? DEFAULT_SERVER_ENTRY;
74
- const { start } = await import("./start-r606d5v9.js");
74
+ const { start } = await import("./start-3bhf56tj.js");
75
75
  await start(serverEntry, outdir, configPath, {
76
76
  prebuilt: args.includes("--prebuilt")
77
77
  });
@@ -81,7 +81,7 @@ if (command === "dev") {
81
81
  const configPath = parseNamedArg("--config");
82
82
  const positionalArgs = stripNamedArgs("--outdir", "--config");
83
83
  const serverEntry = positionalArgs[0] ?? DEFAULT_SERVER_ENTRY;
84
- const { start } = await import("./start-r606d5v9.js");
84
+ const { start } = await import("./start-3bhf56tj.js");
85
85
  await start(serverEntry, outdir, configPath, { prepareOnly: true });
86
86
  } else if (command === "build") {
87
87
  sendTelemetryEvent("cli:command", { command });
@@ -197,13 +197,13 @@ if (command === "dev") {
197
197
  const configPath = parseNamedArg("--config");
198
198
  const positionalArgs = stripNamedArgs("--outdir", "--outfile", "--config");
199
199
  const serverEntry = positionalArgs[0] ?? DEFAULT_SERVER_ENTRY;
200
- const { compile } = await import("./compile-kbhxgjat.js");
200
+ const { compile } = await import("./compile-5m830csy.js");
201
201
  await compile(serverEntry, outdir, outfile, configPath);
202
202
  } else if (command === "mobile") {
203
203
  sendTelemetryEvent("cli:command", {
204
204
  command: `mobile:${workspaceCommand ?? "unknown"}`
205
205
  });
206
- const { runMobile } = await import("./mobile-03zwncxx.js");
206
+ const { runMobile } = await import("./mobile-21vsmrjd.js");
207
207
  try {
208
208
  await runMobile(args);
209
209
  } catch (error) {
@@ -1,10 +1,10 @@
1
1
  // @bun
2
2
  import {
3
3
  fingerprintAbsoluteIosDevProject
4
- } from "./index-5skbydh0.js";
4
+ } from "./index-hneb973j.js";
5
5
  import"./index-q1d4ns4n.js";
6
6
  import"./index-j66p8hn5.js";
7
- import"./index-28pbrd3q.js";
7
+ import"./index-18q9qc7f.js";
8
8
  import"./index-knt92dm8.js";
9
9
  import"./index-t84wxk1p.js";
10
10
  import"./index-wtfnv3n2.js";
@@ -10,10 +10,10 @@ import {
10
10
  redactAbsoluteIosLog,
11
11
  repairAbsoluteIosDevSession,
12
12
  startAbsoluteIosDevSession
13
- } from "./index-5skbydh0.js";
13
+ } from "./index-hneb973j.js";
14
14
  import"./index-q1d4ns4n.js";
15
15
  import"./index-j66p8hn5.js";
16
- import"./index-28pbrd3q.js";
16
+ import"./index-18q9qc7f.js";
17
17
  import"./index-knt92dm8.js";
18
18
  import"./index-t84wxk1p.js";
19
19
  import"./index-wtfnv3n2.js";
@@ -7,12 +7,12 @@ import {
7
7
  } from "./index-zh6hhrwy.js";
8
8
  import {
9
9
  start
10
- } from "./index-vjepnxr0.js";
10
+ } from "./index-5268nwjx.js";
11
11
  import {
12
12
  ABSOLUTE_MOBILE_CLIENT_MANIFEST_FORMAT,
13
13
  ABSOLUTE_MOBILE_PAGE_PROTOCOL_VERSION,
14
14
  resolveAbsoluteMobileRoute
15
- } from "./index-82wpxhvv.js";
15
+ } from "./index-k8r00xh9.js";
16
16
  import"./index-bzs19w3r.js";
17
17
  import"./index-s2tazax7.js";
18
18
  import {
@@ -36,7 +36,7 @@ import {
36
36
  ABSOLUTE_IOS_SIMULATOR_NAME,
37
37
  parseIosSimulators,
38
38
  repairAbsoluteIosDevSession
39
- } from "./index-5skbydh0.js";
39
+ } from "./index-hneb973j.js";
40
40
  import {
41
41
  buildAbsoluteIosRelease,
42
42
  requireAbsoluteIosReleaseMetadata,
@@ -60,13 +60,19 @@ import {
60
60
  import {
61
61
  ABSOLUTE_CAPACITOR_ASSETS_SPEC,
62
62
  ABSOLUTE_MOBILE_UPDATE_FORMAT,
63
+ ABSOLUTE_NATIVE_EXACT_PACKAGES,
64
+ CAPACITOR_PACKAGE_SPECS,
65
+ CAPACITOR_SYNC_PACKAGE_SPECS,
63
66
  absoluteDeviceNativeRequirements,
64
67
  absoluteMobileUpdateSigningPayload,
65
68
  assertAbsoluteDeviceCapabilityPackages,
69
+ assertNativePackageVersions,
66
70
  canonicalizeAbsoluteMobileUpdate,
67
71
  discoverAbsoluteSyncSchema,
68
72
  generateAbsoluteCapacitorBranding,
69
73
  inspectAbsoluteMobileBranding,
74
+ packageNameFromSpec,
75
+ packagesNeedingExactInstall,
70
76
  parseAbsoluteMobileUpdateManifest,
71
77
  renderAbsoluteMobileBrandingPreview,
72
78
  resolveAbsoluteDeviceCapabilityPlan,
@@ -74,7 +80,7 @@ import {
74
80
  syncAbsoluteExpoWebAssets,
75
81
  unsignedAbsoluteMobileUpdate,
76
82
  writeAbsoluteExpoProject
77
- } from "./index-bhcxtf1x.js";
83
+ } from "./index-nxcwg9ma.js";
78
84
  import {
79
85
  buildAbsoluteExpoAndroidWslBundle
80
86
  } from "./index-28nxv57v.js";
@@ -90,10 +96,11 @@ import {
90
96
  fingerprintAbsoluteAndroidNativeProject,
91
97
  parseAdbDevices,
92
98
  repairAbsoluteAndroidDevSession
93
- } from "./index-qr0pc777.js";
99
+ } from "./index-wtyg9cy0.js";
94
100
  import {
101
+ prepareAbsoluteCapacitorInitialization,
95
102
  writeAbsoluteCapacitorConfig
96
- } from "./index-28pbrd3q.js";
103
+ } from "./index-18q9qc7f.js";
97
104
  import {
98
105
  ABSOLUTE_ANDROID_AVD_NAME,
99
106
  absoluteManagedAndroidSdkRoot,
@@ -24998,23 +25005,6 @@ var CAPACITOR_PACKAGES = [
24998
25005
  "@absolutejs/devices",
24999
25006
  "@absolutejs/devices-capacitor"
25000
25007
  ];
25001
- var CAPACITOR_PACKAGE_SPECS = [
25002
- "@capacitor/core@8.5.0",
25003
- "@capacitor/app@8.1.1",
25004
- "@capacitor/browser@8.0.4",
25005
- "@capacitor/network@8.0.1",
25006
- "@capacitor/preferences@8.0.1",
25007
- "@capacitor/cli@8.5.0",
25008
- "@capacitor/android@8.5.0",
25009
- "@capacitor/ios@8.5.0",
25010
- "@absolutejs/devices@0.5.0",
25011
- "@absolutejs/devices-capacitor@0.6.1"
25012
- ];
25013
- var CAPACITOR_SYNC_PACKAGE_SPECS = [
25014
- "@absolutejs/sync-capacitor@0.9.1",
25015
- "@capacitor-community/sqlite@8.1.1"
25016
- ];
25017
- var packageNameFromSpec = (spec) => spec.slice(0, spec.lastIndexOf("@"));
25018
25008
  var directProjectPackages = async (projectRoot) => {
25019
25009
  const manifest = JSON.parse(await readFile23(join19(projectRoot, "package.json"), "utf8"));
25020
25010
  if (!isRecord11(manifest))
@@ -25028,15 +25018,6 @@ var directProjectPackages = async (projectRoot) => {
25028
25018
  }
25029
25019
  return names;
25030
25020
  };
25031
- var resolvedPackageVersion = async (projectRoot, packageName) => {
25032
- try {
25033
- const manifest = JSON.parse(await readFile23(join19(projectRoot, "node_modules", packageName, "package.json"), "utf8"));
25034
- return isRecord11(manifest) && typeof manifest.version === "string" ? manifest.version : undefined;
25035
- } catch {
25036
- return;
25037
- }
25038
- };
25039
- var exactVersionFromSpec = (spec) => spec.slice(spec.lastIndexOf("@") + 1);
25040
25021
  var installApprovedPackages = async (projectRoot, args, message, specs, dev = false) => {
25041
25022
  if (specs.length === 0)
25042
25023
  return;
@@ -25046,11 +25027,6 @@ var installApprovedPackages = async (projectRoot, args, message, specs, dev = fa
25046
25027
  if (!installPackages(projectRoot, specs, dev))
25047
25028
  throw new TypeError("Failed to install the AbsoluteJS mobile toolchain.");
25048
25029
  };
25049
- var packagesNeedingExactInstall = async (projectRoot, specs, installed, exactPackages) => (await Promise.all(specs.map(async (spec) => {
25050
- const name = packageNameFromSpec(spec);
25051
- const needsInstall = !installed.has(name) || exactPackages.has(name) && await resolvedPackageVersion(projectRoot, name) !== exactVersionFromSpec(spec);
25052
- return needsInstall ? spec : undefined;
25053
- }))).filter((spec) => spec !== undefined);
25054
25030
  var ensureCapacitorPackages = async (projectRoot, args, mobile) => {
25055
25031
  const specs = [
25056
25032
  ...CAPACITOR_PACKAGE_SPECS,
@@ -25058,12 +25034,14 @@ var ensureCapacitorPackages = async (projectRoot, args, mobile) => {
25058
25034
  ...projectUsesAbsoluteSync(projectRoot) ? CAPACITOR_SYNC_PACKAGE_SPECS : []
25059
25035
  ];
25060
25036
  const installed = await directProjectPackages(projectRoot);
25061
- const missing = await packagesNeedingExactInstall(projectRoot, specs, installed, new Set(["@absolutejs/devices", "@absolutejs/devices-capacitor"]));
25037
+ const missing = await packagesNeedingExactInstall(projectRoot, specs, installed, ABSOLUTE_NATIVE_EXACT_PACKAGES);
25062
25038
  await installApprovedPackages(projectRoot, args, "Capacitor and the AbsoluteJS native adapters are missing or outdated. Install the tested mobile toolchain now?", missing);
25039
+ await assertNativePackageVersions(projectRoot, specs, ABSOLUTE_NATIVE_EXACT_PACKAGES);
25063
25040
  const capabilityPlan = resolveAbsoluteDeviceCapabilityPlan(projectRoot);
25064
25041
  const directCapabilityPackages = await directProjectPackages(projectRoot);
25065
25042
  const capabilityPackages = await packagesNeedingExactInstall(projectRoot, capabilityPlan.requiredPackages, directCapabilityPackages, new Set(capabilityPlan.requiredPackages.map(packageNameFromSpec)));
25066
25043
  await installApprovedPackages(projectRoot, args, `AbsoluteJS detected native device capabilities (${capabilityPlan.capabilities.join(", ")}). Install only their required Capacitor plugins now?`, capabilityPackages);
25044
+ await assertNativePackageVersions(projectRoot, capabilityPlan.requiredPackages, new Set(capabilityPlan.requiredPackages.map(packageNameFromSpec)));
25067
25045
  if (mobile?.branding) {
25068
25046
  const installedBrandingPackages = await directProjectPackages(projectRoot);
25069
25047
  const brandingPackages = await packagesNeedingExactInstall(projectRoot, [ABSOLUTE_CAPACITOR_ASSETS_SPEC], installedBrandingPackages, new Set(["@capacitor/assets"]));
@@ -25292,7 +25270,8 @@ var initialize = async (args) => {
25292
25270
  console.log(`${generated.changed ? "Generated" : "Verified"} ${generated.path}`);
25293
25271
  if (args.includes("--no-native"))
25294
25272
  return;
25295
- await runCapacitorForPlatforms(projectRoot, "add", mobile.platforms);
25273
+ const platforms = await prepareAbsoluteCapacitorInitialization(mobile);
25274
+ await platforms.reduce((pending, platform2) => pending.then(() => runCapacitor(projectRoot, [platform2.command, platform2.platform])), Promise.resolve());
25296
25275
  if (mobile.branding)
25297
25276
  await generateAbsoluteCapacitorBranding(mobile, projectRoot);
25298
25277
  await applyAbsoluteNativeDeepLinks(mobile);
@@ -27415,6 +27394,11 @@ var testAndroidRelease = async (args, mobile, projectRoot) => {
27415
27394
  }
27416
27395
  };
27417
27396
  var testAndroid = async (args) => {
27397
+ if (args.includes("--release")) {
27398
+ const requested = valueAfter(args, "--release");
27399
+ if (!requested || requested.startsWith("--"))
27400
+ throw new TypeError("mobile test android --release requires a release directory or release.json path.");
27401
+ }
27418
27402
  const { mobile, projectRoot } = await loadMobile(valueAfter(args, "--config"));
27419
27403
  if (args.includes("--release")) {
27420
27404
  return testAndroidRelease(args, mobile, projectRoot);
@@ -28139,6 +28123,11 @@ var testIosRelease = async (args, mobile, projectRoot) => {
28139
28123
  }
28140
28124
  };
28141
28125
  var testIos = async (args) => {
28126
+ if (args.includes("--release")) {
28127
+ const requested = valueAfter(args, "--release");
28128
+ if (!requested || requested.startsWith("--"))
28129
+ throw new TypeError("mobile test ios --release requires a release directory or release.json path.");
28130
+ }
28142
28131
  const { mobile, projectRoot } = await loadMobile(valueAfter(args, "--config"));
28143
28132
  if (args.includes("--release"))
28144
28133
  return testIosRelease(args, mobile, projectRoot);
@@ -1,8 +1,8 @@
1
1
  // @bun
2
2
  import {
3
3
  start
4
- } from "./index-vjepnxr0.js";
5
- import"./index-82wpxhvv.js";
4
+ } from "./index-5268nwjx.js";
5
+ import"./index-k8r00xh9.js";
6
6
  import"./index-bzs19w3r.js";
7
7
  import"./index-s2tazax7.js";
8
8
  import"./index-fc9vxw56.js";
@@ -11,7 +11,7 @@ import"./index-06cmrcdq.js";
11
11
  import"./index-9kwmb3c0.js";
12
12
  import"./index-w5vswatm.js";
13
13
  import"./index-exdd5k1g.js";
14
- import"./index-bhcxtf1x.js";
14
+ import"./index-nxcwg9ma.js";
15
15
  import"./index-ar4gz15x.js";
16
16
  import"./index-t84wxk1p.js";
17
17
  import"./index-wtfnv3n2.js";
package/dist/index.js CHANGED
@@ -16831,7 +16831,7 @@ var replaceAssetRef = (match, prefix, dir, name, ext, suffix, manifest, filePath
16831
16831
  return `${prefix}${newPath}${suffix}`;
16832
16832
  }, updateAssetPaths = async (manifest, directory) => {
16833
16833
  const htmlFiles = await scanEntryPoints(directory, "*.html");
16834
- const assetRegex = /((?:<script[^>]+src=|<link[^>]*?rel=["']stylesheet["'][^>]*?href=)["'])(?!\/?(?:.*\/)?htmx\.min\.js)(\/?(?:.*\/)?)([^./"']+)(?:\.[^."'/]+)?(\.(?:js|ts|css))(["'][^>]*>)/g;
16834
+ const assetRegex = /((?:<script[^>]+src=|<link[^>]*?rel=["']stylesheet["'][^>]*?href=)["'])(?!\/?(?:[^"'<>]*\/)?htmx\.min\.js)(\/?(?:[^"'<>]*\/)?)([^./"']+)(?:\.[^."'/]+)?(\.(?:js|ts|css))(["'][^>]*>)/g;
16835
16835
  const tasks = htmlFiles.map(async (filePath) => {
16836
16836
  const original = await readFile6(filePath, "utf8");
16837
16837
  const updated = original.replace(assetRegex, (match, prefix, dir, name, ext, suffix) => replaceAssetRef(match, prefix, dir, name, ext, suffix, manifest, filePath));
@@ -25877,7 +25877,7 @@ var init_compileAngular = __esm(() => {
25877
25877
 
25878
25878
  // node_modules/content-tag/pkg/node/content_tag.cjs
25879
25879
  var require_content_tag = __commonJS(function(exports, module) {
25880
- var __dirname = "/home/alexkahn/abs/absolutejs/node_modules/content-tag/pkg/node";
25880
+ var __dirname = "/tmp/absolute-create-release/node_modules/content-tag/pkg/node";
25881
25881
  var imports = {};
25882
25882
  imports["__wbindgen_placeholder__"] = exports;
25883
25883
  var wasm;
@@ -28654,7 +28654,6 @@ ${offenders.map((o3) => ` \u2022 ${o3}`).join(`
28654
28654
  logWarn(`Manifest key collision: "${key}" was "${previousPath}" and will be overwritten by "${nextPath}". Rename one of the conflicting pages so each manifest key is unique across html/htmx (and other framework) directories.`);
28655
28655
  };
28656
28656
  const shouldCopyHtmx = !isIncremental || normalizedIncrementalFiles?.some((f2) => f2.includes("/htmx/") && f2.endsWith(".html"));
28657
- const shouldUpdateHtmlAssetPaths = !isIncremental || normalizedIncrementalFiles?.some((f2) => f2.includes("/html/") && (f2.endsWith(".html") || isStylePath(f2)));
28658
28657
  const shouldUpdateHtmxAssetPaths = !isIncremental || normalizedIncrementalFiles?.some((f2) => f2.includes("/htmx/") && (f2.endsWith(".html") || isStylePath(f2)));
28659
28658
  const hmrClientBundle = hmrClientBundlePromise ? await hmrClientBundlePromise : null;
28660
28659
  const injectHMRIntoHTMLFile = (filePath, framework) => {
@@ -28677,10 +28676,8 @@ ${offenders.map((o3) => ` \u2022 ${o3}`).join(`
28677
28676
  force: true,
28678
28677
  recursive: true
28679
28678
  });
28680
- if (shouldUpdateHtmlAssetPaths) {
28681
- await updateAssetPaths(manifest, outputHtmlPages);
28682
- await optimizeHtmlImages(outputHtmlPages);
28683
- }
28679
+ await updateAssetPaths(manifest, outputHtmlPages);
28680
+ await optimizeHtmlImages(outputHtmlPages);
28684
28681
  const htmlPageFiles = await scanEntryPoints(outputHtmlPages, "*.html");
28685
28682
  await transformStaticPagesWithIslands(islandRegistryPath, htmlPageFiles);
28686
28683
  for (const htmlFile of htmlPageFiles) {
@@ -29843,6 +29840,10 @@ var init_devPrescan = __esm(() => {
29843
29840
  PRESCAN_DIR = join53(".absolutejs", "dev-prescan");
29844
29841
  });
29845
29842
 
29843
+ // src/dev/serverEntryCopies.ts
29844
+ var isAbsoluteServerEntryCopyPath = (path2) => /(?:^|[/\\])\.absolutejs-hmr-/.test(path2);
29845
+ var init_serverEntryCopies = () => {};
29846
+
29846
29847
  // src/dev/fileWatcher.ts
29847
29848
  import { watch } from "fs";
29848
29849
  import { existsSync as existsSync43, readdirSync as readdirSync10, statSync as statSync5 } from "fs";
@@ -29865,7 +29866,7 @@ var safeRemoveFromGraph = (graph, fullPath) => {
29865
29866
  operation: "add"
29866
29867
  });
29867
29868
  }
29868
- }, ATOMIC_WRITE_TEMP_PATTERNS, shouldSkipFilename = (filename, isStylesDir) => !isStylesDir && (filename === "compiled" || filename === "generated" || filename === "build" || filename === "indexes" || filename === "server" || filename === "client" || filename.includes("/compiled/") || filename.includes("/generated/") || filename.includes("/build/") || filename.includes("/indexes/") || filename.includes("/server/") || filename.includes("/client/") || filename.startsWith("compiled/") || filename.startsWith("generated/") || filename.startsWith("build/") || filename.startsWith("indexes/") || filename.startsWith("server/") || filename.startsWith("client/")) || filename.endsWith("/") || filename.includes(".tmp.") || filename.endsWith(".tmp") || filename.endsWith("~") || filename.startsWith(".#") || filename.startsWith(".absolutejs-hmr-") || ATOMIC_WRITE_TEMP_PATTERNS.some((pattern) => pattern.test(filename)), setupWatcher = (absolutePath, isStylesDir, state, onFileChange) => {
29869
+ }, ATOMIC_WRITE_TEMP_PATTERNS, shouldSkipFilename = (filename, isStylesDir) => !isStylesDir && (filename === "compiled" || filename === "generated" || filename === "build" || filename === "indexes" || filename === "server" || filename === "client" || filename.includes("/compiled/") || filename.includes("/generated/") || filename.includes("/build/") || filename.includes("/indexes/") || filename.includes("/server/") || filename.includes("/client/") || filename.startsWith("compiled/") || filename.startsWith("generated/") || filename.startsWith("build/") || filename.startsWith("indexes/") || filename.startsWith("server/") || filename.startsWith("client/")) || filename.endsWith("/") || filename.includes(".tmp.") || filename.endsWith(".tmp") || filename.endsWith("~") || filename.startsWith(".#") || isAbsoluteServerEntryCopyPath(filename) || ATOMIC_WRITE_TEMP_PATTERNS.some((pattern) => pattern.test(filename)), setupWatcher = (absolutePath, isStylesDir, state, onFileChange) => {
29869
29870
  const ATOMIC_RECOVERY_WINDOW_MS = 60000;
29870
29871
  const atomicRecoveryScan = (eventDir) => {
29871
29872
  let entries;
@@ -29895,7 +29896,7 @@ var safeRemoveFromGraph = (graph, fullPath) => {
29895
29896
  }
29896
29897
  };
29897
29898
  const watcher = watch(absolutePath, { recursive: true }, (event, filename) => {
29898
- if (!filename)
29899
+ if (!filename || isAbsoluteServerEntryCopyPath(filename))
29899
29900
  return;
29900
29901
  if (shouldSkipFilename(filename, isStylesDir)) {
29901
29902
  if (event === "rename") {
@@ -29946,6 +29947,7 @@ var safeRemoveFromGraph = (graph, fullPath) => {
29946
29947
  });
29947
29948
  };
29948
29949
  var init_fileWatcher = __esm(() => {
29950
+ init_serverEntryCopies();
29949
29951
  init_telemetryEvent();
29950
29952
  init_dependencyGraph();
29951
29953
  init_pathUtils();
@@ -38092,7 +38094,7 @@ import {
38092
38094
  } from "fs";
38093
38095
  import { createHash as createHash13 } from "crypto";
38094
38096
  import { dirname as dirname38, join as join67, resolve as resolve56 } from "path";
38095
- var ATOMIC_RECOVERY_WINDOW_MS = 1000, RELOAD_DEBOUNCE_MS = 80, ENTRY_IMPORT_RETRY_DELAY_MS = 250, MAX_ENTRY_IMPORT_ATTEMPTS = 3, WATCH_FALLBACK_INTERVAL_MS = 250, ATOMIC_WRITE_TEMP_PATTERNS2, isAtomicWriteTemp = (filename) => filename.endsWith(".tmp") || filename.includes(".tmp.") || filename.endsWith("~") || filename.startsWith(".#") || filename.startsWith(".absolutejs-hmr-") || ATOMIC_WRITE_TEMP_PATTERNS2.some((pattern) => pattern.test(filename)), fileHash = (path2) => {
38097
+ var ATOMIC_RECOVERY_WINDOW_MS = 1000, RELOAD_DEBOUNCE_MS = 80, ENTRY_IMPORT_RETRY_DELAY_MS = 250, MAX_ENTRY_IMPORT_ATTEMPTS = 3, WATCH_FALLBACK_INTERVAL_MS = 250, ATOMIC_WRITE_TEMP_PATTERNS2, isAtomicWriteTemp = (filename) => filename.endsWith(".tmp") || filename.includes(".tmp.") || filename.endsWith("~") || filename.startsWith(".#") || isAbsoluteServerEntryCopyPath(filename) || ATOMIC_WRITE_TEMP_PATTERNS2.some((pattern) => pattern.test(filename)), fileHash = (path2) => {
38096
38098
  try {
38097
38099
  return createHash13("sha256").update(readFileSync45(path2)).digest("hex");
38098
38100
  } catch {
@@ -38259,7 +38261,7 @@ var ATOMIC_RECOVERY_WINDOW_MS = 1000, RELOAD_DEBOUNCE_MS = 80, ENTRY_IMPORT_RETR
38259
38261
  }
38260
38262
  };
38261
38263
  const handleEvent = (dir, _event, filename) => {
38262
- if (!filename)
38264
+ if (!filename || isAbsoluteServerEntryCopyPath(filename))
38263
38265
  return;
38264
38266
  if (isAtomicWriteTemp(filename)) {
38265
38267
  recoveryScan(dir);
@@ -38300,6 +38302,7 @@ var ATOMIC_RECOVERY_WINDOW_MS = 1000, RELOAD_DEBOUNCE_MS = 80, ENTRY_IMPORT_RETR
38300
38302
  process.once("SIGTERM", closeAll);
38301
38303
  };
38302
38304
  var init_serverEntryWatcher = __esm(() => {
38305
+ init_serverEntryCopies();
38303
38306
  init_devBuild();
38304
38307
  ATOMIC_WRITE_TEMP_PATTERNS2 = [/^sed[A-Za-z0-9]{6,}$/, /^4913$/];
38305
38308
  });
@@ -45701,5 +45704,5 @@ export {
45701
45704
  wrapPageHandlerWithStreamingSlots
45702
45705
  };
45703
45706
 
45704
- //# debugId=69E962978A5CFCEE64756E2164756E21
45707
+ //# debugId=5ED59E98EB02DE2764756E2164756E21
45705
45708
  //# sourceMappingURL=index.js.map