@symbiote-native/angular 0.8.0 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (256) hide show
  1. package/README.md +13 -10
  2. package/babel-register-composed.cjs +58 -18
  3. package/bin/symbiote-angular-dev.cjs +16 -4
  4. package/build/angular/anchor-host-registry.js +1 -15
  5. package/build/angular/anchor-host-registry.js.map +1 -1
  6. package/build/angular/change-detection-flush.d.ts +31 -0
  7. package/build/angular/change-detection-flush.js +110 -0
  8. package/build/angular/change-detection-flush.js.map +1 -0
  9. package/build/angular/components/activity-indicator-props.d.ts +2 -0
  10. package/build/angular/components/activity-indicator-props.js +2 -0
  11. package/build/angular/components/activity-indicator-props.js.map +1 -0
  12. package/build/angular/components/button-props.d.ts +2 -0
  13. package/build/angular/components/button-props.js +2 -0
  14. package/build/angular/components/button-props.js.map +1 -0
  15. package/build/angular/components/flat-list/index.d.ts +2 -1
  16. package/build/angular/components/flat-list/index.js +22 -10
  17. package/build/angular/components/flat-list/index.js.map +1 -1
  18. package/build/angular/components/image-background-props.d.ts +6 -0
  19. package/build/angular/components/image-background-props.js +2 -0
  20. package/build/angular/components/image-background-props.js.map +1 -0
  21. package/build/angular/components/{image/shared.d.ts → image-shared.d.ts} +4 -4
  22. package/build/angular/components/{image/shared.js → image-shared.js} +39 -28
  23. package/build/angular/components/image-shared.js.map +1 -0
  24. package/build/angular/components/input-accessory-view-props.d.ts +7 -0
  25. package/build/angular/components/input-accessory-view-props.js +9 -0
  26. package/build/angular/components/input-accessory-view-props.js.map +1 -0
  27. package/build/angular/components/keyboard-avoiding-view/index.d.ts +2 -1
  28. package/build/angular/components/keyboard-avoiding-view/index.js +28 -27
  29. package/build/angular/components/keyboard-avoiding-view/index.js.map +1 -1
  30. package/build/angular/components/modal/index.d.ts +2 -0
  31. package/build/angular/components/modal/index.js +33 -20
  32. package/build/angular/components/modal/index.js.map +1 -1
  33. package/build/angular/components/pressable-props.d.ts +32 -0
  34. package/build/angular/components/pressable-props.js +11 -0
  35. package/build/angular/components/pressable-props.js.map +1 -0
  36. package/build/angular/components/refresh-control-props.d.ts +16 -0
  37. package/build/angular/components/refresh-control-props.js +14 -0
  38. package/build/angular/components/refresh-control-props.js.map +1 -0
  39. package/build/angular/components/safe-area-view-props.d.ts +7 -0
  40. package/build/angular/components/safe-area-view-props.js +11 -0
  41. package/build/angular/components/safe-area-view-props.js.map +1 -0
  42. package/build/angular/components/scroll-view-props.d.ts +76 -0
  43. package/build/angular/components/scroll-view-props.js +18 -0
  44. package/build/angular/components/scroll-view-props.js.map +1 -0
  45. package/build/angular/components/section-list/index.d.ts +3 -0
  46. package/build/angular/components/section-list/index.js +10 -1
  47. package/build/angular/components/section-list/index.js.map +1 -1
  48. package/build/angular/components/text-input-props.d.ts +45 -0
  49. package/build/angular/components/text-input-props.js +18 -0
  50. package/build/angular/components/text-input-props.js.map +1 -0
  51. package/build/angular/components/touchable-native-feedback/touchable-native-feedback-props.d.ts +6 -0
  52. package/build/angular/components/touchable-native-feedback/touchable-native-feedback-props.js +2 -0
  53. package/build/angular/components/touchable-native-feedback/touchable-native-feedback-props.js.map +1 -0
  54. package/build/angular/components/touchable-props.d.ts +14 -0
  55. package/build/angular/components/touchable-props.js +13 -0
  56. package/build/angular/components/touchable-props.js.map +1 -0
  57. package/build/angular/components/touchable-without-feedback/touchable-without-feedback-props.d.ts +3 -0
  58. package/build/angular/components/touchable-without-feedback/touchable-without-feedback-props.js +2 -0
  59. package/build/angular/components/touchable-without-feedback/touchable-without-feedback-props.js.map +1 -0
  60. package/build/angular/components/virtualized-list/index.d.ts +8 -1
  61. package/build/angular/components/virtualized-list/index.js +373 -278
  62. package/build/angular/components/virtualized-list/index.js.map +1 -1
  63. package/build/angular/components/virtualized-section-list/index.d.ts +3 -0
  64. package/build/angular/components/virtualized-section-list/index.js +10 -1
  65. package/build/angular/components/virtualized-section-list/index.js.map +1 -1
  66. package/build/angular/components.d.ts +21 -27
  67. package/build/angular/components.js +13 -15
  68. package/build/angular/components.js.map +1 -1
  69. package/build/angular/create-portal/index.d.ts +11 -2
  70. package/build/angular/create-portal/index.js +37 -11
  71. package/build/angular/create-portal/index.js.map +1 -1
  72. package/build/angular/create-tunnel/index.js +1 -1
  73. package/build/angular/element-props.d.ts +53 -0
  74. package/build/angular/element-props.js +2 -0
  75. package/build/angular/element-props.js.map +1 -0
  76. package/build/angular/elements.d.ts +528 -0
  77. package/build/angular/elements.js +1444 -0
  78. package/build/angular/elements.js.map +1 -0
  79. package/build/angular/gate-demand.d.ts +37 -0
  80. package/build/angular/gate-demand.js +84 -0
  81. package/build/angular/gate-demand.js.map +1 -0
  82. package/build/angular/host-instance/index.js +1 -1
  83. package/build/angular/index.d.ts +5 -2
  84. package/build/angular/index.js +16 -1
  85. package/build/angular/index.js.map +1 -1
  86. package/build/angular/modules/animated/create-animated-component.d.ts +6 -6
  87. package/build/angular/modules/animated/create-animated-component.js +73 -81
  88. package/build/angular/modules/animated/create-animated-component.js.map +1 -1
  89. package/build/angular/modules/animated/index.js +1 -1
  90. package/build/angular/modules/animated/index.js.map +1 -1
  91. package/build/angular/modules/image/index.d.ts +3 -0
  92. package/build/angular/modules/image/index.js +16 -0
  93. package/build/angular/modules/image/index.js.map +1 -0
  94. package/build/angular/primitives/index.d.ts +28 -16
  95. package/build/angular/primitives/index.js +77 -31
  96. package/build/angular/primitives/index.js.map +1 -1
  97. package/build/angular/primitives/shared.d.ts +2 -3
  98. package/build/angular/primitives/shared.js +8 -53
  99. package/build/angular/primitives/shared.js.map +1 -1
  100. package/build/angular/register.d.ts +1 -0
  101. package/build/angular/register.js +16 -0
  102. package/build/angular/register.js.map +1 -0
  103. package/build/angular/render/index.js +4 -2
  104. package/build/angular/render/index.js.map +1 -1
  105. package/build/angular/renderer/index.js +207 -60
  106. package/build/angular/renderer/index.js.map +1 -1
  107. package/build/angular/renderer/value-change.d.ts +2 -0
  108. package/build/angular/renderer/value-change.js +9 -0
  109. package/build/angular/renderer/value-change.js.map +1 -0
  110. package/metro-config.cjs +23 -5
  111. package/metro-css-parser.cjs +2 -1
  112. package/package.json +17 -7
  113. package/src/anchor-host-registry.ts +1 -15
  114. package/src/change-detection-flush.ts +120 -0
  115. package/src/components/activity-indicator-props.ts +21 -0
  116. package/src/components/button-props.ts +26 -0
  117. package/src/components/flat-list/index.ts +12 -4
  118. package/src/components/image-background-props.ts +24 -0
  119. package/src/components/{image/shared.ts → image-shared.ts} +57 -26
  120. package/src/components/input-accessory-view-props.ts +21 -0
  121. package/src/components/keyboard-avoiding-view/index.ts +27 -16
  122. package/src/components/modal/index.ts +32 -11
  123. package/src/components/pressable-props.ts +73 -0
  124. package/src/components/refresh-control-props.ts +43 -0
  125. package/src/components/safe-area-view-props.ts +28 -0
  126. package/src/components/scroll-view-props.ts +109 -0
  127. package/src/components/section-list/index.ts +18 -0
  128. package/src/components/text-input-props.ts +72 -0
  129. package/src/components/touchable-native-feedback/touchable-native-feedback-props.ts +23 -0
  130. package/src/components/touchable-props.ts +30 -0
  131. package/src/components/touchable-without-feedback/touchable-without-feedback-props.ts +21 -0
  132. package/src/components/virtualized-list/index.ts +254 -153
  133. package/src/components/virtualized-section-list/index.ts +18 -0
  134. package/src/components.ts +86 -35
  135. package/src/create-portal/index.ts +39 -9
  136. package/src/create-tunnel/index.ts +1 -1
  137. package/src/diagnostics.ts +1 -1
  138. package/src/element-props.ts +90 -0
  139. package/src/elements.ts +919 -0
  140. package/src/gate-demand.ts +109 -0
  141. package/src/host-instance/index.ts +1 -1
  142. package/src/index.ts +54 -15
  143. package/src/modules/animated/create-animated-component.ts +73 -59
  144. package/src/modules/animated/index.ts +1 -1
  145. package/src/modules/image/index.ts +18 -0
  146. package/src/primitives/index.ts +47 -16
  147. package/src/primitives/shared.ts +11 -44
  148. package/src/register.ts +15 -0
  149. package/src/render/index.ts +4 -2
  150. package/src/renderer/index.ts +239 -80
  151. package/src/renderer/value-change.ts +8 -0
  152. package/build/angular/components/activity-indicator/index.android.d.ts +0 -13
  153. package/build/angular/components/activity-indicator/index.android.js +0 -29
  154. package/build/angular/components/activity-indicator/index.android.js.map +0 -1
  155. package/build/angular/components/activity-indicator/index.d.ts +0 -1
  156. package/build/angular/components/activity-indicator/index.ios.d.ts +0 -9
  157. package/build/angular/components/activity-indicator/index.ios.js +0 -26
  158. package/build/angular/components/activity-indicator/index.ios.js.map +0 -1
  159. package/build/angular/components/activity-indicator/index.js +0 -4
  160. package/build/angular/components/activity-indicator/index.js.map +0 -1
  161. package/build/angular/components/activity-indicator/shared.d.ts +0 -67
  162. package/build/angular/components/activity-indicator/shared.js +0 -260
  163. package/build/angular/components/activity-indicator/shared.js.map +0 -1
  164. package/build/angular/components/button.d.ts +0 -65
  165. package/build/angular/components/button.js +0 -351
  166. package/build/angular/components/button.js.map +0 -1
  167. package/build/angular/components/image/index.android.d.ts +0 -15
  168. package/build/angular/components/image/index.android.js +0 -91
  169. package/build/angular/components/image/index.android.js.map +0 -1
  170. package/build/angular/components/image/index.d.ts +0 -1
  171. package/build/angular/components/image/index.ios.d.ts +0 -15
  172. package/build/angular/components/image/index.ios.js +0 -91
  173. package/build/angular/components/image/index.ios.js.map +0 -1
  174. package/build/angular/components/image/index.js +0 -3
  175. package/build/angular/components/image/index.js.map +0 -1
  176. package/build/angular/components/image/shared.js.map +0 -1
  177. package/build/angular/components/image-background.d.ts +0 -82
  178. package/build/angular/components/image-background.js +0 -434
  179. package/build/angular/components/image-background.js.map +0 -1
  180. package/build/angular/components/input-accessory-view/index.d.ts +0 -65
  181. package/build/angular/components/input-accessory-view/index.js +0 -290
  182. package/build/angular/components/input-accessory-view/index.js.map +0 -1
  183. package/build/angular/components/pressable/index.d.ts +0 -129
  184. package/build/angular/components/pressable/index.js +0 -473
  185. package/build/angular/components/pressable/index.js.map +0 -1
  186. package/build/angular/components/refresh-control/index.d.ts +0 -90
  187. package/build/angular/components/refresh-control/index.js +0 -380
  188. package/build/angular/components/refresh-control/index.js.map +0 -1
  189. package/build/angular/components/safe-area-view/index.d.ts +0 -62
  190. package/build/angular/components/safe-area-view/index.js +0 -287
  191. package/build/angular/components/safe-area-view/index.js.map +0 -1
  192. package/build/angular/components/scroll-view/index.android.d.ts +0 -20
  193. package/build/angular/components/scroll-view/index.android.js +0 -262
  194. package/build/angular/components/scroll-view/index.android.js.map +0 -1
  195. package/build/angular/components/scroll-view/index.d.ts +0 -3
  196. package/build/angular/components/scroll-view/index.ios.d.ts +0 -8
  197. package/build/angular/components/scroll-view/index.ios.js +0 -92
  198. package/build/angular/components/scroll-view/index.ios.js.map +0 -1
  199. package/build/angular/components/scroll-view/index.js +0 -6
  200. package/build/angular/components/scroll-view/index.js.map +0 -1
  201. package/build/angular/components/scroll-view/projection.d.ts +0 -67
  202. package/build/angular/components/scroll-view/projection.js +0 -560
  203. package/build/angular/components/scroll-view/projection.js.map +0 -1
  204. package/build/angular/components/scroll-view/shared.d.ts +0 -239
  205. package/build/angular/components/scroll-view/shared.js +0 -832
  206. package/build/angular/components/scroll-view/shared.js.map +0 -1
  207. package/build/angular/components/scroll-view/sticky-header.d.ts +0 -40
  208. package/build/angular/components/scroll-view/sticky-header.js +0 -224
  209. package/build/angular/components/scroll-view/sticky-header.js.map +0 -1
  210. package/build/angular/components/switch/index.android.d.ts +0 -24
  211. package/build/angular/components/switch/index.android.js +0 -112
  212. package/build/angular/components/switch/index.android.js.map +0 -1
  213. package/build/angular/components/switch/index.d.ts +0 -1
  214. package/build/angular/components/switch/index.ios.d.ts +0 -23
  215. package/build/angular/components/switch/index.ios.js +0 -111
  216. package/build/angular/components/switch/index.ios.js.map +0 -1
  217. package/build/angular/components/switch/index.js +0 -4
  218. package/build/angular/components/switch/index.js.map +0 -1
  219. package/build/angular/components/switch/shared.d.ts +0 -49
  220. package/build/angular/components/switch/shared.js +0 -191
  221. package/build/angular/components/switch/shared.js.map +0 -1
  222. package/build/angular/components/text-input.d.ts +0 -161
  223. package/build/angular/components/text-input.js +0 -659
  224. package/build/angular/components/text-input.js.map +0 -1
  225. package/build/angular/components/touchable/index.d.ts +0 -276
  226. package/build/angular/components/touchable/index.js +0 -1422
  227. package/build/angular/components/touchable/index.js.map +0 -1
  228. package/build/angular/components/touchable-native-feedback/index.d.ts +0 -86
  229. package/build/angular/components/touchable-native-feedback/index.js +0 -407
  230. package/build/angular/components/touchable-native-feedback/index.js.map +0 -1
  231. package/src/components/activity-indicator/index.android.ts +0 -23
  232. package/src/components/activity-indicator/index.ios.ts +0 -21
  233. package/src/components/activity-indicator/index.ts +0 -4
  234. package/src/components/activity-indicator/shared.ts +0 -225
  235. package/src/components/button.ts +0 -220
  236. package/src/components/image/index.android.ts +0 -99
  237. package/src/components/image/index.ios.ts +0 -99
  238. package/src/components/image/index.ts +0 -3
  239. package/src/components/image-background.ts +0 -290
  240. package/src/components/input-accessory-view/index.ts +0 -240
  241. package/src/components/pressable/index.ts +0 -462
  242. package/src/components/refresh-control/index.ts +0 -340
  243. package/src/components/safe-area-view/index.ts +0 -231
  244. package/src/components/scroll-view/index.android.ts +0 -205
  245. package/src/components/scroll-view/index.ios.ts +0 -81
  246. package/src/components/scroll-view/index.ts +0 -7
  247. package/src/components/scroll-view/projection.ts +0 -713
  248. package/src/components/scroll-view/shared.ts +0 -1066
  249. package/src/components/scroll-view/sticky-header.ts +0 -267
  250. package/src/components/switch/index.android.ts +0 -113
  251. package/src/components/switch/index.ios.ts +0 -112
  252. package/src/components/switch/index.ts +0 -4
  253. package/src/components/switch/shared.ts +0 -284
  254. package/src/components/text-input.ts +0 -613
  255. package/src/components/touchable/index.ts +0 -913
  256. package/src/components/touchable-native-feedback/index.ts +0 -317
