@symbiote-native/angular 2.0.0 → 3.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.
- package/README.md +5 -4
- package/babel-register-composed.cjs +0 -8
- package/build/angular/callback-host.d.ts +25 -0
- package/build/angular/callback-host.js +211 -0
- package/build/angular/callback-host.js.map +1 -0
- package/build/angular/change-detection-flush.d.ts +14 -2
- package/build/angular/change-detection-flush.js +54 -6
- package/build/angular/change-detection-flush.js.map +1 -1
- package/build/angular/components/flat-list/index.js +39 -86
- package/build/angular/components/flat-list/index.js.map +1 -1
- package/build/angular/components/image-shared.js +49 -110
- package/build/angular/components/image-shared.js.map +1 -1
- package/build/angular/components/keyboard-avoiding-view/index.js +33 -72
- package/build/angular/components/keyboard-avoiding-view/index.js.map +1 -1
- package/build/angular/components/modal/index.js +58 -103
- package/build/angular/components/modal/index.js.map +1 -1
- package/build/angular/components/pressable-props.d.ts +2 -0
- package/build/angular/components/section-list/index.js +20 -103
- package/build/angular/components/section-list/index.js.map +1 -1
- package/build/angular/components/touchable-props.d.ts +1 -0
- package/build/angular/components/virtualized-list/directives.js +32 -22
- package/build/angular/components/virtualized-list/directives.js.map +1 -1
- package/build/angular/components/virtualized-list/index.d.ts +7 -1
- package/build/angular/components/virtualized-list/index.js +350 -359
- package/build/angular/components/virtualized-list/index.js.map +1 -1
- package/build/angular/components/virtualized-section-list/directives.js +20 -12
- package/build/angular/components/virtualized-section-list/directives.js.map +1 -1
- package/build/angular/components/virtualized-section-list/index.js +36 -142
- package/build/angular/components/virtualized-section-list/index.js.map +1 -1
- package/build/angular/components.d.ts +1 -1
- package/build/angular/components.js +1 -1
- package/build/angular/components.js.map +1 -1
- package/build/angular/create-portal/index.js +9 -8
- package/build/angular/create-portal/index.js.map +1 -1
- package/build/angular/create-tunnel/index.js +13 -12
- package/build/angular/create-tunnel/index.js.map +1 -1
- package/build/angular/descriptor-to-angular/index.js +6 -6
- package/build/angular/descriptor-to-angular/index.js.map +1 -1
- package/build/angular/diagnostics.d.ts +13 -0
- package/build/angular/diagnostics.js +18 -0
- package/build/angular/diagnostics.js.map +1 -1
- package/build/angular/element-props.d.ts +1 -3
- package/build/angular/elements.d.ts +46 -32
- package/build/angular/elements.js +217 -434
- package/build/angular/elements.js.map +1 -1
- package/build/angular/index.d.ts +3 -1
- package/build/angular/index.js +44 -13
- package/build/angular/index.js.map +1 -1
- package/build/angular/modules/animated/animated-leaf-binder.js +0 -2
- package/build/angular/modules/animated/animated-leaf-binder.js.map +1 -1
- package/build/angular/modules/animated/create-animated-component.js +69 -74
- package/build/angular/modules/animated/create-animated-component.js.map +1 -1
- package/build/angular/modules/animated/index.d.ts +30 -19
- package/build/angular/modules/status-bar/index.js +2 -8
- package/build/angular/modules/status-bar/index.js.map +1 -1
- package/build/angular/primitives/index.d.ts +14 -28
- package/build/angular/primitives/index.js +44 -107
- package/build/angular/primitives/index.js.map +1 -1
- package/build/angular/primitives/shared.d.ts +1 -0
- package/build/angular/primitives/shared.js +47 -32
- package/build/angular/primitives/shared.js.map +1 -1
- package/build/angular/render/index.js +34 -1
- package/build/angular/render/index.js.map +1 -1
- package/build/angular/renderer/index.d.ts +56 -0
- package/build/angular/renderer/index.js +295 -114
- package/build/angular/renderer/index.js.map +1 -1
- package/build/angular/runtime-matching.d.ts +9 -0
- package/build/angular/runtime-matching.js +82 -0
- package/build/angular/runtime-matching.js.map +1 -0
- package/build/angular/services/color-scheme.service.js +4 -4
- package/build/angular/services/color-scheme.service.js.map +1 -1
- package/build/angular/services/window-dimensions.service.js +4 -4
- package/build/angular/services/window-dimensions.service.js.map +1 -1
- package/build/angular/style-host.d.ts +11 -0
- package/build/angular/style-host.js +86 -0
- package/build/angular/style-host.js.map +1 -0
- package/metro-config.cjs +32 -16
- package/package.json +5 -5
- package/src/callback-host.ts +229 -0
- package/src/change-detection-flush.ts +62 -9
- package/src/components/flat-list/index.ts +2 -1
- package/src/components/keyboard-avoiding-view/index.ts +8 -0
- package/src/components/pressable-props.ts +8 -0
- package/src/components/touchable-props.ts +4 -0
- package/src/components/virtualized-list/index.ts +98 -45
- package/src/components.ts +0 -2
- package/src/diagnostics.ts +18 -0
- package/src/element-props.ts +1 -5
- package/src/elements.ts +159 -38
- package/src/index.ts +47 -14
- package/src/primitives/index.ts +14 -70
- package/src/primitives/shared.ts +21 -6
- package/src/render/index.ts +44 -0
- package/src/renderer/index.ts +347 -104
- package/src/runtime-matching.ts +80 -0
- package/src/style-host.ts +94 -0
- package/tsconfig.angular.base.json +11 -0
|
@@ -14,81 +14,64 @@ import { anchorHostStyle, ModalHost, SymbioteHostPropsDirective, SymbioteStyleIn
|
|
|
14
14
|
import * as i0 from "@angular/core";
|
|
15
15
|
import * as i1 from "../../primitives/shared";
|
|
16
16
|
export class Modal {
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
state = createInitialModalState(false);
|
|
73
|
-
changeDetector = inject(ChangeDetectorRef);
|
|
74
|
-
// This component's OWN host — the non-painting anchor `class="..."` at the use site resolves
|
|
75
|
-
// onto (see anchorHostStyle's doc comment) — NOT the inner `view [style]="containerStyle"`
|
|
76
|
-
// that hosts the user children; the outer `modal` node (bound via `hostProps` below) is
|
|
77
|
-
// the real primitive the anchor sits in front of.
|
|
78
|
-
elementRef = inject(ElementRef);
|
|
17
|
+
constructor() {
|
|
18
|
+
this.show = new EventEmitter();
|
|
19
|
+
this.dismiss = new EventEmitter();
|
|
20
|
+
this.requestClose = new EventEmitter();
|
|
21
|
+
this.orientationChange = new EventEmitter();
|
|
22
|
+
this.accessibilityAction = new EventEmitter();
|
|
23
|
+
this.accessibilityTap = new EventEmitter();
|
|
24
|
+
this.magicTap = new EventEmitter();
|
|
25
|
+
this.accessibilityEscape = new EventEmitter();
|
|
26
|
+
// The iOS keep-alive (state/modal.ts): on visible→hidden the node renders one more frame
|
|
27
|
+
// (isRendered still true) before unmounting, so the native onDismiss can arrive.
|
|
28
|
+
this.state = createInitialModalState(false);
|
|
29
|
+
this.changeDetector = inject(ChangeDetectorRef);
|
|
30
|
+
// This component's OWN host — the non-painting anchor `class="..."` at the use site resolves
|
|
31
|
+
// onto (see anchorHostStyle's doc comment) — NOT the inner `view [style]="containerStyle"`
|
|
32
|
+
// that hosts the user children; the outer `modal` node (bound via `hostProps` below) is
|
|
33
|
+
// the real primitive the anchor sits in front of.
|
|
34
|
+
this.elementRef = inject(ElementRef);
|
|
35
|
+
// Bridges the non-reactive @Input fields `hostProps` reads into the reactive graph, so it can
|
|
36
|
+
// memoize. Plain fields read inside a computed() are UNTRACKED - something must signal "a
|
|
37
|
+
// dependency changed" or the bag goes stale. Signal inputs would do this natively, but `input()`
|
|
38
|
+
// is visible only to the AOT compiler and this package's unit suite runs on JIT (see the
|
|
39
|
+
// `angular-adapter-change-detection` skill, §6); `signal()`/`computed()` are plain runtime APIs.
|
|
40
|
+
// The keep-alive `state` is deliberately NOT a dependency: it gates `shouldRender`, never the bag.
|
|
41
|
+
this.hostPropsRevision = signal(0, /* @ts-ignore */
|
|
42
|
+
...(ngDevMode ? [{ debugName: "hostPropsRevision" }] : /* istanbul ignore next */ []));
|
|
43
|
+
// renderModal's own MODAL_HOST_STYLE (position:'absolute') is the outer modal node's
|
|
44
|
+
// style; the anchor's class-derived style goes FIRST, that resolved style SECOND —
|
|
45
|
+
// flattenStyle's later-wins collapse keeps the modal's own style winning over its ambient class.
|
|
46
|
+
//
|
|
47
|
+
// A computed(), not a getter: Angular re-reads a template getter on every refresh of this view
|
|
48
|
+
// and `[symbioteHostProps]` compares by REFERENCE, so a freshly rebuilt (but identical) bag
|
|
49
|
+
// re-pushes every key through renderer.setProperty -> the engine's prop routing - and this one
|
|
50
|
+
// re-runs renderModal to build it.
|
|
51
|
+
this.hostProps = computed(() => {
|
|
52
|
+
this.hostPropsRevision();
|
|
53
|
+
const descriptorProps = this.descriptor.props;
|
|
54
|
+
return {
|
|
55
|
+
...descriptorProps,
|
|
56
|
+
style: [anchorHostStyle(this.elementRef), descriptorProps.style],
|
|
57
|
+
onAccessibilityAction: this.eventEmitterHandler(this.accessibilityAction),
|
|
58
|
+
onAccessibilityTap: this.eventEmitterHandler(this.accessibilityTap),
|
|
59
|
+
onMagicTap: this.eventEmitterHandler(this.magicTap),
|
|
60
|
+
onAccessibilityEscape: this.eventEmitterHandler(this.accessibilityEscape),
|
|
61
|
+
};
|
|
62
|
+
}, /* @ts-ignore */
|
|
63
|
+
...(ngDevMode ? [{ debugName: "hostProps" }] : /* istanbul ignore next */ []));
|
|
64
|
+
// Through the props bag rather than `[collapsable]="false"`: `view` matches `ViewHost`, a real
|
|
65
|
+
// component, so a binding it does not declare is NG8002 under `ngc` — and `CUSTOM_ELEMENTS_SCHEMA`
|
|
66
|
+
// does not rescue a binding on a MATCHED component. Invisible to `tsc` and to vitest; only a real
|
|
67
|
+
// AOT build says so. Frozen and shared, so the directive's own diff sees one unchanged object.
|
|
68
|
+
this.containerProps = Object.freeze({
|
|
69
|
+
collapsable: false,
|
|
70
|
+
});
|
|
71
|
+
}
|
|
79
72
|
ngOnInit() {
|
|
80
73
|
this.state = createInitialModalState(this.visible === true);
|
|
81
74
|
}
|
|
82
|
-
// Bridges the non-reactive @Input fields `hostProps` reads into the reactive graph, so it can
|
|
83
|
-
// memoize. Plain fields read inside a computed() are UNTRACKED - something must signal "a
|
|
84
|
-
// dependency changed" or the bag goes stale. Signal inputs would do this natively, but `input()`
|
|
85
|
-
// is visible only to the AOT compiler and this package's unit suite runs on JIT (see the
|
|
86
|
-
// `angular-adapter-change-detection` skill, §6); `signal()`/`computed()` are plain runtime APIs.
|
|
87
|
-
// The keep-alive `state` is deliberately NOT a dependency: it gates `shouldRender`, never the bag.
|
|
88
|
-
hostPropsRevision = signal(0, /* @ts-ignore */
|
|
89
|
-
...(ngDevMode ? [{ debugName: "hostPropsRevision" }] : /* istanbul ignore next */ []));
|
|
90
|
-
// What the anchor's class-derived style was when the bag was last built (identity, not value).
|
|
91
|
-
lastAnchorStyle;
|
|
92
75
|
ngOnChanges(changes) {
|
|
93
76
|
// Before the keep-alive early-return below: this is the single moment Angular has finished
|
|
94
77
|
// writing every changed @Input, and `hostProps` depends on far more than `visible`.
|
|
@@ -141,34 +124,6 @@ export class Modal {
|
|
|
141
124
|
this.lastAnchorStyle = anchorStyle;
|
|
142
125
|
this.hostPropsRevision.update(revision => revision + 1);
|
|
143
126
|
}
|
|
144
|
-
// renderModal's own MODAL_HOST_STYLE (position:'absolute') is the outer modal node's
|
|
145
|
-
// style; the anchor's class-derived style goes FIRST, that resolved style SECOND —
|
|
146
|
-
// flattenStyle's later-wins collapse keeps the modal's own style winning over its ambient class.
|
|
147
|
-
//
|
|
148
|
-
// A computed(), not a getter: Angular re-reads a template getter on every refresh of this view
|
|
149
|
-
// and `[symbioteHostProps]` compares by REFERENCE, so a freshly rebuilt (but identical) bag
|
|
150
|
-
// re-pushes every key through renderer.setProperty -> the engine's prop routing - and this one
|
|
151
|
-
// re-runs renderModal to build it.
|
|
152
|
-
hostProps = computed(() => {
|
|
153
|
-
this.hostPropsRevision();
|
|
154
|
-
const descriptorProps = this.descriptor.props;
|
|
155
|
-
return {
|
|
156
|
-
...descriptorProps,
|
|
157
|
-
style: [anchorHostStyle(this.elementRef), descriptorProps.style],
|
|
158
|
-
onAccessibilityAction: this.eventEmitterHandler(this.accessibilityAction),
|
|
159
|
-
onAccessibilityTap: this.eventEmitterHandler(this.accessibilityTap),
|
|
160
|
-
onMagicTap: this.eventEmitterHandler(this.magicTap),
|
|
161
|
-
onAccessibilityEscape: this.eventEmitterHandler(this.accessibilityEscape),
|
|
162
|
-
};
|
|
163
|
-
}, /* @ts-ignore */
|
|
164
|
-
...(ngDevMode ? [{ debugName: "hostProps" }] : /* istanbul ignore next */ []));
|
|
165
|
-
// Through the props bag rather than `[collapsable]="false"`: `view` matches `ViewHost`, a real
|
|
166
|
-
// component, so a binding it does not declare is NG8002 under `ngc` — and `CUSTOM_ELEMENTS_SCHEMA`
|
|
167
|
-
// does not rescue a binding on a MATCHED component. Invisible to `tsc` and to vitest; only a real
|
|
168
|
-
// AOT build says so. Frozen and shared, so the directive's own diff sees one unchanged object.
|
|
169
|
-
containerProps = Object.freeze({
|
|
170
|
-
collapsable: false,
|
|
171
|
-
});
|
|
172
127
|
get containerStyle() {
|
|
173
128
|
const container = this.descriptor.children[0];
|
|
174
129
|
return typeof container === 'string' ? undefined : container.props.style;
|
|
@@ -227,8 +182,8 @@ export class Modal {
|
|
|
227
182
|
'aria-valuetext': this.ariaValueText,
|
|
228
183
|
};
|
|
229
184
|
}
|
|
230
|
-
static
|
|
231
|
-
static
|
|
185
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: Modal, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
186
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.0.8", type: Modal, isStandalone: true, selector: "Modal", inputs: { visible: "visible", transparent: "transparent", backdropColor: "backdropColor", animationType: "animationType", presentationStyle: "presentationStyle", supportedOrientations: "supportedOrientations", hardwareAccelerated: "hardwareAccelerated", statusBarTranslucent: "statusBarTranslucent", navigationBarTranslucent: "navigationBarTranslucent", allowSwipeDismissal: "allowSwipeDismissal", 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: { show: "show", dismiss: "dismiss", requestClose: "requestClose", orientationChange: "orientationChange", accessibilityAction: "accessibilityAction", accessibilityTap: "accessibilityTap", magicTap: "magicTap", accessibilityEscape: "accessibilityEscape" }, usesOnChanges: true, hostDirectives: [{ directive: i1.SymbioteStyleInputDirective, inputs: ["style", "style"] }], ngImport: i0, template: `
|
|
232
187
|
@if (shouldRender) {
|
|
233
188
|
<modal
|
|
234
189
|
[symbioteHostProps]="hostProps()"
|
|
@@ -242,7 +197,7 @@ export class Modal {
|
|
|
242
197
|
</view>
|
|
243
198
|
</modal>
|
|
244
199
|
}
|
|
245
|
-
`, isInline: true, dependencies: [{ kind: "component", type: ModalHost, selector: "modal" }, { kind: "component", type: ViewHost, selector: "view" }, { kind: "directive", type: SymbioteHostPropsDirective, selector: "[symbioteHostProps]", inputs: ["symbioteHostProps"], exportAs: ["symbioteHost"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
200
|
+
`, isInline: true, dependencies: [{ kind: "component", type: ModalHost, selector: "modal" }, { kind: "component", type: ViewHost, selector: "view" }, { kind: "directive", type: SymbioteHostPropsDirective, selector: "[symbioteHostProps]", inputs: ["symbioteHostProps"], exportAs: ["symbioteHost"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
246
201
|
}
|
|
247
202
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: Modal, decorators: [{
|
|
248
203
|
type: Component,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/modal/index.ts"],"names":[],"mappings":"AAAA,iGAAiG;AACjG,gGAAgG;AAChG,kGAAkG;AAClG,2GAA2G;AAC3G,8FAA8F;AAC9F,oGAAoG;AACpG,gGAAgG;AAChG,kGAAkG;AAClG,oEAAoE;AAEpE,OAAO,EACL,sBAAsB,EACtB,uBAAuB,EACvB,iBAAiB,EACjB,SAAS,EACT,QAAQ,EACR,UAAU,EACV,YAAY,EACZ,MAAM,EACN,KAAK,EACL,MAAM,EACN,MAAM,GAKP,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,uBAAuB,EACvB,YAAY,EACZ,WAAW,EACX,yBAAyB,EACzB,iBAAiB,GAQlB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,IAAI,EACJ,eAAe,GAIhB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,eAAe,EACf,SAAS,EACT,0BAA0B,EAC1B,2BAA2B,EAC3B,QAAQ,GACT,MAAM,kBAAkB,CAAC;;;AAuE1B,MAAM,OAAO,KAAK;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/modal/index.ts"],"names":[],"mappings":"AAAA,iGAAiG;AACjG,gGAAgG;AAChG,kGAAkG;AAClG,2GAA2G;AAC3G,8FAA8F;AAC9F,oGAAoG;AACpG,gGAAgG;AAChG,kGAAkG;AAClG,oEAAoE;AAEpE,OAAO,EACL,sBAAsB,EACtB,uBAAuB,EACvB,iBAAiB,EACjB,SAAS,EACT,QAAQ,EACR,UAAU,EACV,YAAY,EACZ,MAAM,EACN,KAAK,EACL,MAAM,EACN,MAAM,GAKP,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,uBAAuB,EACvB,YAAY,EACZ,WAAW,EACX,yBAAyB,EACzB,iBAAiB,GAQlB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,IAAI,EACJ,eAAe,GAIhB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,eAAe,EACf,SAAS,EACT,0BAA0B,EAC1B,2BAA2B,EAC3B,QAAQ,GACT,MAAM,kBAAkB,CAAC;;;AAuE1B,MAAM,OAAO,KAAK;IAzBlB;QA0BqB,SAAI,GAAG,IAAI,YAAY,EAAQ,CAAC;QAChC,YAAO,GAAG,IAAI,YAAY,EAAQ,CAAC;QACnC,iBAAY,GAAG,IAAI,YAAY,EAAQ,CAAC;QACxC,sBAAiB,GAAG,IAAI,YAAY,EAAkB,CAAC;QACvD,wBAAmB,GAAG,IAAI,YAAY,EAAkB,CAAC;QACzD,qBAAgB,GAAG,IAAI,YAAY,EAAkB,CAAC;QACtD,aAAQ,GAAG,IAAI,YAAY,EAAkB,CAAC;QAC9C,wBAAmB,GAAG,IAAI,YAAY,EAAkB,CAAC;QAiD5E,yFAAyF;QACzF,iFAAiF;QACzE,UAAK,GAAgB,uBAAuB,CAAC,KAAK,CAAC,CAAC;QAE3C,mBAAc,GAAG,MAAM,CAAC,iBAAiB,CAAC,CAAC;QAC5D,6FAA6F;QAC7F,2FAA2F;QAC3F,wFAAwF;QACxF,kDAAkD;QACjC,eAAU,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC;QAMjD,8FAA8F;QAC9F,0FAA0F;QAC1F,iGAAiG;QACjG,yFAAyF;QACzF,iGAAiG;QACjG,mGAAmG;QAClF,sBAAiB,GAAG,MAAM,CAAC,CAAC;8FAAC,CAAC;QA4D/C,qFAAqF;QACrF,mFAAmF;QACnF,iGAAiG;QACjG,EAAE;QACF,+FAA+F;QAC/F,4FAA4F;QAC5F,+FAA+F;QAC/F,mCAAmC;QAC1B,cAAS,GAAG,QAAQ,CAA0B,GAAG,EAAE;YAC1D,IAAI,CAAC,iBAAiB,EAAE,CAAC;YACzB,MAAM,eAAe,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC;YAC9C,OAAO;gBACL,GAAG,eAAe;gBAClB,KAAK,EAAE,CAAC,eAAe,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,eAAe,CAAC,KAAK,CAAC;gBAChE,qBAAqB,EAAE,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,mBAAmB,CAAC;gBACzE,kBAAkB,EAAE,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,gBAAgB,CAAC;gBACnE,UAAU,EAAE,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,QAAQ,CAAC;gBACnD,qBAAqB,EAAE,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,mBAAmB,CAAC;aAC1E,CAAC;QACJ,CAAC;sFAAC,CAAC;QAEH,+FAA+F;QAC/F,mGAAmG;QACnG,kGAAkG;QAClG,+FAA+F;QACtF,mBAAc,GAAsC,MAAM,CAAC,MAAM,CAAC;YACzE,WAAW,EAAE,KAAK;SACnB,CAAC,CAAC;KAoEJ;IArKC,QAAQ;QACN,IAAI,CAAC,KAAK,GAAG,uBAAuB,CAAC,IAAI,CAAC,OAAO,KAAK,IAAI,CAAC,CAAC;IAC9D,CAAC;IAYD,WAAW,CAAC,OAAsB;QAChC,2FAA2F;QAC3F,oFAAoF;QACpF,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC;QACxD,MAAM,aAAa,GAAG,OAAO,CAAC,OAAO,CAAC;QACtC,2FAA2F;QAC3F,IAAI,aAAa,KAAK,SAAS,IAAI,aAAa,CAAC,WAAW;YAAE,OAAO;QACrE,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,KAAK,IAAI,CAAC;QACxC,2FAA2F;QAC3F,oFAAoF;QACpF,cAAc,CAAC,GAAG,EAAE;YAClB,IAAI,CAAC,KAAK,GAAG,YAAY,CACvB,IAAI,CAAC,KAAK,EACV,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAChD,CAAC;YACF,IAAI,CAAC,cAAc,CAAC,YAAY,EAAE,CAAC;QACrC,CAAC,CAAC,CAAC;IACL,CAAC;IAED,IAAI,YAAY;QACd,MAAM,MAAM,GAAG,iBAAiB,CAAC,IAAI,CAAC,OAAO,KAAK,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;QACpE,IAAI,CAAC,MAAM;YAAE,IAAI,CAAC,mCAAmC,CAAC,CAAC;QACvD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,0FAA0F;IAC1F,mFAAmF;IACnF,IAAY,UAAU;QACpB,OAAO,WAAW,CAAC;YACjB,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,aAAa,EAAE,IAAI,CAAC,aAAa;YACjC,aAAa,EAAE,IAAI,CAAC,aAAa;YACjC,iBAAiB,EAAE,IAAI,CAAC,iBAAiB;YACzC,qBAAqB,EAAE,IAAI,CAAC,qBAAqB;YACjD,mBAAmB,EAAE,IAAI,CAAC,mBAAmB;YAC7C,oBAAoB,EAAE,IAAI,CAAC,oBAAoB;YAC/C,wBAAwB,EAAE,IAAI,CAAC,wBAAwB;YACvD,mBAAmB,EAAE,IAAI,CAAC,mBAAmB;YAC7C,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,WAAW,EAAE,yBAAyB,CAAC,IAAI,CAAC,mBAAmB,EAAE,CAAC;SACnE,CAAC,CAAC;IACL,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;IA+BD,IAAI,cAAc;QAChB,MAAM,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QAC9C,OAAO,OAAO,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC;IAC3E,CAAC;IAED,gGAAgG;IAChG,+FAA+F;IAC/F,uEAAuE;IACvE,IAAI,CAAC,OAAqC,EAAE,KAAc;QACxD,IAAI,eAAe,CAAC,KAAK,CAAC;YAAE,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAClD,CAAC;IAED,gEAAgE;IAChE,qFAAqF;IACrF,+FAA+F;IAC/F,4DAA4D;IACpD,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,6FAA6F;IAC7F,sFAAsF;IAC9E,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;8GAxOU,KAAK;kGAAL,KAAK,g7EAhBN;;;;;;;;;;;;;;GAcT,4DAhBS,SAAS,kDAAE,QAAQ,iDAAE,0BAA0B;;2FAkB9C,KAAK;kBAzBjB,SAAS;mBAAC;oBACT,QAAQ,EAAE,OAAO;oBACjB,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,SAAS,EAAE,QAAQ,EAAE,0BAA0B,CAAC;oBAC1D,eAAe,EAAE,uBAAuB,CAAC,MAAM;oBAC/C,QAAQ,EAAE;;;;;;;;;;;;;;GAcT;iBACF;;sBAEE,MAAM;;sBACN,MAAM;;sBACN,MAAM;;sBACN,MAAM;;sBACN,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;;sBACL,KAAK;;sBACL,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"}
|
|
@@ -10,7 +10,9 @@ export interface IAngularPressableProps extends IAccessibilityProps, IAriaProps
|
|
|
10
10
|
delayLongPress?: number;
|
|
11
11
|
disabled?: boolean;
|
|
12
12
|
cancelable?: boolean;
|
|
13
|
+
blockNativeResponder?: boolean;
|
|
13
14
|
hitSlop?: IRectOffset;
|
|
15
|
+
testOnly_pressed?: boolean;
|
|
14
16
|
pressRetentionOffset?: IRectOffset;
|
|
15
17
|
unstable_pressDelay?: number;
|
|
16
18
|
android_ripple?: IPressableAndroidRippleConfig;
|
|
@@ -47,113 +47,30 @@ function asItem(value) {
|
|
|
47
47
|
export { VSectionFooterDirective, VSectionHeaderDirective, VSectionItemDirective, VSectionSeparatorDirective, } from '../virtualized-section-list';
|
|
48
48
|
export { VListEmptyDirective, VListFooterDirective, VListHeaderDirective, VListSeparatorDirective, } from '../virtualized-list';
|
|
49
49
|
export class SectionList {
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
updateCellsBatchingPeriod;
|
|
68
|
-
windowSize;
|
|
69
|
-
inverted;
|
|
70
|
-
maintainVisibleContentPosition;
|
|
71
|
-
onScroll;
|
|
72
|
-
onScrollBeginDrag;
|
|
73
|
-
onScrollEndDrag;
|
|
74
|
-
onMomentumScrollBegin;
|
|
75
|
-
onMomentumScrollEnd;
|
|
76
|
-
scrollEventThrottle;
|
|
77
|
-
keyboardShouldPersistTaps;
|
|
78
|
-
keyboardDismissMode;
|
|
79
|
-
style;
|
|
80
|
-
contentContainerStyle;
|
|
81
|
-
testID;
|
|
82
|
-
nativeID;
|
|
83
|
-
// Bound to `[style]="resolvedStyle"`, which Angular compiles to ɵɵstyleMap — it only
|
|
84
|
-
// understands a flat object, never an array (RN's `style={[a, b]}` idiom crashes deep inside
|
|
85
|
-
// Angular's styling engine), so this flattens `style` first, merging in this component's OWN
|
|
86
|
-
// anchor's class-derived style via anchorHostStyle (`elementRef` here is SectionList's own
|
|
87
|
-
// host, not `list`'s inner VirtualizedSectionList). A plain `flattenStyle([...])` would
|
|
88
|
-
// allocate a fresh object on every CD check, defeating VirtualizedList's `ngDoCheck` dedup gate
|
|
89
|
-
// and free-running change detection forever — the bug `stableAnchorStyle` exists to prevent
|
|
90
|
-
// (see its doc comment). `cachedResolvedStyle` is the getter's own persisted "previous" value.
|
|
91
|
-
cachedResolvedStyle;
|
|
50
|
+
constructor() {
|
|
51
|
+
this.endReached = new EventEmitter();
|
|
52
|
+
this.startReached = new EventEmitter();
|
|
53
|
+
this.refresh = new EventEmitter();
|
|
54
|
+
this.accessibilityAction = new EventEmitter();
|
|
55
|
+
this.accessibilityTap = new EventEmitter();
|
|
56
|
+
this.magicTap = new EventEmitter();
|
|
57
|
+
this.accessibilityEscape = new EventEmitter();
|
|
58
|
+
// This wrapper binds the four gated accessibility events on the component it renders, which
|
|
59
|
+
// Angular forces to be unconditional and which would light that component's gates on every
|
|
60
|
+
// instance. It answers for them instead — see `gate-demand.ts`.
|
|
61
|
+
this.gateDemandAbove = injectGateDemandAbove();
|
|
62
|
+
// This component's OWN host — the non-painting anchor `class="..."` at the use site resolves
|
|
63
|
+
// onto (see anchorHostStyle's doc comment) — NOT `list` above, which targets the real inner
|
|
64
|
+
// `<VirtualizedSectionList>` one level down (itself its own separate anchor host).
|
|
65
|
+
this.elementRef = inject(ElementRef);
|
|
66
|
+
}
|
|
92
67
|
get resolvedStyle() {
|
|
93
68
|
this.cachedResolvedStyle = stableAnchorStyle(this.elementRef, this.style, this.cachedResolvedStyle);
|
|
94
69
|
return this.cachedResolvedStyle;
|
|
95
70
|
}
|
|
96
|
-
accessible;
|
|
97
|
-
accessibilityLabel;
|
|
98
|
-
accessibilityHint;
|
|
99
|
-
accessibilityRole;
|
|
100
|
-
accessibilityState;
|
|
101
|
-
accessibilityValue;
|
|
102
|
-
accessibilityActions;
|
|
103
|
-
accessibilityLabelledBy;
|
|
104
|
-
importantForAccessibility;
|
|
105
|
-
accessibilityLiveRegion;
|
|
106
|
-
screenReaderFocusable;
|
|
107
|
-
accessibilityViewIsModal;
|
|
108
|
-
accessibilityElementsHidden;
|
|
109
|
-
accessibilityIgnoresInvertColors;
|
|
110
|
-
accessibilityLanguage;
|
|
111
|
-
accessibilityRespondsToUserInteraction;
|
|
112
|
-
accessibilityShowsLargeContentViewer;
|
|
113
|
-
accessibilityLargeContentTitle;
|
|
114
|
-
accessibilityAction = new EventEmitter();
|
|
115
|
-
accessibilityTap = new EventEmitter();
|
|
116
|
-
magicTap = new EventEmitter();
|
|
117
|
-
accessibilityEscape = new EventEmitter();
|
|
118
|
-
// This wrapper binds the four gated accessibility events on the component it renders, which
|
|
119
|
-
// Angular forces to be unconditional and which would light that component's gates on every
|
|
120
|
-
// instance. It answers for them instead — see `gate-demand.ts`.
|
|
121
|
-
gateDemandAbove = injectGateDemandAbove();
|
|
122
71
|
wantsGate(name) {
|
|
123
72
|
return gateWanted(this.gateDemandAbove, name, this[name]);
|
|
124
73
|
}
|
|
125
|
-
role;
|
|
126
|
-
ariaLabel;
|
|
127
|
-
ariaLabelledBy;
|
|
128
|
-
ariaLive;
|
|
129
|
-
ariaHidden;
|
|
130
|
-
ariaBusy;
|
|
131
|
-
ariaChecked;
|
|
132
|
-
ariaDisabled;
|
|
133
|
-
ariaExpanded;
|
|
134
|
-
ariaSelected;
|
|
135
|
-
ariaModal;
|
|
136
|
-
ariaValueMax;
|
|
137
|
-
ariaValueMin;
|
|
138
|
-
ariaValueNow;
|
|
139
|
-
ariaValueText;
|
|
140
|
-
// The app's section/list authoring templates, captured from the app's DIRECT projected content
|
|
141
|
-
// (single hop — always resolves) and re-stamped onto the inner VirtualizedSectionList above.
|
|
142
|
-
sectionItemDir;
|
|
143
|
-
sectionHeaderDir;
|
|
144
|
-
sectionFooterDir;
|
|
145
|
-
sectionSeparatorDir;
|
|
146
|
-
listHeaderDir;
|
|
147
|
-
listFooterDir;
|
|
148
|
-
listEmptyDir;
|
|
149
|
-
itemSeparatorDir;
|
|
150
|
-
// The composed inner VirtualizedSectionList. Its instance IS an IVirtualizedSectionListHandle, so
|
|
151
|
-
// SectionList's handle delegates straight to it. Available from ngAfterViewInit; reads lazily.
|
|
152
|
-
list;
|
|
153
|
-
// This component's OWN host — the non-painting anchor `class="..."` at the use site resolves
|
|
154
|
-
// onto (see anchorHostStyle's doc comment) — NOT `list` above, which targets the real inner
|
|
155
|
-
// `<VirtualizedSectionList>` one level down (itself its own separate anchor host).
|
|
156
|
-
elementRef = inject(ElementRef);
|
|
157
74
|
// The item separator context: leadingItem/trailingItem arrive `unknown` from the template's `let`
|
|
158
75
|
// bindings (see the asItem boundary comment above), already-unwrapped real items (no envelope to
|
|
159
76
|
// narrow through, unlike a section header/footer entry).
|
|
@@ -188,8 +105,8 @@ export class SectionList {
|
|
|
188
105
|
recordInteraction() {
|
|
189
106
|
this.list?.recordInteraction();
|
|
190
107
|
}
|
|
191
|
-
static
|
|
192
|
-
static
|
|
108
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: SectionList, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
109
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.0.8", type: SectionList, isStandalone: true, selector: "SectionList", inputs: { sections: "sections", keyExtractor: "keyExtractor", getItemLayout: "getItemLayout", stickySectionHeadersEnabled: "stickySectionHeadersEnabled", extraData: "extraData", onEndReachedThreshold: "onEndReachedThreshold", onStartReachedThreshold: "onStartReachedThreshold", refreshing: "refreshing", progressViewOffset: "progressViewOffset", initialNumToRender: "initialNumToRender", initialScrollIndex: "initialScrollIndex", maxToRenderPerBatch: "maxToRenderPerBatch", updateCellsBatchingPeriod: "updateCellsBatchingPeriod", windowSize: "windowSize", inverted: "inverted", maintainVisibleContentPosition: "maintainVisibleContentPosition", onScroll: "onScroll", onScrollBeginDrag: "onScrollBeginDrag", onScrollEndDrag: "onScrollEndDrag", onMomentumScrollBegin: "onMomentumScrollBegin", onMomentumScrollEnd: "onMomentumScrollEnd", scrollEventThrottle: "scrollEventThrottle", keyboardShouldPersistTaps: "keyboardShouldPersistTaps", keyboardDismissMode: "keyboardDismissMode", style: "style", contentContainerStyle: "contentContainerStyle", testID: "testID", nativeID: "nativeID", accessible: "accessible", accessibilityLabel: "accessibilityLabel", accessibilityHint: "accessibilityHint", accessibilityRole: "accessibilityRole", accessibilityState: "accessibilityState", accessibilityValue: "accessibilityValue", accessibilityActions: "accessibilityActions", accessibilityLabelledBy: "accessibilityLabelledBy", importantForAccessibility: "importantForAccessibility", accessibilityLiveRegion: "accessibilityLiveRegion", screenReaderFocusable: "screenReaderFocusable", accessibilityViewIsModal: "accessibilityViewIsModal", accessibilityElementsHidden: "accessibilityElementsHidden", accessibilityIgnoresInvertColors: "accessibilityIgnoresInvertColors", accessibilityLanguage: "accessibilityLanguage", accessibilityRespondsToUserInteraction: "accessibilityRespondsToUserInteraction", accessibilityShowsLargeContentViewer: "accessibilityShowsLargeContentViewer", accessibilityLargeContentTitle: "accessibilityLargeContentTitle", role: "role", ariaLabel: "ariaLabel", ariaLabelledBy: "ariaLabelledBy", ariaLive: "ariaLive", ariaHidden: "ariaHidden", ariaBusy: "ariaBusy", ariaChecked: "ariaChecked", ariaDisabled: "ariaDisabled", ariaExpanded: "ariaExpanded", ariaSelected: "ariaSelected", ariaModal: "ariaModal", ariaValueMax: "ariaValueMax", ariaValueMin: "ariaValueMin", ariaValueNow: "ariaValueNow", ariaValueText: "ariaValueText" }, outputs: { endReached: "endReached", startReached: "startReached", refresh: "refresh", accessibilityAction: "accessibilityAction", accessibilityTap: "accessibilityTap", magicTap: "magicTap", accessibilityEscape: "accessibilityEscape" }, queries: [{ propertyName: "sectionItemDir", first: true, predicate: VSectionItemDirective, descendants: true }, { propertyName: "sectionHeaderDir", first: true, predicate: VSectionHeaderDirective, descendants: true }, { propertyName: "sectionFooterDir", first: true, predicate: VSectionFooterDirective, descendants: true }, { propertyName: "sectionSeparatorDir", first: true, predicate: VSectionSeparatorDirective, descendants: true }, { propertyName: "listHeaderDir", first: true, predicate: VListHeaderDirective, descendants: true }, { propertyName: "listFooterDir", first: true, predicate: VListFooterDirective, descendants: true }, { propertyName: "listEmptyDir", first: true, predicate: VListEmptyDirective, descendants: true }, { propertyName: "itemSeparatorDir", first: true, predicate: VListSeparatorDirective, descendants: true }], viewQueries: [{ propertyName: "list", first: true, predicate: VirtualizedSectionList, descendants: true }], hostDirectives: [{ directive: i1.SymbioteStyleInputDirective, inputs: ["style", "style"] }], ngImport: i0, template: `
|
|
193
110
|
<VirtualizedSectionList
|
|
194
111
|
[sections]="sections"
|
|
195
112
|
[keyExtractor]="keyExtractor"
|
|
@@ -341,7 +258,7 @@ export class SectionList {
|
|
|
341
258
|
</ng-template>
|
|
342
259
|
}
|
|
343
260
|
</VirtualizedSectionList>
|
|
344
|
-
`, isInline: true, dependencies: [{ kind: "component", type: VirtualizedSectionList, selector: "VirtualizedSectionList", inputs: ["sections", "keyExtractor", "getItemLayout", "stickySectionHeadersEnabled", "extraData", "onEndReachedThreshold", "onStartReachedThreshold", "refreshing", "progressViewOffset", "refreshRequested", "initialNumToRender", "initialScrollIndex", "maxToRenderPerBatch", "updateCellsBatchingPeriod", "windowSize", "inverted", "maintainVisibleContentPosition", "onScroll", "onScrollBeginDrag", "onScrollEndDrag", "onMomentumScrollBegin", "onMomentumScrollEnd", "scrollEventThrottle", "keyboardShouldPersistTaps", "keyboardDismissMode", "style", "contentContainerStyle", "testID", "nativeID", "accessible", "accessibilityLabel", "accessibilityHint", "accessibilityRole", "accessibilityState", "accessibilityValue", "accessibilityActions", "accessibilityLabelledBy", "importantForAccessibility", "accessibilityLiveRegion", "screenReaderFocusable", "accessibilityViewIsModal", "accessibilityElementsHidden", "accessibilityIgnoresInvertColors", "accessibilityLanguage", "accessibilityRespondsToUserInteraction", "accessibilityShowsLargeContentViewer", "accessibilityLargeContentTitle", "role", "ariaLabel", "ariaLabelledBy", "ariaLive", "ariaHidden", "ariaBusy", "ariaChecked", "ariaDisabled", "ariaExpanded", "ariaSelected", "ariaModal", "ariaValueMax", "ariaValueMin", "ariaValueNow", "ariaValueText"], outputs: ["endReached", "startReached", "refresh", "accessibilityAction", "accessibilityTap", "magicTap", "accessibilityEscape"] }, { kind: "directive", type: VSectionItemDirective, selector: "[vSectionItem]" }, { kind: "directive", type: VSectionHeaderDirective, selector: "[vSectionHeader]" }, { kind: "directive", type: VSectionFooterDirective, selector: "[vSectionFooter]" }, { kind: "directive", type: VSectionSeparatorDirective, selector: "[vSectionSeparator]" }, { kind: "directive", type: VListHeaderDirective, selector: "[vListHeader]" }, { kind: "directive", type: VListFooterDirective, selector: "[vListFooter]" }, { kind: "directive", type: VListEmptyDirective, selector: "[vListEmpty]" }, { kind: "directive", type: VListSeparatorDirective, selector: "[vListSeparator]" }, { kind: "directive", type: VListOutletDirective, selector: "[vListOutlet]", inputs: ["vListOutlet", "vListOutletContext"] }], viewProviders: [provideGateDemand(() => SectionList)], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
261
|
+
`, isInline: true, dependencies: [{ kind: "component", type: VirtualizedSectionList, selector: "VirtualizedSectionList", inputs: ["sections", "keyExtractor", "getItemLayout", "stickySectionHeadersEnabled", "extraData", "onEndReachedThreshold", "onStartReachedThreshold", "refreshing", "progressViewOffset", "refreshRequested", "initialNumToRender", "initialScrollIndex", "maxToRenderPerBatch", "updateCellsBatchingPeriod", "windowSize", "inverted", "maintainVisibleContentPosition", "onScroll", "onScrollBeginDrag", "onScrollEndDrag", "onMomentumScrollBegin", "onMomentumScrollEnd", "scrollEventThrottle", "keyboardShouldPersistTaps", "keyboardDismissMode", "style", "contentContainerStyle", "testID", "nativeID", "accessible", "accessibilityLabel", "accessibilityHint", "accessibilityRole", "accessibilityState", "accessibilityValue", "accessibilityActions", "accessibilityLabelledBy", "importantForAccessibility", "accessibilityLiveRegion", "screenReaderFocusable", "accessibilityViewIsModal", "accessibilityElementsHidden", "accessibilityIgnoresInvertColors", "accessibilityLanguage", "accessibilityRespondsToUserInteraction", "accessibilityShowsLargeContentViewer", "accessibilityLargeContentTitle", "role", "ariaLabel", "ariaLabelledBy", "ariaLive", "ariaHidden", "ariaBusy", "ariaChecked", "ariaDisabled", "ariaExpanded", "ariaSelected", "ariaModal", "ariaValueMax", "ariaValueMin", "ariaValueNow", "ariaValueText"], outputs: ["endReached", "startReached", "refresh", "accessibilityAction", "accessibilityTap", "magicTap", "accessibilityEscape"] }, { kind: "directive", type: VSectionItemDirective, selector: "[vSectionItem]" }, { kind: "directive", type: VSectionHeaderDirective, selector: "[vSectionHeader]" }, { kind: "directive", type: VSectionFooterDirective, selector: "[vSectionFooter]" }, { kind: "directive", type: VSectionSeparatorDirective, selector: "[vSectionSeparator]" }, { kind: "directive", type: VListHeaderDirective, selector: "[vListHeader]" }, { kind: "directive", type: VListFooterDirective, selector: "[vListFooter]" }, { kind: "directive", type: VListEmptyDirective, selector: "[vListEmpty]" }, { kind: "directive", type: VListSeparatorDirective, selector: "[vListSeparator]" }, { kind: "directive", type: VListOutletDirective, selector: "[vListOutlet]", inputs: ["vListOutlet", "vListOutletContext"] }], viewProviders: [provideGateDemand(() => SectionList)], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
345
262
|
}
|
|
346
263
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: SectionList, decorators: [{
|
|
347
264
|
type: Component,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/section-list/index.ts"],"names":[],"mappings":"AAAA,8FAA8F;AAC9F,4FAA4F;AAC5F,iGAAiG;AACjG,+FAA+F;AAC/F,kDAAkD;AAClD,EAAE;AACF,kGAAkG;AAClG,2FAA2F;AAC3F,oGAAoG;AACpG,iGAAiG;AACjG,0FAA0F;AAC1F,kFAAkF;AAClF,kGAAkG;AAClG,EAAE;AACF,6FAA6F;AAC7F,mFAAmF;AACnF,iGAAiG;AACjG,+FAA+F;AAC/F,wFAAwF;AACxF,iGAAiG;AACjG,yFAAyF;AACzF,gGAAgG;AAChG,mGAAmG;AACnG,wEAAwE;AAExE,OAAO,EACL,uBAAuB,EACvB,SAAS,EACT,YAAY,EACZ,UAAU,EACV,YAAY,EACZ,KAAK,EACL,MAAM,EACN,SAAS,EACT,MAAM,GACP,MAAM,eAAe,CAAC;AASvB,OAAO,EAKN,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,mBAAmB,EACnB,oBAAoB,EACpB,oBAAoB,EACpB,uBAAuB,GAExB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,oBAAoB,EAAE,MAAM,gCAAgC,CAAC;AACtE,OAAO,EACL,iBAAiB,EACjB,2BAA2B,GAC5B,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,uBAAuB,EACvB,uBAAuB,EACvB,qBAAqB,EACrB,0BAA0B,EAC1B,sBAAsB,GAEvB,MAAM,6BAA6B,CAAC;AAiCrC,OAAO,EACL,UAAU,EACV,qBAAqB,EACrB,iBAAiB,GAGlB,MAAM,mBAAmB,CAAC;;;AArC3B,+FAA+F;AAC/F,mGAAmG;AACnG,mGAAmG;AACnG,+FAA+F;AAC/F,iGAAiG;AACjG,iDAAiD;AACjD,SAAS,MAAM,CAAQ,KAAc;IACnC,OAAO,KAA0B,CAAC;AACpC,CAAC;AAOD,oGAAoG;AACpG,uGAAuG;AACvG,oGAAoG;AACpG,4CAA4C;AAC5C,OAAO,EACL,uBAAuB,EACvB,uBAAuB,EACvB,qBAAqB,EACrB,0BAA0B,GAC3B,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,mBAAmB,EACnB,oBAAoB,EACpB,oBAAoB,EACpB,uBAAuB,GACxB,MAAM,qBAAqB,CAAC;AA0M7B,MAAM,OAAO,WAAW;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/section-list/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -34,12 +34,14 @@ function isRecord(value) {
|
|
|
34
34
|
// `<ng-template vListItem>` — the per-cell content. The static guard makes the `let-` bindings
|
|
35
35
|
// typed at the call site (let-item: ItemT, let-index: number, let-separators: ISeparators).
|
|
36
36
|
export class VListItemDirective {
|
|
37
|
-
|
|
37
|
+
constructor() {
|
|
38
|
+
this.templateRef = inject(TemplateRef);
|
|
39
|
+
}
|
|
38
40
|
static ngTemplateContextGuard(_dir, _ctx) {
|
|
39
41
|
return true;
|
|
40
42
|
}
|
|
41
|
-
static
|
|
42
|
-
static
|
|
43
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: VListItemDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
44
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.0.8", type: VListItemDirective, isStandalone: true, selector: "[vListItem]", ngImport: i0 }); }
|
|
43
45
|
}
|
|
44
46
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: VListItemDirective, decorators: [{
|
|
45
47
|
type: Directive,
|
|
@@ -47,9 +49,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImpor
|
|
|
47
49
|
}] });
|
|
48
50
|
// `<ng-template vListHeader>` — rendered once above the cells (RN ListHeaderComponent).
|
|
49
51
|
export class VListHeaderDirective {
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
52
|
+
constructor() {
|
|
53
|
+
this.templateRef = inject(TemplateRef);
|
|
54
|
+
}
|
|
55
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: VListHeaderDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
56
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.0.8", type: VListHeaderDirective, isStandalone: true, selector: "[vListHeader]", ngImport: i0 }); }
|
|
53
57
|
}
|
|
54
58
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: VListHeaderDirective, decorators: [{
|
|
55
59
|
type: Directive,
|
|
@@ -57,9 +61,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImpor
|
|
|
57
61
|
}] });
|
|
58
62
|
// `<ng-template vListFooter>` — rendered once below the cells (RN ListFooterComponent).
|
|
59
63
|
export class VListFooterDirective {
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
64
|
+
constructor() {
|
|
65
|
+
this.templateRef = inject(TemplateRef);
|
|
66
|
+
}
|
|
67
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: VListFooterDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
68
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.0.8", type: VListFooterDirective, isStandalone: true, selector: "[vListFooter]", ngImport: i0 }); }
|
|
63
69
|
}
|
|
64
70
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: VListFooterDirective, decorators: [{
|
|
65
71
|
type: Directive,
|
|
@@ -68,9 +74,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImpor
|
|
|
68
74
|
// `<ng-template vListEmpty>` — rendered in place of the cells when the list is empty
|
|
69
75
|
// (RN ListEmptyComponent).
|
|
70
76
|
export class VListEmptyDirective {
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
77
|
+
constructor() {
|
|
78
|
+
this.templateRef = inject(TemplateRef);
|
|
79
|
+
}
|
|
80
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: VListEmptyDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
81
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.0.8", type: VListEmptyDirective, isStandalone: true, selector: "[vListEmpty]", ngImport: i0 }); }
|
|
74
82
|
}
|
|
75
83
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: VListEmptyDirective, decorators: [{
|
|
76
84
|
type: Directive,
|
|
@@ -79,12 +87,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImpor
|
|
|
79
87
|
// `<ng-template vListSeparator>` — rendered between cells (RN ItemSeparatorComponent). The guard
|
|
80
88
|
// types the `let-` bindings against the separator props.
|
|
81
89
|
export class VListSeparatorDirective {
|
|
82
|
-
|
|
90
|
+
constructor() {
|
|
91
|
+
this.templateRef = inject(TemplateRef);
|
|
92
|
+
}
|
|
83
93
|
static ngTemplateContextGuard(_dir, _ctx) {
|
|
84
94
|
return true;
|
|
85
95
|
}
|
|
86
|
-
static
|
|
87
|
-
static
|
|
96
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: VListSeparatorDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
97
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.0.8", type: VListSeparatorDirective, isStandalone: true, selector: "[vListSeparator]", ngImport: i0 }); }
|
|
88
98
|
}
|
|
89
99
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: VListSeparatorDirective, decorators: [{
|
|
90
100
|
type: Directive,
|
|
@@ -95,11 +105,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImpor
|
|
|
95
105
|
// the template changes and updates the live view's context IN PLACE on a context change, so a
|
|
96
106
|
// windowing recompute (a fresh context object every CD) refreshes the cell without tearing it down.
|
|
97
107
|
export class VListOutletDirective {
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
108
|
+
constructor() {
|
|
109
|
+
this.viewRef = null;
|
|
110
|
+
this.viewContainer = inject(ViewContainerRef);
|
|
111
|
+
this.instanceId = (vListOutletInstanceCounter += 1);
|
|
112
|
+
}
|
|
103
113
|
ngOnChanges(changes) {
|
|
104
114
|
if (changes['templateRef'] !== undefined) {
|
|
105
115
|
dlog(`Angular VListOutlet#${this.instanceId} templateRef CHANGED (was=${changes['templateRef'].previousValue !== undefined} now=${this.templateRef !== undefined}) -> clear + recreate`);
|
|
@@ -132,8 +142,8 @@ export class VListOutletDirective {
|
|
|
132
142
|
return;
|
|
133
143
|
copyContextFields(viewContext, nextContext);
|
|
134
144
|
}
|
|
135
|
-
static
|
|
136
|
-
static
|
|
145
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: VListOutletDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
146
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.0.8", type: VListOutletDirective, isStandalone: true, selector: "[vListOutlet]", inputs: { templateRef: ["vListOutlet", "templateRef"], context: ["vListOutletContext", "context"] }, usesOnChanges: true, ngImport: i0 }); }
|
|
137
147
|
}
|
|
138
148
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: VListOutletDirective, decorators: [{
|
|
139
149
|
type: Directive,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"directives.js","sourceRoot":"","sources":["../../../../src/components/virtualized-list/directives.ts"],"names":[],"mappings":"AAAA,qFAAqF;AACrF,wFAAwF;AACxF,wFAAwF;AACxF,uFAAuF;AACvF,uFAAuF;AACvF,uFAAuF;AACvF,uDAAuD;AACvD,EAAE;AACF,kFAAkF;AAClF,+EAA+E;AAC/E,sGAAsG;AACtG,iDAAiD;AACjD,iDAAiD;AACjD,gDAAgD;AAChD,gHAAgH;AAChH,uBAAuB;AACvB,EAAE;AACF,wFAAwF;AACxF,gGAAgG;AAChG,EAAE;AACF,8FAA8F;AAC9F,+FAA+F;AAC/F,uFAAuF;AACvF,6FAA6F;AAC7F,gFAAgF;AAEhF,OAAO,EACL,SAAS,EACT,KAAK,EACL,WAAW,EACX,gBAAgB,EAChB,MAAM,GAKP,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,IAAI,EAAE,MAAM,yBAAyB,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;;AAGjD,IAAI,0BAA0B,GAAG,CAAC,CAAC;AAsBnC,SAAS,QAAQ,CAAC,KAAc;IAC9B,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,CAAC;AACrD,CAAC;AAED,+FAA+F;AAC/F,4FAA4F;AAE5F,MAAM,OAAO,kBAAkB;
|
|
1
|
+
{"version":3,"file":"directives.js","sourceRoot":"","sources":["../../../../src/components/virtualized-list/directives.ts"],"names":[],"mappings":"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"}
|