@symbiote-native/angular 1.0.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 (248) hide show
  1. package/README.md +13 -10
  2. package/babel-register-composed.cjs +41 -19
  3. package/bin/symbiote-angular-dev.cjs +16 -4
  4. package/build/angular/anchor-host-registry.js +1 -17
  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} +1 -1
  22. package/build/angular/components/{image/shared.js → image-shared.js} +7 -2
  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.js +11 -17
  28. package/build/angular/components/keyboard-avoiding-view/index.js.map +1 -1
  29. package/build/angular/components/modal/index.d.ts +1 -0
  30. package/build/angular/components/modal/index.js +19 -12
  31. package/build/angular/components/modal/index.js.map +1 -1
  32. package/build/angular/components/pressable-props.d.ts +32 -0
  33. package/build/angular/components/pressable-props.js +11 -0
  34. package/build/angular/components/pressable-props.js.map +1 -0
  35. package/build/angular/components/refresh-control-props.d.ts +16 -0
  36. package/build/angular/components/refresh-control-props.js +14 -0
  37. package/build/angular/components/refresh-control-props.js.map +1 -0
  38. package/build/angular/components/safe-area-view-props.d.ts +7 -0
  39. package/build/angular/components/safe-area-view-props.js +11 -0
  40. package/build/angular/components/safe-area-view-props.js.map +1 -0
  41. package/build/angular/components/scroll-view-props.d.ts +76 -0
  42. package/build/angular/components/scroll-view-props.js +18 -0
  43. package/build/angular/components/scroll-view-props.js.map +1 -0
  44. package/build/angular/components/text-input-props.d.ts +45 -0
  45. package/build/angular/components/text-input-props.js +18 -0
  46. package/build/angular/components/text-input-props.js.map +1 -0
  47. package/build/angular/components/touchable-native-feedback/touchable-native-feedback-props.d.ts +6 -0
  48. package/build/angular/components/touchable-native-feedback/touchable-native-feedback-props.js +2 -0
  49. package/build/angular/components/touchable-native-feedback/touchable-native-feedback-props.js.map +1 -0
  50. package/build/angular/components/touchable-props.d.ts +14 -0
  51. package/build/angular/components/touchable-props.js +13 -0
  52. package/build/angular/components/touchable-props.js.map +1 -0
  53. package/build/angular/components/touchable-without-feedback/touchable-without-feedback-props.d.ts +3 -0
  54. package/build/angular/components/touchable-without-feedback/touchable-without-feedback-props.js +2 -0
  55. package/build/angular/components/touchable-without-feedback/touchable-without-feedback-props.js.map +1 -0
  56. package/build/angular/components/virtualized-list/index.d.ts +5 -1
  57. package/build/angular/components/virtualized-list/index.js +366 -280
  58. package/build/angular/components/virtualized-list/index.js.map +1 -1
  59. package/build/angular/components.d.ts +20 -26
  60. package/build/angular/components.js +12 -14
  61. package/build/angular/components.js.map +1 -1
  62. package/build/angular/create-portal/index.d.ts +2 -2
  63. package/build/angular/create-portal/index.js +5 -5
  64. package/build/angular/create-tunnel/index.js +1 -1
  65. package/build/angular/element-props.d.ts +53 -0
  66. package/build/angular/element-props.js +2 -0
  67. package/build/angular/element-props.js.map +1 -0
  68. package/build/angular/elements.d.ts +528 -0
  69. package/build/angular/elements.js +1444 -0
  70. package/build/angular/elements.js.map +1 -0
  71. package/build/angular/host-instance/index.js +1 -1
  72. package/build/angular/index.d.ts +4 -2
  73. package/build/angular/index.js +15 -1
  74. package/build/angular/index.js.map +1 -1
  75. package/build/angular/modules/animated/create-animated-component.d.ts +5 -6
  76. package/build/angular/modules/animated/create-animated-component.js +60 -73
  77. package/build/angular/modules/animated/create-animated-component.js.map +1 -1
  78. package/build/angular/modules/animated/index.js +1 -1
  79. package/build/angular/modules/animated/index.js.map +1 -1
  80. package/build/angular/modules/image/index.d.ts +3 -0
  81. package/build/angular/modules/image/index.js +16 -0
  82. package/build/angular/modules/image/index.js.map +1 -0
  83. package/build/angular/primitives/index.d.ts +18 -18
  84. package/build/angular/primitives/index.js +40 -36
  85. package/build/angular/primitives/index.js.map +1 -1
  86. package/build/angular/primitives/shared.d.ts +2 -3
  87. package/build/angular/primitives/shared.js +8 -53
  88. package/build/angular/primitives/shared.js.map +1 -1
  89. package/build/angular/register.d.ts +1 -1
  90. package/build/angular/register.js +12 -31
  91. package/build/angular/register.js.map +1 -1
  92. package/build/angular/render/index.js +3 -3
  93. package/build/angular/render/index.js.map +1 -1
  94. package/build/angular/renderer/index.js +113 -67
  95. package/build/angular/renderer/index.js.map +1 -1
  96. package/build/angular/renderer/value-change.d.ts +2 -0
  97. package/build/angular/renderer/value-change.js +9 -0
  98. package/build/angular/renderer/value-change.js.map +1 -0
  99. package/metro-config.cjs +23 -5
  100. package/metro-css-parser.cjs +2 -1
  101. package/package.json +5 -14
  102. package/src/anchor-host-registry.ts +1 -17
  103. package/src/change-detection-flush.ts +120 -0
  104. package/src/components/activity-indicator-props.ts +21 -0
  105. package/src/components/button-props.ts +26 -0
  106. package/src/components/flat-list/index.ts +12 -4
  107. package/src/components/image-background-props.ts +24 -0
  108. package/src/components/{image/shared.ts → image-shared.ts} +6 -1
  109. package/src/components/input-accessory-view-props.ts +21 -0
  110. package/src/components/keyboard-avoiding-view/index.ts +6 -9
  111. package/src/components/modal/index.ts +15 -7
  112. package/src/components/pressable-props.ts +73 -0
  113. package/src/components/refresh-control-props.ts +43 -0
  114. package/src/components/safe-area-view-props.ts +28 -0
  115. package/src/components/scroll-view-props.ts +109 -0
  116. package/src/components/text-input-props.ts +72 -0
  117. package/src/components/touchable-native-feedback/touchable-native-feedback-props.ts +23 -0
  118. package/src/components/touchable-props.ts +30 -0
  119. package/src/components/touchable-without-feedback/touchable-without-feedback-props.ts +21 -0
  120. package/src/components/virtualized-list/index.ts +239 -156
  121. package/src/components.ts +84 -35
  122. package/src/create-portal/index.ts +5 -5
  123. package/src/create-tunnel/index.ts +1 -1
  124. package/src/diagnostics.ts +1 -1
  125. package/src/element-props.ts +90 -0
  126. package/src/elements.ts +919 -0
  127. package/src/host-instance/index.ts +1 -1
  128. package/src/index.ts +52 -15
  129. package/src/modules/animated/create-animated-component.ts +50 -55
  130. package/src/modules/animated/index.ts +1 -1
  131. package/src/modules/image/index.ts +18 -0
  132. package/src/primitives/index.ts +22 -18
  133. package/src/primitives/shared.ts +11 -44
  134. package/src/register.ts +12 -40
  135. package/src/render/index.ts +3 -3
  136. package/src/renderer/index.ts +122 -73
  137. package/src/renderer/value-change.ts +8 -0
  138. package/babel-lower-host-primitives.cjs +0 -636
  139. package/build/angular/components/activity-indicator/index.android.d.ts +0 -13
  140. package/build/angular/components/activity-indicator/index.android.js +0 -29
  141. package/build/angular/components/activity-indicator/index.android.js.map +0 -1
  142. package/build/angular/components/activity-indicator/index.d.ts +0 -1
  143. package/build/angular/components/activity-indicator/index.ios.d.ts +0 -9
  144. package/build/angular/components/activity-indicator/index.ios.js +0 -26
  145. package/build/angular/components/activity-indicator/index.ios.js.map +0 -1
  146. package/build/angular/components/activity-indicator/index.js +0 -4
  147. package/build/angular/components/activity-indicator/index.js.map +0 -1
  148. package/build/angular/components/activity-indicator/shared.d.ts +0 -67
  149. package/build/angular/components/activity-indicator/shared.js +0 -260
  150. package/build/angular/components/activity-indicator/shared.js.map +0 -1
  151. package/build/angular/components/button.d.ts +0 -68
  152. package/build/angular/components/button.js +0 -360
  153. package/build/angular/components/button.js.map +0 -1
  154. package/build/angular/components/image/index.android.d.ts +0 -15
  155. package/build/angular/components/image/index.android.js +0 -83
  156. package/build/angular/components/image/index.android.js.map +0 -1
  157. package/build/angular/components/image/index.d.ts +0 -1
  158. package/build/angular/components/image/index.ios.d.ts +0 -15
  159. package/build/angular/components/image/index.ios.js +0 -83
  160. package/build/angular/components/image/index.ios.js.map +0 -1
  161. package/build/angular/components/image/index.js +0 -3
  162. package/build/angular/components/image/index.js.map +0 -1
  163. package/build/angular/components/image/shared.js.map +0 -1
  164. package/build/angular/components/image-background.d.ts +0 -85
  165. package/build/angular/components/image-background.js +0 -443
  166. package/build/angular/components/image-background.js.map +0 -1
  167. package/build/angular/components/input-accessory-view/index.d.ts +0 -66
  168. package/build/angular/components/input-accessory-view/index.js +0 -287
  169. package/build/angular/components/input-accessory-view/index.js.map +0 -1
  170. package/build/angular/components/pressable/index.d.ts +0 -134
  171. package/build/angular/components/pressable/index.js +0 -514
  172. package/build/angular/components/pressable/index.js.map +0 -1
  173. package/build/angular/components/refresh-control/index.d.ts +0 -91
  174. package/build/angular/components/refresh-control/index.js +0 -382
  175. package/build/angular/components/refresh-control/index.js.map +0 -1
  176. package/build/angular/components/safe-area-view/index.d.ts +0 -64
  177. package/build/angular/components/safe-area-view/index.js +0 -287
  178. package/build/angular/components/safe-area-view/index.js.map +0 -1
  179. package/build/angular/components/scroll-view/index.android.d.ts +0 -20
  180. package/build/angular/components/scroll-view/index.android.js +0 -262
  181. package/build/angular/components/scroll-view/index.android.js.map +0 -1
  182. package/build/angular/components/scroll-view/index.d.ts +0 -3
  183. package/build/angular/components/scroll-view/index.ios.d.ts +0 -8
  184. package/build/angular/components/scroll-view/index.ios.js +0 -92
  185. package/build/angular/components/scroll-view/index.ios.js.map +0 -1
  186. package/build/angular/components/scroll-view/index.js +0 -6
  187. package/build/angular/components/scroll-view/index.js.map +0 -1
  188. package/build/angular/components/scroll-view/projection.d.ts +0 -67
  189. package/build/angular/components/scroll-view/projection.js +0 -560
  190. package/build/angular/components/scroll-view/projection.js.map +0 -1
  191. package/build/angular/components/scroll-view/shared.d.ts +0 -241
  192. package/build/angular/components/scroll-view/shared.js +0 -848
  193. package/build/angular/components/scroll-view/shared.js.map +0 -1
  194. package/build/angular/components/scroll-view/sticky-header.d.ts +0 -40
  195. package/build/angular/components/scroll-view/sticky-header.js +0 -224
  196. package/build/angular/components/scroll-view/sticky-header.js.map +0 -1
  197. package/build/angular/components/switch/index.android.d.ts +0 -24
  198. package/build/angular/components/switch/index.android.js +0 -112
  199. package/build/angular/components/switch/index.android.js.map +0 -1
  200. package/build/angular/components/switch/index.d.ts +0 -1
  201. package/build/angular/components/switch/index.ios.d.ts +0 -23
  202. package/build/angular/components/switch/index.ios.js +0 -111
  203. package/build/angular/components/switch/index.ios.js.map +0 -1
  204. package/build/angular/components/switch/index.js +0 -4
  205. package/build/angular/components/switch/index.js.map +0 -1
  206. package/build/angular/components/switch/shared.d.ts +0 -49
  207. package/build/angular/components/switch/shared.js +0 -191
  208. package/build/angular/components/switch/shared.js.map +0 -1
  209. package/build/angular/components/text-input.d.ts +0 -167
  210. package/build/angular/components/text-input.js +0 -684
  211. package/build/angular/components/text-input.js.map +0 -1
  212. package/build/angular/components/touchable/index.d.ts +0 -283
  213. package/build/angular/components/touchable/index.js +0 -1453
  214. package/build/angular/components/touchable/index.js.map +0 -1
  215. package/build/angular/components/touchable-native-feedback/index.d.ts +0 -87
  216. package/build/angular/components/touchable-native-feedback/index.js +0 -409
  217. package/build/angular/components/touchable-native-feedback/index.js.map +0 -1
  218. package/build/angular/state-style.d.ts +0 -9
  219. package/build/angular/state-style.js +0 -39
  220. package/build/angular/state-style.js.map +0 -1
  221. package/metro-transformer.cjs +0 -69
  222. package/src/components/activity-indicator/index.android.ts +0 -23
  223. package/src/components/activity-indicator/index.ios.ts +0 -21
  224. package/src/components/activity-indicator/index.ts +0 -4
  225. package/src/components/activity-indicator/shared.ts +0 -225
  226. package/src/components/button.ts +0 -237
  227. package/src/components/image/index.android.ts +0 -95
  228. package/src/components/image/index.ios.ts +0 -95
  229. package/src/components/image/index.ts +0 -3
  230. package/src/components/image-background.ts +0 -308
  231. package/src/components/input-accessory-view/index.ts +0 -246
  232. package/src/components/pressable/index.ts +0 -522
  233. package/src/components/refresh-control/index.ts +0 -349
  234. package/src/components/safe-area-view/index.ts +0 -247
  235. package/src/components/scroll-view/index.android.ts +0 -205
  236. package/src/components/scroll-view/index.ios.ts +0 -81
  237. package/src/components/scroll-view/index.ts +0 -7
  238. package/src/components/scroll-view/projection.ts +0 -713
  239. package/src/components/scroll-view/shared.ts +0 -1093
  240. package/src/components/scroll-view/sticky-header.ts +0 -267
  241. package/src/components/switch/index.android.ts +0 -113
  242. package/src/components/switch/index.ios.ts +0 -112
  243. package/src/components/switch/index.ts +0 -4
  244. package/src/components/switch/shared.ts +0 -284
  245. package/src/components/text-input.ts +0 -669
  246. package/src/components/touchable/index.ts +0 -956
  247. package/src/components/touchable-native-feedback/index.ts +0 -327
  248. package/src/state-style.ts +0 -39
