sapenlinea-components 0.0.10 → 0.0.12

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/index.d.ts CHANGED
@@ -1,7 +1,25 @@
1
1
  import * as _angular_core from '@angular/core';
2
- import { OnDestroy, ElementRef, NgZone, EventEmitter } from '@angular/core';
3
- import { ControlValueAccessor } from '@angular/forms';
2
+ import { OnDestroy, ElementRef, NgZone, EventEmitter, OnInit, Type } from '@angular/core';
3
+ import { ControlValueAccessor, FormGroup, AbstractControl, FormArray } from '@angular/forms';
4
4
 
5
+ interface FilterItem {
6
+ label: string;
7
+ value: string;
8
+ type: FilterType;
9
+ placeholder: string;
10
+ minDate?: Date;
11
+ maxDate?: Date;
12
+ options?: {
13
+ label: string;
14
+ value: string;
15
+ }[];
16
+ }
17
+ type SelectedDatesMap = Record<string, Date | null>;
18
+ interface FilterOption {
19
+ label: string;
20
+ value: string;
21
+ type: 'date';
22
+ }
5
23
  interface FilterOption {
6
24
  label: string;
7
25
  value: string;
@@ -11,44 +29,40 @@ interface DateFilterSelection {
11
29
  filter: string;
12
30
  value: Date;
13
31
  }
32
+ interface DateFilterSelection {
33
+ filter: string;
34
+ value: Date;
35
+ }
14
36
  type DateTimeMode = 'date' | 'datetime';
15
- interface Hour12 {
37
+ type FilterType = DateTimeMode;
38
+
39
+ interface Hour12$1 {
16
40
  value: number;
17
41
  display: string;
18
42
  }
19
- type FilterType = DateTimeMode;
20
43
  declare class DateTimeFilter implements ControlValueAccessor, OnDestroy {
21
44
  private elementRef;
22
45
  private ngZone;
23
- mode: _angular_core.InputSignal<DateTimeMode>;
24
- placeholder: _angular_core.InputSignal<string>;
25
- minDate: _angular_core.InputSignal<Date | null>;
26
- maxDate: _angular_core.InputSignal<Date | null>;
27
- filter: _angular_core.InputSignal<string>;
46
+ filters: _angular_core.InputSignal<FilterItem[]>;
28
47
  dateSelected: _angular_core.OutputEmitterRef<DateFilterSelection>;
29
- filters: FilterOption[];
30
48
  dateChange: _angular_core.OutputEmitterRef<Date | null>;
49
+ activeFilterType: _angular_core.WritableSignal<string | null>;
31
50
  isOpen: _angular_core.WritableSignal<boolean>;
32
51
  selectedDate: _angular_core.WritableSignal<Date | null>;
33
52
  isDisabled: _angular_core.WritableSignal<boolean>;
34
53
  isTouched: _angular_core.WritableSignal<boolean>;
54
+ activeFilter: _angular_core.Signal<FilterItem | null>;
55
+ mode: _angular_core.Signal<DateTimeMode>;
56
+ placeholder: _angular_core.Signal<string>;
57
+ minDate: _angular_core.Signal<Date | null>;
58
+ maxDate: _angular_core.Signal<Date | null>;
59
+ filterValue: _angular_core.Signal<string>;
35
60
  currentMonth: _angular_core.WritableSignal<number>;
36
61
  currentYear: _angular_core.WritableSignal<number>;
37
62
  selectedHour: _angular_core.WritableSignal<number>;
38
63
  selectedMinute: _angular_core.WritableSignal<number>;
39
64
  selectedAmPm: _angular_core.WritableSignal<"AM" | "PM">;
40
65
  private documentClickListener?;
41
- showFilters: boolean;
42
- showDatePicker: boolean;
43
- activeFilterType: string | null;
44
- selectDate(date: Date): void;
45
- getDatePickerMode(type: FilterType): DateTimeMode;
46
- displayValue: _angular_core.Signal<string>;
47
- monthName: _angular_core.Signal<string>;
48
- calendarDays: _angular_core.Signal<(number | null)[]>;
49
- hours12: _angular_core.Signal<Hour12[]>;
50
- selectedHour12: _angular_core.Signal<number>;
51
- minutes: _angular_core.Signal<number[]>;
52
66
  private onChange;
53
67
  private onTouched;
54
68
  constructor(elementRef: ElementRef, ngZone: NgZone);
@@ -57,41 +71,37 @@ declare class DateTimeFilter implements ControlValueAccessor, OnDestroy {
57
71
  registerOnChange(fn: (value: string | null) => void): void;
58
72
  registerOnTouched(fn: () => void): void;
59
73
  setDisabledState(isDisabled: boolean): void;
60
- toggle(): void;
74
+ toggle(filterValue: string): void;
61
75
  open(): void;
62
76
  close(): void;
63
77
  selectDay(day: number | null): void;
64
- setHour12(hour12: number): void;
65
- setMinute(minute: number): void;
66
- setAmPm(amPm: 'AM' | 'PM'): void;
78
+ displayValue: _angular_core.Signal<string>;
79
+ monthName: _angular_core.Signal<string>;
80
+ calendarDays: _angular_core.Signal<(number | null)[]>;
81
+ hours12: _angular_core.Signal<Hour12$1[]>;
82
+ selectedHour12: _angular_core.Signal<number>;
83
+ minutes: _angular_core.Signal<number[]>;
84
+ private updateInternalState;
85
+ private resetInternalState;
86
+ private markAsTouched;
87
+ private addDocumentListener;
88
+ private removeDocumentListener;
67
89
  previousMonth(): void;
68
90
  nextMonth(): void;
69
91
  previousYear(): void;
70
92
  nextYear(): void;
71
93
  today(): void;
72
94
  clear(): void;
73
- onKeyDown(event: KeyboardEvent): void;
95
+ setHour12(hour12: number): void;
96
+ setMinute(minute: number): void;
97
+ setAmPm(amPm: 'AM' | 'PM'): void;
98
+ private updateDateTime;
74
99
  isDaySelected(day: number | null): boolean;
75
100
  isToday(day: number | null): boolean;
76
101
  isDayDisabled(day: number | null): boolean;
77
102
  isDateDisabled(date: Date): boolean;
78
- private updateDateTime;
79
- private markAsTouched;
80
- private addDocumentListener;
81
- private removeDocumentListener;
82
- markTouched(): void;
83
- /**
84
- * Obtiene la fecha seleccionada en formato ISO string
85
- * @returns string ISO o null si no hay fecha seleccionada
86
- */
87
- getISOString(): string | null;
88
- /**
89
- * Establece la fecha desde un string ISO
90
- * @param isoString - Fecha en formato ISO
91
- */
92
- setFromISOString(isoString: string | null): void;
93
103
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<DateTimeFilter, never>;
94
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<DateTimeFilter, "app-date-time-filter", never, { "mode": { "alias": "mode"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "minDate": { "alias": "minDate"; "required": false; "isSignal": true; }; "maxDate": { "alias": "maxDate"; "required": false; "isSignal": true; }; "filter": { "alias": "filter"; "required": true; "isSignal": true; }; }, { "dateSelected": "dateSelected"; "dateChange": "dateChange"; }, never, never, true, never>;
104
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<DateTimeFilter, "app-date-time-filter", never, { "filters": { "alias": "filters"; "required": false; "isSignal": true; }; }, { "dateSelected": "dateSelected"; "dateChange": "dateChange"; }, never, never, true, never>;
95
105
  }
96
106
 
97
107
  declare class PaginationComponent {
@@ -119,6 +129,10 @@ declare class PaginationComponent {
119
129
  interface TableColumn {
120
130
  key: string;
121
131
  label: string;
132
+ type?: 'text' | 'number' | 'money' | 'date' | 'percentage' | 'status';
133
+ align?: 'left' | 'right' | 'center' | 'auto';
134
+ sortable?: boolean;
135
+ showActions?: boolean;
122
136
  }
123
137
  interface TableRow {
124
138
  [key: string]: any;
@@ -128,13 +142,15 @@ interface TableAction {
128
142
  label: string;
129
143
  color?: string;
130
144
  }
131
-
132
145
  declare class Table {
133
146
  columns: _angular_core.InputSignal<TableColumn[]>;
134
147
  data: _angular_core.InputSignal<TableRow[]>;
135
148
  actions: _angular_core.InputSignal<TableAction[]>;
149
+ showActions: _angular_core.InputSignal<Boolean>;
136
150
  openedMenu: _angular_core.WritableSignal<number | null>;
137
151
  selectedRow: _angular_core.WritableSignal<TableRow | null>;
152
+ sortColumn: _angular_core.WritableSignal<string | null>;
153
+ sortDirection: _angular_core.WritableSignal<"asc" | "desc">;
138
154
  optionSelected: _angular_core.OutputEmitterRef<{
139
155
  action: string;
140
156
  row: TableRow;
@@ -143,9 +159,339 @@ declare class Table {
143
159
  onOptionClick(option: TableAction, row: TableRow): void;
144
160
  openModal(row: TableRow, event?: MouseEvent): void;
145
161
  onClickOutside(event: MouseEvent): void;
162
+ getAlignment(col: TableColumn): string;
163
+ formatValue(col: TableColumn, value: any): string;
164
+ getStatusStyle(value: string): {
165
+ bg: string;
166
+ color: string;
167
+ };
168
+ sortData(): TableRow[];
169
+ isDate(value: any): boolean;
170
+ onSort(col: TableColumn): void;
146
171
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<Table, never>;
147
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<Table, "lib-table", never, { "columns": { "alias": "columns"; "required": false; "isSignal": true; }; "data": { "alias": "data"; "required": false; "isSignal": true; }; "actions": { "alias": "actions"; "required": false; "isSignal": true; }; }, { "optionSelected": "optionSelected"; }, never, never, true, never>;
172
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<Table, "lib-table", never, { "columns": { "alias": "columns"; "required": false; "isSignal": true; }; "data": { "alias": "data"; "required": false; "isSignal": true; }; "actions": { "alias": "actions"; "required": false; "isSignal": true; }; "showActions": { "alias": "showActions"; "required": false; "isSignal": true; }; }, { "optionSelected": "optionSelected"; }, never, never, true, never>;
173
+ }
174
+
175
+ interface Hour12 {
176
+ value: number;
177
+ display: string;
178
+ }
179
+ declare class DateTimePicker implements ControlValueAccessor, OnDestroy {
180
+ private elementRef;
181
+ private ngZone;
182
+ mode: _angular_core.InputSignal<DateTimeMode>;
183
+ placeholder: _angular_core.InputSignal<string>;
184
+ minDate: _angular_core.InputSignal<Date | null>;
185
+ maxDate: _angular_core.InputSignal<Date | null>;
186
+ dateChange: _angular_core.OutputEmitterRef<Date | null>;
187
+ isOpen: _angular_core.WritableSignal<boolean>;
188
+ selectedDate: _angular_core.WritableSignal<Date | null>;
189
+ isDisabled: _angular_core.WritableSignal<boolean>;
190
+ isTouched: _angular_core.WritableSignal<boolean>;
191
+ currentMonth: _angular_core.WritableSignal<number>;
192
+ currentYear: _angular_core.WritableSignal<number>;
193
+ selectedHour: _angular_core.WritableSignal<number>;
194
+ selectedMinute: _angular_core.WritableSignal<number>;
195
+ selectedAmPm: _angular_core.WritableSignal<"AM" | "PM">;
196
+ private documentClickListener?;
197
+ displayValue: _angular_core.Signal<string>;
198
+ monthName: _angular_core.Signal<string>;
199
+ calendarDays: _angular_core.Signal<(number | null)[]>;
200
+ hours12: _angular_core.Signal<Hour12[]>;
201
+ selectedHour12: _angular_core.Signal<number>;
202
+ minutes: _angular_core.Signal<number[]>;
203
+ private onChange;
204
+ private onTouched;
205
+ constructor(elementRef: ElementRef, ngZone: NgZone);
206
+ ngOnDestroy(): void;
207
+ writeValue(value: any): void;
208
+ registerOnChange(fn: any): void;
209
+ registerOnTouched(fn: any): void;
210
+ setDisabledState(isDisabled: boolean): void;
211
+ toggle(): void;
212
+ open(): void;
213
+ close(): void;
214
+ selectDay(day: number | null): void;
215
+ setHour12(hour12: number): void;
216
+ setMinute(minute: number): void;
217
+ setAmPm(amPm: 'AM' | 'PM'): void;
218
+ previousMonth(): void;
219
+ nextMonth(): void;
220
+ previousYear(): void;
221
+ nextYear(): void;
222
+ today(): void;
223
+ clear(): void;
224
+ onKeyDown(event: KeyboardEvent): void;
225
+ isDaySelected(day: number | null): boolean;
226
+ isToday(day: number | null): boolean;
227
+ isDayDisabled(day: number | null): boolean;
228
+ isDateDisabled(date: Date): boolean;
229
+ private updateDateTime;
230
+ private markAsTouched;
231
+ private addDocumentListener;
232
+ private removeDocumentListener;
233
+ markTouched(): void;
234
+ /**
235
+ * Obtiene la fecha seleccionada en formato ISO string
236
+ * @returns string ISO o null si no hay fecha seleccionada
237
+ */
238
+ getISOString(): string | null;
239
+ /**
240
+ * Establece la fecha desde un string ISO
241
+ * @param isoString - Fecha en formato ISO
242
+ */
243
+ setFromISOString(isoString: string | null): void;
244
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<DateTimePicker, never>;
245
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<DateTimePicker, "app-date-time-picker", never, { "mode": { "alias": "mode"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "minDate": { "alias": "minDate"; "required": false; "isSignal": true; }; "maxDate": { "alias": "maxDate"; "required": false; "isSignal": true; }; }, { "dateChange": "dateChange"; }, never, never, true, never>;
246
+ }
247
+
248
+ declare class InputNumberFilter implements ControlValueAccessor, OnDestroy {
249
+ private elementRef;
250
+ private ngZone;
251
+ filters: _angular_core.InputSignal<FilterItem[]>;
252
+ clearTrigger: _angular_core.InputSignal<number>;
253
+ filterSelected: _angular_core.OutputEmitterRef<{
254
+ filter: string;
255
+ value: string;
256
+ }>;
257
+ valueChange: _angular_core.OutputEmitterRef<string | null>;
258
+ activeFilterType: _angular_core.WritableSignal<string | null>;
259
+ isOpen: _angular_core.WritableSignal<boolean>;
260
+ inputValue: _angular_core.WritableSignal<string>;
261
+ filterValues: _angular_core.WritableSignal<Record<string, string>>;
262
+ isDisabled: _angular_core.WritableSignal<boolean>;
263
+ isTouched: _angular_core.WritableSignal<boolean>;
264
+ activeFilter: _angular_core.Signal<FilterItem | null>;
265
+ placeholder: _angular_core.Signal<string>;
266
+ filterValueKey: _angular_core.Signal<string>;
267
+ private documentClickListener?;
268
+ private onChange;
269
+ private onTouched;
270
+ constructor(elementRef: ElementRef, ngZone: NgZone);
271
+ ngOnDestroy(): void;
272
+ private resetAllFilters;
273
+ writeValue(value: string | null): void;
274
+ registerOnChange(fn: (value: string | null) => void): void;
275
+ registerOnTouched(fn: () => void): void;
276
+ setDisabledState(isDisabled: boolean): void;
277
+ toggle(filterValue: string): void;
278
+ open(): void;
279
+ close(): void;
280
+ onInputChange(event: Event): void;
281
+ applyFilter(): void;
282
+ clear(): void;
283
+ private markAsTouched;
284
+ private addDocumentListener;
285
+ private removeDocumentListener;
286
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<InputNumberFilter, never>;
287
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<InputNumberFilter, "app-input-number-filter", never, { "filters": { "alias": "filters"; "required": false; "isSignal": true; }; "clearTrigger": { "alias": "clearTrigger"; "required": false; "isSignal": true; }; }, { "filterSelected": "filterSelected"; "valueChange": "valueChange"; }, never, never, true, never>;
288
+ }
289
+
290
+ declare class InputSelectFilter implements ControlValueAccessor, OnDestroy {
291
+ private elementRef;
292
+ private ngZone;
293
+ filters: _angular_core.InputSignal<FilterItem[]>;
294
+ clearTrigger: _angular_core.InputSignal<number>;
295
+ filterSelected: _angular_core.OutputEmitterRef<{
296
+ filter: string;
297
+ value: string;
298
+ }>;
299
+ valueChange: _angular_core.OutputEmitterRef<string | null>;
300
+ activeFilterType: _angular_core.WritableSignal<string | null>;
301
+ isOpen: _angular_core.WritableSignal<boolean>;
302
+ selectedLabel: _angular_core.WritableSignal<string>;
303
+ filterValues: _angular_core.WritableSignal<Record<string, string>>;
304
+ isDisabled: _angular_core.WritableSignal<boolean>;
305
+ isTouched: _angular_core.WritableSignal<boolean>;
306
+ activeFilter: _angular_core.Signal<FilterItem | null>;
307
+ placeholder: _angular_core.Signal<string>;
308
+ filterValueKey: _angular_core.Signal<string>;
309
+ options: _angular_core.Signal<{
310
+ label: string;
311
+ value: string;
312
+ }[]>;
313
+ private documentClickListener?;
314
+ private onChange;
315
+ private onTouched;
316
+ constructor(elementRef: ElementRef, ngZone: NgZone);
317
+ ngOnDestroy(): void;
318
+ private resetAllFilters;
319
+ writeValue(value: string | null): void;
320
+ registerOnChange(fn: (value: string | null) => void): void;
321
+ registerOnTouched(fn: () => void): void;
322
+ setDisabledState(isDisabled: boolean): void;
323
+ toggle(filterValue: string): void;
324
+ open(): void;
325
+ close(): void;
326
+ selectOption(option: {
327
+ label: string;
328
+ value: string;
329
+ }): void;
330
+ clear(): void;
331
+ private markAsTouched;
332
+ private addDocumentListener;
333
+ private removeDocumentListener;
334
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<InputSelectFilter, never>;
335
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<InputSelectFilter, "app-input-select-filter", never, { "filters": { "alias": "filters"; "required": false; "isSignal": true; }; "clearTrigger": { "alias": "clearTrigger"; "required": false; "isSignal": true; }; }, { "filterSelected": "filterSelected"; "valueChange": "valueChange"; }, never, never, true, never>;
336
+ }
337
+
338
+ declare class InputTextFilter implements ControlValueAccessor, OnDestroy {
339
+ private elementRef;
340
+ private ngZone;
341
+ filters: _angular_core.InputSignal<FilterItem[]>;
342
+ clearTrigger: _angular_core.InputSignal<number>;
343
+ filterSelected: _angular_core.OutputEmitterRef<{
344
+ filter: string;
345
+ value: string;
346
+ }>;
347
+ valueChange: _angular_core.OutputEmitterRef<string | null>;
348
+ activeFilterType: _angular_core.WritableSignal<string | null>;
349
+ isOpen: _angular_core.WritableSignal<boolean>;
350
+ inputValue: _angular_core.WritableSignal<string>;
351
+ filterValues: _angular_core.WritableSignal<Record<string, string>>;
352
+ isDisabled: _angular_core.WritableSignal<boolean>;
353
+ isTouched: _angular_core.WritableSignal<boolean>;
354
+ activeFilter: _angular_core.Signal<FilterItem | null>;
355
+ placeholder: _angular_core.Signal<string>;
356
+ filterValueKey: _angular_core.Signal<string>;
357
+ private documentClickListener?;
358
+ private onChange;
359
+ private onTouched;
360
+ constructor(elementRef: ElementRef, ngZone: NgZone);
361
+ ngOnDestroy(): void;
362
+ private resetAllFilters;
363
+ writeValue(value: string | null): void;
364
+ registerOnChange(fn: (value: string | null) => void): void;
365
+ registerOnTouched(fn: () => void): void;
366
+ setDisabledState(isDisabled: boolean): void;
367
+ toggle(filterValue: string): void;
368
+ open(): void;
369
+ close(): void;
370
+ onInputChange(event: Event): void;
371
+ applyFilter(): void;
372
+ clear(): void;
373
+ private markAsTouched;
374
+ private addDocumentListener;
375
+ private removeDocumentListener;
376
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<InputTextFilter, never>;
377
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<InputTextFilter, "app-input-text-filter", never, { "filters": { "alias": "filters"; "required": false; "isSignal": true; }; "clearTrigger": { "alias": "clearTrigger"; "required": false; "isSignal": true; }; }, { "filterSelected": "filterSelected"; "valueChange": "valueChange"; }, never, never, true, never>;
378
+ }
379
+
380
+ interface Option$1 {
381
+ value: any;
382
+ label: string;
383
+ }
384
+ declare class SelectCustomSearch implements ControlValueAccessor {
385
+ private elementRef;
386
+ options: _angular_core.InputSignal<Option$1[]>;
387
+ placeholder: _angular_core.InputSignal<string>;
388
+ selectionChange: _angular_core.OutputEmitterRef<Option$1 | null>;
389
+ isOpen: _angular_core.WritableSignal<boolean>;
390
+ searchTerm: _angular_core.WritableSignal<string>;
391
+ selectedValue: _angular_core.WritableSignal<any>;
392
+ isDisabled: _angular_core.WritableSignal<boolean>;
393
+ selectedOption: _angular_core.Signal<Option$1 | null>;
394
+ filteredOptions: _angular_core.Signal<Option$1[]>;
395
+ private onChange;
396
+ private onTouched;
397
+ constructor(elementRef: ElementRef);
398
+ writeValue(value: any): void;
399
+ registerOnChange(fn: any): void;
400
+ registerOnTouched(fn: any): void;
401
+ setDisabledState(isDisabled: boolean): void;
402
+ toggle(): void;
403
+ open(): void;
404
+ close(): void;
405
+ selectOption(option: Option$1): void;
406
+ onSearch(event: Event): void;
407
+ onKeyDown(event: KeyboardEvent): void;
408
+ onDocumentClick(event: Event): void;
409
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SelectCustomSearch, never>;
410
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SelectCustomSearch, "app-select-custom-search", never, { "options": { "alias": "options"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; }, { "selectionChange": "selectionChange"; }, never, never, true, never>;
411
+ }
412
+
413
+ type FieldType = 'text' | 'email' | 'number' | 'date' | 'datetime-local' | 'select' | 'radio' | 'checkbox' | 'textarea' | 'disabled' | 'password' | 'time' | 'file';
414
+ interface Option {
415
+ value: string | number | boolean;
416
+ label: string;
417
+ }
418
+ interface FieldConfig {
419
+ key: string;
420
+ label?: string;
421
+ type: FieldType;
422
+ placeholder?: string;
423
+ required?: boolean;
424
+ options?: Option[];
425
+ col?: number;
426
+ disabled?: boolean;
427
+ readonly?: boolean;
428
+ matchWith?: string;
429
+ copyFrom?: string;
430
+ pattern?: string;
431
+ patternType?: 'numbers' | 'phone' | 'custom' | 'text' | 'username' | 'alphanumeric';
432
+ minDate?: Date;
433
+ maxDate?: Date;
434
+ }
435
+ interface SectionConfig {
436
+ title?: string;
437
+ description?: string;
438
+ fields: FieldConfig[];
439
+ }
440
+ declare class DynamicFormFields implements OnInit, OnDestroy {
441
+ form: _angular_core.InputSignal<FormGroup<any>>;
442
+ sections: _angular_core.InputSignal<SectionConfig[]>;
443
+ private copyFromSubscriptions;
444
+ private realTimeCopySubscriptions;
445
+ ngOnInit(): void;
446
+ getDatePickerMode(fieldType: FieldType): 'date' | 'datetime';
447
+ private setupCopyFromLogic;
448
+ private setupFieldCopy;
449
+ private findTriggerField;
450
+ private setupSimpleCopy;
451
+ private setupRealTimeCopy;
452
+ private removeRealTimeCopy;
453
+ ctrl: (key: string) => AbstractControl | null;
454
+ getCheckboxArray(key: string): FormArray;
455
+ onCheckboxChange(event: Event, fieldKey: string, optionIndex: number): void;
456
+ ngOnDestroy(): void;
457
+ onCancel(): void;
458
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<DynamicFormFields, never>;
459
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<DynamicFormFields, "app-dynamic-form-fields", never, { "form": { "alias": "form"; "required": true; "isSignal": true; }; "sections": { "alias": "sections"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
460
+ }
461
+
462
+ interface ModalFormStep {
463
+ key: string;
464
+ label: string;
465
+ component: Type<any>;
466
+ }
467
+ declare class ModalForm {
468
+ title: _angular_core.InputSignal<string>;
469
+ submitLabel: _angular_core.InputSignal<string>;
470
+ form: _angular_core.InputSignal<FormGroup<any> | undefined>;
471
+ steps: _angular_core.InputSignal<ModalFormStep[]>;
472
+ currentStep: _angular_core.WritableSignal<number>;
473
+ canContinue: _angular_core.WritableSignal<boolean>;
474
+ onSubmit: _angular_core.OutputEmitterRef<any>;
475
+ onCancel: _angular_core.OutputEmitterRef<void>;
476
+ nextStep(): void;
477
+ prevStep(): void;
478
+ submitForm(): void;
479
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<ModalForm, never>;
480
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<ModalForm, "lib-modal-form", never, { "title": { "alias": "title"; "required": false; "isSignal": true; }; "submitLabel": { "alias": "submitLabel"; "required": false; "isSignal": true; }; "form": { "alias": "form"; "required": false; "isSignal": true; }; "steps": { "alias": "steps"; "required": false; "isSignal": true; }; }, { "onSubmit": "onSubmit"; "onCancel": "onCancel"; }, never, never, true, never>;
481
+ }
482
+
483
+ declare class WizardForm {
484
+ form: _angular_core.InputSignal<FormGroup<any> | undefined>;
485
+ currentStep: _angular_core.InputSignal<number>;
486
+ steps: _angular_core.InputSignal<ModalFormStep[]>;
487
+ canContinue: _angular_core.OutputEmitterRef<boolean>;
488
+ currentStepKey: _angular_core.Signal<string>;
489
+ currentGroup: _angular_core.Signal<FormGroup<any> | null>;
490
+ constructor();
491
+ currentGroupComponent: _angular_core.Signal<_angular_core.Type<any>>;
492
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<WizardForm, never>;
493
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<WizardForm, "lib-wizard-form", never, { "form": { "alias": "form"; "required": false; "isSignal": true; }; "currentStep": { "alias": "currentStep"; "required": false; "isSignal": true; }; "steps": { "alias": "steps"; "required": false; "isSignal": true; }; }, { "canContinue": "canContinue"; }, never, never, true, never>;
148
494
  }
149
495
 
150
- export { DateTimeFilter, PaginationComponent, Table };
151
- export type { DateFilterSelection, DateTimeMode, FilterOption, FilterType };
496
+ export { DateTimeFilter, DateTimePicker, DynamicFormFields, InputNumberFilter, InputSelectFilter, InputTextFilter, ModalForm, PaginationComponent, SelectCustomSearch, Table, WizardForm };
497
+ export type { DateFilterSelection, DateTimeMode, FieldConfig, FilterItem, FilterOption, FilterType, ModalFormStep, Option, SectionConfig, SelectedDatesMap, TableAction, TableColumn, TableRow };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "sapenlinea-components",
3
- "version": "0.0.10",
3
+ "version": "0.0.12",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^20.3.0",
6
6
  "@angular/core": "^20.3.0"