cps-ui-kit 17.2.0 → 17.4.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.
Files changed (24) hide show
  1. package/README.md +1 -0
  2. package/esm2022/lib/components/cps-autocomplete/cps-autocomplete.component.mjs +30 -12
  3. package/esm2022/lib/components/cps-button/cps-button.component.mjs +2 -2
  4. package/esm2022/lib/components/cps-button-toggle/cps-button-toggle.component.mjs +1 -1
  5. package/esm2022/lib/components/cps-radio-group/cps-radio-group.component.mjs +1 -1
  6. package/esm2022/lib/components/cps-scheduler/cps-scheduler.component.mjs +672 -0
  7. package/esm2022/lib/components/cps-scheduler/cps-scheduler.utils.mjs +604 -0
  8. package/esm2022/lib/components/cps-select/cps-select.component.mjs +2 -2
  9. package/esm2022/lib/components/cps-table/components/internal/table-column-filter-constraint/table-column-filter-constraint.component.mjs +1 -1
  10. package/esm2022/lib/components/cps-table/cps-table.component.mjs +1 -1
  11. package/esm2022/lib/components/cps-timepicker/cps-timepicker.component.mjs +10 -3
  12. package/esm2022/lib/components/internal/cps-base-tree-dropdown/cps-base-tree-dropdown.component.mjs +1 -1
  13. package/esm2022/lib/directives/cps-tooltip/cps-tooltip.directive.mjs +1 -1
  14. package/esm2022/public-api.mjs +2 -1
  15. package/fesm2022/cps-ui-kit.mjs +1304 -18
  16. package/fesm2022/cps-ui-kit.mjs.map +1 -1
  17. package/lib/components/cps-autocomplete/cps-autocomplete.component.d.ts +10 -4
  18. package/lib/components/cps-button/cps-button.component.d.ts +1 -1
  19. package/lib/components/cps-scheduler/cps-scheduler.component.d.ts +146 -0
  20. package/lib/components/cps-scheduler/cps-scheduler.utils.d.ts +1 -0
  21. package/lib/components/cps-select/cps-select.component.d.ts +1 -1
  22. package/lib/components/cps-timepicker/cps-timepicker.component.d.ts +6 -1
  23. package/package.json +1 -1
  24. package/public-api.d.ts +1 -0
@@ -15,7 +15,7 @@ export declare class CpsAutocompleteComponent implements ControlValueAccessor, O
15
15
  private _control;
16
16
  private _labelByValue;
17
17
  /**
18
- * Label of the input element.
18
+ * Label of the autocomplete component.
19
19
  * @group Props
20
20
  */
21
21
  label: string;
@@ -45,7 +45,7 @@ export declare class CpsAutocompleteComponent implements ControlValueAccessor, O
45
45
  */
46
46
  disabled: boolean;
47
47
  /**
48
- * Width of the input field, a number denoting pixels or a string.
48
+ * Width of the autocomplete component, a number denoting pixels or a string.
49
49
  * @group Props
50
50
  */
51
51
  width: number | string;
@@ -199,6 +199,11 @@ export declare class CpsAutocompleteComponent implements ControlValueAccessor, O
199
199
  * @group Props
200
200
  */
201
201
  appearance: CpsAutocompleteAppearanceType;
