@symbiote-native/angular 0.6.1 → 0.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (206) hide show
  1. package/README.md +1 -1
  2. package/bin/symbiote-angular-dev.cjs +20 -19
  3. package/build/angular/anchor-host-registry.js +2 -2
  4. package/build/angular/anchor-host-registry.js.map +1 -1
  5. package/build/angular/components/activity-indicator/index.android.d.ts +2 -1
  6. package/build/angular/components/activity-indicator/index.android.js +6 -3
  7. package/build/angular/components/activity-indicator/index.android.js.map +1 -1
  8. package/build/angular/components/activity-indicator/index.ios.d.ts +2 -1
  9. package/build/angular/components/activity-indicator/index.ios.js +6 -3
  10. package/build/angular/components/activity-indicator/index.ios.js.map +1 -1
  11. package/build/angular/components/activity-indicator/shared.js +3 -3
  12. package/build/angular/components/button.d.ts +4 -2
  13. package/build/angular/components/button.js +28 -17
  14. package/build/angular/components/button.js.map +1 -1
  15. package/build/angular/components/flat-list/index.d.ts +5 -3
  16. package/build/angular/components/flat-list/index.js +35 -38
  17. package/build/angular/components/flat-list/index.js.map +1 -1
  18. package/build/angular/components/image/index.android.d.ts +8 -3
  19. package/build/angular/components/image/index.android.js +39 -9
  20. package/build/angular/components/image/index.android.js.map +1 -1
  21. package/build/angular/components/image/index.ios.d.ts +8 -3
  22. package/build/angular/components/image/index.ios.js +39 -9
  23. package/build/angular/components/image/index.ios.js.map +1 -1
  24. package/build/angular/components/image/shared.d.ts +4 -1
  25. package/build/angular/components/image/shared.js +33 -2
  26. package/build/angular/components/image/shared.js.map +1 -1
  27. package/build/angular/components/image-background.d.ts +2 -1
  28. package/build/angular/components/image-background.js +6 -4
  29. package/build/angular/components/image-background.js.map +1 -1
  30. package/build/angular/components/input-accessory-view/index.d.ts +9 -4
  31. package/build/angular/components/input-accessory-view/index.js +43 -9
  32. package/build/angular/components/input-accessory-view/index.js.map +1 -1
  33. package/build/angular/components/keyboard-avoiding-view/index.d.ts +2 -1
  34. package/build/angular/components/keyboard-avoiding-view/index.js +6 -4
  35. package/build/angular/components/keyboard-avoiding-view/index.js.map +1 -1
  36. package/build/angular/components/modal/index.d.ts +11 -8
  37. package/build/angular/components/modal/index.js +45 -28
  38. package/build/angular/components/modal/index.js.map +1 -1
  39. package/build/angular/components/pressable/index.d.ts +11 -5
  40. package/build/angular/components/pressable/index.js +61 -12
  41. package/build/angular/components/pressable/index.js.map +1 -1
  42. package/build/angular/components/refresh-control/index.d.ts +8 -4
  43. package/build/angular/components/refresh-control/index.js +52 -16
  44. package/build/angular/components/refresh-control/index.js.map +1 -1
  45. package/build/angular/components/safe-area-view/index.d.ts +9 -4
  46. package/build/angular/components/safe-area-view/index.js +46 -9
  47. package/build/angular/components/safe-area-view/index.js.map +1 -1
  48. package/build/angular/components/scroll-view/index.android.d.ts +2 -3
  49. package/build/angular/components/scroll-view/index.android.js +49 -52
  50. package/build/angular/components/scroll-view/index.android.js.map +1 -1
  51. package/build/angular/components/scroll-view/index.ios.d.ts +2 -3
  52. package/build/angular/components/scroll-view/index.ios.js +15 -17
  53. package/build/angular/components/scroll-view/index.ios.js.map +1 -1
  54. package/build/angular/components/scroll-view/projection.d.ts +3 -0
  55. package/build/angular/components/scroll-view/projection.js +68 -7
  56. package/build/angular/components/scroll-view/projection.js.map +1 -1
  57. package/build/angular/components/scroll-view/shared.d.ts +14 -5
  58. package/build/angular/components/scroll-view/shared.js +198 -69
  59. package/build/angular/components/scroll-view/shared.js.map +1 -1
  60. package/build/angular/components/scroll-view/sticky-header.js +14 -19
  61. package/build/angular/components/scroll-view/sticky-header.js.map +1 -1
  62. package/build/angular/components/section-list/index.d.ts +2 -1
  63. package/build/angular/components/section-list/index.js +31 -39
  64. package/build/angular/components/section-list/index.js.map +1 -1
  65. package/build/angular/components/switch/index.android.d.ts +7 -3
  66. package/build/angular/components/switch/index.android.js +38 -10
  67. package/build/angular/components/switch/index.android.js.map +1 -1
  68. package/build/angular/components/switch/index.ios.d.ts +7 -3
  69. package/build/angular/components/switch/index.ios.js +38 -10
  70. package/build/angular/components/switch/index.ios.js.map +1 -1
  71. package/build/angular/components/switch/shared.d.ts +12 -3
  72. package/build/angular/components/switch/shared.js +66 -5
  73. package/build/angular/components/switch/shared.js.map +1 -1
  74. package/build/angular/components/text-input.d.ts +10 -2
  75. package/build/angular/components/text-input.js +46 -6
  76. package/build/angular/components/text-input.js.map +1 -1
  77. package/build/angular/components/touchable/index.d.ts +17 -8
  78. package/build/angular/components/touchable/index.js +78 -19
  79. package/build/angular/components/touchable/index.js.map +1 -1
  80. package/build/angular/components/touchable-native-feedback/index.d.ts +6 -3
  81. package/build/angular/components/touchable-native-feedback/index.js +61 -25
  82. package/build/angular/components/touchable-native-feedback/index.js.map +1 -1
  83. package/build/angular/components/virtualized-list/directives.js +18 -18
  84. package/build/angular/components/virtualized-list/index.d.ts +12 -4
  85. package/build/angular/components/virtualized-list/index.js +163 -68
  86. package/build/angular/components/virtualized-list/index.js.map +1 -1
  87. package/build/angular/components/virtualized-section-list/directives.js +12 -12
  88. package/build/angular/components/virtualized-section-list/index.d.ts +2 -1
  89. package/build/angular/components/virtualized-section-list/index.js +6 -4
  90. package/build/angular/components/virtualized-section-list/index.js.map +1 -1
  91. package/build/angular/components.d.ts +1 -1
  92. package/build/angular/components.js +5 -0
  93. package/build/angular/components.js.map +1 -1
  94. package/build/angular/create-portal/index.js +29 -35
  95. package/build/angular/create-portal/index.js.map +1 -1
  96. package/build/angular/create-tunnel/index.js +19 -22
  97. package/build/angular/create-tunnel/index.js.map +1 -1
  98. package/build/angular/descriptor-to-angular/index.js +3 -3
  99. package/build/angular/index.d.ts +4 -2
  100. package/build/angular/index.js +2 -2
  101. package/build/angular/index.js.map +1 -1
  102. package/build/angular/modules/animated/animated-leaf-binder.d.ts +1 -7
  103. package/build/angular/modules/animated/animated-leaf-binder.js +22 -72
  104. package/build/angular/modules/animated/animated-leaf-binder.js.map +1 -1
  105. package/build/angular/modules/animated/create-animated-component.d.ts +11 -6
  106. package/build/angular/modules/animated/create-animated-component.js +83 -50
  107. package/build/angular/modules/animated/create-animated-component.js.map +1 -1
  108. package/build/angular/modules/app-registry/index.js.map +1 -1
  109. package/build/angular/modules/status-bar/index.js +3 -3
  110. package/build/angular/primitives/index.d.ts +1 -1
  111. package/build/angular/primitives/index.js +46 -46
  112. package/build/angular/primitives/index.js.map +1 -1
  113. package/build/angular/primitives/shared.d.ts +39 -1
  114. package/build/angular/primitives/shared.js +110 -9
  115. package/build/angular/primitives/shared.js.map +1 -1
  116. package/build/angular/render/index.js +23 -35
  117. package/build/angular/render/index.js.map +1 -1
  118. package/build/angular/services/color-scheme.service.js +3 -3
  119. package/build/angular/services/window-dimensions.service.js +3 -3
  120. package/package.json +13 -8
  121. package/src/anchor-host-registry.ts +2 -2
  122. package/src/components/activity-indicator/index.android.ts +2 -0
  123. package/src/components/activity-indicator/index.ios.ts +2 -0
  124. package/src/components/button.ts +28 -14
  125. package/src/components/flat-list/index.ts +34 -36
  126. package/src/components/image/index.android.ts +50 -6
  127. package/src/components/image/index.ios.ts +50 -6
  128. package/src/components/image/shared.ts +34 -2
  129. package/src/components/image-background.ts +2 -1
  130. package/src/components/input-accessory-view/index.ts +42 -4
  131. package/src/components/keyboard-avoiding-view/index.ts +7 -1
  132. package/src/components/modal/index.ts +51 -26
  133. package/src/components/pressable/index.ts +67 -8
  134. package/src/components/refresh-control/index.ts +54 -12
  135. package/src/components/safe-area-view/index.ts +50 -5
  136. package/src/components/scroll-view/index.android.ts +34 -41
  137. package/src/components/scroll-view/index.ios.ts +10 -21
  138. package/src/components/scroll-view/projection.ts +79 -7
  139. package/src/components/scroll-view/shared.ts +223 -68
  140. package/src/components/scroll-view/sticky-header.ts +11 -16
  141. package/src/components/section-list/index.ts +27 -36
  142. package/src/components/switch/index.android.ts +48 -7
  143. package/src/components/switch/index.ios.ts +48 -7
  144. package/src/components/switch/shared.ts +79 -3
  145. package/src/components/text-input.ts +52 -2
  146. package/src/components/touchable/index.ts +76 -16
  147. package/src/components/touchable-native-feedback/index.ts +62 -21
  148. package/src/components/virtualized-list/index.ts +137 -44
  149. package/src/components/virtualized-section-list/index.ts +2 -1
  150. package/src/components.ts +5 -0
  151. package/src/create-portal/index.ts +23 -29
  152. package/src/create-tunnel/index.ts +13 -16
  153. package/src/index.ts +30 -1
  154. package/src/modules/animated/animated-leaf-binder.ts +28 -77
  155. package/src/modules/animated/create-animated-component.ts +75 -36
  156. package/src/modules/app-registry/index.ts +6 -8
  157. package/src/primitives/index.ts +1 -0
  158. package/src/primitives/shared.ts +102 -3
  159. package/src/render/index.ts +23 -35
  160. package/build/angular/modules/animated/animated-leaf-binder/index.d.ts +0 -14
  161. package/build/angular/modules/animated/animated-leaf-binder/index.js +0 -91
  162. package/build/angular/modules/animated/animated-leaf-binder/index.js.map +0 -1
  163. package/src/__tests__/responder-change-detection.test.ts +0 -102
  164. package/src/__tests__/responder-nested-cd.test.ts +0 -113
  165. package/src/angular-gaps.test.ts +0 -142
  166. package/src/angular-imports.test.ts +0 -100
  167. package/src/components/activity-indicator/activity-indicator-class-style.test.ts +0 -44
  168. package/src/components/activity-indicator/activity-indicator.test.ts +0 -131
  169. package/src/components/flat-list/column-wrapper-style-class.test.ts +0 -116
  170. package/src/components/flat-list/flat-list-array-style.test.ts +0 -131
  171. package/src/components/flat-list/flat-list-class-style.test.ts +0 -74
  172. package/src/components/flat-list/flat-list-scroll-containment.test.ts +0 -107
  173. package/src/components/flat-list/flat-list.test.ts +0 -99
  174. package/src/components/image/image-class-style.test.ts +0 -46
  175. package/src/components/image-background-class-style.test.ts +0 -48
  176. package/src/components/image-background-style-class.test.ts +0 -79
  177. package/src/components/input-accessory-view/input-accessory-view.test.ts +0 -43
  178. package/src/components/keyboard-avoiding-view/keyboard-avoiding-view.test.ts +0 -54
  179. package/src/components/modal/modal.test.ts +0 -43
  180. package/src/components/pressable/pressable.test.ts +0 -85
  181. package/src/components/refresh-control/refresh-control.test.ts +0 -41
  182. package/src/components/safe-area-view/safe-area-view.test.ts +0 -43
  183. package/src/components/scroll-view/android-scroll-view-axis-projection.test.ts +0 -123
  184. package/src/components/scroll-view/content-container-style-class.test.ts +0 -75
  185. package/src/components/scroll-view/scroll-view-class-style.test.ts +0 -134
  186. package/src/components/scroll-view/scroll-view-projection.test.ts +0 -194
  187. package/src/components/switch/android-switch-class.test.ts +0 -42
  188. package/src/components/switch/switch.test.ts +0 -92
  189. package/src/components/text-input-class-style.test.ts +0 -54
  190. package/src/components/touchable/touchable.test.ts +0 -102
  191. package/src/components/touchable-native-feedback/touchable-native-feedback.test.ts +0 -49
  192. package/src/components/virtualized-list/virtualized-list-class-style.test.ts +0 -76
  193. package/src/components/virtualized-section-list/virtualized-section-list-class-style.test.ts +0 -60
  194. package/src/create-portal/create-portal.test.ts +0 -90
  195. package/src/create-tunnel/create-tunnel.test.ts +0 -120
  196. package/src/descriptor-to-angular/descriptor-outlet.test.ts +0 -94
  197. package/src/host-instance/host-instance.test.ts +0 -49
  198. package/src/modules/animated/animated-leaf-binder/animated-leaf-binder.test.ts +0 -116
  199. package/src/modules/animated/animated-leaf-binder/index.ts +0 -101
  200. package/src/modules/animated/animated-leaf-binder.test.ts +0 -116
  201. package/src/modules/animated/animated-scroll-view.test.ts +0 -102
  202. package/src/modules/app-registry/app-registry.test.ts +0 -106
  203. package/src/modules/status-bar/status-bar.test.ts +0 -50
  204. package/src/render/render.test.ts +0 -147
  205. package/src/renderer/renderer.test.ts +0 -203
  206. package/src/services/services.test.ts +0 -163
