@sd-angular/core 19.0.0-beta.97 → 19.0.0-beta.99

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 (178) hide show
  1. package/README.md +722 -716
  2. package/components/anchor/src/components/anchor/anchor.component.d.ts +5 -5
  3. package/components/anchor/src/components/anchor-nav/anchor-nav.component.d.ts +21 -0
  4. package/components/autoid-inspector/index.d.ts +8 -0
  5. package/components/autoid-inspector/src/autoid-inspector.component.d.ts +37 -0
  6. package/components/autoid-inspector/src/models/autoid-element.model.d.ts +22 -0
  7. package/components/autoid-inspector/src/models/autoid-export-format.model.d.ts +6 -0
  8. package/components/autoid-inspector/src/models/autoid-inspector-config.model.d.ts +8 -0
  9. package/components/autoid-inspector/src/services/autoid-audit.service.d.ts +19 -0
  10. package/components/autoid-inspector/src/services/autoid-export.service.d.ts +19 -0
  11. package/components/autoid-inspector/src/services/autoid-highlight.service.d.ts +12 -0
  12. package/components/autoid-inspector/src/services/autoid-scanner.service.d.ts +13 -0
  13. package/components/editor/src/editor.component.d.ts +2 -0
  14. package/components/index.d.ts +1 -0
  15. package/components/modal/src/modal.component.d.ts +1 -0
  16. package/components/side-drawer/src/side-drawer.component.d.ts +7 -3
  17. package/components/table/index.d.ts.map +1 -0
  18. package/components/table/sd-angular-core-components-table.d.ts.map +1 -0
  19. package/components/table/src/components/column-title/column-title.component.d.ts.map +1 -0
  20. package/components/table/src/components/command/desktop-command.component.d.ts +14 -0
  21. package/components/table/src/components/command/desktop-command.component.d.ts.map +1 -0
  22. package/components/table/src/components/command/pipes/command.pipe.d.ts +30 -0
  23. package/components/table/src/components/command/pipes/command.pipe.d.ts.map +1 -0
  24. package/components/table/src/components/command/pipes/filter.pipe.d.ts +35 -0
  25. package/components/table/src/components/command/pipes/filter.pipe.d.ts.map +1 -0
  26. package/components/table/src/components/config/config.component.d.ts +7 -14
  27. package/components/table/src/components/config/config.component.d.ts.map +1 -0
  28. package/components/table/src/components/desktop-cell/desktop-cell.component.d.ts +2 -2
  29. package/components/table/src/components/desktop-cell/desktop-cell.component.d.ts.map +1 -0
  30. package/components/table/src/components/desktop-cell/view/view.component.d.ts.map +1 -0
  31. package/components/table/src/components/filter/column-filter/column-filter.component.d.ts +36 -0
  32. package/components/table/src/components/filter/column-filter/column-filter.component.d.ts.map +1 -0
  33. package/components/table/src/components/filter/external-filter/external-filter.component.d.ts +27 -0
  34. package/components/table/src/components/filter/external-filter/external-filter.component.d.ts.map +1 -0
  35. package/components/table/src/components/filter/index.d.ts +3 -0
  36. package/components/table/src/components/filter/index.d.ts.map +1 -0
  37. package/components/table/src/components/filter/mobile-filter/mobile-filter.component.d.ts +42 -0
  38. package/components/table/src/components/filter/mobile-filter/mobile-filter.component.d.ts.map +1 -0
  39. package/components/table/src/components/index.d.ts +1 -2
  40. package/components/table/src/components/index.d.ts.map +1 -0
  41. package/components/table/src/components/popup-export/popup-export.component.d.ts.map +1 -0
  42. package/components/table/src/components/selector-action/action-filter.pipe.d.ts.map +1 -0
  43. package/components/table/src/components/selector-action/selector-action.component.d.ts +2 -4
  44. package/components/table/src/components/selector-action/selector-action.component.d.ts.map +1 -0
  45. package/components/table/src/configurations/index.d.ts.map +1 -0
  46. package/components/table/src/configurations/table.configuration.d.ts.map +1 -0
  47. package/components/table/src/directives/index.d.ts.map +1 -0
  48. package/components/table/src/directives/sd-column-resize.directive.d.ts.map +1 -0
  49. package/components/table/src/directives/sd-table-cell-def.directive.d.ts +4 -4
  50. package/components/table/src/directives/sd-table-cell-def.directive.d.ts.map +1 -0
  51. package/components/table/src/directives/sd-table-column-filter-def.directive.d.ts +2 -2
  52. package/components/table/src/directives/sd-table-column-filter-def.directive.d.ts.map +1 -0
  53. package/components/table/src/directives/sd-table-expand-def.directive.d.ts +3 -3
  54. package/components/table/src/directives/sd-table-expand-def.directive.d.ts.map +1 -0
  55. package/components/table/src/directives/sd-table-filter-def.directive.d.ts +2 -2
  56. package/components/table/src/directives/sd-table-filter-def.directive.d.ts.map +1 -0
  57. package/components/table/src/directives/sd-table-footer-def.directive.d.ts +2 -2
  58. package/components/table/src/directives/sd-table-footer-def.directive.d.ts.map +1 -0
  59. package/components/table/src/directives/sd-table-title-def.directive.d.ts +2 -2
  60. package/components/table/src/directives/sd-table-title-def.directive.d.ts.map +1 -0
  61. package/components/table/src/directives/sticky-shadow.directive.d.ts.map +1 -0
  62. package/components/table/src/models/index.d.ts.map +1 -0
  63. package/components/table/src/models/table-column.model.d.ts.map +1 -0
  64. package/components/table/src/models/table-command.model.d.ts.map +1 -0
  65. package/components/table/src/models/table-item.model.d.ts.map +1 -0
  66. package/components/table/src/models/table-option-config.model.d.ts.map +1 -0
  67. package/components/table/src/models/table-option-expand.model.d.ts.map +1 -0
  68. package/components/table/src/models/table-option-export.model.d.ts.map +1 -0
  69. package/components/table/src/models/table-option-group.model.d.ts.map +1 -0
  70. package/components/table/src/models/table-option-paginate.model.d.ts.map +1 -0
  71. package/components/table/src/models/table-option-reload.model.d.ts.map +1 -0
  72. package/components/table/src/models/table-option-selector.model.d.ts.map +1 -0
  73. package/components/table/src/models/table-option-sort.model.d.ts.map +1 -0
  74. package/components/table/src/models/table-option-style.model.d.ts.map +1 -0
  75. package/components/table/src/models/table-option-tree.model.d.ts.map +1 -0
  76. package/components/table/src/models/table-option.model.d.ts +13 -0
  77. package/components/table/src/models/table-option.model.d.ts.map +1 -0
  78. package/components/table/src/pipes/filter-values.pipe.d.ts.map +1 -0
  79. package/components/table/src/pipes/index.d.ts.map +1 -0
  80. package/components/table/src/pipes/sd-group.pipe.d.ts.map +1 -0
  81. package/components/table/src/pipes/sd-tree.pipe.d.ts.map +1 -0
  82. package/components/table/src/pipes/selection-disabled.pipe.d.ts.map +1 -0
  83. package/components/table/src/pipes/selection-visible-select-all.pipe.d.ts.map +1 -0
  84. package/components/table/src/pipes/selection-visible.pipe.d.ts.map +1 -0
  85. package/components/table/src/services/column-width.util.d.ts.map +1 -0
  86. package/components/table/src/services/config.service.d.ts.map +1 -0
  87. package/components/table/src/services/index.d.ts.map +1 -0
  88. package/components/table/src/services/table-export/table-export.service.d.ts.map +1 -0
  89. package/components/table/src/services/table-filter/table-filter.model.d.ts.map +1 -0
  90. package/components/table/src/services/table-filter/table-filter.service.d.ts.map +1 -0
  91. package/components/table/src/services/table-format/table-format.service.d.ts.map +1 -0
  92. package/components/table/src/services/tree/tree.util.d.ts.map +1 -0
  93. package/components/table/src/table.component.d.ts +10 -7
  94. package/components/table/src/table.component.d.ts.map +1 -0
  95. package/components/upload-file/src/upload-file.component.d.ts +3 -0
  96. package/fesm2022/sd-angular-core-components-anchor.mjs +23 -16
  97. package/fesm2022/sd-angular-core-components-anchor.mjs.map +1 -1
  98. package/fesm2022/sd-angular-core-components-autoid-inspector.mjs +585 -0
  99. package/fesm2022/sd-angular-core-components-autoid-inspector.mjs.map +1 -0
  100. package/fesm2022/sd-angular-core-components-button.mjs +2 -2
  101. package/fesm2022/sd-angular-core-components-button.mjs.map +1 -1
  102. package/fesm2022/sd-angular-core-components-editor.mjs +5 -2
  103. package/fesm2022/sd-angular-core-components-editor.mjs.map +1 -1
  104. package/fesm2022/sd-angular-core-components-form-generic.mjs +3 -3
  105. package/fesm2022/sd-angular-core-components-form-generic.mjs.map +1 -1
  106. package/fesm2022/sd-angular-core-components-modal.mjs +3 -2
  107. package/fesm2022/sd-angular-core-components-modal.mjs.map +1 -1
  108. package/fesm2022/sd-angular-core-components-side-drawer.mjs +17 -11
  109. package/fesm2022/sd-angular-core-components-side-drawer.mjs.map +1 -1
  110. package/fesm2022/sd-angular-core-components-table.mjs +631 -572
  111. package/fesm2022/sd-angular-core-components-table.mjs.map +1 -1
  112. package/fesm2022/sd-angular-core-components-upload-file.mjs +7 -2
  113. package/fesm2022/sd-angular-core-components-upload-file.mjs.map +1 -1
  114. package/fesm2022/sd-angular-core-components.mjs +1 -0
  115. package/fesm2022/sd-angular-core-components.mjs.map +1 -1
  116. package/fesm2022/sd-angular-core-forms-autocomplete.mjs +11 -3
  117. package/fesm2022/sd-angular-core-forms-autocomplete.mjs.map +1 -1
  118. package/fesm2022/sd-angular-core-forms-checkbox.mjs +8 -2
  119. package/fesm2022/sd-angular-core-forms-checkbox.mjs.map +1 -1
  120. package/fesm2022/sd-angular-core-forms-chip-calendar.mjs +12 -3
  121. package/fesm2022/sd-angular-core-forms-chip-calendar.mjs.map +1 -1
  122. package/fesm2022/sd-angular-core-forms-chip.mjs +12 -3
  123. package/fesm2022/sd-angular-core-forms-chip.mjs.map +1 -1
  124. package/fesm2022/sd-angular-core-forms-date-range.mjs +13 -3
  125. package/fesm2022/sd-angular-core-forms-date-range.mjs.map +1 -1
  126. package/fesm2022/sd-angular-core-forms-date.mjs +9 -3
  127. package/fesm2022/sd-angular-core-forms-date.mjs.map +1 -1
  128. package/fesm2022/sd-angular-core-forms-datetime.mjs +9 -3
  129. package/fesm2022/sd-angular-core-forms-datetime.mjs.map +1 -1
  130. package/fesm2022/sd-angular-core-forms-input-number.mjs +9 -3
  131. package/fesm2022/sd-angular-core-forms-input-number.mjs.map +1 -1
  132. package/fesm2022/sd-angular-core-forms-input.mjs +13 -3
  133. package/fesm2022/sd-angular-core-forms-input.mjs.map +1 -1
  134. package/fesm2022/sd-angular-core-forms-models.mjs +65 -2
  135. package/fesm2022/sd-angular-core-forms-models.mjs.map +1 -1
  136. package/fesm2022/sd-angular-core-forms-radio.mjs +8 -3
  137. package/fesm2022/sd-angular-core-forms-radio.mjs.map +1 -1
  138. package/fesm2022/sd-angular-core-forms-select.mjs +11 -3
  139. package/fesm2022/sd-angular-core-forms-select.mjs.map +1 -1
  140. package/fesm2022/sd-angular-core-forms-switch.mjs +8 -3
  141. package/fesm2022/sd-angular-core-forms-switch.mjs.map +1 -1
  142. package/fesm2022/sd-angular-core-forms-textarea.mjs +9 -3
  143. package/fesm2022/sd-angular-core-forms-textarea.mjs.map +1 -1
  144. package/fesm2022/sd-angular-core-i18n.mjs +205 -20
  145. package/fesm2022/sd-angular-core-i18n.mjs.map +1 -1
  146. package/fesm2022/sd-angular-core-utilities-data-state.mjs +38 -0
  147. package/fesm2022/sd-angular-core-utilities-data-state.mjs.map +1 -0
  148. package/fesm2022/sd-angular-core-utilities.mjs +1 -0
  149. package/fesm2022/sd-angular-core-utilities.mjs.map +1 -1
  150. package/forms/autocomplete/src/autocomplete.component.d.ts +5 -0
  151. package/forms/checkbox/src/checkbox.component.d.ts +3 -0
  152. package/forms/chip/src/chip.component.d.ts +4 -0
  153. package/forms/chip-calendar/src/chip-calendar.component.d.ts +4 -0
  154. package/forms/date/src/date.component.d.ts +4 -0
  155. package/forms/date-range/src/date-range.component.d.ts +4 -0
  156. package/forms/datetime/src/datetime.component.d.ts +4 -0
  157. package/forms/input/src/input.component.d.ts +4 -0
  158. package/forms/input-number/src/input-number.component.d.ts +6 -2
  159. package/forms/models/index.d.ts +1 -0
  160. package/forms/models/src/form-control-state.d.ts +23 -0
  161. package/forms/radio/src/radio.component.d.ts +3 -0
  162. package/forms/select/src/select.component.d.ts +5 -0
  163. package/forms/switch/src/switch.component.d.ts +3 -0
  164. package/forms/textarea/src/textarea.component.d.ts +4 -0
  165. package/i18n/src/en.d.ts +39 -3
  166. package/package.json +49 -41
  167. package/sd-angular-core-19.0.0-beta.99.tgz +0 -0
  168. package/utilities/data-state/index.d.ts +1 -0
  169. package/utilities/data-state/src/data-state.d.ts +11 -0
  170. package/utilities/index.d.ts +1 -0
  171. package/components/anchor/src/components/anchor-vertical/anchor-vertical-list.component.d.ts +0 -18
  172. package/components/table/src/components/column-filter/column-filter.component.d.ts +0 -40
  173. package/components/table/src/components/desktop-command/desktop-command.component.d.ts +0 -15
  174. package/components/table/src/components/external-filter/external-filter.component.d.ts +0 -36
  175. package/components/table/src/pipes/command-disable.pipe.d.ts +0 -9
  176. package/components/table/src/pipes/command-filter.pipe.d.ts +0 -25
  177. package/components/table/src/pipes/command-title.pipe.d.ts +0 -9
  178. package/sd-angular-core-19.0.0-beta.97.tgz +0 -0