202
+ /**
203
+ * Index of empty value in options array. Applicable only if multiple is false.
204
+ * @group Props
205
+ */
206
+ emptyOptionIndex: number;
202
207
  /**
203
208
  * Value of the autocomplete.
204
209
  * @group Props
@@ -261,6 +266,8 @@ export declare class CpsAutocompleteComponent implements ControlValueAccessor, O
261
266
  focusInput(): void;
262
267
  focus(): void;
263
268
  recalcVirtualListHeight(): void;
269
+ isEmptyValue(): boolean;
270
+ private _getEmptyValue;
264
271
  private _toggleOptions;
265
272
  private _clickOption;
266
273
  private _checkErrors;
@@ -274,7 +281,6 @@ export declare class CpsAutocompleteComponent implements ControlValueAccessor, O
274
281
  private _navigateOptionsByArrows;
275
282
  private _confirmInput;
276
283
  private _removeLastValue;
277
- isEmptyValue(): boolean;
278
284
  static ɵfac: i0.ɵɵFactoryDeclaration<CpsAutocompleteComponent, [{ optional: true; self: true; }, null]>;
279
- static ɵcmp: i0.ɵɵComponentDeclaration<CpsAutocompleteComponent, "cps-autocomplete", never, { "label": { "alias": "label"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "hint": { "alias": "hint"; "required": false; }; "returnObject": { "alias": "returnObject"; "required": false; }; "multiple": { "alias": "multiple"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "width": { "alias": "width"; "required": false; }; "selectAll": { "alias": "selectAll"; "required": false; }; "showChevron": { "alias": "showChevron"; "required": false; }; "withOptionsAliases": { "alias": "withOptionsAliases"; "required": false; }; "useOptionsAliasesWhenNoMatch": { "alias": "useOptionsAliasesWhenNoMatch"; "required": false; }; "optionAlias": { "alias": "optionAlias"; "required": false; }; "chips": { "alias": "chips"; "required": false; }; "closableChips": { "alias": "closableChips"; "required": false; }; "clearable": { "alias": "clearable"; "required": false; }; "openOnClear": { "alias": "openOnClear"; "required": false; }; "options": { "alias": "options"; "required": false; }; "keepInitialOrder": { "alias": "keepInitialOrder"; "required": false; }; "optionLabel": { "alias": "optionLabel"; "required": false; }; "optionValue": { "alias": "optionValue"; "required": false; }; "optionInfo": { "alias": "optionInfo"; "required": false; }; "hideDetails": { "alias": "hideDetails"; "required": false; }; "persistentClear": { "alias": "persistentClear"; "required": false; }; "prefixIcon": { "alias": "prefixIcon"; "required": false; }; "prefixIconSize": { "alias": "prefixIconSize"; "required": false; }; "loading": { "alias": "loading"; "required": false; }; "emptyMessage": { "alias": "emptyMessage"; "required": false; }; "showEmptyMessage": { "alias": "showEmptyMessage"; "required": false; }; "virtualScroll": { "alias": "virtualScroll"; "required": false; }; "numToleratedItems": { "alias": "numToleratedItems"; "required": false; }; "externalError": { "alias": "externalError"; "required": false; }; "infoTooltip": { "alias": "infoTooltip"; "required": false; }; "infoTooltipClass": { "alias": "infoTooltipClass"; "required": false; }; "infoTooltipMaxWidth": { "alias": "infoTooltipMaxWidth"; "required": false; }; "infoTooltipPersistent": { "alias": "infoTooltipPersistent"; "required": false; }; "infoTooltipPosition": { "alias": "infoTooltipPosition"; "required": false; }; "appearance": { "alias": "appearance"; "required": false; }; "_value": { "alias": "value"; "required": false; }; }, { "valueChanged": "valueChanged"; "blurred": "blurred"; }, never, never, true, never>;
285
+ static ɵcmp: i0.ɵɵComponentDeclaration<CpsAutocompleteComponent, "cps-autocomplete", never, { "label": { "alias": "label"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "hint": { "alias": "hint"; "required": false; }; "returnObject": { "alias": "returnObject"; "required": false; }; "multiple": { "alias": "multiple"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "width": { "alias": "width"; "required": false; }; "selectAll": { "alias": "selectAll"; "required": false; }; "showChevron": { "alias": "showChevron"; "required": false; }; "withOptionsAliases": { "alias": "withOptionsAliases"; "required": false; }; "useOptionsAliasesWhenNoMatch": { "alias": "useOptionsAliasesWhenNoMatch"; "required": false; }; "optionAlias": { "alias": "optionAlias"; "required": false; }; "chips": { "alias": "chips"; "required": false; }; "closableChips": { "alias": "closableChips"; "required": false; }; "clearable": { "alias": "clearable"; "required": false; }; "openOnClear": { "alias": "openOnClear"; "required": false; }; "options": { "alias": "options"; "required": false; }; "keepInitialOrder": { "alias": "keepInitialOrder"; "required": false; }; "optionLabel": { "alias": "optionLabel"; "required": false; }; "optionValue": { "alias": "optionValue"; "required": false; }; "optionInfo": { "alias": "optionInfo"; "required": false; }; "hideDetails": { "alias": "hideDetails"; "required": false; }; "persistentClear": { "alias": "persistentClear"; "required": false; }; "prefixIcon": { "alias": "prefixIcon"; "required": false; }; "prefixIconSize": { "alias": "prefixIconSize"; "required": false; }; "loading": { "alias": "loading"; "required": false; }; "emptyMessage": { "alias": "emptyMessage"; "required": false; }; "showEmptyMessage": { "alias": "showEmptyMessage"; "required": false; }; "virtualScroll": { "alias": "virtualScroll"; "required": false; }; "numToleratedItems": { "alias": "numToleratedItems"; "required": false; }; "externalError": { "alias": "externalError"; "required": false; }; "infoTooltip": { "alias": "infoTooltip"; "required": false; }; "infoTooltipClass": { "alias": "infoTooltipClass"; "required": false; }; "infoTooltipMaxWidth": { "alias": "infoTooltipMaxWidth"; "required": false; }; "infoTooltipPersistent": { "alias": "infoTooltipPersistent"; "required": false; }; "infoTooltipPosition": { "alias": "infoTooltipPosition"; "required": false; }; "appearance": { "alias": "appearance"; "required": false; }; "emptyOptionIndex": { "alias": "emptyOptionIndex"; "required": false; }; "_value": { "alias": "value"; "required": false; }; }, { "valueChanged": "valueChanged"; "blurred": "blurred"; }, never, never, true, never>;
280
286
  }
@@ -52,7 +52,7 @@ export declare class CpsButtonComponent implements OnInit {
52
52
  */
