@symbiote-native/angular 0.7.0 → 1.0.0

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 (188) hide show
  1. package/README.md +3 -3
  2. package/babel-lower-host-primitives.cjs +636 -0
  3. package/babel-register-composed.cjs +21 -3
  4. package/build/angular/anchor-host-registry.js +3 -1
  5. package/build/angular/anchor-host-registry.js.map +1 -1
  6. package/build/angular/bootstrap.js +1 -1
  7. package/build/angular/bootstrap.js.map +1 -1
  8. package/build/angular/components/activity-indicator/index.android.js +7 -2
  9. package/build/angular/components/activity-indicator/index.android.js.map +1 -1
  10. package/build/angular/components/activity-indicator/index.ios.js +3 -1
  11. package/build/angular/components/activity-indicator/index.ios.js.map +1 -1
  12. package/build/angular/components/activity-indicator/shared.d.ts +1 -1
  13. package/build/angular/components/activity-indicator/shared.js +1 -1
  14. package/build/angular/components/activity-indicator/shared.js.map +1 -1
  15. package/build/angular/components/button.d.ts +3 -0
  16. package/build/angular/components/button.js +22 -5
  17. package/build/angular/components/button.js.map +1 -1
  18. package/build/angular/components/flat-list/index.d.ts +1 -1
  19. package/build/angular/components/flat-list/index.js +47 -14
  20. package/build/angular/components/flat-list/index.js.map +1 -1
  21. package/build/angular/components/image/index.android.js +4 -10
  22. package/build/angular/components/image/index.android.js.map +1 -1
  23. package/build/angular/components/image/index.ios.js +4 -10
  24. package/build/angular/components/image/index.ios.js.map +1 -1
  25. package/build/angular/components/image/shared.d.ts +4 -4
  26. package/build/angular/components/image/shared.js +51 -33
  27. package/build/angular/components/image/shared.js.map +1 -1
  28. package/build/angular/components/image-background.d.ts +3 -0
  29. package/build/angular/components/image-background.js +32 -9
  30. package/build/angular/components/image-background.js.map +1 -1
  31. package/build/angular/components/input-accessory-view/index.d.ts +2 -1
  32. package/build/angular/components/input-accessory-view/index.js +18 -16
  33. package/build/angular/components/input-accessory-view/index.js.map +1 -1
  34. package/build/angular/components/keyboard-avoiding-view/index.d.ts +3 -1
  35. package/build/angular/components/keyboard-avoiding-view/index.js +56 -19
  36. package/build/angular/components/keyboard-avoiding-view/index.js.map +1 -1
  37. package/build/angular/components/modal/index.d.ts +1 -0
  38. package/build/angular/components/modal/index.js +21 -10
  39. package/build/angular/components/modal/index.js.map +1 -1
  40. package/build/angular/components/pressable/index.d.ts +10 -5
  41. package/build/angular/components/pressable/index.js +61 -16
  42. package/build/angular/components/pressable/index.js.map +1 -1
  43. package/build/angular/components/refresh-control/index.d.ts +2 -1
  44. package/build/angular/components/refresh-control/index.js +13 -9
  45. package/build/angular/components/refresh-control/index.js.map +1 -1
  46. package/build/angular/components/safe-area-view/index.d.ts +3 -1
  47. package/build/angular/components/safe-area-view/index.js +22 -20
  48. package/build/angular/components/safe-area-view/index.js.map +1 -1
  49. package/build/angular/components/scroll-view/index.android.js +44 -14
  50. package/build/angular/components/scroll-view/index.android.js.map +1 -1
  51. package/build/angular/components/scroll-view/index.ios.js +13 -5
  52. package/build/angular/components/scroll-view/index.ios.js.map +1 -1
  53. package/build/angular/components/scroll-view/projection.d.ts +32 -0
  54. package/build/angular/components/scroll-view/projection.js +212 -47
  55. package/build/angular/components/scroll-view/projection.js.map +1 -1
  56. package/build/angular/components/scroll-view/shared.d.ts +2 -0
  57. package/build/angular/components/scroll-view/shared.js +48 -11
  58. package/build/angular/components/scroll-view/shared.js.map +1 -1
  59. package/build/angular/components/scroll-view/sticky-header.js +7 -3
  60. package/build/angular/components/scroll-view/sticky-header.js.map +1 -1
  61. package/build/angular/components/section-list/index.d.ts +9 -1
  62. package/build/angular/components/section-list/index.js +72 -18
  63. package/build/angular/components/section-list/index.js.map +1 -1
  64. package/build/angular/components/switch/index.android.js +23 -9
  65. package/build/angular/components/switch/index.android.js.map +1 -1
  66. package/build/angular/components/switch/index.ios.js +23 -9
  67. package/build/angular/components/switch/index.ios.js.map +1 -1
  68. package/build/angular/components/switch/shared.d.ts +1 -1
  69. package/build/angular/components/switch/shared.js +5 -2
  70. package/build/angular/components/switch/shared.js.map +1 -1
  71. package/build/angular/components/text-input.d.ts +8 -2
  72. package/build/angular/components/text-input.js +79 -34
  73. package/build/angular/components/text-input.js.map +1 -1
  74. package/build/angular/components/touchable/index.d.ts +36 -7
  75. package/build/angular/components/touchable/index.js +280 -72
  76. package/build/angular/components/touchable/index.js.map +1 -1
  77. package/build/angular/components/touchable-native-feedback/index.d.ts +2 -1
  78. package/build/angular/components/touchable-native-feedback/index.js +19 -17
  79. package/build/angular/components/touchable-native-feedback/index.js.map +1 -1
  80. package/build/angular/components/virtualized-list/directives.js +4 -0
  81. package/build/angular/components/virtualized-list/directives.js.map +1 -1
  82. package/build/angular/components/virtualized-list/index.d.ts +8 -2
  83. package/build/angular/components/virtualized-list/index.js +207 -61
  84. package/build/angular/components/virtualized-list/index.js.map +1 -1
  85. package/build/angular/components/virtualized-section-list/directives.js.map +1 -1
  86. package/build/angular/components/virtualized-section-list/index.d.ts +21 -1
  87. package/build/angular/components/virtualized-section-list/index.js +100 -22
  88. package/build/angular/components/virtualized-section-list/index.js.map +1 -1
  89. package/build/angular/components.d.ts +2 -2
  90. package/build/angular/components.js +1 -1
  91. package/build/angular/components.js.map +1 -1
  92. package/build/angular/create-portal/index.d.ts +11 -2
  93. package/build/angular/create-portal/index.js +42 -12
  94. package/build/angular/create-portal/index.js.map +1 -1
  95. package/build/angular/create-tunnel/index.js.map +1 -1
  96. package/build/angular/descriptor-to-angular/index.js +3 -1
  97. package/build/angular/descriptor-to-angular/index.js.map +1 -1
  98. package/build/angular/diagnostics.d.ts +33 -0
  99. package/build/angular/diagnostics.js +82 -0
  100. package/build/angular/diagnostics.js.map +1 -0
  101. package/build/angular/gate-demand.d.ts +37 -0
  102. package/build/angular/gate-demand.js +84 -0
  103. package/build/angular/gate-demand.js.map +1 -0
  104. package/build/angular/host-instance/index.js +1 -1
  105. package/build/angular/host-instance/index.js.map +1 -1
  106. package/build/angular/index.d.ts +6 -2
  107. package/build/angular/index.js +16 -1
  108. package/build/angular/index.js.map +1 -1
  109. package/build/angular/modules/animated/create-animated-component.d.ts +1 -0
  110. package/build/angular/modules/animated/create-animated-component.js +41 -18
  111. package/build/angular/modules/animated/create-animated-component.js.map +1 -1
  112. package/build/angular/modules/app-registry/index.js.map +1 -1
  113. package/build/angular/modules/status-bar/index.js +1 -1
  114. package/build/angular/modules/status-bar/index.js.map +1 -1
  115. package/build/angular/primitives/index.d.ts +31 -2
  116. package/build/angular/primitives/index.js +81 -3
  117. package/build/angular/primitives/index.js.map +1 -1
  118. package/build/angular/primitives/shared.d.ts +9 -1
  119. package/build/angular/primitives/shared.js +49 -3
  120. package/build/angular/primitives/shared.js.map +1 -1
  121. package/build/angular/register.d.ts +1 -0
  122. package/build/angular/register.js +35 -0
  123. package/build/angular/register.js.map +1 -0
  124. package/build/angular/render/index.js +51 -6
  125. package/build/angular/render/index.js.map +1 -1
  126. package/build/angular/renderer/index.d.ts +1 -0
  127. package/build/angular/renderer/index.js +157 -21
  128. package/build/angular/renderer/index.js.map +1 -1
  129. package/build/angular/services/color-scheme.service.js.map +1 -1
  130. package/build/angular/services/window-dimensions.service.js +1 -1
  131. package/build/angular/services/window-dimensions.service.js.map +1 -1
  132. package/build/angular/state-style.d.ts +9 -0
  133. package/build/angular/state-style.js +39 -0
  134. package/build/angular/state-style.js.map +1 -0
  135. package/metro-transformer.cjs +69 -0
  136. package/package.json +27 -8
  137. package/src/anchor-host-registry.ts +3 -1
  138. package/src/bootstrap.ts +4 -1
  139. package/src/components/activity-indicator/index.android.ts +7 -2
  140. package/src/components/activity-indicator/index.ios.ts +3 -1
  141. package/src/components/activity-indicator/shared.ts +32 -13
  142. package/src/components/button.ts +36 -6
  143. package/src/components/flat-list/index.ts +91 -29
  144. package/src/components/image/index.android.ts +9 -6
  145. package/src/components/image/index.ios.ts +9 -6
  146. package/src/components/image/shared.ts +110 -45
  147. package/src/components/image-background.ts +47 -10
  148. package/src/components/input-accessory-view/index.ts +41 -18
  149. package/src/components/keyboard-avoiding-view/index.ts +76 -22
  150. package/src/components/modal/index.ts +39 -12
  151. package/src/components/pressable/index.ts +121 -31
  152. package/src/components/refresh-control/index.ts +36 -13
  153. package/src/components/safe-area-view/index.ts +44 -19
  154. package/src/components/scroll-view/index.android.ts +31 -9
  155. package/src/components/scroll-view/index.ios.ts +17 -4
  156. package/src/components/scroll-view/projection.ts +290 -63
  157. package/src/components/scroll-view/shared.ts +124 -30
  158. package/src/components/scroll-view/sticky-header.ts +25 -8
  159. package/src/components/section-list/index.ts +79 -19
  160. package/src/components/switch/index.android.ts +18 -7
  161. package/src/components/switch/index.ios.ts +18 -7
  162. package/src/components/switch/shared.ts +15 -4
  163. package/src/components/text-input.ts +119 -31
  164. package/src/components/touchable/index.ts +339 -72
  165. package/src/components/touchable-native-feedback/index.ts +50 -18
  166. package/src/components/virtualized-list/directives.ts +19 -5
  167. package/src/components/virtualized-list/index.ts +292 -72
  168. package/src/components/virtualized-section-list/directives.ts +6 -3
  169. package/src/components/virtualized-section-list/index.ts +164 -34
  170. package/src/components.ts +6 -1
  171. package/src/create-portal/index.ts +47 -11
  172. package/src/create-tunnel/index.ts +3 -1
  173. package/src/descriptor-to-angular/index.ts +29 -8
  174. package/src/diagnostics.ts +138 -0
  175. package/src/gate-demand.ts +109 -0
  176. package/src/host-instance/index.ts +9 -3
  177. package/src/index.ts +33 -2
  178. package/src/modules/animated/create-animated-component.ts +67 -19
  179. package/src/modules/app-registry/index.ts +3 -1
  180. package/src/modules/status-bar/index.ts +13 -4
  181. package/src/primitives/index.ts +73 -2
  182. package/src/primitives/shared.ts +70 -9
  183. package/src/register.ts +43 -0
  184. package/src/render/index.ts +59 -7
  185. package/src/renderer/index.ts +209 -37
  186. package/src/services/color-scheme.service.ts +3 -1
  187. package/src/services/window-dimensions.service.ts +11 -4
  188. package/src/state-style.ts +39 -0
