@ngflux/ngflux 2.1.0 → 2.2.0
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/ngflux-ngflux.mjs +846 -59
- package/fesm2022/ngflux-ngflux.mjs.map +1 -1
- package/lib/components/actions/actions.component.scss +13 -0
- package/lib/components/frame/frame.component.scss +228 -0
- package/lib/components/frame/header-menu/header-menu.component.scss +102 -0
- package/lib/components/frame/side-menu/side-menu.component.scss +83 -0
- package/lib/components/input/pin/pin.component.scss +38 -0
- package/lib/components/input/select/items/items.component.scss +73 -0
- package/lib/components/input/select/select.component.scss +149 -0
- package/lib/components/tab/group/group.component.scss +3 -0
- package/lib/components/tab/navbar/navbar.component.scss +10 -0
- package/lib/components/tab/panel/panel.component.scss +3 -0
- package/lib/components/tab/tab.component.scss +3 -0
- package/package.json +1 -1
- package/scss/features/_index.scss +1 -0
- package/scss/features/icons.scss +34 -0
- package/scss/features/tab.scss +31 -0
- package/types/ngflux-ngflux.d.ts +224 -9
package/scss/features/icons.scss
CHANGED
|
@@ -22,6 +22,40 @@
|
|
|
22
22
|
&.search::before { content: "\e8b6"; }
|
|
23
23
|
&.close::before { content: "\e5cd"; }
|
|
24
24
|
|
|
25
|
+
&.arrow-drop-down::before { content: "\e5c5"; }
|
|
26
|
+
&.arrow-drop-up::before { content: "\e5c7"; }
|
|
27
|
+
|
|
28
|
+
&.unfold-more::before { content: "\e5d7"; }
|
|
29
|
+
&.unfold-less::before { content: "\e5d6"; }
|
|
30
|
+
|
|
25
31
|
&.chevron-left::before { content: "\e5cb"; }
|
|
26
32
|
&.chevron-right::before { content: "\e5cc"; }
|
|
33
|
+
|
|
34
|
+
&.add::before { content: "\e145"; }
|
|
35
|
+
&.edit::before { content: "\e3c9"; }
|
|
36
|
+
&.eye::before { content: "\e8f4"; }
|
|
37
|
+
&.trash::before { content: "\e872"; }
|
|
38
|
+
&.refresh::before { content: "\e5d5"; }
|
|
39
|
+
&.close::before { content: "\e5cd"; }
|
|
40
|
+
&.filter::before { content: "\ef4f"; }
|
|
41
|
+
&.upgrade::before { content: "\f0fb"; }
|
|
42
|
+
&.download::before { content: "\f090"; }
|
|
43
|
+
&.upload::before { content: "\f09b"; }
|
|
44
|
+
|
|
45
|
+
&.heart::before { content: "\e87d"; }
|
|
46
|
+
&.heart-plus::before { content: "\f884"; }
|
|
47
|
+
&.heart-minus::before { content: "\f883"; }
|
|
48
|
+
&.heart-check::before { content: "\f60a"; }
|
|
49
|
+
|
|
50
|
+
&.cart::before { content: "\e8cc"; }
|
|
51
|
+
&.cart-plus::before { content: "\e854"; }
|
|
52
|
+
&.cart-minus::before { content: "\e928"; }
|
|
53
|
+
&.cart-checkout::before { content: "\eb88"; }
|
|
54
|
+
&.cart-off::before { content: "\f4f7"; }
|
|
55
|
+
|
|
56
|
+
&.arrow-up::before { content: "\e986"; }
|
|
57
|
+
&.arrow-down::before { content: "\e984"; }
|
|
58
|
+
|
|
59
|
+
&.arrow-left::before { content: "\ef7d"; }
|
|
60
|
+
&.arrow-right::before { content: "\e941"; }
|
|
27
61
|
}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
.ngf-tab-nav {
|
|
2
|
+
display: block;
|
|
3
|
+
padding: 10px 30px;
|
|
4
|
+
background-color: var(--background-color) !important;
|
|
5
|
+
color: var(--color) !important;
|
|
6
|
+
text-decoration: none !important;
|
|
7
|
+
cursor: pointer;
|
|
8
|
+
|
|
9
|
+
--color: #333;
|
|
10
|
+
--background-color: #FFF;
|
|
11
|
+
|
|
12
|
+
&:hover {
|
|
13
|
+
--background-color: rgba(var(--ngf-primary-rgb), .1);
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
&.active {
|
|
17
|
+
position: relative;
|
|
18
|
+
|
|
19
|
+
--color: var(--ngf-primary);
|
|
20
|
+
|
|
21
|
+
&::before {
|
|
22
|
+
display: block;
|
|
23
|
+
position: absolute;
|
|
24
|
+
inset: auto 0px -1px 0px;
|
|
25
|
+
background-color: var(--ngf-primary);
|
|
26
|
+
height: 3px;
|
|
27
|
+
content: "";
|
|
28
|
+
z-index: 2;
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
}
|
package/types/ngflux-ngflux.d.ts
CHANGED
|
@@ -1,8 +1,11 @@
|
|
|
1
1
|
import * as _angular_core from '@angular/core';
|
|
2
|
-
import { InjectionToken, Signal, ViewContainerRef, Injector } from '@angular/core';
|
|
2
|
+
import { InjectionToken, Signal, ViewContainerRef, Injector, InputSignal, InputSignalWithTransform, ModelSignal, TemplateRef } from '@angular/core';
|
|
3
3
|
import * as _ngflux_ngflux from '@ngflux/ngflux';
|
|
4
4
|
import * as rxjs from 'rxjs';
|
|
5
5
|
import { Observable } from 'rxjs';
|
|
6
|
+
import { FormValueControl } from '@angular/forms/signals';
|
|
7
|
+
import * as i1 from '@angular/router';
|
|
8
|
+
import { Route, Data } from '@angular/router';
|
|
6
9
|
|
|
7
10
|
type ButtonDirection = 'normal' | 'reversed';
|
|
8
11
|
type ButtonTheme = 'default' | 'primary' | 'secondary' | 'error' | 'danger' | 'success' | 'warning' | 'info' | 'light' | 'dark';
|
|
@@ -43,6 +46,18 @@ type PaginationInfo = {
|
|
|
43
46
|
page: number;
|
|
44
47
|
};
|
|
45
48
|
|
|
49
|
+
type NgFluxConfig = {
|
|
50
|
+
loading?: LoadingOptions;
|
|
51
|
+
dialog?: DialogOptions;
|
|
52
|
+
pagination?: PaginationOptions;
|
|
53
|
+
title?: RouterTitleOptions;
|
|
54
|
+
};
|
|
55
|
+
declare const NGF_CONFIG: InjectionToken<NgFluxConfig>;
|
|
56
|
+
type RouterTitleOptions = {
|
|
57
|
+
separator?: string;
|
|
58
|
+
prefix?: string;
|
|
59
|
+
suffix?: string;
|
|
60
|
+
};
|
|
46
61
|
type LoadingOptions = {
|
|
47
62
|
showOnRouteNavigation?: boolean;
|
|
48
63
|
component?: NgFluxComponent;
|
|
@@ -69,12 +84,6 @@ type PaginationOptions = {
|
|
|
69
84
|
limitOptions?: number[];
|
|
70
85
|
limit?: number;
|
|
71
86
|
};
|
|
72
|
-
type NgFluxConfig = {
|
|
73
|
-
loading?: LoadingOptions;
|
|
74
|
-
dialog?: DialogOptions;
|
|
75
|
-
pagination?: PaginationOptions;
|
|
76
|
-
};
|
|
77
|
-
declare const NGF_CONFIG: InjectionToken<NgFluxConfig>;
|
|
78
87
|
|
|
79
88
|
type OnClosed<T = any> = (cmd: NgFluxDialogCommand<T>) => void;
|
|
80
89
|
declare class NgFluxDialogRef<T = any> {
|
|
@@ -132,8 +141,65 @@ type NgFluxLoadingEntry = {
|
|
|
132
141
|
text: string;
|
|
133
142
|
};
|
|
134
143
|
|
|
144
|
+
type NgFluxRoutes = NgFluxRoute[];
|
|
145
|
+
type NgFluxRoute = Route & {
|
|
146
|
+
addParentTitle?: boolean;
|
|
147
|
+
parentTitleSeparator?: string;
|
|
148
|
+
description?: string;
|
|
149
|
+
keywords?: string | string[];
|
|
150
|
+
getTitle?: (data: Data) => string;
|
|
151
|
+
getDescription?: (data: Data) => string;
|
|
152
|
+
getKeywords?: (data: Data) => string | string[];
|
|
153
|
+
children?: NgFluxRoutes;
|
|
154
|
+
};
|
|
155
|
+
|
|
156
|
+
type SelectItem<T = any, V = any> = {
|
|
157
|
+
label: string;
|
|
158
|
+
value: V;
|
|
159
|
+
children?: T[];
|
|
160
|
+
disabled?: boolean;
|
|
161
|
+
};
|
|
162
|
+
type SelectTransformer<T = any, V = any> = {
|
|
163
|
+
getLabel(item: T): string;
|
|
164
|
+
getValue(item: T): V;
|
|
165
|
+
getChildren?(item: T): T[];
|
|
166
|
+
setChildren?(item: T, children: T[]): void;
|
|
167
|
+
isDisabled?(item: T): boolean;
|
|
168
|
+
};
|
|
169
|
+
|
|
170
|
+
type Menu = {
|
|
171
|
+
text: string;
|
|
172
|
+
icon?: string;
|
|
173
|
+
href?: string;
|
|
174
|
+
isExternal?: boolean;
|
|
175
|
+
targetBlank?: boolean;
|
|
176
|
+
onClick?: (e: PointerEvent, item: Menu) => any;
|
|
177
|
+
children?: Menu[];
|
|
178
|
+
};
|
|
179
|
+
|
|
180
|
+
type FrameSize = 'auto' | 'viewport';
|
|
181
|
+
type FrameToolbarItem = {};
|
|
182
|
+
type FrameHeaderMenu = Omit<Menu, 'children'>;
|
|
183
|
+
type FrameOptions = {
|
|
184
|
+
title?: () => string;
|
|
185
|
+
icon?: () => string;
|
|
186
|
+
image?: () => string;
|
|
187
|
+
toolbarItems?: () => FrameToolbarItem[];
|
|
188
|
+
headerMenu?: () => FrameHeaderMenu[];
|
|
189
|
+
sideMenu?: () => Menu[];
|
|
190
|
+
};
|
|
191
|
+
|
|
135
192
|
declare const provideNgFlux: (config?: NgFluxConfig) => _angular_core.EnvironmentProviders;
|
|
136
193
|
|
|
194
|
+
type Justify = 'start' | 'center' | 'end' | 'stretch';
|
|
195
|
+
declare class NgFluxActions {
|
|
196
|
+
readonly justify: _angular_core.InputSignal<Justify>;
|
|
197
|
+
readonly wrap: _angular_core.InputSignal<boolean>;
|
|
198
|
+
readonly gap: _angular_core.InputSignal<number>;
|
|
199
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<NgFluxActions, never>;
|
|
200
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<NgFluxActions, "ngf-actions", never, { "justify": { "alias": "justify"; "required": false; "isSignal": true; }; "wrap": { "alias": "wrap"; "required": false; "isSignal": true; }; "gap": { "alias": "gap"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
|
|
201
|
+
}
|
|
202
|
+
|
|
137
203
|
declare class NgFluxButton {
|
|
138
204
|
private readonly ref;
|
|
139
205
|
readonly icon: _angular_core.InputSignal<string | undefined>;
|
|
@@ -252,5 +318,154 @@ declare class NgFluxPagination {
|
|
|
252
318
|
static ɵcmp: _angular_core.ɵɵComponentDeclaration<NgFluxPagination, "ngf-pagination", never, { "data": { "alias": "data"; "required": true; "isSignal": true; }; "preload": { "alias": "preload"; "required": false; "isSignal": true; }; "transform": { "alias": "transform"; "required": false; "isSignal": true; }; "limit": { "alias": "limit"; "required": false; "isSignal": true; }; "limitOptions": { "alias": "limitOptions"; "required": false; "isSignal": true; }; }, { "limit": "limitChange"; "callback": "callback"; }, never, ["*"], true, never>;
|
|
253
319
|
}
|
|
254
320
|
|
|
255
|
-
|
|
256
|
-
|
|
321
|
+
type SelectItemOptions = {
|
|
322
|
+
getSelected: (item: any) => boolean;
|
|
323
|
+
};
|
|
324
|
+
|
|
325
|
+
declare class NgFluxSelect<V = any> implements FormValueControl<V | V[] | null> {
|
|
326
|
+
private readonly ref;
|
|
327
|
+
readonly data: InputSignal<any[]>;
|
|
328
|
+
readonly block: InputSignalWithTransform<boolean, unknown>;
|
|
329
|
+
readonly multi: InputSignalWithTransform<boolean, unknown>;
|
|
330
|
+
readonly placeholder: InputSignal<string | undefined>;
|
|
331
|
+
readonly transform: InputSignal<SelectTransformer<any, V>>;
|
|
332
|
+
protected readonly mapper: _angular_core.Signal<Map<V, any>>;
|
|
333
|
+
readonly value: ModelSignal<V | V[] | null>;
|
|
334
|
+
protected readonly vmap: _angular_core.Signal<Map<V, any>>;
|
|
335
|
+
protected readonly open: _angular_core.WritableSignal<boolean>;
|
|
336
|
+
protected readonly searchbox: _angular_core.WritableSignal<string>;
|
|
337
|
+
protected readonly search: _angular_core.Signal<any[]>;
|
|
338
|
+
protected readonly headerText: _angular_core.Signal<string>;
|
|
339
|
+
private doFlatMap;
|
|
340
|
+
private doSearch;
|
|
341
|
+
protected toggleOpen(): void;
|
|
342
|
+
protected toggle(item: any): void;
|
|
343
|
+
protected readonly options: SelectItemOptions;
|
|
344
|
+
protected onDocumentClick(e: PointerEvent): void;
|
|
345
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<NgFluxSelect<any>, never>;
|
|
346
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<NgFluxSelect<any>, "ngf-select", never, { "data": { "alias": "data"; "required": true; "isSignal": true; }; "block": { "alias": "block"; "required": false; "isSignal": true; }; "multi": { "alias": "multi"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "transform": { "alias": "transform"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; }, { "value": "valueChange"; }, never, never, true, never>;
|
|
347
|
+
}
|
|
348
|
+
|
|
349
|
+
declare class PinInputDirective {
|
|
350
|
+
private readonly ref;
|
|
351
|
+
readonly elem: HTMLInputElement;
|
|
352
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<PinInputDirective, never>;
|
|
353
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<PinInputDirective, "[pinInput]", never, {}, {}, never, never, true, never>;
|
|
354
|
+
}
|
|
355
|
+
|
|
356
|
+
declare class NgFluxPinInput implements FormValueControl<string> {
|
|
357
|
+
readonly chars: InputSignal<number>;
|
|
358
|
+
readonly block: InputSignalWithTransform<boolean, unknown>;
|
|
359
|
+
readonly value: _angular_core.ModelSignal<string>;
|
|
360
|
+
protected readonly values: _angular_core.Signal<string[]>;
|
|
361
|
+
protected readonly inputs: _angular_core.Signal<readonly PinInputDirective[]>;
|
|
362
|
+
protected onKeyDown(e: KeyboardEvent, index: number): void;
|
|
363
|
+
protected onPaste(e: ClipboardEvent, index: number): void;
|
|
364
|
+
private setFocus;
|
|
365
|
+
private readonly allowed;
|
|
366
|
+
focus(options?: FocusOptions): void;
|
|
367
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<NgFluxPinInput, never>;
|
|
368
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<NgFluxPinInput, "ngf-pin-input", never, { "chars": { "alias": "chars"; "required": false; "isSignal": true; }; "block": { "alias": "block"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; }, { "value": "valueChange"; }, never, never, true, never>;
|
|
369
|
+
}
|
|
370
|
+
|
|
371
|
+
declare class TabNavController {
|
|
372
|
+
private readonly map;
|
|
373
|
+
readonly navs: _angular_core.Signal<NgFluxTabNavDirective[]>;
|
|
374
|
+
private readonly selected;
|
|
375
|
+
readonly selectedIndex: _angular_core.WritableSignal<number>;
|
|
376
|
+
readonly active: _angular_core.Signal<NgFluxTabNavDirective | null>;
|
|
377
|
+
readonly activeContent: _angular_core.Signal<NgFluxTabContentDirective | undefined>;
|
|
378
|
+
activate(nav: NgFluxTabNavDirective): void;
|
|
379
|
+
add(nav: NgFluxTabNavDirective): void;
|
|
380
|
+
remove(nav: NgFluxTabNavDirective): void;
|
|
381
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<TabNavController, never>;
|
|
382
|
+
static ɵprov: _angular_core.ɵɵInjectableDeclaration<TabNavController>;
|
|
383
|
+
}
|
|
384
|
+
|
|
385
|
+
declare class TabGroupController {
|
|
386
|
+
private readonly map;
|
|
387
|
+
readonly tabs: _angular_core.Signal<NgFluxTab[]>;
|
|
388
|
+
add(nav: NgFluxTab): void;
|
|
389
|
+
remove(nav: NgFluxTab): void;
|
|
390
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<TabGroupController, never>;
|
|
391
|
+
static ɵprov: _angular_core.ɵɵInjectableDeclaration<TabGroupController>;
|
|
392
|
+
}
|
|
393
|
+
|
|
394
|
+
declare class NgFluxTabContentDirective {
|
|
395
|
+
readonly templateRef: TemplateRef<any>;
|
|
396
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<NgFluxTabContentDirective, never>;
|
|
397
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<NgFluxTabContentDirective, "[ngfTabContent]", ["content"], {}, {}, never, never, true, never>;
|
|
398
|
+
}
|
|
399
|
+
|
|
400
|
+
declare class NgFluxTabNavDirective {
|
|
401
|
+
private readonly routerLink;
|
|
402
|
+
private readonly routerLinkActive;
|
|
403
|
+
protected readonly ctrl: TabNavController;
|
|
404
|
+
readonly content: _angular_core.InputSignal<NgFluxTabContentDirective | undefined>;
|
|
405
|
+
readonly navContent: _angular_core.Signal<NgFluxTabContentDirective | undefined>;
|
|
406
|
+
private readonly routeActive;
|
|
407
|
+
protected readonly active: _angular_core.Signal<boolean>;
|
|
408
|
+
constructor();
|
|
409
|
+
protected activate(e?: PointerEvent): void;
|
|
410
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<NgFluxTabNavDirective, never>;
|
|
411
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<NgFluxTabNavDirective, "[ngfTabNav]", never, { "content": { "alias": "content"; "required": false; "isSignal": true; }; }, {}, never, never, true, [{ directive: typeof i1.RouterLink; inputs: { "routerLink": "link"; }; outputs: {}; }, { directive: typeof i1.RouterLinkActive; inputs: {}; outputs: {}; }]>;
|
|
412
|
+
}
|
|
413
|
+
|
|
414
|
+
declare class NgFluxTab {
|
|
415
|
+
private readonly ctrl;
|
|
416
|
+
readonly label: _angular_core.InputSignal<string>;
|
|
417
|
+
readonly navLabel: _angular_core.Signal<string>;
|
|
418
|
+
readonly content: _angular_core.Signal<NgFluxTabContentDirective>;
|
|
419
|
+
constructor();
|
|
420
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<NgFluxTab, never>;
|
|
421
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<NgFluxTab, "ngf-tab", never, { "label": { "alias": "label"; "required": true; "isSignal": true; }; }, {}, never, ["*"], true, never>;
|
|
422
|
+
}
|
|
423
|
+
|
|
424
|
+
declare class NgFluxTabGroup {
|
|
425
|
+
protected readonly ctrl: TabGroupController;
|
|
426
|
+
readonly selectedIndex: _angular_core.InputSignal<number>;
|
|
427
|
+
protected readonly showTabs: boolean;
|
|
428
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<NgFluxTabGroup, never>;
|
|
429
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<NgFluxTabGroup, "ngf-tab-group", never, { "selectedIndex": { "alias": "selectedIndex"; "required": false; "isSignal": true; }; }, {}, never, ["ngf-tab"], true, never>;
|
|
430
|
+
}
|
|
431
|
+
|
|
432
|
+
declare class NgFluxTabPanel {
|
|
433
|
+
readonly label: _angular_core.InputSignal<string | undefined>;
|
|
434
|
+
protected readonly content: _angular_core.WritableSignal<TemplateRef<any> | null>;
|
|
435
|
+
setContent(tpl?: TemplateRef<any>): void;
|
|
436
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<NgFluxTabPanel, never>;
|
|
437
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<NgFluxTabPanel, "ngf-tab-panel", never, { "label": { "alias": "label"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
438
|
+
}
|
|
439
|
+
|
|
440
|
+
declare class NgFluxTabNavbar {
|
|
441
|
+
private readonly ctrl;
|
|
442
|
+
readonly panel: _angular_core.InputSignal<NgFluxTabPanel | undefined>;
|
|
443
|
+
readonly selectedIndex: _angular_core.InputSignal<number>;
|
|
444
|
+
constructor();
|
|
445
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<NgFluxTabNavbar, never>;
|
|
446
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<NgFluxTabNavbar, "ngf-tab-navbar", never, { "panel": { "alias": "panel"; "required": false; "isSignal": true; }; "selectedIndex": { "alias": "selectedIndex"; "required": false; "isSignal": true; }; }, {}, never, ["[ngfTabNav]"], true, never>;
|
|
447
|
+
}
|
|
448
|
+
|
|
449
|
+
declare class NgFluxFrame {
|
|
450
|
+
private readonly leftRef;
|
|
451
|
+
readonly viewport: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
452
|
+
readonly options: _angular_core.InputSignal<FrameOptions>;
|
|
453
|
+
protected readonly title: _angular_core.Signal<string>;
|
|
454
|
+
protected readonly icon: _angular_core.Signal<string>;
|
|
455
|
+
protected readonly image: _angular_core.Signal<string>;
|
|
456
|
+
protected readonly toolbarItems: _angular_core.Signal<_ngflux_ngflux.FrameToolbarItem[]>;
|
|
457
|
+
protected readonly headerMenu: _angular_core.Signal<_ngflux_ngflux.FrameHeaderMenu[]>;
|
|
458
|
+
protected readonly drawer: _angular_core.WritableSignal<boolean>;
|
|
459
|
+
protected readonly search: _angular_core.WritableSignal<string>;
|
|
460
|
+
protected readonly searchText: _angular_core.Resource<string>;
|
|
461
|
+
protected readonly sideMenu: _angular_core.Signal<Menu[]>;
|
|
462
|
+
private searchMenu;
|
|
463
|
+
protected toggleDrawer(e?: PointerEvent): void;
|
|
464
|
+
protected closeDrawer(e?: PointerEvent): void;
|
|
465
|
+
protected onDocumentClick(e: PointerEvent): void;
|
|
466
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<NgFluxFrame, never>;
|
|
467
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<NgFluxFrame, "ngf-frame", never, { "viewport": { "alias": "viewport"; "required": false; "isSignal": true; }; "options": { "alias": "options"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
|
|
468
|
+
}
|
|
469
|
+
|
|
470
|
+
export { NGF_CONFIG, NGF_DIALOG_DATA, NgFluxActions, NgFluxButton, NgFluxDialog, NgFluxDialogBodyComponent, NgFluxDialogFooterComponent, NgFluxDialogHeaderComponent, NgFluxDialogInstance, NgFluxDialogRef, NgFluxDialogRootComponent, NgFluxFrame, NgFluxLoading, NgFluxLoadingRootComponent, NgFluxPagination, NgFluxPinInput, NgFluxSelect, NgFluxTab, NgFluxTabContentDirective, NgFluxTabGroup, NgFluxTabNavDirective, NgFluxTabNavbar, NgFluxTabPanel, provideNgFlux };
|
|
471
|
+
export type { ButtonDirection, ButtonOptions, ButtonSize, ButtonTheme, ButtonType, FrameHeaderMenu, FrameOptions, FrameSize, FrameToolbarItem, Menu, NgFluxComponent, NgFluxConfig, NgFluxDialogAlertOptions, NgFluxDialogButton, NgFluxDialogButtonObj, NgFluxDialogCommand, NgFluxDialogConfig, NgFluxDialogConfirmOptions, NgFluxDialogEvents, NgFluxDialogPromptOptions, NgFluxDialogRoot, NgFluxLoadingEntry, NgFluxRoute, NgFluxRoutes, Pagination, PaginationInfo, PaginationTransformer, SelectItem, SelectTransformer };
|