nexheal-lib 0.0.3 → 0.0.4

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 (56) hide show
  1. package/README.md +19 -15
  2. package/fesm2022/nexheal-lib.mjs +2837 -0
  3. package/fesm2022/nexheal-lib.mjs.map +1 -0
  4. package/index.d.ts +498 -0
  5. package/package.json +23 -47
  6. package/.editorconfig +0 -17
  7. package/.vscode/extensions.json +0 -4
  8. package/.vscode/launch.json +0 -20
  9. package/.vscode/tasks.json +0 -42
  10. package/angular.json +0 -36
  11. package/projects/nexheal-lib/README.md +0 -63
  12. package/projects/nexheal-lib/ng-package.json +0 -9
  13. package/projects/nexheal-lib/package.json +0 -12
  14. package/projects/nexheal-lib/src/directives/clickoutside.directive.ts +0 -34
  15. package/projects/nexheal-lib/src/lib/controls/autocomplete-control/autocomplete-control.component.html +0 -52
  16. package/projects/nexheal-lib/src/lib/controls/autocomplete-control/autocomplete-control.component.scss +0 -22
  17. package/projects/nexheal-lib/src/lib/controls/autocomplete-control/autocomplete-control.component.spec.ts +0 -22
  18. package/projects/nexheal-lib/src/lib/controls/autocomplete-control/autocomplete-control.component.ts +0 -367
  19. package/projects/nexheal-lib/src/lib/controls/calendar-control/calendar-control.component.html +0 -152
  20. package/projects/nexheal-lib/src/lib/controls/calendar-control/calendar-control.component.scss +0 -194
  21. package/projects/nexheal-lib/src/lib/controls/calendar-control/calendar-control.component.spec.ts +0 -22
  22. package/projects/nexheal-lib/src/lib/controls/calendar-control/calendar-control.component.ts +0 -759
  23. package/projects/nexheal-lib/src/lib/controls/checkbox-control/checkbox-control.component.html +0 -4
  24. package/projects/nexheal-lib/src/lib/controls/checkbox-control/checkbox-control.component.spec.ts +0 -22
  25. package/projects/nexheal-lib/src/lib/controls/checkbox-control/checkbox-control.component.ts +0 -94
  26. package/projects/nexheal-lib/src/lib/controls/input-control/input-control.component.html +0 -61
  27. package/projects/nexheal-lib/src/lib/controls/input-control/input-control.component.scss +0 -132
  28. package/projects/nexheal-lib/src/lib/controls/input-control/input-control.component.spec.ts +0 -22
  29. package/projects/nexheal-lib/src/lib/controls/input-control/input-control.component.ts +0 -202
  30. package/projects/nexheal-lib/src/lib/controls/multiselect-control/multiselect-control.component.html +0 -72
  31. package/projects/nexheal-lib/src/lib/controls/multiselect-control/multiselect-control.component.scss +0 -90
  32. package/projects/nexheal-lib/src/lib/controls/multiselect-control/multiselect-control.component.spec.ts +0 -22
  33. package/projects/nexheal-lib/src/lib/controls/multiselect-control/multiselect-control.component.ts +0 -482
  34. package/projects/nexheal-lib/src/lib/controls/select-control/select-control.component.html +0 -53
  35. package/projects/nexheal-lib/src/lib/controls/select-control/select-control.component.scss +0 -19
  36. package/projects/nexheal-lib/src/lib/controls/select-control/select-control.component.spec.ts +0 -22
  37. package/projects/nexheal-lib/src/lib/controls/select-control/select-control.component.ts +0 -375
  38. package/projects/nexheal-lib/src/lib/controls/switch-control/switch-control.component.html +0 -4
  39. package/projects/nexheal-lib/src/lib/controls/switch-control/switch-control.component.scss +0 -53
  40. package/projects/nexheal-lib/src/lib/controls/switch-control/switch-control.component.spec.ts +0 -22
  41. package/projects/nexheal-lib/src/lib/controls/switch-control/switch-control.component.ts +0 -93
  42. package/projects/nexheal-lib/src/lib/controls/text-editor/text-editor.component.html +0 -88
  43. package/projects/nexheal-lib/src/lib/controls/text-editor/text-editor.component.scss +0 -122
  44. package/projects/nexheal-lib/src/lib/controls/text-editor/text-editor.component.spec.ts +0 -22
  45. package/projects/nexheal-lib/src/lib/controls/text-editor/text-editor.component.ts +0 -314
  46. package/projects/nexheal-lib/src/lib/controls/textarea-control/textarea-control.component.html +0 -19
  47. package/projects/nexheal-lib/src/lib/controls/textarea-control/textarea-control.component.scss +0 -15
  48. package/projects/nexheal-lib/src/lib/controls/textarea-control/textarea-control.component.spec.ts +0 -22
  49. package/projects/nexheal-lib/src/lib/controls/textarea-control/textarea-control.component.ts +0 -83
  50. package/projects/nexheal-lib/src/public-api.ts +0 -13
  51. package/projects/nexheal-lib/tsconfig.lib.json +0 -18
  52. package/projects/nexheal-lib/tsconfig.lib.prod.json +0 -11
  53. package/projects/nexheal-lib/tsconfig.spec.json +0 -14
  54. package/tsconfig.json +0 -39
  55. /package/{projects/nexheal-lib/src → src}/styles/_formcontrols.scss +0 -0
  56. /package/{projects/nexheal-lib/src → src}/styles/nexheal.scss +0 -0