@@ -24,12 +24,14 @@
24
24
  // Lists have no Descriptor render fn — the cell content is the framework's own children.
25
25
  // Cells/spacers are plain symbiote-view host elements.
26
26
  import { CUSTOM_ELEMENTS_SCHEMA, ChangeDetectionStrategy, ChangeDetectorRef, Component, ContentChild, ElementRef, EventEmitter, Input, Output, ViewChild, computed, inject, signal, } from '@angular/core';
27
- import { DEFAULT_END_REACHED_THRESHOLD, DEFAULT_INITIAL_NUM_TO_RENDER, DEFAULT_MAX_TO_RENDER_PER_BATCH, DEFAULT_START_REACHED_THRESHOLD, DEFAULT_UPDATE_CELLS_BATCHING_PERIOD, DEFAULT_WINDOW_SIZE, EMPTY_OFFSET, FIRST_INDEX, INVERTED_X_STYLE, INVERTED_Y_STYLE, buildListPlan, buildViewabilityPairs, createInitialListState, isSeparatorGapInRange, listEffectSignature, readLayoutLength, readScrollOffset, reduceList, resolveAccessibilityProps, resolveItemKey, } from '@symbiote-native/components';
27
+ import { DEFAULT_END_REACHED_THRESHOLD, DEFAULT_INITIAL_NUM_TO_RENDER, DEFAULT_MAX_TO_RENDER_PER_BATCH, DEFAULT_START_REACHED_THRESHOLD, DEFAULT_UPDATE_CELLS_BATCHING_PERIOD, DEFAULT_WINDOW_SIZE, EMPTY_OFFSET, FIRST_INDEX, INVERTED_X_STYLE, INVERTED_Y_STYLE, buildListPlan, buildViewabilityPairs, computeWindow, createInitialListState, isSeparatorGapInRange, listEffectSignature, readLayoutLength, readLayoutOffset, readScrollOffset, reduceList, resolveAccessibilityProps, resolveItemKey, } from '@symbiote-native/components';
28
28
  import { dlog, flattenStyle, } from '@symbiote-native/engine';