@@ -1,66 +0,0 @@
1
- import { EventEmitter, type DoCheck, type OnChanges } from '@angular/core';
2
- import { type IAccessibilityProps, type IAccessibilityStateValue, type IAriaProps } from '@symbiote-native/components';
3
- import { type IStyleProp, type ISymbioteEvent, type IViewStyle } from '@symbiote-native/engine';
4
- import * as i0 from "@angular/core";
5
- import * as i1 from "../../primitives/shared";
6
- export interface IAngularInputAccessoryViewProps extends IAccessibilityProps, IAriaProps {
7
- nativeID?: string;
8
- backgroundColor?: string;
9
- style?: IStyleProp<IViewStyle>;
10
- }
11
- export type IAngularInputAccessoryViewInputs = Omit<IAngularInputAccessoryViewProps, 'onAccessibilityAction' | 'onAccessibilityTap' | 'onMagicTap' | 'onAccessibilityEscape'>;
12
- export declare class InputAccessoryView implements IAngularInputAccessoryViewInputs, OnChanges, DoCheck {
13
- nativeID?: string;
14
- backgroundColor?: string;
15
- style?: IStyleProp<IViewStyle>;
16
- readonly accessibilityAction: EventEmitter<ISymbioteEvent>;
17
- readonly accessibilityTap: EventEmitter<ISymbioteEvent>;
18
- readonly magicTap: EventEmitter<ISymbioteEvent>;
19
- readonly accessibilityEscape: EventEmitter<ISymbioteEvent>;
20
- testID?: string;
21
- accessible?: boolean;
22
- accessibilityLabel?: string;
23
- accessibilityHint?: string;
24
- accessibilityRole?: IAccessibilityProps['accessibilityRole'];
25
- accessibilityState?: IAccessibilityStateValue;
26
- accessibilityValue?: IAccessibilityProps['accessibilityValue'];
27
- accessibilityActions?: IAccessibilityProps['accessibilityActions'];
28
- accessibilityLabelledBy?: string | string[];
29
- importantForAccessibility?: IAccessibilityProps['importantForAccessibility'];
30
- accessibilityLiveRegion?: IAccessibilityProps['accessibilityLiveRegion'];
31
- screenReaderFocusable?: boolean;
32
- accessibilityViewIsModal?: boolean;
33
- accessibilityElementsHidden?: boolean;
34
- accessibilityIgnoresInvertColors?: boolean;
35
- accessibilityLanguage?: string;
36
- accessibilityRespondsToUserInteraction?: boolean;
37
- accessibilityShowsLargeContentViewer?: boolean;
38
- accessibilityLargeContentTitle?: string;
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
- private readonly elementRef;
55
- private emit;
56
- private eventEmitterHandler;
57
- private get descriptor();
58
- private readonly hostPropsRevision;
59
- private lastAnchorStyle;
60
- ngOnChanges(): void;
61
- ngDoCheck(): void;
62
- readonly hostProps: import("@angular/core").Signal<Record<string, unknown>>;
63
- private accessibilityInputs;
64
- static ɵfac: i0.ɵɵFactoryDeclaration<InputAccessoryView, never>;
65
- static ɵcmp: i0.ɵɵComponentDeclaration<InputAccessoryView, "InputAccessoryView", never, { "nativeID": { "alias": "nativeID"; "required": false; }; "backgroundColor": { "alias": "backgroundColor"; "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; }; }, { "accessibilityAction": "accessibilityAction"; "accessibilityTap": "accessibilityTap"; "magicTap": "magicTap"; "accessibilityEscape": "accessibilityEscape"; }, never, ["*"], true, [{ directive: typeof i1.SymbioteStyleInputDirective; inputs: { "style": "style"; }; outputs: {}; }]>;
66
- }
@@ -1,287 +0,0 @@
1
- // InputAccessoryView, the Angular lifecycle half (iOS). RCTInputAccessoryView is a real Fabric
2
- // host node that docks its content above the keyboard; a TextInput points at it by nativeID through
3
- // its inputAccessoryViewID. The host-node assembly (nativeID / backgroundColor / style /
4
- // accessibility forwarding) lives framework-agnostic in
5
- // @symbiote-native/components/renderInputAccessoryView and is shared verbatim with React/Vue; here
6
- // Angular supplies only the lifecycle — it folds aria/role, reads the resolved props off the
7
- // Descriptor, and nests the user children under the host via <ng-content>. The Angular twin of the
8
- // React/Vue InputAccessoryView. No platform branch, so this stays flat.
9
- import { CUSTOM_ELEMENTS_SCHEMA, ChangeDetectionStrategy, Component, computed, ElementRef, EventEmitter, inject, Input, Output, signal, } from '@angular/core';
10
- import { renderInputAccessoryView, resolveAccessibilityProps, } from '@symbiote-native/components';
11
- import { isSymbioteEvent, } from '@symbiote-native/engine';
12
- import { anchorHostStyle, InputAccessoryViewHost, SymbioteHostPropsDirective, SymbioteStyleInputDirective, } from '../../primitives';
13
- import * as i0 from "@angular/core";
14
- import * as i1 from "../../primitives/shared";
15
- export class InputAccessoryView {
16
- nativeID;
17
- backgroundColor;
18
- style;
19
- accessibilityAction = new EventEmitter();
20
- accessibilityTap = new EventEmitter();
21
- magicTap = new EventEmitter();
22
- accessibilityEscape = new EventEmitter();
23
- testID;
24
- accessible;
25
- accessibilityLabel;
26
- accessibilityHint;
27
- accessibilityRole;
28
- accessibilityState;
29
- accessibilityValue;
30
- accessibilityActions;
31
- accessibilityLabelledBy;
32
- importantForAccessibility;
33
- accessibilityLiveRegion;
34
- screenReaderFocusable;
35
- accessibilityViewIsModal;
36
- accessibilityElementsHidden;
37
- accessibilityIgnoresInvertColors;
38
- accessibilityLanguage;
39
- accessibilityRespondsToUserInteraction;
40
- accessibilityShowsLargeContentViewer;
41
- accessibilityLargeContentTitle;
42
- role;
43
- ariaLabel;
44
- ariaLabelledBy;
45
- ariaLive;
46
- ariaHidden;
47
- ariaBusy;
48
- ariaChecked;
49
- ariaDisabled;
50
- ariaExpanded;
51
- ariaSelected;
52
- ariaModal;
53
- ariaValueMax;
54
- ariaValueMin;
55
- ariaValueNow;
56
- ariaValueText;
57
- // This component's OWN host — the non-painting anchor `class="..."` at the use site resolves
58
- // onto (see anchorHostStyle's doc comment). InputAccessoryView has no inner ViewChild, so this
59
- // is the only ElementRef in the class.
60
- elementRef = inject(ElementRef);
61
- // Forward an engine event to the matching @Output(), narrowing the template's untyped $event.
62
- emit(emitter, event) {
63
- if (isSymbioteEvent(event))
64
- emitter.emit(event);
65
- }
66
- // The four accessibility events are boolean-GATED Fabric events
67
- // (`.claude/rules/fabric-boolean-event-gates.md`). `.observed`-gated, mirroring Pressable's.
68
- eventEmitterHandler(emitter) {
69
- return emitter.observed ? event => this.emit(emitter, event) : undefined;
70
- }
71
- // renderInputAccessoryView owns the host-node assembly (shared with React/Vue); the adapter reads
72
- // the resolved host props off the Descriptor it returns.
73
- get descriptor() {
74
- return renderInputAccessoryView({
75
- nativeID: this.nativeID,
76
- backgroundColor: this.backgroundColor,
77
- style: this.style,
78
- passthrough: resolveAccessibilityProps(this.accessibilityInputs()),
79
- });
80
- }
81
- // Bridges the non-reactive fields `hostProps` reads into the reactive graph, so it can memoize.
82
- // Plain fields read inside a computed() are UNTRACKED - something must signal "a dependency
83
- // changed" or the bag goes stale. Signal inputs would do this natively, but `input()` is visible
84
- // only to the AOT compiler and this package's unit suite runs on JIT (see the
85
- // `angular-adapter-change-detection` skill, §6); `signal()`/`computed()` are plain runtime APIs.
86
- hostPropsRevision = signal(0, /* @ts-ignore */
87
- ...(ngDevMode ? [{ debugName: "hostPropsRevision" }] : /* istanbul ignore next */ []));
88
- // What the anchor's class-derived style was when the bag was last built (identity, not value).
89
- lastAnchorStyle;
90
- ngOnChanges() {
91
- // The single moment Angular has finished writing every changed @Input for this pass.
92
- this.hostPropsRevision.update(revision => revision + 1);
93
- }
94
- // The anchor's class-derived style is NOT an @Input: `class="..."`/`[ngClass]` at the use site
95
- // resolves through the renderer's addClass onto this component's anchor host (see
96
- // anchorHostStyle's doc comment), so it never shows up in SimpleChanges and ngOnChanges alone
97
- // would leave a later class toggle stranded. ngDoCheck runs at exactly the cadence the old
98
- // getter was re-read, and bumps only on a real identity change.
99
- ngDoCheck() {
100
- const anchorStyle = anchorHostStyle(this.elementRef);
101
- if (anchorStyle === this.lastAnchorStyle)
102
- return;
103
- this.lastAnchorStyle = anchorStyle;
104
- this.hostPropsRevision.update(revision => revision + 1);
105
- }
106
- // The anchor's class-derived style goes FIRST, the Descriptor's resolved style SECOND —
107
- // flattenStyle's later-wins collapse keeps an explicit [style] winning over its ambient class.
108
- //
109
- // A computed(), not a getter: Angular re-reads a template getter on every refresh of this view
110
- // and `[symbioteHostProps]` compares by REFERENCE, so a freshly rebuilt (but identical) bag
111
- // re-pushes every key through renderer.setProperty -> the engine's prop routing - and this one
112
- // re-runs renderInputAccessoryView to build it.
113
- hostProps = computed(() => {
114
- this.hostPropsRevision();
115
- const descriptorProps = this.descriptor.props;
116
- return {
117
- ...descriptorProps,
118
- style: [anchorHostStyle(this.elementRef), descriptorProps.style],
119
- onAccessibilityAction: this.eventEmitterHandler(this.accessibilityAction),
120
- onAccessibilityTap: this.eventEmitterHandler(this.accessibilityTap),
121
- onMagicTap: this.eventEmitterHandler(this.magicTap),
122
- onAccessibilityEscape: this.eventEmitterHandler(this.accessibilityEscape),
123
- };
124
- }, /* @ts-ignore */
125
- ...(ngDevMode ? [{ debugName: "hostProps" }] : /* istanbul ignore next */ []));
126
- // Typed as the a11y intersection WITH the string index (the bag renderInputAccessoryView spreads
127
- // into the host props), so resolveAccessibilityProps's result stays assignable to passthrough.
128
- accessibilityInputs() {
129
- return {
130
- testID: this.testID,
131
- accessible: this.accessible,
132
- accessibilityLabel: this.accessibilityLabel,
133
- accessibilityHint: this.accessibilityHint,
134
- accessibilityRole: this.accessibilityRole,
135
- accessibilityState: this.accessibilityState,
136
- accessibilityValue: this.accessibilityValue,
137
- accessibilityActions: this.accessibilityActions,
138
- accessibilityLabelledBy: this.accessibilityLabelledBy,
139
- importantForAccessibility: this.importantForAccessibility,
140
- accessibilityLiveRegion: this.accessibilityLiveRegion,
141
- screenReaderFocusable: this.screenReaderFocusable,
142
- accessibilityViewIsModal: this.accessibilityViewIsModal,
143
- accessibilityElementsHidden: this.accessibilityElementsHidden,
144
- accessibilityIgnoresInvertColors: this.accessibilityIgnoresInvertColors,
145
- accessibilityLanguage: this.accessibilityLanguage,
146
- accessibilityRespondsToUserInteraction: this.accessibilityRespondsToUserInteraction,
147
- accessibilityShowsLargeContentViewer: this.accessibilityShowsLargeContentViewer,
148
- accessibilityLargeContentTitle: this.accessibilityLargeContentTitle,
149
- role: this.role,
150
- 'aria-label': this.ariaLabel,
151
- 'aria-labelledby': this.ariaLabelledBy,
152
- 'aria-live': this.ariaLive,
153
- 'aria-hidden': this.ariaHidden,
154
- 'aria-busy': this.ariaBusy,
155
- 'aria-checked': this.ariaChecked,
156
- 'aria-disabled': this.ariaDisabled,
157
- 'aria-expanded': this.ariaExpanded,
158
- 'aria-selected': this.ariaSelected,
159
- 'aria-modal': this.ariaModal,
160
- 'aria-valuemax': this.ariaValueMax,
161
- 'aria-valuemin': this.ariaValueMin,
162
- 'aria-valuenow': this.ariaValueNow,
163
- 'aria-valuetext': this.ariaValueText,
164
- };
165
- }
166
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: InputAccessoryView, deps: [], target: i0.ɵɵFactoryTarget.Component });
167
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "22.0.8", type: InputAccessoryView, isStandalone: true, selector: "InputAccessoryView", inputs: { nativeID: "nativeID", backgroundColor: "backgroundColor", 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: { accessibilityAction: "accessibilityAction", accessibilityTap: "accessibilityTap", magicTap: "magicTap", accessibilityEscape: "accessibilityEscape" }, usesOnChanges: true, hostDirectives: [{ directive: i1.SymbioteStyleInputDirective, inputs: ["style", "style"] }], ngImport: i0, template: `
168
- <symbiote-input-accessory-view [symbioteHostProps]="hostProps()">
169
- <ng-content></ng-content>
170
- </symbiote-input-accessory-view>
171
- `, isInline: true, dependencies: [{ kind: "component", type: InputAccessoryViewHost, selector: "symbiote-input-accessory-view" }, { kind: "directive", type: SymbioteHostPropsDirective, selector: "[symbioteHostProps]", inputs: ["symbioteHostProps"], exportAs: ["symbioteHost"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
172
- }
173
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: InputAccessoryView, decorators: [{
174
- type: Component,
175
- args: [{
176
- selector: 'InputAccessoryView',
177
- standalone: true,
178
- hostDirectives: [
179
- { directive: SymbioteStyleInputDirective, inputs: ['style'] },
180
- ],
181
- schemas: [CUSTOM_ELEMENTS_SCHEMA],
182
- imports: [InputAccessoryViewHost, SymbioteHostPropsDirective],
183
- changeDetection: ChangeDetectionStrategy.OnPush,
184
- template: `
185
- <symbiote-input-accessory-view [symbioteHostProps]="hostProps()">
186
- <ng-content></ng-content>
187
- </symbiote-input-accessory-view>
188
- `,
189
- }]
190
- }], propDecorators: { nativeID: [{
191
- type: Input
192
- }], backgroundColor: [{
193
- type: Input
194
- }], style: [{
195
- type: Input
196
- }], accessibilityAction: [{
197
- type: Output
198
- }], accessibilityTap: [{
199
- type: Output
200
- }], magicTap: [{
201
- type: Output
202
- }], accessibilityEscape: [{
203
- type: Output
204
- }], testID: [{
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/input-accessory-view/index.ts"],"names":[],"mappings":"AAAA,+FAA+F;AAC/F,oGAAoG;AACpG,yFAAyF;AACzF,wDAAwD;AACxD,mGAAmG;AACnG,6FAA6F;AAC7F,mGAAmG;AACnG,wEAAwE;AAExE,OAAO,EACL,sBAAsB,EACtB,uBAAuB,EACvB,SAAS,EACT,QAAQ,EACR,UAAU,EACV,YAAY,EACZ,MAAM,EACN,KAAK,EACL,MAAM,EACN,MAAM,GAGP,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,wBAAwB,EACxB,yBAAyB,GAI1B,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,eAAe,GAIhB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,eAAe,EACf,sBAAsB,EACtB,0BAA0B,EAC1B,2BAA2B,GAC5B,MAAM,kBAAkB,CAAC;;;AAsC1B,MAAM,OAAO,kBAAkB;IAGpB,QAAQ,CAAU;IAClB,eAAe,CAAU;IACzB,KAAK,CAA0B;IACrB,mBAAmB,GAAG,IAAI,YAAY,EAAkB,CAAC;IACzD,gBAAgB,GAAG,IAAI,YAAY,EAAkB,CAAC;IACtD,QAAQ,GAAG,IAAI,YAAY,EAAkB,CAAC;IAC9C,mBAAmB,GAAG,IAAI,YAAY,EAAkB,CAAC;IACnE,MAAM,CAAU;IAChB,UAAU,CAAW;IACrB,kBAAkB,CAAU;IAC5B,iBAAiB,CAAU;IAC3B,iBAAiB,CAA4C;IAC7D,kBAAkB,CAA4B;IAC9C,kBAAkB,CAA6C;IAC/D,oBAAoB,CAA+C;IACnE,uBAAuB,CAAqB;IAErD,yBAAyB,CAAoD;IAE7E,uBAAuB,CAAkD;IAChE,qBAAqB,CAAW;IAChC,wBAAwB,CAAW;IACnC,2BAA2B,CAAW;IACtC,gCAAgC,CAAW;IAC3C,qBAAqB,CAAU;IAC/B,sCAAsC,CAAW;IACjD,oCAAoC,CAAW;IAC/C,8BAA8B,CAAU;IACxC,IAAI,CAAsB;IACd,SAAS,CAAU;IACd,cAAc,CAAU;IAC9B,QAAQ,CAA2B;IACjC,UAAU,CAAW;IACvB,QAAQ,CAAW;IAChB,WAAW,CAAqB;IAC/B,YAAY,CAAW;IACvB,YAAY,CAAW;IACvB,YAAY,CAAW;IAC1B,SAAS,CAAW;IACjB,YAAY,CAAU;IACtB,YAAY,CAAU;IACtB,YAAY,CAAU;IACrB,aAAa,CAAU;IAEhD,6FAA6F;IAC7F,+FAA+F;IAC/F,uCAAuC;IACtB,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC;IAEjD,8FAA8F;IACtF,IAAI,CAAC,OAAqC,EAAE,KAAc;QAChE,IAAI,eAAe,CAAC,KAAK,CAAC;YAAE,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAClD,CAAC;IAED,gEAAgE;IAChE,6FAA6F;IACrF,mBAAmB,CACzB,OAAqC;QAErC,OAAO,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAC3E,CAAC;IAED,kGAAkG;IAClG,yDAAyD;IACzD,IAAY,UAAU;QACpB,OAAO,wBAAwB,CAAC;YAC9B,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,eAAe,EAAE,IAAI,CAAC,eAAe;YACrC,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,WAAW,EAAE,yBAAyB,CAAC,IAAI,CAAC,mBAAmB,EAAE,CAAC;SACnE,CAAC,CAAC;IACL,CAAC;IAED,gGAAgG;IAChG,4FAA4F;IAC5F,iGAAiG;IACjG,8EAA8E;IAC9E,iGAAiG;IAChF,iBAAiB,GAAG,MAAM,CAAC,CAAC;0FAAC,CAAC;IAC/C,+FAA+F;IACvF,eAAe,CAAU;IAEjC,WAAW;QACT,qFAAqF;QACrF,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC;IAC1D,CAAC;IAED,+FAA+F;IAC/F,kFAAkF;IAClF,8FAA8F;IAC9F,2FAA2F;IAC3F,gEAAgE;IAChE,SAAS;QACP,MAAM,WAAW,GAAG,eAAe,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACrD,IAAI,WAAW,KAAK,IAAI,CAAC,eAAe;YAAE,OAAO;QACjD,IAAI,CAAC,eAAe,GAAG,WAAW,CAAC;QACnC,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC;IAC1D,CAAC;IAED,wFAAwF;IACxF,+FAA+F;IAC/F,EAAE;IACF,+FAA+F;IAC/F,4FAA4F;IAC5F,+FAA+F;IAC/F,gDAAgD;IACvC,SAAS,GAAG,QAAQ,CAA0B,GAAG,EAAE;QAC1D,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACzB,MAAM,eAAe,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC;QAC9C,OAAO;YACL,GAAG,eAAe;YAClB,KAAK,EAAE,CAAC,eAAe,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,eAAe,CAAC,KAAK,CAAC;YAChE,qBAAqB,EAAE,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,mBAAmB,CAAC;YACzE,kBAAkB,EAAE,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,gBAAgB,CAAC;YACnE,UAAU,EAAE,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,QAAQ,CAAC;YACnD,qBAAqB,EAAE,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,mBAAmB,CAAC;SAC1E,CAAC;IACJ,CAAC;kFAAC,CAAC;IAEH,iGAAiG;IACjG,+FAA+F;IACvF,mBAAmB;QAGzB,OAAO;YACL,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,kBAAkB,EAAE,IAAI,CAAC,kBAAkB;YAC3C,iBAAiB,EAAE,IAAI,CAAC,iBAAiB;YACzC,iBAAiB,EAAE,IAAI,CAAC,iBAAiB;YACzC,kBAAkB,EAAE,IAAI,CAAC,kBAAkB;YAC3C,kBAAkB,EAAE,IAAI,CAAC,kBAAkB;YAC3C,oBAAoB,EAAE,IAAI,CAAC,oBAAoB;YAC/C,uBAAuB,EAAE,IAAI,CAAC,uBAAuB;YACrD,yBAAyB,EAAE,IAAI,CAAC,yBAAyB;YACzD,uBAAuB,EAAE,IAAI,CAAC,uBAAuB;YACrD,qBAAqB,EAAE,IAAI,CAAC,qBAAqB;YACjD,wBAAwB,EAAE,IAAI,CAAC,wBAAwB;YACvD,2BAA2B,EAAE,IAAI,CAAC,2BAA2B;YAC7D,gCAAgC,EAAE,IAAI,CAAC,gCAAgC;YACvE,qBAAqB,EAAE,IAAI,CAAC,qBAAqB;YACjD,sCAAsC,EACpC,IAAI,CAAC,sCAAsC;YAC7C,oCAAoC,EAClC,IAAI,CAAC,oCAAoC;YAC3C,8BAA8B,EAAE,IAAI,CAAC,8BAA8B;YACnE,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,YAAY,EAAE,IAAI,CAAC,SAAS;YAC5B,iBAAiB,EAAE,IAAI,CAAC,cAAc;YACtC,WAAW,EAAE,IAAI,CAAC,QAAQ;YAC1B,aAAa,EAAE,IAAI,CAAC,UAAU;YAC9B,WAAW,EAAE,IAAI,CAAC,QAAQ;YAC1B,cAAc,EAAE,IAAI,CAAC,WAAW;YAChC,eAAe,EAAE,IAAI,CAAC,YAAY;YAClC,eAAe,EAAE,IAAI,CAAC,YAAY;YAClC,eAAe,EAAE,IAAI,CAAC,YAAY;YAClC,YAAY,EAAE,IAAI,CAAC,SAAS;YAC5B,eAAe,EAAE,IAAI,CAAC,YAAY;YAClC,eAAe,EAAE,IAAI,CAAC,YAAY;YAClC,eAAe,EAAE,IAAI,CAAC,YAAY;YAClC,gBAAgB,EAAE,IAAI,CAAC,aAAa;SACrC,CAAC;IACJ,CAAC;uGArKU,kBAAkB;2FAAlB,kBAAkB,2gEANnB;;;;GAIT,4DANS,sBAAsB,0EAAE,0BAA0B;;2FAQjD,kBAAkB;kBAf9B,SAAS;mBAAC;oBACT,QAAQ,EAAE,oBAAoB;oBAC9B,UAAU,EAAE,IAAI;oBAChB,cAAc,EAAE;wBACd,EAAE,SAAS,EAAE,2BAA2B,EAAE,MAAM,EAAE,CAAC,OAAO,CAAC,EAAE;qBAC9D;oBACD,OAAO,EAAE,CAAC,sBAAsB,CAAC;oBACjC,OAAO,EAAE,CAAC,sBAAsB,EAAE,0BAA0B,CAAC;oBAC7D,eAAe,EAAE,uBAAuB,CAAC,MAAM;oBAC/C,QAAQ,EAAE;;;;GAIT;iBACF;;sBAIE,KAAK;;sBACL,KAAK;;sBACL,KAAK;;sBACL,MAAM;;sBACN,MAAM;;sBACN,MAAM;;sBACN,MAAM;;sBACN,KAAK;;sBACL,KAAK;;sBACL,KAAK;;sBACL,KAAK;;sBACL,KAAK;;sBACL,KAAK;;sBACL,KAAK;;sBACL,KAAK;;sBACL,KAAK;;sBACL,KAAK;;sBAEL,KAAK;;sBAEL,KAAK;;sBACL,KAAK;;sBACL,KAAK;;sBACL,KAAK;;sBACL,KAAK;;sBACL,KAAK;;sBACL,KAAK;;sBACL,KAAK;;sBACL,KAAK;;sBACL,KAAK;uBAAC,YAAY;;sBAClB,KAAK;uBAAC,iBAAiB;;sBACvB,KAAK;uBAAC,WAAW;;sBACjB,KAAK;uBAAC,aAAa;;sBACnB,KAAK;uBAAC,WAAW;;sBACjB,KAAK;uBAAC,cAAc;;sBACpB,KAAK;uBAAC,eAAe;;sBACrB,KAAK;uBAAC,eAAe;;sBACrB,KAAK;uBAAC,eAAe;;sBACrB,KAAK;uBAAC,YAAY;;sBAClB,KAAK;uBAAC,eAAe;;sBACrB,KAAK;uBAAC,eAAe;;sBACrB,KAAK;uBAAC,eAAe;;sBACrB,KAAK;uBAAC,gBAAgB"}
@@ -1,134 +0,0 @@
1
- import { EventEmitter, type DoCheck, type OnChanges, type OnDestroy } from '@angular/core';
2
- import { type IAccessibilityProps, type IAccessibilityStateValue, type IAriaProps, type IPressableAndroidRippleConfig, type IPressHandler, type IPressState, type IRectOffset } from '@symbiote-native/components';
3
- import { type ISymbioteEvent, type IStyleProp, type IViewStyle } from '@symbiote-native/engine';
4
- import * as i0 from "@angular/core";
5
- import * as i1 from "../../primitives/shared";
6
- export type { IPressState, IPressableAndroidRippleConfig, } from '@symbiote-native/components';
7
- export interface IAngularPressableProps extends IAccessibilityProps, IAriaProps {
8
- onPress?: IPressHandler;
9
- onPressIn?: IPressHandler;
10
- onPressOut?: IPressHandler;
11
- onPressMove?: IPressHandler;
12
- onLongPress?: IPressHandler;
13
- delayLongPress?: number;
14
- disabled?: boolean;
15
- cancelable?: boolean;
16
- hitSlop?: IRectOffset;
17
- pressRetentionOffset?: IRectOffset;
18
- unstable_pressDelay?: number;
19
- android_ripple?: IPressableAndroidRippleConfig;
20
- android_disableSound?: boolean;
21
- onHoverIn?: IPressHandler;
22
- onHoverOut?: IPressHandler;
23
- delayHoverIn?: number;
24
- delayHoverOut?: number;
25
- testID?: string;
26
- nativeID?: string;
27
- hasTVPreferredFocus?: boolean;
28
- nextFocusDown?: number;
29
- nextFocusForward?: number;
30
- nextFocusLeft?: number;
31
- nextFocusRight?: number;
32
- nextFocusUp?: number;
33
- style?: IStyleProp<IViewStyle> | ((state: IPressState) => IStyleProp<IViewStyle>);
34
- }
35
- export type IAngularPressableInputs = Omit<IAngularPressableProps, 'onPress' | 'onPressIn' | 'onPressOut' | 'onPressMove' | 'onLongPress' | 'onHoverIn' | 'onHoverOut' | 'onAccessibilityAction' | 'onAccessibilityTap' | 'onMagicTap' | 'onAccessibilityEscape'>;
36
- export declare class Pressable implements IAngularPressableInputs, OnChanges, OnDestroy, DoCheck {
37
- readonly press: EventEmitter<ISymbioteEvent>;
38
- readonly pressIn: EventEmitter<ISymbioteEvent>;
39
- readonly pressOut: EventEmitter<ISymbioteEvent>;
40
- readonly pressMove: EventEmitter<ISymbioteEvent>;
41
- readonly longPress: EventEmitter<ISymbioteEvent>;
42
- readonly hoverIn: EventEmitter<ISymbioteEvent>;
43
- readonly hoverOut: EventEmitter<ISymbioteEvent>;
44
- readonly accessibilityAction: EventEmitter<ISymbioteEvent>;
45
- readonly accessibilityTap: EventEmitter<ISymbioteEvent>;
46
- readonly magicTap: EventEmitter<ISymbioteEvent>;
47
- readonly accessibilityEscape: EventEmitter<ISymbioteEvent>;
48
- delayLongPress?: number;
49
- disabled?: boolean;
50
- cancelable?: boolean;
51
- hitSlop?: IRectOffset;
52
- pressRetentionOffset?: IRectOffset;
53
- unstable_pressDelay?: number;
54
- /** @internal Touchable* mirrors RN's Pressability minPressDuration: 0 override. */
55
- __minPressDuration: number;
56
- android_ripple?: IPressableAndroidRippleConfig;
57
- android_disableSound?: boolean;
58
- delayHoverIn?: number;
59
- delayHoverOut?: number;
60
- testID?: string;
61
- nativeID?: string;
62
- hasTVPreferredFocus?: boolean;
63
- nextFocusDown?: number;
64
- nextFocusForward?: number;
65
- nextFocusLeft?: number;
66
- nextFocusRight?: number;
67
- nextFocusUp?: number;
68
- style?: IAngularPressableProps['style'];
69
- accessible?: boolean;
70
- accessibilityLabel?: string;
71
- accessibilityHint?: string;
72
- accessibilityRole?: IAngularPressableProps['accessibilityRole'];
73
- accessibilityState?: IAccessibilityStateValue;
74
- accessibilityValue?: IAngularPressableProps['accessibilityValue'];
75
- accessibilityActions?: IAngularPressableProps['accessibilityActions'];
76
- accessibilityLabelledBy?: string | string[];
77
- importantForAccessibility?: IAccessibilityProps['importantForAccessibility'];
78
- accessibilityLiveRegion?: IAccessibilityProps['accessibilityLiveRegion'];
79
- screenReaderFocusable?: boolean;
80
- accessibilityViewIsModal?: boolean;
81
- accessibilityElementsHidden?: boolean;
82
- accessibilityIgnoresInvertColors?: boolean;
83
- accessibilityLanguage?: string;
84
- accessibilityRespondsToUserInteraction?: boolean;
85
- accessibilityShowsLargeContentViewer?: boolean;
86
- accessibilityLargeContentTitle?: string;
87
- ariaLabel?: string;
88
- ariaBusy?: boolean;
89
- ariaChecked?: boolean | 'mixed';
90
- ariaDisabled?: boolean;
91
- ariaExpanded?: boolean;
92
- ariaHidden?: boolean;
93
- ariaLabelledBy?: string;
94
- ariaLive?: IAriaProps['aria-live'];
95
- ariaSelected?: boolean;
96
- ariaModal?: boolean;
97
- ariaValueMax?: number;
98
- ariaValueMin?: number;
99
- ariaValueNow?: number;
100
- ariaValueText?: string;
101
- id?: string;
102
- role?: IAngularPressableProps['role'];
103
- private hostElement?;
104
- private readonly pressedState;
105
- get pressed(): boolean;
106
- private readonly runtime;
107
- private readonly host;
108
- private readonly changeDetector;
109
- private readonly gateDemand;
110
- private readonly elementRef;
111
- private readonly inputsRevision;
112
- private readonly anchorStyle;
113
- ngDoCheck(): void;
114
- ngOnDestroy(): void;
115
- ngOnChanges(): void;
116
- get resolvedStyle(): IStyleProp<IViewStyle> | undefined;
117
- get foldedAccessibility(): Partial<IAngularPressableProps>;
118
- get resolvedRippleProps(): Record<string, unknown> | undefined;
119
- readonly hostProps: import("@angular/core").Signal<Record<string, unknown>>;
120
- handlePressIn(event: unknown): void;
121
- handlePressOut(event: unknown): void;
122
- handlePress(event: unknown): void;
123
- handleResponderMove(event: unknown): void;
124
- claimResponder(): boolean;
125
- allowTermination(): boolean;
126
- private emit;
127
- private noteHoverNoop;
128
- private emitterHandler;
129
- private accessibilityEmitterHandler;
130
- private get handlers();
131
- private get hostNode();
132
- static ɵfac: i0.ɵɵFactoryDeclaration<Pressable, never>;
133
- static ɵcmp: i0.ɵɵComponentDeclaration<Pressable, "Pressable", never, { "delayLongPress": { "alias": "delayLongPress"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "cancelable": { "alias": "cancelable"; "required": false; }; "hitSlop": { "alias": "hitSlop"; "required": false; }; "pressRetentionOffset": { "alias": "pressRetentionOffset"; "required": false; }; "unstable_pressDelay": { "alias": "unstable_pressDelay"; "required": false; }; "__minPressDuration": { "alias": "__minPressDuration"; "required": false; }; "android_ripple": { "alias": "android_ripple"; "required": false; }; "android_disableSound": { "alias": "android_disableSound"; "required": false; }; "delayHoverIn": { "alias": "delayHoverIn"; "required": false; }; "delayHoverOut": { "alias": "delayHoverOut"; "required": false; }; "testID": { "alias": "testID"; "required": false; }; "nativeID": { "alias": "nativeID"; "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; }; "style": { "alias": "style"; "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; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; }; "ariaBusy": { "alias": "ariaBusy"; "required": false; }; "ariaChecked": { "alias": "ariaChecked"; "required": false; }; "ariaDisabled": { "alias": "ariaDisabled"; "required": false; }; "ariaExpanded": { "alias": "ariaExpanded"; "required": false; }; "ariaHidden": { "alias": "ariaHidden"; "required": false; }; "ariaLabelledBy": { "alias": "ariaLabelledBy"; "required": false; }; "ariaLive": { "alias": "ariaLive"; "required": false; }; "ariaSelected": { "alias": "ariaSelected"; "required": false; }; "ariaModal": { "alias": "ariaModal"; "required": false; }; "ariaValueMax": { "alias": "ariaValueMax"; "required": false; }; "ariaValueMin": { "alias": "ariaValueMin"; "required": false; }; "ariaValueNow": { "alias": "ariaValueNow"; "required": false; }; "ariaValueText": { "alias": "ariaValueText"; "required": false; }; "id": { "alias": "id"; "required": false; }; "role": { "alias": "role"; "required": false; }; }, { "press": "press"; "pressIn": "pressIn"; "pressOut": "pressOut"; "pressMove": "pressMove"; "longPress": "longPress"; "hoverIn": "hoverIn"; "hoverOut": "hoverOut"; "accessibilityAction": "accessibilityAction"; "accessibilityTap": "accessibilityTap"; "magicTap": "magicTap"; "accessibilityEscape": "accessibilityEscape"; }, never, ["*"], true, [{ directive: typeof i1.SymbioteStyleInputDirective; inputs: { "style": "style"; }; outputs: {}; }]>;
134
- }