@besaitech/ng-design-system 0.0.68 → 0.0.69
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
|
@@ -4778,6 +4778,57 @@ declare class SdsSidebar {
|
|
|
4778
4778
|
static ɵcmp: _angular_core.ɵɵComponentDeclaration<SdsSidebar, "sds-sidebar", never, { "collapseLabel": { "alias": "collapseLabel"; "required": false; "isSignal": true; }; "expandLabel": { "alias": "expandLabel"; "required": false; "isSignal": true; }; "closeLabel": { "alias": "closeLabel"; "required": false; "isSignal": true; }; "appearance": { "alias": "appearance"; "required": false; "isSignal": true; }; "decorations": { "alias": "decorations"; "required": false; "isSignal": true; }; }, {}, never, ["*", "[sdsFooter]"], true, never>;
|
|
4779
4779
|
}
|
|
4780
4780
|
|
|
4781
|
+
type SdsNavItemBadgeTone = 'brand' | 'danger' | 'neutral';
|
|
4782
|
+
/**
|
|
4783
|
+
* A single sidebar navigation entry. Renders an anchor when [link] is set
|
|
4784
|
+
* (with automatic active state via routerLinkActive) or a button otherwise.
|
|
4785
|
+
*
|
|
4786
|
+
* Requires the host application to provide the Angular Router (`provideRouter`),
|
|
4787
|
+
* as it depends on RouterLink/RouterLinkActive even when used as a button.
|
|
4788
|
+
*
|
|
4789
|
+
* @example
|
|
4790
|
+
* <sds-nav-item icon="home" label="Accueil" link="/" [exact]="true" />
|
|
4791
|
+
* <sds-nav-item icon="book-open" label="Menu" link="/menu" [badge]="3" badgeLabel="{count} issues" badgeTone="danger" />
|
|
4792
|
+
*/
|
|
4793
|
+
declare class SdsNavItem {
|
|
4794
|
+
protected readonly store: SidebarStore;
|
|
4795
|
+
readonly icon: _angular_core.InputSignal<"chart-column" | "chart-line" | "chart-bar" | "chart-area" | "chart-pie" | "chart-scatter" | "grid-3x3" | "activity" | "gauge" | "trending-up" | "trending-down" | "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" | "file-check" | "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>;
|
|
4796
|
+
readonly label: _angular_core.InputSignal<string>;
|
|
4797
|
+
/** Router link target; when null, the item behaves as a button. */
|
|
4798
|
+
readonly link: _angular_core.InputSignal<string | unknown[] | null>;
|
|
4799
|
+
readonly exact: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
4800
|
+
/** Manual active state (combined with routerLinkActive when a link is set). */
|
|
4801
|
+
readonly active: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
4802
|
+
/**
|
|
4803
|
+
* Optional count shown as a pill after the label (e.g. menu issues to fix). Hidden when null or 0.
|
|
4804
|
+
* On the collapsed rail it sits on the icon's corner.
|
|
4805
|
+
*/
|
|
4806
|
+
readonly badge: _angular_core.InputSignal<number | null>;
|
|
4807
|
+
/** Spoken text for the badge; `{count}` is replaced. Pass a translated string. */
|
|
4808
|
+
readonly badgeLabel: _angular_core.InputSignal<string>;
|
|
4809
|
+
/** Counts above this read as "max+" (e.g. 99+). */
|
|
4810
|
+
readonly badgeMax: _angular_core.InputSignal<number>;
|
|
4811
|
+
/** Badge colour. `danger` for things that block, `brand` (default) for a neutral count. */
|
|
4812
|
+
readonly badgeTone: _angular_core.InputSignal<SdsNavItemBadgeTone>;
|
|
4813
|
+
readonly select: _angular_core.OutputEmitterRef<void>;
|
|
4814
|
+
protected readonly collapsed: _angular_core.WritableSignal<boolean>;
|
|
4815
|
+
/** The badge's spoken text, or null when there is nothing to show. */
|
|
4816
|
+
protected readonly badgeText: _angular_core.Signal<string | null>;
|
|
4817
|
+
protected readonly badgeDisplay: _angular_core.Signal<string>;
|
|
4818
|
+
/** Accessible name on the collapsed rail, where the visible label is hidden. */
|
|
4819
|
+
protected readonly collapsedName: _angular_core.Signal<string>;
|
|
4820
|
+
protected readonly badgeClass: _angular_core.Signal<string>;
|
|
4821
|
+
protected itemClass(isActive: boolean): string;
|
|
4822
|
+
/**
|
|
4823
|
+
* The left accent bar on an active item — the strongest "selected" cue, and the one that survives a
|
|
4824
|
+
* grayscale brand where a tinted pill alone is nearly invisible. brand-600 on the light rail, white on
|
|
4825
|
+
* the dark one; on a coloured brand it is the brand colour, matching the certicheck accent bar.
|
|
4826
|
+
*/
|
|
4827
|
+
protected readonly accentBarClass: _angular_core.Signal<string>;
|
|
4828
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<SdsNavItem, never>;
|
|
4829
|
+
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; }; "badge": { "alias": "badge"; "required": false; "isSignal": true; }; "badgeLabel": { "alias": "badgeLabel"; "required": false; "isSignal": true; }; "badgeMax": { "alias": "badgeMax"; "required": false; "isSignal": true; }; "badgeTone": { "alias": "badgeTone"; "required": false; "isSignal": true; }; }, { "select": "select"; }, never, never, true, never>;
|
|
4830
|
+
}
|
|
4831
|
+
|
|
4781
4832
|
/**
|
|
4782
4833
|
* Groups nav items under an optional uppercase section label.
|
|
4783
4834
|
*
|
|
@@ -4787,7 +4838,12 @@ declare class SdsSidebar {
|
|
|
4787
4838
|
* - **Collapsible** (`[collapsible]`) — the label becomes a button that expands and collapses the
|
|
4788
4839
|
* group. Set `[basePath]` and the group opens itself whenever the active route is inside it, so a
|
|
4789
4840
|
* deep link or a browser Back lands with the right section already open instead of the person
|
|
4790
|
-
* having to find and re-open it.
|
|
4841
|
+
* having to find and re-open it. A group whose pages live under several prefixes (a business area
|
|
4842
|
+
* grouping `/people`, `/customers`, `/drivers`) lists them all in `[basePaths]`.
|
|
4843
|
+
*
|
|
4844
|
+
* A collapsible group can carry a `[badge]` of its own — typically the sum of its children's. It is
|
|
4845
|
+
* drawn on the header only while the children are hidden, so a closed section still says that
|
|
4846
|
+
* something inside it is waiting, and an open one does not show the same count twice.
|
|
4791
4847
|
*
|
|
4792
4848
|
* Collapsible mode exists because a flat rail stops scaling somewhere around a dozen destinations,
|
|
4793
4849
|
* and the alternative — showing every child of every section at once — buries the ones in use.
|
|
@@ -4809,6 +4865,22 @@ declare class SdsNavGroup {
|
|
|
4809
4865
|
* group counts as active and opens itself — unless the person has explicitly toggled it since.
|
|
4810
4866
|
*/
|
|
4811
4867
|
readonly basePath: _angular_core.InputSignal<string | null>;
|
|
4868
|
+
/**
|
|
4869
|
+
* More URL prefixes owned by this group, for an area whose pages don't share one root
|
|
4870
|
+
* (`['/people', '/customers', '/drivers']`). Matched exactly like {@link basePath}, alongside it.
|
|
4871
|
+
*/
|
|
4872
|
+
readonly basePaths: _angular_core.InputSignal<readonly string[] | null>;
|
|
4873
|
+
/**
|
|
4874
|
+
* A count for the header, e.g. the items waiting across the group's children. Drawn only while the
|
|
4875
|
+
* children are hidden; null or 0 shows nothing.
|
|
4876
|
+
*/
|
|
4877
|
+
readonly badge: _angular_core.InputSignal<number | null>;
|
|
4878
|
+
/** Spoken text for the badge; `{count}` is replaced. Pass a translated string. */
|
|
4879
|
+
readonly badgeLabel: _angular_core.InputSignal<string>;
|
|
4880
|
+
/** Counts above this read as "max+" (e.g. 99+). */
|
|
4881
|
+
readonly badgeMax: _angular_core.InputSignal<number>;
|
|
4882
|
+
/** Badge colour, as on {@link SdsNavItem}. */
|
|
4883
|
+
readonly badgeTone: _angular_core.InputSignal<SdsNavItemBadgeTone>;
|
|
4812
4884
|
/** Emits the new state on every manual toggle. Not emitted for route-driven auto-expansion. */
|
|
4813
4885
|
readonly expandedChange: _angular_core.OutputEmitterRef<boolean>;
|
|
4814
4886
|
/** Explicit user choice; null means "follow the route". */
|
|
@@ -4822,6 +4894,11 @@ declare class SdsNavGroup {
|
|
|
4822
4894
|
protected readonly routeActive: _angular_core.Signal<boolean>;
|
|
4823
4895
|
protected readonly expanded: _angular_core.Signal<boolean>;
|
|
4824
4896
|
protected readonly collapsed: _angular_core.WritableSignal<boolean>;
|
|
4897
|
+
/** The header badge's spoken text — only while the children (which show their own) are hidden. */
|
|
4898
|
+
protected readonly headerBadgeText: _angular_core.Signal<string | null>;
|
|
4899
|
+
protected readonly badgeDisplay: _angular_core.Signal<string>;
|
|
4900
|
+
/** The same pill as {@link SdsNavItem}'s, pinned to the icon's corner on the collapsed rail. */
|
|
4901
|
+
protected readonly badgeClass: _angular_core.Signal<string>;
|
|
4825
4902
|
/** Rail paint, shared via the store — see SidebarStore.appearance. Drives the header/caption tones. */
|
|
4826
4903
|
private readonly surface;
|
|
4827
4904
|
/** Collapsible header, painted for the active rail (ink+brand on `surface`, white on `brand`). */
|
|
@@ -4851,58 +4928,7 @@ declare class SdsNavGroup {
|
|
|
4851
4928
|
*/
|
|
4852
4929
|
protected toggle(): void;
|
|
4853
4930
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<SdsNavGroup, never>;
|
|
4854
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<SdsNavGroup, "sds-nav-group", never, { "label": { "alias": "label"; "required": false; "isSignal": true; }; "collapsible": { "alias": "collapsible"; "required": false; "isSignal": true; }; "icon": { "alias": "icon"; "required": false; "isSignal": true; }; "basePath": { "alias": "basePath"; "required": false; "isSignal": true; }; }, { "expandedChange": "expandedChange"; }, never, ["*"], true, never>;
|
|
4855
|
-
}
|
|
4856
|
-
|
|
4857
|
-
type SdsNavItemBadgeTone = 'brand' | 'danger' | 'neutral';
|
|
4858
|
-
/**
|
|
4859
|
-
* A single sidebar navigation entry. Renders an anchor when [link] is set
|
|
4860
|
-
* (with automatic active state via routerLinkActive) or a button otherwise.
|
|
4861
|
-
*
|
|
4862
|
-
* Requires the host application to provide the Angular Router (`provideRouter`),
|
|
4863
|
-
* as it depends on RouterLink/RouterLinkActive even when used as a button.
|
|
4864
|
-
*
|
|
4865
|
-
* @example
|
|
4866
|
-
* <sds-nav-item icon="home" label="Accueil" link="/" [exact]="true" />
|
|
4867
|
-
* <sds-nav-item icon="book-open" label="Menu" link="/menu" [badge]="3" badgeLabel="{count} issues" badgeTone="danger" />
|
|
4868
|
-
*/
|
|
4869
|
-
declare class SdsNavItem {
|
|
4870
|
-
protected readonly store: SidebarStore;
|
|
4871
|
-
readonly icon: _angular_core.InputSignal<"chart-column" | "chart-line" | "chart-bar" | "chart-area" | "chart-pie" | "chart-scatter" | "grid-3x3" | "activity" | "gauge" | "trending-up" | "trending-down" | "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" | "file-check" | "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>;
|
|
4872
|
-
readonly label: _angular_core.InputSignal<string>;
|
|
4873
|
-
/** Router link target; when null, the item behaves as a button. */
|
|
4874
|
-
readonly link: _angular_core.InputSignal<string | unknown[] | null>;
|
|
4875
|
-
readonly exact: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
4876
|
-
/** Manual active state (combined with routerLinkActive when a link is set). */
|
|
4877
|
-
readonly active: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
4878
|
-
/**
|
|
4879
|
-
* Optional count shown as a pill after the label (e.g. menu issues to fix). Hidden when null or 0.
|
|
4880
|
-
* On the collapsed rail it sits on the icon's corner.
|
|
4881
|
-
*/
|
|
4882
|
-
readonly badge: _angular_core.InputSignal<number | null>;
|
|
4883
|
-
/** Spoken text for the badge; `{count}` is replaced. Pass a translated string. */
|
|
4884
|
-
readonly badgeLabel: _angular_core.InputSignal<string>;
|
|
4885
|
-
/** Counts above this read as "max+" (e.g. 99+). */
|
|
4886
|
-
readonly badgeMax: _angular_core.InputSignal<number>;
|
|
4887
|
-
/** Badge colour. `danger` for things that block, `brand` (default) for a neutral count. */
|
|
4888
|
-
readonly badgeTone: _angular_core.InputSignal<SdsNavItemBadgeTone>;
|
|
4889
|
-
readonly select: _angular_core.OutputEmitterRef<void>;
|
|
4890
|
-
protected readonly collapsed: _angular_core.WritableSignal<boolean>;
|
|
4891
|
-
/** The badge's spoken text, or null when there is nothing to show. */
|
|
4892
|
-
protected readonly badgeText: _angular_core.Signal<string | null>;
|
|
4893
|
-
protected readonly badgeDisplay: _angular_core.Signal<string>;
|
|
4894
|
-
/** Accessible name on the collapsed rail, where the visible label is hidden. */
|
|
4895
|
-
protected readonly collapsedName: _angular_core.Signal<string>;
|
|
4896
|
-
protected readonly badgeClass: _angular_core.Signal<string>;
|
|
4897
|
-
protected itemClass(isActive: boolean): string;
|
|
4898
|
-
/**
|
|
4899
|
-
* The left accent bar on an active item — the strongest "selected" cue, and the one that survives a
|
|
4900
|
-
* grayscale brand where a tinted pill alone is nearly invisible. brand-600 on the light rail, white on
|
|
4901
|
-
* the dark one; on a coloured brand it is the brand colour, matching the certicheck accent bar.
|
|
4902
|
-
*/
|
|
4903
|
-
protected readonly accentBarClass: _angular_core.Signal<string>;
|
|
4904
|
-
static ɵfac: _angular_core.ɵɵFactoryDeclaration<SdsNavItem, never>;
|
|
4905
|
-
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; }; "badge": { "alias": "badge"; "required": false; "isSignal": true; }; "badgeLabel": { "alias": "badgeLabel"; "required": false; "isSignal": true; }; "badgeMax": { "alias": "badgeMax"; "required": false; "isSignal": true; }; "badgeTone": { "alias": "badgeTone"; "required": false; "isSignal": true; }; }, { "select": "select"; }, never, never, true, never>;
|
|
4931
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<SdsNavGroup, "sds-nav-group", never, { "label": { "alias": "label"; "required": false; "isSignal": true; }; "collapsible": { "alias": "collapsible"; "required": false; "isSignal": true; }; "icon": { "alias": "icon"; "required": false; "isSignal": true; }; "basePath": { "alias": "basePath"; "required": false; "isSignal": true; }; "basePaths": { "alias": "basePaths"; "required": false; "isSignal": true; }; "badge": { "alias": "badge"; "required": false; "isSignal": true; }; "badgeLabel": { "alias": "badgeLabel"; "required": false; "isSignal": true; }; "badgeMax": { "alias": "badgeMax"; "required": false; "isSignal": true; }; "badgeTone": { "alias": "badgeTone"; "required": false; "isSignal": true; }; }, { "expandedChange": "expandedChange"; }, never, ["*"], true, never>;
|
|
4906
4932
|
}
|
|
4907
4933
|
|
|
4908
4934
|
type SdsUserMenuAppearance = 'surface' | 'on-brand';
|