29
+ import { countAngular } from '../../diagnostics';
29
30
  import { ScrollView } from '../scroll-view';
30
31
  import { RefreshControl } from '../refresh-control';
31
- import { anchorHostStyle, SymbioteStyleInputDirective, ViewHost } from '../../primitives';
32
+ import { anchorHostStyle, SymbioteStyleInputDirective, ViewHost, } from '../../primitives';
32
33
  import { VListEmptyDirective, VListFooterDirective, VListHeaderDirective, VListItemDirective, VListOutletDirective, VListSeparatorDirective, } from './directives';
34
+ import { gateWanted, injectGateDemandAbove, provideGateDemand, } from '../../gate-demand';
33
35
  import * as i0 from "@angular/core";
34
36
  import * as i1 from "../../primitives/shared";
35
37
  export { VListEmptyDirective, VListFooterDirective, VListHeaderDirective, VListItemDirective, VListSeparatorDirective, } from './directives';
@@ -46,6 +48,13 @@ export class VirtualizedList {
46
48
  accessibilityTap = new EventEmitter();
47
49
  magicTap = new EventEmitter();
48
50
  accessibilityEscape = new EventEmitter();
51
+ // This wrapper binds the four gated accessibility events on the component it renders, which
52
+ // Angular forces to be unconditional and which would light that component's gates on every
53
+ // instance. It answers for them instead — see `gate-demand.ts`.
54
+ gateDemandAbove = injectGateDemandAbove();
55
+ wantsGate(name) {
56
+ return gateWanted(this.gateDemandAbove, name, this[name]);
57
+ }
49
58
  data;
50
59
  getItem;
51
60
  getItemCount;
@@ -162,6 +171,23 @@ export class VirtualizedList {
162
171
  listState = createInitialListState();
163
172
  renderVersion = EMPTY_OFFSET;
164
173
  cellMeasures = new Map();
174
+ // A cell's context object is the ONLY thing its stamped view reads, and VListOutletDirective
175
+ // refreshes that view whenever the object's IDENTITY changes. recomputeView runs on every frame
176
+ // the window moves, so minting a fresh context per cell made a four-row slide cost a refresh of
177
+ // EVERY cell in the window. MEASURED on PATH B geometry (544 entries, 320px viewport, RN
178
+ // defaults), per fling frame: 233-cell window, 4 cells genuinely entering, 228 outlet updates —
179
+ // each one a copyContextFields plus a markForCheck that walks to the root. Solid, same geometry,
180
+ // same shared reducer, same engine output: 4. Handing back the SAME object for a cell whose item
181
+ // and index did not move keeps `[vListOutletContext]` reference-equal, so ngOnChanges never fires
182
+ // for it. The fast adapters get this by construction — Solid's <For> is keyed on the cell KEY
183
+ // strings precisely so "the plan's freshly-built cell objects" cannot rebuild every row
184
+ // (adapters/solid/src/components/virtualized-list/shared.tsx, the cellKeys memo).
185
+ cellContexts = new Map();
186
+ nextCellContexts = new Map();
187
+ // Everything a cell's CONTENT can depend on that is not its own item identity. RN's contract for
188
+ // "re-render the cells, the data object itself did not change" is extraData; without it here an
189
+ // extraData flip would reuse every context and repaint nothing.
190
+ cellContextEpoch = undefined;
165
191
  separatorOverrides = new Map();
166
192
  // The adapter-owned debounce (minimumViewTime) and incremental-fill timers; the reducer only
167
193
  // hands back a delay.
@@ -169,9 +195,6 @@ export class VirtualizedList {
169
195
  batchTimer = null;
170
196
  // Dedupes the after-commit effects: they run only when the windowing signature changed.
171
197
  lastEffectSignature = '';
172
- // Dedupes dispatch's markForCheck against the RENDERED window (see dispatch below). Distinct from
173
- // lastEffectSignature, which gates the batch-fill timer and deliberately includes scrollOffset.
174
- lastRenderSignature = '';
175
198
  // Dedupes ngDoCheck's own recompute. WITHOUT this, recomputeView() unconditionally rebuilds
176
199
  // windowCells (and each cell's `separators` handle — fresh closures every call) on EVERY CD pass,
177
200
  // including ones triggered by something else entirely in the app. A fresh context object flows
@@ -266,7 +289,7 @@ export class VirtualizedList {
266
289
  return this.maxToRenderPerBatch ?? DEFAULT_MAX_TO_RENDER_PER_BATCH;
267
290
  }
268
291
  get updateCellsBatchingPeriodValue() {
269
- return this.updateCellsBatchingPeriod ?? DEFAULT_UPDATE_CELLS_BATCHING_PERIOD;
292
+ return (this.updateCellsBatchingPeriod ?? DEFAULT_UPDATE_CELLS_BATCHING_PERIOD);
270
293
  }
271
294
  get onEndReachedThresholdValue() {
272
295
  return this.onEndReachedThreshold ?? DEFAULT_END_REACHED_THRESHOLD;
@@ -278,6 +301,7 @@ export class VirtualizedList {
278
301
  // flow through it, which an @Output() can't carry), so this is a stable arrow field passed
279
302
  // straight to [onScroll]. onLayout is a real @Output() now, bound via (layout)="onLayoutTick($event)".
280
303
  onScrollTick = (event) => {
304
+ countAngular('scrollTicks');
281
305
  const offset = readScrollOffset(event, this.isHorizontal);
282
306
  if (offset === undefined)
283
307
  return;
@@ -352,20 +376,43 @@ export class VirtualizedList {
352
376
  if (!result.changed)
353
377
  return;
354
378
  this.renderVersion += 1;
355
- // The reducer reports `changed` for EVERY scroll offset - it has to, since the offset feeds
356
- // end-reached distance, viewability and the batch-fill timer, all handled above in runEffects.
357
- // The TEMPLATE reads none of those; it reads the window. Marking on the offset repainted the
358
- // whole ancestor chain 60 times a second on a sticky screen for a window that had not moved.
359
- const signature = this.renderSignature();
360
- if (signature === this.lastRenderSignature)
379
+ if (this.isWindowSettled(action))
361
380
  return;
362
- this.lastRenderSignature = signature;
381
+ countAngular('listMarks');
363
382
  this.cdr.markForCheck();
364
383
  }
365
- // The window, not the offset: exactly the metrics recomputeView turns into cells and spacers.
366
- renderSignature() {
384
+ // The reducer reports `changed` for EVERY scroll offset - it has to, since the offset feeds
385
+ // end-reached distance, viewability and the batch-fill timer, all handled by runEffects. The
386
+ // TEMPLATE reads none of those; it reads the window. Marking on the offset repainted the whole
387
+ // ancestor chain 60 times a second on a sticky screen for a window that had not moved.
388
+ //
389
+ // So the question here is "would a render leave the window exactly where it is", and it is asked
390
+ // of the state as it is NOW. It must NOT be answered by comparing the last-rendered window with
391
+ // the one before it: that window was derived from the PREVIOUS scroll offset, so once two
392
+ // consecutive derives agree the comparison reads "settled" for every offset that ever follows -
393
+ // no mark, no CD, no ngDoCheck, no refresh-metrics, so the window can never move again and the
394
+ // list goes permanently deaf mid-scroll (device: examples/angular Benchmark sticky path B froze
395
+ // at exactly the window the first viewport asked for, blank below it).
396
+ //
397
+ // computeWindow re-run over the CACHED offset table answers it directly. Two scans, no
398
+ // allocation - buildOffsets, the O(count) allocating half, still runs once per render only. It is
399
+ // the same function the render will use, so this cannot drift away from the window it predicts.
400
+ isWindowSettled(action) {
401
+ // A measurement rewrites the very offset table the prediction reads, so it has no cached
402
+ // geometry to answer from.
403
+ if (action.kind === 'measure')
404
+ return false;
367
405
  const m = this.listState.metrics;
368
- return `${m.first}|${m.last}|${m.count}|${m.total}`;
406
+ // Mid-fill: the committed window is still climbing toward target one batch step per render, and
407
+ // only a render advances it. Skipping the mark here is what stalls the incremental fill.
408
+ if (m.first !== m.target.first || m.last !== m.target.last)
409
+ return false;
410
+ const next = computeWindow(m.count, m.offsets, m.lengths, this.listState.scrollOffset, this.listState.viewportLength, this.windowSizeValue, this.initialNumToRenderValue);
411
+ const isSettled = next.first === m.target.first && next.last === m.target.last;
412
+ if (!isSettled)
413
+ dlog(`Angular VirtualizedList window moves [${m.first}, ${m.last}] -> ` +
414
+ `[${next.first}, ${next.last}] at offset ${this.listState.scrollOffset}`);
415
+ return isSettled;
369
416
  }
370
417
  runEffects(effects, inputs) {
371
418
  for (const effect of effects) {
@@ -377,7 +424,9 @@ export class VirtualizedList {
377
424
  this.endReached.emit({ distanceFromEnd: effect.distanceFromEnd });
378
425
  break;
379
426
  case 'fire-start-reached':
380
- this.startReached.emit({ distanceFromStart: effect.distanceFromStart });
427
+ this.startReached.emit({
428
+ distanceFromStart: effect.distanceFromStart,
429
+ });
381
430
  break;
382
431
  case 'fire-scroll-to-index-failed':
383
432
  this.scrollToIndexFailed.emit({
@@ -436,6 +485,7 @@ export class VirtualizedList {
436
485
  // grows exactly one step per meaningful CD. The projected templates (ContentChild) are resolved
437
486
  // from the second CD on; the first paint (count/viewport still 0) corrects on the layout-driven CD.
438
487
  ngDoCheck() {
488
+ countAngular('listChecks');
439
489
  const recomputeInputs = [
440
490
  this.data,
441
491
  this.extraData,
@@ -469,6 +519,7 @@ export class VirtualizedList {
469
519
  return;
470
520
  }
471
521
  // The single derive-per-CD: recompute the window off the current state before the view reads it.
522
+ countAngular('listRecomputes');
472
523
  reduceList(this.listState, { kind: 'refresh-metrics' }, this.buildInputs());
473
524
  this.recomputeView();
474
525
  }
@@ -492,7 +543,9 @@ export class VirtualizedList {
492
543
  this.itemCount = m.count;
493
544
  const hasHeader = this.headerDir !== undefined;
494
545
  const hasSeparators = this.separatorDir !== undefined;
495
- const stickySet = this.stickyHeaderIndices !== undefined ? new Set(this.stickyHeaderIndices) : undefined;
546
+ const stickySet = this.stickyHeaderIndices !== undefined
547
+ ? new Set(this.stickyHeaderIndices)
548
+ : undefined;
496
549
  this.resolvedContentContainerStyle = this.isHorizontal
497
550
  ? [this.contentContainerStyle, { width: m.total }]
498
551
  : this.contentContainerStyle;
@@ -512,9 +565,27 @@ export class VirtualizedList {
512
565
  ? undefined
513
566
  : {
514
567
  ...this.maintainVisibleContentPosition,
515
- minIndexForVisible: this.maintainVisibleContentPosition.minIndexForVisible + (hasHeader ? 1 : 0),
568
+ minIndexForVisible: this.maintainVisibleContentPosition.minIndexForVisible +
569
+ (hasHeader ? 1 : 0),
516
570
  };
571
+ // A change in anything a cell's content reads other than its own item invalidates every cached
572
+ // context: identity reuse is only sound while the reused object still describes the cell.
573
+ const epoch = [
574
+ this.data,
575
+ this.extraData,
576
+ this.getItem,
577
+ this.keyExtractor,
578
+ ];
579
+ const previousEpoch = this.cellContextEpoch;
580
+ this.cellContextEpoch = epoch;
581
+ if (previousEpoch === undefined ||
582
+ previousEpoch.length !== epoch.length ||
583
+ !previousEpoch.every((value, index) => value === epoch[index])) {
584
+ this.cellContexts.clear();
585
+ }
517
586
  if (m.count === FIRST_INDEX) {
587
+ this.cellContexts.clear();
588
+ this.nextCellContexts.clear();
518
589
  this.windowCells = [];
519
590
  this.forcedStickyCell = null;
520
591
  this.leadingSpacerStyle = null;
@@ -534,13 +605,17 @@ export class VirtualizedList {
534
605
  keyFor: this.keyFor,
535
606
  stickyIndices: stickySet,
536
607
  hasHeader,
537
- hasSeparators,
538
608
  });
539
609
  this.leadingSpacerStyle =
540
- plan.leadingExtent > EMPTY_OFFSET ? this.spacerStyle(plan.leadingExtent) : null;
541
- this.gapSpacerStyle = plan.gapExtent > EMPTY_OFFSET ? this.spacerStyle(plan.gapExtent) : null;
610
+ plan.leadingExtent > EMPTY_OFFSET
611
+ ? this.spacerStyle(plan.leadingExtent)
612
+ : null;
613
+ this.gapSpacerStyle =
614
+ plan.gapExtent > EMPTY_OFFSET ? this.spacerStyle(plan.gapExtent) : null;
542
615
  this.trailingSpacerStyle =
543
- plan.trailingExtent > EMPTY_OFFSET ? this.spacerStyle(plan.trailingExtent) : null;
616
+ plan.trailingExtent > EMPTY_OFFSET
617
+ ? this.spacerStyle(plan.trailingExtent)
618
+ : null;
544
619
  this.renderedStickyIndices =
545
620
  stickySet !== undefined && plan.stickyChildPositions.length > 0
546
621
  ? plan.stickyChildPositions
@@ -555,10 +630,19 @@ export class VirtualizedList {
555
630
  : null;
556
631
  const cells = [];
557
632
  for (const planned of plan.cells) {
558
- const includeSeparator = hasSeparators && planned.index < m.last;
633
+ // RN gates the separator on the last index of the DATA, not of the WINDOW
634
+ // (VirtualizedList.js:793 `const end = getItemCount(data) - 1`), and now that the separator
635
+ // lives INSIDE the measuring wrapper that distinction is load-bearing: gating on the window
636
+ // would make a cell's own measured height change as the window slides past it. Device-measured
637
+ // 2026-08-19 as a run of cells all shifting by exactly the divider's 1px.
638
+ const includeSeparator = hasSeparators && planned.index < m.count - 1;
559
639
  cells.push(this.buildWindowCell(planned.index, planned.key, includeSeparator));
560
640
  }
561
641
  this.windowCells = cells;
642
+ // Swap, don't prune: a cell that left the window is simply absent from the pass that just ran,
643
+ // so the old map is the garbage and the new one is exactly the live set.
644
+ this.cellContexts = this.nextCellContexts;
645
+ this.nextCellContexts = new Map();
562
646
  dlog(`Angular VirtualizedList window [${m.first}, ${m.last}] of ${m.count} ` +
563
647
  `(offset=${this.listState.scrollOffset}, viewport=${this.listState.viewportLength}, rendered=${cells.length})`);
564
648
  }
@@ -566,18 +650,32 @@ export class VirtualizedList {
566
650
  // separator context — so both plan.cells and plan.forcedStickyCell build identically.
567
651
  buildWindowCell(index, key, includeSeparator) {
568
652
  const item = this.getItem(this.data, index);
569
- const context = {
570
- $implicit: item,
571
- index,
572
- separators: this.makeSeparators(index),
573
- };
574
653
  return {
575
654
  key,
576
655
  index,
577
- context,
656
+ context: this.contextFor(key, index, item),
578
657
  measure: this.cellMeasure(index),
579
- separatorContext: includeSeparator ? this.buildSeparatorContext(index, item) : undefined,
658
+ separatorContext: includeSeparator
659
+ ? this.buildSeparatorContext(index, item)
660
+ : undefined,
661
+ };
662
+ }
663
+ // The context for one cell, reused by identity when the cell did not move. See cellContexts.
664
+ contextFor(key, index, item) {
665
+ const cached = this.cellContexts.get(key);
666
+ if (cached !== undefined &&
667
+ cached.$implicit === item &&
668
+ cached.index === index) {
669
+ this.nextCellContexts.set(key, cached);
670
+ return cached;
671
+ }
672
+ const context = {
673
+ $implicit: item,
674
+ index,
675
+ separators: this.makeSeparators(index),
580
676
  };
677
+ this.nextCellContexts.set(key, context);
678
+ return context;
581
679
  }
582
680
  buildSeparatorContext(index, item) {
583
681
  const overrides = this.separatorOverrides.get(index);
@@ -592,7 +690,9 @@ export class VirtualizedList {
592
690
  // arbitrary separator props); the typed fields above stay authoritative.
593
691
  if (overrides !== undefined) {
594
692
  for (const key of Object.keys(overrides)) {
595
- if (key === 'highlighted' || key === 'leadingItem' || key === 'trailingItem')
693
+ if (key === 'highlighted' ||
694
+ key === 'leadingItem' ||
695
+ key === 'trailingItem')
596
696
  continue;
597
697
  context[key] = overrides[key];
598
698
  }
@@ -610,10 +710,11 @@ export class VirtualizedList {
610
710
  const length = readLayoutLength(event, this.isHorizontal);
611
711
  if (length === undefined)
612
712
  return;
613
- dlog(`Angular VirtualizedList cell ${index} measured length=${length}`);
713
+ const offset = readLayoutOffset(event, this.isHorizontal);
714
+ dlog(`Angular VirtualizedList cell ${index} measured length=${length} offset=${offset ?? 'none'}`);
614
715
  // The reducer guards a fixed getItemLayout and a repeated length; a no-op leaves state and the
615
716
  // view untouched (dispatch marks for check only when something changed).
616
- this.dispatch({ kind: 'measure', index, length });
717
+ this.dispatch({ kind: 'measure', index, length, offset });
617
718
  };
618
719
  this.cellMeasures.set(index, measure);
619
720
  return measure;
@@ -625,13 +726,16 @@ export class VirtualizedList {
625
726
  measure(event);
626
727
  }
627
728
  isSymbioteEvent(value) {
628
- return typeof value === 'object' && value !== null && 'nativeEvent' in value;
729
+ return (typeof value === 'object' && value !== null && 'nativeEvent' in value);
629
730
  }
630
731
  mergeSeparator(gapIndex, patch) {
631
732
  const count = this.listState.metrics.count;
632
733
  if (!isSeparatorGapInRange(gapIndex, count))
633
734
  return;
634
- this.separatorOverrides.set(gapIndex, { ...this.separatorOverrides.get(gapIndex), ...patch });
735
+ this.separatorOverrides.set(gapIndex, {
736
+ ...this.separatorOverrides.get(gapIndex),
737
+ ...patch,
738
+ });
635
739
  this.cdr.markForCheck();
636
740
  }
637
741
  makeSeparators(index) {
@@ -679,7 +783,10 @@ export class VirtualizedList {
679
783
  });
680
784
  }
681
785
  scrollToEnd(params) {
682
- this.dispatch({ kind: 'scroll-to-end', animated: params?.animated ?? true });
786
+ this.dispatch({
787
+ kind: 'scroll-to-end',
788
+ animated: params?.animated ?? true,
789
+ });
683
790
  }
684
791
  flashScrollIndicators() {
685
792
  this.scrollView?.flashScrollIndicators();
@@ -729,12 +836,20 @@ export class VirtualizedList {
729
836
  [accessibilityValue]="foldedAccessibility().accessibilityValue"
730
837
  [accessibilityActions]="foldedAccessibility().accessibilityActions"
731
838
  [accessibilityLabelledBy]="foldedAccessibility().accessibilityLabelledBy"
732
- [importantForAccessibility]="foldedAccessibility().importantForAccessibility"
839
+ [importantForAccessibility]="
840
+ foldedAccessibility().importantForAccessibility
841
+ "
733
842
  [accessibilityLiveRegion]="foldedAccessibility().accessibilityLiveRegion"
734
843
  [screenReaderFocusable]="foldedAccessibility().screenReaderFocusable"
735
- [accessibilityViewIsModal]="foldedAccessibility().accessibilityViewIsModal"
736
- [accessibilityElementsHidden]="foldedAccessibility().accessibilityElementsHidden"
737
- [accessibilityIgnoresInvertColors]="foldedAccessibility().accessibilityIgnoresInvertColors"
844
+ [accessibilityViewIsModal]="
845
+ foldedAccessibility().accessibilityViewIsModal
846
+ "
847
+ [accessibilityElementsHidden]="
848
+ foldedAccessibility().accessibilityElementsHidden
849
+ "
850
+ [accessibilityIgnoresInvertColors]="
851
+ foldedAccessibility().accessibilityIgnoresInvertColors
852
+ "
738
853
  [accessibilityLanguage]="foldedAccessibility().accessibilityLanguage"
739
854
  [accessibilityRespondsToUserInteraction]="
740
855
  foldedAccessibility().accessibilityRespondsToUserInteraction
@@ -742,7 +857,9 @@ export class VirtualizedList {
742
857
  [accessibilityShowsLargeContentViewer]="
743
858
  foldedAccessibility().accessibilityShowsLargeContentViewer
744
859
  "
745
- [accessibilityLargeContentTitle]="foldedAccessibility().accessibilityLargeContentTitle"
860
+ [accessibilityLargeContentTitle]="
861
+ foldedAccessibility().accessibilityLargeContentTitle
862
+ "
746
863
  (accessibilityAction)="accessibilityActionTick($event)"
747
864
  (accessibilityTap)="accessibilityTapTick($event)"
748
865
  (magicTap)="magicTapTick($event)"
@@ -798,21 +915,29 @@ export class VirtualizedList {
798
915
  @if (gapSpacerStyle !== null) {
799
916
  <symbiote-view [style]="gapSpacerStyle"></symbiote-view>
800
917
  }
918
+ <!-- The separator sits INSIDE the measuring view, as RN's own cell renderer places it
919
+ (VirtualizedListCellRenderer.js:218-221). As a sibling it is an extra flex child, so
920
+ the chrome between two cells is gap + separator + gap while a spacer collapsing that
921
+ region replaces it with a single gap — every cell below the leading spacer then lands
922
+ short by (separator + gap) and the content jumps by that much whenever the window's
923
+ first index moves. Measured at exactly 17px on device 2026-08-19; see
924
+ .claude/rules/list-geometry-feedback-loop.md. -->
801
925
  @for (cell of windowCells; track cell.key) {
802
- <symbiote-view (layout)="handleCellLayout(cell.measure, $event)" [style]="cellStyle">
926
+ <symbiote-view
927
+ (layout)="handleCellLayout(cell.measure, $event)"
928
+ [style]="cellStyle"
929
+ >
803
930
  <ng-container
804
931
  [vListOutlet]="itemDir?.templateRef"
805
932
  [vListOutletContext]="cell.context"
806
933
  ></ng-container>
807
- </symbiote-view>
808
- @if (cell.separatorContext !== undefined) {
809
- <symbiote-view>
934
+ @if (cell.separatorContext !== undefined) {
810
935
  <ng-container
811
936
  [vListOutlet]="separatorDir?.templateRef"
812
937
  [vListOutletContext]="cell.separatorContext"
813
938
  ></ng-container>
814
- </symbiote-view>
815
- }
939
+ }
940
+ </symbiote-view>
816
941
  }
817
942
  @if (trailingSpacerStyle !== null) {
818
943
  <symbiote-view [style]="trailingSpacerStyle"></symbiote-view>
@@ -825,14 +950,17 @@ export class VirtualizedList {
825
950
  </symbiote-view>
826
951
  }
827
952
  </ScrollView>
828
- `, isInline: true, dependencies: [{ kind: "component", type: ScrollView, selector: "ScrollView", inputs: ["style", "contentContainerStyle", "horizontal", "scrollEnabled", "showsVerticalScrollIndicator", "showsHorizontalScrollIndicator", "pagingEnabled", "bounces", "decelerationRate", "scrollEventThrottle", "contentInset", "contentOffset", "removeClippedSubviews", "snapToInterval", "snapToOffsets", "snapToAlignment", "snapToStart", "snapToEnd", "disableIntervalMomentum", "stickyHeaderIndices", "invertStickyHeaders", "StickyHeaderComponent", "keyboardDismissMode", "keyboardShouldPersistTaps", "maintainVisibleContentPosition", "alwaysBounceHorizontal", "alwaysBounceVertical", "centerContent", "scrollIndicatorInsets", "indicatorStyle", "directionalLockEnabled", "automaticallyAdjustKeyboardInsets", "contentInsetAdjustmentBehavior", "minimumZoomScale", "maximumZoomScale", "zoomScale", "bouncesZoom", "pinchGestureEnabled", "nestedScrollEnabled", "overScrollMode", "fadingEdgeLength", "persistentScrollbar", "endFillColor", "onScroll", "onScrollBeginDrag", "onScrollEndDrag", "onMomentumScrollBegin", "onMomentumScrollEnd", "testID", "nativeID", "accessible", "accessibilityLabel", "accessibilityHint", "accessibilityRole", "accessibilityState", "accessibilityValue", "accessibilityActions", "accessibilityLabelledBy", "importantForAccessibility", "accessibilityLiveRegion", "screenReaderFocusable", "accessibilityViewIsModal", "accessibilityElementsHidden", "accessibilityIgnoresInvertColors", "accessibilityLanguage", "accessibilityRespondsToUserInteraction", "accessibilityShowsLargeContentViewer", "accessibilityLargeContentTitle", "role", "aria-label", "aria-labelledby", "aria-live", "aria-hidden", "aria-busy", "aria-checked", "aria-disabled", "aria-expanded", "aria-selected", "aria-modal", "aria-valuemax", "aria-valuemin", "aria-valuenow", "aria-valuetext"] }, { kind: "component", type: RefreshControl, selector: "RefreshControl", inputs: ["refreshing", "tintColor", "title", "titleColor", "progressViewOffset", "colors", "progressBackgroundColor", "size", "enabled", "style", "testID", "nativeID", "accessible", "accessibilityLabel", "accessibilityHint", "accessibilityRole", "accessibilityState", "accessibilityValue", "accessibilityActions", "accessibilityLabelledBy", "importantForAccessibility", "accessibilityLiveRegion", "screenReaderFocusable", "accessibilityViewIsModal", "accessibilityElementsHidden", "accessibilityIgnoresInvertColors", "accessibilityLanguage", "accessibilityRespondsToUserInteraction", "accessibilityShowsLargeContentViewer", "accessibilityLargeContentTitle", "role", "aria-label", "aria-labelledby", "aria-live", "aria-hidden", "aria-busy", "aria-checked", "aria-disabled", "aria-expanded", "aria-selected", "aria-modal", "aria-valuemax", "aria-valuemin", "aria-valuenow", "aria-valuetext"], outputs: ["refresh", "accessibilityAction", "accessibilityTap", "magicTap", "accessibilityEscape"] }, { kind: "directive", type: VListOutletDirective, selector: "[vListOutlet]", inputs: ["vListOutlet", "vListOutletContext"] }, { kind: "component", type: ViewHost, selector: "symbiote-view, View" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
953
+ `, isInline: true, dependencies: [{ kind: "component", type: ScrollView, selector: "ScrollView", inputs: ["style", "contentContainerStyle", "horizontal", "scrollEnabled", "showsVerticalScrollIndicator", "showsHorizontalScrollIndicator", "pagingEnabled", "bounces", "decelerationRate", "scrollEventThrottle", "contentInset", "contentOffset", "removeClippedSubviews", "snapToInterval", "snapToOffsets", "snapToAlignment", "snapToStart", "snapToEnd", "disableIntervalMomentum", "stickyHeaderIndices", "invertStickyHeaders", "StickyHeaderComponent", "keyboardDismissMode", "keyboardShouldPersistTaps", "maintainVisibleContentPosition", "alwaysBounceHorizontal", "alwaysBounceVertical", "centerContent", "scrollIndicatorInsets", "indicatorStyle", "directionalLockEnabled", "automaticallyAdjustKeyboardInsets", "contentInsetAdjustmentBehavior", "minimumZoomScale", "maximumZoomScale", "zoomScale", "bouncesZoom", "pinchGestureEnabled", "nestedScrollEnabled", "overScrollMode", "fadingEdgeLength", "persistentScrollbar", "endFillColor", "onScroll", "onScrollBeginDrag", "onScrollEndDrag", "onMomentumScrollBegin", "onMomentumScrollEnd", "testID", "nativeID", "accessible", "accessibilityLabel", "accessibilityHint", "accessibilityRole", "accessibilityState", "accessibilityValue", "accessibilityActions", "accessibilityLabelledBy", "importantForAccessibility", "accessibilityLiveRegion", "screenReaderFocusable", "accessibilityViewIsModal", "accessibilityElementsHidden", "accessibilityIgnoresInvertColors", "accessibilityLanguage", "accessibilityRespondsToUserInteraction", "accessibilityShowsLargeContentViewer", "accessibilityLargeContentTitle", "role", "aria-label", "aria-labelledby", "aria-live", "aria-hidden", "aria-busy", "aria-checked", "aria-disabled", "aria-expanded", "aria-selected", "aria-modal", "aria-valuemax", "aria-valuemin", "aria-valuenow", "aria-valuetext"] }, { kind: "component", type: RefreshControl, selector: "RefreshControl", inputs: ["refreshing", "tintColor", "title", "titleColor", "progressViewOffset", "colors", "progressBackgroundColor", "size", "enabled", "style", "testID", "nativeID", "accessible", "accessibilityLabel", "accessibilityHint", "accessibilityRole", "accessibilityState", "accessibilityValue", "accessibilityActions", "accessibilityLabelledBy", "importantForAccessibility", "accessibilityLiveRegion", "screenReaderFocusable", "accessibilityViewIsModal", "accessibilityElementsHidden", "accessibilityIgnoresInvertColors", "accessibilityLanguage", "accessibilityRespondsToUserInteraction", "accessibilityShowsLargeContentViewer", "accessibilityLargeContentTitle", "role", "aria-label", "aria-labelledby", "aria-live", "aria-hidden", "aria-busy", "aria-checked", "aria-disabled", "aria-expanded", "aria-selected", "aria-modal", "aria-valuemax", "aria-valuemin", "aria-valuenow", "aria-valuetext"], outputs: ["refresh", "accessibilityAction", "accessibilityTap", "magicTap", "accessibilityEscape"] }, { kind: "directive", type: VListOutletDirective, selector: "[vListOutlet]", inputs: ["vListOutlet", "vListOutletContext"] }, { kind: "component", type: ViewHost, selector: "symbiote-view, View" }], viewProviders: [provideGateDemand(() => VirtualizedList)], changeDetection: i0.ChangeDetectionStrategy.OnPush });
829
954
  }
830
955
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: VirtualizedList, decorators: [{
831
956
  type: Component,
832
957
  args: [{
833
958
  selector: 'VirtualizedList',
834
959
  standalone: true,
835
- hostDirectives: [{ directive: SymbioteStyleInputDirective, inputs: ['style'] }],
960
+ viewProviders: [provideGateDemand(() => VirtualizedList)],
961
+ hostDirectives: [
962
+ { directive: SymbioteStyleInputDirective, inputs: ['style'] },
963
+ ],
836
964
  schemas: [CUSTOM_ELEMENTS_SCHEMA],
837
965
  imports: [ScrollView, RefreshControl, VListOutletDirective, ViewHost],
838
966
  changeDetection: ChangeDetectionStrategy.OnPush,
@@ -851,12 +979,20 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImpor
851
979
  [accessibilityValue]="foldedAccessibility().accessibilityValue"
852
980
  [accessibilityActions]="foldedAccessibility().accessibilityActions"
853
981
  [accessibilityLabelledBy]="foldedAccessibility().accessibilityLabelledBy"
854
- [importantForAccessibility]="foldedAccessibility().importantForAccessibility"
982
+ [importantForAccessibility]="
983
+ foldedAccessibility().importantForAccessibility
984
+ "
855
985
  [accessibilityLiveRegion]="foldedAccessibility().accessibilityLiveRegion"
856
986
  [screenReaderFocusable]="foldedAccessibility().screenReaderFocusable"
857
- [accessibilityViewIsModal]="foldedAccessibility().accessibilityViewIsModal"
858
- [accessibilityElementsHidden]="foldedAccessibility().accessibilityElementsHidden"
859
- [accessibilityIgnoresInvertColors]="foldedAccessibility().accessibilityIgnoresInvertColors"
987
+ [accessibilityViewIsModal]="
988
+ foldedAccessibility().accessibilityViewIsModal
989
+ "
990
+ [accessibilityElementsHidden]="
991
+ foldedAccessibility().accessibilityElementsHidden
992
+ "
993
+ [accessibilityIgnoresInvertColors]="
994
+ foldedAccessibility().accessibilityIgnoresInvertColors
995
+ "
860
996
  [accessibilityLanguage]="foldedAccessibility().accessibilityLanguage"
861
997
  [accessibilityRespondsToUserInteraction]="
862
998
  foldedAccessibility().accessibilityRespondsToUserInteraction
@@ -864,7 +1000,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImpor
864
1000
  [accessibilityShowsLargeContentViewer]="
865
1001
  foldedAccessibility().accessibilityShowsLargeContentViewer
866
1002
  "
867
- [accessibilityLargeContentTitle]="foldedAccessibility().accessibilityLargeContentTitle"
1003
+ [accessibilityLargeContentTitle]="
1004
+ foldedAccessibility().accessibilityLargeContentTitle
1005
+ "
868
1006
  (accessibilityAction)="accessibilityActionTick($event)"
869
1007
  (accessibilityTap)="accessibilityTapTick($event)"
870
1008
  (magicTap)="magicTapTick($event)"
@@ -920,21 +1058,29 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImpor
920
1058
  @if (gapSpacerStyle !== null) {
921
1059
  <symbiote-view [style]="gapSpacerStyle"></symbiote-view>
922
1060
  }
1061
+ <!-- The separator sits INSIDE the measuring view, as RN's own cell renderer places it
1062
+ (VirtualizedListCellRenderer.js:218-221). As a sibling it is an extra flex child, so
1063
+ the chrome between two cells is gap + separator + gap while a spacer collapsing that
1064
+ region replaces it with a single gap — every cell below the leading spacer then lands
1065
+ short by (separator + gap) and the content jumps by that much whenever the window's
1066
+ first index moves. Measured at exactly 17px on device 2026-08-19; see
1067
+ .claude/rules/list-geometry-feedback-loop.md. -->
923
1068
  @for (cell of windowCells; track cell.key) {
924
- <symbiote-view (layout)="handleCellLayout(cell.measure, $event)" [style]="cellStyle">
1069
+ <symbiote-view
1070
+ (layout)="handleCellLayout(cell.measure, $event)"
1071
+ [style]="cellStyle"
1072
+ >
925
1073
  <ng-container
926
1074
  [vListOutlet]="itemDir?.templateRef"
927
1075
  [vListOutletContext]="cell.context"
928
1076
  ></ng-container>
929
- </symbiote-view>
930
- @if (cell.separatorContext !== undefined) {
931
- <symbiote-view>
1077
+ @if (cell.separatorContext !== undefined) {
932
1078
  <ng-container
933
1079
  [vListOutlet]="separatorDir?.templateRef"
934
1080
  [vListOutletContext]="cell.separatorContext"
935
1081
  ></ng-container>
936
- </symbiote-view>
937
- }
1082
+ }
1083
+ </symbiote-view>
938
1084
  }
939
1085
  @if (trailingSpacerStyle !== null) {
940
1086
  <symbiote-view [style]="trailingSpacerStyle"></symbiote-view>
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/virtualized-list/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/virtualized-list/index.ts"],"names":[],"mappings":"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"}