@sd-angular/core 19.0.0-beta.7 → 19.0.0-beta.71

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 (237) hide show
  1. package/README.md +686 -33
  2. package/assets/scss/ckeditor5.scss +61 -4
  3. package/assets/scss/core/bootstrap.scss +17 -0
  4. package/assets/scss/core/form.scss +32 -6
  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 +82 -40
  8. package/components/anchor-v2/src/components/anchor-item-v2/anchor-item-v2.component.d.ts +5 -5
  9. package/components/anchor-v2/src/models/sd-anchor-v2.model.d.ts +3 -3
  10. package/components/avatar/index.d.ts +1 -0
  11. package/components/avatar/src/avatar.component.d.ts +19 -0
  12. package/components/badge/src/badge.component.d.ts +77 -19
  13. package/components/button/src/button.component.d.ts +30 -28
  14. package/components/code-editor/index.d.ts +1 -0
  15. package/components/code-editor/src/code-editor.component.d.ts +25 -0
  16. package/components/document-builder/index.d.ts +1 -0
  17. package/components/document-builder/src/document-builder.component.d.ts +12 -41
  18. package/components/document-builder/src/document-builder.model.d.ts +14 -11
  19. package/components/document-builder/src/plugins/block-space/block-space.plugin.d.ts +9 -0
  20. package/components/document-builder/src/plugins/ck-comment/ck-comment.plugin.d.ts +44 -0
  21. package/components/document-builder/src/plugins/ck-comment/ck-comment.plugin.model.d.ts +57 -0
  22. package/components/document-builder/src/plugins/heading/heading.plugin.d.ts +1 -0
  23. package/components/document-builder/src/plugins/highlight-range/highlight-range.plugin.d.ts +4 -0
  24. package/components/document-builder/src/plugins/image-custom/image-custom.plugin.d.ts +31 -0
  25. package/components/document-builder/src/plugins/index.d.ts +7 -2
  26. package/components/document-builder/src/plugins/page-orientation/page-orientation.plugin.d.ts +2 -2
  27. package/components/document-builder/src/plugins/paste-handler/filters/bookmark.d.ts +14 -0
  28. package/components/document-builder/src/plugins/paste-handler/filters/br.d.ts +15 -0
  29. package/components/document-builder/src/plugins/paste-handler/filters/image.d.ts +25 -0
  30. package/components/document-builder/src/plugins/paste-handler/filters/list.d.ts +29 -0
  31. package/components/document-builder/src/plugins/paste-handler/filters/parse.d.ts +35 -0
  32. package/components/document-builder/src/plugins/paste-handler/filters/removeboldwrapper.d.ts +15 -0
  33. package/components/document-builder/src/plugins/paste-handler/filters/removegooglesheetstag.d.ts +15 -0
  34. package/components/document-builder/src/plugins/paste-handler/filters/removeinvalidtablewidth.d.ts +15 -0
  35. package/components/document-builder/src/plugins/paste-handler/filters/removemsattributes.d.ts +15 -0
  36. package/components/document-builder/src/plugins/paste-handler/filters/removestyleblock.d.ts +15 -0
  37. package/components/document-builder/src/plugins/paste-handler/filters/removexmlns.d.ts +15 -0
  38. package/components/document-builder/src/plugins/paste-handler/filters/replacemsfootnotes.d.ts +54 -0
  39. package/components/document-builder/src/plugins/paste-handler/filters/replacetabswithinprewithspaces.d.ts +24 -0
  40. package/components/document-builder/src/plugins/paste-handler/filters/space.d.ts +27 -0
  41. package/components/document-builder/src/plugins/paste-handler/filters/table.d.ts +16 -0
  42. package/components/document-builder/src/plugins/paste-handler/filters/utils.d.ts +25 -0
  43. package/components/document-builder/src/plugins/paste-handler/index.d.ts +35 -0
  44. package/components/document-builder/src/plugins/paste-handler/normalizers/googledocsnormalizer.d.ts +31 -0
  45. package/components/document-builder/src/plugins/paste-handler/normalizers/googlesheetsnormalizer.d.ts +31 -0
  46. package/components/document-builder/src/plugins/paste-handler/normalizers/mswordnormalizer.d.ts +29 -0
  47. package/components/document-builder/src/plugins/paste-handler/types.d.ts +30 -0
  48. package/components/document-builder/src/plugins/table-custom/index.d.ts +34 -0
  49. package/components/document-builder/src/plugins/variable/variable.plugin.d.ts +39 -0
  50. package/components/index.d.ts +4 -0
  51. package/components/mini-editor/index.d.ts +2 -0
  52. package/components/mini-editor/src/mini-editor.component.d.ts +90 -0
  53. package/components/mini-editor/src/mini-editor.model.d.ts +44 -0
  54. package/components/modal/index.d.ts +1 -1
  55. package/components/modal/src/modal.component.d.ts +24 -0
  56. package/components/section/index.d.ts +1 -0
  57. package/components/section/src/section-item/section-item.component.d.ts +7 -0
  58. package/components/section/src/section.component.d.ts +11 -11
  59. package/components/side-drawer/src/side-drawer.component.d.ts +11 -24
  60. package/components/tab-router/src/components/tab-router-item/tab-router-item.component.d.ts +4 -1
  61. package/components/tab-router/src/components/tab-router-outlet/tab-router-outlet.component.d.ts +3 -15
  62. package/components/table/src/components/column-filter/column-filter.component.d.ts +3 -3
  63. package/components/table/src/components/desktop-cell/desktop-cell.component.d.ts +21 -9
  64. package/components/table/src/components/desktop-cell-view/desktop-cell-view.component.d.ts +21 -7
  65. package/components/table/src/components/external-filter/external-filter.component.d.ts +1 -1
  66. package/components/table/src/components/selector-action/action-filter.pipe.d.ts +11 -10
  67. package/components/table/src/components/selector-action/selector-action.component.d.ts +5 -3
  68. package/components/table/src/directives/index.d.ts +2 -0
  69. package/components/table/src/directives/sd-table-column-filter-def.directive.d.ts +9 -0
  70. package/components/table/src/directives/sticky-shadow.directive.d.ts +17 -0
  71. package/components/table/src/models/table-column.model.d.ts +38 -34
  72. package/components/table/src/models/table-command.model.d.ts +7 -3
  73. package/components/table/src/models/table-item.model.d.ts +5 -4
  74. package/components/table/src/models/table-option-config.model.d.ts +5 -0
  75. package/components/table/src/models/table-option-export.model.d.ts +3 -2
  76. package/components/table/src/models/table-option-selector.model.d.ts +11 -10
  77. package/components/table/src/models/table-option.model.d.ts +9 -8
  78. package/components/table/src/services/index.d.ts +3 -0
  79. package/components/table/src/services/table-export/table-export.service.d.ts +26 -0
  80. package/components/table/src/services/table-filter/table-filter.model.d.ts +6 -5
  81. package/components/table/src/services/table-format/table-format.service.d.ts +16 -0
  82. package/components/table/src/table.component.d.ts +39 -53
  83. package/components/upload-file/src/configurations/upload-file.configuration.d.ts +1 -1
  84. package/components/upload-file/src/services/upload-file.service.d.ts +0 -1
  85. package/components/upload-file/src/upload-file.component.d.ts +49 -54
  86. package/components/view/index.d.ts +1 -0
  87. package/components/view/src/view.component.d.ts +16 -0
  88. package/components/workflow/src/models/form-generic-component.model.d.ts +5 -4
  89. package/components/workflow/src/models/index.d.ts +1 -0
  90. package/directives/index.d.ts +2 -0
  91. package/directives/src/sd-href.directive.d.ts +9 -0
  92. package/directives/src/sd-tooltip.directive.d.ts +26 -0
  93. package/fesm2022/sd-angular-core-components-anchor-v2.mjs +15 -15
  94. package/fesm2022/sd-angular-core-components-anchor-v2.mjs.map +1 -1
  95. package/fesm2022/sd-angular-core-components-avatar.mjs +103 -0
  96. package/fesm2022/sd-angular-core-components-avatar.mjs.map +1 -0
  97. package/fesm2022/sd-angular-core-components-badge.mjs +101 -91
  98. package/fesm2022/sd-angular-core-components-badge.mjs.map +1 -1
  99. package/fesm2022/sd-angular-core-components-button.mjs +70 -96
  100. package/fesm2022/sd-angular-core-components-button.mjs.map +1 -1
  101. package/fesm2022/sd-angular-core-components-code-editor.mjs +127 -0
  102. package/fesm2022/sd-angular-core-components-code-editor.mjs.map +1 -0
  103. package/fesm2022/sd-angular-core-components-document-builder.mjs +4006 -611
  104. package/fesm2022/sd-angular-core-components-document-builder.mjs.map +1 -1
  105. package/fesm2022/sd-angular-core-components-history.mjs +1 -1
  106. package/fesm2022/sd-angular-core-components-history.mjs.map +1 -1
  107. package/fesm2022/sd-angular-core-components-import-excel.mjs +1 -1
  108. package/fesm2022/sd-angular-core-components-import-excel.mjs.map +1 -1
  109. package/fesm2022/sd-angular-core-components-mini-editor.mjs +326 -0
  110. package/fesm2022/sd-angular-core-components-mini-editor.mjs.map +1 -0
  111. package/fesm2022/sd-angular-core-components-modal.mjs +57 -91
  112. package/fesm2022/sd-angular-core-components-modal.mjs.map +1 -1
  113. package/fesm2022/sd-angular-core-components-preview.mjs +1 -1
  114. package/fesm2022/sd-angular-core-components-preview.mjs.map +1 -1
  115. package/fesm2022/sd-angular-core-components-quick-action.mjs +2 -2
  116. package/fesm2022/sd-angular-core-components-quick-action.mjs.map +1 -1
  117. package/fesm2022/sd-angular-core-components-section.mjs +41 -43
  118. package/fesm2022/sd-angular-core-components-section.mjs.map +1 -1
  119. package/fesm2022/sd-angular-core-components-side-drawer.mjs +78 -84
  120. package/fesm2022/sd-angular-core-components-side-drawer.mjs.map +1 -1
  121. package/fesm2022/sd-angular-core-components-tab-router.mjs +152 -226
  122. package/fesm2022/sd-angular-core-components-tab-router.mjs.map +1 -1
  123. package/fesm2022/sd-angular-core-components-table.mjs +1188 -1185
  124. package/fesm2022/sd-angular-core-components-table.mjs.map +1 -1
  125. package/fesm2022/sd-angular-core-components-upload-file.mjs +339 -444
  126. package/fesm2022/sd-angular-core-components-upload-file.mjs.map +1 -1
  127. package/fesm2022/sd-angular-core-components-view.mjs +45 -0
  128. package/fesm2022/sd-angular-core-components-view.mjs.map +1 -0
  129. package/fesm2022/sd-angular-core-components-workflow.mjs +47 -57
  130. package/fesm2022/sd-angular-core-components-workflow.mjs.map +1 -1
  131. package/fesm2022/sd-angular-core-components.mjs +4 -0
  132. package/fesm2022/sd-angular-core-components.mjs.map +1 -1
  133. package/fesm2022/sd-angular-core-directives.mjs +286 -27
  134. package/fesm2022/sd-angular-core-directives.mjs.map +1 -1
  135. package/fesm2022/sd-angular-core-forms-autocomplete.mjs +289 -363
  136. package/fesm2022/sd-angular-core-forms-autocomplete.mjs.map +1 -1
  137. package/fesm2022/sd-angular-core-forms-chip-calendar.mjs +170 -189
  138. package/fesm2022/sd-angular-core-forms-chip-calendar.mjs.map +1 -1
  139. package/fesm2022/sd-angular-core-forms-chip.mjs +184 -194
  140. package/fesm2022/sd-angular-core-forms-chip.mjs.map +1 -1
  141. package/fesm2022/sd-angular-core-forms-date-range.mjs +180 -242
  142. package/fesm2022/sd-angular-core-forms-date-range.mjs.map +1 -1
  143. package/fesm2022/sd-angular-core-forms-date.mjs +178 -270
  144. package/fesm2022/sd-angular-core-forms-date.mjs.map +1 -1
  145. package/fesm2022/sd-angular-core-forms-datetime.mjs +177 -285
  146. package/fesm2022/sd-angular-core-forms-datetime.mjs.map +1 -1
  147. package/fesm2022/sd-angular-core-forms-input-number.mjs +210 -337
  148. package/fesm2022/sd-angular-core-forms-input-number.mjs.map +1 -1
  149. package/fesm2022/sd-angular-core-forms-input.mjs +169 -286
  150. package/fesm2022/sd-angular-core-forms-input.mjs.map +1 -1
  151. package/fesm2022/sd-angular-core-forms-radio.mjs +3 -2
  152. package/fesm2022/sd-angular-core-forms-radio.mjs.map +1 -1
  153. package/fesm2022/sd-angular-core-forms-select.mjs +390 -447
  154. package/fesm2022/sd-angular-core-forms-select.mjs.map +1 -1
  155. package/fesm2022/sd-angular-core-forms-textarea.mjs +167 -226
  156. package/fesm2022/sd-angular-core-forms-textarea.mjs.map +1 -1
  157. package/fesm2022/sd-angular-core-modules-keycloak.mjs +126 -0
  158. package/fesm2022/sd-angular-core-modules-keycloak.mjs.map +1 -0
  159. package/fesm2022/sd-angular-core-modules-layout.mjs +454 -453
  160. package/fesm2022/sd-angular-core-modules-layout.mjs.map +1 -1
  161. package/fesm2022/sd-angular-core-modules.mjs +1 -1
  162. package/fesm2022/sd-angular-core-services-api.mjs +5 -10
  163. package/fesm2022/sd-angular-core-services-api.mjs.map +1 -1
  164. package/fesm2022/sd-angular-core-services-confirm.mjs +5 -7
  165. package/fesm2022/sd-angular-core-services-confirm.mjs.map +1 -1
  166. package/fesm2022/sd-angular-core-services-docx.mjs +173 -0
  167. package/fesm2022/sd-angular-core-services-docx.mjs.map +1 -0
  168. package/fesm2022/sd-angular-core-services-notify.mjs +2 -2
  169. package/fesm2022/sd-angular-core-services-notify.mjs.map +1 -1
  170. package/fesm2022/sd-angular-core-services.mjs +1 -0
  171. package/fesm2022/sd-angular-core-services.mjs.map +1 -1
  172. package/fesm2022/sd-angular-core-utilities-extensions.mjs +21 -45
  173. package/fesm2022/sd-angular-core-utilities-extensions.mjs.map +1 -1
  174. package/fesm2022/sd-angular-core-utilities-models.mjs +15 -1
  175. package/fesm2022/sd-angular-core-utilities-models.mjs.map +1 -1
  176. package/forms/autocomplete/src/autocomplete.component.d.ts +55 -55
  177. package/forms/chip/src/chip.component.d.ts +37 -40
  178. package/forms/chip-calendar/src/chip-calendar.component.d.ts +37 -38
  179. package/forms/date/src/date.component.d.ts +48 -46
  180. package/forms/date-range/src/date-range.component.d.ts +35 -34
  181. package/forms/datetime/src/datetime.component.d.ts +48 -49
  182. package/forms/input/src/input.component.d.ts +54 -57
  183. package/forms/input-number/src/input-number.component.d.ts +53 -54
  184. package/forms/select/src/select.component.d.ts +67 -64
  185. package/forms/textarea/src/textarea.component.d.ts +40 -43
  186. package/modules/index.d.ts +1 -1
  187. package/modules/keycloak/index.d.ts +4 -0
  188. package/modules/keycloak/keycloak.configuration.d.ts +11 -0
  189. package/modules/keycloak/keycloak.interceptor.d.ts +2 -0
  190. package/modules/keycloak/keycloak.module.d.ts +18 -0
  191. package/modules/keycloak/keycloak.service.d.ts +14 -0
  192. package/modules/layout/components/layout-main/layout-main.component.d.ts +7 -12
  193. package/modules/layout/components/page/page.component.d.ts +5 -7
  194. package/modules/layout/components/sidebar-v1/components/sidebar/sidebar.component.d.ts +22 -29
  195. package/modules/layout/components/sidebar-v1/components/user/user.component.d.ts +11 -17
  196. package/modules/layout/components/sidebar-v1/main.component.d.ts +14 -14
  197. package/modules/layout/configurations/layout.configuration.d.ts +46 -3
  198. package/modules/layout/modules/forbidden/pages/root/root.component.d.ts +3 -8
  199. package/modules/layout/modules/home/components/home-page/home-page.component.d.ts +2 -5
  200. package/modules/layout/modules/not-found/pages/root/root.component.d.ts +3 -8
  201. package/modules/layout/pipes/high-light-search.pipe.d.ts +1 -1
  202. package/modules/layout/services/index.d.ts +1 -0
  203. package/modules/layout/services/layout.service.d.ts +10 -0
  204. package/modules/layout/services/menu/menu.model.d.ts +2 -0
  205. package/modules/layout/services/storage/storage.service.d.ts +0 -3
  206. package/package.json +87 -64
  207. package/sd-angular-core-19.0.0-beta.71.tgz +0 -0
  208. package/services/api/src/api.model.d.ts +6 -1
  209. package/services/confirm/src/lib/confirm.service.d.ts +1 -0
  210. package/services/docx/index.d.ts +1 -0
  211. package/services/docx/src/lib/docx.model.d.ts +9 -0
  212. package/services/docx/src/lib/docx.service.d.ts +13 -0
  213. package/services/docx/src/public-api.d.ts +2 -0
  214. package/services/index.d.ts +1 -0
  215. package/services/notify/index.d.ts +1 -0
  216. package/services/notify/src/notify.model.d.ts +1 -1
  217. package/services/notify/src/notify.service.d.ts +5 -5
  218. package/utilities/extensions/src/string.extension.d.ts +2 -0
  219. package/utilities/extensions/src/utility.extension.d.ts +1 -0
  220. package/utilities/models/index.d.ts +3 -0
  221. package/utilities/models/src/filter.model.d.ts +17 -4
  222. package/utilities/models/src/icon.model.d.ts +2 -0
  223. package/utilities/models/src/nested-key-of.model.d.ts +5 -0
  224. package/utilities/models/src/order.model.d.ts +2 -1
  225. package/utilities/models/src/paging.model.d.ts +2 -1
  226. package/utilities/models/src/pattern.model.d.ts +1 -1
  227. package/utilities/models/src/unwrap-signal.model.d.ts +6 -0
  228. package/components/document-builder/src/plugins/comment/comment.plugin.d.ts +0 -4
  229. package/components/document-builder/src/plugins/table-fit/table-fit.plugin.d.ts +0 -4
  230. package/components/modal/src/modal/modal.component.d.ts +0 -31
  231. package/fesm2022/sd-angular-core-modules-oidc.mjs +0 -127
  232. package/fesm2022/sd-angular-core-modules-oidc.mjs.map +0 -1
  233. package/modules/oidc/dynamic-sts.loader.d.ts +0 -11
  234. package/modules/oidc/index.d.ts +0 -2
  235. package/modules/oidc/oidc.configuration.d.ts +0 -11
  236. package/modules/oidc/oidc.module.d.ts +0 -14
  237. package/sd-angular-core-19.0.0-beta.7.tgz +0 -0
