@symbiote-native/angular 0.6.0 → 0.6.2

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 (193) hide show
  1. package/README.md +1 -1
  2. package/babel-register-composed.cjs +11 -3
  3. package/build/angular/anchor-host-registry.d.ts +2 -0
  4. package/build/angular/anchor-host-registry.js +84 -0
  5. package/build/angular/anchor-host-registry.js.map +1 -0
  6. package/build/angular/components/input-accessory-view/index.d.ts +2 -1
  7. package/build/angular/components/input-accessory-view/index.js +28 -39
  8. package/build/angular/components/input-accessory-view/index.js.map +1 -1
  9. package/build/angular/components/scroll-view/projection.js +70 -48
  10. package/build/angular/components/scroll-view/projection.js.map +1 -1
  11. package/build/angular/components/scroll-view/shared.js +28 -25
  12. package/build/angular/components/scroll-view/shared.js.map +1 -1
  13. package/build/angular/components/scroll-view/sticky-header.d.ts +6 -7
  14. package/build/angular/components/scroll-view/sticky-header.js +82 -65
  15. package/build/angular/components/scroll-view/sticky-header.js.map +1 -1
  16. package/build/angular/components/touchable/index.d.ts +2 -5
  17. package/build/angular/components/touchable/index.js +36 -56
  18. package/build/angular/components/touchable/index.js.map +1 -1
  19. package/build/angular/components/virtualized-list/index.d.ts +5 -20
  20. package/build/angular/components/virtualized-list/index.js +145 -275
  21. package/build/angular/components/virtualized-list/index.js.map +1 -1
  22. package/build/angular/components/virtualized-section-list/index.js +2 -4
  23. package/build/angular/components/virtualized-section-list/index.js.map +1 -1
  24. package/build/angular/index.d.ts +2 -1
  25. package/build/angular/index.js +6 -1
  26. package/build/angular/index.js.map +1 -1
  27. package/build/angular/renderer/index.d.ts +0 -1
  28. package/build/angular/renderer/index.js +5 -60
  29. package/build/angular/renderer/index.js.map +1 -1
  30. package/package.json +8 -4
  31. package/src/anchor-host-registry.ts +88 -0
  32. package/src/components/input-accessory-view/index.ts +30 -39
  33. package/src/components/scroll-view/projection.ts +76 -46
  34. package/src/components/scroll-view/shared.ts +27 -19
  35. package/src/components/scroll-view/sticky-header.ts +89 -64
  36. package/src/components/touchable/index.ts +52 -66
  37. package/src/components/virtualized-list/index.ts +157 -368
  38. package/src/components/virtualized-section-list/index.ts +6 -3
  39. package/src/index.ts +6 -1
  40. package/src/renderer/index.ts +5 -63
  41. package/build/bootstrap.d.ts +0 -7
  42. package/build/bootstrap.js +0 -14
  43. package/build/components/activity-indicator/index.android.d.ts +0 -9
  44. package/build/components/activity-indicator/index.android.js +0 -64
  45. package/build/components/activity-indicator/index.d.ts +0 -1
  46. package/build/components/activity-indicator/index.ios.d.ts +0 -5
  47. package/build/components/activity-indicator/index.ios.js +0 -64
  48. package/build/components/activity-indicator/index.js +0 -3
  49. package/build/components/activity-indicator/shared.d.ts +0 -64
  50. package/build/components/activity-indicator/shared.js +0 -424
  51. package/build/components/button.d.ts +0 -60
  52. package/build/components/button.js +0 -456
  53. package/build/components/flat-list/index.d.ts +0 -119
  54. package/build/components/flat-list/index.js +0 -691
  55. package/build/components/image/index.android.d.ts +0 -7
  56. package/build/components/image/index.android.js +0 -88
  57. package/build/components/image/index.d.ts +0 -1
  58. package/build/components/image/index.ios.d.ts +0 -7
  59. package/build/components/image/index.ios.js +0 -88
  60. package/build/components/image/index.js +0 -2
  61. package/build/components/image/shared.d.ts +0 -101
  62. package/build/components/image/shared.js +0 -405
  63. package/build/components/image-background.d.ts +0 -78
  64. package/build/components/image-background.js +0 -583
  65. package/build/components/input-accessory-view/index.d.ts +0 -56
  66. package/build/components/input-accessory-view/index.js +0 -403
  67. package/build/components/keyboard-avoiding-view/index.d.ts +0 -79
  68. package/build/components/keyboard-avoiding-view/index.js +0 -504
  69. package/build/components/modal/index.d.ts +0 -89
  70. package/build/components/modal/index.js +0 -529
  71. package/build/components/pressable/index.d.ts +0 -120
  72. package/build/components/pressable/index.js +0 -639
  73. package/build/components/refresh-control/index.d.ts +0 -83
  74. package/build/components/refresh-control/index.js +0 -509
  75. package/build/components/safe-area-view/index.d.ts +0 -54
  76. package/build/components/safe-area-view/index.js +0 -388
  77. package/build/components/scroll-view/index.android.d.ts +0 -16
  78. package/build/components/scroll-view/index.android.js +0 -228
  79. package/build/components/scroll-view/index.d.ts +0 -3
  80. package/build/components/scroll-view/index.ios.d.ts +0 -6
  81. package/build/components/scroll-view/index.ios.js +0 -113
  82. package/build/components/scroll-view/index.js +0 -5
  83. package/build/components/scroll-view/projection.d.ts +0 -32
  84. package/build/components/scroll-view/projection.js +0 -311
  85. package/build/components/scroll-view/shared.d.ts +0 -225
  86. package/build/components/scroll-view/shared.js +0 -757
  87. package/build/components/scroll-view/sticky-header.d.ts +0 -38
  88. package/build/components/scroll-view/sticky-header.js +0 -257
  89. package/build/components/section-list/index.d.ts +0 -113
  90. package/build/components/section-list/index.js +0 -768
  91. package/build/components/switch/index.android.d.ts +0 -17
  92. package/build/components/switch/index.android.js +0 -107
  93. package/build/components/switch/index.d.ts +0 -1
  94. package/build/components/switch/index.ios.d.ts +0 -16
  95. package/build/components/switch/index.ios.js +0 -106
  96. package/build/components/switch/index.js +0 -3
  97. package/build/components/switch/shared.d.ts +0 -37
  98. package/build/components/switch/shared.js +0 -176
  99. package/build/components/text-input.d.ts +0 -150
  100. package/build/components/text-input.js +0 -821
  101. package/build/components/touchable/index.d.ts +0 -241
  102. package/build/components/touchable/index.js +0 -1672
  103. package/build/components/touchable-native-feedback/index.d.ts +0 -80
  104. package/build/components/touchable-native-feedback/index.js +0 -545
  105. package/build/components/virtualized-list/directives.d.ts +0 -41
  106. package/build/components/virtualized-list/directives.js +0 -249
  107. package/build/components/virtualized-list/index.d.ts +0 -265
  108. package/build/components/virtualized-list/index.js +0 -1343
  109. package/build/components/virtualized-section-list/directives.d.ts +0 -28
  110. package/build/components/virtualized-section-list/directives.js +0 -148
  111. package/build/components/virtualized-section-list/index.d.ts +0 -175
  112. package/build/components/virtualized-section-list/index.js +0 -854
  113. package/build/components.d.ts +0 -39
  114. package/build/components.js +0 -37
  115. package/build/create-portal/index.d.ts +0 -17
  116. package/build/create-portal/index.js +0 -128
  117. package/build/create-tunnel/index.d.ts +0 -29
  118. package/build/create-tunnel/index.js +0 -181
  119. package/build/descriptor-to-angular/index.d.ts +0 -19
  120. package/build/descriptor-to-angular/index.js +0 -186
  121. package/build/host-instance/index.d.ts +0 -2
  122. package/build/host-instance/index.js +0 -36
  123. package/build/index.d.ts +0 -21
  124. package/build/index.js +0 -40
  125. package/build/modules/animated/animated-leaf-binder/index.d.ts +0 -14
  126. package/build/modules/animated/animated-leaf-binder/index.js +0 -90
  127. package/build/modules/animated/animated-leaf-binder.d.ts +0 -14
  128. package/build/modules/animated/animated-leaf-binder.js +0 -90
  129. package/build/modules/animated/create-animated-component.d.ts +0 -48
  130. package/build/modules/animated/create-animated-component.js +0 -425
  131. package/build/modules/animated/index.d.ts +0 -51
  132. package/build/modules/animated/index.js +0 -58
  133. package/build/modules/app-registry/index.d.ts +0 -7
  134. package/build/modules/app-registry/index.js +0 -22
  135. package/build/modules/status-bar/index.d.ts +0 -17
  136. package/build/modules/status-bar/index.js +0 -121
  137. package/build/primitives/index.d.ts +0 -32
  138. package/build/primitives/index.js +0 -386
  139. package/build/primitives/shared.d.ts +0 -83
  140. package/build/primitives/shared.js +0 -230
  141. package/build/render/index.d.ts +0 -11
  142. package/build/render/index.js +0 -170
  143. package/build/renderer/index.d.ts +0 -38
  144. package/build/renderer/index.js +0 -355
  145. package/build/services/color-scheme.service.d.ts +0 -13
  146. package/build/services/color-scheme.service.js +0 -72
  147. package/build/services/index.d.ts +0 -2
  148. package/build/services/index.js +0 -2
  149. package/build/services/window-dimensions.service.d.ts +0 -13
  150. package/build/services/window-dimensions.service.js +0 -83
  151. package/src/__tests__/responder-change-detection.test.ts +0 -102
  152. package/src/__tests__/responder-nested-cd.test.ts +0 -113
  153. package/src/angular-gaps.test.ts +0 -142
  154. package/src/angular-imports.test.ts +0 -100
  155. package/src/components/activity-indicator/activity-indicator-class-style.test.ts +0 -44
  156. package/src/components/activity-indicator/activity-indicator.test.ts +0 -131
  157. package/src/components/flat-list/column-wrapper-style-class.test.ts +0 -116
  158. package/src/components/flat-list/flat-list-array-style.test.ts +0 -131
  159. package/src/components/flat-list/flat-list-class-style.test.ts +0 -74
  160. package/src/components/flat-list/flat-list-scroll-containment.test.ts +0 -107
  161. package/src/components/flat-list/flat-list.test.ts +0 -99
  162. package/src/components/image/image-class-style.test.ts +0 -46
  163. package/src/components/image-background-class-style.test.ts +0 -48
  164. package/src/components/image-background-style-class.test.ts +0 -79
  165. package/src/components/input-accessory-view/input-accessory-view.test.ts +0 -43
  166. package/src/components/keyboard-avoiding-view/keyboard-avoiding-view.test.ts +0 -54
  167. package/src/components/modal/modal.test.ts +0 -43
  168. package/src/components/pressable/pressable.test.ts +0 -85
  169. package/src/components/refresh-control/refresh-control.test.ts +0 -41
  170. package/src/components/safe-area-view/safe-area-view.test.ts +0 -43
  171. package/src/components/scroll-view/android-scroll-view-axis-projection.test.ts +0 -123
  172. package/src/components/scroll-view/content-container-style-class.test.ts +0 -75
  173. package/src/components/scroll-view/scroll-view-class-style.test.ts +0 -134
  174. package/src/components/scroll-view/scroll-view-projection.test.ts +0 -194
  175. package/src/components/switch/android-switch-class.test.ts +0 -42
  176. package/src/components/switch/switch.test.ts +0 -92
  177. package/src/components/text-input-class-style.test.ts +0 -54
  178. package/src/components/touchable/touchable.test.ts +0 -102
  179. package/src/components/touchable-native-feedback/touchable-native-feedback.test.ts +0 -49
  180. package/src/components/virtualized-list/virtualized-list-class-style.test.ts +0 -76
  181. package/src/components/virtualized-section-list/virtualized-section-list-class-style.test.ts +0 -60
  182. package/src/create-portal/create-portal.test.ts +0 -90
  183. package/src/create-tunnel/create-tunnel.test.ts +0 -120
  184. package/src/descriptor-to-angular/descriptor-outlet.test.ts +0 -94
  185. package/src/host-instance/host-instance.test.ts +0 -49
  186. package/src/modules/animated/animated-leaf-binder/animated-leaf-binder.test.ts +0 -116
  187. package/src/modules/animated/animated-leaf-binder.test.ts +0 -116
  188. package/src/modules/animated/animated-scroll-view.test.ts +0 -102
  189. package/src/modules/app-registry/app-registry.test.ts +0 -106
  190. package/src/modules/status-bar/status-bar.test.ts +0 -50
  191. package/src/render/render.test.ts +0 -147
  192. package/src/renderer/renderer.test.ts +0 -202
  193. package/src/services/services.test.ts +0 -163