53
53
  height: number | string;
54
54
  /**
55
- * When present, it specifies that the component should be disabled.
55
+ * Determines whether the button is disabled.
56
56
  * @group Props
57
57
  */
58
58
  disabled: boolean;
@@ -0,0 +1,146 @@
1
+ import { OnInit, OnChanges, EventEmitter, SimpleChanges, ChangeDetectorRef } from '@angular/core';
2
+ import { UntypedFormBuilder, UntypedFormGroup } from '@angular/forms';
3
+ import { CpsButtonToggleOption } from '../cps-button-toggle/cps-button-toggle.component';
4
+ import { CpsTime } from '../cps-timepicker/cps-timepicker.component';
5
+ import * as i0 from "@angular/core";
6
+ /**
7
+ * CpsSchedulerComponent is a component designed to facilitate the creation of Amazon EventBridge CRON expressions.
8
+ * @group Components
9
+ */
10
+ export declare class CpsSchedulerComponent implements OnInit, OnChanges {
11
+ private _fb;
12
+ private _cdr;
13
+ /**
14
+ * Label of the component.
15
+ * @group Props
16
+ */
17
+ label: string;
18
+ /**
19
+ * Cron expression value.
20
+ * @group Props
21
+ */
22
+ cron: string;
23
+ /**
24
+ * Time zone value.
25
+ * @group Props
26
+ */
27
+ timeZone: string;
28
+ /**
29
+ * Determines whether to show the 'Not set' tab.
30
+ * @group Props
31
+ */
32
+ showNotSet: boolean;
33
+ /**
34
+ * Determines whether to show the 'Advanced' tab.
35
+ * @group Props
36
+ */
37
+ showAdvanced: boolean;
38
+ /**
39
+ * Determines whether to show the time zone selector.
40
+ * @group Props
41
+ */
42
+ showTimeZone: boolean;
43
+ /**
44
+ * Default time format for the component.
45
+ * @group Props
46
+ */
47
+ defaultTime: string;
48
+ /**
49
+ * Determines whether to use 24-hour time format.
50
+ * @group Props
51
+ */
52
+ use24HourTime: boolean;
53
+ /**
54
+ * Determines whether the component is disabled.
55
+ * @group Props
56
+ */
57
+ disabled: boolean;
58
+ /**
59
+ * Information tooltip for the component.
60
+ * @group Props
61
+ */
62
+ infoTooltip: string;
63
+ /**
64
+ * Callback to invoke on cron expression value change.
65
+ * @param {string} string - cron expression value changed.
66
+ * @group Emits
67
+ */
68
+ cronChange: EventEmitter<string>;
69
+ /**
70
+ * Callback to invoke on time zone change.
71
+ * @param {string} string - time zone changed.
72
+ * @group Emits
73
+ */
74
+ timeZoneChange: EventEmitter<string>;
75
+ scheduleTypes: CpsButtonToggleOption[];
76
+ activeScheduleType: string;
77
+ selectOptions: {
78
+ monthsNumeric: {
79
+ label: number;
80
+ value: number;
81
+ }[];
82
+ months: {
83
+ label: string;
84
+ value: number;
85
+ }[];
86
+ monthWeeks: {
87
+ label: string;
88
+ value: string;
89
+ }[];
90
+ days: {
91
+ label: string;
92
+ value: string;
93
+ }[];
94
+ minutes: {
95
+ label: number;
96
+ value: number;
97
+ }[];
98
+ fullMinutes: {
99
+ label: string;
100
+ value: number;
101
+ }[];
102
+ hours: {
103
+ label: number;
104
+ value: number;
105
+ }[];
106
+ monthDays: {
107
+ label: number;
108
+ value: number;
109
+ }[];
110
+ monthDaysWithLasts: {
111
+ label: string;
112
+ value: string;
113
+ }[];
114
+ };
115
+ timeZoneOptions: {
116
+ label: string;
117
+ value: string;
118
+ }[];
119
+ state: any;
120
+ form: UntypedFormGroup;
121
+ private _isDirty;
122
+ private _minutesDefault;
123
+ constructor(_fb: UntypedFormBuilder, _cdr: ChangeDetectorRef);
124
+ ngOnInit(): void;
125
+ ngOnChanges(changes: SimpleChanges): void;
126
+ setActiveScheduleType(value: string): void;
127
+ regenerateCron(tabChange?: boolean): void;
128
+ onTimeZoneChanged(value: string): void;
129
+ onTimeChanged(value: CpsTime, target: any): void;
130
+ formatTimeValue(value: any): CpsTime;
131
+ private _updateCron;
132
+ private _isValidCron;
133
+ private _validateAdvancedExpr;
134
+ private _getAmPmHour;
135
+ private _getHourType;
136
+ private _hourToCron;
137
+ private _handleModelChange;
138
+ private _getDefaultState;
139
+ private _getRange;
140
+ private _getSelectOptions;
141
+ private _getMonthDayLabel;
142
+ private _numToString;
143
+ private _stringToNum;
144
+ static ɵfac: i0.ɵɵFactoryDeclaration<CpsSchedulerComponent, never>;
145
+ static ɵcmp: i0.ɵɵComponentDeclaration<CpsSchedulerComponent, "cps-scheduler", never, { "label": { "alias": "label"; "required": false; }; "cron": { "alias": "cron"; "required": false; }; "timeZone": { "alias": "timeZone"; "required": false; }; "showNotSet": { "alias": "showNotSet"; "required": false; }; "showAdvanced": { "alias": "showAdvanced"; "required": false; }; "showTimeZone": { "alias": "showTimeZone"; "required": false; }; "defaultTime": { "alias": "defaultTime"; "required": false; }; "use24HourTime": { "alias": "use24HourTime"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "infoTooltip": { "alias": "infoTooltip"; "required": false; }; }, { "cronChange": "cronChange"; "timeZoneChange": "timeZoneChange"; }, never, never, true, never>;
146
+ }
@@ -0,0 +1 @@
1
+ export declare const timeZones: string[];
@@ -13,7 +13,7 @@ export type CpsSelectAppearanceType = 'outlined' | 'underlined' | 'borderless';
13
13
  export declare class CpsSelectComponent implements ControlValueAccessor, OnInit, AfterViewInit, OnDestroy {
14
14
  private _control;
15
15
  /**
16
- * The label of the select component.
16
+ * Label of the select component.
17
17
  * @group Props
18
18
  */
19
19
  label: string;
@@ -85,6 +85,11 @@ export declare class CpsTimepickerComponent implements OnInit, AfterViewInit, On
85
85
  * @group Props
86
86
  */
87
87
  infoTooltipPosition: CpsTooltipPosition;
88
+ /**
89
+ * Determines whether the timepicker input fields can be cleared.
90
+ * @group Props
91
+ */
92
+ mandatoryValue: boolean;
88
93
  /**
89
94
  * Value of the timepicker.
90
95
  * @group Props
@@ -131,5 +136,5 @@ export declare class CpsTimepickerComponent implements OnInit, AfterViewInit, On
131
136
  private _tryUpdateValue;
132
137
  private _getRange;
133
138
  static ɵfac: i0.ɵɵFactoryDeclaration<CpsTimepickerComponent, [{ optional: true; self: true; }]>;
134
- static ɵcmp: i0.ɵɵComponentDeclaration<CpsTimepickerComponent, "cps-timepicker", never, { "label": { "alias": "label"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "use24HourTime": { "alias": "use24HourTime"; "required": false; }; "withSeconds": { "alias": "withSeconds"; "required": false; }; "hint": { "alias": "hint"; "required": false; }; "hideDetails": { "alias": "hideDetails"; "required": false; }; "infoTooltip": { "alias": "infoTooltip"; "required": false; }; "infoTooltipClass": { "alias": "infoTooltipClass"; "required": false; }; "infoTooltipMaxWidth": { "alias": "infoTooltipMaxWidth"; "required": false; }; "infoTooltipPersistent": { "alias": "infoTooltipPersistent"; "required": false; }; "infoTooltipPosition": { "alias": "infoTooltipPosition"; "required": false; }; "value": { "alias": "value"; "required": false; }; }, { "valueChanged": "valueChanged"; }, never, never, true, never>;
139
+ static ɵcmp: i0.ɵɵComponentDeclaration<CpsTimepickerComponent, "cps-timepicker", never, { "label": { "alias": "label"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "use24HourTime": { "alias": "use24HourTime"; "required": false; }; "withSeconds": { "alias": "withSeconds"; "required": false; }; "hint": { "alias": "hint"; "required": false; }; "hideDetails": { "alias": "hideDetails"; "required": false; }; "infoTooltip": { "alias": "infoTooltip"; "required": false; }; "infoTooltipClass": { "alias": "infoTooltipClass"; "required": false; }; "infoTooltipMaxWidth": { "alias": "infoTooltipMaxWidth"; "required": false; }; "infoTooltipPersistent": { "alias": "infoTooltipPersistent"; "required": false; }; "infoTooltipPosition": { "alias": "infoTooltipPosition"; "required": false; }; "mandatoryValue": { "alias": "mandatoryValue"; "required": false; }; "value": { "alias": "value"; "required": false; }; }, { "valueChanged": "valueChanged"; }, never, never, true, never>;
135
140
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "cps-ui-kit",
3
- "version": "17.2.0",
3
+ "version": "17.4.0",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^17.1.2",
6
6
  "@angular/core": "^17.1.2",
package/public-api.d.ts CHANGED
@@ -38,6 +38,7 @@ export * from './lib/components/cps-tab-group/cps-tab-group.component';
38
38
  export * from './lib/components/cps-tab-group/cps-tab/cps-tab.component';
39
39
  export * from './lib/components/cps-timepicker/cps-timepicker.component';
40
40
  export * from './lib/components/cps-file-upload/cps-file-upload.component';
41
+ export * from './lib/components/cps-scheduler/cps-scheduler.component';
41
42
  export * from './lib/directives/cps-tooltip/cps-tooltip.directive';
42
43
  export * from './lib/services/cps-dialog/cps-dialog.service';
43
44
  export * from './lib/services/cps-dialog/utils/cps-dialog-config';