nath-angular-ui 0.0.1 → 0.0.3
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 +2 -0
- package/fesm2022/nath-angular-ui.mjs +5282 -0
- package/fesm2022/nath-angular-ui.mjs.map +1 -0
- package/package.json +5 -2
- package/types/nath-angular-ui.d.ts +1094 -0
|
@@ -0,0 +1,1094 @@
|
|
|
1
|
+
import * as _angular_core from '@angular/core';
|
|
2
|
+
import { ElementRef, TemplateRef, Injector, InjectionToken, EmbeddedViewRef, OnInit, OnDestroy, AfterContentInit, Signal, StaticProvider } from '@angular/core';
|
|
3
|
+
import { FormValueControl, Field, FieldState } from '@angular/forms/signals';
|
|
4
|
+
import { LucideIcon, isLucideIconComponent, LucideMinimize2, LucideMaximize2, LucideMoon, LucideSun } from '@lucide/angular';
|
|
5
|
+
import * as nath_angular_ui from 'nath-angular-ui';
|
|
6
|
+
import { Params, IsActiveMatchOptions, QueryParamsHandling } from '@angular/router';
|
|
7
|
+
import { ConnectedPosition } from '@angular/cdk/overlay';
|
|
8
|
+
import { Observable } from 'rxjs';
|
|
9
|
+
import { ComponentType, BasePortalOutlet, CdkPortalOutlet, ComponentPortal, TemplatePortal } from '@angular/cdk/portal';
|
|
10
|
+
import { AbstractControl, FormGroup } from '@angular/forms';
|
|
11
|
+
import { SafeHtml, DomSanitizer } from '@angular/platform-browser';
|
|
12
|
+
import { CdkVirtualScrollViewport } from '@angular/cdk/scrolling';
|
|
13
|
+
|
|
14
|
+
declare class NathAutocomplete implements FormValueControl<any> {
|
|
15
|
+
protected readonly elementRef: ElementRef<any>;
|
|
16
|
+
value: _angular_core.ModelSignal<any>;
|
|
17
|
+
items: _angular_core.InputSignal<any[]>;
|
|
18
|
+
placeholder: _angular_core.InputSignalWithTransform<string, string | null | undefined>;
|
|
19
|
+
displayWith: _angular_core.InputSignal<string | ((item: any) => string)>;
|
|
20
|
+
valueWith: _angular_core.InputSignal<string | ((item: any) => any)>;
|
|
21
|
+
inputId: _angular_core.InputSignal<string>;
|
|
22
|
+
emptyMessage: _angular_core.InputSignal<string>;
|
|
23
|
+
dropdown: _angular_core.InputSignal<boolean>;
|
|
24
|
+
showClear: _angular_core.InputSignal<boolean>;
|
|
25
|
+
delay: _angular_core.InputSignal<number>;
|
|
26
|
+
minQueryLength: _angular_core.InputSignal<number>;
|
|
27
|
+
borderless: _angular_core.InputSignal<boolean>;
|
|
28
|
+
disabled: _angular_core.InputSignal<boolean>;
|
|
29
|
+
forceDisabled: _angular_core.InputSignal<boolean>;
|
|
30
|
+
multiple: _angular_core.InputSignal<boolean>;
|
|
31
|
+
debouncedQueryChange: _angular_core.OutputEmitterRef<string>;
|
|
32
|
+
cleared: _angular_core.OutputEmitterRef<void>;
|
|
33
|
+
unselected: _angular_core.OutputEmitterRef<any>;
|
|
34
|
+
query: _angular_core.ModelSignal<string>;
|
|
35
|
+
itemTemplate: _angular_core.Signal<TemplateRef<any> | undefined>;
|
|
36
|
+
inputField: _angular_core.Signal<ElementRef<HTMLInputElement> | undefined>;
|
|
37
|
+
inputValue: _angular_core.WritableSignal<string>;
|
|
38
|
+
isOpen: _angular_core.WritableSignal<boolean>;
|
|
39
|
+
activeTrackedIndex: _angular_core.WritableSignal<number>;
|
|
40
|
+
isDisabled: _angular_core.Signal<boolean>;
|
|
41
|
+
displayFn: _angular_core.Signal<(item: any) => any>;
|
|
42
|
+
selectedItems: _angular_core.Signal<any[]>;
|
|
43
|
+
showClearButton: _angular_core.Signal<boolean>;
|
|
44
|
+
constructor();
|
|
45
|
+
onInputChange(event: Event): void;
|
|
46
|
+
selectItem(item: any): void;
|
|
47
|
+
removeItem(itemToRemove: any, event: MouseEvent): void;
|
|
48
|
+
onKeyDown(event: KeyboardEvent): void;
|
|
49
|
+
protected clear(): void;
|
|
50
|
+
triggerSearch(text: string): void;
|
|
51
|
+
protected openDropdown(): void;
|
|
52
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<NathAutocomplete, never>;
|
|
53
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<NathAutocomplete, "nath-autocomplete", never, { "value": { "alias": "value"; "required": false; "isSignal": true; }; "items": { "alias": "items"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "displayWith": { "alias": "displayWith"; "required": false; "isSignal": true; }; "valueWith": { "alias": "valueWith"; "required": false; "isSignal": true; }; "inputId": { "alias": "inputId"; "required": false; "isSignal": true; }; "emptyMessage": { "alias": "emptyMessage"; "required": false; "isSignal": true; }; "dropdown": { "alias": "dropdown"; "required": false; "isSignal": true; }; "showClear": { "alias": "showClear"; "required": false; "isSignal": true; }; "delay": { "alias": "delay"; "required": false; "isSignal": true; }; "minQueryLength": { "alias": "minQueryLength"; "required": false; "isSignal": true; }; "borderless": { "alias": "borderless"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "forceDisabled": { "alias": "forceDisabled"; "required": false; "isSignal": true; }; "multiple": { "alias": "multiple"; "required": false; "isSignal": true; }; "query": { "alias": "query"; "required": false; "isSignal": true; }; }, { "value": "valueChange"; "debouncedQueryChange": "debouncedQueryChange"; "cleared": "cleared"; "unselected": "unselected"; "query": "queryChange"; }, ["itemTemplate"], never, true, never>;
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
type BooleanDisplayMode = 'checkbox' | 'toggle' | 'switch';
|
|
57
|
+
type TristateValue = boolean | null;
|
|
58
|
+
declare class NathBooleanControl implements FormValueControl<TristateValue> {
|
|
59
|
+
mode: _angular_core.InputSignal<BooleanDisplayMode>;
|
|
60
|
+
label: _angular_core.InputSignal<string>;
|
|
61
|
+
allowIndeterminate: _angular_core.InputSignal<boolean>;
|
|
62
|
+
inputId: _angular_core.InputSignal<string | null>;
|
|
63
|
+
styleClass: _angular_core.InputSignal<string>;
|
|
64
|
+
yesLabel: _angular_core.InputSignal<string>;
|
|
65
|
+
noLabel: _angular_core.InputSignal<string>;
|
|
66
|
+
indeterminateLabel: _angular_core.InputSignal<string>;
|
|
67
|
+
icon: _angular_core.InputSignal<string | LucideIcon | undefined>;
|
|
68
|
+
toggled: _angular_core.OutputEmitterRef<TristateValue>;
|
|
69
|
+
value: _angular_core.ModelSignal<TristateValue>;
|
|
70
|
+
disabled: _angular_core.ModelSignal<boolean>;
|
|
71
|
+
checkboxRef: _angular_core.Signal<ElementRef<HTMLInputElement> | undefined>;
|
|
72
|
+
toggleButtonClasses: _angular_core.Signal<Record<string, boolean>>;
|
|
73
|
+
fallbackButtonLabel: _angular_core.Signal<string>;
|
|
74
|
+
constructor();
|
|
75
|
+
toggle(): void;
|
|
76
|
+
protected readonly isLucideIconComponent: typeof isLucideIconComponent;
|
|
77
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<NathBooleanControl, never>;
|
|
78
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<NathBooleanControl, "nath-boolean-control", never, { "mode": { "alias": "mode"; "required": false; "isSignal": true; }; "label": { "alias": "label"; "required": false; "isSignal": true; }; "allowIndeterminate": { "alias": "allowIndeterminate"; "required": false; "isSignal": true; }; "inputId": { "alias": "inputId"; "required": false; "isSignal": true; }; "styleClass": { "alias": "styleClass"; "required": false; "isSignal": true; }; "yesLabel": { "alias": "yesLabel"; "required": false; "isSignal": true; }; "noLabel": { "alias": "noLabel"; "required": false; "isSignal": true; }; "indeterminateLabel": { "alias": "indeterminateLabel"; "required": false; "isSignal": true; }; "icon": { "alias": "icon"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; }, { "toggled": "toggled"; "value": "valueChange"; "disabled": "disabledChange"; }, never, never, true, never>;
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
declare class NathBreadcrumbs {
|
|
82
|
+
private readonly breadcrumbService;
|
|
83
|
+
protected readonly breadcrumbs: _angular_core.Signal<nath_angular_ui.Breadcrumb[]>;
|
|
84
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<NathBreadcrumbs, never>;
|
|
85
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<NathBreadcrumbs, "nath-breadcrumbs", never, {}, {}, never, never, true, never>;
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
interface Breadcrumb {
|
|
89
|
+
label: string;
|
|
90
|
+
routerLink?: string | string[];
|
|
91
|
+
queryParams?: Params;
|
|
92
|
+
routerLinkActive?: string | string[];
|
|
93
|
+
routerLinkActiveOptions?: {
|
|
94
|
+
exact: boolean;
|
|
95
|
+
} | Partial<IsActiveMatchOptions>;
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
declare class BreadcrumbService {
|
|
99
|
+
private readonly _breadcrumbs;
|
|
100
|
+
breadcrumbs: _angular_core.Signal<Breadcrumb[]>;
|
|
101
|
+
/**
|
|
102
|
+
* Set the breadcrumbs for the current view.
|
|
103
|
+
* @param crumbs Array of breadcrumbs items
|
|
104
|
+
*/
|
|
105
|
+
set(crumbs: Breadcrumb[]): void;
|
|
106
|
+
add(crumb: Breadcrumb): void;
|
|
107
|
+
/**
|
|
108
|
+
* Clears the breadcrumbs when leaving a page.
|
|
109
|
+
*/
|
|
110
|
+
clear(): void;
|
|
111
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<BreadcrumbService, never>;
|
|
112
|
+
static ɵprov: _angular_core.ɵɵInjectableDeclaration<BreadcrumbService>;
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
declare class NathDatepicker implements FormValueControl<Date | null> {
|
|
116
|
+
placeholder: _angular_core.InputSignal<string>;
|
|
117
|
+
inputId: _angular_core.InputSignal<string>;
|
|
118
|
+
language: _angular_core.InputSignal<string>;
|
|
119
|
+
disabled: _angular_core.InputSignal<boolean>;
|
|
120
|
+
touched: _angular_core.ModelSignal<boolean>;
|
|
121
|
+
dirty: _angular_core.ModelSignal<boolean>;
|
|
122
|
+
inputElement: _angular_core.Signal<ElementRef<HTMLInputElement> | undefined>;
|
|
123
|
+
value: _angular_core.ModelSignal<Date | null>;
|
|
124
|
+
isOpen: _angular_core.WritableSignal<boolean>;
|
|
125
|
+
currentViewDate: _angular_core.WritableSignal<Date>;
|
|
126
|
+
daysInMonth: _angular_core.Signal<Date[]>;
|
|
127
|
+
currentMonthLabel: _angular_core.Signal<string>;
|
|
128
|
+
overlayPositions: ConnectedPosition[];
|
|
129
|
+
constructor();
|
|
130
|
+
get formattedInputValue(): string;
|
|
131
|
+
toggleCalendar(): void;
|
|
132
|
+
onInputChange(event: Event): void;
|
|
133
|
+
selectDate(date: Date): void;
|
|
134
|
+
changeMonth(direction: number): void;
|
|
135
|
+
isSameDay(dateA: Date | null, dateB: Date | null): boolean;
|
|
136
|
+
private generateCalendarDays;
|
|
137
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<NathDatepicker, never>;
|
|
138
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<NathDatepicker, "nath-datepicker", never, { "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "inputId": { "alias": "inputId"; "required": false; "isSignal": true; }; "language": { "alias": "language"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "touched": { "alias": "touched"; "required": false; "isSignal": true; }; "dirty": { "alias": "dirty"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; }, { "touched": "touchedChange"; "dirty": "dirtyChange"; "value": "valueChange"; }, never, never, true, never>;
|
|
139
|
+
}
|
|
140
|
+
|
|
141
|
+
interface ConfirmationButton {
|
|
142
|
+
label: string;
|
|
143
|
+
/** Custom Tailwind v4 styling classes (e.g., 'bg-red-600 hover:bg-red-700 text-white') */
|
|
144
|
+
customClass?: string;
|
|
145
|
+
/** Action to execute when clicked */
|
|
146
|
+
action: () => void | Promise<void>;
|
|
147
|
+
/** If set to true, the dialog will stay open after clicking this button */
|
|
148
|
+
preventClose?: boolean;
|
|
149
|
+
}
|
|
150
|
+
interface ConfirmationConfig {
|
|
151
|
+
header?: string | TemplateRef<any>;
|
|
152
|
+
/** Either a plain message string or a custom TemplateRef */
|
|
153
|
+
content: string | TemplateRef<any>;
|
|
154
|
+
width?: string;
|
|
155
|
+
/** Optional custom button array. If omitted, defaults to Yes/No */
|
|
156
|
+
buttons?: ConfirmationButton[];
|
|
157
|
+
/** Accept and reject callbacks for the default Yes/No buttons */
|
|
158
|
+
accept?: () => void | Promise<void>;
|
|
159
|
+
reject?: () => void | Promise<void>;
|
|
160
|
+
/** Custom classes for the default for the default Yes/No buttons */
|
|
161
|
+
acceptButtonStyleClass?: string;
|
|
162
|
+
rejectButtonStyleClass?: string;
|
|
163
|
+
}
|
|
164
|
+
|
|
165
|
+
declare const DIALOG_DATA: InjectionToken<any>;
|
|
166
|
+
interface DialogConfig<D = any> {
|
|
167
|
+
data?: D;
|
|
168
|
+
header?: string | TemplateRef<any>;
|
|
169
|
+
width?: string;
|
|
170
|
+
}
|
|
171
|
+
declare class DialogRef<R = any> {
|
|
172
|
+
private readonly _afterClosed;
|
|
173
|
+
readonly afterClosedSignal: _angular_core.Signal<R | undefined>;
|
|
174
|
+
readonly afterClosed$: Observable<R | undefined>;
|
|
175
|
+
private readonly _maximized;
|
|
176
|
+
readonly maximized: _angular_core.Signal<boolean>;
|
|
177
|
+
private readonly closeCallback?;
|
|
178
|
+
constructor(init: {
|
|
179
|
+
onClose: (result?: R) => void;
|
|
180
|
+
injector: Injector;
|
|
181
|
+
});
|
|
182
|
+
/** Toggles or sets the maximized state of the dialog */
|
|
183
|
+
maximize(state?: boolean): void;
|
|
184
|
+
close(result?: R): void;
|
|
185
|
+
}
|
|
186
|
+
|
|
187
|
+
declare class ConfirmationService {
|
|
188
|
+
private readonly dialogService;
|
|
189
|
+
/** Spawns a type-safe confirmation window */
|
|
190
|
+
confirm(config: ConfirmationConfig): DialogRef<string>;
|
|
191
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<ConfirmationService, never>;
|
|
192
|
+
static ɵprov: _angular_core.ɵɵInjectableDeclaration<ConfirmationService>;
|
|
193
|
+
}
|
|
194
|
+
|
|
195
|
+
declare class NathConfirmationDialog {
|
|
196
|
+
protected readonly dialogRef: DialogRef<any>;
|
|
197
|
+
protected readonly config: ConfirmationConfig;
|
|
198
|
+
protected get buttons(): nath_angular_ui.ConfirmationButton[];
|
|
199
|
+
handleButtonClick(btn: any): Promise<void>;
|
|
200
|
+
protected isTemplateRef(value: any): value is TemplateRef<any>;
|
|
201
|
+
protected contentAsTemplate(): TemplateRef<any>;
|
|
202
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<NathConfirmationDialog, never>;
|
|
203
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<NathConfirmationDialog, "ng-component", never, {}, {}, never, never, true, never>;
|
|
204
|
+
}
|
|
205
|
+
|
|
206
|
+
declare class DialogService {
|
|
207
|
+
private readonly injector;
|
|
208
|
+
private readonly environmentInjector;
|
|
209
|
+
private readonly appRef;
|
|
210
|
+
private readonly router;
|
|
211
|
+
private readonly openDialogs;
|
|
212
|
+
constructor();
|
|
213
|
+
open<T, D = any, R = any>(content: ComponentType<T> | TemplateRef<any>, config: DialogConfig<D>): DialogRef<R>;
|
|
214
|
+
/**
|
|
215
|
+
* Closes all currently open dialogs (e.g., when routing away).
|
|
216
|
+
*/
|
|
217
|
+
closeAll(): void;
|
|
218
|
+
private destroyDialog;
|
|
219
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<DialogService, never>;
|
|
220
|
+
static ɵprov: _angular_core.ɵɵInjectableDeclaration<DialogService>;
|
|
221
|
+
}
|
|
222
|
+
|
|
223
|
+
declare class NathDialogContainer extends BasePortalOutlet {
|
|
224
|
+
readonly portalOutlet: _angular_core.Signal<CdkPortalOutlet>;
|
|
225
|
+
protected readonly dialogRef: DialogRef<any>;
|
|
226
|
+
readonly header: _angular_core.WritableSignal<string | TemplateRef<any> | undefined>;
|
|
227
|
+
readonly width: _angular_core.WritableSignal<string | undefined>;
|
|
228
|
+
attachComponentPortal<T>(portal: ComponentPortal<T>): _angular_core.ComponentRef<T>;
|
|
229
|
+
attachTemplatePortal<C>(portal: TemplatePortal<C>): EmbeddedViewRef<C>;
|
|
230
|
+
onMaskClick(event: MouseEvent): void;
|
|
231
|
+
protected isTemplateRef(value: any): value is TemplateRef<any>;
|
|
232
|
+
protected headerAsTemplate(): TemplateRef<any>;
|
|
233
|
+
protected readonly LucideMinimize2: typeof LucideMinimize2;
|
|
234
|
+
protected readonly LucideMaximize2: typeof LucideMaximize2;
|
|
235
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<NathDialogContainer, never>;
|
|
236
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<NathDialogContainer, "nath-dialog-container", never, {}, {}, never, never, true, never>;
|
|
237
|
+
}
|
|
238
|
+
|
|
239
|
+
declare class NathDrawer implements OnInit, OnDestroy {
|
|
240
|
+
private readonly elementRef;
|
|
241
|
+
private readonly renderer;
|
|
242
|
+
private readonly document;
|
|
243
|
+
visible: _angular_core.ModelSignal<boolean>;
|
|
244
|
+
position: _angular_core.InputSignal<"left" | "right">;
|
|
245
|
+
transitionDuration: _angular_core.InputSignal<string>;
|
|
246
|
+
closed: _angular_core.OutputEmitterRef<void>;
|
|
247
|
+
opened: _angular_core.OutputEmitterRef<void>;
|
|
248
|
+
drawerStyles: _angular_core.Signal<{
|
|
249
|
+
[x: string]: string;
|
|
250
|
+
width: string;
|
|
251
|
+
'transition-duration': string;
|
|
252
|
+
visibility: string;
|
|
253
|
+
'pointer-events': string;
|
|
254
|
+
}>;
|
|
255
|
+
constructor();
|
|
256
|
+
ngOnInit(): void;
|
|
257
|
+
ngOnDestroy(): void;
|
|
258
|
+
protected close(): void;
|
|
259
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<NathDrawer, never>;
|
|
260
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<NathDrawer, "nath-drawer", ["drawer"], { "visible": { "alias": "visible"; "required": false; "isSignal": true; }; "position": { "alias": "position"; "required": false; "isSignal": true; }; "transitionDuration": { "alias": "transitionDuration"; "required": false; "isSignal": true; }; }, { "visible": "visibleChange"; "closed": "closed"; "opened": "opened"; }, never, ["[header]", "*"], true, never>;
|
|
261
|
+
}
|
|
262
|
+
|
|
263
|
+
declare class NathFileUpload {
|
|
264
|
+
input: _angular_core.Signal<HTMLInputElement | undefined>;
|
|
265
|
+
inputRef: _angular_core.Signal<ElementRef<any> | undefined>;
|
|
266
|
+
changeEvent: _angular_core.OutputEmitterRef<void>;
|
|
267
|
+
readonly inputId: _angular_core.InputSignal<string>;
|
|
268
|
+
readonly buttonLabel: _angular_core.InputSignal<string>;
|
|
269
|
+
readonly accept: _angular_core.InputSignal<string>;
|
|
270
|
+
readonly formField: _angular_core.InputSignal<Field<any>>;
|
|
271
|
+
readonly controlName: _angular_core.InputSignal<string>;
|
|
272
|
+
selectedFileName: string;
|
|
273
|
+
onFileChange(event: any): void;
|
|
274
|
+
clearFile(): void;
|
|
275
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<NathFileUpload, never>;
|
|
276
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<NathFileUpload, "nath-file-upload", never, { "inputId": { "alias": "inputId"; "required": false; "isSignal": true; }; "buttonLabel": { "alias": "buttonLabel"; "required": false; "isSignal": true; }; "accept": { "alias": "accept"; "required": false; "isSignal": true; }; "formField": { "alias": "formField"; "required": true; "isSignal": true; }; "controlName": { "alias": "controlName"; "required": true; "isSignal": true; }; }, { "changeEvent": "changeEvent"; }, never, never, true, never>;
|
|
277
|
+
}
|
|
278
|
+
|
|
279
|
+
declare class NathFloatingLabel {
|
|
280
|
+
label: _angular_core.InputSignal<string>;
|
|
281
|
+
inputId: _angular_core.InputSignal<string>;
|
|
282
|
+
labelClass: _angular_core.InputSignal<string>;
|
|
283
|
+
contentClass: _angular_core.InputSignal<string>;
|
|
284
|
+
required: _angular_core.InputSignal<boolean>;
|
|
285
|
+
signalField: _angular_core.InputSignal<FieldState<any, any> | undefined>;
|
|
286
|
+
/**
|
|
287
|
+
* Evaluates the programmatically linked signal field form state requirement status reactively.
|
|
288
|
+
*/
|
|
289
|
+
protected readonly isFieldRequired: _angular_core.Signal<boolean>;
|
|
290
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<NathFloatingLabel, never>;
|
|
291
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<NathFloatingLabel, "nath-floating-label", never, { "label": { "alias": "label"; "required": true; "isSignal": true; }; "inputId": { "alias": "inputId"; "required": true; "isSignal": true; }; "labelClass": { "alias": "labelClass"; "required": false; "isSignal": true; }; "contentClass": { "alias": "contentClass"; "required": false; "isSignal": true; }; "required": { "alias": "required"; "required": false; "isSignal": true; }; "signalField": { "alias": "signalField"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
|
|
292
|
+
}
|
|
293
|
+
|
|
294
|
+
declare class NathFormField {
|
|
295
|
+
inputId: _angular_core.InputSignal<string | null>;
|
|
296
|
+
control: _angular_core.InputSignal<AbstractControl<any, any, any> | null>;
|
|
297
|
+
signalField: _angular_core.InputSignal<FieldState<any, any> | undefined>;
|
|
298
|
+
required: _angular_core.InputSignal<boolean>;
|
|
299
|
+
labelClass: _angular_core.InputSignal<string>;
|
|
300
|
+
labelClasses: _angular_core.Signal<Record<string, boolean>>;
|
|
301
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<NathFormField, never>;
|
|
302
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<NathFormField, "nath-form-field", never, { "inputId": { "alias": "inputId"; "required": false; "isSignal": true; }; "control": { "alias": "control"; "required": false; "isSignal": true; }; "signalField": { "alias": "signalField"; "required": false; "isSignal": true; }; "required": { "alias": "required"; "required": false; "isSignal": true; }; "labelClass": { "alias": "labelClass"; "required": false; "isSignal": true; }; }, {}, never, ["label", "*"], true, never>;
|
|
303
|
+
}
|
|
304
|
+
|
|
305
|
+
declare class NathImagePreview {
|
|
306
|
+
readonly image: _angular_core.InputSignal<string | undefined>;
|
|
307
|
+
readonly thumbnail: _angular_core.InputSignal<string>;
|
|
308
|
+
readonly text: _angular_core.InputSignal<string | null>;
|
|
309
|
+
readonly fallbackIcon: _angular_core.InputSignal<string | LucideIcon>;
|
|
310
|
+
readonly loading: _angular_core.InputSignal<boolean>;
|
|
311
|
+
readonly preview: _angular_core.InputSignal<boolean>;
|
|
312
|
+
imageClick: _angular_core.OutputEmitterRef<void>;
|
|
313
|
+
displayedImage: _angular_core.WritableSignal<string>;
|
|
314
|
+
isModalOpen: _angular_core.WritableSignal<boolean>;
|
|
315
|
+
constructor();
|
|
316
|
+
onClick(): void;
|
|
317
|
+
closeModal(): void;
|
|
318
|
+
protected readonly isLucideIconComponent: typeof isLucideIconComponent;
|
|
319
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<NathImagePreview, never>;
|
|
320
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<NathImagePreview, "nath-image-preview", never, { "image": { "alias": "image"; "required": true; "isSignal": true; }; "thumbnail": { "alias": "thumbnail"; "required": false; "isSignal": true; }; "text": { "alias": "text"; "required": true; "isSignal": true; }; "fallbackIcon": { "alias": "fallbackIcon"; "required": true; "isSignal": true; }; "loading": { "alias": "loading"; "required": false; "isSignal": true; }; "preview": { "alias": "preview"; "required": false; "isSignal": true; }; }, { "imageClick": "imageClick"; }, never, never, true, never>;
|
|
321
|
+
}
|
|
322
|
+
|
|
323
|
+
interface MenuItemCommandEvent {
|
|
324
|
+
/**
|
|
325
|
+
* Browser event.
|
|
326
|
+
*/
|
|
327
|
+
originalEvent?: Event;
|
|
328
|
+
/**
|
|
329
|
+
* Selected menu item.
|
|
330
|
+
*/
|
|
331
|
+
item?: MenuItem;
|
|
332
|
+
/**
|
|
333
|
+
* Index of the selected item.
|
|
334
|
+
*/
|
|
335
|
+
index?: number;
|
|
336
|
+
}
|
|
337
|
+
interface MenuItem {
|
|
338
|
+
/**
|
|
339
|
+
* Text of the item.
|
|
340
|
+
*/
|
|
341
|
+
label?: string;
|
|
342
|
+
/**
|
|
343
|
+
* Icon of the item.
|
|
344
|
+
*/
|
|
345
|
+
icon?: string | LucideIcon;
|
|
346
|
+
/**
|
|
347
|
+
* Callback to execute when item is clicked.
|
|
348
|
+
*/
|
|
349
|
+
command?(event: MenuItemCommandEvent): void;
|
|
350
|
+
/**
|
|
351
|
+
* External link to navigate when item is clicked.
|
|
352
|
+
*/
|
|
353
|
+
url?: string;
|
|
354
|
+
/**
|
|
355
|
+
* An array of children menuitems.
|
|
356
|
+
*/
|
|
357
|
+
items?: MenuItem[];
|
|
358
|
+
/**
|
|
359
|
+
* Visibility of submenu.
|
|
360
|
+
*/
|
|
361
|
+
expanded?: boolean;
|
|
362
|
+
/**
|
|
363
|
+
* When set as true, disables the menuitem.
|
|
364
|
+
*/
|
|
365
|
+
disabled?: boolean;
|
|
366
|
+
/**
|
|
367
|
+
* Whether the dom element of menuitem is created or not.
|
|
368
|
+
*/
|
|
369
|
+
visible?: boolean;
|
|
370
|
+
/**
|
|
371
|
+
* Specifies where to open the linked document.
|
|
372
|
+
*/
|
|
373
|
+
target?: string;
|
|
374
|
+
/**
|
|
375
|
+
* Whether to escape the label or not. Set to false to display html content.
|
|
376
|
+
*/
|
|
377
|
+
escape?: boolean;
|
|
378
|
+
/**
|
|
379
|
+
* Configuration for active router link.
|
|
380
|
+
*/
|
|
381
|
+
routerLinkActiveOptions?: any;
|
|
382
|
+
/**
|
|
383
|
+
* Defines the item as a separator.
|
|
384
|
+
*/
|
|
385
|
+
separator?: boolean;
|
|
386
|
+
/**
|
|
387
|
+
* Value of the badge.
|
|
388
|
+
*/
|
|
389
|
+
badge?: string;
|
|
390
|
+
/**
|
|
391
|
+
* Tooltip of the item.
|
|
392
|
+
*/
|
|
393
|
+
/**
|
|
394
|
+
* Position of the tooltip item.
|
|
395
|
+
*/
|
|
396
|
+
/**
|
|
397
|
+
* Style class of the badge.
|
|
398
|
+
*/
|
|
399
|
+
badgeStyleClass?: string;
|
|
400
|
+
/**
|
|
401
|
+
* Inline style of the menuitem.
|
|
402
|
+
*/
|
|
403
|
+
style?: {
|
|
404
|
+
[klass: string]: any;
|
|
405
|
+
} | null;
|
|
406
|
+
/**
|
|
407
|
+
* Style class of the menuitem.
|
|
408
|
+
*/
|
|
409
|
+
styleClass?: string;
|
|
410
|
+
/**
|
|
411
|
+
* Tooltip text of the item.
|
|
412
|
+
*/
|
|
413
|
+
title?: string;
|
|
414
|
+
/**
|
|
415
|
+
* Identifier of the element.
|
|
416
|
+
*/
|
|
417
|
+
id?: string;
|
|
418
|
+
/**
|
|
419
|
+
* Value of HTML data-* attribute.
|
|
420
|
+
*/
|
|
421
|
+
automationId?: any;
|
|
422
|
+
/**
|
|
423
|
+
* Specifies tab order of the item.
|
|
424
|
+
*/
|
|
425
|
+
tabindex?: string;
|
|
426
|
+
/**
|
|
427
|
+
* RouterLink definition for internal navigation.
|
|
428
|
+
*/
|
|
429
|
+
routerLink?: any;
|
|
430
|
+
/**
|
|
431
|
+
* Query parameters for internal navigation via routerLink.
|
|
432
|
+
*/
|
|
433
|
+
queryParams?: {
|
|
434
|
+
[k: string]: any;
|
|
435
|
+
};
|
|
436
|
+
/**
|
|
437
|
+
* Sets the hash fragment for the URL.
|
|
438
|
+
*/
|
|
439
|
+
fragment?: string;
|
|
440
|
+
/**
|
|
441
|
+
* How to handle query parameters in the router link for the next navigation. One of:
|
|
442
|
+
merge : Merge new with current parameters.
|
|
443
|
+
preserve : Preserve current parameters.k.
|
|
444
|
+
*/
|
|
445
|
+
queryParamsHandling?: QueryParamsHandling;
|
|
446
|
+
/**
|
|
447
|
+
* When true, preserves the URL fragment for the next navigation.
|
|
448
|
+
*/
|
|
449
|
+
preserveFragment?: boolean;
|
|
450
|
+
/**
|
|
451
|
+
* When true, navigates without pushing a new state into history.
|
|
452
|
+
*/
|
|
453
|
+
skipLocationChange?: boolean;
|
|
454
|
+
/**
|
|
455
|
+
* When true, navigates while replacing the current state in history.
|
|
456
|
+
*/
|
|
457
|
+
replaceUrl?: boolean;
|
|
458
|
+
/**
|
|
459
|
+
* Inline style of the item's icon.
|
|
460
|
+
*/
|
|
461
|
+
iconStyle?: {
|
|
462
|
+
[klass: string]: any;
|
|
463
|
+
} | null;
|
|
464
|
+
/**
|
|
465
|
+
* Class of the item's icon.
|
|
466
|
+
*/
|
|
467
|
+
iconClass?: string;
|
|
468
|
+
/**
|
|
469
|
+
* Inline style of the item's label.
|
|
470
|
+
*/
|
|
471
|
+
labelStyle?: {
|
|
472
|
+
[klass: string]: any;
|
|
473
|
+
} | null;
|
|
474
|
+
/**
|
|
475
|
+
* Class of the item's label.
|
|
476
|
+
*/
|
|
477
|
+
labelClass?: string;
|
|
478
|
+
/**
|
|
479
|
+
* Inline style of the item's link.
|
|
480
|
+
*/
|
|
481
|
+
linkStyle?: {
|
|
482
|
+
[klass: string]: any;
|
|
483
|
+
} | null;
|
|
484
|
+
/**
|
|
485
|
+
* Class of the item's link.
|
|
486
|
+
*/
|
|
487
|
+
linkClass?: string;
|
|
488
|
+
/**
|
|
489
|
+
* Developer-defined state that can be passed to any navigation.
|
|
490
|
+
* @see {MenuItemState}
|
|
491
|
+
*/
|
|
492
|
+
state?: {
|
|
493
|
+
[k: string]: any;
|
|
494
|
+
};
|
|
495
|
+
/**
|
|
496
|
+
* Options of the item's tooltip.
|
|
497
|
+
* @see {TooltipOptions}
|
|
498
|
+
*/
|
|
499
|
+
/**
|
|
500
|
+
* Optional
|
|
501
|
+
*/
|
|
502
|
+
[key: string]: any;
|
|
503
|
+
}
|
|
504
|
+
|
|
505
|
+
type NathMenuPositionX = 'auto' | 'left' | 'right';
|
|
506
|
+
type NathMenuPositionY = 'auto' | 'top' | 'bottom';
|
|
507
|
+
|
|
508
|
+
declare class NathMenu implements AfterContentInit, OnDestroy {
|
|
509
|
+
private readonly document;
|
|
510
|
+
model: _angular_core.ModelSignal<MenuItem[]>;
|
|
511
|
+
styleClass: _angular_core.ModelSignal<string | null | undefined>;
|
|
512
|
+
positionX: _angular_core.InputSignal<NathMenuPositionX>;
|
|
513
|
+
positionY: _angular_core.InputSignal<NathMenuPositionY>;
|
|
514
|
+
inline: _angular_core.InputSignal<boolean>;
|
|
515
|
+
flat: _angular_core.InputSignal<boolean>;
|
|
516
|
+
whenHide: _angular_core.OutputEmitterRef<void>;
|
|
517
|
+
rootMenuElement: _angular_core.Signal<ElementRef<HTMLElement> | undefined>;
|
|
518
|
+
isVisible: _angular_core.WritableSignal<boolean>;
|
|
519
|
+
rawPosition: _angular_core.WritableSignal<{
|
|
520
|
+
x: number;
|
|
521
|
+
y: number;
|
|
522
|
+
}>;
|
|
523
|
+
adjustedPosition: _angular_core.WritableSignal<{
|
|
524
|
+
x: number;
|
|
525
|
+
y: number;
|
|
526
|
+
}>;
|
|
527
|
+
ngAfterContentInit(): void;
|
|
528
|
+
/**
|
|
529
|
+
* Show menu in popup mode
|
|
530
|
+
*/
|
|
531
|
+
show(event: MouseEvent): void;
|
|
532
|
+
hide(): void;
|
|
533
|
+
toggle(event: MouseEvent): void;
|
|
534
|
+
handleCommand(payload: {
|
|
535
|
+
item: MenuItem;
|
|
536
|
+
index?: number;
|
|
537
|
+
event?: Event;
|
|
538
|
+
}): void;
|
|
539
|
+
ngOnDestroy(): void;
|
|
540
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<NathMenu, never>;
|
|
541
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<NathMenu, "nath-menu", never, { "model": { "alias": "model"; "required": false; "isSignal": true; }; "styleClass": { "alias": "styleClass"; "required": false; "isSignal": true; }; "positionX": { "alias": "positionX"; "required": false; "isSignal": true; }; "positionY": { "alias": "positionY"; "required": false; "isSignal": true; }; "inline": { "alias": "inline"; "required": false; "isSignal": true; }; "flat": { "alias": "flat"; "required": false; "isSignal": true; }; }, { "model": "modelChange"; "styleClass": "styleClassChange"; "whenHide": "whenHide"; }, never, never, true, never>;
|
|
542
|
+
}
|
|
543
|
+
|
|
544
|
+
declare class NathMenuList {
|
|
545
|
+
private readonly sanitizer;
|
|
546
|
+
items: _angular_core.InputSignal<MenuItem[]>;
|
|
547
|
+
direction: _angular_core.InputSignal<"left" | "right">;
|
|
548
|
+
flat: _angular_core.InputSignal<boolean>;
|
|
549
|
+
whenCommand: _angular_core.OutputEmitterRef<{
|
|
550
|
+
item: MenuItem;
|
|
551
|
+
index?: number;
|
|
552
|
+
event?: Event;
|
|
553
|
+
}>;
|
|
554
|
+
private readonly submenuContainers;
|
|
555
|
+
protected readonly activeItem: _angular_core.WritableSignal<MenuItem | null>;
|
|
556
|
+
protected readonly submenuTop: _angular_core.WritableSignal<number>;
|
|
557
|
+
protected readonly submenuLeft: _angular_core.WritableSignal<number>;
|
|
558
|
+
protected readonly nextSubmenuDirection: _angular_core.WritableSignal<"left" | "right">;
|
|
559
|
+
protected getMenuLabel(item: MenuItem): string | SafeHtml;
|
|
560
|
+
protected onItemHover(item: MenuItem, event: Event): void;
|
|
561
|
+
private executeItem;
|
|
562
|
+
protected onItemClick(item: any, $index: number, $event: Event): void;
|
|
563
|
+
protected readonly isLucideIconComponent: typeof isLucideIconComponent;
|
|
564
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<NathMenuList, never>;
|
|
565
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<NathMenuList, "nath-menu-list", never, { "items": { "alias": "items"; "required": false; "isSignal": true; }; "direction": { "alias": "direction"; "required": false; "isSignal": true; }; "flat": { "alias": "flat"; "required": false; "isSignal": true; }; }, { "whenCommand": "whenCommand"; }, never, never, true, never>;
|
|
566
|
+
}
|
|
567
|
+
|
|
568
|
+
declare class NathMultiselect implements FormValueControl<any[]> {
|
|
569
|
+
protected readonly elementRef: ElementRef<any>;
|
|
570
|
+
private readonly uniqueId;
|
|
571
|
+
value: _angular_core.ModelSignal<any[]>;
|
|
572
|
+
options: _angular_core.InputSignal<any[]>;
|
|
573
|
+
forceDisabled: _angular_core.InputSignal<boolean>;
|
|
574
|
+
disabled: _angular_core.InputSignal<boolean>;
|
|
575
|
+
placeholder: _angular_core.InputSignalWithTransform<string, string | null | undefined>;
|
|
576
|
+
displayWith: _angular_core.InputSignal<string | ((item: any) => string)>;
|
|
577
|
+
valueWith: _angular_core.InputSignal<string | ((item: any) => any)>;
|
|
578
|
+
dataKey: _angular_core.InputSignal<string>;
|
|
579
|
+
inputId: _angular_core.InputSignal<string>;
|
|
580
|
+
emptyMessage: _angular_core.InputSignal<string>;
|
|
581
|
+
showClear: _angular_core.InputSignal<boolean>;
|
|
582
|
+
delay: _angular_core.InputSignal<number>;
|
|
583
|
+
minQueryLength: _angular_core.InputSignal<number>;
|
|
584
|
+
borderless: _angular_core.InputSignal<boolean>;
|
|
585
|
+
filter: _angular_core.InputSignal<boolean>;
|
|
586
|
+
virtualScroll: _angular_core.InputSignal<boolean>;
|
|
587
|
+
virtualScrollItemSize: _angular_core.InputSignal<number>;
|
|
588
|
+
comboboxClass: _angular_core.InputSignal<string>;
|
|
589
|
+
ariaLabelledBy: _angular_core.InputSignal<string>;
|
|
590
|
+
selectionLimit: _angular_core.InputSignal<number | null>;
|
|
591
|
+
debouncedQueryChange: _angular_core.OutputEmitterRef<string>;
|
|
592
|
+
cleared: _angular_core.OutputEmitterRef<void>;
|
|
593
|
+
unselected: _angular_core.OutputEmitterRef<any>;
|
|
594
|
+
query: _angular_core.WritableSignal<string>;
|
|
595
|
+
itemTemplate: _angular_core.Signal<TemplateRef<any> | undefined>;
|
|
596
|
+
inputField: _angular_core.Signal<ElementRef<HTMLInputElement> | undefined>;
|
|
597
|
+
container: _angular_core.Signal<ElementRef<HTMLDivElement> | undefined>;
|
|
598
|
+
viewport: _angular_core.Signal<CdkVirtualScrollViewport | undefined>;
|
|
599
|
+
inputValue: _angular_core.WritableSignal<string>;
|
|
600
|
+
isOpen: _angular_core.WritableSignal<boolean>;
|
|
601
|
+
activeTrackedIndex: _angular_core.WritableSignal<number>;
|
|
602
|
+
private watchKeydownSubscription?;
|
|
603
|
+
controlId: _angular_core.Signal<string>;
|
|
604
|
+
listboxId: _angular_core.Signal<string>;
|
|
605
|
+
optionIdPrefix: _angular_core.Signal<string>;
|
|
606
|
+
isDisabled: _angular_core.Signal<boolean>;
|
|
607
|
+
displayFn: _angular_core.Signal<(item: any) => any>;
|
|
608
|
+
valueFn: _angular_core.Signal<(item: any) => any>;
|
|
609
|
+
selectedItems: _angular_core.Signal<any[]>;
|
|
610
|
+
hasNoSelection: _angular_core.Signal<boolean>;
|
|
611
|
+
filteredOptions: _angular_core.Signal<any[]>;
|
|
612
|
+
showClearButton: _angular_core.Signal<boolean>;
|
|
613
|
+
constructor();
|
|
614
|
+
private watchKeydown;
|
|
615
|
+
isSelected(item: any): boolean;
|
|
616
|
+
onInputChange(event: Event): void;
|
|
617
|
+
selectItem(item: any): void;
|
|
618
|
+
hideDropdown(): void;
|
|
619
|
+
resetFilter(): void;
|
|
620
|
+
toggle(): void;
|
|
621
|
+
onHostKeyDown(event: KeyboardEvent): void;
|
|
622
|
+
onKeyDown(event: KeyboardEvent): void;
|
|
623
|
+
removeItem(itemToRemove: any, event: MouseEvent): void;
|
|
624
|
+
clear(): void;
|
|
625
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<NathMultiselect, never>;
|
|
626
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<NathMultiselect, "nath-multiselect", never, { "value": { "alias": "value"; "required": false; "isSignal": true; }; "options": { "alias": "options"; "required": false; "isSignal": true; }; "forceDisabled": { "alias": "forceDisabled"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "displayWith": { "alias": "displayWith"; "required": false; "isSignal": true; }; "valueWith": { "alias": "valueWith"; "required": false; "isSignal": true; }; "dataKey": { "alias": "dataKey"; "required": false; "isSignal": true; }; "inputId": { "alias": "inputId"; "required": false; "isSignal": true; }; "emptyMessage": { "alias": "emptyMessage"; "required": false; "isSignal": true; }; "showClear": { "alias": "showClear"; "required": false; "isSignal": true; }; "delay": { "alias": "delay"; "required": false; "isSignal": true; }; "minQueryLength": { "alias": "minQueryLength"; "required": false; "isSignal": true; }; "borderless": { "alias": "borderless"; "required": false; "isSignal": true; }; "filter": { "alias": "filter"; "required": false; "isSignal": true; }; "virtualScroll": { "alias": "virtualScroll"; "required": false; "isSignal": true; }; "virtualScrollItemSize": { "alias": "virtualScrollItemSize"; "required": false; "isSignal": true; }; "comboboxClass": { "alias": "comboboxClass"; "required": false; "isSignal": true; }; "ariaLabelledBy": { "alias": "ariaLabelledBy"; "required": false; "isSignal": true; }; "selectionLimit": { "alias": "selectionLimit"; "required": false; "isSignal": true; }; }, { "value": "valueChange"; "debouncedQueryChange": "debouncedQueryChange"; "cleared": "cleared"; "unselected": "unselected"; }, ["itemTemplate"], never, true, never>;
|
|
627
|
+
}
|
|
628
|
+
|
|
629
|
+
interface PageItem {
|
|
630
|
+
label: string;
|
|
631
|
+
num: number;
|
|
632
|
+
isEllipsis: boolean;
|
|
633
|
+
}
|
|
634
|
+
interface PaginatorChangeEvent {
|
|
635
|
+
page: number;
|
|
636
|
+
pageSize: number;
|
|
637
|
+
}
|
|
638
|
+
declare class NathPaginator {
|
|
639
|
+
page: _angular_core.ModelSignal<number>;
|
|
640
|
+
pageSize: _angular_core.ModelSignal<number>;
|
|
641
|
+
totalItems: _angular_core.InputSignal<number>;
|
|
642
|
+
pageSizeOptions: _angular_core.InputSignal<number[]>;
|
|
643
|
+
disabled: _angular_core.InputSignal<boolean>;
|
|
644
|
+
paginatorChange: _angular_core.OutputEmitterRef<PaginatorChangeEvent>;
|
|
645
|
+
totalPages: _angular_core.Signal<number>;
|
|
646
|
+
pages: _angular_core.Signal<PageItem[]>;
|
|
647
|
+
goToPage(pageNumber: number): void;
|
|
648
|
+
onPageSizeChange(newSize: number): void;
|
|
649
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<NathPaginator, never>;
|
|
650
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<NathPaginator, "nath-paginator", never, { "page": { "alias": "page"; "required": false; "isSignal": true; }; "pageSize": { "alias": "pageSize"; "required": false; "isSignal": true; }; "totalItems": { "alias": "totalItems"; "required": true; "isSignal": true; }; "pageSizeOptions": { "alias": "pageSizeOptions"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; }, { "page": "pageChange"; "pageSize": "pageSizeChange"; "paginatorChange": "paginatorChange"; }, never, never, true, never>;
|
|
651
|
+
}
|
|
652
|
+
|
|
653
|
+
type TrackByFnOrKey = string | ((item: any) => any);
|
|
654
|
+
declare class NathPaginatedView {
|
|
655
|
+
page: _angular_core.ModelSignal<number>;
|
|
656
|
+
pageSize: _angular_core.ModelSignal<number>;
|
|
657
|
+
selectedItems: _angular_core.ModelSignal<any[]>;
|
|
658
|
+
mode: _angular_core.InputSignal<"client" | "server">;
|
|
659
|
+
items: _angular_core.InputSignal<any[]>;
|
|
660
|
+
totalItems: _angular_core.InputSignal<number | null>;
|
|
661
|
+
pageSizeOptions: _angular_core.InputSignal<number[]>;
|
|
662
|
+
disabled: _angular_core.InputSignal<boolean>;
|
|
663
|
+
showBottomPaginator: _angular_core.InputSignal<boolean>;
|
|
664
|
+
emptyMessage: _angular_core.InputSignal<string>;
|
|
665
|
+
loading: _angular_core.InputSignal<boolean>;
|
|
666
|
+
headerClass: _angular_core.InputSignal<string>;
|
|
667
|
+
persistSelection: _angular_core.InputSignal<boolean>;
|
|
668
|
+
trackBy: _angular_core.InputSignal<TrackByFnOrKey>;
|
|
669
|
+
paginatorChange: _angular_core.OutputEmitterRef<PaginatorChangeEvent>;
|
|
670
|
+
expandedItems: _angular_core.WritableSignal<any[]>;
|
|
671
|
+
constructor();
|
|
672
|
+
private readonly isPersistenceEnabled;
|
|
673
|
+
private readonly getItemId;
|
|
674
|
+
resolvedTotalItems: _angular_core.Signal<number>;
|
|
675
|
+
viewableItems: _angular_core.Signal<any[]>;
|
|
676
|
+
selectionContext: _angular_core.Signal<{
|
|
677
|
+
isSelected: (item: any) => boolean;
|
|
678
|
+
isAllSelected: boolean;
|
|
679
|
+
isSomeSelected: boolean;
|
|
680
|
+
toggle: (item: any) => void;
|
|
681
|
+
toggleAll: () => void;
|
|
682
|
+
}>;
|
|
683
|
+
expansionContext: _angular_core.Signal<{
|
|
684
|
+
isExpanded: (item: any) => boolean;
|
|
685
|
+
isAllExpanded: boolean;
|
|
686
|
+
isSomeExpanded: boolean;
|
|
687
|
+
toggle: (item: any) => void;
|
|
688
|
+
toggleAll: () => void;
|
|
689
|
+
}>;
|
|
690
|
+
contentTpl: _angular_core.Signal<TemplateRef<{
|
|
691
|
+
$implicit: any[];
|
|
692
|
+
selection: any;
|
|
693
|
+
expansion: any;
|
|
694
|
+
}> | undefined>;
|
|
695
|
+
paginatorLeftTpl: _angular_core.Signal<TemplateRef<any> | undefined>;
|
|
696
|
+
private toggleSelection;
|
|
697
|
+
private toggleAllSelectionWhenAllSelected;
|
|
698
|
+
private toggleAllSelectionWhenNotAllSelected;
|
|
699
|
+
private toggleExpansion;
|
|
700
|
+
private toggleAllExpansionWhenAllExpanded;
|
|
701
|
+
private toggleAllExpansionWhenNotAllExpanded;
|
|
702
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<NathPaginatedView, never>;
|
|
703
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<NathPaginatedView, "nath-paginated-view", never, { "page": { "alias": "page"; "required": true; "isSignal": true; }; "pageSize": { "alias": "pageSize"; "required": false; "isSignal": true; }; "selectedItems": { "alias": "selectedItems"; "required": false; "isSignal": true; }; "mode": { "alias": "mode"; "required": false; "isSignal": true; }; "items": { "alias": "items"; "required": true; "isSignal": true; }; "totalItems": { "alias": "totalItems"; "required": false; "isSignal": true; }; "pageSizeOptions": { "alias": "pageSizeOptions"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "showBottomPaginator": { "alias": "showBottomPaginator"; "required": false; "isSignal": true; }; "emptyMessage": { "alias": "emptyMessage"; "required": false; "isSignal": true; }; "loading": { "alias": "loading"; "required": false; "isSignal": true; }; "headerClass": { "alias": "headerClass"; "required": false; "isSignal": true; }; "persistSelection": { "alias": "persistSelection"; "required": false; "isSignal": true; }; "trackBy": { "alias": "trackBy"; "required": false; "isSignal": true; }; }, { "page": "pageChange"; "pageSize": "pageSizeChange"; "selectedItems": "selectedItemsChange"; "paginatorChange": "paginatorChange"; }, ["contentTpl", "paginatorLeftTpl"], never, true, never>;
|
|
704
|
+
}
|
|
705
|
+
|
|
706
|
+
declare class NathPanel {
|
|
707
|
+
header: _angular_core.InputSignal<string>;
|
|
708
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<NathPanel, never>;
|
|
709
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<NathPanel, "nath-panel", never, { "header": { "alias": "header"; "required": false; "isSignal": true; }; }, {}, never, ["[header]", "*"], true, never>;
|
|
710
|
+
}
|
|
711
|
+
|
|
712
|
+
declare class NathPickList {
|
|
713
|
+
source: _angular_core.ModelSignal<any[]>;
|
|
714
|
+
target: _angular_core.ModelSignal<any[]>;
|
|
715
|
+
sourceHeader: _angular_core.InputSignal<string>;
|
|
716
|
+
targetHeader: _angular_core.InputSignal<string>;
|
|
717
|
+
filter: _angular_core.InputSignal<boolean>;
|
|
718
|
+
filterPlaceholder: _angular_core.InputSignal<string>;
|
|
719
|
+
emptyMessage: _angular_core.InputSignal<string>;
|
|
720
|
+
displayWith: _angular_core.InputSignal<string | ((item: any) => string)>;
|
|
721
|
+
valueWith: _angular_core.InputSignal<string | ((item: any) => any)>;
|
|
722
|
+
itemTemplate: _angular_core.Signal<TemplateRef<any> | undefined>;
|
|
723
|
+
sourceQuery: _angular_core.WritableSignal<string>;
|
|
724
|
+
targetQuery: _angular_core.WritableSignal<string>;
|
|
725
|
+
selectedSource: _angular_core.WritableSignal<any[]>;
|
|
726
|
+
selectedTarget: _angular_core.WritableSignal<any[]>;
|
|
727
|
+
draggedItem: _angular_core.WritableSignal<any>;
|
|
728
|
+
displayFn: _angular_core.Signal<(item: any) => any>;
|
|
729
|
+
valueFn: _angular_core.Signal<(item: any) => any>;
|
|
730
|
+
filteredSource: _angular_core.Signal<any[]>;
|
|
731
|
+
filteredTarget: _angular_core.Signal<any[]>;
|
|
732
|
+
onDragStart(event: DragEvent, item: any, pool: 'source' | 'target'): void;
|
|
733
|
+
allowDragOver(event: DragEvent): void;
|
|
734
|
+
onDrop(event: DragEvent, dropPool: 'source' | 'target'): void;
|
|
735
|
+
isDragging(item: any, pool: 'source' | 'target'): boolean;
|
|
736
|
+
toggleSelection(event: MouseEvent, item: any, pool: 'source' | 'target'): void;
|
|
737
|
+
isItemSelected(item: any, pool: 'source' | 'target'): boolean;
|
|
738
|
+
moveItems(itemsToMove: any[], destination: 'source' | 'target'): void;
|
|
739
|
+
moveSelectedToTarget(): void;
|
|
740
|
+
moveSelectedToSource(): void;
|
|
741
|
+
moveAllToTarget(): void;
|
|
742
|
+
moveAllToSource(): void;
|
|
743
|
+
trackByFn(index: number, item: any): any;
|
|
744
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<NathPickList, never>;
|
|
745
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<NathPickList, "nath-pick-list", never, { "source": { "alias": "source"; "required": false; "isSignal": true; }; "target": { "alias": "target"; "required": false; "isSignal": true; }; "sourceHeader": { "alias": "sourceHeader"; "required": false; "isSignal": true; }; "targetHeader": { "alias": "targetHeader"; "required": false; "isSignal": true; }; "filter": { "alias": "filter"; "required": false; "isSignal": true; }; "filterPlaceholder": { "alias": "filterPlaceholder"; "required": false; "isSignal": true; }; "emptyMessage": { "alias": "emptyMessage"; "required": false; "isSignal": true; }; "displayWith": { "alias": "displayWith"; "required": false; "isSignal": true; }; "valueWith": { "alias": "valueWith"; "required": false; "isSignal": true; }; }, { "source": "sourceChange"; "target": "targetChange"; }, ["itemTemplate"], never, true, never>;
|
|
746
|
+
}
|
|
747
|
+
|
|
748
|
+
declare class NathProgressBar {
|
|
749
|
+
value: _angular_core.InputSignal<number>;
|
|
750
|
+
maxValue: _angular_core.InputSignal<number>;
|
|
751
|
+
showValue: _angular_core.InputSignal<boolean>;
|
|
752
|
+
barClass: _angular_core.InputSignal<string>;
|
|
753
|
+
valueClass: _angular_core.InputSignal<string>;
|
|
754
|
+
mode: _angular_core.InputSignal<"indeterminate" | "default">;
|
|
755
|
+
barWidthPercent: _angular_core.Signal<number>;
|
|
756
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<NathProgressBar, never>;
|
|
757
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<NathProgressBar, "nath-progress-bar", never, { "value": { "alias": "value"; "required": false; "isSignal": true; }; "maxValue": { "alias": "maxValue"; "required": false; "isSignal": true; }; "showValue": { "alias": "showValue"; "required": false; "isSignal": true; }; "barClass": { "alias": "barClass"; "required": false; "isSignal": true; }; "valueClass": { "alias": "valueClass"; "required": false; "isSignal": true; }; "mode": { "alias": "mode"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
758
|
+
}
|
|
759
|
+
|
|
760
|
+
declare class NathProgressCircle {
|
|
761
|
+
readonly percent: _angular_core.ModelSignal<number>;
|
|
762
|
+
readonly size: _angular_core.InputSignal<number>;
|
|
763
|
+
readonly showText: _angular_core.InputSignal<boolean>;
|
|
764
|
+
readonly strikeDashArrayRatio = 2.8274;
|
|
765
|
+
readonly barStrokeDashOffset: _angular_core.Signal<number>;
|
|
766
|
+
readonly percentText: _angular_core.Signal<string>;
|
|
767
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<NathProgressCircle, never>;
|
|
768
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<NathProgressCircle, "nath-progress-circle", never, { "percent": { "alias": "percent"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "showText": { "alias": "showText"; "required": false; "isSignal": true; }; }, { "percent": "percentChange"; }, never, never, true, never>;
|
|
769
|
+
}
|
|
770
|
+
|
|
771
|
+
interface RadioOption {
|
|
772
|
+
label: string;
|
|
773
|
+
value: any;
|
|
774
|
+
}
|
|
775
|
+
declare class NathRadioButtonGroup implements FormValueControl<any> {
|
|
776
|
+
options: _angular_core.InputSignal<any[]>;
|
|
777
|
+
stack: _angular_core.InputSignal<"horizontal" | "vertical">;
|
|
778
|
+
deselectable: _angular_core.InputSignal<boolean>;
|
|
779
|
+
fill: _angular_core.InputSignal<boolean>;
|
|
780
|
+
displayWith: _angular_core.InputSignal<string | ((item: any) => string)>;
|
|
781
|
+
valueWith: _angular_core.InputSignal<string | ((item: any) => any)>;
|
|
782
|
+
disabled: _angular_core.InputSignal<boolean>;
|
|
783
|
+
readonly value: _angular_core.ModelSignal<any>;
|
|
784
|
+
displayFn: Signal<(item: any) => any>;
|
|
785
|
+
valueFn: Signal<(item: any) => any>;
|
|
786
|
+
formattedOptions: Signal<RadioOption[]>;
|
|
787
|
+
readonly layoutClass: Signal<"" | "flex-1" | "w-full">;
|
|
788
|
+
selectOption(selectedValue: any): void;
|
|
789
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<NathRadioButtonGroup, never>;
|
|
790
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<NathRadioButtonGroup, "nath-radio-button-group", never, { "options": { "alias": "options"; "required": true; "isSignal": true; }; "stack": { "alias": "stack"; "required": false; "isSignal": true; }; "deselectable": { "alias": "deselectable"; "required": false; "isSignal": true; }; "fill": { "alias": "fill"; "required": false; "isSignal": true; }; "displayWith": { "alias": "displayWith"; "required": false; "isSignal": true; }; "valueWith": { "alias": "valueWith"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; }, { "value": "valueChange"; }, never, never, true, never>;
|
|
791
|
+
}
|
|
792
|
+
|
|
793
|
+
declare const RATING_MAP: {
|
|
794
|
+
value: number;
|
|
795
|
+
colorVar: string;
|
|
796
|
+
}[];
|
|
797
|
+
/**
|
|
798
|
+
* @param percent Rating on 100 basis
|
|
799
|
+
*/
|
|
800
|
+
declare function getRatingColor(percent: number): string | null;
|
|
801
|
+
|
|
802
|
+
declare class NathRatingHeart {
|
|
803
|
+
readonly percent: _angular_core.ModelSignal<number>;
|
|
804
|
+
readonly size: _angular_core.InputSignal<number>;
|
|
805
|
+
readonly showText: _angular_core.InputSignal<boolean>;
|
|
806
|
+
readonly borderColor: _angular_core.InputSignal<string | undefined>;
|
|
807
|
+
readonly ratingColorFn: _angular_core.InputSignal<(percent: number) => string | null>;
|
|
808
|
+
readonly barColor: _angular_core.Signal<string | null>;
|
|
809
|
+
readonly fillGradient: _angular_core.Signal<string>;
|
|
810
|
+
readonly percentText: _angular_core.Signal<string>;
|
|
811
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<NathRatingHeart, never>;
|
|
812
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<NathRatingHeart, "nath-rating-heart", never, { "percent": { "alias": "percent"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "showText": { "alias": "showText"; "required": false; "isSignal": true; }; "borderColor": { "alias": "borderColor"; "required": false; "isSignal": true; }; "ratingColorFn": { "alias": "ratingColorFn"; "required": false; "isSignal": true; }; }, { "percent": "percentChange"; }, never, never, true, never>;
|
|
813
|
+
}
|
|
814
|
+
|
|
815
|
+
declare class NathRatingInput implements FormValueControl<number | null> {
|
|
816
|
+
readonly value: _angular_core.ModelSignal<number | null>;
|
|
817
|
+
readonly disabled: _angular_core.InputSignal<boolean>;
|
|
818
|
+
readonly readonly: _angular_core.InputSignal<boolean>;
|
|
819
|
+
readonly touched: _angular_core.ModelSignal<boolean>;
|
|
820
|
+
readonly max: _angular_core.InputSignal<number | undefined>;
|
|
821
|
+
readonly ratingColorFn: _angular_core.InputSignal<(percent: number) => string | null>;
|
|
822
|
+
readonly customTemplate: _angular_core.Signal<TemplateRef<{
|
|
823
|
+
$implicit: number;
|
|
824
|
+
active: boolean;
|
|
825
|
+
}> | undefined>;
|
|
826
|
+
private readonly hoverValue;
|
|
827
|
+
protected readonly starsArray: _angular_core.Signal<number[]>;
|
|
828
|
+
protected readonly displayValue: _angular_core.Signal<number>;
|
|
829
|
+
activeColor: _angular_core.Signal<string | null>;
|
|
830
|
+
protected setPreview(star: number): void;
|
|
831
|
+
protected clearPreview(): void;
|
|
832
|
+
protected selectValue(star: number): void;
|
|
833
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<NathRatingInput, never>;
|
|
834
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<NathRatingInput, "nath-rating-input", never, { "value": { "alias": "value"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "readonly": { "alias": "readonly"; "required": false; "isSignal": true; }; "touched": { "alias": "touched"; "required": false; "isSignal": true; }; "max": { "alias": "max"; "required": false; "isSignal": true; }; "ratingColorFn": { "alias": "ratingColorFn"; "required": false; "isSignal": true; }; }, { "value": "valueChange"; "touched": "touchedChange"; }, ["customTemplate"], never, true, never>;
|
|
835
|
+
}
|
|
836
|
+
|
|
837
|
+
declare class NathSelect implements FormValueControl<any> {
|
|
838
|
+
protected readonly elementRef: ElementRef<any>;
|
|
839
|
+
private readonly uniqueId;
|
|
840
|
+
value: _angular_core.ModelSignal<any>;
|
|
841
|
+
options: _angular_core.InputSignal<any[]>;
|
|
842
|
+
placeholder: _angular_core.InputSignalWithTransform<string, string | null | undefined>;
|
|
843
|
+
displayWith: _angular_core.InputSignal<string | ((item: any) => string)>;
|
|
844
|
+
valueWith: _angular_core.InputSignal<string | ((item: any) => any)>;
|
|
845
|
+
inputId: _angular_core.InputSignal<string>;
|
|
846
|
+
emptyMessage: _angular_core.InputSignal<string>;
|
|
847
|
+
showClear: _angular_core.InputSignal<boolean>;
|
|
848
|
+
delay: _angular_core.InputSignal<number>;
|
|
849
|
+
minQueryLength: _angular_core.InputSignal<number>;
|
|
850
|
+
borderless: _angular_core.InputSignal<boolean>;
|
|
851
|
+
filter: _angular_core.InputSignal<boolean>;
|
|
852
|
+
virtualScroll: _angular_core.InputSignal<boolean>;
|
|
853
|
+
virtualScrollItemSize: _angular_core.InputSignal<number>;
|
|
854
|
+
comboboxClass: _angular_core.InputSignal<string>;
|
|
855
|
+
ariaLabelledBy: _angular_core.InputSignal<string>;
|
|
856
|
+
debouncedQueryChange: _angular_core.OutputEmitterRef<string>;
|
|
857
|
+
cleared: _angular_core.OutputEmitterRef<void>;
|
|
858
|
+
unselected: _angular_core.OutputEmitterRef<any>;
|
|
859
|
+
query: _angular_core.WritableSignal<string>;
|
|
860
|
+
itemTemplate: _angular_core.Signal<TemplateRef<any> | undefined>;
|
|
861
|
+
selectedItemTemplate: _angular_core.Signal<TemplateRef<any> | undefined>;
|
|
862
|
+
inputField: _angular_core.Signal<ElementRef<HTMLInputElement> | undefined>;
|
|
863
|
+
container: _angular_core.Signal<ElementRef<HTMLDivElement> | undefined>;
|
|
864
|
+
viewport: _angular_core.Signal<CdkVirtualScrollViewport | undefined>;
|
|
865
|
+
inputValue: _angular_core.WritableSignal<string>;
|
|
866
|
+
isOpen: _angular_core.WritableSignal<boolean>;
|
|
867
|
+
activeTrackedIndex: _angular_core.WritableSignal<number>;
|
|
868
|
+
private watchKeydownSubscription?;
|
|
869
|
+
controlId: _angular_core.Signal<string>;
|
|
870
|
+
listboxId: _angular_core.Signal<string>;
|
|
871
|
+
optionIdPrefix: _angular_core.Signal<string>;
|
|
872
|
+
displayFn: _angular_core.Signal<(item: any) => any>;
|
|
873
|
+
selectedItem: _angular_core.Signal<any>;
|
|
874
|
+
selectedItemDisplay: _angular_core.Signal<any>;
|
|
875
|
+
valueFn: _angular_core.Signal<(item: any) => any>;
|
|
876
|
+
filteredOptions: _angular_core.Signal<any[]>;
|
|
877
|
+
showClearButton: _angular_core.Signal<boolean>;
|
|
878
|
+
constructor();
|
|
879
|
+
private watchKeydown;
|
|
880
|
+
private stopWatchKeydown;
|
|
881
|
+
onInputChange(event: Event): void;
|
|
882
|
+
selectItem(item: any): void;
|
|
883
|
+
hideDropdown(): void;
|
|
884
|
+
resetFilter(): void;
|
|
885
|
+
toggle(): void;
|
|
886
|
+
onHostKeyDown(event: KeyboardEvent): void;
|
|
887
|
+
onKeyDown(event: KeyboardEvent): void;
|
|
888
|
+
clear(): void;
|
|
889
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<NathSelect, never>;
|
|
890
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<NathSelect, "nath-select", never, { "value": { "alias": "value"; "required": false; "isSignal": true; }; "options": { "alias": "options"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "displayWith": { "alias": "displayWith"; "required": false; "isSignal": true; }; "valueWith": { "alias": "valueWith"; "required": false; "isSignal": true; }; "inputId": { "alias": "inputId"; "required": false; "isSignal": true; }; "emptyMessage": { "alias": "emptyMessage"; "required": false; "isSignal": true; }; "showClear": { "alias": "showClear"; "required": false; "isSignal": true; }; "delay": { "alias": "delay"; "required": false; "isSignal": true; }; "minQueryLength": { "alias": "minQueryLength"; "required": false; "isSignal": true; }; "borderless": { "alias": "borderless"; "required": false; "isSignal": true; }; "filter": { "alias": "filter"; "required": false; "isSignal": true; }; "virtualScroll": { "alias": "virtualScroll"; "required": false; "isSignal": true; }; "virtualScrollItemSize": { "alias": "virtualScrollItemSize"; "required": false; "isSignal": true; }; "comboboxClass": { "alias": "comboboxClass"; "required": false; "isSignal": true; }; "ariaLabelledBy": { "alias": "ariaLabelledBy"; "required": false; "isSignal": true; }; }, { "value": "valueChange"; "debouncedQueryChange": "debouncedQueryChange"; "cleared": "cleared"; "unselected": "unselected"; }, ["itemTemplate", "selectedItemTemplate"], never, true, never>;
|
|
891
|
+
}
|
|
892
|
+
|
|
893
|
+
declare class NathSkeleton {
|
|
894
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<NathSkeleton, never>;
|
|
895
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<NathSkeleton, "nath-skeleton", never, {}, {}, never, never, true, never>;
|
|
896
|
+
}
|
|
897
|
+
|
|
898
|
+
type SliderValue = number | [number, number];
|
|
899
|
+
declare class NathSlider implements FormValueControl<number | number[] | null> {
|
|
900
|
+
trackElement: ElementRef<HTMLDivElement>;
|
|
901
|
+
mode: _angular_core.InputSignal<"range" | "single">;
|
|
902
|
+
minValue: _angular_core.InputSignal<number>;
|
|
903
|
+
maxValue: _angular_core.InputSignal<number>;
|
|
904
|
+
step: _angular_core.InputSignal<number>;
|
|
905
|
+
rangeBackground: _angular_core.InputSignal<string | null>;
|
|
906
|
+
ariaLabel: _angular_core.InputSignal<string>;
|
|
907
|
+
value: _angular_core.ModelSignal<number | number[] | null>;
|
|
908
|
+
protected value1: _angular_core.WritableSignal<number>;
|
|
909
|
+
protected value2: _angular_core.WritableSignal<number>;
|
|
910
|
+
protected activeHandle: _angular_core.WritableSignal<"thumb1" | "thumb2" | null>;
|
|
911
|
+
protected isDisabled: _angular_core.WritableSignal<boolean>;
|
|
912
|
+
constructor();
|
|
913
|
+
protected percent1: _angular_core.Signal<number>;
|
|
914
|
+
protected percent2: _angular_core.Signal<number>;
|
|
915
|
+
protected trackSelectionStyle: _angular_core.Signal<{
|
|
916
|
+
left: string;
|
|
917
|
+
width: string;
|
|
918
|
+
}>;
|
|
919
|
+
writeValue(value: SliderValue): void;
|
|
920
|
+
protected startDrag(event: MouseEvent | TouchEvent, thumb: 'thumb1' | 'thumb2'): void;
|
|
921
|
+
protected onMove(event: MouseEvent | TouchEvent): void;
|
|
922
|
+
protected endDrag(): void;
|
|
923
|
+
protected onTrackClick(event: MouseEvent | TouchEvent): void;
|
|
924
|
+
protected onKeyDown(event: KeyboardEvent, thumb: 'thumb1' | 'thumb2'): void;
|
|
925
|
+
private clamp;
|
|
926
|
+
private getPercent;
|
|
927
|
+
private getValueFromX;
|
|
928
|
+
private setValue;
|
|
929
|
+
private reorderValues;
|
|
930
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<NathSlider, never>;
|
|
931
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<NathSlider, "nath-slider", never, { "mode": { "alias": "mode"; "required": false; "isSignal": true; }; "minValue": { "alias": "minValue"; "required": false; "isSignal": true; }; "maxValue": { "alias": "maxValue"; "required": false; "isSignal": true; }; "step": { "alias": "step"; "required": false; "isSignal": true; }; "rangeBackground": { "alias": "rangeBackground"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; }, { "value": "valueChange"; }, never, never, true, never>;
|
|
932
|
+
}
|
|
933
|
+
|
|
934
|
+
declare enum ORDER {
|
|
935
|
+
ASC = "asc",
|
|
936
|
+
DESC = "desc"
|
|
937
|
+
}
|
|
938
|
+
|
|
939
|
+
declare class NathSortIcon {
|
|
940
|
+
readonly field: _angular_core.InputSignal<string>;
|
|
941
|
+
readonly sortField: _angular_core.InputSignal<string>;
|
|
942
|
+
readonly sortOrder: _angular_core.InputSignal<ORDER>;
|
|
943
|
+
readonly sortType: _angular_core.InputSignal<"boolean" | "any" | "numeric" | "alpha">;
|
|
944
|
+
icon: _angular_core.Signal<LucideIcon | null>;
|
|
945
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<NathSortIcon, never>;
|
|
946
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<NathSortIcon, "nath-sort-icon", never, { "field": { "alias": "field"; "required": true; "isSignal": true; }; "sortField": { "alias": "sortField"; "required": true; "isSignal": true; }; "sortOrder": { "alias": "sortOrder"; "required": true; "isSignal": true; }; "sortType": { "alias": "sortType"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
947
|
+
}
|
|
948
|
+
|
|
949
|
+
declare class NathSplitButton {
|
|
950
|
+
menu: _angular_core.InputSignal<MenuItem[]>;
|
|
951
|
+
buttonClass: _angular_core.InputSignal<string>;
|
|
952
|
+
disabled: _angular_core.InputSignal<boolean>;
|
|
953
|
+
positionX: _angular_core.InputSignal<NathMenuPositionX>;
|
|
954
|
+
positionY: _angular_core.InputSignal<NathMenuPositionY>;
|
|
955
|
+
buttonClick: _angular_core.OutputEmitterRef<MouseEvent>;
|
|
956
|
+
tieredMenuComponent: _angular_core.Signal<NathMenu | undefined>;
|
|
957
|
+
protected openMenu(event: PointerEvent): void;
|
|
958
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<NathSplitButton, never>;
|
|
959
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<NathSplitButton, "nath-split-button", never, { "menu": { "alias": "menu"; "required": true; "isSignal": true; }; "buttonClass": { "alias": "buttonClass"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "positionX": { "alias": "positionX"; "required": false; "isSignal": true; }; "positionY": { "alias": "positionY"; "required": false; "isSignal": true; }; }, { "buttonClick": "buttonClick"; }, never, ["*"], true, never>;
|
|
960
|
+
}
|
|
961
|
+
|
|
962
|
+
declare class TabDirective {
|
|
963
|
+
readonly templateRef: TemplateRef<any>;
|
|
964
|
+
tabTitle: _angular_core.InputSignal<string>;
|
|
965
|
+
disabled: _angular_core.InputSignalWithTransform<boolean, boolean>;
|
|
966
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<TabDirective, never>;
|
|
967
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<TabDirective, "[appTab]", never, { "tabTitle": { "alias": "appTab"; "required": true; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
968
|
+
}
|
|
969
|
+
|
|
970
|
+
declare class TabPanelDirective {
|
|
971
|
+
readonly templateRef: TemplateRef<any>;
|
|
972
|
+
tabTitle: _angular_core.InputSignal<string>;
|
|
973
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<TabPanelDirective, never>;
|
|
974
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<TabPanelDirective, "[appTabPanel]", never, { "tabTitle": { "alias": "appTabPanel"; "required": true; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
975
|
+
}
|
|
976
|
+
|
|
977
|
+
declare class NathTabs {
|
|
978
|
+
activeTab: _angular_core.ModelSignal<string>;
|
|
979
|
+
orientation: _angular_core.InputSignal<"horizontal" | "vertical">;
|
|
980
|
+
tabClass: _angular_core.InputSignal<string>;
|
|
981
|
+
tabPanelClass: _angular_core.InputSignal<string>;
|
|
982
|
+
slidingWindowClass: _angular_core.InputSignal<string>;
|
|
983
|
+
tabs: _angular_core.Signal<readonly TabDirective[]>;
|
|
984
|
+
tabPanels: _angular_core.Signal<readonly TabPanelDirective[]>;
|
|
985
|
+
activeTabIndex: _angular_core.Signal<number>;
|
|
986
|
+
totalTabs: _angular_core.Signal<number>;
|
|
987
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<NathTabs, never>;
|
|
988
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<NathTabs, "nath-tabs", never, { "activeTab": { "alias": "activeTab"; "required": true; "isSignal": true; }; "orientation": { "alias": "orientation"; "required": false; "isSignal": true; }; "tabClass": { "alias": "tabClass"; "required": false; "isSignal": true; }; "tabPanelClass": { "alias": "tabPanelClass"; "required": false; "isSignal": true; }; "slidingWindowClass": { "alias": "slidingWindowClass"; "required": false; "isSignal": true; }; }, { "activeTab": "activeTabChange"; }, ["tabs", "tabPanels"], never, true, never>;
|
|
989
|
+
}
|
|
990
|
+
|
|
991
|
+
declare const DARK_THEME_CLASS = "dark";
|
|
992
|
+
interface ThemeConfig {
|
|
993
|
+
localStorageThemeKey: string;
|
|
994
|
+
}
|
|
995
|
+
declare const THEME_CONFIG: InjectionToken<ThemeConfig>;
|
|
996
|
+
declare function provideThemeConfig(config: ThemeConfig): StaticProvider;
|
|
997
|
+
declare class ThemeService {
|
|
998
|
+
config: ThemeConfig;
|
|
999
|
+
isDarkMode: _angular_core.WritableSignal<boolean>;
|
|
1000
|
+
constructor();
|
|
1001
|
+
private get isSystemDarkTheme();
|
|
1002
|
+
private watchFocus;
|
|
1003
|
+
loadTheme(): void;
|
|
1004
|
+
setTheme(theme: string): void;
|
|
1005
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<ThemeService, never>;
|
|
1006
|
+
static ɵprov: _angular_core.ɵɵInjectableDeclaration<ThemeService>;
|
|
1007
|
+
}
|
|
1008
|
+
|
|
1009
|
+
declare class NathThemeSwitch {
|
|
1010
|
+
protected readonly themeService: ThemeService;
|
|
1011
|
+
protected readonly config: nath_angular_ui.ThemeConfig;
|
|
1012
|
+
lightText: _angular_core.InputSignal<string>;
|
|
1013
|
+
darkText: _angular_core.InputSignal<string>;
|
|
1014
|
+
systemText: _angular_core.InputSignal<string>;
|
|
1015
|
+
switchTooltip: _angular_core.InputSignal<string>;
|
|
1016
|
+
themes: MenuItem[];
|
|
1017
|
+
protected readonly LucideMoon: typeof LucideMoon;
|
|
1018
|
+
protected readonly LucideSun: typeof LucideSun;
|
|
1019
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<NathThemeSwitch, never>;
|
|
1020
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<NathThemeSwitch, "nath-theme-switch", never, { "lightText": { "alias": "lightText"; "required": false; "isSignal": true; }; "darkText": { "alias": "darkText"; "required": false; "isSignal": true; }; "systemText": { "alias": "systemText"; "required": false; "isSignal": true; }; "switchTooltip": { "alias": "switchTooltip"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
1021
|
+
}
|
|
1022
|
+
|
|
1023
|
+
type NathToastType = 'success' | 'error' | 'info' | 'warning';
|
|
1024
|
+
type NathToastPosition = 'top-left' | 'top-right' | 'bottom-left' | 'bottom-right' | 'top-center' | 'bottom-center';
|
|
1025
|
+
interface Toast {
|
|
1026
|
+
id: string;
|
|
1027
|
+
message: string;
|
|
1028
|
+
type: NathToastType;
|
|
1029
|
+
duration?: number;
|
|
1030
|
+
position?: NathToastPosition;
|
|
1031
|
+
}
|
|
1032
|
+
declare class ToastService {
|
|
1033
|
+
private readonly toastsSignal;
|
|
1034
|
+
toasts: _angular_core.Signal<Toast[]>;
|
|
1035
|
+
show(message: string, type?: NathToastType, duration?: number, position?: NathToastPosition): void;
|
|
1036
|
+
dismiss(id: string): void;
|
|
1037
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<ToastService, never>;
|
|
1038
|
+
static ɵprov: _angular_core.ɵɵInjectableDeclaration<ToastService>;
|
|
1039
|
+
}
|
|
1040
|
+
|
|
1041
|
+
declare class NathToastContainer {
|
|
1042
|
+
toastService: ToastService;
|
|
1043
|
+
sanitizer: DomSanitizer;
|
|
1044
|
+
position: _angular_core.InputSignal<NathToastPosition>;
|
|
1045
|
+
groupedToasts: _angular_core.Signal<Record<string, nath_angular_ui.Toast[]>>;
|
|
1046
|
+
getContainerClasses(position: string | number): string;
|
|
1047
|
+
getToastClasses(type: NathToastType): string;
|
|
1048
|
+
/**
|
|
1049
|
+
* Insert line break opportunities into a URL
|
|
1050
|
+
*/
|
|
1051
|
+
formatUrl(url: string): string | null;
|
|
1052
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<NathToastContainer, never>;
|
|
1053
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<NathToastContainer, "nath-toast-container", never, { "position": { "alias": "position"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
1054
|
+
}
|
|
1055
|
+
|
|
1056
|
+
declare class NathToc {
|
|
1057
|
+
readonly level: _angular_core.InputSignal<number>;
|
|
1058
|
+
readonly container: _angular_core.InputSignal<HTMLDivElement | undefined>;
|
|
1059
|
+
readonly containerSelector: _angular_core.InputSignal<string>;
|
|
1060
|
+
readonly scrollContainerSelector: _angular_core.InputSignal<string>;
|
|
1061
|
+
readonly offset: _angular_core.InputSignal<number>;
|
|
1062
|
+
protected readonly tocSections: _angular_core.WritableSignal<{
|
|
1063
|
+
id: string;
|
|
1064
|
+
label: string;
|
|
1065
|
+
}[]>;
|
|
1066
|
+
scrollContainer: Signal<Element | typeof globalThis>;
|
|
1067
|
+
constructor();
|
|
1068
|
+
scrollToSection(id: string): void;
|
|
1069
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<NathToc, never>;
|
|
1070
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<NathToc, "nath-toc", never, { "level": { "alias": "level"; "required": false; "isSignal": true; }; "container": { "alias": "container"; "required": false; "isSignal": true; }; "containerSelector": { "alias": "containerSelector"; "required": false; "isSignal": true; }; "scrollContainerSelector": { "alias": "scrollContainerSelector"; "required": false; "isSignal": true; }; "offset": { "alias": "offset"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
1071
|
+
}
|
|
1072
|
+
|
|
1073
|
+
interface SelectItem<T = any> {
|
|
1074
|
+
value: T;
|
|
1075
|
+
label: string;
|
|
1076
|
+
styleClass?: string;
|
|
1077
|
+
}
|
|
1078
|
+
|
|
1079
|
+
declare const validateAllFormFields: (formGroup: FormGroup) => void;
|
|
1080
|
+
declare function hasRequiredValidator(control: AbstractControl | null): boolean;
|
|
1081
|
+
declare function isRequired(fieldState: FieldState<any, any> | null): boolean;
|
|
1082
|
+
|
|
1083
|
+
declare function next(el: Element, selector?: string): Element | null;
|
|
1084
|
+
|
|
1085
|
+
declare const isTruthy: <T>(x: T | undefined | null) => x is T;
|
|
1086
|
+
|
|
1087
|
+
declare const rangeMinMax: (range: number[] | undefined, min: number | undefined, max: number | undefined) => boolean;
|
|
1088
|
+
|
|
1089
|
+
declare const rangeNotMinMax: (range: number[] | undefined, min: number | undefined, max: number | undefined) => boolean;
|
|
1090
|
+
|
|
1091
|
+
declare function isSortOrderValid(order: string): boolean;
|
|
1092
|
+
|
|
1093
|
+
export { BreadcrumbService, ConfirmationService, DARK_THEME_CLASS, DIALOG_DATA, DialogRef, DialogService, NathAutocomplete, NathBooleanControl, NathBreadcrumbs, NathConfirmationDialog, NathDatepicker, NathDialogContainer, NathDrawer, NathFileUpload, NathFloatingLabel, NathFormField, NathImagePreview, NathMenu, NathMenuList, NathMultiselect, NathPaginatedView, NathPaginator, NathPanel, NathPickList, NathProgressBar, NathProgressCircle, NathRadioButtonGroup, NathRatingHeart, NathRatingInput, NathSelect, NathSkeleton, NathSlider, NathSortIcon, NathSplitButton, NathTabs, NathThemeSwitch, NathToastContainer, NathToc, ORDER, RATING_MAP, THEME_CONFIG, TabDirective, TabPanelDirective, ThemeService, ToastService, getRatingColor, hasRequiredValidator, isRequired, isSortOrderValid, isTruthy, next, provideThemeConfig, rangeMinMax, rangeNotMinMax, validateAllFormFields };
|
|
1094
|
+
export type { BooleanDisplayMode, Breadcrumb, ConfirmationButton, ConfirmationConfig, DialogConfig, MenuItem, NathMenuPositionX, NathMenuPositionY, NathToastPosition, NathToastType, PaginatorChangeEvent, RadioOption, SelectItem, SliderValue, ThemeConfig, Toast, TrackByFnOrKey, TristateValue };
|