@symbiote-native/angular 0.0.0-canary-20260724081123

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 (276) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +157 -0
  3. package/babel-linker.cjs +7 -0
  4. package/babel-register-composed.cjs +127 -0
  5. package/bin/symbiote-angular-dev.cjs +93 -0
  6. package/build/angular/anchor-host-registry.d.ts +2 -0
  7. package/build/angular/anchor-host-registry.js +84 -0
  8. package/build/angular/anchor-host-registry.js.map +1 -0
  9. package/build/angular/bootstrap.d.ts +7 -0
  10. package/build/angular/bootstrap.js +15 -0
  11. package/build/angular/bootstrap.js.map +1 -0
  12. package/build/angular/components/activity-indicator/index.android.d.ts +12 -0
  13. package/build/angular/components/activity-indicator/index.android.js +21 -0
  14. package/build/angular/components/activity-indicator/index.android.js.map +1 -0
  15. package/build/angular/components/activity-indicator/index.d.ts +1 -0
  16. package/build/angular/components/activity-indicator/index.ios.d.ts +8 -0
  17. package/build/angular/components/activity-indicator/index.ios.js +21 -0
  18. package/build/angular/components/activity-indicator/index.ios.js.map +1 -0
  19. package/build/angular/components/activity-indicator/index.js +4 -0
  20. package/build/angular/components/activity-indicator/index.js.map +1 -0
  21. package/build/angular/components/activity-indicator/shared.d.ts +67 -0
  22. package/build/angular/components/activity-indicator/shared.js +260 -0
  23. package/build/angular/components/activity-indicator/shared.js.map +1 -0
  24. package/build/angular/components/button.d.ts +63 -0
  25. package/build/angular/components/button.js +332 -0
  26. package/build/angular/components/button.js.map +1 -0
  27. package/build/angular/components/flat-list/index.d.ts +122 -0
  28. package/build/angular/components/flat-list/index.js +688 -0
  29. package/build/angular/components/flat-list/index.js.map +1 -0
  30. package/build/angular/components/image/index.android.d.ts +10 -0
  31. package/build/angular/components/image/index.android.js +59 -0
  32. package/build/angular/components/image/index.android.js.map +1 -0
  33. package/build/angular/components/image/index.d.ts +1 -0
  34. package/build/angular/components/image/index.ios.d.ts +10 -0
  35. package/build/angular/components/image/index.ios.js +59 -0
  36. package/build/angular/components/image/index.ios.js.map +1 -0
  37. package/build/angular/components/image/index.js +3 -0
  38. package/build/angular/components/image/index.js.map +1 -0
  39. package/build/angular/components/image/shared.d.ts +101 -0
  40. package/build/angular/components/image/shared.js +406 -0
  41. package/build/angular/components/image/shared.js.map +1 -0
  42. package/build/angular/components/image-background.d.ts +81 -0
  43. package/build/angular/components/image-background.js +418 -0
  44. package/build/angular/components/image-background.js.map +1 -0
  45. package/build/angular/components/input-accessory-view/index.d.ts +60 -0
  46. package/build/angular/components/input-accessory-view/index.js +251 -0
  47. package/build/angular/components/input-accessory-view/index.js.map +1 -0
  48. package/build/angular/components/keyboard-avoiding-view/index.d.ts +82 -0
  49. package/build/angular/components/keyboard-avoiding-view/index.js +358 -0
  50. package/build/angular/components/keyboard-avoiding-view/index.js.map +1 -0
  51. package/build/angular/components/modal/index.d.ts +92 -0
  52. package/build/angular/components/modal/index.js +360 -0
  53. package/build/angular/components/modal/index.js.map +1 -0
  54. package/build/angular/components/pressable/index.d.ts +123 -0
  55. package/build/angular/components/pressable/index.js +420 -0
  56. package/build/angular/components/pressable/index.js.map +1 -0
  57. package/build/angular/components/refresh-control/index.d.ts +86 -0
  58. package/build/angular/components/refresh-control/index.js +342 -0
  59. package/build/angular/components/refresh-control/index.js.map +1 -0
  60. package/build/angular/components/safe-area-view/index.d.ts +57 -0
  61. package/build/angular/components/safe-area-view/index.js +248 -0
  62. package/build/angular/components/safe-area-view/index.js.map +1 -0
  63. package/build/angular/components/scroll-view/index.android.d.ts +21 -0
  64. package/build/angular/components/scroll-view/index.android.js +235 -0
  65. package/build/angular/components/scroll-view/index.android.js.map +1 -0
  66. package/build/angular/components/scroll-view/index.d.ts +3 -0
  67. package/build/angular/components/scroll-view/index.ios.d.ts +9 -0
  68. package/build/angular/components/scroll-view/index.ios.js +86 -0
  69. package/build/angular/components/scroll-view/index.ios.js.map +1 -0
  70. package/build/angular/components/scroll-view/index.js +6 -0
  71. package/build/angular/components/scroll-view/index.js.map +1 -0
  72. package/build/angular/components/scroll-view/projection.d.ts +32 -0
  73. package/build/angular/components/scroll-view/projection.js +334 -0
  74. package/build/angular/components/scroll-view/projection.js.map +1 -0
  75. package/build/angular/components/scroll-view/shared.d.ts +230 -0
  76. package/build/angular/components/scroll-view/shared.js +682 -0
  77. package/build/angular/components/scroll-view/shared.js.map +1 -0
  78. package/build/angular/components/scroll-view/sticky-header.d.ts +40 -0
  79. package/build/angular/components/scroll-view/sticky-header.js +225 -0
  80. package/build/angular/components/scroll-view/sticky-header.js.map +1 -0
  81. package/build/angular/components/section-list/index.d.ts +116 -0
  82. package/build/angular/components/section-list/index.js +641 -0
  83. package/build/angular/components/section-list/index.js.map +1 -0
  84. package/build/angular/components/switch/index.android.d.ts +20 -0
  85. package/build/angular/components/switch/index.android.js +70 -0
  86. package/build/angular/components/switch/index.android.js.map +1 -0
  87. package/build/angular/components/switch/index.d.ts +1 -0
  88. package/build/angular/components/switch/index.ios.d.ts +19 -0
  89. package/build/angular/components/switch/index.ios.js +69 -0
  90. package/build/angular/components/switch/index.ios.js.map +1 -0
  91. package/build/angular/components/switch/index.js +4 -0
  92. package/build/angular/components/switch/index.js.map +1 -0
  93. package/build/angular/components/switch/shared.d.ts +40 -0
  94. package/build/angular/components/switch/shared.js +127 -0
  95. package/build/angular/components/switch/shared.js.map +1 -0
  96. package/build/angular/components/text-input.d.ts +153 -0
  97. package/build/angular/components/text-input.js +599 -0
  98. package/build/angular/components/text-input.js.map +1 -0
  99. package/build/angular/components/touchable/index.d.ts +245 -0
  100. package/build/angular/components/touchable/index.js +1186 -0
  101. package/build/angular/components/touchable/index.js.map +1 -0
  102. package/build/angular/components/touchable-native-feedback/index.d.ts +83 -0
  103. package/build/angular/components/touchable-native-feedback/index.js +371 -0
  104. package/build/angular/components/touchable-native-feedback/index.js.map +1 -0
  105. package/build/angular/components/virtualized-list/directives.d.ts +54 -0
  106. package/build/angular/components/virtualized-list/directives.js +153 -0
  107. package/build/angular/components/virtualized-list/directives.js.map +1 -0
  108. package/build/angular/components/virtualized-list/index.d.ts +253 -0
  109. package/build/angular/components/virtualized-list/index.js +1031 -0
  110. package/build/angular/components/virtualized-list/index.js.map +1 -0
  111. package/build/angular/components/virtualized-section-list/directives.d.ts +37 -0
  112. package/build/angular/components/virtualized-section-list/directives.js +76 -0
  113. package/build/angular/components/virtualized-section-list/directives.js.map +1 -0
  114. package/build/angular/components/virtualized-section-list/index.d.ts +178 -0
  115. package/build/angular/components/virtualized-section-list/index.js +720 -0
  116. package/build/angular/components/virtualized-section-list/index.js.map +1 -0
  117. package/build/angular/components.d.ts +39 -0
  118. package/build/angular/components.js +38 -0
  119. package/build/angular/components.js.map +1 -0
  120. package/build/angular/create-portal/index.d.ts +22 -0
  121. package/build/angular/create-portal/index.js +74 -0
  122. package/build/angular/create-portal/index.js.map +1 -0
  123. package/build/angular/create-tunnel/index.d.ts +34 -0
  124. package/build/angular/create-tunnel/index.js +126 -0
  125. package/build/angular/create-tunnel/index.js.map +1 -0
  126. package/build/angular/descriptor-to-angular/index.d.ts +22 -0
  127. package/build/angular/descriptor-to-angular/index.js +142 -0
  128. package/build/angular/descriptor-to-angular/index.js.map +1 -0
  129. package/build/angular/host-instance/index.d.ts +2 -0
  130. package/build/angular/host-instance/index.js +37 -0
  131. package/build/angular/host-instance/index.js.map +1 -0
  132. package/build/angular/index.d.ts +22 -0
  133. package/build/angular/index.js +46 -0
  134. package/build/angular/index.js.map +1 -0
  135. package/build/angular/modules/animated/animated-leaf-binder/index.d.ts +14 -0
  136. package/build/angular/modules/animated/animated-leaf-binder/index.js +91 -0
  137. package/build/angular/modules/animated/animated-leaf-binder/index.js.map +1 -0
  138. package/build/angular/modules/animated/animated-leaf-binder.d.ts +14 -0
  139. package/build/angular/modules/animated/animated-leaf-binder.js +91 -0
  140. package/build/angular/modules/animated/animated-leaf-binder.js.map +1 -0
  141. package/build/angular/modules/animated/create-animated-component.d.ts +59 -0
  142. package/build/angular/modules/animated/create-animated-component.js +364 -0
  143. package/build/angular/modules/animated/create-animated-component.js.map +1 -0
  144. package/build/angular/modules/animated/index.d.ts +51 -0
  145. package/build/angular/modules/animated/index.js +59 -0
  146. package/build/angular/modules/animated/index.js.map +1 -0
  147. package/build/angular/modules/app-registry/index.d.ts +7 -0
  148. package/build/angular/modules/app-registry/index.js +23 -0
  149. package/build/angular/modules/app-registry/index.js.map +1 -0
  150. package/build/angular/modules/status-bar/index.d.ts +20 -0
  151. package/build/angular/modules/status-bar/index.js +59 -0
  152. package/build/angular/modules/status-bar/index.js.map +1 -0
  153. package/build/angular/primitives/index.d.ts +63 -0
  154. package/build/angular/primitives/index.js +189 -0
  155. package/build/angular/primitives/index.js.map +1 -0
  156. package/build/angular/primitives/shared.d.ts +88 -0
  157. package/build/angular/primitives/shared.js +171 -0
  158. package/build/angular/primitives/shared.js.map +1 -0
  159. package/build/angular/render/index.d.ts +11 -0
  160. package/build/angular/render/index.js +171 -0
  161. package/build/angular/render/index.js.map +1 -0
  162. package/build/angular/renderer/index.d.ts +37 -0
  163. package/build/angular/renderer/index.js +301 -0
  164. package/build/angular/renderer/index.js.map +1 -0
  165. package/build/angular/services/color-scheme.service.d.ts +16 -0
  166. package/build/angular/services/color-scheme.service.js +31 -0
  167. package/build/angular/services/color-scheme.service.js.map +1 -0
  168. package/build/angular/services/index.d.ts +2 -0
  169. package/build/angular/services/index.js +3 -0
  170. package/build/angular/services/index.js.map +1 -0
  171. package/build/angular/services/window-dimensions.service.d.ts +16 -0
  172. package/build/angular/services/window-dimensions.service.js +42 -0
  173. package/build/angular/services/window-dimensions.service.js.map +1 -0
  174. package/metro-config.cjs +48 -0
  175. package/metro-css-parser.cjs +13 -0
  176. package/package.json +80 -0
  177. package/src/__tests__/responder-change-detection.test.ts +102 -0
  178. package/src/__tests__/responder-nested-cd.test.ts +113 -0
  179. package/src/anchor-host-registry.ts +88 -0
  180. package/src/angular-gaps.test.ts +142 -0
  181. package/src/angular-imports.test.ts +100 -0
  182. package/src/bootstrap.ts +26 -0
  183. package/src/components/activity-indicator/activity-indicator-class-style.test.ts +44 -0
  184. package/src/components/activity-indicator/activity-indicator.test.ts +131 -0
  185. package/src/components/activity-indicator/index.android.ts +16 -0
  186. package/src/components/activity-indicator/index.ios.ts +17 -0
  187. package/src/components/activity-indicator/index.ts +4 -0
  188. package/src/components/activity-indicator/shared.ts +206 -0
  189. package/src/components/button.ts +193 -0
  190. package/src/components/flat-list/column-wrapper-style-class.test.ts +116 -0
  191. package/src/components/flat-list/flat-list-array-style.test.ts +131 -0
  192. package/src/components/flat-list/flat-list-class-style.test.ts +74 -0
  193. package/src/components/flat-list/flat-list-scroll-containment.test.ts +107 -0
  194. package/src/components/flat-list/flat-list.test.ts +99 -0
  195. package/src/components/flat-list/index.ts +574 -0
  196. package/src/components/image/image-class-style.test.ts +46 -0
  197. package/src/components/image/index.android.ts +48 -0
  198. package/src/components/image/index.ios.ts +48 -0
  199. package/src/components/image/index.ts +3 -0
  200. package/src/components/image/shared.ts +479 -0
  201. package/src/components/image-background-class-style.test.ts +48 -0
  202. package/src/components/image-background-style-class.test.ts +79 -0
  203. package/src/components/image-background.ts +270 -0
  204. package/src/components/input-accessory-view/index.ts +185 -0
  205. package/src/components/input-accessory-view/input-accessory-view.test.ts +43 -0
  206. package/src/components/keyboard-avoiding-view/index.ts +303 -0
  207. package/src/components/keyboard-avoiding-view/keyboard-avoiding-view.test.ts +54 -0
  208. package/src/components/modal/index.ts +299 -0
  209. package/src/components/modal/modal.test.ts +43 -0
  210. package/src/components/pressable/index.ts +373 -0
  211. package/src/components/pressable/pressable.test.ts +85 -0
  212. package/src/components/refresh-control/index.ts +284 -0
  213. package/src/components/refresh-control/refresh-control.test.ts +41 -0
  214. package/src/components/safe-area-view/index.ts +177 -0
  215. package/src/components/safe-area-view/safe-area-view.test.ts +43 -0
  216. package/src/components/scroll-view/android-scroll-view-axis-projection.test.ts +123 -0
  217. package/src/components/scroll-view/content-container-style-class.test.ts +75 -0
  218. package/src/components/scroll-view/index.android.ts +190 -0
  219. package/src/components/scroll-view/index.ios.ts +79 -0
  220. package/src/components/scroll-view/index.ts +7 -0
  221. package/src/components/scroll-view/projection.ts +414 -0
  222. package/src/components/scroll-view/scroll-view-class-style.test.ts +134 -0
  223. package/src/components/scroll-view/scroll-view-projection.test.ts +194 -0
  224. package/src/components/scroll-view/shared.ts +844 -0
  225. package/src/components/scroll-view/sticky-header.ts +255 -0
  226. package/src/components/section-list/index.ts +445 -0
  227. package/src/components/switch/android-switch-class.test.ts +42 -0
  228. package/src/components/switch/index.android.ts +61 -0
  229. package/src/components/switch/index.ios.ts +60 -0
  230. package/src/components/switch/index.ts +4 -0
  231. package/src/components/switch/shared.ts +197 -0
  232. package/src/components/switch/switch.test.ts +92 -0
  233. package/src/components/text-input-class-style.test.ts +54 -0
  234. package/src/components/text-input.ts +531 -0
  235. package/src/components/touchable/index.ts +629 -0
  236. package/src/components/touchable/touchable.test.ts +102 -0
  237. package/src/components/touchable-native-feedback/index.ts +254 -0
  238. package/src/components/touchable-native-feedback/touchable-native-feedback.test.ts +49 -0
  239. package/src/components/virtualized-list/directives.ts +168 -0
  240. package/src/components/virtualized-list/index.ts +992 -0
  241. package/src/components/virtualized-list/virtualized-list-class-style.test.ts +76 -0
  242. package/src/components/virtualized-section-list/directives.ts +90 -0
  243. package/src/components/virtualized-section-list/index.ts +601 -0
  244. package/src/components/virtualized-section-list/virtualized-section-list-class-style.test.ts +60 -0
  245. package/src/components.ts +149 -0
  246. package/src/create-portal/create-portal.test.ts +90 -0
  247. package/src/create-portal/index.ts +74 -0
  248. package/src/create-tunnel/create-tunnel.test.ts +120 -0
  249. package/src/create-tunnel/index.ts +136 -0
  250. package/src/descriptor-to-angular/descriptor-outlet.test.ts +94 -0
  251. package/src/descriptor-to-angular/index.ts +190 -0
  252. package/src/host-instance/host-instance.test.ts +49 -0
  253. package/src/host-instance/index.ts +36 -0
  254. package/src/index.ts +261 -0
  255. package/src/modules/animated/animated-leaf-binder/animated-leaf-binder.test.ts +116 -0
  256. package/src/modules/animated/animated-leaf-binder/index.ts +101 -0
  257. package/src/modules/animated/animated-leaf-binder.test.ts +116 -0
  258. package/src/modules/animated/animated-leaf-binder.ts +101 -0
  259. package/src/modules/animated/animated-scroll-view.test.ts +102 -0
  260. package/src/modules/animated/create-animated-component.ts +365 -0
  261. package/src/modules/animated/index.ts +105 -0
  262. package/src/modules/app-registry/app-registry.test.ts +106 -0
  263. package/src/modules/app-registry/index.ts +60 -0
  264. package/src/modules/status-bar/index.ts +57 -0
  265. package/src/modules/status-bar/status-bar.test.ts +50 -0
  266. package/src/primitives/index.ts +119 -0
  267. package/src/primitives/shared.ts +190 -0
  268. package/src/render/index.ts +235 -0
  269. package/src/render/render.test.ts +147 -0
  270. package/src/renderer/index.ts +347 -0
  271. package/src/renderer/renderer.test.ts +203 -0
  272. package/src/services/color-scheme.service.ts +27 -0
  273. package/src/services/index.ts +2 -0
  274. package/src/services/services.test.ts +163 -0
  275. package/src/services/window-dimensions.service.ts +41 -0
  276. package/tsconfig.angular.base.json +30 -0