@@ -0,0 +1,38 @@
1
+ /**
2
+ * Serialize a value for the `data-value` attribute consumed by QA automation.
3
+ *
4
+ * null/undefined/empty-string → ''.
5
+ * Date → ISO string.
6
+ * Array / object → JSON.stringify, '' on failure (circular refs).
7
+ * Primitives → String().
8
+ */
9
+ function sdSerializeDataValue(value) {
10
+ if (value === null || value === undefined || value === '')
11
+ return '';
12
+ if (value instanceof Date)
13
+ return value.toISOString();
14
+ if (Array.isArray(value) || (typeof value === 'object' && value !== null)) {
15
+ try {
16
+ return JSON.stringify(value);
17
+ }
18
+ catch {
19
+ return '';
20
+ }
21
+ }
22
+ return String(value);
23
+ }
24
+ /** True when the value should drive `data-empty="true"` on a form control. */
25
+ function sdIsEmpty(value) {
26
+ if (value === null || value === undefined || value === '')
27
+ return true;
28
+ if (Array.isArray(value))
29
+ return value.length === 0;
30
+ return false;
31
+ }
32
+
33
+ /**
34
+ * Generated bundle index. Do not edit.
35
+ */
36
+
37
+ export { sdIsEmpty, sdSerializeDataValue };
38
+ //# sourceMappingURL=sd-angular-core-utilities-data-state.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sd-angular-core-utilities-data-state.mjs","sources":["../../../projects/sd-angular/utilities/data-state/src/data-state.ts","../../../projects/sd-angular/utilities/data-state/sd-angular-core-utilities-data-state.ts"],"sourcesContent":["/**\r\n * Serialize a value for the `data-value` attribute consumed by QA automation.\r\n *\r\n * null/undefined/empty-string → ''.\r\n * Date → ISO string.\r\n * Array / object → JSON.stringify, '' on failure (circular refs).\r\n * Primitives → String().\r\n */\r\nexport function sdSerializeDataValue(value: unknown): string {\r\n if (value === null || value === undefined || value === '') return '';\r\n if (value instanceof Date) return value.toISOString();\r\n if (Array.isArray(value) || (typeof value === 'object' && value !== null)) {\r\n try { return JSON.stringify(value); } catch { return ''; }\r\n }\r\n return String(value);\r\n}\r\n\r\n/** True when the value should drive `data-empty=\"true\"` on a form control. */\r\nexport function sdIsEmpty(value: unknown): boolean {\r\n if (value === null || value === undefined || value === '') return true;\r\n if (Array.isArray(value)) return value.length === 0;\r\n return false;\r\n}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"AAAA;;;;;;;AAOG;AACG,SAAU,oBAAoB,CAAC,KAAc,EAAA;IACjD,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,EAAE;AAAE,QAAA,OAAO,EAAE;IACpE,IAAI,KAAK,YAAY,IAAI;AAAE,QAAA,OAAO,KAAK,CAAC,WAAW,EAAE;AACrD,IAAA,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,CAAC,EAAE;AACzE,QAAA,IAAI;AAAE,YAAA,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC;QAAE;AAAE,QAAA,MAAM;AAAE,YAAA,OAAO,EAAE;QAAE;IAC3D;AACA,IAAA,OAAO,MAAM,CAAC,KAAK,CAAC;AACtB;AAEA;AACM,SAAU,SAAS,CAAC,KAAc,EAAA;IACtC,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,EAAE;AAAE,QAAA,OAAO,IAAI;AACtE,IAAA,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;AAAE,QAAA,OAAO,KAAK,CAAC,MAAM,KAAK,CAAC;AACnD,IAAA,OAAO,KAAK;AACd;;ACtBA;;AAEG;;;;"}
@@ -1,5 +1,6 @@
1
1
  export * from '@sd-angular/core/utilities/extensions';
