@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.
- package/README.md +3 -3
- package/babel-lower-host-primitives.cjs +636 -0
- package/babel-register-composed.cjs +21 -3
- package/build/angular/anchor-host-registry.js +3 -1
- package/build/angular/anchor-host-registry.js.map +1 -1
- package/build/angular/bootstrap.js +1 -1
- package/build/angular/bootstrap.js.map +1 -1
- package/build/angular/components/activity-indicator/index.android.js +7 -2
- package/build/angular/components/activity-indicator/index.android.js.map +1 -1
- package/build/angular/components/activity-indicator/index.ios.js +3 -1
- package/build/angular/components/activity-indicator/index.ios.js.map +1 -1
- package/build/angular/components/activity-indicator/shared.d.ts +1 -1
- package/build/angular/components/activity-indicator/shared.js +1 -1
- package/build/angular/components/activity-indicator/shared.js.map +1 -1
- package/build/angular/components/button.d.ts +3 -0
- package/build/angular/components/button.js +22 -5
- package/build/angular/components/button.js.map +1 -1
- package/build/angular/components/flat-list/index.d.ts +1 -1
- package/build/angular/components/flat-list/index.js +47 -14
- package/build/angular/components/flat-list/index.js.map +1 -1
- package/build/angular/components/image/index.android.js +4 -10
- package/build/angular/components/image/index.android.js.map +1 -1
- package/build/angular/components/image/index.ios.js +4 -10
- package/build/angular/components/image/index.ios.js.map +1 -1
- package/build/angular/components/image/shared.d.ts +4 -4
- package/build/angular/components/image/shared.js +51 -33
- package/build/angular/components/image/shared.js.map +1 -1
- package/build/angular/components/image-background.d.ts +3 -0
- package/build/angular/components/image-background.js +32 -9
- package/build/angular/components/image-background.js.map +1 -1
- package/build/angular/components/input-accessory-view/index.d.ts +2 -1
- package/build/angular/components/input-accessory-view/index.js +18 -16
- package/build/angular/components/input-accessory-view/index.js.map +1 -1
- package/build/angular/components/keyboard-avoiding-view/index.d.ts +3 -1
- package/build/angular/components/keyboard-avoiding-view/index.js +56 -19
- package/build/angular/components/keyboard-avoiding-view/index.js.map +1 -1
- package/build/angular/components/modal/index.d.ts +1 -0
- package/build/angular/components/modal/index.js +21 -10
- package/build/angular/components/modal/index.js.map +1 -1
- package/build/angular/components/pressable/index.d.ts +10 -5
- package/build/angular/components/pressable/index.js +61 -16
- package/build/angular/components/pressable/index.js.map +1 -1
- package/build/angular/components/refresh-control/index.d.ts +2 -1
- package/build/angular/components/refresh-control/index.js +13 -9
- package/build/angular/components/refresh-control/index.js.map +1 -1
- package/build/angular/components/safe-area-view/index.d.ts +3 -1
- package/build/angular/components/safe-area-view/index.js +22 -20
- package/build/angular/components/safe-area-view/index.js.map +1 -1
- package/build/angular/components/scroll-view/index.android.js +44 -14
- package/build/angular/components/scroll-view/index.android.js.map +1 -1
- package/build/angular/components/scroll-view/index.ios.js +13 -5
- package/build/angular/components/scroll-view/index.ios.js.map +1 -1
- package/build/angular/components/scroll-view/projection.d.ts +32 -0
- package/build/angular/components/scroll-view/projection.js +212 -47
- package/build/angular/components/scroll-view/projection.js.map +1 -1
- package/build/angular/components/scroll-view/shared.d.ts +2 -0
- package/build/angular/components/scroll-view/shared.js +48 -11
- package/build/angular/components/scroll-view/shared.js.map +1 -1
- package/build/angular/components/scroll-view/sticky-header.js +7 -3
- package/build/angular/components/scroll-view/sticky-header.js.map +1 -1
- package/build/angular/components/section-list/index.d.ts +9 -1
- package/build/angular/components/section-list/index.js +72 -18
- package/build/angular/components/section-list/index.js.map +1 -1
- package/build/angular/components/switch/index.android.js +23 -9
- package/build/angular/components/switch/index.android.js.map +1 -1
- package/build/angular/components/switch/index.ios.js +23 -9
- package/build/angular/components/switch/index.ios.js.map +1 -1
- package/build/angular/components/switch/shared.d.ts +1 -1
- package/build/angular/components/switch/shared.js +5 -2
- package/build/angular/components/switch/shared.js.map +1 -1
- package/build/angular/components/text-input.d.ts +8 -2
- package/build/angular/components/text-input.js +79 -34
- package/build/angular/components/text-input.js.map +1 -1
- package/build/angular/components/touchable/index.d.ts +36 -7
- package/build/angular/components/touchable/index.js +280 -72
- package/build/angular/components/touchable/index.js.map +1 -1
- package/build/angular/components/touchable-native-feedback/index.d.ts +2 -1
- package/build/angular/components/touchable-native-feedback/index.js +19 -17
- package/build/angular/components/touchable-native-feedback/index.js.map +1 -1
- package/build/angular/components/virtualized-list/directives.js +4 -0
- package/build/angular/components/virtualized-list/directives.js.map +1 -1
- package/build/angular/components/virtualized-list/index.d.ts +8 -2
- package/build/angular/components/virtualized-list/index.js +207 -61
- package/build/angular/components/virtualized-list/index.js.map +1 -1
- package/build/angular/components/virtualized-section-list/directives.js.map +1 -1
- package/build/angular/components/virtualized-section-list/index.d.ts +21 -1
- package/build/angular/components/virtualized-section-list/index.js +100 -22
- package/build/angular/components/virtualized-section-list/index.js.map +1 -1
- package/build/angular/components.d.ts +2 -2
- package/build/angular/components.js +1 -1
- package/build/angular/components.js.map +1 -1
- package/build/angular/create-portal/index.d.ts +11 -2
- package/build/angular/create-portal/index.js +42 -12
- package/build/angular/create-portal/index.js.map +1 -1
- package/build/angular/create-tunnel/index.js.map +1 -1
- package/build/angular/descriptor-to-angular/index.js +3 -1
- package/build/angular/descriptor-to-angular/index.js.map +1 -1
- package/build/angular/diagnostics.d.ts +33 -0
- package/build/angular/diagnostics.js +82 -0
- package/build/angular/diagnostics.js.map +1 -0
- package/build/angular/gate-demand.d.ts +37 -0
- package/build/angular/gate-demand.js +84 -0
- package/build/angular/gate-demand.js.map +1 -0
- package/build/angular/host-instance/index.js +1 -1
- package/build/angular/host-instance/index.js.map +1 -1
- package/build/angular/index.d.ts +6 -2
- package/build/angular/index.js +16 -1
- package/build/angular/index.js.map +1 -1
- package/build/angular/modules/animated/create-animated-component.d.ts +1 -0
- package/build/angular/modules/animated/create-animated-component.js +41 -18
- package/build/angular/modules/animated/create-animated-component.js.map +1 -1
- package/build/angular/modules/app-registry/index.js.map +1 -1
- package/build/angular/modules/status-bar/index.js +1 -1
- package/build/angular/modules/status-bar/index.js.map +1 -1
- package/build/angular/primitives/index.d.ts +31 -2
- package/build/angular/primitives/index.js +81 -3
- package/build/angular/primitives/index.js.map +1 -1
- package/build/angular/primitives/shared.d.ts +9 -1
- package/build/angular/primitives/shared.js +49 -3
- package/build/angular/primitives/shared.js.map +1 -1
- package/build/angular/register.d.ts +1 -0
- package/build/angular/register.js +35 -0
- package/build/angular/register.js.map +1 -0
- package/build/angular/render/index.js +51 -6
- package/build/angular/render/index.js.map +1 -1
- package/build/angular/renderer/index.d.ts +1 -0
- package/build/angular/renderer/index.js +157 -21
- package/build/angular/renderer/index.js.map +1 -1
- package/build/angular/services/color-scheme.service.js.map +1 -1
- package/build/angular/services/window-dimensions.service.js +1 -1
- package/build/angular/services/window-dimensions.service.js.map +1 -1
- package/build/angular/state-style.d.ts +9 -0
- package/build/angular/state-style.js +39 -0
- package/build/angular/state-style.js.map +1 -0
- package/metro-transformer.cjs +69 -0
- package/package.json +27 -8
- package/src/anchor-host-registry.ts +3 -1
- package/src/bootstrap.ts +4 -1
- package/src/components/activity-indicator/index.android.ts +7 -2
- package/src/components/activity-indicator/index.ios.ts +3 -1
- package/src/components/activity-indicator/shared.ts +32 -13
- package/src/components/button.ts +36 -6
- package/src/components/flat-list/index.ts +91 -29
- package/src/components/image/index.android.ts +9 -6
- package/src/components/image/index.ios.ts +9 -6
- package/src/components/image/shared.ts +110 -45
- package/src/components/image-background.ts +47 -10
- package/src/components/input-accessory-view/index.ts +41 -18
- package/src/components/keyboard-avoiding-view/index.ts +76 -22
- package/src/components/modal/index.ts +39 -12
- package/src/components/pressable/index.ts +121 -31
- package/src/components/refresh-control/index.ts +36 -13
- package/src/components/safe-area-view/index.ts +44 -19
- package/src/components/scroll-view/index.android.ts +31 -9
- package/src/components/scroll-view/index.ios.ts +17 -4
- package/src/components/scroll-view/projection.ts +290 -63
- package/src/components/scroll-view/shared.ts +124 -30
- package/src/components/scroll-view/sticky-header.ts +25 -8
- package/src/components/section-list/index.ts +79 -19
- package/src/components/switch/index.android.ts +18 -7
- package/src/components/switch/index.ios.ts +18 -7
- package/src/components/switch/shared.ts +15 -4
- package/src/components/text-input.ts +119 -31
- package/src/components/touchable/index.ts +339 -72
- package/src/components/touchable-native-feedback/index.ts +50 -18
- package/src/components/virtualized-list/directives.ts +19 -5
- package/src/components/virtualized-list/index.ts +292 -72
- package/src/components/virtualized-section-list/directives.ts +6 -3
- package/src/components/virtualized-section-list/index.ts +164 -34
- package/src/components.ts +6 -1
- package/src/create-portal/index.ts +47 -11
- package/src/create-tunnel/index.ts +3 -1
- package/src/descriptor-to-angular/index.ts +29 -8
- package/src/diagnostics.ts +138 -0
- package/src/gate-demand.ts +109 -0
- package/src/host-instance/index.ts +9 -3
- package/src/index.ts +33 -2
- package/src/modules/animated/create-animated-component.ts +67 -19
- package/src/modules/app-registry/index.ts +3 -1
- package/src/modules/status-bar/index.ts +13 -4
- package/src/primitives/index.ts +73 -2
- package/src/primitives/shared.ts +70 -9
- package/src/register.ts +43 -0
- package/src/render/index.ts +59 -7
- package/src/renderer/index.ts +209 -37
- package/src/services/color-scheme.service.ts +3 -1
- package/src/services/window-dimensions.service.ts +11 -4
- 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
|
-
|
|
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
|
-
|
|
381
|
+
countAngular('listMarks');
|
|
363
382
|
this.cdr.markForCheck();
|
|
364
383
|
}
|
|
365
|
-
// The
|
|
366
|
-
|
|
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
|
-
|
|
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({
|
|
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
|
|
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 +
|
|
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
|
|
541
|
-
|
|
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
|
|
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
|
-
|
|
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
|
|
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' ||
|
|
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
|
-
|
|
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, {
|
|
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({
|
|
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]="
|
|
839
|
+
[importantForAccessibility]="
|
|
840
|
+
foldedAccessibility().importantForAccessibility
|
|
841
|
+
"
|
|
733
842
|
[accessibilityLiveRegion]="foldedAccessibility().accessibilityLiveRegion"
|
|
734
843
|
[screenReaderFocusable]="foldedAccessibility().screenReaderFocusable"
|
|
735
|
-
[accessibilityViewIsModal]="
|
|
736
|
-
|
|
737
|
-
|
|
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]="
|
|
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
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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]="
|
|
982
|
+
[importantForAccessibility]="
|
|
983
|
+
foldedAccessibility().importantForAccessibility
|
|
984
|
+
"
|
|
855
985
|
[accessibilityLiveRegion]="foldedAccessibility().accessibilityLiveRegion"
|
|
856
986
|
[screenReaderFocusable]="foldedAccessibility().screenReaderFocusable"
|
|
857
|
-
[accessibilityViewIsModal]="
|
|
858
|
-
|
|
859
|
-
|
|
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]="
|
|
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
|
|
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
|
-
|
|
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
|
-
|
|
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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"}
|