@ojiepermana/angular 22.2.0 → 22.2.2
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 +18 -7
- package/component/icon/README.md +40 -13
- package/fesm2022/ojiepermana-angular-chart-area.mjs +3 -3
- package/fesm2022/ojiepermana-angular-chart-bar.mjs +5 -5
- package/fesm2022/ojiepermana-angular-chart-core.mjs +33 -33
- package/fesm2022/ojiepermana-angular-chart-line.mjs +5 -5
- package/fesm2022/ojiepermana-angular-chart-pie.mjs +5 -5
- package/fesm2022/ojiepermana-angular-chart-primitives.mjs +33 -33
- package/fesm2022/ojiepermana-angular-chart-radar.mjs +5 -5
- package/fesm2022/ojiepermana-angular-chart-radial.mjs +5 -5
- package/fesm2022/ojiepermana-angular-chart-scatter.mjs +3 -3
- package/fesm2022/ojiepermana-angular-component-accordion.mjs +17 -17
- package/fesm2022/ojiepermana-angular-component-alert-dialog.mjs +27 -27
- package/fesm2022/ojiepermana-angular-component-alert.mjs +12 -12
- package/fesm2022/ojiepermana-angular-component-aspect-ratio.mjs +3 -3
- package/fesm2022/ojiepermana-angular-component-avatar.mjs +18 -18
- package/fesm2022/ojiepermana-angular-component-badge.mjs +9 -9
- package/fesm2022/ojiepermana-angular-component-breadcrumb.mjs +21 -21
- package/fesm2022/ojiepermana-angular-component-button-group.mjs +10 -10
- package/fesm2022/ojiepermana-angular-component-button.mjs +4 -4
- package/fesm2022/ojiepermana-angular-component-calendar.mjs +5 -5
- package/fesm2022/ojiepermana-angular-component-card.mjs +27 -24
- package/fesm2022/ojiepermana-angular-component-carousel.mjs +18 -18
- package/fesm2022/ojiepermana-angular-component-checkbox.mjs +4 -4
- package/fesm2022/ojiepermana-angular-component-collapsible.mjs +12 -12
- package/fesm2022/ojiepermana-angular-component-combobox.mjs +3 -3
- package/fesm2022/ojiepermana-angular-component-command.mjs +28 -28
- package/fesm2022/ojiepermana-angular-component-composer.mjs +22 -22
- package/fesm2022/ojiepermana-angular-component-context-menu.mjs +3 -3
- package/fesm2022/ojiepermana-angular-component-date-picker.mjs +5 -5
- package/fesm2022/ojiepermana-angular-component-dialog.mjs +22 -22
- package/fesm2022/ojiepermana-angular-component-drawer.mjs +1 -2
- package/fesm2022/ojiepermana-angular-component-dropdown-menu.mjs +39 -39
- package/fesm2022/ojiepermana-angular-component-editor.mjs +21 -21
- package/fesm2022/ojiepermana-angular-component-empty.mjs +19 -19
- package/fesm2022/ojiepermana-angular-component-form.mjs +36 -36
- package/fesm2022/ojiepermana-angular-component-hover-card.mjs +9 -9
- package/fesm2022/ojiepermana-angular-component-icon.mjs +114 -105
- package/fesm2022/ojiepermana-angular-component-input-group.mjs +19 -19
- package/fesm2022/ojiepermana-angular-component-input-otp.mjs +16 -16
- package/fesm2022/ojiepermana-angular-component-input.mjs +6 -6
- package/fesm2022/ojiepermana-angular-component-item.mjs +31 -31
- package/fesm2022/ojiepermana-angular-component-kanban.mjs +29 -29
- package/fesm2022/ojiepermana-angular-component-kbd.mjs +7 -7
- package/fesm2022/ojiepermana-angular-component-label.mjs +3 -3
- package/fesm2022/ojiepermana-angular-component-menubar.mjs +13 -13
- package/fesm2022/ojiepermana-angular-component-native-select.mjs +14 -14
- package/fesm2022/ojiepermana-angular-component-navigation-menu.mjs +21 -21
- package/fesm2022/ojiepermana-angular-component-pagination.mjs +3 -3
- package/fesm2022/ojiepermana-angular-component-pillbox.mjs +16 -16
- package/fesm2022/ojiepermana-angular-component-popover.mjs +6 -6
- package/fesm2022/ojiepermana-angular-component-progress.mjs +3 -3
- package/fesm2022/ojiepermana-angular-component-radio.mjs +7 -7
- package/fesm2022/ojiepermana-angular-component-resizable.mjs +12 -12
- package/fesm2022/ojiepermana-angular-component-scroll-area.mjs +3 -3
- package/fesm2022/ojiepermana-angular-component-segmented-control.mjs +6 -8
- package/fesm2022/ojiepermana-angular-component-select.mjs +8 -8
- package/fesm2022/ojiepermana-angular-component-separator.mjs +3 -3
- package/fesm2022/ojiepermana-angular-component-sheet.mjs +41 -28
- package/fesm2022/ojiepermana-angular-component-skeleton.mjs +3 -3
- package/fesm2022/ojiepermana-angular-component-slider.mjs +10 -10
- package/fesm2022/ojiepermana-angular-component-spinner.mjs +3 -3
- package/fesm2022/ojiepermana-angular-component-switch.mjs +4 -4
- package/fesm2022/ojiepermana-angular-component-table.mjs +24 -24
- package/fesm2022/ojiepermana-angular-component-tabs.mjs +18 -18
- package/fesm2022/ojiepermana-angular-component-textarea.mjs +6 -6
- package/fesm2022/ojiepermana-angular-component-timeline.mjs +19 -19
- package/fesm2022/ojiepermana-angular-component-toast.mjs +5 -5
- package/fesm2022/ojiepermana-angular-component-toggle-group.mjs +9 -9
- package/fesm2022/ojiepermana-angular-component-toggle.mjs +5 -5
- package/fesm2022/ojiepermana-angular-component-tooltip.mjs +15 -15
- package/fesm2022/ojiepermana-angular-component-utils-scale.mjs +3 -3
- package/fesm2022/ojiepermana-angular-navigation-icon.mjs +3 -3
- package/fesm2022/{ojiepermana-angular-navigation-navigation-badge-count.component-BKCeWzml.mjs → ojiepermana-angular-navigation-navigation-badge-count.component-4RIokl1C.mjs} +3 -3
- package/fesm2022/{ojiepermana-angular-navigation-navigation-dockbar-menu.component-DFEJK2jD.mjs → ojiepermana-angular-navigation-navigation-dockbar-menu.component-CGfu2V6f.mjs} +23 -15
- package/fesm2022/{ojiepermana-angular-navigation-navigation-entry-grid.component-mpK9Ar08.mjs → ojiepermana-angular-navigation-navigation-entry-grid.component-zBCXDa4c.mjs} +38 -66
- package/fesm2022/{ojiepermana-angular-navigation-navigation-flyout-menu.component-BPgH7FJk.mjs → ojiepermana-angular-navigation-navigation-flyout-menu.component-DYkYIIHd.mjs} +14 -13
- package/fesm2022/{ojiepermana-angular-navigation-navigation-horizontal.component-DMpYcD9t.mjs → ojiepermana-angular-navigation-navigation-horizontal.component-LNTertHr.mjs} +5 -5
- package/fesm2022/{ojiepermana-angular-navigation-navigation-item.component-Basp5SIk.mjs → ojiepermana-angular-navigation-navigation-item.component-DiGOcizS.mjs} +42 -52
- package/fesm2022/{ojiepermana-angular-navigation-navigation-list.component-YUzHI9Pj.mjs → ojiepermana-angular-navigation-navigation-list.component-DB22Gl-5.mjs} +22 -6
- package/fesm2022/ojiepermana-angular-navigation-service.mjs +16 -6
- package/fesm2022/ojiepermana-angular-navigation-types.mjs +113 -1
- package/fesm2022/ojiepermana-angular-navigation.mjs +304 -93
- package/fesm2022/ojiepermana-angular-theme-component-settings.mjs +137 -72
- package/fesm2022/ojiepermana-angular-theme-layout-services.mjs +6 -6
- package/fesm2022/ojiepermana-angular-theme-layout-wrapper.mjs +265 -49
- package/fesm2022/ojiepermana-angular-theme-layout.mjs +30 -30
- package/fesm2022/ojiepermana-angular-theme-page-core.mjs +3 -3
- package/fesm2022/ojiepermana-angular-theme-page-filter.mjs +7 -7
- package/fesm2022/ojiepermana-angular-theme-page-overview.mjs +3 -3
- package/fesm2022/ojiepermana-angular-theme-page-root.mjs +8 -6
- package/fesm2022/ojiepermana-angular-theme-page-side.mjs +7 -7
- package/fesm2022/ojiepermana-angular-theme-page-slots.mjs +12 -12
- package/fesm2022/ojiepermana-angular-theme-shell-services.mjs +3 -3
- package/fesm2022/ojiepermana-angular-theme-shell.mjs +16 -12
- package/fesm2022/ojiepermana-angular-theme-styles.mjs +17 -33
- package/navigation/README.md +70 -19
- package/package.json +3 -2
- package/theme/README.md +4 -10
- package/theme/page/README.md +2 -0
- package/theme/shell/README.md +5 -1
- package/theme/styles/README.md +32 -8
- package/theme/styles/css/base/components.css +13 -9
- package/theme/styles/css/base/tailwind.css +43 -0
- package/theme/styles/css/base/theme.css +4 -25
- package/theme/styles/css/base/tokens.css +21 -0
- package/theme/styles/css/fonts.css +85 -0
- package/types/ojiepermana-angular-chart-radar.d.ts +2 -1
- package/types/ojiepermana-angular-component-avatar.d.ts +2 -1
- package/types/ojiepermana-angular-component-calendar.d.ts +2 -1
- package/types/ojiepermana-angular-component-card.d.ts +7 -2
- package/types/ojiepermana-angular-component-command.d.ts +1 -1
- package/types/ojiepermana-angular-component-editor.d.ts +2 -1
- package/types/ojiepermana-angular-component-icon.d.ts +64 -79
- package/types/ojiepermana-angular-component-input-otp.d.ts +2 -1
- package/types/ojiepermana-angular-component-pillbox.d.ts +2 -1
- package/types/ojiepermana-angular-component-radio.d.ts +2 -1
- package/types/ojiepermana-angular-component-resizable.d.ts +2 -1
- package/types/ojiepermana-angular-component-segmented-control.d.ts +1 -1
- package/types/ojiepermana-angular-component-select.d.ts +2 -1
- package/types/ojiepermana-angular-navigation-service.d.ts +8 -0
- package/types/ojiepermana-angular-navigation-types.d.ts +48 -3
- package/types/ojiepermana-angular-navigation.d.ts +59 -8
- package/types/ojiepermana-angular-theme-component-settings.d.ts +5 -3
- package/types/ojiepermana-angular-theme-layout-services.d.ts +2 -1
- package/types/ojiepermana-angular-theme-layout-wrapper.d.ts +52 -4
- package/types/ojiepermana-angular-theme-page-root.d.ts +1 -1
- package/types/ojiepermana-angular-theme-shell-services.d.ts +2 -1
- package/types/ojiepermana-angular-theme-styles.d.ts +0 -12
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
import { NavigationIconDirective, NavigationIconDirective as NavigationIconDirective$1 } from "@ojiepermana/angular/navigation/icon";
|
|
2
2
|
import * as i0 from "@angular/core";
|
|
3
3
|
import { InjectionToken, Signal, TemplateRef } from "@angular/core";
|
|
4
|
-
import { NAVIGATION_DOCKBAR_FALLBACK_ICON, NavigationActionHandler, NavigationAppearance, NavigationAppearance as NavigationAppearance$1, NavigationBadgeAriaLabel, NavigationBadgeContext, NavigationBadgeContext as NavigationBadgeContext$1, NavigationBadgeCount, NavigationBadgeSource, NavigationBadgeSource as NavigationBadgeSource$1, NavigationBadgeValueSource, NavigationCollapseTree, NavigationCollapseTree as NavigationCollapseTree$1, NavigationDockbarMode, NavigationDockbarMode as NavigationDockbarMode$1, NavigationDockbarRouteConfig, NavigationDockbarRouteContext, NavigationDockbarRouteContext as NavigationDockbarRouteContext$1, NavigationFlyoutIconPosition, NavigationFlyoutIconPosition as NavigationFlyoutIconPosition$1, NavigationFlyoutTriggerVariant, NavigationFlyoutTriggerVariant as NavigationFlyoutTriggerVariant$1, NavigationHorizontalPosition, NavigationHorizontalPosition as NavigationHorizontalPosition$1, NavigationHorizontalType, NavigationIconContext, NavigationIconContext as NavigationIconContext$1, NavigationItem, NavigationItem as NavigationItem$1, NavigationItemBadge, NavigationItemClasses, NavigationItemType, NavigationLink, NavigationNormalizedItem, NavigationNormalizedItem as NavigationNormalizedItem$1, NavigationNormalizedItemType, NavigationOrientation, NavigationOrientation as NavigationOrientation$1, NavigationPosition, NavigationPosition as NavigationPosition$1, NavigationRegisterInput, NavigationResolvedRouteContext, NavigationResolvedRouteContext as NavigationResolvedRouteContext$1, NavigationRouteData, NavigationSelection, NavigationSelection as NavigationSelection$1, NavigationState, NavigationState as NavigationState$1, NavigationType, NavigationType as NavigationType$1, NavigationVerticalPosition, NavigationVerticalPosition as NavigationVerticalPosition$1, NavigationVerticalType, NavigationVisibilityHandler, formatNavigationBadgeCount, normalizeUiNavItems } from "@ojiepermana/angular/navigation/types";
|
|
4
|
+
import { NAVIGATION_DOCKBAR_FALLBACK_ICON, NavigationActionHandler, NavigationAppearance, NavigationAppearance as NavigationAppearance$1, NavigationBadgeAriaLabel, NavigationBadgeContext, NavigationBadgeContext as NavigationBadgeContext$1, NavigationBadgeCount, NavigationBadgeSource, NavigationBadgeSource as NavigationBadgeSource$1, NavigationBadgeValueSource, NavigationCollapseTree, NavigationCollapseTree as NavigationCollapseTree$1, NavigationDockbarMode, NavigationDockbarMode as NavigationDockbarMode$1, NavigationDockbarRouteConfig, NavigationDockbarRouteContext, NavigationDockbarRouteContext as NavigationDockbarRouteContext$1, NavigationFlyoutIconPosition, NavigationFlyoutIconPosition as NavigationFlyoutIconPosition$1, NavigationFlyoutTriggerVariant, NavigationFlyoutTriggerVariant as NavigationFlyoutTriggerVariant$1, NavigationHorizontalPosition, NavigationHorizontalPosition as NavigationHorizontalPosition$1, NavigationHorizontalType, NavigationIconContext, NavigationIconContext as NavigationIconContext$1, NavigationItem, NavigationItem as NavigationItem$1, NavigationItemBadge, NavigationItemClasses, NavigationItemType, NavigationLink, NavigationNormalizedItem, NavigationNormalizedItem as NavigationNormalizedItem$1, NavigationNormalizedItemType, NavigationOrientation, NavigationOrientation as NavigationOrientation$1, NavigationPosition, NavigationPosition as NavigationPosition$1, NavigationRegisterInput, NavigationResolvedRouteContext, NavigationResolvedRouteContext as NavigationResolvedRouteContext$1, NavigationRouteData, NavigationSelection, NavigationSelection as NavigationSelection$1, NavigationState, NavigationState as NavigationState$1, NavigationType, NavigationType as NavigationType$1, NavigationVerticalPosition, NavigationVerticalPosition as NavigationVerticalPosition$1, NavigationVerticalType, NavigationVisibilityHandler, formatNavigationBadgeCount, normalizeUiNavItems, toMinidockItems } from "@ojiepermana/angular/navigation/types";
|
|
5
5
|
export * from "@ojiepermana/angular/navigation/core";
|
|
6
6
|
/**
|
|
7
7
|
* Konfigurasi yang didaftarkan komponen type (`<NavigationSidebar>`,
|
|
8
|
-
* `<NavigationDockbar>`, `<
|
|
8
|
+
* `<NavigationDockbar>`, `<NavigationMinidock>`, `<NavigationNavbar>`,
|
|
9
|
+
* `<NavigationFlyout>`) ke
|
|
9
10
|
* `<Navigation>` induknya. Satu `<Navigation>` hanya boleh memuat satu
|
|
10
11
|
* type hidup pada satu waktu.
|
|
11
12
|
*/
|
|
@@ -26,7 +27,7 @@ export interface NavigationTypeConfig {
|
|
|
26
27
|
readonly previewExpanded?: Signal<boolean>;
|
|
27
28
|
readonly typeStyle?: Signal<NavigationAppearance$1>;
|
|
28
29
|
readonly flyoutLabel?: Signal<string>;
|
|
29
|
-
/** Nama
|
|
30
|
+
/** Nama ikon Lucide untuk trigger flyout; `null` = tanpa ikon (label saja). */
|
|
30
31
|
readonly flyoutIcon?: Signal<string | null>;
|
|
31
32
|
/** Trigger flyout hanya ikon — label pindah ke aria-label/title. */
|
|
32
33
|
readonly flyoutIconOnly?: Signal<boolean>;
|
|
@@ -102,6 +103,12 @@ export declare class NavigationContainerComponent implements NavigationShellCont
|
|
|
102
103
|
* pointer hovering the rail.
|
|
103
104
|
*/
|
|
104
105
|
private readonly focusPreviewExpanded;
|
|
106
|
+
/**
|
|
107
|
+
* Width and transform snap until the first user input. Restoring a persisted
|
|
108
|
+
* or route-context state on load then never animates the rail open while the
|
|
109
|
+
* absolutely positioned dockbar panel already covers the content.
|
|
110
|
+
*/
|
|
111
|
+
protected readonly motionArmed: import("@angular/core").WritableSignal<boolean>;
|
|
105
112
|
/** Konfigurasi type aktif yang didaftarkan wrapper anak (sidebar/dockbar/navbar/flyout). */
|
|
106
113
|
private readonly typeConfig;
|
|
107
114
|
private readonly orientationPreference;
|
|
@@ -138,6 +145,8 @@ export declare class NavigationContainerComponent implements NavigationShellCont
|
|
|
138
145
|
readonly dockbarActiveRoutePanelGroup: import("@angular/core").Signal<NavigationNormalizedItem$1 | null>;
|
|
139
146
|
readonly dockbarRouteHeader: import("@angular/core").Signal<NavigationDockbarRouteHeaderState | null>;
|
|
140
147
|
readonly dockbarRailItems: import("@angular/core").Signal<readonly NavigationNormalizedItem$1[]>;
|
|
148
|
+
/** Item rel minidock: divider di tepi atau berurutan (sesudah item tersembunyi hilang) dibuang. */
|
|
149
|
+
readonly minidockRailItems: import("@angular/core").Signal<NavigationNormalizedItem$1[]>;
|
|
141
150
|
readonly dockbarAsideId: import("@angular/core").Signal<string>;
|
|
142
151
|
readonly dockbarOpenGroup: import("@angular/core").Signal<NavigationNormalizedItem$1 | null>;
|
|
143
152
|
readonly dockbarActiveRoutePanelExpanded: import("@angular/core").Signal<boolean>;
|
|
@@ -151,6 +160,7 @@ export declare class NavigationContainerComponent implements NavigationShellCont
|
|
|
151
160
|
readonly state: import("@angular/core").Signal<import("@ojiepermana/angular/navigation").NavigationState>;
|
|
152
161
|
readonly resolvedDataId: import("@angular/core").Signal<string>;
|
|
153
162
|
protected readonly hostClasses: import("@angular/core").Signal<string>;
|
|
163
|
+
protected armMotion(): void;
|
|
154
164
|
constructor();
|
|
155
165
|
/**
|
|
156
166
|
* Dipanggil komponen type saat dibuat. Satu `<Navigation>` hanya boleh
|
|
@@ -287,7 +297,7 @@ export declare class NavigationHeaderComponent {
|
|
|
287
297
|
*/
|
|
288
298
|
protected readonly showToggle: import("@angular/core").Signal<boolean>;
|
|
289
299
|
protected readonly toggleAriaLabel: import("@angular/core").Signal<"Expand navigation" | "Collapse navigation">;
|
|
290
|
-
protected readonly toggleIconName: import("@angular/core").Signal<"
|
|
300
|
+
protected readonly toggleIconName: import("@angular/core").Signal<"panel-left-open" | "panel-left-close">;
|
|
291
301
|
/**
|
|
292
302
|
* Baris isi header. Saat collapsed/dockbar (vertical) isi (inisial/ikon) dipusatkan di tengah
|
|
293
303
|
* rail agar simetris dengan ikon nav-item di bawahnya (yang juga center di rail); selain itu kiri
|
|
@@ -435,6 +445,47 @@ export declare class NavigationDockbarComponent {
|
|
|
435
445
|
};
|
|
436
446
|
}, {}, ["headerSlot", "contentSlot", "footerSlot", "asideFooterSlot"], ["NavigationHeader", "NavigationContent", "NavigationFooter"], true, never>;
|
|
437
447
|
}
|
|
448
|
+
/**
|
|
449
|
+
* Type vertikal minidock untuk `<Navigation>`: rel ikon permanen yang tampil sama
|
|
450
|
+
* dengan sidebar collapsed, tetapi tidak pernah melebar (tanpa toggle, hover
|
|
451
|
+
* preview, atau focus preview).
|
|
452
|
+
*
|
|
453
|
+
* Data hanya boleh berisi item `basic`, `item`, tanpa type, `divider`, dan
|
|
454
|
+
* `spacer`, tanpa children. Data lain melempar `Error` di dev dan production;
|
|
455
|
+
* ratakan data bergroup dulu dengan `toMinidockItems()`.
|
|
456
|
+
*
|
|
457
|
+
* Slot `NavigationHeader` dan `NavigationFooter` opsional; `NavigationContent`
|
|
458
|
+
* selalu dirender (default otomatis bila tidak diproyeksikan).
|
|
459
|
+
*/
|
|
460
|
+
export declare class NavigationMinidockComponent {
|
|
461
|
+
private readonly container;
|
|
462
|
+
private readonly destroyRef;
|
|
463
|
+
readonly position: import("@angular/core").InputSignal<NavigationVerticalPosition$1 | null>;
|
|
464
|
+
readonly class: import("@angular/core").InputSignal<string>;
|
|
465
|
+
protected readonly headerSlot: import("@angular/core").Signal<NavigationHeaderComponent | undefined>;
|
|
466
|
+
protected readonly contentSlot: import("@angular/core").Signal<NavigationContentComponent | undefined>;
|
|
467
|
+
protected readonly footerSlot: import("@angular/core").Signal<NavigationFooterComponent | undefined>;
|
|
468
|
+
/**
|
|
469
|
+
* Validasi data mentah. Dibaca template, jadi data yang berubah divalidasi ulang
|
|
470
|
+
* dan error yang dilempar sampai ke `ErrorHandler` Angular saat change detection.
|
|
471
|
+
*/
|
|
472
|
+
protected readonly dataValidated: import("@angular/core").Signal<boolean>;
|
|
473
|
+
protected readonly hostClasses: import("@angular/core").Signal<string>;
|
|
474
|
+
constructor();
|
|
475
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<NavigationMinidockComponent, never>;
|
|
476
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<NavigationMinidockComponent, "NavigationMinidock", never, {
|
|
477
|
+
"position": {
|
|
478
|
+
"alias": "position";
|
|
479
|
+
"required": false;
|
|
480
|
+
"isSignal": true;
|
|
481
|
+
};
|
|
482
|
+
"class": {
|
|
483
|
+
"alias": "class";
|
|
484
|
+
"required": false;
|
|
485
|
+
"isSignal": true;
|
|
486
|
+
};
|
|
487
|
+
}, {}, ["headerSlot", "contentSlot", "footerSlot"], ["NavigationHeader", "NavigationContent", "NavigationFooter"], true, never>;
|
|
488
|
+
}
|
|
438
489
|
/**
|
|
439
490
|
* Type navbar horizontal untuk `<Navigation>`. Slot `NavigationHeader`
|
|
440
491
|
* dan `NavigationFooter` opsional; `NavigationContent` selalu dirender
|
|
@@ -480,7 +531,7 @@ export declare class NavigationFlyoutComponent {
|
|
|
480
531
|
private readonly container;
|
|
481
532
|
private readonly destroyRef;
|
|
482
533
|
readonly label: import("@angular/core").InputSignal<string>;
|
|
483
|
-
/** Nama
|
|
534
|
+
/** Nama ikon Lucide untuk trigger (mis. `grip`, `menu`); `null` = label saja. */
|
|
484
535
|
readonly icon: import("@angular/core").InputSignal<string | null>;
|
|
485
536
|
/** Trigger hanya menampilkan ikon; label tetap dipakai sebagai aria-label/title. */
|
|
486
537
|
readonly iconOnly: import("@angular/core").InputSignalWithTransform<boolean, unknown>;
|
|
@@ -621,7 +672,7 @@ export declare class NavigationFooterActionComponent {
|
|
|
621
672
|
* Blok avatar/inisial untuk slot `NavigationFooter` (profil user). Sama seperti
|
|
622
673
|
* `NavigationHeaderInitial` dengan bentuk identitas yang seragam (rounded-md).
|
|
623
674
|
* Consumer cukup memberi `name`; inisial diturunkan otomatis. Beri `src` untuk
|
|
624
|
-
* foto, `icon` untuk
|
|
675
|
+
* foto, `icon` untuk nama ikon Lucide, atau `initials` untuk override.
|
|
625
676
|
*
|
|
626
677
|
* Tetap tampil saat sidebar collapsed; pasangannya `NavigationFooterTitle` yang
|
|
627
678
|
* menyembunyikan diri.
|
|
@@ -698,7 +749,7 @@ export declare class NavigationFooterTitleComponent {
|
|
|
698
749
|
/**
|
|
699
750
|
* Blok avatar/inisial untuk slot `NavigationHeader` (brand/logo). Consumer cukup
|
|
700
751
|
* memberi `name`; inisial diturunkan otomatis ("Ojie Permana" → "OP"). Beri `src`
|
|
701
|
-
* untuk gambar, `icon` (
|
|
752
|
+
* untuk gambar, `icon` (nama ikon Lucide) sebagai ganti inisial, atau `initials`
|
|
702
753
|
* untuk override manual.
|
|
703
754
|
*
|
|
704
755
|
* Selalu tampil baik saat sidebar expanded maupun collapsed karena ukurannya muat
|
|
@@ -793,4 +844,4 @@ export declare class NavigationHeaderTitleComponent {
|
|
|
793
844
|
* memakai dua huruf pertamanya.
|
|
794
845
|
*/
|
|
795
846
|
export declare function deriveNavigationInitials(name: string): string;
|
|
796
|
-
export { NAVIGATION_DOCKBAR_FALLBACK_ICON, type NavigationActionHandler, type NavigationAppearance, type NavigationBadgeAriaLabel, type NavigationBadgeContext, type NavigationBadgeCount, type NavigationBadgeSource, type NavigationBadgeValueSource, type NavigationCollapseTree, type NavigationDockbarMode, type NavigationDockbarRouteConfig, type NavigationDockbarRouteContext, type NavigationFlyoutIconPosition, type NavigationFlyoutTriggerVariant, type NavigationHorizontalPosition, type NavigationHorizontalType, type NavigationIconContext, NavigationIconDirective, type NavigationItem, type NavigationItemBadge, type NavigationItemClasses, type NavigationItemType, type NavigationLink, type NavigationNormalizedItem, type NavigationNormalizedItemType, type NavigationOrientation, type NavigationPosition, type NavigationRegisterInput, type NavigationResolvedRouteContext, type NavigationRouteData, type NavigationSelection, type NavigationState, type NavigationType, type NavigationVerticalPosition, type NavigationVerticalType, type NavigationVisibilityHandler, formatNavigationBadgeCount, normalizeUiNavItems };
|
|
847
|
+
export { NAVIGATION_DOCKBAR_FALLBACK_ICON, type NavigationActionHandler, type NavigationAppearance, type NavigationBadgeAriaLabel, type NavigationBadgeContext, type NavigationBadgeCount, type NavigationBadgeSource, type NavigationBadgeValueSource, type NavigationCollapseTree, type NavigationDockbarMode, type NavigationDockbarRouteConfig, type NavigationDockbarRouteContext, type NavigationFlyoutIconPosition, type NavigationFlyoutTriggerVariant, type NavigationHorizontalPosition, type NavigationHorizontalType, type NavigationIconContext, NavigationIconDirective, type NavigationItem, type NavigationItemBadge, type NavigationItemClasses, type NavigationItemType, type NavigationLink, type NavigationNormalizedItem, type NavigationNormalizedItemType, type NavigationOrientation, type NavigationPosition, type NavigationRegisterInput, type NavigationResolvedRouteContext, type NavigationRouteData, type NavigationSelection, type NavigationState, type NavigationType, type NavigationVerticalPosition, type NavigationVerticalType, type NavigationVisibilityHandler, formatNavigationBadgeCount, normalizeUiNavItems, toMinidockItems };
|
|
@@ -74,7 +74,8 @@ export declare class ThemeSettingsComponent {
|
|
|
74
74
|
type ThemeSettingsNavigationType = NavigationType | 'desktop';
|
|
75
75
|
/**
|
|
76
76
|
* The presentation modes meaningful to the currently selected navigation type.
|
|
77
|
-
* Sidebar uses `default`/`collapsed`; dockbar uses `default` (sticky) / `drawer
|
|
77
|
+
* Sidebar uses `default`/`collapsed`; dockbar uses `default` (sticky) / `drawer`;
|
|
78
|
+
* minidock is always compact and only has `default`.
|
|
78
79
|
*/
|
|
79
80
|
type ThemeSettingsNavigationMode = 'default' | 'collapsed' | 'drawer';
|
|
80
81
|
/**
|
|
@@ -104,14 +105,15 @@ export declare const NAV_TYPE_STORAGE_KEY = "nav-type";
|
|
|
104
105
|
export declare const NAV_TYPE_MODE_STORAGE_KEY = "nav-type-mode";
|
|
105
106
|
/**
|
|
106
107
|
* Nav types valid for a layout/shell pair — mirrors `LayoutWrapperDefault`
|
|
107
|
-
* (`navbar`/`flyout` → web horizontal, `sidebar`/`dockbar` → vertical).
|
|
108
|
+
* (`navbar`/`flyout` → web horizontal, `sidebar`/`dockbar`/`minidock` → vertical).
|
|
108
109
|
* A desktop-mode horizontal shell owns exactly one navigation shape: `desktop`.
|
|
109
110
|
* `empty` and `fluid` shells are brand-only, so no nav type applies.
|
|
110
111
|
*/
|
|
111
112
|
export declare function allowedNavTypes(layoutType: LayoutType, shellMode: ShellMode): readonly ThemeSettingsNavigationType[];
|
|
112
113
|
/**
|
|
113
114
|
* Presentation modes meaningful to a navigation type: sidebar collapses, dockbar
|
|
114
|
-
* turns into a drawer, and every other type
|
|
115
|
+
* turns into a drawer, and every other type (minidock included, it is always
|
|
116
|
+
* compact) has one presentation only.
|
|
115
117
|
*/
|
|
116
118
|
export declare function allowedNavTypeModes(navType: ThemeSettingsNavigationType): readonly ThemeSettingsNavigationMode[];
|
|
117
119
|
/** `fluid` width only has an effect when the layout type is also `fluid`. */
|
|
@@ -139,4 +139,5 @@ export declare const LAYOUT_LOADING_SKIP: HttpContextToken<boolean>;
|
|
|
139
139
|
* Interceptor that lights the `LayoutLoading` progress line while an HTTP
|
|
140
140
|
* request is in flight. Register it through `withInterceptors([...])`.
|
|
141
141
|
*/
|
|
142
|
-
export declare const layoutLoadingInterceptor: HttpInterceptorFn;
|
|
142
|
+
export declare const layoutLoadingInterceptor: HttpInterceptorFn;
|
|
143
|
+
export {};
|
|
@@ -10,7 +10,7 @@ import { NavigationDockbarRouteContext as NavigationDockbarRouteContext$1, Navig
|
|
|
10
10
|
export interface BrandIdentity {
|
|
11
11
|
/** Name behind the initials and the accessible name in the header slot. */
|
|
12
12
|
readonly name: string;
|
|
13
|
-
/**
|
|
13
|
+
/** Lucide icon name used as the logo; `null` falls back to initials from `name`. */
|
|
14
14
|
readonly icon: string | null;
|
|
15
15
|
/** Judul brand. */
|
|
16
16
|
readonly title: string;
|
|
@@ -90,7 +90,7 @@ export declare class LayoutUser {
|
|
|
90
90
|
readonly detailed: import("@angular/core").InputSignalWithTransform<boolean, unknown>;
|
|
91
91
|
/** Accessible name for the logout button. */
|
|
92
92
|
readonly logoutLabel: import("@angular/core").InputSignal<string>;
|
|
93
|
-
/**
|
|
93
|
+
/** Lucide icon name for the logout button; register a custom one with `provideIcons()`. */
|
|
94
94
|
readonly logoutIcon: import("@angular/core").InputSignal<string>;
|
|
95
95
|
/** The user pressed logout. The effect is the consumer's; the library does not navigate. */
|
|
96
96
|
readonly logout: import("@angular/core").OutputEmitterRef<void>;
|
|
@@ -241,6 +241,46 @@ export declare class LayoutNavDockbar {
|
|
|
241
241
|
"logout": "logout";
|
|
242
242
|
}, never, never, true, never>;
|
|
243
243
|
}
|
|
244
|
+
/**
|
|
245
|
+
* Nav type: a permanent vertical icon rail (minidock). It is composed exactly like
|
|
246
|
+
* {@link LayoutNavSidebar}, brand in the header and user identity in the footer, and
|
|
247
|
+
* renders the same way a collapsed sidebar does, but it never expands.
|
|
248
|
+
*
|
|
249
|
+
* The rail only accepts flat data, so `LayoutWrapperDefault` hands it
|
|
250
|
+
* `toMinidockItems(data())`. See {@link LayoutNavSidebar} for why
|
|
251
|
+
* `host.class = 'contents'` and for the header and footer borders.
|
|
252
|
+
*/
|
|
253
|
+
export declare class LayoutNavMinidock {
|
|
254
|
+
readonly brand: import("@angular/core").InputSignal<BrandIdentity>;
|
|
255
|
+
readonly user: import("@angular/core").InputSignal<UserIdentity>;
|
|
256
|
+
/** Appearance from the shell (`[appearance]`); decides the separator border weight. */
|
|
257
|
+
readonly appearance: import("@angular/core").InputSignal<"flat" | "border-rail">;
|
|
258
|
+
/** Forwarded from `<LayoutUser>`; the effect is the consumer's. */
|
|
259
|
+
readonly logout: import("@angular/core").OutputEmitterRef<void>;
|
|
260
|
+
protected readonly isBorderRail: import("@angular/core").Signal<boolean>;
|
|
261
|
+
/** Border kanan pemisah; ketebalan ikut appearance: `border-rail` = `--layout-rail-width` (selaras rail layout), `flat` 1px. */
|
|
262
|
+
protected readonly shellClass: import("@angular/core").Signal<"border-r-[length:var(--layout-rail-width)] border-border" | "border-r border-border">;
|
|
263
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<LayoutNavMinidock, never>;
|
|
264
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<LayoutNavMinidock, "LayoutNavMinidock", never, {
|
|
265
|
+
"brand": {
|
|
266
|
+
"alias": "brand";
|
|
267
|
+
"required": true;
|
|
268
|
+
"isSignal": true;
|
|
269
|
+
};
|
|
270
|
+
"user": {
|
|
271
|
+
"alias": "user";
|
|
272
|
+
"required": true;
|
|
273
|
+
"isSignal": true;
|
|
274
|
+
};
|
|
275
|
+
"appearance": {
|
|
276
|
+
"alias": "appearance";
|
|
277
|
+
"required": false;
|
|
278
|
+
"isSignal": true;
|
|
279
|
+
};
|
|
280
|
+
}, {
|
|
281
|
+
"logout": "logout";
|
|
282
|
+
}, never, never, true, never>;
|
|
283
|
+
}
|
|
244
284
|
/**
|
|
245
285
|
* Nav type: a top bar with inline items (navbar, horizontal). `appearance` follows the
|
|
246
286
|
* shell (`flat | border-rail`). See {@link LayoutNavSidebar} for why
|
|
@@ -385,7 +425,7 @@ export declare class LayoutWrapperDefault {
|
|
|
385
425
|
readonly closeMobileNavLabel: import("@angular/core").InputSignal<string>;
|
|
386
426
|
/**
|
|
387
427
|
* The user pressed logout in the navigation footer. Forwarded from every nav type that
|
|
388
|
-
* shows the user identity (`sidebar`, `dockbar`, `navbar`, `flyout`), the mobile drawer
|
|
428
|
+
* shows the user identity (`sidebar`, `dockbar`, `minidock`, `navbar`, `flyout`), the mobile drawer
|
|
389
429
|
* included, so one binding covers all of them. The library calls no endpoint and performs
|
|
390
430
|
* no navigation; what happens next is entirely the consumer's.
|
|
391
431
|
*/
|
|
@@ -393,6 +433,7 @@ export declare class LayoutWrapperDefault {
|
|
|
393
433
|
private readonly identity;
|
|
394
434
|
private readonly navigation;
|
|
395
435
|
private readonly desktopNavigationDataOwner;
|
|
436
|
+
private readonly minidockMainDataOwner;
|
|
396
437
|
private readonly document;
|
|
397
438
|
protected readonly mobileNavTriggerRef: import("@angular/core").Signal<ElementRef<HTMLElement> | undefined>;
|
|
398
439
|
constructor();
|
|
@@ -405,6 +446,12 @@ export declare class LayoutWrapperDefault {
|
|
|
405
446
|
protected readonly effectiveLayoutType: import("@angular/core").Signal<"fluid" | "vertical" | "horizontal" | "empty">;
|
|
406
447
|
/** Tipe nav di dalam `#body`: `empty`/`fluid` → `brand` (header-only); selain itu `nav-type`. */
|
|
407
448
|
protected readonly navKind: import("@angular/core").Signal<NavKind>;
|
|
449
|
+
/** Minidock only accepts flat data, so grouped data is flattened before it reaches the rail. */
|
|
450
|
+
private readonly minidockData;
|
|
451
|
+
/** Data id of the desktop `<Navigation>`; its state id stays `main` for persistence. */
|
|
452
|
+
protected readonly desktopDataId: import("@angular/core").Signal<"main" | "main-minidock">;
|
|
453
|
+
/** Data of the desktop `<Navigation>`: flattened for minidock, unfiltered for every other type. */
|
|
454
|
+
protected readonly desktopData: import("@angular/core").Signal<readonly NavigationItem[]>;
|
|
408
455
|
/** Lebar host `<Navigation>`: penuh-tinggi (vertical) atau penuh-lebar (horizontal). */
|
|
409
456
|
protected readonly navClass: import("@angular/core").Signal<"w-full" | "h-full">;
|
|
410
457
|
protected readonly showsMobileNavigation: import("@angular/core").Signal<boolean>;
|
|
@@ -508,4 +555,5 @@ export declare class LayoutWrapperDefault {
|
|
|
508
555
|
"mobileNavOpen": "mobile-nav-openChange";
|
|
509
556
|
"logout": "logout";
|
|
510
557
|
}, never, ["*"], true, never>;
|
|
511
|
-
}
|
|
558
|
+
}
|
|
559
|
+
export {};
|
|
@@ -32,7 +32,7 @@ export declare class PageComponent {
|
|
|
32
32
|
readonly appsLauncher: import("@angular/core").InputSignalWithTransform<boolean, unknown>;
|
|
33
33
|
/** Id of the navigation the apps launcher surfaces (`main` by default). */
|
|
34
34
|
readonly appsNavId: import("@angular/core").InputSignal<string>;
|
|
35
|
-
/**
|
|
35
|
+
/** Lucide icon name for the apps launcher button. */
|
|
36
36
|
readonly appsIcon: import("@angular/core").InputSignal<string>;
|
|
37
37
|
/** Label and `aria-label` for the icon-only apps launcher button. */
|
|
38
38
|
readonly appsLabel: import("@angular/core").InputSignal<string>;
|
|
@@ -267,17 +267,6 @@ export declare class ThemeSpaceService {
|
|
|
267
267
|
static ɵfac: i0.ɵɵFactoryDeclaration<ThemeSpaceService, never>;
|
|
268
268
|
static ɵprov: i0.ɵɵInjectableDeclaration<any>;
|
|
269
269
|
}
|
|
270
|
-
export interface ThemeIconOptions {
|
|
271
|
-
/**
|
|
272
|
-
* Load the Material Symbols icon font from Google Fonts at startup.
|
|
273
|
-
*
|
|
274
|
-
* Default: `false` (opt-in). Left off, `provideUiTheme()` makes no external
|
|
275
|
-
* network request — better for privacy, offline, and strict CSP. Set to
|
|
276
|
-
* `true` to fetch `https://fonts.googleapis.com/css2`, or self-host the font
|
|
277
|
-
* and import it in your own stylesheet instead.
|
|
278
|
-
*/
|
|
279
|
-
readonly materialSymbols?: boolean;
|
|
280
|
-
}
|
|
281
270
|
/** Consumer brand color. HSL triplets `H S% L%` consumed by `hsl(var(--brand))`. */
|
|
282
271
|
export interface ThemeBrandOptions {
|
|
283
272
|
/** Brand color, e.g. `'221 83% 53%'`. */
|
|
@@ -301,7 +290,6 @@ export interface ThemeOptions {
|
|
|
301
290
|
* changes (ThemeBrandService.setBrand) win over this default.
|
|
302
291
|
*/
|
|
303
292
|
readonly brand?: string | ThemeBrandOptions;
|
|
304
|
-
readonly icons?: ThemeIconOptions;
|
|
305
293
|
}
|
|
306
294
|
export declare const THEME_OPTIONS: InjectionToken<Readonly<ThemeOptions>>;
|
|
307
295
|
export declare function provideUiTheme(options?: ThemeOptions): EnvironmentProviders;
|