@@ -1,28 +0,0 @@
1
- import { TemplateRef } from '@angular/core';
2
- import type { ISection, ISeparators } from '@symbiote-native/components';
3
- export interface IVSectionItemContext<ItemT> {
4
- $implicit: ItemT;
5
- item: ItemT;
6
- index: number;
7
- section: ISection<ItemT>;
8
- separators: ISeparators;
9
- }
10
- export interface IVSectionContext<ItemT> {
11
- $implicit: ISection<ItemT>;
12
- section: ISection<ItemT>;
13
- }
14
- export declare class VSectionItemDirective<ItemT = unknown> {
15
- readonly templateRef: TemplateRef<IVSectionItemContext<ItemT>>;
16
- static ngTemplateContextGuard<T>(_dir: VSectionItemDirective<T>, _ctx: unknown): _ctx is IVSectionItemContext<T>;
17
- }
18
- export declare class VSectionHeaderDirective<ItemT = unknown> {
19
- readonly templateRef: TemplateRef<IVSectionContext<ItemT>>;
20
- static ngTemplateContextGuard<T>(_dir: VSectionHeaderDirective<T>, _ctx: unknown): _ctx is IVSectionContext<T>;
21
- }
22
- export declare class VSectionFooterDirective<ItemT = unknown> {
23
- readonly templateRef: TemplateRef<IVSectionContext<ItemT>>;
24
- static ngTemplateContextGuard<T>(_dir: VSectionFooterDirective<T>, _ctx: unknown): _ctx is IVSectionContext<T>;
25
- }
26
- export declare class VSectionSeparatorDirective {
27
- readonly templateRef: TemplateRef<any>;
28
- }
@@ -1,148 +0,0 @@
1
- // VirtualizedSectionList authoring directives: the Angular-faithful equivalent of React/Vue's
2
- // `renderItem` / `renderSectionHeader` / `renderSectionFooter` / `SectionSeparatorComponent`.
3
- // React/Vue pass element-returning callbacks; that does NOT translate to Angular, where per-cell
4
- // content is a TEMPLATE. So the app supplies each section slot as an `<ng-template>` carrying one
5
- // of these structural directives, and VirtualizedSectionList stamps the windowed slice through
6
- // them. The shared flatten/window surface stays in @symbiote-native/components, only the cell-AUTHORING shape is
7
- // framework-specific. SectionList (the next layer) reuses these same directives verbatim.
8
- //
9
- // Authoring API (what the app imports and what SectionList builds on):
10
- // <VirtualizedSectionList [sections]="sections">
11
- // <ng-template vSectionItem let-item let-index="index" let-section="section" let-separators="separators"> … </ng-template>
12
- // <ng-template vSectionHeader let-section> … </ng-template>
13
- // <ng-template vSectionFooter let-section> … </ng-template>
14
- // <ng-template vSectionSeparator> … </ng-template> <!-- between adjacent sections -->
15
- // <!-- list-level slots reuse VirtualizedList's own directives: -->
16
- // <ng-template vListHeader> … </ng-template>
17
- // <ng-template vListFooter> … </ng-template>
18
- // <ng-template vListEmpty> … </ng-template>
19
- // <ng-template vListSeparator let-highlighted let-leadingItem="leadingItem"> … </ng-template> <!-- between items -->
20
- // </VirtualizedSectionList>
21
- //
22
- // Each directive carries a static ngTemplateContextGuard so the `let-` bindings infer at the call
23
- // site (the Angular twin of renderItem / renderSectionHeader's typed info arg).
24
- var __esDecorate = (this && this.__esDecorate) || function (ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {
25
- function accept(f) { if (f !== void 0 && typeof f !== "function") throw new TypeError("Function expected"); return f; }
26
- var kind = contextIn.kind, key = kind === "getter" ? "get" : kind === "setter" ? "set" : "value";
27
- var target = !descriptorIn && ctor ? contextIn["static"] ? ctor : ctor.prototype : null;
28
- var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});
29
- var _, done = false;
30
- for (var i = decorators.length - 1; i >= 0; i--) {
31
- var context = {};
32
- for (var p in contextIn) context[p] = p === "access" ? {} : contextIn[p];
33
- for (var p in contextIn.access) context.access[p] = contextIn.access[p];
34
- context.addInitializer = function (f) { if (done) throw new TypeError("Cannot add initializers after decoration has completed"); extraInitializers.push(accept(f || null)); };
35
- var result = (0, decorators[i])(kind === "accessor" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);
36
- if (kind === "accessor") {
37
- if (result === void 0) continue;
38
- if (result === null || typeof result !== "object") throw new TypeError("Object expected");
39
- if (_ = accept(result.get)) descriptor.get = _;
40
- if (_ = accept(result.set)) descriptor.set = _;
41
- if (_ = accept(result.init)) initializers.unshift(_);
42
- }
43
- else if (_ = accept(result)) {
44
- if (kind === "field") initializers.unshift(_);
45
- else descriptor[key] = _;
46
- }
47
- }
48
- if (target) Object.defineProperty(target, contextIn.name, descriptor);
49
- done = true;
50
- };
51
- var __runInitializers = (this && this.__runInitializers) || function (thisArg, initializers, value) {
52
- var useValue = arguments.length > 2;
53
- for (var i = 0; i < initializers.length; i++) {
54
- value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);
55
- }
56
- return useValue ? value : void 0;
57
- };
58
- import { Directive, TemplateRef, inject } from '@angular/core';
59
- // `<ng-template vSectionItem>` — one section item row. The static guard types the `let-` bindings.
60
- let VSectionItemDirective = (() => {
61
- let _classDecorators = [Directive({ selector: '[vSectionItem]', standalone: true })];
62
- let _classDescriptor;
63
- let _classExtraInitializers = [];
64
- let _classThis;
65
- var VSectionItemDirective = class {
66
- static { _classThis = this; }
67
- static {
68
- const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(null) : void 0;
69
- __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: "class", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);
70
- VSectionItemDirective = _classThis = _classDescriptor.value;
71
- if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
72
- __runInitializers(_classThis, _classExtraInitializers);
73
- }
74
- templateRef = inject(TemplateRef);
75
- static ngTemplateContextGuard(_dir, _ctx) {
76
- return true;
77
- }
78
- };
79
- return VSectionItemDirective = _classThis;
80
- })();
81
- export { VSectionItemDirective };
82
- // `<ng-template vSectionHeader>` — rendered above each section's items (RN renderSectionHeader).
83
- let VSectionHeaderDirective = (() => {
84
- let _classDecorators = [Directive({ selector: '[vSectionHeader]', standalone: true })];
85
- let _classDescriptor;
86
- let _classExtraInitializers = [];
87
- let _classThis;
88
- var VSectionHeaderDirective = class {
89
- static { _classThis = this; }
90
- static {
91
- const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(null) : void 0;
92
- __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: "class", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);
93
- VSectionHeaderDirective = _classThis = _classDescriptor.value;
94
- if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
95
- __runInitializers(_classThis, _classExtraInitializers);
96
- }
97
- templateRef = inject(TemplateRef);
98
- static ngTemplateContextGuard(_dir, _ctx) {
99
- return true;
100
- }
101
- };
102
- return VSectionHeaderDirective = _classThis;
103
- })();
104
- export { VSectionHeaderDirective };
105
- // `<ng-template vSectionFooter>` — rendered below each section's items (RN renderSectionFooter).
106
- let VSectionFooterDirective = (() => {
107
- let _classDecorators = [Directive({ selector: '[vSectionFooter]', standalone: true })];
108
- let _classDescriptor;
109
- let _classExtraInitializers = [];
110
- let _classThis;
111
- var VSectionFooterDirective = class {
112
- static { _classThis = this; }
113
- static {
114
- const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(null) : void 0;
115
- __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: "class", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);
116
- VSectionFooterDirective = _classThis = _classDescriptor.value;
117
- if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
118
- __runInitializers(_classThis, _classExtraInitializers);
119
- }
120
- templateRef = inject(TemplateRef);
121
- static ngTemplateContextGuard(_dir, _ctx) {
122
- return true;
123
- }
124
- };
125
- return VSectionFooterDirective = _classThis;
126
- })();
127
- export { VSectionFooterDirective };
128
- // `<ng-template vSectionSeparator>` — painted between adjacent sections (after one section's footer,
129
- // before the next section's header). Mirrors RN's SectionSeparatorComponent; carries no context.
130
- let VSectionSeparatorDirective = (() => {
131
- let _classDecorators = [Directive({ selector: '[vSectionSeparator]', standalone: true })];
132
- let _classDescriptor;
133
- let _classExtraInitializers = [];
134
- let _classThis;
135
- var VSectionSeparatorDirective = class {
136
- static { _classThis = this; }
137
- static {
138
- const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(null) : void 0;
139
- __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: "class", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);
140
- VSectionSeparatorDirective = _classThis = _classDescriptor.value;
141
- if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
142
- __runInitializers(_classThis, _classExtraInitializers);
143
- }
144
- templateRef = inject(TemplateRef);
145
- };
146
- return VSectionSeparatorDirective = _classThis;
147
- })();
148
- export { VSectionSeparatorDirective };
@@ -1,175 +0,0 @@
1
- import { EventEmitter, type DoCheck } from '@angular/core';
2
- import { type IAccessibilityProps, type IAccessibilityStateValue, type IAriaProps, type ISection, type ISectionEntry, type ISeparators, type IScrollViewHandle, type IVirtualizedSectionListHandle } from '@symbiote-native/components';
3
- import { type IStyleProp, type ISymbioteEvent, type ISymbioteNode, type IViewStyle } from '@symbiote-native/engine';
4
- import { VListEmptyDirective, VListFooterDirective, VListHeaderDirective, VListSeparatorDirective, type IVListSeparatorContext } from '../virtualized-list';
5
- import { VSectionFooterDirective, VSectionHeaderDirective, VSectionItemDirective, VSectionSeparatorDirective, type IVSectionContext, type IVSectionItemContext } from './directives';
6
- export type { ISection } from '@symbiote-native/components';
7
- export type { IVirtualizedSectionListHandle } from '@symbiote-native/components';
8
- export { VSectionFooterDirective, VSectionHeaderDirective, VSectionItemDirective, VSectionSeparatorDirective, } from './directives';
9
- export type { IVSectionContext, IVSectionItemContext } from './directives';
10
- export interface IVirtualizedSectionListProps<ItemT> extends IAccessibilityProps, IAriaProps {
11
- sections: ReadonlyArray<ISection<ItemT>>;
12
- keyExtractor?: (item: ItemT, index: number) => string;
13
- stickySectionHeadersEnabled?: boolean;
14
- extraData?: unknown;
15
- onEndReached?: (info: {
16
- distanceFromEnd: number;
17
- }) => void;
18
- onEndReachedThreshold?: number;
19
- onStartReached?: (info: {
20
- distanceFromStart: number;
21
- }) => void;
22
- onStartReachedThreshold?: number;
23
- onRefresh?: () => void;
24
- refreshing?: boolean | null;
25
- progressViewOffset?: number;
26
- initialNumToRender?: number;
27
- initialScrollIndex?: number;
28
- maxToRenderPerBatch?: number;
29
- updateCellsBatchingPeriod?: number;
30
- windowSize?: number;
31
- inverted?: boolean;
32
- maintainVisibleContentPosition?: {
33
- minIndexForVisible: number;
34
- autoscrollToTopThreshold?: number;
35
- };
36
- onScroll?: (event: ISymbioteEvent) => void;
37
- onScrollBeginDrag?: (event: ISymbioteEvent) => void;
38
- onScrollEndDrag?: (event: ISymbioteEvent) => void;
39
- onMomentumScrollBegin?: (event: ISymbioteEvent) => void;
40
- onMomentumScrollEnd?: (event: ISymbioteEvent) => void;
41
- scrollEventThrottle?: number;
42
- keyboardShouldPersistTaps?: boolean | 'always' | 'never' | 'handled';
43
- keyboardDismissMode?: 'none' | 'on-drag' | 'interactive';
44
- style?: IStyleProp<IViewStyle>;
45
- contentContainerStyle?: IStyleProp<IViewStyle>;
46
- }
47
- export type IVirtualizedSectionListInputs<ItemT> = Omit<IVirtualizedSectionListProps<ItemT>, 'onEndReached' | 'onStartReached' | 'onRefresh' | 'onAccessibilityAction' | 'onAccessibilityTap' | 'onMagicTap' | 'onAccessibilityEscape'>;
48
- export declare class VirtualizedSectionList<ItemT = unknown> implements IVirtualizedSectionListInputs<ItemT>, IVirtualizedSectionListHandle, DoCheck {
49
- sections: ReadonlyArray<ISection<ItemT>>;
50
- keyExtractor?: (item: ItemT, index: number) => string;
51
- stickySectionHeadersEnabled?: boolean;
52
- extraData?: unknown;
53
- readonly endReached: EventEmitter<{
54
- distanceFromEnd: number;
55
- }>;
56
- onEndReachedThreshold?: number;
57
- readonly startReached: EventEmitter<{
58
- distanceFromStart: number;
59
- }>;
60
- onStartReachedThreshold?: number;
61
- readonly refresh: EventEmitter<void>;
62
- refreshing?: boolean | null;
63
- progressViewOffset?: number;
64
- refreshRequested?: boolean;
65
- initialNumToRender?: number;
66
- initialScrollIndex?: number;
67
- maxToRenderPerBatch?: number;
68
- updateCellsBatchingPeriod?: number;
69
- windowSize?: number;
70
- inverted?: boolean;
71
- maintainVisibleContentPosition?: {
72
- minIndexForVisible: number;
73
- autoscrollToTopThreshold?: number;
74
- };
75
- onScroll?: (event: ISymbioteEvent) => void;
76
- onScrollBeginDrag?: (event: ISymbioteEvent) => void;
77
- onScrollEndDrag?: (event: ISymbioteEvent) => void;
78
- onMomentumScrollBegin?: (event: ISymbioteEvent) => void;
79
- onMomentumScrollEnd?: (event: ISymbioteEvent) => void;
80
- scrollEventThrottle?: number;
81
- keyboardShouldPersistTaps?: boolean | 'always' | 'never' | 'handled';
82
- keyboardDismissMode?: 'none' | 'on-drag' | 'interactive';
83
- style?: IStyleProp<IViewStyle>;
84
- contentContainerStyle?: IStyleProp<IViewStyle>;
85
- testID?: string;
86
- nativeID?: string;
87
- private cachedResolvedStyle;
88
- get resolvedStyle(): IViewStyle;
89
- accessible?: boolean;
90
- accessibilityLabel?: string;
91
- accessibilityHint?: string;
92
- accessibilityRole?: IAccessibilityProps['accessibilityRole'];
93
- accessibilityState?: IAccessibilityStateValue;
94
- accessibilityValue?: IAccessibilityProps['accessibilityValue'];
95
- accessibilityActions?: IAccessibilityProps['accessibilityActions'];
96
- accessibilityLabelledBy?: string | string[];
97
- importantForAccessibility?: IAccessibilityProps['importantForAccessibility'];
98
- accessibilityLiveRegion?: IAccessibilityProps['accessibilityLiveRegion'];
99
- screenReaderFocusable?: boolean;
100
- accessibilityViewIsModal?: boolean;
101
- accessibilityElementsHidden?: boolean;
102
- accessibilityIgnoresInvertColors?: boolean;
103
- accessibilityLanguage?: string;
104
- accessibilityRespondsToUserInteraction?: boolean;
105
- accessibilityShowsLargeContentViewer?: boolean;
106
- accessibilityLargeContentTitle?: string;
107
- readonly accessibilityAction: EventEmitter<ISymbioteEvent>;
108
- readonly accessibilityTap: EventEmitter<ISymbioteEvent>;
109
- readonly magicTap: EventEmitter<ISymbioteEvent>;
110
- readonly accessibilityEscape: EventEmitter<ISymbioteEvent>;
111
- role?: IAriaProps['role'];
112
- ariaLabel?: string;
113
- ariaLabelledBy?: string;
114
- ariaLive?: IAriaProps['aria-live'];
115
- ariaHidden?: boolean;
116
- ariaBusy?: boolean;
117
- ariaChecked?: boolean | 'mixed';
118
- ariaDisabled?: boolean;
119
- ariaExpanded?: boolean;
120
- ariaSelected?: boolean;
121
- ariaModal?: boolean;
122
- ariaValueMax?: number;
123
- ariaValueMin?: number;
124
- ariaValueNow?: number;
125
- ariaValueText?: string;
126
- sectionItemDir?: VSectionItemDirective<ItemT>;
127
- sectionHeaderDir?: VSectionHeaderDirective<ItemT>;
128
- sectionFooterDir?: VSectionFooterDirective<ItemT>;
129
- sectionSeparatorDir?: VSectionSeparatorDirective;
130
- listHeaderDir?: VListHeaderDirective;
131
- listFooterDir?: VListFooterDirective;
132
- listEmptyDir?: VListEmptyDirective;
133
- itemSeparatorDir?: VListSeparatorDirective<ItemT>;
134
- private list?;
135
- private readonly elementRef;
136
- flatEntries: ISectionEntry<ItemT>[];
137
- stickyHeaderIndices: number[] | undefined;
138
- private headerIndices;
139
- private lastSectionsRef;
140
- private lastHasSectionSeparator;
141
- private readonly cdr;
142
- ngDoCheck(): void;
143
- getEntry: (_source: unknown, index: number) => ISectionEntry<ItemT>;
144
- getEntryCount: () => number;
145
- entryKeyExtractor: (entry: ISectionEntry<ItemT>, index: number) => string;
146
- get resolvedOnEndReached(): ((info: {
147
- distanceFromEnd: number;
148
- }) => void) | undefined;
149
- get resolvedOnStartReached(): ((info: {
150
- distanceFromStart: number;
151
- }) => void) | undefined;
152
- get resolvedOnRefresh(): (() => void) | undefined;
153
- get resolvedOnAccessibilityAction(): ((event: ISymbioteEvent) => void) | undefined;
154
- get resolvedOnAccessibilityTap(): ((event: ISymbioteEvent) => void) | undefined;
155
- get resolvedOnMagicTap(): ((event: ISymbioteEvent) => void) | undefined;
156
- get resolvedOnAccessibilityEscape(): ((event: ISymbioteEvent) => void) | undefined;
157
- private isEntry;
158
- entryKind(value: unknown): ISectionEntry<ItemT>['kind'] | 'unknown';
159
- sectionContextOf(value: unknown): IVSectionContext<ItemT> | undefined;
160
- itemContextOf(value: unknown, separators: ISeparators): IVSectionItemContext<ItemT> | undefined;
161
- itemSeparatorContextOf(highlighted: unknown, leadingItem: unknown, trailingItem: unknown): IVListSeparatorContext<ItemT>;
162
- scrollToLocation(params: {
163
- sectionIndex: number;
164
- itemIndex: number;
165
- viewOffset?: number;
166
- viewPosition?: number;
167
- animated?: boolean;
168
- }): void;
169
- flashScrollIndicators(): void;
170
- getNativeScrollRef(): IScrollViewHandle | null;
171
- getScrollableNode(): IScrollViewHandle | null;
172
- getScrollResponder(): IScrollViewHandle | null;
173
- getScrollNode(): ISymbioteNode | null;
174
- recordInteraction(): void;
175
- }