@forgeroute/ui 0.4.66 → 0.4.67
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/fesm2022/forgeroute-ui.mjs +305 -170
- package/fesm2022/forgeroute-ui.mjs.map +1 -1
- package/package.json +1 -1
- package/types/forgeroute-ui.d.ts +38 -11
package/package.json
CHANGED
package/types/forgeroute-ui.d.ts
CHANGED
|
@@ -1095,7 +1095,7 @@ export declare class SelectComponent implements ControlValueAccessor, Validator,
|
|
|
1095
1095
|
readonly error: import("@angular/core").InputSignal<string>;
|
|
1096
1096
|
/** Reveal the built-in error messages now (e.g. after a failed Save click), without waiting for blur. */
|
|
1097
1097
|
readonly showErrors: import("@angular/core").InputSignal<boolean>;
|
|
1098
|
-
readonly size: import("@angular/core").InputSignal<"
|
|
1098
|
+
readonly size: import("@angular/core").InputSignal<"sm" | "default">;
|
|
1099
1099
|
readonly _disabledInput: import("@angular/core").InputSignal<boolean>;
|
|
1100
1100
|
private readonly _cvaDisabled;
|
|
1101
1101
|
protected readonly disabled: import("@angular/core").Signal<boolean>;
|
|
@@ -2682,7 +2682,7 @@ export declare class AudioPlayerComponent {
|
|
|
2682
2682
|
/** Accessible name of the player. */
|
|
2683
2683
|
readonly ariaLabel: import("@angular/core").InputSignal<string>;
|
|
2684
2684
|
/** How much to load before play: 'metadata' (default), 'auto' or 'none'. */
|
|
2685
|
-
readonly preload: import("@angular/core").InputSignal<"none" | "
|
|
2685
|
+
readonly preload: import("@angular/core").InputSignal<"none" | "metadata" | "auto">;
|
|
2686
2686
|
/** Fires when the browser can't load or decode the source. */
|
|
2687
2687
|
readonly playbackError: import("@angular/core").OutputEmitterRef<void>;
|
|
2688
2688
|
protected readonly failed: import("@angular/core").WritableSignal<boolean>;
|
|
@@ -2936,7 +2936,7 @@ export declare class CheckboxComponent implements ControlValueAccessor, Validato
|
|
|
2936
2936
|
* clicking it still toggles the box - e.g. a product name that is both the heading of its card and the label of its checkbox.
|
|
2937
2937
|
* Default null: plain label text, exactly as before. Single mode only.
|
|
2938
2938
|
*/
|
|
2939
|
-
readonly headingLevel: import("@angular/core").InputSignal<1 | 2 |
|
|
2939
|
+
readonly headingLevel: import("@angular/core").InputSignal<1 | 2 | 5 | 3 | 6 | 4 | null>;
|
|
2940
2940
|
readonly indeterminate: import("@angular/core").InputSignal<boolean>;
|
|
2941
2941
|
readonly checked: import("@angular/core").ModelSignal<boolean>;
|
|
2942
2942
|
/**
|
|
@@ -3963,7 +3963,7 @@ export declare class ButtonComponent {
|
|
|
3963
3963
|
* `ghost-start`: a ghost button for list / section toggles - a full-width row with its content aligned to the start, transparent
|
|
3964
3964
|
* background, hover tint and the normal focus ring. Pair it with `ariaExpanded` / `ariaPressed`; the label may contain a heading element.
|
|
3965
3965
|
*/
|
|
3966
|
-
readonly variant: import("@angular/core").InputSignal<"
|
|
3966
|
+
readonly variant: import("@angular/core").InputSignal<"link" | "primary" | "secondary" | "danger" | "warning" | "ghost" | "ghost-start" | "tab" | "icon" | "icon-danger">;
|
|
3967
3967
|
/** Renders an anchor to this route instead of a button (use with `variant="link"` for an inline text link). `['/settings']` or `'/settings'`. While `disabled` or `loading` it renders a non-clickable `<span role="link" aria-disabled>` with no href (like `href`). */
|
|
3968
3968
|
readonly routerLink: import("@angular/core").InputSignal<string | readonly unknown[] | null>;
|
|
3969
3969
|
/** Query params of the `routerLink` (e.g. `{ section: 'deal-defaults' }`). */
|
|
@@ -4009,7 +4009,7 @@ export declare class ButtonComponent {
|
|
|
4009
4009
|
readonly color: import("@angular/core").InputSignal<string | undefined>;
|
|
4010
4010
|
readonly active: import("@angular/core").InputSignal<boolean>;
|
|
4011
4011
|
readonly size: import("@angular/core").InputSignal<"sm" | "md" | "lg" | "xs">;
|
|
4012
|
-
readonly type: import("@angular/core").InputSignal<"
|
|
4012
|
+
readonly type: import("@angular/core").InputSignal<"button" | "reset" | "submit">;
|
|
4013
4013
|
readonly disabled: import("@angular/core").InputSignal<boolean>;
|
|
4014
4014
|
readonly loading: import("@angular/core").InputSignal<boolean>;
|
|
4015
4015
|
readonly fullWidth: import("@angular/core").InputSignal<boolean>;
|
|
@@ -4948,7 +4948,7 @@ export declare class TextInputComponent implements ControlValueAccessor, Validat
|
|
|
4948
4948
|
readonly passwordRequirements: import("@angular/core").InputSignal<boolean>;
|
|
4949
4949
|
/** Rules for `passwordRequirements`; default = the library's five rules (8+ characters, upper, lower, digit, special). */
|
|
4950
4950
|
readonly passwordRules: import("@angular/core").InputSignal<readonly PasswordRule[] | undefined>;
|
|
4951
|
-
readonly type: import("@angular/core").InputSignal<"number" | "text" | "
|
|
4951
|
+
readonly type: import("@angular/core").InputSignal<"number" | "text" | "tel" | "email" | "password" | "url">;
|
|
4952
4952
|
readonly maxlength: import("@angular/core").InputSignal<number | undefined>;
|
|
4953
4953
|
readonly required: import("@angular/core").InputSignal<boolean>;
|
|
4954
4954
|
readonly autocomplete: import("@angular/core").InputSignal<string>;
|
|
@@ -4957,7 +4957,7 @@ export declare class TextInputComponent implements ControlValueAccessor, Validat
|
|
|
4957
4957
|
* `search`, `text`, `none`). Empty (default) = the browser's default for the field, except `type="tel"`, which keeps `tel`.
|
|
4958
4958
|
* It only picks the keyboard; it does not restrict what can be typed or pasted.
|
|
4959
4959
|
*/
|
|
4960
|
-
readonly inputmode: import("@angular/core").InputSignal<"" | "none" | "text" | "search" | "
|
|
4960
|
+
readonly inputmode: import("@angular/core").InputSignal<"" | "none" | "text" | "search" | "tel" | "email" | "url" | "decimal" | "numeric">;
|
|
4961
4961
|
readonly readonly: import("@angular/core").InputSignal<boolean>;
|
|
4962
4962
|
readonly hint: import("@angular/core").InputSignal<string>;
|
|
4963
4963
|
/** Id(s) of an external element that also describes this control (e.g. one shared error text for a group of fields). Space separated; MERGED after the control's own hint / error id in `aria-describedby`, never replacing it. Empty = unchanged. */
|
|
@@ -5023,7 +5023,7 @@ export declare class TextInputComponent implements ControlValueAccessor, Validat
|
|
|
5023
5023
|
protected readonly _stepAttr: import("@angular/core").Signal<string | null>;
|
|
5024
5024
|
protected readonly _revealable: import("@angular/core").Signal<boolean>;
|
|
5025
5025
|
protected readonly _shown: import("@angular/core").WritableSignal<boolean>;
|
|
5026
|
-
protected readonly _inputType: import("@angular/core").Signal<"number" | "text" | "
|
|
5026
|
+
protected readonly _inputType: import("@angular/core").Signal<"number" | "text" | "tel" | "email" | "password" | "url">;
|
|
5027
5027
|
protected readonly _eyePath: string;
|
|
5028
5028
|
protected readonly _eyeOffPath: string;
|
|
5029
5029
|
protected readonly _showRequirements: import("@angular/core").Signal<boolean>;
|
|
@@ -6526,6 +6526,8 @@ export declare class DropdownComponent {
|
|
|
6526
6526
|
private _typeahead;
|
|
6527
6527
|
private _typeaheadTimer;
|
|
6528
6528
|
private _destroyed;
|
|
6529
|
+
/** Identifies the current loader request, so a late or stale answer (menu closed / reopened meanwhile) is ignored. */
|
|
6530
|
+
private _loadToken;
|
|
6529
6531
|
protected readonly triggerId: string;
|
|
6530
6532
|
protected readonly menuId: string;
|
|
6531
6533
|
protected readonly _ariaLabel: import("@angular/core").Signal<string | null>;
|
|
@@ -6821,7 +6823,7 @@ export declare class FormRowComponent {
|
|
|
6821
6823
|
* child simply takes the full width. Keep a numeric span within the row's `cols` (use `all` for the whole row).
|
|
6822
6824
|
*/
|
|
6823
6825
|
export declare class FormColSpanDirective {
|
|
6824
|
-
readonly uiColSpan: import("@angular/core").InputSignal<"" |
|
|
6826
|
+
readonly uiColSpan: import("@angular/core").InputSignal<"" | 2 | 3 | "2" | "3" | "all">;
|
|
6825
6827
|
protected readonly _class: import("@angular/core").Signal<string>;
|
|
6826
6828
|
static ɵfac: i0.ɵɵFactoryDeclaration<FormColSpanDirective, never>;
|
|
6827
6829
|
static ɵdir: i0.ɵɵDirectiveDeclaration<FormColSpanDirective, "[uiColSpan]", never, {
|
|
@@ -7823,6 +7825,10 @@ export declare class PanelInfoListComponent {
|
|
|
7823
7825
|
isWeb(href: string): boolean;
|
|
7824
7826
|
/** Link text: the value, else the email / phone as written. */
|
|
7825
7827
|
textOf(item: PanelInfoItem): string;
|
|
7828
|
+
/** Plain value, or the dash for an empty / blank one. */
|
|
7829
|
+
valueOf(item: PanelInfoItem): string;
|
|
7830
|
+
/** A disabled header action never runs, even when the click reaches the host element. */
|
|
7831
|
+
runHeaderAction(ha: NonNullable<PanelInfoSection['headerAction']>): void;
|
|
7826
7832
|
visibleItems(section: PanelInfoSection): PanelInfoItem[];
|
|
7827
7833
|
static ɵfac: i0.ɵɵFactoryDeclaration<PanelInfoListComponent, never>;
|
|
7828
7834
|
static ɵcmp: i0.ɵɵComponentDeclaration<PanelInfoListComponent, "ui-panel-info-list", never, {
|
|
@@ -8098,6 +8104,8 @@ export declare class AppShellComponent implements OnInit, OnDestroy {
|
|
|
8098
8104
|
readonly logoutClick: import("@angular/core").OutputEmitterRef<void>;
|
|
8099
8105
|
protected readonly _sidebarOpen: import("@angular/core").WritableSignal<boolean>;
|
|
8100
8106
|
protected readonly _collapsed: import("@angular/core").WritableSignal<boolean>;
|
|
8107
|
+
/** The rail (icons-only sidebar) only exists on the desktop layout; on the drawer layout (≤1024px) a saved rail choice is ignored. */
|
|
8108
|
+
protected readonly _drawerLayout: import("@angular/core").WritableSignal<boolean>;
|
|
8101
8109
|
protected readonly _isRail: import("@angular/core").Signal<boolean>;
|
|
8102
8110
|
private readonly _collapsedGroups;
|
|
8103
8111
|
protected readonly _visibleGroups: import("@angular/core").Signal<NavGroup[]>;
|
|
@@ -8106,6 +8114,8 @@ export declare class AppShellComponent implements OnInit, OnDestroy {
|
|
|
8106
8114
|
private readonly _iconCache;
|
|
8107
8115
|
_safeIcon(svg: string): SafeHtml;
|
|
8108
8116
|
_visibleLinks(group: NavGroup): NavLink[];
|
|
8117
|
+
/** Groups can only be collapsed when there is more than one: a lone group stays open so the navigation can never be hidden. */
|
|
8118
|
+
protected _canCollapseGroups(): boolean;
|
|
8109
8119
|
_isCollapsed(key: string): boolean;
|
|
8110
8120
|
toggleGroup(key: string): void;
|
|
8111
8121
|
private _readSavedGroups;
|
|
@@ -8114,9 +8124,26 @@ export declare class AppShellComponent implements OnInit, OnDestroy {
|
|
|
8114
8124
|
toggleCollapsed(): void;
|
|
8115
8125
|
private static readonly _COLLAPSE_KEY;
|
|
8116
8126
|
private static _loadCollapsed;
|
|
8127
|
+
private readonly _host;
|
|
8128
|
+
private readonly _injector;
|
|
8129
|
+
private readonly _document;
|
|
8130
|
+
/** The drawer layout is exactly the complement of the desktop layout the CSS rail rules use (min-width: 1025px): no viewport width falls in between. */
|
|
8131
|
+
private static readonly _DRAWER_MQ;
|
|
8132
|
+
private static readonly _FOCUSABLE;
|
|
8133
|
+
private _sidebarFocusables;
|
|
8134
|
+
private _hamburger;
|
|
8117
8135
|
toggleSidebar(): void;
|
|
8118
|
-
|
|
8136
|
+
/** Opens the drawer (drawer layout only; a no-op on desktop) and moves keyboard focus into it, so the links behind the backdrop are not reachable until it closes. */
|
|
8137
|
+
openSidebar(): void;
|
|
8138
|
+
/** Closes the drawer; `returnFocus` puts focus back on the hamburger that opened it (keyboard users keep their place). */
|
|
8139
|
+
closeSidebar(returnFocus?: boolean): void;
|
|
8140
|
+
/** Escape closes an open drawer; Tab stays inside it while it is open. */
|
|
8141
|
+
onShellKeydown(e: KeyboardEvent): void;
|
|
8142
|
+
/** Skip link: focuses the main content (`tabindex="-1"`) without changing the URL (the app uses the router). */
|
|
8143
|
+
skipToContent(e: Event): void;
|
|
8119
8144
|
ngOnInit(): void;
|
|
8145
|
+
private _drawerMq?;
|
|
8146
|
+
private readonly _onDrawerMqChange;
|
|
8120
8147
|
ngOnDestroy(): void;
|
|
8121
8148
|
private _expandActiveGroup;
|
|
8122
8149
|
static ɵfac: i0.ɵɵFactoryDeclaration<AppShellComponent, never>;
|
|
@@ -9886,7 +9913,7 @@ export declare class DetailCardComponent {
|
|
|
9886
9913
|
/** true (default) = the title is displayed in capitals (CSS only); false = shown as written. The text, aria-label and heading name are never changed. */
|
|
9887
9914
|
readonly uppercaseTitle: import("@angular/core").InputSignal<boolean>;
|
|
9888
9915
|
/** 1-6 makes the title a real heading for screen readers (role=heading, aria-level); null keeps it plain text. */
|
|
9889
|
-
readonly headingLevel: import("@angular/core").InputSignal<1 | 2 |
|
|
9916
|
+
readonly headingLevel: import("@angular/core").InputSignal<1 | 2 | 5 | 3 | 6 | 4 | null>;
|
|
9890
9917
|
/** Optional id for the title text; the card is then labelled by it. Without it the title is the card's aria-label. */
|
|
9891
9918
|
readonly titleId: import("@angular/core").InputSignal<string>;
|
|
9892
9919
|
/** Accessible name of the card when the header gives none (no header, or no title). A visible title wins; blank = no name. */
|