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

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 (106) hide show
  1. package/dist/angular/browser.js +1 -19
  2. package/dist/angular/browser.js.map +3 -3
  3. package/dist/angular/components/constants.js +78 -0
  4. package/dist/angular/components/core/streamingSlotRegistrar.js +58 -0
  5. package/dist/angular/components/core/streamingSlotRegistry.js +114 -0
  6. package/dist/angular/components/defer-slot-payload.js +6 -0
  7. package/dist/angular/components/defer-slot-templates.directive.js +44 -0
  8. package/dist/angular/components/defer-slot.component.js +149 -0
  9. package/dist/angular/components/image.component.js +202 -0
  10. package/dist/angular/components/index.js +4 -0
  11. package/dist/angular/components/stream-slot.component.js +103 -0
  12. package/dist/angular/index.js +91 -36
  13. package/dist/angular/index.js.map +6 -6
  14. package/dist/angular/server.js +91 -36
  15. package/dist/angular/server.js.map +6 -6
  16. package/dist/build.js +242 -162
  17. package/dist/build.js.map +12 -12
  18. package/dist/cli/index.js +214 -142
  19. package/dist/client/index.js +86 -31
  20. package/dist/client/index.js.map +4 -4
  21. package/dist/core/streamingSlotRegistrar.js +1 -19
  22. package/dist/core/streamingSlotRegistrar.js.map +2 -2
  23. package/dist/core/streamingSlotRegistry.js +1 -19
  24. package/dist/core/streamingSlotRegistry.js.map +2 -2
  25. package/dist/dev/client/constants.ts +26 -0
  26. package/dist/dev/client/cssUtils.ts +307 -0
  27. package/dist/dev/client/domDiff.ts +226 -0
  28. package/dist/dev/client/domState.ts +421 -0
  29. package/dist/dev/client/domTracker.ts +61 -0
  30. package/dist/dev/client/errorOverlay.ts +184 -0
  31. package/dist/dev/client/frameworkDetect.ts +63 -0
  32. package/dist/dev/client/handlers/angular.ts +578 -0
  33. package/dist/dev/client/handlers/angularRuntime.ts +231 -0
  34. package/dist/dev/client/handlers/html.ts +364 -0
  35. package/dist/dev/client/handlers/htmx.ts +278 -0
  36. package/dist/dev/client/handlers/react.ts +108 -0
  37. package/dist/dev/client/handlers/rebuild.ts +153 -0
  38. package/dist/dev/client/handlers/svelte.ts +334 -0
  39. package/dist/dev/client/handlers/vue.ts +292 -0
  40. package/dist/dev/client/headPatch.ts +233 -0
  41. package/dist/dev/client/hmrClient.ts +273 -0
  42. package/dist/dev/client/hmrState.ts +14 -0
  43. package/dist/dev/client/moduleVersions.ts +62 -0
  44. package/dist/dev/client/reactRefreshSetup.ts +31 -0
  45. package/dist/index.js +282 -187
  46. package/dist/index.js.map +15 -15
  47. package/dist/islands/browser.js +1 -19
  48. package/dist/islands/browser.js.map +2 -2
  49. package/dist/islands/index.js +80 -26
  50. package/dist/islands/index.js.map +5 -5
  51. package/dist/react/browser.js +7 -25
  52. package/dist/react/browser.js.map +2 -2
  53. package/dist/react/components/browser/index.js +101 -101
  54. package/dist/react/components/index.js +104 -122
  55. package/dist/react/components/index.js.map +3 -3
  56. package/dist/react/hooks/index.js +1 -19
  57. package/dist/react/hooks/index.js.map +2 -2
  58. package/dist/react/index.js +101 -46
  59. package/dist/react/index.js.map +6 -6
  60. package/dist/react/jsxDevRuntimeCompat.js +1 -19
  61. package/dist/react/jsxDevRuntimeCompat.js.map +2 -2
  62. package/dist/react/server.js +13 -30
  63. package/dist/react/server.js.map +4 -4
  64. package/dist/src/angular/components/constants.d.ts +75 -0
  65. package/dist/src/angular/components/defer-slot-templates.directive.d.ts +7 -0
  66. package/dist/src/angular/components/defer-slot.component.d.ts +5 -2
  67. package/dist/src/angular/components/image.component.d.ts +5 -2
  68. package/dist/src/angular/components/index.d.ts +4 -4
  69. package/dist/src/angular/components/stream-slot.component.d.ts +3 -0
  70. package/dist/src/client/streamSwap.d.ts +0 -10
  71. package/dist/src/constants.d.ts +1 -0
  72. package/dist/src/dev/rebuildTrigger.d.ts +1 -1
  73. package/dist/src/svelte/renderToPipeableStream.d.ts +2 -2
  74. package/dist/src/svelte/renderToReadableStream.d.ts +2 -2
  75. package/dist/src/svelte/renderToString.d.ts +2 -2
  76. package/dist/src/vue/components/Image.d.ts +3 -3
  77. package/dist/svelte/browser.js +1 -19
  78. package/dist/svelte/browser.js.map +2 -2
  79. package/dist/svelte/components/AwaitSlot.svelte +39 -0
  80. package/dist/svelte/components/AwaitSlot.svelte.d.ts +2 -0
  81. package/dist/svelte/components/Head.svelte +144 -0
  82. package/dist/svelte/components/Head.svelte.d.ts +2 -0
  83. package/dist/svelte/components/Image.svelte +164 -0
  84. package/dist/svelte/components/Image.svelte.d.ts +5 -0
  85. package/dist/svelte/components/Island.svelte +71 -0
  86. package/dist/svelte/components/Island.svelte.d.ts +5 -0
  87. package/dist/svelte/components/JsonLd.svelte +21 -0
  88. package/dist/svelte/components/JsonLd.svelte.d.ts +2 -0
  89. package/dist/svelte/components/StreamSlot.svelte +41 -0
  90. package/dist/svelte/components/StreamSlot.svelte.d.ts +2 -0
  91. package/dist/svelte/index.js +93 -37
  92. package/dist/svelte/index.js.map +7 -7
  93. package/dist/svelte/server.js +16 -32
  94. package/dist/svelte/server.js.map +5 -5
  95. package/dist/types/globals.d.ts +130 -0
  96. package/dist/vue/browser.js +1 -19
  97. package/dist/vue/browser.js.map +2 -2
  98. package/dist/vue/components/Image.js +1 -19
  99. package/dist/vue/components/Image.js.map +3 -3
  100. package/dist/vue/components/index.js +1 -19
  101. package/dist/vue/components/index.js.map +3 -3
  102. package/dist/vue/index.js +91 -36
  103. package/dist/vue/index.js.map +7 -7
  104. package/dist/vue/server.js +13 -30
  105. package/dist/vue/server.js.map +4 -4
  106. package/package.json +1 -1
