@sd-angular/core 19.0.0-beta.6 → 19.0.0-beta.61

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.
Files changed (220) hide show
  1. package/README.md +686 -33
  2. package/assets/scss/ckeditor5.scss +60 -2
  3. package/assets/scss/core/bootstrap.scss +17 -0
  4. package/assets/scss/core/form.scss +4 -1
  5. package/assets/scss/core/grid.scss +40 -0
  6. package/assets/scss/sd-core.scss +1 -0
  7. package/assets/scss/themes/material-theme.scss +61 -36
  8. package/components/avatar/index.d.ts +1 -0
  9. package/components/avatar/src/avatar.component.d.ts +19 -0
  10. package/components/badge/src/badge.component.d.ts +77 -19
  11. package/components/button/src/button.component.d.ts +30 -28
  12. package/components/code-editor/index.d.ts +1 -0
  13. package/components/code-editor/src/code-editor.component.d.ts +25 -0
  14. package/components/document-builder/index.d.ts +1 -0
  15. package/components/document-builder/src/document-builder.component.d.ts +12 -41
  16. package/components/document-builder/src/document-builder.model.d.ts +14 -11
  17. package/components/document-builder/src/plugins/block-space/block-space.plugin.d.ts +9 -0
  18. package/components/document-builder/src/plugins/ck-comment/ck-comment.plugin.d.ts +44 -0
  19. package/components/document-builder/src/plugins/ck-comment/ck-comment.plugin.model.d.ts +57 -0
  20. package/components/document-builder/src/plugins/heading/heading.plugin.d.ts +1 -0
  21. package/components/document-builder/src/plugins/highlight-range/highlight-range.plugin.d.ts +4 -0
  22. package/components/document-builder/src/plugins/image-custom/image-custom.plugin.d.ts +31 -0
  23. package/components/document-builder/src/plugins/index.d.ts +7 -2
  24. package/components/document-builder/src/plugins/page-orientation/page-orientation.plugin.d.ts +2 -2
  25. package/components/document-builder/src/plugins/paste-handler/filters/bookmark.d.ts +14 -0
  26. package/components/document-builder/src/plugins/paste-handler/filters/br.d.ts +15 -0
  27. package/components/document-builder/src/plugins/paste-handler/filters/image.d.ts +25 -0
  28. package/components/document-builder/src/plugins/paste-handler/filters/list.d.ts +29 -0
  29. package/components/document-builder/src/plugins/paste-handler/filters/parse.d.ts +35 -0
  30. package/components/document-builder/src/plugins/paste-handler/filters/removeboldwrapper.d.ts +15 -0
  31. package/components/document-builder/src/plugins/paste-handler/filters/removegooglesheetstag.d.ts +15 -0
  32. package/components/document-builder/src/plugins/paste-handler/filters/removeinvalidtablewidth.d.ts +15 -0
  33. package/components/document-builder/src/plugins/paste-handler/filters/removemsattributes.d.ts +15 -0
  34. package/components/document-builder/src/plugins/paste-handler/filters/removestyleblock.d.ts +15 -0
  35. package/components/document-builder/src/plugins/paste-handler/filters/removexmlns.d.ts +15 -0
  36. package/components/document-builder/src/plugins/paste-handler/filters/replacemsfootnotes.d.ts +54 -0
  37. package/components/document-builder/src/plugins/paste-handler/filters/replacetabswithinprewithspaces.d.ts +24 -0
  38. package/components/document-builder/src/plugins/paste-handler/filters/space.d.ts +27 -0
  39. package/components/document-builder/src/plugins/paste-handler/filters/table.d.ts +16 -0
  40. package/components/document-builder/src/plugins/paste-handler/filters/utils.d.ts +25 -0
  41. package/components/document-builder/src/plugins/paste-handler/index.d.ts +35 -0
  42. package/components/document-builder/src/plugins/paste-handler/normalizers/googledocsnormalizer.d.ts +31 -0
  43. package/components/document-builder/src/plugins/paste-handler/normalizers/googlesheetsnormalizer.d.ts +31 -0
  44. package/components/document-builder/src/plugins/paste-handler/normalizers/mswordnormalizer.d.ts +29 -0
  45. package/components/document-builder/src/plugins/paste-handler/types.d.ts +30 -0
  46. package/components/document-builder/src/plugins/table-custom/index.d.ts +34 -0
  47. package/components/document-builder/src/plugins/variable/variable.plugin.d.ts +39 -0
  48. package/components/index.d.ts +4 -0
  49. package/components/mini-editor/index.d.ts +2 -0
  50. package/components/mini-editor/src/mini-editor.component.d.ts +90 -0
  51. package/components/mini-editor/src/mini-editor.model.d.ts +44 -0
  52. package/components/section/src/section.component.d.ts +10 -11
  53. package/components/side-drawer/src/side-drawer.component.d.ts +11 -24
  54. package/components/tab-router/src/components/tab-router-item/tab-router-item.component.d.ts +4 -1
  55. package/components/tab-router/src/components/tab-router-outlet/tab-router-outlet.component.d.ts +3 -15
  56. package/components/table/src/components/column-filter/column-filter.component.d.ts +3 -3
  57. package/components/table/src/components/desktop-cell/desktop-cell.component.d.ts +12 -2
  58. package/components/table/src/components/desktop-cell-view/desktop-cell-view.component.d.ts +12 -2
  59. package/components/table/src/components/external-filter/external-filter.component.d.ts +1 -1
  60. package/components/table/src/components/selector-action/action-filter.pipe.d.ts +11 -10
  61. package/components/table/src/components/selector-action/selector-action.component.d.ts +5 -3
  62. package/components/table/src/directives/index.d.ts +2 -0
  63. package/components/table/src/directives/sd-table-column-filter-def.directive.d.ts +9 -0
  64. package/components/table/src/directives/sticky-shadow.directive.d.ts +17 -0
  65. package/components/table/src/models/table-column.model.d.ts +34 -34
  66. package/components/table/src/models/table-command.model.d.ts +7 -3
  67. package/components/table/src/models/table-item.model.d.ts +5 -4
  68. package/components/table/src/models/table-option-config.model.d.ts +5 -0
  69. package/components/table/src/models/table-option-export.model.d.ts +3 -2
  70. package/components/table/src/models/table-option-selector.model.d.ts +11 -10
  71. package/components/table/src/models/table-option.model.d.ts +10 -9
  72. package/components/table/src/services/index.d.ts +3 -0
  73. package/components/table/src/services/table-export/table-export.service.d.ts +26 -0
  74. package/components/table/src/services/table-filter/table-filter.model.d.ts +5 -4
  75. package/components/table/src/services/table-format/table-format.service.d.ts +16 -0
  76. package/components/table/src/table.component.d.ts +39 -53
  77. package/components/upload-file/src/configurations/upload-file.configuration.d.ts +1 -1
  78. package/components/upload-file/src/services/upload-file.service.d.ts +0 -1
  79. package/components/upload-file/src/upload-file.component.d.ts +49 -54
  80. package/components/view/index.d.ts +1 -0
  81. package/components/view/src/view.component.d.ts +16 -0
  82. package/components/workflow/src/models/form-generic-component.model.d.ts +5 -4
  83. package/components/workflow/src/models/index.d.ts +1 -0
  84. package/directives/index.d.ts +1 -0
  85. package/directives/src/sd-href.directive.d.ts +9 -0
  86. package/fesm2022/sd-angular-core-components-avatar.mjs +103 -0
  87. package/fesm2022/sd-angular-core-components-avatar.mjs.map +1 -0
  88. package/fesm2022/sd-angular-core-components-badge.mjs +101 -91
  89. package/fesm2022/sd-angular-core-components-badge.mjs.map +1 -1
  90. package/fesm2022/sd-angular-core-components-button.mjs +70 -96
  91. package/fesm2022/sd-angular-core-components-button.mjs.map +1 -1
  92. package/fesm2022/sd-angular-core-components-code-editor.mjs +129 -0
  93. package/fesm2022/sd-angular-core-components-code-editor.mjs.map +1 -0
  94. package/fesm2022/sd-angular-core-components-document-builder.mjs +3994 -608
  95. package/fesm2022/sd-angular-core-components-document-builder.mjs.map +1 -1
  96. package/fesm2022/sd-angular-core-components-history.mjs +1 -1
  97. package/fesm2022/sd-angular-core-components-history.mjs.map +1 -1
  98. package/fesm2022/sd-angular-core-components-import-excel.mjs +1 -1
  99. package/fesm2022/sd-angular-core-components-import-excel.mjs.map +1 -1
  100. package/fesm2022/sd-angular-core-components-mini-editor.mjs +326 -0
  101. package/fesm2022/sd-angular-core-components-mini-editor.mjs.map +1 -0
  102. package/fesm2022/sd-angular-core-components-preview.mjs +1 -1
  103. package/fesm2022/sd-angular-core-components-preview.mjs.map +1 -1
  104. package/fesm2022/sd-angular-core-components-section.mjs +24 -42
  105. package/fesm2022/sd-angular-core-components-section.mjs.map +1 -1
  106. package/fesm2022/sd-angular-core-components-side-drawer.mjs +78 -84
  107. package/fesm2022/sd-angular-core-components-side-drawer.mjs.map +1 -1
  108. package/fesm2022/sd-angular-core-components-tab-router.mjs +152 -226
  109. package/fesm2022/sd-angular-core-components-tab-router.mjs.map +1 -1
  110. package/fesm2022/sd-angular-core-components-table.mjs +1129 -1131
  111. package/fesm2022/sd-angular-core-components-table.mjs.map +1 -1
  112. package/fesm2022/sd-angular-core-components-upload-file.mjs +339 -444
  113. package/fesm2022/sd-angular-core-components-upload-file.mjs.map +1 -1
  114. package/fesm2022/sd-angular-core-components-view.mjs +45 -0
  115. package/fesm2022/sd-angular-core-components-view.mjs.map +1 -0
  116. package/fesm2022/sd-angular-core-components-workflow.mjs +47 -57
  117. package/fesm2022/sd-angular-core-components-workflow.mjs.map +1 -1
  118. package/fesm2022/sd-angular-core-components.mjs +4 -0
  119. package/fesm2022/sd-angular-core-components.mjs.map +1 -1
  120. package/fesm2022/sd-angular-core-directives.mjs +80 -27
  121. package/fesm2022/sd-angular-core-directives.mjs.map +1 -1
  122. package/fesm2022/sd-angular-core-forms-autocomplete.mjs +274 -364
  123. package/fesm2022/sd-angular-core-forms-autocomplete.mjs.map +1 -1
  124. package/fesm2022/sd-angular-core-forms-chip-calendar.mjs +5 -2
  125. package/fesm2022/sd-angular-core-forms-chip-calendar.mjs.map +1 -1
  126. package/fesm2022/sd-angular-core-forms-chip.mjs +5 -2
  127. package/fesm2022/sd-angular-core-forms-chip.mjs.map +1 -1
  128. package/fesm2022/sd-angular-core-forms-date-range.mjs +160 -245
  129. package/fesm2022/sd-angular-core-forms-date-range.mjs.map +1 -1
  130. package/fesm2022/sd-angular-core-forms-date.mjs +153 -273
  131. package/fesm2022/sd-angular-core-forms-date.mjs.map +1 -1
  132. package/fesm2022/sd-angular-core-forms-datetime.mjs +152 -288
  133. package/fesm2022/sd-angular-core-forms-datetime.mjs.map +1 -1
  134. package/fesm2022/sd-angular-core-forms-input-number.mjs +191 -338
  135. package/fesm2022/sd-angular-core-forms-input-number.mjs.map +1 -1
  136. package/fesm2022/sd-angular-core-forms-input.mjs +149 -287
  137. package/fesm2022/sd-angular-core-forms-input.mjs.map +1 -1
  138. package/fesm2022/sd-angular-core-forms-radio.mjs +3 -2
  139. package/fesm2022/sd-angular-core-forms-radio.mjs.map +1 -1
  140. package/fesm2022/sd-angular-core-forms-select.mjs +375 -448
  141. package/fesm2022/sd-angular-core-forms-select.mjs.map +1 -1
  142. package/fesm2022/sd-angular-core-forms-textarea.mjs +148 -227
  143. package/fesm2022/sd-angular-core-forms-textarea.mjs.map +1 -1
  144. package/fesm2022/sd-angular-core-modules-keycloak.mjs +126 -0
  145. package/fesm2022/sd-angular-core-modules-keycloak.mjs.map +1 -0
  146. package/fesm2022/sd-angular-core-modules-layout.mjs +454 -453
  147. package/fesm2022/sd-angular-core-modules-layout.mjs.map +1 -1
  148. package/fesm2022/sd-angular-core-modules.mjs +1 -1
  149. package/fesm2022/sd-angular-core-services-api.mjs +5 -10
  150. package/fesm2022/sd-angular-core-services-api.mjs.map +1 -1
  151. package/fesm2022/sd-angular-core-services-confirm.mjs +5 -7
  152. package/fesm2022/sd-angular-core-services-confirm.mjs.map +1 -1
  153. package/fesm2022/sd-angular-core-services-docx.mjs +173 -0
  154. package/fesm2022/sd-angular-core-services-docx.mjs.map +1 -0
  155. package/fesm2022/sd-angular-core-services-notify.mjs +2 -2
  156. package/fesm2022/sd-angular-core-services-notify.mjs.map +1 -1
  157. package/fesm2022/sd-angular-core-services.mjs +1 -0
  158. package/fesm2022/sd-angular-core-services.mjs.map +1 -1
  159. package/fesm2022/sd-angular-core-utilities-extensions.mjs +21 -45
  160. package/fesm2022/sd-angular-core-utilities-extensions.mjs.map +1 -1
  161. package/fesm2022/sd-angular-core-utilities-models.mjs +15 -1
  162. package/fesm2022/sd-angular-core-utilities-models.mjs.map +1 -1
  163. package/forms/autocomplete/src/autocomplete.component.d.ts +50 -55
  164. package/forms/chip/src/chip.component.d.ts +3 -2
  165. package/forms/chip-calendar/src/chip-calendar.component.d.ts +3 -2
  166. package/forms/date/src/date.component.d.ts +43 -46
  167. package/forms/date-range/src/date-range.component.d.ts +30 -34
  168. package/forms/datetime/src/datetime.component.d.ts +43 -49
  169. package/forms/input/src/input.component.d.ts +48 -57
  170. package/forms/input-number/src/input-number.component.d.ts +48 -54
  171. package/forms/select/src/select.component.d.ts +62 -64
  172. package/forms/textarea/src/textarea.component.d.ts +35 -43
  173. package/modules/index.d.ts +1 -1
  174. package/modules/keycloak/index.d.ts +4 -0
  175. package/modules/keycloak/keycloak.configuration.d.ts +11 -0
  176. package/modules/keycloak/keycloak.interceptor.d.ts +2 -0
  177. package/modules/keycloak/keycloak.module.d.ts +18 -0
  178. package/modules/keycloak/keycloak.service.d.ts +14 -0
  179. package/modules/layout/components/layout-main/layout-main.component.d.ts +7 -12
  180. package/modules/layout/components/page/page.component.d.ts +5 -7
  181. package/modules/layout/components/sidebar-v1/components/sidebar/sidebar.component.d.ts +22 -29
  182. package/modules/layout/components/sidebar-v1/components/user/user.component.d.ts +11 -17
  183. package/modules/layout/components/sidebar-v1/main.component.d.ts +14 -14
  184. package/modules/layout/configurations/layout.configuration.d.ts +46 -3
  185. package/modules/layout/modules/forbidden/pages/root/root.component.d.ts +3 -8
  186. package/modules/layout/modules/home/components/home-page/home-page.component.d.ts +2 -5
  187. package/modules/layout/modules/not-found/pages/root/root.component.d.ts +3 -8
  188. package/modules/layout/pipes/high-light-search.pipe.d.ts +1 -1
  189. package/modules/layout/services/index.d.ts +1 -0
  190. package/modules/layout/services/layout.service.d.ts +10 -0
  191. package/modules/layout/services/menu/menu.model.d.ts +2 -0
  192. package/modules/layout/services/storage/storage.service.d.ts +0 -3
  193. package/package.json +80 -57
  194. package/sd-angular-core-19.0.0-beta.61.tgz +0 -0
  195. package/services/api/src/api.model.d.ts +6 -1
  196. package/services/confirm/src/lib/confirm.service.d.ts +1 -0
  197. package/services/docx/index.d.ts +1 -0
  198. package/services/docx/src/lib/docx.model.d.ts +9 -0
  199. package/services/docx/src/lib/docx.service.d.ts +13 -0
  200. package/services/docx/src/public-api.d.ts +2 -0
  201. package/services/index.d.ts +1 -0
  202. package/services/notify/index.d.ts +1 -0
  203. package/services/notify/src/notify.model.d.ts +1 -1
  204. package/services/notify/src/notify.service.d.ts +5 -5
  205. package/utilities/extensions/src/string.extension.d.ts +2 -0
  206. package/utilities/extensions/src/utility.extension.d.ts +1 -0
  207. package/utilities/models/index.d.ts +3 -0
  208. package/utilities/models/src/filter.model.d.ts +14 -2
  209. package/utilities/models/src/icon.model.d.ts +2 -0
  210. package/utilities/models/src/nested-key-of.model.d.ts +5 -0
  211. package/utilities/models/src/pattern.model.d.ts +1 -1
  212. package/utilities/models/src/unwrap-signal.model.d.ts +6 -0
  213. package/components/document-builder/src/plugins/comment/comment.plugin.d.ts +0 -4
  214. package/components/document-builder/src/plugins/table-fit/table-fit.plugin.d.ts +0 -4
  215. package/fesm2022/sd-angular-core-modules-oidc.mjs +0 -127
  216. package/fesm2022/sd-angular-core-modules-oidc.mjs.map +0 -1
  217. package/modules/oidc/dynamic-sts.loader.d.ts +0 -11
  218. package/modules/oidc/index.d.ts +0 -2
  219. package/modules/oidc/oidc.configuration.d.ts +0 -11
  220. package/modules/oidc/oidc.module.d.ts +0 -14
