@besaitech/ng-design-system 0.0.58 → 0.0.60
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 +44 -0
- package/fesm2022/besaitech-ng-design-system.mjs +1250 -195
- package/fesm2022/besaitech-ng-design-system.mjs.map +1 -1
- package/index.d.ts +346 -34
- package/package.json +1 -1
package/index.d.ts
CHANGED
|
@@ -91,6 +91,8 @@ declare const SDS_ICONS: {
|
|
|
91
91
|
readonly 'arrow-right': "<path d=\"M5 12h14\"/><path d=\"m12 5 7 7-7 7\"/>";
|
|
92
92
|
readonly 'refresh-cw': "<path d=\"M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8\"/><path d=\"M21 3v5h-5\"/><path d=\"M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16\"/><path d=\"M3 21v-5h5\"/>";
|
|
93
93
|
readonly 'loader-circle': "<path d=\"M21 12a9 9 0 1 1-6.219-8.56\"/>";
|
|
94
|
+
readonly 'locate-fixed': "<line x1=\"2\" x2=\"5\" y1=\"12\" y2=\"12\"/><line x1=\"19\" x2=\"22\" y1=\"12\" y2=\"12\"/><line x1=\"12\" x2=\"12\" y1=\"2\" y2=\"5\"/><line x1=\"12\" x2=\"12\" y1=\"19\" y2=\"22\"/><circle cx=\"12\" cy=\"12\" r=\"7\"/><circle cx=\"12\" cy=\"12\" r=\"3\"/>";
|
|
95
|
+
readonly 'locate-off': "<path d=\"M12 19v3\"/><path d=\"M12 2v3\"/><path d=\"M18.89 13.24a7 7 0 0 0-8.13-8.13\"/><path d=\"M19 12h3\"/><path d=\"M2 12h3\"/><path d=\"m2 2 20 20\"/><path d=\"M7.05 7.05a7 7 0 0 0 9.9 9.9\"/>";
|
|
94
96
|
readonly bug: "<path d=\"M12 20v-9\"/><path d=\"M14 7a4 4 0 0 1 4 4v3a6 6 0 0 1-12 0v-3a4 4 0 0 1 4-4z\"/><path d=\"M14.12 3.88 16 2\"/><path d=\"M21 21a4 4 0 0 0-3.81-4\"/><path d=\"M21 5a4 4 0 0 1-3.55 3.97\"/><path d=\"M22 13h-4\"/><path d=\"M3 21a4 4 0 0 1 3.81-4\"/><path d=\"M3 5a4 4 0 0 0 3.55 3.97\"/><path d=\"M6 13H2\"/><path d=\"m8 2 1.88 1.88\"/><path d=\"M9 7.13V6a3 3 0 1 1 6 0v1.13\"/>";
|
|
95
97
|
readonly 'scroll-text': "<path d=\"M15 12h-5\"/><path d=\"M15 8h-5\"/><path d=\"M19 17V5a2 2 0 0 0-2-2H4\"/><path d=\"M8 21h12a2 2 0 0 0 2-2v-1a1 1 0 0 0-1-1H11a1 1 0 0 0-1 1v1a2 2 0 1 1-4 0V5a2 2 0 1 0-4 0v2a1 1 0 0 0 1 1h3\"/>";
|
|
96
98
|
readonly moon: "<path d=\"M12 3a6 6 0 0 0 9 9 9 9 0 1 1-9-9Z\"/>";
|
|
@@ -144,7 +146,7 @@ type SdsIconSize = 'sm' | 'md' | 'lg' | 'xl';
|
|
|
144
146
|
declare class SdsIcon {
|
|
145
147
|
private readonly sanitizer;
|
|
146
148
|
/** Icon identifier from the registry. */
|
|
147
|
-
readonly name: _angular_core.InputSignal<"
|
|
149
|
+
readonly name: _angular_core.InputSignal<"chart-column" | "clipboard-list" | "credit-card" | "external-link" | "languages" | "megaphone" | "monitor" | "store" | "user-round" | "home" | "user-plus" | "user-check" | "hand" | "users" | "bike" | "building-2" | "package" | "package-plus" | "package-open" | "rotate-ccw" | "bar-chart-3" | "search" | "log-out" | "panel-left-close" | "panel-left-open" | "panel-left" | "calendar" | "chevron-right" | "chevron-left" | "chevron-down" | "chevron-up" | "plus" | "minus" | "chevrons-left" | "chevrons-right" | "x" | "check" | "alert-circle" | "info" | "copy" | "type" | "tag" | "ticket" | "square" | "square-check" | "circle-dot" | "circle-user" | "layout-grid" | "panels-top-left" | "panel-top" | "rows-3" | "book-open" | "palette" | "bell" | "phone" | "settings" | "align-left" | "toggle-left" | "arrow-up" | "arrow-down" | "chevrons-up-down" | "chevrons-up" | "chevrons-down" | "star" | "message-square" | "filter" | "table" | "qr-code" | "eye" | "eye-off" | "user" | "check-circle" | "arrows-clockwise" | "menu" | "file-text" | "hash" | "map-pin" | "inbox" | "arrow-right" | "refresh-cw" | "loader-circle" | "locate-fixed" | "locate-off" | "bug" | "scroll-text" | "moon" | "sun" | "search-x" | "command" | "sparkles" | "triangle-alert" | "octagon-x" | "ban" | "ellipsis" | "ellipsis-vertical" | "grip-vertical" | "upload" | "image" | "image-off" | "utensils" | "zoom-in" | "zoom-out" | "trash-2" | "clock" | "pencil" | "circle-help" | "stock" | "allergen-cereals-gluten" | "allergen-crustaceans" | "allergen-eggs" | "allergen-fish" | "allergen-peanuts" | "allergen-soybeans" | "allergen-milk" | "allergen-nuts" | "allergen-celery" | "allergen-mustard" | "allergen-sesame" | "allergen-sulphites" | "allergen-lupin" | "allergen-molluscs">;
|
|
148
150
|
/** Square size: a pixel number, a numeric string, or a keyword (sm·md·lg·xl). */
|
|
149
151
|
readonly size: _angular_core.InputSignalWithTransform<number, string | number>;
|
|
150
152
|
/** Stroke width of the line icon. */
|
|
@@ -179,7 +181,7 @@ declare class SdsButton {
|
|
|
179
181
|
* most important control.
|
|
180
182
|
*/
|
|
181
183
|
readonly shape: _angular_core.InputSignal<SdsButtonShape>;
|
|
182
|
-
readonly type: _angular_core.InputSignal<"
|
|
184
|
+
readonly type: _angular_core.InputSignal<"button" | "submit" | "reset">;
|
|
183
185
|
readonly disabled: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
184
186
|
readonly loading: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
185
187
|
/** Full-width button. */
|
|
@@ -267,8 +269,8 @@ declare class SdsInput implements ControlValueAccessor {
|
|
|
267
269
|
* translate it — it is an icon-only control, so this string is its only name.
|
|
268
270
|
*/
|
|
269
271
|
readonly clearLabel: _angular_core.InputSignal<string>;
|
|
270
|
-
readonly leadingIcon: _angular_core.InputSignal<"
|
|
271
|
-
readonly trailingIcon: _angular_core.InputSignal<"
|
|
272
|
+
readonly leadingIcon: _angular_core.InputSignal<"chart-column" | "clipboard-list" | "credit-card" | "external-link" | "languages" | "megaphone" | "monitor" | "store" | "user-round" | "home" | "user-plus" | "user-check" | "hand" | "users" | "bike" | "building-2" | "package" | "package-plus" | "package-open" | "rotate-ccw" | "bar-chart-3" | "search" | "log-out" | "panel-left-close" | "panel-left-open" | "panel-left" | "calendar" | "chevron-right" | "chevron-left" | "chevron-down" | "chevron-up" | "plus" | "minus" | "chevrons-left" | "chevrons-right" | "x" | "check" | "alert-circle" | "info" | "copy" | "type" | "tag" | "ticket" | "square" | "square-check" | "circle-dot" | "circle-user" | "layout-grid" | "panels-top-left" | "panel-top" | "rows-3" | "book-open" | "palette" | "bell" | "phone" | "settings" | "align-left" | "toggle-left" | "arrow-up" | "arrow-down" | "chevrons-up-down" | "chevrons-up" | "chevrons-down" | "star" | "message-square" | "filter" | "table" | "qr-code" | "eye" | "eye-off" | "user" | "check-circle" | "arrows-clockwise" | "menu" | "file-text" | "hash" | "map-pin" | "inbox" | "arrow-right" | "refresh-cw" | "loader-circle" | "locate-fixed" | "locate-off" | "bug" | "scroll-text" | "moon" | "sun" | "search-x" | "command" | "sparkles" | "triangle-alert" | "octagon-x" | "ban" | "ellipsis" | "ellipsis-vertical" | "grip-vertical" | "upload" | "image" | "image-off" | "utensils" | "zoom-in" | "zoom-out" | "trash-2" | "clock" | "pencil" | "circle-help" | "stock" | "allergen-cereals-gluten" | "allergen-crustaceans" | "allergen-eggs" | "allergen-fish" | "allergen-peanuts" | "allergen-soybeans" | "allergen-milk" | "allergen-nuts" | "allergen-celery" | "allergen-mustard" | "allergen-sesame" | "allergen-sulphites" | "allergen-lupin" | "allergen-molluscs" | null>;
|
|
273
|
+
readonly trailingIcon: _angular_core.InputSignal<"chart-column" | "clipboard-list" | "credit-card" | "external-link" | "languages" | "megaphone" | "monitor" | "store" | "user-round" | "home" | "user-plus" | "user-check" | "hand" | "users" | "bike" | "building-2" | "package" | "package-plus" | "package-open" | "rotate-ccw" | "bar-chart-3" | "search" | "log-out" | "panel-left-close" | "panel-left-open" | "panel-left" | "calendar" | "chevron-right" | "chevron-left" | "chevron-down" | "chevron-up" | "plus" | "minus" | "chevrons-left" | "chevrons-right" | "x" | "check" | "alert-circle" | "info" | "copy" | "type" | "tag" | "ticket" | "square" | "square-check" | "circle-dot" | "circle-user" | "layout-grid" | "panels-top-left" | "panel-top" | "rows-3" | "book-open" | "palette" | "bell" | "phone" | "settings" | "align-left" | "toggle-left" | "arrow-up" | "arrow-down" | "chevrons-up-down" | "chevrons-up" | "chevrons-down" | "star" | "message-square" | "filter" | "table" | "qr-code" | "eye" | "eye-off" | "user" | "check-circle" | "arrows-clockwise" | "menu" | "file-text" | "hash" | "map-pin" | "inbox" | "arrow-right" | "refresh-cw" | "loader-circle" | "locate-fixed" | "locate-off" | "bug" | "scroll-text" | "moon" | "sun" | "search-x" | "command" | "sparkles" | "triangle-alert" | "octagon-x" | "ban" | "ellipsis" | "ellipsis-vertical" | "grip-vertical" | "upload" | "image" | "image-off" | "utensils" | "zoom-in" | "zoom-out" | "trash-2" | "clock" | "pencil" | "circle-help" | "stock" | "allergen-cereals-gluten" | "allergen-crustaceans" | "allergen-eggs" | "allergen-fish" | "allergen-peanuts" | "allergen-soybeans" | "allergen-milk" | "allergen-nuts" | "allergen-celery" | "allergen-mustard" | "allergen-sesame" | "allergen-sulphites" | "allergen-lupin" | "allergen-molluscs" | null>;
|
|
272
274
|
/**
|
|
273
275
|
* A CLICKABLE trailing icon, for the affordances that belong to the field itself — password reveal
|
|
274
276
|
* above all. Distinct from {@link trailingIcon}, which is decorative and explicitly
|
|
@@ -278,7 +280,7 @@ declare class SdsInput implements ControlValueAccessor {
|
|
|
278
280
|
* Always pair it with {@link trailingActionLabel} — an icon-only button with no accessible name is
|
|
279
281
|
* unusable by a screen reader. For a toggle, also bind {@link trailingActionPressed}.
|
|
280
282
|
*/
|
|
281
|
-
readonly trailingAction: _angular_core.InputSignal<"
|
|
283
|
+
readonly trailingAction: _angular_core.InputSignal<"chart-column" | "clipboard-list" | "credit-card" | "external-link" | "languages" | "megaphone" | "monitor" | "store" | "user-round" | "home" | "user-plus" | "user-check" | "hand" | "users" | "bike" | "building-2" | "package" | "package-plus" | "package-open" | "rotate-ccw" | "bar-chart-3" | "search" | "log-out" | "panel-left-close" | "panel-left-open" | "panel-left" | "calendar" | "chevron-right" | "chevron-left" | "chevron-down" | "chevron-up" | "plus" | "minus" | "chevrons-left" | "chevrons-right" | "x" | "check" | "alert-circle" | "info" | "copy" | "type" | "tag" | "ticket" | "square" | "square-check" | "circle-dot" | "circle-user" | "layout-grid" | "panels-top-left" | "panel-top" | "rows-3" | "book-open" | "palette" | "bell" | "phone" | "settings" | "align-left" | "toggle-left" | "arrow-up" | "arrow-down" | "chevrons-up-down" | "chevrons-up" | "chevrons-down" | "star" | "message-square" | "filter" | "table" | "qr-code" | "eye" | "eye-off" | "user" | "check-circle" | "arrows-clockwise" | "menu" | "file-text" | "hash" | "map-pin" | "inbox" | "arrow-right" | "refresh-cw" | "loader-circle" | "locate-fixed" | "locate-off" | "bug" | "scroll-text" | "moon" | "sun" | "search-x" | "command" | "sparkles" | "triangle-alert" | "octagon-x" | "ban" | "ellipsis" | "ellipsis-vertical" | "grip-vertical" | "upload" | "image" | "image-off" | "utensils" | "zoom-in" | "zoom-out" | "trash-2" | "clock" | "pencil" | "circle-help" | "stock" | "allergen-cereals-gluten" | "allergen-crustaceans" | "allergen-eggs" | "allergen-fish" | "allergen-peanuts" | "allergen-soybeans" | "allergen-milk" | "allergen-nuts" | "allergen-celery" | "allergen-mustard" | "allergen-sesame" | "allergen-sulphites" | "allergen-lupin" | "allergen-molluscs" | null>;
|
|
282
284
|
/** Accessible name for {@link trailingAction}. Translate it in the consuming app. */
|
|
283
285
|
readonly trailingActionLabel: _angular_core.InputSignal<string>;
|
|
284
286
|
/** `aria-pressed` for a toggling action (e.g. show/hide password). Null renders no attribute. */
|
|
@@ -390,9 +392,9 @@ declare class SdsInputNumber implements ControlValueAccessor {
|
|
|
390
392
|
readonly showButtons: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
391
393
|
readonly buttonLayout: _angular_core.InputSignal<SdsInputNumberButtonLayout>;
|
|
392
394
|
/** Override the increment button icon (defaults: chevron-up when stacked, plus otherwise). */
|
|
393
|
-
readonly incrementIcon: _angular_core.InputSignal<"
|
|
395
|
+
readonly incrementIcon: _angular_core.InputSignal<"chart-column" | "clipboard-list" | "credit-card" | "external-link" | "languages" | "megaphone" | "monitor" | "store" | "user-round" | "home" | "user-plus" | "user-check" | "hand" | "users" | "bike" | "building-2" | "package" | "package-plus" | "package-open" | "rotate-ccw" | "bar-chart-3" | "search" | "log-out" | "panel-left-close" | "panel-left-open" | "panel-left" | "calendar" | "chevron-right" | "chevron-left" | "chevron-down" | "chevron-up" | "plus" | "minus" | "chevrons-left" | "chevrons-right" | "x" | "check" | "alert-circle" | "info" | "copy" | "type" | "tag" | "ticket" | "square" | "square-check" | "circle-dot" | "circle-user" | "layout-grid" | "panels-top-left" | "panel-top" | "rows-3" | "book-open" | "palette" | "bell" | "phone" | "settings" | "align-left" | "toggle-left" | "arrow-up" | "arrow-down" | "chevrons-up-down" | "chevrons-up" | "chevrons-down" | "star" | "message-square" | "filter" | "table" | "qr-code" | "eye" | "eye-off" | "user" | "check-circle" | "arrows-clockwise" | "menu" | "file-text" | "hash" | "map-pin" | "inbox" | "arrow-right" | "refresh-cw" | "loader-circle" | "locate-fixed" | "locate-off" | "bug" | "scroll-text" | "moon" | "sun" | "search-x" | "command" | "sparkles" | "triangle-alert" | "octagon-x" | "ban" | "ellipsis" | "ellipsis-vertical" | "grip-vertical" | "upload" | "image" | "image-off" | "utensils" | "zoom-in" | "zoom-out" | "trash-2" | "clock" | "pencil" | "circle-help" | "stock" | "allergen-cereals-gluten" | "allergen-crustaceans" | "allergen-eggs" | "allergen-fish" | "allergen-peanuts" | "allergen-soybeans" | "allergen-milk" | "allergen-nuts" | "allergen-celery" | "allergen-mustard" | "allergen-sesame" | "allergen-sulphites" | "allergen-lupin" | "allergen-molluscs" | null>;
|
|
394
396
|
/** Override the decrement button icon (defaults: chevron-down when stacked, minus otherwise). */
|
|
395
|
-
readonly decrementIcon: _angular_core.InputSignal<"
|
|
397
|
+
readonly decrementIcon: _angular_core.InputSignal<"chart-column" | "clipboard-list" | "credit-card" | "external-link" | "languages" | "megaphone" | "monitor" | "store" | "user-round" | "home" | "user-plus" | "user-check" | "hand" | "users" | "bike" | "building-2" | "package" | "package-plus" | "package-open" | "rotate-ccw" | "bar-chart-3" | "search" | "log-out" | "panel-left-close" | "panel-left-open" | "panel-left" | "calendar" | "chevron-right" | "chevron-left" | "chevron-down" | "chevron-up" | "plus" | "minus" | "chevrons-left" | "chevrons-right" | "x" | "check" | "alert-circle" | "info" | "copy" | "type" | "tag" | "ticket" | "square" | "square-check" | "circle-dot" | "circle-user" | "layout-grid" | "panels-top-left" | "panel-top" | "rows-3" | "book-open" | "palette" | "bell" | "phone" | "settings" | "align-left" | "toggle-left" | "arrow-up" | "arrow-down" | "chevrons-up-down" | "chevrons-up" | "chevrons-down" | "star" | "message-square" | "filter" | "table" | "qr-code" | "eye" | "eye-off" | "user" | "check-circle" | "arrows-clockwise" | "menu" | "file-text" | "hash" | "map-pin" | "inbox" | "arrow-right" | "refresh-cw" | "loader-circle" | "locate-fixed" | "locate-off" | "bug" | "scroll-text" | "moon" | "sun" | "search-x" | "command" | "sparkles" | "triangle-alert" | "octagon-x" | "ban" | "ellipsis" | "ellipsis-vertical" | "grip-vertical" | "upload" | "image" | "image-off" | "utensils" | "zoom-in" | "zoom-out" | "trash-2" | "clock" | "pencil" | "circle-help" | "stock" | "allergen-cereals-gluten" | "allergen-crustaceans" | "allergen-eggs" | "allergen-fish" | "allergen-peanuts" | "allergen-soybeans" | "allergen-milk" | "allergen-nuts" | "allergen-celery" | "allergen-mustard" | "allergen-sesame" | "allergen-sulphites" | "allergen-lupin" | "allergen-molluscs" | null>;
|
|
396
398
|
/** Allow an empty (null) value. When false, blurring an empty field falls back to {@link min} or 0. */
|
|
397
399
|
readonly allowEmpty: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
398
400
|
readonly clearable: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
@@ -409,8 +411,8 @@ declare class SdsInputNumber implements ControlValueAccessor {
|
|
|
409
411
|
protected readonly isDisabled: _angular_core.Signal<boolean>;
|
|
410
412
|
protected readonly describedBy: _angular_core.Signal<string | null>;
|
|
411
413
|
protected readonly clearVisible: _angular_core.Signal<boolean>;
|
|
412
|
-
protected readonly incrementIconName: _angular_core.Signal<"
|
|
413
|
-
protected readonly decrementIconName: _angular_core.Signal<"
|
|
414
|
+
protected readonly incrementIconName: _angular_core.Signal<"chart-column" | "clipboard-list" | "credit-card" | "external-link" | "languages" | "megaphone" | "monitor" | "store" | "user-round" | "home" | "user-plus" | "user-check" | "hand" | "users" | "bike" | "building-2" | "package" | "package-plus" | "package-open" | "rotate-ccw" | "bar-chart-3" | "search" | "log-out" | "panel-left-close" | "panel-left-open" | "panel-left" | "calendar" | "chevron-right" | "chevron-left" | "chevron-down" | "chevron-up" | "plus" | "minus" | "chevrons-left" | "chevrons-right" | "x" | "check" | "alert-circle" | "info" | "copy" | "type" | "tag" | "ticket" | "square" | "square-check" | "circle-dot" | "circle-user" | "layout-grid" | "panels-top-left" | "panel-top" | "rows-3" | "book-open" | "palette" | "bell" | "phone" | "settings" | "align-left" | "toggle-left" | "arrow-up" | "arrow-down" | "chevrons-up-down" | "chevrons-up" | "chevrons-down" | "star" | "message-square" | "filter" | "table" | "qr-code" | "eye" | "eye-off" | "user" | "check-circle" | "arrows-clockwise" | "menu" | "file-text" | "hash" | "map-pin" | "inbox" | "arrow-right" | "refresh-cw" | "loader-circle" | "locate-fixed" | "locate-off" | "bug" | "scroll-text" | "moon" | "sun" | "search-x" | "command" | "sparkles" | "triangle-alert" | "octagon-x" | "ban" | "ellipsis" | "ellipsis-vertical" | "grip-vertical" | "upload" | "image" | "image-off" | "utensils" | "zoom-in" | "zoom-out" | "trash-2" | "clock" | "pencil" | "circle-help" | "stock" | "allergen-cereals-gluten" | "allergen-crustaceans" | "allergen-eggs" | "allergen-fish" | "allergen-peanuts" | "allergen-soybeans" | "allergen-milk" | "allergen-nuts" | "allergen-celery" | "allergen-mustard" | "allergen-sesame" | "allergen-sulphites" | "allergen-lupin" | "allergen-molluscs">;
|
|
415
|
+
protected readonly decrementIconName: _angular_core.Signal<"chart-column" | "clipboard-list" | "credit-card" | "external-link" | "languages" | "megaphone" | "monitor" | "store" | "user-round" | "home" | "user-plus" | "user-check" | "hand" | "users" | "bike" | "building-2" | "package" | "package-plus" | "package-open" | "rotate-ccw" | "bar-chart-3" | "search" | "log-out" | "panel-left-close" | "panel-left-open" | "panel-left" | "calendar" | "chevron-right" | "chevron-left" | "chevron-down" | "chevron-up" | "plus" | "minus" | "chevrons-left" | "chevrons-right" | "x" | "check" | "alert-circle" | "info" | "copy" | "type" | "tag" | "ticket" | "square" | "square-check" | "circle-dot" | "circle-user" | "layout-grid" | "panels-top-left" | "panel-top" | "rows-3" | "book-open" | "palette" | "bell" | "phone" | "settings" | "align-left" | "toggle-left" | "arrow-up" | "arrow-down" | "chevrons-up-down" | "chevrons-up" | "chevrons-down" | "star" | "message-square" | "filter" | "table" | "qr-code" | "eye" | "eye-off" | "user" | "check-circle" | "arrows-clockwise" | "menu" | "file-text" | "hash" | "map-pin" | "inbox" | "arrow-right" | "refresh-cw" | "loader-circle" | "locate-fixed" | "locate-off" | "bug" | "scroll-text" | "moon" | "sun" | "search-x" | "command" | "sparkles" | "triangle-alert" | "octagon-x" | "ban" | "ellipsis" | "ellipsis-vertical" | "grip-vertical" | "upload" | "image" | "image-off" | "utensils" | "zoom-in" | "zoom-out" | "trash-2" | "clock" | "pencil" | "circle-help" | "stock" | "allergen-cereals-gluten" | "allergen-crustaceans" | "allergen-eggs" | "allergen-fish" | "allergen-peanuts" | "allergen-soybeans" | "allergen-milk" | "allergen-nuts" | "allergen-celery" | "allergen-mustard" | "allergen-sesame" | "allergen-sulphites" | "allergen-lupin" | "allergen-molluscs">;
|
|
414
416
|
protected readonly canIncrement: _angular_core.Signal<boolean>;
|
|
415
417
|
protected readonly canDecrement: _angular_core.Signal<boolean>;
|
|
416
418
|
/** Locale grouping/decimal separators, derived from Intl so parsing matches formatting. */
|
|
@@ -805,9 +807,9 @@ declare class SdsToggleSwitch implements ControlValueAccessor {
|
|
|
805
807
|
/** Value emitted/stored when the switch is off. */
|
|
806
808
|
readonly falseValue: _angular_core.InputSignal<unknown>;
|
|
807
809
|
/** Icon shown on the knob when checked. */
|
|
808
|
-
readonly onIcon: _angular_core.InputSignal<"
|
|
810
|
+
readonly onIcon: _angular_core.InputSignal<"chart-column" | "clipboard-list" | "credit-card" | "external-link" | "languages" | "megaphone" | "monitor" | "store" | "user-round" | "home" | "user-plus" | "user-check" | "hand" | "users" | "bike" | "building-2" | "package" | "package-plus" | "package-open" | "rotate-ccw" | "bar-chart-3" | "search" | "log-out" | "panel-left-close" | "panel-left-open" | "panel-left" | "calendar" | "chevron-right" | "chevron-left" | "chevron-down" | "chevron-up" | "plus" | "minus" | "chevrons-left" | "chevrons-right" | "x" | "check" | "alert-circle" | "info" | "copy" | "type" | "tag" | "ticket" | "square" | "square-check" | "circle-dot" | "circle-user" | "layout-grid" | "panels-top-left" | "panel-top" | "rows-3" | "book-open" | "palette" | "bell" | "phone" | "settings" | "align-left" | "toggle-left" | "arrow-up" | "arrow-down" | "chevrons-up-down" | "chevrons-up" | "chevrons-down" | "star" | "message-square" | "filter" | "table" | "qr-code" | "eye" | "eye-off" | "user" | "check-circle" | "arrows-clockwise" | "menu" | "file-text" | "hash" | "map-pin" | "inbox" | "arrow-right" | "refresh-cw" | "loader-circle" | "locate-fixed" | "locate-off" | "bug" | "scroll-text" | "moon" | "sun" | "search-x" | "command" | "sparkles" | "triangle-alert" | "octagon-x" | "ban" | "ellipsis" | "ellipsis-vertical" | "grip-vertical" | "upload" | "image" | "image-off" | "utensils" | "zoom-in" | "zoom-out" | "trash-2" | "clock" | "pencil" | "circle-help" | "stock" | "allergen-cereals-gluten" | "allergen-crustaceans" | "allergen-eggs" | "allergen-fish" | "allergen-peanuts" | "allergen-soybeans" | "allergen-milk" | "allergen-nuts" | "allergen-celery" | "allergen-mustard" | "allergen-sesame" | "allergen-sulphites" | "allergen-lupin" | "allergen-molluscs" | null>;
|
|
809
811
|
/** Icon shown on the knob when unchecked. */
|
|
810
|
-
readonly offIcon: _angular_core.InputSignal<"
|
|
812
|
+
readonly offIcon: _angular_core.InputSignal<"chart-column" | "clipboard-list" | "credit-card" | "external-link" | "languages" | "megaphone" | "monitor" | "store" | "user-round" | "home" | "user-plus" | "user-check" | "hand" | "users" | "bike" | "building-2" | "package" | "package-plus" | "package-open" | "rotate-ccw" | "bar-chart-3" | "search" | "log-out" | "panel-left-close" | "panel-left-open" | "panel-left" | "calendar" | "chevron-right" | "chevron-left" | "chevron-down" | "chevron-up" | "plus" | "minus" | "chevrons-left" | "chevrons-right" | "x" | "check" | "alert-circle" | "info" | "copy" | "type" | "tag" | "ticket" | "square" | "square-check" | "circle-dot" | "circle-user" | "layout-grid" | "panels-top-left" | "panel-top" | "rows-3" | "book-open" | "palette" | "bell" | "phone" | "settings" | "align-left" | "toggle-left" | "arrow-up" | "arrow-down" | "chevrons-up-down" | "chevrons-up" | "chevrons-down" | "star" | "message-square" | "filter" | "table" | "qr-code" | "eye" | "eye-off" | "user" | "check-circle" | "arrows-clockwise" | "menu" | "file-text" | "hash" | "map-pin" | "inbox" | "arrow-right" | "refresh-cw" | "loader-circle" | "locate-fixed" | "locate-off" | "bug" | "scroll-text" | "moon" | "sun" | "search-x" | "command" | "sparkles" | "triangle-alert" | "octagon-x" | "ban" | "ellipsis" | "ellipsis-vertical" | "grip-vertical" | "upload" | "image" | "image-off" | "utensils" | "zoom-in" | "zoom-out" | "trash-2" | "clock" | "pencil" | "circle-help" | "stock" | "allergen-cereals-gluten" | "allergen-crustaceans" | "allergen-eggs" | "allergen-fish" | "allergen-peanuts" | "allergen-soybeans" | "allergen-milk" | "allergen-nuts" | "allergen-celery" | "allergen-mustard" | "allergen-sesame" | "allergen-sulphites" | "allergen-lupin" | "allergen-molluscs" | null>;
|
|
811
813
|
readonly hint: _angular_core.InputSignal<string>;
|
|
812
814
|
readonly error: _angular_core.InputSignal<string>;
|
|
813
815
|
/**
|
|
@@ -879,7 +881,7 @@ declare class SdsCheckbox implements ControlValueAccessor {
|
|
|
879
881
|
private readonly cvaDisabled;
|
|
880
882
|
protected readonly isDisabled: _angular_core.Signal<boolean>;
|
|
881
883
|
protected readonly iconSize: _angular_core.Signal<11 | 13>;
|
|
882
|
-
protected readonly stateClasses: _angular_core.Signal<"cursor-
|
|
884
|
+
protected readonly stateClasses: _angular_core.Signal<"cursor-not-allowed opacity-60" | "cursor-pointer">;
|
|
883
885
|
protected readonly boxClasses: _angular_core.Signal<string>;
|
|
884
886
|
private onChange;
|
|
885
887
|
protected onTouched: () => void;
|
|
@@ -933,7 +935,7 @@ declare class SdsRadio implements ControlValueAccessor {
|
|
|
933
935
|
private readonly cvaDisabled;
|
|
934
936
|
protected readonly isDisabled: _angular_core.Signal<boolean>;
|
|
935
937
|
protected readonly isChecked: _angular_core.Signal<boolean>;
|
|
936
|
-
protected readonly stateClasses: _angular_core.Signal<"cursor-
|
|
938
|
+
protected readonly stateClasses: _angular_core.Signal<"cursor-not-allowed opacity-60" | "cursor-pointer">;
|
|
937
939
|
protected readonly circleClasses: _angular_core.Signal<string>;
|
|
938
940
|
protected readonly dotClasses: _angular_core.Signal<"h-1.5 w-1.5" | "h-2 w-2">;
|
|
939
941
|
constructor();
|
|
@@ -986,7 +988,7 @@ declare class SdsAvatar {
|
|
|
986
988
|
* Icon shown instead of initials when there is no usable image (e.g. `utensils` or `image` for a dish).
|
|
987
989
|
* Null (default) keeps the initials.
|
|
988
990
|
*/
|
|
989
|
-
readonly fallbackIcon: _angular_core.InputSignal<"
|
|
991
|
+
readonly fallbackIcon: _angular_core.InputSignal<"chart-column" | "clipboard-list" | "credit-card" | "external-link" | "languages" | "megaphone" | "monitor" | "store" | "user-round" | "home" | "user-plus" | "user-check" | "hand" | "users" | "bike" | "building-2" | "package" | "package-plus" | "package-open" | "rotate-ccw" | "bar-chart-3" | "search" | "log-out" | "panel-left-close" | "panel-left-open" | "panel-left" | "calendar" | "chevron-right" | "chevron-left" | "chevron-down" | "chevron-up" | "plus" | "minus" | "chevrons-left" | "chevrons-right" | "x" | "check" | "alert-circle" | "info" | "copy" | "type" | "tag" | "ticket" | "square" | "square-check" | "circle-dot" | "circle-user" | "layout-grid" | "panels-top-left" | "panel-top" | "rows-3" | "book-open" | "palette" | "bell" | "phone" | "settings" | "align-left" | "toggle-left" | "arrow-up" | "arrow-down" | "chevrons-up-down" | "chevrons-up" | "chevrons-down" | "star" | "message-square" | "filter" | "table" | "qr-code" | "eye" | "eye-off" | "user" | "check-circle" | "arrows-clockwise" | "menu" | "file-text" | "hash" | "map-pin" | "inbox" | "arrow-right" | "refresh-cw" | "loader-circle" | "locate-fixed" | "locate-off" | "bug" | "scroll-text" | "moon" | "sun" | "search-x" | "command" | "sparkles" | "triangle-alert" | "octagon-x" | "ban" | "ellipsis" | "ellipsis-vertical" | "grip-vertical" | "upload" | "image" | "image-off" | "utensils" | "zoom-in" | "zoom-out" | "trash-2" | "clock" | "pencil" | "circle-help" | "stock" | "allergen-cereals-gluten" | "allergen-crustaceans" | "allergen-eggs" | "allergen-fish" | "allergen-peanuts" | "allergen-soybeans" | "allergen-milk" | "allergen-nuts" | "allergen-celery" | "allergen-mustard" | "allergen-sesame" | "allergen-sulphites" | "allergen-lupin" | "allergen-molluscs" | null>;
|
|
990
992
|
/** Classes of the placeholder tile behind {@link fallbackIcon}: background and icon colour. */
|
|
991
993
|
readonly placeholderClass: _angular_core.InputSignal<string>;
|
|
992
994
|
/**
|
|
@@ -1073,7 +1075,7 @@ declare class SdsAllergenIcon {
|
|
|
1073
1075
|
readonly size: _angular_core.InputSignal<string | number>;
|
|
1074
1076
|
/** Stroke width of the line icon. */
|
|
1075
1077
|
readonly strokeWidth: _angular_core.InputSignal<number>;
|
|
1076
|
-
protected readonly iconName: _angular_core.Signal<"
|
|
1078
|
+
protected readonly iconName: _angular_core.Signal<"chart-column" | "clipboard-list" | "credit-card" | "external-link" | "languages" | "megaphone" | "monitor" | "store" | "user-round" | "home" | "user-plus" | "user-check" | "hand" | "users" | "bike" | "building-2" | "package" | "package-plus" | "package-open" | "rotate-ccw" | "bar-chart-3" | "search" | "log-out" | "panel-left-close" | "panel-left-open" | "panel-left" | "calendar" | "chevron-right" | "chevron-left" | "chevron-down" | "chevron-up" | "plus" | "minus" | "chevrons-left" | "chevrons-right" | "x" | "check" | "alert-circle" | "info" | "copy" | "type" | "tag" | "ticket" | "square" | "square-check" | "circle-dot" | "circle-user" | "layout-grid" | "panels-top-left" | "panel-top" | "rows-3" | "book-open" | "palette" | "bell" | "phone" | "settings" | "align-left" | "toggle-left" | "arrow-up" | "arrow-down" | "chevrons-up-down" | "chevrons-up" | "chevrons-down" | "star" | "message-square" | "filter" | "table" | "qr-code" | "eye" | "eye-off" | "user" | "check-circle" | "arrows-clockwise" | "menu" | "file-text" | "hash" | "map-pin" | "inbox" | "arrow-right" | "refresh-cw" | "loader-circle" | "locate-fixed" | "locate-off" | "bug" | "scroll-text" | "moon" | "sun" | "search-x" | "command" | "sparkles" | "triangle-alert" | "octagon-x" | "ban" | "ellipsis" | "ellipsis-vertical" | "grip-vertical" | "upload" | "image" | "image-off" | "utensils" | "zoom-in" | "zoom-out" | "trash-2" | "clock" | "pencil" | "circle-help" | "stock" | "allergen-cereals-gluten" | "allergen-crustaceans" | "allergen-eggs" | "allergen-fish" | "allergen-peanuts" | "allergen-soybeans" | "allergen-milk" | "allergen-nuts" | "allergen-celery" | "allergen-mustard" | "allergen-sesame" | "allergen-sulphites" | "allergen-lupin" | "allergen-molluscs" | null>;
|
|
1077
1079
|
constructor();
|
|
1078
1080
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<SdsAllergenIcon, never>;
|
|
1079
1081
|
static ɵcmp: _angular_core.ɵɵComponentDeclaration<SdsAllergenIcon, "sds-allergen-icon", never, { "allergen": { "alias": "allergen"; "required": true; "isSignal": true; }; "label": { "alias": "label"; "required": false; "isSignal": true; }; "showTitle": { "alias": "showTitle"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "strokeWidth": { "alias": "strokeWidth"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
@@ -1107,7 +1109,7 @@ declare class SdsTriStateChip {
|
|
|
1107
1109
|
/** Visible name (e.g. the allergen). Required — the chip has no other accessible name. */
|
|
1108
1110
|
readonly label: _angular_core.InputSignal<string>;
|
|
1109
1111
|
/** Optional leading registry icon, e.g. an `allergen-*` pictogram. */
|
|
1110
|
-
readonly icon: _angular_core.InputSignal<"
|
|
1112
|
+
readonly icon: _angular_core.InputSignal<"chart-column" | "clipboard-list" | "credit-card" | "external-link" | "languages" | "megaphone" | "monitor" | "store" | "user-round" | "home" | "user-plus" | "user-check" | "hand" | "users" | "bike" | "building-2" | "package" | "package-plus" | "package-open" | "rotate-ccw" | "bar-chart-3" | "search" | "log-out" | "panel-left-close" | "panel-left-open" | "panel-left" | "calendar" | "chevron-right" | "chevron-left" | "chevron-down" | "chevron-up" | "plus" | "minus" | "chevrons-left" | "chevrons-right" | "x" | "check" | "alert-circle" | "info" | "copy" | "type" | "tag" | "ticket" | "square" | "square-check" | "circle-dot" | "circle-user" | "layout-grid" | "panels-top-left" | "panel-top" | "rows-3" | "book-open" | "palette" | "bell" | "phone" | "settings" | "align-left" | "toggle-left" | "arrow-up" | "arrow-down" | "chevrons-up-down" | "chevrons-up" | "chevrons-down" | "star" | "message-square" | "filter" | "table" | "qr-code" | "eye" | "eye-off" | "user" | "check-circle" | "arrows-clockwise" | "menu" | "file-text" | "hash" | "map-pin" | "inbox" | "arrow-right" | "refresh-cw" | "loader-circle" | "locate-fixed" | "locate-off" | "bug" | "scroll-text" | "moon" | "sun" | "search-x" | "command" | "sparkles" | "triangle-alert" | "octagon-x" | "ban" | "ellipsis" | "ellipsis-vertical" | "grip-vertical" | "upload" | "image" | "image-off" | "utensils" | "zoom-in" | "zoom-out" | "trash-2" | "clock" | "pencil" | "circle-help" | "stock" | "allergen-cereals-gluten" | "allergen-crustaceans" | "allergen-eggs" | "allergen-fish" | "allergen-peanuts" | "allergen-soybeans" | "allergen-milk" | "allergen-nuts" | "allergen-celery" | "allergen-mustard" | "allergen-sesame" | "allergen-sulphites" | "allergen-lupin" | "allergen-molluscs" | null>;
|
|
1111
1113
|
readonly size: _angular_core.InputSignal<SdsTriStateChipSize>;
|
|
1112
1114
|
readonly disabled: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
1113
1115
|
/** Show the state as a small visible caption under the label. */
|
|
@@ -1127,7 +1129,7 @@ declare class SdsTriStateChip {
|
|
|
1127
1129
|
protected readonly announcement: _angular_core.WritableSignal<string>;
|
|
1128
1130
|
protected readonly stateText: _angular_core.Signal<string>;
|
|
1129
1131
|
protected readonly chipClass: _angular_core.Signal<string>;
|
|
1130
|
-
protected readonly captionClass: _angular_core.Signal<"text-
|
|
1132
|
+
protected readonly captionClass: _angular_core.Signal<"text-white/85 dark:text-[color:color-mix(in_oklab,var(--sds-dark-on-primary,var(--color-surface))_85%,transparent)]" | "text-ink-soft" | "text-ink-faint">;
|
|
1131
1133
|
protected onClick(event: MouseEvent): void;
|
|
1132
1134
|
protected onKeydown(event: KeyboardEvent): void;
|
|
1133
1135
|
private step;
|
|
@@ -1224,7 +1226,7 @@ declare class SdsChip {
|
|
|
1224
1226
|
readonly label: _angular_core.InputSignal<string>;
|
|
1225
1227
|
/** On/off. Two-way: `[(selected)]`. */
|
|
1226
1228
|
readonly selected: _angular_core.ModelSignal<boolean>;
|
|
1227
|
-
readonly icon: _angular_core.InputSignal<"
|
|
1229
|
+
readonly icon: _angular_core.InputSignal<"chart-column" | "clipboard-list" | "credit-card" | "external-link" | "languages" | "megaphone" | "monitor" | "store" | "user-round" | "home" | "user-plus" | "user-check" | "hand" | "users" | "bike" | "building-2" | "package" | "package-plus" | "package-open" | "rotate-ccw" | "bar-chart-3" | "search" | "log-out" | "panel-left-close" | "panel-left-open" | "panel-left" | "calendar" | "chevron-right" | "chevron-left" | "chevron-down" | "chevron-up" | "plus" | "minus" | "chevrons-left" | "chevrons-right" | "x" | "check" | "alert-circle" | "info" | "copy" | "type" | "tag" | "ticket" | "square" | "square-check" | "circle-dot" | "circle-user" | "layout-grid" | "panels-top-left" | "panel-top" | "rows-3" | "book-open" | "palette" | "bell" | "phone" | "settings" | "align-left" | "toggle-left" | "arrow-up" | "arrow-down" | "chevrons-up-down" | "chevrons-up" | "chevrons-down" | "star" | "message-square" | "filter" | "table" | "qr-code" | "eye" | "eye-off" | "user" | "check-circle" | "arrows-clockwise" | "menu" | "file-text" | "hash" | "map-pin" | "inbox" | "arrow-right" | "refresh-cw" | "loader-circle" | "locate-fixed" | "locate-off" | "bug" | "scroll-text" | "moon" | "sun" | "search-x" | "command" | "sparkles" | "triangle-alert" | "octagon-x" | "ban" | "ellipsis" | "ellipsis-vertical" | "grip-vertical" | "upload" | "image" | "image-off" | "utensils" | "zoom-in" | "zoom-out" | "trash-2" | "clock" | "pencil" | "circle-help" | "stock" | "allergen-cereals-gluten" | "allergen-crustaceans" | "allergen-eggs" | "allergen-fish" | "allergen-peanuts" | "allergen-soybeans" | "allergen-milk" | "allergen-nuts" | "allergen-celery" | "allergen-mustard" | "allergen-sesame" | "allergen-sulphites" | "allergen-lupin" | "allergen-molluscs" | null>;
|
|
1228
1230
|
readonly count: _angular_core.InputSignal<number | null | undefined>;
|
|
1229
1231
|
readonly size: _angular_core.InputSignal<SdsChipSize>;
|
|
1230
1232
|
readonly disabled: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
@@ -1536,7 +1538,7 @@ declare class SdsMenu implements OnDestroy {
|
|
|
1536
1538
|
/** Accessible name of the built-in icon trigger (required when there is no [triggerText]). */
|
|
1537
1539
|
readonly triggerLabel: _angular_core.InputSignal<string>;
|
|
1538
1540
|
/** Icon of the built-in trigger. */
|
|
1539
|
-
readonly triggerIcon: _angular_core.InputSignal<"
|
|
1541
|
+
readonly triggerIcon: _angular_core.InputSignal<"chart-column" | "clipboard-list" | "credit-card" | "external-link" | "languages" | "megaphone" | "monitor" | "store" | "user-round" | "home" | "user-plus" | "user-check" | "hand" | "users" | "bike" | "building-2" | "package" | "package-plus" | "package-open" | "rotate-ccw" | "bar-chart-3" | "search" | "log-out" | "panel-left-close" | "panel-left-open" | "panel-left" | "calendar" | "chevron-right" | "chevron-left" | "chevron-down" | "chevron-up" | "plus" | "minus" | "chevrons-left" | "chevrons-right" | "x" | "check" | "alert-circle" | "info" | "copy" | "type" | "tag" | "ticket" | "square" | "square-check" | "circle-dot" | "circle-user" | "layout-grid" | "panels-top-left" | "panel-top" | "rows-3" | "book-open" | "palette" | "bell" | "phone" | "settings" | "align-left" | "toggle-left" | "arrow-up" | "arrow-down" | "chevrons-up-down" | "chevrons-up" | "chevrons-down" | "star" | "message-square" | "filter" | "table" | "qr-code" | "eye" | "eye-off" | "user" | "check-circle" | "arrows-clockwise" | "menu" | "file-text" | "hash" | "map-pin" | "inbox" | "arrow-right" | "refresh-cw" | "loader-circle" | "locate-fixed" | "locate-off" | "bug" | "scroll-text" | "moon" | "sun" | "search-x" | "command" | "sparkles" | "triangle-alert" | "octagon-x" | "ban" | "ellipsis" | "ellipsis-vertical" | "grip-vertical" | "upload" | "image" | "image-off" | "utensils" | "zoom-in" | "zoom-out" | "trash-2" | "clock" | "pencil" | "circle-help" | "stock" | "allergen-cereals-gluten" | "allergen-crustaceans" | "allergen-eggs" | "allergen-fish" | "allergen-peanuts" | "allergen-soybeans" | "allergen-milk" | "allergen-nuts" | "allergen-celery" | "allergen-mustard" | "allergen-sesame" | "allergen-sulphites" | "allergen-lupin" | "allergen-molluscs">;
|
|
1540
1542
|
/** Optional visible text on the built-in trigger (then it is its name). */
|
|
1541
1543
|
readonly triggerText: _angular_core.InputSignal<string>;
|
|
1542
1544
|
/** Accessible name of the menu itself; defaults to the trigger's name. */
|
|
@@ -1858,7 +1860,7 @@ declare class SdsFileDrop {
|
|
|
1858
1860
|
*/
|
|
1859
1861
|
readonly loading: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
1860
1862
|
/** Icon in the zone at rest. */
|
|
1861
|
-
readonly icon: _angular_core.InputSignal<"
|
|
1863
|
+
readonly icon: _angular_core.InputSignal<"file-text" | "upload" | "image">;
|
|
1862
1864
|
/** `zone` (default): the dashed drop zone with a Browse button. `button`: the Browse button alone. */
|
|
1863
1865
|
readonly appearance: _angular_core.InputSignal<SdsFileDropAppearance>;
|
|
1864
1866
|
/** `button` appearance: size of the button. */
|
|
@@ -2469,7 +2471,7 @@ declare class SdsSelect implements ControlValueAccessor, OnDestroy {
|
|
|
2469
2471
|
protected readonly filled: _angular_core.Signal<boolean>;
|
|
2470
2472
|
protected readonly onBrand: _angular_core.Signal<boolean>;
|
|
2471
2473
|
/** The trigger's value / placeholder colour: on the dark `on-brand` surface it stays white in light mode too. */
|
|
2472
|
-
protected readonly valueTextClass: _angular_core.Signal<"text-white" | "text-
|
|
2474
|
+
protected readonly valueTextClass: _angular_core.Signal<"text-white" | "text-ink-faint" | "text-white/60" | "text-ink">;
|
|
2473
2475
|
protected readonly normalizedOptions: _angular_core.Signal<NormOption$1[]>;
|
|
2474
2476
|
protected readonly filteredOptions: _angular_core.Signal<NormOption$1[]>;
|
|
2475
2477
|
protected readonly selectedOption: _angular_core.Signal<NormOption$1 | null>;
|
|
@@ -2879,6 +2881,258 @@ declare class SdsPhoneInput implements ControlValueAccessor, Validator, OnDestro
|
|
|
2879
2881
|
static ɵcmp: _angular_core.ɵɵComponentDeclaration<SdsPhoneInput, "sds-phone-input", never, { "label": { "alias": "label"; "required": false; "isSignal": true; }; "hint": { "alias": "hint"; "required": false; "isSignal": true; }; "error": { "alias": "error"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "required": { "alias": "required"; "required": false; "isSignal": true; }; "clearable": { "alias": "clearable"; "required": false; "isSignal": true; }; "defaultCountry": { "alias": "defaultCountry"; "required": false; "isSignal": true; }; "preferredCountries": { "alias": "preferredCountries"; "required": false; "isSignal": true; }; "onlyCountries": { "alias": "onlyCountries"; "required": false; "isSignal": true; }; "showExampleHint": { "alias": "showExampleHint"; "required": false; "isSignal": true; }; "locale": { "alias": "locale"; "required": false; "isSignal": true; }; "requiredMessage": { "alias": "requiredMessage"; "required": false; "isSignal": true; }; "countryLabel": { "alias": "countryLabel"; "required": false; "isSignal": true; }; "clearLabel": { "alias": "clearLabel"; "required": false; "isSignal": true; }; "searchLabel": { "alias": "searchLabel"; "required": false; "isSignal": true; }; "searchPlaceholder": { "alias": "searchPlaceholder"; "required": false; "isSignal": true; }; "noResultsLabel": { "alias": "noResultsLabel"; "required": false; "isSignal": true; }; "incompleteMessage": { "alias": "incompleteMessage"; "required": false; "isSignal": true; }; "invalidMessage": { "alias": "invalidMessage"; "required": false; "isSignal": true; }; "lengthSeparator": { "alias": "lengthSeparator"; "required": false; "isSignal": true; }; "exampleHintTemplate": { "alias": "exampleHintTemplate"; "required": false; "isSignal": true; }; }, { "phoneChange": "phoneChange"; }, never, never, true, never>;
|
|
2880
2882
|
}
|
|
2881
2883
|
|
|
2884
|
+
/** Context handed to a projected `<ng-template sdsAddressExtra>`. */
|
|
2885
|
+
interface SdsAddressExtraContext {
|
|
2886
|
+
/** Same as {@link query} — enables the implicit `let-query` binding. */
|
|
2887
|
+
$implicit: string;
|
|
2888
|
+
/** The trimmed text the user typed (empty until they type, and again after a pick). */
|
|
2889
|
+
query: string;
|
|
2890
|
+
/** Whether the query is long enough for the address search to run (see `minChars`). */
|
|
2891
|
+
searching: boolean;
|
|
2892
|
+
/** Closes the overlay panel (a no-op in `inline` mode) — call it after an app row handles a pick. */
|
|
2893
|
+
close: () => void;
|
|
2894
|
+
}
|
|
2895
|
+
/**
|
|
2896
|
+
* App-owned rows rendered inside an `<sds-address-autocomplete>` panel — saved addresses, a "Enter it
|
|
2897
|
+
* manually" action… They sit outside the suggestion listbox (the arrow keys walk the suggestions only),
|
|
2898
|
+
* below the suggestions by default or between the current-location row and the suggestions with
|
|
2899
|
+
* `extraPosition="above-results"`.
|
|
2900
|
+
*
|
|
2901
|
+
* @example
|
|
2902
|
+
* <sds-address-autocomplete [search]="search" (selected)="pick($event)">
|
|
2903
|
+
* <ng-template sdsAddressExtra let-query let-close="close">
|
|
2904
|
+
* @for (a of savedMatching(query); track a.id) {
|
|
2905
|
+
* <button type="button" (click)="useSaved(a); close()">{{ a.label }}</button>
|
|
2906
|
+
* }
|
|
2907
|
+
* </ng-template>
|
|
2908
|
+
* </sds-address-autocomplete>
|
|
2909
|
+
*/
|
|
2910
|
+
declare class SdsAddressExtra {
|
|
2911
|
+
/** The wrapped template, rendered by the host autocomplete via ngTemplateOutlet. */
|
|
2912
|
+
readonly template: TemplateRef<SdsAddressExtraContext>;
|
|
2913
|
+
/** Lets the compiler type-check `let-*` bindings against SdsAddressExtraContext. */
|
|
2914
|
+
static ngTemplateContextGuard(_dir: SdsAddressExtra, _ctx: unknown): _ctx is SdsAddressExtraContext;
|
|
2915
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<SdsAddressExtra, never>;
|
|
2916
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<SdsAddressExtra, "ng-template[sdsAddressExtra]", never, {}, {}, never, never, true, never>;
|
|
2917
|
+
}
|
|
2918
|
+
|
|
2919
|
+
/**
|
|
2920
|
+
* One address the provider found. Only `label` is required; coordinates and the structured parts are
|
|
2921
|
+
* whatever the geocoder returned (a spot without a street has no `street`, an area without a pin has no
|
|
2922
|
+
* coordinates). The shape matches a typical geocode API response, so an app can usually return its
|
|
2923
|
+
* generated-client model as-is.
|
|
2924
|
+
*/
|
|
2925
|
+
interface SdsAddressSuggestion {
|
|
2926
|
+
/** The full one-line address — written into the field when picked. */
|
|
2927
|
+
label: string;
|
|
2928
|
+
latitude?: number | null;
|
|
2929
|
+
longitude?: number | null;
|
|
2930
|
+
street?: string | null;
|
|
2931
|
+
houseNumber?: string | null;
|
|
2932
|
+
postcode?: string | null;
|
|
2933
|
+
city?: string | null;
|
|
2934
|
+
/** ISO 3166-1 alpha-2 (`BE`, `NL`…). */
|
|
2935
|
+
countryCode?: string | null;
|
|
2936
|
+
/**
|
|
2937
|
+
* Where the pick came from: a search result (`search`) or the current-location row (`location`). Set by
|
|
2938
|
+
* the component on the emitted copy; a provider does not need to fill it.
|
|
2939
|
+
*/
|
|
2940
|
+
source?: 'search' | 'location';
|
|
2941
|
+
}
|
|
2942
|
+
/** Address search: the app's geocode call for the typed (trimmed) query. */
|
|
2943
|
+
type SdsAddressSearchFn = (query: string) => Promise<SdsAddressSuggestion[]>;
|
|
2944
|
+
/** Current location: the app's geolocation + reverse geocode; `null` when the position can't be had. */
|
|
2945
|
+
type SdsAddressLocateFn = () => Promise<SdsAddressSuggestion | null>;
|
|
2946
|
+
type SdsAddressAutocompleteSize = 'sm' | 'md' | 'lg';
|
|
2947
|
+
type SdsAddressAutocompleteAppearance = 'default' | 'filled';
|
|
2948
|
+
type SdsAddressAutocompleteShape = 'control' | 'pill';
|
|
2949
|
+
/** Where the projected `sdsAddressExtra` rows go: under the suggestions, or above them. */
|
|
2950
|
+
type SdsAddressExtraPosition = 'below' | 'above-results';
|
|
2951
|
+
type Row = {
|
|
2952
|
+
kind: 'locate';
|
|
2953
|
+
} | {
|
|
2954
|
+
kind: 'suggestion';
|
|
2955
|
+
suggestion: SdsAddressSuggestion;
|
|
2956
|
+
index: number;
|
|
2957
|
+
};
|
|
2958
|
+
/**
|
|
2959
|
+
* Address search field — a combobox over an app-supplied geocoder. Typing (at least `minChars`
|
|
2960
|
+
* characters) runs the `search` provider, debounced by `debounceMs`; only the latest query's response is
|
|
2961
|
+
* applied (a slower, older one is discarded). Results show the street + number on top and "postcode
|
|
2962
|
+
* city" beneath. With a `locate` provider, a "Use my current location" row sits on top until a search
|
|
2963
|
+
* starts; if the provider finds no position, an inline notice says so (no toast).
|
|
2964
|
+
*
|
|
2965
|
+
* The component does no HTTP and no geolocation itself — both are provider inputs, so it works with any
|
|
2966
|
+
* backend. The value (`[(ngModel)]` / `formControl`) is the display text of the field; a
|
|
2967
|
+
* pick writes the suggestion's `label` into it and emits `(selected)` with the whole suggestion
|
|
2968
|
+
* (coordinates + structured parts). Free text that was never picked emits nothing — treat the field as
|
|
2969
|
+
* "an address was chosen" only after `(selected)`.
|
|
2970
|
+
*
|
|
2971
|
+
* Keyboard: ↓/↑ walk the rows (opening the panel), Enter picks, Esc closes (or, `inline`, clears the
|
|
2972
|
+
* highlight and lets Esc bubble — a dialog around it still closes). ARIA: the field is a `combobox`
|
|
2973
|
+
* (`aria-autocomplete="list"`) driving a `listbox` through `aria-activedescendant`.
|
|
2974
|
+
*
|
|
2975
|
+
* By default the suggestions open in an overlay appended to `<body>` (safe inside scrolling drawers and
|
|
2976
|
+
* dialogs). `inline` renders them in the page flow instead, always visible — for a full-height address
|
|
2977
|
+
* sheet. App rows (saved addresses…) go in a projected `<ng-template sdsAddressExtra>`.
|
|
2978
|
+
*
|
|
2979
|
+
* Every user-facing string has an English default; an app serving other languages passes translations.
|
|
2980
|
+
*
|
|
2981
|
+
* @example
|
|
2982
|
+
* <sds-address-autocomplete
|
|
2983
|
+
* label="Address"
|
|
2984
|
+
* [search]="searchAddress"
|
|
2985
|
+
* [locate]="locateMe"
|
|
2986
|
+
* [(ngModel)]="addressText"
|
|
2987
|
+
* (selected)="onAddress($event)"
|
|
2988
|
+
* />
|
|
2989
|
+
*/
|
|
2990
|
+
declare class SdsAddressAutocomplete implements ControlValueAccessor, OnDestroy {
|
|
2991
|
+
private readonly host;
|
|
2992
|
+
private readonly autoId;
|
|
2993
|
+
protected readonly locateListId: string;
|
|
2994
|
+
protected readonly listId: string;
|
|
2995
|
+
/** Required. The address search: the app's geocode call for the typed (trimmed) query. */
|
|
2996
|
+
readonly search: _angular_core.InputSignal<SdsAddressSearchFn>;
|
|
2997
|
+
/**
|
|
2998
|
+
* Optional. When set, a "Use my current location" row shows on top until a search starts. The app does
|
|
2999
|
+
* the geolocation (with its own timeout) and the reverse geocode; resolve `null` (or reject) when no
|
|
3000
|
+
* position can be had — the row then shows {@link locateFailedText} inline. A position without a street
|
|
3001
|
+
* is still a result: return `{ label: '', latitude, longitude }`.
|
|
3002
|
+
*/
|
|
3003
|
+
readonly locate: _angular_core.InputSignal<SdsAddressLocateFn | null>;
|
|
3004
|
+
/** The search runs once the trimmed query has at least this many characters. */
|
|
3005
|
+
readonly minChars: _angular_core.InputSignalWithTransform<number, unknown>;
|
|
3006
|
+
/** Quiet period after the last keystroke before the search runs, in ms. */
|
|
3007
|
+
readonly debounceMs: _angular_core.InputSignalWithTransform<number, unknown>;
|
|
3008
|
+
/** Render the rows in the page flow, always visible (an address sheet) instead of an overlay. */
|
|
3009
|
+
readonly inline: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
3010
|
+
/** Where the projected `sdsAddressExtra` rows go. */
|
|
3011
|
+
readonly extraPosition: _angular_core.InputSignal<SdsAddressExtraPosition>;
|
|
3012
|
+
/**
|
|
3013
|
+
* Show {@link noResultsText} when a search finds nothing. Turn it off when the app's own extra rows
|
|
3014
|
+
* already answer the query (e.g. saved addresses that match it).
|
|
3015
|
+
*/
|
|
3016
|
+
readonly showNoResults: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
3017
|
+
/**
|
|
3018
|
+
* The field text — the picked suggestion's label, or what the user typed. It is the CVA value: bind it
|
|
3019
|
+
* with `[(ngModel)]` / `formControl` (there is deliberately no `[value]` input).
|
|
3020
|
+
*/
|
|
3021
|
+
protected readonly value: _angular_core.WritableSignal<string>;
|
|
3022
|
+
/** `id` of the native input (for an outside `<label for>`); empty generates one. */
|
|
3023
|
+
readonly inputId: _angular_core.InputSignal<string>;
|
|
3024
|
+
readonly label: _angular_core.InputSignal<string>;
|
|
3025
|
+
/** Accessible name when there is no visible [label]. */
|
|
3026
|
+
readonly ariaLabel: _angular_core.InputSignal<string>;
|
|
3027
|
+
readonly placeholder: _angular_core.InputSignal<string>;
|
|
3028
|
+
readonly hint: _angular_core.InputSignal<string>;
|
|
3029
|
+
readonly error: _angular_core.InputSignal<string>;
|
|
3030
|
+
/** Danger frame + `aria-invalid` without a message. */
|
|
3031
|
+
readonly invalid: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
3032
|
+
/** Asterisk after the label + `aria-required`. It does not validate. */
|
|
3033
|
+
readonly required: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
3034
|
+
readonly disabled: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
3035
|
+
/** A clear (×) button while the field has text. */
|
|
3036
|
+
readonly clearable: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
3037
|
+
readonly size: _angular_core.InputSignal<SdsAddressAutocompleteSize>;
|
|
3038
|
+
/** `filled`: borderless on a muted ground (a search pill inside a sheet). */
|
|
3039
|
+
readonly appearance: _angular_core.InputSignal<SdsAddressAutocompleteAppearance>;
|
|
3040
|
+
readonly shape: _angular_core.InputSignal<SdsAddressAutocompleteShape>;
|
|
3041
|
+
/** Decorative icon at the start of the field; `null` for none. */
|
|
3042
|
+
readonly leadingIcon: _angular_core.InputSignal<"chart-column" | "clipboard-list" | "credit-card" | "external-link" | "languages" | "megaphone" | "monitor" | "store" | "user-round" | "home" | "user-plus" | "user-check" | "hand" | "users" | "bike" | "building-2" | "package" | "package-plus" | "package-open" | "rotate-ccw" | "bar-chart-3" | "search" | "log-out" | "panel-left-close" | "panel-left-open" | "panel-left" | "calendar" | "chevron-right" | "chevron-left" | "chevron-down" | "chevron-up" | "plus" | "minus" | "chevrons-left" | "chevrons-right" | "x" | "check" | "alert-circle" | "info" | "copy" | "type" | "tag" | "ticket" | "square" | "square-check" | "circle-dot" | "circle-user" | "layout-grid" | "panels-top-left" | "panel-top" | "rows-3" | "book-open" | "palette" | "bell" | "phone" | "settings" | "align-left" | "toggle-left" | "arrow-up" | "arrow-down" | "chevrons-up-down" | "chevrons-up" | "chevrons-down" | "star" | "message-square" | "filter" | "table" | "qr-code" | "eye" | "eye-off" | "user" | "check-circle" | "arrows-clockwise" | "menu" | "file-text" | "hash" | "map-pin" | "inbox" | "arrow-right" | "refresh-cw" | "loader-circle" | "locate-fixed" | "locate-off" | "bug" | "scroll-text" | "moon" | "sun" | "search-x" | "command" | "sparkles" | "triangle-alert" | "octagon-x" | "ban" | "ellipsis" | "ellipsis-vertical" | "grip-vertical" | "upload" | "image" | "image-off" | "utensils" | "zoom-in" | "zoom-out" | "trash-2" | "clock" | "pencil" | "circle-help" | "stock" | "allergen-cereals-gluten" | "allergen-crustaceans" | "allergen-eggs" | "allergen-fish" | "allergen-peanuts" | "allergen-soybeans" | "allergen-milk" | "allergen-nuts" | "allergen-celery" | "allergen-mustard" | "allergen-sesame" | "allergen-sulphites" | "allergen-lupin" | "allergen-molluscs" | null>;
|
|
3043
|
+
readonly useLocationText: _angular_core.InputSignal<string>;
|
|
3044
|
+
readonly locatingText: _angular_core.InputSignal<string>;
|
|
3045
|
+
readonly locateFailedText: _angular_core.InputSignal<string>;
|
|
3046
|
+
readonly searchingText: _angular_core.InputSignal<string>;
|
|
3047
|
+
readonly noResultsText: _angular_core.InputSignal<string>;
|
|
3048
|
+
readonly searchErrorText: _angular_core.InputSignal<string>;
|
|
3049
|
+
/** Optional heading above the suggestions (e.g. "Results"); empty shows none. */
|
|
3050
|
+
readonly resultsLabel: _angular_core.InputSignal<string>;
|
|
3051
|
+
/** Accessible name of the icon-only clear button. */
|
|
3052
|
+
readonly clearLabel: _angular_core.InputSignal<string>;
|
|
3053
|
+
/** A suggestion or the current location was picked. The emitted copy carries `source`. */
|
|
3054
|
+
readonly selected: _angular_core.OutputEmitterRef<SdsAddressSuggestion>;
|
|
3055
|
+
protected readonly extraTpl: _angular_core.Signal<SdsAddressExtra | undefined>;
|
|
3056
|
+
private readonly fieldRef;
|
|
3057
|
+
private readonly inputRef;
|
|
3058
|
+
/** The trimmed text the user typed — '' until they type, and again after a pick or a written value. */
|
|
3059
|
+
protected readonly query: _angular_core.WritableSignal<string>;
|
|
3060
|
+
protected readonly suggestions: _angular_core.WritableSignal<SdsAddressSuggestion[]>;
|
|
3061
|
+
protected readonly loading: _angular_core.WritableSignal<boolean>;
|
|
3062
|
+
/** The latest search failed (network / server) — not the same as "no matches". */
|
|
3063
|
+
protected readonly failed: _angular_core.WritableSignal<boolean>;
|
|
3064
|
+
protected readonly locating: _angular_core.WritableSignal<boolean>;
|
|
3065
|
+
protected readonly locateFailed: _angular_core.WritableSignal<boolean>;
|
|
3066
|
+
protected readonly open: _angular_core.WritableSignal<boolean>;
|
|
3067
|
+
protected readonly highlighted: _angular_core.WritableSignal<number>;
|
|
3068
|
+
private readonly cvaDisabled;
|
|
3069
|
+
/** Monotonic id: only the latest search's response is applied. */
|
|
3070
|
+
private seq;
|
|
3071
|
+
private timer?;
|
|
3072
|
+
private destroyed;
|
|
3073
|
+
private panelEl;
|
|
3074
|
+
protected readonly fieldId: _angular_core.Signal<string>;
|
|
3075
|
+
protected readonly isDisabled: _angular_core.Signal<boolean>;
|
|
3076
|
+
protected readonly pill: _angular_core.Signal<boolean>;
|
|
3077
|
+
protected readonly isSearching: _angular_core.Signal<boolean>;
|
|
3078
|
+
/** The current-location row: offered (a `locate` provider) and no search engaged yet. */
|
|
3079
|
+
protected readonly showLocate: _angular_core.Signal<boolean>;
|
|
3080
|
+
protected readonly rows: _angular_core.Signal<Row[]>;
|
|
3081
|
+
protected readonly suggestionRows: _angular_core.Signal<{
|
|
3082
|
+
suggestion: SdsAddressSuggestion;
|
|
3083
|
+
rowIndex: number;
|
|
3084
|
+
}[]>;
|
|
3085
|
+
/** Anything to show in the panel at all. */
|
|
3086
|
+
private readonly hasContent;
|
|
3087
|
+
/** The rows are visible: always when `inline`, while open (and non-empty) as an overlay. */
|
|
3088
|
+
protected readonly panelShown: _angular_core.Signal<boolean>;
|
|
3089
|
+
protected readonly controlsIds: _angular_core.Signal<string | null>;
|
|
3090
|
+
protected readonly activeDescId: _angular_core.Signal<string | null>;
|
|
3091
|
+
protected readonly listLabel: _angular_core.Signal<string | null>;
|
|
3092
|
+
protected readonly describedBy: _angular_core.Signal<string | null>;
|
|
3093
|
+
protected readonly fieldPadding: _angular_core.Signal<string>;
|
|
3094
|
+
protected readonly wrapperClasses: _angular_core.Signal<string>;
|
|
3095
|
+
protected readonly extraContext: _angular_core.Signal<SdsAddressExtraContext>;
|
|
3096
|
+
constructor();
|
|
3097
|
+
protected optionId(rowIndex: number): string;
|
|
3098
|
+
protected rowClass(rowIndex: number, busy: boolean): string;
|
|
3099
|
+
/** Street + number when the geocoder split it out, else the full label. */
|
|
3100
|
+
protected primaryLine(s: SdsAddressSuggestion): string;
|
|
3101
|
+
/** "postcode city" — or, when the primary is already the full label, the country instead. */
|
|
3102
|
+
protected secondaryLine(s: SdsAddressSuggestion): string;
|
|
3103
|
+
protected onInput(event: Event): void;
|
|
3104
|
+
/** Focus or a click on the (already focused) field opens the overlay. */
|
|
3105
|
+
protected onFocus(): void;
|
|
3106
|
+
private runSearch;
|
|
3107
|
+
/** Drop any in-flight search and return to the idle (no query) state. */
|
|
3108
|
+
private resetSearch;
|
|
3109
|
+
protected clear(): void;
|
|
3110
|
+
protected pick(s: SdsAddressSuggestion, source: 'search' | 'location'): void;
|
|
3111
|
+
/** The current-location row: the `locate` provider, then a pick — or the inline failure notice. */
|
|
3112
|
+
protected useCurrentLocation(): Promise<void>;
|
|
3113
|
+
private activate;
|
|
3114
|
+
protected onKeydown(event: KeyboardEvent): void;
|
|
3115
|
+
private scrollHighlightedIntoView;
|
|
3116
|
+
/** Close the overlay (a no-op `inline`, where the rows are always shown). */
|
|
3117
|
+
close(): void;
|
|
3118
|
+
private readonly reflow;
|
|
3119
|
+
private listening;
|
|
3120
|
+
private syncPanel;
|
|
3121
|
+
private detachPanel;
|
|
3122
|
+
private positionPanel;
|
|
3123
|
+
protected onDocumentClick(event: MouseEvent): void;
|
|
3124
|
+
ngOnDestroy(): void;
|
|
3125
|
+
private onChange;
|
|
3126
|
+
protected onTouched: () => void;
|
|
3127
|
+
/** A written value is display text only: it never runs a search. */
|
|
3128
|
+
writeValue(value: string | null): void;
|
|
3129
|
+
registerOnChange(fn: (value: string) => void): void;
|
|
3130
|
+
registerOnTouched(fn: () => void): void;
|
|
3131
|
+
setDisabledState(isDisabled: boolean): void;
|
|
3132
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<SdsAddressAutocomplete, never>;
|
|
3133
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<SdsAddressAutocomplete, "sds-address-autocomplete", never, { "search": { "alias": "search"; "required": true; "isSignal": true; }; "locate": { "alias": "locate"; "required": false; "isSignal": true; }; "minChars": { "alias": "minChars"; "required": false; "isSignal": true; }; "debounceMs": { "alias": "debounceMs"; "required": false; "isSignal": true; }; "inline": { "alias": "inline"; "required": false; "isSignal": true; }; "extraPosition": { "alias": "extraPosition"; "required": false; "isSignal": true; }; "showNoResults": { "alias": "showNoResults"; "required": false; "isSignal": true; }; "inputId": { "alias": "inputId"; "required": false; "isSignal": true; }; "label": { "alias": "label"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "hint": { "alias": "hint"; "required": false; "isSignal": true; }; "error": { "alias": "error"; "required": false; "isSignal": true; }; "invalid": { "alias": "invalid"; "required": false; "isSignal": true; }; "required": { "alias": "required"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "clearable": { "alias": "clearable"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "appearance": { "alias": "appearance"; "required": false; "isSignal": true; }; "shape": { "alias": "shape"; "required": false; "isSignal": true; }; "leadingIcon": { "alias": "leadingIcon"; "required": false; "isSignal": true; }; "useLocationText": { "alias": "useLocationText"; "required": false; "isSignal": true; }; "locatingText": { "alias": "locatingText"; "required": false; "isSignal": true; }; "locateFailedText": { "alias": "locateFailedText"; "required": false; "isSignal": true; }; "searchingText": { "alias": "searchingText"; "required": false; "isSignal": true; }; "noResultsText": { "alias": "noResultsText"; "required": false; "isSignal": true; }; "searchErrorText": { "alias": "searchErrorText"; "required": false; "isSignal": true; }; "resultsLabel": { "alias": "resultsLabel"; "required": false; "isSignal": true; }; "clearLabel": { "alias": "clearLabel"; "required": false; "isSignal": true; }; }, { "selected": "selected"; }, ["extraTpl"], never, true, never>;
|
|
3134
|
+
}
|
|
3135
|
+
|
|
2882
3136
|
type SdsPaginatorSize = 'sm' | 'md' | 'lg';
|
|
2883
3137
|
/** Payload emitted by (pageChange) whenever the page or page size changes. */
|
|
2884
3138
|
interface SdsPaginatorState {
|
|
@@ -3815,7 +4069,14 @@ declare class SdsToastHost {
|
|
|
3815
4069
|
static ɵcmp: _angular_core.ɵɵComponentDeclaration<SdsToastHost, "sds-toast-host", never, { "closeLabel": { "alias": "closeLabel"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
3816
4070
|
}
|
|
3817
4071
|
|
|
4072
|
+
/** The theme actually painted. */
|
|
3818
4073
|
type SdsTheme = 'light' | 'dark';
|
|
4074
|
+
/** The person's choice: an explicit theme, or `system` = follow the OS `prefers-color-scheme`, live. */
|
|
4075
|
+
type SdsThemeMode = 'system' | SdsTheme;
|
|
4076
|
+
/** The localStorage key the mode is persisted under. Also read by the pre-paint boot script (see README). */
|
|
4077
|
+
declare const SDS_THEME_STORAGE_KEY = "sds-theme";
|
|
4078
|
+
/** `true` for the three values {@link SdsThemeMode} accepts — for validating stored or URL-supplied input. */
|
|
4079
|
+
declare function isSdsThemeMode(value: unknown): value is SdsThemeMode;
|
|
3819
4080
|
/**
|
|
3820
4081
|
* Light/dark theme state for the whole app. It owns exactly one thing: the presence of the `.dark`
|
|
3821
4082
|
* class on the document root, which flips every design token defined under `.dark` in the theme CSS
|
|
@@ -3826,25 +4087,35 @@ type SdsTheme = 'light' | 'dark';
|
|
|
3826
4087
|
*
|
|
3827
4088
|
* ```ts
|
|
3828
4089
|
* private readonly theme = inject(SdsThemeService);
|
|
3829
|
-
* this.theme.toggle(); // flip
|
|
4090
|
+
* this.theme.toggle(); // flip (to an explicit light/dark)
|
|
4091
|
+
* this.theme.setMode('system'); // follow the OS again
|
|
3830
4092
|
* this.theme.isDark(); // read (a signal)
|
|
4093
|
+
* this.theme.mode(); // 'system' | 'light' | 'dark'
|
|
3831
4094
|
* ```
|
|
3832
4095
|
*
|
|
3833
|
-
*
|
|
3834
|
-
*
|
|
3835
|
-
*
|
|
3836
|
-
* safe under SSR / prerender (it simply no-ops without a DOM).
|
|
4096
|
+
* Two layers: {@link mode} is the choice (persisted to `localStorage` under `sds-theme`), {@link theme} is
|
|
4097
|
+
* what that resolves to. With no stored choice the mode is `system`, which tracks the OS setting live —
|
|
4098
|
+
* a first-time visitor in dark at the OS level lands in dark, and follows the OS if it flips. Every
|
|
4099
|
+
* browser access is guarded, so the service is safe under SSR / prerender (it simply no-ops without a DOM).
|
|
3837
4100
|
*/
|
|
3838
4101
|
declare class SdsThemeService {
|
|
3839
4102
|
private readonly document;
|
|
3840
|
-
|
|
4103
|
+
/** The person's choice. */
|
|
4104
|
+
readonly mode: _angular_core.WritableSignal<SdsThemeMode>;
|
|
4105
|
+
/** The OS preference, kept live by a `matchMedia` listener. */
|
|
4106
|
+
private readonly systemDark;
|
|
4107
|
+
/** The theme painted: the explicit choice, or the OS one under `system`. */
|
|
4108
|
+
readonly theme: _angular_core.Signal<SdsTheme>;
|
|
3841
4109
|
readonly isDark: _angular_core.Signal<boolean>;
|
|
3842
4110
|
constructor();
|
|
3843
|
-
/** Flip between light and dark. */
|
|
4111
|
+
/** Flip between light and dark (an explicit choice, leaving `system`). */
|
|
3844
4112
|
toggle(): void;
|
|
3845
4113
|
/** Set an explicit theme. */
|
|
3846
4114
|
setTheme(theme: SdsTheme): void;
|
|
3847
|
-
|
|
4115
|
+
/** Set the choice, `system` included. */
|
|
4116
|
+
setMode(mode: SdsThemeMode): void;
|
|
4117
|
+
private initialMode;
|
|
4118
|
+
private queryDark;
|
|
3848
4119
|
private apply;
|
|
3849
4120
|
private readStorage;
|
|
3850
4121
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<SdsThemeService, never>;
|
|
@@ -3885,6 +4156,47 @@ declare class SdsThemeToggle {
|
|
|
3885
4156
|
static ɵcmp: _angular_core.ɵɵComponentDeclaration<SdsThemeToggle, "sds-theme-toggle", never, { "size": { "alias": "size"; "required": false; "isSignal": true; }; "appearance": { "alias": "appearance"; "required": false; "isSignal": true; }; "darkLabel": { "alias": "darkLabel"; "required": false; "isSignal": true; }; "lightLabel": { "alias": "lightLabel"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
3886
4157
|
}
|
|
3887
4158
|
|
|
4159
|
+
/**
|
|
4160
|
+
* UI preferences that travel in the URL between apps of one product (sign-in hinge ↔ storefront ↔ back-office,
|
|
4161
|
+
* mobile app → web account page), so the page that opens is in the language and theme the person is in.
|
|
4162
|
+
*
|
|
4163
|
+
* The contract is two optional query params — `lang` (a language code) and `theme` (`system` | `light` |
|
|
4164
|
+
* `dark`). The SENDING side appends them with {@link appendUiPrefs}; the RECEIVING side applies + persists +
|
|
4165
|
+
* strips them before first paint with the inline boot script documented in the README (and mirrored by
|
|
4166
|
+
* {@link readUiPrefs} / {@link stripUiPrefs} for code and tests).
|
|
4167
|
+
*
|
|
4168
|
+
* Never put them inside a nested redirect URL that a server matches exactly (an OAuth `return_to` /
|
|
4169
|
+
* `redirect_uri`): append them to the OUTER URL, and let the receiving app append them to the final redirect.
|
|
4170
|
+
*/
|
|
4171
|
+
interface SdsUiPrefs {
|
|
4172
|
+
/** A language code, e.g. `en`. Omitted / null / empty = not sent. */
|
|
4173
|
+
lang?: string | null;
|
|
4174
|
+
/** The theme CHOICE (`system` stays `system`). Omitted / null = not sent. */
|
|
4175
|
+
theme?: SdsThemeMode | null;
|
|
4176
|
+
}
|
|
4177
|
+
declare const SDS_UI_PREF_LANG_PARAM = "lang";
|
|
4178
|
+
declare const SDS_UI_PREF_THEME_PARAM = "theme";
|
|
4179
|
+
/**
|
|
4180
|
+
* `url` with `lang` / `theme` set on its query (overwriting any present), the fragment kept. Accepts an
|
|
4181
|
+
* absolute URL or a root-relative path (returned root-relative). Invalid themes are dropped, not sent.
|
|
4182
|
+
*
|
|
4183
|
+
* ```ts
|
|
4184
|
+
* appendUiPrefs('https://auth.example/continue#token=abc', { lang: 'fr', theme: 'dark' })
|
|
4185
|
+
* // → 'https://auth.example/continue?lang=fr&theme=dark#token=abc'
|
|
4186
|
+
* ```
|
|
4187
|
+
*/
|
|
4188
|
+
declare function appendUiPrefs(url: string, prefs: SdsUiPrefs): string;
|
|
4189
|
+
/**
|
|
4190
|
+
* The prefs carried by a query string (`location.search`), validated: `lang` only if it is one of
|
|
4191
|
+
* `supportedLangs`, `theme` only if it is a {@link SdsThemeMode}. Anything else reads as absent.
|
|
4192
|
+
*/
|
|
4193
|
+
declare function readUiPrefs(search: string, supportedLangs: readonly string[]): {
|
|
4194
|
+
lang: string | null;
|
|
4195
|
+
theme: SdsThemeMode | null;
|
|
4196
|
+
};
|
|
4197
|
+
/** `url` without the `lang` / `theme` params (everything else, fragment included, untouched). */
|
|
4198
|
+
declare function stripUiPrefs(url: string): string;
|
|
4199
|
+
|
|
3888
4200
|
/** How the rail is painted. `brand` is the dark brand rail; `surface` is a light rail with brand accents. */
|
|
3889
4201
|
type SdsSidebarAppearance = 'brand' | 'surface';
|
|
3890
4202
|
/**
|
|
@@ -4099,7 +4411,7 @@ declare class SdsNavGroup {
|
|
|
4099
4411
|
/** Turn the label into an expand/collapse control. */
|
|
4100
4412
|
readonly collapsible: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
4101
4413
|
/** Icon for a collapsible header, so it reads at the same weight as the items it sits among. */
|
|
4102
|
-
readonly icon: _angular_core.InputSignal<"
|
|
4414
|
+
readonly icon: _angular_core.InputSignal<"chart-column" | "clipboard-list" | "credit-card" | "external-link" | "languages" | "megaphone" | "monitor" | "store" | "user-round" | "home" | "user-plus" | "user-check" | "hand" | "users" | "bike" | "building-2" | "package" | "package-plus" | "package-open" | "rotate-ccw" | "bar-chart-3" | "search" | "log-out" | "panel-left-close" | "panel-left-open" | "panel-left" | "calendar" | "chevron-right" | "chevron-left" | "chevron-down" | "chevron-up" | "plus" | "minus" | "chevrons-left" | "chevrons-right" | "x" | "check" | "alert-circle" | "info" | "copy" | "type" | "tag" | "ticket" | "square" | "square-check" | "circle-dot" | "circle-user" | "layout-grid" | "panels-top-left" | "panel-top" | "rows-3" | "book-open" | "palette" | "bell" | "phone" | "settings" | "align-left" | "toggle-left" | "arrow-up" | "arrow-down" | "chevrons-up-down" | "chevrons-up" | "chevrons-down" | "star" | "message-square" | "filter" | "table" | "qr-code" | "eye" | "eye-off" | "user" | "check-circle" | "arrows-clockwise" | "menu" | "file-text" | "hash" | "map-pin" | "inbox" | "arrow-right" | "refresh-cw" | "loader-circle" | "locate-fixed" | "locate-off" | "bug" | "scroll-text" | "moon" | "sun" | "search-x" | "command" | "sparkles" | "triangle-alert" | "octagon-x" | "ban" | "ellipsis" | "ellipsis-vertical" | "grip-vertical" | "upload" | "image" | "image-off" | "utensils" | "zoom-in" | "zoom-out" | "trash-2" | "clock" | "pencil" | "circle-help" | "stock" | "allergen-cereals-gluten" | "allergen-crustaceans" | "allergen-eggs" | "allergen-fish" | "allergen-peanuts" | "allergen-soybeans" | "allergen-milk" | "allergen-nuts" | "allergen-celery" | "allergen-mustard" | "allergen-sesame" | "allergen-sulphites" | "allergen-lupin" | "allergen-molluscs" | null>;
|
|
4103
4415
|
/**
|
|
4104
4416
|
* URL prefix owned by this group, e.g. `/payments`. While the active route starts with it the
|
|
4105
4417
|
* group counts as active and opens itself — unless the person has explicitly toggled it since.
|
|
@@ -4164,7 +4476,7 @@ type SdsNavItemBadgeTone = 'brand' | 'danger' | 'neutral';
|
|
|
4164
4476
|
*/
|
|
4165
4477
|
declare class SdsNavItem {
|
|
4166
4478
|
protected readonly store: SidebarStore;
|
|
4167
|
-
readonly icon: _angular_core.InputSignal<"
|
|
4479
|
+
readonly icon: _angular_core.InputSignal<"chart-column" | "clipboard-list" | "credit-card" | "external-link" | "languages" | "megaphone" | "monitor" | "store" | "user-round" | "home" | "user-plus" | "user-check" | "hand" | "users" | "bike" | "building-2" | "package" | "package-plus" | "package-open" | "rotate-ccw" | "bar-chart-3" | "search" | "log-out" | "panel-left-close" | "panel-left-open" | "panel-left" | "calendar" | "chevron-right" | "chevron-left" | "chevron-down" | "chevron-up" | "plus" | "minus" | "chevrons-left" | "chevrons-right" | "x" | "check" | "alert-circle" | "info" | "copy" | "type" | "tag" | "ticket" | "square" | "square-check" | "circle-dot" | "circle-user" | "layout-grid" | "panels-top-left" | "panel-top" | "rows-3" | "book-open" | "palette" | "bell" | "phone" | "settings" | "align-left" | "toggle-left" | "arrow-up" | "arrow-down" | "chevrons-up-down" | "chevrons-up" | "chevrons-down" | "star" | "message-square" | "filter" | "table" | "qr-code" | "eye" | "eye-off" | "user" | "check-circle" | "arrows-clockwise" | "menu" | "file-text" | "hash" | "map-pin" | "inbox" | "arrow-right" | "refresh-cw" | "loader-circle" | "locate-fixed" | "locate-off" | "bug" | "scroll-text" | "moon" | "sun" | "search-x" | "command" | "sparkles" | "triangle-alert" | "octagon-x" | "ban" | "ellipsis" | "ellipsis-vertical" | "grip-vertical" | "upload" | "image" | "image-off" | "utensils" | "zoom-in" | "zoom-out" | "trash-2" | "clock" | "pencil" | "circle-help" | "stock" | "allergen-cereals-gluten" | "allergen-crustaceans" | "allergen-eggs" | "allergen-fish" | "allergen-peanuts" | "allergen-soybeans" | "allergen-milk" | "allergen-nuts" | "allergen-celery" | "allergen-mustard" | "allergen-sesame" | "allergen-sulphites" | "allergen-lupin" | "allergen-molluscs" | null>;
|
|
4168
4480
|
readonly label: _angular_core.InputSignal<string>;
|
|
4169
4481
|
/** Router link target; when null, the item behaves as a button. */
|
|
4170
4482
|
readonly link: _angular_core.InputSignal<string | unknown[] | null>;
|
|
@@ -4280,7 +4592,7 @@ type SdsMenuItemTone = 'default' | 'danger';
|
|
|
4280
4592
|
* <sds-menu-item icon="log-out" label="Sign out" tone="danger" (select)="signOut()" />
|
|
4281
4593
|
*/
|
|
4282
4594
|
declare class SdsMenuItem {
|
|
4283
|
-
readonly icon: _angular_core.InputSignal<"
|
|
4595
|
+
readonly icon: _angular_core.InputSignal<"chart-column" | "clipboard-list" | "credit-card" | "external-link" | "languages" | "megaphone" | "monitor" | "store" | "user-round" | "home" | "user-plus" | "user-check" | "hand" | "users" | "bike" | "building-2" | "package" | "package-plus" | "package-open" | "rotate-ccw" | "bar-chart-3" | "search" | "log-out" | "panel-left-close" | "panel-left-open" | "panel-left" | "calendar" | "chevron-right" | "chevron-left" | "chevron-down" | "chevron-up" | "plus" | "minus" | "chevrons-left" | "chevrons-right" | "x" | "check" | "alert-circle" | "info" | "copy" | "type" | "tag" | "ticket" | "square" | "square-check" | "circle-dot" | "circle-user" | "layout-grid" | "panels-top-left" | "panel-top" | "rows-3" | "book-open" | "palette" | "bell" | "phone" | "settings" | "align-left" | "toggle-left" | "arrow-up" | "arrow-down" | "chevrons-up-down" | "chevrons-up" | "chevrons-down" | "star" | "message-square" | "filter" | "table" | "qr-code" | "eye" | "eye-off" | "user" | "check-circle" | "arrows-clockwise" | "menu" | "file-text" | "hash" | "map-pin" | "inbox" | "arrow-right" | "refresh-cw" | "loader-circle" | "locate-fixed" | "locate-off" | "bug" | "scroll-text" | "moon" | "sun" | "search-x" | "command" | "sparkles" | "triangle-alert" | "octagon-x" | "ban" | "ellipsis" | "ellipsis-vertical" | "grip-vertical" | "upload" | "image" | "image-off" | "utensils" | "zoom-in" | "zoom-out" | "trash-2" | "clock" | "pencil" | "circle-help" | "stock" | "allergen-cereals-gluten" | "allergen-crustaceans" | "allergen-eggs" | "allergen-fish" | "allergen-peanuts" | "allergen-soybeans" | "allergen-milk" | "allergen-nuts" | "allergen-celery" | "allergen-mustard" | "allergen-sesame" | "allergen-sulphites" | "allergen-lupin" | "allergen-molluscs" | null>;
|
|
4284
4596
|
readonly label: _angular_core.InputSignal<string>;
|
|
4285
4597
|
/** Router link target for an in-app route; when null (default) the item is not a Router link. */
|
|
4286
4598
|
readonly link: _angular_core.InputSignal<string | unknown[] | null>;
|
|
@@ -4505,5 +4817,5 @@ declare class SdsLanguageSwitcher implements OnDestroy {
|
|
|
4505
4817
|
static ɵcmp: _angular_core.ɵɵComponentDeclaration<SdsLanguageSwitcher, "sds-language-switcher", never, { "languages": { "alias": "languages"; "required": false; "isSignal": true; }; "current": { "alias": "current"; "required": false; "isSignal": true; }; "appearance": { "alias": "appearance"; "required": false; "isSignal": true; }; "align": { "alias": "align"; "required": false; "isSignal": true; }; "direction": { "alias": "direction"; "required": false; "isSignal": true; }; "menuLabel": { "alias": "menuLabel"; "required": false; "isSignal": true; }; "heading": { "alias": "heading"; "required": false; "isSignal": true; }; }, { "current": "currentChange"; "openChange": "openChange"; }, never, never, true, never>;
|
|
4506
4818
|
}
|
|
4507
4819
|
|
|
4508
|
-
export { SDS_ALLERGENS, SDS_ALLERGEN_ICONS, SDS_ALLERGEN_LABELS_EN, SDS_ICONS, SDS_PHONE_COUNTRIES, SdsAccordion, SdsAccordionContent, SdsAccordionHeader, SdsAccordionPanel, SdsAccordionStore, SdsAllergenIcon, SdsAvatar, SdsBadge, SdsBulkBar, SdsButton, SdsCalendar, SdsCard, SdsCheckbox, SdsChecklistRow, SdsChip, SdsChipGroup, SdsDatePicker, SdsFileDrop, SdsIcon, SdsImageCropper, SdsInput, SdsInputNumber, SdsLanguageSwitcher, SdsLocalizedInput, SdsMenu, SdsMenuItem, SdsMenuTrigger, SdsMultiSelect, SdsNavGroup, SdsNavItem, SdsOtpInput, SdsPaginator, SdsPhoneInput, SdsRadio, SdsScore, SdsSearchCommand, SdsSegmented, SdsSelect, SdsSelectEmpty, SdsSelectFooter, SdsSelectOption, SdsShell, SdsSidebar, SdsSortableHandle, SdsSortableItem, SdsSortableList, SdsStatusTile, SdsTab, SdsTabList, SdsTabPanel, SdsTabPanels, SdsTable, SdsTableCell, SdsTableEmpty, SdsTableHeader, SdsTableRowExpansion, SdsTabs, SdsTabsStore, SdsTextarea, SdsThemeService, SdsThemeToggle, SdsTimeInput, SdsToastHost, SdsToastService, SdsToggleSwitch, SdsTopbar, SdsTriStateChip, SdsUserMenu, SidebarStore, addDays, addMonths, addMonthsKeepDay, formatDdMmYyyy, formatHhMm, isOutOfRange, isSameDay, isoDay, pad2, sdsFileMatchesAccept, sdsFormatBytes, sdsFormatNational, sdsMatchDialCode, sdsNormalizeSignificant, startOfDay, startOfMonth };
|
|
4509
|
-
export type { SdsAccordionActive, SdsAccordionValue, SdsAllergen, SdsAvatarShape, SdsAvatarStatus, SdsBadgeSize, SdsBadgeVariant, SdsBulkBarPosition, SdsButtonShape, SdsButtonSize, SdsButtonVariant, SdsCardVariant, SdsCheckboxSize, SdsChecklistStatus, SdsChipOption, SdsChipSize, SdsCropRect, SdsDatePickerSize, SdsFileDropAppearance, SdsFileRejection, SdsFileRejectionReason, SdsIconName, SdsIconSize, SdsImageCropperBlobOptions, SdsImageCropperShape, SdsInputAppearance, SdsInputNumberAppearance, SdsInputNumberButtonLayout, SdsInputNumberCurrencyDisplay, SdsInputNumberMode, SdsInputNumberSize, SdsInputShape, SdsInputSize, SdsInputType, SdsLanguageOption, SdsLanguageSwitcherAlign, SdsLanguageSwitcherAppearance, SdsLanguageSwitcherDirection, SdsLocalizedInputSize, SdsLocalizedValue, SdsMenuAction, SdsMenuAlign, SdsMenuEntry, SdsMenuItemTone, SdsMenuSeparator, SdsMultiSelectDisplay, SdsMultiSelectSize, SdsNavItemBadgeTone, SdsOtpInputSize, SdsPaginatorSize, SdsPaginatorState, SdsPhoneCountry, SdsPhoneInputSize, SdsPhoneValue, SdsRadioSize, SdsScoreSize, SdsScoreTier, SdsScoreVariant, SdsSearchAppearance, SdsSearchItem, SdsSegmentedOption, SdsSegmentedSize, SdsSelectAppearance, SdsSelectEmptyContext, SdsSelectFooterContext, SdsSelectOptionContext, SdsSelectSize, SdsShellBackground, SdsSidebarAppearance, SdsSortOrder, SdsSortableAppearance, SdsSortableItemContext, SdsSortableReorderEvent, SdsStatusTileState, SdsTabValue, SdsTableCellCommitEvent, SdsTableCellContext, SdsTableCellErrors, SdsTableColumn, SdsTableEditTrigger, SdsTableEditor, SdsTableEmptyContext, SdsTableHeaderContext, SdsTableLazyEvent, SdsTableRowExpansionContext, SdsTableSelectOption, SdsTableSize, SdsTableSortEvent, SdsTextareaAppearance, SdsTextareaResize, SdsTextareaSize, SdsTheme, SdsThemeToggleAppearance, SdsTimeInputAppearance, SdsTimeInputSize, SdsToast, SdsToastKind, SdsToggleSwitchSize, SdsTopbarAppearance, SdsTriState, SdsTriStateChipSize, SdsUserMenuAlign, SdsUserMenuAppearance };
|
|
4820
|
+
export { SDS_ALLERGENS, SDS_ALLERGEN_ICONS, SDS_ALLERGEN_LABELS_EN, SDS_ICONS, SDS_PHONE_COUNTRIES, SDS_THEME_STORAGE_KEY, SDS_UI_PREF_LANG_PARAM, SDS_UI_PREF_THEME_PARAM, SdsAccordion, SdsAccordionContent, SdsAccordionHeader, SdsAccordionPanel, SdsAccordionStore, SdsAddressAutocomplete, SdsAddressExtra, SdsAllergenIcon, SdsAvatar, SdsBadge, SdsBulkBar, SdsButton, SdsCalendar, SdsCard, SdsCheckbox, SdsChecklistRow, SdsChip, SdsChipGroup, SdsDatePicker, SdsFileDrop, SdsIcon, SdsImageCropper, SdsInput, SdsInputNumber, SdsLanguageSwitcher, SdsLocalizedInput, SdsMenu, SdsMenuItem, SdsMenuTrigger, SdsMultiSelect, SdsNavGroup, SdsNavItem, SdsOtpInput, SdsPaginator, SdsPhoneInput, SdsRadio, SdsScore, SdsSearchCommand, SdsSegmented, SdsSelect, SdsSelectEmpty, SdsSelectFooter, SdsSelectOption, SdsShell, SdsSidebar, SdsSortableHandle, SdsSortableItem, SdsSortableList, SdsStatusTile, SdsTab, SdsTabList, SdsTabPanel, SdsTabPanels, SdsTable, SdsTableCell, SdsTableEmpty, SdsTableHeader, SdsTableRowExpansion, SdsTabs, SdsTabsStore, SdsTextarea, SdsThemeService, SdsThemeToggle, SdsTimeInput, SdsToastHost, SdsToastService, SdsToggleSwitch, SdsTopbar, SdsTriStateChip, SdsUserMenu, SidebarStore, addDays, addMonths, addMonthsKeepDay, appendUiPrefs, formatDdMmYyyy, formatHhMm, isOutOfRange, isSameDay, isSdsThemeMode, isoDay, pad2, readUiPrefs, sdsFileMatchesAccept, sdsFormatBytes, sdsFormatNational, sdsMatchDialCode, sdsNormalizeSignificant, startOfDay, startOfMonth, stripUiPrefs };
|
|
4821
|
+
export type { SdsAccordionActive, SdsAccordionValue, SdsAddressAutocompleteAppearance, SdsAddressAutocompleteShape, SdsAddressAutocompleteSize, SdsAddressExtraContext, SdsAddressExtraPosition, SdsAddressLocateFn, SdsAddressSearchFn, SdsAddressSuggestion, SdsAllergen, SdsAvatarShape, SdsAvatarStatus, SdsBadgeSize, SdsBadgeVariant, SdsBulkBarPosition, SdsButtonShape, SdsButtonSize, SdsButtonVariant, SdsCardVariant, SdsCheckboxSize, SdsChecklistStatus, SdsChipOption, SdsChipSize, SdsCropRect, SdsDatePickerSize, SdsFileDropAppearance, SdsFileRejection, SdsFileRejectionReason, SdsIconName, SdsIconSize, SdsImageCropperBlobOptions, SdsImageCropperShape, SdsInputAppearance, SdsInputNumberAppearance, SdsInputNumberButtonLayout, SdsInputNumberCurrencyDisplay, SdsInputNumberMode, SdsInputNumberSize, SdsInputShape, SdsInputSize, SdsInputType, SdsLanguageOption, SdsLanguageSwitcherAlign, SdsLanguageSwitcherAppearance, SdsLanguageSwitcherDirection, SdsLocalizedInputSize, SdsLocalizedValue, SdsMenuAction, SdsMenuAlign, SdsMenuEntry, SdsMenuItemTone, SdsMenuSeparator, SdsMultiSelectDisplay, SdsMultiSelectSize, SdsNavItemBadgeTone, SdsOtpInputSize, SdsPaginatorSize, SdsPaginatorState, SdsPhoneCountry, SdsPhoneInputSize, SdsPhoneValue, SdsRadioSize, SdsScoreSize, SdsScoreTier, SdsScoreVariant, SdsSearchAppearance, SdsSearchItem, SdsSegmentedOption, SdsSegmentedSize, SdsSelectAppearance, SdsSelectEmptyContext, SdsSelectFooterContext, SdsSelectOptionContext, SdsSelectSize, SdsShellBackground, SdsSidebarAppearance, SdsSortOrder, SdsSortableAppearance, SdsSortableItemContext, SdsSortableReorderEvent, SdsStatusTileState, SdsTabValue, SdsTableCellCommitEvent, SdsTableCellContext, SdsTableCellErrors, SdsTableColumn, SdsTableEditTrigger, SdsTableEditor, SdsTableEmptyContext, SdsTableHeaderContext, SdsTableLazyEvent, SdsTableRowExpansionContext, SdsTableSelectOption, SdsTableSize, SdsTableSortEvent, SdsTextareaAppearance, SdsTextareaResize, SdsTextareaSize, SdsTheme, SdsThemeMode, SdsThemeToggleAppearance, SdsTimeInputAppearance, SdsTimeInputSize, SdsToast, SdsToastKind, SdsToggleSwitchSize, SdsTopbarAppearance, SdsTriState, SdsTriStateChipSize, SdsUiPrefs, SdsUserMenuAlign, SdsUserMenuAppearance };
|