@sdcorejs/angular 20.1.5 → 20.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (208) hide show
  1. package/README.md +12 -4
  2. package/assets/scss/core/menu.scss +18 -0
  3. package/assets/scss/core/utilities/_misc.scss +15 -0
  4. package/assets/scss/sd-core.scss +1 -0
  5. package/components/anchor/index.d.ts +3 -1
  6. package/components/badge/index.d.ts +1 -0
  7. package/components/ckeditor-styles/index.d.ts +1 -1
  8. package/components/form-generic/index.d.ts +44 -33
  9. package/components/import-excel/index.d.ts +1 -0
  10. package/components/index.d.ts +6 -1
  11. package/components/mini-editor/index.d.ts +1 -1
  12. package/components/modal/index.d.ts +3 -2
  13. package/components/modal-resizable/index.d.ts +92 -0
  14. package/components/org-chart/index.d.ts +6 -0
  15. package/components/preview/index.d.ts +1 -0
  16. package/components/query-bar/index.d.ts +55 -17
  17. package/components/query-builder/index.d.ts +150 -98
  18. package/components/section/index.d.ts +3 -0
  19. package/components/tab-router/index.d.ts +19 -19
  20. package/components/table/index.d.ts +252 -110
  21. package/components/tree/index.d.ts +48 -30
  22. package/components/upload-file/index.d.ts +6 -3
  23. package/configurations/index.d.ts +1 -2
  24. package/fesm2022/sdcorejs-angular-components-anchor.mjs +37 -13
  25. package/fesm2022/sdcorejs-angular-components-anchor.mjs.map +1 -1
  26. package/fesm2022/sdcorejs-angular-components-autoid-inspector.mjs +2 -2
  27. package/fesm2022/sdcorejs-angular-components-autoid-inspector.mjs.map +1 -1
  28. package/fesm2022/sdcorejs-angular-components-badge.mjs +15 -2
  29. package/fesm2022/sdcorejs-angular-components-badge.mjs.map +1 -1
  30. package/fesm2022/sdcorejs-angular-components-button.mjs +2 -2
  31. package/fesm2022/sdcorejs-angular-components-button.mjs.map +1 -1
  32. package/fesm2022/sdcorejs-angular-components-ckeditor-styles.mjs +1 -1
  33. package/fesm2022/sdcorejs-angular-components-ckeditor-styles.mjs.map +1 -1
  34. package/fesm2022/sdcorejs-angular-components-code-editor.mjs +3 -3
  35. package/fesm2022/sdcorejs-angular-components-code-editor.mjs.map +1 -1
  36. package/fesm2022/sdcorejs-angular-components-data-state.mjs +3 -3
  37. package/fesm2022/sdcorejs-angular-components-data-state.mjs.map +1 -1
  38. package/fesm2022/sdcorejs-angular-components-editor.mjs +2 -2
  39. package/fesm2022/sdcorejs-angular-components-editor.mjs.map +1 -1
  40. package/fesm2022/sdcorejs-angular-components-form-generic.mjs +324 -192
  41. package/fesm2022/sdcorejs-angular-components-form-generic.mjs.map +1 -1
  42. package/fesm2022/sdcorejs-angular-components-history.mjs +4 -4
  43. package/fesm2022/sdcorejs-angular-components-history.mjs.map +1 -1
  44. package/fesm2022/sdcorejs-angular-components-import-excel.mjs +13 -5
  45. package/fesm2022/sdcorejs-angular-components-import-excel.mjs.map +1 -1
  46. package/fesm2022/sdcorejs-angular-components-inform.mjs +3 -3
  47. package/fesm2022/sdcorejs-angular-components-inform.mjs.map +1 -1
  48. package/fesm2022/sdcorejs-angular-components-modal-resizable.mjs +164 -8
  49. package/fesm2022/sdcorejs-angular-components-modal-resizable.mjs.map +1 -1
  50. package/fesm2022/sdcorejs-angular-components-modal.mjs +30 -18
  51. package/fesm2022/sdcorejs-angular-components-modal.mjs.map +1 -1
  52. package/fesm2022/sdcorejs-angular-components-org-chart.mjs +60 -13
  53. package/fesm2022/sdcorejs-angular-components-org-chart.mjs.map +1 -1
  54. package/fesm2022/sdcorejs-angular-components-preview.mjs +58 -19
  55. package/fesm2022/sdcorejs-angular-components-preview.mjs.map +1 -1
  56. package/fesm2022/sdcorejs-angular-components-query-bar.mjs +192 -30
  57. package/fesm2022/sdcorejs-angular-components-query-bar.mjs.map +1 -1
  58. package/fesm2022/sdcorejs-angular-components-query-builder.mjs +187 -127
  59. package/fesm2022/sdcorejs-angular-components-query-builder.mjs.map +1 -1
  60. package/fesm2022/sdcorejs-angular-components-section.mjs +16 -2
  61. package/fesm2022/sdcorejs-angular-components-section.mjs.map +1 -1
  62. package/fesm2022/sdcorejs-angular-components-side-drawer.mjs +83 -24
  63. package/fesm2022/sdcorejs-angular-components-side-drawer.mjs.map +1 -1
  64. package/fesm2022/sdcorejs-angular-components-splitter.mjs +57 -21
  65. package/fesm2022/sdcorejs-angular-components-splitter.mjs.map +1 -1
  66. package/fesm2022/sdcorejs-angular-components-stepper.mjs +2 -2
  67. package/fesm2022/sdcorejs-angular-components-stepper.mjs.map +1 -1
  68. package/fesm2022/sdcorejs-angular-components-tab-router.mjs +68 -20
  69. package/fesm2022/sdcorejs-angular-components-tab-router.mjs.map +1 -1
  70. package/fesm2022/sdcorejs-angular-components-tab.mjs +3 -2
  71. package/fesm2022/sdcorejs-angular-components-tab.mjs.map +1 -1
  72. package/fesm2022/sdcorejs-angular-components-table.mjs +557 -255
  73. package/fesm2022/sdcorejs-angular-components-table.mjs.map +1 -1
  74. package/fesm2022/sdcorejs-angular-components-tree.mjs +80 -17
  75. package/fesm2022/sdcorejs-angular-components-tree.mjs.map +1 -1
  76. package/fesm2022/sdcorejs-angular-components-upload-file.mjs +48 -13
  77. package/fesm2022/sdcorejs-angular-components-upload-file.mjs.map +1 -1
  78. package/fesm2022/sdcorejs-angular-components.mjs +6 -1
  79. package/fesm2022/sdcorejs-angular-components.mjs.map +1 -1
  80. package/fesm2022/sdcorejs-angular-configurations.mjs.map +1 -1
  81. package/fesm2022/sdcorejs-angular-directives.mjs +45 -8
  82. package/fesm2022/sdcorejs-angular-directives.mjs.map +1 -1
  83. package/fesm2022/sdcorejs-angular-forms-autocomplete.mjs +40 -29
  84. package/fesm2022/sdcorejs-angular-forms-autocomplete.mjs.map +1 -1
  85. package/fesm2022/sdcorejs-angular-forms-checkbox.mjs +5 -5
  86. package/fesm2022/sdcorejs-angular-forms-checkbox.mjs.map +1 -1
  87. package/fesm2022/sdcorejs-angular-forms-chip-calendar.mjs +67 -50
  88. package/fesm2022/sdcorejs-angular-forms-chip-calendar.mjs.map +1 -1
  89. package/fesm2022/sdcorejs-angular-forms-chip.mjs +57 -43
  90. package/fesm2022/sdcorejs-angular-forms-chip.mjs.map +1 -1
  91. package/fesm2022/sdcorejs-angular-forms-date-range.mjs +234 -64
  92. package/fesm2022/sdcorejs-angular-forms-date-range.mjs.map +1 -1
  93. package/fesm2022/sdcorejs-angular-forms-date.mjs +209 -42
  94. package/fesm2022/sdcorejs-angular-forms-date.mjs.map +1 -1
  95. package/fesm2022/sdcorejs-angular-forms-datetime.mjs +131 -27
  96. package/fesm2022/sdcorejs-angular-forms-datetime.mjs.map +1 -1
  97. package/fesm2022/sdcorejs-angular-forms-entity-picker.mjs +40 -16
  98. package/fesm2022/sdcorejs-angular-forms-entity-picker.mjs.map +1 -1
  99. package/fesm2022/sdcorejs-angular-forms-input-color.mjs +16 -5
  100. package/fesm2022/sdcorejs-angular-forms-input-color.mjs.map +1 -1
  101. package/fesm2022/sdcorejs-angular-forms-input-number.mjs +24 -9
  102. package/fesm2022/sdcorejs-angular-forms-input-number.mjs.map +1 -1
  103. package/fesm2022/sdcorejs-angular-forms-input.mjs +58 -10
  104. package/fesm2022/sdcorejs-angular-forms-input.mjs.map +1 -1
  105. package/fesm2022/sdcorejs-angular-forms-models.mjs +279 -6
  106. package/fesm2022/sdcorejs-angular-forms-models.mjs.map +1 -1
  107. package/fesm2022/sdcorejs-angular-forms-radio.mjs +4 -4
  108. package/fesm2022/sdcorejs-angular-forms-radio.mjs.map +1 -1
  109. package/fesm2022/sdcorejs-angular-forms-select.mjs +136 -38
  110. package/fesm2022/sdcorejs-angular-forms-select.mjs.map +1 -1
  111. package/fesm2022/sdcorejs-angular-forms-switch.mjs +18 -3
  112. package/fesm2022/sdcorejs-angular-forms-switch.mjs.map +1 -1
  113. package/fesm2022/sdcorejs-angular-forms-textarea.mjs +51 -62
  114. package/fesm2022/sdcorejs-angular-forms-textarea.mjs.map +1 -1
  115. package/fesm2022/sdcorejs-angular-forms-time-range.mjs +57 -12
  116. package/fesm2022/sdcorejs-angular-forms-time-range.mjs.map +1 -1
  117. package/fesm2022/sdcorejs-angular-forms-time.mjs +16 -5
  118. package/fesm2022/sdcorejs-angular-forms-time.mjs.map +1 -1
  119. package/fesm2022/sdcorejs-angular-forms-tree-select.mjs +100 -9
  120. package/fesm2022/sdcorejs-angular-forms-tree-select.mjs.map +1 -1
  121. package/fesm2022/sdcorejs-angular-forms.mjs +91 -46
  122. package/fesm2022/sdcorejs-angular-forms.mjs.map +1 -1
  123. package/fesm2022/sdcorejs-angular-handlers.mjs +18 -3
  124. package/fesm2022/sdcorejs-angular-handlers.mjs.map +1 -1
  125. package/fesm2022/sdcorejs-angular-i18n.mjs +510 -68
  126. package/fesm2022/sdcorejs-angular-i18n.mjs.map +1 -1
  127. package/fesm2022/sdcorejs-angular-interceptors.mjs +87 -29
  128. package/fesm2022/sdcorejs-angular-interceptors.mjs.map +1 -1
  129. package/fesm2022/sdcorejs-angular-modules-auth.mjs +25 -15
  130. package/fesm2022/sdcorejs-angular-modules-auth.mjs.map +1 -1
  131. package/fesm2022/sdcorejs-angular-modules-icon.mjs +2 -2
  132. package/fesm2022/sdcorejs-angular-modules-icon.mjs.map +1 -1
  133. package/fesm2022/sdcorejs-angular-modules-keycloak.mjs +32 -3
  134. package/fesm2022/sdcorejs-angular-modules-keycloak.mjs.map +1 -1
  135. package/fesm2022/sdcorejs-angular-modules-layout.mjs +441 -135
  136. package/fesm2022/sdcorejs-angular-modules-layout.mjs.map +1 -1
  137. package/fesm2022/sdcorejs-angular-modules-permission.mjs +177 -40
  138. package/fesm2022/sdcorejs-angular-modules-permission.mjs.map +1 -1
  139. package/fesm2022/sdcorejs-angular-pipes.mjs +62 -28
  140. package/fesm2022/sdcorejs-angular-pipes.mjs.map +1 -1
  141. package/fesm2022/sdcorejs-angular-services-api.mjs +123 -13
  142. package/fesm2022/sdcorejs-angular-services-api.mjs.map +1 -1
  143. package/fesm2022/sdcorejs-angular-services-cache.mjs +53 -3
  144. package/fesm2022/sdcorejs-angular-services-cache.mjs.map +1 -1
  145. package/fesm2022/sdcorejs-angular-services-confirm.mjs +25 -73
  146. package/fesm2022/sdcorejs-angular-services-confirm.mjs.map +1 -1
  147. package/fesm2022/sdcorejs-angular-services-excel.mjs +12 -10
  148. package/fesm2022/sdcorejs-angular-services-excel.mjs.map +1 -1
  149. package/fesm2022/sdcorejs-angular-services-loading.mjs +75 -84
  150. package/fesm2022/sdcorejs-angular-services-loading.mjs.map +1 -1
  151. package/fesm2022/sdcorejs-angular-services-notify.mjs +46 -5
  152. package/fesm2022/sdcorejs-angular-services-notify.mjs.map +1 -1
  153. package/fesm2022/sdcorejs-angular-services-storage.mjs +4 -0
  154. package/fesm2022/sdcorejs-angular-services-storage.mjs.map +1 -1
  155. package/fesm2022/sdcorejs-angular-services.mjs +0 -1
  156. package/fesm2022/sdcorejs-angular-services.mjs.map +1 -1
  157. package/fesm2022/sdcorejs-angular-utilities-extensions.mjs +225 -80
  158. package/fesm2022/sdcorejs-angular-utilities-extensions.mjs.map +1 -1
  159. package/fesm2022/sdcorejs-angular-utilities-models.mjs +1 -63
  160. package/fesm2022/sdcorejs-angular-utilities-models.mjs.map +1 -1
  161. package/fesm2022/sdcorejs-angular.mjs +17 -10
  162. package/fesm2022/sdcorejs-angular.mjs.map +1 -1
  163. package/forms/autocomplete/index.d.ts +5 -2
  164. package/forms/chip-calendar/index.d.ts +10 -0
  165. package/forms/date/index.d.ts +21 -3
  166. package/forms/date-range/index.d.ts +14 -2
  167. package/forms/datetime/index.d.ts +13 -2
  168. package/forms/entity-picker/index.d.ts +9 -3
  169. package/forms/index.d.ts +22 -13
  170. package/forms/input/index.d.ts +3 -0
  171. package/forms/input-color/index.d.ts +4 -0
  172. package/forms/input-number/index.d.ts +3 -0
  173. package/forms/models/index.d.ts +146 -5
  174. package/forms/select/index.d.ts +27 -4
  175. package/forms/switch/index.d.ts +7 -1
  176. package/forms/textarea/index.d.ts +5 -3
  177. package/forms/time-range/index.d.ts +22 -1
  178. package/forms/tree-select/index.d.ts +36 -5
  179. package/i18n/index.d.ts +99 -16
  180. package/index.d.ts +11 -2
  181. package/interceptors/index.d.ts +13 -3
  182. package/modules/auth/index.d.ts +1 -1
  183. package/modules/keycloak/index.d.ts +1 -0
  184. package/modules/layout/index.d.ts +103 -28
  185. package/modules/permission/index.d.ts +66 -4
  186. package/package.json +40 -25
  187. package/pipes/index.d.ts +27 -5
  188. package/services/api/index.d.ts +21 -1
  189. package/services/cache/index.d.ts +11 -1
  190. package/services/index.d.ts +0 -1
  191. package/services/notify/index.d.ts +1 -1
  192. package/utilities/extensions/index.d.ts +83 -61
  193. package/utilities/models/index.d.ts +2 -76
  194. package/components/base/index.d.ts +0 -11
  195. package/components/document-builder/index.d.ts +0 -252
  196. package/fesm2022/sdcorejs-angular-components-base.mjs +0 -23
  197. package/fesm2022/sdcorejs-angular-components-base.mjs.map +0 -1
  198. package/fesm2022/sdcorejs-angular-components-document-builder.mjs +0 -5038
  199. package/fesm2022/sdcorejs-angular-components-document-builder.mjs.map +0 -1
  200. package/fesm2022/sdcorejs-angular-models.mjs +0 -6
  201. package/fesm2022/sdcorejs-angular-models.mjs.map +0 -1
  202. package/fesm2022/sdcorejs-angular-services-docx.mjs +0 -291
  203. package/fesm2022/sdcorejs-angular-services-docx.mjs.map +0 -1
  204. package/fesm2022/sdcorejs-angular-services-license.mjs +0 -97
  205. package/fesm2022/sdcorejs-angular-services-license.mjs.map +0 -1
  206. package/models/index.d.ts +0 -2
  207. package/services/docx/index.d.ts +0 -27
  208. package/services/license/index.d.ts +0 -12
