@besaitech/ng-design-system 0.0.40 → 0.0.42
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/index.d.ts
CHANGED
|
@@ -40,6 +40,9 @@ declare const SDS_ICONS: {
|
|
|
40
40
|
readonly 'chevron-right': "<path d=\"m9 18 6-6-6-6\"/>";
|
|
41
41
|
readonly 'chevron-left': "<path d=\"m15 18-6-6 6-6\"/>";
|
|
42
42
|
readonly 'chevron-down': "<path d=\"m6 9 6 6 6-6\"/>";
|
|
43
|
+
readonly 'chevron-up': "<path d=\"m18 15-6-6-6 6\"/>";
|
|
44
|
+
readonly plus: "<path d=\"M5 12h14\"/><path d=\"M12 5v14\"/>";
|
|
45
|
+
readonly minus: "<path d=\"M5 12h14\"/>";
|
|
43
46
|
readonly 'chevrons-left': "<path d=\"m11 17-5-5 5-5\"/><path d=\"m18 17-5-5 5-5\"/>";
|
|
44
47
|
readonly 'chevrons-right': "<path d=\"m6 17 5-5-5-5\"/><path d=\"m13 17 5-5-5-5\"/>";
|
|
45
48
|
readonly x: "<path d=\"M18 6 6 18\"/><path d=\"m6 6 12 12\"/>";
|
|
@@ -96,7 +99,7 @@ type SdsIconSize = 'sm' | 'md' | 'lg' | 'xl';
|
|
|
96
99
|
declare class SdsIcon {
|
|
97
100
|
private readonly sanitizer;
|
|
98
101
|
/** Icon identifier from the registry. */
|
|
99
|
-
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" | "chevrons-left" | "chevrons-right" | "x" | "check" | "alert-circle" | "info" | "copy" | "type" | "tag" | "square" | "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" | "filter" | "table" | "eye" | "eye-off" | "user" | "check-circle" | "arrows-clockwise" | "menu" | "file-text" | "hash" | "map-pin" | "inbox" | "arrow-right" | "refresh-cw" | "loader-circle" | "bug" | "scroll-text">;
|
|
102
|
+
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" | "square" | "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" | "filter" | "table" | "eye" | "eye-off" | "user" | "check-circle" | "arrows-clockwise" | "menu" | "file-text" | "hash" | "map-pin" | "inbox" | "arrow-right" | "refresh-cw" | "loader-circle" | "bug" | "scroll-text">;
|
|
100
103
|
/** Square size: a pixel number, a numeric string, or a keyword (sm·md·lg·xl). */
|
|
101
104
|
readonly size: _angular_core.InputSignalWithTransform<number, string | number>;
|
|
102
105
|
/** Stroke width of the line icon. */
|
|
@@ -188,8 +191,8 @@ declare class SdsInput implements ControlValueAccessor {
|
|
|
188
191
|
* is its only name.
|
|
189
192
|
*/
|
|
190
193
|
readonly clearLabel: _angular_core.InputSignal<string>;
|
|
191
|
-
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" | "chevrons-left" | "chevrons-right" | "x" | "check" | "alert-circle" | "info" | "copy" | "type" | "tag" | "square" | "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" | "filter" | "table" | "eye" | "eye-off" | "user" | "check-circle" | "arrows-clockwise" | "menu" | "file-text" | "hash" | "map-pin" | "inbox" | "arrow-right" | "refresh-cw" | "loader-circle" | "bug" | "scroll-text" | null>;
|
|
192
|
-
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" | "chevrons-left" | "chevrons-right" | "x" | "check" | "alert-circle" | "info" | "copy" | "type" | "tag" | "square" | "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" | "filter" | "table" | "eye" | "eye-off" | "user" | "check-circle" | "arrows-clockwise" | "menu" | "file-text" | "hash" | "map-pin" | "inbox" | "arrow-right" | "refresh-cw" | "loader-circle" | "bug" | "scroll-text" | null>;
|
|
194
|
+
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" | "square" | "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" | "filter" | "table" | "eye" | "eye-off" | "user" | "check-circle" | "arrows-clockwise" | "menu" | "file-text" | "hash" | "map-pin" | "inbox" | "arrow-right" | "refresh-cw" | "loader-circle" | "bug" | "scroll-text" | null>;
|
|
195
|
+
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" | "square" | "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" | "filter" | "table" | "eye" | "eye-off" | "user" | "check-circle" | "arrows-clockwise" | "menu" | "file-text" | "hash" | "map-pin" | "inbox" | "arrow-right" | "refresh-cw" | "loader-circle" | "bug" | "scroll-text" | null>;
|
|
193
196
|
/**
|
|
194
197
|
* A CLICKABLE trailing icon, for the affordances that belong to the field itself — password reveal
|
|
195
198
|
* above all. Distinct from {@link trailingIcon}, which is decorative and explicitly
|
|
@@ -199,7 +202,7 @@ declare class SdsInput implements ControlValueAccessor {
|
|
|
199
202
|
* Always pair it with {@link trailingActionLabel} — an icon-only button with no accessible name is
|
|
200
203
|
* unusable by a screen reader. For a toggle, also bind {@link trailingActionPressed}.
|
|
201
204
|
*/
|
|
202
|
-
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" | "chevrons-left" | "chevrons-right" | "x" | "check" | "alert-circle" | "info" | "copy" | "type" | "tag" | "square" | "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" | "filter" | "table" | "eye" | "eye-off" | "user" | "check-circle" | "arrows-clockwise" | "menu" | "file-text" | "hash" | "map-pin" | "inbox" | "arrow-right" | "refresh-cw" | "loader-circle" | "bug" | "scroll-text" | null>;
|
|
205
|
+
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" | "square" | "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" | "filter" | "table" | "eye" | "eye-off" | "user" | "check-circle" | "arrows-clockwise" | "menu" | "file-text" | "hash" | "map-pin" | "inbox" | "arrow-right" | "refresh-cw" | "loader-circle" | "bug" | "scroll-text" | null>;
|
|
203
206
|
/** Accessible name for {@link trailingAction}. Translate it in the consuming app. */
|
|
204
207
|
readonly trailingActionLabel: _angular_core.InputSignal<string>;
|
|
205
208
|
/** `aria-pressed` for a toggling action (e.g. show/hide password). Null renders no attribute. */
|
|
@@ -227,6 +230,206 @@ declare class SdsInput implements ControlValueAccessor {
|
|
|
227
230
|
static ɵcmp: _angular_core.ɵɵComponentDeclaration<SdsInput, "sds-input", never, { "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; }; "type": { "alias": "type"; "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; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "clearable": { "alias": "clearable"; "required": false; "isSignal": true; }; "clearLabel": { "alias": "clearLabel"; "required": false; "isSignal": true; }; "leadingIcon": { "alias": "leadingIcon"; "required": false; "isSignal": true; }; "trailingIcon": { "alias": "trailingIcon"; "required": false; "isSignal": true; }; "trailingAction": { "alias": "trailingAction"; "required": false; "isSignal": true; }; "trailingActionLabel": { "alias": "trailingActionLabel"; "required": false; "isSignal": true; }; "trailingActionPressed": { "alias": "trailingActionPressed"; "required": false; "isSignal": true; }; }, { "trailingActionClick": "trailingActionClick"; }, never, never, true, never>;
|
|
228
231
|
}
|
|
229
232
|
|
|
233
|
+
type SdsInputNumberSize = 'sm' | 'md' | 'lg';
|
|
234
|
+
type SdsInputNumberAppearance = 'default' | 'filled';
|
|
235
|
+
/**
|
|
236
|
+
* Formatting behaviour, backed by `Intl.NumberFormat`:
|
|
237
|
+
* - `decimal` — a plain grouped number (`42 723`).
|
|
238
|
+
* - `currency` — a monetary amount; pair with {@link SdsInputNumber.currency} (ISO 4217).
|
|
239
|
+
*
|
|
240
|
+
* For percentages, units or any other affix, use {@link SdsInputNumber.prefix} /
|
|
241
|
+
* {@link SdsInputNumber.suffix} on top of `decimal` — the stored value then stays the plain magnitude.
|
|
242
|
+
*/
|
|
243
|
+
type SdsInputNumberMode = 'decimal' | 'currency';
|
|
244
|
+
/** How the currency is shown in `currency` mode — a symbol (€), the ISO code (EUR) or the name (euros). */
|
|
245
|
+
type SdsInputNumberCurrencyDisplay = 'symbol' | 'code' | 'name';
|
|
246
|
+
/**
|
|
247
|
+
* Placement of the increment/decrement spinner buttons:
|
|
248
|
+
* - `stacked` — a two-button column at the trailing edge (chevrons).
|
|
249
|
+
* - `horizontal` — a minus button before and a plus button after the field.
|
|
250
|
+
* - `vertical` — a plus button above and a minus button below the field.
|
|
251
|
+
*/
|
|
252
|
+
type SdsInputNumberButtonLayout = 'stacked' | 'horizontal' | 'vertical';
|
|
253
|
+
/**
|
|
254
|
+
* Numeric input with locale-aware formatting, optional currency, prefix/suffix affixes, min/max/step
|
|
255
|
+
* boundaries and spinner buttons — the design-system counterpart of PrimeNG's `InputNumber`.
|
|
256
|
+
*
|
|
257
|
+
* The value is a `number | null` bound through ControlValueAccessor, so it works with reactive forms
|
|
258
|
+
* or `[(ngModel)]`: `<sds-input-number [(ngModel)]="amount" mode="currency" currency="EUR" />`.
|
|
259
|
+
*
|
|
260
|
+
* The field formats **live as you type**: the currency symbol, grouping separators and prefix/suffix
|
|
261
|
+
* stay visible on every keystroke, and the caret is kept where it belongs. The value is clamped to
|
|
262
|
+
* {@link min}/{@link max} on blur and on every spinner step; ArrowUp / ArrowDown also step it.
|
|
263
|
+
*/
|
|
264
|
+
declare class SdsInputNumber implements ControlValueAccessor {
|
|
265
|
+
readonly inputId: string;
|
|
266
|
+
private readonly fieldRef;
|
|
267
|
+
readonly label: _angular_core.InputSignal<string>;
|
|
268
|
+
/** Accessible name used when no visible [label] is provided. */
|
|
269
|
+
readonly ariaLabel: _angular_core.InputSignal<string>;
|
|
270
|
+
readonly placeholder: _angular_core.InputSignal<string>;
|
|
271
|
+
readonly hint: _angular_core.InputSignal<string>;
|
|
272
|
+
readonly error: _angular_core.InputSignal<string>;
|
|
273
|
+
readonly size: _angular_core.InputSignal<SdsInputNumberSize>;
|
|
274
|
+
/** `filled` is a borderless field on a muted ground; `default` is the bordered white field. */
|
|
275
|
+
readonly appearance: _angular_core.InputSignal<SdsInputNumberAppearance>;
|
|
276
|
+
readonly disabled: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
277
|
+
/** Read-only: the value is shown and selectable but cannot be typed or stepped. */
|
|
278
|
+
readonly readonly: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
279
|
+
readonly mode: _angular_core.InputSignal<SdsInputNumberMode>;
|
|
280
|
+
/** BCP 47 locale for grouping/decimal symbols (e.g. `fr-FR`). Empty follows the runtime locale. */
|
|
281
|
+
readonly locale: _angular_core.InputSignal<string>;
|
|
282
|
+
/** ISO 4217 code, required when {@link mode} is `currency` (e.g. `EUR`, `USD`). */
|
|
283
|
+
readonly currency: _angular_core.InputSignal<string>;
|
|
284
|
+
readonly currencyDisplay: _angular_core.InputSignal<SdsInputNumberCurrencyDisplay>;
|
|
285
|
+
/** Thousands/grouping separators. */
|
|
286
|
+
readonly useGrouping: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
287
|
+
readonly minFractionDigits: _angular_core.InputSignal<number | null>;
|
|
288
|
+
readonly maxFractionDigits: _angular_core.InputSignal<number | null>;
|
|
289
|
+
/** Text shown before the value (e.g. `↑ `). */
|
|
290
|
+
readonly prefix: _angular_core.InputSignal<string>;
|
|
291
|
+
/** Text shown after the value (e.g. ` kg`, `%`). */
|
|
292
|
+
readonly suffix: _angular_core.InputSignal<string>;
|
|
293
|
+
readonly min: _angular_core.InputSignal<number | null>;
|
|
294
|
+
readonly max: _angular_core.InputSignal<number | null>;
|
|
295
|
+
readonly step: _angular_core.InputSignalWithTransform<number, unknown>;
|
|
296
|
+
/** Show the increment/decrement spinner buttons. */
|
|
297
|
+
readonly showButtons: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
298
|
+
readonly buttonLayout: _angular_core.InputSignal<SdsInputNumberButtonLayout>;
|
|
299
|
+
/** Override the increment button icon (defaults: chevron-up when stacked, plus otherwise). */
|
|
300
|
+
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" | "square" | "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" | "filter" | "table" | "eye" | "eye-off" | "user" | "check-circle" | "arrows-clockwise" | "menu" | "file-text" | "hash" | "map-pin" | "inbox" | "arrow-right" | "refresh-cw" | "loader-circle" | "bug" | "scroll-text" | null>;
|
|
301
|
+
/** Override the decrement button icon (defaults: chevron-down when stacked, minus otherwise). */
|
|
302
|
+
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" | "square" | "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" | "filter" | "table" | "eye" | "eye-off" | "user" | "check-circle" | "arrows-clockwise" | "menu" | "file-text" | "hash" | "map-pin" | "inbox" | "arrow-right" | "refresh-cw" | "loader-circle" | "bug" | "scroll-text" | null>;
|
|
303
|
+
/** Allow an empty (null) value. When false, blurring an empty field falls back to {@link min} or 0. */
|
|
304
|
+
readonly allowEmpty: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
305
|
+
readonly clearable: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
306
|
+
/**
|
|
307
|
+
* Accessible names for the icon-only controls. French defaults so existing consumers are unchanged;
|
|
308
|
+
* translate them in a multi-language app.
|
|
309
|
+
*/
|
|
310
|
+
readonly clearLabel: _angular_core.InputSignal<string>;
|
|
311
|
+
readonly incrementLabel: _angular_core.InputSignal<string>;
|
|
312
|
+
readonly decrementLabel: _angular_core.InputSignal<string>;
|
|
313
|
+
/** The committed numeric value (driven by CVA + user input). */
|
|
314
|
+
protected readonly value: _angular_core.WritableSignal<number | null>;
|
|
315
|
+
private readonly cvaDisabled;
|
|
316
|
+
protected readonly isDisabled: _angular_core.Signal<boolean>;
|
|
317
|
+
protected readonly describedBy: _angular_core.Signal<string | null>;
|
|
318
|
+
protected readonly clearVisible: _angular_core.Signal<boolean>;
|
|
319
|
+
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" | "square" | "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" | "filter" | "table" | "eye" | "eye-off" | "user" | "check-circle" | "arrows-clockwise" | "menu" | "file-text" | "hash" | "map-pin" | "inbox" | "arrow-right" | "refresh-cw" | "loader-circle" | "bug" | "scroll-text">;
|
|
320
|
+
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" | "square" | "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" | "filter" | "table" | "eye" | "eye-off" | "user" | "check-circle" | "arrows-clockwise" | "menu" | "file-text" | "hash" | "map-pin" | "inbox" | "arrow-right" | "refresh-cw" | "loader-circle" | "bug" | "scroll-text">;
|
|
321
|
+
protected readonly canIncrement: _angular_core.Signal<boolean>;
|
|
322
|
+
protected readonly canDecrement: _angular_core.Signal<boolean>;
|
|
323
|
+
/** Locale grouping/decimal separators, derived from Intl so parsing matches formatting. */
|
|
324
|
+
private readonly separators;
|
|
325
|
+
/** Base Intl options (style/currency/grouping) without any fraction-digit constraints. */
|
|
326
|
+
private baseOptions;
|
|
327
|
+
private readonly committedOptions;
|
|
328
|
+
/** The most fraction digits the field will keep — the resolved Intl maximum (2 for USD, 0 for JPY…). */
|
|
329
|
+
private readonly maxFrac;
|
|
330
|
+
protected readonly wrapperClasses: _angular_core.Signal<string>;
|
|
331
|
+
protected readonly fieldCellClasses: _angular_core.Signal<string>;
|
|
332
|
+
protected readonly inputClasses: _angular_core.Signal<string>;
|
|
333
|
+
private readonly buttonBase;
|
|
334
|
+
protected readonly edgeButtonClasses: _angular_core.Signal<string>;
|
|
335
|
+
protected readonly stackedButtonClasses: _angular_core.Signal<string>;
|
|
336
|
+
constructor();
|
|
337
|
+
private isActive;
|
|
338
|
+
/** Paint the committed value into the field imperatively (used by spin/clear/blur). */
|
|
339
|
+
private paintCommitted;
|
|
340
|
+
/** Format a committed value with the configured min/max fraction digits (used at rest and on blur). */
|
|
341
|
+
private format;
|
|
342
|
+
/**
|
|
343
|
+
* Format a partially-typed value, keeping exactly the fraction digits the user has entered (so
|
|
344
|
+
* trailing zeros and a lone decimal separator survive) while still grouping the integer part and
|
|
345
|
+
* showing the currency symbol / affixes.
|
|
346
|
+
*/
|
|
347
|
+
private formatLive;
|
|
348
|
+
private toNumber;
|
|
349
|
+
/** Pull the sign / integer / fraction fragments out of a formatted, partially-typed string. */
|
|
350
|
+
private parseInput;
|
|
351
|
+
/** Characters that "carry meaning" for caret placement (digits, minus, the decimal separator). */
|
|
352
|
+
private isSignificant;
|
|
353
|
+
private significantBefore;
|
|
354
|
+
/** The caret index in `formatted` that sits just after `target` significant characters. */
|
|
355
|
+
private caretAfter;
|
|
356
|
+
private clamp;
|
|
357
|
+
/** Trim binary-float drift (0.1 + 0.2) back to a clean decimal. */
|
|
358
|
+
private tidy;
|
|
359
|
+
protected onInput(event: Event): void;
|
|
360
|
+
protected onKeydown(event: KeyboardEvent): void;
|
|
361
|
+
protected onBlur(): void;
|
|
362
|
+
protected spin(direction: 1 | -1): void;
|
|
363
|
+
protected clear(): void;
|
|
364
|
+
private onChange;
|
|
365
|
+
protected onTouched: () => void;
|
|
366
|
+
writeValue(value: number | null): void;
|
|
367
|
+
registerOnChange(fn: (value: number | null) => void): void;
|
|
368
|
+
registerOnTouched(fn: () => void): void;
|
|
369
|
+
setDisabledState(isDisabled: boolean): void;
|
|
370
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<SdsInputNumber, never>;
|
|
371
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<SdsInputNumber, "sds-input-number", never, { "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; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "appearance": { "alias": "appearance"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "readonly": { "alias": "readonly"; "required": false; "isSignal": true; }; "mode": { "alias": "mode"; "required": false; "isSignal": true; }; "locale": { "alias": "locale"; "required": false; "isSignal": true; }; "currency": { "alias": "currency"; "required": false; "isSignal": true; }; "currencyDisplay": { "alias": "currencyDisplay"; "required": false; "isSignal": true; }; "useGrouping": { "alias": "useGrouping"; "required": false; "isSignal": true; }; "minFractionDigits": { "alias": "minFractionDigits"; "required": false; "isSignal": true; }; "maxFractionDigits": { "alias": "maxFractionDigits"; "required": false; "isSignal": true; }; "prefix": { "alias": "prefix"; "required": false; "isSignal": true; }; "suffix": { "alias": "suffix"; "required": false; "isSignal": true; }; "min": { "alias": "min"; "required": false; "isSignal": true; }; "max": { "alias": "max"; "required": false; "isSignal": true; }; "step": { "alias": "step"; "required": false; "isSignal": true; }; "showButtons": { "alias": "showButtons"; "required": false; "isSignal": true; }; "buttonLayout": { "alias": "buttonLayout"; "required": false; "isSignal": true; }; "incrementIcon": { "alias": "incrementIcon"; "required": false; "isSignal": true; }; "decrementIcon": { "alias": "decrementIcon"; "required": false; "isSignal": true; }; "allowEmpty": { "alias": "allowEmpty"; "required": false; "isSignal": true; }; "clearable": { "alias": "clearable"; "required": false; "isSignal": true; }; "clearLabel": { "alias": "clearLabel"; "required": false; "isSignal": true; }; "incrementLabel": { "alias": "incrementLabel"; "required": false; "isSignal": true; }; "decrementLabel": { "alias": "decrementLabel"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
372
|
+
}
|
|
373
|
+
|
|
374
|
+
/** A translatable string held per language code — e.g. `{ fr: 'Titre', nl: 'Titel' }`. */
|
|
375
|
+
type SdsLocalizedValue = Record<string, string>;
|
|
376
|
+
type SdsLocalizedInputSize = 'sm' | 'md' | 'lg';
|
|
377
|
+
/**
|
|
378
|
+
* One language-aware text field for editing a translated value (a {@link SdsLocalizedValue} — a title,
|
|
379
|
+
* label or description in several languages). Only one language is edited at a time; a compact switcher
|
|
380
|
+
* sitting **inside the field** flips which translation you are editing, and a dot marks the languages that
|
|
381
|
+
* already have content, so a partially-translated value is obvious at a glance.
|
|
382
|
+
*
|
|
383
|
+
* The active language defaults to {@link currentLanguage} when it is one of {@link languages}, otherwise the
|
|
384
|
+
* first accepted language — so the field "opens on the language you are working in". Empty translations are
|
|
385
|
+
* pruned from the emitted value, keeping the stored map clean.
|
|
386
|
+
*
|
|
387
|
+
* Implements ControlValueAccessor over the map — use with reactive forms or `[(ngModel)]`:
|
|
388
|
+
* `<sds-localized-input [languages]="['fr','nl','en']" [(ngModel)]="title" />`.
|
|
389
|
+
*/
|
|
390
|
+
declare class SdsLocalizedInput implements ControlValueAccessor {
|
|
391
|
+
readonly inputId: string;
|
|
392
|
+
readonly label: _angular_core.InputSignal<string>;
|
|
393
|
+
readonly hint: _angular_core.InputSignal<string>;
|
|
394
|
+
readonly placeholder: _angular_core.InputSignal<string>;
|
|
395
|
+
/** The accepted language codes, in display order (e.g. `['fr','nl','en']`). */
|
|
396
|
+
readonly languages: _angular_core.InputSignal<string[]>;
|
|
397
|
+
/** Language to pre-select; used when it is one of {@link languages}, else the first accepted language. */
|
|
398
|
+
readonly currentLanguage: _angular_core.InputSignal<string | null>;
|
|
399
|
+
readonly multiline: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
400
|
+
readonly rows: _angular_core.InputSignalWithTransform<number, unknown>;
|
|
401
|
+
readonly size: _angular_core.InputSignal<SdsLocalizedInputSize>;
|
|
402
|
+
readonly disabled: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
403
|
+
/**
|
|
404
|
+
* Accessible name for the in-field language switcher, and the "no translation yet" title suffix on each
|
|
405
|
+
* language button. French defaults so existing consumers are unchanged; translate them in a multi-language
|
|
406
|
+
* app (the buttons are letter-only, so the title carries their meaning).
|
|
407
|
+
*/
|
|
408
|
+
readonly languageSwitcherLabel: _angular_core.InputSignal<string>;
|
|
409
|
+
readonly untranslatedLabel: _angular_core.InputSignal<string>;
|
|
410
|
+
private readonly valueMap;
|
|
411
|
+
/** Language chosen via the switcher; null means "follow currentLanguage / the first language". */
|
|
412
|
+
private readonly manual;
|
|
413
|
+
private readonly cvaDisabled;
|
|
414
|
+
protected readonly isDisabled: _angular_core.Signal<boolean>;
|
|
415
|
+
protected readonly wrapperClasses: _angular_core.Signal<string>;
|
|
416
|
+
/** The language currently being edited. */
|
|
417
|
+
protected readonly activeLang: _angular_core.Signal<string>;
|
|
418
|
+
protected readonly current: _angular_core.Signal<string>;
|
|
419
|
+
protected filled(lang: string): boolean;
|
|
420
|
+
protected fieldPlaceholder(): string;
|
|
421
|
+
protected select(lang: string): void;
|
|
422
|
+
protected write(event: Event): void;
|
|
423
|
+
private onChange;
|
|
424
|
+
protected onTouched: () => void;
|
|
425
|
+
writeValue(value: SdsLocalizedValue | null): void;
|
|
426
|
+
registerOnChange(fn: (value: SdsLocalizedValue) => void): void;
|
|
427
|
+
registerOnTouched(fn: () => void): void;
|
|
428
|
+
setDisabledState(isDisabled: boolean): void;
|
|
429
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<SdsLocalizedInput, never>;
|
|
430
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<SdsLocalizedInput, "sds-localized-input", never, { "label": { "alias": "label"; "required": false; "isSignal": true; }; "hint": { "alias": "hint"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "languages": { "alias": "languages"; "required": false; "isSignal": true; }; "currentLanguage": { "alias": "currentLanguage"; "required": false; "isSignal": true; }; "multiline": { "alias": "multiline"; "required": false; "isSignal": true; }; "rows": { "alias": "rows"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "languageSwitcherLabel": { "alias": "languageSwitcherLabel"; "required": false; "isSignal": true; }; "untranslatedLabel": { "alias": "untranslatedLabel"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
431
|
+
}
|
|
432
|
+
|
|
230
433
|
type SdsOtpInputSize = 'md' | 'lg';
|
|
231
434
|
/**
|
|
232
435
|
* A segmented one-time-code field: one box per character, for the short numeric codes emailed or
|
|
@@ -378,9 +581,9 @@ declare class SdsToggleSwitch implements ControlValueAccessor {
|
|
|
378
581
|
/** Value emitted/stored when the switch is off. */
|
|
379
582
|
readonly falseValue: _angular_core.InputSignal<unknown>;
|
|
380
583
|
/** Icon shown on the knob when checked. */
|
|
381
|
-
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" | "chevrons-left" | "chevrons-right" | "x" | "check" | "alert-circle" | "info" | "copy" | "type" | "tag" | "square" | "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" | "filter" | "table" | "eye" | "eye-off" | "user" | "check-circle" | "arrows-clockwise" | "menu" | "file-text" | "hash" | "map-pin" | "inbox" | "arrow-right" | "refresh-cw" | "loader-circle" | "bug" | "scroll-text" | null>;
|
|
584
|
+
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" | "square" | "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" | "filter" | "table" | "eye" | "eye-off" | "user" | "check-circle" | "arrows-clockwise" | "menu" | "file-text" | "hash" | "map-pin" | "inbox" | "arrow-right" | "refresh-cw" | "loader-circle" | "bug" | "scroll-text" | null>;
|
|
382
585
|
/** Icon shown on the knob when unchecked. */
|
|
383
|
-
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" | "chevrons-left" | "chevrons-right" | "x" | "check" | "alert-circle" | "info" | "copy" | "type" | "tag" | "square" | "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" | "filter" | "table" | "eye" | "eye-off" | "user" | "check-circle" | "arrows-clockwise" | "menu" | "file-text" | "hash" | "map-pin" | "inbox" | "arrow-right" | "refresh-cw" | "loader-circle" | "bug" | "scroll-text" | null>;
|
|
586
|
+
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" | "square" | "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" | "filter" | "table" | "eye" | "eye-off" | "user" | "check-circle" | "arrows-clockwise" | "menu" | "file-text" | "hash" | "map-pin" | "inbox" | "arrow-right" | "refresh-cw" | "loader-circle" | "bug" | "scroll-text" | null>;
|
|
384
587
|
readonly hint: _angular_core.InputSignal<string>;
|
|
385
588
|
readonly error: _angular_core.InputSignal<string>;
|
|
386
589
|
/**
|
|
@@ -1736,6 +1939,65 @@ declare class SdsTableRowExpansion {
|
|
|
1736
1939
|
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<SdsTableRowExpansion, "ng-template[sdsRowExpansion]", never, {}, {}, never, never, true, never>;
|
|
1737
1940
|
}
|
|
1738
1941
|
|
|
1942
|
+
type SdsToastKind = 'success' | 'error' | 'info';
|
|
1943
|
+
interface SdsToast {
|
|
1944
|
+
id: number;
|
|
1945
|
+
kind: SdsToastKind;
|
|
1946
|
+
text: string;
|
|
1947
|
+
}
|
|
1948
|
+
/**
|
|
1949
|
+
* A tiny transient-notification bus. Application code calls {@link success} / {@link error} / {@link info}
|
|
1950
|
+
* after an action; a single {@link SdsToastHost} mounted in the app shell renders the queue and each toast
|
|
1951
|
+
* auto-dismisses. Deliberately minimal — no positions, no actions-in-toast — because it exists to confirm
|
|
1952
|
+
* an action, not to be a notification centre.
|
|
1953
|
+
*
|
|
1954
|
+
* `providedIn: 'root'`, so injecting it anywhere shares one queue:
|
|
1955
|
+
*
|
|
1956
|
+
* ```ts
|
|
1957
|
+
* private readonly toasts = inject(SdsToastService);
|
|
1958
|
+
* this.toasts.success('Enregistré.');
|
|
1959
|
+
* ```
|
|
1960
|
+
*
|
|
1961
|
+
* Mount the host once (e.g. in the shell): `<sds-toast-host />`.
|
|
1962
|
+
*/
|
|
1963
|
+
declare class SdsToastService {
|
|
1964
|
+
private seq;
|
|
1965
|
+
readonly toasts: _angular_core.WritableSignal<SdsToast[]>;
|
|
1966
|
+
/** How long a toast stays, in ms, by kind. Errors linger; success/info are brief. */
|
|
1967
|
+
private static readonly TTL;
|
|
1968
|
+
success(text: string): void;
|
|
1969
|
+
error(text: string): void;
|
|
1970
|
+
info(text: string): void;
|
|
1971
|
+
dismiss(id: number): void;
|
|
1972
|
+
private push;
|
|
1973
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<SdsToastService, never>;
|
|
1974
|
+
static ɵprov: _angular_core.ɵɵInjectableDeclaration<SdsToastService>;
|
|
1975
|
+
}
|
|
1976
|
+
|
|
1977
|
+
/**
|
|
1978
|
+
* Renders the {@link SdsToastService} queue, fixed bottom-centre. Mount it once, in the app shell:
|
|
1979
|
+
* `<sds-toast-host />`. Application code pushes toasts through the injected service.
|
|
1980
|
+
*
|
|
1981
|
+
* Accessibility: the two live regions are ALWAYS in the DOM (even when empty), because a live region must
|
|
1982
|
+
* pre-exist for its later content changes to be announced. Errors go to an assertive `role="alert"` region
|
|
1983
|
+
* so a failure interrupts; success/info go to a polite region so they queue.
|
|
1984
|
+
*/
|
|
1985
|
+
declare class SdsToastHost {
|
|
1986
|
+
readonly toasts: SdsToastService;
|
|
1987
|
+
/**
|
|
1988
|
+
* Accessible name for each toast's close button. French default so existing consumers are unchanged; the
|
|
1989
|
+
* button is icon-only, so an app serving more than one language MUST translate it.
|
|
1990
|
+
*/
|
|
1991
|
+
readonly closeLabel: _angular_core.InputSignal<string>;
|
|
1992
|
+
protected readonly errors: _angular_core.Signal<SdsToast[]>;
|
|
1993
|
+
protected readonly notices: _angular_core.Signal<SdsToast[]>;
|
|
1994
|
+
protected icon(kind: SdsToastKind): SdsIconName;
|
|
1995
|
+
protected tone(kind: SdsToastKind): string;
|
|
1996
|
+
protected border(kind: SdsToast['kind']): string;
|
|
1997
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<SdsToastHost, never>;
|
|
1998
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<SdsToastHost, "sds-toast-host", never, { "closeLabel": { "alias": "closeLabel"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
1999
|
+
}
|
|
2000
|
+
|
|
1739
2001
|
/**
|
|
1740
2002
|
* Shared collapse state for the sidebar and its nav items.
|
|
1741
2003
|
*
|
|
@@ -1891,7 +2153,7 @@ declare class SdsNavGroup {
|
|
|
1891
2153
|
/** Turn the label into an expand/collapse control. */
|
|
1892
2154
|
readonly collapsible: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
1893
2155
|
/** Icon for a collapsible header, so it reads at the same weight as the items it sits among. */
|
|
1894
|
-
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" | "chevrons-left" | "chevrons-right" | "x" | "check" | "alert-circle" | "info" | "copy" | "type" | "tag" | "square" | "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" | "filter" | "table" | "eye" | "eye-off" | "user" | "check-circle" | "arrows-clockwise" | "menu" | "file-text" | "hash" | "map-pin" | "inbox" | "arrow-right" | "refresh-cw" | "loader-circle" | "bug" | "scroll-text" | null>;
|
|
2156
|
+
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" | "square" | "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" | "filter" | "table" | "eye" | "eye-off" | "user" | "check-circle" | "arrows-clockwise" | "menu" | "file-text" | "hash" | "map-pin" | "inbox" | "arrow-right" | "refresh-cw" | "loader-circle" | "bug" | "scroll-text" | null>;
|
|
1895
2157
|
/**
|
|
1896
2158
|
* URL prefix owned by this group, e.g. `/payments`. While the active route starts with it the
|
|
1897
2159
|
* group counts as active and opens itself — unless the person has explicitly toggled it since.
|
|
@@ -1943,7 +2205,7 @@ declare class SdsNavGroup {
|
|
|
1943
2205
|
*/
|
|
1944
2206
|
declare class SdsNavItem {
|
|
1945
2207
|
protected readonly store: SidebarStore;
|
|
1946
|
-
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" | "chevrons-left" | "chevrons-right" | "x" | "check" | "alert-circle" | "info" | "copy" | "type" | "tag" | "square" | "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" | "filter" | "table" | "eye" | "eye-off" | "user" | "check-circle" | "arrows-clockwise" | "menu" | "file-text" | "hash" | "map-pin" | "inbox" | "arrow-right" | "refresh-cw" | "loader-circle" | "bug" | "scroll-text" | null>;
|
|
2208
|
+
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" | "square" | "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" | "filter" | "table" | "eye" | "eye-off" | "user" | "check-circle" | "arrows-clockwise" | "menu" | "file-text" | "hash" | "map-pin" | "inbox" | "arrow-right" | "refresh-cw" | "loader-circle" | "bug" | "scroll-text" | null>;
|
|
1947
2209
|
readonly label: _angular_core.InputSignal<string>;
|
|
1948
2210
|
/** Router link target; when null, the item behaves as a button. */
|
|
1949
2211
|
readonly link: _angular_core.InputSignal<string | unknown[] | null>;
|
|
@@ -1957,5 +2219,5 @@ declare class SdsNavItem {
|
|
|
1957
2219
|
static ɵcmp: _angular_core.ɵɵComponentDeclaration<SdsNavItem, "sds-nav-item", never, { "icon": { "alias": "icon"; "required": false; "isSignal": true; }; "label": { "alias": "label"; "required": true; "isSignal": true; }; "link": { "alias": "link"; "required": false; "isSignal": true; }; "exact": { "alias": "exact"; "required": false; "isSignal": true; }; "active": { "alias": "active"; "required": false; "isSignal": true; }; }, { "select": "select"; }, never, never, true, never>;
|
|
1958
2220
|
}
|
|
1959
2221
|
|
|
1960
|
-
export { SDS_ICONS, SDS_PHONE_COUNTRIES, SdsAccordion, SdsAccordionContent, SdsAccordionHeader, SdsAccordionPanel, SdsAccordionStore, SdsAvatar, SdsBadge, SdsButton, SdsCalendar, SdsCard, SdsCheckbox, SdsDatePicker, SdsIcon, SdsInput, SdsMultiSelect, SdsNavGroup, SdsNavItem, SdsOtpInput, SdsPaginator, SdsPhoneInput, SdsSelect, SdsShell, SdsSidebar, SdsTab, SdsTabList, SdsTabPanel, SdsTabPanels, SdsTable, SdsTableCell, SdsTableRowExpansion, SdsTabs, SdsTabsStore, SdsTextarea, SdsToggleSwitch, SdsTopbar, SidebarStore, addDays, addMonths, addMonthsKeepDay, formatDdMmYyyy, formatHhMm, isOutOfRange, isSameDay, isoDay, pad2, sdsFormatNational, sdsMatchDialCode, sdsNormalizeSignificant, startOfDay, startOfMonth };
|
|
1961
|
-
export type { SdsAccordionActive, SdsAccordionValue, SdsAvatarStatus, SdsBadgeSize, SdsBadgeVariant, SdsButtonShape, SdsButtonSize, SdsButtonVariant, SdsCardVariant, SdsCheckboxSize, SdsDatePickerSize, SdsIconName, SdsIconSize, SdsInputAppearance, SdsInputShape, SdsInputSize, SdsInputType, SdsMultiSelectDisplay, SdsMultiSelectSize, SdsOtpInputSize, SdsPaginatorSize, SdsPaginatorState, SdsPhoneCountry, SdsPhoneInputSize, SdsPhoneValue, SdsSelectAppearance, SdsSelectSize, SdsSortOrder, SdsTabValue, SdsTableCellContext, SdsTableColumn, SdsTableLazyEvent, SdsTableRowExpansionContext, SdsTableSize, SdsTableSortEvent, SdsTextareaResize, SdsTextareaSize, SdsToggleSwitchSize, SdsTopbarAppearance };
|
|
2222
|
+
export { SDS_ICONS, SDS_PHONE_COUNTRIES, SdsAccordion, SdsAccordionContent, SdsAccordionHeader, SdsAccordionPanel, SdsAccordionStore, SdsAvatar, SdsBadge, SdsButton, SdsCalendar, SdsCard, SdsCheckbox, SdsDatePicker, SdsIcon, SdsInput, SdsInputNumber, SdsLocalizedInput, SdsMultiSelect, SdsNavGroup, SdsNavItem, SdsOtpInput, SdsPaginator, SdsPhoneInput, SdsSelect, SdsShell, SdsSidebar, SdsTab, SdsTabList, SdsTabPanel, SdsTabPanels, SdsTable, SdsTableCell, SdsTableRowExpansion, SdsTabs, SdsTabsStore, SdsTextarea, SdsToastHost, SdsToastService, SdsToggleSwitch, SdsTopbar, SidebarStore, addDays, addMonths, addMonthsKeepDay, formatDdMmYyyy, formatHhMm, isOutOfRange, isSameDay, isoDay, pad2, sdsFormatNational, sdsMatchDialCode, sdsNormalizeSignificant, startOfDay, startOfMonth };
|
|
2223
|
+
export type { SdsAccordionActive, SdsAccordionValue, SdsAvatarStatus, SdsBadgeSize, SdsBadgeVariant, SdsButtonShape, SdsButtonSize, SdsButtonVariant, SdsCardVariant, SdsCheckboxSize, SdsDatePickerSize, SdsIconName, SdsIconSize, SdsInputAppearance, SdsInputNumberAppearance, SdsInputNumberButtonLayout, SdsInputNumberCurrencyDisplay, SdsInputNumberMode, SdsInputNumberSize, SdsInputShape, SdsInputSize, SdsInputType, SdsLocalizedInputSize, SdsLocalizedValue, SdsMultiSelectDisplay, SdsMultiSelectSize, SdsOtpInputSize, SdsPaginatorSize, SdsPaginatorState, SdsPhoneCountry, SdsPhoneInputSize, SdsPhoneValue, SdsSelectAppearance, SdsSelectSize, SdsSortOrder, SdsTabValue, SdsTableCellContext, SdsTableColumn, SdsTableLazyEvent, SdsTableRowExpansionContext, SdsTableSize, SdsTableSortEvent, SdsTextareaResize, SdsTextareaSize, SdsToast, SdsToastKind, SdsToggleSwitchSize, SdsTopbarAppearance };
|