@@ -1,22 +1,16 @@
1
- import { EventEmitter } from '@angular/core';
2
- import { SdLayoutStorageService } from '../../../../services';
3
- import { ISdLayoutConfiguration } from '../../../../configurations';
1
+ import { SdLayoutUserInfo } from '../../../../configurations';
4
2
  import * as i0 from "@angular/core";
5
3
  export declare class LayoutUserComponent {
6
- private layoutConfig;
7
- private layoutStorageService;
8
- isMobileOrTablet: boolean;
9
- isMenuLock: boolean;
10
- isShowSidebar: boolean;
11
- menuClosed: EventEmitter<boolean>;
12
- menuOpened: EventEmitter<boolean>;
13
- toggleMenuLock: EventEmitter<Event>;
14
- email: string;
15
- username: string;
16
- fullName: string;
4
+ #private;
5
+ isMobileOrTablet: import("@angular/core").InputSignal<boolean>;
6
+ isMenuLock: import("@angular/core").InputSignal<boolean>;
7
+ isShowSidebar: import("@angular/core").InputSignal<boolean>;
8
+ userInfo: import("@angular/core").InputSignal<SdLayoutUserInfo>;
9
+ menuClosed: import("@angular/core").OutputEmitterRef<void>;
10
+ menuOpened: import("@angular/core").OutputEmitterRef<void>;
11
+ toggleMenuLock: import("@angular/core").OutputEmitterRef<Event>;
17
12
  singoutLayoutConfig: () => void | Promise<void>;
18
- changePasswordLayoutConfig?: () => void | Promise<void>;
19
- constructor(layoutConfig: ISdLayoutConfiguration, layoutStorageService: SdLayoutStorageService);
13
+ changePasswordLayoutConfig: (() => void | Promise<void>) | undefined;
20
14
  onMenuOpened: () => void;
21
15
  onMenuClosed: () => void;
22
16
  keepOpenWhenClickInsideMenu: (event: Event) => void;
@@ -24,5 +18,5 @@ export declare class LayoutUserComponent {
24
18
  changePassword: () => void;
25
19
  onToggleMenuLock: (event: Event) => void;
26
20
  static ɵfac: i0.ɵɵFactoryDeclaration<LayoutUserComponent, never>;
27
- static ɵcmp: i0.ɵɵComponentDeclaration<LayoutUserComponent, "lib-layout-user", never, { "isMobileOrTablet": { "alias": "isMobileOrTablet"; "required": false; }; "isMenuLock": { "alias": "isMenuLock"; "required": false; }; "isShowSidebar": { "alias": "isShowSidebar"; "required": false; }; }, { "menuClosed": "menuClosed"; "menuOpened": "menuOpened"; "toggleMenuLock": "toggleMenuLock"; }, never, never, true, never>;
21
+ static ɵcmp: i0.ɵɵComponentDeclaration<LayoutUserComponent, "lib-layout-user", never, { "isMobileOrTablet": { "alias": "isMobileOrTablet"; "required": false; "isSignal": true; }; "isMenuLock": { "alias": "isMenuLock"; "required": false; "isSignal": true; }; "isShowSidebar": { "alias": "isShowSidebar"; "required": false; "isSignal": true; }; "userInfo": { "alias": "userInfo"; "required": true; "isSignal": true; }; }, { "menuClosed": "menuClosed"; "menuOpened": "menuOpened"; "toggleMenuLock": "toggleMenuLock"; }, never, never, true, never>;
28
22
  }
@@ -1,24 +1,24 @@
1
1
  import { MatSidenav } from '@angular/material/sidenav';
2
- import { SdLayoutStorageService, SdLayoutMenu } from '../../services';
2
+ import { SdLayoutUserInfo, SidebarConfigurationV1 } from '../../configurations';
3
+ import { SdLayoutMenu } from '../../services';
3
4
  import * as i0 from "@angular/core";
4
- export declare class LayoutSideBarMainV1Component {
5
+ export declare class SidebarV1Component {
5
6
  #private;
6
- private layoutStorageService;
7
- constructor(layoutStorageService: SdLayoutStorageService);
8
- sidenav: MatSidenav;
9
- menus: SdLayoutMenu[];
10
- onhover: boolean;
11
- isMenuLock: boolean;
12
- isShowSidebar: boolean;
13
- isMobileOrTablet: boolean;
14
- timerMouseInMenu: ReturnType<typeof setTimeout> | null;
15
- timerMouseOutMenu: ReturnType<typeof setTimeout> | null;
7
+ sidenav: import("@angular/core").Signal<MatSidenav>;
8
+ menus: import("@angular/core").InputSignal<SdLayoutMenu[]>;
9
+ userInfo: import("@angular/core").InputSignal<SdLayoutUserInfo>;
10
+ sidebar: import("@angular/core").InputSignal<SidebarConfigurationV1>;
11
+ isMobileOrTablet: import("@angular/core").WritableSignal<boolean>;
12
+ isMenuLock: import("@angular/core").WritableSignal<boolean>;
13
+ isShowSidebar: import("@angular/core").WritableSignal<boolean>;
14
+ onhover: import("@angular/core").WritableSignal<boolean>;
15
+ constructor();
16
16
  openSidebar: () => void;
17
17
  onPopupOfSideBarOpened: () => void;
18
18
  onPopupOfSideBarClosed: () => void;
19
19
  onExpandSideBar: () => void;
20
20
  onMouseleaveSideBar: () => void;
21
21
  onToggle: (data: boolean | null) => void;
22
- static ɵfac: i0.ɵɵFactoryDeclaration<LayoutSideBarMainV1Component, never>;
23
- static ɵcmp: i0.ɵɵComponentDeclaration<LayoutSideBarMainV1Component, "lib-layout-sidebar-main-v1", never, { "menus": { "alias": "menus"; "required": false; }; }, {}, never, ["*"], true, never>;
22
+ static ɵfac: i0.ɵɵFactoryDeclaration<SidebarV1Component, never>;
23
+ static ɵcmp: i0.ɵɵComponentDeclaration<SidebarV1Component, "sidebar-v1", 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>;
24
24
  }
@@ -1,16 +1,59 @@
1
1
  import { InjectionToken } from '@angular/core';
2
+ import { SdMaybeAsync } from '@sd-angular/core/utilities/models';
2
3
  export interface ISdLayoutConfiguration {
3
4
  homeUrl?: string;
4
- sidebar: ISdSidebarConfiguration | (() => ISdSidebarConfiguration | Promise<ISdSidebarConfiguration>);
5
+ sidebar: ISdSidebarConfiguration | (() => SdMaybeAsync<ISdSidebarConfiguration>);
6
+ userInfo: SdLayoutUserInfo | (() => SdMaybeAsync<SdLayoutUserInfo>);
5
7
  signout: () => void | Promise<void>;
6
8
  changePassword?: () => void | Promise<void>;
7
9
  }
8
- export type ISdSidebarConfiguration = ISidebarConfigurationV1;
9
- export interface ISidebarConfigurationV1 {
10
+ export interface SdLayoutUserInfo {
11
+ /**
12
+ * Tên đăng nhập hoặc tên định danh của người dùng.
13
+ * Thường dùng làm định danh rút gọn hoặc fallback hiển thị nếu user chưa cập nhật fullName.
14
+ */
15
+ username?: string;
16
+ /**
17
+ * Địa chỉ thư điện tử của người dùng.
18
+ * Thường được hiển thị bên dưới tên người dùng trong popup/menu thông tin tài khoản.
19
+ */
20
+ email?: string;
21
+ /**
22
+ * Họ và tên đầy đủ của người dùng.
23
+ * Đây là thông tin được ưu tiên hiển thị chính trên giao diện (VD: góc phải màn hình, lời chào).
24
+ */
25
+ fullName?: string;
26
+ /**
27
+ * Hình đại diện (avatar) của người dùng.
28
+ * Nếu để trống, hệ thống sẽ tự động lấy ký tự đầu tiên của fullName hoặc username để tạo avatar mặc định.
29
+ * Hỗ trợ các định dạng: URL (http/https), chuỗi base64 (data:image), hoặc đường dẫn nội bộ.
30
+ */
31
+ avatar?: string;
32
+ }
33
+ export type ISdSidebarConfiguration = SidebarConfigurationV1;
34
+ export interface SidebarConfigurationV1 {
10
35
  version: 1;
36
+ /**
37
+ * Màu brand chính.
38
+ * Nên sử dụng mã màu #HEX hoặc rgb để hỗ trợ opacity khi hover.
39
+ * Ví dụ: #1890ff, rgb(24,144,255)
40
+ */
11
41
  brandColor?: string;
42
+ /**
43
+ * Màu brand nhạt (light).
44
+ * Dùng cho background, hover nhẹ.
45
+ */
12
46
  brandLightColor?: string;
47
+ /**
48
+ * URL logo hiển thị ở sidebar.
49
+ * Nên đặt trong thư mục public hoặc dùng URL CDN.
50
+ */
13
51
  logoUrl?: string;
52
+ /**
53
+ * Title mặc định của hệ thống.
54
+ * Nếu menu không truyền title thì sẽ dùng giá trị này.
55
+ * @default "Back Office"
56
+ */
14
57
  defaultTitle?: string;
15
58
  }
16
59
  export declare const SD_LAYOUT_CONFIGURATION: InjectionToken<ISdLayoutConfiguration>;
@@ -1,14 +1,9 @@
1
- import { ActivatedRoute } from '@angular/router';
2
- import { SdLayoutStorageService } from '../../../../services';
3
1
  import * as i0 from "@angular/core";
4
2
  export declare class RootComponent {
5
3
  #private;
6
- private route;
7
- private layoutStorageService;
8
- url: string;
9
- email: string;
10
- constructor(route: ActivatedRoute, layoutStorageService: SdLayoutStorageService);
11
- todayInfo: string;
4
+ readonly url: import("@angular/core").WritableSignal<string>;
5
+ readonly todayInfo: import("@angular/core").WritableSignal<string>;
6
+ userInfo: import("@angular/core").WritableSignal<import("@sd-angular/core/modules/layout").SdLayoutUserInfo | undefined>;
12
7
  reload(): void;
13
8
  static ɵfac: i0.ɵɵFactoryDeclaration<RootComponent, never>;
14
9
  static ɵcmp: i0.ɵɵComponentDeclaration<RootComponent, "ng-component", never, {}, {}, never, never, true, never>;
@@ -1,11 +1,8 @@
1
- import { SdLayoutStorageService } from '../../../../services';
2
1
  import * as i0 from "@angular/core";
3
2
  export declare class HomePageComponent {
4
3
  #private;
5
- private layoutStorageService;
6
- fullName: string;
7
- constructor(layoutStorageService: SdLayoutStorageService);
8
- todayInfo: string;
4
+ readonly todayInfo: import("@angular/core").WritableSignal<string>;
5
+ userInfo: import("@angular/core").WritableSignal<import("@sd-angular/core/modules/layout").SdLayoutUserInfo | undefined>;
9
6
  static ɵfac: i0.ɵɵFactoryDeclaration<HomePageComponent, never>;
10
7
  static ɵcmp: i0.ɵɵComponentDeclaration<HomePageComponent, "app-home-page", never, {}, {}, never, never, true, never>;
11
8
  }
@@ -1,14 +1,9 @@
1
- import { ActivatedRoute } from '@angular/router';
2
- import { SdLayoutStorageService } from '../../../../services';
3
1
  import * as i0 from "@angular/core";
4
2
  export declare class RootComponent {
5
3
  #private;
6
- private route;
7
- private layoutStorageService;
8
- url: string;
9
- email: string;
10
- constructor(route: ActivatedRoute, layoutStorageService: SdLayoutStorageService);
11
- todayInfo: string;
4
+ readonly url: import("@angular/core").WritableSignal<string>;
5
+ readonly todayInfo: import("@angular/core").WritableSignal<string>;
6
+ userInfo: import("@angular/core").WritableSignal<import("@sd-angular/core/modules/layout").SdLayoutUserInfo | undefined>;
12
7
  reload(): void;
13
8
  static ɵfac: i0.ɵɵFactoryDeclaration<RootComponent, never>;
14
9
  static ɵcmp: i0.ɵɵComponentDeclaration<RootComponent, "ng-component", never, {}, {}, never, never, true, never>;
@@ -2,7 +2,7 @@ import { PipeTransform } from '@angular/core';
2
2
  import * as i0 from "@angular/core";
3
3
  export declare class HighlightSearchPipe implements PipeTransform {
4
4
  #private;
5
- transform(value: string, keyword: string, agrs?: {
5
+ transform(value: string, keyword: string, args?: {
6
6
  color?: string;
7
7
  }): string;
8
8
  static ɵfac: i0.ɵɵFactoryDeclaration<HighlightSearchPipe, never>;
@@ -1,2 +1,3 @@
1
1
  export * from './menu/menu.model';
2
2
  export * from './storage/storage.service';
3
+ export * from './layout.service';
@@ -0,0 +1,10 @@
1
+ import { SdLayoutUserInfo } from '../configurations';
2
+ import * as i0 from "@angular/core";
3
+ export declare class SdLayoutService {
4
+ #private;
5
+ userInfo: import("@angular/core").WritableSignal<SdLayoutUserInfo | undefined>;
6
+ sidebar: import("@angular/core").WritableSignal<import("@sd-angular/core/modules/layout").SidebarConfigurationV1 | undefined>;
7
+ constructor();
8
+ static ɵfac: i0.ɵɵFactoryDeclaration<SdLayoutService, never>;
9
+ static ɵprov: i0.ɵɵInjectableDeclaration<SdLayoutService>;
10
+ }
@@ -6,6 +6,7 @@ export interface SdLayoutRootMenu {
6
6
  path: string;
7
7
  queryParams?: Params;
8
8
  icon: string;
9
+ iconUrl?: string;
9
10
  title: string;
10
11
  permission: string | string[] | boolean | (() => boolean);
11
12
  level?: number;
@@ -14,6 +15,7 @@ export interface SdLayoutRootMenu {
14
15
  export interface SdLayoutChildrenMenu {
15
16
  id?: string;
16
17
  icon?: string;
18
+ iconUrl?: string;
17
19
  title?: string;
18
20
  children?: (SdLayoutRootMenu | SdLayoutChildrenMenu)[];
19
21
  level?: number;
@@ -2,9 +2,6 @@ import { SdStorage, SdStorageService } from '@sd-angular/core/services';
2
2
  import * as i0 from "@angular/core";
3
3
  export declare class SdLayoutStorageService {
4
4
  private sdStorageService;
5
- email: SdStorage<string>;
6
- username: SdStorage<string>;
7
- fullName: SdStorage<string>;
8
5
  isShowSidebar: SdStorage<boolean>;
9
6
  menuLockStatus: SdStorage<boolean>;
10
7
  lastActiveMenuGroupId: SdStorage<string>;
package/package.json CHANGED
@@ -1,20 +1,23 @@
1
1
  {
2
2
  "name": "@sd-angular/core",
3
- "version": "19.0.0-beta.6",
3
+ "version": "19.0.0-beta.61",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^19.0.0 || ^20.0.0 || ^21.0.0",
6
6
  "@angular/core": "^19.0.0 || ^20.0.0 || ^21.0.0",
7
7
  "@angular/material": "^19.0.0 || ^20.0.0 || ^21.0.0",
8
- "@angular/material-moment-adapter": "^19.0.0 || ^20.0.0 || ^21.0.0",
9
- "angular-auth-oidc-client": "^19.0.0 || ^20.0.0 || ^21.0.0"
8
+ "@angular/material-moment-adapter": "^19.0.0 || ^20.0.0 || ^21.0.0"
10
9
  },
11
10
  "dependencies": {
12
- "tslib": "^2.8.0",
13
11
  "@ckeditor/ckeditor5-angular": "^11.0.0",
12
+ "@omer-go/docx-parser-converter-ts": "^1.0.0",
14
13
  "ckeditor5": "^47.3.0",
15
- "moment": "^2.30.1",
16
14
  "exceljs": "^4.4.0",
17
- "export-to-csv": "^1.4.0"
15
+ "export-to-csv": "^1.4.0",
16
+ "mammoth": "^1.11.0",
17
+ "moment": "^2.30.1",
18
+ "keycloak-js": "^26.0.0",
19
+ "prismjs": "^1.30.0",
20
+ "tslib": "^2.8.0"
18
21
  },
19
22
  "sideEffects": false,
20
23
  "module": "fesm2022/sd-angular-core.mjs",
@@ -31,14 +34,14 @@
31
34
  "types": "./configurations/index.d.ts",
32
35
  "default": "./fesm2022/sd-angular-core-configurations.mjs"
33
36
  },
34
- "./components": {
35
- "types": "./components/index.d.ts",
36
- "default": "./fesm2022/sd-angular-core-components.mjs"
37
- },
38
37
  "./directives": {
39
38
  "types": "./directives/index.d.ts",
40
39
  "default": "./fesm2022/sd-angular-core-directives.mjs"
41
40
  },
41
+ "./components": {
42
+ "types": "./components/index.d.ts",
43
+ "default": "./fesm2022/sd-angular-core-components.mjs"
44
+ },
42
45
  "./forms": {
43
46
  "types": "./forms/index.d.ts",
44
47
  "default": "./fesm2022/sd-angular-core-forms.mjs"
@@ -71,50 +74,62 @@
71
74
  "types": "./utilities/index.d.ts",
72
75
  "default": "./fesm2022/sd-angular-core-utilities.mjs"
73
76
  },
74
- "./components/badge": {
75
- "types": "./components/badge/index.d.ts",
76
- "default": "./fesm2022/sd-angular-core-components-badge.mjs"
77
- },
78
77
  "./components/anchor": {
79
78
  "types": "./components/anchor/index.d.ts",
80
79
  "default": "./fesm2022/sd-angular-core-components-anchor.mjs"
81
80
  },
82
- "./components/button": {
83
- "types": "./components/button/index.d.ts",
84
- "default": "./fesm2022/sd-angular-core-components-button.mjs"
85
- },
86
81
  "./components/anchor-v2": {
87
82
  "types": "./components/anchor-v2/index.d.ts",
88
83
  "default": "./fesm2022/sd-angular-core-components-anchor-v2.mjs"
89
84
  },
85
+ "./components/avatar": {
86
+ "types": "./components/avatar/index.d.ts",
87
+ "default": "./fesm2022/sd-angular-core-components-avatar.mjs"
88
+ },
89
+ "./components/badge": {
90
+ "types": "./components/badge/index.d.ts",
91
+ "default": "./fesm2022/sd-angular-core-components-badge.mjs"
92
+ },
90
93
  "./components/base": {
91
94
  "types": "./components/base/index.d.ts",
92
95
  "default": "./fesm2022/sd-angular-core-components-base.mjs"
93
96
  },
97
+ "./components/button": {
98
+ "types": "./components/button/index.d.ts",
99
+ "default": "./fesm2022/sd-angular-core-components-button.mjs"
100
+ },
101
+ "./components/code-editor": {
102
+ "types": "./components/code-editor/index.d.ts",
103
+ "default": "./fesm2022/sd-angular-core-components-code-editor.mjs"
104
+ },
94
105
  "./components/document-builder": {
95
106
  "types": "./components/document-builder/index.d.ts",
96
107
  "default": "./fesm2022/sd-angular-core-components-document-builder.mjs"
97
108
  },
109
+ "./components/import-excel": {
110
+ "types": "./components/import-excel/index.d.ts",
111
+ "default": "./fesm2022/sd-angular-core-components-import-excel.mjs"
112
+ },
98
113
  "./components/history": {
99
114
  "types": "./components/history/index.d.ts",
100
115
  "default": "./fesm2022/sd-angular-core-components-history.mjs"
101
116
  },
117
+ "./components/mini-editor": {
118
+ "types": "./components/mini-editor/index.d.ts",
119
+ "default": "./fesm2022/sd-angular-core-components-mini-editor.mjs"
120
+ },
102
121
  "./components/modal": {
103
122
  "types": "./components/modal/index.d.ts",
104
123
  "default": "./fesm2022/sd-angular-core-components-modal.mjs"
105
124
  },
106
- "./components/query-builder": {
107
- "types": "./components/query-builder/index.d.ts",
108
- "default": "./fesm2022/sd-angular-core-components-query-builder.mjs"
109
- },
110
- "./components/import-excel": {
111
- "types": "./components/import-excel/index.d.ts",
112
- "default": "./fesm2022/sd-angular-core-components-import-excel.mjs"
113
- },
114
125
  "./components/preview": {
115
126
  "types": "./components/preview/index.d.ts",
116
127
  "default": "./fesm2022/sd-angular-core-components-preview.mjs"
117
128
  },
129
+ "./components/query-builder": {
130
+ "types": "./components/query-builder/index.d.ts",
131
+ "default": "./fesm2022/sd-angular-core-components-query-builder.mjs"
132
+ },
118
133
  "./components/quick-action": {
119
134
  "types": "./components/quick-action/index.d.ts",
120
135
  "default": "./fesm2022/sd-angular-core-components-quick-action.mjs"
@@ -127,10 +142,6 @@
127
142
  "types": "./components/side-drawer/index.d.ts",
128
143
  "default": "./fesm2022/sd-angular-core-components-side-drawer.mjs"
129
144
  },
130
- "./components/table": {
131
- "types": "./components/table/index.d.ts",
132
- "default": "./fesm2022/sd-angular-core-components-table.mjs"
133
- },
134
145
  "./components/tab-router": {
135
146
  "types": "./components/tab-router/index.d.ts",
136
147
  "default": "./fesm2022/sd-angular-core-components-tab-router.mjs"
@@ -147,9 +158,13 @@
147
158
  "types": "./forms/checkbox/index.d.ts",
148
159
  "default": "./fesm2022/sd-angular-core-forms-checkbox.mjs"
149
160
  },
150
- "./forms/date": {
151
- "types": "./forms/date/index.d.ts",
152
- "default": "./fesm2022/sd-angular-core-forms-date.mjs"
161
+ "./components/view": {
162
+ "types": "./components/view/index.d.ts",
163
+ "default": "./fesm2022/sd-angular-core-components-view.mjs"
164
+ },
165
+ "./forms/autocomplete": {
166
+ "types": "./forms/autocomplete/index.d.ts",
167
+ "default": "./fesm2022/sd-angular-core-forms-autocomplete.mjs"
153
168
  },
154
169
  "./forms/chip": {
155
170
  "types": "./forms/chip/index.d.ts",
@@ -159,14 +174,18 @@
159
174
  "types": "./forms/chip-calendar/index.d.ts",
160
175
  "default": "./fesm2022/sd-angular-core-forms-chip-calendar.mjs"
161
176
  },
162
- "./forms/date-range": {
163
- "types": "./forms/date-range/index.d.ts",
164
- "default": "./fesm2022/sd-angular-core-forms-date-range.mjs"
177
+ "./forms/date": {
178
+ "types": "./forms/date/index.d.ts",
179
+ "default": "./fesm2022/sd-angular-core-forms-date.mjs"
165
180
  },
166
181
  "./forms/datetime": {
167
182
  "types": "./forms/datetime/index.d.ts",
168
183
  "default": "./fesm2022/sd-angular-core-forms-datetime.mjs"
169
184
  },
185
+ "./forms/date-range": {
186
+ "types": "./forms/date-range/index.d.ts",
187
+ "default": "./fesm2022/sd-angular-core-forms-date-range.mjs"
188
+ },
170
189
  "./forms/directives": {
171
190
  "types": "./forms/directives/index.d.ts",
172
191
  "default": "./fesm2022/sd-angular-core-forms-directives.mjs"
@@ -175,21 +194,21 @@
175
194
  "types": "./forms/input/index.d.ts",
176
195
  "default": "./fesm2022/sd-angular-core-forms-input.mjs"
177
196
  },
197
+ "./forms/label": {
198
+ "types": "./forms/label/index.d.ts",
199
+ "default": "./fesm2022/sd-angular-core-forms-label.mjs"
200
+ },
178
201
  "./forms/input-number": {
179
202
  "types": "./forms/input-number/index.d.ts",
180
203
  "default": "./fesm2022/sd-angular-core-forms-input-number.mjs"
181
204
  },
182
- "./forms/radio": {
183
- "types": "./forms/radio/index.d.ts",
184
- "default": "./fesm2022/sd-angular-core-forms-radio.mjs"
185
- },
186
205
  "./forms/models": {
187
206
  "types": "./forms/models/index.d.ts",
188
207
  "default": "./fesm2022/sd-angular-core-forms-models.mjs"
189
208
  },
190
- "./forms/label": {
191
- "types": "./forms/label/index.d.ts",
192
- "default": "./fesm2022/sd-angular-core-forms-label.mjs"
209
+ "./forms/radio": {
210
+ "types": "./forms/radio/index.d.ts",
211
+ "default": "./fesm2022/sd-angular-core-forms-radio.mjs"
193
212
  },
194
213
  "./forms/select": {
195
214
  "types": "./forms/select/index.d.ts",
@@ -211,14 +230,14 @@
211
230
  "types": "./modules/auth/index.d.ts",
212
231
  "default": "./fesm2022/sd-angular-core-modules-auth.mjs"
213
232
  },
233
+ "./modules/keycloak": {
234
+ "types": "./modules/keycloak/index.d.ts",
235
+ "default": "./fesm2022/sd-angular-core-modules-keycloak.mjs"
236
+ },
214
237
  "./modules/layout": {
215
238
  "types": "./modules/layout/index.d.ts",
216
239
  "default": "./fesm2022/sd-angular-core-modules-layout.mjs"
217
240
  },
218
- "./modules/oidc": {
219
- "types": "./modules/oidc/index.d.ts",
220
- "default": "./fesm2022/sd-angular-core-modules-oidc.mjs"
221
- },
222
241
  "./modules/permission": {
223
242
  "types": "./modules/permission/index.d.ts",
224
243
  "default": "./fesm2022/sd-angular-core-modules-permission.mjs"
@@ -235,26 +254,30 @@
235
254
  "types": "./services/confirm/index.d.ts",
236
255
  "default": "./fesm2022/sd-angular-core-services-confirm.mjs"
237
256
  },
257
+ "./services/docx": {
258
+ "types": "./services/docx/index.d.ts",
259
+ "default": "./fesm2022/sd-angular-core-services-docx.mjs"
260
+ },
238
261
  "./services/excel": {
239
262
  "types": "./services/excel/index.d.ts",
240
263
  "default": "./fesm2022/sd-angular-core-services-excel.mjs"
241
264
  },
242
- "./services/license": {
243
- "types": "./services/license/index.d.ts",
244
- "default": "./fesm2022/sd-angular-core-services-license.mjs"
245
- },
246
265
  "./services/firebase": {
247
266
  "types": "./services/firebase/index.d.ts",
248
267
  "default": "./fesm2022/sd-angular-core-services-firebase.mjs"
249
268
  },
250
- "./services/loading": {
251
- "types": "./services/loading/index.d.ts",
252
- "default": "./fesm2022/sd-angular-core-services-loading.mjs"
269
+ "./services/license": {
270
+ "types": "./services/license/index.d.ts",
271
+ "default": "./fesm2022/sd-angular-core-services-license.mjs"
253
272
  },
254
273
  "./services/notify": {
255
274
  "types": "./services/notify/index.d.ts",
256
275
  "default": "./fesm2022/sd-angular-core-services-notify.mjs"
257
276
  },
277
+ "./services/loading": {
278
+ "types": "./services/loading/index.d.ts",
279
+ "default": "./fesm2022/sd-angular-core-services-loading.mjs"
280
+ },
258
281
  "./services/storage": {
259
282
  "types": "./services/storage/index.d.ts",
260
283
  "default": "./fesm2022/sd-angular-core-services-storage.mjs"
@@ -267,9 +290,9 @@
267
290
  "types": "./utilities/models/index.d.ts",
268
291
  "default": "./fesm2022/sd-angular-core-utilities-models.mjs"
269
292
  },
270
- "./forms/autocomplete": {
271
- "types": "./forms/autocomplete/index.d.ts",
272
- "default": "./fesm2022/sd-angular-core-forms-autocomplete.mjs"
293
+ "./components/table": {
294
+ "types": "./components/table/index.d.ts",
295
+ "default": "./fesm2022/sd-angular-core-components-table.mjs"
273
296
  }
274
297
  }
275
298
  }
@@ -15,16 +15,21 @@ export type SdPutOption = HttpPutOption & SdApiOption;
15
15
  type HttpDeleteOption = Parameters<HttpClient['delete']>[1];
16
16
  export type SdDeleteOption = HttpDeleteOption & SdApiOption;
17
17
  export interface SdApiHandler {
18
+ /** Danh sách host URL mà handler này sẽ xử lý */
18
19
  hosts: string[];
20
+ /** Can thiệp request: gắn header, token, transform body... */
19
21
  intercept?: (request: HttpRequest<any>) => HttpRequest<any>;
22
+ /** Hook chạy TRƯỚC khi gửi request (dùng để log, tracking...) */
20
23
  beforeRemote?: (request: HttpRequest<any>) => void | Promise<void>;
24
+ /** Hook chạy SAU khi nhận response (xử lý lỗi, notify...) */
21
25
  afterRemote?: (response: HttpResponse<any> | HttpErrorResponse | Error) => void | Promise<void>;
26
+ /** Transform response body thành kiểu dữ liệu mong muốn */
22
27
  mapResponse?: <Tres = any, Tdata = any>(response: Tres) => Tdata;
28
+ /** Timeout tính bằng milliseconds. Mặc định: 30000 (30 giây) */
23
29
  timeout?: number;
24
30
  }
25
31
  export interface ISdApiConfiguration {
26
32
  handlers: SdApiHandler[];
27
33
  }
28
34
  export declare const SD_API_CONFIG: InjectionToken<ISdApiConfiguration>;
29
- export declare const TOKEN: string;
30
35
  export {};
@@ -10,6 +10,7 @@ export declare class SdConfirmService {
10
10
  noTitle?: string;
11
11
  yesButtonColor?: SdColor;
12
12
  noButtonColor?: SdColor;
13
+ width?: string;
13
14
  }) => Promise<unknown>;
14
15
  withInput: (message?: string, option?: {
15
16
  title?: string;
@@ -0,0 +1 @@
1
+ export * from './src/public-api';
@@ -0,0 +1,9 @@
1
+ export interface SdDocxConvertOptions {
2
+ validateFormat?: boolean;
3
+ validateSize?: boolean;
4
+ maxSizeInMb?: number;
5
+ }
6
+ export interface SdDocxConvertResult {
7
+ html: string;
8
+ messages: string[];
9
+ }
@@ -0,0 +1,13 @@
1
+ import { SdDocxConvertOptions, SdDocxConvertResult } from './docx.model';
2
+ import { SdNotifyService } from '@sd-angular/core/services/notify';
3
+ import * as i0 from "@angular/core";
4
+ export declare class SdDocxService {
5
+ #private;
6
+ private notifyService;
7
+ constructor(notifyService: SdNotifyService);
8
+ open(options?: SdDocxConvertOptions): Promise<SdDocxConvertResult | null>;
9
+ convertToHtml(input: File | Blob | ArrayBuffer, options?: SdDocxConvertOptions): Promise<SdDocxConvertResult | null>;
10
+ convertToHtmlString(input: File | Blob | ArrayBuffer, options?: SdDocxConvertOptions): Promise<string | null>;
11
+ static ɵfac: i0.ɵɵFactoryDeclaration<SdDocxService, never>;
12
+ static ɵprov: i0.ɵɵInjectableDeclaration<SdDocxService>;
13
+ }
@@ -0,0 +1,2 @@
1
+ export { SdDocxService } from './lib/docx.service';
2
+ export type { SdDocxConvertOptions, SdDocxConvertResult } from './lib/docx.model';
@@ -5,3 +5,4 @@ export * from '@sd-angular/core/services/confirm';
5
5
  export * from '@sd-angular/core/services/api';
6
6
  export * from '@sd-angular/core/services/loading';
7
7
  export * from '@sd-angular/core/services/excel';
8
+ export * from '@sd-angular/core/services/docx';
@@ -1 +1,2 @@
1
+ export { type SdNotifyOption } from './src/notify.model';
1
2
  export * from './src/notify.service';
@@ -8,7 +8,7 @@ export interface ToastData {
8
8
  actionLabel?: string;
9
9
  onAction?: () => void;
10
10
  }
11
- export interface NotifyOption {
11
+ export interface SdNotifyOption {
12
12
  duration?: number;
13
13
  title?: string;
14
14
  actionLabel?: string;
@@ -1,5 +1,5 @@
1
1
  import { ApplicationRef, EnvironmentInjector } from '@angular/core';
2
- import { NotifyOption, ToastData, ToastType } from './notify.model';
2
+ import { SdNotifyOption, ToastData, ToastType } from './notify.model';
3
3
  import * as i0 from "@angular/core";
4
4
  export declare class SdNotifyService {
5
5
  #private;
@@ -8,10 +8,10 @@ export declare class SdNotifyService {
8
8
  private document;
9
9
  readonly toasts: import("@angular/core").WritableSignal<ToastData[]>;
10
10
  constructor(appRef: ApplicationRef, injector: EnvironmentInjector, document: Document);
11
- success(message: string, option?: NotifyOption): void;
12
- info(message: string, option?: NotifyOption): void;
13
- warning(message: string | string[], option?: NotifyOption): void;
14
- error(message: string | string[], option?: NotifyOption): void;
11
+ success(message: string, option?: SdNotifyOption): void;
12
+ info(message: string, option?: SdNotifyOption): void;
13
+ warning(message: string | string[], option?: SdNotifyOption): void;
14
+ error(message: string | string[], option?: SdNotifyOption): void;
15
15
  remove(id: string): void;
16
16
  clearAll(): void;
17
17
  clearByType(type: ToastType): void;