package/package.json CHANGED
@@ -1,20 +1,23 @@
1
1
  {
2
2
  "name": "@sd-angular/core",
3
- "version": "19.0.0-beta.7",
3
+ "version": "19.0.0-beta.71",
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
- "@ckeditor/ckeditor5-angular": "^11.0.0",
14
- "ckeditor5": "^47.3.0",
15
- "moment": "^2.30.1",
11
+ "@ckeditor/ckeditor5-angular": "11.1.2",
12
+ "@omer-go/docx-parser-converter-ts": "^1.0.0",
13
+ "ckeditor5": "48.0.0",
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",
@@ -27,6 +30,14 @@
27
30
  "types": "./index.d.ts",
28
31
  "default": "./fesm2022/sd-angular-core.mjs"
29
32
  },
33
+ "./components": {
34
+ "types": "./components/index.d.ts",
35
+ "default": "./fesm2022/sd-angular-core-components.mjs"
36
+ },
37
+ "./forms": {
38
+ "types": "./forms/index.d.ts",
39
+ "default": "./fesm2022/sd-angular-core-forms.mjs"
40
+ },
30
41
  "./configurations": {
31
42
  "types": "./configurations/index.d.ts",
32
43
  "default": "./fesm2022/sd-angular-core-configurations.mjs"
@@ -35,10 +46,6 @@
35
46
  "types": "./directives/index.d.ts",
36
47
  "default": "./fesm2022/sd-angular-core-directives.mjs"
37
48
  },