package/index.d.ts ADDED
@@ -0,0 +1,498 @@
1
+ import * as i0 from '@angular/core';
2
+ import { OnInit, OnDestroy, AfterViewInit, EventEmitter, ElementRef, Renderer2, ChangeDetectorRef, SimpleChanges } from '@angular/core';
3
+ import { ControlValueAccessor, FormControl } from '@angular/forms';
4
+ import { DatePipe } from '@angular/common';
5
+ import { Subject } from 'rxjs';
6
+
7
+ declare class AutocompleteControl implements ControlValueAccessor, OnInit, OnDestroy, AfterViewInit {
8
+ private subscription;
9
+ title: string;
10
+ required: boolean;
11
+ placeholder: string;
12
+ customClass: string;
13
+ clearVal: boolean;
14
+ field: string;
15
+ error: boolean;
16
+ errorMessage: string;
17
+ autocomplete: string;
18
+ inputLoader: boolean;
19
+ isAddNewItem: boolean;
20
+ optionDisplayProperty: string;
21
+ optionSelected: EventEmitter<any>;
22
+ search: EventEmitter<string>;
23
+ selectionCleared: EventEmitter<void>;
24
+ addNewItemClicked: EventEmitter<void>;
25
+ blurEvent: EventEmitter<void>;
26
+ optionPatched: EventEmitter<any>;
27
+ private _disabled;
28
+ private _options;
29
+ set options(value: any[]);
30
+ get options(): any[];
31
+ get disabled(): boolean;
32
+ set disabled(value: boolean);
33
+ private valueBuffer;
34
+ private popperInstance;
35
+ private preventDropdownReopen;
36
+ private preventClearOnBlur;
37
+ private onChange;
38
+ private onTouched;
39
+ inputElement: ElementRef;
40
+ dropdownElement: ElementRef;
41
+ inputControl: FormControl<string | null>;
42
+ isDropdownOpen: boolean;
43
+ hasFocus: boolean;
44
+ selectedItems: any;
45
+ filteredSuggestions: any[];
46
+ highlightedIndex: number | null;
47
+ constructor();
48
+ ngOnInit(): void;
49
+ ngAfterViewInit(): void;
50
+ ngOnDestroy(): void;
51
+ writeValue(value: any): void;
52
+ private processValueBuffer;
53
+ registerOnChange(fn: any): void;
54
+ registerOnTouched(fn: any): void;
55
+ setDisabledState?(isDisabled: boolean): void;
56
+ filterSuggestions(value: string): void;
57
+ selectSuggestion(suggestion: any): void;
58
+ onFocus(): void;
59
+ onBlur(): void;
60
+ onKeyDown(event: KeyboardEvent): void;
61
+ onOptionMouseDown(): void;
62
+ onMouseOver(index: number): void;
63
+ onAddNewItemClick(): void;
64
+ private createPopperInstance;
65
+ private scrollHighlightedItemIntoView;
66
+ resetInput(): void;
67
+ removeItem(item: any): void;
68
+ static ɵfac: i0.ɵɵFactoryDeclaration<AutocompleteControl, never>;
69
+ static ɵcmp: i0.ɵɵComponentDeclaration<AutocompleteControl, "autocomplete-control", never, { "title": { "alias": "title"; "required": false; }; "required": { "alias": "required"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "customClass": { "alias": "customClass"; "required": false; }; "clearVal": { "alias": "clearVal"; "required": false; }; "field": { "alias": "field"; "required": false; }; "error": { "alias": "error"; "required": false; }; "errorMessage": { "alias": "errorMessage"; "required": false; }; "autocomplete": { "alias": "autocomplete"; "required": false; }; "inputLoader": { "alias": "inputLoader"; "required": false; }; "isAddNewItem": { "alias": "isAddNewItem"; "required": false; }; "optionDisplayProperty": { "alias": "optionDisplayProperty"; "required": false; }; "options": { "alias": "options"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; }, { "optionSelected": "optionSelected"; "search": "search"; "selectionCleared": "selectionCleared"; "addNewItemClicked": "addNewItemClicked"; "blurEvent": "blurEvent"; "optionPatched": "optionPatched"; }, never, never, true, never>;
70
+ }
71
+
72
+ type ViewMode = "day" | "month" | "yearRange";
73
+ declare class CalendarControl implements ControlValueAccessor, OnInit, OnDestroy {
74
+ datePipe: DatePipe;
75
+ title: string;
76
+ required: boolean;
77
+ customClass: string | object;
78
+ clearVal: boolean;
79
+ deFocus: boolean;
80
+ error: boolean;
81
+ errorMessage: string;
82
+ inputLoader: boolean;
83
+ hourFormat: string;
84
+ selectionMode: string;
85
+ timeOnly: boolean;
86
+ dateFormat: string;
87
+ placeholder: string;
88
+ disabled: boolean;
89
+ readonly: boolean;
90
+ submitted: boolean;
91
+ inputPlaceholder: boolean;
92
+ closeVal: boolean;
93
+ showTime: boolean;
94
+ selectionCleared: EventEmitter<void>;
95
+ blurEvent: EventEmitter<void>;
96
+ dateSelected: EventEmitter<Date | null>;
97
+ private _minDate?;
98
+ private _maxDate?;
99
+ get minDate(): string | undefined;
100
+ set minDate(value: string | undefined);
101
+ get maxDate(): string | undefined;
102
+ set maxDate(value: string | undefined);
103
+ get meridian(): 'AM' | 'PM';
104
+ private static _currentlyOpen?;
105
+ private onChangeFn;
106
+ private onTouchedFn;
107
+ private popperInstance;
108
+ rootElement: ElementRef;
109
+ inputEl: ElementRef<HTMLElement>;
110
+ datePickerEl: ElementRef<HTMLElement>;
111
+ isOpen: boolean;
112
+ focus: boolean;
113
+ displayMonth: number;
114
+ displayYear: number;
115
+ selectedDate: Date | null;
116
+ today: Date;
117
+ todayYear: number;
118
+ todayMonth: number;
119
+ todayDate: number;
120
+ selectedHour: number;
121
+ selectedMinute: number;
122
+ dayClassMap: {
123
+ [day: number]: {
124
+ disabled: boolean;
125
+ selected: boolean;
126
+ today: boolean;
127
+ };
128
+ };
129
+ inputVal: string | null;
130
+ yearRangeSize: number;
131
+ currentView: ViewMode;
132
+ inputControl: FormControl;
133
+ constructor(datePipe: DatePipe);
134
+ ngOnInit(): void;
135
+ ngAfterViewChecked(): void;
136
+ ngAfterViewInit(): void;
137
+ ngOnDestroy(): void;
138
+ writeValue(value: any): void;
139
+ registerOnChange(fn: (value: string | null) => void): void;
140
+ registerOnTouched(fn: () => void): void;
141
+ setData(config: any): void;
142
+ onBlur(): void;
143
+ onFocus(): void;
144
+ setDisabledState(isDisabled: boolean): void;
145
+ onInputKeydown(event: KeyboardEvent): void;
146
+ selectDay(day: number | null): void;
147
+ get daysInMonth(): (number | null)[];
148
+ parseDate(val: any): Date | null;
149
+ formatOutput(date: Date): string;
150
+ isSelectedDay(day: number | null): boolean;
151
+ isDateDisabled(d: Date): boolean;
152
+ isDayDisabled(day: number | null): boolean;
153
+ goToMonthView(): void;
154
+ months: string[];
155
+ selectMonth(index: number): void;
156
+ get displayMonthName(): string;
157
+ prevMonth(): void;
158
+ nextMonth(): void;
159
+ goToYearRangeView(): void;
160
+ get yearRange(): number[];
161
+ getStartYearForRange(): number;
162
+ selectYear(year: number): void;
163
+ prevYearRange(): void;
164
+ nextYearRange(): void;
165
+ private formatOutputTimeOnly;
166
+ private patchDateWithTime;
167
+ setMeridian(value: "AM" | "PM"): void;
168
+ private buildDateWithTime;
169
+ incrementHour(): void;
170
+ decrementHour(): void;
171
+ incrementMinute(): void;
172
+ decrementMinute(): void;
173
+ initializePopper(): void;
174
+ destroyPopper(): void;
175
+ toggleCalendar(): void;
176
+ openCalendar(): void;
177
+ clickOutside(event: Event): void;
178
+ closeCalendar(): void;
179
+ clearDate(event: Event): void;
180
+ static ɵfac: i0.ɵɵFactoryDeclaration<CalendarControl, never>;
181
+ static ɵcmp: i0.ɵɵComponentDeclaration<CalendarControl, "calendar-control", never, { "title": { "alias": "title"; "required": false; }; "required": { "alias": "required"; "required": false; }; "customClass": { "alias": "customClass"; "required": false; }; "clearVal": { "alias": "clearVal"; "required": false; }; "deFocus": { "alias": "deFocus"; "required": false; }; "error": { "alias": "error"; "required": false; }; "errorMessage": { "alias": "errorMessage"; "required": false; }; "inputLoader": { "alias": "inputLoader"; "required": false; }; "hourFormat": { "alias": "hourFormat"; "required": false; }; "selectionMode": { "alias": "selectionMode"; "required": false; }; "timeOnly": { "alias": "timeOnly"; "required": false; }; "dateFormat": { "alias": "dateFormat"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "readonly": { "alias": "readonly"; "required": false; }; "submitted": { "alias": "submitted"; "required": false; }; "inputPlaceholder": { "alias": "inputPlaceholder"; "required": false; }; "closeVal": { "alias": "close-val"; "required": false; }; "showTime": { "alias": "showTime"; "required": false; }; "minDate": { "alias": "minDate"; "required": false; }; "maxDate": { "alias": "maxDate"; "required": false; }; }, { "selectionCleared": "selectionCleared"; "blurEvent": "blurEvent"; "dateSelected": "dateSelected"; }, never, never, true, never>;
182
+ }
183
+
184
+ declare class CheckboxControl implements ControlValueAccessor {
185
+ private _renderer;
186
+ private _elementRef;
187
+ title: string;
188
+ customClass: string;
189
+ type: 'boolean' | 'number' | 'string';
190
+ set disabled(value: boolean);
191
+ checkboxChange: EventEmitter<boolean>;
192
+ blurEvent: EventEmitter<void>;
193
+ checkboxContainer: ElementRef;
194
+ private _disabled;
195
+ checkboxControl: FormControl<boolean | null>;
196
+ private onChange;
197
+ private onTouched;
198
+ constructor(_renderer: Renderer2, _elementRef: ElementRef);
199
+ writeValue(value: any): void;
200
+ registerOnChange(fn: any): void;
201
+ registerOnTouched(fn: any): void;
202
+ convertType(value: any): any;
203
+ onFocus(event: FocusEvent): void;
204
+ onBlur(): void;
205
+ setDisabledState(isDisabled: boolean): void;
206
+ static ɵfac: i0.ɵɵFactoryDeclaration<CheckboxControl, never>;
207
+ static ɵcmp: i0.ɵɵComponentDeclaration<CheckboxControl, "checkbox-control", never, { "title": { "alias": "title"; "required": false; }; "customClass": { "alias": "customClass"; "required": false; }; "type": { "alias": "type"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; }, { "checkboxChange": "checkboxChange"; "blurEvent": "blurEvent"; }, never, never, true, never>;
208
+ }
209
+
210
+ declare class InputControl implements ControlValueAccessor, OnInit, OnDestroy {
211
+ type: "text" | "password" | "decimal" | "number" | "email" | "search";
212
+ title: string;
213
+ placeholder: string;
214
+ customClass: string;
215
+ clearVal: boolean;
216
+ required: boolean;
217
+ deFocus: boolean;
218
+ error: boolean;
219
+ errorMessage: string;
220
+ autocomplete: string;
221
+ readonly: boolean;
222
+ search: boolean;
223
+ price: boolean;
224
+ maxlength: number;
225
+ ngModel: string;
226
+ advSearch: boolean;
227
+ inputLoader: boolean;
228
+ useReactiveForms: boolean;
229
+ blurEvent: EventEmitter<void>;
230
+ selectionCleared: EventEmitter<void>;
231
+ inputChange: EventEmitter<string>;
232
+ ngModelChange: EventEmitter<string>;
233
+ searchClicked: EventEmitter<void>;
234
+ advSearchClicked: EventEmitter<void>;
235
+ private _disabled;
236
+ set disabled(isDisabled: boolean);
237
+ get disabled(): boolean;
238
+ private valueChangesSubscription;
239
+ private onChange;
240
+ private onTouched;
241
+ isFocused: boolean;
242
+ showPassword: boolean;
243
+ inputControl: FormControl<string | null>;
244
+ ngOnInit(): void;
245
+ ngOnDestroy(): void;
246
+ getInputType(): "number" | "search" | "text" | "password" | "decimal" | "email";
247
+ writeValue(value: any): void;
248
+ registerOnChange(fn: any): void;
249
+ registerOnTouched(fn: any): void;
250
+ onBlur(): void;
251
+ onFocus(): void;
252
+ onKeyPress(event: KeyboardEvent): void;
253
+ setDisabledState(isDisabled: boolean): void;
254
+ passwordVisible(): void;
255
+ onSearchClick(): void;
256
+ onAdvSearchClick(): void;
257
+ showClearButton(): boolean | "" | null;
258
+ resetInput(): void;
259
+ static ɵfac: i0.ɵɵFactoryDeclaration<InputControl, never>;
260
+ static ɵcmp: i0.ɵɵComponentDeclaration<InputControl, "input-control", never, { "type": { "alias": "type"; "required": false; }; "title": { "alias": "title"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "customClass": { "alias": "customClass"; "required": false; }; "clearVal": { "alias": "clearVal"; "required": false; }; "required": { "alias": "required"; "required": false; }; "deFocus": { "alias": "deFocus"; "required": false; }; "error": { "alias": "error"; "required": false; }; "errorMessage": { "alias": "errorMessage"; "required": false; }; "autocomplete": { "alias": "autocomplete"; "required": false; }; "readonly": { "alias": "readonly"; "required": false; }; "search": { "alias": "search"; "required": false; }; "price": { "alias": "price"; "required": false; }; "maxlength": { "alias": "maxlength"; "required": false; }; "ngModel": { "alias": "ngModel"; "required": false; }; "advSearch": { "alias": "advSearch"; "required": false; }; "inputLoader": { "alias": "inputLoader"; "required": false; }; "useReactiveForms": { "alias": "useReactiveForms"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; }, { "blurEvent": "blurEvent"; "selectionCleared": "selectionCleared"; "inputChange": "inputChange"; "ngModelChange": "ngModelChange"; "searchClicked": "searchClicked"; "advSearchClicked": "advSearchClicked"; }, never, never, true, never>;
261
+ }
262
+
263
+ declare class MultiselectControl implements ControlValueAccessor, OnInit, OnDestroy {
264
+ private cdRef;
265
+ private subscription;
266
+ title: string;
267
+ selectedItems: any[];
268
+ required: boolean;
269
+ placeholder: string;
270
+ customClass: string;
271
+ clearVal: boolean;
272
+ deFocus: boolean;
273
+ optionValueProperty: string;
274
+ inputLoader: boolean;
275
+ error: boolean;
276
+ errorMessage: string;
277
+ autocomplete: string;
278
+ showSearch: boolean;
279
+ optionDisplayProperty: string;
280
+ optionsSelected: EventEmitter<any[]>;
281
+ selectionCleared: EventEmitter<void>;
282
+ blurEvent: EventEmitter<void>;
283
+ inputControl: FormControl;
284
+ private _options;
285
+ set options(arr: any[]);
286
+ get options(): any[];
287
+ private _disabled;
288
+ get disabled(): boolean;
289
+ set disabled(value: boolean);
290
+ private _isPrimitivePatch;
291
+ private _pendingPrimitiveValues;
292
+ private onChange;
293
+ private onTouched;
294
+ dropdown: ElementRef;
295
+ input: ElementRef;
296
+ filteredOptions: any[];
297
+ isDropdownOpen: boolean;
298
+ selectAllChecked: boolean;
299
+ keySearch: string;
300
+ onSearch: Subject<string>;
301
+ selectedItemList: string;
302
+ highlightedIndex: number | null;
303
+ private dropdownInitialized;
304
+ private popperInstance;
305
+ constructor(cdRef: ChangeDetectorRef);
306
+ ngOnInit(): void;
307
+ ngAfterViewChecked(): void;
308
+ ngOnDestroy(): void;
309
+ ngOnChanges(changes: SimpleChanges): void;
310
+ writeValue(value: any): void;
311
+ private _mapPrimitivesToObjects;
312
+ registerOnChange(fn: any): void;
313
+ registerOnTouched(fn: any): void;
314
+ isSelected(option: any): boolean;
315
+ onBlur(event: FocusEvent): void;
316
+ setDisabledState(isDisabled: boolean): void;
317
+ handleInput(event: Event): void;
318
+ private _applyFilter;
319
+ private _recomputeSelectAllState;
320
+ onSelectAllChange(event: Event): void;
321
+ private _toggleSelectAll;
322
+ removeSelectedOption(option: any): void;
323
+ toggleCheckbox(option: any): void;
324
+ onKeyDown(event: KeyboardEvent): void;
325
+ handleWindowKeydown(event: KeyboardEvent): void;
326
+ private _highlightNext;
327
+ private _highlightPrevious;
328
+ private _scrollToHighlighted;
329
+ private _createPopperInstance;
330
+ toggleDropdown(): void;
331
+ selectListOutsideClick(): void;
332
+ resetSelection(): void;
333
+ onCloseDropdown(): void;
334
+ static ɵfac: i0.ɵɵFactoryDeclaration<MultiselectControl, never>;
335
+ static ɵcmp: i0.ɵɵComponentDeclaration<MultiselectControl, "multiselect-control", never, { "title": { "alias": "title"; "required": false; }; "selectedItems": { "alias": "selectedItems"; "required": false; }; "required": { "alias": "required"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "customClass": { "alias": "customClass"; "required": false; }; "clearVal": { "alias": "clearVal"; "required": false; }; "deFocus": { "alias": "deFocus"; "required": false; }; "optionValueProperty": { "alias": "optionValueProperty"; "required": false; }; "inputLoader": { "alias": "inputLoader"; "required": false; }; "error": { "alias": "error"; "required": false; }; "errorMessage": { "alias": "errorMessage"; "required": false; }; "autocomplete": { "alias": "autocomplete"; "required": false; }; "showSearch": { "alias": "showSearch"; "required": false; }; "optionDisplayProperty": { "alias": "optionDisplayProperty"; "required": false; }; "options": { "alias": "options"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; }, { "optionsSelected": "optionsSelected"; "selectionCleared": "selectionCleared"; "blurEvent": "blurEvent"; }, never, never, true, never>;
336
+ }
337
+
338
+ declare class SelectControl implements ControlValueAccessor, OnInit, OnDestroy {
339
+ private subscription;
340
+ optionDisplayProperty: string;
341
+ required: boolean;
342
+ placeholder: string;
343
+ customClass: string;
344
+ clearVal: boolean;
345
+ deFocus: boolean;
346
+ error: boolean;
347
+ errorMessage: string;
348
+ autocomplete: string;
349
+ inputLoader: boolean;
350
+ isAddNewItem: boolean;
351
+ optionSelected: EventEmitter<any>;
352
+ selectionCleared: EventEmitter<void>;
353
+ addNewItemClicked: EventEmitter<void>;
354
+ blurEvent: EventEmitter<void>;
355
+ optionPatched: EventEmitter<any>;
356
+ title: string;
357
+ private _options;
358
+ set options(opts: any[]);
359
+ get options(): any[];
360
+ get disabled(): boolean;
361
+ set disabled(value: boolean);
362
+ dropdown: ElementRef;
363
+ input: ElementRef;
364
+ filteredOptions: any[];
365
+ keySearch: string;
366
+ selectedItem: any;
367
+ onSearch: Subject<string>;
368
+ inputControl: FormControl;
369
+ isDropdownOpen: boolean;
370
+ highlightedIndex: number | null;
371
+ private onChange;
372
+ private onTouched;
373
+ private valueBuffer;
374
+ private _disabled;
375
+ private dropdownInitialized;
376
+ private popperInstance;
377
+ ngOnInit(): void;
378
+ ngAfterViewChecked(): void;
379
+ ngOnChanges(changes: SimpleChanges): void;
380
+ ngOnDestroy(): void;
381
+ writeValue(value: any): void;
382
+ processValueBuffer(): void;
383
+ registerOnChange(fn: any): void;
384
+ registerOnTouched(fn: any): void;
385
+ onBlur(): void;
386
+ onKeyDown(event: KeyboardEvent): void;
387
+ setDisabledState(isDisabled: boolean): void;
388
+ selectOption(option: any): void;
389
+ highlightSelectedItem(): void;
390
+ highlightNext(): void;
391
+ highlightPrevious(): void;
392
+ focusOption(value: string): void;
393
+ scrollToHighlighted(): void;
394
+ onAddNewItemClick(): void;
395
+ createPopperInstance(): void;
396
+ toggleDropdown(): void;
397
+ openDropdown(event: KeyboardEvent): void;
398
+ selectListOutsideClick(e: Event): void;
399
+ hideDropdown(): void;
400
+ resetSelection(): void;
401
+ static ɵfac: i0.ɵɵFactoryDeclaration<SelectControl, never>;
402
+ static ɵcmp: i0.ɵɵComponentDeclaration<SelectControl, "select-control", never, { "optionDisplayProperty": { "alias": "optionDisplayProperty"; "required": false; }; "required": { "alias": "required"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "customClass": { "alias": "customClass"; "required": false; }; "clearVal": { "alias": "clearVal"; "required": false; }; "deFocus": { "alias": "deFocus"; "required": false; }; "error": { "alias": "error"; "required": false; }; "errorMessage": { "alias": "errorMessage"; "required": false; }; "autocomplete": { "alias": "autocomplete"; "required": false; }; "inputLoader": { "alias": "inputLoader"; "required": false; }; "isAddNewItem": { "alias": "isAddNewItem"; "required": false; }; "title": { "alias": "title"; "required": false; }; "options": { "alias": "options"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; }, { "optionSelected": "optionSelected"; "selectionCleared": "selectionCleared"; "addNewItemClicked": "addNewItemClicked"; "blurEvent": "blurEvent"; "optionPatched": "optionPatched"; }, never, never, true, never>;
403
+ }
404
+
405
+ declare class SwitchControl implements ControlValueAccessor {
406
+ private _renderer;
407
+ private _elementRef;
408
+ title: string;
409
+ customClass: string;
410
+ set disabled(value: boolean);
411
+ set checked(value: boolean);
412
+ switchChange: EventEmitter<boolean>;
413
+ blurEvent: EventEmitter<void>;
414
+ switchContainer: ElementRef;
415
+ get checked(): boolean;
416
+ private _checked;
417
+ private _disabled;
418
+ switchControl: FormControl<boolean | null>;
419
+ private onChange;
420
+ private onTouched;
421
+ constructor(_renderer: Renderer2, _elementRef: ElementRef);
422
+ writeValue(value: any): void;
423
+ registerOnChange(fn: any): void;
424
+ registerOnTouched(fn: any): void;
425
+ onFocus(): void;
426
+ onBlur(): void;
427
+ setDisabledState(isDisabled: boolean): void;
428
+ static ɵfac: i0.ɵɵFactoryDeclaration<SwitchControl, never>;
429
+ static ɵcmp: i0.ɵɵComponentDeclaration<SwitchControl, "switch-control", never, { "title": { "alias": "title"; "required": false; }; "customClass": { "alias": "customClass"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "checked": { "alias": "checked"; "required": false; }; }, { "switchChange": "switchChange"; "blurEvent": "blurEvent"; }, never, never, true, never>;
430
+ }
431
+
432
+ declare class TextEditor implements ControlValueAccessor, OnInit, AfterViewInit {
433
+ header: boolean;
434
+ media: boolean;
435
+ link: boolean;
436
+ placeholder: string;
437
+ editorRef: ElementRef<HTMLDivElement>;
438
+ private onChange;
439
+ private onTouch;
440
+ private undoStack;
441
+ private redoStack;
442
+ ngOnInit(): void;
443
+ ngAfterViewInit(): void;
444
+ writeValue(value: string): void;
445
+ registerOnChange(fn: any): void;
446
+ registerOnTouched(fn: any): void;
447
+ onInput(): void;
448
+ onTouched(): void;
449
+ setDisabledState(isDisabled: boolean): void;
450
+ private getSelectionRange;
451
+ private wrapSelection;
452
+ private mergeAdjacentSimilarElements;
453
+ applyInlineStyle(styleType: 'bold' | 'italic' | 'underline'): void;
454
+ applyColor(event: Event): void;
455
+ applyHighlight(event: Event): void;
456
+ applyBlockFormat(blockTag: 'h1' | 'h2' | 'p'): void;
457
+ private findBlockAncestor;
458
+ private isBlockElement;
459
+ applyList(listType: 'ul' | 'ol'): void;
460
+ private splitContentByLine;
461
+ createLink(): void;
462
+ insertImage(): void;
463
+ setAlignment(alignment: 'left' | 'center' | 'right' | 'justify'): void;
464
+ clearFormatting(): void;
465
+ saveState(): void;
466
+ undo(): void;
467
+ redo(): void;
468
+ static ɵfac: i0.ɵɵFactoryDeclaration<TextEditor, never>;
469
+ static ɵcmp: i0.ɵɵComponentDeclaration<TextEditor, "app-text-editor", never, { "header": { "alias": "header"; "required": false; }; "media": { "alias": "media"; "required": false; }; "link": { "alias": "link"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; }, {}, never, never, true, never>;
470
+ }
471
+
472
+ declare class TextareaControl {
473
+ title: string;
474
+ placeholder: string;
475
+ customClass: string;
476
+ clearVal: boolean;
477
+ disabled: boolean;
478
+ required: boolean;
479
+ error: boolean;
480
+ errorMessage: string;
481
+ textareaChange: EventEmitter<string>;
482
+ selectionCleared: EventEmitter<void>;
483
+ blurEvent: EventEmitter<void>;
484
+ private onChange;
485
+ private onTouched;
486
+ textareaControl: FormControl<string | null>;
487
+ constructor();
488
+ writeValue(value: any): void;
489
+ registerOnChange(fn: any): void;
490
+ registerOnTouched(fn: any): void;
491
+ onBlur(): void;
492
+ setDisabledState(isDisabled: boolean): void;
493
+ resetTextarea(): void;
494
+ static ɵfac: i0.ɵɵFactoryDeclaration<TextareaControl, never>;
495
+ static ɵcmp: i0.ɵɵComponentDeclaration<TextareaControl, "textarea-control", never, { "title": { "alias": "title"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "customClass": { "alias": "customClass"; "required": false; }; "clearVal": { "alias": "clearVal"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "required": { "alias": "required"; "required": false; }; "error": { "alias": "error"; "required": false; }; "errorMessage": { "alias": "errorMessage"; "required": false; }; }, { "textareaChange": "textareaChange"; "selectionCleared": "selectionCleared"; "blurEvent": "blurEvent"; }, never, never, true, never>;
496
+ }
497
+
498
+ export { AutocompleteControl, CalendarControl, CheckboxControl, InputControl, MultiselectControl, SelectControl, SwitchControl, TextEditor, TextareaControl };
package/package.json CHANGED
@@ -1,47 +1,23 @@
1
- {
2
- "name": "nexheal-lib",
3
- "version": "0.0.3",
4
- "scripts": {
5
- "ng": "ng",
6
- "start": "ng serve",
7
- "build": "ng build",
8
- "watch": "ng build --watch --configuration development",
9
- "test": "ng test"
10
- },
11
- "prettier": {
12
- "overrides": [
13
- {
14
- "files": "*.html",
15
- "options": {
16
- "parser": "angular"
17
- }
18
- }
19
- ]
20
- },
21
- "private": false,
22
- "dependencies": {
23
- "@angular/common": "^20.0.0",
24
- "@angular/compiler": "^20.0.0",
25
- "@angular/core": "^20.0.0",
26
- "@angular/forms": "^20.0.0",
27
- "@angular/platform-browser": "^20.0.0",
28
- "@angular/router": "^20.0.0",
29
- "@popperjs/core": "^2.11.8",
30
- "rxjs": "~7.8.0",
31
- "tslib": "^2.3.0"
32
- },
33
- "devDependencies": {
34
- "@angular/build": "^20.1.3",
35
- "@angular/cli": "^20.0.5",
36
- "@angular/compiler-cli": "^20.0.0",
37
- "@types/jasmine": "~5.1.0",
38
- "jasmine-core": "~5.7.0",
39
- "karma": "~6.4.0",
40
- "karma-chrome-launcher": "~3.2.0",
41
- "karma-coverage": "~2.2.0",
42
- "karma-jasmine": "~5.1.0",
43
- "karma-jasmine-html-reporter": "~2.1.0",
44
- "ng-packagr": "^20.1.0",
45
- "typescript": "~5.8.2"
46
- }
47
- }
1
+ {
2
+ "name": "nexheal-lib",
3
+ "version": "0.0.4",
4
+ "peerDependencies": {
5
+ "@angular/common": "^20.1.0",
6
+ "@angular/core": "^20.1.0"
7
+ },
8
+ "dependencies": {
9
+ "tslib": "^2.3.0"
10
+ },
11
+ "sideEffects": false,
12
+ "module": "fesm2022/nexheal-lib.mjs",
13
+ "typings": "index.d.ts",
14
+ "exports": {
15
+ "./package.json": {
16
+ "default": "./package.json"
17
+ },
18
+ ".": {
19
+ "types": "./index.d.ts",
20
+ "default": "./fesm2022/nexheal-lib.mjs"
21
+ }
22
+ }
23
+ }
package/.editorconfig DELETED
@@ -1,17 +0,0 @@
1
- # Editor configuration, see https://editorconfig.org
2
- root = true
3
-
4
- [*]
5
- charset = utf-8
6
- indent_style = space
7
- indent_size = 2
8
- insert_final_newline = true
9
- trim_trailing_whitespace = true
10
-
11
- [*.ts]
12
- quote_type = single
13
- ij_typescript_use_double_quotes = false
14
-
15
- [*.md]
16
- max_line_length = off
17
- trim_trailing_whitespace = false
@@ -1,4 +0,0 @@
1
- {
2
- // For more information, visit: https://go.microsoft.com/fwlink/?linkid=827846
3
- "recommendations": ["angular.ng-template"]
4
- }
@@ -1,20 +0,0 @@
1
- {
2
- // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
3
- "version": "0.2.0",
4
- "configurations": [
5
- {
6
- "name": "ng serve",
7
- "type": "chrome",
8
- "request": "launch",
9
- "preLaunchTask": "npm: start",
10
- "url": "http://localhost:4200/"
11
- },
12
- {
13
- "name": "ng test",
14
- "type": "chrome",
15
- "request": "launch",
16
- "preLaunchTask": "npm: test",
17
- "url": "http://localhost:9876/debug.html"
18
- }
19
- ]
20
- }
@@ -1,42 +0,0 @@
1
- {
2
- // For more information, visit: https://go.microsoft.com/fwlink/?LinkId=733558
3
- "version": "2.0.0",
4
- "tasks": [
5
- {
6
- "type": "npm",
7
- "script": "start",
8
- "isBackground": true,
9
- "problemMatcher": {
10
- "owner": "typescript",
11
- "pattern": "$tsc",
12
- "background": {
13
- "activeOnStart": true,
14
- "beginsPattern": {
15
- "regexp": "(.*?)"
16
- },
17
- "endsPattern": {
18
- "regexp": "bundle generation complete"
19
- }
20
- }
21
- }
22
- },
23
- {
24
- "type": "npm",
25
- "script": "test",
26
- "isBackground": true,
27
- "problemMatcher": {
28
- "owner": "typescript",
29
- "pattern": "$tsc",
30
- "background": {
31
- "activeOnStart": true,
32
- "beginsPattern": {
33
- "regexp": "(.*?)"
34
- },
35
- "endsPattern": {
36
- "regexp": "bundle generation complete"
37
- }
38
- }
39
- }
40
- }
41
- ]
42
- }