@@ -0,0 +1,67 @@
1
+ import { EventEmitter } from '@angular/core';
2
+ import { type IAccessibilityProps, type IAccessibilityStateValue, type IActivityIndicatorProps, type IActivityIndicatorSize, type IAriaProps } from '@symbiote-native/components';
3
+ import type { ISymbioteEvent } from '@symbiote-native/engine';
4
+ import type { IDescriptor } from '@symbiote-native/components';
5
+ import * as i0 from "@angular/core";
6
+ export type { IActivityIndicatorProps, IActivityIndicatorSize } from '@symbiote-native/components';
7
+ export type IActivityIndicatorInputs = Omit<IActivityIndicatorProps, 'onLayout' | 'onAccessibilityAction' | 'onAccessibilityTap' | 'onMagicTap' | 'onAccessibilityEscape'>;
8
+ export declare abstract class ActivityIndicatorBase implements IActivityIndicatorInputs {
9
+ animating?: boolean;
10
+ color?: string;
11
+ hidesWhenStopped?: boolean;
12
+ nativeID?: string;
13
+ size?: IActivityIndicatorSize;
14
+ style?: IActivityIndicatorProps['style'];
15
+ testID?: string;
16
+ readonly layout: EventEmitter<ISymbioteEvent>;
17
+ accessible?: boolean;
18
+ accessibilityLabel?: string;
19
+ accessibilityHint?: string;
20
+ accessibilityRole?: IAccessibilityProps['accessibilityRole'];
21
+ accessibilityState?: IAccessibilityStateValue;
22
+ accessibilityValue?: IAccessibilityProps['accessibilityValue'];
23
+ accessibilityActions?: IAccessibilityProps['accessibilityActions'];
24
+ accessibilityLabelledBy?: string | string[];
25
+ importantForAccessibility?: IAccessibilityProps['importantForAccessibility'];
26
+ accessibilityLiveRegion?: IAccessibilityProps['accessibilityLiveRegion'];
27
+ screenReaderFocusable?: boolean;
28
+ accessibilityViewIsModal?: boolean;
29
+ accessibilityElementsHidden?: boolean;
30
+ accessibilityIgnoresInvertColors?: boolean;
31
+ accessibilityLanguage?: string;
32
+ accessibilityRespondsToUserInteraction?: boolean;
33
+ accessibilityShowsLargeContentViewer?: boolean;
34
+ accessibilityLargeContentTitle?: string;
35
+ readonly accessibilityAction: EventEmitter<ISymbioteEvent>;
36
+ readonly accessibilityTap: EventEmitter<ISymbioteEvent>;
37
+ readonly magicTap: EventEmitter<ISymbioteEvent>;
38
+ readonly accessibilityEscape: EventEmitter<ISymbioteEvent>;
39
+ role?: IAriaProps['role'];
40
+ ariaLabel?: string;
41
+ ariaLabelledBy?: string;
42
+ ariaLive?: IAriaProps['aria-live'];
43
+ ariaHidden?: boolean;
44
+ ariaBusy?: boolean;
45
+ ariaChecked?: boolean | 'mixed';
46
+ ariaDisabled?: boolean;
47
+ ariaExpanded?: boolean;
48
+ ariaSelected?: boolean;
49
+ ariaModal?: boolean;
50
+ ariaValueMax?: number;
51
+ ariaValueMin?: number;
52
+ ariaValueNow?: number;
53
+ ariaValueText?: string;
54
+ protected abstract readonly defaultColor: string | null;
55
+ protected readonly nativeExtras: Readonly<Record<string, unknown>>;
56
+ private readonly elementRef;
57
+ private readonly onLayoutHandler;
58
+ private readonly onAccessibilityActionHandler;
59
+ private readonly onAccessibilityTapHandler;
60
+ private readonly onMagicTapHandler;
61
+ private readonly onAccessibilityEscapeHandler;
62
+ get descriptor(): IDescriptor;
63
+ private get platform();
64
+ private emitterHandler;
65
+ static ɵfac: i0.ɵɵFactoryDeclaration<ActivityIndicatorBase, never>;
66
+ static ɵdir: i0.ɵɵDirectiveDeclaration<ActivityIndicatorBase, never, never, { "animating": { "alias": "animating"; "required": false; }; "color": { "alias": "color"; "required": false; }; "hidesWhenStopped": { "alias": "hidesWhenStopped"; "required": false; }; "nativeID": { "alias": "nativeID"; "required": false; }; "size": { "alias": "size"; "required": false; }; "style": { "alias": "style"; "required": false; }; "testID": { "alias": "testID"; "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; }; "ariaLabel": { "alias": "aria-label"; "required": false; }; "ariaLabelledBy": { "alias": "aria-labelledby"; "required": false; }; "ariaLive": { "alias": "aria-live"; "required": false; }; "ariaHidden": { "alias": "aria-hidden"; "required": false; }; "ariaBusy": { "alias": "aria-busy"; "required": false; }; "ariaChecked": { "alias": "aria-checked"; "required": false; }; "ariaDisabled": { "alias": "aria-disabled"; "required": false; }; "ariaExpanded": { "alias": "aria-expanded"; "required": false; }; "ariaSelected": { "alias": "aria-selected"; "required": false; }; "ariaModal": { "alias": "aria-modal"; "required": false; }; "ariaValueMax": { "alias": "aria-valuemax"; "required": false; }; "ariaValueMin": { "alias": "aria-valuemin"; "required": false; }; "ariaValueNow": { "alias": "aria-valuenow"; "required": false; }; "ariaValueText": { "alias": "aria-valuetext"; "required": false; }; }, { "layout": "layout"; "accessibilityAction": "accessibilityAction"; "accessibilityTap": "accessibilityTap"; "magicTap": "magicTap"; "accessibilityEscape": "accessibilityEscape"; }, never, never, true, never>;
67
+ }
@@ -0,0 +1,260 @@
1
+ import { Directive, ElementRef, EventEmitter, inject, Input, Output } from '@angular/core';
2
+ import { renderActivityIndicator, resolveAccessibilityProps, } from '@symbiote-native/components';
3
+ import { anchorHostStyle } from '../../primitives';
4
+ import * as i0 from "@angular/core";
5
+ // Narrows anchorHostStyle's `unknown` (it reads an opaque engine prop bag) to the shape
6
+ // IActivityIndicatorProps['style'] actually declares, the same runtime guard image/shared.ts's
7
+ // asStyle() uses for the identical reason — a style value is structurally opaque at the type
8
+ // level, so this only rules out non-objects, never validates individual style keys.
9
+ function asStyle(value) {
10
+ return typeof value === 'object' && value !== null ? value : undefined;
11
+ }
12
+ export class ActivityIndicatorBase {
13
+ animating;
14
+ color;
15
+ hidesWhenStopped;
16
+ nativeID;
17
+ size;
18
+ style;
19
+ testID;
20
+ // Real @Output()s. This component renders through DescriptorOutlet (`symbiote-descriptor-
21
+ // outlet`), not a hand-written template: emitterHandler() below wraps each EventEmitter into a
22
+ // plain callback under the SAME onX key the shared, cross-adapter IActivityIndicatorProps
23
+ // expects, so the Descriptor's props bag still carries a function the engine's routeProp
24
+ // recognizes and routes to setEventListener — the outlet's renderer.setProperty call never
25
+ // sees an EventEmitter, only the wrapper.
26
+ layout = new EventEmitter();
27
+ accessible;
28
+ accessibilityLabel;
29
+ accessibilityHint;
30
+ accessibilityRole;
31
+ accessibilityState;
32
+ accessibilityValue;
33
+ accessibilityActions;
34
+ accessibilityLabelledBy;
35
+ importantForAccessibility;
36
+ accessibilityLiveRegion;
37
+ screenReaderFocusable;
38
+ accessibilityViewIsModal;
39
+ accessibilityElementsHidden;
40
+ accessibilityIgnoresInvertColors;
41
+ accessibilityLanguage;
42
+ accessibilityRespondsToUserInteraction;
43
+ accessibilityShowsLargeContentViewer;
44
+ accessibilityLargeContentTitle;
45
+ accessibilityAction = new EventEmitter();
46
+ accessibilityTap = new EventEmitter();
47
+ magicTap = new EventEmitter();
48
+ accessibilityEscape = new EventEmitter();
49
+ role;
50
+ ariaLabel;
51
+ ariaLabelledBy;
52
+ ariaLive;
53
+ ariaHidden;
54
+ ariaBusy;
55
+ ariaChecked;
56
+ ariaDisabled;
57
+ ariaExpanded;
58
+ ariaSelected;
59
+ ariaModal;
60
+ ariaValueMax;
61
+ ariaValueMin;
62
+ ariaValueNow;
63
+ ariaValueText;
64
+ nativeExtras = {};
65
+ // This component's OWN host — the non-painting anchor `class="..."` at the use site resolves
66
+ // onto (see anchorHostStyle's doc comment) — NOT the descriptor-outlet-rendered wrapper the
67
+ // `descriptor` getter below builds. Merged FIRST so an explicit `style` @Input still wins
68
+ // (flattenStyle's later-wins collapse), mirroring every other composed component's anchor merge.
69
+ elementRef = inject(ElementRef);
70
+ // Stable bound wrappers (created ONCE, not per `descriptor` access) fed to emitterHandler below.
71
+ // jsonEqual (core/engine/src/commit.ts) falls through to Object.is for a function leaf, so a
72
+ // fresh closure built inside the `descriptor` getter would never equal the previous frame's
73
+ // closure even when nothing changed — every CD pass would read as "props changed" and force a
74
+ // real Fabric re-clone cascading up every ancestor to the root (the same hazard
75
+ // AnimatedComponentBase.reconcile() and ScrollViewStickyHeader's onHostLayout guard against).
76
+ onLayoutHandler = (event) => this.layout.emit(event);
77
+ onAccessibilityActionHandler = (event) => this.accessibilityAction.emit(event);
78
+ onAccessibilityTapHandler = (event) => this.accessibilityTap.emit(event);
79
+ onMagicTapHandler = (event) => this.magicTap.emit(event);
80
+ onAccessibilityEscapeHandler = (event) => this.accessibilityEscape.emit(event);
81
+ get descriptor() {
82
+ const props = resolveAccessibilityProps({
83
+ animating: this.animating,
84
+ color: this.color,
85
+ hidesWhenStopped: this.hidesWhenStopped,
86
+ nativeID: this.nativeID,
87
+ size: this.size,
88
+ style: [asStyle(anchorHostStyle(this.elementRef)), this.style],
89
+ testID: this.testID,
90
+ onLayout: this.emitterHandler(this.layout, this.onLayoutHandler),
91
+ accessible: this.accessible,
92
+ accessibilityLabel: this.accessibilityLabel,
93
+ accessibilityHint: this.accessibilityHint,
94
+ accessibilityRole: this.accessibilityRole,
95
+ accessibilityState: this.accessibilityState,
96
+ accessibilityValue: this.accessibilityValue,
97
+ accessibilityActions: this.accessibilityActions,
98
+ accessibilityLabelledBy: this.accessibilityLabelledBy,
99
+ importantForAccessibility: this.importantForAccessibility,
100
+ accessibilityLiveRegion: this.accessibilityLiveRegion,
101
+ screenReaderFocusable: this.screenReaderFocusable,
102
+ accessibilityViewIsModal: this.accessibilityViewIsModal,
103
+ accessibilityElementsHidden: this.accessibilityElementsHidden,
104
+ accessibilityIgnoresInvertColors: this.accessibilityIgnoresInvertColors,
105
+ accessibilityLanguage: this.accessibilityLanguage,
106
+ accessibilityRespondsToUserInteraction: this.accessibilityRespondsToUserInteraction,
107
+ accessibilityShowsLargeContentViewer: this.accessibilityShowsLargeContentViewer,
108
+ accessibilityLargeContentTitle: this.accessibilityLargeContentTitle,
109
+ onAccessibilityAction: this.emitterHandler(this.accessibilityAction, this.onAccessibilityActionHandler),
110
+ onAccessibilityTap: this.emitterHandler(this.accessibilityTap, this.onAccessibilityTapHandler),
111
+ onMagicTap: this.emitterHandler(this.magicTap, this.onMagicTapHandler),
112
+ onAccessibilityEscape: this.emitterHandler(this.accessibilityEscape, this.onAccessibilityEscapeHandler),
113
+ role: this.role,
114
+ 'aria-label': this.ariaLabel,
115
+ 'aria-labelledby': this.ariaLabelledBy,
116
+ 'aria-live': this.ariaLive,
117
+ 'aria-hidden': this.ariaHidden,
118
+ 'aria-busy': this.ariaBusy,
119
+ 'aria-checked': this.ariaChecked,
120
+ 'aria-disabled': this.ariaDisabled,
121
+ 'aria-expanded': this.ariaExpanded,
122
+ 'aria-selected': this.ariaSelected,
123
+ 'aria-modal': this.ariaModal,
124
+ 'aria-valuemax': this.ariaValueMax,
125
+ 'aria-valuemin': this.ariaValueMin,
126
+ 'aria-valuenow': this.ariaValueNow,
127
+ 'aria-valuetext': this.ariaValueText,
128
+ });
129
+ const { animating, color, hidesWhenStopped, size, style, ...passthrough } = props;
130
+ return renderActivityIndicator({
131
+ animating: animating !== false,
132
+ color,
133
+ hidesWhenStopped: hidesWhenStopped !== false,
134
+ size: size ?? 'small',
135
+ style,
136
+ passthrough,
137
+ }, this.platform);
138
+ }
139
+ get platform() {
140
+ return { defaultColor: this.defaultColor, nativeExtras: this.nativeExtras };
141
+ }
142
+ // Gates a STABLE bound handler behind `observed`, so an unbound event still resolves to
143
+ // `undefined` in the descriptor's props bag — the same "undefined means nobody cares" contract
144
+ // the old @Input() callback had, letting resolveAccessibilityProps drop the key entirely instead
145
+ // of handing the engine a no-op function. `handler` must be one of the readonly bound fields
146
+ // above, never a closure built here — see their doc comment for why.
147
+ emitterHandler(emitter, handler) {
148
+ return emitter.observed ? handler : undefined;
149
+ }
150
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: ActivityIndicatorBase, deps: [], target: i0.ɵɵFactoryTarget.Directive });
151
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.0.5", type: ActivityIndicatorBase, isStandalone: true, inputs: { animating: "animating", color: "color", hidesWhenStopped: "hidesWhenStopped", nativeID: "nativeID", size: "size", style: "style", testID: "testID", 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" }, ngImport: i0 });
152
+ }
153
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: ActivityIndicatorBase, decorators: [{
154
+ type: Directive
155
+ }], propDecorators: { animating: [{
156
+ type: Input
157
+ }], color: [{
158
+ type: Input
159
+ }], hidesWhenStopped: [{
160
+ type: Input
161
+ }], nativeID: [{
162
+ type: Input
163
+ }], size: [{
164
+ type: Input
165
+ }], style: [{
166
+ type: Input
167
+ }], testID: [{
168
+ type: Input
169
+ }], layout: [{
170
+ type: Output
171
+ }], accessible: [{
172
+ type: Input
173
+ }], accessibilityLabel: [{
174
+ type: Input
175
+ }], accessibilityHint: [{
176
+ type: Input
177
+ }], accessibilityRole: [{
178
+ type: Input
179
+ }], accessibilityState: [{
180
+ type: Input
181
+ }], accessibilityValue: [{
182
+ type: Input
183
+ }], accessibilityActions: [{
184
+ type: Input
185
+ }], accessibilityLabelledBy: [{
186
+ type: Input
187
+ }], importantForAccessibility: [{
188
+ type: Input
189
+ }], accessibilityLiveRegion: [{
190
+ type: Input
191
+ }], screenReaderFocusable: [{
192
+ type: Input
193
+ }], accessibilityViewIsModal: [{
194
+ type: Input
195
+ }], accessibilityElementsHidden: [{
196
+ type: Input
197
+ }], accessibilityIgnoresInvertColors: [{
198
+ type: Input
199
+ }], accessibilityLanguage: [{
200
+ type: Input
201
+ }], accessibilityRespondsToUserInteraction: [{
202
+ type: Input
203
+ }], accessibilityShowsLargeContentViewer: [{
204
+ type: Input
205
+ }], accessibilityLargeContentTitle: [{
206
+ type: Input
207
+ }], accessibilityAction: [{
208
+ type: Output
209
+ }], accessibilityTap: [{
210
+ type: Output
211
+ }], magicTap: [{
212
+ type: Output
213
+ }], accessibilityEscape: [{
214
+ type: Output
215
+ }], role: [{
216
+ type: Input
217
+ }], ariaLabel: [{
218
+ type: Input,
219
+ args: ['aria-label']
220
+ }], ariaLabelledBy: [{
221
+ type: Input,
222
+ args: ['aria-labelledby']
223
+ }], ariaLive: [{
224
+ type: Input,
225
+ args: ['aria-live']
226
+ }], ariaHidden: [{
227
+ type: Input,
228
+ args: ['aria-hidden']
229
+ }], ariaBusy: [{
230
+ type: Input,
231
+ args: ['aria-busy']
232
+ }], ariaChecked: [{
233
+ type: Input,
234
+ args: ['aria-checked']
235
+ }], ariaDisabled: [{
236
+ type: Input,
237
+ args: ['aria-disabled']
238
+ }], ariaExpanded: [{
239
+ type: Input,
240
+ args: ['aria-expanded']
241
+ }], ariaSelected: [{
242
+ type: Input,
243
+ args: ['aria-selected']
244
+ }], ariaModal: [{
245
+ type: Input,
246
+ args: ['aria-modal']
247
+ }], ariaValueMax: [{
248
+ type: Input,
249
+ args: ['aria-valuemax']
250
+ }], ariaValueMin: [{
251
+ type: Input,
252
+ args: ['aria-valuemin']
253
+ }], ariaValueNow: [{
254
+ type: Input,
255
+ args: ['aria-valuenow']
256
+ }], ariaValueText: [{
257
+ type: Input,
258
+ args: ['aria-valuetext']
259
+ }] } });
260
+ //# sourceMappingURL=shared.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shared.js","sourceRoot":"","sources":["../../../../src/components/activity-indicator/shared.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,63 @@
1
+ import { EventEmitter } from '@angular/core';
2
+ import { type IAccessibilityProps, type IAccessibilityStateValue, type IAriaProps, type IButtonProps as ICoreButtonProps } from '@symbiote-native/components';
3
+ import type { ISymbioteEvent, ITextStyle, IStyleProp, IViewStyle } from '@symbiote-native/engine';
4
+ import * as i0 from "@angular/core";
5
+ export type IButtonProps = Omit<ICoreButtonProps, 'onPress' | 'onAccessibilityAction' | 'onAccessibilityTap' | 'onMagicTap' | 'onAccessibilityEscape'>;
6
+ export declare class Button implements IButtonProps {
7
+ private readonly elementRef;
8
+ readonly press: EventEmitter<ISymbioteEvent>;
9
+ readonly accessibilityAction: EventEmitter<ISymbioteEvent>;
10
+ readonly accessibilityTap: EventEmitter<ISymbioteEvent>;
11
+ readonly magicTap: EventEmitter<ISymbioteEvent>;
12
+ readonly accessibilityEscape: EventEmitter<ISymbioteEvent>;
13
+ title: string;
14
+ color?: string;
15
+ disabled?: boolean;
16
+ touchSoundDisabled?: boolean;
17
+ testID?: string;
18
+ hasTVPreferredFocus?: boolean;
19
+ nextFocusDown?: number;
20
+ nextFocusForward?: number;
21
+ nextFocusLeft?: number;
22
+ nextFocusRight?: number;
23
+ nextFocusUp?: number;
24
+ nativeID?: string;
25
+ accessible?: boolean;
26
+ accessibilityLabel?: string;
27
+ accessibilityHint?: string;
28
+ accessibilityRole?: IAccessibilityProps['accessibilityRole'];
29
+ accessibilityState?: IAccessibilityStateValue;
30
+ accessibilityValue?: IAccessibilityProps['accessibilityValue'];
31
+ accessibilityActions?: IAccessibilityProps['accessibilityActions'];
32
+ accessibilityLabelledBy?: string | string[];
33
+ importantForAccessibility?: IAccessibilityProps['importantForAccessibility'];
34
+ accessibilityLiveRegion?: IAccessibilityProps['accessibilityLiveRegion'];
35
+ screenReaderFocusable?: boolean;
36
+ accessibilityViewIsModal?: boolean;
37
+ accessibilityElementsHidden?: boolean;
38
+ accessibilityIgnoresInvertColors?: boolean;
39
+ accessibilityLanguage?: string;
40
+ accessibilityRespondsToUserInteraction?: boolean;
41
+ accessibilityShowsLargeContentViewer?: boolean;
42
+ accessibilityLargeContentTitle?: string;
43
+ role?: IAriaProps['role'];
44
+ ariaLabel?: string;
45
+ ariaLabelledBy?: string;
46
+ ariaLive?: IAriaProps['aria-live'];
47
+ ariaHidden?: boolean;
48
+ ariaBusy?: boolean;
49
+ ariaChecked?: boolean | 'mixed';
50
+ ariaDisabled?: boolean;
51
+ ariaExpanded?: boolean;
52
+ ariaSelected?: boolean;
53
+ ariaModal?: boolean;
54
+ ariaValueMax?: number;
55
+ ariaValueMin?: number;
56
+ ariaValueNow?: number;
57
+ ariaValueText?: string;
58
+ readonly buttonRole = "button";
59
+ get textStyle(): ITextStyle;
60
+ get anchorStyle(): IStyleProp<IViewStyle> | undefined;
61
+ static ɵfac: i0.ɵɵFactoryDeclaration<Button, never>;
62
+ static ɵcmp: i0.ɵɵComponentDeclaration<Button, "Button", never, { "title": { "alias": "title"; "required": false; }; "color": { "alias": "color"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "touchSoundDisabled": { "alias": "touchSoundDisabled"; "required": false; }; "testID": { "alias": "testID"; "required": false; }; "hasTVPreferredFocus": { "alias": "hasTVPreferredFocus"; "required": false; }; "nextFocusDown": { "alias": "nextFocusDown"; "required": false; }; "nextFocusForward": { "alias": "nextFocusForward"; "required": false; }; "nextFocusLeft": { "alias": "nextFocusLeft"; "required": false; }; "nextFocusRight": { "alias": "nextFocusRight"; "required": false; }; "nextFocusUp": { "alias": "nextFocusUp"; "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; }; "ariaLabel": { "alias": "aria-label"; "required": false; }; "ariaLabelledBy": { "alias": "aria-labelledby"; "required": false; }; "ariaLive": { "alias": "aria-live"; "required": false; }; "ariaHidden": { "alias": "aria-hidden"; "required": false; }; "ariaBusy": { "alias": "aria-busy"; "required": false; }; "ariaChecked": { "alias": "aria-checked"; "required": false; }; "ariaDisabled": { "alias": "aria-disabled"; "required": false; }; "ariaExpanded": { "alias": "aria-expanded"; "required": false; }; "ariaSelected": { "alias": "aria-selected"; "required": false; }; "ariaModal": { "alias": "aria-modal"; "required": false; }; "ariaValueMax": { "alias": "aria-valuemax"; "required": false; }; "ariaValueMin": { "alias": "aria-valuemin"; "required": false; }; "ariaValueNow": { "alias": "aria-valuenow"; "required": false; }; "ariaValueText": { "alias": "aria-valuetext"; "required": false; }; }, { "press": "press"; "accessibilityAction": "accessibilityAction"; "accessibilityTap": "accessibilityTap"; "magicTap": "magicTap"; "accessibilityEscape": "accessibilityEscape"; }, never, never, true, never>;
63
+ }