@symbiote-native/angular 3.2.0 → 3.4.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 (207) hide show
  1. package/babel-register-composed.cjs +2 -0
  2. package/build/angular/accessibility-inputs.d.ts +2 -1
  3. package/build/angular/accessibility-inputs.js +4 -1
  4. package/build/angular/accessibility-inputs.js.map +1 -1
  5. package/build/angular/callback-host.d.ts +1 -1
  6. package/build/angular/callback-host.js +57 -9
  7. package/build/angular/callback-host.js.map +1 -1
  8. package/build/angular/components/checkbox-props.d.ts +2 -0
  9. package/build/angular/components/checkbox-props.js +2 -0
  10. package/build/angular/components/checkbox-props.js.map +1 -0
  11. package/build/angular/components/flat-list/flat-list-handle.d.ts +35 -0
  12. package/build/angular/components/flat-list/flat-list-handle.js +48 -0
  13. package/build/angular/components/flat-list/flat-list-handle.js.map +1 -0
  14. package/build/angular/components/flat-list/flat-list-template.d.ts +1 -1
  15. package/build/angular/components/flat-list/flat-list-template.js +16 -0
  16. package/build/angular/components/flat-list/flat-list-template.js.map +1 -1
  17. package/build/angular/components/flat-list/index.d.ts +6 -30
  18. package/build/angular/components/flat-list/index.js +6 -36
  19. package/build/angular/components/flat-list/index.js.map +1 -1
  20. package/build/angular/components/image-inputs.d.ts +4 -0
  21. package/build/angular/components/image-inputs.js +81 -0
  22. package/build/angular/components/image-inputs.js.map +1 -0
  23. package/build/angular/components/image-props-resolve.d.ts +3 -0
  24. package/build/angular/components/image-props-resolve.js +133 -0
  25. package/build/angular/components/image-props-resolve.js.map +1 -0
  26. package/build/angular/components/image-shared.d.ts +8 -6
  27. package/build/angular/components/image-shared.js +23 -212
  28. package/build/angular/components/image-shared.js.map +1 -1
  29. package/build/angular/components/input-accessory-view-props.d.ts +4 -4
  30. package/build/angular/components/keyboard-avoiding-view/index.d.ts +3 -6
  31. package/build/angular/components/keyboard-avoiding-view/index.js +29 -56
  32. package/build/angular/components/keyboard-avoiding-view/index.js.map +1 -1
  33. package/build/angular/components/layout-conformance-props.d.ts +4 -0
  34. package/build/angular/components/layout-conformance-props.js +2 -0
  35. package/build/angular/components/layout-conformance-props.js.map +1 -0
  36. package/build/angular/components/modal/index.d.ts +6 -5
  37. package/build/angular/components/modal/index.js +17 -2
  38. package/build/angular/components/modal/index.js.map +1 -1
  39. package/build/angular/components/refresh-control-props.d.ts +7 -7
  40. package/build/angular/components/scroll-view-props.d.ts +8 -5
  41. package/build/angular/components/section-list/index.d.ts +17 -8
  42. package/build/angular/components/section-list/index.js +37 -28
  43. package/build/angular/components/section-list/index.js.map +1 -1
  44. package/build/angular/components/touchable-props.d.ts +2 -2
  45. package/build/angular/components/virtualized-list/cell-renderer-context.d.ts +12 -0
  46. package/build/angular/components/virtualized-list/cell-renderer-context.js +16 -0
  47. package/build/angular/components/virtualized-list/cell-renderer-context.js.map +1 -0
  48. package/build/angular/components/virtualized-list/directives.d.ts +26 -6
  49. package/build/angular/components/virtualized-list/directives.js +59 -5
  50. package/build/angular/components/virtualized-list/directives.js.map +1 -1
  51. package/build/angular/components/virtualized-list/index.d.ts +19 -15
  52. package/build/angular/components/virtualized-list/index.js +91 -61
  53. package/build/angular/components/virtualized-list/index.js.map +1 -1
  54. package/build/angular/components/virtualized-list/list-bags.d.ts +5 -1
  55. package/build/angular/components/virtualized-list/list-bags.js +31 -19
  56. package/build/angular/components/virtualized-list/list-bags.js.map +1 -1
  57. package/build/angular/components/virtualized-list/list-effects.d.ts +2 -2
  58. package/build/angular/components/virtualized-list/list-effects.js +17 -27
  59. package/build/angular/components/virtualized-list/list-effects.js.map +1 -1
  60. package/build/angular/components/virtualized-list/list-handle.d.ts +4 -1
  61. package/build/angular/components/virtualized-list/list-handle.js +13 -3
  62. package/build/angular/components/virtualized-list/list-handle.js.map +1 -1
  63. package/build/angular/components/virtualized-list/list-inputs.d.ts +19 -5
  64. package/build/angular/components/virtualized-list/list-inputs.js +47 -4
  65. package/build/angular/components/virtualized-list/list-inputs.js.map +1 -1
  66. package/build/angular/components/virtualized-list/list-props.d.ts +9 -3
  67. package/build/angular/components/virtualized-list/list-rows.d.ts +25 -0
  68. package/build/angular/components/virtualized-list/list-rows.js +25 -0
  69. package/build/angular/components/virtualized-list/list-rows.js.map +1 -0
  70. package/build/angular/components/virtualized-list/list-styles.d.ts +4 -0
  71. package/build/angular/components/virtualized-list/list-styles.js +10 -2
  72. package/build/angular/components/virtualized-list/list-styles.js.map +1 -1
  73. package/build/angular/components/virtualized-list/list-template.d.ts +1 -1
  74. package/build/angular/components/virtualized-list/list-template.js +159 -73
  75. package/build/angular/components/virtualized-list/list-template.js.map +1 -1
  76. package/build/angular/components/virtualized-list/nested-scope.d.ts +6 -0
  77. package/build/angular/components/virtualized-list/nested-scope.js +17 -0
  78. package/build/angular/components/virtualized-list/nested-scope.js.map +1 -0
  79. package/build/angular/components/virtualized-section-list/directives.d.ts +21 -9
  80. package/build/angular/components/virtualized-section-list/directives.js +8 -28
  81. package/build/angular/components/virtualized-section-list/directives.js.map +1 -1
  82. package/build/angular/components/virtualized-section-list/index.d.ts +39 -60
  83. package/build/angular/components/virtualized-section-list/index.js +67 -33
  84. package/build/angular/components/virtualized-section-list/index.js.map +1 -1
  85. package/build/angular/components/virtualized-section-list/section-cell.d.ts +29 -0
  86. package/build/angular/components/virtualized-section-list/section-cell.js +82 -0
  87. package/build/angular/components/virtualized-section-list/section-cell.js.map +1 -0
  88. package/build/angular/components/virtualized-section-list/section-list-props.d.ts +56 -0
  89. package/build/angular/components/virtualized-section-list/section-list-props.js +3 -0
  90. package/build/angular/components/virtualized-section-list/section-list-props.js.map +1 -0
  91. package/build/angular/components/virtualized-section-list/section-list-template.d.ts +1 -1
  92. package/build/angular/components/virtualized-section-list/section-list-template.js +34 -26
  93. package/build/angular/components/virtualized-section-list/section-list-template.js.map +1 -1
  94. package/build/angular/components.d.ts +8 -3
  95. package/build/angular/components.js +2 -1
  96. package/build/angular/components.js.map +1 -1
  97. package/build/angular/descriptor-to-angular/descriptor-host.d.ts +8 -0
  98. package/build/angular/descriptor-to-angular/descriptor-host.js +38 -0
  99. package/build/angular/descriptor-to-angular/descriptor-host.js.map +1 -0
  100. package/build/angular/descriptor-to-angular/index.d.ts +1 -0
  101. package/build/angular/descriptor-to-angular/index.js +4 -0
  102. package/build/angular/descriptor-to-angular/index.js.map +1 -1
  103. package/build/angular/element-base.d.ts +169 -0
  104. package/build/angular/element-base.js +304 -0
  105. package/build/angular/element-base.js.map +1 -0
  106. package/build/angular/element-props.d.ts +7 -7
  107. package/build/angular/element-text-input-native.d.ts +27 -0
  108. package/build/angular/element-text-input-native.js +52 -0
  109. package/build/angular/element-text-input-native.js.map +1 -0
  110. package/build/angular/elements-controls.d.ts +171 -0
  111. package/build/angular/elements-controls.js +394 -0
  112. package/build/angular/elements-controls.js.map +1 -0
  113. package/build/angular/elements-layout.d.ts +139 -0
  114. package/build/angular/elements-layout.js +276 -0
  115. package/build/angular/elements-layout.js.map +1 -0
  116. package/build/angular/elements-press.d.ts +103 -0
  117. package/build/angular/elements-press.js +239 -0
  118. package/build/angular/elements-press.js.map +1 -0
  119. package/build/angular/elements.d.ts +6 -516
  120. package/build/angular/elements.js +9 -1091
  121. package/build/angular/elements.js.map +1 -1
  122. package/build/angular/host-instance/index.d.ts +2 -0
  123. package/build/angular/host-instance/index.js +4 -4
  124. package/build/angular/host-instance/index.js.map +1 -1
  125. package/build/angular/index.d.ts +17 -9
  126. package/build/angular/index.js +24 -27
  127. package/build/angular/index.js.map +1 -1
  128. package/build/angular/modules/animated/create-animated-component.d.ts +1 -1
  129. package/build/angular/modules/animated/create-animated-component.js +1 -1
  130. package/build/angular/modules/animated/create-animated-component.js.map +1 -1
  131. package/build/angular/modules/animated/index.d.ts +54 -41
  132. package/build/angular/modules/animated/index.js +2 -26
  133. package/build/angular/modules/animated/index.js.map +1 -1
  134. package/build/angular/modules/app-registry/index.d.ts +3 -3
  135. package/build/angular/modules/app-registry/index.js +2 -2
  136. package/build/angular/modules/app-registry/index.js.map +1 -1
  137. package/build/angular/modules/status-bar/index.d.ts +9 -5
  138. package/build/angular/modules/status-bar/index.js +21 -10
  139. package/build/angular/modules/status-bar/index.js.map +1 -1
  140. package/build/angular/native-view-base.d.ts +10 -2
  141. package/build/angular/native-view-base.js +23 -2
  142. package/build/angular/native-view-base.js.map +1 -1
  143. package/build/angular/primitives/index.d.ts +4 -0
  144. package/build/angular/primitives/index.js +12 -0
  145. package/build/angular/primitives/index.js.map +1 -1
  146. package/build/angular/services/color-scheme.service.d.ts +1 -1
  147. package/build/angular/services/index.d.ts +1 -0
  148. package/build/angular/services/index.js +1 -0
  149. package/build/angular/services/index.js.map +1 -1
  150. package/build/angular/services/inject-event.d.ts +6 -0
  151. package/build/angular/services/inject-event.js +24 -0
  152. package/build/angular/services/inject-event.js.map +1 -0
  153. package/package.json +6 -6
  154. package/src/accessibility-inputs.ts +3 -0
  155. package/src/callback-host.ts +56 -8
  156. package/src/components/checkbox-props.ts +12 -0
  157. package/src/components/flat-list/flat-list-handle.ts +64 -0
  158. package/src/components/flat-list/flat-list-template.ts +16 -0
  159. package/src/components/flat-list/index.ts +6 -48
  160. package/src/components/image-inputs.ts +94 -0
  161. package/src/components/image-props-resolve.ts +172 -0
  162. package/src/components/image-shared.ts +26 -291
  163. package/src/components/input-accessory-view-props.ts +12 -8
  164. package/src/components/keyboard-avoiding-view/index.ts +39 -79
  165. package/src/components/layout-conformance-props.ts +8 -0
  166. package/src/components/modal/index.ts +42 -20
  167. package/src/components/refresh-control-props.ts +29 -25
  168. package/src/components/scroll-view-props.ts +84 -76
  169. package/src/components/section-list/index.ts +34 -37
  170. package/src/components/touchable-props.ts +6 -2
  171. package/src/components/virtualized-list/cell-renderer-context.ts +36 -0
  172. package/src/components/virtualized-list/directives.ts +84 -8
  173. package/src/components/virtualized-list/index.ts +118 -85
  174. package/src/components/virtualized-list/list-bags.ts +38 -19
  175. package/src/components/virtualized-list/list-effects.ts +20 -32
  176. package/src/components/virtualized-list/list-handle.ts +17 -4
  177. package/src/components/virtualized-list/list-inputs.ts +47 -0
  178. package/src/components/virtualized-list/list-props.ts +57 -50
  179. package/src/components/virtualized-list/list-rows.ts +66 -0
  180. package/src/components/virtualized-list/list-styles.ts +30 -1
  181. package/src/components/virtualized-list/list-template.ts +159 -73
  182. package/src/components/virtualized-list/nested-scope.ts +22 -0
  183. package/src/components/virtualized-section-list/directives.ts +41 -40
  184. package/src/components/virtualized-section-list/index.ts +114 -118
  185. package/src/components/virtualized-section-list/section-cell.ts +109 -0
  186. package/src/components/virtualized-section-list/section-list-props.ts +79 -0
  187. package/src/components/virtualized-section-list/section-list-template.ts +34 -26
  188. package/src/components.ts +9 -0
  189. package/src/descriptor-to-angular/descriptor-host.ts +27 -0
  190. package/src/descriptor-to-angular/index.ts +5 -0
  191. package/src/element-base.ts +289 -0
  192. package/src/element-props.ts +35 -33
  193. package/src/element-text-input-native.ts +31 -0
  194. package/src/elements-controls.ts +290 -0
  195. package/src/elements-layout.ts +168 -0
  196. package/src/elements-press.ts +153 -0
  197. package/src/elements.ts +76 -788
  198. package/src/host-instance/index.ts +4 -4
  199. package/src/index.ts +78 -23
  200. package/src/modules/animated/index.ts +2 -47
  201. package/src/modules/app-registry/index.ts +3 -1
  202. package/src/modules/status-bar/index.ts +24 -11
  203. package/src/native-view-base.ts +37 -2
  204. package/src/primitives/index.ts +7 -0
  205. package/src/services/color-scheme.service.ts +1 -1
  206. package/src/services/index.ts +1 -0
  207. package/src/services/inject-event.ts +52 -0