@@ -1,287 +0,0 @@
1
- // SafeAreaView, the Angular lifecycle half. A plain view whose native side insets its
2
- // children to the safe area (notch, rounded corners, system bars). There is no JS-side
3
- // translation — RN renders the native RCTSafeAreaView and lets the host do the inset math —
4
- // so this folds aria/role through the shared resolveAccessibilityProps and maps style +
5
- // a11y + onLayout straight onto the symbiote-safe-area-view host, children via <ng-content>.
6
- // The Angular twin of the React/Vue SafeAreaView. No platform branch (one Fabric name both
7
- // platforms), so this stays a flat single file.
8
- import { CUSTOM_ELEMENTS_SCHEMA, ChangeDetectionStrategy, Component, computed, ElementRef, EventEmitter, inject, Input, Output, signal, } from '@angular/core';
9
- import { resolveAccessibilityProps, } from '@symbiote-native/components';
10
- import { isSymbioteEvent, } from '@symbiote-native/engine';
11
- import { anchorHostStyle, SafeAreaViewHost, SymbioteHostPropsDirective, SymbioteStyleInputDirective, } from '../../primitives';
12
- import * as i0 from "@angular/core";
13
- import * as i1 from "../../primitives/shared";
14
- export class SafeAreaView {
15
- style;
16
- // Real @Output()s, not `[onX]="…"` callbacks. Safe to name `layout` the same as the native
17
- // `layout` event fired inside this component's own template — the engine's bubble() treats
18
- // ANCHOR_HOST_COMPONENTS as transparent to listener lookup, so there is no double-fire.
19
- layout = new EventEmitter();
20
- accessibilityAction = new EventEmitter();
21
- accessibilityTap = new EventEmitter();
22
- magicTap = new EventEmitter();
23
- accessibilityEscape = new EventEmitter();
24
- testID;
25
- nativeID;
26
- accessible;
27
- accessibilityLabel;
28
- accessibilityHint;
29
- accessibilityRole;
30
- accessibilityState;
31
- accessibilityValue;
32
- accessibilityActions;
33
- accessibilityLabelledBy;
34
- importantForAccessibility;
35
- accessibilityLiveRegion;
36
- screenReaderFocusable;
37
- accessibilityViewIsModal;
38
- accessibilityElementsHidden;
39
- accessibilityIgnoresInvertColors;
40
- accessibilityLanguage;
41
- accessibilityRespondsToUserInteraction;
42
- accessibilityShowsLargeContentViewer;
43
- accessibilityLargeContentTitle;
44
- role;
45
- ariaLabel;
46
- ariaLabelledBy;
47
- ariaLive;
48
- ariaHidden;
49
- ariaBusy;
50
- ariaChecked;
51
- ariaDisabled;
52
- ariaExpanded;
53
- ariaSelected;
54
- ariaModal;
55
- ariaValueMax;
56
- ariaValueMin;
57
- ariaValueNow;
58
- ariaValueText;
59
- // This component's OWN host — the non-painting anchor `class="..."` at the use site resolves
60
- // onto (see anchorHostStyle's doc comment). SafeAreaView has no inner ViewChild, so this is
61
- // the only ElementRef in the class.
62
- elementRef = inject(ElementRef);
63
- // Forward an engine event to the matching @Output(), narrowing the template's untyped
64
- // $event first. layout / accessibility* arrive on the engine's structural event channel
65
- // (Angular blocks [onX] property bindings; events flow through (event) only).
66
- emit(emitter, event) {
67
- if (isSymbioteEvent(event))
68
- emitter.emit(event);
69
- }
70
- // Bridges the non-reactive fields `hostProps` reads into the reactive graph, so it can memoize.
71
- // Plain fields read inside a computed() are UNTRACKED - something must signal "a dependency
72
- // changed" or the bag goes stale. Signal inputs would do this natively, but `input()` is visible
73
- // only to the AOT compiler and this package's unit suite runs on JIT (see the
74
- // `angular-adapter-change-detection` skill, §6); `signal()`/`computed()` are plain runtime APIs.
75
- // TWO bump sites, both required - see ngOnChanges and ngDoCheck below.
76
- hostPropsRevision = signal(0, /* @ts-ignore */
77
- ...(ngDevMode ? [{ debugName: "hostPropsRevision" }] : /* istanbul ignore next */ []));
78
- // What the anchor's class-derived style was when the bag was last built (identity, not value).
79
- lastAnchorStyle;
80
- ngOnChanges() {
81
- // The single moment Angular has finished writing every changed @Input for this pass.
82
- this.hostPropsRevision.update(revision => revision + 1);
83
- }
84
- // The anchor's class-derived style is NOT an @Input: `class="..."`/`[ngClass]` at the use site
85
- // resolves through the renderer's addClass onto this component's anchor host (see
86
- // anchorHostStyle's doc comment), so it never shows up in SimpleChanges - ngOnChanges alone
87
- // would strand a class toggled after mount (regression-covered by safe-area-view.test.ts's
88
- // class-toggle case, which fails the moment this hook stops bumping). ngDoCheck runs at exactly
89
- // the cadence the old getter was re-read, and bumps only on a real identity change, so an
90
- // unchanged anchor still costs nothing.
91
- ngDoCheck() {
92
- const anchorStyle = anchorHostStyle(this.elementRef);
93
- if (anchorStyle === this.lastAnchorStyle)
94
- return;
95
- this.lastAnchorStyle = anchorStyle;
96
- this.hostPropsRevision.update(revision => revision + 1);
97
- }
98
- // Folds style/testID/nativeID/accessible alongside the accessibility*/aria-*/role surface into
99
- // one bag for [symbioteHostProps] — resolveAccessibilityProps takes the whole props object (not
100
- // just the accessibility slice) and returns it with aria-*/role folded into accessibility*, so
101
- // the host node never sees an aria-* key (native ignores them), same transform React's
102
- // SafeAreaView runs over its whole `rawProps`. The anchor's class-derived style goes FIRST, this
103
- // component's own explicit `style` @Input SECOND — flattenStyle's later-wins collapse keeps an
104
- // explicit [style] winning over its ambient class.
105
- //
106
- // A computed(), not a getter: Angular re-reads a template getter on every refresh of this view
107
- // and `[symbioteHostProps]` compares by REFERENCE, so a freshly rebuilt (but identical) bag
108
- // re-pushes every key through renderer.setProperty -> the engine's prop routing. Memoized, an
109
- // a11y/layout event that only dirties this view costs nothing.
110
- hostProps = computed(() => {
111
- this.hostPropsRevision();
112
- return resolveAccessibilityProps({
113
- style: [anchorHostStyle(this.elementRef), this.style],
114
- testID: this.testID,
115
- nativeID: this.nativeID,
116
- accessible: this.accessible,
117
- accessibilityLabel: this.accessibilityLabel,
118
- accessibilityHint: this.accessibilityHint,
119
- accessibilityRole: this.accessibilityRole,
120
- accessibilityState: this.accessibilityState,
121
- accessibilityValue: this.accessibilityValue,
122
- accessibilityActions: this.accessibilityActions,
123
- accessibilityLabelledBy: this.accessibilityLabelledBy,
124
- importantForAccessibility: this.importantForAccessibility,
125
- accessibilityLiveRegion: this.accessibilityLiveRegion,
126
- screenReaderFocusable: this.screenReaderFocusable,
127
- accessibilityViewIsModal: this.accessibilityViewIsModal,
128
- accessibilityElementsHidden: this.accessibilityElementsHidden,
129
- accessibilityIgnoresInvertColors: this.accessibilityIgnoresInvertColors,
130
- accessibilityLanguage: this.accessibilityLanguage,
131
- accessibilityRespondsToUserInteraction: this.accessibilityRespondsToUserInteraction,
132
- accessibilityShowsLargeContentViewer: this.accessibilityShowsLargeContentViewer,
133
- accessibilityLargeContentTitle: this.accessibilityLargeContentTitle,
134
- role: this.role,
135
- 'aria-label': this.ariaLabel,
136
- 'aria-labelledby': this.ariaLabelledBy,
137
- 'aria-live': this.ariaLive,
138
- 'aria-hidden': this.ariaHidden,
139
- 'aria-busy': this.ariaBusy,
140
- 'aria-checked': this.ariaChecked,
141
- 'aria-disabled': this.ariaDisabled,
142
- 'aria-expanded': this.ariaExpanded,
143
- 'aria-selected': this.ariaSelected,
144
- 'aria-modal': this.ariaModal,
145
- 'aria-valuemax': this.ariaValueMax,
146
- 'aria-valuemin': this.ariaValueMin,
147
- 'aria-valuenow': this.ariaValueNow,
148
- 'aria-valuetext': this.ariaValueText,
149
- });
150
- }, /* @ts-ignore */
151
- ...(ngDevMode ? [{ debugName: "hostProps" }] : /* istanbul ignore next */ []));
152
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: SafeAreaView, deps: [], target: i0.ɵɵFactoryTarget.Component });
153
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "22.0.8", type: SafeAreaView, isStandalone: true, selector: "SafeAreaView", inputs: { style: "style", 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", ariaLabel: ["aria-label", "ariaLabel"], ariaLabelledBy: ["aria-labelledby", "ariaLabelledBy"], ariaLive: ["aria-live", "ariaLive"], ariaHidden: ["aria-hidden", "ariaHidden"], ariaBusy: ["aria-busy", "ariaBusy"], ariaChecked: ["aria-checked", "ariaChecked"], ariaDisabled: ["aria-disabled", "ariaDisabled"], ariaExpanded: ["aria-expanded", "ariaExpanded"], ariaSelected: ["aria-selected", "ariaSelected"], ariaModal: ["aria-modal", "ariaModal"], ariaValueMax: ["aria-valuemax", "ariaValueMax"], ariaValueMin: ["aria-valuemin", "ariaValueMin"], ariaValueNow: ["aria-valuenow", "ariaValueNow"], ariaValueText: ["aria-valuetext", "ariaValueText"] }, outputs: { layout: "layout", accessibilityAction: "accessibilityAction", accessibilityTap: "accessibilityTap", magicTap: "magicTap", accessibilityEscape: "accessibilityEscape" }, usesOnChanges: true, hostDirectives: [{ directive: i1.SymbioteStyleInputDirective, inputs: ["style", "style"] }], ngImport: i0, template: `
154
- <symbiote-safe-area-view
155
- [symbioteHostProps]="hostProps()"
156
- (accessibilityAction)="emit(accessibilityAction, $event)"
157
- (accessibilityTap)="emit(accessibilityTap, $event)"
158
- (magicTap)="emit(magicTap, $event)"
159
- (accessibilityEscape)="emit(accessibilityEscape, $event)"
160
- (layout)="emit(layout, $event)"
161
- >
162
- <ng-content></ng-content>
163
- </symbiote-safe-area-view>
164
- `, isInline: true, dependencies: [{ kind: "component", type: SafeAreaViewHost, selector: "symbiote-safe-area-view" }, { kind: "directive", type: SymbioteHostPropsDirective, selector: "[symbioteHostProps]", inputs: ["symbioteHostProps"], exportAs: ["symbioteHost"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
165
- }
166
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: SafeAreaView, decorators: [{
167
- type: Component,
168
- args: [{
169
- selector: 'SafeAreaView',
170
- standalone: true,
171
- hostDirectives: [
172
- { directive: SymbioteStyleInputDirective, inputs: ['style'] },
173
- ],
174
- schemas: [CUSTOM_ELEMENTS_SCHEMA],
175
- imports: [SafeAreaViewHost, SymbioteHostPropsDirective],
176
- changeDetection: ChangeDetectionStrategy.OnPush,
177
- template: `
178
- <symbiote-safe-area-view
179
- [symbioteHostProps]="hostProps()"
180
- (accessibilityAction)="emit(accessibilityAction, $event)"
181
- (accessibilityTap)="emit(accessibilityTap, $event)"
182
- (magicTap)="emit(magicTap, $event)"
183
- (accessibilityEscape)="emit(accessibilityEscape, $event)"
184
- (layout)="emit(layout, $event)"
185
- >
186
- <ng-content></ng-content>
187
- </symbiote-safe-area-view>
188
- `,
189
- }]
190
- }], propDecorators: { style: [{
191
- type: Input
192
- }], layout: [{
193
- type: Output
194
- }], accessibilityAction: [{
195
- type: Output
196
- }], accessibilityTap: [{
197
- type: Output
198
- }], magicTap: [{
199
- type: Output
200
- }], accessibilityEscape: [{
201
- type: Output
202
- }], testID: [{
203
- type: Input
204
- }], nativeID: [{
205
- type: Input
206
- }], accessible: [{
207
- type: Input
208
- }], accessibilityLabel: [{
209
- type: Input
210
- }], accessibilityHint: [{
211
- type: Input
212
- }], accessibilityRole: [{
213
- type: Input
214
- }], accessibilityState: [{
215
- type: Input
216
- }], accessibilityValue: [{
217
- type: Input
218
- }], accessibilityActions: [{
219
- type: Input
220
- }], accessibilityLabelledBy: [{
221
- type: Input
222
- }], importantForAccessibility: [{
223
- type: Input
224
- }], accessibilityLiveRegion: [{
225
- type: Input
226
- }], screenReaderFocusable: [{
227
- type: Input
228
- }], accessibilityViewIsModal: [{
229
- type: Input
230
- }], accessibilityElementsHidden: [{
231
- type: Input
232
- }], accessibilityIgnoresInvertColors: [{
233
- type: Input
234
- }], accessibilityLanguage: [{
235
- type: Input
236
- }], accessibilityRespondsToUserInteraction: [{
237
- type: Input
238
- }], accessibilityShowsLargeContentViewer: [{
239
- type: Input
240
- }], accessibilityLargeContentTitle: [{
241
- type: Input
242
- }], role: [{
243
- type: Input
244
- }], ariaLabel: [{
245
- type: Input,
246
- args: ['aria-label']
247
- }], ariaLabelledBy: [{
248
- type: Input,
249
- args: ['aria-labelledby']
250
- }], ariaLive: [{
251
- type: Input,
252
- args: ['aria-live']
253
- }], ariaHidden: [{
254
- type: Input,
255
- args: ['aria-hidden']
256
- }], ariaBusy: [{
257
- type: Input,
258
- args: ['aria-busy']
259
- }], ariaChecked: [{
260
- type: Input,
261
- args: ['aria-checked']
262
- }], ariaDisabled: [{
263
- type: Input,
264
- args: ['aria-disabled']
265
- }], ariaExpanded: [{
266
- type: Input,
267
- args: ['aria-expanded']
268
- }], ariaSelected: [{
269
- type: Input,
270
- args: ['aria-selected']
271
- }], ariaModal: [{
272
- type: Input,
273
- args: ['aria-modal']
274
- }], ariaValueMax: [{
275
- type: Input,
276
- args: ['aria-valuemax']
277
- }], ariaValueMin: [{
278
- type: Input,
279
- args: ['aria-valuemin']
280
- }], ariaValueNow: [{
281
- type: Input,
282
- args: ['aria-valuenow']
283
- }], ariaValueText: [{
284
- type: Input,
285
- args: ['aria-valuetext']
286
- }] } });
287
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/safe-area-view/index.ts"],"names":[],"mappings":"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"}
@@ -1,20 +0,0 @@
1
- import { TemplateRef, type OnChanges, type OnDestroy } from '@angular/core';
2
- import type { IStyleProp, IViewStyle } from '@symbiote-native/engine';
3
- import { ScrollViewBase } from './shared';
4
- import * as i0 from "@angular/core";
5
- import * as i1 from "../../primitives/shared";
6
- export type { IAngularScrollViewProps, IScrollViewHandle } from './shared';
7
- export declare class SymbioteTemplateOutletDirective implements OnChanges, OnDestroy {
8
- symbioteTemplateOutlet: TemplateRef<unknown> | null;
9
- private readonly viewContainerRef;
10
- private viewRef;
11
- ngOnChanges(): void;
12
- ngOnDestroy(): void;
13
- static ɵfac: i0.ɵɵFactoryDeclaration<SymbioteTemplateOutletDirective, never>;
14
- static ɵdir: i0.ɵɵDirectiveDeclaration<SymbioteTemplateOutletDirective, "[symbioteTemplateOutlet]", never, { "symbioteTemplateOutlet": { "alias": "symbioteTemplateOutlet"; "required": false; }; }, {}, never, never, true, never>;
15
- }
16
- export declare class ScrollView extends ScrollViewBase {
17
- protected get layoutSplitStyle(): IStyleProp<IViewStyle>;
18
- static ɵfac: i0.ɵɵFactoryDeclaration<ScrollView, never>;
19
- static ɵcmp: i0.ɵɵComponentDeclaration<ScrollView, "ScrollView", never, { "style": { "alias": "style"; "required": false; }; "contentContainerStyle": { "alias": "contentContainerStyle"; "required": false; }; "horizontal": { "alias": "horizontal"; "required": false; }; "scrollEnabled": { "alias": "scrollEnabled"; "required": false; }; "showsVerticalScrollIndicator": { "alias": "showsVerticalScrollIndicator"; "required": false; }; "showsHorizontalScrollIndicator": { "alias": "showsHorizontalScrollIndicator"; "required": false; }; "pagingEnabled": { "alias": "pagingEnabled"; "required": false; }; "bounces": { "alias": "bounces"; "required": false; }; "decelerationRate": { "alias": "decelerationRate"; "required": false; }; "scrollEventThrottle": { "alias": "scrollEventThrottle"; "required": false; }; "contentInset": { "alias": "contentInset"; "required": false; }; "contentOffset": { "alias": "contentOffset"; "required": false; }; "removeClippedSubviews": { "alias": "removeClippedSubviews"; "required": false; }; "snapToInterval": { "alias": "snapToInterval"; "required": false; }; "snapToOffsets": { "alias": "snapToOffsets"; "required": false; }; "snapToAlignment": { "alias": "snapToAlignment"; "required": false; }; "snapToStart": { "alias": "snapToStart"; "required": false; }; "snapToEnd": { "alias": "snapToEnd"; "required": false; }; "disableIntervalMomentum": { "alias": "disableIntervalMomentum"; "required": false; }; "stickyHeaderIndices": { "alias": "stickyHeaderIndices"; "required": false; }; "invertStickyHeaders": { "alias": "invertStickyHeaders"; "required": false; }; "StickyHeaderComponent": { "alias": "StickyHeaderComponent"; "required": false; }; "keyboardDismissMode": { "alias": "keyboardDismissMode"; "required": false; }; "keyboardShouldPersistTaps": { "alias": "keyboardShouldPersistTaps"; "required": false; }; "maintainVisibleContentPosition": { "alias": "maintainVisibleContentPosition"; "required": false; }; "alwaysBounceHorizontal": { "alias": "alwaysBounceHorizontal"; "required": false; }; "alwaysBounceVertical": { "alias": "alwaysBounceVertical"; "required": false; }; "centerContent": { "alias": "centerContent"; "required": false; }; "scrollIndicatorInsets": { "alias": "scrollIndicatorInsets"; "required": false; }; "indicatorStyle": { "alias": "indicatorStyle"; "required": false; }; "directionalLockEnabled": { "alias": "directionalLockEnabled"; "required": false; }; "automaticallyAdjustKeyboardInsets": { "alias": "automaticallyAdjustKeyboardInsets"; "required": false; }; "contentInsetAdjustmentBehavior": { "alias": "contentInsetAdjustmentBehavior"; "required": false; }; "minimumZoomScale": { "alias": "minimumZoomScale"; "required": false; }; "maximumZoomScale": { "alias": "maximumZoomScale"; "required": false; }; "zoomScale": { "alias": "zoomScale"; "required": false; }; "bouncesZoom": { "alias": "bouncesZoom"; "required": false; }; "pinchGestureEnabled": { "alias": "pinchGestureEnabled"; "required": false; }; "nestedScrollEnabled": { "alias": "nestedScrollEnabled"; "required": false; }; "overScrollMode": { "alias": "overScrollMode"; "required": false; }; "fadingEdgeLength": { "alias": "fadingEdgeLength"; "required": false; }; "persistentScrollbar": { "alias": "persistentScrollbar"; "required": false; }; "endFillColor": { "alias": "endFillColor"; "required": false; }; "onScroll": { "alias": "onScroll"; "required": false; }; "onScrollBeginDrag": { "alias": "onScrollBeginDrag"; "required": false; }; "onScrollEndDrag": { "alias": "onScrollEndDrag"; "required": false; }; "onMomentumScrollBegin": { "alias": "onMomentumScrollBegin"; "required": false; }; "onMomentumScrollEnd": { "alias": "onMomentumScrollEnd"; "required": false; }; "testID": { "alias": "testID"; "required": false; }; "nativeID": { "alias": "nativeID"; "required": false; }; "accessible": { "alias": "accessible"; "required": false; }; "accessibilityLabel": { "alias": "accessibilityLabel"; "required": false; }; "accessibilityHint": { "alias": "accessibilityHint"; "required": false; }; "accessibilityRole": { "alias": "accessibilityRole"; "required": false; }; "accessibilityState": { "alias": "accessibilityState"; "required": false; }; "accessibilityValue": { "alias": "accessibilityValue"; "required": false; }; "accessibilityActions": { "alias": "accessibilityActions"; "required": false; }; "accessibilityLabelledBy": { "alias": "accessibilityLabelledBy"; "required": false; }; "importantForAccessibility": { "alias": "importantForAccessibility"; "required": false; }; "accessibilityLiveRegion": { "alias": "accessibilityLiveRegion"; "required": false; }; "screenReaderFocusable": { "alias": "screenReaderFocusable"; "required": false; }; "accessibilityViewIsModal": { "alias": "accessibilityViewIsModal"; "required": false; }; "accessibilityElementsHidden": { "alias": "accessibilityElementsHidden"; "required": false; }; "accessibilityIgnoresInvertColors": { "alias": "accessibilityIgnoresInvertColors"; "required": false; }; "accessibilityLanguage": { "alias": "accessibilityLanguage"; "required": false; }; "accessibilityRespondsToUserInteraction": { "alias": "accessibilityRespondsToUserInteraction"; "required": false; }; "accessibilityShowsLargeContentViewer": { "alias": "accessibilityShowsLargeContentViewer"; "required": false; }; "accessibilityLargeContentTitle": { "alias": "accessibilityLargeContentTitle"; "required": false; }; "role": { "alias": "role"; "required": false; }; "aria-label": { "alias": "aria-label"; "required": false; }; "aria-labelledby": { "alias": "aria-labelledby"; "required": false; }; "aria-live": { "alias": "aria-live"; "required": false; }; "aria-hidden": { "alias": "aria-hidden"; "required": false; }; "aria-busy": { "alias": "aria-busy"; "required": false; }; "aria-checked": { "alias": "aria-checked"; "required": false; }; "aria-disabled": { "alias": "aria-disabled"; "required": false; }; "aria-expanded": { "alias": "aria-expanded"; "required": false; }; "aria-selected": { "alias": "aria-selected"; "required": false; }; "aria-modal": { "alias": "aria-modal"; "required": false; }; "aria-valuemax": { "alias": "aria-valuemax"; "required": false; }; "aria-valuemin": { "alias": "aria-valuemin"; "required": false; }; "aria-valuenow": { "alias": "aria-valuenow"; "required": false; }; "aria-valuetext": { "alias": "aria-valuetext"; "required": false; }; }, {}, never, ["*"], true, [{ directive: typeof i1.SymbioteStyleInputDirective; inputs: { "style": "style"; }; outputs: {}; }]>;
20
- }
@@ -1,262 +0,0 @@
1
- // ScrollView on Android. An Android ScrollView accepts only ONE child, so a RefreshControl can't
2
- // be a sibling of the content the way iOS allows ("addViewAt: failed to insert view ... at index
3
- // 1"). RN solves this by having the RefreshControl (AndroidSwipeRefreshLayout) WRAP the scroll
4
- // view (cloneElement(refreshControl, {style}, scrollView)). Angular mirrors that shape by querying
5
- // a projected <RefreshControl>, re-rendering its native prop surface as the outer wrapper, and
6
- // projecting every non-RefreshControl child into the inner scroll content.
7
- //
8
- // Android needs a different Fabric view per axis for both the outer scroll container
9
- // (RCTScrollView is vertical-only; AndroidHorizontalScrollView is a dedicated ViewManager) and the
10
- // inner content view (horizontal content is AndroidHorizontalScrollContentView, with its own
11
- // ShadowNode::layout() override) — but Angular only reliably projects into a component's
12
- // LAST-declared <ng-content> when 2+ DISTINCT declarations exist (angular/angular#22972), which an
13
- // earlier 4-call-site template (one <ng-content> per axis x refresh-control branch) tripped. Fix:
14
- // exactly ONE `<ng-content>` textually, inside a single top-level `<ng-template>`, re-instantiated
15
- // into whichever branch is active via a local template-outlet directive
16
- // (SymbioteTemplateOutletDirective below, `@angular/common`-free per this adapter's dependency
17
- // policy — see package.json). Only one branch is ever live, so the declaration count stays at one
18
- // and the "last one wins" limitation never triggers. Covered by
19
- // `android-scroll-view-axis-projection.test.ts` and `flat-list-scroll-containment.test.ts`.
20
- //
21
- // Metro picks this on an Android host; no Platform.OS read.
22
- import { CUSTOM_ELEMENTS_SCHEMA, ChangeDetectionStrategy, Component, Directive, Input, TemplateRef, ViewContainerRef, inject, } from '@angular/core';
23
- import { HorizontalScrollContentView, HorizontalScrollView, RefreshControlHost, ScrollContentView, ScrollViewHost, SymbioteHostPropsDirective, SymbioteStyleInputDirective, } from '../../primitives';
24
- import { ScrollViewBase, ScrollViewProjectionDirective, SCROLL_VIEW_INPUTS, } from './shared';
25
- import * as i0 from "@angular/core";
26
- import * as i1 from "../../primitives/shared";
27
- // Minimal local twin of `@angular/common`'s NgTemplateOutlet (this adapter deliberately has no
28
- // @angular/common dependency — see package.json): re-instantiates the SAME TemplateRef into
29
- // whichever structural branch below is currently active, so the component's compiled template
30
- // keeps exactly ONE <ng-content> declaration regardless of how many places reference it.
31
- export class SymbioteTemplateOutletDirective {
32
- symbioteTemplateOutlet = null;
33
- viewContainerRef = inject(ViewContainerRef);
34
- viewRef;
35
- ngOnChanges() {
36
- if (this.viewRef !== undefined) {
37
- this.viewRef.destroy();
38
- this.viewRef = undefined;
39
- }
40
- if (this.symbioteTemplateOutlet !== null) {
41
- this.viewRef = this.viewContainerRef.createEmbeddedView(this.symbioteTemplateOutlet);
42
- }
43
- }
44
- ngOnDestroy() {
45
- this.viewRef?.destroy();
46
- }
47
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: SymbioteTemplateOutletDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
48
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.0.8", type: SymbioteTemplateOutletDirective, isStandalone: true, selector: "[symbioteTemplateOutlet]", inputs: { symbioteTemplateOutlet: "symbioteTemplateOutlet" }, usesOnChanges: true, ngImport: i0 });
49
- }
50
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: SymbioteTemplateOutletDirective, decorators: [{
51
- type: Directive,
52
- args: [{
53
- selector: '[symbioteTemplateOutlet]',
54
- standalone: true,
55
- }]
56
- }], propDecorators: { symbioteTemplateOutlet: [{
57
- type: Input
58
- }] } });
59
- // anchorHostStyle returns `unknown` (the anchor's already-resolved style, any shape); narrowed
60
- // here (mirrors the identical `asStyle` in image/shared.ts) rather than `as`-cast to satisfy
61
- // `IStyleProp<IViewStyle>`'s stricter array-element union.
62
- function asStyle(value) {
63
- return typeof value === 'object' && value !== null ? value : undefined;
64
- }
65
- // The symbiote-* host elements are imported as standalone components; the props directive is
66
- // applied as a template directive and the projection directive manages sticky-header wrapping.
67
- export class ScrollView extends ScrollViewBase {
68
- // Feeds the anchor's class-derived style INTO the base class's own `splitLayoutProps` call
69
- // (shared.ts's `androidWrappedScrollProps`/`androidRefreshControlProps`), not tacked on after —
70
- // a class-only layout style (flex/height/gap/…) must be visible to the split itself, or the
71
- // Android outer refresh-control wrapper never receives its share and collapses to zero size
72
- // (a real device bug: the whole ScrollView renders nothing). See layoutSplitStyle's doc comment
73
- // in shared.ts and the identical fix already shipped in the Vue adapter's scroll-view.
74
- //
75
- // Reads the base's `anchorStyle` SIGNAL rather than calling anchorHostStyle() directly: this
76
- // getter is evaluated inside the `androidWrappedScrollProps` computed, where a plain read would
77
- // be untracked and leave the memoized bag holding a stale class.
78
- get layoutSplitStyle() {
79
- return [asStyle(this.anchorStyle()), this.style];
80
- }
81
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: ScrollView, deps: null, target: i0.ɵɵFactoryTarget.Component });
82
- 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: `
83
- <ng-template #sharedContent>
84
- <ng-content></ng-content>
85
- </ng-template>
86
- @if (isHorizontal) {
87
- @if (hasProjectedRefreshControl) {
88
- <symbiote-refresh-control
89
- #refreshHost="symbioteHost"
90
- [symbioteHostProps]="androidRefreshControlProps"
91
- (refresh)="handleProjectedRefresh(refreshHost.node)"
92
- >
93
- <symbiote-horizontal-scroll-view
94
- #host="symbioteHost"
95
- [symbioteHostProps]="androidWrappedScrollProps()"
96
- >
97
- <symbiote-horizontal-scroll-content
98
- [symbioteHostProps]="contentProps()"
99
- [symbioteScrollViewProjection]="projectionController"
100
- >
101
- <ng-container
102
- [symbioteTemplateOutlet]="sharedContent"
103
- ></ng-container>
104
- </symbiote-horizontal-scroll-content>
105
- </symbiote-horizontal-scroll-view>
106
- </symbiote-refresh-control>
107
- } @else {
108
- <symbiote-horizontal-scroll-view
109
- #host="symbioteHost"
110
- [symbioteHostProps]="scrollProps()"
111
- >
112
- <symbiote-horizontal-scroll-content
113
- [symbioteHostProps]="contentProps()"
114
- [symbioteScrollViewProjection]="projectionController"
115
- >
116
- <ng-container
117
- [symbioteTemplateOutlet]="sharedContent"
118
- ></ng-container>
119
- </symbiote-horizontal-scroll-content>
120
- </symbiote-horizontal-scroll-view>
121
- }
122
- } @else {
123
- @if (hasProjectedRefreshControl) {
124
- <symbiote-refresh-control
125
- #refreshHost="symbioteHost"
126
- [symbioteHostProps]="androidRefreshControlProps"
127
- (refresh)="handleProjectedRefresh(refreshHost.node)"
128
- >
129
- <symbiote-scroll-view
130
- #host="symbioteHost"
131
- [symbioteHostProps]="androidWrappedScrollProps()"
132
- >
133
- <symbiote-scroll-content
134
- [symbioteHostProps]="contentProps()"
135
- [symbioteScrollViewProjection]="projectionController"
136
- >
137
- <ng-container
138
- [symbioteTemplateOutlet]="sharedContent"
139
- ></ng-container>
140
- </symbiote-scroll-content>
141
- </symbiote-scroll-view>
142
- </symbiote-refresh-control>
143
- } @else {
144
- <symbiote-scroll-view
145
- #host="symbioteHost"
146
- [symbioteHostProps]="scrollProps()"
147
- >
148
- <symbiote-scroll-content
149
- [symbioteHostProps]="contentProps()"
150
- [symbioteScrollViewProjection]="projectionController"
151
- >
152
- <ng-container
153
- [symbioteTemplateOutlet]="sharedContent"
154
- ></ng-container>
155
- </symbiote-scroll-content>
156
- </symbiote-scroll-view>
157
- }
158
- }
159
- `, isInline: true, dependencies: [{ kind: "component", type: ScrollViewHost, selector: "symbiote-scroll-view" }, { kind: "component", type: ScrollContentView, selector: "symbiote-scroll-content" }, { kind: "component", type: HorizontalScrollView, selector: "symbiote-horizontal-scroll-view" }, { kind: "component", type: HorizontalScrollContentView, selector: "symbiote-horizontal-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"] }, { kind: "directive", type: SymbioteTemplateOutletDirective, selector: "[symbioteTemplateOutlet]", inputs: ["symbioteTemplateOutlet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
160
- }
161
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: ScrollView, decorators: [{
162
- type: Component,
163
- args: [{
164
- selector: 'ScrollView',
165
- standalone: true,
166
- hostDirectives: [
167
- { directive: SymbioteStyleInputDirective, inputs: ['style'] },
168
- ],
169
- schemas: [CUSTOM_ELEMENTS_SCHEMA],
170
- imports: [
171
- ScrollViewHost,
172
- ScrollContentView,
173
- HorizontalScrollView,
174
- HorizontalScrollContentView,
175
- RefreshControlHost,
176
- SymbioteHostPropsDirective,
177
- ScrollViewProjectionDirective,
178
- SymbioteTemplateOutletDirective,
179
- ],
180
- changeDetection: ChangeDetectionStrategy.OnPush,
181
- inputs: SCROLL_VIEW_INPUTS,
182
- template: `
183
- <ng-template #sharedContent>
184
- <ng-content></ng-content>
185
- </ng-template>
186
- @if (isHorizontal) {
187
- @if (hasProjectedRefreshControl) {
188
- <symbiote-refresh-control
189
- #refreshHost="symbioteHost"
190
- [symbioteHostProps]="androidRefreshControlProps"
191
- (refresh)="handleProjectedRefresh(refreshHost.node)"
192
- >
193
- <symbiote-horizontal-scroll-view
194
- #host="symbioteHost"
195
- [symbioteHostProps]="androidWrappedScrollProps()"
196
- >
197
- <symbiote-horizontal-scroll-content
198
- [symbioteHostProps]="contentProps()"
199
- [symbioteScrollViewProjection]="projectionController"
200
- >
201
- <ng-container
202
- [symbioteTemplateOutlet]="sharedContent"
203
- ></ng-container>
204
- </symbiote-horizontal-scroll-content>
205
- </symbiote-horizontal-scroll-view>
206
- </symbiote-refresh-control>
207
- } @else {
208
- <symbiote-horizontal-scroll-view
209
- #host="symbioteHost"
210
- [symbioteHostProps]="scrollProps()"
211
- >
212
- <symbiote-horizontal-scroll-content
213
- [symbioteHostProps]="contentProps()"
214
- [symbioteScrollViewProjection]="projectionController"
215
- >
216
- <ng-container
217
- [symbioteTemplateOutlet]="sharedContent"
218
- ></ng-container>
219
- </symbiote-horizontal-scroll-content>
220
- </symbiote-horizontal-scroll-view>
221
- }
222
- } @else {
223
- @if (hasProjectedRefreshControl) {
224
- <symbiote-refresh-control
225
- #refreshHost="symbioteHost"
226
- [symbioteHostProps]="androidRefreshControlProps"
227
- (refresh)="handleProjectedRefresh(refreshHost.node)"
228
- >
229
- <symbiote-scroll-view
230
- #host="symbioteHost"
231
- [symbioteHostProps]="androidWrappedScrollProps()"
232
- >
233
- <symbiote-scroll-content
234
- [symbioteHostProps]="contentProps()"
235
- [symbioteScrollViewProjection]="projectionController"
236
- >
237
- <ng-container
238
- [symbioteTemplateOutlet]="sharedContent"
239
- ></ng-container>
240
- </symbiote-scroll-content>
241
- </symbiote-scroll-view>
242
- </symbiote-refresh-control>
243
- } @else {
244
- <symbiote-scroll-view
245
- #host="symbioteHost"
246
- [symbioteHostProps]="scrollProps()"
247
- >
248
- <symbiote-scroll-content
249
- [symbioteHostProps]="contentProps()"
250
- [symbioteScrollViewProjection]="projectionController"
251
- >
252
- <ng-container
253
- [symbioteTemplateOutlet]="sharedContent"
254
- ></ng-container>
255
- </symbiote-scroll-content>
256
- </symbiote-scroll-view>
257
- }
258
- }
259
- `,
260
- }]
261
- }] });
262
- //# sourceMappingURL=index.android.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.android.js","sourceRoot":"","sources":["../../../../src/components/scroll-view/index.android.ts"],"names":[],"mappings":"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"}
@@ -1,3 +0,0 @@
1
- export * from './index.ios';
2
- export { ScrollViewStickyHeader } from './sticky-header';
3
- export type { IStickyHeaderComponentType } from './sticky-header';