@@ -15,24 +15,21 @@
15
15
  // conditionally include <ng-content> with @if, @for, or @switch"). Symptom here was axis-specific:
16
16
  // a horizontal FlatList's cells landed outside the ScrollView entirely. Fix: single unconditional
17
17
  // `<ng-content>` call site.
18
- import { CUSTOM_ELEMENTS_SCHEMA, ChangeDetectionStrategy, Component, ElementRef, inject, } from '@angular/core';
19
- import { anchorHostStyle, RefreshControlHost, ScrollContentView, ScrollViewHost, SymbioteHostPropsDirective, } from '../../primitives';
18
+ import { CUSTOM_ELEMENTS_SCHEMA, ChangeDetectionStrategy, Component } from '@angular/core';
19
+ import { RefreshControlHost, ScrollContentView, ScrollViewHost, SymbioteHostPropsDirective, SymbioteStyleInputDirective, } from '../../primitives';
20
20
  import { ScrollViewBase, ScrollViewProjectionDirective, SCROLL_VIEW_INPUTS } from './shared';
21
21
  import * as i0 from "@angular/core";
22
+ import * as i1 from "../../primitives/shared";
22
23
  // The symbiote-* host elements are imported as standalone components; the props directive is
23
24
  // applied as a template directive and the projection directive manages sticky-header wrapping.
