@sdcorejs/angular 21.0.10 → 21.1.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 (126) hide show
  1. package/README.md +32 -23
  2. package/assets/STYLE-GUIDE.md +58 -72
  3. package/assets/scss/core/_inline-edit.scss +1 -1
  4. package/assets/scss/core/color.scss +56 -45
  5. package/assets/scss/core/form.scss +21 -9
  6. package/assets/scss/core/utilities/_base.scss +3 -3
  7. package/assets/scss/core/utilities/_border.scss +1 -1
  8. package/assets/scss/themes/default.scss +46 -32
  9. package/assets/scss/themes/material-theme.scss +8 -87
  10. package/fesm2022/sdcorejs-angular-components-anchor.mjs +5 -6
  11. package/fesm2022/sdcorejs-angular-components-anchor.mjs.map +1 -1
  12. package/fesm2022/sdcorejs-angular-components-autoid-inspector.mjs +10 -11
  13. package/fesm2022/sdcorejs-angular-components-autoid-inspector.mjs.map +1 -1
  14. package/fesm2022/sdcorejs-angular-components-badge.mjs +14 -12
  15. package/fesm2022/sdcorejs-angular-components-badge.mjs.map +1 -1
  16. package/fesm2022/sdcorejs-angular-components-button.mjs +9 -10
  17. package/fesm2022/sdcorejs-angular-components-button.mjs.map +1 -1
  18. package/fesm2022/sdcorejs-angular-components-code-editor.mjs +4 -5
  19. package/fesm2022/sdcorejs-angular-components-code-editor.mjs.map +1 -1
  20. package/fesm2022/sdcorejs-angular-components-document-builder.mjs +3 -3
  21. package/fesm2022/sdcorejs-angular-components-document-builder.mjs.map +1 -1
  22. package/fesm2022/sdcorejs-angular-components-editor.mjs +4 -5
  23. package/fesm2022/sdcorejs-angular-components-editor.mjs.map +1 -1
  24. package/fesm2022/sdcorejs-angular-components-form-generic.mjs +21 -24
  25. package/fesm2022/sdcorejs-angular-components-form-generic.mjs.map +1 -1
  26. package/fesm2022/sdcorejs-angular-components-history.mjs +2 -2
  27. package/fesm2022/sdcorejs-angular-components-history.mjs.map +1 -1
  28. package/fesm2022/sdcorejs-angular-components-import-excel.mjs +5 -7
  29. package/fesm2022/sdcorejs-angular-components-import-excel.mjs.map +1 -1
  30. package/fesm2022/sdcorejs-angular-components-inform.mjs +4 -14
  31. package/fesm2022/sdcorejs-angular-components-inform.mjs.map +1 -1
  32. package/fesm2022/sdcorejs-angular-components-mini-editor.mjs +2 -2
  33. package/fesm2022/sdcorejs-angular-components-mini-editor.mjs.map +1 -1
  34. package/fesm2022/sdcorejs-angular-components-modal-resizable.mjs +5 -6
  35. package/fesm2022/sdcorejs-angular-components-modal-resizable.mjs.map +1 -1
  36. package/fesm2022/sdcorejs-angular-components-modal.mjs +25 -7
  37. package/fesm2022/sdcorejs-angular-components-modal.mjs.map +1 -1
  38. package/fesm2022/sdcorejs-angular-components-org-chart.mjs +4 -5
  39. package/fesm2022/sdcorejs-angular-components-org-chart.mjs.map +1 -1
  40. package/fesm2022/sdcorejs-angular-components-preview.mjs +7 -8
  41. package/fesm2022/sdcorejs-angular-components-preview.mjs.map +1 -1
  42. package/fesm2022/sdcorejs-angular-components-query-bar.mjs +24 -28
  43. package/fesm2022/sdcorejs-angular-components-query-bar.mjs.map +1 -1
  44. package/fesm2022/sdcorejs-angular-components-query-builder.mjs +3 -4
  45. package/fesm2022/sdcorejs-angular-components-query-builder.mjs.map +1 -1
  46. package/fesm2022/sdcorejs-angular-components-section.mjs +8 -13
  47. package/fesm2022/sdcorejs-angular-components-section.mjs.map +1 -1
  48. package/fesm2022/sdcorejs-angular-components-side-drawer.mjs +3 -4
  49. package/fesm2022/sdcorejs-angular-components-side-drawer.mjs.map +1 -1
  50. package/fesm2022/sdcorejs-angular-components-splitter.mjs +2 -2
  51. package/fesm2022/sdcorejs-angular-components-splitter.mjs.map +1 -1
  52. package/fesm2022/sdcorejs-angular-components-stepper.mjs +3 -4
  53. package/fesm2022/sdcorejs-angular-components-stepper.mjs.map +1 -1
  54. package/fesm2022/sdcorejs-angular-components-tab-router.mjs +5 -6
  55. package/fesm2022/sdcorejs-angular-components-tab-router.mjs.map +1 -1
  56. package/fesm2022/sdcorejs-angular-components-tab.mjs +3 -4
  57. package/fesm2022/sdcorejs-angular-components-tab.mjs.map +1 -1
  58. package/fesm2022/sdcorejs-angular-components-table.mjs +23 -27
  59. package/fesm2022/sdcorejs-angular-components-table.mjs.map +1 -1
  60. package/fesm2022/sdcorejs-angular-components-tree.mjs +6 -8
  61. package/fesm2022/sdcorejs-angular-components-tree.mjs.map +1 -1
  62. package/fesm2022/sdcorejs-angular-components-upload-file.mjs +8 -9
  63. package/fesm2022/sdcorejs-angular-components-upload-file.mjs.map +1 -1
  64. package/fesm2022/sdcorejs-angular-components-view.mjs +2 -2
  65. package/fesm2022/sdcorejs-angular-components-view.mjs.map +1 -1
  66. package/fesm2022/sdcorejs-angular-directives.mjs +1 -1
  67. package/fesm2022/sdcorejs-angular-directives.mjs.map +1 -1
  68. package/fesm2022/sdcorejs-angular-forms-autocomplete.mjs +5 -7
  69. package/fesm2022/sdcorejs-angular-forms-autocomplete.mjs.map +1 -1
  70. package/fesm2022/sdcorejs-angular-forms-checkbox.mjs +2 -2
  71. package/fesm2022/sdcorejs-angular-forms-checkbox.mjs.map +1 -1
  72. package/fesm2022/sdcorejs-angular-forms-chip-calendar.mjs +7 -9
  73. package/fesm2022/sdcorejs-angular-forms-chip-calendar.mjs.map +1 -1
  74. package/fesm2022/sdcorejs-angular-forms-chip.mjs +5 -7
  75. package/fesm2022/sdcorejs-angular-forms-chip.mjs.map +1 -1
  76. package/fesm2022/sdcorejs-angular-forms-date-range.mjs +7 -9
  77. package/fesm2022/sdcorejs-angular-forms-date-range.mjs.map +1 -1
  78. package/fesm2022/sdcorejs-angular-forms-date.mjs +7 -9
  79. package/fesm2022/sdcorejs-angular-forms-date.mjs.map +1 -1
  80. package/fesm2022/sdcorejs-angular-forms-datetime.mjs +466 -344
  81. package/fesm2022/sdcorejs-angular-forms-datetime.mjs.map +1 -1
  82. package/fesm2022/sdcorejs-angular-forms-inline-text.mjs +4 -5
  83. package/fesm2022/sdcorejs-angular-forms-inline-text.mjs.map +1 -1
  84. package/fesm2022/sdcorejs-angular-forms-input-number.mjs +5 -7
  85. package/fesm2022/sdcorejs-angular-forms-input-number.mjs.map +1 -1
  86. package/fesm2022/sdcorejs-angular-forms-input.mjs +5 -7
  87. package/fesm2022/sdcorejs-angular-forms-input.mjs.map +1 -1
  88. package/fesm2022/sdcorejs-angular-forms-label.mjs +4 -5
  89. package/fesm2022/sdcorejs-angular-forms-label.mjs.map +1 -1
  90. package/fesm2022/sdcorejs-angular-forms-radio.mjs +2 -4
  91. package/fesm2022/sdcorejs-angular-forms-radio.mjs.map +1 -1
  92. package/fesm2022/sdcorejs-angular-forms-select.mjs +6 -8
  93. package/fesm2022/sdcorejs-angular-forms-select.mjs.map +1 -1
  94. package/fesm2022/sdcorejs-angular-forms-switch.mjs +2 -2
  95. package/fesm2022/sdcorejs-angular-forms-switch.mjs.map +1 -1
  96. package/fesm2022/sdcorejs-angular-forms-textarea.mjs +5 -7
  97. package/fesm2022/sdcorejs-angular-forms-textarea.mjs.map +1 -1
  98. package/fesm2022/sdcorejs-angular-modules-icon.mjs +505 -0
  99. package/fesm2022/sdcorejs-angular-modules-icon.mjs.map +1 -0
  100. package/fesm2022/sdcorejs-angular-modules-layout.mjs +29 -29
  101. package/fesm2022/sdcorejs-angular-modules-layout.mjs.map +1 -1
  102. package/fesm2022/sdcorejs-angular-modules.mjs +1 -0
  103. package/fesm2022/sdcorejs-angular-modules.mjs.map +1 -1
  104. package/fesm2022/sdcorejs-angular-services-confirm.mjs +85 -5
  105. package/fesm2022/sdcorejs-angular-services-confirm.mjs.map +1 -1
  106. package/fesm2022/sdcorejs-angular-services-excel.mjs +22 -14
  107. package/fesm2022/sdcorejs-angular-services-excel.mjs.map +1 -1
  108. package/fesm2022/sdcorejs-angular-services-loading.mjs +1 -1
  109. package/fesm2022/sdcorejs-angular-services-loading.mjs.map +1 -1
  110. package/fesm2022/sdcorejs-angular-utilities-models.mjs +3 -2
  111. package/fesm2022/sdcorejs-angular-utilities-models.mjs.map +1 -1
  112. package/package.json +6 -1
  113. package/types/sdcorejs-angular-components-badge.d.ts +5 -16
  114. package/types/sdcorejs-angular-components-button.d.ts +7 -5
  115. package/types/sdcorejs-angular-components-inform.d.ts +2 -8
  116. package/types/sdcorejs-angular-components-modal.d.ts +1 -1
  117. package/types/sdcorejs-angular-components-query-builder.d.ts +6 -6
  118. package/types/sdcorejs-angular-components-section.d.ts +1 -5
  119. package/types/sdcorejs-angular-components-side-drawer.d.ts +1 -1
  120. package/types/sdcorejs-angular-components-table.d.ts +9 -10
  121. package/types/sdcorejs-angular-components-tree.d.ts +3 -2
  122. package/types/sdcorejs-angular-forms-datetime.d.ts +4 -4
  123. package/types/sdcorejs-angular-modules-icon.d.ts +191 -0
  124. package/types/sdcorejs-angular-modules.d.ts +1 -0
  125. package/types/sdcorejs-angular-services-confirm.d.ts +49 -1
  126. package/types/sdcorejs-angular-utilities-models.d.ts +6 -4
