@absolutejs/absolute 0.19.0-beta.708 → 0.19.0-beta.709

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 (39) hide show
  1. package/dist/angular/browser.js +26 -14
  2. package/dist/angular/browser.js.map +5 -4
  3. package/dist/angular/components/constants.js +6 -0
  4. package/dist/angular/index.js +65 -34
  5. package/dist/angular/index.js.map +4 -4
  6. package/dist/angular/server.js +65 -34
  7. package/dist/angular/server.js.map +4 -4
  8. package/dist/build.js +73 -48
  9. package/dist/build.js.map +6 -6
  10. package/dist/client/index.js +53 -33
  11. package/dist/client/index.js.map +3 -3
  12. package/dist/dev/client/cssUtils.ts +6 -2
  13. package/dist/image-client/imageClient.js +16 -4
  14. package/dist/index.js +77 -48
  15. package/dist/index.js.map +6 -6
  16. package/dist/islands/index.js +65 -34
  17. package/dist/islands/index.js.map +4 -4
  18. package/dist/react/components/browser/index.js +16 -4
  19. package/dist/react/components/index.js +24 -13
  20. package/dist/react/components/index.js.map +5 -4
  21. package/dist/react/index.js +65 -34
  22. package/dist/react/index.js.map +4 -4
  23. package/dist/react/server.js +13 -2
  24. package/dist/react/server.js.map +3 -3
  25. package/dist/src/angular/components/constants.d.ts +4 -0
  26. package/dist/src/constants.d.ts +4 -0
  27. package/dist/svelte/index.js +65 -34
  28. package/dist/svelte/index.js.map +4 -4
  29. package/dist/svelte/server.js +13 -2
  30. package/dist/svelte/server.js.map +3 -3
  31. package/dist/vue/components/Image.js +24 -13
  32. package/dist/vue/components/Image.js.map +5 -4
  33. package/dist/vue/components/index.js +24 -13
  34. package/dist/vue/components/index.js.map +5 -4
  35. package/dist/vue/index.js +69 -46
  36. package/dist/vue/index.js.map +5 -5
  37. package/dist/vue/server.js +13 -2
  38. package/dist/vue/server.js.map +3 -3
  39. package/package.json +1 -1
package/dist/build.js CHANGED
@@ -61,8 +61,19 @@ var __esm = (fn, res) => () => (fn && (res = fn(fn = 0)), res);
61
61
  var __require = import.meta.require;
62
62
 
63
63
  // src/constants.ts
