cats-ui-lib 2.0.3 → 2.0.5
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/README.md +768 -32
- package/assets/images/check-white.svg +3 -0
- package/assets/images/x-cancel-btn.svg +3 -0
- package/fesm2022/cats-ui-lib.mjs +1450 -113
- package/fesm2022/cats-ui-lib.mjs.map +1 -1
- package/index.d.ts +237 -5
- package/package.json +1 -1
- package/styles/_mixins.scss +1 -1
- package/styles/_utilities.scss +699 -0
- package/styles/_variables.scss +121 -1
package/index.d.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
2
|
import { EventEmitter, OnInit, OnChanges, TemplateRef, ChangeDetectorRef, ElementRef, SimpleChanges, OnDestroy, Renderer2, QueryList } from '@angular/core';
|
|
3
3
|
import { ControlValueAccessor, Validator, FormControl, AbstractControl, ValidationErrors } from '@angular/forms';
|
|
4
|
+
import { SafeHtml, DomSanitizer } from '@angular/platform-browser';
|
|
4
5
|
import { DatePipe } from '@angular/common';
|
|
5
6
|
|
|
6
7
|
declare class CatsUiService {
|
|
@@ -54,8 +55,10 @@ declare class AutoCompleteMultiSelectConfig {
|
|
|
54
55
|
placeholder?: string;
|
|
55
56
|
required?: boolean;
|
|
56
57
|
chipLimit: number;
|
|
57
|
-
customInput
|
|
58
|
+
customInput?: boolean;
|
|
58
59
|
pattern?: string;
|
|
60
|
+
infoText?: string;
|
|
61
|
+
selectionLimit?: number;
|
|
59
62
|
}
|
|
60
63
|
declare class ToggleConfig {
|
|
61
64
|
checked: boolean;
|
|
@@ -424,6 +427,7 @@ declare class OutsideClickDirective {
|
|
|
424
427
|
}
|
|
425
428
|
|
|
426
429
|
declare class AutoCompleteMultiSelectComponent implements OnInit, ControlValueAccessor, Validator {
|
|
430
|
+
private sanitizer;
|
|
427
431
|
autoCompleteMultiSelectConfig: AutoCompleteMultiSelectConfig;
|
|
428
432
|
selectedItem: any;
|
|
429
433
|
optionsList: any[];
|
|
@@ -437,12 +441,12 @@ declare class AutoCompleteMultiSelectComponent implements OnInit, ControlValueAc
|
|
|
437
441
|
inValid: boolean;
|
|
438
442
|
control: FormControl<any>;
|
|
439
443
|
isDisabled: boolean;
|
|
440
|
-
|
|
444
|
+
safePlaceholder: SafeHtml;
|
|
445
|
+
constructor(sanitizer: DomSanitizer);
|
|
441
446
|
ngOnInit(): void;
|
|
442
447
|
ngOnChanges(_changes: SimpleChanges): void;
|
|
443
448
|
private onChange;
|
|
444
449
|
private onTouched;
|
|
445
|
-
private applyDefaultConfig;
|
|
446
450
|
/**
|
|
447
451
|
* @description Method to toggle dropdown list
|
|
448
452
|
* @author Shiva Kant
|
|
@@ -790,6 +794,142 @@ declare class DateTimePickerComponent implements OnInit, OnChanges, ControlValue
|
|
|
790
794
|
static ɵcmp: i0.ɵɵComponentDeclaration<DateTimePickerComponent, "cats-ui-date-time-picker", never, { "dateConfig": { "alias": "dateConfig"; "required": false; }; "minDate": { "alias": "minDate"; "required": false; }; "maxDate": { "alias": "maxDate"; "required": false; }; "preSelectedValue": { "alias": "preSelectedValue"; "required": false; }; }, { "dateTimeSelected": "dateTimeSelected"; }, never, never, true, never>;
|
|
791
795
|
}
|
|
792
796
|
|
|
797
|
+
type DatePickerMode = 'single' | 'range' | 'dual';
|
|
798
|
+
interface DatePickerConfig {
|
|
799
|
+
mode?: DatePickerMode;
|
|
800
|
+
time?: boolean;
|
|
801
|
+
minDate?: Date;
|
|
802
|
+
maxDate?: Date;
|
|
803
|
+
placeholder?: string;
|
|
804
|
+
fromPlaceholder?: string;
|
|
805
|
+
toPlaceholder?: string;
|
|
806
|
+
dateFormat?: 'dd MMM yyyy' | 'MM/dd/yyyy' | 'yyyy-MM-dd';
|
|
807
|
+
parentDateFormat?: 'dd MMM yyyy' | 'MM/dd/yyyy' | 'yyyy-MM-dd';
|
|
808
|
+
disabledDates?: Date[];
|
|
809
|
+
disablePastDays?: number;
|
|
810
|
+
showDateLabel?: boolean;
|
|
811
|
+
showTimeLabel?: boolean;
|
|
812
|
+
}
|
|
813
|
+
interface DateRange {
|
|
814
|
+
from: string | null;
|
|
815
|
+
fromTime: string;
|
|
816
|
+
to: string | null;
|
|
817
|
+
toTime: string;
|
|
818
|
+
}
|
|
819
|
+
interface DateTimeResult {
|
|
820
|
+
date: string | null;
|
|
821
|
+
time: string;
|
|
822
|
+
meridiem: 'AM' | 'PM';
|
|
823
|
+
}
|
|
824
|
+
type CalenderView = 'day' | 'year' | 'month';
|
|
825
|
+
declare class CustomDatePickerComponent implements OnInit, ControlValueAccessor {
|
|
826
|
+
private elRef;
|
|
827
|
+
config: DatePickerConfig;
|
|
828
|
+
label: string;
|
|
829
|
+
showHeader: boolean;
|
|
830
|
+
showTrigger: boolean;
|
|
831
|
+
applied: EventEmitter<string | Date | DateRange | DateTimeResult>;
|
|
832
|
+
cancelled: EventEmitter<void>;
|
|
833
|
+
rangeSelected: EventEmitter<DateRange>;
|
|
834
|
+
private onChange;
|
|
835
|
+
private onTouched;
|
|
836
|
+
isOpen: boolean;
|
|
837
|
+
selectedDate: Date | null;
|
|
838
|
+
tempDate: Date | null;
|
|
839
|
+
rangeFrom: Date | null;
|
|
840
|
+
rangeTo: Date | null;
|
|
841
|
+
tempFrom: Date | null;
|
|
842
|
+
tempTo: Date | null;
|
|
843
|
+
timeValue: string;
|
|
844
|
+
timeMeridiem: 'AM' | 'PM';
|
|
845
|
+
fromTimeValue: string;
|
|
846
|
+
fromTimeMeridiem: 'AM' | 'PM';
|
|
847
|
+
toTimeValue: string;
|
|
848
|
+
toTimeMeridiem: 'AM' | 'PM';
|
|
849
|
+
currentMonth: number;
|
|
850
|
+
currentYear: number;
|
|
851
|
+
weekDays: string[];
|
|
852
|
+
calendarDays: (number | null)[];
|
|
853
|
+
currentMonth2: number;
|
|
854
|
+
currentYear2: number;
|
|
855
|
+
calendarDays2: (number | null)[];
|
|
856
|
+
yearRange: number[];
|
|
857
|
+
calenderView: CalenderView;
|
|
858
|
+
activeCalendar: 'primary' | 'secondary';
|
|
859
|
+
monthNames: string[];
|
|
860
|
+
constructor(elRef: ElementRef);
|
|
861
|
+
ngOnInit(): void;
|
|
862
|
+
get mode(): DatePickerMode;
|
|
863
|
+
get showDateLabel(): boolean;
|
|
864
|
+
get time(): boolean;
|
|
865
|
+
get currentMonthYear(): string;
|
|
866
|
+
get currentMonthName(): string;
|
|
867
|
+
get activeMonthName(): string;
|
|
868
|
+
get activeYearValue(): number;
|
|
869
|
+
get displayValue(): string;
|
|
870
|
+
get tempDisplayValue(): string;
|
|
871
|
+
get tempFromDisplay(): string;
|
|
872
|
+
get tempToDisplay(): string;
|
|
873
|
+
writeValue(val: any): void;
|
|
874
|
+
registerOnChange(fn: any): void;
|
|
875
|
+
registerOnTouched(fn: any): void;
|
|
876
|
+
toggleCalendar(): void;
|
|
877
|
+
initializeCurrentMonthYear(): void;
|
|
878
|
+
onDocumentClick(event: MouseEvent): void;
|
|
879
|
+
buildCalendar(): void;
|
|
880
|
+
private buildCalendarDays;
|
|
881
|
+
private getNextMonthYear;
|
|
882
|
+
private getPrevMonthYear;
|
|
883
|
+
generateYearRange(year?: number): void;
|
|
884
|
+
openView(calendar: 'primary' | 'secondary', view: CalenderView): void;
|
|
885
|
+
getDayDisplay(day: number | null): string;
|
|
886
|
+
isOtherMonth(day: number | null): boolean;
|
|
887
|
+
getActualDay(day: number | null): number | null;
|
|
888
|
+
prevMonth(): void;
|
|
889
|
+
nextMonth(): void;
|
|
890
|
+
selectMonth(month: string): void;
|
|
891
|
+
previousYearRange(): void;
|
|
892
|
+
nextYearRange(): void;
|
|
893
|
+
selectYear(year: number): void;
|
|
894
|
+
selectDay(day: number | null, calendar?: 'primary' | 'secondary'): void;
|
|
895
|
+
isSelected(day: number | null, month?: number, year?: number): boolean;
|
|
896
|
+
isInRange(day: number | null, month?: number, year?: number): boolean;
|
|
897
|
+
isRangeStart(day: number | null, month?: number, year?: number): boolean;
|
|
898
|
+
isRangeEnd(day: number | null, month?: number, year?: number): boolean;
|
|
899
|
+
isToday(day: number | null, month?: number, year?: number): boolean;
|
|
900
|
+
isDayDisabled(day: number | null, month?: number, year?: number): boolean;
|
|
901
|
+
setTime(event: any): void;
|
|
902
|
+
singleTimeInSeconds: number | null;
|
|
903
|
+
fromTimeInSeconds: number | null;
|
|
904
|
+
toTimeInSeconds: number | null;
|
|
905
|
+
private convertToSeconds;
|
|
906
|
+
onSingleTimeChange(event: {
|
|
907
|
+
time: string;
|
|
908
|
+
meridiem: 'AM' | 'PM';
|
|
909
|
+
}): void;
|
|
910
|
+
onFromTimeChange(event: {
|
|
911
|
+
time: string;
|
|
912
|
+
meridiem: 'AM' | 'PM';
|
|
913
|
+
}): void;
|
|
914
|
+
onToTimeChange(event: {
|
|
915
|
+
time: string;
|
|
916
|
+
meridiem: 'AM' | 'PM';
|
|
917
|
+
}): void;
|
|
918
|
+
onApply(): void;
|
|
919
|
+
private normalizeTime;
|
|
920
|
+
appendTimeInDate(time: string, date: Date, timeMeridiem: string): Date;
|
|
921
|
+
onCancel(): void;
|
|
922
|
+
clearDate(): void;
|
|
923
|
+
cancelDate(source: string): void;
|
|
924
|
+
onDaySelected(day: number | null, calendar: 'primary' | 'secondary'): void;
|
|
925
|
+
isSameDay(a: Date | null, b: Date | null): boolean;
|
|
926
|
+
formatDate(date: Date, dateFormat?: string): string;
|
|
927
|
+
get canApply(): boolean;
|
|
928
|
+
private isValidTime;
|
|
929
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<CustomDatePickerComponent, never>;
|
|
930
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<CustomDatePickerComponent, "cats-ui-custom-date-picker", never, { "config": { "alias": "config"; "required": false; }; "label": { "alias": "label"; "required": false; }; "showHeader": { "alias": "showHeader"; "required": false; }; "showTrigger": { "alias": "showTrigger"; "required": false; }; }, { "applied": "applied"; "cancelled": "cancelled"; "rangeSelected": "rangeSelected"; }, never, never, true, never>;
|
|
931
|
+
}
|
|
932
|
+
|
|
793
933
|
declare class CatsUiTooltipDirective implements OnInit, OnDestroy {
|
|
794
934
|
private el;
|
|
795
935
|
private renderer;
|
|
@@ -903,5 +1043,97 @@ declare class TabComponent {
|
|
|
903
1043
|
static ɵcmp: i0.ɵɵComponentDeclaration<TabComponent, "cats-ui-tab", never, { "activeTab": { "alias": "activeTab"; "required": false; }; "disabledTabs": { "alias": "disabledTabs"; "required": false; }; }, { "selectTab": "selectTab"; }, ["items"], never, true, never>;
|
|
904
1044
|
}
|
|
905
1045
|
|
|
906
|
-
|
|
907
|
-
|
|
1046
|
+
declare class TabContentComponent {
|
|
1047
|
+
active: boolean;
|
|
1048
|
+
tabId: number;
|
|
1049
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<TabContentComponent, never>;
|
|
1050
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<TabContentComponent, "cats-ui-tab-content", never, { "active": { "alias": "active"; "required": false; }; "tabId": { "alias": "tabId"; "required": false; }; }, {}, never, ["*"], true, never>;
|
|
1051
|
+
}
|
|
1052
|
+
|
|
1053
|
+
interface TabConfig {
|
|
1054
|
+
type?: 'Default' | 'Stroke' | string;
|
|
1055
|
+
addTab?: boolean;
|
|
1056
|
+
closeTab?: boolean;
|
|
1057
|
+
homeTab?: boolean;
|
|
1058
|
+
}
|
|
1059
|
+
interface TabItem {
|
|
1060
|
+
id: number;
|
|
1061
|
+
title: string;
|
|
1062
|
+
leadingIcon?: string;
|
|
1063
|
+
tralingIocn?: string;
|
|
1064
|
+
count?: number | string;
|
|
1065
|
+
closable?: boolean;
|
|
1066
|
+
isDisable?: boolean;
|
|
1067
|
+
isHome?: boolean;
|
|
1068
|
+
}
|
|
1069
|
+
declare class TabsetComponent {
|
|
1070
|
+
tabs: TabItem[];
|
|
1071
|
+
activeTab: number | null;
|
|
1072
|
+
activeTabChange: EventEmitter<number | null>;
|
|
1073
|
+
tabConfig: TabConfig;
|
|
1074
|
+
tabAdded: EventEmitter<TabItem>;
|
|
1075
|
+
tabClosed: EventEmitter<number>;
|
|
1076
|
+
contents: QueryList<TabContentComponent>;
|
|
1077
|
+
counter: number;
|
|
1078
|
+
ngAfterContentInit(): void;
|
|
1079
|
+
ngOnChanges(changes: SimpleChanges): void;
|
|
1080
|
+
addHomeTabIfNeeded(): void;
|
|
1081
|
+
setActive(id: number): void;
|
|
1082
|
+
closeTab(event: Event, id: number, index: number): void;
|
|
1083
|
+
addTab(event: Event): void;
|
|
1084
|
+
updateContentActivation(): void;
|
|
1085
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<TabsetComponent, never>;
|
|
1086
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<TabsetComponent, "cats-ui-tabset", never, { "tabs": { "alias": "tabs"; "required": false; }; "activeTab": { "alias": "activeTab"; "required": false; }; "tabConfig": { "alias": "tabConfig"; "required": false; }; }, { "activeTabChange": "activeTabChange"; "tabAdded": "tabAdded"; "tabClosed": "tabClosed"; }, ["contents"], ["*"], true, never>;
|
|
1087
|
+
}
|
|
1088
|
+
|
|
1089
|
+
type FilterType = 'live' | 'today' | 'week' | 'month' | 'fy' | 'last' | 'customRange' | 'customDate';
|
|
1090
|
+
interface TimeFilterOption {
|
|
1091
|
+
label: string;
|
|
1092
|
+
value: string;
|
|
1093
|
+
type?: 'radio' | 'input' | 'submenu';
|
|
1094
|
+
children?: TimeFilterOption[];
|
|
1095
|
+
default?: boolean;
|
|
1096
|
+
custom?: boolean;
|
|
1097
|
+
pickerMode?: DatePickerMode;
|
|
1098
|
+
time?: boolean;
|
|
1099
|
+
}
|
|
1100
|
+
interface TimeFilterConfig {
|
|
1101
|
+
title?: string;
|
|
1102
|
+
showReset?: boolean;
|
|
1103
|
+
options: TimeFilterOption[];
|
|
1104
|
+
}
|
|
1105
|
+
interface TimeFilterOutput {
|
|
1106
|
+
type: FilterType;
|
|
1107
|
+
label?: string;
|
|
1108
|
+
startDate?: Date;
|
|
1109
|
+
endDate?: Date;
|
|
1110
|
+
value?: number;
|
|
1111
|
+
unit?: 'Hours' | 'Days';
|
|
1112
|
+
key?: string;
|
|
1113
|
+
}
|
|
1114
|
+
declare class TimestampFilterComponent {
|
|
1115
|
+
config: TimeFilterConfig;
|
|
1116
|
+
selectionChange: EventEmitter<TimeFilterOutput>;
|
|
1117
|
+
selectedValue: string | null;
|
|
1118
|
+
activePicker: TimeFilterOption | null;
|
|
1119
|
+
lastValue: number;
|
|
1120
|
+
lastUnit: 'Hours' | 'Days';
|
|
1121
|
+
ngOnInit(): void;
|
|
1122
|
+
getPickerConfig(option: TimeFilterOption): DatePickerConfig;
|
|
1123
|
+
selectOption(option: TimeFilterOption): void;
|
|
1124
|
+
private startOfDay;
|
|
1125
|
+
private startOfWeek;
|
|
1126
|
+
private startOfFinancialYear;
|
|
1127
|
+
private subtractTime;
|
|
1128
|
+
emitLast(): void;
|
|
1129
|
+
onLastChange(): void;
|
|
1130
|
+
reset(): void;
|
|
1131
|
+
private emit;
|
|
1132
|
+
onDateApplied(event: any): void;
|
|
1133
|
+
applied(dt: any): void;
|
|
1134
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<TimestampFilterComponent, never>;
|
|
1135
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<TimestampFilterComponent, "cats-ui-timestamp-filter", never, { "config": { "alias": "config"; "required": true; }; }, { "selectionChange": "selectionChange"; }, never, never, true, never>;
|
|
1136
|
+
}
|
|
1137
|
+
|
|
1138
|
+
export { AccordionComponent, AccordionItemComponent, AutoCompleteMultiSelectComponent, AutoCompleteMultiSelectConfig, AutoCompleteSingleSelectComponent, AutoCompleteSingleSelectConfig, CatsUiService, CatsUiTooltipDirective, CheckBoxConfig, CheckBoxSubtask, CheckboxButtonComponent, CustomDatePickerComponent, DROPDOWN_CONTROL_VALUE_ACCESSOR, DROPDOWN_CONTROL_VALUE_VALIDATOR, DateTimePickerComponent, InputComponent, InputConfig, MULTI_SELECT_CONTROL_VALUE_ACCESSOR, MULTI_SELECT_CONTROL_VALUE_VALIDATOR, MultiSelectComponent, MultiSelectConfig, OutsideClickDirective, RadioButtonComponent, SINGLE_SELECT_CONTROL_VALUE_ACCESSOR, SINGLE_SELECT_CONTROL_VALUE_VALIDATOR, SearchBoxComponent, SearchConfig, SingleSelectComponent, SingleSelectConfig, TabComponent, TabContentComponent, TabContentDirective, TabHeadingDirective, TabItemComponent, TabsetComponent, TimestampFilterComponent, ToggleConfig, ToogleButtonComponent };
|
|
1139
|
+
export type { CalenderView, DateConfig, DatePickerConfig, DatePickerMode, DateRange, DateTimeResult, FilterType, RadioButtonConfig, TabConfig, TabItem, TimeFilterConfig, TimeFilterOption, TimeFilterOutput };
|
package/package.json
CHANGED