38
- "./components": {
39
- "types": "./components/index.d.ts",
40
- "default": "./fesm2022/sd-angular-core-components.mjs"
41
- },
42
49
  "./guards": {
43
50
  "types": "./guards/index.d.ts",
44
51
  "default": "./fesm2022/sd-angular-core-guards.mjs"
@@ -47,10 +54,6 @@
47
54
  "types": "./handlers/index.d.ts",
48
55
  "default": "./fesm2022/sd-angular-core-handlers.mjs"
49
56
  },
50
- "./forms": {
51
- "types": "./forms/index.d.ts",
52
- "default": "./fesm2022/sd-angular-core-forms.mjs"
53
- },
54
57
  "./interceptors": {
55
58
  "types": "./interceptors/index.d.ts",
56
59
  "default": "./fesm2022/sd-angular-core-interceptors.mjs"
@@ -59,22 +62,18 @@
59
62
  "types": "./modules/index.d.ts",
60
63
  "default": "./fesm2022/sd-angular-core-modules.mjs"
61
64
  },
62
- "./pipes": {
63
- "types": "./pipes/index.d.ts",
64
- "default": "./fesm2022/sd-angular-core-pipes.mjs"
65
- },
66
65
  "./services": {
67
66
  "types": "./services/index.d.ts",
68
67
  "default": "./fesm2022/sd-angular-core-services.mjs"
69
68
  },