64
- var ANGULAR_INIT_TIMEOUT_MS = 500, ANSI_ESCAPE_CODE = 27, ANSI_ESCAPE_LENGTH = 3, ASCII_SPACE = 32, BASE_36_RADIX = 36, BUN_BUILD_WARNING_SUPPRESSION = "wildcard sideEffects are not supported yet", BODY_SLICE_LENGTH = 2000, BYTES_PER_KILOBYTE = 1024, CLI_ARGS_OFFSET = 3, CSS_ERROR_RESOLVE_DELAY_MS = 50, CSS_MAX_CHECK_ATTEMPTS = 10, CSS_MAX_PARSE_TIMEOUT_MS = 500, CSS_SHEET_READY_TIMEOUT_MS = 100, DEFAULT_CHUNK_SIZE = 16384, DEFAULT_DEBOUNCE_MS = 15, DEFAULT_PORT = 3000, DEV_SERVER_RESTART_DEBOUNCE_MS = 100, DOM_UPDATE_DELAY_MS = 50, FILE_PROTOCOL_PREFIX_LENGTH = 7, FOCUS_ID_PREFIX_LENGTH = 3, FOCUS_IDX_PREFIX_LENGTH = 4, FOCUS_NAME_PREFIX_LENGTH = 5, HMR_UPDATE_TIMEOUT_MS = 2000, HOOK_SIGNATURE_LENGTH = 12, EXCLUDE_LAST_OFFSET = -1, HTTP_STATUS_OK = 200, HTTP_STATUS_BAD_REQUEST = 400, HTTP_STATUS_NOT_FOUND = 404, HOURS_IN_DAY = 24, HOURS_IN_HALF_DAY = 12, MAX_ERROR_LENGTH = 200, MAX_RECONNECT_ATTEMPTS = 60, MILLISECONDS_IN_A_SECOND = 1000, MINUTES_IN_AN_HOUR = 60, SECONDS_IN_A_MINUTE = 60, MILLISECONDS_IN_A_MINUTE, MILLISECONDS_IN_A_DAY, OVERLAY_FADE_DURATION_MS = 150, PING_INTERVAL_MS = 30000, RAF_BATCH_COUNT = 3, RANDOM_ID_END_INDEX = 11, REBUILD_BATCH_DELAY_MS = 10, REBUILD_RELOAD_DELAY_MS = 200, RECONNECT_INITIAL_DELAY_MS = 500, RECONNECT_POLL_INTERVAL_MS = 300, REACT_STREAM_SLOT_FAST_DELAY_MS = 5, REACT_STREAM_SLOT_SLOW_DELAY_MS = 20, SIGINT_EXIT_CODE = 130, SIGTERM_EXIT_CODE = 143, SVELTE_CSS_LOAD_TIMEOUT_MS = 500, TIME_PRECISION = 2, TWO_THIRDS, UNFOUND_INDEX = -1, WEBSOCKET_NORMAL_CLOSURE = 1000, WORKSPACE_COMMAND_ARGS_OFFSET = 3, WORKSPACE_FAILURE_LOG_PRINT_LIMIT = 30, WORKSPACE_FAILURE_RECENT_LOG_LIMIT = 60, WORKSPACE_READY_ATTEMPT_TIMEOUT_MS = 5000, WORKSPACE_READY_PROBE_INTERVAL_MS = 250, WORKSPACE_READY_TIMEOUT_MS = 30000, WORKSPACE_SHUTDOWN_TIMEOUT_MS = 1e4, WORKSPACE_TUI_DEFAULT_HEIGHT = 28, WORKSPACE_TUI_DEFAULT_WIDTH = 100, WORKSPACE_TUI_ESCAPE_SEQUENCE_TIMEOUT_MS = 30, WORKSPACE_TUI_FOOTER_LINE_COUNT = 3, WORKSPACE_TUI_MIN_LOG_HEIGHT = 3, WORKSPACE_TUI_MIN_SERVICE_NAME_WIDTH = 7, WORKSPACE_TUI_MIN_TARGET_WIDTH = 8, WORKSPACE_TUI_MIN_WRAP_WIDTH = 12, WORKSPACE_TUI_PROMPT_CURSOR_OFFSET = 3, WORKSPACE_TUI_RECENT_LOG_LIMIT = 40, WORKSPACE_TUI_RENDER_DEBOUNCE_MS = 16, WORKSPACE_TUI_STATUS_WIDTH = 10, WORKSPACE_TUI_TARGET_PADDING_WIDTH = 6, WORKSPACE_TUI_VISIBILITY_WIDTH = 8;
64
+ var ANGULAR_INIT_TIMEOUT_MS = 500, ANSI_ESCAPE_CODE = 27, ANSI_ESCAPE_LENGTH = 3, ASCII_SPACE = 32, BASE_36_RADIX = 36, BUN_BUILD_WARNING_SUPPRESSION = "wildcard sideEffects are not supported yet", BODY_SLICE_LENGTH = 2000, BYTES_PER_KILOBYTE = 1024, CLI_ARGS_OFFSET = 3, CSS_ERROR_RESOLVE_DELAY_MS = 50, CSS_MAX_CHECK_ATTEMPTS = 10, CSS_MAX_PARSE_TIMEOUT_MS = 500, CSS_SHEET_READY_TIMEOUT_MS = 100, DEFAULT_CHUNK_SIZE = 16384, DEFAULT_DEBOUNCE_MS = 15, DEFAULT_PORT = 3000, DEV_SERVER_RESTART_DEBOUNCE_MS = 100, DOM_UPDATE_DELAY_MS = 50, FILE_PROTOCOL_PREFIX_LENGTH = 7, FOCUS_ID_PREFIX_LENGTH = 3, FOCUS_IDX_PREFIX_LENGTH = 4, FOCUS_NAME_PREFIX_LENGTH = 5, HMR_UPDATE_TIMEOUT_MS = 2000, HOOK_SIGNATURE_LENGTH = 12, EXCLUDE_LAST_OFFSET = -1, HTTP_STATUS_OK = 200, HTTP_STATUS_BAD_REQUEST = 400, HTTP_STATUS_NOT_FOUND = 404, HOURS_IN_DAY = 24, HOURS_IN_HALF_DAY = 12, IMAGE_DEFAULT_DEVICE_SIZES, IMAGE_DEFAULT_IMAGE_SIZES, IMAGE_DEFAULT_QUALITY = 75, IMAGE_GLOB_SUFFIX_LENGTH = 2, MAX_ERROR_LENGTH = 200, MAX_RECONNECT_ATTEMPTS = 60, MILLISECONDS_IN_A_SECOND = 1000, MINUTES_IN_AN_HOUR = 60, SECONDS_IN_A_MINUTE = 60, MILLISECONDS_IN_A_MINUTE, MILLISECONDS_IN_A_DAY, OVERLAY_FADE_DURATION_MS = 150, PING_INTERVAL_MS = 30000, RAF_BATCH_COUNT = 3, RANDOM_ID_END_INDEX = 11, REBUILD_BATCH_DELAY_MS = 10, REBUILD_RELOAD_DELAY_MS = 200, RECONNECT_INITIAL_DELAY_MS = 500, RECONNECT_POLL_INTERVAL_MS = 300, REACT_STREAM_SLOT_FAST_DELAY_MS = 5, REACT_STREAM_SLOT_SLOW_DELAY_MS = 20, SIGINT_EXIT_CODE = 130, SIGTERM_EXIT_CODE = 143, SVELTE_CSS_LOAD_TIMEOUT_MS = 500, TIME_PRECISION = 2, TWO_THIRDS, UNFOUND_INDEX = -1, WEBSOCKET_NORMAL_CLOSURE = 1000, WORKSPACE_COMMAND_ARGS_OFFSET = 3, WORKSPACE_FAILURE_LOG_PRINT_LIMIT = 30, WORKSPACE_FAILURE_RECENT_LOG_LIMIT = 60, WORKSPACE_READY_ATTEMPT_TIMEOUT_MS = 5000, WORKSPACE_READY_PROBE_INTERVAL_MS = 250, WORKSPACE_READY_TIMEOUT_MS = 30000, WORKSPACE_SHUTDOWN_TIMEOUT_MS = 1e4, WORKSPACE_TUI_DEFAULT_HEIGHT = 28, WORKSPACE_TUI_DEFAULT_WIDTH = 100, WORKSPACE_TUI_ESCAPE_SEQUENCE_TIMEOUT_MS = 30, WORKSPACE_TUI_FOOTER_LINE_COUNT = 3, WORKSPACE_TUI_MIN_LOG_HEIGHT = 3, WORKSPACE_TUI_MIN_SERVICE_NAME_WIDTH = 7, WORKSPACE_TUI_MIN_TARGET_WIDTH = 8, WORKSPACE_TUI_MIN_WRAP_WIDTH = 12, WORKSPACE_TUI_PROMPT_CURSOR_OFFSET = 3, WORKSPACE_TUI_RECENT_LOG_LIMIT = 40, WORKSPACE_TUI_RENDER_DEBOUNCE_MS = 16, WORKSPACE_TUI_STATUS_WIDTH = 10, WORKSPACE_TUI_TARGET_PADDING_WIDTH = 6, WORKSPACE_TUI_VISIBILITY_WIDTH = 8;
65
65
  var init_constants = __esm(() => {
66
+ IMAGE_DEFAULT_DEVICE_SIZES = [
67
+ 640,
68
+ 750,
69
+ 828,
70
+ 1080,
71
+ 1200,
72
+ 1920,
73
+ 2048,
74
+ 3840
75
+ ];
76
+ IMAGE_DEFAULT_IMAGE_SIZES = [16, 32, 48, 64, 96, 128, 256, 384];
66
77
  MILLISECONDS_IN_A_MINUTE = MILLISECONDS_IN_A_SECOND * SECONDS_IN_A_MINUTE;
67
78
  MILLISECONDS_IN_A_DAY = MILLISECONDS_IN_A_SECOND * SECONDS_IN_A_MINUTE * MINUTES_IN_AN_HOUR * HOURS_IN_DAY;
68
79
  TWO_THIRDS = 2 / 3;
@@ -1772,7 +1783,15 @@ var ensureHead = (doc) => {
1772
1783
  }
1773
1784
  const head = doc.createElement("head");
1774
1785
  doc.documentElement.insertBefore(head, doc.documentElement.firstChild);
1775
- }, SSR_LAYOUT_RECT, layoutPatchApplied = false, patchElementLayout = (doc) => {
1786
+ }, SSR_LAYOUT_RECT, layoutPatchApplied = false, collectPrototypeChain = (instance) => {
1787
+ const protos = [];
1788
+ let current = instance ? Object.getPrototypeOf(instance) : null;
1789
+ while (current && current !== Object.prototype) {
1790
+ protos.push(current);
1791
+ current = Object.getPrototypeOf(current);
1792
+ }
1793
+ return protos;
1794
+ }, patchElementLayout = (doc) => {
1776
1795
  if (layoutPatchApplied || !doc) {
1777
1796
  return;
1778
1797
  }
@@ -1782,29 +1801,15 @@ var ensureHead = (doc) => {
1782
1801
  } catch {
1783
1802
  return;
1784
1803
  }
1785
- const proto = Object.getPrototypeOf(element);
1786
- if (!proto)
1804
+ const protos = collectPrototypeChain(element);
1805
+ if (protos.length === 0)
1806
+ return;
1807
+ const copyLayoutRect = (rect) => ({ ...rect });
1808
+ const createLayoutRect = () => copyLayoutRect(SSR_LAYOUT_RECT);
1809
+ const getClientRects = () => [];
1810
+ const noop = () => {
1787
1811
  return;
1788
- const define = (name, value) => {
1789
- if (typeof proto[name] !== "function") {
1790
- Object.defineProperty(proto, name, {
1791
- configurable: true,
1792
- value,
1793
- writable: true
1794
- });
1795
- }
1796
1812
  };
1797
- define("getBoundingClientRect", function() {
1798
- return { ...SSR_LAYOUT_RECT };
1799
- });
1800
- define("getClientRects", function() {
1801
- return [];
1802
- });
1803
- define("scrollTo", function() {});
1804
- define("scrollBy", function() {});
1805
- define("scrollIntoView", function() {});
1806
- define("focus", function() {});
1807
- define("blur", function() {});
1808
1813
  const numericProps = [
1809
1814
  "clientWidth",
1810
1815
  "clientHeight",
@@ -1819,16 +1824,33 @@ var ensureHead = (doc) => {
1819
1824
  "scrollLeft",
1820
1825
  "scrollTop"
1821
1826
  ];
1822
- for (const prop of numericProps) {
1823
- const desc = Object.getOwnPropertyDescriptor(proto, prop);
1824
- if (desc)
1825
- continue;
1826
- Object.defineProperty(proto, prop, {
1827
- configurable: true,
1828
- get() {
1829
- return 0;
1830
- }
1831
- });
1827
+ for (const proto of protos) {
1828
+ const define = (name, value) => {
1829
+ const descriptor = Object.getOwnPropertyDescriptor(proto, name);
1830
+ if (typeof descriptor?.value === "function")
1831
+ return;
1832
+ Object.defineProperty(proto, name, {
1833
+ configurable: true,
1834
+ value,
1835
+ writable: true
1836
+ });
1837
+ };
1838
+ define("getBoundingClientRect", createLayoutRect);
1839
+ define("getClientRects", getClientRects);
1840
+ define("scrollTo", noop);
1841
+ define("scrollBy", noop);
1842
+ define("scrollIntoView", noop);
1843
+ define("focus", noop);
1844
+ define("blur", noop);
1845
+ for (const prop of numericProps) {
1846
+ const desc = Object.getOwnPropertyDescriptor(proto, prop);
1847
+ if (desc)
1848
+ continue;
1849
+ Object.defineProperty(proto, prop, {
1850
+ configurable: true,
1851
+ get: () => 0
1852
+ });
1853
+ }
1832
1854
  }
1833
1855
  layoutPatchApplied = true;
1834
1856
  }, applyPatches = async () => {
@@ -1837,6 +1859,15 @@ var ensureHead = (doc) => {
1837
1859
  console.warn("[Angular Patch] \u0275DominoAdapter not found, skipping patches");
1838
1860
  return false;
1839
1861
  }
1862
+ try {
1863
+ const adapter = new \u{275}DominoAdapter;
1864
+ const seedDoc = typeof adapter.createHtmlDocument === "function" ? adapter.createHtmlDocument() : typeof adapter.getDefaultDocument === "function" ? adapter.getDefaultDocument() : null;
1865
+ if (seedDoc) {
1866
+ patchElementLayout(seedDoc);
1867
+ }
1868
+ } catch (error) {
1869
+ console.warn("[Angular Patch] Could not eagerly patch Element prototypes:", error);
1870
+ }
1840
1871
  const proto = \u{275}DominoAdapter.prototype;
1841
1872
  const origGetBaseHref = proto.getBaseHref;
1842
1873
  proto.getBaseHref = function(doc) {
@@ -41333,7 +41364,7 @@ var init_compileTailwind = __esm(() => {
41333
41364
  // src/utils/imageProcessing.ts
41334
41365
  import { existsSync as existsSync9, mkdirSync as mkdirSync3, readFileSync as readFileSync5, writeFileSync as writeFileSync4 } from "fs";
41335
41366
  import { join as join8, resolve as resolve8 } from "path";
41336
- var DEFAULT_DEVICE_SIZES, DEFAULT_IMAGE_SIZES, DEFAULT_QUALITY = 75, OPTIMIZATION_ENDPOINT = "/_absolute/image", BLUR_DEVIATION = 20, sharpModule = undefined, sharpLoaded = false, sharpWarned = false, snapToSize = (target, sizes) => {
41367
+ var DEFAULT_DEVICE_SIZES, DEFAULT_IMAGE_SIZES, DEFAULT_QUALITY, OPTIMIZATION_ENDPOINT = "/_absolute/image", BLUR_DEVIATION = 20, sharpModule = undefined, sharpLoaded = false, sharpWarned = false, snapToSize = (target, sizes) => {
41337
41368
  for (const size of sizes) {
41338
41369
  if (size >= target)
41339
41370
  return size;
@@ -41349,7 +41380,7 @@ var DEFAULT_DEVICE_SIZES, DEFAULT_IMAGE_SIZES, DEFAULT_QUALITY = 75, OPTIMIZATIO
41349
41380
  return false;
41350
41381
  }, matchPathname = (actual, pattern) => {
41351
41382
  if (pattern.endsWith("/**")) {
41352
- const prefix = pattern.slice(0, -2);
41383
+ const prefix = pattern.slice(0, -IMAGE_GLOB_SUFFIX_LENGTH);
41353
41384
  return actual.startsWith(prefix);
41354
41385
  }
41355
41386
  return actual === pattern;
@@ -41478,17 +41509,10 @@ var DEFAULT_DEVICE_SIZES, DEFAULT_IMAGE_SIZES, DEFAULT_QUALITY = 75, OPTIMIZATIO
41478
41509
  writeFileSync4(metaPath, JSON.stringify(meta));
41479
41510
  };
41480
41511
  var init_imageProcessing = __esm(() => {
41481
- DEFAULT_DEVICE_SIZES = [
41482
- 640,
41483
- 750,
41484
- 828,
41485
- 1080,
41486
- 1200,
41487
- 1920,
41488
- 2048,
41489
- 3840
41490
- ];
41491
- DEFAULT_IMAGE_SIZES = [16, 32, 48, 64, 96, 128, 256, 384];
41512
+ init_constants();
41513
+ DEFAULT_DEVICE_SIZES = IMAGE_DEFAULT_DEVICE_SIZES;
41514
+ DEFAULT_IMAGE_SIZES = IMAGE_DEFAULT_IMAGE_SIZES;
41515
+ DEFAULT_QUALITY = IMAGE_DEFAULT_QUALITY;
41492
41516
  MIME_MAP = {
41493
41517
  avif: "image/avif",
41494
41518
  jpeg: "image/jpeg",
@@ -41528,7 +41552,7 @@ var IMG_REGEX, getAttr = (attrs, name) => {
41528
41552
  const w2x = snapUp(width * 2, allSizes);
41529
41553
  srcset = `${buildOptimizedUrl(src, w1x, quality, basePath)} 1x, ${buildOptimizedUrl(src, w2x, quality, basePath)} 2x`;
41530
41554
  } else {
41531
- const deviceSizes = config?.deviceSizes ?? [640, 750, 828, 1080, 1200, 1920, 2048, 3840];
41555
+ const deviceSizes = config?.deviceSizes ?? IMAGE_DEFAULT_DEVICE_SIZES;
41532
41556
  srcset = deviceSizes.map((sizeWidth) => `${buildOptimizedUrl(src, sizeWidth, quality, basePath)} ${sizeWidth}w`).join(", ");
41533
41557
  }
41534
41558
  let cleanAttrs = removeAttr(attrs, "data-optimized");
@@ -41561,6 +41585,7 @@ var IMG_REGEX, getAttr = (attrs, name) => {
41561
41585
  var init_optimizeHtmlImages = __esm(() => {
41562
41586
  init_imageProcessing();
41563
41587
  init_scanEntryPoints();
41588
+ init_constants();
41564
41589
  IMG_REGEX = /<img\s+([^>]*?)data-optimized([^>]*?)\/?>/gi;
41565
41590
  });
41566
41591
 
@@ -49672,5 +49697,5 @@ export {
49672
49697
  build
49673
49698
  };
49674
49699
 
49675
- //# debugId=D6976064B88BE2E464756E2164756E21
49700
+ //# debugId=7CA9E0309BD0194E64756E2164756E21
49676
49701
  //# sourceMappingURL=build.js.map