@telcomdev/ui 0.1.5 → 0.1.7

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.
@@ -0,0 +1,46 @@
1
+ /*
2
+ * Optional Angular Material integration for @telcomdev/ui.
3
+ *
4
+ * Usage in a consuming app that already defines Material system tokens:
5
+ * @import '@telcomdev/ui/lib/theme/td-material-theme.css';
6
+ *
7
+ * This file only maps --td-* tokens to --mat-sys-* tokens when they exist.
8
+ * Every value keeps the TelcomDev fallback, so it is safe to import in apps
9
+ * without Angular Material too.
10
+ */
11
+
12
+ :root,
13
+ .td-theme-material {
14
+ --td-font-family: var(--mat-sys-body-large-font, Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif);
15
+
16
+ --td-color-primary: var(--mat-sys-primary, #3157a4);
17
+ --td-color-primary-hover: color-mix(in srgb, var(--mat-sys-primary, #3157a4) 86%, #000);
18
+ --td-color-primary-active: color-mix(in srgb, var(--mat-sys-primary, #3157a4) 72%, #000);
19
+ --td-color-primary-soft: var(--mat-sys-primary-container, #eaf0fb);
20
+ --td-color-primary-subtle: color-mix(in srgb, var(--mat-sys-primary-container, #eaf0fb) 62%, var(--mat-sys-surface, #fff));
21
+ --td-color-on-primary: var(--mat-sys-on-primary, #ffffff);
22
+
23
+ --td-color-surface: var(--mat-sys-surface, #ffffff);
24
+ --td-color-surface-soft: var(--mat-sys-surface-container-low, #f6f8fb);
25
+ --td-color-surface-muted: var(--mat-sys-surface-container, #edf1f6);
26
+ --td-color-background: var(--mat-sys-background, var(--mat-sys-surface, #f3f6fa));
27
+
28
+ --td-color-border: var(--mat-sys-outline-variant, #dde3ee);
29
+ --td-color-border-strong: var(--mat-sys-outline, #c8d1df);
30
+
31
+ --td-color-text: var(--mat-sys-on-surface, #202b3d);
32
+ --td-color-text-muted: var(--mat-sys-on-surface-variant, #66758b);
33
+ --td-color-text-subtle: color-mix(in srgb, var(--mat-sys-on-surface-variant, #66758b) 74%, transparent);
34
+
35
+ --td-color-danger: var(--mat-sys-error, #b93a3a);
36
+ --td-color-danger-soft: var(--mat-sys-error-container, #fde7e7);
37
+ --td-color-success: var(--mat-sys-tertiary, #16784a);
38
+ --td-color-success-soft: var(--mat-sys-tertiary-container, #e2f5eb);
39
+ --td-color-warning: #a8660b;
40
+ --td-color-warning-soft: #fff2d8;
41
+ --td-color-info: var(--mat-sys-secondary, #2563a8);
42
+ --td-color-info-soft: var(--mat-sys-secondary-container, #e4effb);
43
+
44
+ --td-focus-ring: 0 0 0 3px color-mix(in srgb, var(--td-color-primary) 18%, transparent);
45
+ --td-danger-ring: 0 0 0 3px color-mix(in srgb, var(--td-color-danger) 16%, transparent);
46
+ }
@@ -0,0 +1,80 @@
1
+ :root,
2
+ .td-theme-light {
3
+ color-scheme: light;
4
+ --td-font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
5
+ --td-color-primary: #3157a4;
6
+ --td-color-primary-hover: #254680;
7
+ --td-color-primary-active: #1d3868;
8
+ --td-color-primary-soft: #eaf0fb;
9
+ --td-color-primary-subtle: #f4f7fd;
10
+ --td-color-on-primary: #ffffff;
11
+ --td-color-success: #16784a;
12
+ --td-color-success-soft: #e2f5eb;
13
+ --td-color-warning: #a8660b;
14
+ --td-color-warning-soft: #fff2d8;
15
+ --td-color-danger: #b93a3a;
16
+ --td-color-danger-soft: #fde7e7;
17
+ --td-color-info: #2563a8;
18
+ --td-color-info-soft: #e4effb;
19
+ --td-color-background: #f3f6fa;
20
+ --td-color-surface: #ffffff;
21
+ --td-color-surface-soft: #f6f8fb;
22
+ --td-color-surface-muted: #edf1f6;
23
+ --td-color-border: #dde3ee;
24
+ --td-color-border-strong: #c8d1df;
25
+ --td-color-text: #202b3d;
26
+ --td-color-text-muted: #66758b;
27
+ --td-color-text-subtle: #8b97a8;
28
+ --td-color-overlay: rgba(15, 23, 42, 0.52);
29
+ --td-shadow-sm: 0 8px 22px rgba(32, 43, 61, 0.08);
30
+ --td-shadow-md: 0 18px 46px rgba(32, 43, 61, 0.14);
31
+ --td-shadow-lg: 0 28px 75px rgba(15, 23, 42, 0.24);
32
+ --td-shadow-panel: 0 22px 55px rgba(15, 23, 42, 0.18);
33
+ --td-focus-ring: 0 0 0 3px color-mix(in srgb, var(--td-color-primary) 18%, transparent);
34
+ --td-danger-ring: 0 0 0 3px color-mix(in srgb, var(--td-color-danger) 16%, transparent);
35
+ --td-radius-sm: 0.55rem;
36
+ --td-radius-md: 0.75rem;
37
+ --td-radius-lg: 0.9rem;
38
+ --td-radius-xl: 1rem;
39
+ --td-radius-pill: 999px;
40
+ }
41
+
42
+ .td-theme-dark {
43
+ color-scheme: dark;
44
+ --td-font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
45
+ --td-color-primary: #8aa7e6;
46
+ --td-color-primary-hover: #a8bdf0;
47
+ --td-color-primary-active: #c3d1f7;
48
+ --td-color-primary-soft: #1f2b45;
49
+ --td-color-primary-subtle: #182235;
50
+ --td-color-on-primary: #ffffff;
51
+ --td-color-success: #56c28d;
52
+ --td-color-success-soft: #173828;
53
+ --td-color-warning: #e2a84d;
54
+ --td-color-warning-soft: #3e2c12;
55
+ --td-color-danger: #f07878;
56
+ --td-color-danger-soft: #462020;
57
+ --td-color-info: #79a9e8;
58
+ --td-color-info-soft: #182b43;
59
+ --td-color-background: #11141a;
60
+ --td-color-surface: #181b22;
61
+ --td-color-surface-soft: #20242d;
62
+ --td-color-surface-muted: #272d38;
63
+ --td-color-border: #343b49;
64
+ --td-color-border-strong: #465164;
65
+ --td-color-text: #eef2f8;
66
+ --td-color-text-muted: #a7b0be;
67
+ --td-color-text-subtle: #7f8898;
68
+ --td-color-overlay: rgba(0, 0, 0, 0.62);
69
+ --td-shadow-sm: 0 8px 22px rgba(0, 0, 0, 0.26);
70
+ --td-shadow-md: 0 20px 54px rgba(0, 0, 0, 0.36);
71
+ --td-shadow-lg: 0 28px 75px rgba(0, 0, 0, 0.42);
72
+ --td-shadow-panel: 0 22px 55px rgba(0, 0, 0, 0.36);
73
+ --td-focus-ring: 0 0 0 3px color-mix(in srgb, var(--td-color-primary) 22%, transparent);
74
+ --td-danger-ring: 0 0 0 3px color-mix(in srgb, var(--td-color-danger) 18%, transparent);
75
+ --td-radius-sm: 0.55rem;
76
+ --td-radius-md: 0.75rem;
77
+ --td-radius-lg: 0.9rem;
78
+ --td-radius-xl: 1rem;
79
+ --td-radius-pill: 999px;
80
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@telcomdev/ui",
3
- "version": "0.1.5",
3
+ "version": "0.1.7",
4
4
  "description": "Librería UI reutilizable para los sistemas TelcomDev.",
5
5
  "keywords": [
6
6
  "angular",
@@ -1,5 +1,5 @@
1
1
  import * as _angular_core from '@angular/core';
2
- import { AfterContentChecked, EventEmitter, OnChanges, OnDestroy, SimpleChanges, InjectionToken, Type, ModelSignal, OutputEmitterRef, TemplateRef, AfterContentInit } from '@angular/core';
2
+ import { AfterContentChecked, EventEmitter, OnChanges, OnDestroy, SimpleChanges, InjectionToken, Type, ModelSignal, OutputEmitterRef, AfterViewInit, TemplateRef, AfterContentInit } from '@angular/core';
3
3
  import { ControlValueAccessor } from '@angular/forms';
4
4
  import { FormCheckboxControl, WithOptionalFieldTree, DisabledReason, ValidationError, FormValueControl } from '@angular/forms/signals';
5
5
  import { ScrollStrategy } from '@angular/cdk/overlay';
@@ -725,6 +725,8 @@ declare class TdInput implements ControlValueAccessor, FormValueControl<TdInputV
725
725
  placeholder: string;
726
726
  autocomplete: string;
727
727
  icon: string;
728
+ prefix: string;
729
+ suffix: string;
728
730
  hint: string;
729
731
  readonly name: _angular_core.InputSignal<string>;
730
732
  readonly disabled: _angular_core.InputSignal<boolean>;
@@ -807,7 +809,79 @@ declare class TdInput implements ControlValueAccessor, FormValueControl<TdInputV
807
809
  private padTimePart;
808
810
  private setValue;
809
811
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<TdInput, never>;
810
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<TdInput, "td-input", never, { "id": { "alias": "id"; "required": false; }; "label": { "alias": "label"; "required": false; }; "type": { "alias": "type"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "autocomplete": { "alias": "autocomplete"; "required": false; }; "icon": { "alias": "icon"; "required": false; }; "hint": { "alias": "hint"; "required": false; }; "name": { "alias": "name"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "disabledReasons": { "alias": "disabledReasons"; "required": false; "isSignal": true; }; "readonly": { "alias": "readonly"; "required": false; "isSignal": true; }; "hidden": { "alias": "hidden"; "required": false; "isSignal": true; }; "invalid": { "alias": "invalid"; "required": false; "isSignal": true; }; "pending": { "alias": "pending"; "required": false; "isSignal": true; }; "dirty": { "alias": "dirty"; "required": false; "isSignal": true; }; "required": { "alias": "required"; "required": false; "isSignal": true; }; "errors": { "alias": "errors"; "required": false; "isSignal": true; }; "touched": { "alias": "touched"; "required": false; "isSignal": true; }; "error": { "alias": "error"; "required": false; "isSignal": true; }; "clearable": { "alias": "clearable"; "required": false; }; "dark": { "alias": "dark"; "required": false; }; "showCounter": { "alias": "showCounter"; "required": false; "isSignal": true; }; "emptyValue": { "alias": "emptyValue"; "required": false; }; "sanitize": { "alias": "sanitize"; "required": false; }; "sanitizeValue": { "alias": "sanitizeValue"; "required": false; }; "mask": { "alias": "mask"; "required": false; }; "integerDigits": { "alias": "integerDigits"; "required": false; }; "decimalDigits": { "alias": "decimalDigits"; "required": false; }; "minValue": { "alias": "min"; "required": false; "isSignal": true; }; "maxValue": { "alias": "max"; "required": false; "isSignal": true; }; "minLength": { "alias": "minLength"; "required": false; "isSignal": true; }; "maxLength": { "alias": "maxLength"; "required": false; "isSignal": true; }; "pattern": { "alias": "pattern"; "required": false; "isSignal": true; }; "step": { "alias": "step"; "required": false; }; "minlength": { "alias": "minlength"; "required": false; }; "maxlength": { "alias": "maxlength"; "required": false; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; }, { "touched": "touchedChange"; "touch": "touch"; "value": "valueChange"; }, never, never, true, never>;
812
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<TdInput, "td-input", never, { "id": { "alias": "id"; "required": false; }; "label": { "alias": "label"; "required": false; }; "type": { "alias": "type"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "autocomplete": { "alias": "autocomplete"; "required": false; }; "icon": { "alias": "icon"; "required": false; }; "prefix": { "alias": "prefix"; "required": false; }; "suffix": { "alias": "suffix"; "required": false; }; "hint": { "alias": "hint"; "required": false; }; "name": { "alias": "name"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "disabledReasons": { "alias": "disabledReasons"; "required": false; "isSignal": true; }; "readonly": { "alias": "readonly"; "required": false; "isSignal": true; }; "hidden": { "alias": "hidden"; "required": false; "isSignal": true; }; "invalid": { "alias": "invalid"; "required": false; "isSignal": true; }; "pending": { "alias": "pending"; "required": false; "isSignal": true; }; "dirty": { "alias": "dirty"; "required": false; "isSignal": true; }; "required": { "alias": "required"; "required": false; "isSignal": true; }; "errors": { "alias": "errors"; "required": false; "isSignal": true; }; "touched": { "alias": "touched"; "required": false; "isSignal": true; }; "error": { "alias": "error"; "required": false; "isSignal": true; }; "clearable": { "alias": "clearable"; "required": false; }; "dark": { "alias": "dark"; "required": false; }; "showCounter": { "alias": "showCounter"; "required": false; "isSignal": true; }; "emptyValue": { "alias": "emptyValue"; "required": false; }; "sanitize": { "alias": "sanitize"; "required": false; }; "sanitizeValue": { "alias": "sanitizeValue"; "required": false; }; "mask": { "alias": "mask"; "required": false; }; "integerDigits": { "alias": "integerDigits"; "required": false; }; "decimalDigits": { "alias": "decimalDigits"; "required": false; }; "minValue": { "alias": "min"; "required": false; "isSignal": true; }; "maxValue": { "alias": "max"; "required": false; "isSignal": true; }; "minLength": { "alias": "minLength"; "required": false; "isSignal": true; }; "maxLength": { "alias": "maxLength"; "required": false; "isSignal": true; }; "pattern": { "alias": "pattern"; "required": false; "isSignal": true; }; "step": { "alias": "step"; "required": false; }; "minlength": { "alias": "minlength"; "required": false; }; "maxlength": { "alias": "maxlength"; "required": false; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; }, { "touched": "touchedChange"; "touch": "touch"; "value": "valueChange"; }, never, never, true, never>;
813
+ }
814
+
815
+ type TdTextareaValue = string | null;
816
+ type TdTextareaEmptyValue = 'auto' | 'null' | 'empty-string';
817
+ declare class TdTextarea implements AfterViewInit, ControlValueAccessor, FormValueControl<TdTextareaValue> {
818
+ private readonly cdr;
819
+ private readonly formBridge;
820
+ private readonly generatedId;
821
+ private readonly legacyMinLength;
822
+ private readonly legacyMaxLength;
823
+ private receivedNullValue;
824
+ private nativeTextarea?;
825
+ id: string;
826
+ label: string;
827
+ placeholder: string;
828
+ hint: string;
829
+ rows: number;
830
+ dark: boolean;
831
+ clearable: boolean;
832
+ emptyValue: TdTextareaEmptyValue;
833
+ autoResize: boolean;
834
+ maxAutoRows: number | null;
835
+ readonly name: _angular_core.InputSignal<string>;
836
+ readonly disabled: _angular_core.InputSignal<boolean>;
837
+ readonly disabledReasons: _angular_core.InputSignal<readonly WithOptionalFieldTree<DisabledReason>[]>;
838
+ readonly readonly: _angular_core.InputSignal<boolean>;
839
+ readonly hidden: _angular_core.InputSignal<boolean>;
840
+ readonly invalid: _angular_core.InputSignal<boolean>;
841
+ readonly pending: _angular_core.InputSignal<boolean>;
842
+ readonly dirty: _angular_core.InputSignal<boolean>;
843
+ readonly required: _angular_core.InputSignal<boolean>;
844
+ readonly errors: _angular_core.InputSignal<readonly WithOptionalFieldTree<ValidationError>[]>;
845
+ readonly touched: _angular_core.ModelSignal<boolean>;
846
+ readonly touch: _angular_core.OutputEmitterRef<void>;
847
+ readonly error: _angular_core.InputSignal<string>;
848
+ readonly showCounter: _angular_core.InputSignal<boolean>;
849
+ readonly minLength: _angular_core.InputSignal<number | undefined>;
850
+ readonly maxLength: _angular_core.InputSignal<number | undefined>;
851
+ set minlength(value: number | null);
852
+ set maxlength(value: number | null);
853
+ readonly value: _angular_core.ModelSignal<TdTextareaValue>;
854
+ protected readonly focused: _angular_core.WritableSignal<boolean>;
855
+ protected readonly isDisabled: _angular_core.Signal<boolean>;
856
+ protected readonly displayError: _angular_core.Signal<string>;
857
+ protected readonly hasError: _angular_core.Signal<boolean>;
858
+ protected readonly resolvedMinLength: _angular_core.Signal<number | null>;
859
+ protected readonly resolvedMaxLength: _angular_core.Signal<number | null>;
860
+ protected readonly currentLength: _angular_core.Signal<number>;
861
+ protected readonly counterVisible: _angular_core.Signal<boolean>;
862
+ protected readonly counterAtLimit: _angular_core.Signal<boolean>;
863
+ protected readonly hasSupportingContent: _angular_core.Signal<boolean>;
864
+ protected readonly hasValue: _angular_core.Signal<boolean>;
865
+ protected readonly labelFloating: _angular_core.Signal<boolean>;
866
+ protected get textareaId(): string;
867
+ protected get descriptionId(): string | null;
868
+ private onChange;
869
+ ngAfterViewInit(): void;
870
+ writeValue(value: unknown): void;
871
+ registerOnChange(fn: (value: TdTextareaValue) => void): void;
872
+ registerOnTouched(fn: () => void): void;
873
+ setDisabledState(disabled: boolean): void;
874
+ focus(options?: FocusOptions): void;
875
+ protected handleInput(event: Event): void;
876
+ protected handleFocus(): void;
877
+ protected handleBlur(): void;
878
+ protected clear(): void;
879
+ private setValue;
880
+ private resolveEmptyValue;
881
+ private resizeTextarea;
882
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<TdTextarea, never>;
883
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<TdTextarea, "td-textarea", never, { "id": { "alias": "id"; "required": false; }; "label": { "alias": "label"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "hint": { "alias": "hint"; "required": false; }; "rows": { "alias": "rows"; "required": false; }; "dark": { "alias": "dark"; "required": false; }; "clearable": { "alias": "clearable"; "required": false; }; "emptyValue": { "alias": "emptyValue"; "required": false; }; "autoResize": { "alias": "autoResize"; "required": false; }; "maxAutoRows": { "alias": "maxAutoRows"; "required": false; }; "name": { "alias": "name"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "disabledReasons": { "alias": "disabledReasons"; "required": false; "isSignal": true; }; "readonly": { "alias": "readonly"; "required": false; "isSignal": true; }; "hidden": { "alias": "hidden"; "required": false; "isSignal": true; }; "invalid": { "alias": "invalid"; "required": false; "isSignal": true; }; "pending": { "alias": "pending"; "required": false; "isSignal": true; }; "dirty": { "alias": "dirty"; "required": false; "isSignal": true; }; "required": { "alias": "required"; "required": false; "isSignal": true; }; "errors": { "alias": "errors"; "required": false; "isSignal": true; }; "touched": { "alias": "touched"; "required": false; "isSignal": true; }; "error": { "alias": "error"; "required": false; "isSignal": true; }; "showCounter": { "alias": "showCounter"; "required": false; "isSignal": true; }; "minLength": { "alias": "minLength"; "required": false; "isSignal": true; }; "maxLength": { "alias": "maxLength"; "required": false; "isSignal": true; }; "minlength": { "alias": "minlength"; "required": false; }; "maxlength": { "alias": "maxlength"; "required": false; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; }, { "touched": "touchedChange"; "touch": "touch"; "value": "valueChange"; }, never, never, true, never>;
884
+ static ngAcceptInputType_autoResize: unknown;
811
885
  }
812
886
 
813
887
  interface TdSelectOption<T = unknown> {
@@ -1086,5 +1160,5 @@ declare class TdThemeService {
1086
1160
  static ɵprov: _angular_core.ɵɵInjectableDeclaration<TdThemeService>;
1087
1161
  }
1088
1162
 
1089
- export { TD_DIALOG_CONFIG, TD_DIALOG_DATA, TD_ICONOS, TD_ICONOS_NOMBRES, TD_THEME_DARK_COLORS, TD_THEME_LIGHT_COLORS, TdAlerta, TdAutocompleteSelect, TdButton, TdCheckbox, TdDataTable, TdDatePicker, TdDialog, TdDialogActions, TdDialogClose, TdDialogPrimary, TdDialogRef, TdFooter, TdHeader, TdIcon, TdIconoRegistry, TdInput, TdSelect, TdSidebar, TdTab, TdTabs, TdThemeService, TelcomdevUi, createTdFormControlBridge };
1090
- export type { MenuSidebar, TdAlertaOpciones, TdAlertaTipo, TdButtonSize, TdButtonTone, TdButtonType, TdButtonVariant, TdDataTableAccion, TdDataTableAccionEvento, TdDataTableAlineacion, TdDataTableBoton, TdDataTableColumna, TdDataTableTipoColumna, TdDataTableTono, TdDatePickerMode, TdDatePickerValue, TdDateRange, TdDialogConfig, TdDialogPanelData, TdDialogRefLike, TdDialogTamano, TdFormControlBridge, TdHeaderAccionPerfil, TdHeaderNotificacion, TdIconoDefinicion, TdIconoNombre, TdIconoPersonalizado, TdInputEmptyValue, TdInputMask, TdInputSanitize, TdInputSanitizeFn, TdInputSanitizePreset, TdInputValue, TdSelectOption, TdSelectOverflowText, TdSelectScrollBehavior, TdSidebarModoCerrado, TdSidebarSeleccion, TdTabsAlignment, TdTabsVariant, TdThemeMode, TdThemePaletteColor };
1163
+ export { TD_DIALOG_CONFIG, TD_DIALOG_DATA, TD_ICONOS, TD_ICONOS_NOMBRES, TD_THEME_DARK_COLORS, TD_THEME_LIGHT_COLORS, TdAlerta, TdAutocompleteSelect, TdButton, TdCheckbox, TdDataTable, TdDatePicker, TdDialog, TdDialogActions, TdDialogClose, TdDialogPrimary, TdDialogRef, TdFooter, TdHeader, TdIcon, TdIconoRegistry, TdInput, TdSelect, TdSidebar, TdTab, TdTabs, TdTextarea, TdThemeService, TelcomdevUi, createTdFormControlBridge };
1164
+ export type { MenuSidebar, TdAlertaOpciones, TdAlertaTipo, TdButtonSize, TdButtonTone, TdButtonType, TdButtonVariant, TdDataTableAccion, TdDataTableAccionEvento, TdDataTableAlineacion, TdDataTableBoton, TdDataTableColumna, TdDataTableTipoColumna, TdDataTableTono, TdDatePickerMode, TdDatePickerValue, TdDateRange, TdDialogConfig, TdDialogPanelData, TdDialogRefLike, TdDialogTamano, TdFormControlBridge, TdHeaderAccionPerfil, TdHeaderNotificacion, TdIconoDefinicion, TdIconoNombre, TdIconoPersonalizado, TdInputEmptyValue, TdInputMask, TdInputSanitize, TdInputSanitizeFn, TdInputSanitizePreset, TdInputValue, TdSelectOption, TdSelectOverflowText, TdSelectScrollBehavior, TdSidebarModoCerrado, TdSidebarSeleccion, TdTabsAlignment, TdTabsVariant, TdTextareaEmptyValue, TdTextareaValue, TdThemeMode, TdThemePaletteColor };