@@ -0,0 +1,4 @@
1
+ export { DeferSlotComponent } from './defer-slot.component.js';
2
+ export { DeferErrorTemplateDirective, DeferFallbackTemplateDirective, DeferResolvedTemplateDirective } from './defer-slot-templates.directive.js';
3
+ export { ImageComponent } from './image.component.js';
4
+ export { StreamSlotComponent } from './stream-slot.component.js';
@@ -0,0 +1,103 @@
1
+ import { ChangeDetectionStrategy, ChangeDetectorRef, Component, Input, NgZone, inject, signal } from '@angular/core';
2
+ import { DomSanitizer } from '@angular/platform-browser';
3
+ import { isStreamingSlotCollectionActive, registerStreamingSlot, warnMissingStreamingSlotCollector } from './core/streamingSlotRegistrar.js';
4
+ import * as i0 from "@angular/core";
5
+ const isObjectRecord = (value) => Boolean(value) && typeof value === 'object';
6
+ const isHtmlPayload = (payload) => isObjectRecord(payload) && typeof payload.html === 'string';
7
+ const resolvePayloadHtml = (payload) => {
8
+ if (isHtmlPayload(payload)) {
9
+ return payload.html;
10
+ }
11
+ return typeof payload === 'string' ? payload : '';
12
+ };
13
+ export class StreamSlotComponent {
14
+ constructor() {
15
+ this.cdr = inject(ChangeDetectorRef);
16
+ this.sanitizer = inject(DomSanitizer);
17
+ this.zone = inject(NgZone);
18
+ this.slotConsumer = (payload) => {
19
+ this.zone.run(() => {
20
+ this.currentHtml.set(this.sanitizer.bypassSecurityTrustHtml(resolvePayloadHtml(payload)));
21
+ this.cdr.markForCheck();
22
+ });
23
+ return true;
24
+ };
25
+ this.fallbackHtml = '';
26
+ this.currentHtml = signal('', ...(ngDevMode ? [{ debugName: "currentHtml" }] : /* istanbul ignore next */ []));
27
+ }
28
+ ngOnInit() {
29
+ if (isStreamingSlotCollectionActive()) {
30
+ this.currentHtml.set(this.sanitizer.bypassSecurityTrustHtml(this.fallbackHtml));
31
+ registerStreamingSlot({
32
+ errorHtml: this.errorHtml,
33
+ fallbackHtml: this.fallbackHtml,
34
+ id: this.id,
35
+ resolve: this.resolve,
36
+ timeoutMs: this.timeoutMs
37
+ });
38
+ return;
39
+ }
40
+ warnMissingStreamingSlotCollector('StreamSlot');
41
+ if (typeof window === 'undefined') {
42
+ this.currentHtml.set(this.sanitizer.bypassSecurityTrustHtml(this.fallbackHtml));
43
+ return;
44
+ }
45
+ const consumers = (window.__ABS_SLOT_CONSUMERS__ =
46
+ window.__ABS_SLOT_CONSUMERS__ ?? {});
47
+ consumers[this.id] = this.slotConsumer;
48
+ this.currentHtml.set(this.sanitizer.bypassSecurityTrustHtml(this.fallbackHtml));
49
+ const pendingPayload = window.__ABS_SLOT_PENDING__?.[this.id];
50
+ if (pendingPayload !== undefined) {
51
+ this.slotConsumer(pendingPayload);
52
+ delete window.__ABS_SLOT_PENDING__?.[this.id];
53
+ }
54
+ }
55
+ ngOnDestroy() {
56
+ if (typeof window === 'undefined')
57
+ return;
58
+ if (window.__ABS_SLOT_CONSUMERS__) {
59
+ delete window.__ABS_SLOT_CONSUMERS__[this.id];
60
+ }
61
+ }
62
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: StreamSlotComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
63
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.6", type: StreamSlotComponent, isStandalone: true, selector: "abs-stream-slot", inputs: { className: "className", errorHtml: "errorHtml", fallbackHtml: "fallbackHtml", id: "id", resolve: "resolve", timeoutMs: "timeoutMs" }, ngImport: i0, template: `
64
+ <div
65
+ [attr.id]="id"
66
+ [attr.class]="className"
67
+ data-absolute-raw-slot="true"
68
+ data-absolute-slot="true"
69
+ [innerHTML]="currentHtml()"
70
+ ></div>
71
+ `, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
72
+ }
73
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: StreamSlotComponent, decorators: [{
74
+ type: Component,
75
+ args: [{
76
+ changeDetection: ChangeDetectionStrategy.OnPush,
77
+ selector: 'abs-stream-slot',
78
+ standalone: true,
79
+ template: `
80
+ <div
81
+ [attr.id]="id"
82
+ [attr.class]="className"
83
+ data-absolute-raw-slot="true"
84
+ data-absolute-slot="true"
85
+ [innerHTML]="currentHtml()"
86
+ ></div>
87
+ `
88
+ }]
89
+ }], propDecorators: { className: [{
90
+ type: Input
91
+ }], errorHtml: [{
92
+ type: Input
93
+ }], fallbackHtml: [{
94
+ type: Input
95
+ }], id: [{
96
+ type: Input,
97
+ args: [{ required: true }]
98
+ }], resolve: [{
99
+ type: Input,
100
+ args: [{ required: true }]
101
+ }], timeoutMs: [{
102
+ type: Input
103
+ }] } });
@@ -3,7 +3,6 @@ var __create = Object.create;
3
3
  var __getProtoOf = Object.getPrototypeOf;
4
4
  var __defProp = Object.defineProperty;
5
5
  var __getOwnPropNames = Object.getOwnPropertyNames;
6
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
7
6
  var __hasOwnProp = Object.prototype.hasOwnProperty;
8
7
  function __accessProp(key) {
9
8
  return this[key];
@@ -30,23 +29,6 @@ var __toESM = (mod, isNodeMode, target) => {
30
29
  cache.set(mod, to);
31
30
  return to;
32
31
  };
33
- var __toCommonJS = (from) => {
34
- var entry = (__moduleCache ??= new WeakMap).get(from), desc;
35
- if (entry)
36
- return entry;
37
- entry = __defProp({}, "__esModule", { value: true });
38
- if (from && typeof from === "object" || typeof from === "function") {
39
- for (var key of __getOwnPropNames(from))
40
- if (!__hasOwnProp.call(entry, key))
41
- __defProp(entry, key, {
42
- get: __accessProp.bind(from, key),
43
- enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
44
- });
45
- }
46
- __moduleCache.set(from, entry);
47
- return entry;
48
- };
49
- var __moduleCache;
50
32
  var __commonJS = (cb, mod) => () => (mod || cb((mod = { exports: {} }).exports, mod), mod.exports);
51
33
  var __returnValue = (v) => v;
52
34
  function __exportSetter(name, newValue) {
@@ -79,7 +61,7 @@ var __esm = (fn, res) => () => (fn && (res = fn(fn = 0)), res);
79
61
  var __require = import.meta.require;
80
62
 
81
63
  // src/constants.ts
82
- var ANGULAR_INIT_TIMEOUT_MS = 500, 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, 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;
83
65
  var init_constants = __esm(() => {
84
66
  MILLISECONDS_IN_A_MINUTE = MILLISECONDS_IN_A_SECOND * SECONDS_IN_A_MINUTE;
85
67
  MILLISECONDS_IN_A_DAY = MILLISECONDS_IN_A_SECOND * SECONDS_IN_A_MINUTE * MINUTES_IN_AN_HOUR * HOURS_IN_DAY;
@@ -251,6 +233,65 @@ var ensureHead = (doc) => {
251
233
  }
252
234
  const head = doc.createElement("head");
253
235
  doc.documentElement.insertBefore(head, doc.documentElement.firstChild);
236
+ }, SSR_LAYOUT_RECT, layoutPatchApplied = false, patchElementLayout = (doc) => {
237
+ if (layoutPatchApplied || !doc) {
238
+ return;
239
+ }
240
+ let element;
241
+ try {
242
+ element = doc.createElement("div");
243
+ } catch {
244
+ return;
245
+ }
246
+ const proto = Object.getPrototypeOf(element);
247
+ if (!proto)
248
+ return;
249
+ const define = (name, value) => {
250
+ if (typeof proto[name] !== "function") {
251
+ Object.defineProperty(proto, name, {
252
+ configurable: true,
253
+ value,
254
+ writable: true
255
+ });
256
+ }
257
+ };
258
+ define("getBoundingClientRect", function() {
259
+ return { ...SSR_LAYOUT_RECT };
260
+ });
261
+ define("getClientRects", function() {
262
+ return [];
263
+ });
264
+ define("scrollTo", function() {});
265
+ define("scrollBy", function() {});
266
+ define("scrollIntoView", function() {});
267
+ define("focus", function() {});
268
+ define("blur", function() {});
269
+ const numericProps = [
270
+ "clientWidth",
271
+ "clientHeight",
272
+ "clientLeft",
273
+ "clientTop",
274
+ "offsetWidth",
275
+ "offsetHeight",
276
+ "offsetLeft",
277
+ "offsetTop",
278
+ "scrollWidth",
279
+ "scrollHeight",
280
+ "scrollLeft",
281
+ "scrollTop"
282
+ ];
283
+ for (const prop of numericProps) {
284
+ const desc = Object.getOwnPropertyDescriptor(proto, prop);
285
+ if (desc)
286
+ continue;
287
+ Object.defineProperty(proto, prop, {
288
+ configurable: true,
289
+ get() {
290
+ return 0;
291
+ }
292
+ });
293
+ }
294
+ layoutPatchApplied = true;
254
295
  }, applyPatches = async () => {
255
296
  const { \u{275}DominoAdapter } = await import(resolveAngularPackage("@angular/platform-server"));
256
297
  if (!\u{275}DominoAdapter?.prototype) {
@@ -269,18 +310,33 @@ var ensureHead = (doc) => {
269
310
  proto.createHtmlDocument = function() {
270
311
  const doc = origCreateHtmlDocument.call(this);
271
312
  ensureHead(doc);
313
+ patchElementLayout(doc);
272
314
  return doc;
273
315
  };
274
316
  const origGetDefaultDocument = proto.getDefaultDocument;
275
317
  proto.getDefaultDocument = function() {
276
318
  const doc = origGetDefaultDocument.call(this);
277
319
  ensureHead(doc);
320
+ patchElementLayout(doc);
278
321
  return doc;
279
322
  };
280
323
  return true;
281
324
  };
282
325
  var init_angularPatch = __esm(() => {
283
326
  init_resolveAngularPackage();
327
+ SSR_LAYOUT_RECT = Object.freeze({
328
+ bottom: 0,
329
+ height: 0,
330
+ left: 0,
331
+ right: 0,
332
+ top: 0,
333
+ width: 0,
334
+ x: 0,
335
+ y: 0,
336
+ toJSON() {
337
+ return this;
338
+ }
339
+ });
284
340
  });
285
341
 
286
342
  // src/angular/angularDeps.ts
@@ -302,9 +358,7 @@ var initDominoAdapter = (platformServer) => {
302
358
  import(resolveAngularPackage("@angular/common")),
303
359
  import(resolveAngularPackage("@angular/core"))
304
360
  ]);
305
- if (true) {
306
- core.enableProdMode();
307
- }
361
+ if (false) {}
308
362
  initDominoAdapter(platformServer);
309
363
  return {
310
364
  APP_BASE_HREF: common.APP_BASE_HREF,
@@ -630,9 +684,9 @@ var renderAngularIslandToHtmlInternal = async (component, props, islandId) => {
630
684
  }, renderAngularIslandToHtml2, renderReactIslandToHtml = (component, props) => import("react").then(({ createElement }) => import("react-dom/server").then(({ renderToStaticMarkup }) => renderToStaticMarkup(createElement(component, props)))), renderSvelteIslandToHtml = (component, props) => import("svelte/server").then(({ render }) => {
631
685
  const { body } = render(component, { props });
632
686
  return body;
633
- }), renderVueIslandToHtml = (component, props) => import("vue").then(({ createSSRApp, h }) => {
687
+ }), renderVueIslandToHtml = (component, props) => import("vue").then(({ createSSRApp, h: createVueVNode }) => {
634
688
  const app = createSSRApp({
635
- render: () => h(component, props)
689
+ render: () => createVueVNode(component, props)
636
690
  });
637
691
  return import("vue/server-renderer").then(({ renderToString }) => renderToString(app));
638
692
  });
@@ -998,7 +1052,7 @@ ${contents}` : contents, normalizePostcssModule = (mod) => {
998
1052
  const config = normalizePostcssModule(loaded);
999
1053
  const value = typeof config === "function" ? await config({
1000
1054
  cwd: process.cwd(),
1001
- env: "test"
1055
+ env: "development"
1002
1056
  }) : config;
1003
1057
  return normalizePostcssModule(value) ?? {};
1004
1058
  }, normalizePostcssPlugins = (plugins) => {
@@ -1726,14 +1780,15 @@ var init_devRouteRegistrationCallsite = __esm(() => {
1726
1780
 
1727
1781
  // src/client/streamSwap.ts
1728
1782
  var streamSwapRuntime = () => {
1783
+ const absoluteWindow = window;
1729
1784
  const SLOT_PATCH_EVENT = "absolutejs:slot-patch";
1730
- if (window.__ABS_SLOT_RUNTIME__ === true)
1785
+ if (absoluteWindow.__ABS_SLOT_RUNTIME__ === true)
1731
1786
  return;
1732
- window.__ABS_SLOT_RUNTIME__ = true;
1733
- window.__ABS_SLOT_CONSUMERS__ = window.__ABS_SLOT_CONSUMERS__ ?? {};
1734
- window.__ABS_SLOT_PENDING__ = window.__ABS_SLOT_PENDING__ ?? {};
1735
- const consumers = window.__ABS_SLOT_CONSUMERS__;
1736
- const pending = window.__ABS_SLOT_PENDING__;
1787
+ absoluteWindow.__ABS_SLOT_RUNTIME__ = true;
1788
+ absoluteWindow.__ABS_SLOT_CONSUMERS__ = absoluteWindow.__ABS_SLOT_CONSUMERS__ ?? {};
1789
+ absoluteWindow.__ABS_SLOT_PENDING__ = absoluteWindow.__ABS_SLOT_PENDING__ ?? {};
1790
+ const consumers = absoluteWindow.__ABS_SLOT_CONSUMERS__;
1791
+ const pending = absoluteWindow.__ABS_SLOT_PENDING__;
1737
1792
  const isObjectRecord4 = (value) => Boolean(value) && typeof value === "object";
1738
1793
  const isPatchedPendingEntry = (value) => {
1739
1794
  if (!isObjectRecord4(value))
@@ -1741,7 +1796,7 @@ var streamSwapRuntime = () => {
1741
1796
  return value.domPatched === true && "payload" in value;
1742
1797
  };
1743
1798
  const unwrapPendingPayload = (value) => isPatchedPendingEntry(value) ? value.payload : value;
1744
- const canApplyImmediately = () => window.__ABS_SLOT_HYDRATION_PENDING__ !== true;
1799
+ const canApplyImmediately = () => absoluteWindow.__ABS_SLOT_HYDRATION_PENDING__ !== true;
1745
1800
  const isAngularDeferPayload = (payload) => {
1746
1801
  if (!isObjectRecord4(payload))
1747
1802
  return false;
@@ -1811,8 +1866,8 @@ var streamSwapRuntime = () => {
1811
1866
  apply(id, pending[id] ?? "");
1812
1867
  }
1813
1868
  };
1814
- window.__ABS_SLOT_FLUSH__ = flush;
1815
- window.__ABS_SLOT_ENQUEUE__ = (id, payload) => {
1869
+ absoluteWindow.__ABS_SLOT_FLUSH__ = flush;
1870
+ absoluteWindow.__ABS_SLOT_ENQUEUE__ = (id, payload) => {
1816
1871
  apply(id, payload);
1817
1872
  };
1818
1873
  if (typeof MutationObserver === "function") {
@@ -13338,7 +13393,7 @@ var resolveNotFoundConventionPath = (framework) => getMap()[framework]?.defaults
13338
13393
  var setConventions = (map) => {
13339
13394
  Reflect.set(globalThis, CONVENTIONS_KEY, map);
13340
13395
  };
13341
- var isDev = () => false;
13396
+ var isDev = () => true;
13342
13397
  var buildErrorProps = (error) => {
13343
13398
  const message = error instanceof Error ? error.message : String(error);
13344
13399
  const stack = isDev() && error instanceof Error ? error.stack : undefined;
@@ -14211,5 +14266,5 @@ export {
14211
14266
  Island
14212
14267
  };
14213
14268
 
14214
- //# debugId=6EE23E3D652E596B64756E2164756E21
14269
+ //# debugId=C81A016DA6FA8D6B64756E2164756E21
14215
14270
  //# sourceMappingURL=index.js.map