@sdcorejs/angular 20.1.3 → 20.1.5
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 +19 -14
- package/components/audit-diff/index.d.ts +74 -0
- package/components/badge/index.d.ts +1 -1
- package/components/breadcrumb/index.d.ts +53 -0
- package/components/data-state/index.d.ts +44 -0
- package/components/document-builder/index.d.ts +5 -5
- package/components/form-generic/index.d.ts +67 -104
- package/components/import-excel/index.d.ts +4 -14
- package/components/index.d.ts +4 -0
- package/components/job-progress/index.d.ts +38 -0
- package/components/mini-editor/index.d.ts +9 -9
- package/components/modal/index.d.ts +7 -1
- package/components/preview/index.d.ts +181 -28
- package/components/side-drawer/index.d.ts +7 -1
- package/components/tab/index.d.ts +9 -2
- package/components/table/index.d.ts +8 -7
- package/components/tree/index.d.ts +24 -2
- package/components/upload-file/index.d.ts +5 -4
- package/directives/index.d.ts +10 -8
- package/fesm2022/sdcorejs-angular-components-anchor.mjs +14 -14
- package/fesm2022/sdcorejs-angular-components-anchor.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-components-audit-diff.mjs +332 -0
- package/fesm2022/sdcorejs-angular-components-audit-diff.mjs.map +1 -0
- package/fesm2022/sdcorejs-angular-components-badge.mjs +1 -0
- package/fesm2022/sdcorejs-angular-components-badge.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-components-breadcrumb.mjs +121 -0
- package/fesm2022/sdcorejs-angular-components-breadcrumb.mjs.map +1 -0
- package/fesm2022/sdcorejs-angular-components-data-state.mjs +68 -0
- package/fesm2022/sdcorejs-angular-components-data-state.mjs.map +1 -0
- package/fesm2022/sdcorejs-angular-components-document-builder.mjs +18 -23
- package/fesm2022/sdcorejs-angular-components-document-builder.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-components-editor.mjs +6 -4
- package/fesm2022/sdcorejs-angular-components-editor.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-components-form-generic.mjs +495 -838
- package/fesm2022/sdcorejs-angular-components-form-generic.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-components-import-excel.mjs +24 -34
- package/fesm2022/sdcorejs-angular-components-import-excel.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-components-job-progress.mjs +97 -0
- package/fesm2022/sdcorejs-angular-components-job-progress.mjs.map +1 -0
- package/fesm2022/sdcorejs-angular-components-mini-editor.mjs +10 -20
- package/fesm2022/sdcorejs-angular-components-mini-editor.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-components-modal.mjs +61 -4
- package/fesm2022/sdcorejs-angular-components-modal.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-components-preview.mjs +1438 -218
- package/fesm2022/sdcorejs-angular-components-preview.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-components-query-bar.mjs +4 -4
- package/fesm2022/sdcorejs-angular-components-query-bar.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-components-query-builder.mjs +1 -1
- package/fesm2022/sdcorejs-angular-components-query-builder.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-components-side-drawer.mjs +39 -2
- package/fesm2022/sdcorejs-angular-components-side-drawer.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-components-tab-router.mjs +16 -22
- package/fesm2022/sdcorejs-angular-components-tab-router.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-components-tab.mjs +48 -4
- package/fesm2022/sdcorejs-angular-components-tab.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-components-table.mjs +96 -63
- package/fesm2022/sdcorejs-angular-components-table.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-components-tree.mjs +186 -17
- package/fesm2022/sdcorejs-angular-components-tree.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-components-upload-file.mjs +15 -22
- package/fesm2022/sdcorejs-angular-components-upload-file.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-components.mjs +4 -0
- package/fesm2022/sdcorejs-angular-components.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-directives.mjs +29 -41
- package/fesm2022/sdcorejs-angular-directives.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-forms-autocomplete.mjs +7 -7
- package/fesm2022/sdcorejs-angular-forms-autocomplete.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-forms-checkbox.mjs +20 -83
- package/fesm2022/sdcorejs-angular-forms-checkbox.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-forms-chip-calendar.mjs +6 -3
- package/fesm2022/sdcorejs-angular-forms-chip-calendar.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-forms-chip.mjs +6 -3
- package/fesm2022/sdcorejs-angular-forms-chip.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-forms-date-range.mjs +16 -13
- package/fesm2022/sdcorejs-angular-forms-date-range.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-forms-date.mjs +42 -65
- package/fesm2022/sdcorejs-angular-forms-date.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-forms-datetime.mjs +51 -66
- package/fesm2022/sdcorejs-angular-forms-datetime.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-forms-entity-picker.mjs +384 -0
- package/fesm2022/sdcorejs-angular-forms-entity-picker.mjs.map +1 -0
- package/fesm2022/sdcorejs-angular-forms-input-color.mjs +1 -1
- package/fesm2022/sdcorejs-angular-forms-input-color.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-forms-input-number.mjs +7 -5
- package/fesm2022/sdcorejs-angular-forms-input-number.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-forms-input.mjs +290 -56
- package/fesm2022/sdcorejs-angular-forms-input.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-forms-models.mjs +155 -2
- package/fesm2022/sdcorejs-angular-forms-models.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-forms-radio.mjs +44 -78
- package/fesm2022/sdcorejs-angular-forms-radio.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-forms-select.mjs +6 -20
- package/fesm2022/sdcorejs-angular-forms-select.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-forms-switch.mjs +19 -76
- package/fesm2022/sdcorejs-angular-forms-switch.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-forms-textarea.mjs +6 -5
- package/fesm2022/sdcorejs-angular-forms-textarea.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-forms-time-range.mjs +280 -0
- package/fesm2022/sdcorejs-angular-forms-time-range.mjs.map +1 -0
- package/fesm2022/sdcorejs-angular-forms-time.mjs +310 -0
- package/fesm2022/sdcorejs-angular-forms-time.mjs.map +1 -0
- package/fesm2022/sdcorejs-angular-forms-tree-select.mjs +210 -0
- package/fesm2022/sdcorejs-angular-forms-tree-select.mjs.map +1 -0
- package/fesm2022/sdcorejs-angular-forms.mjs +73 -4
- package/fesm2022/sdcorejs-angular-forms.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-i18n.mjs +375 -10
- package/fesm2022/sdcorejs-angular-i18n.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-interceptors.mjs +12 -17
- package/fesm2022/sdcorejs-angular-interceptors.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-modules-layout.mjs +994 -168
- package/fesm2022/sdcorejs-angular-modules-layout.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-pipes.mjs +5 -7
- package/fesm2022/sdcorejs-angular-pipes.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-services-api.mjs +407 -137
- package/fesm2022/sdcorejs-angular-services-api.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-services-cache.mjs +515 -105
- package/fesm2022/sdcorejs-angular-services-cache.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-services-confirm.mjs +5 -7
- package/fesm2022/sdcorejs-angular-services-confirm.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-services-docx.mjs +7 -10
- package/fesm2022/sdcorejs-angular-services-docx.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-services-loading.mjs +339 -74
- package/fesm2022/sdcorejs-angular-services-loading.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-services-notify.mjs +7 -10
- package/fesm2022/sdcorejs-angular-services-notify.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-services-persistence.mjs +899 -0
- package/fesm2022/sdcorejs-angular-services-persistence.mjs.map +1 -0
- package/fesm2022/sdcorejs-angular-services-storage.mjs +324 -122
- package/fesm2022/sdcorejs-angular-services-storage.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-services-task.mjs +389 -0
- package/fesm2022/sdcorejs-angular-services-task.mjs.map +1 -0
- package/fesm2022/sdcorejs-angular-services-unsaved-changes.mjs +255 -0
- package/fesm2022/sdcorejs-angular-services-unsaved-changes.mjs.map +1 -0
- package/fesm2022/sdcorejs-angular-services-viewport.mjs +76 -0
- package/fesm2022/sdcorejs-angular-services-viewport.mjs.map +1 -0
- package/fesm2022/sdcorejs-angular-services.mjs +4 -0
- package/fesm2022/sdcorejs-angular-services.mjs.map +1 -1
- package/forms/autocomplete/index.d.ts +3 -4
- package/forms/checkbox/index.d.ts +4 -8
- package/forms/date/index.d.ts +2 -2
- package/forms/date-range/index.d.ts +6 -7
- package/forms/datetime/index.d.ts +2 -2
- package/forms/entity-picker/index.d.ts +128 -0
- package/forms/index.d.ts +15 -5
- package/forms/input/index.d.ts +74 -11
- package/forms/input-number/index.d.ts +1 -1
- package/forms/models/index.d.ts +86 -3
- package/forms/radio/index.d.ts +12 -8
- package/forms/switch/index.d.ts +4 -7
- package/forms/time/index.d.ts +117 -0
- package/forms/time-range/index.d.ts +98 -0
- package/forms/tree-select/index.d.ts +76 -0
- package/i18n/index.d.ts +72 -2
- package/interceptors/index.d.ts +5 -6
- package/modules/layout/index.d.ts +354 -17
- package/package.json +49 -1
- package/pipes/index.d.ts +2 -2
- package/services/api/index.d.ts +68 -24
- package/services/cache/index.d.ts +52 -16
- package/services/confirm/index.d.ts +3 -2
- package/services/docx/index.d.ts +2 -3
- package/services/index.d.ts +4 -0
- package/services/loading/index.d.ts +16 -8
- package/services/persistence/index.d.ts +159 -0
- package/services/storage/index.d.ts +26 -8
- package/services/task/index.d.ts +104 -0
- package/services/unsaved-changes/index.d.ts +83 -0
- package/services/viewport/index.d.ts +42 -0
|
@@ -1,11 +1,13 @@
|
|
|
1
1
|
import * as _angular_core from '@angular/core';
|
|
2
|
-
import { InjectionToken } from '@angular/core';
|
|
2
|
+
import { Signal, InjectionToken, PipeTransform } from '@angular/core';
|
|
3
3
|
import * as i1$1 from '@angular/common';
|
|
4
4
|
import * as i1 from '@angular/router';
|
|
5
5
|
import { Params } from '@angular/router';
|
|
6
|
-
import { SdStorage
|
|
6
|
+
import { SdStorage } from '@sdcorejs/angular/services';
|
|
7
|
+
import { SdViewport } from '@sdcorejs/angular/services/viewport';
|
|
7
8
|
import * as _sdcorejs_angular_modules_layout from '@sdcorejs/angular/modules/layout';
|
|
8
9
|
import { MaybeAsync } from '@sdcorejs/utils/models';
|
|
10
|
+
import { Observable } from 'rxjs';
|
|
9
11
|
|
|
10
12
|
declare class HomeRoutingModule {
|
|
11
13
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<HomeRoutingModule, never>;
|
|
@@ -56,22 +58,80 @@ interface SdLayoutChildrenMenu {
|
|
|
56
58
|
}
|
|
57
59
|
|
|
58
60
|
declare class SdLayoutStorageService {
|
|
59
|
-
private
|
|
60
|
-
isShowSidebar: SdStorage<boolean>;
|
|
61
|
-
menuLockStatus: SdStorage<boolean>;
|
|
62
|
-
lastActiveMenuGroupId: SdStorage<string>;
|
|
63
|
-
pinnedMenuGroup: SdStorage<SdLayoutChildrenMenu>;
|
|
64
|
-
|
|
61
|
+
#private;
|
|
62
|
+
readonly isShowSidebar: SdStorage<boolean>;
|
|
63
|
+
readonly menuLockStatus: SdStorage<boolean>;
|
|
64
|
+
readonly lastActiveMenuGroupId: SdStorage<string>;
|
|
65
|
+
readonly pinnedMenuGroup: SdStorage<SdLayoutChildrenMenu>;
|
|
66
|
+
readonly pinnedMenuKeys: SdStorage<string[]>;
|
|
67
|
+
readonly recentMenuKeys: SdStorage<string[]>;
|
|
68
|
+
readonly versionStates: SdStorage<Record<string, SdLayoutVersionState>>;
|
|
69
|
+
readPinnedMenuKeys(menus: SdLayoutMenu[]): string[];
|
|
70
|
+
writePinnedMenuKeys(keys: string[]): void;
|
|
71
|
+
readRecentMenuKeys(menus: SdLayoutMenu[], maximum?: number): string[];
|
|
72
|
+
writeRecentMenuKeys(keys: string[]): void;
|
|
73
|
+
readVersionState(version: 1 | 2 | 3): SdLayoutVersionState;
|
|
74
|
+
patchVersionState(version: 1 | 2 | 3, patch: SdLayoutVersionState): SdLayoutVersionState;
|
|
65
75
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<SdLayoutStorageService, never>;
|
|
66
76
|
static ɵprov: _angular_core.ɵɵInjectableDeclaration<SdLayoutStorageService>;
|
|
67
77
|
}
|
|
78
|
+
interface SdLayoutVersionState {
|
|
79
|
+
activeGroupKey?: string;
|
|
80
|
+
locked?: boolean;
|
|
81
|
+
collapsed?: boolean;
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
type SdLayoutViewport = SdViewport;
|
|
85
|
+
declare const SD_LAYOUT_VIEWPORT: _angular_core.InjectionToken<SdViewport | null>;
|
|
86
|
+
/** @deprecated Prefer `SdViewportService` from `@sdcorejs/angular/services/viewport`. */
|
|
87
|
+
declare class SdLayoutResponsiveService {
|
|
88
|
+
#private;
|
|
89
|
+
readonly viewportWidth: _angular_core.Signal<number>;
|
|
90
|
+
isMobile(breakpoint: number): boolean;
|
|
91
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<SdLayoutResponsiveService, never>;
|
|
92
|
+
static ɵprov: _angular_core.ɵɵInjectableDeclaration<SdLayoutResponsiveService>;
|
|
93
|
+
}
|
|
68
94
|
|
|
95
|
+
/** Consumer-owned account action invoked without arguments by the shared user menu. */
|
|
96
|
+
type SdLayoutAccountAction = () => void | Promise<void>;
|
|
97
|
+
/** Notification badge source and the action that opens the consumer's notification experience. */
|
|
98
|
+
interface SdLayoutNotificationConfiguration {
|
|
99
|
+
/**
|
|
100
|
+
* Số lượng thông báo chưa đọc. Hỗ trợ giá trị tĩnh hoặc nguồn reactive dài hạn.
|
|
101
|
+
*/
|
|
102
|
+
count: number | Signal<number> | Observable<number>;
|
|
103
|
+
/**
|
|
104
|
+
* Tác vụ do consumer xử lý khi người dùng chọn thông báo.
|
|
105
|
+
*/
|
|
106
|
+
action: SdLayoutAccountAction;
|
|
107
|
+
}
|
|
69
108
|
interface ISdLayoutConfiguration {
|
|
70
109
|
homeUrl?: string;
|
|
110
|
+
mobileBreakpoint?: number;
|
|
71
111
|
sidebar: ISdSidebarConfiguration | (() => MaybeAsync<ISdSidebarConfiguration>);
|
|
72
112
|
userInfo: SdLayoutUserInfo | (() => MaybeAsync<SdLayoutUserInfo>);
|
|
73
|
-
signout:
|
|
74
|
-
changePassword?:
|
|
113
|
+
signout: SdLayoutAccountAction;
|
|
114
|
+
changePassword?: SdLayoutAccountAction;
|
|
115
|
+
/**
|
|
116
|
+
* Tác vụ chỉnh sửa hồ sơ do consumer cung cấp.
|
|
117
|
+
*/
|
|
118
|
+
updateProfile?: SdLayoutAccountAction;
|
|
119
|
+
/**
|
|
120
|
+
* Tác vụ mở thiết lập tài khoản do consumer cung cấp.
|
|
121
|
+
*/
|
|
122
|
+
setting?: SdLayoutAccountAction;
|
|
123
|
+
/**
|
|
124
|
+
* Cấu hình số lượng và tác vụ thông báo của tài khoản.
|
|
125
|
+
*/
|
|
126
|
+
notification?: SdLayoutNotificationConfiguration;
|
|
127
|
+
}
|
|
128
|
+
/** Optional role metadata rendered below the user's email when `text` is non-empty. */
|
|
129
|
+
interface SdLayoutUserRole {
|
|
130
|
+
text: string;
|
|
131
|
+
/** Icon name resolved by `SdIcon`. */
|
|
132
|
+
icon?: string;
|
|
133
|
+
/** CSS color applied to the role metadata. */
|
|
134
|
+
color?: string;
|
|
75
135
|
}
|
|
76
136
|
interface SdLayoutUserInfo {
|
|
77
137
|
/**
|
|
@@ -95,9 +155,24 @@ interface SdLayoutUserInfo {
|
|
|
95
155
|
* Hỗ trợ các định dạng: URL (http/https), chuỗi base64 (data:image), hoặc đường dẫn nội bộ.
|
|
96
156
|
*/
|
|
97
157
|
avatar?: string;
|
|
158
|
+
/**
|
|
159
|
+
* Chức vụ hoặc vai trò hiển thị cùng thông tin người dùng.
|
|
160
|
+
* Không render khi `text` rỗng.
|
|
161
|
+
*/
|
|
162
|
+
role?: SdLayoutUserRole;
|
|
163
|
+
}
|
|
164
|
+
declare const DEFAULT_LAYOUT_MOBILE_BREAKPOINT = 1024;
|
|
165
|
+
interface SidebarConfigurationBase {
|
|
166
|
+
brandColor?: string;
|
|
167
|
+
brandLightColor?: string;
|
|
168
|
+
logoUrl?: string;
|
|
169
|
+
defaultTitle?: string;
|
|
170
|
+
pin?: {
|
|
171
|
+
enabled?: boolean;
|
|
172
|
+
};
|
|
98
173
|
}
|
|
99
|
-
type ISdSidebarConfiguration = SidebarConfigurationV1;
|
|
100
|
-
interface SidebarConfigurationV1 {
|
|
174
|
+
type ISdSidebarConfiguration = SidebarConfigurationV1 | SidebarConfigurationV2 | SidebarConfigurationV3;
|
|
175
|
+
interface SidebarConfigurationV1 extends SidebarConfigurationBase {
|
|
101
176
|
version: 1;
|
|
102
177
|
/**
|
|
103
178
|
* Màu brand chính.
|
|
@@ -130,12 +205,56 @@ interface SidebarConfigurationV1 {
|
|
|
130
205
|
enabled?: boolean;
|
|
131
206
|
};
|
|
132
207
|
}
|
|
208
|
+
interface SidebarConfigurationV2 extends SidebarConfigurationBase {
|
|
209
|
+
version: 2;
|
|
210
|
+
interaction?: 'click' | 'hover-lock';
|
|
211
|
+
primaryMenuIds?: string[];
|
|
212
|
+
}
|
|
213
|
+
interface SidebarConfigurationV3 extends SidebarConfigurationBase {
|
|
214
|
+
version: 3;
|
|
215
|
+
defaultCollapsed?: boolean;
|
|
216
|
+
recent?: {
|
|
217
|
+
enabled?: boolean;
|
|
218
|
+
maxItems?: number;
|
|
219
|
+
};
|
|
220
|
+
}
|
|
221
|
+
interface ResolvedSidebarRecentConfiguration {
|
|
222
|
+
enabled: boolean;
|
|
223
|
+
maxItems: number;
|
|
224
|
+
}
|
|
225
|
+
declare function normalizeLayoutMobileBreakpoint(value: number | undefined): number;
|
|
226
|
+
declare function resolveSidebarV2Interaction(sidebar: SidebarConfigurationV2): 'click' | 'hover-lock';
|
|
227
|
+
declare function resolveSidebarV3Recent(sidebar: SidebarConfigurationV3): ResolvedSidebarRecentConfiguration;
|
|
228
|
+
declare function normalizeSidebarConfiguration(_sidebar: SidebarConfigurationV1): SidebarConfigurationV1;
|
|
229
|
+
declare function normalizeSidebarConfiguration(_sidebar: SidebarConfigurationV2): SidebarConfigurationV2;
|
|
230
|
+
declare function normalizeSidebarConfiguration(_sidebar: SidebarConfigurationV3): SidebarConfigurationV3;
|
|
133
231
|
declare const SD_LAYOUT_CONFIGURATION: InjectionToken<ISdLayoutConfiguration>;
|
|
134
232
|
|
|
233
|
+
declare class SdLayoutNavigationStateService {
|
|
234
|
+
#private;
|
|
235
|
+
readonly pinnedKeys: _angular_core.WritableSignal<string[]>;
|
|
236
|
+
readonly recentKeys: _angular_core.WritableSignal<string[]>;
|
|
237
|
+
readonly pinnedMenus: _angular_core.Signal<(_sdcorejs_angular_modules_layout.SdLayoutRootMenu | _sdcorejs_angular_modules_layout.SdLayoutChildrenMenu)[]>;
|
|
238
|
+
readonly recentMenus: _angular_core.Signal<(_sdcorejs_angular_modules_layout.SdLayoutRootMenu | _sdcorejs_angular_modules_layout.SdLayoutChildrenMenu)[]>;
|
|
239
|
+
hydrate(menus: SdLayoutMenu[], recentMaximum?: number): void;
|
|
240
|
+
togglePinned(menu: SdLayoutMenu): void;
|
|
241
|
+
recordRecent(menu: SdLayoutMenu, configuration: ResolvedSidebarRecentConfiguration): void;
|
|
242
|
+
patchVersionState(version: 1 | 2 | 3, patch: SdLayoutVersionState): void;
|
|
243
|
+
versionState(version: 1 | 2 | 3): SdLayoutVersionState;
|
|
244
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<SdLayoutNavigationStateService, never>;
|
|
245
|
+
static ɵprov: _angular_core.ɵɵInjectableDeclaration<SdLayoutNavigationStateService>;
|
|
246
|
+
}
|
|
247
|
+
|
|
248
|
+
declare function getMenuStableKey(menu: SdLayoutMenu | null | undefined, ancestors?: string[]): string;
|
|
249
|
+
declare function searchMenuLeaves(menus: SdLayoutMenu[], query: string): SdLayoutRootMenu[];
|
|
250
|
+
declare function selectPrimaryMenuGroups(menus: SdLayoutMenu[], requestedIds: string[] | undefined, maximum?: number): SdLayoutMenu[];
|
|
251
|
+
declare function resolveMenuKeys(menus: SdLayoutMenu[], keys: string[]): (SdLayoutRootMenu | SdLayoutChildrenMenu)[];
|
|
252
|
+
declare function flattenMenuLeaves(menus: SdLayoutMenu[]): SdLayoutRootMenu[];
|
|
253
|
+
|
|
135
254
|
declare class SdLayoutService {
|
|
136
255
|
#private;
|
|
137
256
|
userInfo: _angular_core.WritableSignal<SdLayoutUserInfo | undefined>;
|
|
138
|
-
sidebar: _angular_core.WritableSignal<
|
|
257
|
+
sidebar: _angular_core.WritableSignal<ISdSidebarConfiguration | undefined>;
|
|
139
258
|
constructor();
|
|
140
259
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<SdLayoutService, never>;
|
|
141
260
|
static ɵprov: _angular_core.ɵɵInjectableDeclaration<SdLayoutService>;
|
|
@@ -156,8 +275,12 @@ declare class SdLayoutComponent {
|
|
|
156
275
|
menusInput: _angular_core.InputSignal<SdLayoutMenu[]>;
|
|
157
276
|
menus: _angular_core.Signal<SdLayoutMenu[]>;
|
|
158
277
|
userInfo: _angular_core.WritableSignal<_sdcorejs_angular_modules_layout.SdLayoutUserInfo | undefined>;
|
|
159
|
-
sidebar: _angular_core.WritableSignal<_sdcorejs_angular_modules_layout.
|
|
160
|
-
|
|
278
|
+
sidebar: _angular_core.WritableSignal<_sdcorejs_angular_modules_layout.ISdSidebarConfiguration | undefined>;
|
|
279
|
+
sidebarV1: _angular_core.Signal<SidebarConfigurationV1 | undefined>;
|
|
280
|
+
sidebarV2: _angular_core.Signal<SidebarConfigurationV2 | undefined>;
|
|
281
|
+
sidebarV3: _angular_core.Signal<SidebarConfigurationV3 | undefined>;
|
|
282
|
+
mobileBreakpoint: number;
|
|
283
|
+
isMobile: _angular_core.Signal<boolean>;
|
|
161
284
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<SdLayoutComponent, never>;
|
|
162
285
|
static ɵcmp: _angular_core.ɵɵComponentDeclaration<SdLayoutComponent, "sd-layout", never, { "menusInput": { "alias": "menus"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
|
|
163
286
|
}
|
|
@@ -213,11 +336,225 @@ declare class SidebarMobileOverlayComponent {
|
|
|
213
336
|
static ɵcmp: _angular_core.ɵɵComponentDeclaration<SidebarMobileOverlayComponent, "sd-sidebar-mobile-overlay", never, { "isShowSidebar": { "alias": "isShowSidebar"; "required": false; "isSignal": true; }; "menus": { "alias": "menus"; "required": true; "isSignal": true; }; "userInfo": { "alias": "userInfo"; "required": true; "isSignal": true; }; "sidebar": { "alias": "sidebar"; "required": true; "isSignal": true; }; }, { "showSideBar": "showSideBar"; "expandSideBar": "expandSideBar"; "popupUserMenuOpened": "popupUserMenuOpened"; "popupUserMenuClosed": "popupUserMenuClosed"; "titleMenuGroupChanged": "titleMenuGroupChanged"; }, never, never, true, never>;
|
|
214
337
|
}
|
|
215
338
|
|
|
339
|
+
interface SdLayoutMenuTreeNode {
|
|
340
|
+
menu: SdLayoutMenu;
|
|
341
|
+
key: string;
|
|
342
|
+
title: string;
|
|
343
|
+
depth: number;
|
|
344
|
+
paddingLeft: number;
|
|
345
|
+
isGroup: boolean;
|
|
346
|
+
isActive: boolean;
|
|
347
|
+
isPinned: boolean;
|
|
348
|
+
isPinVisible: boolean;
|
|
349
|
+
}
|
|
350
|
+
declare class SdLayoutMenuTreeComponent {
|
|
351
|
+
#private;
|
|
352
|
+
menus: _angular_core.InputSignal<SdLayoutMenu[]>;
|
|
353
|
+
query: _angular_core.InputSignal<string>;
|
|
354
|
+
activePath: _angular_core.InputSignal<string>;
|
|
355
|
+
pinnedKeys: _angular_core.InputSignal<string[]>;
|
|
356
|
+
showPin: _angular_core.InputSignal<boolean>;
|
|
357
|
+
pinVisibility: _angular_core.InputSignal<"hover" | "always">;
|
|
358
|
+
navigate: _angular_core.OutputEmitterRef<SdLayoutRootMenu>;
|
|
359
|
+
togglePinned: _angular_core.OutputEmitterRef<SdLayoutMenu>;
|
|
360
|
+
nodes: _angular_core.Signal<SdLayoutMenuTreeNode[]>;
|
|
361
|
+
constructor();
|
|
362
|
+
onNavigate(menu: SdLayoutMenu): void;
|
|
363
|
+
onTogglePinned(event: MouseEvent, menu: SdLayoutMenu): void;
|
|
364
|
+
onPinHoverStart(key: string): void;
|
|
365
|
+
onPinHoverEnd(key: string): void;
|
|
366
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<SdLayoutMenuTreeComponent, never>;
|
|
367
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<SdLayoutMenuTreeComponent, "sd-layout-menu-tree", never, { "menus": { "alias": "menus"; "required": false; "isSignal": true; }; "query": { "alias": "query"; "required": false; "isSignal": true; }; "activePath": { "alias": "activePath"; "required": false; "isSignal": true; }; "pinnedKeys": { "alias": "pinnedKeys"; "required": false; "isSignal": true; }; "showPin": { "alias": "showPin"; "required": false; "isSignal": true; }; "pinVisibility": { "alias": "pinVisibility"; "required": false; "isSignal": true; }; }, { "navigate": "navigate"; "togglePinned": "togglePinned"; }, never, never, true, never>;
|
|
368
|
+
}
|
|
369
|
+
|
|
370
|
+
declare class SdLayoutUserMenuComponent {
|
|
371
|
+
#private;
|
|
372
|
+
private readonly trigger;
|
|
373
|
+
private readonly menu;
|
|
374
|
+
userInfo: _angular_core.InputSignal<SdLayoutUserInfo>;
|
|
375
|
+
signout: _angular_core.InputSignal<SdLayoutAccountAction | undefined>;
|
|
376
|
+
changePassword: _angular_core.InputSignal<SdLayoutAccountAction | undefined>;
|
|
377
|
+
updateProfile: _angular_core.InputSignal<SdLayoutAccountAction | undefined>;
|
|
378
|
+
setting: _angular_core.InputSignal<SdLayoutAccountAction | undefined>;
|
|
379
|
+
notification: _angular_core.InputSignal<SdLayoutNotificationConfiguration | undefined>;
|
|
380
|
+
compact: _angular_core.InputSignal<boolean>;
|
|
381
|
+
presentation: _angular_core.InputSignal<"disclosure" | "mobile" | "mobile-inline">;
|
|
382
|
+
opened: _angular_core.OutputEmitterRef<void>;
|
|
383
|
+
closed: _angular_core.OutputEmitterRef<void>;
|
|
384
|
+
isOpen: _angular_core.WritableSignal<boolean>;
|
|
385
|
+
avatar: _angular_core.Signal<string | undefined>;
|
|
386
|
+
displayName: _angular_core.Signal<string>;
|
|
387
|
+
role: _angular_core.Signal<{
|
|
388
|
+
text: string;
|
|
389
|
+
icon?: string;
|
|
390
|
+
color?: string;
|
|
391
|
+
} | undefined>;
|
|
392
|
+
signoutAction: _angular_core.Signal<SdLayoutAccountAction | undefined>;
|
|
393
|
+
changePasswordAction: _angular_core.Signal<SdLayoutAccountAction | undefined>;
|
|
394
|
+
updateProfileAction: _angular_core.Signal<SdLayoutAccountAction | undefined>;
|
|
395
|
+
settingAction: _angular_core.Signal<SdLayoutAccountAction | undefined>;
|
|
396
|
+
notificationConfiguration: _angular_core.Signal<SdLayoutNotificationConfiguration | undefined>;
|
|
397
|
+
notificationAction: _angular_core.Signal<SdLayoutAccountAction | undefined>;
|
|
398
|
+
notificationCount: _angular_core.Signal<number>;
|
|
399
|
+
notificationBadge: _angular_core.Signal<string | undefined>;
|
|
400
|
+
constructor();
|
|
401
|
+
open(): void;
|
|
402
|
+
toggle(): void;
|
|
403
|
+
close(restoreFocus?: boolean): void;
|
|
404
|
+
onMenuKeydown(event: KeyboardEvent): void;
|
|
405
|
+
runChangePassword(): void;
|
|
406
|
+
runSignout(): void;
|
|
407
|
+
runUpdateProfile(): void;
|
|
408
|
+
runSetting(): void;
|
|
409
|
+
runNotification(): void;
|
|
410
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<SdLayoutUserMenuComponent, never>;
|
|
411
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<SdLayoutUserMenuComponent, "sd-layout-user-menu", never, { "userInfo": { "alias": "userInfo"; "required": true; "isSignal": true; }; "signout": { "alias": "signout"; "required": false; "isSignal": true; }; "changePassword": { "alias": "changePassword"; "required": false; "isSignal": true; }; "updateProfile": { "alias": "updateProfile"; "required": false; "isSignal": true; }; "setting": { "alias": "setting"; "required": false; "isSignal": true; }; "notification": { "alias": "notification"; "required": false; "isSignal": true; }; "compact": { "alias": "compact"; "required": false; "isSignal": true; }; "presentation": { "alias": "presentation"; "required": false; "isSignal": true; }; }, { "opened": "opened"; "closed": "closed"; }, never, never, true, never>;
|
|
412
|
+
}
|
|
413
|
+
|
|
414
|
+
interface SidebarV2RailItem {
|
|
415
|
+
menu: SdLayoutMenu;
|
|
416
|
+
key: string;
|
|
417
|
+
title: string;
|
|
418
|
+
}
|
|
419
|
+
declare class SidebarV2Component {
|
|
420
|
+
#private;
|
|
421
|
+
menus: _angular_core.InputSignal<SdLayoutMenu[]>;
|
|
422
|
+
userInfo: _angular_core.InputSignal<SdLayoutUserInfo>;
|
|
423
|
+
sidebar: _angular_core.InputSignal<SidebarConfigurationV2>;
|
|
424
|
+
activeGroupKey: _angular_core.WritableSignal<string>;
|
|
425
|
+
isFlyoutOpen: _angular_core.WritableSignal<boolean>;
|
|
426
|
+
isFlyoutLocked: _angular_core.WritableSignal<boolean>;
|
|
427
|
+
searchText: _angular_core.WritableSignal<string>;
|
|
428
|
+
activePath: _angular_core.WritableSignal<string>;
|
|
429
|
+
interaction: _angular_core.Signal<"click" | "hover-lock">;
|
|
430
|
+
railItems: _angular_core.Signal<SidebarV2RailItem[]>;
|
|
431
|
+
activeGroup: _angular_core.Signal<SdLayoutMenu | undefined>;
|
|
432
|
+
contextMenus: _angular_core.Signal<SdLayoutMenu[]>;
|
|
433
|
+
pinnedKeys: _angular_core.WritableSignal<string[]>;
|
|
434
|
+
constructor();
|
|
435
|
+
selectGroup(menu: SdLayoutMenu): void;
|
|
436
|
+
previewGroup(menu: SdLayoutMenu): void;
|
|
437
|
+
leaveFlyout(): void;
|
|
438
|
+
closeFromBackdrop(): void;
|
|
439
|
+
closeFromEscape(): void;
|
|
440
|
+
closeFromNavigation(): void;
|
|
441
|
+
onNavigate(menu: SdLayoutMenu): void;
|
|
442
|
+
onTogglePinned(menu: SdLayoutMenu): void;
|
|
443
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<SidebarV2Component, never>;
|
|
444
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<SidebarV2Component, "sidebar-v2", never, { "menus": { "alias": "menus"; "required": false; "isSignal": true; }; "userInfo": { "alias": "userInfo"; "required": true; "isSignal": true; }; "sidebar": { "alias": "sidebar"; "required": true; "isSignal": true; }; }, {}, never, ["*"], true, never>;
|
|
445
|
+
}
|
|
446
|
+
|
|
447
|
+
declare class SidebarMobileV2Component {
|
|
448
|
+
#private;
|
|
449
|
+
menus: _angular_core.InputSignal<SdLayoutMenu[]>;
|
|
450
|
+
userInfo: _angular_core.InputSignal<SdLayoutUserInfo>;
|
|
451
|
+
sidebar: _angular_core.InputSignal<SidebarConfigurationV2>;
|
|
452
|
+
primaryMenus: _angular_core.Signal<SdLayoutMenu[]>;
|
|
453
|
+
overflowMenus: _angular_core.Signal<SdLayoutMenu[]>;
|
|
454
|
+
isSheetOpen: _angular_core.WritableSignal<boolean>;
|
|
455
|
+
sheetGroupKey: _angular_core.WritableSignal<string>;
|
|
456
|
+
sheetTitle: _angular_core.WritableSignal<string>;
|
|
457
|
+
sheetMenus: _angular_core.WritableSignal<SdLayoutMenu[]>;
|
|
458
|
+
searchText: _angular_core.WritableSignal<string>;
|
|
459
|
+
activePath: _angular_core.WritableSignal<string>;
|
|
460
|
+
pinnedKeys: _angular_core.WritableSignal<string[]>;
|
|
461
|
+
constructor();
|
|
462
|
+
openMore(trigger?: EventTarget | null): void;
|
|
463
|
+
activateMenu(menu: SdLayoutMenu, trigger?: EventTarget | null): void;
|
|
464
|
+
closeSheet(restoreFocus?: boolean): void;
|
|
465
|
+
onSheetKeydown(event: KeyboardEvent): void;
|
|
466
|
+
onNavigate(menu: SdLayoutMenu): void;
|
|
467
|
+
onTogglePinned(menu: SdLayoutMenu): void;
|
|
468
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<SidebarMobileV2Component, never>;
|
|
469
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<SidebarMobileV2Component, "sidebar-mobile-v2", never, { "menus": { "alias": "menus"; "required": false; "isSignal": true; }; "userInfo": { "alias": "userInfo"; "required": true; "isSignal": true; }; "sidebar": { "alias": "sidebar"; "required": true; "isSignal": true; }; }, {}, never, ["*"], true, never>;
|
|
470
|
+
}
|
|
471
|
+
|
|
472
|
+
declare class SidebarV3Component {
|
|
473
|
+
#private;
|
|
474
|
+
menus: _angular_core.InputSignal<SdLayoutMenu[]>;
|
|
475
|
+
userInfo: _angular_core.InputSignal<SdLayoutUserInfo>;
|
|
476
|
+
sidebar: _angular_core.InputSignal<SidebarConfigurationV3>;
|
|
477
|
+
isCollapsed: _angular_core.WritableSignal<boolean>;
|
|
478
|
+
searchText: _angular_core.WritableSignal<string>;
|
|
479
|
+
activePath: _angular_core.WritableSignal<string>;
|
|
480
|
+
searchResults: _angular_core.Signal<SdLayoutRootMenu[]>;
|
|
481
|
+
recentConfiguration: _angular_core.Signal<_sdcorejs_angular_modules_layout.ResolvedSidebarRecentConfiguration>;
|
|
482
|
+
pinnedKeys: _angular_core.WritableSignal<string[]>;
|
|
483
|
+
pinnedMenus: _angular_core.Signal<(SdLayoutRootMenu | _sdcorejs_angular_modules_layout.SdLayoutChildrenMenu)[]>;
|
|
484
|
+
recentMenus: _angular_core.Signal<(SdLayoutRootMenu | _sdcorejs_angular_modules_layout.SdLayoutChildrenMenu)[]>;
|
|
485
|
+
collapsedItems: _angular_core.Signal<{
|
|
486
|
+
menu: SdLayoutMenu;
|
|
487
|
+
key: string;
|
|
488
|
+
title: string;
|
|
489
|
+
}[]>;
|
|
490
|
+
constructor();
|
|
491
|
+
toggleCollapsed(): void;
|
|
492
|
+
activateCollapsedMenu(menu: SdLayoutMenu): void;
|
|
493
|
+
navigateMenu(menu: SdLayoutMenu): void;
|
|
494
|
+
onTogglePinned(menu: SdLayoutMenu): void;
|
|
495
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<SidebarV3Component, never>;
|
|
496
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<SidebarV3Component, "sidebar-v3", never, { "menus": { "alias": "menus"; "required": false; "isSignal": true; }; "userInfo": { "alias": "userInfo"; "required": true; "isSignal": true; }; "sidebar": { "alias": "sidebar"; "required": true; "isSignal": true; }; }, {}, never, ["*"], true, never>;
|
|
497
|
+
}
|
|
498
|
+
|
|
499
|
+
declare class SidebarMobileV3Component {
|
|
500
|
+
#private;
|
|
501
|
+
private readonly trigger;
|
|
502
|
+
menus: _angular_core.InputSignal<SdLayoutMenu[]>;
|
|
503
|
+
userInfo: _angular_core.InputSignal<SdLayoutUserInfo>;
|
|
504
|
+
sidebar: _angular_core.InputSignal<SidebarConfigurationV3>;
|
|
505
|
+
isDrawerOpen: _angular_core.WritableSignal<boolean>;
|
|
506
|
+
searchText: _angular_core.WritableSignal<string>;
|
|
507
|
+
activePath: _angular_core.WritableSignal<string>;
|
|
508
|
+
searchResults: _angular_core.Signal<SdLayoutRootMenu[]>;
|
|
509
|
+
recentConfiguration: _angular_core.Signal<_sdcorejs_angular_modules_layout.ResolvedSidebarRecentConfiguration>;
|
|
510
|
+
pinnedKeys: _angular_core.WritableSignal<string[]>;
|
|
511
|
+
pinnedMenus: _angular_core.Signal<(SdLayoutRootMenu | _sdcorejs_angular_modules_layout.SdLayoutChildrenMenu)[]>;
|
|
512
|
+
recentMenus: _angular_core.Signal<(SdLayoutRootMenu | _sdcorejs_angular_modules_layout.SdLayoutChildrenMenu)[]>;
|
|
513
|
+
constructor();
|
|
514
|
+
openDrawer(trigger?: EventTarget | null): void;
|
|
515
|
+
closeFromBackdrop(): void;
|
|
516
|
+
closeFromEscape(): void;
|
|
517
|
+
closeFromNavigation(): void;
|
|
518
|
+
onDrawerKeydown(event: KeyboardEvent): void;
|
|
519
|
+
navigateMenu(menu: SdLayoutMenu): void;
|
|
520
|
+
onTogglePinned(menu: SdLayoutMenu): void;
|
|
521
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<SidebarMobileV3Component, never>;
|
|
522
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<SidebarMobileV3Component, "sidebar-mobile-v3", never, { "menus": { "alias": "menus"; "required": false; "isSignal": true; }; "userInfo": { "alias": "userInfo"; "required": true; "isSignal": true; }; "sidebar": { "alias": "sidebar"; "required": true; "isSignal": true; }; }, {}, never, ["*"], true, never>;
|
|
523
|
+
}
|
|
524
|
+
|
|
525
|
+
declare class MenuPipe implements PipeTransform {
|
|
526
|
+
#private;
|
|
527
|
+
private permissionService;
|
|
528
|
+
/** Inserted by Angular inject() migration for backwards compatibility */
|
|
529
|
+
constructor(...args: unknown[]);
|
|
530
|
+
transform(menus: SdLayoutMenu[]): SdLayoutMenu[];
|
|
531
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<MenuPipe, never>;
|
|
532
|
+
static ɵpipe: _angular_core.ɵɵPipeDeclaration<MenuPipe, "menu", true>;
|
|
533
|
+
static ɵprov: _angular_core.ɵɵInjectableDeclaration<MenuPipe>;
|
|
534
|
+
}
|
|
535
|
+
|
|
536
|
+
declare class MenuFocusPipe implements PipeTransform {
|
|
537
|
+
#private;
|
|
538
|
+
transform(routePath: string, menuItem: SdLayoutMenu): boolean;
|
|
539
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<MenuFocusPipe, never>;
|
|
540
|
+
static ɵpipe: _angular_core.ɵɵPipeDeclaration<MenuFocusPipe, "menuFocus", true>;
|
|
541
|
+
static ɵprov: _angular_core.ɵɵInjectableDeclaration<MenuFocusPipe>;
|
|
542
|
+
}
|
|
543
|
+
|
|
544
|
+
declare class HighlightSearchPipe implements PipeTransform {
|
|
545
|
+
#private;
|
|
546
|
+
transform(value: string, keyword: string, args?: {
|
|
547
|
+
color?: string;
|
|
548
|
+
}): string;
|
|
549
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<HighlightSearchPipe, never>;
|
|
550
|
+
static ɵpipe: _angular_core.ɵɵPipeDeclaration<HighlightSearchPipe, "highLightSearch", true>;
|
|
551
|
+
}
|
|
552
|
+
|
|
216
553
|
declare class SdLayoutModule {
|
|
217
554
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<SdLayoutModule, never>;
|
|
218
555
|
static ɵmod: _angular_core.ɵɵNgModuleDeclaration<SdLayoutModule, never, [typeof i1.RouterModule], never>;
|
|
219
556
|
static ɵinj: _angular_core.ɵɵInjectorDeclaration<SdLayoutModule>;
|
|
220
557
|
}
|
|
221
558
|
|
|
222
|
-
export { ForbiddenModule, HomeModule, NotFoundModule, SD_LAYOUT_CONFIGURATION, SdLayoutComponent, SdLayoutModule, SdLayoutService, SdLayoutStorageService, SdPageComponent, SidebarMobileOverlayComponent, SidebarMobileV1Component };
|
|
223
|
-
export type { ISdLayoutConfiguration, ISdSidebarConfiguration, Menus, SdLayoutChildrenMenu, SdLayoutMenu, SdLayoutRootMenu, SdLayoutUserInfo, SidebarConfigurationV1 };
|
|
559
|
+
export { DEFAULT_LAYOUT_MOBILE_BREAKPOINT, ForbiddenModule, HighlightSearchPipe, HomeModule, MenuFocusPipe, MenuPipe, NotFoundModule, SD_LAYOUT_CONFIGURATION, SD_LAYOUT_VIEWPORT, SdLayoutComponent, SdLayoutMenuTreeComponent, SdLayoutModule, SdLayoutNavigationStateService, SdLayoutResponsiveService, SdLayoutService, SdLayoutStorageService, SdLayoutUserMenuComponent, SdPageComponent, SidebarMobileOverlayComponent, SidebarMobileV1Component, SidebarMobileV2Component, SidebarMobileV3Component, SidebarV2Component, SidebarV3Component, flattenMenuLeaves, getMenuStableKey, normalizeLayoutMobileBreakpoint, normalizeSidebarConfiguration, resolveMenuKeys, resolveSidebarV2Interaction, resolveSidebarV3Recent, searchMenuLeaves, selectPrimaryMenuGroups };
|
|
560
|
+
export type { ISdLayoutConfiguration, ISdSidebarConfiguration, Menus, ResolvedSidebarRecentConfiguration, SdLayoutAccountAction, SdLayoutChildrenMenu, SdLayoutMenu, SdLayoutNotificationConfiguration, SdLayoutRootMenu, SdLayoutUserInfo, SdLayoutUserRole, SdLayoutVersionState, SdLayoutViewport, SidebarConfigurationBase, SidebarConfigurationV1, SidebarConfigurationV2, SidebarConfigurationV3 };
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@sdcorejs/angular",
|
|
3
|
-
"version": "20.1.
|
|
3
|
+
"version": "20.1.5",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"peerDependencies": {
|
|
6
6
|
"@angular/common": "^19.0.0 || ^20.0.0 || ^21.0.0",
|
|
@@ -43,6 +43,10 @@
|
|
|
43
43
|
"types": "./components/anchor/index.d.ts",
|
|
44
44
|
"default": "./fesm2022/sdcorejs-angular-components-anchor.mjs"
|
|
45
45
|
},
|
|
46
|
+
"./components/audit-diff": {
|
|
47
|
+
"types": "./components/audit-diff/index.d.ts",
|
|
48
|
+
"default": "./fesm2022/sdcorejs-angular-components-audit-diff.mjs"
|
|
49
|
+
},
|
|
46
50
|
"./components/autoid-inspector": {
|
|
47
51
|
"types": "./components/autoid-inspector/index.d.ts",
|
|
48
52
|
"default": "./fesm2022/sdcorejs-angular-components-autoid-inspector.mjs"
|
|
@@ -59,6 +63,10 @@
|
|
|
59
63
|
"types": "./components/base/index.d.ts",
|
|
60
64
|
"default": "./fesm2022/sdcorejs-angular-components-base.mjs"
|
|
61
65
|
},
|
|
66
|
+
"./components/breadcrumb": {
|
|
67
|
+
"types": "./components/breadcrumb/index.d.ts",
|
|
68
|
+
"default": "./fesm2022/sdcorejs-angular-components-breadcrumb.mjs"
|
|
69
|
+
},
|
|
62
70
|
"./components/button": {
|
|
63
71
|
"types": "./components/button/index.d.ts",
|
|
64
72
|
"default": "./fesm2022/sdcorejs-angular-components-button.mjs"
|
|
@@ -75,6 +83,10 @@
|
|
|
75
83
|
"types": "./components/code-editor/index.d.ts",
|
|
76
84
|
"default": "./fesm2022/sdcorejs-angular-components-code-editor.mjs"
|
|
77
85
|
},
|
|
86
|
+
"./components/data-state": {
|
|
87
|
+
"types": "./components/data-state/index.d.ts",
|
|
88
|
+
"default": "./fesm2022/sdcorejs-angular-components-data-state.mjs"
|
|
89
|
+
},
|
|
78
90
|
"./components/document-builder": {
|
|
79
91
|
"types": "./components/document-builder/index.d.ts",
|
|
80
92
|
"default": "./fesm2022/sdcorejs-angular-components-document-builder.mjs"
|
|
@@ -99,6 +111,10 @@
|
|
|
99
111
|
"types": "./components/inform/index.d.ts",
|
|
100
112
|
"default": "./fesm2022/sdcorejs-angular-components-inform.mjs"
|
|
101
113
|
},
|
|
114
|
+
"./components/job-progress": {
|
|
115
|
+
"types": "./components/job-progress/index.d.ts",
|
|
116
|
+
"default": "./fesm2022/sdcorejs-angular-components-job-progress.mjs"
|
|
117
|
+
},
|
|
102
118
|
"./components/mini-editor": {
|
|
103
119
|
"types": "./components/mini-editor/index.d.ts",
|
|
104
120
|
"default": "./fesm2022/sdcorejs-angular-components-mini-editor.mjs"
|
|
@@ -219,6 +235,10 @@
|
|
|
219
235
|
"types": "./forms/directives/index.d.ts",
|
|
220
236
|
"default": "./fesm2022/sdcorejs-angular-forms-directives.mjs"
|
|
221
237
|
},
|
|
238
|
+
"./forms/entity-picker": {
|
|
239
|
+
"types": "./forms/entity-picker/index.d.ts",
|
|
240
|
+
"default": "./fesm2022/sdcorejs-angular-forms-entity-picker.mjs"
|
|
241
|
+
},
|
|
222
242
|
"./forms/inline-text": {
|
|
223
243
|
"types": "./forms/inline-text/index.d.ts",
|
|
224
244
|
"default": "./fesm2022/sdcorejs-angular-forms-inline-text.mjs"
|
|
@@ -259,6 +279,18 @@
|
|
|
259
279
|
"types": "./forms/textarea/index.d.ts",
|
|
260
280
|
"default": "./fesm2022/sdcorejs-angular-forms-textarea.mjs"
|
|
261
281
|
},
|
|
282
|
+
"./forms/time": {
|
|
283
|
+
"types": "./forms/time/index.d.ts",
|
|
284
|
+
"default": "./fesm2022/sdcorejs-angular-forms-time.mjs"
|
|
285
|
+
},
|
|
286
|
+
"./forms/time-range": {
|
|
287
|
+
"types": "./forms/time-range/index.d.ts",
|
|
288
|
+
"default": "./fesm2022/sdcorejs-angular-forms-time-range.mjs"
|
|
289
|
+
},
|
|
290
|
+
"./forms/tree-select": {
|
|
291
|
+
"types": "./forms/tree-select/index.d.ts",
|
|
292
|
+
"default": "./fesm2022/sdcorejs-angular-forms-tree-select.mjs"
|
|
293
|
+
},
|
|
262
294
|
"./handlers": {
|
|
263
295
|
"types": "./handlers/index.d.ts",
|
|
264
296
|
"default": "./fesm2022/sdcorejs-angular-handlers.mjs"
|
|
@@ -339,10 +371,26 @@
|
|
|
339
371
|
"types": "./services/notify/index.d.ts",
|
|
340
372
|
"default": "./fesm2022/sdcorejs-angular-services-notify.mjs"
|
|
341
373
|
},
|
|
374
|
+
"./services/persistence": {
|
|
375
|
+
"types": "./services/persistence/index.d.ts",
|
|
376
|
+
"default": "./fesm2022/sdcorejs-angular-services-persistence.mjs"
|
|
377
|
+
},
|
|
342
378
|
"./services/storage": {
|
|
343
379
|
"types": "./services/storage/index.d.ts",
|
|
344
380
|
"default": "./fesm2022/sdcorejs-angular-services-storage.mjs"
|
|
345
381
|
},
|
|
382
|
+
"./services/task": {
|
|
383
|
+
"types": "./services/task/index.d.ts",
|
|
384
|
+
"default": "./fesm2022/sdcorejs-angular-services-task.mjs"
|
|
385
|
+
},
|
|
386
|
+
"./services/unsaved-changes": {
|
|
387
|
+
"types": "./services/unsaved-changes/index.d.ts",
|
|
388
|
+
"default": "./fesm2022/sdcorejs-angular-services-unsaved-changes.mjs"
|
|
389
|
+
},
|
|
390
|
+
"./services/viewport": {
|
|
391
|
+
"types": "./services/viewport/index.d.ts",
|
|
392
|
+
"default": "./fesm2022/sdcorejs-angular-services-viewport.mjs"
|
|
393
|
+
},
|
|
346
394
|
"./utilities": {
|
|
347
395
|
"types": "./utilities/index.d.ts",
|
|
348
396
|
"default": "./fesm2022/sdcorejs-angular-utilities.mjs"
|
package/pipes/index.d.ts
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
2
|
import { PipeTransform } from '@angular/core';
|
|
3
3
|
import * as _angular_platform_browser from '@angular/platform-browser';
|
|
4
|
-
import { DomSanitizer } from '@angular/platform-browser';
|
|
5
4
|
import { Observable } from 'rxjs';
|
|
6
5
|
|
|
7
6
|
declare class SdFormatDatePipe implements PipeTransform {
|
|
@@ -28,7 +27,8 @@ declare class SdFormatNumberPipe implements PipeTransform {
|
|
|
28
27
|
|
|
29
28
|
declare class SdSafeHtmlPipe implements PipeTransform {
|
|
30
29
|
private sanitizer;
|
|
31
|
-
|
|
30
|
+
/** Inserted by Angular inject() migration for backwards compatibility */
|
|
31
|
+
constructor(...args: unknown[]);
|
|
32
32
|
transform(html: string | number | undefined | null): _angular_platform_browser.SafeHtml | undefined;
|
|
33
33
|
static ɵfac: i0.ɵɵFactoryDeclaration<SdSafeHtmlPipe, never>;
|
|
34
34
|
static ɵpipe: i0.ɵɵPipeDeclaration<SdSafeHtmlPipe, "sdSafeHtml", true>;
|