2
2
  export * from '@sd-angular/core/utilities/models';
3
+ export * from '@sd-angular/core/utilities/data-state';
3
4
 
4
5
  /**
5
6
  * Generated bundle index. Do not edit.
@@ -1 +1 @@
1
- {"version":3,"file":"sd-angular-core-utilities.mjs","sources":["../../../projects/sd-angular/utilities/sd-angular-core-utilities.ts"],"sourcesContent":["/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;AAAA;;AAEG"}
1
+ {"version":3,"file":"sd-angular-core-utilities.mjs","sources":["../../../projects/sd-angular/utilities/sd-angular-core-utilities.ts"],"sourcesContent":["/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;AAAA;;AAEG"}
@@ -24,6 +24,11 @@ export declare class SdAutocomplete<T = any> implements OnInit, OnDestroy, After
24
24
  private formConfig;
25
25
  autoIdInput: import("@angular/core").InputSignal<string | null | undefined>;
26
26
  autoId: import("@angular/core").Signal<string | undefined>;
27
+ readonly dataDisabled: import("@angular/core").Signal<"true" | "false">;
28
+ readonly dataInvalid: import("@angular/core").Signal<"true" | "false">;
29
+ readonly dataEmpty: import("@angular/core").Signal<"true" | "false">;
30
+ readonly dataValue: import("@angular/core").Signal<string>;
31
+ readonly dataLoading: import("@angular/core").Signal<"true" | "false">;
27
32
  name: import("@angular/core").InputSignal<string>;
28
33
  size: import("@angular/core").InputSignal<import("@sdcorejs/utils/models").Size>;
29
34
  form: import("@angular/core").InputSignalWithTransform<FormGroup<any> | undefined, any>;
@@ -7,6 +7,9 @@ export declare class SdCheckbox implements OnDestroy, OnInit, AfterViewInit {
7
7
  id: string;
8
8
  readonly autoIdInput: import("@angular/core").InputSignal<string | null | undefined>;
9
9
  readonly autoId: import("@angular/core").Signal<string | undefined>;
10
+ readonly dataDisabled: import("@angular/core").Signal<"true" | "false">;
11
+ readonly dataEmpty: import("@angular/core").Signal<"true" | "false">;
12
+ readonly dataValue: import("@angular/core").Signal<string>;
10
13
  set name(val: string);
11
14
  set form(val: NgForm | FormGroup);
12
15
  formControl: FormControl<any>;
@@ -16,6 +16,10 @@ export declare class SdChip implements AfterViewInit {
16
16
  #private;
17
17
  autoIdInput: import("@angular/core").InputSignal<string | null | undefined>;
18
18
  autoId: import("@angular/core").Signal<string | undefined>;
19
+ readonly dataDisabled: import("@angular/core").Signal<"true" | "false">;
20
+ readonly dataEmpty: import("@angular/core").Signal<"true" | "false">;
21
+ readonly dataValue: import("@angular/core").Signal<string>;
22
+ readonly dataCount: import("@angular/core").Signal<string>;
19
23
  name: import("@angular/core").InputSignal<string | undefined>;
20
24
  appearance: import("@angular/core").InputSignal<MatFormFieldAppearance>;
21
25
  floatLabel: import("@angular/core").InputSignal<FloatLabelType>;
@@ -19,6 +19,10 @@ export declare class SdChipCalendar implements AfterViewInit {
19
19
  calendar: MatCalendar<Date>;
20
20
  autoIdInput: import("@angular/core").InputSignal<string | null | undefined>;
21
21
  autoId: import("@angular/core").Signal<string | undefined>;
22
+ readonly dataDisabled: import("@angular/core").Signal<"true" | "false">;
23
+ readonly dataEmpty: import("@angular/core").Signal<"true" | "false">;
24
+ readonly dataValue: import("@angular/core").Signal<string>;
25
+ readonly dataCount: import("@angular/core").Signal<string>;
22
26
  name: import("@angular/core").InputSignal<string | undefined>;
23
27
  appearance: import("@angular/core").InputSignal<MatFormFieldAppearance>;
24
28
  floatLabel: import("@angular/core").InputSignal<FloatLabelType>;
@@ -18,6 +18,10 @@ export declare class SdDate implements OnDestroy, OnInit {
18
18
  private formConfig;
19
19
  autoIdInput: import("@angular/core").InputSignal<string | null | undefined>;
20
20
  autoId: import("@angular/core").Signal<string | undefined>;
21
+ readonly dataDisabled: import("@angular/core").Signal<"true" | "false">;
22
+ readonly dataInvalid: import("@angular/core").Signal<"true" | "false">;
23
+ readonly dataEmpty: import("@angular/core").Signal<"true" | "false">;
24
+ readonly dataValue: import("@angular/core").Signal<string>;
21
25
  name: import("@angular/core").InputSignal<string>;
22
26
  size: import("@angular/core").InputSignal<import("@sdcorejs/utils/models").Size>;
23
27
  form: import("@angular/core").InputSignalWithTransform<FormGroup<any> | undefined, any>;
@@ -18,6 +18,10 @@ export declare class SdDateRange implements OnDestroy, OnInit {
18
18
  private formConfig;
19
19
  autoIdInput: import("@angular/core").InputSignal<string | null | undefined>;
20
20
  autoId: import("@angular/core").Signal<string | undefined>;
21
+ readonly dataDisabled: import("@angular/core").Signal<"true" | "false">;
22
+ readonly dataInvalid: import("@angular/core").Signal<"true" | "false">;
23
+ readonly dataEmpty: import("@angular/core").Signal<"true" | "false">;
24
+ readonly dataValue: import("@angular/core").Signal<string>;
21
25
  name: import("@angular/core").InputSignal<string>;
22
26
  size: import("@angular/core").InputSignal<import("@sdcorejs/utils/models").Size>;
23
27
  form: import("@angular/core").InputSignalWithTransform<FormGroup<any> | undefined, any>;
@@ -18,6 +18,10 @@ export declare class SdDatetime implements OnDestroy, OnInit {
18
18
  private formConfig;
19
19
  autoIdInput: import("@angular/core").InputSignal<string | null | undefined>;
20
20
  autoId: import("@angular/core").Signal<string | undefined>;
21
+ readonly dataDisabled: import("@angular/core").Signal<"true" | "false">;
22
+ readonly dataInvalid: import("@angular/core").Signal<"true" | "false">;
23
+ readonly dataEmpty: import("@angular/core").Signal<"true" | "false">;
24
+ readonly dataValue: import("@angular/core").Signal<string>;
21
25
  name: import("@angular/core").InputSignal<string>;
22
26
  size: import("@angular/core").InputSignal<import("@sdcorejs/utils/models").Size>;
23
27
  form: import("@angular/core").InputSignalWithTransform<FormGroup<any> | undefined, any>;
@@ -14,6 +14,10 @@ export declare class SdInput implements OnDestroy, OnInit, AfterViewInit {
14
14
  sdViewDef: import("@angular/core").Signal<SdViewDefDirective | undefined>;
15
15
  autoIdInput: import("@angular/core").InputSignal<string | null | undefined>;
16
16
  autoId: import("@angular/core").Signal<string | undefined>;
17
+ readonly dataDisabled: import("@angular/core").Signal<"true" | "false">;
18
+ readonly dataInvalid: import("@angular/core").Signal<"true" | "false">;
19
+ readonly dataEmpty: import("@angular/core").Signal<"true" | "false">;
20
+ readonly dataValue: import("@angular/core").Signal<string | null>;
17
21
  name: import("@angular/core").InputSignal<string>;
18
22
  appearanceInput: import("@angular/core").InputSignal<MatFormFieldAppearance | undefined>;
19
23
  appearance: import("@angular/core").Signal<MatFormFieldAppearance>;
@@ -24,6 +24,10 @@ export declare class SdInputNumber implements OnDestroy, OnInit, AfterViewInit {
24
24
  private formConfig;
25
25
  autoIdInput: import("@angular/core").InputSignal<string | null | undefined>;
26
26
  autoId: import("@angular/core").Signal<string | undefined>;
27
+ readonly dataDisabled: import("@angular/core").Signal<"true" | "false">;
28
+ readonly dataInvalid: import("@angular/core").Signal<"true" | "false">;
29
+ readonly dataEmpty: import("@angular/core").Signal<"true" | "false">;
30
+ readonly dataValue: import("@angular/core").Signal<string>;
27
31
  name: import("@angular/core").InputSignal<string>;
28
32
  size: import("@angular/core").InputSignal<import("@sdcorejs/utils/models").Size>;
29
33
  form: import("@angular/core").InputSignalWithTransform<FormGroup<any> | undefined, any>;
@@ -62,8 +66,8 @@ export declare class SdInputNumber implements OnDestroy, OnInit, AfterViewInit {
62
66
  inputControl: SdFormControl;
63
67
  matcher: SdInputNumberErrotStateMatcher;
64
68
  isFocused: boolean;
65
- decimalSeparator: import("@angular/core").Signal<"," | ".">;
66
- thousandsSeparator: import("@angular/core").Signal<"," | ".">;
69
+ decimalSeparator: import("@angular/core").Signal<"." | ",">;
70
+ thousandsSeparator: import("@angular/core").Signal<"." | ",">;
67
71
  regexPattern: import("@angular/core").Signal<string>;
68
72
  constructor();
69
73
  ngOnInit(): void;
@@ -3,3 +3,4 @@ export * from './src/sd-form-control.model';
3
3
  export * from './src/sd-custom-validator.model';
4
4
  export * from './src/sd-selection-data.model';
5
5
  export * from './src/sd-search.model';
6
+ export * from './src/form-control-state';
@@ -0,0 +1,23 @@
1
+ import { Signal } from '@angular/core';
2
+ import { AbstractControl } from '@angular/forms';
3
+ export interface SdFormControlSnapshot<T> {
4
+ value: T | undefined;
5
+ disabled: boolean;
6
+ invalid: boolean;
7
+ touched: boolean;
8
+ }
9
+ /**
10
+ * Wrap an AbstractControl Signal into a reactive snapshot signal.
11
+ *
12
+ * Re-emits on every value, status, touched, or dirty change so
13
+ * downstream consumers can derive `data-disabled`, `data-value`,
14
+ * `data-empty`, and `data-invalid` host-binding attributes from a
15
+ * single, lazily evaluated signal.
16
+ *
17
+ * "invalid" is intentionally gated on `touched || dirty` so validation
18
+ * errors are not surfaced until the user has interacted with the field.
19
+ *
20
+ * Must be called inside an Angular injection context (constructor,
21
+ * field initialiser, or `runInInjectionContext`).
22
+ */
23
+ export declare function sdFormControlState<T = unknown>(control: Signal<AbstractControl<T> | null | undefined>): Signal<SdFormControlSnapshot<T>>;
@@ -9,6 +9,9 @@ export declare class SdRadio implements OnInit, AfterViewInit, OnDestroy {
9
9
  id: string;
10
10
  readonly autoIdInput: import("@angular/core").InputSignal<string | null | undefined>;
11
11
  readonly autoId: import("@angular/core").Signal<string | undefined>;
12
+ readonly dataDisabled: import("@angular/core").Signal<"true" | "false">;
13
+ readonly dataEmpty: import("@angular/core").Signal<"true" | "false">;
14
+ readonly dataValue: import("@angular/core").Signal<string>;
12
15
  set name(val: string | undefined);
13
16
  formControl: SdFormControl;
14
17
  set form(val: NgForm | FormGroup | undefined | null);
@@ -19,6 +19,11 @@ export declare class SdSelect<T extends object | string | number = Record<string
19
19
  sdViewDef: Signal<SdViewDefDirective | undefined>;
20
20
  autoIdInput: import("@angular/core").InputSignal<string | null | undefined>;
21
21
  autoId: Signal<string | undefined>;
22
+ readonly dataDisabled: Signal<"true" | "false">;
23
+ readonly dataInvalid: Signal<"true" | "false">;
24
+ readonly dataEmpty: Signal<"true" | "false">;
25
+ readonly dataValue: Signal<string>;
26
+ readonly dataLoading: Signal<"true" | "false">;
22
27
  name: import("@angular/core").InputSignal<string>;
23
28
  size: import("@angular/core").InputSignal<import("@sdcorejs/utils/models").Size>;
24
29
  form: import("@angular/core").InputSignalWithTransform<FormGroup<any> | undefined, any>;
@@ -9,6 +9,9 @@ export declare class SdSwitch implements OnInit, AfterViewInit, OnDestroy {
9
9
  id: string;
10
10
  readonly autoIdInput: import("@angular/core").InputSignal<string | null | undefined>;
11
11
  readonly autoId: import("@angular/core").Signal<string | undefined>;
12
+ readonly dataDisabled: import("@angular/core").Signal<"true" | "false">;
13
+ readonly dataEmpty: import("@angular/core").Signal<"true" | "false">;
14
+ readonly dataValue: import("@angular/core").Signal<string>;
12
15
  set _name(val: string | undefined);
13
16
  set form(val: NgForm | FormGroup | undefined | null);
14
17
  label?: string;
@@ -13,6 +13,10 @@ export declare class SdTextarea implements OnInit, AfterViewInit, OnDestroy {
13
13
  sdSuffixDef: import("@angular/core").Signal<SdSuffixDefDirective | undefined>;
14
14
  autoIdInput: import("@angular/core").InputSignal<string | null | undefined>;
15
15
  autoId: import("@angular/core").Signal<string | undefined>;
16
+ readonly dataDisabled: import("@angular/core").Signal<"true" | "false">;
17
+ readonly dataInvalid: import("@angular/core").Signal<"true" | "false">;
18
+ readonly dataEmpty: import("@angular/core").Signal<"true" | "false">;
19
+ readonly dataValue: import("@angular/core").Signal<string>;
16
20
  name: import("@angular/core").InputSignal<string>;
17
21
  size: import("@angular/core").InputSignal<import("@sdcorejs/utils/models").Size>;
18
22
  form: import("@angular/core").InputSignalWithTransform<FormGroup<any> | undefined, any>;
package/i18n/src/en.d.ts CHANGED
@@ -8,15 +8,51 @@ export declare const EN_MESSAGES: {
8
8
  readonly 'core.validator.phone.name': "Phone";
9
9
  readonly 'core.validator.phone.error': "Invalid phone number";
10
10
  readonly 'core.validator.phone-vn.name': "VN phone";
11
- readonly 'core.validator.phone-vn.error': "Invalid phone number";
11
+ readonly 'core.validator.phone-vn.error': "Invalid Vietnamese phone number";
12
12
  readonly 'core.validator.cccd.name': "National ID";
13
13
  readonly 'core.validator.cccd.error': "Invalid national ID (12 digits)";
14
- readonly 'core.validator.passport.name': "Passport";
15
- readonly 'core.validator.passport.error': "Invalid passport (1 letter + 7 digits)";
16
14
  readonly 'core.validator.id-vn.name': "National ID / Passport";
17
15
  readonly 'core.validator.id-vn.error': "Invalid national ID or passport";
16
+ readonly 'core.validator.vn-phone.name': "VN phone";
17
+ readonly 'core.validator.vn-phone.error': "Invalid Vietnamese phone number";
18
+ readonly 'core.validator.vn-id.name': "National ID";
19
+ readonly 'core.validator.vn-id.error': "Invalid national ID (12 digits)";
20
+ readonly 'core.validator.passport.name': "Passport";
21
+ readonly 'core.validator.passport.error': "Invalid passport (1 letter + 7 digits)";
22
+ readonly 'core.validator.vn-id-or-passport.name': "National ID / Passport";
23
+ readonly 'core.validator.vn-id-or-passport.error': "Invalid national ID or passport";
18
24
  readonly 'core.validator.time.name': "Time";
19
25
  readonly 'core.validator.time.error': "Invalid time (format HH:mm)";
26
+ readonly 'core.validator.url.name': "URL";
27
+ readonly 'core.validator.url.error': "Invalid URL";
28
+ readonly 'core.validator.domain.name': "Domain";
29
+ readonly 'core.validator.domain.error': "Invalid domain";
30
+ readonly 'core.validator.ipv4.name': "IPv4";
31
+ readonly 'core.validator.ipv4.error': "Invalid IPv4 address";
32
+ readonly 'core.validator.ipv6.name': "IPv6";
33
+ readonly 'core.validator.ipv6.error': "Invalid IPv6 address";
34
+ readonly 'core.validator.image-url.name': "Image URL";
35
+ readonly 'core.validator.image-url.error': "Invalid image URL";
36
+ readonly 'core.validator.slug.name': "Slug";
37
+ readonly 'core.validator.slug.error': "Invalid slug";
38
+ readonly 'core.validator.number.name': "Number";
39
+ readonly 'core.validator.number.error': "Invalid number";
40
+ readonly 'core.validator.integer.name': "Integer";
41
+ readonly 'core.validator.integer.error': "Invalid integer";
42
+ readonly 'core.validator.decimal.name': "Decimal";
43
+ readonly 'core.validator.decimal.error': "Invalid decimal number";
44
+ readonly 'core.validator.positive-number.name': "Positive number";
45
+ readonly 'core.validator.positive-number.error': "Must be a positive number";
46
+ readonly 'core.validator.uuid.name': "UUID";
47
+ readonly 'core.validator.uuid.error': "Invalid UUID";
48
+ readonly 'core.validator.code-16.name': "16-char code";
49
+ readonly 'core.validator.code-16.error': "Invalid 16-character code";
50
+ readonly 'core.validator.code-32.name': "32-char code";
51
+ readonly 'core.validator.code-32.error': "Invalid 32-character code";
52
+ readonly 'core.validator.hex-color.name': "Hex color";
53
+ readonly 'core.validator.hex-color.error': "Invalid hex color";
54
+ readonly 'core.validator.base64.name': "Base64";
55
+ readonly 'core.validator.base64.error': "Invalid Base64 string";
20
56
  readonly 'core.operator.equal.display': "Equal";
21
57
  readonly 'core.operator.not-equal.display': "Not equal";
22
58
  readonly 'core.operator.greater-than.display': "Greater than";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sd-angular/core",
3
- "version": "19.0.0-beta.97",
3
+ "version": "19.0.0-beta.99",
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",
@@ -48,14 +48,14 @@
48
48
  "types": "./forms/index.d.ts",
49
49
  "default": "./fesm2022/sd-angular-core-forms.mjs"
50
50
  },
51
- "./i18n": {
52
- "types": "./i18n/index.d.ts",
53
- "default": "./fesm2022/sd-angular-core-i18n.mjs"
54
- },
55
51
  "./handlers": {
56
52
  "types": "./handlers/index.d.ts",
57
53
  "default": "./fesm2022/sd-angular-core-handlers.mjs"
58
54
  },
55
+ "./i18n": {
56
+ "types": "./i18n/index.d.ts",
57
+ "default": "./fesm2022/sd-angular-core-i18n.mjs"
58
+ },
59
59
  "./interceptors": {
60
60
  "types": "./interceptors/index.d.ts",
61
61
  "default": "./fesm2022/sd-angular-core-interceptors.mjs"
@@ -84,26 +84,30 @@
84
84
  "types": "./components/anchor/index.d.ts",
85
85
  "default": "./fesm2022/sd-angular-core-components-anchor.mjs"
86
86
  },
87
+ "./components/autoid-inspector": {
88
+ "types": "./components/autoid-inspector/index.d.ts",
89
+ "default": "./fesm2022/sd-angular-core-components-autoid-inspector.mjs"
90
+ },
87
91
  "./components/avatar": {
88
92
  "types": "./components/avatar/index.d.ts",
89
93
  "default": "./fesm2022/sd-angular-core-components-avatar.mjs"
90
94
  },
91
- "./components/base": {
92
- "types": "./components/base/index.d.ts",
93
- "default": "./fesm2022/sd-angular-core-components-base.mjs"
94
- },
95
- "./components/button": {
96
- "types": "./components/button/index.d.ts",
97
- "default": "./fesm2022/sd-angular-core-components-button.mjs"
98
- },
99
95
  "./components/badge": {
100
96
  "types": "./components/badge/index.d.ts",
101
97
  "default": "./fesm2022/sd-angular-core-components-badge.mjs"
102
98
  },
99
+ "./components/base": {
100
+ "types": "./components/base/index.d.ts",
101
+ "default": "./fesm2022/sd-angular-core-components-base.mjs"
102
+ },
103
103
  "./components/chart": {
104
104
  "types": "./components/chart/index.d.ts",
105
105
  "default": "./fesm2022/sd-angular-core-components-chart.mjs"
106
106
  },
107
+ "./components/button": {
108
+ "types": "./components/button/index.d.ts",
109
+ "default": "./fesm2022/sd-angular-core-components-button.mjs"
110
+ },
107
111
  "./components/code-editor": {
108
112
  "types": "./components/code-editor/index.d.ts",
109
113
  "default": "./fesm2022/sd-angular-core-components-code-editor.mjs"
@@ -132,14 +136,14 @@
132
136
  "types": "./components/mini-editor/index.d.ts",
133
137
  "default": "./fesm2022/sd-angular-core-components-mini-editor.mjs"
134
138
  },
135
- "./components/preview": {
136
- "types": "./components/preview/index.d.ts",
137
- "default": "./fesm2022/sd-angular-core-components-preview.mjs"
138
- },
139
139
  "./components/modal": {
140
140
  "types": "./components/modal/index.d.ts",
141
141
  "default": "./fesm2022/sd-angular-core-components-modal.mjs"
142
142
  },
143
+ "./components/preview": {
144
+ "types": "./components/preview/index.d.ts",
145
+ "default": "./fesm2022/sd-angular-core-components-preview.mjs"
146
+ },
143
147
  "./components/query-builder": {
144
148
  "types": "./components/query-builder/index.d.ts",
145
149
  "default": "./fesm2022/sd-angular-core-components-query-builder.mjs"
@@ -148,14 +152,14 @@
148
152
  "types": "./components/quick-action/index.d.ts",
149
153
  "default": "./fesm2022/sd-angular-core-components-quick-action.mjs"
150
154
  },
151
- "./components/section": {
152
- "types": "./components/section/index.d.ts",
153
- "default": "./fesm2022/sd-angular-core-components-section.mjs"
154
- },
155
155
  "./components/side-drawer": {
156
156
  "types": "./components/side-drawer/index.d.ts",
157
157
  "default": "./fesm2022/sd-angular-core-components-side-drawer.mjs"
158
158
  },
159
+ "./components/table": {
160
+ "types": "./components/table/index.d.ts",
161
+ "default": "./fesm2022/sd-angular-core-components-table.mjs"
162
+ },
159
163
  "./components/tab-router": {
160
164
  "types": "./components/tab-router/index.d.ts",
161
165
  "default": "./fesm2022/sd-angular-core-components-tab-router.mjs"
@@ -164,18 +168,22 @@
164
168
  "types": "./components/upload-file/index.d.ts",
165
169
  "default": "./fesm2022/sd-angular-core-components-upload-file.mjs"
166
170
  },
171
+ "./components/splitter": {
172
+ "types": "./components/splitter/index.d.ts",
173
+ "default": "./fesm2022/sd-angular-core-components-splitter.mjs"
174
+ },
167
175
  "./components/view": {
168
176
  "types": "./components/view/index.d.ts",
169
177
  "default": "./fesm2022/sd-angular-core-components-view.mjs"
170
178
  },
171
- "./components/table": {
172
- "types": "./components/table/index.d.ts",
173
- "default": "./fesm2022/sd-angular-core-components-table.mjs"
174
- },
175
179
  "./forms/autocomplete": {
176
180
  "types": "./forms/autocomplete/index.d.ts",
177
181
  "default": "./fesm2022/sd-angular-core-forms-autocomplete.mjs"
178
182
  },
183
+ "./forms/checkbox": {
184
+ "types": "./forms/checkbox/index.d.ts",
185
+ "default": "./fesm2022/sd-angular-core-forms-checkbox.mjs"
186
+ },
179
187
  "./forms/chip": {
180
188
  "types": "./forms/chip/index.d.ts",
181
189
  "default": "./fesm2022/sd-angular-core-forms-chip.mjs"
@@ -184,10 +192,6 @@
184
192
  "types": "./forms/chip-calendar/index.d.ts",
185
193
  "default": "./fesm2022/sd-angular-core-forms-chip-calendar.mjs"
186
194
  },
187
- "./forms/checkbox": {
188
- "types": "./forms/checkbox/index.d.ts",
189
- "default": "./fesm2022/sd-angular-core-forms-checkbox.mjs"
190
- },
191
195
  "./forms/date": {
192
196
  "types": "./forms/date/index.d.ts",
193
197
  "default": "./fesm2022/sd-angular-core-forms-date.mjs"
@@ -212,10 +216,6 @@
212
216
  "types": "./forms/input-number/index.d.ts",
213
217
  "default": "./fesm2022/sd-angular-core-forms-input-number.mjs"
214
218
  },
215
- "./forms/models": {
216
- "types": "./forms/models/index.d.ts",
217
- "default": "./fesm2022/sd-angular-core-forms-models.mjs"
218
- },
219
219
  "./forms/label": {
220
220
  "types": "./forms/label/index.d.ts",
221
221
  "default": "./fesm2022/sd-angular-core-forms-label.mjs"
@@ -224,6 +224,10 @@
224
224
  "types": "./forms/radio/index.d.ts",
225
225
  "default": "./fesm2022/sd-angular-core-forms-radio.mjs"
226
226
  },
227
+ "./forms/models": {
228
+ "types": "./forms/models/index.d.ts",
229
+ "default": "./fesm2022/sd-angular-core-forms-models.mjs"
230
+ },
227
231
  "./forms/select": {
228
232
  "types": "./forms/select/index.d.ts",
229
233
  "default": "./fesm2022/sd-angular-core-forms-select.mjs"
@@ -272,22 +276,18 @@
272
276
  "types": "./services/docx/index.d.ts",
273
277
  "default": "./fesm2022/sd-angular-core-services-docx.mjs"
274
278
  },
275
- "./services/license": {
276
- "types": "./services/license/index.d.ts",
277
- "default": "./fesm2022/sd-angular-core-services-license.mjs"
278
- },
279
279
  "./services/excel": {
280
280
  "types": "./services/excel/index.d.ts",
281
281
  "default": "./fesm2022/sd-angular-core-services-excel.mjs"
282
282
  },
283
+ "./services/license": {
284
+ "types": "./services/license/index.d.ts",
285
+ "default": "./fesm2022/sd-angular-core-services-license.mjs"
286
+ },
283
287
  "./services/loading": {
284
288
  "types": "./services/loading/index.d.ts",
285
289
  "default": "./fesm2022/sd-angular-core-services-loading.mjs"
286
290
  },
287
- "./components/splitter": {
288
- "types": "./components/splitter/index.d.ts",
289
- "default": "./fesm2022/sd-angular-core-components-splitter.mjs"
290
- },
291
291
  "./services/notify": {
292
292
  "types": "./services/notify/index.d.ts",
293
293
  "default": "./fesm2022/sd-angular-core-services-notify.mjs"
@@ -296,6 +296,10 @@
296
296
  "types": "./services/storage/index.d.ts",
297
297
  "default": "./fesm2022/sd-angular-core-services-storage.mjs"
298
298
  },
299
+ "./utilities/data-state": {
300
+ "types": "./utilities/data-state/index.d.ts",
301
+ "default": "./fesm2022/sd-angular-core-utilities-data-state.mjs"
302
+ },
299
303
  "./utilities/extensions": {
300
304
  "types": "./utilities/extensions/index.d.ts",
301
305
  "default": "./fesm2022/sd-angular-core-utilities-extensions.mjs"
@@ -303,6 +307,10 @@
303
307
  "./utilities/models": {
304
308
  "types": "./utilities/models/index.d.ts",
305
309
  "default": "./fesm2022/sd-angular-core-utilities-models.mjs"
310
+ },
311
+ "./components/section": {
312
+ "types": "./components/section/index.d.ts",
313
+ "default": "./fesm2022/sd-angular-core-components-section.mjs"
306
314
  }
307
315
  }
308
316
  }
@@ -0,0 +1 @@
1
+ export * from './src/data-state';
@@ -0,0 +1,11 @@
1
+ /**
2
+ * Serialize a value for the `data-value` attribute consumed by QA automation.
3
+ *
4
+ * null/undefined/empty-string → ''.
5
+ * Date → ISO string.
6
+ * Array / object → JSON.stringify, '' on failure (circular refs).
7
+ * Primitives → String().
8
+ */
9
+ export declare function sdSerializeDataValue(value: unknown): string;
10
+ /** True when the value should drive `data-empty="true"` on a form control. */
11
+ export declare function sdIsEmpty(value: unknown): boolean;
@@ -1,2 +1,3 @@
1
1
  export * from '@sd-angular/core/utilities/extensions';
2
2
  export * from '@sd-angular/core/utilities/models';
3
+ export * from '@sd-angular/core/utilities/data-state';
@@ -1,18 +0,0 @@
1
- import { OnDestroy } from '@angular/core';
2
- import { SdAnchorItem } from '../anchor-item/anchor-item.component';
3
- import * as i0 from "@angular/core";
4
- export declare class SdAnchorVerticalList implements OnDestroy {
5
- #private;
6
- sections: import("@angular/core").InputSignal<readonly SdAnchorItem[]>;
7
- activeSectionId: import("@angular/core").InputSignal<string>;
8
- ellipsis: import("@angular/core").InputSignal<boolean>;
9
- sidebarWidth: import("@angular/core").InputSignal<string>;
10
- parentAutoId: import("@angular/core").InputSignal<string | null | undefined>;
11
- itemAutoId(section: SdAnchorItem): string | undefined;
12
- sdClickSection: import("@angular/core").OutputEmitterRef<string>;
13
- constructor();
14
- onClickSection: (id: string) => void;
15
- ngOnDestroy(): void;
16
- static ɵfac: i0.ɵɵFactoryDeclaration<SdAnchorVerticalList, never>;
17
- static ɵcmp: i0.ɵɵComponentDeclaration<SdAnchorVerticalList, "sd-anchor-vertical-list", never, { "sections": { "alias": "sections"; "required": true; "isSignal": true; }; "activeSectionId": { "alias": "activeSectionId"; "required": false; "isSignal": true; }; "ellipsis": { "alias": "ellipsis"; "required": false; "isSignal": true; }; "sidebarWidth": { "alias": "sidebarWidth"; "required": false; "isSignal": true; }; "parentAutoId": { "alias": "parentAutoId"; "required": false; "isSignal": true; }; }, { "sdClickSection": "sdClickSection"; }, never, never, true, never>;
18
- }
@@ -1,40 +0,0 @@
1
- import { ChangeDetectorRef, EventEmitter, OnDestroy, OnInit, Signal } from '@angular/core';
2
- import { SdSearch } from '@sd-angular/core/forms';
3
- import { SdOperator } from '@sd-angular/core/utilities';
4
- import { SdTableColumn } from '../../models/table-column.model';
5
- import * as i0 from "@angular/core";
6
- export declare class ColumnFilterComponent implements OnInit, OnDestroy {
7
- #private;
8
- private ref;
9
- autoId?: string;
10
- set _autoId(val: string | undefined | null);
11
- value: any;
12
- _value(value: any): void;
13
- inlineSymbol: string;
14
- set _inlineOperator(inlineOperator: SdOperator);
15
- inlineOperatorChange: EventEmitter<import("@sdcorejs/utils/models").Operator>;
16
- operatorChange: EventEmitter<import("@sdcorejs/utils/models").Operator>;
17
- columnFilter: Record<string, any>;
18
- set _columnFilter(columnFilter: Record<string, any>);
19
- operators: {
20
- value: import("@sdcorejs/utils/models").Operator;
21
- symbol?: string;
22
- display: string;
23
- }[];
24
- column: SdTableColumn;
25
- items: any[] | Signal<any[]> | SdSearch;
26
- cacheValues?: Record<string, any[]>;
27
- set _column(column: SdTableColumn);
28
- filterChange: EventEmitter<any>;
29
- constructor(ref: ChangeDetectorRef);
30
- ngOnInit(): void;
31
- ngOnDestroy(): void;
32
- onFilterChange: () => void;
33
- onChangeOperator: (operator: {
34
- value: SdOperator;
35
- symbol?: string;
36
- display: string;
37
- }) => void;
38
- static ɵfac: i0.ɵɵFactoryDeclaration<ColumnFilterComponent, never>;
39
- static ɵcmp: i0.ɵɵComponentDeclaration<ColumnFilterComponent, "column-filter", never, { "_autoId": { "alias": "autoId"; "required": false; }; "_value": { "alias": "value"; "required": false; }; "_inlineOperator": { "alias": "inlineOperator"; "required": false; }; "_columnFilter": { "alias": "columnFilter"; "required": false; }; "cacheValues": { "alias": "cacheValues"; "required": false; }; "_column": { "alias": "column"; "required": false; }; }, { "inlineOperatorChange": "inlineOperatorChange"; "operatorChange": "operatorChange"; "filterChange": "filterChange"; }, never, never, true, never>;
40
- }
@@ -1,15 +0,0 @@
1
- import { SdTableCommand } from '../../models/table-command.model';
2
- import { SdTableItem } from '../../models/table-item.model';
3
- import * as i0 from "@angular/core";
4
- export declare class SdDesktopCommand {
5
- autoId?: string;
6
- set _autoId(val: string | undefined | null);
7
- item: SdTableItem;
8
- itemKey: string;
9
- set _item(item: SdTableItem);
10
- itemIndex: number;
11
- commands: SdTableCommand[];
12
- set _commands(commands: SdTableCommand[] | undefined | null);
13
- static ɵfac: i0.ɵɵFactoryDeclaration<SdDesktopCommand, never>;
14
- static ɵcmp: i0.ɵɵComponentDeclaration<SdDesktopCommand, "sd-desktop-command", never, { "_autoId": { "alias": "autoId"; "required": false; }; "_item": { "alias": "item"; "required": true; }; "itemIndex": { "alias": "itemIndex"; "required": true; }; "_commands": { "alias": "commands"; "required": false; }; }, {}, never, never, true, never>;
15
- }