@@ -1,252 +0,0 @@
1
- import * as i0 from '@angular/core';
2
- import { OnInit, OnDestroy } from '@angular/core';
3
- import { ModelRange, EditorConfig, ModelDocumentSelection, EventInfo, ViewDataTransfer, ClassicEditor, Plugin, Widget, ContextualBalloon } from 'ckeditor5';
4
- import { I18nParams } from '@sdcorejs/angular/i18n';
5
-
6
- /**
7
- * Comment status based on text changes
8
- */
9
- type CkCommentStatus = 'normal' | 'modified' | 'broken';
10
- /**
11
- * Color configuration for comment markers
12
- */
13
- interface CkCommentColors {
14
- marker?: string;
15
- markerSelected?: string;
16
- markerPending?: string;
17
- markerModified?: string;
18
- markerBroken?: string;
19
- }
20
- /**
21
- * Comment data structure for CkCommentPlugin
22
- */
23
- interface CkComment<T = any> {
24
- id: string | number;
25
- startPath: number[];
26
- endPath: number[];
27
- originalText: string;
28
- currentText: string;
29
- status: CkCommentStatus;
30
- data?: T;
31
- }
32
- /**
33
- * Config for CkCommentPlugin
34
- */
35
- interface CkCommentConfig {
36
- onPendingComment?: (comment: CkComment) => void;
37
- onAddComment?: (comment: CkComment) => void;
38
- onSelectComment?: (id: string | number) => void;
39
- onRemoveComment?: (id: string | number) => void;
40
- onChange?: (comments: CkComment[]) => void;
41
- onCancelPending?: () => void;
42
- onError?: (error: {
43
- code: string;
44
- message: string;
45
- data?: any;
46
- }) => void;
47
- searchRange?: number;
48
- debug?: boolean;
49
- colors?: CkCommentColors;
50
- maxTextLength?: number;
51
- allowCreating?: boolean;
52
- }
53
- /**
54
- * Data returned when user selects text for comment
55
- */
56
- interface CkCommentSelection {
57
- range: ModelRange;
58
- startPath: number[];
59
- endPath: number[];
60
- text: string;
61
- }
62
-
63
- /** Plain translator cho CKEditor plugin — tránh truyền thẳng I18nService (private fields mất `this` qua config). */
64
- interface DocumentBuilderI18n {
65
- t(key: string, params?: I18nParams): string;
66
- }
67
- type DocumentBuilderOption = EditorConfig & {
68
- getOption?: () => SdDocumentBuilderOption;
69
- _i18n?: DocumentBuilderI18n;
70
- };
71
- interface SdDocumentBuilderOption {
72
- onDropVariable?: (variable: SdDocumentBuilderVariable) => boolean | Promise<boolean | SdDocumentBuilderVariable>;
73
- onAfterDropVariable?: (variable: SdDocumentBuilderVariable) => void;
74
- onPasteVariable?: (display: string) => SdDocumentBuilderVariable | null | Promise<SdDocumentBuilderVariable | null>;
75
- comment?: CkCommentConfig;
76
- onSelection?: (selection: ModelDocumentSelection, $event: EventInfo<string, unknown>) => void;
77
- onOrientation?: (orientation: 'PORTRAIT' | 'LANDSCAPE') => void;
78
- onPaste?: (data: SdPasteEventData) => void | Promise<void>;
79
- orientation?: 'PORTRAIT' | 'LANDSCAPE';
80
- }
81
- interface SdDocumentBuilderVariable<T = any> {
82
- id: string;
83
- uuid?: string;
84
- value: string;
85
- display: string;
86
- bindingValue?: string;
87
- data?: T;
88
- }
89
- interface SdDocumentBuilderHeading {
90
- id: string;
91
- text: string;
92
- level: number;
93
- type: string;
94
- }
95
- interface SdPasteEventData {
96
- html?: string;
97
- text: string;
98
- source: 'word' | 'excel' | 'google-docs' | 'web' | 'unknown';
99
- dataTransfer: ViewDataTransfer;
100
- }
101
-
102
- declare class SdHeaderFooterBuilder {
103
- #private;
104
- Editor: typeof ClassicEditor;
105
- set model(value: string | undefined | null);
106
- readonly modelChange: i0.OutputEmitterRef<string>;
107
- config: EditorConfig & {
108
- _i18n?: DocumentBuilderI18n;
109
- };
110
- onReady(editor: ClassicEditor): void;
111
- static ɵfac: i0.ɵɵFactoryDeclaration<SdHeaderFooterBuilder, never>;
112
- static ɵcmp: i0.ɵɵComponentDeclaration<SdHeaderFooterBuilder, "sd-header-footer-builder", never, { "model": { "alias": "model"; "required": false; }; }, { "modelChange": "modelChange"; }, never, never, true, never>;
113
- }
114
-
115
- declare class VariablePlugin extends Plugin {
116
- #private;
117
- static get pluginName(): "VariablePlugin";
118
- static get requires(): (typeof Widget)[];
119
- init(): void;
120
- /**
121
- * Lấy tất cả variables trong document.
122
- * @returns Danh sách tất cả variables (bao gồm bindingValue nếu đã binding)
123
- */
124
- all<T = any>(): SdDocumentBuilderVariable<T>[];
125
- /**
126
- * Scroll tới vị trí của variable theo uuid.
127
- * @param uuid - uuid của variable (FE tự sinh sau mỗi lần drop)
128
- */
129
- scroll(uuid: string): void;
130
- /**
131
- * Gán giá trị cho TẤT CẢ variable có cùng id trong document.
132
- * Nếu value rỗng → tự động gọi clearValue(id).
133
- * @param id - id của variable definition
134
- * @param value - giá trị binding cần hiển thị
135
- * @returns số instance đã được cập nhật
136
- */
137
- bindValue(id: string, value: string): number;
138
- /**
139
- * Xóa binding value của TẤT CẢ variable có cùng id.
140
- * @param id - id của variable definition
141
- * @returns số instance đã được cập nhật
142
- */
143
- clearValue(id: string): number;
144
- /**
145
- * Batch bind nhiều variables theo map { id → value }.
146
- * Toàn bộ thực hiện trong 1 model.change() → 1 undo step duy nhất.
147
- * @param map - { [id]: boundValue }
148
- */
149
- bindValues(map: Record<string, string>): void;
150
- /**
151
- * Batch clear binding của nhiều variables.
152
- * @param ids - danh sách id cần clear; nếu không truyền/rỗng → clear TẤT CẢ
153
- */
154
- clearValues(ids?: string[]): void;
155
- /** Xóa toàn bộ binding values trong document. Shorthand của clearValues(). */
156
- clearAllValues(): void;
157
- }
158
-
159
- declare class CkCommentPlugin extends Plugin {
160
- #private;
161
- static get pluginName(): string;
162
- static get requires(): (typeof ContextualBalloon)[];
163
- static readonly PENDING_MARKER_ID = "__pending_comment__";
164
- static readonly DEFAULT_SEARCH_RANGE = 5;
165
- static readonly DEFAULT_MAX_TEXT_LENGTH = 1000;
166
- static readonly DEFAULT_COLORS: CkCommentColors;
167
- init(): void;
168
- /**
169
- * Thiết lập config với callbacks
170
- */
171
- setConfig(config: CkCommentConfig): void;
172
- /**
173
- * Thêm comment và tạo marker
174
- */
175
- addComment(comment: CkComment): boolean;
176
- /**
177
- * Xóa comment theo id
178
- */
179
- removeComment(id: string | number): boolean;
180
- /**
181
- * Chọn comment theo id - chỉ thêm class highlight, không bôi đen text
182
- */
183
- selectComment(id: string | number, scrollIntoView?: boolean): void;
184
- /**
185
- * Thiết lập tất cả comments (khôi phục từ dữ liệu)
186
- */
187
- setComments(comments: CkComment[]): void;
188
- /**
189
- * Lấy tất cả comments
190
- */
191
- get comments(): CkComment[];
192
- /**
193
- * Thiết lập pending highlight cho selection (khi user đang nhập nội dung comment)
194
- */
195
- setPendingSelection(startPath: number[], endPath: number[]): boolean;
196
- /**
197
- * Xóa pending highlight và fire onCancelPending callback
198
- */
199
- clearPendingSelection(): void;
200
- }
201
-
202
- declare class SdDocumentBuilder implements OnInit, OnDestroy {
203
- #private;
204
- readonly option: i0.InputSignal<SdDocumentBuilderOption>;
205
- disabled: boolean;
206
- set _disabled(val: boolean | '' | undefined | null);
207
- readonly contentChange: i0.OutputEmitterRef<string>;
208
- Editor: typeof ClassicEditor;
209
- config: DocumentBuilderOption;
210
- ngOnInit(): void;
211
- ngOnDestroy(): void;
212
- onReady(editor: ClassicEditor): void;
213
- setContent: (html: string) => void;
214
- getContent: () => string;
215
- setOrientation: (orientation: "PORTRAIT" | "LANDSCAPE") => void;
216
- getOrientation: () => "PORTRAIT" | "LANDSCAPE";
217
- scrollToTop(): void;
218
- heading: {
219
- /**
220
- * Lấy tất cả headings trong document
221
- * @returns Danh sách tất cả headings
222
- */
223
- all: () => SdDocumentBuilderHeading[];
224
- /**
225
- * Scroll tới vị trí của heading
226
- * @param id - ID của heading cần scroll tới
227
- */
228
- scroll: (id: string) => void;
229
- };
230
- getCommentPluginAPI(): CkCommentPlugin | null;
231
- getVariablePluginAPI(): VariablePlugin | null;
232
- /**
233
- * Xuất file Word có Header/Footer
234
- * @param fileName Tên file
235
- * @param headerText Nội dung Header (hoặc HTML)
236
- * '<p style="text-align: center; font-weight: bold;">CÔNG TY CỔ PHẦN CÔNG NGHỆ ABC</p>'
237
- * @param footerText Nội dung Footer (hoặc HTML)
238
- * '<p style="text-align: right; font-size: 10pt;">Trang <span style="mso-field-code: PAGE"></span> / <span style="mso-field-code: NUMPAGES"></span></p>'
239
- */
240
- exportDocx(args: {
241
- fileName?: string;
242
- header?: string;
243
- footer?: string;
244
- }): void;
245
- hightSelectRange: (range: ModelRange) => void;
246
- removeHighlightSeclectRange: () => void;
247
- static ɵfac: i0.ɵɵFactoryDeclaration<SdDocumentBuilder, never>;
248
- static ɵcmp: i0.ɵɵComponentDeclaration<SdDocumentBuilder, "sd-document-builder", never, { "option": { "alias": "option"; "required": true; "isSignal": true; }; "_disabled": { "alias": "disabled"; "required": false; }; }, { "contentChange": "contentChange"; }, never, never, true, never>;
249
- }
250
-
251
- export { SdDocumentBuilder, SdHeaderFooterBuilder };
252
- export type { CkComment, CkCommentColors, CkCommentConfig, CkCommentSelection, CkCommentStatus, DocumentBuilderI18n, DocumentBuilderOption, SdDocumentBuilderHeading, SdDocumentBuilderOption, SdDocumentBuilderVariable, SdPasteEventData };
@@ -1,23 +0,0 @@
1
- import * as i0 from '@angular/core';
2
- import { inject, Directive } from '@angular/core';
3
- import { SdLicenseService } from '@sdcorejs/angular/services/license';
4
-
5
- // base.component.ts
6
- class SdBaseSecureComponent {
7
- licenseService = inject(SdLicenseService);
8
- constructor() {
9
- this.licenseService.enforceLicense();
10
- }
11
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: SdBaseSecureComponent, deps: [], target: i0.ɵɵFactoryTarget.Directive });
12
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.25", type: SdBaseSecureComponent, isStandalone: true, ngImport: i0 });
13
- }
14
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: SdBaseSecureComponent, decorators: [{
15
- type: Directive
16
- }], ctorParameters: () => [] });
17
-
18
- /**
19
- * Generated bundle index. Do not edit.
20
- */
21
-
22
- export { SdBaseSecureComponent };
23
- //# sourceMappingURL=sdcorejs-angular-components-base.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"sdcorejs-angular-components-base.mjs","sources":["../../../projects/sdcorejs-angular/components/base/src/base-secure.component.ts","../../../projects/sdcorejs-angular/components/base/sdcorejs-angular-components-base.ts"],"sourcesContent":["// base.component.ts\nimport { Directive, inject } from '@angular/core';\nimport { SdLicenseService } from '@sdcorejs/angular/services/license';\n\n@Directive() // Dùng Directive cho abstract class trong Angular\nexport abstract class SdBaseSecureComponent {\n protected licenseService = inject(SdLicenseService);\n constructor() {\n this.licenseService.enforceLicense();\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;AAAA;MAKsB,qBAAqB,CAAA;AAC/B,IAAA,cAAc,GAAG,MAAM,CAAC,gBAAgB,CAAC;AACnD,IAAA,WAAA,GAAA;AACE,QAAA,IAAI,CAAC,cAAc,CAAC,cAAc,EAAE;IACtC;wGAJoB,qBAAqB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;4FAArB,qBAAqB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA;;4FAArB,qBAAqB,EAAA,UAAA,EAAA,CAAA;kBAD1C;;;ACJD;;AAEG;;;;"}