@indigina/ui-kit 1.1.102 → 1.1.104

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 (183) hide show
  1. package/assets/icons/diskette.svg +2 -4
  2. package/assets/icons/warning-circle-filled.svg +2 -2
  3. package/fesm2022/indigina-ui-kit.mjs +556 -539
  4. package/fesm2022/indigina-ui-kit.mjs.map +1 -1
  5. package/lib/components/kit-autocomplete/kit-autocomplete.component.d.ts +23 -22
  6. package/lib/components/kit-cta-panel-confirmation/abstract-kit-cta-panel-confirmation.component.d.ts +1 -1
  7. package/lib/components/kit-notification/kit-notification.component.d.ts +4 -5
  8. package/lib/components/kit-popup/kit-popup.component.d.ts +3 -2
  9. package/lib/components/kit-popup/kit-popup.model.d.ts +4 -0
  10. package/lib/components/kit-skeleton/kit-skeleton.component.d.ts +4 -4
  11. package/package.json +30 -32
  12. package/public-api.d.ts +1 -0
  13. package/styles/components/toastr.scss +3 -4
  14. package/styles/kendo.scss +20 -0
  15. package/styles/styles.scss +6 -26
  16. package/styles/theming.scss +1 -2
  17. package/esm2022/indigina-ui-kit.mjs +0 -5
  18. package/esm2022/lib/components/kit-autocomplete/kit-autocomplete.component.mjs +0 -170
  19. package/esm2022/lib/components/kit-autocomplete/kit-autocomplete.directive.mjs +0 -25
  20. package/esm2022/lib/components/kit-autocomplete/kit-autocomplete.module.mjs +0 -60
  21. package/esm2022/lib/components/kit-avatar/kit-avatar.component.mjs +0 -32
  22. package/esm2022/lib/components/kit-avatar/kit-avatar.const.mjs +0 -7
  23. package/esm2022/lib/components/kit-avatar/kit-avatar.module.mjs +0 -28
  24. package/esm2022/lib/components/kit-breadcrumbs/kit-breadcrumbs.component.mjs +0 -20
  25. package/esm2022/lib/components/kit-breadcrumbs/kit-breadcrumbs.model.mjs +0 -2
  26. package/esm2022/lib/components/kit-breadcrumbs/kit-breadcrumbs.module.mjs +0 -27
  27. package/esm2022/lib/components/kit-button/kit-button.component.mjs +0 -71
  28. package/esm2022/lib/components/kit-button/kit-button.const.mjs +0 -20
  29. package/esm2022/lib/components/kit-button/kit-button.module.mjs +0 -32
  30. package/esm2022/lib/components/kit-card/kit-card.component.mjs +0 -89
  31. package/esm2022/lib/components/kit-card/kit-card.const.mjs +0 -11
  32. package/esm2022/lib/components/kit-card/kit-card.model.mjs +0 -2
  33. package/esm2022/lib/components/kit-card/kit-card.module.mjs +0 -41
  34. package/esm2022/lib/components/kit-checkbox/kit-checkbox.component.mjs +0 -111
  35. package/esm2022/lib/components/kit-checkbox/kit-checkbox.module.mjs +0 -44
  36. package/esm2022/lib/components/kit-copy-text/kit-copy-text.component.mjs +0 -67
  37. package/esm2022/lib/components/kit-copy-text/kit-copy-text.module.mjs +0 -28
  38. package/esm2022/lib/components/kit-cta-panel-abstract-confirmation/kit-cta-panel-abstract-confirmation.component.mjs +0 -29
  39. package/esm2022/lib/components/kit-cta-panel-abstract-confirmation/kit-cta-panel-abstract-confirmation.module.mjs +0 -32
  40. package/esm2022/lib/components/kit-cta-panel-action/kit-cta-panel-action.component.mjs +0 -34
  41. package/esm2022/lib/components/kit-cta-panel-action/kit-cta-panel-action.module.mjs +0 -28
  42. package/esm2022/lib/components/kit-cta-panel-confirmation/abstract-kit-cta-panel-confirmation.component.mjs +0 -25
  43. package/esm2022/lib/components/kit-cta-panel-confirmation/kit-cta-panel-confirmation.component.mjs +0 -51
  44. package/esm2022/lib/components/kit-cta-panel-confirmation/kit-cta-panel-confirmation.model.mjs +0 -2
  45. package/esm2022/lib/components/kit-cta-panel-confirmation/kit-cta-panel-confirmation.module.mjs +0 -53
  46. package/esm2022/lib/components/kit-cta-panel-item/kit-cta-panel-item.component.mjs +0 -35
  47. package/esm2022/lib/components/kit-cta-panel-item/kit-cta-panel-item.model.mjs +0 -6
  48. package/esm2022/lib/components/kit-cta-panel-item/kit-cta-panel-item.module.mjs +0 -36
  49. package/esm2022/lib/components/kit-data-field/kit-data-field.component.mjs +0 -22
  50. package/esm2022/lib/components/kit-datepicker/kit-datepicker.component.mjs +0 -114
  51. package/esm2022/lib/components/kit-datepicker/kit-datepicker.module.mjs +0 -40
  52. package/esm2022/lib/components/kit-daterange/kit-daterange.component.mjs +0 -127
  53. package/esm2022/lib/components/kit-daterange/kit-daterange.module.mjs +0 -46
  54. package/esm2022/lib/components/kit-datetimepicker/kit-datetimepicker.component.mjs +0 -136
  55. package/esm2022/lib/components/kit-datetimepicker/kit-datetimepicker.module.mjs +0 -41
  56. package/esm2022/lib/components/kit-dialog/kit-dialog.component.mjs +0 -12
  57. package/esm2022/lib/components/kit-dialog/kit-dialog.module.mjs +0 -34
  58. package/esm2022/lib/components/kit-dialog/kit-dialog.service.mjs +0 -35
  59. package/esm2022/lib/components/kit-dialog-actions/kit-dialog-actions.component.mjs +0 -12
  60. package/esm2022/lib/components/kit-dialog-actions/kit-dialog-actions.module.mjs +0 -24
  61. package/esm2022/lib/components/kit-dropdown/kit-dropdown.component.mjs +0 -162
  62. package/esm2022/lib/components/kit-dropdown/kit-dropdown.const.mjs +0 -8
  63. package/esm2022/lib/components/kit-dropdown/kit-dropdown.module.mjs +0 -47
  64. package/esm2022/lib/components/kit-empty-section/kit-empty-section.component.mjs +0 -22
  65. package/esm2022/lib/components/kit-entity-section/kit-entity-section.component.mjs +0 -11
  66. package/esm2022/lib/components/kit-entity-section-container/kit-entity-section-container.component.mjs +0 -11
  67. package/esm2022/lib/components/kit-entity-title/kit-entity-title.component.mjs +0 -11
  68. package/esm2022/lib/components/kit-entity-title/kit-entity-title.module.mjs +0 -24
  69. package/esm2022/lib/components/kit-file-card/kit-file-card-messages.component.mjs +0 -41
  70. package/esm2022/lib/components/kit-file-card/kit-file-card.component.mjs +0 -93
  71. package/esm2022/lib/components/kit-file-card/kit-file-card.const.mjs +0 -55
  72. package/esm2022/lib/components/kit-file-card/kit-file-card.module.mjs +0 -39
  73. package/esm2022/lib/components/kit-file-upload/kit-file-upload.component.mjs +0 -94
  74. package/esm2022/lib/components/kit-file-upload/kit-file-upload.model.mjs +0 -2
  75. package/esm2022/lib/components/kit-file-upload/kit-file-upload.module.mjs +0 -36
  76. package/esm2022/lib/components/kit-grid/kit-grid-cell-template.directive.mjs +0 -14
  77. package/esm2022/lib/components/kit-grid/kit-grid-column/kit-grid-column.component.mjs +0 -56
  78. package/esm2022/lib/components/kit-grid/kit-grid-detail-template.directive.mjs +0 -14
  79. package/esm2022/lib/components/kit-grid/kit-grid.component.mjs +0 -195
  80. package/esm2022/lib/components/kit-grid/kit-grid.const.mjs +0 -6
  81. package/esm2022/lib/components/kit-grid/kit-grid.model.mjs +0 -2
  82. package/esm2022/lib/components/kit-grid/kit-grid.module.mjs +0 -53
  83. package/esm2022/lib/components/kit-input-label/kit-input-label.component.mjs +0 -26
  84. package/esm2022/lib/components/kit-input-label/kit-input-label.module.mjs +0 -36
  85. package/esm2022/lib/components/kit-input-message/kit-input-message.component.mjs +0 -22
  86. package/esm2022/lib/components/kit-input-message/kit-input-message.module.mjs +0 -28
  87. package/esm2022/lib/components/kit-loader/kit-loader.component.mjs +0 -19
  88. package/esm2022/lib/components/kit-loader/kit-loader.module.mjs +0 -24
  89. package/esm2022/lib/components/kit-location-stepper/kit-location-stepper.component.mjs +0 -28
  90. package/esm2022/lib/components/kit-location-stepper/kit-location-stepper.module.mjs +0 -32
  91. package/esm2022/lib/components/kit-multiselect/kit-multiselect.component.mjs +0 -99
  92. package/esm2022/lib/components/kit-multiselect/kit-multiselect.model.mjs +0 -2
  93. package/esm2022/lib/components/kit-multiselect/kit-multiselect.module.mjs +0 -47
  94. package/esm2022/lib/components/kit-navigation-menu/kit-navigation-menu-submenu/kit-navigation-menu-submenu.component.mjs +0 -54
  95. package/esm2022/lib/components/kit-navigation-menu/kit-navigation-menu-submenu/kit-navigation-menu-submenu.module.mjs +0 -32
  96. package/esm2022/lib/components/kit-navigation-menu/kit-navigation-menu.component.mjs +0 -123
  97. package/esm2022/lib/components/kit-navigation-menu/kit-navigation-menu.model.mjs +0 -2
  98. package/esm2022/lib/components/kit-navigation-menu/kit-navigation-menu.module.mjs +0 -46
  99. package/esm2022/lib/components/kit-navigation-menu/kit-navigation-menu.service.mjs +0 -26
  100. package/esm2022/lib/components/kit-navigation-menu/kit-navigation-menu.util.mjs +0 -17
  101. package/esm2022/lib/components/kit-navigation-tabs/kit-navigation-tabs.component.mjs +0 -39
  102. package/esm2022/lib/components/kit-navigation-tabs/kit-navigation-tabs.const.mjs +0 -6
  103. package/esm2022/lib/components/kit-navigation-tabs/kit-navigation-tabs.model.mjs +0 -2
  104. package/esm2022/lib/components/kit-navigation-tabs/kit-navigation-tabs.module.mjs +0 -32
  105. package/esm2022/lib/components/kit-note/kit-note.component.mjs +0 -11
  106. package/esm2022/lib/components/kit-note/kit-note.module.mjs +0 -20
  107. package/esm2022/lib/components/kit-notification/kit-notification.animation.mjs +0 -12
  108. package/esm2022/lib/components/kit-notification/kit-notification.component.mjs +0 -60
  109. package/esm2022/lib/components/kit-notification/kit-notification.const.mjs +0 -8
  110. package/esm2022/lib/components/kit-notification/kit-notification.service.mjs +0 -35
  111. package/esm2022/lib/components/kit-numeric-textbox/kit-numeric-textbox.component.mjs +0 -118
  112. package/esm2022/lib/components/kit-numeric-textbox/kit-numeric-textbox.const.mjs +0 -8
  113. package/esm2022/lib/components/kit-numeric-textbox/kit-numeric-textbox.module.mjs +0 -41
  114. package/esm2022/lib/components/kit-pill/kit-pill.component.mjs +0 -73
  115. package/esm2022/lib/components/kit-pill/kit-pill.const.mjs +0 -6
  116. package/esm2022/lib/components/kit-popup/kit-popup.component.mjs +0 -104
  117. package/esm2022/lib/components/kit-popup/kit-popup.model.mjs +0 -13
  118. package/esm2022/lib/components/kit-profile-menu/kit-profile-menu.component.mjs +0 -53
  119. package/esm2022/lib/components/kit-profile-menu/kit-profile-menu.model.mjs +0 -2
  120. package/esm2022/lib/components/kit-radio-button/kit-radio-button.component.mjs +0 -103
  121. package/esm2022/lib/components/kit-radio-button/kit-radio-button.const.mjs +0 -6
  122. package/esm2022/lib/components/kit-radio-button/kit-radio-button.model.mjs +0 -2
  123. package/esm2022/lib/components/kit-radio-button/kit-radio-button.module.mjs +0 -36
  124. package/esm2022/lib/components/kit-scroll-navigation/kit-scroll-navigation-section/kit-scroll-navigation-section.component.mjs +0 -27
  125. package/esm2022/lib/components/kit-scroll-navigation/kit-scroll-navigation.component.mjs +0 -70
  126. package/esm2022/lib/components/kit-scroll-navigation/kit-scroll-navigation.module.mjs +0 -37
  127. package/esm2022/lib/components/kit-search-bar/kit-search-bar.component.mjs +0 -76
  128. package/esm2022/lib/components/kit-search-bar/kit-search-bar.module.mjs +0 -32
  129. package/esm2022/lib/components/kit-skeleton/kit-skeleton.component.mjs +0 -49
  130. package/esm2022/lib/components/kit-skeleton/kit-skeleton.module.mjs +0 -28
  131. package/esm2022/lib/components/kit-sortable/kit-sortable.component.mjs +0 -36
  132. package/esm2022/lib/components/kit-svg-icon/kit-svg-icon.component.mjs +0 -25
  133. package/esm2022/lib/components/kit-svg-icon/kit-svg-icon.const.mjs +0 -148
  134. package/esm2022/lib/components/kit-svg-icon/kit-svg-icon.module.mjs +0 -20
  135. package/esm2022/lib/components/kit-svg-sprite/kit-svg-sprite.component.mjs +0 -14
  136. package/esm2022/lib/components/kit-svg-sprite/kit-svg-sprite.module.mjs +0 -20
  137. package/esm2022/lib/components/kit-switch/kit-switch-item.model.mjs +0 -2
  138. package/esm2022/lib/components/kit-switch/kit-switch.component.mjs +0 -96
  139. package/esm2022/lib/components/kit-switch/kit-switch.module.mjs +0 -43
  140. package/esm2022/lib/components/kit-tabs/kit-tab/kit-tab.component.mjs +0 -47
  141. package/esm2022/lib/components/kit-tabs/kit-tabs.component.mjs +0 -49
  142. package/esm2022/lib/components/kit-tabs/kit-tabs.const.mjs +0 -6
  143. package/esm2022/lib/components/kit-tabs/kit-tabs.model.mjs +0 -2
  144. package/esm2022/lib/components/kit-tabs/kit-tabs.module.mjs +0 -37
  145. package/esm2022/lib/components/kit-text-label/kit-text-label.component.mjs +0 -49
  146. package/esm2022/lib/components/kit-text-label/kit-text-label.module.mjs +0 -32
  147. package/esm2022/lib/components/kit-textarea/kit-textarea-autoresize.directive.mjs +0 -32
  148. package/esm2022/lib/components/kit-textarea/kit-textarea.component.mjs +0 -148
  149. package/esm2022/lib/components/kit-textarea/kit-textarea.const.mjs +0 -8
  150. package/esm2022/lib/components/kit-textarea/kit-textarea.module.mjs +0 -41
  151. package/esm2022/lib/components/kit-textbox/kit-textbox.component.mjs +0 -120
  152. package/esm2022/lib/components/kit-textbox/kit-textbox.const.mjs +0 -13
  153. package/esm2022/lib/components/kit-textbox/kit-textbox.module.mjs +0 -40
  154. package/esm2022/lib/components/kit-tilelayout/kit-tilelayout-item.component.mjs +0 -18
  155. package/esm2022/lib/components/kit-tilelayout/kit-tilelayout.component.mjs +0 -52
  156. package/esm2022/lib/components/kit-tilelayout/kit-tilelayout.interface.mjs +0 -2
  157. package/esm2022/lib/components/kit-tilelayout/kit-tilelayout.module.mjs +0 -33
  158. package/esm2022/lib/components/kit-timeline/kit-timeline-card/kit-timeline-card.component.mjs +0 -30
  159. package/esm2022/lib/components/kit-timeline/kit-timeline.component.mjs +0 -24
  160. package/esm2022/lib/components/kit-timeline/kit-timeline.const.mjs +0 -19
  161. package/esm2022/lib/components/kit-timeline/kit-timeline.model.mjs +0 -2
  162. package/esm2022/lib/components/kit-timepicker/kit-timepicker.component.mjs +0 -144
  163. package/esm2022/lib/components/kit-timepicker/kit-timepicker.module.mjs +0 -43
  164. package/esm2022/lib/components/kit-toastr/kit-toastr.module.mjs +0 -26
  165. package/esm2022/lib/components/kit-toastr/kit-toastr.service.mjs +0 -84
  166. package/esm2022/lib/components/kit-toggle/kit-toggle.component.mjs +0 -89
  167. package/esm2022/lib/components/kit-toggle/kit-toggle.module.mjs +0 -36
  168. package/esm2022/lib/components/kit-units-textbox/kit-units-textbox.component.mjs +0 -154
  169. package/esm2022/lib/components/kit-units-textbox/kit-units-textbox.model.mjs +0 -11
  170. package/esm2022/lib/components/kit-units-textbox/kit-units-textbox.module.mjs +0 -55
  171. package/esm2022/lib/directives/kit-badge/kit-badge.const.mjs +0 -9
  172. package/esm2022/lib/directives/kit-badge/kit-badge.directive.mjs +0 -58
  173. package/esm2022/lib/directives/kit-badge/kit-badge.module.mjs +0 -20
  174. package/esm2022/lib/directives/kit-permission/kit-permission.directive.mjs +0 -42
  175. package/esm2022/lib/directives/kit-permission/kit-permission.module.mjs +0 -20
  176. package/esm2022/lib/directives/kit-tooltip/kit-tooltip.directive.mjs +0 -47
  177. package/esm2022/lib/directives/kit-tooltip/kit-tooltip.module.mjs +0 -23
  178. package/esm2022/lib/services/kit-query-params.service.mjs +0 -42
  179. package/esm2022/lib/utils/kit-data-query/kit-data-query.const.mjs +0 -28
  180. package/esm2022/lib/utils/kit-data-query/kit-data-query.model.mjs +0 -2
  181. package/esm2022/lib/utils/kit-data-query/kit-data-query.util.mjs +0 -3
  182. package/esm2022/lib/utils/random.util.mjs +0 -3
  183. package/esm2022/public-api.mjs +0 -211
