angular-tailwind-components 1.1.3 → 1.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as _angular_core from '@angular/core';
|
|
2
|
-
import { OnDestroy,
|
|
2
|
+
import { OnDestroy, ElementRef, AfterViewInit, OnInit, Type, InjectionToken } from '@angular/core';
|
|
3
3
|
import { ControlValueAccessor } from '@angular/forms';
|
|
4
4
|
|
|
5
5
|
/** Common types used across all components */
|
|
@@ -141,6 +141,170 @@ declare class TailwindInput extends TailwindComponent implements ControlValueAcc
|
|
|
141
141
|
static ɵcmp: _angular_core.ɵɵComponentDeclaration<TailwindInput, "tailwind-input", never, { "label": { "alias": "label"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "type": { "alias": "type"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "readonly": { "alias": "readonly"; "required": false; "isSignal": true; }; "helperText": { "alias": "helperText"; "required": false; "isSignal": true; }; "errorText": { "alias": "errorText"; "required": false; "isSignal": true; }; "hasError": { "alias": "hasError"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; }, { "value": "valueChange"; }, never, never, true, never>;
|
|
142
142
|
}
|
|
143
143
|
|
|
144
|
+
declare class TailwindTextarea extends TailwindComponent implements ControlValueAccessor {
|
|
145
|
+
/** Label text */
|
|
146
|
+
readonly label: _angular_core.InputSignal<string>;
|
|
147
|
+
/** Placeholder text */
|
|
148
|
+
readonly placeholder: _angular_core.InputSignal<string>;
|
|
149
|
+
/** Visible row count */
|
|
150
|
+
readonly rows: _angular_core.InputSignal<number>;
|
|
151
|
+
/** Optional maximum width in columns */
|
|
152
|
+
readonly cols: _angular_core.InputSignal<number | undefined>;
|
|
153
|
+
/** Maximum character length (HTML maxlength) */
|
|
154
|
+
readonly maxlength: _angular_core.InputSignal<number | undefined>;
|
|
155
|
+
/** Resize behavior */
|
|
156
|
+
readonly resize: _angular_core.InputSignal<"vertical" | "none" | "both" | "horizontal">;
|
|
157
|
+
/** Size variant */
|
|
158
|
+
readonly size: _angular_core.InputSignal<TailwindSize>;
|
|
159
|
+
/** Whether the textarea is readonly */
|
|
160
|
+
readonly readonly: _angular_core.InputSignal<boolean>;
|
|
161
|
+
/** Helper text shown below field */
|
|
162
|
+
readonly helperText: _angular_core.InputSignal<string>;
|
|
163
|
+
/** Error text shown when hasError is true */
|
|
164
|
+
readonly errorText: _angular_core.InputSignal<string>;
|
|
165
|
+
/** Whether the textarea is in error state */
|
|
166
|
+
readonly hasError: _angular_core.InputSignal<boolean>;
|
|
167
|
+
/** Two-way bound value */
|
|
168
|
+
readonly value: _angular_core.ModelSignal<string>;
|
|
169
|
+
/** Internal disabled state */
|
|
170
|
+
readonly isDisabled: _angular_core.WritableSignal<boolean>;
|
|
171
|
+
/** Computed textarea classes */
|
|
172
|
+
readonly textareaClasses: _angular_core.Signal<string>;
|
|
173
|
+
private onChange;
|
|
174
|
+
private onTouched;
|
|
175
|
+
writeValue(value: string): void;
|
|
176
|
+
registerOnChange(fn: (value: string) => void): void;
|
|
177
|
+
registerOnTouched(fn: () => void): void;
|
|
178
|
+
setDisabledState(disabled: boolean): void;
|
|
179
|
+
onInputChange(event: Event): void;
|
|
180
|
+
onBlur(): void;
|
|
181
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<TailwindTextarea, never>;
|
|
182
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<TailwindTextarea, "tailwind-textarea", never, { "label": { "alias": "label"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "rows": { "alias": "rows"; "required": false; "isSignal": true; }; "cols": { "alias": "cols"; "required": false; "isSignal": true; }; "maxlength": { "alias": "maxlength"; "required": false; "isSignal": true; }; "resize": { "alias": "resize"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "readonly": { "alias": "readonly"; "required": false; "isSignal": true; }; "helperText": { "alias": "helperText"; "required": false; "isSignal": true; }; "errorText": { "alias": "errorText"; "required": false; "isSignal": true; }; "hasError": { "alias": "hasError"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; }, { "value": "valueChange"; }, never, never, true, never>;
|
|
183
|
+
}
|
|
184
|
+
|
|
185
|
+
declare class TailwindUpload extends TailwindComponent implements ControlValueAccessor {
|
|
186
|
+
private static nextId;
|
|
187
|
+
private readonly fallbackFileId;
|
|
188
|
+
readonly fileInput: _angular_core.Signal<ElementRef<HTMLInputElement>>;
|
|
189
|
+
/** Visual layout: compact button or drop zone */
|
|
190
|
+
readonly variant: _angular_core.InputSignal<"button" | "area">;
|
|
191
|
+
/** Field label */
|
|
192
|
+
readonly label: _angular_core.InputSignal<string>;
|
|
193
|
+
/** Button label when `variant` is `button` */
|
|
194
|
+
readonly buttonLabel: _angular_core.InputSignal<string>;
|
|
195
|
+
/** Drop zone title when `variant` is `area` */
|
|
196
|
+
readonly areaTitle: _angular_core.InputSignal<string>;
|
|
197
|
+
/** Drop zone hint when `variant` is `area` */
|
|
198
|
+
readonly areaHint: _angular_core.InputSignal<string>;
|
|
199
|
+
/** Accepted MIME types / extensions (native `accept`) */
|
|
200
|
+
readonly accept: _angular_core.InputSignal<string | undefined>;
|
|
201
|
+
/** Allow multiple files */
|
|
202
|
+
readonly multiple: _angular_core.InputSignal<boolean>;
|
|
203
|
+
/** Max size per file (bytes); if any file exceeds it, selection is rejected */
|
|
204
|
+
readonly maxFileSizeBytes: _angular_core.InputSignal<number | undefined>;
|
|
205
|
+
/** Button / control size */
|
|
206
|
+
readonly size: _angular_core.InputSignal<TailwindSize>;
|
|
207
|
+
/** Show a clear control when there is a value */
|
|
208
|
+
readonly showClear: _angular_core.InputSignal<boolean>;
|
|
209
|
+
/** Label for the clear action (i18n) */
|
|
210
|
+
readonly clearText: _angular_core.InputSignal<string>;
|
|
211
|
+
readonly helperText: _angular_core.InputSignal<string>;
|
|
212
|
+
readonly errorText: _angular_core.InputSignal<string>;
|
|
213
|
+
readonly hasError: _angular_core.InputSignal<boolean>;
|
|
214
|
+
/** Data URL (`data:<mime>;base64,...`) — forms / `[(value)]`; with `multiple`, only the first file is stored here */
|
|
215
|
+
readonly value: _angular_core.ModelSignal<string>;
|
|
216
|
+
/** Raw files after a successful selection */
|
|
217
|
+
readonly filesSelected: _angular_core.OutputEmitterRef<File[]>;
|
|
218
|
+
/** Human-readable validation message when selection is rejected */
|
|
219
|
+
readonly validationError: _angular_core.OutputEmitterRef<string>;
|
|
220
|
+
readonly isDisabled: _angular_core.WritableSignal<boolean>;
|
|
221
|
+
readonly isDragOver: _angular_core.WritableSignal<boolean>;
|
|
222
|
+
readonly selectedNames: _angular_core.WritableSignal<string[]>;
|
|
223
|
+
private dragDepth;
|
|
224
|
+
private onChange;
|
|
225
|
+
private onTouched;
|
|
226
|
+
readonly fileInputId: _angular_core.Signal<string>;
|
|
227
|
+
readonly areaClasses: _angular_core.Signal<string>;
|
|
228
|
+
writeValue(obj: string | null): void;
|
|
229
|
+
registerOnChange(fn: (value: string) => void): void;
|
|
230
|
+
registerOnTouched(fn: () => void): void;
|
|
231
|
+
setDisabledState(disabled: boolean): void;
|
|
232
|
+
triggerPicker(event?: Event): void;
|
|
233
|
+
onKeydownArea(event: KeyboardEvent): void;
|
|
234
|
+
onDragEnter(event: DragEvent): void;
|
|
235
|
+
onDragLeave(event: DragEvent): void;
|
|
236
|
+
onDragOver(event: DragEvent): void;
|
|
237
|
+
onDrop(event: DragEvent): void;
|
|
238
|
+
onNativeChange(event: Event): void;
|
|
239
|
+
clear(event?: Event): void;
|
|
240
|
+
blurHost(): void;
|
|
241
|
+
private validate;
|
|
242
|
+
private handleFiles;
|
|
243
|
+
private readAsDataUrl;
|
|
244
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<TailwindUpload, never>;
|
|
245
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<TailwindUpload, "tailwind-upload", never, { "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "label": { "alias": "label"; "required": false; "isSignal": true; }; "buttonLabel": { "alias": "buttonLabel"; "required": false; "isSignal": true; }; "areaTitle": { "alias": "areaTitle"; "required": false; "isSignal": true; }; "areaHint": { "alias": "areaHint"; "required": false; "isSignal": true; }; "accept": { "alias": "accept"; "required": false; "isSignal": true; }; "multiple": { "alias": "multiple"; "required": false; "isSignal": true; }; "maxFileSizeBytes": { "alias": "maxFileSizeBytes"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "showClear": { "alias": "showClear"; "required": false; "isSignal": true; }; "clearText": { "alias": "clearText"; "required": false; "isSignal": true; }; "helperText": { "alias": "helperText"; "required": false; "isSignal": true; }; "errorText": { "alias": "errorText"; "required": false; "isSignal": true; }; "hasError": { "alias": "hasError"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; }, { "value": "valueChange"; "filesSelected": "filesSelected"; "validationError": "validationError"; }, never, never, true, never>;
|
|
246
|
+
}
|
|
247
|
+
|
|
248
|
+
declare class TailwindInputOtp extends TailwindComponent implements ControlValueAccessor {
|
|
249
|
+
/** Label text */
|
|
250
|
+
readonly label: _angular_core.InputSignal<string>;
|
|
251
|
+
/** Number of character slots */
|
|
252
|
+
readonly length: _angular_core.InputSignal<number>;
|
|
253
|
+
/** Allow only digits */
|
|
254
|
+
readonly integerOnly: _angular_core.InputSignal<boolean>;
|
|
255
|
+
/** Mask digits (password bullets) */
|
|
256
|
+
readonly mask: _angular_core.InputSignal<boolean>;
|
|
257
|
+
/** Size variant */
|
|
258
|
+
readonly size: _angular_core.InputSignal<TailwindSize>;
|
|
259
|
+
/** Slots are read-only (navigation still allowed) */
|
|
260
|
+
readonly readonly: _angular_core.InputSignal<boolean>;
|
|
261
|
+
/** Helper text shown below */
|
|
262
|
+
readonly helperText: _angular_core.InputSignal<string>;
|
|
263
|
+
/** Error text when hasError is true */
|
|
264
|
+
readonly errorText: _angular_core.InputSignal<string>;
|
|
265
|
+
/** Error state styling */
|
|
266
|
+
readonly hasError: _angular_core.InputSignal<boolean>;
|
|
267
|
+
/** Accessible label for the group (used when label is empty) */
|
|
268
|
+
readonly ariaLabel: _angular_core.InputSignal<string>;
|
|
269
|
+
/** Separator string; empty hides */
|
|
270
|
+
readonly separator: _angular_core.InputSignal<string>;
|
|
271
|
+
/** 0-based slot index after which the separator is rendered */
|
|
272
|
+
readonly separatorAfterIndex: _angular_core.InputSignal<number | null>;
|
|
273
|
+
/** Hint for browsers / SMS autofill (first slot only) */
|
|
274
|
+
readonly autocomplete: _angular_core.InputSignal<string>;
|
|
275
|
+
/** Two-way bound full code string */
|
|
276
|
+
readonly value: _angular_core.ModelSignal<string>;
|
|
277
|
+
/** Emitted when all slots are filled */
|
|
278
|
+
readonly completed: _angular_core.OutputEmitterRef<string>;
|
|
279
|
+
readonly isDisabled: _angular_core.WritableSignal<boolean>;
|
|
280
|
+
readonly slotIndexes: _angular_core.Signal<number[]>;
|
|
281
|
+
readonly otpInputs: _angular_core.Signal<readonly ElementRef<HTMLInputElement>[]>;
|
|
282
|
+
readonly cellClasses: _angular_core.Signal<string>;
|
|
283
|
+
readonly groupAriaLabel: _angular_core.Signal<string>;
|
|
284
|
+
private onChange;
|
|
285
|
+
private onTouched;
|
|
286
|
+
writeValue(value: string): void;
|
|
287
|
+
registerOnChange(fn: (value: string) => void): void;
|
|
288
|
+
registerOnTouched(fn: () => void): void;
|
|
289
|
+
setDisabledState(disabled: boolean): void;
|
|
290
|
+
maxSlots(): number;
|
|
291
|
+
digitAt(index: number): string;
|
|
292
|
+
showSeparatorAfter(index: number): boolean;
|
|
293
|
+
inputType(): string;
|
|
294
|
+
inputMode(): 'numeric' | 'text';
|
|
295
|
+
autocompleteForSlot(index: number): string | null;
|
|
296
|
+
cellId(index: number): string;
|
|
297
|
+
onSlotFocus(index: number): void;
|
|
298
|
+
onInput(event: Event, index: number): void;
|
|
299
|
+
onPaste(event: ClipboardEvent, index: number): void;
|
|
300
|
+
onKeydown(event: KeyboardEvent, index: number): void;
|
|
301
|
+
private commit;
|
|
302
|
+
private normalizeIncoming;
|
|
303
|
+
private focusSlot;
|
|
304
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<TailwindInputOtp, never>;
|
|
305
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<TailwindInputOtp, "tailwind-input-otp", never, { "label": { "alias": "label"; "required": false; "isSignal": true; }; "length": { "alias": "length"; "required": false; "isSignal": true; }; "integerOnly": { "alias": "integerOnly"; "required": false; "isSignal": true; }; "mask": { "alias": "mask"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "readonly": { "alias": "readonly"; "required": false; "isSignal": true; }; "helperText": { "alias": "helperText"; "required": false; "isSignal": true; }; "errorText": { "alias": "errorText"; "required": false; "isSignal": true; }; "hasError": { "alias": "hasError"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; "separator": { "alias": "separator"; "required": false; "isSignal": true; }; "separatorAfterIndex": { "alias": "separatorAfterIndex"; "required": false; "isSignal": true; }; "autocomplete": { "alias": "autocomplete"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; }, { "value": "valueChange"; "completed": "completed"; }, never, never, true, never>;
|
|
306
|
+
}
|
|
307
|
+
|
|
144
308
|
declare class TailwindCheckbox extends TailwindComponent implements ControlValueAccessor {
|
|
145
309
|
/** Label text */
|
|
146
310
|
readonly label: _angular_core.InputSignal<string>;
|
|
@@ -178,7 +342,7 @@ declare class TailwindRadioGroup<T = unknown> extends TailwindComponent implemen
|
|
|
178
342
|
/** Size variant */
|
|
179
343
|
readonly size: _angular_core.InputSignal<TailwindSize>;
|
|
180
344
|
/** Layout orientation */
|
|
181
|
-
readonly orientation: _angular_core.InputSignal<"
|
|
345
|
+
readonly orientation: _angular_core.InputSignal<"vertical" | "horizontal">;
|
|
182
346
|
/** Currently selected value */
|
|
183
347
|
readonly value: _angular_core.ModelSignal<T | null>;
|
|
184
348
|
/** Internal disabled state */
|
|
@@ -365,7 +529,7 @@ declare class TailwindSpinner extends TailwindComponent {
|
|
|
365
529
|
/** Aria label for accessibility */
|
|
366
530
|
readonly ariaLabel: _angular_core.InputSignal<string>;
|
|
367
531
|
/** Layout orientation */
|
|
368
|
-
readonly orientation: _angular_core.InputSignal<"
|
|
532
|
+
readonly orientation: _angular_core.InputSignal<"vertical" | "horizontal">;
|
|
369
533
|
readonly containerClasses: _angular_core.Signal<string>;
|
|
370
534
|
readonly spinnerClasses: _angular_core.Signal<string>;
|
|
371
535
|
readonly labelClasses: _angular_core.Signal<string>;
|
|
@@ -896,7 +1060,7 @@ declare class TailwindToolbar extends TailwindComponent {
|
|
|
896
1060
|
/** Applies a stronger drop shadow. */
|
|
897
1061
|
readonly elevated: _angular_core.InputSignal<boolean>;
|
|
898
1062
|
/** `horizontal` for a top app bar; `vertical` for a side rail (logo → menu → end). */
|
|
899
|
-
readonly orientation: _angular_core.InputSignal<"
|
|
1063
|
+
readonly orientation: _angular_core.InputSignal<"vertical" | "horizontal">;
|
|
900
1064
|
/** Navigation / actions rendered between logo and end slots. */
|
|
901
1065
|
readonly menu: _angular_core.InputSignal<TailwindMenuItem[]>;
|
|
902
1066
|
/** Emitted when a non-disabled, non-divider menu entry is activated. */
|
|
@@ -912,7 +1076,7 @@ declare class TailwindToolbar extends TailwindComponent {
|
|
|
912
1076
|
|
|
913
1077
|
declare class TailwindDivider extends TailwindComponent {
|
|
914
1078
|
/** Rule direction */
|
|
915
|
-
readonly orientation: _angular_core.InputSignal<"
|
|
1079
|
+
readonly orientation: _angular_core.InputSignal<"vertical" | "horizontal">;
|
|
916
1080
|
/** Adds horizontal margin to the rule (horizontal orientation only). */
|
|
917
1081
|
readonly inset: _angular_core.InputSignal<boolean>;
|
|
918
1082
|
/** Border style for the rule */
|
|
@@ -979,7 +1143,7 @@ declare class TailwindSlider extends TailwindComponent implements ControlValueAc
|
|
|
979
1143
|
/** Two-thumb range mode */
|
|
980
1144
|
readonly range: _angular_core.InputSignal<boolean>;
|
|
981
1145
|
/** Layout */
|
|
982
|
-
readonly orientation: _angular_core.InputSignal<"
|
|
1146
|
+
readonly orientation: _angular_core.InputSignal<"vertical" | "horizontal">;
|
|
983
1147
|
/** Tick marks at each step */
|
|
984
1148
|
readonly showTicks: _angular_core.InputSignal<boolean>;
|
|
985
1149
|
/** Control size */
|
|
@@ -1051,5 +1215,5 @@ declare class TailwindModalRef<R = any> {
|
|
|
1051
1215
|
_getResult(): R | undefined;
|
|
1052
1216
|
}
|
|
1053
1217
|
|
|
1054
|
-
export { TAILWIND_COMPONENTS_SIZE, TAILWIND_DATETIME_LANGUAGE, TAILWIND_ICON_SIZE, TAILWIND_MODAL_DATA, TAILWIND_SOLAR_ICON_NAMES, TailwindAccordion, TailwindAccordionItem, TailwindAlert, TailwindBadge, TailwindBreadcrumb, TailwindButton, TailwindCard, TailwindCheckbox, TailwindDatePicker, TailwindDateTimePicker, TailwindDivider, TailwindDrawer, TailwindIcon, TailwindInput, TailwindMenu, TailwindMessage, TailwindMeter, TailwindModal, TailwindModalRef, TailwindModalService, TailwindNotification, TailwindPagination, TailwindProgressBar, TailwindRadioGroup, TailwindSelect, TailwindSkeleton, TailwindSlider, TailwindSpinner, TailwindStep, TailwindStepper, TailwindTab, TailwindTabGroup, TailwindTable, TailwindTag, TailwindTimePicker, TailwindTitle, TailwindToast, TailwindToastService, TailwindToggle, TailwindToolbar, TailwindTooltip, TailwindTooltipDirective };
|
|
1218
|
+
export { TAILWIND_COMPONENTS_SIZE, TAILWIND_DATETIME_LANGUAGE, TAILWIND_ICON_SIZE, TAILWIND_MODAL_DATA, TAILWIND_SOLAR_ICON_NAMES, TailwindAccordion, TailwindAccordionItem, TailwindAlert, TailwindBadge, TailwindBreadcrumb, TailwindButton, TailwindCard, TailwindCheckbox, TailwindDatePicker, TailwindDateTimePicker, TailwindDivider, TailwindDrawer, TailwindIcon, TailwindInput, TailwindInputOtp, TailwindMenu, TailwindMessage, TailwindMeter, TailwindModal, TailwindModalRef, TailwindModalService, TailwindNotification, TailwindPagination, TailwindProgressBar, TailwindRadioGroup, TailwindSelect, TailwindSkeleton, TailwindSlider, TailwindSpinner, TailwindStep, TailwindStepper, TailwindTab, TailwindTabGroup, TailwindTable, TailwindTag, TailwindTextarea, TailwindTimePicker, TailwindTitle, TailwindToast, TailwindToastService, TailwindToggle, TailwindToolbar, TailwindTooltip, TailwindTooltipDirective, TailwindUpload };
|
|
1055
1219
|
export type { Pagination, TailwindBreadcrumbItem, TailwindButtonKind, TailwindColor, TailwindIconSize, TailwindMenuItem, TailwindMeterSegment, TailwindModalConfig, TailwindOption, TailwindOptionGroup, TailwindPosition, TailwindSeverity, TailwindShape, TailwindSize, TailwindSliderValue, TailwindSolarIcon, TailwindTableColumn, TailwindTitleTag, TailwindToastConfig, TailwindToastItem };
|