69
+ "./pipes": {
70
+ "types": "./pipes/index.d.ts",
71
+ "default": "./fesm2022/sd-angular-core-pipes.mjs"
72
+ },
70
73
  "./utilities": {
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-v2": {
79
78
  "types": "./components/anchor-v2/index.d.ts",
80
79
  "default": "./fesm2022/sd-angular-core-components-anchor-v2.mjs"
@@ -83,25 +82,37 @@
83
82
  "types": "./components/anchor/index.d.ts",
84
83
  "default": "./fesm2022/sd-angular-core-components-anchor.mjs"
85
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
+ },
86
93
  "./components/base": {
87
94
  "types": "./components/base/index.d.ts",
88
95
  "default": "./fesm2022/sd-angular-core-components-base.mjs"
89
96
  },
97
+ "./components/button": {
98
+ "types": "./components/button/index.d.ts",
99
+ "default": "./fesm2022/sd-angular-core-components-button.mjs"
100
+ },
90
101
  "./components/document-builder": {
91
102
  "types": "./components/document-builder/index.d.ts",
92
103
  "default": "./fesm2022/sd-angular-core-components-document-builder.mjs"
93
104
  },
94
- "./components/button": {
95
- "types": "./components/button/index.d.ts",
96
- "default": "./fesm2022/sd-angular-core-components-button.mjs"
105
+ "./components/code-editor": {
106
+ "types": "./components/code-editor/index.d.ts",
107
+ "default": "./fesm2022/sd-angular-core-components-code-editor.mjs"
97
108
  },
98
109
  "./components/history": {
99
110
  "types": "./components/history/index.d.ts",
100
111
  "default": "./fesm2022/sd-angular-core-components-history.mjs"
101
112
  },
102
- "./components/modal": {
103
- "types": "./components/modal/index.d.ts",
104
- "default": "./fesm2022/sd-angular-core-components-modal.mjs"
113
+ "./components/mini-editor": {
114
+ "types": "./components/mini-editor/index.d.ts",
115
+ "default": "./fesm2022/sd-angular-core-components-mini-editor.mjs"
105
116
  },
106
117
  "./components/import-excel": {
107
118
  "types": "./components/import-excel/index.d.ts",
@@ -111,6 +122,10 @@
111
122
  "types": "./components/preview/index.d.ts",
112
123
  "default": "./fesm2022/sd-angular-core-components-preview.mjs"
113
124
  },
125
+ "./components/modal": {
126
+ "types": "./components/modal/index.d.ts",
127
+ "default": "./fesm2022/sd-angular-core-components-modal.mjs"
128
+ },
114
129
  "./components/query-builder": {
115
130
  "types": "./components/query-builder/index.d.ts",
116
131
  "default": "./fesm2022/sd-angular-core-components-query-builder.mjs"
@@ -147,17 +162,17 @@
147
162
  "types": "./forms/checkbox/index.d.ts",
148
163
  "default": "./fesm2022/sd-angular-core-forms-checkbox.mjs"
149
164
  },
150
- "./forms/chip": {
151
- "types": "./forms/chip/index.d.ts",
152
- "default": "./fesm2022/sd-angular-core-forms-chip.mjs"
153
- },
154
165
  "./forms/chip-calendar": {
155
166
  "types": "./forms/chip-calendar/index.d.ts",
156
167
  "default": "./fesm2022/sd-angular-core-forms-chip-calendar.mjs"
157
168
  },
158
- "./guards/permission": {
159
- "types": "./guards/permission/index.d.ts",
160
- "default": "./fesm2022/sd-angular-core-guards-permission.mjs"
169
+ "./forms/chip": {
170
+ "types": "./forms/chip/index.d.ts",
171
+ "default": "./fesm2022/sd-angular-core-forms-chip.mjs"
172
+ },
173
+ "./forms/autocomplete": {
174
+ "types": "./forms/autocomplete/index.d.ts",
175
+ "default": "./fesm2022/sd-angular-core-forms-autocomplete.mjs"
161
176
  },
162
177
  "./forms/date": {
163
178
  "types": "./forms/date/index.d.ts",
@@ -167,18 +182,22 @@
167
182
  "types": "./forms/date-range/index.d.ts",
168
183
  "default": "./fesm2022/sd-angular-core-forms-date-range.mjs"
169
184
  },
170
- "./forms/datetime": {
171
- "types": "./forms/datetime/index.d.ts",
172
- "default": "./fesm2022/sd-angular-core-forms-datetime.mjs"
173
- },
174
185
  "./forms/directives": {
175
186
  "types": "./forms/directives/index.d.ts",
176
187
  "default": "./fesm2022/sd-angular-core-forms-directives.mjs"
177
188
  },
189
+ "./forms/datetime": {
190
+ "types": "./forms/datetime/index.d.ts",
191
+ "default": "./fesm2022/sd-angular-core-forms-datetime.mjs"
192
+ },
178
193
  "./forms/input": {
179
194
  "types": "./forms/input/index.d.ts",
180
195
  "default": "./fesm2022/sd-angular-core-forms-input.mjs"
181
196
  },
197
+ "./forms/models": {
198
+ "types": "./forms/models/index.d.ts",
199
+ "default": "./fesm2022/sd-angular-core-forms-models.mjs"
200
+ },
182
201
  "./forms/input-number": {
183
202
  "types": "./forms/input-number/index.d.ts",
184
203
  "default": "./fesm2022/sd-angular-core-forms-input-number.mjs"
@@ -187,10 +206,6 @@
187
206
  "types": "./forms/label/index.d.ts",
188
207
  "default": "./fesm2022/sd-angular-core-forms-label.mjs"
189
208
  },
190
- "./forms/models": {
191
- "types": "./forms/models/index.d.ts",
192
- "default": "./fesm2022/sd-angular-core-forms-models.mjs"
193
- },
194
209
  "./forms/radio": {
195
210
  "types": "./forms/radio/index.d.ts",
196
211
  "default": "./fesm2022/sd-angular-core-forms-radio.mjs"
@@ -199,41 +214,49 @@
199
214
  "types": "./forms/select/index.d.ts",
200
215
  "default": "./fesm2022/sd-angular-core-forms-select.mjs"
201
216
  },
217
+ "./forms/textarea": {
218
+ "types": "./forms/textarea/index.d.ts",
219
+ "default": "./fesm2022/sd-angular-core-forms-textarea.mjs"
220
+ },
202
221
  "./forms/switch": {
203
222
  "types": "./forms/switch/index.d.ts",
204
223
  "default": "./fesm2022/sd-angular-core-forms-switch.mjs"
205
224
  },
206
- "./forms/textarea": {
207
- "types": "./forms/textarea/index.d.ts",
208
- "default": "./fesm2022/sd-angular-core-forms-textarea.mjs"
225
+ "./guards/permission": {
226
+ "types": "./guards/permission/index.d.ts",
227
+ "default": "./fesm2022/sd-angular-core-guards-permission.mjs"
209
228
  },
210
229
  "./modules/auth": {
211
230
  "types": "./modules/auth/index.d.ts",
212
231
  "default": "./fesm2022/sd-angular-core-modules-auth.mjs"
213
232
  },
214
- "./modules/layout": {
215
- "types": "./modules/layout/index.d.ts",
216
- "default": "./fesm2022/sd-angular-core-modules-layout.mjs"
217
- },
218
- "./modules/oidc": {
219
- "types": "./modules/oidc/index.d.ts",
220
- "default": "./fesm2022/sd-angular-core-modules-oidc.mjs"
233
+ "./modules/keycloak": {
234
+ "types": "./modules/keycloak/index.d.ts",
235
+ "default": "./fesm2022/sd-angular-core-modules-keycloak.mjs"
221
236
  },
222
237
  "./modules/permission": {
223
238
  "types": "./modules/permission/index.d.ts",
224
239
  "default": "./fesm2022/sd-angular-core-modules-permission.mjs"
225
240
  },
226
- "./services/api": {
227
- "types": "./services/api/index.d.ts",
228
- "default": "./fesm2022/sd-angular-core-services-api.mjs"
241
+ "./modules/layout": {
242
+ "types": "./modules/layout/index.d.ts",
243
+ "default": "./fesm2022/sd-angular-core-modules-layout.mjs"
244
+ },
245
+ "./services/confirm": {
246
+ "types": "./services/confirm/index.d.ts",
247
+ "default": "./fesm2022/sd-angular-core-services-confirm.mjs"
229
248
  },
230
249
  "./services/cache": {
231
250
  "types": "./services/cache/index.d.ts",
232
251
  "default": "./fesm2022/sd-angular-core-services-cache.mjs"
233
252
  },
234
- "./services/confirm": {
235
- "types": "./services/confirm/index.d.ts",
236
- "default": "./fesm2022/sd-angular-core-services-confirm.mjs"
253
+ "./services/api": {
254
+ "types": "./services/api/index.d.ts",
255
+ "default": "./fesm2022/sd-angular-core-services-api.mjs"
256
+ },
257
+ "./services/docx": {
258
+ "types": "./services/docx/index.d.ts",
259
+ "default": "./fesm2022/sd-angular-core-services-docx.mjs"
237
260
  },
238
261
  "./services/excel": {
239
262
  "types": "./services/excel/index.d.ts",
@@ -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/view": {
294
+ "types": "./components/view/index.d.ts",
295
+ "default": "./fesm2022/sd-angular-core-components-view.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;
@@ -2,6 +2,8 @@ export declare const StringUtilities: {
2
2
  REGEX_EMAIL: string;
3
3
  REGEX_PHONE: string;
4
4
  REGEX_PHONE_VN: string;
5
+ REGEX_IDVN_OR_PASSPORT: string;
6
+ REGEX_TIME: string;
5
7
  isValidEmail: (value: any) => boolean;
6
8
  isValidPhone: (value: any) => boolean;
7
9
  isValidCode: (value: any) => boolean;
@@ -20,5 +20,6 @@ declare const SdUtilities: {
20
20
  parseQueryParams: (queryString?: string) => Record<string, string>;
21
21
  getClientPublicIp: () => Promise<string | null>;
22
22
  generateUuid: () => string;
23
+ getNestedValue: (obj: any, path: string) => any;
23
24
  };
24
25
  export { SdUtilities };
@@ -1,8 +1,11 @@
1
1
  export * from './src/color.model';
2
2
  export * from './src/size.model';
3
+ export * from './src/icon.model';
3
4
  export * from './src/pattern.model';
4
5
  export * from './src/empty.model';
5
6
  export * from './src/maybe-async.model';
7
+ export * from './src/nested-key-of.model';
8
+ export * from './src/unwrap-signal.model';
6
9
  export * from './src/operator.model';
7
10
  export * from './src/filter.model';
8
11
  export * from './src/order.model';
@@ -1,11 +1,24 @@
1
+ import { SdNestedKeyOf } from './nested-key-of.model';
1
2
  import { SdOperatorHasData, SdOperatorNoData } from './operator.model';
2
- export type SdFilter<T = any> = SdFilterHasData<T> | SdFilterNoData<T>;
3
+ export type SdFilter<T = any> = SdFilterHasData<T> | SdFilterBetween<T> | SdFilterNoData<T> | SdFilterAndOr<T>;
3
4
  export interface SdFilterHasData<T = any> {
4
- field: Extract<keyof T, string>;
5
- operator: SdOperatorHasData;
5
+ field: SdNestedKeyOf<T>;
6
+ operator: Exclude<SdOperatorHasData, 'BETWEEN'>;
6
7
  data: any;
7
8
  }
9
+ export interface SdFilterBetween<T = any> {
10
+ field: SdNestedKeyOf<T>;
11
+ operator: 'BETWEEN';
12
+ data: {
13
+ from: string | number;
14
+ to: string | number;
15
+ };
16
+ }
8
17
  export interface SdFilterNoData<T = any> {
9
- field: Extract<keyof T, string>;
18
+ field: SdNestedKeyOf<T>;
10
19
  operator: SdOperatorNoData;
11
20
  }
21
+ export interface SdFilterAndOr<T = any> {
22
+ operator: 'AND' | 'OR';
23
+ data: SdFilter<T>[];
24
+ }
@@ -0,0 +1,2 @@
1
+ export type MaterialIconFontSet = 'material-icons' | 'material-icons-outlined' | 'material-icons-round' | 'material-icons-sharp' | 'material-symbols-outlined';
2
+ export declare const DefaultMaterialIconFontSet: MaterialIconFontSet;
@@ -0,0 +1,5 @@
1
+ type Primitive = string | number | boolean | null | undefined | Date | Function;
2
+ export type SdNestedKeyOf<ObjectType, Depth extends number[] = []> = Depth['length'] extends 4 ? never : ObjectType extends object ? {
3
+ [Key in keyof ObjectType & string]: ObjectType[Key] extends Primitive ? Key : ObjectType[Key] extends Array<any> ? Key : ObjectType[Key] extends object ? Key | `${Key}.${SdNestedKeyOf<ObjectType[Key], [...Depth, 1]>}` : Key;
4
+ }[keyof ObjectType & string] : string;
5
+ export {};
@@ -1,4 +1,5 @@
1
+ import { SdNestedKeyOf } from "./nested-key-of.model";
1
2
  export interface SdOrder<T = any> {
2
- field: Extract<keyof T, string>;
3
+ field: SdNestedKeyOf<T>;
3
4
  direction: 'ASC' | 'DESC';
4
5
  }
@@ -1,8 +1,9 @@
1
1
  import { SdFilter } from './filter.model';
2
+ import { SdNestedKeyOf } from './nested-key-of.model';
2
3
  import { SdOrder } from './order.model';
3
4
  export interface SdQueryReq<T = any> {
4
5
  filters?: SdFilter<T>[];
5
- fields?: Extract<keyof T, string>[];
6
+ fields?: SdNestedKeyOf<T>[];
6
7
  }
7
8
  export interface SdPagingReq<T = any> extends SdQueryReq<T> {
8
9
  pageSize?: number;
@@ -1,4 +1,4 @@
1
- export type SdPatternType = 'EMAIL' | 'PHONE' | 'PHONE_VN';
1
+ export type SdPatternType = 'EMAIL' | 'PHONE' | 'PHONE_VN' | 'IDVN_OR_PASSPORT' | 'TIME';
2
2
  export interface SdPatternCommon {
3
3
  type: SdPatternType;
4
4
  name: string;
@@ -0,0 +1,6 @@
1
+ import { InputSignal, InputSignalWithTransform, ModelSignal } from '@angular/core';
2
+ /**
3
+ * Utility Type: Bóc tách kiểu dữ liệu gốc từ Angular Signal Inputs & Models
4
+ */
5
+ export type SdUnwrapSignal<T> = T extends InputSignalWithTransform<any, infer WriteT> ? WriteT : T extends InputSignal<infer ReadT> ? ReadT : T extends ModelSignal<infer ModelT> ? ModelT : T;
6
+ export type SdUnwrapSafe<T> = SdUnwrapSignal<NonNullable<T>>;
@@ -1,4 +0,0 @@
1
- import { Plugin } from 'ckeditor5';
2
- export declare class CommentPlugin extends Plugin {
3
- init(): void;
4
- }
@@ -1,4 +0,0 @@
1
- import { Plugin } from 'ckeditor5';
2
- export declare class TableFitPlugin extends Plugin {
3
- init(): void;
4
- }
@@ -1,31 +0,0 @@
1
- import { ChangeDetectorRef, ElementRef, EventEmitter, OnDestroy, OnInit, TemplateRef } from '@angular/core';
2
- import { MatBottomSheet } from '@angular/material/bottom-sheet';
3
- import { MatDialog } from '@angular/material/dialog';
4
- import { SdColor, SdSize } from '@sd-angular/core/utilities/models';
5
- import * as i0 from "@angular/core";
6
- export declare class SdModal implements OnInit, OnDestroy {
7
- #private;
8
- private ref;
9
- private dialog;
10
- private bottomSheet;
11
- static index: number;
12
- templateRef: TemplateRef<any>;
13
- title?: string;
14
- color: SdColor;
15
- width: SdSize | string;
16
- height: string;
17
- view?: 'dialog' | 'bottom-sheet';
18
- lazyLoadContent: boolean;
19
- sdClosed: EventEmitter<any>;
20
- modal: ElementRef;
21
- isOpened: boolean;
22
- alreadyOpened: boolean;
23
- private subcription;
24
- constructor(ref: ChangeDetectorRef, dialog: MatDialog, bottomSheet: MatBottomSheet);
25
- ngOnInit(): void;
26
- ngOnDestroy(): void;
27
- open: () => void;
28
- close: () => void;
29
- static ɵfac: i0.ɵɵFactoryDeclaration<SdModal, never>;
30
- static ɵcmp: i0.ɵɵComponentDeclaration<SdModal, "sd-modal", never, { "title": { "alias": "title"; "required": false; }; "color": { "alias": "color"; "required": false; }; "width": { "alias": "width"; "required": false; }; "height": { "alias": "height"; "required": false; }; "view": { "alias": "view"; "required": false; }; "lazyLoadContent": { "alias": "lazyLoadContent"; "required": false; }; }, { "sdClosed": "sdClosed"; }, never, ["[sdHeader]", "*", "[sdFooterLeft]", "[sdFooter]"], true, never>;
31
- }