@uni-design-system/uni-angular 8.3.1 → 8.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import * as _angular_core from '@angular/core';
|
|
2
2
|
import { Signal, WritableSignal, InjectionToken, ElementRef, TemplateRef, OnInit, OnDestroy, AfterViewInit } from '@angular/core';
|
|
3
3
|
import * as _uni_design_system_uni_core from '@uni-design-system/uni-core';
|
|
4
|
-
import { IconName, Variant, ContainerColorToken, PaletteConfig, GenerateColorsConfig, Radii, UniTheme, ComponentName, ComponentTheme, NullableSize, ThemeName, ThemeParseResult, TextRole, ContentColorToken, Size, Thickness, NullableStyleExpression, ColorKey, ColorToken, Typeface, Radius, OptionalSize, Border, Shadow, ZIndexableElements, Elevation, RadiiSize, TextColor, JustifyContent, StyleExpression, Orientation, CssLength, OptionalAlignSelf, OptionalAlignItems, OptionalAlignContent, OptionalJustifyContent, OptionalDisplay, OptionalPosition, OptionalOverflow, OptionalFlexDirection, OptionalTextAlign, OptionalWrap, TagTone, ColorScheme, ColorCategory, ThemeShape, ContrastCheck, Colors, GenerationInput } from '@uni-design-system/uni-core';
|
|
4
|
+
import { IconName, Variant, ContainerColorToken, PaletteConfig, GenerateColorsConfig, Radii, UniTheme, ComponentName, ComponentTheme, NullableSize, MotionToken, ThemeName, ThemeParseResult, TextRole, ContentColorToken, Size, Thickness, NullableStyleExpression, ColorKey, ColorToken, Typeface, Radius, Motion, OptionalSize, Border, Shadow, ZIndexableElements, Elevation, RadiiSize, TextColor, JustifyContent, StyleExpression, Orientation, CssLength, OptionalAlignSelf, OptionalAlignItems, OptionalAlignContent, OptionalJustifyContent, OptionalDisplay, OptionalPosition, OptionalOverflow, OptionalFlexDirection, OptionalTextAlign, OptionalWrap, TagTone, ColorScheme, ColorCategory, ThemeShape, ContrastCheck, Colors, GenerationInput } from '@uni-design-system/uni-core';
|
|
5
5
|
import * as _uni_design_system_uni_angular from '@uni-design-system/uni-angular';
|
|
6
6
|
import { FormValueControl, FormCheckboxControl } from '@angular/forms/signals';
|
|
7
7
|
import { CSSObject } from '@emotion/css/create-instance';
|
|
@@ -44,6 +44,43 @@ declare const visuallyHidden: {
|
|
|
44
44
|
declare function motionSafe<T extends object>(styles: T): {
|
|
45
45
|
'@media (prefers-reduced-motion: no-preference)': T;
|
|
46
46
|
};
|
|
47
|
+
interface Announcer {
|
|
48
|
+
/**
|
|
49
|
+
* Current live-region text. Bind it to a visually hidden element that is
|
|
50
|
+
* already in the DOM when the component renders — a region added at the
|
|
51
|
+
* moment it gains text is not reliably announced:
|
|
52
|
+
*
|
|
53
|
+
* ```html
|
|
54
|
+
* <span role="status" aria-live="polite" [class]="srOnly">
|
|
55
|
+
* {{ announcer.message() }}
|
|
56
|
+
* </span>
|
|
57
|
+
* ```
|
|
58
|
+
*/
|
|
59
|
+
readonly message: Signal<string>;
|
|
60
|
+
/** Announce `text`, even when it repeats what was just announced. */
|
|
61
|
+
announce(text: string): void;
|
|
62
|
+
}
|
|
63
|
+
/**
|
|
64
|
+
* A polite live region's text, for the running commentary a form control owes
|
|
65
|
+
* a screen reader: commits, clears, refused entries, result counts — changes
|
|
66
|
+
* a sighted user sees but that are otherwise silent.
|
|
67
|
+
*
|
|
68
|
+
* Extracted because five controls (`uni-combobox`, `uni-tag-input`,
|
|
69
|
+
* `uni-time-input`, `uni-date-input`, `uni-calendar`) carried byte-identical
|
|
70
|
+
* copies, including the repeat trick below — the kind of subtlety that is
|
|
71
|
+
* quietly dropped when the sixth control hand-rolls its own.
|
|
72
|
+
*
|
|
73
|
+
* Announcing the same text twice must still be heard: assistive tech reads a
|
|
74
|
+
* live region when its content *changes*, so setting an identical string is a
|
|
75
|
+
* no-op and the second "No match." would be silent. A trailing space breaks
|
|
76
|
+
* the equality without changing a word of what is read. Successive repeats
|
|
77
|
+
* alternate between the padded and unpadded form, so nothing accumulates.
|
|
78
|
+
*
|
|
79
|
+
* Deliberately holds no DOM and no styling: the region belongs to the
|
|
80
|
+
* component's own template, where its placement and visually-hidden class are
|
|
81
|
+
* already the component's business.
|
|
82
|
+
*/
|
|
83
|
+
declare function createAnnouncer(): Announcer;
|
|
47
84
|
|
|
48
85
|
/**
|
|
49
86
|
* Canonical date/time value shapes shared by `uni-calendar`,
|
|
@@ -162,6 +199,18 @@ interface ListboxNavigationConfig {
|
|
|
162
199
|
* nearest enabled option; an all-disabled list never activates.
|
|
163
200
|
*/
|
|
164
201
|
disabled?: (index: number) => boolean;
|
|
202
|
+
/**
|
|
203
|
+
* Let Home/End jump to the ends of the list. Default false.
|
|
204
|
+
*
|
|
205
|
+
* In an editable combobox those keys belong to the caret — APG reserves
|
|
206
|
+
* them for text editing, and a control that steals them makes the text
|
|
207
|
+
* un-navigable while its list is open. Opt in only where focus is *not* in
|
|
208
|
+
* a text field (uni-multi-select-dropdown, whose focus rides the option
|
|
209
|
+
* checkboxes). Nothing is lost by leaving it off: opening with ArrowUp
|
|
210
|
+
* already lands on the last option, ArrowDown on the first, and navigation
|
|
211
|
+
* wraps at both ends.
|
|
212
|
+
*/
|
|
213
|
+
homeEndNavigates?: boolean;
|
|
165
214
|
}
|
|
166
215
|
/**
|
|
167
216
|
* The keyboard and ARIA bookkeeping shared by every combobox-style popup:
|
|
@@ -172,8 +221,9 @@ interface ListboxNavigationConfig {
|
|
|
172
221
|
* Extracted because three controls need the identical contract
|
|
173
222
|
* (`uni-search-input`, `uni-tag-input`, and the multi-select upgrade), and the
|
|
174
223
|
* parts that silently drift between hand-rolled copies all live here: the
|
|
175
|
-
* wrap-around arithmetic
|
|
176
|
-
*
|
|
224
|
+
* wrap-around arithmetic and keeping the active id in sync with the option
|
|
225
|
+
* list. Home/End are opt-in (`homeEndNavigates`) because a text field's caret
|
|
226
|
+
* has the better claim on them.
|
|
177
227
|
*
|
|
178
228
|
* `Enter` and `Escape` are deliberately *not* handled: what they mean depends
|
|
179
229
|
* on the control (submit a search, commit a typed token, clear the field), and
|
|
@@ -187,6 +237,7 @@ declare class ListboxNavigation {
|
|
|
187
237
|
private readonly _activeIndex;
|
|
188
238
|
private readonly wrap;
|
|
189
239
|
private readonly isDisabled;
|
|
240
|
+
private readonly homeEndNavigates;
|
|
190
241
|
/** Whether the popup is showing. Also false when there is nothing to show. */
|
|
191
242
|
readonly open: Signal<boolean>;
|
|
192
243
|
/** Index of the highlighted option, or -1 when none is active. */
|
|
@@ -201,9 +252,9 @@ declare class ListboxNavigation {
|
|
|
201
252
|
hide(): void;
|
|
202
253
|
setActive(index: number): void;
|
|
203
254
|
/**
|
|
204
|
-
* Handle ArrowDown / ArrowUp
|
|
205
|
-
* Returns true when the key was consumed, so
|
|
206
|
-
* its own handling for everything else.
|
|
255
|
+
* Handle ArrowDown / ArrowUp — and Home / End where `homeEndNavigates` is
|
|
256
|
+
* on. Opens the popup if needed. Returns true when the key was consumed, so
|
|
257
|
+
* a caller can fall through to its own handling for everything else.
|
|
207
258
|
*/
|
|
208
259
|
navigate(event: KeyboardEvent): boolean;
|
|
209
260
|
private nextIndex;
|
|
@@ -322,8 +373,14 @@ declare function isToggleOpen(event: Event): boolean;
|
|
|
322
373
|
* top layer: `transition-behavior: allow-discrete` over the `hidden` keys plus
|
|
323
374
|
* `display`/`overlay`, the shown state under `:popover-open`, and
|
|
324
375
|
* `@starting-style` so entry transitions run from the hidden state.
|
|
376
|
+
*
|
|
377
|
+
* `display` and `overlay` must ride along or the element cannot animate into
|
|
378
|
+
* and out of the top layer at all — it would simply appear and vanish.
|
|
379
|
+
*
|
|
380
|
+
* `timingFunction` is omitted from the output when not given, leaving the CSS
|
|
381
|
+
* initial value (`ease`), so callers that never asked for one are unaffected.
|
|
325
382
|
*/
|
|
326
|
-
declare function discreteOverlayTransition(durationMs: number, hidden: Record<string, string | number>, shown: Record<string, string | number
|
|
383
|
+
declare function discreteOverlayTransition(durationMs: number, hidden: Record<string, string | number>, shown: Record<string, string | number>, timingFunction?: string): Record<string, unknown>;
|
|
327
384
|
/**
|
|
328
385
|
* Returns focus to `target` when an overlay closes while focus was inside its
|
|
329
386
|
* panel (or was dropped on `<body>` by the top layer closing), so keyboard
|
|
@@ -562,6 +619,7 @@ declare class ThemeService {
|
|
|
562
619
|
borders: Signal<Partial<Record<string, string>>>;
|
|
563
620
|
shadows: Signal<Partial<Record<string, string>>>;
|
|
564
621
|
icons: Signal<_uni_design_system_uni_core.Icons>;
|
|
622
|
+
motions: Signal<Partial<Record<string, MotionToken>>>;
|
|
565
623
|
constructor();
|
|
566
624
|
/**
|
|
567
625
|
* Activate a registered theme. Returns false — touching nothing, persisting
|
|
@@ -654,6 +712,12 @@ declare class ThemeService {
|
|
|
654
712
|
colorPalette: () => Partial<Record<string, string>>;
|
|
655
713
|
color(color?: ColorKey): NullableStyleExpression;
|
|
656
714
|
getDashedBorder(color: ColorKey | undefined, radius: Radius | undefined): NullableStyleExpression;
|
|
715
|
+
/**
|
|
716
|
+
* Resolves a named motion primitive. Falls back to `popup` and then to a
|
|
717
|
+
* hard default, so a theme that predates the motion scale — or names a
|
|
718
|
+
* token that isn't there — still animates rather than snapping.
|
|
719
|
+
*/
|
|
720
|
+
motion(token: Motion | undefined): MotionToken;
|
|
657
721
|
radius(size: Radius | undefined): NullableStyleExpression;
|
|
658
722
|
getRadiusLeft(size: Radius | undefined): NullableStyleExpression;
|
|
659
723
|
getRadiusRight(size: Radius | undefined): NullableStyleExpression;
|
|
@@ -1016,7 +1080,8 @@ declare class UniCalendarComponent extends BaseComponent<UniCalendarOptions> imp
|
|
|
1016
1080
|
/** Hover/focus candidate painting the preview band while a range is pending. */
|
|
1017
1081
|
protected readonly previewDate: _angular_core.WritableSignal<string>;
|
|
1018
1082
|
/** Live-region text; selections are otherwise silent for a screen reader. */
|
|
1019
|
-
|
|
1083
|
+
/** Commits, clears and refusals are otherwise silent to a screen reader. */
|
|
1084
|
+
protected readonly announcer: _uni_design_system_uni_angular.Announcer;
|
|
1020
1085
|
protected readonly resolvedLocale: _angular_core.Signal<string>;
|
|
1021
1086
|
protected readonly resolvedWeekStart: _angular_core.Signal<number>;
|
|
1022
1087
|
/**
|
|
@@ -1062,7 +1127,6 @@ declare class UniCalendarComponent extends BaseComponent<UniCalendarOptions> imp
|
|
|
1062
1127
|
private focusDay;
|
|
1063
1128
|
private pickFocus;
|
|
1064
1129
|
private firstEnabledInView;
|
|
1065
|
-
private announce;
|
|
1066
1130
|
private readonly daySize;
|
|
1067
1131
|
protected readonly className: _angular_core.Signal<string>;
|
|
1068
1132
|
protected readonly navClass: _angular_core.Signal<string>;
|
|
@@ -1118,7 +1182,16 @@ interface UniCalloutOptions {
|
|
|
1118
1182
|
spotlightRadius: Radius;
|
|
1119
1183
|
/** Spotlight ring width, px. */
|
|
1120
1184
|
ringWidth: number;
|
|
1121
|
-
|
|
1185
|
+
/**
|
|
1186
|
+
* Named motion primitive for the open/close fade. Defaults to `panel`.
|
|
1187
|
+
*/
|
|
1188
|
+
motion?: Motion;
|
|
1189
|
+
/**
|
|
1190
|
+
* @deprecated Use `motion` and retime the token instead — one edit covers
|
|
1191
|
+
* every panel rather than this one. Still honoured when set, and wins over
|
|
1192
|
+
* `motion` so existing themes are unaffected. Removed next major.
|
|
1193
|
+
*/
|
|
1194
|
+
transitionMs?: number;
|
|
1122
1195
|
}
|
|
1123
1196
|
|
|
1124
1197
|
/**
|
|
@@ -1200,6 +1273,12 @@ declare class UniCalloutComponent extends BaseComponent<UniCalloutOptions> {
|
|
|
1200
1273
|
/** A stray click shouldn't kill onboarding: nudge the panel instead. */
|
|
1201
1274
|
protected onBackdropClick(): void;
|
|
1202
1275
|
private readonly spotlight;
|
|
1276
|
+
/**
|
|
1277
|
+
* Timing for the open/close fade and the teardown that follows it. The
|
|
1278
|
+
* deprecated `transitionMs` wins when a theme still sets it, so existing
|
|
1279
|
+
* themes keep their timing; otherwise the `motion` token decides.
|
|
1280
|
+
*/
|
|
1281
|
+
private readonly motion;
|
|
1203
1282
|
protected readonly scrimClassName: _angular_core.Signal<string>;
|
|
1204
1283
|
protected readonly windowClassName: _angular_core.Signal<string>;
|
|
1205
1284
|
protected stripClassName(side: (typeof this.stripSides)[number]): string;
|
|
@@ -1243,6 +1322,10 @@ interface UniCardOptions {
|
|
|
1243
1322
|
border?: Border;
|
|
1244
1323
|
/** Optional elevation shadow token; cards are flat by default. */
|
|
1245
1324
|
elevation?: Elevation;
|
|
1325
|
+
/**
|
|
1326
|
+
* @deprecated Never read by `uni-card` — setting it has no effect and never
|
|
1327
|
+
* had. Removed next major; nothing needs to replace it.
|
|
1328
|
+
*/
|
|
1246
1329
|
transitionSpeed?: number;
|
|
1247
1330
|
}
|
|
1248
1331
|
|
|
@@ -1320,7 +1403,9 @@ interface UniComboboxOptions {
|
|
|
1320
1403
|
activeColor?: ContainerColorToken;
|
|
1321
1404
|
/** Scroll height in rows — the list scrolls past this, never truncates. */
|
|
1322
1405
|
maxVisibleOptions?: number;
|
|
1323
|
-
descriptionColor?: ContentColorToken;
|
|
1406
|
+
descriptionColor?: ContentColorToken; /** Named motion primitive for the suggestion popup's open animation.
|
|
1407
|
+
Defaults to `popup` — the token `uni-dropdown` uses. */
|
|
1408
|
+
motion?: Motion;
|
|
1324
1409
|
}
|
|
1325
1410
|
|
|
1326
1411
|
/**
|
|
@@ -1376,9 +1461,14 @@ declare class UniComboboxComponent<T> extends BaseComponent<UniComboboxOptions>
|
|
|
1376
1461
|
private readonly listRef;
|
|
1377
1462
|
/** Cancelled on destroy — a late tick would emit on a destroyed OutputRef. */
|
|
1378
1463
|
private queryTimer?;
|
|
1464
|
+
/** Ties the popup to the field so the browser tracks it in the top layer. */
|
|
1465
|
+
private readonly anchor;
|
|
1466
|
+
/** `manual` where the top layer is usable, else null — see the popup helper. */
|
|
1467
|
+
protected readonly popupAttr: "manual";
|
|
1379
1468
|
constructor();
|
|
1380
1469
|
protected readonly srOnly: string;
|
|
1381
|
-
|
|
1470
|
+
/** Commits, clears and refusals are otherwise silent to a screen reader. */
|
|
1471
|
+
protected readonly announcer: _uni_design_system_uni_angular.Announcer;
|
|
1382
1472
|
/** null → the field shows the committed label; a string is an uncommitted draft. */
|
|
1383
1473
|
protected readonly draft: _angular_core.WritableSignal<string>;
|
|
1384
1474
|
/**
|
|
@@ -1429,7 +1519,6 @@ declare class UniComboboxComponent<T> extends BaseComponent<UniComboboxOptions>
|
|
|
1429
1519
|
private closeList;
|
|
1430
1520
|
private scrollToActive;
|
|
1431
1521
|
private setFieldText;
|
|
1432
|
-
private announce;
|
|
1433
1522
|
protected readonly className: _angular_core.Signal<string>;
|
|
1434
1523
|
protected readonly rowClass: _angular_core.Signal<string>;
|
|
1435
1524
|
protected readonly inputClass: _angular_core.Signal<string>;
|
|
@@ -1599,7 +1688,8 @@ declare class UniDateInputComponent extends BaseComponent<UniDateInputOptions> i
|
|
|
1599
1688
|
protected readonly srOnly: string;
|
|
1600
1689
|
/** A refused commit — styles the field and sets aria-invalid until edited. */
|
|
1601
1690
|
protected readonly draftInvalid: _angular_core.WritableSignal<boolean>;
|
|
1602
|
-
|
|
1691
|
+
/** Commits, clears and refusals are otherwise silent to a screen reader. */
|
|
1692
|
+
protected readonly announcer: _uni_design_system_uni_angular.Announcer;
|
|
1603
1693
|
protected readonly toggleElement: _angular_core.Signal<any>;
|
|
1604
1694
|
protected readonly popupOpen: _angular_core.Signal<boolean>;
|
|
1605
1695
|
protected readonly resolvedLocale: _angular_core.Signal<string>;
|
|
@@ -1625,7 +1715,6 @@ declare class UniDateInputComponent extends BaseComponent<UniDateInputOptions> i
|
|
|
1625
1715
|
/** The popup is a focus-holding dialog: Tab cycles inside it (APG pattern). */
|
|
1626
1716
|
protected onPopupKeydown(event: KeyboardEvent): void;
|
|
1627
1717
|
private setFieldText;
|
|
1628
|
-
private announce;
|
|
1629
1718
|
protected readonly className: _angular_core.Signal<string>;
|
|
1630
1719
|
protected readonly rowClass: _angular_core.Signal<string>;
|
|
1631
1720
|
protected readonly inputClass: _angular_core.Signal<string>;
|
|
@@ -1906,12 +1995,13 @@ interface UniDropdownOptions {
|
|
|
1906
1995
|
borderRadius: Radius;
|
|
1907
1996
|
shadow: Shadow;
|
|
1908
1997
|
color: ContainerColorToken;
|
|
1998
|
+
/** Named motion primitive for the open/close animation. */
|
|
1999
|
+
motion: Motion;
|
|
1909
2000
|
}
|
|
1910
2001
|
|
|
1911
2002
|
type AriaHasPopup = 'menu' | 'listbox' | 'dialog' | 'grid' | 'tree' | 'true';
|
|
1912
2003
|
declare class UniDropdownComponent extends BaseComponent<UniDropdownOptions> implements OnInit, OnDestroy {
|
|
1913
2004
|
private renderer;
|
|
1914
|
-
private delay;
|
|
1915
2005
|
showing: _angular_core.WritableSignal<boolean>;
|
|
1916
2006
|
trigger: _angular_core.InputSignal<HTMLElement>;
|
|
1917
2007
|
placement: _angular_core.InputSignal<Placement>;
|
|
@@ -1937,7 +2027,6 @@ declare class UniDropdownComponent extends BaseComponent<UniDropdownOptions> imp
|
|
|
1937
2027
|
dropdownRef: ElementRef<HTMLDivElement>;
|
|
1938
2028
|
private get _trigger();
|
|
1939
2029
|
private get _dropdown();
|
|
1940
|
-
private transformOriginMap;
|
|
1941
2030
|
dropdownClass: _angular_core.Signal<string>;
|
|
1942
2031
|
/** The element that receives focus and carries the ARIA popup state. */
|
|
1943
2032
|
private get _focusTarget();
|
|
@@ -1945,18 +2034,12 @@ declare class UniDropdownComponent extends BaseComponent<UniDropdownOptions> imp
|
|
|
1945
2034
|
/**
|
|
1946
2035
|
* Scale the open/close animation from the corner touching the trigger,
|
|
1947
2036
|
* wherever the browser actually placed the panel. The static
|
|
1948
|
-
* `
|
|
2037
|
+
* `TRANSFORM_ORIGINS` entry covers only the *requested* placement; with
|
|
1949
2038
|
* `position-try-fallbacks` the panel may have flipped at a viewport edge,
|
|
1950
2039
|
* and a `bottom-end` picker rendered above its field would otherwise still
|
|
1951
2040
|
* animate from the top-right corner.
|
|
1952
2041
|
*/
|
|
1953
2042
|
private syncTransformOrigin;
|
|
1954
|
-
/**
|
|
1955
|
-
* Returns focus to the trigger when the popover closes while focus was
|
|
1956
|
-
* inside it (or was dropped on <body> by the top layer closing), so
|
|
1957
|
-
* keyboard users are never stranded (WCAG 2.4.3).
|
|
1958
|
-
*/
|
|
1959
|
-
private restoreFocus;
|
|
1960
2043
|
toggleDropdown(): void;
|
|
1961
2044
|
hideDropdown(): void;
|
|
1962
2045
|
ngOnDestroy(): void;
|
|
@@ -1967,13 +2050,20 @@ declare class UniDropdownComponent extends BaseComponent<UniDropdownOptions> imp
|
|
|
1967
2050
|
/** Theme-level options for `uni-expand`. */
|
|
1968
2051
|
interface UniExpandOptions {
|
|
1969
2052
|
/**
|
|
1970
|
-
*
|
|
1971
|
-
*
|
|
1972
|
-
*
|
|
1973
|
-
*
|
|
1974
|
-
*
|
|
1975
|
-
*
|
|
1976
|
-
|
|
2053
|
+
* Named motion primitive for the reveal. Defaults to `reveal`, whose
|
|
2054
|
+
* duration is the *base* speed at a 240px-tall region — the actual duration
|
|
2055
|
+
* scales with content height (√-of-height, clamped — `expandDuration` in
|
|
2056
|
+
* uni-core) so short regions stay snappy and tall ones aren't rushed. Its
|
|
2057
|
+
* easing drives the animation curve, and `uni-expand-toggle`'s chevron
|
|
2058
|
+
* reads the same token so trigger and region move on one clock.
|
|
2059
|
+
*/
|
|
2060
|
+
motion?: Motion;
|
|
2061
|
+
/**
|
|
2062
|
+
* Base reveal/collapse duration in seconds.
|
|
2063
|
+
*
|
|
2064
|
+
* @deprecated Use `motion` and retime the `reveal` token instead — one edit
|
|
2065
|
+
* covers the region and its toggle together. Still honoured when set, and
|
|
2066
|
+
* wins over `motion`, so existing themes are unaffected. Removed next major.
|
|
1977
2067
|
*/
|
|
1978
2068
|
transitionSpeed?: number;
|
|
1979
2069
|
}
|
|
@@ -2017,6 +2107,14 @@ declare class UniExpandComponent extends BaseComponent<UniExpandOptions> {
|
|
|
2017
2107
|
* (`[style.transition-duration]="expand.duration() + 's'"`).
|
|
2018
2108
|
*/
|
|
2019
2109
|
readonly duration: _angular_core.Signal<number>;
|
|
2110
|
+
/**
|
|
2111
|
+
* Base speed in seconds, before the size-aware scaling above. The
|
|
2112
|
+
* deprecated `transitionSpeed` option wins when a theme still sets it;
|
|
2113
|
+
* otherwise the `motion` token's duration (ms) converts to seconds.
|
|
2114
|
+
*/
|
|
2115
|
+
private readonly baseSpeed;
|
|
2116
|
+
/** Curve for the reveal, from the same token as the speed. */
|
|
2117
|
+
private readonly easing;
|
|
2020
2118
|
protected readonly cssDuration: _angular_core.Signal<string>;
|
|
2021
2119
|
/**
|
|
2022
2120
|
* A custom element is `display: inline` by default, which would lay the
|
|
@@ -2043,8 +2141,8 @@ declare class UniExpandComponent extends BaseComponent<UniExpandOptions> {
|
|
|
2043
2141
|
* `duration`, so the classes stay static while timing tracks the theme and
|
|
2044
2142
|
* the content's size through signals alone.
|
|
2045
2143
|
*/
|
|
2046
|
-
expandAnimation: string
|
|
2047
|
-
collapseAnimation: string
|
|
2144
|
+
expandAnimation: _angular_core.Signal<string>;
|
|
2145
|
+
collapseAnimation: _angular_core.Signal<string>;
|
|
2048
2146
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<UniExpandComponent, never>;
|
|
2049
2147
|
static ɵcmp: _angular_core.ɵɵComponentDeclaration<UniExpandComponent, "uni-expand", never, { "collapsed": { "alias": "collapsed"; "required": false; "isSignal": true; }; "transitionSpeed": { "alias": "transitionSpeed"; "required": false; "isSignal": true; }; }, { "collapsed": "collapsedChange"; }, never, ["*"], true, never>;
|
|
2050
2148
|
}
|
|
@@ -2073,7 +2171,9 @@ declare class UniExpandToggleComponent {
|
|
|
2073
2171
|
* region is size-scaled or overridden per instance.
|
|
2074
2172
|
*/
|
|
2075
2173
|
transitionSpeed: _angular_core.InputSignal<number>;
|
|
2076
|
-
/** Fallback clock when no `transitionSpeed` is bound: the `expand`
|
|
2174
|
+
/** Fallback clock when no `transitionSpeed` is bound: the `expand` entry's
|
|
2175
|
+
motion token — the same one the region itself reads. */
|
|
2176
|
+
private readonly themeService;
|
|
2077
2177
|
private readonly expandOptions;
|
|
2078
2178
|
private readonly speed;
|
|
2079
2179
|
/**
|
|
@@ -2176,6 +2276,54 @@ declare class UniDebounceInputComponent {
|
|
|
2176
2276
|
static ɵcmp: _angular_core.ɵɵComponentDeclaration<UniDebounceInputComponent, "uni-debounce-input", never, { "inputName": { "alias": "inputName"; "required": false; "isSignal": true; }; "inputId": { "alias": "inputId"; "required": false; "isSignal": true; }; "debounceTime": { "alias": "debounceTime"; "required": false; "isSignal": true; }; "label": { "alias": "label"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "role": { "alias": "role"; "required": false; "isSignal": true; }; "ariaExpanded": { "alias": "ariaExpanded"; "required": false; "isSignal": true; }; "ariaControls": { "alias": "ariaControls"; "required": false; "isSignal": true; }; "ariaActivedescendant": { "alias": "ariaActivedescendant"; "required": false; "isSignal": true; }; }, { "change": "change"; }, never, ["[pre-input]", "[post-input]"], true, never>;
|
|
2177
2277
|
}
|
|
2178
2278
|
|
|
2279
|
+
/**
|
|
2280
|
+
* Whether the browser can keep a top-layer popup attached to its field.
|
|
2281
|
+
*
|
|
2282
|
+
* The top layer and anchor positioning must be adopted together, and support
|
|
2283
|
+
* for them does not arrive together: Safari shipped `popover` in 17 but
|
|
2284
|
+
* `position-anchor` only in 26. Promoting the popup without anchor support
|
|
2285
|
+
* would strand it — a top-layer element has no positioned ancestor, so the
|
|
2286
|
+
* fallback's `position: absolute; top: 100%` would resolve against the
|
|
2287
|
+
* viewport and drop the list a full screen height down the page. So the
|
|
2288
|
+
* `popover` attribute is gated on this too, not just the anchored CSS.
|
|
2289
|
+
*
|
|
2290
|
+
* Undefined `CSS` (jsdom) reads as unsupported, which is also what keeps the
|
|
2291
|
+
* popup in the normal flow — and the component specs unchanged — under test.
|
|
2292
|
+
*/
|
|
2293
|
+
declare const supportsAnchoredPopup: () => boolean;
|
|
2294
|
+
/** `popover` attribute value for a listbox popup, or null where unsupported.
|
|
2295
|
+
Always `manual`: these controls already own dismissal (focusout, Escape,
|
|
2296
|
+
commit), and `auto`'s light-dismiss fires on pointerdown outside the
|
|
2297
|
+
popup — which includes their own field, closing the list behind the
|
|
2298
|
+
component's back on every click into the input. */
|
|
2299
|
+
declare const listboxPopupAttr: () => "manual" | null;
|
|
2300
|
+
/**
|
|
2301
|
+
* A document-unique `anchor-name`, plus the style fragment that puts it on the
|
|
2302
|
+
* field wrapper. Spread `style` into the wrapper's `css()` and pass `name` to
|
|
2303
|
+
* {@link listboxPopupStyles}.
|
|
2304
|
+
*/
|
|
2305
|
+
declare function newListboxAnchor(): {
|
|
2306
|
+
name: string;
|
|
2307
|
+
style: CSSObject;
|
|
2308
|
+
};
|
|
2309
|
+
/**
|
|
2310
|
+
* Shows the popup in the top layer as soon as it renders, and scales its
|
|
2311
|
+
* entry animation out of the edge it actually opened from.
|
|
2312
|
+
*
|
|
2313
|
+
* The popups are `@if`-rendered, and a `popover` element is `display: none`
|
|
2314
|
+
* until `showPopover()` runs — so appearing in the DOM is not enough. Runs on
|
|
2315
|
+
* every render pass; `showPopover()` on an already-open popup throws, which is
|
|
2316
|
+
* the cheapest way to ask "is it open?".
|
|
2317
|
+
*
|
|
2318
|
+
* The origin is measured rather than assumed: `position-try-fallbacks` may
|
|
2319
|
+
* have flipped the popup above its field near the bottom of the viewport, and
|
|
2320
|
+
* the static `top center` would then grow it from the wrong edge. Measuring
|
|
2321
|
+
* forces layout, so it lands before the first frame of the transition.
|
|
2322
|
+
*
|
|
2323
|
+
* Call from an injection context (a field initializer or the constructor);
|
|
2324
|
+
* the component's host element is the anchor.
|
|
2325
|
+
*/
|
|
2326
|
+
declare function promoteListboxPopup(ref: Signal<ElementRef<HTMLElement> | undefined>): void;
|
|
2179
2327
|
/**
|
|
2180
2328
|
* The theme options every listbox popup shares — the "list trio" plus the
|
|
2181
2329
|
* active-option fill. Component option interfaces (searchInput, tagInput,
|
|
@@ -2192,11 +2340,14 @@ interface UniListboxPopupOptions {
|
|
|
2192
2340
|
/** Active/hover option fill; the on-color pair is derived. Must contrast
|
|
2193
2341
|
with `listColor` or keyboard navigation turns invisible. */
|
|
2194
2342
|
activeColor?: ColorKey;
|
|
2343
|
+
/** Named motion primitive for the open animation. Defaults to `popup`, the
|
|
2344
|
+
same token `uni-dropdown` uses, so every panel in a form opens alike. */
|
|
2345
|
+
motion?: Motion;
|
|
2195
2346
|
}
|
|
2196
2347
|
/**
|
|
2197
|
-
* Style block for the popup behind every `ListboxNavigation` consumer:
|
|
2198
|
-
*
|
|
2199
|
-
*
|
|
2348
|
+
* Style block for the popup behind every `ListboxNavigation` consumer: a
|
|
2349
|
+
* `ul[role="listbox"]` under its field wrapper, with the shared option chrome
|
|
2350
|
+
* and active/hover highlight.
|
|
2200
2351
|
*
|
|
2201
2352
|
* Extracted because four components (`uni-search-input`, `uni-tag-input`,
|
|
2202
2353
|
* `uni-time-input`, `uni-combobox`) carried hand-rolled copies, and the parts
|
|
@@ -2204,12 +2355,19 @@ interface UniListboxPopupOptions {
|
|
|
2204
2355
|
* trio, and the `activeColor` pair that themes re-point when their container
|
|
2205
2356
|
* tokens don't contrast (see the Wellsourced overrides).
|
|
2206
2357
|
*
|
|
2358
|
+
* Pass `anchor` (from {@link newListboxAnchor}) to get the top-layer
|
|
2359
|
+
* positioning where the browser supports it. Without it — or on a browser that
|
|
2360
|
+
* lacks anchor positioning — the popup stays absolutely positioned under a
|
|
2361
|
+
* `position: relative` wrapper, which clips inside `overflow: hidden`
|
|
2362
|
+
* ancestors but at least stays on its field.
|
|
2363
|
+
*
|
|
2207
2364
|
* Compose extras with the array form — `css([listboxPopupStyles(…), {…}])` —
|
|
2208
2365
|
* so a component's own `& [role="option"]` block cascades after this one
|
|
2209
2366
|
* instead of replacing it (an object spread would overwrite the key).
|
|
2210
2367
|
*/
|
|
2211
|
-
declare const listboxPopupStyles: (theme: ThemeService, options: UniListboxPopupOptions, { maxHeight }?: {
|
|
2368
|
+
declare const listboxPopupStyles: (theme: ThemeService, options: UniListboxPopupOptions, { maxHeight, anchor }?: {
|
|
2212
2369
|
maxHeight?: number;
|
|
2370
|
+
anchor?: string;
|
|
2213
2371
|
}) => CSSObject;
|
|
2214
2372
|
|
|
2215
2373
|
declare class UniIconComponent {
|
|
@@ -2298,7 +2456,11 @@ interface UniInputBoxOptions {
|
|
|
2298
2456
|
border: Border;
|
|
2299
2457
|
errorBorder: Border;
|
|
2300
2458
|
borderRadius: Radius;
|
|
2301
|
-
|
|
2459
|
+
/**
|
|
2460
|
+
* @deprecated Never read by `uni-input-box` — setting it has no effect and
|
|
2461
|
+
* never had. Optional now, removed next major.
|
|
2462
|
+
*/
|
|
2463
|
+
transitionSpeed?: number;
|
|
2302
2464
|
shadow?: Shadow;
|
|
2303
2465
|
errorShadow?: Shadow;
|
|
2304
2466
|
height?: string | number;
|
|
@@ -2514,7 +2676,15 @@ interface UniMenuItemOptions {
|
|
|
2514
2676
|
hoverColor?: ContainerColorToken;
|
|
2515
2677
|
/** Trailing symbol marking the active item; undefined/'' renders none. */
|
|
2516
2678
|
activeSymbol?: string;
|
|
2517
|
-
/**
|
|
2679
|
+
/** Named motion primitive for the hover/focus fill. Defaults to `control`;
|
|
2680
|
+
omit both this and `transitionSpeed` for no transition at all. */
|
|
2681
|
+
motion?: Motion;
|
|
2682
|
+
/**
|
|
2683
|
+
* Hover/focus transition in seconds; 0 switches instantly.
|
|
2684
|
+
*
|
|
2685
|
+
* @deprecated Use `motion` and retime the `control` token instead. Still
|
|
2686
|
+
* honoured when set, and wins over `motion`. Removed next major.
|
|
2687
|
+
*/
|
|
2518
2688
|
transitionSpeed?: number;
|
|
2519
2689
|
}
|
|
2520
2690
|
|
|
@@ -2577,6 +2747,7 @@ declare class UniMultiSelectComponent<T = unknown> {
|
|
|
2577
2747
|
protected readonly optionsWithSelections: _angular_core.Signal<Option<T>[]>;
|
|
2578
2748
|
protected readonly className: string;
|
|
2579
2749
|
handleCheck(checked: boolean, value: T): void;
|
|
2750
|
+
/** Selects every *enabled* option — a disabled option is not committable. */
|
|
2580
2751
|
selectAll(): void;
|
|
2581
2752
|
deselectAll(): void;
|
|
2582
2753
|
optionWrapper: string;
|
|
@@ -2630,6 +2801,10 @@ declare class UniMultiSelectDropdownComponent<T = unknown> extends BaseComponent
|
|
|
2630
2801
|
* arithmetic — wrapping, Home/End, and never pointing past a list the
|
|
2631
2802
|
* filter has narrowed — the same contract `uni-search-input` and
|
|
2632
2803
|
* `uni-tag-input` use, so the keys behave identically across all three.
|
|
2804
|
+
*
|
|
2805
|
+
* `disabled` indexes into `filteredOptions`, matching `count`: arrows step
|
|
2806
|
+
* over disabled rows and Home/End land on the nearest enabled one, so the
|
|
2807
|
+
* focus target is always a checkbox that can actually take focus.
|
|
2633
2808
|
*/
|
|
2634
2809
|
protected readonly list: _uni_design_system_uni_angular.ListboxNavigation;
|
|
2635
2810
|
/** Announced with the selection so the count is not left to guesswork. */
|
|
@@ -2648,6 +2823,11 @@ declare class UniMultiSelectDropdownComponent<T = unknown> extends BaseComponent
|
|
|
2648
2823
|
protected onPanelKeydown(event: KeyboardEvent): void;
|
|
2649
2824
|
/** Keeps the active index in step when focus lands on a row by pointer. */
|
|
2650
2825
|
protected onOptionFocus(index: number): void;
|
|
2826
|
+
/**
|
|
2827
|
+
* Selects every *enabled* option. A disabled option is not committable, so
|
|
2828
|
+
* "select all" must not commit one on the user's behalf — the same rule
|
|
2829
|
+
* `toggleOption` and the keyboard path follow.
|
|
2830
|
+
*/
|
|
2651
2831
|
selectAll(): void;
|
|
2652
2832
|
deselectAll(): void;
|
|
2653
2833
|
protected isOptionSelected(option: Option<T>): _angular_core.Signal<boolean>;
|
|
@@ -2686,7 +2866,16 @@ declare class UniNotificationBadgeComponent extends BaseComponent<UniNotificatio
|
|
|
2686
2866
|
interface UniAlertOptions {
|
|
2687
2867
|
defaultVariant: Variant;
|
|
2688
2868
|
borderRadius: Radius;
|
|
2689
|
-
|
|
2869
|
+
/** Named motion primitive for the enter/leave transition. Defaults to
|
|
2870
|
+
`notification`. */
|
|
2871
|
+
motion?: Motion;
|
|
2872
|
+
/**
|
|
2873
|
+
* Enter/leave transition in seconds.
|
|
2874
|
+
*
|
|
2875
|
+
* @deprecated Use `motion` and retime the `notification` token instead.
|
|
2876
|
+
* Still honoured when set, and wins over `motion`. Removed next major.
|
|
2877
|
+
*/
|
|
2878
|
+
transitionSpeed?: number;
|
|
2690
2879
|
topPosition: string | number;
|
|
2691
2880
|
elevation: Elevation;
|
|
2692
2881
|
}
|
|
@@ -2700,6 +2889,11 @@ declare class UniAlertComponent extends BaseComponent<UniAlertOptions> implement
|
|
|
2700
2889
|
alertRef?: ElementRef<HTMLDialogElement>;
|
|
2701
2890
|
private readonly alertState;
|
|
2702
2891
|
private readonly effectiveVariant;
|
|
2892
|
+
/**
|
|
2893
|
+
* Timing for the enter/leave transition. The deprecated `transitionSpeed`
|
|
2894
|
+
* (seconds) wins when a theme still sets it.
|
|
2895
|
+
*/
|
|
2896
|
+
protected readonly motion: _angular_core.Signal<_uni_design_system_uni_core.MotionToken>;
|
|
2703
2897
|
protected readonly alertClass: _angular_core.Signal<string>;
|
|
2704
2898
|
private readonly fadeOut;
|
|
2705
2899
|
constructor();
|
|
@@ -2740,7 +2934,16 @@ declare class NotificationsComponent {
|
|
|
2740
2934
|
|
|
2741
2935
|
interface UniSnackbarOptions {
|
|
2742
2936
|
bottomPosition: number;
|
|
2743
|
-
|
|
2937
|
+
/** Named motion primitive for the enter/leave transition. Defaults to
|
|
2938
|
+
`notification`. */
|
|
2939
|
+
motion?: Motion;
|
|
2940
|
+
/**
|
|
2941
|
+
* Transition duration as a CSS time, e.g. `'0.35s'`.
|
|
2942
|
+
*
|
|
2943
|
+
* @deprecated Use `motion` and retime the `notification` token instead.
|
|
2944
|
+
* Still honoured when set, and wins over `motion`. Removed next major.
|
|
2945
|
+
*/
|
|
2946
|
+
transitionDelay?: string;
|
|
2744
2947
|
autoCloseDelay: number;
|
|
2745
2948
|
}
|
|
2746
2949
|
|
|
@@ -2767,12 +2970,20 @@ declare class UniSnackbarComponent extends BaseComponent<UniSnackbarOptions> imp
|
|
|
2767
2970
|
snackbarRef: _angular_core.Signal<ElementRef<any>>;
|
|
2768
2971
|
private get _snackbar();
|
|
2769
2972
|
constructor();
|
|
2973
|
+
/**
|
|
2974
|
+
* Timing for the enter/leave transition. The deprecated `transitionDelay`
|
|
2975
|
+
* wins when a theme still sets it — it is a CSS time string, so `0.35s` and
|
|
2976
|
+
* `350ms` both parse back to milliseconds.
|
|
2977
|
+
*/
|
|
2978
|
+
protected readonly motion: _angular_core.Signal<_uni_design_system_uni_core.MotionToken>;
|
|
2770
2979
|
protected readonly snackbarClass: _angular_core.Signal<string>;
|
|
2771
2980
|
fadeOut: string;
|
|
2772
2981
|
ngAfterViewInit(): void;
|
|
2773
2982
|
private get _timeout();
|
|
2774
2983
|
open(): void;
|
|
2775
2984
|
close(): void;
|
|
2985
|
+
/** Drops out of the top layer. Called once the closing fade has run. */
|
|
2986
|
+
private hide;
|
|
2776
2987
|
protected pauseTimer(): void;
|
|
2777
2988
|
protected resumeTimer(): void;
|
|
2778
2989
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<UniSnackbarComponent, never>;
|
|
@@ -2833,7 +3044,8 @@ interface UniPopoverOptions {
|
|
|
2833
3044
|
/** Hover open delay in tooltip mode, ms. */
|
|
2834
3045
|
tooltipOpenDelay: number;
|
|
2835
3046
|
/** Pointer-leave close delay in tooltip mode, ms. */
|
|
2836
|
-
tooltipCloseDelay: number;
|
|
3047
|
+
tooltipCloseDelay: number; /** Named motion primitive for the open/close animation. */
|
|
3048
|
+
motion: Motion;
|
|
2837
3049
|
}
|
|
2838
3050
|
|
|
2839
3051
|
/**
|
|
@@ -2986,9 +3198,14 @@ interface UniRadioOptions {
|
|
|
2986
3198
|
ringColor?: ColorKey;
|
|
2987
3199
|
/** Circle background token. */
|
|
2988
3200
|
fillColor?: ColorKey;
|
|
3201
|
+
/** Named motion primitive for the dot's grow/retract and the ring's color
|
|
3202
|
+
change. Defaults to `control`; a token with `duration: 0` is instant. */
|
|
3203
|
+
motion?: Motion;
|
|
2989
3204
|
/**
|
|
2990
|
-
* Seconds for the dot's grow/retract and the ring's color change
|
|
2991
|
-
*
|
|
3205
|
+
* Seconds for the dot's grow/retract and the ring's color change.
|
|
3206
|
+
*
|
|
3207
|
+
* @deprecated Use `motion` and retime the `control` token instead. Still
|
|
3208
|
+
* honoured when set, and wins over `motion`. Removed next major.
|
|
2992
3209
|
*/
|
|
2993
3210
|
transitionSpeed?: number;
|
|
2994
3211
|
}
|
|
@@ -3085,7 +3302,9 @@ interface UniSearchInputOptions {
|
|
|
3085
3302
|
/** Suggestion list radius token. */
|
|
3086
3303
|
listBorderRadius?: Radius;
|
|
3087
3304
|
/** Cap on rendered suggestions. */
|
|
3088
|
-
maxSuggestions?: number;
|
|
3305
|
+
maxSuggestions?: number; /** Named motion primitive for the suggestion popup's open animation.
|
|
3306
|
+
Defaults to `popup` — the token `uni-dropdown` uses. */
|
|
3307
|
+
motion?: Motion;
|
|
3089
3308
|
}
|
|
3090
3309
|
|
|
3091
3310
|
/**
|
|
@@ -3110,6 +3329,12 @@ declare class UniSearchInputComponent extends BaseComponent<UniSearchInputOption
|
|
|
3110
3329
|
search: _angular_core.OutputEmitterRef<string>;
|
|
3111
3330
|
suggestionSelected: _angular_core.OutputEmitterRef<string>;
|
|
3112
3331
|
protected readonly field: _angular_core.Signal<UniDebounceInputComponent>;
|
|
3332
|
+
private readonly listRef;
|
|
3333
|
+
/** Ties the popup to the field so the browser tracks it in the top layer. */
|
|
3334
|
+
private readonly anchor;
|
|
3335
|
+
/** `manual` where the top layer is usable, else null — see the popup helper. */
|
|
3336
|
+
protected readonly popupAttr: "manual";
|
|
3337
|
+
constructor();
|
|
3113
3338
|
protected readonly visibleSuggestions: _angular_core.Signal<string[]>;
|
|
3114
3339
|
/** Shared combobox bookkeeping: open state, active option, ARIA ids. */
|
|
3115
3340
|
protected readonly list: _uni_design_system_uni_angular.ListboxNavigation;
|
|
@@ -3168,6 +3393,8 @@ declare class UniSelectComponent<T> implements FormValueControl<T | null> {
|
|
|
3168
3393
|
|
|
3169
3394
|
/** Placeholder geometry: a text line block, a rectangle, or a circle. */
|
|
3170
3395
|
type SkeletonShape = 'text' | 'rect' | 'circle';
|
|
3396
|
+
/** Direction the shimmer band travels across a block. */
|
|
3397
|
+
type SkeletonSweepDirection = 'ltr' | 'rtl';
|
|
3171
3398
|
/** Theme-level options for `uni-skeleton`, resolved by token name. */
|
|
3172
3399
|
interface UniSkeletonOptions {
|
|
3173
3400
|
/** Base placeholder color. */
|
|
@@ -3180,6 +3407,10 @@ interface UniSkeletonOptions {
|
|
|
3180
3407
|
animation?: 'shimmer' | 'none';
|
|
3181
3408
|
/** Shimmer sweep duration in seconds. */
|
|
3182
3409
|
duration?: number;
|
|
3410
|
+
/** Direction the shimmer band travels. Default: 'ltr'. */
|
|
3411
|
+
direction?: SkeletonSweepDirection;
|
|
3412
|
+
/** Shimmer band width as a percentage of the block. Default: 40. */
|
|
3413
|
+
highlightWidth?: number;
|
|
3183
3414
|
/** Vertical gap between text lines, as a spacing token. */
|
|
3184
3415
|
gap?: OptionalSize;
|
|
3185
3416
|
}
|
|
@@ -3189,6 +3420,11 @@ interface UniSkeletonOptions {
|
|
|
3189
3420
|
* lines (the last line shortened, as real text would be), `rect` and `circle`
|
|
3190
3421
|
* render fixed shapes. The shimmer only animates when the user allows motion;
|
|
3191
3422
|
* it degrades to static blocks under `prefers-reduced-motion`.
|
|
3423
|
+
*
|
|
3424
|
+
* Color and radius are theme options with per-instance overrides, because one
|
|
3425
|
+
* app routinely needs several: skeletons on a card and on the page background
|
|
3426
|
+
* want different tints, and a pill placeholder wants a different corner than
|
|
3427
|
+
* the text bars beside it.
|
|
3192
3428
|
*/
|
|
3193
3429
|
declare class UniSkeletonComponent extends BaseComponent<UniSkeletonOptions> {
|
|
3194
3430
|
shape: _angular_core.InputSignal<SkeletonShape>;
|
|
@@ -3198,13 +3434,31 @@ declare class UniSkeletonComponent extends BaseComponent<UniSkeletonOptions> {
|
|
|
3198
3434
|
height: _angular_core.InputSignal<string | number>;
|
|
3199
3435
|
/** Number of text lines (text shape only). */
|
|
3200
3436
|
lines: _angular_core.InputSignal<number>;
|
|
3437
|
+
/** Base color token; overrides the theme option for this skeleton. */
|
|
3438
|
+
color: _angular_core.InputSignal<string>;
|
|
3439
|
+
/** Shimmer highlight token; overrides the theme option for this skeleton. */
|
|
3440
|
+
highlightColor: _angular_core.InputSignal<string>;
|
|
3441
|
+
/** Radius token; overrides the theme option. Circles are always round. */
|
|
3442
|
+
borderRadius: _angular_core.InputSignal<string>;
|
|
3443
|
+
/**
|
|
3444
|
+
* Announces the skeleton to assistive tech as a polite status. Leave unset
|
|
3445
|
+
* when a container already carries `aria-busy` — the skeleton then stays
|
|
3446
|
+
* `aria-hidden`, as a decorative placeholder should.
|
|
3447
|
+
*/
|
|
3448
|
+
label: _angular_core.InputSignal<string>;
|
|
3449
|
+
protected readonly srOnly: string;
|
|
3201
3450
|
private readonly cssSize;
|
|
3202
3451
|
protected readonly resolvedHeight: _angular_core.Signal<string>;
|
|
3203
3452
|
protected readonly lineWidths: _angular_core.Signal<string[]>;
|
|
3453
|
+
/**
|
|
3454
|
+
* The band is `bandWidth`% of the block, so it clears the block after
|
|
3455
|
+
* travelling `100 / bandWidth` of its own width — the offsets below are
|
|
3456
|
+
* percentages of the band, not of the block.
|
|
3457
|
+
*/
|
|
3204
3458
|
private readonly sweep;
|
|
3205
3459
|
protected readonly className: _angular_core.Signal<string>;
|
|
3206
3460
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<UniSkeletonComponent, never>;
|
|
3207
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<UniSkeletonComponent, "uni-skeleton", never, { "shape": { "alias": "shape"; "required": false; "isSignal": true; }; "width": { "alias": "width"; "required": false; "isSignal": true; }; "height": { "alias": "height"; "required": false; "isSignal": true; }; "lines": { "alias": "lines"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
3461
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<UniSkeletonComponent, "uni-skeleton", never, { "shape": { "alias": "shape"; "required": false; "isSignal": true; }; "width": { "alias": "width"; "required": false; "isSignal": true; }; "height": { "alias": "height"; "required": false; "isSignal": true; }; "lines": { "alias": "lines"; "required": false; "isSignal": true; }; "color": { "alias": "color"; "required": false; "isSignal": true; }; "highlightColor": { "alias": "highlightColor"; "required": false; "isSignal": true; }; "borderRadius": { "alias": "borderRadius"; "required": false; "isSignal": true; }; "label": { "alias": "label"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
3208
3462
|
}
|
|
3209
3463
|
|
|
3210
3464
|
/** Theme-level options for `uni-slider`, resolved by token name. */
|
|
@@ -3585,7 +3839,9 @@ interface UniTagInputOptions {
|
|
|
3585
3839
|
/** Active/hover suggestion fill; the on-color pair is derived. Must
|
|
3586
3840
|
contrast with `listColor` or keyboard navigation turns invisible. */
|
|
3587
3841
|
activeColor?: ContainerColorToken;
|
|
3588
|
-
maxSuggestions?: number;
|
|
3842
|
+
maxSuggestions?: number; /** Named motion primitive for the suggestion popup's open animation.
|
|
3843
|
+
Defaults to `popup` — the token `uni-dropdown` uses. */
|
|
3844
|
+
motion?: Motion;
|
|
3589
3845
|
}
|
|
3590
3846
|
|
|
3591
3847
|
declare class UniTagInputComponent extends BaseComponent<UniTagInputOptions> implements FormValueControl<UniTagItem[]> {
|
|
@@ -3619,12 +3875,18 @@ declare class UniTagInputComponent extends BaseComponent<UniTagInputOptions> imp
|
|
|
3619
3875
|
rejected: _angular_core.OutputEmitterRef<UniTagRejection>;
|
|
3620
3876
|
private readonly inputRef;
|
|
3621
3877
|
private readonly chipRefs;
|
|
3878
|
+
private readonly listRef;
|
|
3879
|
+
/** Ties the popup to the field so the browser tracks it in the top layer. */
|
|
3880
|
+
private readonly anchor;
|
|
3881
|
+
/** `manual` where the top layer is usable, else null — see the popup helper. */
|
|
3882
|
+
protected readonly popupAttr: "manual";
|
|
3883
|
+
constructor();
|
|
3622
3884
|
/** Uncommitted text in the field. */
|
|
3623
3885
|
protected readonly draft: _angular_core.WritableSignal<string>;
|
|
3624
3886
|
/** Index of the focused chip, or -1 when focus is in the text input. */
|
|
3625
3887
|
protected readonly focusedChip: _angular_core.WritableSignal<number>;
|
|
3626
|
-
/**
|
|
3627
|
-
protected readonly
|
|
3888
|
+
/** Adds, removes and refusals are otherwise silent to a screen reader. */
|
|
3889
|
+
protected readonly announcer: _uni_design_system_uni_angular.Announcer;
|
|
3628
3890
|
protected readonly hintId: string;
|
|
3629
3891
|
protected readonly srOnly: string;
|
|
3630
3892
|
private queryTimer?;
|
|
@@ -3646,7 +3908,6 @@ declare class UniTagInputComponent extends BaseComponent<UniTagInputOptions> imp
|
|
|
3646
3908
|
private reject;
|
|
3647
3909
|
protected removeAt(index: number, focus?: 'left' | 'right' | 'input'): void;
|
|
3648
3910
|
private countNoun;
|
|
3649
|
-
private announce;
|
|
3650
3911
|
protected focusInput(): void;
|
|
3651
3912
|
private focusChip;
|
|
3652
3913
|
protected onInputKeydown(event: KeyboardEvent): void;
|
|
@@ -3660,7 +3921,11 @@ declare class UniTagInputComponent extends BaseComponent<UniTagInputOptions> imp
|
|
|
3660
3921
|
protected selectSuggestion(suggestion: UniTagSuggestion): void;
|
|
3661
3922
|
private commitDraft;
|
|
3662
3923
|
private setDraft;
|
|
3924
|
+
/** The host is the popup's anchor — the box the list mirrors the width of,
|
|
3925
|
+
and the one its entry animation is measured against. The wrapper below
|
|
3926
|
+
has the same geometry but is only the fallback's positioning context. */
|
|
3663
3927
|
protected readonly className: _angular_core.Signal<string>;
|
|
3928
|
+
protected readonly wrapperClass: _angular_core.Signal<string>;
|
|
3664
3929
|
protected readonly fieldClass: _angular_core.Signal<string>;
|
|
3665
3930
|
protected readonly inputClass: _angular_core.Signal<string>;
|
|
3666
3931
|
protected readonly listClass: _angular_core.Signal<string>;
|
|
@@ -3812,7 +4077,9 @@ interface UniTimeInputOptions {
|
|
|
3812
4077
|
/** Active/hover option fill; the on-color pair is derived. Must contrast
|
|
3813
4078
|
with `listColor` or keyboard navigation turns invisible. */
|
|
3814
4079
|
activeColor?: ContainerColorToken;
|
|
3815
|
-
maxVisibleOptions?: number;
|
|
4080
|
+
maxVisibleOptions?: number; /** Named motion primitive for the suggestion popup's open animation.
|
|
4081
|
+
Defaults to `popup` — the token `uni-dropdown` uses. */
|
|
4082
|
+
motion?: Motion;
|
|
3816
4083
|
}
|
|
3817
4084
|
|
|
3818
4085
|
/**
|
|
@@ -3855,10 +4122,16 @@ declare class UniTimeInputComponent extends BaseComponent<UniTimeInputOptions> i
|
|
|
3855
4122
|
private readonly host;
|
|
3856
4123
|
private readonly inputRef;
|
|
3857
4124
|
private readonly listRef;
|
|
4125
|
+
/** Ties the popup to the field so the browser tracks it in the top layer. */
|
|
4126
|
+
private readonly anchor;
|
|
4127
|
+
/** `manual` where the top layer is usable, else null — see the popup helper. */
|
|
4128
|
+
protected readonly popupAttr: "manual";
|
|
4129
|
+
constructor();
|
|
3858
4130
|
protected readonly srOnly: string;
|
|
3859
4131
|
/** A refused commit — styles the field and sets aria-invalid until edited. */
|
|
3860
4132
|
protected readonly draftInvalid: _angular_core.WritableSignal<boolean>;
|
|
3861
|
-
|
|
4133
|
+
/** Commits, clears and refusals are otherwise silent to a screen reader. */
|
|
4134
|
+
protected readonly announcer: _uni_design_system_uni_angular.Announcer;
|
|
3862
4135
|
protected readonly resolvedLocale: _angular_core.Signal<string>;
|
|
3863
4136
|
protected readonly resolvedHour12: _angular_core.Signal<boolean>;
|
|
3864
4137
|
/** The listed times: pinned `slots` verbatim, else the generated step grid. */
|
|
@@ -3884,7 +4157,6 @@ declare class UniTimeInputComponent extends BaseComponent<UniTimeInputOptions> i
|
|
|
3884
4157
|
private scrollToActive;
|
|
3885
4158
|
private scrollToIndex;
|
|
3886
4159
|
private setFieldText;
|
|
3887
|
-
private announce;
|
|
3888
4160
|
protected readonly className: _angular_core.Signal<string>;
|
|
3889
4161
|
protected readonly rowClass: _angular_core.Signal<string>;
|
|
3890
4162
|
protected readonly inputClass: _angular_core.Signal<string>;
|
|
@@ -4049,7 +4321,9 @@ declare class UniTourComponent extends BaseComponent<UniTourOptions> {
|
|
|
4049
4321
|
}>;
|
|
4050
4322
|
protected readonly calloutOpen: _angular_core.WritableSignal<boolean>;
|
|
4051
4323
|
protected readonly satisfied: _angular_core.WritableSignal<boolean>;
|
|
4052
|
-
|
|
4324
|
+
/** Repeats must still be heard: the same gate message can come round
|
|
4325
|
+
again on a later step. */
|
|
4326
|
+
protected readonly announcer: _uni_design_system_uni_angular.Announcer;
|
|
4053
4327
|
protected readonly resolvedTarget: _angular_core.WritableSignal<HTMLElement>;
|
|
4054
4328
|
private readonly presentedIndex;
|
|
4055
4329
|
private gateCleanup;
|
|
@@ -4103,5 +4377,5 @@ declare class DragAndDropDirective {
|
|
|
4103
4377
|
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<DragAndDropDirective, "[uni-drag-n-drop], [dragAndDrop]", never, {}, { "onFileDropped": "onFileDropped"; }, never, never, true, never>;
|
|
4104
4378
|
}
|
|
4105
4379
|
|
|
4106
|
-
export { BodyRenderDirective, ConfirmationDialogComponent, DragAndDropDirective, FOCUSABLE_SELECTOR, ListboxNavigation, LocalStorageService, NotificationService, NotificationsComponent, RippleDirective, TRANSFORM_ORIGINS, ThemeService, UNI_THEMES, UniAlertComponent, UniAppBarComponent, UniAvatarComponent, UniAvatarGroupComponent, UniBackgroundComponent, UniBadgeComponent, UniBaseDatasource, UniBoxComponent, UniBreadcrumbComponent, UniButtonComponent, UniButtonGroupComponent, UniCalendarComponent, UniCalloutComponent, UniCardComponent, UniCardContentComponent, UniCardHeaderComponent, UniCenterComponent, UniCheckboxComponent, UniComboboxComponent, UniDataSearchComponent, UniDataTableComponent, UniDateInputComponent, UniDateTimeInputComponent, UniDebounceInputComponent, UniDialogButtonsComponent, UniDialogComponent, UniDialogHeaderComponent, UniDividerComponent, UniDrawerComponent, UniDropdownComponent, UniExpandAreaComponent, UniExpandComponent, UniExpandToggleComponent, UniFileDropZoneComponent, UniGridAreaComponent, UniGridComponent, UniIconButtonComponent, UniIconComponent, UniInputBoxComponent, UniInputComponent, UniJsonViewComponent, UniMenuComponent, UniMultiSelectComponent, UniMultiSelectDropdownComponent, UniNotificationBadgeComponent, UniPaginatorComponent, UniPopoverComponent, UniProgressBarComponent, UniProgressGaugeComponent, UniRadioComponent, UniRecordDatasource, UniRowComponent, UniScrollAreaComponent, UniSearchInputComponent, UniSelectComponent, UniServerSideDatasource, UniSkeletonComponent, UniSliderComponent, UniSnackbarComponent, UniSortHeaderComponent, UniStackComponent, UniStatComponent, UniSymbolComponent, UniTabComponent, UniTabsComponent, UniTagComponent, UniTagInputComponent, UniTextComponent, UniTextareaComponent, UniThemeBuilderComponent, UniThemeSwitchComponent, UniTimeInputComponent, UniToggleComponent, UniTooltipComponent, UniTourComponent, UniWrapComponent, acceptableFile, addDays, addMonths, anchorArrowStyles, anchorStyles, buildMonthGrid, clearAnchorName, createListboxNavigation, dayOfWeek, daysInMonth, discreteOverlayTransition, focusableElements, formatDate, formatMonthHeading, formatTime, getFileExtension, inclusiveDayCount, isDivider, isToggleOpen, isValidDate, isoDate, joinDateTime, listboxPopupStyles, localeDatePlaceholder, localeDefaultHour12, localeFieldOrder, localeMonthNames, localeWeekStart, monthOf, motionSafe, newAnchorName, parseDateText, parseTimeText, resolveElement, resolveFocusTarget, restoreOverlayFocus, setAnchorName, splitDateTime, spotlightStyles, timeSlots, todayIso, transformOriginFor, uniqueId, useTimer, visuallyHidden, weekdayNames };
|
|
4107
|
-
export type { Alert, AnchorOffset, AnchorRect, BrandPaletteConfig, BreadcrumbItem, ButtonGroupConfig, ButtonGroupItem, ColumnDefinition, Confirmation, DataLoader, DrawerMode, DrawerPosition, ImagePosition, ListboxNavigationConfig, MenuDivider, MenuItem, MenuItemWithLabel, MenuItemWithTemplate, Option, Options, PageRequest, PageResponse, Placement, ScrollbarAppearance, SkeletonShape, Snackbar, Sort, SortDirection, SpotlightOptions, SpotlightStyles, UniAppBarOptions, UniAvatarGroupOptions, UniAvatarOptions, UniBreadcrumbOptions, UniCalendarMarker, UniCalendarMode, UniCalendarOptions, UniCalendarValue, UniCalloutDismissal, UniCalloutOptions, UniCheckboxOptions, UniComboboxOptions, UniComboboxRejection, UniDataSearchOptions, UniDataTableOptions, UniDatasource, UniDate, UniDateInputOptions, UniDateInputRejection, UniDateRange, UniDateTime, UniDateTimeInputOptions, UniDrawerOptions, UniExpandOptions, UniInputBoxOptions, UniListboxPopupOptions, UniMenuItemOptions, UniMenuOptions, UniMonthGridCell, UniMultiSelectDropdownOptions, UniNotificationBadgeOptions, UniPaginatorOptions, UniPopoverOptions, UniRadioOption, UniRadioOptions, UniSearchInputOptions, UniSkeletonOptions, UniSliderOptions, UniStatOptions, UniTabsOptions, UniTagInputOptions, UniTagItem, UniTagOptions, UniTagRejection, UniTagSuggestion, UniTagValue, UniTextareaOptions, UniTime, UniTimeInputOptions, UniTimeInputRejection, UniToggleOptions, UniTourAdvance, UniTourOptions, UniTourStep, UniWeekdayName };
|
|
4380
|
+
export { BodyRenderDirective, ConfirmationDialogComponent, DragAndDropDirective, FOCUSABLE_SELECTOR, ListboxNavigation, LocalStorageService, NotificationService, NotificationsComponent, RippleDirective, TRANSFORM_ORIGINS, ThemeService, UNI_THEMES, UniAlertComponent, UniAppBarComponent, UniAvatarComponent, UniAvatarGroupComponent, UniBackgroundComponent, UniBadgeComponent, UniBaseDatasource, UniBoxComponent, UniBreadcrumbComponent, UniButtonComponent, UniButtonGroupComponent, UniCalendarComponent, UniCalloutComponent, UniCardComponent, UniCardContentComponent, UniCardHeaderComponent, UniCenterComponent, UniCheckboxComponent, UniComboboxComponent, UniDataSearchComponent, UniDataTableComponent, UniDateInputComponent, UniDateTimeInputComponent, UniDebounceInputComponent, UniDialogButtonsComponent, UniDialogComponent, UniDialogHeaderComponent, UniDividerComponent, UniDrawerComponent, UniDropdownComponent, UniExpandAreaComponent, UniExpandComponent, UniExpandToggleComponent, UniFileDropZoneComponent, UniGridAreaComponent, UniGridComponent, UniIconButtonComponent, UniIconComponent, UniInputBoxComponent, UniInputComponent, UniJsonViewComponent, UniMenuComponent, UniMultiSelectComponent, UniMultiSelectDropdownComponent, UniNotificationBadgeComponent, UniPaginatorComponent, UniPopoverComponent, UniProgressBarComponent, UniProgressGaugeComponent, UniRadioComponent, UniRecordDatasource, UniRowComponent, UniScrollAreaComponent, UniSearchInputComponent, UniSelectComponent, UniServerSideDatasource, UniSkeletonComponent, UniSliderComponent, UniSnackbarComponent, UniSortHeaderComponent, UniStackComponent, UniStatComponent, UniSymbolComponent, UniTabComponent, UniTabsComponent, UniTagComponent, UniTagInputComponent, UniTextComponent, UniTextareaComponent, UniThemeBuilderComponent, UniThemeSwitchComponent, UniTimeInputComponent, UniToggleComponent, UniTooltipComponent, UniTourComponent, UniWrapComponent, acceptableFile, addDays, addMonths, anchorArrowStyles, anchorStyles, buildMonthGrid, clearAnchorName, createAnnouncer, createListboxNavigation, dayOfWeek, daysInMonth, discreteOverlayTransition, focusableElements, formatDate, formatMonthHeading, formatTime, getFileExtension, inclusiveDayCount, isDivider, isToggleOpen, isValidDate, isoDate, joinDateTime, listboxPopupAttr, listboxPopupStyles, localeDatePlaceholder, localeDefaultHour12, localeFieldOrder, localeMonthNames, localeWeekStart, monthOf, motionSafe, newAnchorName, newListboxAnchor, parseDateText, parseTimeText, promoteListboxPopup, resolveElement, resolveFocusTarget, restoreOverlayFocus, setAnchorName, splitDateTime, spotlightStyles, supportsAnchoredPopup, timeSlots, todayIso, transformOriginFor, uniqueId, useTimer, visuallyHidden, weekdayNames };
|
|
4381
|
+
export type { Alert, AnchorOffset, AnchorRect, Announcer, BrandPaletteConfig, BreadcrumbItem, ButtonGroupConfig, ButtonGroupItem, ColumnDefinition, Confirmation, DataLoader, DrawerMode, DrawerPosition, ImagePosition, ListboxNavigationConfig, MenuDivider, MenuItem, MenuItemWithLabel, MenuItemWithTemplate, Option, Options, PageRequest, PageResponse, Placement, ScrollbarAppearance, SkeletonShape, SkeletonSweepDirection, Snackbar, Sort, SortDirection, SpotlightOptions, SpotlightStyles, UniAppBarOptions, UniAvatarGroupOptions, UniAvatarOptions, UniBreadcrumbOptions, UniCalendarMarker, UniCalendarMode, UniCalendarOptions, UniCalendarValue, UniCalloutDismissal, UniCalloutOptions, UniCheckboxOptions, UniComboboxOptions, UniComboboxRejection, UniDataSearchOptions, UniDataTableOptions, UniDatasource, UniDate, UniDateInputOptions, UniDateInputRejection, UniDateRange, UniDateTime, UniDateTimeInputOptions, UniDrawerOptions, UniExpandOptions, UniInputBoxOptions, UniListboxPopupOptions, UniMenuItemOptions, UniMenuOptions, UniMonthGridCell, UniMultiSelectDropdownOptions, UniNotificationBadgeOptions, UniPaginatorOptions, UniPopoverOptions, UniRadioOption, UniRadioOptions, UniSearchInputOptions, UniSkeletonOptions, UniSliderOptions, UniStatOptions, UniTabsOptions, UniTagInputOptions, UniTagItem, UniTagOptions, UniTagRejection, UniTagSuggestion, UniTagValue, UniTextareaOptions, UniTime, UniTimeInputOptions, UniTimeInputRejection, UniToggleOptions, UniTourAdvance, UniTourOptions, UniTourStep, UniWeekdayName };
|