@@ -0,0 +1,394 @@
1
+ import { Directive, ElementRef, EventEmitter, Input, Output, Renderer2, forwardRef, inject, } from '@angular/core';
2
+ import { NG_VALUE_ACCESSOR } from '@angular/forms';
3
+ import { VALUE_CHANGE_EVENT } from './renderer/value-change';
4
+ import { TextInputNativeInputs } from './element-text-input-native';
5
+ import { ReadBackElement, SymbioteElement, ValueChangeElement, } from './element-base';
6
+ import * as i0 from "@angular/core";
7
+ export class TextInputElement extends TextInputNativeInputs {
8
+ constructor() {
9
+ super(...arguments);
10
+ // NonNullable, not the prop type: `[(value)]="name"` binds a `string`, and an emitter that can
11
+ // also emit `undefined` fails the two-way assignability check ngtsc runs on the event half.
12
+ this.valueChange = new EventEmitter();
13
+ }
14
+ hasValueSubscriber() {
15
+ return this.valueChange.observed;
16
+ }
17
+ emitValue(value) {
18
+ if (typeof value === 'string')
19
+ this.valueChange.emit(value);
20
+ }
21
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: TextInputElement, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
22
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.0.8", type: TextInputElement, isStandalone: true, selector: "text-input", inputs: { value: "value", defaultValue: "defaultValue", placeholder: "placeholder", placeholderTextColor: "placeholderTextColor", multiline: "multiline", numberOfLines: "numberOfLines", maxLength: "maxLength", editable: "editable", readOnly: "readOnly", autoFocus: "autoFocus", autoCapitalize: "autoCapitalize", autoComplete: "autoComplete", autoCorrect: "autoCorrect", blurOnSubmit: "blurOnSubmit", submitBehavior: "submitBehavior", cursorColor: "cursorColor", enterKeyHint: "enterKeyHint", returnKeyType: "returnKeyType", inputMode: "inputMode", keyboardType: "keyboardType", inputAccessoryViewID: "inputAccessoryViewID", scrollEnabled: "scrollEnabled", secureTextEntry: "secureTextEntry", selectTextOnFocus: "selectTextOnFocus", selection: "selection", selectionColor: "selectionColor", selectionHandleColor: "selectionHandleColor", showSoftInputOnFocus: "showSoftInputOnFocus", textAlign: "textAlign", textContentType: "textContentType", underlineColorAndroid: "underlineColorAndroid", onValueChange: "onValueChange", onChangeText: "onChangeText", onContentSizeChange: "onContentSizeChange", onEndEditing: "onEndEditing", onKeyPress: "onKeyPress", onSelectionChange: "onSelectionChange", onSubmitEditing: "onSubmitEditing" }, outputs: { valueChange: "valueChange" }, usesInheritance: true, ngImport: i0 }); }
23
+ }
24
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: TextInputElement, decorators: [{
25
+ type: Directive,
26
+ args: [{ selector: 'text-input', standalone: true }]
27
+ }], propDecorators: { value: [{
28
+ type: Input
29
+ }], defaultValue: [{
30
+ type: Input
31
+ }], placeholder: [{
32
+ type: Input
33
+ }], placeholderTextColor: [{
34
+ type: Input
35
+ }], multiline: [{
36
+ type: Input
37
+ }], numberOfLines: [{
38
+ type: Input
39
+ }], maxLength: [{
40
+ type: Input
41
+ }], editable: [{
42
+ type: Input
43
+ }], readOnly: [{
44
+ type: Input
45
+ }], autoFocus: [{
46
+ type: Input
47
+ }], autoCapitalize: [{
48
+ type: Input
49
+ }], autoComplete: [{
50
+ type: Input
51
+ }], autoCorrect: [{
52
+ type: Input
53
+ }], blurOnSubmit: [{
54
+ type: Input
55
+ }], submitBehavior: [{
56
+ type: Input
57
+ }], cursorColor: [{
58
+ type: Input
59
+ }], enterKeyHint: [{
60
+ type: Input
61
+ }], returnKeyType: [{
62
+ type: Input
63
+ }], inputMode: [{
64
+ type: Input
65
+ }], keyboardType: [{
66
+ type: Input
67
+ }], inputAccessoryViewID: [{
68
+ type: Input
69
+ }], scrollEnabled: [{
70
+ type: Input
71
+ }], secureTextEntry: [{
72
+ type: Input
73
+ }], selectTextOnFocus: [{
74
+ type: Input
75
+ }], selection: [{
76
+ type: Input
77
+ }], selectionColor: [{
78
+ type: Input
79
+ }], selectionHandleColor: [{
80
+ type: Input
81
+ }], showSoftInputOnFocus: [{
82
+ type: Input
83
+ }], textAlign: [{
84
+ type: Input
85
+ }], textContentType: [{
86
+ type: Input
87
+ }], underlineColorAndroid: [{
88
+ type: Input
89
+ }], onValueChange: [{
90
+ type: Input
91
+ }], onChangeText: [{
92
+ type: Input
93
+ }], onContentSizeChange: [{
94
+ type: Input
95
+ }], onEndEditing: [{
96
+ type: Input
97
+ }], onKeyPress: [{
98
+ type: Input
99
+ }], onSelectionChange: [{
100
+ type: Input
101
+ }], onSubmitEditing: [{
102
+ type: Input
103
+ }], valueChange: [{
104
+ type: Output
105
+ }] } });
106
+ export class MultilineTextInputElement extends TextInputElement {
107
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: MultilineTextInputElement, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
108
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.0.8", type: MultilineTextInputElement, isStandalone: true, selector: "text-input-multiline", usesInheritance: true, ngImport: i0 }); }
109
+ }
110
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: MultilineTextInputElement, decorators: [{
111
+ type: Directive,
112
+ args: [{ selector: 'text-input-multiline', standalone: true }]
113
+ }] });
114
+ export class SwitchElement extends ValueChangeElement {
115
+ constructor() {
116
+ super(...arguments);
117
+ this.valueChange = new EventEmitter();
118
+ }
119
+ hasValueSubscriber() {
120
+ return this.valueChange.observed;
121
+ }
122
+ emitValue(value) {
123
+ if (typeof value === 'boolean')
124
+ this.valueChange.emit(value);
125
+ }
126
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: SwitchElement, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
127
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.0.8", type: SwitchElement, isStandalone: true, selector: "switch, symbiote-switch", inputs: { value: "value", disabled: "disabled", trackColor: "trackColor", thumbColor: "thumbColor", ios_backgroundColor: "ios_backgroundColor", onValueChange: "onValueChange" }, outputs: { valueChange: "valueChange" }, usesInheritance: true, ngImport: i0 }); }
128
+ }
129
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: SwitchElement, decorators: [{
130
+ type: Directive,
131
+ args: [{ selector: 'switch, symbiote-switch', standalone: true }]
132
+ }], propDecorators: { value: [{
133
+ type: Input
134
+ }], disabled: [{
135
+ type: Input
136
+ }], trackColor: [{
137
+ type: Input
138
+ }], thumbColor: [{
139
+ type: Input
140
+ }], ios_backgroundColor: [{
141
+ type: Input
142
+ }], onValueChange: [{
143
+ type: Input
144
+ }], valueChange: [{
145
+ type: Output
146
+ }] } });
147
+ /**
148
+ * `[(ngModel)]` / `formControlName` on a `<text-input>` or a `<switch>`.
149
+ *
150
+ * The wrappers provided `NG_VALUE_ACCESSOR` themselves; a tag has no class for @angular/forms to
151
+ * call into, so the accessor moves onto a directive of its own rather than being dropped — the
152
+ * shape Angular's own `DefaultValueAccessor` takes for `<input>`. Providing it unconditionally is
153
+ * safe: @angular/forms looks the accessor up only when an `ngModel` / `formControl*` directive sits
154
+ * on the SAME element, so a plain `<switch [(value)]>` never reaches it.
155
+ *
156
+ * Everything below goes through `Renderer2`, which is the adapter's own — `setProperty` lands in
157
+ * `routeProp` and `listen('valueChange')` is already unwrapped to a bare value there, so this
158
+ * directive holds no fold of its own.
159
+ */
160
+ class SymbioteValueAccessor {
161
+ constructor() {
162
+ this.renderer = inject(Renderer2);
163
+ this.host = inject(ElementRef);
164
+ }
165
+ setProp(name, value) {
166
+ this.renderer.setProperty(this.host.nativeElement, name, value);
167
+ }
168
+ writeValue(value) {
169
+ this.setProp('value', value ?? undefined);
170
+ }
171
+ registerOnChange(fn) {
172
+ this.unlisten?.();
173
+ this.unlisten = this.renderer.listen(this.host.nativeElement, VALUE_CHANGE_EVENT, (value) => {
174
+ // THE HALF THE DOM DOES FOR FREE, and without it a controlled input undoes every
175
+ // keystroke. `<text-input>`'s behavior re-commands the native text whenever `props.value`
176
+ // disagrees with what native last reported — that is what makes it controlled — and the
177
+ // read-back flush exists so the app's new value is on the node by the time the commit runs.
178
+ // @angular/forms does not reach the node in that window: `NgModel.ngOnChanges` defers
179
+ // `_updateValue` through `resolvedPromise.then`, so `writeValue` lands a MICROTASK after
180
+ // the flush, and the commit in between still reads the value from before the keystroke.
181
+ //
182
+ // In a browser there is nothing to do here: `input.value` already holds what the user
183
+ // typed. `node.props.value` is the same slot, and nothing else writes it — so the accessor
184
+ // mirrors it, which is the shape rather than a workaround. A later `writeValue` still wins,
185
+ // so an app that transforms or refuses the value keeps doing so, one microtask on.
186
+ //
187
+ // Without this, every character snaps the field back to its mounted text.
188
+ this.setProp('value', value);
189
+ fn(value);
190
+ });
191
+ }
192
+ // Native has no blur-driven "touched" signal distinct from `blur`, and RN's own onBlur is what an
193
+ // app binds — so touched is driven off the same event rather than a second channel.
194
+ registerOnTouched(fn) {
195
+ this.setProp('onBlur', () => fn());
196
+ }
197
+ setDisabledState(isDisabled) {
198
+ this.writeDisabled(isDisabled);
199
+ }
200
+ ngOnDestroy() {
201
+ this.unlisten?.();
202
+ }
203
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: SymbioteValueAccessor, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
204
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.0.8", type: SymbioteValueAccessor, isStandalone: true, ngImport: i0 }); }
205
+ }
206
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: SymbioteValueAccessor, decorators: [{
207
+ type: Directive
208
+ }] });
209
+ export class TextInputValueAccessor extends SymbioteValueAccessor {
210
+ writeDisabled(isDisabled) {
211
+ this.setProp('editable', !isDisabled);
212
+ }
213
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: TextInputValueAccessor, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
214
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.0.8", type: TextInputValueAccessor, isStandalone: true, selector: "text-input[ngModel], text-input[formControl], text-input[formControlName], text-input-multiline[ngModel], text-input-multiline[formControl], text-input-multiline[formControlName]", providers: [
215
+ {
216
+ provide: NG_VALUE_ACCESSOR,
217
+ useExisting: forwardRef(() => TextInputValueAccessor),
218
+ multi: true,
219
+ },
220
+ ], usesInheritance: true, ngImport: i0 }); }
221
+ }
222
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: TextInputValueAccessor, decorators: [{
223
+ type: Directive,
224
+ args: [{
225
+ selector: 'text-input[ngModel], text-input[formControl], text-input[formControlName], text-input-multiline[ngModel], text-input-multiline[formControl], text-input-multiline[formControlName]',
226
+ standalone: true,
227
+ providers: [
228
+ {
229
+ provide: NG_VALUE_ACCESSOR,
230
+ useExisting: forwardRef(() => TextInputValueAccessor),
231
+ multi: true,
232
+ },
233
+ ],
234
+ }]
235
+ }] });
236
+ export class SwitchValueAccessor extends SymbioteValueAccessor {
237
+ writeDisabled(isDisabled) {
238
+ this.setProp('disabled', isDisabled);
239
+ }
240
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: SwitchValueAccessor, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
241
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.0.8", type: SwitchValueAccessor, isStandalone: true, selector: "switch[ngModel], switch[formControl], switch[formControlName]", providers: [
242
+ {
243
+ provide: NG_VALUE_ACCESSOR,
244
+ useExisting: forwardRef(() => SwitchValueAccessor),
245
+ multi: true,
246
+ },
247
+ ], usesInheritance: true, ngImport: i0 }); }
248
+ }
249
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: SwitchValueAccessor, decorators: [{
250
+ type: Directive,
251
+ args: [{
252
+ selector: 'switch[ngModel], switch[formControl], switch[formControlName]',
253
+ standalone: true,
254
+ providers: [
255
+ {
256
+ provide: NG_VALUE_ACCESSOR,
257
+ useExisting: forwardRef(() => SwitchValueAccessor),
258
+ multi: true,
259
+ },
260
+ ],
261
+ }]
262
+ }] });
263
+ // The HOST — RN's centering RCTView (ActivityIndicator.js:112), which is the tag an app writes.
264
+ // The four spinner props are declared here because that is where the app writes them; the engine's
265
+ // behavior redirects them onto the spinner it builds underneath (`slotProps`).
266
+ export class ActivityIndicatorElement extends SymbioteElement {
267
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: ActivityIndicatorElement, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
268
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.0.8", type: ActivityIndicatorElement, isStandalone: true, selector: "activity-indicator", inputs: { animating: "animating", color: "color", size: "size", hidesWhenStopped: "hidesWhenStopped" }, usesInheritance: true, ngImport: i0 }); }
269
+ }
270
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: ActivityIndicatorElement, decorators: [{
271
+ type: Directive,
272
+ args: [{ selector: 'activity-indicator', standalone: true }]
273
+ }], propDecorators: { animating: [{
274
+ type: Input
275
+ }], color: [{
276
+ type: Input
277
+ }], size: [{
278
+ type: Input
279
+ }], hidesWhenStopped: [{
280
+ type: Input
281
+ }] } });
282
+ // The native spinner. Built by the behavior's `buildStructure` and by the wrapper's render fn, never
283
+ // written in an app template — declared only so the tag alphabet stays covered, the same as
284
+ // `scroll-content`.
285
+ export class ActivityIndicatorSpinnerElement extends ActivityIndicatorElement {
286
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: ActivityIndicatorSpinnerElement, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
287
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.0.8", type: ActivityIndicatorSpinnerElement, isStandalone: true, selector: "activity-indicator-spinner", usesInheritance: true, ngImport: i0 }); }
288
+ }
289
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: ActivityIndicatorSpinnerElement, decorators: [{
290
+ type: Directive,
291
+ args: [{ selector: 'activity-indicator-spinner', standalone: true }]
292
+ }] });
293
+ export class SafeAreaViewElement extends SymbioteElement {
294
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: SafeAreaViewElement, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
295
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.0.8", type: SafeAreaViewElement, isStandalone: true, selector: "safe-area-view", usesInheritance: true, ngImport: i0 }); }
296
+ }
297
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: SafeAreaViewElement, decorators: [{
298
+ type: Directive,
299
+ args: [{ selector: 'safe-area-view', standalone: true }]
300
+ }] });
301
+ // RN's `experimental_LayoutConformance`: the tag paints as `display: contents` through its fold
302
+ export class LayoutConformanceElement extends SymbioteElement {
303
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: LayoutConformanceElement, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
304
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.0.8", type: LayoutConformanceElement, isStandalone: true, selector: "layout-conformance", inputs: { mode: "mode" }, usesInheritance: true, ngImport: i0 }); }
305
+ }
306
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: LayoutConformanceElement, decorators: [{
307
+ type: Directive,
308
+ args: [{ selector: 'layout-conformance', standalone: true }]
309
+ }], propDecorators: { mode: [{
310
+ type: Input
311
+ }] } });
312
+ export class ModalElement extends SymbioteElement {
313
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: ModalElement, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
314
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.0.8", type: ModalElement, isStandalone: true, selector: "modal, symbiote-modal", inputs: { visible: "visible", transparent: "transparent", animationType: "animationType", presentationStyle: "presentationStyle", supportedOrientations: "supportedOrientations", hardwareAccelerated: "hardwareAccelerated", statusBarTranslucent: "statusBarTranslucent", navigationBarTranslucent: "navigationBarTranslucent", allowSwipeDismissal: "allowSwipeDismissal", backdropColor: "backdropColor" }, usesInheritance: true, ngImport: i0 }); }
315
+ }
316
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: ModalElement, decorators: [{
317
+ type: Directive,
318
+ args: [{ selector: 'modal, symbiote-modal', standalone: true }]
319
+ }], propDecorators: { visible: [{
320
+ type: Input
321
+ }], transparent: [{
322
+ type: Input
323
+ }], animationType: [{
324
+ type: Input
325
+ }], presentationStyle: [{
326
+ type: Input
327
+ }], supportedOrientations: [{
328
+ type: Input
329
+ }], hardwareAccelerated: [{
330
+ type: Input
331
+ }], statusBarTranslucent: [{
332
+ type: Input
333
+ }], navigationBarTranslucent: [{
334
+ type: Input
335
+ }], allowSwipeDismissal: [{
336
+ type: Input
337
+ }], backdropColor: [{
338
+ type: Input
339
+ }] } });
340
+ export class RefreshControlElement extends ReadBackElement {
341
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: RefreshControlElement, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
342
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.0.8", type: RefreshControlElement, isStandalone: true, selector: "refresh-control", inputs: { refreshing: "refreshing", enabled: "enabled", colors: "colors", tintColor: "tintColor", title: "title", titleColor: "titleColor", size: "size", progressBackgroundColor: "progressBackgroundColor", progressViewOffset: "progressViewOffset", onRefresh: "onRefresh" }, usesInheritance: true, ngImport: i0 }); }
343
+ }
344
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: RefreshControlElement, decorators: [{
345
+ type: Directive,
346
+ args: [{ selector: 'refresh-control', standalone: true }]
347
+ }], propDecorators: { refreshing: [{
348
+ type: Input
349
+ }], enabled: [{
350
+ type: Input
351
+ }], colors: [{
352
+ type: Input
353
+ }], tintColor: [{
354
+ type: Input
355
+ }], title: [{
356
+ type: Input
357
+ }], titleColor: [{
358
+ type: Input
359
+ }], size: [{
360
+ type: Input
361
+ }], progressBackgroundColor: [{
362
+ type: Input
363
+ }], progressViewOffset: [{
364
+ type: Input
365
+ }], onRefresh: [{
366
+ type: Input
367
+ }] } });
368
+ export class StickyHeaderElement extends SymbioteElement {
369
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: StickyHeaderElement, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
370
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.0.8", type: StickyHeaderElement, isStandalone: true, selector: "sticky-header", inputs: { inverted: "inverted", nextHeaderLayoutY: "nextHeaderLayoutY", scrollAnimatedValue: "scrollAnimatedValue", scrollViewHeight: "scrollViewHeight" }, usesInheritance: true, ngImport: i0 }); }
371
+ }
372
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: StickyHeaderElement, decorators: [{
373
+ type: Directive,
374
+ args: [{ selector: 'sticky-header', standalone: true }]
375
+ }], propDecorators: { inverted: [{
376
+ type: Input
377
+ }], nextHeaderLayoutY: [{
378
+ type: Input
379
+ }], scrollAnimatedValue: [{
380
+ type: Input
381
+ }], scrollViewHeight: [{
382
+ type: Input
383
+ }] } });
384
+ export class InputAccessoryViewElement extends SymbioteElement {
385
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: InputAccessoryViewElement, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
386
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.0.8", type: InputAccessoryViewElement, isStandalone: true, selector: "input-accessory-view", inputs: { backgroundColor: "backgroundColor" }, usesInheritance: true, ngImport: i0 }); }
387
+ }
388
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: InputAccessoryViewElement, decorators: [{
389
+ type: Directive,
390
+ args: [{ selector: 'input-accessory-view', standalone: true }]
391
+ }], propDecorators: { backgroundColor: [{
392
+ type: Input
393
+ }] } });
394
+ //# sourceMappingURL=elements-controls.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"elements-controls.js","sourceRoot":"","sources":["../../src/elements-controls.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,139 @@
1
+ import type { IImageProps } from '@symbiote-native/components';
2
+ import type { IAngularImageBackgroundProps } from './components/image-background-props';
3
+ import type { IAngularScrollViewProps } from './components/scroll-view-props';
4
+ import { SymbioteElement } from './element-base';
5
+ import * as i0 from "@angular/core";
6
+ export declare class ImageElement extends SymbioteElement {
7
+ source?: IImageProps['source'];
8
+ src?: IImageProps['src'];
9
+ srcSet?: IImageProps['srcSet'];
10
+ alt?: IImageProps['alt'];
11
+ width?: IImageProps['width'];
12
+ height?: IImageProps['height'];
13
+ resizeMode?: IImageProps['resizeMode'];
14
+ resizeMethod?: IImageProps['resizeMethod'];
15
+ resizeMultiplier?: IImageProps['resizeMultiplier'];
16
+ defaultSource?: IImageProps['defaultSource'];
17
+ loadingIndicatorSource?: IImageProps['loadingIndicatorSource'];
18
+ blurRadius?: IImageProps['blurRadius'];
19
+ capInsets?: IImageProps['capInsets'];
20
+ crossOrigin?: IImageProps['crossOrigin'];
21
+ referrerPolicy?: IImageProps['referrerPolicy'];
22
+ fadeDuration?: IImageProps['fadeDuration'];
23
+ progressiveRenderingEnabled?: IImageProps['progressiveRenderingEnabled'];
24
+ tintColor?: IImageProps['tintColor'];
25
+ onLoad?: IImageProps['onLoad'];
26
+ onLoadStart?: IImageProps['onLoadStart'];
27
+ onLoadEnd?: IImageProps['onLoadEnd'];
28
+ onError?: IImageProps['onError'];
29
+ onProgress?: IImageProps['onProgress'];
30
+ onPartialLoad?: IImageProps['onPartialLoad'];
31
+ static ɵfac: i0.ɵɵFactoryDeclaration<ImageElement, never>;
32
+ static ɵdir: i0.ɵɵDirectiveDeclaration<ImageElement, "image, symbiote-image", never, { "source": { "alias": "source"; "required": false; }; "src": { "alias": "src"; "required": false; }; "srcSet": { "alias": "srcSet"; "required": false; }; "alt": { "alias": "alt"; "required": false; }; "width": { "alias": "width"; "required": false; }; "height": { "alias": "height"; "required": false; }; "resizeMode": { "alias": "resizeMode"; "required": false; }; "resizeMethod": { "alias": "resizeMethod"; "required": false; }; "resizeMultiplier": { "alias": "resizeMultiplier"; "required": false; }; "defaultSource": { "alias": "defaultSource"; "required": false; }; "loadingIndicatorSource": { "alias": "loadingIndicatorSource"; "required": false; }; "blurRadius": { "alias": "blurRadius"; "required": false; }; "capInsets": { "alias": "capInsets"; "required": false; }; "crossOrigin": { "alias": "crossOrigin"; "required": false; }; "referrerPolicy": { "alias": "referrerPolicy"; "required": false; }; "fadeDuration": { "alias": "fadeDuration"; "required": false; }; "progressiveRenderingEnabled": { "alias": "progressiveRenderingEnabled"; "required": false; }; "tintColor": { "alias": "tintColor"; "required": false; }; "onLoad": { "alias": "onLoad"; "required": false; }; "onLoadStart": { "alias": "onLoadStart"; "required": false; }; "onLoadEnd": { "alias": "onLoadEnd"; "required": false; }; "onError": { "alias": "onError"; "required": false; }; "onProgress": { "alias": "onProgress"; "required": false; }; "onPartialLoad": { "alias": "onPartialLoad"; "required": false; }; }, {}, never, never, true, never>;
33
+ }
34
+ export declare class ImageBackgroundElement extends SymbioteElement {
35
+ imageStyle?: IAngularImageBackgroundProps['imageStyle'];
36
+ source?: IImageProps['source'];
37
+ src?: IImageProps['src'];
38
+ srcSet?: IImageProps['srcSet'];
39
+ alt?: IImageProps['alt'];
40
+ width?: IImageProps['width'];
41
+ height?: IImageProps['height'];
42
+ resizeMode?: IImageProps['resizeMode'];
43
+ resizeMethod?: IImageProps['resizeMethod'];
44
+ resizeMultiplier?: IImageProps['resizeMultiplier'];
45
+ defaultSource?: IImageProps['defaultSource'];
46
+ loadingIndicatorSource?: IImageProps['loadingIndicatorSource'];
47
+ blurRadius?: IImageProps['blurRadius'];
48
+ capInsets?: IImageProps['capInsets'];
49
+ crossOrigin?: IImageProps['crossOrigin'];
50
+ referrerPolicy?: IImageProps['referrerPolicy'];
51
+ fadeDuration?: IImageProps['fadeDuration'];
52
+ progressiveRenderingEnabled?: IImageProps['progressiveRenderingEnabled'];
53
+ tintColor?: IImageProps['tintColor'];
54
+ onLoad?: IImageProps['onLoad'];
55
+ onLoadStart?: IImageProps['onLoadStart'];
56
+ onLoadEnd?: IImageProps['onLoadEnd'];
57
+ onError?: IImageProps['onError'];
58
+ onProgress?: IImageProps['onProgress'];
59
+ onPartialLoad?: IImageProps['onPartialLoad'];
60
+ static ɵfac: i0.ɵɵFactoryDeclaration<ImageBackgroundElement, never>;
61
+ static ɵdir: i0.ɵɵDirectiveDeclaration<ImageBackgroundElement, "image-background", never, { "imageStyle": { "alias": "imageStyle"; "required": false; }; "source": { "alias": "source"; "required": false; }; "src": { "alias": "src"; "required": false; }; "srcSet": { "alias": "srcSet"; "required": false; }; "alt": { "alias": "alt"; "required": false; }; "width": { "alias": "width"; "required": false; }; "height": { "alias": "height"; "required": false; }; "resizeMode": { "alias": "resizeMode"; "required": false; }; "resizeMethod": { "alias": "resizeMethod"; "required": false; }; "resizeMultiplier": { "alias": "resizeMultiplier"; "required": false; }; "defaultSource": { "alias": "defaultSource"; "required": false; }; "loadingIndicatorSource": { "alias": "loadingIndicatorSource"; "required": false; }; "blurRadius": { "alias": "blurRadius"; "required": false; }; "capInsets": { "alias": "capInsets"; "required": false; }; "crossOrigin": { "alias": "crossOrigin"; "required": false; }; "referrerPolicy": { "alias": "referrerPolicy"; "required": false; }; "fadeDuration": { "alias": "fadeDuration"; "required": false; }; "progressiveRenderingEnabled": { "alias": "progressiveRenderingEnabled"; "required": false; }; "tintColor": { "alias": "tintColor"; "required": false; }; "onLoad": { "alias": "onLoad"; "required": false; }; "onLoadStart": { "alias": "onLoadStart"; "required": false; }; "onLoadEnd": { "alias": "onLoadEnd"; "required": false; }; "onError": { "alias": "onError"; "required": false; }; "onProgress": { "alias": "onProgress"; "required": false; }; "onPartialLoad": { "alias": "onPartialLoad"; "required": false; }; }, {}, never, never, true, never>;
62
+ }
63
+ export declare class ScrollViewElement extends SymbioteElement {
64
+ scrollEnabled?: IAngularScrollViewProps['scrollEnabled'];
65
+ scrollEventThrottle?: IAngularScrollViewProps['scrollEventThrottle'];
66
+ contentContainerStyle?: IAngularScrollViewProps['contentContainerStyle'];
67
+ contentInset?: IAngularScrollViewProps['contentInset'];
68
+ contentInsetAdjustmentBehavior?: IAngularScrollViewProps['contentInsetAdjustmentBehavior'];
69
+ contentOffset?: IAngularScrollViewProps['contentOffset'];
70
+ scrollIndicatorInsets?: IAngularScrollViewProps['scrollIndicatorInsets'];
71
+ showsHorizontalScrollIndicator?: IAngularScrollViewProps['showsHorizontalScrollIndicator'];
72
+ showsVerticalScrollIndicator?: IAngularScrollViewProps['showsVerticalScrollIndicator'];
73
+ alwaysBounceHorizontal?: IAngularScrollViewProps['alwaysBounceHorizontal'];
74
+ alwaysBounceVertical?: IAngularScrollViewProps['alwaysBounceVertical'];
75
+ bounces?: IAngularScrollViewProps['bounces'];
76
+ bouncesZoom?: IAngularScrollViewProps['bouncesZoom'];
77
+ centerContent?: IAngularScrollViewProps['centerContent'];
78
+ decelerationRate?: IAngularScrollViewProps['decelerationRate'];
79
+ directionalLockEnabled?: IAngularScrollViewProps['directionalLockEnabled'];
80
+ disableIntervalMomentum?: IAngularScrollViewProps['disableIntervalMomentum'];
81
+ endFillColor?: IAngularScrollViewProps['endFillColor'];
82
+ fadingEdgeLength?: IAngularScrollViewProps['fadingEdgeLength'];
83
+ indicatorStyle?: IAngularScrollViewProps['indicatorStyle'];
84
+ invertStickyHeaders?: IAngularScrollViewProps['invertStickyHeaders'];
85
+ keyboardDismissMode?: IAngularScrollViewProps['keyboardDismissMode'];
86
+ keyboardShouldPersistTaps?: IAngularScrollViewProps['keyboardShouldPersistTaps'];
87
+ automaticallyAdjustKeyboardInsets?: IAngularScrollViewProps['automaticallyAdjustKeyboardInsets'];
88
+ maintainVisibleContentPosition?: IAngularScrollViewProps['maintainVisibleContentPosition'];
89
+ maximumZoomScale?: IAngularScrollViewProps['maximumZoomScale'];
90
+ minimumZoomScale?: IAngularScrollViewProps['minimumZoomScale'];
91
+ zoomScale?: IAngularScrollViewProps['zoomScale'];
92
+ nestedScrollEnabled?: IAngularScrollViewProps['nestedScrollEnabled'];
93
+ overScrollMode?: IAngularScrollViewProps['overScrollMode'];
94
+ pagingEnabled?: IAngularScrollViewProps['pagingEnabled'];
95
+ persistentScrollbar?: IAngularScrollViewProps['persistentScrollbar'];
96
+ pinchGestureEnabled?: IAngularScrollViewProps['pinchGestureEnabled'];
97
+ snapToAlignment?: IAngularScrollViewProps['snapToAlignment'];
98
+ snapToEnd?: IAngularScrollViewProps['snapToEnd'];
99
+ snapToInterval?: IAngularScrollViewProps['snapToInterval'];
100
+ snapToOffsets?: IAngularScrollViewProps['snapToOffsets'];
101
+ snapToStart?: IAngularScrollViewProps['snapToStart'];
102
+ stickyHeaderIndices?: IAngularScrollViewProps['stickyHeaderIndices'];
103
+ onScroll?: IAngularScrollViewProps['onScroll'];
104
+ onScrollBeginDrag?: IAngularScrollViewProps['onScrollBeginDrag'];
105
+ onScrollEndDrag?: IAngularScrollViewProps['onScrollEndDrag'];
106
+ onMomentumScrollBegin?: IAngularScrollViewProps['onMomentumScrollBegin'];
107
+ onMomentumScrollEnd?: IAngularScrollViewProps['onMomentumScrollEnd'];
108
+ onScrollToTop?: IAngularScrollViewProps['onScrollToTop'];
109
+ onContentSizeChange?: IAngularScrollViewProps['onContentSizeChange'];
110
+ onKeyboardWillShow?: IAngularScrollViewProps['onKeyboardWillShow'];
111
+ onKeyboardWillHide?: IAngularScrollViewProps['onKeyboardWillHide'];
112
+ onKeyboardDidShow?: IAngularScrollViewProps['onKeyboardDidShow'];
113
+ onKeyboardDidHide?: IAngularScrollViewProps['onKeyboardDidHide'];
114
+ automaticallyAdjustContentInsets?: IAngularScrollViewProps['automaticallyAdjustContentInsets'];
115
+ automaticallyAdjustsScrollIndicatorInsets?: IAngularScrollViewProps['automaticallyAdjustsScrollIndicatorInsets'];
116
+ canCancelContentTouches?: IAngularScrollViewProps['canCancelContentTouches'];
117
+ experimental_endDraggingSensitivityMultiplier?: IAngularScrollViewProps['experimental_endDraggingSensitivityMultiplier'];
118
+ innerViewRef?: IAngularScrollViewProps['innerViewRef'];
119
+ onScrollAnimationEnd?: IAngularScrollViewProps['onScrollAnimationEnd'];
120
+ scrollPerfTag?: IAngularScrollViewProps['scrollPerfTag'];
121
+ scrollToOverflowEnabled?: IAngularScrollViewProps['scrollToOverflowEnabled'];
122
+ scrollsChildToFocus?: IAngularScrollViewProps['scrollsChildToFocus'];
123
+ scrollsToTop?: IAngularScrollViewProps['scrollsToTop'];
124
+ stickyHeaderHiddenOnScroll?: IAngularScrollViewProps['stickyHeaderHiddenOnScroll'];
125
+ static ɵfac: i0.ɵɵFactoryDeclaration<ScrollViewElement, never>;
126
+ static ɵdir: i0.ɵɵDirectiveDeclaration<ScrollViewElement, "scroll-view", never, { "scrollEnabled": { "alias": "scrollEnabled"; "required": false; }; "scrollEventThrottle": { "alias": "scrollEventThrottle"; "required": false; }; "contentContainerStyle": { "alias": "contentContainerStyle"; "required": false; }; "contentInset": { "alias": "contentInset"; "required": false; }; "contentInsetAdjustmentBehavior": { "alias": "contentInsetAdjustmentBehavior"; "required": false; }; "contentOffset": { "alias": "contentOffset"; "required": false; }; "scrollIndicatorInsets": { "alias": "scrollIndicatorInsets"; "required": false; }; "showsHorizontalScrollIndicator": { "alias": "showsHorizontalScrollIndicator"; "required": false; }; "showsVerticalScrollIndicator": { "alias": "showsVerticalScrollIndicator"; "required": false; }; "alwaysBounceHorizontal": { "alias": "alwaysBounceHorizontal"; "required": false; }; "alwaysBounceVertical": { "alias": "alwaysBounceVertical"; "required": false; }; "bounces": { "alias": "bounces"; "required": false; }; "bouncesZoom": { "alias": "bouncesZoom"; "required": false; }; "centerContent": { "alias": "centerContent"; "required": false; }; "decelerationRate": { "alias": "decelerationRate"; "required": false; }; "directionalLockEnabled": { "alias": "directionalLockEnabled"; "required": false; }; "disableIntervalMomentum": { "alias": "disableIntervalMomentum"; "required": false; }; "endFillColor": { "alias": "endFillColor"; "required": false; }; "fadingEdgeLength": { "alias": "fadingEdgeLength"; "required": false; }; "indicatorStyle": { "alias": "indicatorStyle"; "required": false; }; "invertStickyHeaders": { "alias": "invertStickyHeaders"; "required": false; }; "keyboardDismissMode": { "alias": "keyboardDismissMode"; "required": false; }; "keyboardShouldPersistTaps": { "alias": "keyboardShouldPersistTaps"; "required": false; }; "automaticallyAdjustKeyboardInsets": { "alias": "automaticallyAdjustKeyboardInsets"; "required": false; }; "maintainVisibleContentPosition": { "alias": "maintainVisibleContentPosition"; "required": false; }; "maximumZoomScale": { "alias": "maximumZoomScale"; "required": false; }; "minimumZoomScale": { "alias": "minimumZoomScale"; "required": false; }; "zoomScale": { "alias": "zoomScale"; "required": false; }; "nestedScrollEnabled": { "alias": "nestedScrollEnabled"; "required": false; }; "overScrollMode": { "alias": "overScrollMode"; "required": false; }; "pagingEnabled": { "alias": "pagingEnabled"; "required": false; }; "persistentScrollbar": { "alias": "persistentScrollbar"; "required": false; }; "pinchGestureEnabled": { "alias": "pinchGestureEnabled"; "required": false; }; "snapToAlignment": { "alias": "snapToAlignment"; "required": false; }; "snapToEnd": { "alias": "snapToEnd"; "required": false; }; "snapToInterval": { "alias": "snapToInterval"; "required": false; }; "snapToOffsets": { "alias": "snapToOffsets"; "required": false; }; "snapToStart": { "alias": "snapToStart"; "required": false; }; "stickyHeaderIndices": { "alias": "stickyHeaderIndices"; "required": false; }; "onScroll": { "alias": "onScroll"; "required": false; }; "onScrollBeginDrag": { "alias": "onScrollBeginDrag"; "required": false; }; "onScrollEndDrag": { "alias": "onScrollEndDrag"; "required": false; }; "onMomentumScrollBegin": { "alias": "onMomentumScrollBegin"; "required": false; }; "onMomentumScrollEnd": { "alias": "onMomentumScrollEnd"; "required": false; }; "onScrollToTop": { "alias": "onScrollToTop"; "required": false; }; "onContentSizeChange": { "alias": "onContentSizeChange"; "required": false; }; "onKeyboardWillShow": { "alias": "onKeyboardWillShow"; "required": false; }; "onKeyboardWillHide": { "alias": "onKeyboardWillHide"; "required": false; }; "onKeyboardDidShow": { "alias": "onKeyboardDidShow"; "required": false; }; "onKeyboardDidHide": { "alias": "onKeyboardDidHide"; "required": false; }; "automaticallyAdjustContentInsets": { "alias": "automaticallyAdjustContentInsets"; "required": false; }; "automaticallyAdjustsScrollIndicatorInsets": { "alias": "automaticallyAdjustsScrollIndicatorInsets"; "required": false; }; "canCancelContentTouches": { "alias": "canCancelContentTouches"; "required": false; }; "experimental_endDraggingSensitivityMultiplier": { "alias": "experimental_endDraggingSensitivityMultiplier"; "required": false; }; "innerViewRef": { "alias": "innerViewRef"; "required": false; }; "onScrollAnimationEnd": { "alias": "onScrollAnimationEnd"; "required": false; }; "scrollPerfTag": { "alias": "scrollPerfTag"; "required": false; }; "scrollToOverflowEnabled": { "alias": "scrollToOverflowEnabled"; "required": false; }; "scrollsChildToFocus": { "alias": "scrollsChildToFocus"; "required": false; }; "scrollsToTop": { "alias": "scrollsToTop"; "required": false; }; "stickyHeaderHiddenOnScroll": { "alias": "stickyHeaderHiddenOnScroll"; "required": false; }; }, {}, never, never, true, never>;
127
+ }
128
+ export declare class HorizontalScrollViewElement extends ScrollViewElement {
129
+ static ɵfac: i0.ɵɵFactoryDeclaration<HorizontalScrollViewElement, never>;
130
+ static ɵdir: i0.ɵɵDirectiveDeclaration<HorizontalScrollViewElement, "horizontal-scroll-view", never, {}, {}, never, never, true, never>;
131
+ }
132
+ export declare class ScrollContentElement extends SymbioteElement {
133
+ static ɵfac: i0.ɵɵFactoryDeclaration<ScrollContentElement, never>;
134
+ static ɵdir: i0.ɵɵDirectiveDeclaration<ScrollContentElement, "scroll-content", never, {}, {}, never, never, true, never>;
135
+ }
136
+ export declare class HorizontalScrollContentElement extends SymbioteElement {
137
+ static ɵfac: i0.ɵɵFactoryDeclaration<HorizontalScrollContentElement, never>;
138
+ static ɵdir: i0.ɵɵDirectiveDeclaration<HorizontalScrollContentElement, "horizontal-scroll-content", never, {}, {}, never, never, true, never>;
139
+ }