@symbiote-native/angular 0.7.0 → 0.8.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 +3 -3
- package/build/angular/bootstrap.js +1 -1
- package/build/angular/bootstrap.js.map +1 -1
- package/build/angular/components/activity-indicator/index.android.js +7 -2
- package/build/angular/components/activity-indicator/index.android.js.map +1 -1
- package/build/angular/components/activity-indicator/index.ios.js +3 -1
- package/build/angular/components/activity-indicator/index.ios.js.map +1 -1
- package/build/angular/components/activity-indicator/shared.d.ts +1 -1
- package/build/angular/components/activity-indicator/shared.js +1 -1
- package/build/angular/components/activity-indicator/shared.js.map +1 -1
- package/build/angular/components/button.js +13 -5
- package/build/angular/components/button.js.map +1 -1
- package/build/angular/components/flat-list/index.d.ts +1 -1
- package/build/angular/components/flat-list/index.js +47 -14
- package/build/angular/components/flat-list/index.js.map +1 -1
- package/build/angular/components/image/index.android.js +4 -2
- package/build/angular/components/image/index.android.js.map +1 -1
- package/build/angular/components/image/index.ios.js +4 -2
- package/build/angular/components/image/index.ios.js.map +1 -1
- package/build/angular/components/image/shared.js +18 -6
- package/build/angular/components/image/shared.js.map +1 -1
- package/build/angular/components/image-background.js +22 -8
- package/build/angular/components/image-background.js.map +1 -1
- package/build/angular/components/input-accessory-view/index.js +7 -2
- package/build/angular/components/input-accessory-view/index.js.map +1 -1
- package/build/angular/components/keyboard-avoiding-view/index.d.ts +1 -0
- package/build/angular/components/keyboard-avoiding-view/index.js +39 -9
- package/build/angular/components/keyboard-avoiding-view/index.js.map +1 -1
- package/build/angular/components/modal/index.js +7 -2
- package/build/angular/components/modal/index.js.map +1 -1
- package/build/angular/components/pressable/index.d.ts +1 -1
- package/build/angular/components/pressable/index.js +6 -2
- package/build/angular/components/pressable/index.js.map +1 -1
- package/build/angular/components/refresh-control/index.js +3 -1
- package/build/angular/components/refresh-control/index.js.map +1 -1
- package/build/angular/components/safe-area-view/index.js +3 -1
- package/build/angular/components/safe-area-view/index.js.map +1 -1
- package/build/angular/components/scroll-view/index.android.js +44 -14
- package/build/angular/components/scroll-view/index.android.js.map +1 -1
- package/build/angular/components/scroll-view/index.ios.js +13 -5
- package/build/angular/components/scroll-view/index.ios.js.map +1 -1
- package/build/angular/components/scroll-view/projection.d.ts +32 -0
- package/build/angular/components/scroll-view/projection.js +212 -47
- package/build/angular/components/scroll-view/projection.js.map +1 -1
- package/build/angular/components/scroll-view/shared.js +28 -7
- package/build/angular/components/scroll-view/shared.js.map +1 -1
- package/build/angular/components/scroll-view/sticky-header.js +7 -3
- package/build/angular/components/scroll-view/sticky-header.js.map +1 -1
- package/build/angular/components/section-list/index.d.ts +6 -1
- package/build/angular/components/section-list/index.js +63 -18
- package/build/angular/components/section-list/index.js.map +1 -1
- package/build/angular/components/switch/index.android.js +17 -3
- package/build/angular/components/switch/index.android.js.map +1 -1
- package/build/angular/components/switch/index.ios.js +17 -3
- package/build/angular/components/switch/index.ios.js.map +1 -1
- package/build/angular/components/switch/shared.d.ts +1 -1
- package/build/angular/components/switch/shared.js +5 -2
- package/build/angular/components/switch/shared.js.map +1 -1
- package/build/angular/components/text-input.d.ts +1 -1
- package/build/angular/components/text-input.js +25 -5
- package/build/angular/components/text-input.js.map +1 -1
- package/build/angular/components/touchable/index.d.ts +29 -7
- package/build/angular/components/touchable/index.js +246 -69
- package/build/angular/components/touchable/index.js.map +1 -1
- package/build/angular/components/touchable-native-feedback/index.js +2 -2
- package/build/angular/components/touchable-native-feedback/index.js.map +1 -1
- package/build/angular/components/virtualized-list/directives.js +4 -0
- package/build/angular/components/virtualized-list/directives.js.map +1 -1
- package/build/angular/components/virtualized-list/index.d.ts +5 -2
- package/build/angular/components/virtualized-list/index.js +197 -60
- package/build/angular/components/virtualized-list/index.js.map +1 -1
- package/build/angular/components/virtualized-section-list/directives.js.map +1 -1
- package/build/angular/components/virtualized-section-list/index.d.ts +18 -1
- package/build/angular/components/virtualized-section-list/index.js +90 -21
- 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.map +1 -1
- package/build/angular/create-portal/index.js +5 -1
- package/build/angular/create-portal/index.js.map +1 -1
- package/build/angular/create-tunnel/index.js.map +1 -1
- package/build/angular/descriptor-to-angular/index.js +3 -1
- package/build/angular/descriptor-to-angular/index.js.map +1 -1
- package/build/angular/diagnostics.d.ts +33 -0
- package/build/angular/diagnostics.js +82 -0
- package/build/angular/diagnostics.js.map +1 -0
- package/build/angular/host-instance/index.js +1 -1
- package/build/angular/host-instance/index.js.map +1 -1
- package/build/angular/index.d.ts +5 -2
- package/build/angular/index.js +15 -1
- package/build/angular/index.js.map +1 -1
- package/build/angular/modules/animated/create-animated-component.js +27 -9
- package/build/angular/modules/animated/create-animated-component.js.map +1 -1
- package/build/angular/modules/app-registry/index.js.map +1 -1
- package/build/angular/modules/status-bar/index.js +1 -1
- package/build/angular/modules/status-bar/index.js.map +1 -1
- package/build/angular/primitives/index.d.ts +19 -2
- package/build/angular/primitives/index.js +39 -3
- package/build/angular/primitives/index.js.map +1 -1
- package/build/angular/primitives/shared.d.ts +9 -1
- package/build/angular/primitives/shared.js +49 -3
- package/build/angular/primitives/shared.js.map +1 -1
- package/build/angular/render/index.js +48 -5
- package/build/angular/render/index.js.map +1 -1
- package/build/angular/renderer/index.d.ts +1 -0
- package/build/angular/renderer/index.js +37 -2
- package/build/angular/renderer/index.js.map +1 -1
- package/build/angular/services/color-scheme.service.js.map +1 -1
- package/build/angular/services/window-dimensions.service.js +1 -1
- package/build/angular/services/window-dimensions.service.js.map +1 -1
- package/package.json +5 -5
- package/src/bootstrap.ts +4 -1
- package/src/components/activity-indicator/index.android.ts +7 -2
- package/src/components/activity-indicator/index.ios.ts +3 -1
- package/src/components/activity-indicator/shared.ts +32 -13
- package/src/components/button.ts +19 -6
- package/src/components/flat-list/index.ts +91 -29
- package/src/components/image/index.android.ts +9 -2
- package/src/components/image/index.ios.ts +9 -2
- package/src/components/image/shared.ts +58 -19
- package/src/components/image-background.ts +29 -10
- package/src/components/input-accessory-view/index.ts +27 -10
- package/src/components/keyboard-avoiding-view/index.ts +55 -15
- package/src/components/modal/index.ts +22 -8
- package/src/components/pressable/index.ts +51 -21
- package/src/components/refresh-control/index.ts +22 -8
- package/src/components/safe-area-view/index.ts +16 -7
- package/src/components/scroll-view/index.android.ts +31 -9
- package/src/components/scroll-view/index.ios.ts +17 -4
- package/src/components/scroll-view/projection.ts +290 -63
- package/src/components/scroll-view/shared.ts +93 -26
- package/src/components/scroll-view/sticky-header.ts +25 -8
- package/src/components/section-list/index.ts +61 -19
- package/src/components/switch/index.android.ts +14 -3
- package/src/components/switch/index.ios.ts +14 -3
- package/src/components/switch/shared.ts +15 -4
- package/src/components/text-input.ts +45 -13
- package/src/components/touchable/index.ts +296 -72
- package/src/components/touchable-native-feedback/index.ts +32 -10
- package/src/components/virtualized-list/directives.ts +19 -5
- package/src/components/virtualized-list/index.ts +274 -72
- package/src/components/virtualized-section-list/directives.ts +6 -3
- package/src/components/virtualized-section-list/index.ts +146 -34
- package/src/components.ts +4 -1
- package/src/create-portal/index.ts +8 -2
- package/src/create-tunnel/index.ts +3 -1
- package/src/descriptor-to-angular/index.ts +29 -8
- package/src/diagnostics.ts +138 -0
- package/src/host-instance/index.ts +9 -3
- package/src/index.ts +31 -2
- package/src/modules/animated/create-animated-component.ts +44 -15
- package/src/modules/app-registry/index.ts +3 -1
- package/src/modules/status-bar/index.ts +13 -4
- package/src/primitives/index.ts +46 -2
- package/src/primitives/shared.ts +70 -9
- package/src/render/index.ts +56 -6
- package/src/renderer/index.ts +76 -14
- package/src/services/color-scheme.service.ts +3 -1
- package/src/services/window-dimensions.service.ts +11 -4
|
@@ -86,12 +86,19 @@ import {
|
|
|
86
86
|
TextInputHost,
|
|
87
87
|
} from '../primitives';
|
|
88
88
|
|
|
89
|
-
export type {
|
|
89
|
+
export type {
|
|
90
|
+
ITextInputHandle,
|
|
91
|
+
ITextInputSelection,
|
|
92
|
+
IInputMode,
|
|
93
|
+
IEnterKeyHint,
|
|
94
|
+
ISubmitBehavior,
|
|
95
|
+
};
|
|
90
96
|
|
|
91
97
|
// Mirrors React's ITextInputProps minus nothing (TextInput has no children) — declared
|
|
92
98
|
// per-adapter over the shared accessibility base because Angular's input surface aliases the
|
|
93
99
|
// aria-* keys to camelCase @Inputs, unlike the plain agnostic fields shared across adapters.
|
|
94
|
-
export interface IAngularTextInputProps
|
|
100
|
+
export interface IAngularTextInputProps
|
|
101
|
+
extends IAccessibilityProps, IAriaProps {
|
|
95
102
|
value?: string;
|
|
96
103
|
defaultValue?: string;
|
|
97
104
|
placeholder?: string;
|
|
@@ -158,12 +165,18 @@ export type IAngularTextInputInputs = Omit<
|
|
|
158
165
|
@Component({
|
|
159
166
|
selector: 'TextInput',
|
|
160
167
|
standalone: true,
|
|
161
|
-
hostDirectives: [
|
|
168
|
+
hostDirectives: [
|
|
169
|
+
{ directive: SymbioteStyleInputDirective, inputs: ['style'] },
|
|
170
|
+
],
|
|
162
171
|
schemas: [CUSTOM_ELEMENTS_SCHEMA],
|
|
163
172
|
imports: [SymbioteHostPropsDirective, TextInputHost, MultilineTextInputHost],
|
|
164
173
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
165
174
|
providers: [
|
|
166
|
-
{
|
|
175
|
+
{
|
|
176
|
+
provide: NG_VALUE_ACCESSOR,
|
|
177
|
+
useExisting: forwardRef(() => TextInput),
|
|
178
|
+
multi: true,
|
|
179
|
+
},
|
|
167
180
|
],
|
|
168
181
|
template: `
|
|
169
182
|
@if (isMultiline) {
|
|
@@ -277,8 +290,10 @@ export class TextInput
|
|
|
277
290
|
@Input() accessibilityValue?: IAccessibilityProps['accessibilityValue'];
|
|
278
291
|
@Input() accessibilityActions?: IAccessibilityProps['accessibilityActions'];
|
|
279
292
|
@Input() accessibilityLabelledBy?: string | string[];
|
|
280
|
-
@Input()
|
|
281
|
-
|
|
293
|
+
@Input()
|
|
294
|
+
importantForAccessibility?: IAccessibilityProps['importantForAccessibility'];
|
|
295
|
+
@Input()
|
|
296
|
+
accessibilityLiveRegion?: IAccessibilityProps['accessibilityLiveRegion'];
|
|
282
297
|
@Input() screenReaderFocusable?: boolean;
|
|
283
298
|
@Input() accessibilityViewIsModal?: boolean;
|
|
284
299
|
@Input() accessibilityElementsHidden?: boolean;
|
|
@@ -390,7 +405,9 @@ export class TextInput
|
|
|
390
405
|
const node = this.hostNode;
|
|
391
406
|
if (node === undefined) return;
|
|
392
407
|
dlog('TextInput autoFocus -> focus command');
|
|
393
|
-
this.cancelAutoFocus = whenCommitted(node, () =>
|
|
408
|
+
this.cancelAutoFocus = whenCommitted(node, () =>
|
|
409
|
+
dispatchViewCommand(node, 'focus', []),
|
|
410
|
+
);
|
|
394
411
|
}
|
|
395
412
|
|
|
396
413
|
ngOnDestroy(): void {
|
|
@@ -458,7 +475,12 @@ export class TextInput
|
|
|
458
475
|
clear(): void {
|
|
459
476
|
const node = this.hostNode;
|
|
460
477
|
if (node === undefined) return;
|
|
461
|
-
dispatchViewCommand(node, 'setTextAndSelection', [
|
|
478
|
+
dispatchViewCommand(node, 'setTextAndSelection', [
|
|
479
|
+
this.mostRecentEventCount,
|
|
480
|
+
'',
|
|
481
|
+
0,
|
|
482
|
+
0,
|
|
483
|
+
]);
|
|
462
484
|
this.lastNativeText = '';
|
|
463
485
|
}
|
|
464
486
|
|
|
@@ -488,12 +510,20 @@ export class TextInput
|
|
|
488
510
|
const value = this.value;
|
|
489
511
|
if (!shouldCommandText(this.lastNativeText, value)) return;
|
|
490
512
|
const selStart = this.selection?.start ?? SELECTION_NONE;
|
|
491
|
-
const selEnd =
|
|
513
|
+
const selEnd =
|
|
514
|
+
this.selection?.end ?? this.selection?.start ?? SELECTION_NONE;
|
|
492
515
|
const count = this.mostRecentEventCount;
|
|
493
|
-
dlog(
|
|
516
|
+
dlog(
|
|
517
|
+
`TextInput setTextAndSelection count=${count} text=${JSON.stringify(value)}`,
|
|
518
|
+
);
|
|
494
519
|
this.lastNativeText = value;
|
|
495
520
|
whenCommitted(node, () =>
|
|
496
|
-
dispatchViewCommand(node, 'setTextAndSelection', [
|
|
521
|
+
dispatchViewCommand(node, 'setTextAndSelection', [
|
|
522
|
+
count,
|
|
523
|
+
value,
|
|
524
|
+
selStart,
|
|
525
|
+
selEnd,
|
|
526
|
+
]),
|
|
497
527
|
);
|
|
498
528
|
}
|
|
499
529
|
|
|
@@ -558,8 +588,10 @@ export class TextInput
|
|
|
558
588
|
accessibilityElementsHidden: this.accessibilityElementsHidden,
|
|
559
589
|
accessibilityIgnoresInvertColors: this.accessibilityIgnoresInvertColors,
|
|
560
590
|
accessibilityLanguage: this.accessibilityLanguage,
|
|
561
|
-
accessibilityRespondsToUserInteraction:
|
|
562
|
-
|
|
591
|
+
accessibilityRespondsToUserInteraction:
|
|
592
|
+
this.accessibilityRespondsToUserInteraction,
|
|
593
|
+
accessibilityShowsLargeContentViewer:
|
|
594
|
+
this.accessibilityShowsLargeContentViewer,
|
|
563
595
|
accessibilityLargeContentTitle: this.accessibilityLargeContentTitle,
|
|
564
596
|
role: this.role,
|
|
565
597
|
'aria-label': this.ariaLabel,
|