@@ -10,13 +10,12 @@ declare class SdDatetime implements OnDestroy, OnInit {
10
10
  #private;
11
11
  id: string;
12
12
  inputRef: _angular_core.Signal<ElementRef<HTMLInputElement> | undefined>;
13
+ private readonly dateTimePicker;
13
14
  sdLabelTemplate: _angular_core.Signal<TemplateRef<any> | undefined>;
14
15
  sdValueTemplate: _angular_core.Signal<TemplateRef<any> | undefined>;
15
16
  sdViewDef: _angular_core.Signal<SdViewDefDirective<any, any> | undefined>;
16
17
  private ref;
17
- private overlay;
18
18
  private elementRef;
19
- private injector;
20
19
  private formConfig;
21
20
  autoIdInput: _angular_core.InputSignal<string | null | undefined>;
22
21
  autoId: _angular_core.Signal<string | undefined>;
@@ -72,8 +71,8 @@ declare class SdDatetime implements OnDestroy, OnInit {
72
71
  formControl: SdFormControl;
73
72
  isFocused: boolean;
74
73
  isValid?: boolean;
75
- /** State popup — true khi đang mở. */
76
- pickerOpened: _angular_core.WritableSignal<boolean>;
74
+ /** State popup — true khi picker package đang mở. */
75
+ pickerOpened: _angular_core.Signal<boolean>;
77
76
  constructor();
78
77
  ngOnInit(): void;
79
78
  ngOnDestroy(): void;
@@ -81,6 +80,7 @@ declare class SdDatetime implements OnDestroy, OnInit {
81
80
  open(): void;
82
81
  /** Đóng popup (public — gọi từ template nếu cần). */
83
82
  close(): void;
83
+ onPickerConfirm(value: Date): void;
84
84
  onFocus: () => void;
85
85
  onBlur: () => void;
86
86
  onClick: () => void;
@@ -0,0 +1,191 @@
1
+ import * as _angular_core from '@angular/core';
2
+ import { InjectionToken, EnvironmentProviders } from '@angular/core';
3
+ import { Size } from '@sdcorejs/utils/models';
4
+ import { SdIconSet, SdMaterialIconSet } from '@sdcorejs/angular/utilities/models';
5
+ export { SdIconSet, SdMaterialIconSet } from '@sdcorejs/angular/utilities/models';
6
+ import { LucideConfig, LucideIcon, LucideIconData } from '@lucide/angular';
7
+
8
+ /** @deprecated Use `SdIconSet` instead. */
9
+ type SdIconFontSet = SdIconSet;
10
+ /**
11
+ * Một icon Lucide có thể đăng ký bằng class icon Angular hoặc dữ liệu path thuần.
12
+ */
13
+ type SdLucideIconRegistration = LucideIcon | LucideIconData;
14
+ /**
15
+ * Danh sách đăng ký Lucide cho provider, hỗ trợ cả array và object map để app có thể giữ cấu trúc import riêng.
16
+ */
17
+ type SdLucideIconRegistrations = SdLucideIconRegistration[] | Record<string, SdLucideIconRegistration>;
18
+ /**
19
+ * Cấu hình app-level cho `SdIcon`.
20
+ *
21
+ * Các alias tách riêng theo renderer để app có thể giữ tên Material trong template trong lúc chuyển dần sang Lucide.
22
+ */
23
+ interface ISdIconConfiguration {
24
+ /** Default icon font set when component does not pass `fontSet`. */
25
+ defaultFontSet?: SdIconSet;
26
+ /** Alias áp dụng khi renderer hiện tại là Material. */
27
+ materialAliases?: Record<string, string>;
28
+ /** Alias áp dụng khi renderer hiện tại là Lucide. */
29
+ lucideAliases?: Record<string, string>;
30
+ /** Cấu hình stroke toàn cục cho Lucide SVG. */
31
+ lucideConfig?: Partial<LucideConfig>;
32
+ /** Icon Lucide cần đăng ký vào `@lucide/angular`. */
33
+ lucideIcons?: SdLucideIconRegistrations;
34
+ }
35
+ /**
36
+ * Cấu hình đã resolve đầy đủ để component không phải tự xử lý fallback nhiều lần.
37
+ */
38
+ interface ISdIconResolvedConfiguration extends Required<Omit<ISdIconConfiguration, 'lucideIcons'>> {
39
+ }
40
+ /**
41
+ * Quy đổi token `Size` chung của SDCoreJS sang pixel cho icon.
42
+ */
43
+ declare const SD_ICON_SIZE_MAP: Record<Size, number>;
44
+ /**
45
+ * Alias mặc định giúp template giữ tên Material trong khi renderer có thể là Lucide.
46
+ */
47
+ declare const SD_DEFAULT_LUCIDE_ALIASES: Record<string, string>;
48
+ /**
49
+ * Alias mac dinh giup template dung ten Lucide van render duoc khi quay ve Material font.
50
+ */
51
+ declare const SD_DEFAULT_MATERIAL_ALIASES: Record<string, string>;
52
+ /**
53
+ * Cấu hình mặc định của Core UI icon.
54
+ *
55
+ * `material-icons-outlined` được giữ làm mặc định để không đổi visual của các component Material hiện có.
56
+ */
57
+ declare const SD_ICON_DEFAULT_CONFIG: ISdIconResolvedConfiguration;
58
+
59
+ /**
60
+ * Facade icon dùng chung cho Core UI.
61
+ *
62
+ * Component này giữ template app theo tên icon ổn định, còn renderer có thể đổi giữa Material font và Lucide SVG qua provider hoặc input.
63
+ */
64
+ declare class SdIcon {
65
+ private readonly config;
66
+ /**
67
+ * Tên icon theo namespace hiện tại.
68
+ *
69
+ * Khi `set` là `lucide`, tên này sẽ đi qua alias để app có thể tiếp tục dùng tên Material trong template.
70
+ */
71
+ name: _angular_core.InputSignalWithTransform<string | undefined, string | null | undefined>;
72
+ fontIcon: _angular_core.InputSignalWithTransform<string | undefined, string | null | undefined>;
73
+ color: _angular_core.InputSignalWithTransform<string | undefined, string | null | undefined>;
74
+ /**
75
+ * Renderer icon của riêng instance này.
76
+ *
77
+ * Deprecated alias for `fontSet`.
78
+ */
79
+ set: _angular_core.InputSignalWithTransform<SdIconSet | undefined, SdIconSet | null | undefined>;
80
+ /**
81
+ * Escape hatch cho Material icon font set.
82
+ *
83
+ * Prefer this input for both Material font families and Lucide SVG icons.
84
+ */
85
+ fontSet: _angular_core.InputSignalWithTransform<SdIconSet | undefined, SdIconSet | null | undefined>;
86
+ /**
87
+ * Kích thước icon theo token SDCoreJS hoặc CSS size tùy biến.
88
+ *
89
+ * Token `sm | md | lg` giữ icon đồng bộ với các component Core UI; CSS string xử lý các ngoại lệ layout.
90
+ */
91
+ size: _angular_core.InputSignalWithTransform<Size | (string & {}), Size | (string & {}) | null | undefined>;
92
+ /**
93
+ * Độ dày stroke riêng cho Lucide SVG.
94
+ *
95
+ * Bỏ trống để nhận giá trị từ `lucideConfig` app-level.
96
+ */
97
+ strokeWidth: _angular_core.InputSignalWithTransform<string | number | undefined, string | number | null | undefined>;
98
+ /**
99
+ * Giữ stroke width tuyệt đối cho Lucide khi SVG đổi kích thước.
100
+ *
101
+ * Input này đi qua `booleanAttribute` để hỗ trợ cả attribute trần trong template.
102
+ */
103
+ absoluteStrokeWidth: _angular_core.InputSignalWithTransform<boolean | undefined, string | boolean | null | undefined>;
104
+ /**
105
+ * Nhãn truy cập cho icon có ý nghĩa.
106
+ *
107
+ * Khi không có nhãn, component tự đánh dấu decorative bằng `aria-hidden`.
108
+ */
109
+ ariaLabel: _angular_core.InputSignalWithTransform<string | undefined, string | null | undefined>;
110
+ /**
111
+ * Set icon cuối cùng sau khi áp dụng input và provider.
112
+ *
113
+ * @returns renderer hiện tại của component.
114
+ */
115
+ resolvedFontSet: _angular_core.Signal<SdIconSet>;
116
+ /** @deprecated Use `resolvedFontSet` instead. */
117
+ resolvedSet: _angular_core.Signal<SdIconSet>;
118
+ /**
119
+ * Tên icon cuối cùng theo renderer hiện tại.
120
+ *
121
+ * @returns tên icon đã áp alias nếu renderer yêu cầu.
122
+ */
123
+ resolvedName: _angular_core.Signal<string | undefined>;
124
+ /**
125
+ * Font set Material cuối cùng.
126
+ *
127
+ * @returns font set dùng cho `mat-icon`; với Lucide trả về fallback Material để computed luôn có type ổn định.
128
+ */
129
+ resolvedMaterialFontSet: _angular_core.Signal<SdMaterialIconSet>;
130
+ /**
131
+ * Kích thước runtime cho renderer hiện tại.
132
+ *
133
+ * @returns số pixel cho token chuẩn hoặc CSS string nguyên bản cho custom size.
134
+ */
135
+ resolvedSize: _angular_core.Signal<string | number>;
136
+ /**
137
+ * Kích thước CSS cuối cùng cho host element.
138
+ *
139
+ * @returns CSS length dùng cho custom property `--sd-icon-size`.
140
+ */
141
+ resolvedCssSize: _angular_core.Signal<string>;
142
+ /**
143
+ * Stroke width cuối cùng cho Lucide SVG.
144
+ *
145
+ * @returns giá trị input instance hoặc fallback từ provider.
146
+ */
147
+ resolvedStrokeWidth: _angular_core.Signal<string | number | undefined>;
148
+ /**
149
+ * Absolute stroke width cuối cùng cho Lucide SVG.
150
+ *
151
+ * @returns giá trị input instance hoặc fallback từ provider.
152
+ */
153
+ resolvedAbsoluteStrokeWidth: _angular_core.Signal<boolean | undefined>;
154
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SdIcon, never>;
155
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SdIcon, "sd-icon", never, { "name": { "alias": "name"; "required": false; "isSignal": true; }; "fontIcon": { "alias": "fontIcon"; "required": false; "isSignal": true; }; "color": { "alias": "color"; "required": false; "isSignal": true; }; "set": { "alias": "set"; "required": false; "isSignal": true; }; "fontSet": { "alias": "fontSet"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "strokeWidth": { "alias": "strokeWidth"; "required": false; "isSignal": true; }; "absoluteStrokeWidth": { "alias": "absoluteStrokeWidth"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
156
+ }
157
+
158
+ /**
159
+ * Injection token chứa cấu hình icon đã resolve cho toàn bộ app.
160
+ *
161
+ * Token có factory mặc định để `SdIcon` vẫn chạy khi app chưa gọi `provideSdIcon`.
162
+ */
163
+ declare const SD_ICON_CONFIGURATION: InjectionToken<ISdIconResolvedConfiguration>;
164
+ /**
165
+ * Đăng ký cấu hình icon Core UI ở app-level.
166
+ *
167
+ * Provider này gom cả cấu hình `SdIcon` và registry của `@lucide/angular` để consumer chỉ cần gọi một hàm.
168
+ *
169
+ * @param config - cấu hình app-level cho Material/Lucide icon.
170
+ * @returns environment providers dùng được trong `ApplicationConfig.providers`.
171
+ */
172
+ declare function provideSdIcon(config?: ISdIconConfiguration): EnvironmentProviders;
173
+ /**
174
+ * Resolve cấu hình `SdIcon` thành object đầy đủ, không còn field optional.
175
+ *
176
+ * Alias mặc định đứng trước để app có thể override từng key mà không phải copy toàn bộ bảng alias.
177
+ *
178
+ * @param config - cấu hình rời rạc từ consumer hoặc mặc định rỗng.
179
+ * @returns cấu hình đầy đủ dùng trực tiếp trong component.
180
+ */
181
+ declare function resolveSdIconConfig(config?: ISdIconConfiguration): ISdIconResolvedConfiguration;
182
+ /**
183
+ * Chuẩn hóa nhiều kiểu khai báo Lucide icon về array cho `provideLucideIcons`.
184
+ *
185
+ * @param registrations - array hoặc object map icon Lucide từ consumer.
186
+ * @returns danh sách icon Lucide đã sẵn sàng để spread vào provider của Lucide.
187
+ */
188
+ declare function normalizeSdLucideIcons(registrations?: SdLucideIconRegistrations): SdLucideIconRegistration[];
189
+
190
+ export { SD_DEFAULT_LUCIDE_ALIASES, SD_DEFAULT_MATERIAL_ALIASES, SD_ICON_CONFIGURATION, SD_ICON_DEFAULT_CONFIG, SD_ICON_SIZE_MAP, SdIcon, normalizeSdLucideIcons, provideSdIcon, resolveSdIconConfig };
191
+ export type { ISdIconConfiguration, ISdIconResolvedConfiguration, SdIconFontSet, SdLucideIconRegistration, SdLucideIconRegistrations };
@@ -3,3 +3,4 @@ export * from '@sdcorejs/angular/modules/permission';
3
3
  export * from '@sdcorejs/angular/modules/auth';
4
4
  export * from '@sdcorejs/angular/modules/layout';
5
5
  export * from '@sdcorejs/angular/modules/authom';
6
+ export * from '@sdcorejs/angular/modules/icon';
@@ -24,6 +24,14 @@ interface DialogData {
24
24
  min?: string | Date;
25
25
  max?: string | Date;
26
26
  };
27
+ datetime?: {
28
+ required?: boolean;
29
+ placeholder?: string;
30
+ defaultValue?: string | Date;
31
+ min?: string | Date;
32
+ max?: string | Date;
33
+ showSeconds?: boolean;
34
+ };
27
35
  radio?: {
28
36
  required?: boolean;
29
37
  defaultValue?: string | number;
@@ -32,6 +40,15 @@ interface DialogData {
32
40
  displayField: string;
33
41
  display?: 'row' | 'column';
34
42
  };
43
+ select?: {
44
+ required?: boolean;
45
+ defaultValue?: string | number | (string | number)[];
46
+ items: any[];
47
+ valueField: string;
48
+ displayField: string;
49
+ placeholder?: string;
50
+ multiple?: boolean;
51
+ };
35
52
  }
36
53
  declare class DialogConfirmComponent {
37
54
  value: any;
@@ -84,6 +101,21 @@ declare class SdConfirmService {
84
101
  display?: "row" | "column";
85
102
  disableBackdropClose?: boolean;
86
103
  }) => Promise<string>;
104
+ withSelect: (message?: string, option?: {
105
+ title?: string;
106
+ yesTitle?: string;
107
+ noTitle?: string;
108
+ required?: boolean;
109
+ yesButtonColor?: Color;
110
+ noButtonColor?: Color;
111
+ defaultValue?: string | number | (string | number)[];
112
+ items: any[];
113
+ valueField: string;
114
+ displayField: string;
115
+ placeholder?: string;
116
+ multiple?: boolean;
117
+ disableBackdropClose?: boolean;
118
+ }) => Promise<string | number | (string | number)[]>;
87
119
  withDate: (message?: string, option?: {
88
120
  title?: string;
89
121
  yesTitle?: string;
@@ -93,8 +125,24 @@ declare class SdConfirmService {
93
125
  noButtonColor?: Color;
94
126
  defaultValue?: string | Date;
95
127
  placeholder?: string;
128
+ min?: string | Date;
129
+ max?: string | Date;
96
130
  disableBackdropClose?: boolean;
97
- }) => Promise<string>;
131
+ }) => Promise<string | Date>;
132
+ withDatetime: (message?: string, option?: {
133
+ title?: string;
134
+ yesTitle?: string;
135
+ noTitle?: string;
136
+ required?: boolean;
137
+ yesButtonColor?: Color;
138
+ noButtonColor?: Color;
139
+ defaultValue?: string | Date;
140
+ placeholder?: string;
141
+ min?: string | Date;
142
+ max?: string | Date;
143
+ showSeconds?: boolean;
144
+ disableBackdropClose?: boolean;
145
+ }) => Promise<string | Date>;
98
146
  static ɵfac: i0.ɵɵFactoryDeclaration<SdConfirmService, never>;
99
147
  static ɵprov: i0.ɵɵInjectableDeclaration<SdConfirmService>;
100
148
  }
@@ -10,8 +10,10 @@ type SdColor = Color;
10
10
  /** @deprecated Use {@link Size} from `@sdcorejs/utils/models` instead */
11
11
  type SdSize = Size;
12
12
 
13
- type MaterialIconFontSet = 'material-icons' | 'material-icons-outlined' | 'material-icons-round' | 'material-icons-sharp';
14
- declare const DefaultMaterialIconFontSet: MaterialIconFontSet;
13
+ type SdIconSet = 'material-icons' | 'material-icons-outlined' | 'material-icons-round' | 'material-icons-sharp' | 'lucide';
14
+ type SdMaterialIconSet = Exclude<SdIconSet, 'lucide'>;
15
+ declare const DefaultSdIconSet: SdIconSet;
16
+ declare const DefaultSdMaterialIconSet: SdMaterialIconSet;
15
17
 
16
18
  /**
17
19
  * @deprecated Use {@link ValidationPatternType} from `@sdcorejs/utils/models` instead.
@@ -83,5 +85,5 @@ type SdPagingReq<T = any> = PagingReq<T>;
83
85
  /** @deprecated Use {@link PagingRes} from `@sdcorejs/utils/models` instead */
84
86
  type SdPagingRes<T = any> = PagingRes<T>;
85
87
 
86
- export { DefaultMaterialIconFontSet, SD_EMPTY_STR, SdNormalizeAsync, SdOperators, SdPatternCommons, SdResolveMaybeAsync };
87
- export type { MaterialIconFontSet, SdColor, SdFilter, SdFilterAndOr, SdFilterBetween, SdFilterHasData, SdFilterNoData, SdMaybeAsync, SdNestedKeyOf, SdOperator, SdOperatorHasData, SdOperatorNoData, SdOrder, SdPagingReq, SdPagingRes, SdPatternCommon, SdPatternType, SdQueryReq, SdSize, SdUnwrapSafe, SdUnwrapSignal };
88
+ export { DefaultSdIconSet, DefaultSdMaterialIconSet, SD_EMPTY_STR, SdNormalizeAsync, SdOperators, SdPatternCommons, SdResolveMaybeAsync };
89
+ export type { SdColor, SdFilter, SdFilterAndOr, SdFilterBetween, SdFilterHasData, SdFilterNoData, SdIconSet, SdMaterialIconSet, SdMaybeAsync, SdNestedKeyOf, SdOperator, SdOperatorHasData, SdOperatorNoData, SdOrder, SdPagingReq, SdPagingRes, SdPatternCommon, SdPatternType, SdQueryReq, SdSize, SdUnwrapSafe, SdUnwrapSignal };