@symbiote-native/angular 0.6.2 → 0.8.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/bin/symbiote-angular-dev.cjs +20 -19
- package/build/angular/anchor-host-registry.js +2 -2
- 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.d.ts +2 -1
- package/build/angular/components/activity-indicator/index.android.js +12 -4
- package/build/angular/components/activity-indicator/index.android.js.map +1 -1
- package/build/angular/components/activity-indicator/index.ios.d.ts +2 -1
- package/build/angular/components/activity-indicator/index.ios.js +8 -3
- 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 +4 -4
- package/build/angular/components/activity-indicator/shared.js.map +1 -1
- package/build/angular/components/button.d.ts +4 -2
- package/build/angular/components/button.js +41 -22
- package/build/angular/components/button.js.map +1 -1
- package/build/angular/components/flat-list/index.d.ts +6 -4
- package/build/angular/components/flat-list/index.js +80 -50
- package/build/angular/components/flat-list/index.js.map +1 -1
- package/build/angular/components/image/index.android.d.ts +8 -3
- package/build/angular/components/image/index.android.js +42 -10
- package/build/angular/components/image/index.android.js.map +1 -1
- package/build/angular/components/image/index.ios.d.ts +8 -3
- package/build/angular/components/image/index.ios.js +42 -10
- package/build/angular/components/image/index.ios.js.map +1 -1
- package/build/angular/components/image/shared.d.ts +4 -1
- package/build/angular/components/image/shared.js +51 -8
- package/build/angular/components/image/shared.js.map +1 -1
- package/build/angular/components/image-background.d.ts +2 -1
- package/build/angular/components/image-background.js +26 -10
- package/build/angular/components/image-background.js.map +1 -1
- package/build/angular/components/input-accessory-view/index.d.ts +9 -4
- package/build/angular/components/input-accessory-view/index.js +49 -10
- 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 +44 -12
- package/build/angular/components/keyboard-avoiding-view/index.js.map +1 -1
- package/build/angular/components/modal/index.d.ts +11 -8
- package/build/angular/components/modal/index.js +51 -29
- package/build/angular/components/modal/index.js.map +1 -1
- package/build/angular/components/pressable/index.d.ts +12 -6
- package/build/angular/components/pressable/index.js +66 -13
- package/build/angular/components/pressable/index.js.map +1 -1
- package/build/angular/components/refresh-control/index.d.ts +8 -4
- package/build/angular/components/refresh-control/index.js +54 -16
- package/build/angular/components/refresh-control/index.js.map +1 -1
- package/build/angular/components/safe-area-view/index.d.ts +9 -4
- package/build/angular/components/safe-area-view/index.js +48 -9
- package/build/angular/components/safe-area-view/index.js.map +1 -1
- package/build/angular/components/scroll-view/index.android.d.ts +2 -3
- package/build/angular/components/scroll-view/index.android.js +88 -61
- package/build/angular/components/scroll-view/index.android.js.map +1 -1
- package/build/angular/components/scroll-view/index.ios.d.ts +2 -3
- package/build/angular/components/scroll-view/index.ios.js +24 -18
- package/build/angular/components/scroll-view/index.ios.js.map +1 -1
- package/build/angular/components/scroll-view/projection.d.ts +35 -0
- package/build/angular/components/scroll-view/projection.js +279 -53
- package/build/angular/components/scroll-view/projection.js.map +1 -1
- package/build/angular/components/scroll-view/shared.d.ts +14 -5
- package/build/angular/components/scroll-view/shared.js +225 -75
- package/build/angular/components/scroll-view/shared.js.map +1 -1
- package/build/angular/components/scroll-view/sticky-header.js +21 -22
- package/build/angular/components/scroll-view/sticky-header.js.map +1 -1
- package/build/angular/components/section-list/index.d.ts +7 -1
- package/build/angular/components/section-list/index.js +91 -54
- package/build/angular/components/section-list/index.js.map +1 -1
- package/build/angular/components/switch/index.android.d.ts +7 -3
- package/build/angular/components/switch/index.android.js +52 -10
- package/build/angular/components/switch/index.android.js.map +1 -1
- package/build/angular/components/switch/index.ios.d.ts +7 -3
- package/build/angular/components/switch/index.ios.js +52 -10
- package/build/angular/components/switch/index.ios.js.map +1 -1
- package/build/angular/components/switch/shared.d.ts +13 -4
- package/build/angular/components/switch/shared.js +71 -7
- package/build/angular/components/switch/shared.js.map +1 -1
- package/build/angular/components/text-input.d.ts +11 -3
- package/build/angular/components/text-input.js +68 -8
- package/build/angular/components/text-input.js.map +1 -1
- package/build/angular/components/touchable/index.d.ts +40 -9
- package/build/angular/components/touchable/index.js +303 -67
- package/build/angular/components/touchable/index.js.map +1 -1
- package/build/angular/components/touchable-native-feedback/index.d.ts +6 -3
- package/build/angular/components/touchable-native-feedback/index.js +63 -27
- package/build/angular/components/touchable-native-feedback/index.js.map +1 -1
- package/build/angular/components/virtualized-list/directives.js +22 -18
- package/build/angular/components/virtualized-list/directives.js.map +1 -1
- package/build/angular/components/virtualized-list/index.d.ts +15 -4
- package/build/angular/components/virtualized-list/index.js +326 -94
- package/build/angular/components/virtualized-list/index.js.map +1 -1
- package/build/angular/components/virtualized-section-list/directives.js +12 -12
- package/build/angular/components/virtualized-section-list/directives.js.map +1 -1
- package/build/angular/components/virtualized-section-list/index.d.ts +19 -1
- package/build/angular/components/virtualized-section-list/index.js +93 -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 +5 -0
- package/build/angular/components.js.map +1 -1
- package/build/angular/create-portal/index.js +34 -36
- package/build/angular/create-portal/index.js.map +1 -1
- package/build/angular/create-tunnel/index.js +19 -22
- package/build/angular/create-tunnel/index.js.map +1 -1
- package/build/angular/descriptor-to-angular/index.js +6 -4
- 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/host-instance/index.js +1 -1
- package/build/angular/host-instance/index.js.map +1 -1
- package/build/angular/index.d.ts +9 -4
- package/build/angular/index.js +17 -3
- package/build/angular/index.js.map +1 -1
- package/build/angular/modules/animated/animated-leaf-binder.d.ts +1 -7
- package/build/angular/modules/animated/animated-leaf-binder.js +22 -72
- package/build/angular/modules/animated/animated-leaf-binder.js.map +1 -1
- package/build/angular/modules/animated/create-animated-component.d.ts +11 -6
- package/build/angular/modules/animated/create-animated-component.js +106 -55
- package/build/angular/modules/animated/create-animated-component.js.map +1 -1
- package/build/angular/modules/status-bar/index.js +4 -4
- package/build/angular/modules/status-bar/index.js.map +1 -1
- package/build/angular/primitives/index.d.ts +20 -3
- package/build/angular/primitives/index.js +84 -48
- package/build/angular/primitives/index.js.map +1 -1
- package/build/angular/primitives/shared.d.ts +48 -2
- package/build/angular/primitives/shared.js +158 -11
- package/build/angular/primitives/shared.js.map +1 -1
- package/build/angular/render/index.js +69 -38
- package/build/angular/render/index.js.map +1 -1
- package/build/angular/renderer/index.d.ts +1 -0
- package/build/angular/renderer/index.js +37 -2
- package/build/angular/renderer/index.js.map +1 -1
- package/build/angular/services/color-scheme.service.js +3 -3
- package/build/angular/services/color-scheme.service.js.map +1 -1
- package/build/angular/services/window-dimensions.service.js +4 -4
- package/build/angular/services/window-dimensions.service.js.map +1 -1
- package/package.json +10 -8
- package/src/anchor-host-registry.ts +2 -2
- package/src/bootstrap.ts +4 -1
- package/src/components/activity-indicator/index.android.ts +8 -1
- package/src/components/activity-indicator/index.ios.ts +4 -0
- package/src/components/activity-indicator/shared.ts +32 -13
- package/src/components/button.ts +46 -19
- package/src/components/flat-list/index.ts +122 -62
- package/src/components/image/index.android.ts +58 -7
- package/src/components/image/index.ios.ts +58 -7
- package/src/components/image/shared.ts +92 -21
- package/src/components/image-background.ts +29 -9
- package/src/components/input-accessory-view/index.ts +67 -12
- package/src/components/keyboard-avoiding-view/index.ts +61 -15
- package/src/components/modal/index.ts +72 -33
- package/src/components/pressable/index.ts +117 -28
- package/src/components/refresh-control/index.ts +74 -18
- package/src/components/safe-area-view/index.ts +64 -10
- package/src/components/scroll-view/index.android.ts +62 -47
- package/src/components/scroll-view/index.ios.ts +19 -17
- package/src/components/scroll-view/projection.ts +363 -64
- package/src/components/scroll-view/shared.ts +312 -90
- package/src/components/scroll-view/sticky-header.ts +36 -24
- package/src/components/section-list/index.ts +86 -53
- package/src/components/switch/index.android.ts +60 -8
- package/src/components/switch/index.ios.ts +60 -8
- package/src/components/switch/shared.ts +93 -6
- package/src/components/text-input.ts +95 -13
- package/src/components/touchable/index.ts +348 -64
- package/src/components/touchable-native-feedback/index.ts +94 -31
- package/src/components/virtualized-list/directives.ts +19 -5
- package/src/components/virtualized-list/index.ts +380 -85
- package/src/components/virtualized-section-list/directives.ts +6 -3
- package/src/components/virtualized-section-list/index.ts +146 -33
- package/src/components.ts +9 -1
- package/src/create-portal/index.ts +31 -31
- package/src/create-tunnel/index.ts +16 -17
- package/src/descriptor-to-angular/index.ts +29 -8
- package/src/diagnostics.ts +138 -0
- package/src/host-instance/index.ts +9 -3
- package/src/index.ts +61 -3
- package/src/modules/animated/animated-leaf-binder.ts +28 -77
- package/src/modules/animated/create-animated-component.ts +115 -47
- package/src/modules/app-registry/index.ts +9 -9
- package/src/modules/status-bar/index.ts +13 -4
- package/src/primitives/index.ts +47 -2
- package/src/primitives/shared.ts +170 -10
- package/src/render/index.ts +77 -39
- package/src/renderer/index.ts +76 -14
- package/src/services/color-scheme.service.ts +3 -1
- package/src/services/window-dimensions.service.ts +11 -4
- package/build/angular/modules/animated/animated-leaf-binder/index.d.ts +0 -14
- package/build/angular/modules/animated/animated-leaf-binder/index.js +0 -91
- package/build/angular/modules/animated/animated-leaf-binder/index.js.map +0 -1
- package/src/modules/animated/animated-leaf-binder/index.ts +0 -101
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { EventEmitter, type AfterViewInit, type OnDestroy } from '@angular/core';
|
|
1
|
+
import { EventEmitter, type AfterContentChecked, type AfterViewInit, type DoCheck, type OnChanges, type OnDestroy } from '@angular/core';
|
|
2
2
|
import { type IAccessibilityProps, type IAccessibilityStateValue, type IAriaProps, type IContentSize } from '@symbiote-native/components';
|
|
3
3
|
import { AnimatedValue, type IStyleProp, type ISymbioteEvent, type ISymbioteNode, type IViewStyle } from '@symbiote-native/engine';
|
|
4
4
|
import { RefreshControl } from '../refresh-control';
|
|
@@ -88,7 +88,7 @@ export declare class ScrollViewProjectionDirective {
|
|
|
88
88
|
static ɵfac: i0.ɵɵFactoryDeclaration<ScrollViewProjectionDirective, never>;
|
|
89
89
|
static ɵdir: i0.ɵɵDirectiveDeclaration<ScrollViewProjectionDirective, "[symbioteScrollViewProjection]", never, { "symbioteScrollViewProjection": { "alias": "symbioteScrollViewProjection"; "required": false; }; }, {}, never, never, true, never>;
|
|
90
90
|
}
|
|
91
|
-
export declare abstract class ScrollViewBase implements IAngularScrollViewInputs, AfterViewInit, OnDestroy {
|
|
91
|
+
export declare abstract class ScrollViewBase implements IAngularScrollViewInputs, AfterContentChecked, AfterViewInit, DoCheck, OnChanges, OnDestroy {
|
|
92
92
|
style: IStyleProp<IViewStyle> | undefined;
|
|
93
93
|
contentContainerStyle: IStyleProp<IViewStyle> | string | undefined;
|
|
94
94
|
horizontal: boolean | undefined;
|
|
@@ -181,12 +181,17 @@ export declare abstract class ScrollViewBase implements IAngularScrollViewInputs
|
|
|
181
181
|
'aria-valuetext': string | undefined;
|
|
182
182
|
private hostDirective?;
|
|
183
183
|
protected projectedRefreshControl?: RefreshControl;
|
|
184
|
+
private readonly elementRef;
|
|
185
|
+
protected readonly anchorStyle: import("@angular/core").WritableSignal<unknown>;
|
|
184
186
|
protected readonly scrollAnimatedValue: AnimatedValue;
|
|
185
187
|
private lastContentSize;
|
|
186
188
|
private viewportHeight;
|
|
189
|
+
private lastHasProjectedRefreshControl;
|
|
187
190
|
protected readonly projectionController: ScrollViewProjectionController;
|
|
188
191
|
private detachStickyScroll;
|
|
189
192
|
private cancelStickyBind;
|
|
193
|
+
private stickyAttachedEnabled;
|
|
194
|
+
private stickyAttachedNode;
|
|
190
195
|
private lastLoggedIsHorizontal;
|
|
191
196
|
private readonly handleInvertedStickyLayout;
|
|
192
197
|
private readonly handleContentLayout;
|
|
@@ -197,15 +202,16 @@ export declare abstract class ScrollViewBase implements IAngularScrollViewInputs
|
|
|
197
202
|
private get hasStickyHeaders();
|
|
198
203
|
private get resolvedContentContainerStyle();
|
|
199
204
|
private get scrollViewBaseStyle();
|
|
200
|
-
|
|
205
|
+
private readonly inputsRevision;
|
|
206
|
+
readonly scrollProps: import("@angular/core").Signal<Record<string, unknown>>;
|
|
201
207
|
protected get layoutSplitStyle(): IStyleProp<IViewStyle>;
|
|
202
|
-
|
|
208
|
+
readonly androidWrappedScrollProps: import("@angular/core").Signal<Record<string, unknown>>;
|
|
203
209
|
get iosRefreshControlProps(): Record<string, unknown>;
|
|
204
210
|
get androidRefreshControlProps(): Record<string, unknown>;
|
|
205
211
|
protected handleProjectedRefresh(nativeNode: unknown): void;
|
|
206
212
|
private refreshControlProps;
|
|
207
213
|
get hasProjectedRefreshControl(): boolean;
|
|
208
|
-
|
|
214
|
+
readonly contentProps: import("@angular/core").Signal<Record<string, unknown>>;
|
|
209
215
|
private emitterCallback;
|
|
210
216
|
private stickyOnScrollHandler;
|
|
211
217
|
private get hostNode();
|
|
@@ -221,6 +227,9 @@ export declare abstract class ScrollViewBase implements IAngularScrollViewInputs
|
|
|
221
227
|
flashScrollIndicators(): void;
|
|
222
228
|
getScrollNode(): ISymbioteNode | null;
|
|
223
229
|
ngAfterViewInit(): void;
|
|
230
|
+
ngDoCheck(): void;
|
|
231
|
+
ngAfterContentChecked(): void;
|
|
232
|
+
ngOnChanges(): void;
|
|
224
233
|
private attachSticky;
|
|
225
234
|
ngOnDestroy(): void;
|
|
226
235
|
private updateProjectionController;
|
|
@@ -1,27 +1,24 @@
|
|
|
1
|
-
// ScrollView, the Angular lifecycle half. The Fabric tree is nested: a scroll view
|
|
2
|
-
//
|
|
3
|
-
//
|
|
4
|
-
//
|
|
5
|
-
//
|
|
6
|
-
//
|
|
7
|
-
//
|
|
8
|
-
// flashScrollIndicators), the content-size dedupe, and the native sticky scroll-attach wired
|
|
9
|
-
// through whenCommitted. This is the Angular twin of the React useRef + Vue shallowRef host.
|
|
1
|
+
// ScrollView, the Angular lifecycle half. The Fabric tree is nested: a scroll view wraps a
|
|
2
|
+
// content view holding the children (RN's ScrollView.js shape). The platform-invariant math
|
|
3
|
+
// (decelerationRate, per-axis intrinsics, content-size dedupe, imperative handle, native sticky
|
|
4
|
+
// scroll-attach, aria/role fold) lives in @symbiote-native/components, shared with React/Vue.
|
|
5
|
+
// Angular supplies only the lifecycle: the host node held by IDENTITY through a directive's
|
|
6
|
+
// ElementRef, a forwarded-prop bag set via Renderer2 (-> routeProp), and the native sticky attach
|
|
7
|
+
// wired through whenCommitted.
|
|
10
8
|
//
|
|
11
|
-
//
|
|
12
|
-
//
|
|
13
|
-
//
|
|
9
|
+
// RefreshControl integration diverges per platform (.ios/.android, Metro filename-selected): iOS
|
|
10
|
+
// renders it as a SIBLING before the content container; Android WRAPS the scroll view in an
|
|
11
|
+
// AndroidSwipeRefreshLayout.
|
|
14
12
|
//
|
|
15
|
-
// Angular cannot transform <ng-content> children
|
|
16
|
-
//
|
|
17
|
-
//
|
|
18
|
-
//
|
|
19
|
-
//
|
|
20
|
-
|
|
21
|
-
import { Directive, ElementRef, EventEmitter, Output, ViewChild, ContentChild, inject, } from '@angular/core';
|
|
13
|
+
// Angular cannot transform <ng-content> children the way React children.map / Vue slots() can, so
|
|
14
|
+
// ScrollView owns a projection bridge: the content host registers a ScrollViewProjectionController
|
|
15
|
+
// with the Angular renderer, which wraps projected children whose indices match
|
|
16
|
+
// stickyHeaderIndices. Android RefreshControl projection re-renders the projected component as the
|
|
17
|
+
// wrapper around the scroll view (RN's Android shape), excluding it from the content slot.
|
|
18
|
+
import { Directive, computed, signal, ElementRef, EventEmitter, Output, ViewChild, ContentChild, inject, } from '@angular/core';
|
|
22
19
|
import { attachStickyScroll, buildScrollViewHandle, didContentSizeChange, forwardScrollEvent, readLayoutDimension, resolveAccessibilityProps, resolveDecelerationRate, resolveScrollForwarding, selectScrollIntrinsics, splitLayoutProps, } from '@symbiote-native/components';
|
|
23
20
|
import { AnimatedValue, dlog, event as animatedEvent, isNativeAnimatedAvailable, isSymbioteNode, resolveClassName, whenCommitted, } from '@symbiote-native/engine';
|
|
24
|
-
import { SymbioteHostPropsDirective } from '../../primitives';
|
|
21
|
+
import { anchorHostStyle, SymbioteHostPropsDirective } from '../../primitives';
|
|
25
22
|
import { RefreshControl } from '../refresh-control';
|
|
26
23
|
import { ScrollViewProjectionController } from './projection';
|
|
27
24
|
import * as i0 from "@angular/core";
|
|
@@ -137,10 +134,10 @@ export class ScrollViewProjectionDirective {
|
|
|
137
134
|
if (isSymbioteNode(node))
|
|
138
135
|
controller.bindContentNode(node);
|
|
139
136
|
}
|
|
140
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.
|
|
141
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.0.
|
|
137
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: ScrollViewProjectionDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
138
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.0.8", type: ScrollViewProjectionDirective, isStandalone: true, selector: "[symbioteScrollViewProjection]", inputs: { symbioteScrollViewProjection: "symbioteScrollViewProjection" }, ngImport: i0 });
|
|
142
139
|
}
|
|
143
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.
|
|
140
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: ScrollViewProjectionDirective, decorators: [{
|
|
144
141
|
type: Directive,
|
|
145
142
|
args: [{
|
|
146
143
|
selector: '[symbioteScrollViewProjection]',
|
|
@@ -252,6 +249,19 @@ export class ScrollViewBase {
|
|
|
252
249
|
// Inherited by the decorated subclass — Angular collects base-class @ViewChild queries.
|
|
253
250
|
hostDirective;
|
|
254
251
|
projectedRefreshControl;
|
|
252
|
+
// This component's OWN anchor host — where a `class="..."` at the use site resolves (see
|
|
253
|
+
// anchorHostStyle's doc comment) — NOT `#host` in the platform templates, which targets the real
|
|
254
|
+
// inner scroll-view primitive one level down. Injected in the BASE because both platform
|
|
255
|
+
// subclasses merged the identical anchor style into their `scrollProps` override.
|
|
256
|
+
elementRef = inject(ElementRef);
|
|
257
|
+
// The anchor's class-derived style is written by the RENDERER (addClass/removeClass ->
|
|
258
|
+
// commitClassStyle), never through an @Input, so `inputsRevision` cannot cover it and a bag
|
|
259
|
+
// memoized on plain reads of it would keep a stale class forever. It gets its own signal, polled
|
|
260
|
+
// in ngDoCheck below: that hook runs on exactly the checks that could have changed it (Angular
|
|
261
|
+
// applies the parent's class bindings before flushing this directive's pre-order hooks), which is
|
|
262
|
+
// the same cadence the old `scrollProps` getter was re-read at.
|
|
263
|
+
anchorStyle = signal(undefined, /* @ts-ignore */
|
|
264
|
+
...(ngDevMode ? [{ debugName: "anchorStyle" }] : /* istanbul ignore next */ []));
|
|
255
265
|
// A single AnimatedValue tracks the scroll offset and drives every sticky header's translateY
|
|
256
266
|
// (RN's _scrollAnimatedValue). A stable field (allocated once, held by identity — Angular does
|
|
257
267
|
// not proxy class fields, so no markRaw needed); the native attach below feeds it on the UI
|
|
@@ -262,6 +272,9 @@ export class ScrollViewBase {
|
|
|
262
272
|
lastContentSize = null;
|
|
263
273
|
// Inverted sticky headers stick to the BOTTOM, so they need the viewport height (RN _handleLayout).
|
|
264
274
|
viewportHeight = undefined;
|
|
275
|
+
// What the projection controller was last told about the projected RefreshControl, so
|
|
276
|
+
// ngAfterContentChecked can tell a real content change from an ordinary check.
|
|
277
|
+
lastHasProjectedRefreshControl = false;
|
|
265
278
|
projectionController = new ScrollViewProjectionController({
|
|
266
279
|
stickyHeaderIndices: undefined,
|
|
267
280
|
invertStickyHeaders: undefined,
|
|
@@ -277,6 +290,9 @@ export class ScrollViewBase {
|
|
|
277
290
|
// bind runs now if committed, else after the commit that assigns the tag. Detached on destroy.
|
|
278
291
|
detachStickyScroll;
|
|
279
292
|
cancelStickyBind;
|
|
293
|
+
// What the current attach was made for, so a re-run that changes nothing stays a no-op.
|
|
294
|
+
stickyAttachedEnabled = false;
|
|
295
|
+
stickyAttachedNode = null;
|
|
280
296
|
lastLoggedIsHorizontal = undefined;
|
|
281
297
|
// Stable reference (bound once): inverted sticky headers need the viewport height captured off
|
|
282
298
|
// the scroll-view's own onLayout before forwarding to the user (RN _handleLayout). A getter that
|
|
@@ -287,8 +303,14 @@ export class ScrollViewBase {
|
|
|
287
303
|
// (see AnimatedComponentBase.reconcile()'s identical warning).
|
|
288
304
|
handleInvertedStickyLayout = (event) => {
|
|
289
305
|
const height = readLayoutDimension(event, 'height');
|
|
290
|
-
|
|
306
|
+
// The projection controller is pushed from here rather than picked up on the next prop-bag
|
|
307
|
+
// read: viewportHeight is internal mutable state, so once `scrollProps` became a memoized
|
|
308
|
+
// computed nothing would re-read it. Guarded on a real change - an onLayout that reports the
|
|
309
|
+
// same height must not cost a sticky reconcile walk.
|
|
310
|
+
if (height !== undefined && height !== this.viewportHeight) {
|
|
291
311
|
this.viewportHeight = height;
|
|
312
|
+
this.updateProjectionController();
|
|
313
|
+
}
|
|
292
314
|
this.layout.emit(event);
|
|
293
315
|
};
|
|
294
316
|
// Same reasoning as handleInvertedStickyLayout: the content view's onLayout synthesizes
|
|
@@ -304,14 +326,11 @@ export class ScrollViewBase {
|
|
|
304
326
|
dlog(`Angular ScrollView contentSizeChange ${width}x${height}`);
|
|
305
327
|
this.contentSizeChange.emit({ width, height });
|
|
306
328
|
};
|
|
307
|
-
// Memoizes the wrapper each `emitterCallback` builds, keyed by the emitter it closes over
|
|
308
|
-
//
|
|
309
|
-
//
|
|
310
|
-
//
|
|
311
|
-
//
|
|
312
|
-
// level further removed. `.observed` is checked BEFORE the cache so an unbound event still
|
|
313
|
-
// resolves to `undefined` (the "nobody cares" contract `emitterCallback`'s own comment documents),
|
|
314
|
-
// not a stale cached wrapper from before the last subscriber unsubscribed.
|
|
329
|
+
// Memoizes the wrapper each `emitterCallback` builds, keyed by the emitter it closes over.
|
|
330
|
+
// Without this, `scrollProps`/`refreshControlProps` would hand a fresh closure to the forwarded
|
|
331
|
+
// prop bag on every evaluation — the same jsonEqual/Object.is function-leaf problem as the arrow
|
|
332
|
+
// fields above. `.observed` is checked BEFORE the cache so an unbound event still resolves to
|
|
333
|
+
// `undefined` rather than a stale wrapper from before the last unsubscribe.
|
|
315
334
|
emitterCallbackCache = new WeakMap();
|
|
316
335
|
// The sticky JS-path Animated.event handler depends on a REAL input (onScroll), so it can't be a
|
|
317
336
|
// plain stable field the way handleInvertedStickyLayout/handleContentLayout are — it must track
|
|
@@ -331,7 +350,8 @@ export class ScrollViewBase {
|
|
|
331
350
|
return value;
|
|
332
351
|
}
|
|
333
352
|
get hasStickyHeaders() {
|
|
334
|
-
return this.stickyHeaderIndices !== undefined &&
|
|
353
|
+
return (this.stickyHeaderIndices !== undefined &&
|
|
354
|
+
this.stickyHeaderIndices.length > 0);
|
|
335
355
|
}
|
|
336
356
|
// A class-name string resolves through the shared registry before it reaches
|
|
337
357
|
// selectScrollIntrinsics, which only understands style objects/arrays.
|
|
@@ -341,15 +361,37 @@ export class ScrollViewBase {
|
|
|
341
361
|
: this.contentContainerStyle;
|
|
342
362
|
}
|
|
343
363
|
get scrollViewBaseStyle() {
|
|
344
|
-
return selectScrollIntrinsics(this.isHorizontal, this.resolvedContentContainerStyle)
|
|
345
|
-
.scrollViewBaseStyle;
|
|
364
|
+
return selectScrollIntrinsics(this.isHorizontal, this.resolvedContentContainerStyle).scrollViewBaseStyle;
|
|
346
365
|
}
|
|
366
|
+
// Bridges non-reactive @Input fields into the reactive graph, so a computed() can memoize a
|
|
367
|
+
// bag derived from them. Signal inputs would make this unnecessary, but `input()` is visible
|
|
368
|
+
// only to the AOT compiler and this package's unit suite runs on JIT - see the
|
|
369
|
+
// `angular-adapter-change-detection` skill, §6. `signal()`/`computed()` themselves are plain
|
|
370
|
+
// runtime APIs and need no compiler support, which is what makes this bridge possible at all.
|
|
371
|
+
//
|
|
372
|
+
// ONLY safe for a bag whose every dependency is an @Input. A bag that also reads internal
|
|
373
|
+
// mutable state (viewportHeight, lastContentSize, the anchor's class-derived style) would go
|
|
374
|
+
// stale, because nothing bumps this for those - make that state its own signal (see
|
|
375
|
+
// `anchorStyle`) instead of widening this one.
|
|
376
|
+
inputsRevision = signal(0, /* @ts-ignore */
|
|
377
|
+
...(ngDevMode ? [{ debugName: "inputsRevision" }] : /* istanbul ignore next */ []));
|
|
347
378
|
// The forwarded host-prop bag for the scroll-view node: aria/role folded, the native pass-through
|
|
348
379
|
// families, the scroll-event callbacks, then the lifecycle-managed overrides (nestedScrollEnabled
|
|
349
380
|
// default ON, horizontal when defined, decelerationRate resolved per-platform, the sticky onScroll
|
|
350
381
|
// path). Base style UNDER user style so an explicit user value still wins. Mirrors Vue's outerProps
|
|
351
382
|
// + scrollProps assembly.
|
|
352
|
-
|
|
383
|
+
//
|
|
384
|
+
// MEASURED 2026-08-16: as a getter this rebuilt the whole bag on every refresh of this view, so
|
|
385
|
+
// the `symbioteHostProps` reference check failed every time and every key was re-pushed through
|
|
386
|
+
// the renderer - once per scroll frame per host binding (2 before `contentProps` was memoized,
|
|
387
|
+
// 1 after, 0 now; the pin lives in prop-bag-stability.test.ts).
|
|
388
|
+
//
|
|
389
|
+
// It is a `computed` on the BASE and no longer overridable: a subclass getter cannot override a
|
|
390
|
+
// field. The platform subclasses used to override it with byte-identical bodies (merge the
|
|
391
|
+
// anchor's class-derived style ahead of the resolved style), so that merge moved down here
|
|
392
|
+
// rather than into a `decorateScrollProps` hook both of them would implement the same way.
|
|
393
|
+
scrollProps = computed(() => {
|
|
394
|
+
this.inputsRevision();
|
|
353
395
|
const bag = compact({
|
|
354
396
|
...resolveAccessibilityProps(this.accessibilityInputs()),
|
|
355
397
|
scrollEnabled: this.scrollEnabled,
|
|
@@ -406,14 +448,11 @@ export class ScrollViewBase {
|
|
|
406
448
|
bag.decelerationRate = resolveDecelerationRate(this.decelerationRate);
|
|
407
449
|
}
|
|
408
450
|
// onScroll: when sticky headers are active, the offset must reach the AnimatedValue (RN
|
|
409
|
-
// _scrollAnimatedValueAttachment). With the native module, the
|
|
410
|
-
//
|
|
411
|
-
//
|
|
412
|
-
//
|
|
413
|
-
//
|
|
414
|
-
// capture the viewport height) are folded out to the shared resolveScrollForwarding; here Angular
|
|
415
|
-
// only EXECUTES them, keeping its stable-reference handlers (stickyOnScrollHandler /
|
|
416
|
-
// handleInvertedStickyLayout / emitterCallback) so a fresh closure never forces a re-clone cascade.
|
|
451
|
+
// _scrollAnimatedValueAttachment). With the native module, the post-commit attach below drives
|
|
452
|
+
// it on the UI thread (throttle 1, ScrollView.js:1798); without it, Animated.event drives the
|
|
453
|
+
// value each frame (JS jitter). The DECISIONS (which path, throttle defaults, whether to
|
|
454
|
+
// capture viewport height) are folded out to the shared resolveScrollForwarding; Angular only
|
|
455
|
+
// EXECUTES them, keeping stable-reference handlers so a fresh closure never forces a re-clone.
|
|
417
456
|
const nativeStickyAvailable = this.hasStickyHeaders && isNativeAnimatedAvailable();
|
|
418
457
|
const forwarding = resolveScrollForwarding({
|
|
419
458
|
hasStickyHeaders: this.hasStickyHeaders,
|
|
@@ -444,39 +483,57 @@ export class ScrollViewBase {
|
|
|
444
483
|
if (layoutCallback !== undefined)
|
|
445
484
|
bag.onLayout = layoutCallback;
|
|
446
485
|
}
|
|
447
|
-
|
|
448
|
-
|
|
449
|
-
|
|
486
|
+
// Thunks, not strings: an eagerly built message would be paid with logging off (see dlog's own
|
|
487
|
+
// comment). Less often than it used to fire now that this bag is memoized, but the recompute
|
|
488
|
+
// still rides every real input change.
|
|
489
|
+
dlog(() => `Angular ScrollView -> ${this.isHorizontal ? 'horizontal' : 'vertical'} (sticky=${this.hasStickyHeaders})`);
|
|
490
|
+
dlog(() => `STICKY[sv] forwarding mode=${forwarding.mode} throttle=${forwarding.scrollEventThrottle} ` +
|
|
491
|
+
`nativeStickyAvailable=${nativeStickyAvailable} onScrollBound=${bag.onScroll !== undefined}`);
|
|
492
|
+
// The anchor's class-derived style goes FIRST: flattenStyle's later-wins collapse keeps an
|
|
493
|
+
// explicit [style] winning over the ambient class. Flat rather than the nested
|
|
494
|
+
// `[anchor, [base, style]]` the platform overrides used to build - flattenStyle folds nested
|
|
495
|
+
// arrays in the same order, so the resolved value is unchanged.
|
|
496
|
+
bag.style = [this.anchorStyle(), this.scrollViewBaseStyle, this.style];
|
|
450
497
|
return bag;
|
|
451
|
-
}
|
|
498
|
+
}, /* @ts-ignore */
|
|
499
|
+
...(ngDevMode ? [{ debugName: "scrollProps" }] : /* istanbul ignore next */ []));
|
|
452
500
|
// Overridable hook, NOT `this.style` directly: `splitLayoutProps` below decides which layout
|
|
453
501
|
// properties (flex/height/gap/…) go on the Android outer refresh-control wrapper vs. the inner
|
|
454
|
-
// scroll view. `this.style` alone only
|
|
455
|
-
// component's
|
|
456
|
-
//
|
|
457
|
-
//
|
|
458
|
-
//
|
|
459
|
-
// `layoutSplitStyle` field and the real Android device bug it fixes; the Angular Android
|
|
460
|
-
// ScrollView (index.android.ts) overrides this to merge in `anchorHostStyle`. Default here is
|
|
461
|
-
// `this.style` alone, preserving current behavior for anything that doesn't override it.
|
|
502
|
+
// scroll view. `this.style` alone only carries the explicit `[style]` @Input — a composed
|
|
503
|
+
// component's own anchor host can hold ADDITIONAL class-derived layout style invisible to this
|
|
504
|
+
// split, so the wrapper collapses to zero size on real Android devices. Angular's Android
|
|
505
|
+
// ScrollView (index.android.ts) overrides this to merge in `anchorHostStyle` (mirrors Vue's
|
|
506
|
+
// identical `layoutSplitStyle` field and the device bug it fixes).
|
|
462
507
|
get layoutSplitStyle() {
|
|
463
508
|
return this.style;
|
|
464
509
|
}
|
|
465
|
-
|
|
466
|
-
|
|
510
|
+
// Memoizable for the same reasons `scrollProps` is: `layoutSplitStyle` resolves to @Input `style`
|
|
511
|
+
// plus (on Android) the `anchorStyle` signal, both covered. The anchor style is deliberately NOT
|
|
512
|
+
// re-merged into `props.style` here - `splitLayoutProps` already routed its layout half to the
|
|
513
|
+
// outer refresh-control wrapper and left the rest in `inner`.
|
|
514
|
+
androidWrappedScrollProps = computed(() => {
|
|
515
|
+
this.inputsRevision();
|
|
516
|
+
const props = { ...this.scrollProps() };
|
|
467
517
|
const { inner, outer } = splitLayoutProps(this.layoutSplitStyle);
|
|
468
|
-
dlog(`Angular ScrollView splitProbe layoutSplitStyle=${JSON.stringify(this.layoutSplitStyle)} ` +
|
|
518
|
+
dlog(() => `Angular ScrollView splitProbe layoutSplitStyle=${JSON.stringify(this.layoutSplitStyle)} ` +
|
|
469
519
|
`outer=${JSON.stringify(outer)} inner=${JSON.stringify(inner)}`);
|
|
470
520
|
props.style = [this.scrollViewBaseStyle, inner];
|
|
471
521
|
props.nestedScrollEnabled = true;
|
|
472
522
|
return props;
|
|
473
|
-
}
|
|
523
|
+
}, /* @ts-ignore */
|
|
524
|
+
...(ngDevMode ? [{ debugName: "androidWrappedScrollProps" }] : /* istanbul ignore next */ []));
|
|
525
|
+
// Deliberately still GETTERS, unlike every other bag on this class. Their whole content comes
|
|
526
|
+
// from the PROJECTED RefreshControl's own @Input()s (refreshing, tintColor, colors, …), which
|
|
527
|
+
// Angular routes through THAT component's ngOnChanges - `inputsRevision` here never moves for
|
|
528
|
+
// them. Memoizing on it would freeze `refreshing` at its first value and strand the native
|
|
529
|
+
// spinner forever, which is exactly the silent-staleness class this file avoids elsewhere.
|
|
530
|
+
// Making them memoizable means giving RefreshControl its own revision signal to read here.
|
|
474
531
|
get iosRefreshControlProps() {
|
|
475
532
|
return this.refreshControlProps();
|
|
476
533
|
}
|
|
477
534
|
get androidRefreshControlProps() {
|
|
478
535
|
const { outer } = splitLayoutProps(this.layoutSplitStyle);
|
|
479
|
-
dlog(`Angular ScrollView refreshControlProbe outer=${JSON.stringify(outer)} ` +
|
|
536
|
+
dlog(() => `Angular ScrollView refreshControlProbe outer=${JSON.stringify(outer)} ` +
|
|
480
537
|
`hasRefresh=${this.projectedRefreshControl !== undefined}`);
|
|
481
538
|
return this.refreshControlProps(outer);
|
|
482
539
|
}
|
|
@@ -516,20 +573,31 @@ export class ScrollViewBase {
|
|
|
516
573
|
// children of a scroll view that hosts exactly one — an addViewAt crash). collapsableChildren
|
|
517
574
|
// false preserves the cell views maintainVisibleContentPosition/snapToAlignment anchor against.
|
|
518
575
|
// onLayout synthesizes onContentSizeChange (deduped). iOS never flattens; both are no-ops there.
|
|
519
|
-
|
|
576
|
+
contentProps = computed(() => {
|
|
577
|
+
this.inputsRevision();
|
|
520
578
|
const { contentStyle } = selectScrollIntrinsics(this.isHorizontal, this.resolvedContentContainerStyle);
|
|
521
|
-
const bag = {
|
|
522
|
-
|
|
579
|
+
const bag = {
|
|
580
|
+
style: contentStyle,
|
|
581
|
+
collapsable: false,
|
|
582
|
+
};
|
|
583
|
+
if (this.maintainVisibleContentPosition !== undefined ||
|
|
584
|
+
this.snapToAlignment !== undefined) {
|
|
523
585
|
bag.collapsableChildren = false;
|
|
524
586
|
}
|
|
525
587
|
bag.onLayout = this.handleContentLayout;
|
|
526
588
|
return bag;
|
|
527
|
-
}
|
|
589
|
+
}, /* @ts-ignore */
|
|
590
|
+
...(ngDevMode ? [{ debugName: "contentProps" }] : /* istanbul ignore next */ []));
|
|
528
591
|
// Wraps an @Output() as a plain callback only while it has a subscriber, so an unbound event
|
|
529
592
|
// still leaves the forwarded prop bag key absent — the same "undefined means nobody cares"
|
|
530
593
|
// contract the old @Input() callbacks had. Mirrors Pressable's emitterHandler. The wrapper itself
|
|
531
594
|
// is memoized per emitter (emitterCallbackCache) rather than rebuilt on every call: see that
|
|
532
595
|
// field's comment for why an unstable closure here breaks the forwarded prop bag.
|
|
596
|
+
//
|
|
597
|
+
// `.observed` is NOT reactive, and `scrollProps` memoizes over it. That is sound because Angular
|
|
598
|
+
// subscribes a template's (event) listeners in its CREATION pass, before any input is written and
|
|
599
|
+
// before this component's own view is first refreshed - so `observed` is already settled at the
|
|
600
|
+
// first evaluation and cannot flip afterwards without destroying the whole component.
|
|
533
601
|
emitterCallback(emitter) {
|
|
534
602
|
if (!emitter.observed)
|
|
535
603
|
return undefined;
|
|
@@ -548,7 +616,9 @@ export class ScrollViewBase {
|
|
|
548
616
|
this.cachedStickyOnScrollSource = userOnScroll;
|
|
549
617
|
this.cachedStickyOnScrollHandler = animatedEvent([{ nativeEvent: { contentOffset: { y: this.scrollAnimatedValue } } }], userOnScroll === undefined
|
|
550
618
|
? undefined
|
|
551
|
-
: {
|
|
619
|
+
: {
|
|
620
|
+
listener: (...args) => forwardScrollEvent(userOnScroll, args),
|
|
621
|
+
});
|
|
552
622
|
}
|
|
553
623
|
return this.cachedStickyOnScrollHandler;
|
|
554
624
|
}
|
|
@@ -575,24 +645,104 @@ export class ScrollViewBase {
|
|
|
575
645
|
return this.handle.getScrollNode();
|
|
576
646
|
}
|
|
577
647
|
ngAfterViewInit() {
|
|
648
|
+
dlog('STICKY[sv] ngAfterViewInit');
|
|
649
|
+
// Runs once the template has bound the content node, so this is the reconcile that actually
|
|
650
|
+
// wraps the sticky children (the ngOnChanges one above fires before the content node exists).
|
|
651
|
+
this.updateProjectionController();
|
|
652
|
+
this.attachSticky();
|
|
653
|
+
}
|
|
654
|
+
// Re-read the anchor's class-derived style. It is written by the renderer's addClass/removeClass,
|
|
655
|
+
// never through an @Input, so this poll is the only thing that can invalidate a bag holding it -
|
|
656
|
+
// ngOnChanges alone would strand a class toggled after mount (covered by
|
|
657
|
+
// scroll-view-class-style.test.ts's toggle case, which goes red the moment this hook stops
|
|
658
|
+
// polling). ngDoCheck is the right hook, not a near-enough one: render3's `callHooks` flushes a
|
|
659
|
+
// node's pre-order hooks at the next `ɵɵadvance` PAST it, which is after the parent wrote this
|
|
660
|
+
// element's `ɵɵclassProp` and before this component's own view refreshes. It also runs under
|
|
661
|
+
// `setActiveConsumer(null)`, so the write registers no dependency on the caller's view and cannot
|
|
662
|
+
// throw NG0600. And `commitClassStyle` allocates a fresh style array only when a class token
|
|
663
|
+
// actually moved, so `signal.set`'s own Object.is check makes an unchanged poll dirty nothing.
|
|
664
|
+
ngDoCheck() {
|
|
665
|
+
this.anchorStyle.set(anchorHostStyle(this.elementRef));
|
|
666
|
+
// The attach can want a node that does not exist yet, and nothing else would ask again.
|
|
667
|
+
// ngOnChanges covers "indices arrived late"; it does NOT cover "indices arrived late AND the host
|
|
668
|
+
// node had not committed yet", which is exactly what a VirtualizedList does - it derives
|
|
669
|
+
// stickyHeaderIndices from the measured window, so they land after this component's
|
|
670
|
+
// ngAfterViewInit and before its host node resolves. Device-diagnosed 2026-08-18 on
|
|
671
|
+
// examples/angular BenchmarkScreen STICKY PATH B, whose log ends on `attachSticky NOT attaching
|
|
672
|
+
// (wantsAttach=true hasNode=false)` - sticky never turned on, while PATH A (literal indices in
|
|
673
|
+
// the template) worked because ngAfterViewInit already saw a node. Retried ONLY from that stuck
|
|
674
|
+
// state, so a settled ScrollView pays nothing per check. Device-verified the same day.
|
|
675
|
+
// Not covered headless: sticky-native-attach.test.ts's late-indices case has its node resolved by
|
|
676
|
+
// the time the indices land, and the deferred-creation ordering under `@if` never rendered the
|
|
677
|
+
// ScrollView at all.
|
|
678
|
+
if (this.stickyAttachedEnabled && this.stickyAttachedNode === null)
|
|
679
|
+
this.attachSticky();
|
|
680
|
+
}
|
|
681
|
+
// The projected RefreshControl is a @ContentChild, not an @Input, so ngOnChanges never fires when
|
|
682
|
+
// one is added or removed at the use site - and `excludeRefreshControl` decides whether the
|
|
683
|
+
// projection walk pulls it out of the scroll content. Angular resolves the query before this
|
|
684
|
+
// hook. Guarded on the flag itself so a check that changed nothing skips the reconcile walk,
|
|
685
|
+
// which the old getter-driven update could not do.
|
|
686
|
+
ngAfterContentChecked() {
|
|
687
|
+
if (this.hasProjectedRefreshControl === this.lastHasProjectedRefreshControl)
|
|
688
|
+
return;
|
|
689
|
+
this.lastHasProjectedRefreshControl = this.hasProjectedRefreshControl;
|
|
690
|
+
this.updateProjectionController();
|
|
691
|
+
}
|
|
692
|
+
// `stickyHeaderIndices` is an ordinary @Input, so it can arrive AFTER the first change-detection
|
|
693
|
+
// pass - any app deriving it from data rather than writing a literal in the template does exactly
|
|
694
|
+
// that. ngAfterViewInit runs once, so without this the native attach below would be skipped on
|
|
695
|
+
// that first pass and never retried: the wrapper still projects (that half self-heals), the
|
|
696
|
+
// header sits at the right place with the right z-index, and simply never moves. Device-reported
|
|
697
|
+
// 2026-08-16, regression-covered in sticky-native-attach.test.ts. The other three adapters never
|
|
698
|
+
// had this hole because they re-run the attach from a reactive effect keyed on the same
|
|
699
|
+
// condition (Svelte's `$effect` in index.svelte, React's useEffect deps, Vue's watcher).
|
|
700
|
+
ngOnChanges() {
|
|
701
|
+
dlog('STICKY[sv] ngOnChanges');
|
|
702
|
+
// Every computed() prop bag below reads plain @Input fields, which are NOT reactive on their
|
|
703
|
+
// own - this bump is what tells them an input changed. It must stay in ngOnChanges: that is
|
|
704
|
+
// the single moment Angular has finished writing every changed input for this pass.
|
|
705
|
+
this.inputsRevision.update(revision => revision + 1);
|
|
706
|
+
// stickyHeaderIndices / invertStickyHeaders / StickyHeaderComponent are @Inputs, so this is
|
|
707
|
+
// where the projection controller learns about them. It used to be a side effect of reading
|
|
708
|
+
// the `scrollProps` getter - which a memoized computed no longer performs per pass.
|
|
578
709
|
this.updateProjectionController();
|
|
579
710
|
this.attachSticky();
|
|
580
711
|
}
|
|
581
|
-
// Wire the native sticky-scroll attach
|
|
582
|
-
//
|
|
712
|
+
// Wire the native sticky-scroll attach once the view exists AND sticky is actually on. Re-runs
|
|
713
|
+
// on every input change, so it must be idempotent: see the guard below.
|
|
583
714
|
attachSticky() {
|
|
715
|
+
const wantsAttach = this.hasStickyHeaders && isNativeAnimatedAvailable();
|
|
716
|
+
const node = wantsAttach ? this.hostNode : null;
|
|
717
|
+
dlog(() => `STICKY[sv] attachSticky indices=${JSON.stringify(this.stickyHeaderIndices)} ` +
|
|
718
|
+
`hasSticky=${this.hasStickyHeaders} nativeAvailable=${isNativeAnimatedAvailable()} ` +
|
|
719
|
+
`wantsAttach=${wantsAttach} hasNode=${node !== null} ` +
|
|
720
|
+
`wasEnabled=${this.stickyAttachedEnabled} nodeChanged=${node !== this.stickyAttachedNode}`);
|
|
721
|
+
// Nothing that decides the attach has changed - return rather than detach and rebind the
|
|
722
|
+
// native scroll event, which every unrelated @Input change would otherwise churn now that
|
|
723
|
+
// ngOnChanges drives this too.
|
|
724
|
+
if (wantsAttach === this.stickyAttachedEnabled &&
|
|
725
|
+
node === this.stickyAttachedNode) {
|
|
726
|
+
dlog('STICKY[sv] attachSticky skipped (nothing about the attach changed)');
|
|
727
|
+
return;
|
|
728
|
+
}
|
|
584
729
|
this.cancelStickyBind?.();
|
|
585
730
|
this.cancelStickyBind = undefined;
|
|
586
731
|
if (this.detachStickyScroll !== undefined) {
|
|
587
732
|
this.detachStickyScroll();
|
|
588
733
|
this.detachStickyScroll = undefined;
|
|
589
734
|
}
|
|
590
|
-
|
|
591
|
-
|
|
592
|
-
|
|
593
|
-
|
|
735
|
+
// Recorded even when the node is not resolved yet, so the NEXT call (which will see a real
|
|
736
|
+
// node) reads as a change and attaches.
|
|
737
|
+
this.stickyAttachedEnabled = wantsAttach;
|
|
738
|
+
this.stickyAttachedNode = node;
|
|
739
|
+
if (!wantsAttach || node === null) {
|
|
740
|
+
dlog(`STICKY[sv] attachSticky NOT attaching (wantsAttach=${wantsAttach} hasNode=${node !== null})`);
|
|
594
741
|
return;
|
|
742
|
+
}
|
|
743
|
+
dlog('STICKY[sv] attachSticky waiting for commit to bind the native scroll event');
|
|
595
744
|
this.cancelStickyBind = whenCommitted(node, () => {
|
|
745
|
+
dlog('STICKY[sv] attachSticky node committed -> attachStickyScroll');
|
|
596
746
|
this.detachStickyScroll = attachStickyScroll(node, this.scrollAnimatedValue);
|
|
597
747
|
});
|
|
598
748
|
}
|
|
@@ -653,10 +803,10 @@ export class ScrollViewBase {
|
|
|
653
803
|
'aria-valuetext': this['aria-valuetext'],
|
|
654
804
|
};
|
|
655
805
|
}
|
|
656
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.
|
|
657
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.0.
|
|
806
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: ScrollViewBase, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
807
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.0.8", type: ScrollViewBase, isStandalone: true, outputs: { layout: "layout", scrollToTop: "scrollToTop", contentSizeChange: "contentSizeChange", accessibilityAction: "accessibilityAction", accessibilityTap: "accessibilityTap", magicTap: "magicTap", accessibilityEscape: "accessibilityEscape" }, queries: [{ propertyName: "projectedRefreshControl", first: true, predicate: RefreshControl, descendants: true }], viewQueries: [{ propertyName: "hostDirective", first: true, predicate: ["host"], descendants: true, read: SymbioteHostPropsDirective }], usesOnChanges: true, ngImport: i0 });
|
|
658
808
|
}
|
|
659
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.
|
|
809
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: ScrollViewBase, decorators: [{
|
|
660
810
|
type: Directive
|
|
661
811
|
}], propDecorators: { layout: [{
|
|
662
812
|
type: Output
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shared.js","sourceRoot":"","sources":["../../../../src/components/scroll-view/shared.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"shared.js","sourceRoot":"","sources":["../../../../src/components/scroll-view/shared.ts"],"names":[],"mappings":"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"}
|