25
+ // Behavior lives entirely in ScrollViewBase; this class exists for the decorator + iOS template.
26
+ // The anchor-style merge that used to be a `scrollProps` override here moved into the base's
27
+ // `scrollProps` computed - a subclass getter cannot override a field, and both platforms merged it
28
+ // identically anyway (see that computed's comment).
24
29
  export class ScrollView extends ScrollViewBase {
25
- // This component's OWN host the non-painting anchor `class="..."` at the use site resolves
26
- // onto (see anchorHostStyle's doc comment) NOT `#host` in the template above, which targets
27
- // the real inner `symbiote-scroll-view` one level down.
28
- elementRef = inject(ElementRef);
29
- get scrollProps() {
30
- const props = super.scrollProps;
31
- return { ...props, style: [anchorHostStyle(this.elementRef), props.style] };
32
- }
33
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: ScrollView, deps: null, target: i0.ɵɵFactoryTarget.Component });
34
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.0.5", type: ScrollView, isStandalone: true, selector: "ScrollView", inputs: { style: "style", contentContainerStyle: "contentContainerStyle", horizontal: "horizontal", scrollEnabled: "scrollEnabled", showsVerticalScrollIndicator: "showsVerticalScrollIndicator", showsHorizontalScrollIndicator: "showsHorizontalScrollIndicator", pagingEnabled: "pagingEnabled", bounces: "bounces", decelerationRate: "decelerationRate", scrollEventThrottle: "scrollEventThrottle", contentInset: "contentInset", contentOffset: "contentOffset", removeClippedSubviews: "removeClippedSubviews", snapToInterval: "snapToInterval", snapToOffsets: "snapToOffsets", snapToAlignment: "snapToAlignment", snapToStart: "snapToStart", snapToEnd: "snapToEnd", disableIntervalMomentum: "disableIntervalMomentum", stickyHeaderIndices: "stickyHeaderIndices", invertStickyHeaders: "invertStickyHeaders", StickyHeaderComponent: "StickyHeaderComponent", keyboardDismissMode: "keyboardDismissMode", keyboardShouldPersistTaps: "keyboardShouldPersistTaps", maintainVisibleContentPosition: "maintainVisibleContentPosition", alwaysBounceHorizontal: "alwaysBounceHorizontal", alwaysBounceVertical: "alwaysBounceVertical", centerContent: "centerContent", scrollIndicatorInsets: "scrollIndicatorInsets", indicatorStyle: "indicatorStyle", directionalLockEnabled: "directionalLockEnabled", automaticallyAdjustKeyboardInsets: "automaticallyAdjustKeyboardInsets", contentInsetAdjustmentBehavior: "contentInsetAdjustmentBehavior", minimumZoomScale: "minimumZoomScale", maximumZoomScale: "maximumZoomScale", zoomScale: "zoomScale", bouncesZoom: "bouncesZoom", pinchGestureEnabled: "pinchGestureEnabled", nestedScrollEnabled: "nestedScrollEnabled", overScrollMode: "overScrollMode", fadingEdgeLength: "fadingEdgeLength", persistentScrollbar: "persistentScrollbar", endFillColor: "endFillColor", onScroll: "onScroll", onScrollBeginDrag: "onScrollBeginDrag", onScrollEndDrag: "onScrollEndDrag", onMomentumScrollBegin: "onMomentumScrollBegin", onMomentumScrollEnd: "onMomentumScrollEnd", testID: "testID", nativeID: "nativeID", accessible: "accessible", accessibilityLabel: "accessibilityLabel", accessibilityHint: "accessibilityHint", accessibilityRole: "accessibilityRole", accessibilityState: "accessibilityState", accessibilityValue: "accessibilityValue", accessibilityActions: "accessibilityActions", accessibilityLabelledBy: "accessibilityLabelledBy", importantForAccessibility: "importantForAccessibility", accessibilityLiveRegion: "accessibilityLiveRegion", screenReaderFocusable: "screenReaderFocusable", accessibilityViewIsModal: "accessibilityViewIsModal", accessibilityElementsHidden: "accessibilityElementsHidden", accessibilityIgnoresInvertColors: "accessibilityIgnoresInvertColors", accessibilityLanguage: "accessibilityLanguage", accessibilityRespondsToUserInteraction: "accessibilityRespondsToUserInteraction", accessibilityShowsLargeContentViewer: "accessibilityShowsLargeContentViewer", accessibilityLargeContentTitle: "accessibilityLargeContentTitle", role: "role", "aria-label": "aria-label", "aria-labelledby": "aria-labelledby", "aria-live": "aria-live", "aria-hidden": "aria-hidden", "aria-busy": "aria-busy", "aria-checked": "aria-checked", "aria-disabled": "aria-disabled", "aria-expanded": "aria-expanded", "aria-selected": "aria-selected", "aria-modal": "aria-modal", "aria-valuemax": "aria-valuemax", "aria-valuemin": "aria-valuemin", "aria-valuenow": "aria-valuenow", "aria-valuetext": "aria-valuetext" }, usesInheritance: true, ngImport: i0, template: `
35
- <symbiote-scroll-view #host="symbioteHost" [symbioteHostProps]="scrollProps">
30
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: ScrollView, deps: null, target: i0.ɵɵFactoryTarget.Component });
31
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.0.8", type: ScrollView, isStandalone: true, selector: "ScrollView", inputs: { style: "style", contentContainerStyle: "contentContainerStyle", horizontal: "horizontal", scrollEnabled: "scrollEnabled", showsVerticalScrollIndicator: "showsVerticalScrollIndicator", showsHorizontalScrollIndicator: "showsHorizontalScrollIndicator", pagingEnabled: "pagingEnabled", bounces: "bounces", decelerationRate: "decelerationRate", scrollEventThrottle: "scrollEventThrottle", contentInset: "contentInset", contentOffset: "contentOffset", removeClippedSubviews: "removeClippedSubviews", snapToInterval: "snapToInterval", snapToOffsets: "snapToOffsets", snapToAlignment: "snapToAlignment", snapToStart: "snapToStart", snapToEnd: "snapToEnd", disableIntervalMomentum: "disableIntervalMomentum", stickyHeaderIndices: "stickyHeaderIndices", invertStickyHeaders: "invertStickyHeaders", StickyHeaderComponent: "StickyHeaderComponent", keyboardDismissMode: "keyboardDismissMode", keyboardShouldPersistTaps: "keyboardShouldPersistTaps", maintainVisibleContentPosition: "maintainVisibleContentPosition", alwaysBounceHorizontal: "alwaysBounceHorizontal", alwaysBounceVertical: "alwaysBounceVertical", centerContent: "centerContent", scrollIndicatorInsets: "scrollIndicatorInsets", indicatorStyle: "indicatorStyle", directionalLockEnabled: "directionalLockEnabled", automaticallyAdjustKeyboardInsets: "automaticallyAdjustKeyboardInsets", contentInsetAdjustmentBehavior: "contentInsetAdjustmentBehavior", minimumZoomScale: "minimumZoomScale", maximumZoomScale: "maximumZoomScale", zoomScale: "zoomScale", bouncesZoom: "bouncesZoom", pinchGestureEnabled: "pinchGestureEnabled", nestedScrollEnabled: "nestedScrollEnabled", overScrollMode: "overScrollMode", fadingEdgeLength: "fadingEdgeLength", persistentScrollbar: "persistentScrollbar", endFillColor: "endFillColor", onScroll: "onScroll", onScrollBeginDrag: "onScrollBeginDrag", onScrollEndDrag: "onScrollEndDrag", onMomentumScrollBegin: "onMomentumScrollBegin", onMomentumScrollEnd: "onMomentumScrollEnd", testID: "testID", nativeID: "nativeID", accessible: "accessible", accessibilityLabel: "accessibilityLabel", accessibilityHint: "accessibilityHint", accessibilityRole: "accessibilityRole", accessibilityState: "accessibilityState", accessibilityValue: "accessibilityValue", accessibilityActions: "accessibilityActions", accessibilityLabelledBy: "accessibilityLabelledBy", importantForAccessibility: "importantForAccessibility", accessibilityLiveRegion: "accessibilityLiveRegion", screenReaderFocusable: "screenReaderFocusable", accessibilityViewIsModal: "accessibilityViewIsModal", accessibilityElementsHidden: "accessibilityElementsHidden", accessibilityIgnoresInvertColors: "accessibilityIgnoresInvertColors", accessibilityLanguage: "accessibilityLanguage", accessibilityRespondsToUserInteraction: "accessibilityRespondsToUserInteraction", accessibilityShowsLargeContentViewer: "accessibilityShowsLargeContentViewer", accessibilityLargeContentTitle: "accessibilityLargeContentTitle", role: "role", "aria-label": "aria-label", "aria-labelledby": "aria-labelledby", "aria-live": "aria-live", "aria-hidden": "aria-hidden", "aria-busy": "aria-busy", "aria-checked": "aria-checked", "aria-disabled": "aria-disabled", "aria-expanded": "aria-expanded", "aria-selected": "aria-selected", "aria-modal": "aria-modal", "aria-valuemax": "aria-valuemax", "aria-valuemin": "aria-valuemin", "aria-valuenow": "aria-valuenow", "aria-valuetext": "aria-valuetext" }, usesInheritance: true, hostDirectives: [{ directive: i1.SymbioteStyleInputDirective, inputs: ["style", "style"] }], ngImport: i0, template: `
32
+ <symbiote-scroll-view #host="symbioteHost" [symbioteHostProps]="scrollProps()">
36
33
  @if (hasProjectedRefreshControl) {
37
34
  <symbiote-refresh-control
38
35
  #refreshHost="symbioteHost"
@@ -41,7 +38,7 @@ export class ScrollView extends ScrollViewBase {
41
38
  ></symbiote-refresh-control>
42
39
  }
43
40
  <symbiote-scroll-content
44
- [symbioteHostProps]="contentProps"
41
+ [symbioteHostProps]="contentProps()"
45
42
  [symbioteScrollViewProjection]="projectionController"
46
43
  >
47
44
  <ng-content></ng-content>
@@ -49,11 +46,12 @@ export class ScrollView extends ScrollViewBase {
49
46
  </symbiote-scroll-view>
50
47
  `, isInline: true, dependencies: [{ kind: "component", type: ScrollViewHost, selector: "symbiote-scroll-view" }, { kind: "component", type: ScrollContentView, selector: "symbiote-scroll-content" }, { kind: "component", type: RefreshControlHost, selector: "symbiote-refresh-control" }, { kind: "directive", type: SymbioteHostPropsDirective, selector: "[symbioteHostProps]", inputs: ["symbioteHostProps"], exportAs: ["symbioteHost"] }, { kind: "directive", type: ScrollViewProjectionDirective, selector: "[symbioteScrollViewProjection]", inputs: ["symbioteScrollViewProjection"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
51
48
  }
52
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: ScrollView, decorators: [{
49
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: ScrollView, decorators: [{
53
50
  type: Component,
54
51
  args: [{
55
52
  selector: 'ScrollView',
56
53
  standalone: true,
54
+ hostDirectives: [{ directive: SymbioteStyleInputDirective, inputs: ['style'] }],
57
55
  schemas: [CUSTOM_ELEMENTS_SCHEMA],
58
56
  imports: [
59
57
  ScrollViewHost,
@@ -65,7 +63,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.5", ngImpor
65
63
  changeDetection: ChangeDetectionStrategy.OnPush,
66
64
  inputs: SCROLL_VIEW_INPUTS,
67
65
  template: `
68
- <symbiote-scroll-view #host="symbioteHost" [symbioteHostProps]="scrollProps">
66
+ <symbiote-scroll-view #host="symbioteHost" [symbioteHostProps]="scrollProps()">
69
67
  @if (hasProjectedRefreshControl) {
70
68
  <symbiote-refresh-control
71
69
  #refreshHost="symbioteHost"
@@ -74,7 +72,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.5", ngImpor
74
72
  ></symbiote-refresh-control>
75
73
  }
76
74
  <symbiote-scroll-content
77
- [symbioteHostProps]="contentProps"
75
+ [symbioteHostProps]="contentProps()"
78
76
  [symbioteScrollViewProjection]="projectionController"
79
77
  >
80
78
  <ng-content></ng-content>
@@ -1 +1 @@
1
- {"version":3,"file":"index.ios.js","sourceRoot":"","sources":["../../../../src/components/scroll-view/index.ios.ts"],"names":[],"mappings":"AAAA,gFAAgF;AAChF,oGAAoG;AACpG,oGAAoG;AACpG,gGAAgG;AAChG,gGAAgG;AAChG,EAAE;AACF,+FAA+F;AAC/F,8FAA8F;AAC9F,iGAAiG;AACjG,kGAAkG;AAClG,6FAA6F;AAC7F,gGAAgG;AAChG,2FAA2F;AAC3F,6FAA6F;AAC7F,mGAAmG;AACnG,kGAAkG;AAClG,4BAA4B;AAE5B,OAAO,EACL,sBAAsB,EACtB,uBAAuB,EACvB,SAAS,EACT,UAAU,EACV,MAAM,GACP,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,eAAe,EACf,kBAAkB,EAClB,iBAAiB,EACjB,cAAc,EACd,0BAA0B,GAC3B,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,cAAc,EAAE,6BAA6B,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;;AAG7F,6FAA6F;AAC7F,+FAA+F;AAgC/F,MAAM,OAAO,UAAW,SAAQ,cAAc;IAC5C,6FAA6F;IAC7F,8FAA8F;IAC9F,wDAAwD;IACvC,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC;IAEjD,IAAa,WAAW;QACtB,MAAM,KAAK,GAAG,KAAK,CAAC,WAAW,CAAC;QAChC,OAAO,EAAE,GAAG,KAAK,EAAE,KAAK,EAAE,CAAC,eAAe,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;IAC9E,CAAC;uGATU,UAAU;2FAAV,UAAU,+6GAlBX;;;;;;;;;;;;;;;;GAgBT,4DAxBC,cAAc,iEACd,iBAAiB,oEACjB,kBAAkB,qEAClB,0BAA0B,2HAC1B,6BAA6B;;2FAsBpB,UAAU;kBA/BtB,SAAS;mBAAC;oBACT,QAAQ,EAAE,YAAY;oBACtB,UAAU,EAAE,IAAI;oBAChB,OAAO,EAAE,CAAC,sBAAsB,CAAC;oBACjC,OAAO,EAAE;wBACP,cAAc;wBACd,iBAAiB;wBACjB,kBAAkB;wBAClB,0BAA0B;wBAC1B,6BAA6B;qBAC9B;oBACD,eAAe,EAAE,uBAAuB,CAAC,MAAM;oBAC/C,MAAM,EAAE,kBAAkB;oBAC1B,QAAQ,EAAE;;;;;;;;;;;;;;;;GAgBT;iBACF"}
1
+ {"version":3,"file":"index.ios.js","sourceRoot":"","sources":["../../../../src/components/scroll-view/index.ios.ts"],"names":[],"mappings":"AAAA,gFAAgF;AAChF,oGAAoG;AACpG,oGAAoG;AACpG,gGAAgG;AAChG,gGAAgG;AAChG,EAAE;AACF,+FAA+F;AAC/F,8FAA8F;AAC9F,iGAAiG;AACjG,kGAAkG;AAClG,6FAA6F;AAC7F,gGAAgG;AAChG,2FAA2F;AAC3F,6FAA6F;AAC7F,mGAAmG;AACnG,kGAAkG;AAClG,4BAA4B;AAE5B,OAAO,EAAE,sBAAsB,EAAE,uBAAuB,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC3F,OAAO,EACL,kBAAkB,EAClB,iBAAiB,EACjB,cAAc,EACd,0BAA0B,EAC1B,2BAA2B,GAC5B,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,cAAc,EAAE,6BAA6B,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;;;AAG7F,6FAA6F;AAC7F,+FAA+F;AAiC/F,iGAAiG;AACjG,6FAA6F;AAC7F,mGAAmG;AACnG,oDAAoD;AACpD,MAAM,OAAO,UAAW,SAAQ,cAAc;uGAAjC,UAAU;2FAAV,UAAU,4gHAtBX;;;;;;;;;;;;;;;;GAgBT,4DAxBC,cAAc,iEACd,iBAAiB,oEACjB,kBAAkB,qEAClB,0BAA0B,2HAC1B,6BAA6B;;2FA0BpB,UAAU;kBApCtB,SAAS;mBAAC;oBACT,QAAQ,EAAE,YAAY;oBACtB,UAAU,EAAE,IAAI;oBAChB,cAAc,EAAE,CAAC,EAAE,SAAS,EAAE,2BAA2B,EAAE,MAAM,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;oBAC/E,OAAO,EAAE,CAAC,sBAAsB,CAAC;oBACjC,OAAO,EAAE;wBACP,cAAc;wBACd,iBAAiB;wBACjB,kBAAkB;wBAClB,0BAA0B;wBAC1B,6BAA6B;qBAC9B;oBACD,eAAe,EAAE,uBAAuB,CAAC,MAAM;oBAC/C,MAAM,EAAE,kBAAkB;oBAC1B,QAAQ,EAAE;;;;;;;;;;;;;;;;GAgBT;iBACF"}
@@ -14,6 +14,8 @@ export declare class ScrollViewProjectionController {
14
14
  private contentNode;
15
15
  private readonly records;
16
16
  private readonly headerLayoutYs;
17
+ private readonly instanceId;
18
+ private reconcileSeq;
17
19
  constructor(config: IScrollViewProjectionConfig);
18
20
  update(config: IScrollViewProjectionConfig): void;
19
21
  bindContentNode(node: ISymbioteNode): void;
@@ -24,6 +26,7 @@ export declare class ScrollViewProjectionController {
24
26
  recordHeaderLayoutY(index: number, y: number): void;
25
27
  private insertRecord;
26
28
  private reconcileStickyRecords;
29
+ private dropRecord;
27
30
  private wrapRecord;
28
31
  private unwrapRecord;
29
32
  }
@@ -26,6 +26,8 @@ function isProjectedRefreshControl(node) {
26
26
  // delay, rebuild ranges, cross-talk record) live there; this runner only EXECUTES the effects on the
27
27
  // engine node (build interpolation + wire listener, hold the debounce timer, re-apply the node props).
28
28
  // Because it owns the child index, it consumes the reducer's record-header-y effect for cross-talk.
29
+ // Diagnostic-only: a process-wide counter so each controller's log lines are attributable.
30
+ let projectionControllerSeq = 0;
29
31
  class StickyProjectionWrapper {
30
32
  controller;
31
33
  childIndex;
@@ -45,6 +47,7 @@ class StickyProjectionWrapper {
45
47
  inputRange: [-1, 0],
46
48
  outputRange: [0, 0],
47
49
  });
50
+ dlog(`STICKY[wrap] created index=${childIndex} scrollValueIsNative=${this.controller.config.scrollAnimatedValue.__isNative()}`);
48
51
  this.dispatch({ kind: 'inputs-changed' });
49
52
  }
50
53
  destroy() {
@@ -96,7 +99,7 @@ class StickyProjectionWrapper {
96
99
  this.interpolation = next;
97
100
  this.animatedTranslateY = next;
98
101
  this.applyProps();
99
- dlog(`Angular ScrollView projection sticky index=${this.childIndex} measured=${this.state.measured} y=${this.state.layoutY}`);
102
+ dlog(`STICKY[wrap] rebuilt index=${this.childIndex} measured=${this.state.measured} y=${this.state.layoutY}`);
100
103
  break;
101
104
  }
102
105
  case 'schedule-debounce':
@@ -119,6 +122,7 @@ class StickyProjectionWrapper {
119
122
  onLayout = (event) => {
120
123
  const y = readLayoutNumber(event, 'y');
121
124
  const height = readLayoutNumber(event, 'height');
125
+ dlog(`STICKY[wrap] index=${this.childIndex} onLayout y=${y} height=${height}`);
122
126
  // Keep the previous value when a field is absent (RN sets state only on a defined read).
123
127
  this.dispatch({
124
128
  kind: 'layout',
@@ -126,7 +130,12 @@ class StickyProjectionWrapper {
126
130
  height: height ?? this.state.layoutHeight,
127
131
  });
128
132
  };
133
+ // The ONLY thing that drives the committed pin on this path: applyProps has no __makeNative(),
134
+ // so the wrapper is JS-driven end to end. If the scroll value has been made native up front the
135
+ // cascade to child listeners stops (AnimatedWithChildren.__callListeners skips children once
136
+ // isNative) and this never fires - the header then renders in place and never moves.
129
137
  animatedValueListener = ({ value }) => {
138
+ dlog(() => `STICKY[wrap] index=${this.childIndex} animated-tick value=${String(value)}`);
130
139
  if (typeof value === 'number')
131
140
  this.dispatch({ kind: 'animated-tick', value });
132
141
  };
@@ -147,15 +156,32 @@ class StickyProjectionWrapper {
147
156
  applyProps() {
148
157
  const props = this.props();
149
158
  const reduced = reduceProps(props);
159
+ // Thunk: applyProps is on the scroll-driven path (every animated-tick while the pin is
160
+ // JS-driven), and JSON.stringify of a reduced transform is not free.
161
+ dlog(() => `STICKY[wrap] index=${this.childIndex} applyProps translateY=${String(this.state.translateY)} ` +
162
+ `measured=${this.state.measured} layoutY=${this.state.layoutY} ` +
163
+ `scrollValueIsNative=${this.controller.config.scrollAnimatedValue.__isNative()} ` +
164
+ `reducedTransform=${JSON.stringify(reduced.transform ?? reduced.style)}`);
150
165
  for (const [key, value] of Object.entries(reduced))
151
166
  routeProp(this.node, key, value);
152
167
  const next = new AnimatedProps(props);
153
168
  next.__attach();
169
+ // No explicit __makeNative() here on purpose: __attach joins the leaf to the interpolation,
170
+ // which sits under the shared scroll value, and AnimatedWithChildren.__addChild promotes a
171
+ // child joining an ALREADY-native parent (graph.ts). So the pin is native exactly when the
172
+ // scroll value is - logged below, because "is this actually on the UI thread" is otherwise
173
+ // invisible until you read three files.
174
+ dlog(() => `STICKY[wrap] index=${this.childIndex} leaf attached isNative=${next.__isNative()} ` +
175
+ `interpolationIsNative=${this.animatedTranslateY.__isNative()} ` +
176
+ `scrollValueIsNative=${this.controller.config.scrollAnimatedValue.__isNative()}`);
154
177
  if (this.animatedProps !== undefined)
155
178
  this.animatedProps.__detach();
156
179
  this.animatedProps = next;
157
180
  this.cancelBind?.();
158
- this.cancelBind = whenCommitted(this.node, () => next.setNativeView(this.node));
181
+ this.cancelBind = whenCommitted(this.node, () => {
182
+ next.setNativeView(this.node);
183
+ dlog(`STICKY[wrap] index=${this.childIndex} setNativeView isNative=${next.__isNative()}`);
184
+ });
159
185
  }
160
186
  }
161
187
  export class ScrollViewProjectionController {
@@ -163,6 +189,12 @@ export class ScrollViewProjectionController {
163
189
  contentNode;
164
190
  records = [];
165
191
  headerLayoutYs = new Map();
192
+ // Diagnostic-only: one ScrollView can host several projection controllers over its lifetime,
193
+ // and an app has several ScrollViews at once. Without an id every log line below is
194
+ // indistinguishable between instances, which is what made a "logs never stop" report
195
+ // impossible to read as either a real loop or two lists warming up in turn.
196
+ instanceId = ++projectionControllerSeq;
197
+ reconcileSeq = 0;
166
198
  constructor(config) {
167
199
  this.config = config;
168
200
  }
@@ -231,9 +263,12 @@ export class ScrollViewProjectionController {
231
263
  nextStickyHeaderY(index) {
232
264
  const stickyIndices = this.config.stickyHeaderIndices ?? [];
233
265
  const next = stickyIndices.find(entry => entry > index);
234
- return next === undefined ? undefined : this.headerLayoutYs.get(next);
266
+ const y = next === undefined ? undefined : this.headerLayoutYs.get(next);
267
+ dlog(`STICKY[proj] nextStickyHeaderY(index=${index}) next=${next} y=${y}`);
268
+ return y;
235
269
  }
236
270
  recordHeaderLayoutY(index, y) {
271
+ dlog(`STICKY[proj] recordHeaderLayoutY index=${index} y=${y}`);
237
272
  if (this.headerLayoutYs.get(index) === y)
238
273
  return;
239
274
  this.headerLayoutYs.set(index, y);
@@ -242,7 +277,8 @@ export class ScrollViewProjectionController {
242
277
  }
243
278
  insertRecord(parent, record, beforeRecord, insert) {
244
279
  const before = beforeRecord === undefined ? undefined : directNode(beforeRecord);
245
- dlog(`Angular ScrollView projection insertRecord physicalParent=${parent.component} child=${record.child.component} before=${before ? before.component : 'undefined(append)'} parentIsContentNode=${parent === this.contentNode}`);
280
+ dlog(`STICKY[proj#${this.instanceId}] insertRecord child=${record.child.component} ` +
281
+ `before=${before ? before.component : 'append'} parentIsContentNode=${parent === this.contentNode}`);
246
282
  if (before === undefined)
247
283
  insert(parent, record.child);
248
284
  else
@@ -251,15 +287,21 @@ export class ScrollViewProjectionController {
251
287
  reconcileStickyRecords() {
252
288
  if (this.contentNode === undefined)
253
289
  return;
254
- dlog(`Angular ScrollView projection reconcile contentNode=${this.contentNode.component} records=${this.records.length} contentNodeActualChildren=${this.contentNode.children.length}`);
290
+ const seq = ++this.reconcileSeq;
291
+ dlog(() => `STICKY[proj#${this.instanceId}] reconcile#${seq} records=${this.records.length} ` +
292
+ `children=${this.contentNode?.children.length} sticky=${JSON.stringify(this.config.stickyHeaderIndices ?? [])}`);
255
293
  const stickyIndices = new Set(this.config.stickyHeaderIndices ?? []);
256
294
  if (this.config.customStickyHeaderComponent !== undefined && stickyIndices.size > 0) {
257
- dlog('Angular ScrollView projection uses built-in sticky wrapper; custom StickyHeaderComponent is explicit-composition only');
295
+ dlog('STICKY[proj] uses built-in sticky wrapper; custom StickyHeaderComponent is explicit-composition only');
258
296
  }
259
297
  let paintIndex = 0;
260
298
  for (const record of [...this.records]) {
261
299
  if (this.config.excludeRefreshControl && isProjectedRefreshControl(record.child)) {
262
- this.removeProjectedChild(record.child, (parent, child) => removeChild(parent, child));
300
+ // Removed INLINE, not through removeProjectedChild: that method ends with its own
301
+ // reconcileStickyRecords(), so calling it from inside this walk re-enters the walk while
302
+ // this.records is being spliced under it - one refresh control could then drive an
303
+ // unbounded recursion. Same removal, without the re-entry.
304
+ this.dropRecord(record);
263
305
  continue;
264
306
  }
265
307
  const countsAsChild = !isAnchor(record.child) && !isProjectedRefreshControl(record.child);
@@ -267,6 +309,9 @@ export class ScrollViewProjectionController {
267
309
  if (countsAsChild)
268
310
  paintIndex += 1;
269
311
  const shouldWrap = countsAsChild && stickyIndices.has(childIndex);
312
+ // Deliberately NOT logged per child per walk: reconcile runs on every projected insert, so
313
+ // that shape is O(children x inserts) and buries the few lines that carry information. Only
314
+ // a state TRANSITION is logged, below.
270
315
  if (shouldWrap && record.wrapper === undefined)
271
316
  this.wrapRecord(record, childIndex);
272
317
  else if (!shouldWrap && record.wrapper !== undefined)
@@ -280,6 +325,20 @@ export class ScrollViewProjectionController {
280
325
  record.sticky?.rebuild();
281
326
  }
282
327
  }
328
+ // The removal half of removeProjectedChild, without its trailing reconcile - safe to call from
329
+ // inside the reconcile walk itself.
330
+ dropRecord(record) {
331
+ if (this.contentNode === undefined)
332
+ return;
333
+ record.sticky?.destroy();
334
+ projectedWrappers.delete(record.child);
335
+ const direct = directNode(record);
336
+ if (direct.parent === this.contentNode)
337
+ removeChild(this.contentNode, direct);
338
+ const index = this.records.indexOf(record);
339
+ if (index !== -1)
340
+ this.records.splice(index, 1);
341
+ }
283
342
  // Auto projection runs after Angular has already created projected child host nodes. At this
284
343
  // renderer boundary we can AOT-safely rearrange engine nodes, but we cannot instantiate an
285
344
  // arbitrary Angular component class as a wrapper without owning a ViewContainerRef/injector and
@@ -305,10 +364,12 @@ export class ScrollViewProjectionController {
305
364
  record.sticky = new StickyProjectionWrapper(this, childIndex, wrapper);
306
365
  record.stickyIndex = childIndex;
307
366
  projectedWrappers.set(record.child, record);
367
+ dlog(`STICKY[proj#${this.instanceId}] WRAP child=${record.child.component} paintIndex=${childIndex}`);
308
368
  }
309
369
  unwrapRecord(record) {
310
370
  if (this.contentNode === undefined || record.wrapper === undefined)
311
371
  return;
372
+ dlog(`STICKY[proj#${this.instanceId}] UNWRAP child=${record.child.component}`);
312
373
  record.sticky?.destroy();
313
374
  record.sticky = undefined;
314
375
  record.stickyIndex = undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"projection.js","sourceRoot":"","sources":["../../../../src/components/scroll-view/projection.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"projection.js","sourceRoot":"","sources":["../../../../src/components/scroll-view/projection.ts"],"names":[],"mappings":"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"}
@@ -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
- get scrollProps(): Record<string, unknown>;
205
+ private readonly inputsRevision;
206
+ readonly scrollProps: import("@angular/core").Signal<Record<string, unknown>>;
201
207
  protected get layoutSplitStyle(): IStyleProp<IViewStyle>;
202
- get androidWrappedScrollProps(): Record<string, unknown>;
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
- get contentProps(): Record<string, unknown>;
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;