@@ -1,7 +1,6 @@
1
- import { ElementRef, EventEmitter } from '@angular/core';
1
+ import { ElementRef, EventEmitter, InputSignal, OutputEmitterRef } from '@angular/core';
2
2
  import { KitSvgIcon } from '../kit-svg-icon/kit-svg-icon.const';
3
3
  import { ControlValueAccessor } from '@angular/forms';
4
- import { Observable } from 'rxjs';
5
4
  import { PopupSettings } from '@progress/kendo-angular-dropdowns';
6
5
  import * as i0 from "@angular/core";
7
6
  export interface KitAutocompleteItem<T> {
@@ -26,7 +25,7 @@ export declare class KitAutocompleteComponent<T> implements ControlValueAccessor
26
25
  /**
27
26
  * An item which is going to be an autocomplete selected value
28
27
  */
29
- selectedValue?: KitAutocompleteItem<T> | null;
28
+ selectedValue: T | null;
30
29
  /**
31
30
  * Defines whether the component will be in disabled state
32
31
  */
@@ -48,13 +47,25 @@ export declare class KitAutocompleteComponent<T> implements ControlValueAccessor
48
47
  */
49
48
  invalid?: boolean;
50
49
  /**
51
- * An action which is emitted when input value changed
50
+ * Specifies whether the autocomplete allows user-defined values
52
51
  */
53
- changed: EventEmitter<string>;
52
+ readonly allowCustom: InputSignal<boolean>;
53
+ /**
54
+ * Specifies whether the autocomplete popup will be closed if no filter data found
55
+ */
56
+ readonly closePopupIfDataNotFound: InputSignal<boolean>;
57
+ /**
58
+ * An action which is emitted each time the user types in the input field
59
+ */
60
+ readonly filterChanged: OutputEmitterRef<string>;
61
+ /**
62
+ * An action which is emitted each time when value is changed and component is blurred
63
+ */
64
+ readonly valueChanged: OutputEmitterRef<string>;
54
65
  /**
55
66
  * An action which is emitted once an item in the dropdown is selected
56
67
  */
57
- selected: EventEmitter<KitAutocompleteItem<T> | null>;
68
+ readonly selectionChanged: OutputEmitterRef<T | null>;
58
69
  /**
59
70
  * An action which is emitted when input lost focus
60
71
  */
@@ -64,11 +75,6 @@ export declare class KitAutocompleteComponent<T> implements ControlValueAccessor
64
75
  */
65
76
  focused: EventEmitter<void>;
66
77
  private combobox;
67
- /**
68
- * Function that emit normalized selected dropdown list item in case when
69
- * inputted data changed and component lost focus
70
- */
71
- readonly normalizedSelectedValue$: (text$: Observable<string>) => Observable<KitAutocompleteItem<T> | null>;
72
78
  /**
73
79
  * Settings for popup that will be opened as dropdown options list
74
80
  */
@@ -78,14 +84,9 @@ export declare class KitAutocompleteComponent<T> implements ControlValueAccessor
78
84
  * Callback function that return dropdown list item text
79
85
  */
80
86
  getOptionText(item: KitAutocompleteItem<T>): string;
81
- /**
82
- * Function that is called when input value changed
83
- */
87
+ onValueChange(value: string): void;
84
88
  onFilterChange(value: string): void;
85
- /**
86
- * Function that is called when dropdown list item selected
87
- */
88
- onValueSelect(item: KitAutocompleteItem<T> | null): void;
89
+ onSelectionChange(item: KitAutocompleteItem<T> | null): void;
89
90
  /**
90
91
  * Function that is called when input field lost focus
91
92
  */
@@ -101,15 +102,15 @@ export declare class KitAutocompleteComponent<T> implements ControlValueAccessor
101
102
  /**
102
103
  * Function that should be called every time the form control value changes
103
104
  */
104
- onChange: (value: KitAutocompleteItem<T> | null) => void;
105
+ onChange: (value: T | null) => void;
105
106
  /**
106
107
  * Function that should be called when input lost focus and changed form control state to "touched"
107
108
  */
108
109
  onTouched: () => void;
109
- writeValue(value: KitAutocompleteItem<T>): void;
110
- registerOnChange(fn: (_: KitAutocompleteItem<T> | null) => void): void;
110
+ writeValue(value: T): void;
111
+ registerOnChange(fn: (_: T | null) => void): void;
111
112
  registerOnTouched(fn: () => void): void;
112
113
  setDisabledState(disabled: boolean): void;
113
114
  static ɵfac: i0.ɵɵFactoryDeclaration<KitAutocompleteComponent<any>, never>;
114
- static ɵcmp: i0.ɵɵComponentDeclaration<KitAutocompleteComponent<any>, "kit-autocomplete", never, { "label": { "alias": "label"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "items": { "alias": "items"; "required": false; }; "selectedValue": { "alias": "selectedValue"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "loaderVisible": { "alias": "loaderVisible"; "required": false; }; "messageIcon": { "alias": "messageIcon"; "required": false; }; "messageText": { "alias": "messageText"; "required": false; }; "invalid": { "alias": "invalid"; "required": false; }; }, { "changed": "changed"; "selected": "selected"; "blured": "blured"; "focused": "focused"; }, never, never, false, never>;
115
+ static ɵcmp: i0.ɵɵComponentDeclaration<KitAutocompleteComponent<any>, "kit-autocomplete", never, { "label": { "alias": "label"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "items": { "alias": "items"; "required": false; }; "selectedValue": { "alias": "selectedValue"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "loaderVisible": { "alias": "loaderVisible"; "required": false; }; "messageIcon": { "alias": "messageIcon"; "required": false; }; "messageText": { "alias": "messageText"; "required": false; }; "invalid": { "alias": "invalid"; "required": false; }; "allowCustom": { "alias": "allowCustom"; "required": false; "isSignal": true; }; "closePopupIfDataNotFound": { "alias": "closePopupIfDataNotFound"; "required": false; "isSignal": true; }; }, { "filterChanged": "filterChanged"; "valueChanged": "valueChanged"; "selectionChanged": "selectionChanged"; "blured": "blured"; "focused": "focused"; }, never, never, false, never>;
115
116
  }
@@ -6,5 +6,5 @@ export declare abstract class AbstractKitCtaPanelConfirmationComponent {
6
6
  protected hideConfirmation(): void;
7
7
  protected showConfirmation(): void;
8
8
  static ɵfac: i0.ɵɵFactoryDeclaration<AbstractKitCtaPanelConfirmationComponent, never>;
9
- static ɵdir: i0.ɵɵDirectiveDeclaration<AbstractKitCtaPanelConfirmationComponent, never, never, {}, {}, never, never, false, never>;
9
+ static ɵdir: i0.ɵɵDirectiveDeclaration<AbstractKitCtaPanelConfirmationComponent, never, never, {}, {}, never, never, true, never>;
10
10
  }
@@ -1,21 +1,20 @@
1
- import { ElementRef, Renderer2, Signal } from '@angular/core';
1
+ import { ElementRef, OnDestroy, OnInit, Renderer2, Signal } from '@angular/core';
2
2
  import { KitSvgIcon } from '../kit-svg-icon/kit-svg-icon.const';
3
- import { KitNotificationType, KitNotification } from './kit-notification.const';
3
+ import { KitNotification } from './kit-notification.const';
4
4
  import { KitNotificationService } from './kit-notification.service';
5
5
  import * as i0 from "@angular/core";
6
- export declare class KitNotificationComponent {
6
+ export declare class KitNotificationComponent implements OnInit, OnDestroy {
7
7
  private readonly renderer;
8
8
  private readonly el;
9
9
  private readonly notificationService;
10
10
  appendTo: string;
11
11
  readonly notifications: Signal<KitNotification[]>;
12
- readonly closeIcon: KitSvgIcon;
12
+ readonly kitSvgIcon: typeof KitSvgIcon;
13
13
  private appendedElement;
14
14
  constructor(renderer: Renderer2, el: ElementRef, notificationService: KitNotificationService);
15
15
  ngOnInit(): void;
16
16
  ngOnDestroy(): void;
17
17
  removeNotification(id: number): void;
18
- getNotificationType(type: KitNotificationType): string;
19
18
  private appendToTarget;
20
19
  static ɵfac: i0.ɵɵFactoryDeclaration<KitNotificationComponent, never>;
21
20
  static ɵcmp: i0.ɵɵComponentDeclaration<KitNotificationComponent, "kit-notification", never, { "appendTo": { "alias": "appendTo"; "required": false; }; }, {}, never, ["*"], true, never>;
@@ -1,5 +1,5 @@
1
1
  import { ElementRef, EventEmitter, OnInit, WritableSignal } from '@angular/core';
2
- import { KitPopupAlign, KitPopupAlignHorizontal } from './kit-popup.model';
2
+ import { KitPopupAlign, KitPopupAlignHorizontal, KitPopupPositionMode } from './kit-popup.model';
3
3
  import { KitButtonKind, KitButtonType } from '../kit-button/kit-button.const';
4
4
  import * as i0 from "@angular/core";
5
5
  export declare class KitPopupComponent implements OnInit {
@@ -24,6 +24,7 @@ export declare class KitPopupComponent implements OnInit {
24
24
  cancelButtonLabel: string;
25
25
  applyButtonLabel: string;
26
26
  isApplyButtonDisabled: boolean;
27
+ positionMode: KitPopupPositionMode;
27
28
  cancel: EventEmitter<void>;
28
29
  apply: EventEmitter<void>;
29
30
  readonly visible: WritableSignal<boolean>;
@@ -38,5 +39,5 @@ export declare class KitPopupComponent implements OnInit {
38
39
  toggle(): void;
39
40
  hide(): void;
40
41
  static ɵfac: i0.ɵɵFactoryDeclaration<KitPopupComponent, never>;
41
- static ɵcmp: i0.ɵɵComponentDeclaration<KitPopupComponent, "kit-popup", never, { "anchor": { "alias": "anchor"; "required": false; }; "closeOnOutsideClick": { "alias": "closeOnOutsideClick"; "required": false; }; "anchorHorizontalAlign": { "alias": "anchorHorizontalAlign"; "required": false; }; "popupHorizontalAlign": { "alias": "popupHorizontalAlign"; "required": false; }; "showFooter": { "alias": "showFooter"; "required": false; }; "cancelButtonLabel": { "alias": "cancelButtonLabel"; "required": false; }; "applyButtonLabel": { "alias": "applyButtonLabel"; "required": false; }; "isApplyButtonDisabled": { "alias": "isApplyButtonDisabled"; "required": false; }; }, { "cancel": "cancel"; "apply": "apply"; }, never, ["*"], true, never>;
42
+ static ɵcmp: i0.ɵɵComponentDeclaration<KitPopupComponent, "kit-popup", never, { "anchor": { "alias": "anchor"; "required": false; }; "closeOnOutsideClick": { "alias": "closeOnOutsideClick"; "required": false; }; "anchorHorizontalAlign": { "alias": "anchorHorizontalAlign"; "required": false; }; "popupHorizontalAlign": { "alias": "popupHorizontalAlign"; "required": false; }; "showFooter": { "alias": "showFooter"; "required": false; }; "cancelButtonLabel": { "alias": "cancelButtonLabel"; "required": false; }; "applyButtonLabel": { "alias": "applyButtonLabel"; "required": false; }; "isApplyButtonDisabled": { "alias": "isApplyButtonDisabled"; "required": false; }; "positionMode": { "alias": "positionMode"; "required": false; }; }, { "cancel": "cancel"; "apply": "apply"; }, never, ["*"], true, never>;
42
43
  }
@@ -12,3 +12,7 @@ export declare enum KitPopupAlignVertical {
12
12
  CENTER = "center",
13
13
  BOTTOM = "bottom"
14
14
  }
15
+ export declare enum KitPopupPositionMode {
16
+ ABSOLUTE = "absolute",
17
+ FIXED = "fixed"
18
+ }
@@ -10,19 +10,19 @@ export declare enum KitSkeletonAnimation {
10
10
  }
11
11
  export declare class KitSkeletonComponent {
12
12
  /**
13
- Defines the width of the skeleton component
13
+ Defines the width of the skeleton component
14
14
  */
15
15
  width: string | number | null;
16
16
  /**
17
- Defines the height of the skeleton component
17
+ Defines the height of the skeleton component
18
18
  */
19
19
  height: string | number | null;
20
20
  /**
21
- Defines the shape of the skeleton
21
+ Defines the shape of the skeleton
22
22
  */
23
23
  shape: KitSkeletonShape;
24
24
  /**
25
- Defines the animation of the skeleton
25
+ Defines the animation of the skeleton
26
26
  */
27
27
  animation: KitSkeletonAnimation | false;
28
28
  static ɵfac: i0.ɵɵFactoryDeclaration<KitSkeletonComponent, never>;
package/package.json CHANGED
@@ -7,42 +7,42 @@
7
7
  "components",
8
8
  "shared"
9
9
  ],
10
- "version": "1.1.102",
10
+ "version": "1.1.104",
11
11
  "peerDependencies": {
12
- "@angular/common": "^18.2.6",
13
- "@angular/core": "^18.2.6"
12
+ "@angular/common": "^19.1.4",
13
+ "@angular/core": "^19.1.4"
14
14
  },
15
15
  "dependencies": {
16
- "@progress/kendo-angular-buttons": "16.10.0",
17
- "@progress/kendo-angular-common": "16.10.0",
18
- "@progress/kendo-angular-dateinputs": "16.10.0",
19
- "@progress/kendo-angular-dialog": "16.10.0",
20
- "@progress/kendo-angular-dropdowns": "16.10.0",
21
- "@progress/kendo-angular-grid": "16.10.0",
22
- "@progress/kendo-angular-icons": "16.10.0",
23
- "@progress/kendo-angular-indicators": "16.10.0",
24
- "@progress/kendo-angular-inputs": "16.10.0",
25
- "@progress/kendo-angular-intl": "16.10.0",
26
- "@progress/kendo-angular-l10n": "16.10.0",
27
- "@progress/kendo-angular-label": "16.10.0",
28
- "@progress/kendo-angular-layout": "16.10.0",
29
- "@progress/kendo-angular-menu": "16.10.0",
30
- "@progress/kendo-angular-navigation": "16.10.0",
31
- "@progress/kendo-angular-popup": "16.10.0",
32
- "@progress/kendo-angular-progressbar": "16.10.0",
33
- "@progress/kendo-angular-sortable": "16.10.0",
34
- "@progress/kendo-angular-tooltip": "16.10.0",
35
- "@progress/kendo-angular-treeview": "16.10.0",
36
- "@progress/kendo-angular-upload": "16.10.0",
37
- "@progress/kendo-data-query": "1.7.0",
38
- "@progress/kendo-drawing": "1.20.4",
39
- "@progress/kendo-font-icons": "3.1.0",
16
+ "@progress/kendo-angular-buttons": "18.0.0",
17
+ "@progress/kendo-angular-common": "18.0.0",
18
+ "@progress/kendo-angular-dateinputs": "18.0.0",
19
+ "@progress/kendo-angular-dialog": "18.0.0",
20
+ "@progress/kendo-angular-dropdowns": "18.0.0",
21
+ "@progress/kendo-angular-grid": "18.0.0",
22
+ "@progress/kendo-angular-icons": "18.0.0",
23
+ "@progress/kendo-angular-indicators": "18.0.0",
24
+ "@progress/kendo-angular-inputs": "18.0.0",
25
+ "@progress/kendo-angular-intl": "18.0.0",
26
+ "@progress/kendo-angular-l10n": "18.0.0",
27
+ "@progress/kendo-angular-label": "18.0.0",
28
+ "@progress/kendo-angular-layout": "18.0.0",
29
+ "@progress/kendo-angular-menu": "18.0.0",
30
+ "@progress/kendo-angular-navigation": "18.0.0",
31
+ "@progress/kendo-angular-popup": "18.0.0",
32
+ "@progress/kendo-angular-progressbar": "18.0.0",
33
+ "@progress/kendo-angular-sortable": "18.0.0",
34
+ "@progress/kendo-angular-tooltip": "18.0.0",
35
+ "@progress/kendo-angular-treeview": "18.0.0",
36
+ "@progress/kendo-angular-upload": "18.0.0",
37
+ "@progress/kendo-data-query": "1.7.1",
38
+ "@progress/kendo-drawing": "1.21.2",
39
+ "@progress/kendo-font-icons": "4.0.0",
40
40
  "@progress/kendo-licensing": "1.3.5",
41
- "@progress/kendo-svg-icons": "3.1.0",
42
- "@progress/kendo-theme-default": "7.2.1",
41
+ "@progress/kendo-svg-icons": "4.0.0",
42
+ "@progress/kendo-theme-default": "10.2.0",
43
43
  "initials": "3.1.2",
44
44
  "ngx-toastr": "19.0.0",
45
- "tslib": "2.7.0"
45
+ "tslib": "2.8.1"
46
46
  },
47
47
  "module": "fesm2022/indigina-ui-kit.mjs",
48
48
  "typings": "index.d.ts",
@@ -52,8 +52,6 @@
52
52
  },
53
53
  ".": {
54
54
  "types": "./index.d.ts",
55
- "esm2022": "./esm2022/indigina-ui-kit.mjs",
56
- "esm": "./esm2022/indigina-ui-kit.mjs",
57
55
  "default": "./fesm2022/indigina-ui-kit.mjs"
58
56
  }
59
57
  },
package/public-api.d.ts CHANGED
@@ -107,6 +107,7 @@ export { KitMultiselectModule } from './lib/components/kit-multiselect/kit-multi
107
107
  export { KitMultiselectComponent } from './lib/components/kit-multiselect/kit-multiselect.component';
108
108
  export { KitMultiselectItem } from './lib/components/kit-multiselect/kit-multiselect.model';
109
109
  export { KitPopupComponent } from './lib/components/kit-popup/kit-popup.component';
110
+ export { KitPopupPositionMode, KitPopupAlignHorizontal, KitPopupAlignVertical, KitPopupAlign, } from './lib/components/kit-popup/kit-popup.model';
110
111
  export { KitInputLabelModule } from './lib/components/kit-input-label/kit-input-label.module';
111
112
  export { KitInputLabelComponent } from './lib/components/kit-input-label/kit-input-label.component';
112
113
  export { KitDatepickerModule } from './lib/components/kit-datepicker/kit-datepicker.module';
@@ -1,5 +1,4 @@
1
- @import "../spacings";
2
- @import "../colors";
1
+ @use "ngx-toastr/toastr";
3
2
 
4
3
  $z-index-base: 4500;
5
4
  $z-index-toast-container: $z-index-base + 500;
@@ -8,7 +7,7 @@ $z-index-toast-container: $z-index-base + 500;
8
7
  content: "";
9
8
  position: fixed;
10
9
  inset: 0;
11
- background-color: $color-black;
10
+ background-color: var(--ui-kit-color-black);
12
11
  opacity: 0.8;
13
12
  z-index: $z-index-toast-container;
14
13
  }
@@ -23,7 +22,7 @@ $z-index-toast-container: $z-index-base + 500;
23
22
  }
24
23
 
25
24
  .kit-toastr {
26
- margin-top: $spacing-20;
25
+ margin-top: 20px;
27
26
  box-shadow: none;
28
27
  z-index: $z-index-toast-container + 1;
29
28
 
@@ -0,0 +1,20 @@
1
+ /* default themes for kendo components which are used as shared components */
2
+ @use "@progress/kendo-theme-default/scss/index.scss" as *;
3
+ @use "@progress/kendo-font-icons/dist" as *;
4
+
5
+ @include kendo-button--styles();
6
+ @include kendo-avatar--styles();
7
+ @include kendo-menu--styles();
8
+ @include kendo-dropdown-list--styles();
9
+ @include kendo-date-time-picker--styles();
10
+ @include kendo-combobox--styles();
11
+ @include kendo-checkbox--styles();
12
+ @include kendo-switch--styles();
13
+ @include kendo-tooltip--styles();
14
+ @include kendo-dialog--styles();
15
+ @include kendo-skeleton--styles();
16
+ @include kendo-upload--styles();
17
+ @include kendo-panelbar--styles();
18
+ @include kendo-popup--styles();
19
+ @include kendo-grid--styles();
20
+ @include kendo-tile-layout--styles();
@@ -1,26 +1,6 @@
1
- /* default themes for kendo components which are used as shared components */
2
- @import "@progress/kendo-theme-default/scss/button";
3
- @import "@progress/kendo-theme-default/scss/avatar";
4
- @import "@progress/kendo-theme-default/scss/menu";
5
- @import "@progress/kendo-theme-default/scss/dropdownlist";
6
- @import "@progress/kendo-theme-default/scss/datetimepicker";
7
- @import "@progress/kendo-theme-default/scss/combobox";
8
- @import "@progress/kendo-theme-default/scss/checkbox";
9
- @import "@progress/kendo-theme-default/scss/switch";
10
- @import "@progress/kendo-theme-default/scss/tooltip";
11
- @import "@progress/kendo-theme-default/scss/dialog";
12
- @import "@progress/kendo-theme-default/scss/skeleton";
13
- @import "@progress/kendo-theme-default/scss/upload";
14
- @import "@progress/kendo-theme-default/scss/panelbar";
15
- @import "@progress/kendo-theme-default/scss/popup";
16
- @import "@progress/kendo-theme-default/scss/grid";
17
- @import "@progress/kendo-theme-default/scss/tilelayout";
18
- @import "@progress/kendo-font-icons/dist";
19
- @import "ngx-toastr/toastr";
20
-
21
- /* styles which need to be included by default into app styles */
22
- @import "common";
23
- @import "theming";
24
- @import "components/tooltip";
25
- @import "components/toastr";
26
- @import "components/badge";
1
+ @use "kendo";
2
+ @use "common";
3
+ @use "theming";
4
+ @use "components/tooltip";
5
+ @use "components/toastr";
6
+ @use "components/badge";
@@ -1,5 +1,3 @@
1
- @import "colors";
2
-
3
1
  /* default theme values */
4
2
  :root {
5
3
  /* common colors */
@@ -12,6 +10,7 @@
12
10
  --ui-kit-color-selected: #3678c366;
13
11
  --ui-kit-color-active: #3678c3;
14
12
  --ui-kit-color-focus: #56a2f733;
13
+ --ui-kit-color-background: #e4eeff;
15
14
 
16
15
  --ui-kit-color-grey-0: #252b30;
17
16
  --ui-kit-color-grey-2: #a7b2c3;
@@ -1,5 +0,0 @@
1
- /**
2
- * Generated bundle index. Do not edit.
3
- */
4
- export * from './public-api';
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kaWdpbmEtdWkta2l0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vcHJvamVjdHMvdWkta2l0L3NyYy9pbmRpZ2luYS11aS1raXQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLGNBQWMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9wdWJsaWMtYXBpJztcbiJdfQ==
@@ -1,170 +0,0 @@
1
- import { ChangeDetectionStrategy, Component, EventEmitter, forwardRef, Input, Output, ViewChild, ViewEncapsulation } from '@angular/core';
2
- import { NG_VALUE_ACCESSOR } from '@angular/forms';
3
- import { map } from 'rxjs/operators';
4
- import * as i0 from "@angular/core";
5
- import * as i1 from "@progress/kendo-angular-dropdowns";
6
- import * as i2 from "../kit-input-message/kit-input-message.component";
7
- import * as i3 from "../kit-loader/kit-loader.component";
8
- import * as i4 from "../kit-svg-icon/kit-svg-icon.component";
9
- import * as i5 from "../kit-input-label/kit-input-label.component";
10
- export class KitAutocompleteComponent {
11
- constructor(elementRef) {
12
- this.elementRef = elementRef;
13
- /**
14
- * Defines an items list which is going to be an autocomplete items data
15
- */
16
- this.items = [];
17
- /**
18
- * Defines whether the loader will be visible or not
19
- */
20
- this.loaderVisible = false;
21
- /**
22
- * Defines a state whether the component will be invalid
23
- */
24
- this.invalid = false;
25
- /**
26
- * An action which is emitted when input value changed
27
- */
28
- this.changed = new EventEmitter();
29
- /**
30
- * An action which is emitted once an item in the dropdown is selected
31
- */
32
- this.selected = new EventEmitter();
33
- /**
34
- * An action which is emitted when input lost focus
35
- */
36
- this.blured = new EventEmitter();
37
- /**
38
- * An action which is emitted when input field got focus
39
- */
40
- this.focused = new EventEmitter();
41
- this.combobox = null;
42
- /**
43
- * Function that emit normalized selected dropdown list item in case when
44
- * inputted data changed and component lost focus
45
- */
46
- this.normalizedSelectedValue$ = (text$) => text$.pipe(map((content) => {
47
- this.selectedValue = content && this.selectedValue || null;
48
- this.selected.emit(this.selectedValue);
49
- this.onChange(this.selectedValue || null);
50
- return this.selectedValue;
51
- }));
52
- /**
53
- * Settings for popup that will be opened as dropdown options list
54
- */
55
- this.dropdownPopupSettings = {
56
- appendTo: 'component',
57
- popupClass: 'kit-autocomplete-popup',
58
- };
59
- /**
60
- * Function that should be called every time the form control value changes
61
- */
62
- this.onChange = (value) => {
63
- };
64
- /**
65
- * Function that should be called when input lost focus and changed form control state to "touched"
66
- */
67
- this.onTouched = () => {
68
- };
69
- }
70
- /**
71
- * Callback function that return dropdown list item text
72
- */
73
- getOptionText(item) {
74
- return item.getText && item.getText() || item.text;
75
- }
76
- /**
77
- * Function that is called when input value changed
78
- */
79
- onFilterChange(value) {
80
- this.changed.emit(value);
81
- }
82
- /**
83
- * Function that is called when dropdown list item selected
84
- */
85
- onValueSelect(item) {
86
- if (!item) {
87
- return;
88
- }
89
- this.selectedValue = item;
90
- this.selected.emit(this.selectedValue);
91
- this.onChange(this.selectedValue);
92
- }
93
- /**
94
- * Function that is called when input field lost focus
95
- */
96
- onBlur() {
97
- this.onTouched();
98
- this.blured.emit();
99
- }
100
- /**
101
- * Function that is called when input field get focus
102
- */
103
- onFocus() {
104
- this.elementRef.nativeElement.querySelector('.k-input-inner').select();
105
- this.focused.emit();
106
- }
107
- /**
108
- * Toggles the visibility of the popup
109
- */
110
- togglePopup() {
111
- this.combobox?.toggle();
112
- }
113
- writeValue(value) {
114
- this.onChange(value);
115
- this.selectedValue = value;
116
- }
117
- registerOnChange(fn) {
118
- this.onChange = fn;
119
- }
120
- registerOnTouched(fn) {
121
- this.onTouched = fn;
122
- }
123
- setDisabledState(disabled) {
124
- this.disabled = disabled;
125
- }
126
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: KitAutocompleteComponent, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
127
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.6", type: KitAutocompleteComponent, selector: "kit-autocomplete", inputs: { label: "label", placeholder: "placeholder", items: "items", selectedValue: "selectedValue", disabled: "disabled", loaderVisible: "loaderVisible", messageIcon: "messageIcon", messageText: "messageText", invalid: "invalid" }, outputs: { changed: "changed", selected: "selected", blured: "blured", focused: "focused" }, providers: [{
128
- provide: NG_VALUE_ACCESSOR,
129
- useExisting: forwardRef(() => KitAutocompleteComponent),
130
- multi: true,
131
- }], viewQueries: [{ propertyName: "combobox", first: true, predicate: ["combobox"], descendants: true }], ngImport: i0, template: "<div class=\"kit-autocomplete\"\n [class.empty]=\"!items || !items.length\"\n [class.disabled]=\"disabled\"\n [class.loading]=\"loaderVisible\"\n [class.invalid]=\"invalid\">\n @if (label) {\n <kit-input-label class=\"label\"\n [text]=\"label\"\n [for]=\"$any(combobox)\"\n ></kit-input-label>\n }\n <div class=\"autocomplete-wrap\">\n <kendo-combobox #combobox\n textField=\"text\"\n valueField=\"value\"\n kendoDropDownFilter\n [data]=\"items\"\n [placeholder]=\"placeholder\"\n [filterable]=\"true\"\n [disabled]=\"disabled\"\n [clearButton]=\"false\"\n [value]=\"selectedValue\"\n [allowCustom]=\"true\"\n [valueNormalizer]=\"normalizedSelectedValue$\"\n [popupSettings]=\"dropdownPopupSettings\"\n (focus)=\"onFocus()\"\n (blur)=\"onBlur()\"\n (selectionChange)=\"onValueSelect($event)\"\n (filterChange)=\"onFilterChange($event)\">\n <ng-template kendoComboBoxHeaderTemplate>\n @if (loaderVisible) {\n <kit-loader class=\"popup-loader\"\n ></kit-loader>\n }\n </ng-template>\n <ng-template kendoComboBoxItemTemplate\n let-item>\n <span class=\"template\">{{ getOptionText(item) }}</span>\n </ng-template>\n </kendo-combobox>\n <kit-svg-icon class=\"input-icon\"\n icon=\"search\"\n ></kit-svg-icon>\n </div>\n @if (messageText) {\n <kit-input-message [icon]=\"messageIcon\"\n [message]=\"messageText\"\n ></kit-input-message>\n }\n</div>\n", styles: [".kit-autocomplete .label{display:block;margin-bottom:4px}.kit-autocomplete .autocomplete-wrap{position:relative;display:flex;align-items:center}.kit-autocomplete .k-input-button{display:none}.kit-autocomplete:hover .k-combobox{border-color:var(--ui-kit-color-hover)}.kit-autocomplete .k-combobox{height:40px;font-size:14px;font-weight:400;border-radius:8px;border:1px solid var(--ui-kit-color-grey-11);background-color:var(--ui-kit-color-white)}.kit-autocomplete .k-combobox.k-focus{border-color:var(--ui-kit-color-main);box-shadow:0 0 0 2px var(--ui-kit-color-focus)}.kit-autocomplete .k-combobox.k-focus+.input-icon{stroke:var(--ui-kit-color-main)}.kit-autocomplete .k-input-inner{padding:0 36px 0 12px;color:var(--ui-kit-color-grey-10);line-height:1}.kit-autocomplete .k-input-inner::placeholder{color:var(--ui-kit-color-grey-12)}.kit-autocomplete .k-input-inner::selection{color:var(--ui-kit-color-white);background:var(--ui-kit-color-main)}.kit-autocomplete .popup-loader{height:100%}.kit-autocomplete .kit-loader,.kit-autocomplete .kit-loader>div{height:100%}.kit-autocomplete .kit-loader .circle{box-sizing:content-box}.kit-autocomplete .input-icon{position:absolute;right:0;padding:0 12px 0 8px;width:16px;height:16px;fill:none;stroke:var(--ui-kit-color-grey-12)}.kit-autocomplete.disabled .k-combobox{border-color:var(--ui-kit-color-grey-12)}.kit-autocomplete.disabled .k-input-inner{color:var(--ui-kit-color-grey-12);background-color:var(--ui-kit-color-grey-13)}.kit-autocomplete.disabled .input-icon{stroke:var(--ui-kit-color-grey-12)}.kit-autocomplete.empty .kit-autocomplete-popup{display:none}.kit-autocomplete.loading .kit-autocomplete-popup{display:block;height:200px}.kit-autocomplete.loading .kit-autocomplete-popup .k-no-data,.kit-autocomplete.loading .kit-autocomplete-popup .k-list{display:none}.kit-autocomplete.invalid .k-combobox{border-color:var(--ui-kit-color-red-1)}.kit-autocomplete.invalid .input-icon{stroke:var(--ui-kit-color-red-1)}.kit-autocomplete .kit-autocomplete-popup{margin-top:10px;padding:8px;width:296px;border:none;border-radius:8px;box-shadow:0 9px 28px 8px #0000000d,0 3px 6px -4px #0000001f,0 6px 16px #00000014;background-color:var(--ui-kit-color-white)}.kit-autocomplete .kit-autocomplete-popup .k-list-item{padding:6px 12px;font-size:14px;font-weight:400;line-height:1.26;box-shadow:none;border-radius:4px;background-color:var(--ui-kit-color-white);color:var(--ui-kit-color-grey-10)}.kit-autocomplete .kit-autocomplete-popup .k-list-item:hover{color:var(--ui-kit-color-main)}\n"], dependencies: [{ kind: "directive", type: i1.HeaderTemplateDirective, selector: "[kendoDropDownListHeaderTemplate],[kendoComboBoxHeaderTemplate],[kendoDropDownTreeHeaderTemplate],[kendoMultiColumnComboBoxHeaderTemplate],[kendoAutoCompleteHeaderTemplate],[kendoMultiSelectHeaderTemplate],[kendoMultiSelectTreeHeaderTemplate]" }, { kind: "directive", type: i1.ItemTemplateDirective, selector: "[kendoDropDownListItemTemplate],[kendoComboBoxItemTemplate],[kendoAutoCompleteItemTemplate],[kendoMultiSelectItemTemplate]" }, { kind: "directive", type: i1.FilterDirective, selector: "[kendoDropDownFilter]", inputs: ["data", "kendoDropDownFilter", "filterable"] }, { kind: "component", type: i1.ComboBoxComponent, selector: "kendo-combobox", inputs: ["icon", "svgIcon", "inputAttributes", "showStickyHeader", "focusableId", "allowCustom", "data", "value", "textField", "valueField", "valuePrimitive", "valueNormalizer", "placeholder", "adaptiveMode", "title", "subtitle", "popupSettings", "listHeight", "loading", "suggest", "clearButton", "disabled", "itemDisabled", "readonly", "tabindex", "tabIndex", "filterable", "virtual", "size", "rounded", "fillMode"], outputs: ["valueChange", "selectionChange", "filterChange", "open", "opened", "close", "closed", "focus", "blur", "inputFocus", "inputBlur", "escape"], exportAs: ["kendoComboBox"] }, { kind: "component", type: i2.KitInputMessageComponent, selector: "kit-input-message", inputs: ["icon", "message"] }, { kind: "component", type: i3.KitLoaderComponent, selector: "kit-loader" }, { kind: "component", type: i4.KitSvgIconComponent, selector: "kit-svg-icon", inputs: ["icon", "iconClass"] }, { kind: "component", type: i5.KitInputLabelComponent, selector: "kit-input-label", inputs: ["text", "for", "tooltip"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
132
- }
133
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: KitAutocompleteComponent, decorators: [{
134
- type: Component,
135
- args: [{ selector: 'kit-autocomplete', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, providers: [{
136
- provide: NG_VALUE_ACCESSOR,
137
- useExisting: forwardRef(() => KitAutocompleteComponent),
138
- multi: true,
139
- }], template: "<div class=\"kit-autocomplete\"\n [class.empty]=\"!items || !items.length\"\n [class.disabled]=\"disabled\"\n [class.loading]=\"loaderVisible\"\n [class.invalid]=\"invalid\">\n @if (label) {\n <kit-input-label class=\"label\"\n [text]=\"label\"\n [for]=\"$any(combobox)\"\n ></kit-input-label>\n }\n <div class=\"autocomplete-wrap\">\n <kendo-combobox #combobox\n textField=\"text\"\n valueField=\"value\"\n kendoDropDownFilter\n [data]=\"items\"\n [placeholder]=\"placeholder\"\n [filterable]=\"true\"\n [disabled]=\"disabled\"\n [clearButton]=\"false\"\n [value]=\"selectedValue\"\n [allowCustom]=\"true\"\n [valueNormalizer]=\"normalizedSelectedValue$\"\n [popupSettings]=\"dropdownPopupSettings\"\n (focus)=\"onFocus()\"\n (blur)=\"onBlur()\"\n (selectionChange)=\"onValueSelect($event)\"\n (filterChange)=\"onFilterChange($event)\">\n <ng-template kendoComboBoxHeaderTemplate>\n @if (loaderVisible) {\n <kit-loader class=\"popup-loader\"\n ></kit-loader>\n }\n </ng-template>\n <ng-template kendoComboBoxItemTemplate\n let-item>\n <span class=\"template\">{{ getOptionText(item) }}</span>\n </ng-template>\n </kendo-combobox>\n <kit-svg-icon class=\"input-icon\"\n icon=\"search\"\n ></kit-svg-icon>\n </div>\n @if (messageText) {\n <kit-input-message [icon]=\"messageIcon\"\n [message]=\"messageText\"\n ></kit-input-message>\n }\n</div>\n", styles: [".kit-autocomplete .label{display:block;margin-bottom:4px}.kit-autocomplete .autocomplete-wrap{position:relative;display:flex;align-items:center}.kit-autocomplete .k-input-button{display:none}.kit-autocomplete:hover .k-combobox{border-color:var(--ui-kit-color-hover)}.kit-autocomplete .k-combobox{height:40px;font-size:14px;font-weight:400;border-radius:8px;border:1px solid var(--ui-kit-color-grey-11);background-color:var(--ui-kit-color-white)}.kit-autocomplete .k-combobox.k-focus{border-color:var(--ui-kit-color-main);box-shadow:0 0 0 2px var(--ui-kit-color-focus)}.kit-autocomplete .k-combobox.k-focus+.input-icon{stroke:var(--ui-kit-color-main)}.kit-autocomplete .k-input-inner{padding:0 36px 0 12px;color:var(--ui-kit-color-grey-10);line-height:1}.kit-autocomplete .k-input-inner::placeholder{color:var(--ui-kit-color-grey-12)}.kit-autocomplete .k-input-inner::selection{color:var(--ui-kit-color-white);background:var(--ui-kit-color-main)}.kit-autocomplete .popup-loader{height:100%}.kit-autocomplete .kit-loader,.kit-autocomplete .kit-loader>div{height:100%}.kit-autocomplete .kit-loader .circle{box-sizing:content-box}.kit-autocomplete .input-icon{position:absolute;right:0;padding:0 12px 0 8px;width:16px;height:16px;fill:none;stroke:var(--ui-kit-color-grey-12)}.kit-autocomplete.disabled .k-combobox{border-color:var(--ui-kit-color-grey-12)}.kit-autocomplete.disabled .k-input-inner{color:var(--ui-kit-color-grey-12);background-color:var(--ui-kit-color-grey-13)}.kit-autocomplete.disabled .input-icon{stroke:var(--ui-kit-color-grey-12)}.kit-autocomplete.empty .kit-autocomplete-popup{display:none}.kit-autocomplete.loading .kit-autocomplete-popup{display:block;height:200px}.kit-autocomplete.loading .kit-autocomplete-popup .k-no-data,.kit-autocomplete.loading .kit-autocomplete-popup .k-list{display:none}.kit-autocomplete.invalid .k-combobox{border-color:var(--ui-kit-color-red-1)}.kit-autocomplete.invalid .input-icon{stroke:var(--ui-kit-color-red-1)}.kit-autocomplete .kit-autocomplete-popup{margin-top:10px;padding:8px;width:296px;border:none;border-radius:8px;box-shadow:0 9px 28px 8px #0000000d,0 3px 6px -4px #0000001f,0 6px 16px #00000014;background-color:var(--ui-kit-color-white)}.kit-autocomplete .kit-autocomplete-popup .k-list-item{padding:6px 12px;font-size:14px;font-weight:400;line-height:1.26;box-shadow:none;border-radius:4px;background-color:var(--ui-kit-color-white);color:var(--ui-kit-color-grey-10)}.kit-autocomplete .kit-autocomplete-popup .k-list-item:hover{color:var(--ui-kit-color-main)}\n"] }]
140
- }], ctorParameters: () => [{ type: i0.ElementRef }], propDecorators: { label: [{
141
- type: Input
142
- }], placeholder: [{
143
- type: Input
144
- }], items: [{
145
- type: Input
146
- }], selectedValue: [{
147
- type: Input
148
- }], disabled: [{
149
- type: Input
150
- }], loaderVisible: [{
151
- type: Input
152
- }], messageIcon: [{
153
- type: Input
154
- }], messageText: [{
155
- type: Input
156
- }], invalid: [{
157
- type: Input
158
- }], changed: [{
159
- type: Output
160
- }], selected: [{
161
- type: Output
162
- }], blured: [{
163
- type: Output
164
- }], focused: [{
165
- type: Output
166
- }], combobox: [{
167
- type: ViewChild,
168
- args: ['combobox']
169
- }] } });
170
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2l0LWF1dG9jb21wbGV0ZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1raXQvc3JjL2xpYi9jb21wb25lbnRzL2tpdC1hdXRvY29tcGxldGUva2l0LWF1dG9jb21wbGV0ZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1raXQvc3JjL2xpYi9jb21wb25lbnRzL2tpdC1hdXRvY29tcGxldGUva2l0LWF1dG9jb21wbGV0ZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFjLFlBQVksRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFdEosT0FBTyxFQUF3QixpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3pFLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7OztBQXdCckMsTUFBTSxPQUFPLHdCQUF3QjtJQXlGbkMsWUFDVSxVQUFzQjtRQUF0QixlQUFVLEdBQVYsVUFBVSxDQUFZO1FBL0VoQzs7V0FFRztRQUNNLFVBQUssR0FBNkIsRUFBRSxDQUFDO1FBWTlDOztXQUVHO1FBQ00sa0JBQWEsR0FBWSxLQUFLLENBQUM7UUFZeEM7O1dBRUc7UUFDTSxZQUFPLEdBQWEsS0FBSyxDQUFDO1FBRW5DOztXQUVHO1FBQ08sWUFBTyxHQUF5QixJQUFJLFlBQVksRUFBVSxDQUFDO1FBRXJFOztXQUVHO1FBQ08sYUFBUSxHQUFnRCxJQUFJLFlBQVksRUFBaUMsQ0FBQztRQUVwSDs7V0FFRztRQUNPLFdBQU0sR0FBdUIsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQUVoRTs7V0FFRztRQUNPLFlBQU8sR0FBdUIsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQUVsQyxhQUFRLEdBQTZCLElBQUksQ0FBQztRQUV6RTs7O1dBR0c7UUFDTSw2QkFBd0IsR0FBRyxDQUFDLEtBQXlCLEVBQTZDLEVBQUUsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUN0SCxHQUFHLENBQUMsQ0FBQyxPQUFlLEVBQUUsRUFBRTtZQUN0QixJQUFJLENBQUMsYUFBYSxHQUFHLE9BQU8sSUFBSSxJQUFJLENBQUMsYUFBYSxJQUFJLElBQUksQ0FBQztZQUMzRCxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUM7WUFDdkMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsYUFBYSxJQUFJLElBQUksQ0FBQyxDQUFDO1lBQzFDLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQztRQUM1QixDQUFDLENBQUMsQ0FDSCxDQUFDO1FBRUY7O1dBRUc7UUFDTSwwQkFBcUIsR0FBa0I7WUFDOUMsUUFBUSxFQUFFLFdBQVc7WUFDckIsVUFBVSxFQUFFLHdCQUF3QjtTQUNyQyxDQUFDO1FBd0RGOztXQUVHO1FBQ0gsYUFBUSxHQUFHLENBQUMsS0FBb0MsRUFBUSxFQUFFO1FBQzFELENBQUMsQ0FBQztRQUVGOztXQUVHO1FBQ0gsY0FBUyxHQUFHLEdBQVMsRUFBRTtRQUN2QixDQUFDLENBQUM7SUE3REYsQ0FBQztJQUVEOztPQUVHO0lBQ0gsYUFBYSxDQUFDLElBQTRCO1FBQ3hDLE9BQU8sSUFBSSxDQUFDLE9BQU8sSUFBSSxJQUFJLENBQUMsT0FBTyxFQUFFLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQztJQUNyRCxDQUFDO0lBRUQ7O09BRUc7SUFDSCxjQUFjLENBQUMsS0FBYTtRQUMxQixJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMzQixDQUFDO0lBRUQ7O09BRUc7SUFDSCxhQUFhLENBQUMsSUFBbUM7UUFDL0MsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO1lBQ1YsT0FBTztRQUNULENBQUM7UUFDRCxJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQztRQUMxQixJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDdkMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUM7SUFDcEMsQ0FBQztJQUVEOztPQUVHO0lBQ0gsTUFBTTtRQUNKLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztRQUNqQixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3JCLENBQUM7SUFFRDs7T0FFRztJQUNILE9BQU87UUFDTCxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxhQUFhLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUN2RSxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3RCLENBQUM7SUFFRDs7T0FFRztJQUNILFdBQVc7UUFDVCxJQUFJLENBQUMsUUFBUSxFQUFFLE1BQU0sRUFBRSxDQUFDO0lBQzFCLENBQUM7SUFjRCxVQUFVLENBQUMsS0FBNkI7UUFDdEMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNyQixJQUFJLENBQUMsYUFBYSxHQUFHLEtBQUssQ0FBQztJQUM3QixDQUFDO0lBRUQsZ0JBQWdCLENBQUMsRUFBOEM7UUFDN0QsSUFBSSxDQUFDLFFBQVEsR0FBRyxFQUFFLENBQUM7SUFDckIsQ0FBQztJQUVELGlCQUFpQixDQUFDLEVBQWM7UUFDOUIsSUFBSSxDQUFDLFNBQVMsR0FBRyxFQUFFLENBQUM7SUFDdEIsQ0FBQztJQUVELGdCQUFnQixDQUFDLFFBQWlCO1FBQ2hDLElBQUksQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFDO0lBQzNCLENBQUM7OEdBMUtVLHdCQUF3QjtrR0FBeEIsd0JBQXdCLGtYQVB4QixDQUFDO2dCQUNWLE9BQU8sRUFBRSxpQkFBaUI7Z0JBQzFCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsd0JBQXdCLENBQUM7Z0JBQ3ZELEtBQUssRUFBRSxJQUFJO2FBQ1osQ0FBQyxnSUN4QkosNnpEQWtEQTs7MkZEdkJhLHdCQUF3QjtrQkFicEMsU0FBUzsrQkFDRSxrQkFBa0IsbUJBR1gsdUJBQXVCLENBQUMsTUFBTSxpQkFDaEMsaUJBQWlCLENBQUMsSUFBSSxhQUMxQixDQUFDOzRCQUNWLE9BQU8sRUFBRSxpQkFBaUI7NEJBQzFCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLHlCQUF5QixDQUFDOzRCQUN2RCxLQUFLLEVBQUUsSUFBSTt5QkFDWixDQUFDOytFQU9PLEtBQUs7c0JBQWIsS0FBSztnQkFLRyxXQUFXO3NCQUFuQixLQUFLO2dCQUtHLEtBQUs7c0JBQWIsS0FBSztnQkFLRyxhQUFhO3NCQUFyQixLQUFLO2dCQUtHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBS0csYUFBYTtzQkFBckIsS0FBSztnQkFLRyxXQUFXO3NCQUFuQixLQUFLO2dCQUtHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBS0csT0FBTztzQkFBZixLQUFLO2dCQUtJLE9BQU87c0JBQWhCLE1BQU07Z0JBS0csUUFBUTtzQkFBakIsTUFBTTtnQkFLRyxNQUFNO3NCQUFmLE1BQU07Z0JBS0csT0FBTztzQkFBaEIsTUFBTTtnQkFFd0IsUUFBUTtzQkFBdEMsU0FBUzt1QkFBQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgRWxlbWVudFJlZiwgRXZlbnRFbWl0dGVyLCBmb3J3YXJkUmVmLCBJbnB1dCwgT3V0cHV0LCBWaWV3Q2hpbGQsIFZpZXdFbmNhcHN1bGF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBLaXRTdmdJY29uIH0gZnJvbSAnLi4va2l0LXN2Zy1pY29uL2tpdC1zdmctaWNvbi5jb25zdCc7XG5pbXBvcnQgeyBDb250cm9sVmFsdWVBY2Nlc3NvciwgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBtYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBDb21ib0JveENvbXBvbmVudCwgUG9wdXBTZXR0aW5ncyB9IGZyb20gJ0Bwcm9ncmVzcy9rZW5kby1hbmd1bGFyLWRyb3Bkb3ducyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgS2l0QXV0b2NvbXBsZXRlSXRlbTxUPiB7XG4gIHRleHQ6IHN0cmluZztcbiAgdmFsdWU6IFQ7XG5cbiAgZ2V0VGV4dD8oKTogc3RyaW5nO1xufVxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdraXQtYXV0b2NvbXBsZXRlJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2tpdC1hdXRvY29tcGxldGUuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9raXQtYXV0b2NvbXBsZXRlLmNvbXBvbmVudC5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBwcm92aWRlcnM6IFt7XG4gICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gS2l0QXV0b2NvbXBsZXRlQ29tcG9uZW50KSxcbiAgICBtdWx0aTogdHJ1ZSxcbiAgfV0sXG59KVxuXG5leHBvcnQgY2xhc3MgS2l0QXV0b2NvbXBsZXRlQ29tcG9uZW50PFQ+IGltcGxlbWVudHMgQ29udHJvbFZhbHVlQWNjZXNzb3Ige1xuICAvKipcbiAgICogRGVmaW5lcyBhIHZhbHVlIHRoYXQgaXMgZ29pbmcgdG8gYmUgYXBwbGllZCBhcyBhbiBpbnB1dCBsYWJlbFxuICAgKi9cbiAgQElucHV0KCkgbGFiZWw/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIERlZmluZXMgYSB2YWx1ZSB0aGF0IGlzIGdvaW5nIHRvIGJlIGFwcGxpZWQgYXMgYW4gaW5wdXQgcGxhY2Vob2xkZXJcbiAgICovXG4gIEBJbnB1dCgpIHBsYWNlaG9sZGVyPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBEZWZpbmVzIGFuIGl0ZW1zIGxpc3Qgd2hpY2ggaXMgZ29pbmcgdG8gYmUgYW4gYXV0b2NvbXBsZXRlIGl0ZW1zIGRhdGFcbiAgICovXG4gIEBJbnB1dCgpIGl0ZW1zOiBLaXRBdXRvY29tcGxldGVJdGVtPFQ+W10gPSBbXTtcblxuICAvKipcbiAgICogQW4gaXRlbSB3aGljaCBpcyBnb2luZyB0byBiZSBhbiBhdXRvY29tcGxldGUgc2VsZWN0ZWQgdmFsdWVcbiAgICovXG4gIEBJbnB1dCgpIHNlbGVjdGVkVmFsdWU/OiBLaXRBdXRvY29tcGxldGVJdGVtPFQ+IHwgbnVsbDtcblxuICAvKipcbiAgICogRGVmaW5lcyB3aGV0aGVyIHRoZSBjb21wb25lbnQgd2lsbCBiZSBpbiBkaXNhYmxlZCBzdGF0ZVxuICAgKi9cbiAgQElucHV0KCkgZGlzYWJsZWQ/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBEZWZpbmVzIHdoZXRoZXIgdGhlIGxvYWRlciB3aWxsIGJlIHZpc2libGUgb3Igbm90XG4gICAqL1xuICBASW5wdXQoKSBsb2FkZXJWaXNpYmxlOiBib29sZWFuID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIERlZmluZXMgYW4gaWNvbiB3aGljaCB3aWxsIGJlIHVzZWQgdG8gdGhlIGxlZnQgb2YgdGhlIGluZm8gbWVzc2FnZVxuICAgKi9cbiAgQElucHV0KCkgbWVzc2FnZUljb24/OiBLaXRTdmdJY29uO1xuXG4gIC8qKlxuICAgKiBEZWZpbmVzIGEgdmFsdWUgd2hpY2ggZ29pbmcgdG8gYmUgYW4gaW5mbyBtZXNzYWdlIHRleHRcbiAgICovXG4gIEBJbnB1dCgpIG1lc3NhZ2VUZXh0Pzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBEZWZpbmVzIGEgc3RhdGUgd2hldGhlciB0aGUgY29tcG9uZW50IHdpbGwgYmUgaW52YWxpZFxuICAgKi9cbiAgQElucHV0KCkgaW52YWxpZD86IGJvb2xlYW4gPSBmYWxzZTtcblxuICAvKipcbiAgICogQW4gYWN0aW9uIHdoaWNoIGlzIGVtaXR0ZWQgd2hlbiBpbnB1dCB2YWx1ZSBjaGFuZ2VkXG4gICAqL1xuICBAT3V0cHV0KCkgY2hhbmdlZDogRXZlbnRFbWl0dGVyPHN0cmluZz4gPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKTtcblxuICAvKipcbiAgICogQW4gYWN0aW9uIHdoaWNoIGlzIGVtaXR0ZWQgb25jZSBhbiBpdGVtIGluIHRoZSBkcm9wZG93biBpcyBzZWxlY3RlZFxuICAgKi9cbiAgQE91dHB1dCgpIHNlbGVjdGVkOiBFdmVudEVtaXR0ZXI8S2l0QXV0b2NvbXBsZXRlSXRlbTxUPiB8IG51bGw+ID0gbmV3IEV2ZW50RW1pdHRlcjxLaXRBdXRvY29tcGxldGVJdGVtPFQ+IHwgbnVsbD4oKTtcblxuICAvKipcbiAgICogQW4gYWN0aW9uIHdoaWNoIGlzIGVtaXR0ZWQgd2hlbiBpbnB1dCBsb3N0IGZvY3VzXG4gICAqL1xuICBAT3V0cHV0KCkgYmx1cmVkOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG5cbiAgLyoqXG4gICAqIEFuIGFjdGlvbiB3aGljaCBpcyBlbWl0dGVkIHdoZW4gaW5wdXQgZmllbGQgZ290IGZvY3VzXG4gICAqL1xuICBAT3V0cHV0KCkgZm9jdXNlZDogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuXG4gIEBWaWV3Q2hpbGQoJ2NvbWJvYm94JykgcHJpdmF0ZSBjb21ib2JveDogQ29tYm9Cb3hDb21wb25lbnQgfCBudWxsID0gbnVsbDtcblxuICAvKipcbiAgICogRnVuY3Rpb24gdGhhdCBlbWl0IG5vcm1hbGl6ZWQgc2VsZWN0ZWQgZHJvcGRvd24gbGlzdCBpdGVtIGluIGNhc2Ugd2hlblxuICAgKiBpbnB1dHRlZCBkYXRhIGNoYW5nZWQgYW5kIGNvbXBvbmVudCBsb3N0IGZvY3VzXG4gICAqL1xuICByZWFkb25seSBub3JtYWxpemVkU2VsZWN0ZWRWYWx1ZSQgPSAodGV4dCQ6IE9ic2VydmFibGU8c3RyaW5nPik6IE9ic2VydmFibGU8S2l0QXV0b2NvbXBsZXRlSXRlbTxUPiB8IG51bGw+ID0+IHRleHQkLnBpcGUoXG4gICAgbWFwKChjb250ZW50OiBzdHJpbmcpID0+IHtcbiAgICAgIHRoaXMuc2VsZWN0ZWRWYWx1ZSA9IGNvbnRlbnQgJiYgdGhpcy5zZWxlY3RlZFZhbHVlIHx8IG51bGw7XG4gICAgICB0aGlzLnNlbGVjdGVkLmVtaXQodGhpcy5zZWxlY3RlZFZhbHVlKTtcbiAgICAgIHRoaXMub25DaGFuZ2UodGhpcy5zZWxlY3RlZFZhbHVlIHx8IG51bGwpO1xuICAgICAgcmV0dXJuIHRoaXMuc2VsZWN0ZWRWYWx1ZTtcbiAgICB9KSxcbiAgKTtcblxuICAvKipcbiAgICogU2V0dGluZ3MgZm9yIHBvcHVwIHRoYXQgd2lsbCBiZSBvcGVuZWQgYXMgZHJvcGRvd24gb3B0aW9ucyBsaXN0XG4gICAqL1xuICByZWFkb25seSBkcm9wZG93blBvcHVwU2V0dGluZ3M6IFBvcHVwU2V0dGluZ3MgPSB7XG4gICAgYXBwZW5kVG86ICdjb21wb25lbnQnLFxuICAgIHBvcHVwQ2xhc3M6ICdraXQtYXV0b2NvbXBsZXRlLXBvcHVwJyxcbiAgfTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYsXG4gICkge1xuICB9XG5cbiAgLyoqXG4gICAqIENhbGxiYWNrIGZ1bmN0aW9uIHRoYXQgcmV0dXJuIGRyb3Bkb3duIGxpc3QgaXRlbSB0ZXh0XG4gICAqL1xuICBnZXRPcHRpb25UZXh0KGl0ZW06IEtpdEF1dG9jb21wbGV0ZUl0ZW08VD4pOiBzdHJpbmcge1xuICAgIHJldHVybiBpdGVtLmdldFRleHQgJiYgaXRlbS5nZXRUZXh0KCkgfHwgaXRlbS50ZXh0O1xuICB9XG5cbiAgLyoqXG4gICAqIEZ1bmN0aW9uIHRoYXQgaXMgY2FsbGVkIHdoZW4gaW5wdXQgdmFsdWUgY2hhbmdlZFxuICAgKi9cbiAgb25GaWx0ZXJDaGFuZ2UodmFsdWU6IHN0cmluZyk6IHZvaWQge1xuICAgIHRoaXMuY2hhbmdlZC5lbWl0KHZhbHVlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBGdW5jdGlvbiB0aGF0IGlzIGNhbGxlZCB3aGVuIGRyb3Bkb3duIGxpc3QgaXRlbSBzZWxlY3RlZFxuICAgKi9cbiAgb25WYWx1ZVNlbGVjdChpdGVtOiBLaXRBdXRvY29tcGxldGVJdGVtPFQ+IHwgbnVsbCk6IHZvaWQge1xuICAgIGlmICghaXRlbSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLnNlbGVjdGVkVmFsdWUgPSBpdGVtO1xuICAgIHRoaXMuc2VsZWN0ZWQuZW1pdCh0aGlzLnNlbGVjdGVkVmFsdWUpO1xuICAgIHRoaXMub25DaGFuZ2UodGhpcy5zZWxlY3RlZFZhbHVlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBGdW5jdGlvbiB0aGF0IGlzIGNhbGxlZCB3aGVuIGlucHV0IGZpZWxkIGxvc3QgZm9jdXNcbiAgICovXG4gIG9uQmx1cigpOiB2b2lkIHtcbiAgICB0aGlzLm9uVG91Y2hlZCgpO1xuICAgIHRoaXMuYmx1cmVkLmVtaXQoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBGdW5jdGlvbiB0aGF0IGlzIGNhbGxlZCB3aGVuIGlucHV0IGZpZWxkIGdldCBmb2N1c1xuICAgKi9cbiAgb25Gb2N1cygpOiB2b2lkIHtcbiAgICB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5xdWVyeVNlbGVjdG9yKCcuay1pbnB1dC1pbm5lcicpLnNlbGVjdCgpO1xuICAgIHRoaXMuZm9jdXNlZC5lbWl0KCk7XG4gIH1cblxuICAvKipcbiAgICogVG9nZ2xlcyB0aGUgdmlzaWJpbGl0eSBvZiB0aGUgcG9wdXBcbiAgICovXG4gIHRvZ2dsZVBvcHVwKCk6IHZvaWQge1xuICAgIHRoaXMuY29tYm9ib3g/LnRvZ2dsZSgpO1xuICB9XG5cbiAgLyoqXG4gICAqIEZ1bmN0aW9uIHRoYXQgc2hvdWxkIGJlIGNhbGxlZCBldmVyeSB0aW1lIHRoZSBmb3JtIGNvbnRyb2wgdmFsdWUgY2hhbmdlc1xuICAgKi9cbiAgb25DaGFuZ2UgPSAodmFsdWU6IEtpdEF1dG9jb21wbGV0ZUl0ZW08VD4gfCBudWxsKTogdm9pZCA9PiB7XG4gIH07XG5cbiAgLyoqXG4gICAqIEZ1bmN0aW9uIHRoYXQgc2hvdWxkIGJlIGNhbGxlZCB3aGVuIGlucHV0IGxvc3QgZm9jdXMgYW5kIGNoYW5nZWQgZm9ybSBjb250cm9sIHN0YXRlIHRvIFwidG91Y2hlZFwiXG4gICAqL1xuICBvblRvdWNoZWQgPSAoKTogdm9pZCA9PiB7XG4gIH07XG5cbiAgd3JpdGVWYWx1ZSh2YWx1ZTogS2l0QXV0b2NvbXBsZXRlSXRlbTxUPik6IHZvaWQge1xuICAgIHRoaXMub25DaGFuZ2UodmFsdWUpO1xuICAgIHRoaXMuc2VsZWN0ZWRWYWx1ZSA9IHZhbHVlO1xuICB9XG5cbiAgcmVnaXN0ZXJPbkNoYW5nZShmbjogKF86IEtpdEF1dG9jb21wbGV0ZUl0ZW08VD4gfCBudWxsKSA9PiB2b2lkKTogdm9pZCB7XG4gICAgdGhpcy5vbkNoYW5nZSA9IGZuO1xuICB9XG5cbiAgcmVnaXN0ZXJPblRvdWNoZWQoZm46ICgpID0+IHZvaWQpOiB2b2lkIHtcbiAgICB0aGlzLm9uVG91Y2hlZCA9IGZuO1xuICB9XG5cbiAgc2V0RGlzYWJsZWRTdGF0ZShkaXNhYmxlZDogYm9vbGVhbik6IHZvaWQge1xuICAgIHRoaXMuZGlzYWJsZWQgPSBkaXNhYmxlZDtcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImtpdC1hdXRvY29tcGxldGVcIlxuICAgICBbY2xhc3MuZW1wdHldPVwiIWl0ZW1zIHx8ICFpdGVtcy5sZW5ndGhcIlxuICAgICBbY2xhc3MuZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgICBbY2xhc3MubG9hZGluZ109XCJsb2FkZXJWaXNpYmxlXCJcbiAgICAgW2NsYXNzLmludmFsaWRdPVwiaW52YWxpZFwiPlxuICBAaWYgKGxhYmVsKSB7XG4gICAgPGtpdC1pbnB1dC1sYWJlbCBjbGFzcz1cImxhYmVsXCJcbiAgICAgICAgICAgICAgICAgICAgIFt0ZXh0XT1cImxhYmVsXCJcbiAgICAgICAgICAgICAgICAgICAgIFtmb3JdPVwiJGFueShjb21ib2JveClcIlxuICAgID48L2tpdC1pbnB1dC1sYWJlbD5cbiAgfVxuICA8ZGl2IGNsYXNzPVwiYXV0b2NvbXBsZXRlLXdyYXBcIj5cbiAgICA8a2VuZG8tY29tYm9ib3ggI2NvbWJvYm94XG4gICAgICAgICAgICAgICAgICAgIHRleHRGaWVsZD1cInRleHRcIlxuICAgICAgICAgICAgICAgICAgICB2YWx1ZUZpZWxkPVwidmFsdWVcIlxuICAgICAgICAgICAgICAgICAgICBrZW5kb0Ryb3BEb3duRmlsdGVyXG4gICAgICAgICAgICAgICAgICAgIFtkYXRhXT1cIml0ZW1zXCJcbiAgICAgICAgICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyXCJcbiAgICAgICAgICAgICAgICAgICAgW2ZpbHRlcmFibGVdPVwidHJ1ZVwiXG4gICAgICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgICAgICAgICAgICAgICAgIFtjbGVhckJ1dHRvbl09XCJmYWxzZVwiXG4gICAgICAgICAgICAgICAgICAgIFt2YWx1ZV09XCJzZWxlY3RlZFZhbHVlXCJcbiAgICAgICAgICAgICAgICAgICAgW2FsbG93Q3VzdG9tXT1cInRydWVcIlxuICAgICAgICAgICAgICAgICAgICBbdmFsdWVOb3JtYWxpemVyXT1cIm5vcm1hbGl6ZWRTZWxlY3RlZFZhbHVlJFwiXG4gICAgICAgICAgICAgICAgICAgIFtwb3B1cFNldHRpbmdzXT1cImRyb3Bkb3duUG9wdXBTZXR0aW5nc1wiXG4gICAgICAgICAgICAgICAgICAgIChmb2N1cyk9XCJvbkZvY3VzKClcIlxuICAgICAgICAgICAgICAgICAgICAoYmx1cik9XCJvbkJsdXIoKVwiXG4gICAgICAgICAgICAgICAgICAgIChzZWxlY3Rpb25DaGFuZ2UpPVwib25WYWx1ZVNlbGVjdCgkZXZlbnQpXCJcbiAgICAgICAgICAgICAgICAgICAgKGZpbHRlckNoYW5nZSk9XCJvbkZpbHRlckNoYW5nZSgkZXZlbnQpXCI+XG4gICAgICA8bmctdGVtcGxhdGUga2VuZG9Db21ib0JveEhlYWRlclRlbXBsYXRlPlxuICAgICAgICBAaWYgKGxvYWRlclZpc2libGUpIHtcbiAgICAgICAgICA8a2l0LWxvYWRlciBjbGFzcz1cInBvcHVwLWxvYWRlclwiXG4gICAgICAgICAgPjwva2l0LWxvYWRlcj5cbiAgICAgICAgfVxuICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgIDxuZy10ZW1wbGF0ZSBrZW5kb0NvbWJvQm94SXRlbVRlbXBsYXRlXG4gICAgICAgICAgICAgICAgICAgbGV0LWl0ZW0+XG4gICAgICAgIDxzcGFuIGNsYXNzPVwidGVtcGxhdGVcIj57eyBnZXRPcHRpb25UZXh0KGl0ZW0pIH19PC9zcGFuPlxuICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8L2tlbmRvLWNvbWJvYm94PlxuICAgIDxraXQtc3ZnLWljb24gY2xhc3M9XCJpbnB1dC1pY29uXCJcbiAgICAgICAgICAgICAgICAgIGljb249XCJzZWFyY2hcIlxuICAgID48L2tpdC1zdmctaWNvbj5cbiAgPC9kaXY+XG4gIEBpZiAobWVzc2FnZVRleHQpIHtcbiAgICA8a2l0LWlucHV0LW1lc3NhZ2UgW2ljb25dPVwibWVzc2FnZUljb25cIlxuICAgICAgICAgICAgICAgICAgICAgICBbbWVzc2FnZV09XCJtZXNzYWdlVGV4dFwiXG4gICAgPjwva2l0LWlucHV0LW1lc3NhZ2U+XG4gIH1cbjwvZGl2PlxuIl19