@leanix/components 0.3.27 → 0.3.30

Sign up to get free protection for your applications and to get access to all the features.
Files changed (191) hide show
  1. package/esm2020/lib/core-ui/components/badge/badge.component.mjs +3 -3
  2. package/esm2020/lib/core-ui/components/button/button.component.mjs +5 -5
  3. package/esm2020/lib/core-ui/components/button-group/button-group.component.mjs +3 -3
  4. package/esm2020/lib/core-ui/components/card/card.component.mjs +3 -3
  5. package/esm2020/lib/core-ui/components/collapsible/collapsible.component.mjs +5 -5
  6. package/esm2020/lib/core-ui/components/colored-label/colored-label.component.mjs +3 -3
  7. package/esm2020/lib/core-ui/components/ellipsis/ellipsis.component.mjs +5 -5
  8. package/esm2020/lib/core-ui/components/icon-scale/icon-scale.component.mjs +7 -14
  9. package/esm2020/lib/core-ui/components/spinner/spinner.component.mjs +3 -3
  10. package/esm2020/lib/core-ui/components/table/table-header/table-header.component.mjs +3 -3
  11. package/esm2020/lib/core-ui/components/table/table.component.mjs +3 -3
  12. package/esm2020/lib/core-ui/components/tiny-spinner/tiny-spinner.component.mjs +3 -3
  13. package/esm2020/lib/core-ui/core-ui.module.mjs +5 -5
  14. package/esm2020/lib/core-ui/directives/after-view-init.directive.mjs +3 -3
  15. package/esm2020/lib/core-ui/directives/autoclose-group.service.mjs +3 -3
  16. package/esm2020/lib/core-ui/directives/autoclose.directive.mjs +3 -3
  17. package/esm2020/lib/core-ui/directives/autofocus.directive.mjs +3 -3
  18. package/esm2020/lib/core-ui/directives/html.directive.mjs +3 -3
  19. package/esm2020/lib/core-ui/linkify/linkify.pipe.mjs +3 -3
  20. package/esm2020/lib/core-ui/linkify/unlinkify.pipe.mjs +3 -3
  21. package/esm2020/lib/core-ui/pipes/br.pipe.mjs +3 -3
  22. package/esm2020/lib/core-ui/pipes/contrast-color.pipe.mjs +3 -3
  23. package/esm2020/lib/core-ui/pipes/custom-date.pipe.mjs +3 -3
  24. package/esm2020/lib/core-ui/pipes/highlight-range.pipe.mjs +3 -3
  25. package/esm2020/lib/core-ui/pipes/highlight-term.pipe.mjs +3 -3
  26. package/esm2020/lib/core-ui/pipes/lx-is-uuid.pipe.mjs +3 -3
  27. package/esm2020/lib/core-ui/pipes/lx-time-ago.pipe.mjs +3 -3
  28. package/esm2020/lib/core-ui/pipes/lx-translate.pipe.mjs +4 -4
  29. package/esm2020/lib/core-ui/pipes/markdown.pipe.mjs +3 -3
  30. package/esm2020/lib/core-ui/pipes/nbsp.pipe.mjs +3 -3
  31. package/esm2020/lib/core-ui/pipes/sort.pipe.mjs +3 -3
  32. package/esm2020/lib/core-ui/pipes/translation-after.pipe.mjs +3 -3
  33. package/esm2020/lib/core-ui/pipes/translation-before.pipe.mjs +3 -3
  34. package/esm2020/lib/core-ui/pipes/translation-between.pipe.mjs +3 -3
  35. package/esm2020/lib/core-ui/pipes/unescape-curly-braces.pipe.mjs +3 -3
  36. package/esm2020/lib/core-ui/services/resize-observer.service.mjs +3 -3
  37. package/esm2020/lib/core-ui/tooltip/tooltip.component.mjs +3 -3
  38. package/esm2020/lib/core-ui/tooltip/tooltip.directive.mjs +3 -3
  39. package/esm2020/lib/core-ui/tooltip/tooltip.module.mjs +5 -6
  40. package/esm2020/lib/forms-ui/components/basic-dropdown/basic-dropdown.component.mjs +7 -7
  41. package/esm2020/lib/forms-ui/components/basic-dropdown-item/basic-dropdown-item.component.mjs +3 -3
  42. package/esm2020/lib/forms-ui/components/cdk-options-dropdown/cdk-options-dropdown.component.mjs +3 -3
  43. package/esm2020/lib/forms-ui/components/cdk-options-sub-dropdown/cdk-options-sub-dropdown.component.mjs +3 -3
  44. package/esm2020/lib/forms-ui/components/currency/currency-input.component.mjs +7 -7
  45. package/esm2020/lib/forms-ui/components/currency/currency-symbol.component.mjs +3 -3
  46. package/esm2020/lib/forms-ui/components/date-input/date-input.component.mjs +8 -8
  47. package/esm2020/lib/forms-ui/components/drag-and-drop-list/drag-and-drop-list-item/drag-and-drop-list-item.component.mjs +5 -5
  48. package/esm2020/lib/forms-ui/components/drag-and-drop-list/drag-and-drop-list.component.mjs +7 -7
  49. package/esm2020/lib/forms-ui/components/drag-and-drop-list/drag-and-drop-list.module.mjs +5 -5
  50. package/esm2020/lib/forms-ui/components/drag-and-drop-list/keyboard-sortable-item/keyboard-sortable-item.directive.mjs +7 -6
  51. package/esm2020/lib/forms-ui/components/drag-and-drop-list/keyboard-sortable-list/keyboard-sortable-list.directive.mjs +4 -4
  52. package/esm2020/lib/forms-ui/components/error-message/error-message.component.mjs +3 -3
  53. package/esm2020/lib/forms-ui/components/form-error/form-error.component.mjs +4 -4
  54. package/esm2020/lib/forms-ui/components/icon/icon.component.mjs +3 -3
  55. package/esm2020/lib/forms-ui/components/input/input.component.mjs +3 -3
  56. package/esm2020/lib/forms-ui/components/keyboard-select.directive.mjs +3 -3
  57. package/esm2020/lib/forms-ui/components/multi-select/multi-select.component.mjs +7 -7
  58. package/esm2020/lib/forms-ui/components/option/option.component.mjs +3 -3
  59. package/esm2020/lib/forms-ui/components/option-group/option-group.component.mjs +3 -3
  60. package/esm2020/lib/forms-ui/components/option-group-dropdown/option-group-dropdown.component.mjs +8 -8
  61. package/esm2020/lib/forms-ui/components/options-dropdown/options-dropdown.component.mjs +3 -3
  62. package/esm2020/lib/forms-ui/components/options-sub-dropdown/options-sub-dropdown.component.mjs +3 -3
  63. package/esm2020/lib/forms-ui/components/picker/picker-trigger.directive.mjs +3 -3
  64. package/esm2020/lib/forms-ui/components/picker/picker.component.mjs +4 -4
  65. package/esm2020/lib/forms-ui/components/picker-option/picker-option.component.mjs +5 -5
  66. package/esm2020/lib/forms-ui/components/pill-item/pill-item.component.mjs +3 -3
  67. package/esm2020/lib/forms-ui/components/pill-list/pill-list.component.mjs +5 -5
  68. package/esm2020/lib/forms-ui/components/responsive-input/responsive-input.component.mjs +7 -7
  69. package/esm2020/lib/forms-ui/components/single-select/single-select.component.mjs +6 -6
  70. package/esm2020/lib/forms-ui/components/slider-toggle/slider-toggle.component.mjs +3 -3
  71. package/esm2020/lib/forms-ui/components/sorting-dropdown/sorting-dropdown.component.mjs +11 -11
  72. package/esm2020/lib/forms-ui/components/sorting-dropdown-trigger/sorting-dropdown-trigger.component.mjs +4 -4
  73. package/esm2020/lib/forms-ui/directives/form-error.directive.mjs +3 -3
  74. package/esm2020/lib/forms-ui/directives/form-submit.directive.mjs +3 -3
  75. package/esm2020/lib/forms-ui/directives/keyboard-action-source.directive.mjs +3 -3
  76. package/esm2020/lib/forms-ui/directives/mark-invalid.directive.mjs +3 -3
  77. package/esm2020/lib/forms-ui/directives/select-dropdown.directive.mjs +3 -3
  78. package/esm2020/lib/forms-ui/directives/selectable-item.directive.mjs +3 -3
  79. package/esm2020/lib/forms-ui/directives/selected-option.directive.mjs +3 -3
  80. package/esm2020/lib/forms-ui/forms-ui.module.mjs +13 -15
  81. package/esm2020/lib/forms-ui/models/base-select.directive.mjs +6 -6
  82. package/esm2020/lib/forms-ui/pipes/filter-selection.pipe.mjs +3 -3
  83. package/esm2020/lib/forms-ui/pipes/filter-term.pipe.mjs +3 -3
  84. package/esm2020/lib/forms-ui/pipes/format-number.pipe.mjs +3 -3
  85. package/esm2020/lib/modal-ui/components/modal/modal.component.mjs +6 -6
  86. package/esm2020/lib/modal-ui/components/modal-footer/modal-footer.component.mjs +3 -3
  87. package/esm2020/lib/modal-ui/components/modal-header/modal-header.component.mjs +3 -3
  88. package/esm2020/lib/modal-ui/directives/modal-content.directive.mjs +3 -3
  89. package/esm2020/lib/modal-ui/modal.module.mjs +5 -5
  90. package/esm2020/lib/popover-ui/components/popover/popover.component.mjs +5 -5
  91. package/esm2020/lib/popover-ui/directives/popover-click.directive.mjs +3 -3
  92. package/esm2020/lib/popover-ui/directives/popover-content.directive.mjs +3 -3
  93. package/esm2020/lib/popover-ui/directives/popover-hover.directive.mjs +3 -3
  94. package/esm2020/lib/popover-ui/popover-ui.module.mjs +5 -5
  95. package/esm2020/lib/tab-ui/components/tab/tab.component.mjs +6 -6
  96. package/esm2020/lib/tab-ui/components/tab-group/tab-group.component.mjs +3 -3
  97. package/esm2020/lib/tab-ui/tab-ui.module.mjs +5 -5
  98. package/fesm2015/leanix-components.mjs +353 -362
  99. package/fesm2015/leanix-components.mjs.map +1 -1
  100. package/fesm2020/leanix-components.mjs +352 -361
  101. package/fesm2020/leanix-components.mjs.map +1 -1
  102. package/lib/core-ui/components/badge/badge.component.d.ts +1 -1
  103. package/lib/core-ui/components/button/button.component.d.ts +1 -1
  104. package/lib/core-ui/components/button-group/button-group.component.d.ts +1 -1
  105. package/lib/core-ui/components/card/card.component.d.ts +1 -1
  106. package/lib/core-ui/components/collapsible/collapsible.component.d.ts +1 -1
  107. package/lib/core-ui/components/colored-label/colored-label.component.d.ts +1 -1
  108. package/lib/core-ui/components/ellipsis/ellipsis.component.d.ts +1 -1
  109. package/lib/core-ui/components/icon-scale/icon-scale.component.d.ts +1 -1
  110. package/lib/core-ui/components/spinner/spinner.component.d.ts +1 -1
  111. package/lib/core-ui/components/table/table-header/table-header.component.d.ts +1 -1
  112. package/lib/core-ui/components/table/table.component.d.ts +1 -1
  113. package/lib/core-ui/components/tiny-spinner/tiny-spinner.component.d.ts +1 -1
  114. package/lib/core-ui/directives/after-view-init.directive.d.ts +1 -1
  115. package/lib/core-ui/directives/autoclose.directive.d.ts +1 -1
  116. package/lib/core-ui/directives/autofocus.directive.d.ts +1 -1
  117. package/lib/core-ui/directives/html.directive.d.ts +1 -1
  118. package/lib/core-ui/linkify/linkify.pipe.d.ts +1 -1
  119. package/lib/core-ui/linkify/unlinkify.pipe.d.ts +1 -1
  120. package/lib/core-ui/pipes/br.pipe.d.ts +1 -1
  121. package/lib/core-ui/pipes/contrast-color.pipe.d.ts +1 -1
  122. package/lib/core-ui/pipes/custom-date.pipe.d.ts +1 -1
  123. package/lib/core-ui/pipes/highlight-range.pipe.d.ts +1 -1
  124. package/lib/core-ui/pipes/highlight-term.pipe.d.ts +1 -1
  125. package/lib/core-ui/pipes/lx-is-uuid.pipe.d.ts +1 -1
  126. package/lib/core-ui/pipes/lx-time-ago.pipe.d.ts +1 -1
  127. package/lib/core-ui/pipes/lx-translate.pipe.d.ts +1 -1
  128. package/lib/core-ui/pipes/markdown.pipe.d.ts +1 -1
  129. package/lib/core-ui/pipes/nbsp.pipe.d.ts +1 -1
  130. package/lib/core-ui/pipes/sort.pipe.d.ts +1 -1
  131. package/lib/core-ui/pipes/translation-after.pipe.d.ts +1 -1
  132. package/lib/core-ui/pipes/translation-before.pipe.d.ts +1 -1
  133. package/lib/core-ui/pipes/translation-between.pipe.d.ts +1 -1
  134. package/lib/core-ui/pipes/unescape-curly-braces.pipe.d.ts +1 -1
  135. package/lib/core-ui/tooltip/tooltip.component.d.ts +1 -1
  136. package/lib/core-ui/tooltip/tooltip.directive.d.ts +1 -1
  137. package/lib/forms-ui/components/basic-dropdown/basic-dropdown.component.d.ts +1 -1
  138. package/lib/forms-ui/components/basic-dropdown-item/basic-dropdown-item.component.d.ts +1 -1
  139. package/lib/forms-ui/components/cdk-options-dropdown/cdk-options-dropdown.component.d.ts +1 -1
  140. package/lib/forms-ui/components/cdk-options-sub-dropdown/cdk-options-sub-dropdown.component.d.ts +1 -1
  141. package/lib/forms-ui/components/currency/currency-input.component.d.ts +1 -1
  142. package/lib/forms-ui/components/currency/currency-symbol.component.d.ts +1 -1
  143. package/lib/forms-ui/components/date-input/date-input.component.d.ts +3 -3
  144. package/lib/forms-ui/components/drag-and-drop-list/drag-and-drop-list-item/drag-and-drop-list-item.component.d.ts +1 -1
  145. package/lib/forms-ui/components/drag-and-drop-list/drag-and-drop-list.component.d.ts +1 -1
  146. package/lib/forms-ui/components/drag-and-drop-list/keyboard-sortable-item/keyboard-sortable-item.directive.d.ts +4 -4
  147. package/lib/forms-ui/components/drag-and-drop-list/keyboard-sortable-list/keyboard-sortable-list.directive.d.ts +2 -2
  148. package/lib/forms-ui/components/error-message/error-message.component.d.ts +1 -1
  149. package/lib/forms-ui/components/form-error/form-error.component.d.ts +3 -3
  150. package/lib/forms-ui/components/icon/icon.component.d.ts +1 -1
  151. package/lib/forms-ui/components/input/input.component.d.ts +1 -1
  152. package/lib/forms-ui/components/keyboard-select.directive.d.ts +1 -1
  153. package/lib/forms-ui/components/multi-select/multi-select.component.d.ts +1 -1
  154. package/lib/forms-ui/components/option/option.component.d.ts +1 -1
  155. package/lib/forms-ui/components/option-group/option-group.component.d.ts +1 -1
  156. package/lib/forms-ui/components/option-group-dropdown/option-group-dropdown.component.d.ts +1 -1
  157. package/lib/forms-ui/components/options-dropdown/options-dropdown.component.d.ts +1 -1
  158. package/lib/forms-ui/components/options-sub-dropdown/options-sub-dropdown.component.d.ts +1 -1
  159. package/lib/forms-ui/components/picker/picker-trigger.directive.d.ts +1 -1
  160. package/lib/forms-ui/components/picker/picker.component.d.ts +1 -1
  161. package/lib/forms-ui/components/picker-option/picker-option.component.d.ts +1 -1
  162. package/lib/forms-ui/components/pill-item/pill-item.component.d.ts +1 -1
  163. package/lib/forms-ui/components/pill-list/pill-list.component.d.ts +1 -1
  164. package/lib/forms-ui/components/responsive-input/responsive-input.component.d.ts +3 -3
  165. package/lib/forms-ui/components/single-select/single-select.component.d.ts +1 -1
  166. package/lib/forms-ui/components/slider-toggle/slider-toggle.component.d.ts +1 -1
  167. package/lib/forms-ui/components/sorting-dropdown/sorting-dropdown.component.d.ts +1 -1
  168. package/lib/forms-ui/components/sorting-dropdown-trigger/sorting-dropdown-trigger.component.d.ts +1 -1
  169. package/lib/forms-ui/directives/form-error.directive.d.ts +1 -1
  170. package/lib/forms-ui/directives/form-submit.directive.d.ts +1 -1
  171. package/lib/forms-ui/directives/keyboard-action-source.directive.d.ts +1 -1
  172. package/lib/forms-ui/directives/mark-invalid.directive.d.ts +1 -1
  173. package/lib/forms-ui/directives/select-dropdown.directive.d.ts +1 -1
  174. package/lib/forms-ui/directives/selectable-item.directive.d.ts +1 -1
  175. package/lib/forms-ui/directives/selected-option.directive.d.ts +1 -1
  176. package/lib/forms-ui/models/base-select.directive.d.ts +3 -3
  177. package/lib/forms-ui/pipes/filter-selection.pipe.d.ts +1 -1
  178. package/lib/forms-ui/pipes/filter-term.pipe.d.ts +1 -1
  179. package/lib/forms-ui/pipes/format-number.pipe.d.ts +1 -1
  180. package/lib/modal-ui/components/modal/modal.component.d.ts +1 -1
  181. package/lib/modal-ui/components/modal-footer/modal-footer.component.d.ts +1 -1
  182. package/lib/modal-ui/components/modal-header/modal-header.component.d.ts +1 -1
  183. package/lib/modal-ui/directives/modal-content.directive.d.ts +1 -1
  184. package/lib/popover-ui/components/popover/popover.component.d.ts +1 -1
  185. package/lib/popover-ui/directives/popover-click.directive.d.ts +1 -1
  186. package/lib/popover-ui/directives/popover-content.directive.d.ts +1 -1
  187. package/lib/popover-ui/directives/popover-hover.directive.d.ts +1 -1
  188. package/lib/tab-ui/components/tab/tab.component.d.ts +1 -1
  189. package/lib/tab-ui/components/tab-group/tab-group.component.d.ts +1 -1
  190. package/package.json +4 -4
  191. package/leanix-components.d.ts +0 -5
@@ -9,9 +9,9 @@ import { DATE_FN_LOCALE, DATE_FORMATS } from '../../../core-ui/core-ui.constants
9
9
  import { convertDateToLocaleDateString, createDateFromDateString, isValidDateString } from '../../../shared/date-helpers';
10
10
  import { Observe } from '../../../shared/observe';
11
11
  import * as i0 from "@angular/core";
12
- import * as i1 from "ngx-bootstrap/datepicker";
13
- import * as i2 from "@angular/common";
14
- import * as i3 from "@angular/forms";
12
+ import * as i1 from "@angular/common";
13
+ import * as i2 from "@angular/forms";
14
+ import * as i3 from "ngx-bootstrap/datepicker";
15
15
  import * as i4 from "../../../core-ui/directives/autofocus.directive";
16
16
  import * as i5 from "../../../core-ui/pipes/custom-date.pipe";
17
17
  const DEFAULT_MIN_DATE = new Date('0000-01-01');
@@ -180,15 +180,15 @@ export class DateInputComponent {
180
180
  : null;
181
181
  }
182
182
  }
183
- DateInputComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DateInputComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: DATE_FORMATS }, { token: DATE_FN_LOCALE, optional: true }], target: i0.ɵɵFactoryTarget.Component });
184
- DateInputComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.2", type: DateInputComponent, selector: "lx-date-input", inputs: { date: "date", dateString: "dateString", valueAccessor: "valueAccessor", inputId: "inputId", renderingStyle: "renderingStyle", placeholder: "placeholder", datepickerMode: "datepickerMode", initDateString: "initDateString", minDate: "minDate", maxDate: "maxDate", minMode: "minMode", maxMode: "maxMode", showWeeks: "showWeeks", formatDay: "formatDay", formatMonth: "formatMonth", formatYear: "formatYear", formatDayHeader: "formatDayHeader", formatDayTitle: "formatDayTitle", formatMonthTitle: "formatMonthTitle", startingDay: "startingDay", yearRange: "yearRange", onlyCurrentMonth: "onlyCurrentMonth", shortcutPropagation: "shortcutPropagation", customClass: "customClass", disabled: "disabled", dateDisabled: "dateDisabled", autoFocus: "autoFocus" }, outputs: { dateChange: "dateChange", dateStringChange: "dateStringChange", closeDateInput: "closeDateInput" }, providers: [
183
+ DateInputComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: DateInputComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: DATE_FORMATS }, { token: DATE_FN_LOCALE, optional: true }], target: i0.ɵɵFactoryTarget.Component });
184
+ DateInputComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.3", type: DateInputComponent, selector: "lx-date-input", inputs: { date: "date", dateString: "dateString", valueAccessor: "valueAccessor", inputId: "inputId", renderingStyle: "renderingStyle", placeholder: "placeholder", datepickerMode: "datepickerMode", initDateString: "initDateString", minDate: "minDate", maxDate: "maxDate", minMode: "minMode", maxMode: "maxMode", showWeeks: "showWeeks", formatDay: "formatDay", formatMonth: "formatMonth", formatYear: "formatYear", formatDayHeader: "formatDayHeader", formatDayTitle: "formatDayTitle", formatMonthTitle: "formatMonthTitle", startingDay: "startingDay", yearRange: "yearRange", onlyCurrentMonth: "onlyCurrentMonth", shortcutPropagation: "shortcutPropagation", customClass: "customClass", disabled: "disabled", dateDisabled: "dateDisabled", autoFocus: "autoFocus" }, outputs: { dateChange: "dateChange", dateStringChange: "dateStringChange", closeDateInput: "closeDateInput" }, providers: [
185
185
  { provide: NG_VALUE_ACCESSOR, useExisting: forwardRef(() => DateInputComponent), multi: true },
186
186
  { provide: NG_VALIDATORS, useExisting: forwardRef(() => DateInputComponent), multi: true }
187
- ], viewQueries: [{ propertyName: "input", first: true, predicate: ["input"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div class=\"backdrop\" *ngIf=\"showDatepicker\" (click)=\"hidePopup()\"></div>\n<span class=\"wrapper\" [class.forLink]=\"renderingStyle === 'LINK'\" [class.has-error]=\"hasError\">\n <input\n #input\n class=\"form-control dateControl\"\n placeholder=\"{{ placeholder }}\"\n [id]=\"inputId\"\n [lxAutofocus]=\"autoFocus\"\n [(ngModel)]=\"dateString\"\n [disabled]=\"disabled\"\n (ngModelChange)=\"onDateStringChange($event)\"\n (focus)=\"showPopup()\"\n (blur)=\"onBlur()\"\n (keydown.enter)=\"hidePopup()\"\n (keydown.escape)=\"hidePopup()\"\n (keydown.tab)=\"hidePopup()\"\n (keydown.shift.tab)=\"hidePopup()\"\n [class.text-danger]=\"hasError\"\n *ngIf=\"renderingStyle === 'INPUT'\"\n />\n <a class=\"dateControl\" (click)=\"togglePopup()\" *ngIf=\"renderingStyle === 'LINK'\">{{ date | lxDate: dateFormat }}</a>\n <div class=\"datepickerContainer\">\n <div class=\"calendar\">\n <datepicker\n class=\"popup\"\n *ngIf=\"showDatepicker\"\n (selectionDone)=\"onSelectionDone($event)\"\n [ngModel]=\"date\"\n [datepickerMode]=\"datepickerMode\"\n [initDate]=\"initDate\"\n [minDate]=\"minDate\"\n [maxDate]=\"maxDate\"\n [minMode]=\"minMode\"\n [maxMode]=\"maxMode\"\n [showWeeks]=\"showWeeks\"\n [formatDay]=\"formatDay\"\n [formatMonth]=\"formatMonth\"\n [formatYear]=\"formatYear\"\n [formatDayHeader]=\"formatDayHeader\"\n [formatDayTitle]=\"formatDayTitle\"\n [formatMonthTitle]=\"formatMonthTitle\"\n [startingDay]=\"startingDay\"\n [yearRange]=\"yearRange\"\n [onlyCurrentMonth]=\"onlyCurrentMonth\"\n [shortcutPropagation]=\"shortcutPropagation\"\n [customClass]=\"customClass\"\n [dateDisabled]=\"dateDisabled\"\n >\n </datepicker>\n </div>\n </div>\n</span>\n", styles: [":host.dateControl--border-right-radius-0 input.dateControl{border-top-right-radius:0;border-bottom-right-radius:0}:host.dateControl--border-radius-0 input.dateControl{border-radius:0}:host.dateControl--border-0 input.dateControl{border:0}:host.dateControl--no-box-shadow input.dateControl{box-shadow:none}.backdrop{position:fixed;z-index:2;top:0;right:0;bottom:0;left:0}.datepickerContainer{position:absolute;z-index:700}.wrapper .forLink .popup{top:15px}.dateControl,.calendar{position:relative}.popup{position:relative;left:0;z-index:700;border-radius:3px}.popup ::ng-deep .text-info{color:#2a303d}.popup ::ng-deep .text-muted{color:#99a5bb}.popup ::ng-deep .btn.active,.popup ::ng-deep .btn.active .text-info{color:#fff;background-color:#2a303d}.popup ::ng-deep .well{margin:0;border:1px solid #2a303d}:host-context(.input-group) .datepickerContainer{top:100%}\n"], components: [{ type: i1.DatePickerComponent, selector: "datepicker", inputs: ["datepickerMode", "showWeeks", "activeDate", "initDate", "minDate", "maxDate", "minMode", "maxMode", "formatDay", "formatMonth", "formatYear", "formatDayHeader", "formatDayTitle", "formatMonthTitle", "startingDay", "yearRange", "onlyCurrentMonth", "shortcutPropagation", "monthColLimit", "yearColLimit", "customClass", "dateDisabled", "dayDisabled"], outputs: ["selectionDone", "activeDateChange"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i4.AutofocusDirective, selector: "[lxAutofocus]", inputs: ["lxAutofocus", "lxAutofocusPreventScroll"] }, { type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }], pipes: { "lxDate": i5.CustomDatePipe } });
187
+ ], viewQueries: [{ propertyName: "input", first: true, predicate: ["input"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div class=\"backdrop\" *ngIf=\"showDatepicker\" (click)=\"hidePopup()\"></div>\n<span class=\"wrapper\" [class.forLink]=\"renderingStyle === 'LINK'\" [class.has-error]=\"hasError\">\n <input\n #input\n class=\"form-control dateControl\"\n placeholder=\"{{ placeholder }}\"\n [id]=\"inputId\"\n [lxAutofocus]=\"autoFocus\"\n [(ngModel)]=\"dateString\"\n [disabled]=\"disabled\"\n (ngModelChange)=\"onDateStringChange($event)\"\n (focus)=\"showPopup()\"\n (blur)=\"onBlur()\"\n (keydown.enter)=\"hidePopup()\"\n (keydown.escape)=\"hidePopup()\"\n (keydown.tab)=\"hidePopup()\"\n (keydown.shift.tab)=\"hidePopup()\"\n [class.text-danger]=\"hasError\"\n *ngIf=\"renderingStyle === 'INPUT'\"\n />\n <a class=\"dateControl\" (click)=\"togglePopup()\" *ngIf=\"renderingStyle === 'LINK'\">{{ date | lxDate: dateFormat }}</a>\n <div class=\"datepickerContainer\">\n <div class=\"calendar\">\n <datepicker\n class=\"popup\"\n *ngIf=\"showDatepicker\"\n (selectionDone)=\"onSelectionDone($event)\"\n [ngModel]=\"date\"\n [datepickerMode]=\"datepickerMode\"\n [initDate]=\"initDate\"\n [minDate]=\"minDate\"\n [maxDate]=\"maxDate\"\n [minMode]=\"minMode\"\n [maxMode]=\"maxMode\"\n [showWeeks]=\"showWeeks\"\n [formatDay]=\"formatDay\"\n [formatMonth]=\"formatMonth\"\n [formatYear]=\"formatYear\"\n [formatDayHeader]=\"formatDayHeader\"\n [formatDayTitle]=\"formatDayTitle\"\n [formatMonthTitle]=\"formatMonthTitle\"\n [startingDay]=\"startingDay\"\n [yearRange]=\"yearRange\"\n [onlyCurrentMonth]=\"onlyCurrentMonth\"\n [shortcutPropagation]=\"shortcutPropagation\"\n [customClass]=\"customClass\"\n [dateDisabled]=\"dateDisabled\"\n >\n </datepicker>\n </div>\n </div>\n</span>\n", styles: [":host.dateControl--border-right-radius-0 input.dateControl{border-top-right-radius:0;border-bottom-right-radius:0}:host.dateControl--border-radius-0 input.dateControl{border-radius:0}:host.dateControl--border-0 input.dateControl{border:0}:host.dateControl--no-box-shadow input.dateControl{box-shadow:none}.backdrop{position:fixed;z-index:2;top:0;right:0;bottom:0;left:0}.datepickerContainer{position:absolute;z-index:700}.wrapper .forLink .popup{top:15px}.dateControl,.calendar{position:relative}.popup{position:relative;left:0;z-index:700;border-radius:3px}.popup ::ng-deep .text-info{color:#2a303d}.popup ::ng-deep .text-muted{color:#99a5bb}.popup ::ng-deep .btn.active,.popup ::ng-deep .btn.active .text-info{color:#fff;background-color:#2a303d}.popup ::ng-deep .well{margin:0;border:1px solid #2a303d}:host-context(.input-group) .datepickerContainer{top:100%}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i3.DatePickerComponent, selector: "datepicker", inputs: ["datepickerMode", "showWeeks", "activeDate", "initDate", "minDate", "maxDate", "minMode", "maxMode", "formatDay", "formatMonth", "formatYear", "formatDayHeader", "formatDayTitle", "formatMonthTitle", "startingDay", "yearRange", "onlyCurrentMonth", "shortcutPropagation", "monthColLimit", "yearColLimit", "customClass", "dateDisabled", "dayDisabled"], outputs: ["selectionDone", "activeDateChange"] }, { kind: "directive", type: i4.AutofocusDirective, selector: "[lxAutofocus]", inputs: ["lxAutofocus", "lxAutofocusPreventScroll"] }, { kind: "pipe", type: i5.CustomDatePipe, name: "lxDate" }] });
188
188
  __decorate([
189
189
  Observe('initDateString')
190
190
  ], DateInputComponent.prototype, "initDateString$", void 0);
191
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DateInputComponent, decorators: [{
191
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: DateInputComponent, decorators: [{
192
192
  type: Component,
193
193
  args: [{ selector: 'lx-date-input', providers: [
194
194
  { provide: NG_VALUE_ACCESSOR, useExisting: forwardRef(() => DateInputComponent), multi: true },
@@ -266,4 +266,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImpor
266
266
  type: ViewChild,
267
267
  args: ['input']
268
268
  }] } });
269
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS1pbnB1dC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvc3JjL2xpYi9mb3Jtcy11aS9jb21wb25lbnRzL2RhdGUtaW5wdXQvZGF0ZS1pbnB1dC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvc3JjL2xpYi9mb3Jtcy11aS9jb21wb25lbnRzL2RhdGUtaW5wdXQvZGF0ZS1pbnB1dC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUVMLFNBQVMsRUFFVCxZQUFZLEVBQ1osVUFBVSxFQUNWLE1BQU0sRUFDTixLQUFLLEVBSUwsUUFBUSxFQUNSLE1BQU0sRUFFTixTQUFTLEVBQ1YsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFxQyxhQUFhLEVBQUUsaUJBQWlCLEVBQWEsTUFBTSxnQkFBZ0IsQ0FBQztBQUNoSCxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUM5QyxPQUFPLEVBQUUsYUFBYSxFQUFFLG1CQUFtQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDOUUsT0FBTyxFQUFjLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMzQyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDM0MsT0FBTyxFQUFFLGNBQWMsRUFBRSxZQUFZLEVBQXVCLE1BQU0sb0NBQW9DLENBQUM7QUFDdkcsT0FBTyxFQUFFLDZCQUE2QixFQUFFLHdCQUF3QixFQUFFLGlCQUFpQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDMUgsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLHlCQUF5QixDQUFDOzs7Ozs7O0FBS2xELE1BQU0sZ0JBQWdCLEdBQUcsSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUM7QUFDaEQsTUFB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QkFBbEMsS0FBSztnQkFDVSxXQUFXO3NCQUExQixLQUFLO2dCQUVVLFFBQVE7c0JBQXZCLEtBQUs7Z0JBQ1UsWUFBWTtzQkFBM0IsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUVJLGNBQWM7c0JBQXZCLE1BQU07Z0JBRWEsS0FBSztzQkFBeEIsU0FBUzt1QkFBQyxPQUFPIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgRWxlbWVudFJlZixcbiAgRXZlbnRFbWl0dGVyLFxuICBmb3J3YXJkUmVmLFxuICBJbmplY3QsXG4gIElucHV0LFxuICBPbkNoYW5nZXMsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxuICBPcHRpb25hbCxcbiAgT3V0cHV0LFxuICBTaW1wbGVDaGFuZ2VzLFxuICBWaWV3Q2hpbGRcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb250cm9sVmFsdWVBY2Nlc3NvciwgRm9ybUNvbnRyb2wsIE5HX1ZBTElEQVRPUlMsIE5HX1ZBTFVFX0FDQ0VTU09SLCBWYWxpZGF0b3IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBmb3JtYXQsIHN0YXJ0T2ZEYXkgfSBmcm9tICdkYXRlLWZucyc7XG5pbXBvcnQgeyBEYXRlRm9ybWF0dGVyLCBEYXRlUGlja2VyQ29tcG9uZW50IH0gZnJvbSAnbmd4LWJvb3RzdHJhcC9kYXRlcGlja2VyJztcbmltcG9ydCB7IE9ic2VydmFibGUsIFN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IERBVEVfRk5fTE9DQUxFLCBEQVRFX0ZPUk1BVFMsIERhdGVGb3JtYXRzUHJvdmlkZXIgfSBmcm9tICcuLi8uLi8uLi9jb3JlLXVpL2NvcmUtdWkuY29uc3RhbnRzJztcbmltcG9ydCB7IGNvbnZlcnREYXRlVG9Mb2NhbGVEYXRlU3RyaW5nLCBjcmVhdGVEYXRlRnJvbURhdGVTdHJpbmcsIGlzVmFsaWREYXRlU3RyaW5nIH0gZnJvbSAnLi4vLi4vLi4vc2hhcmVkL2RhdGUtaGVscGVycyc7XG5pbXBvcnQgeyBPYnNlcnZlIH0gZnJvbSAnLi4vLi4vLi4vc2hhcmVkL29ic2VydmUnO1xuXG4vLyBJbnB1dCArIG5nMi1ib290c3RyYXAgZGF0ZXBpY2tlclxuZXhwb3J0IHR5cGUgRGF0ZUlucHV0UmVuZGVyaW5nU3R5bGUgPSAnSU5QVVQnIHwgJ0xJTksnO1xuXG5jb25zdCBERUZBVUxUX01JTl9EQVRFID0gbmV3IERhdGUoJzAwMDAtMDEtMDEnKTtcbmNvbnN0IERFRkFVTFRfTUFYX0RBVEUgPSBuZXcgRGF0ZSgnOTk5OS0xMi0zMScpO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdseC1kYXRlLWlucHV0JyxcbiAgdGVtcGxhdGVVcmw6ICdkYXRlLWlucHV0LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJ2RhdGUtaW5wdXQuY29tcG9uZW50LnNjc3MnXSxcbiAgcHJvdmlkZXJzOiBbXG4gICAgeyBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUiwgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gRGF0ZUlucHV0Q29tcG9uZW50KSwgbXVsdGk6IHRydWUgfSxcbiAgICB7IHByb3ZpZGU6IE5HX1ZBTElEQVRPUlMsIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IERhdGVJbnB1dENvbXBvbmVudCksIG11bHRpOiB0cnVlIH1cbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBEYXRlSW5wdXRDb21wb25lbnQgaW1wbGVtZW50cyBPbkNoYW5nZXMsIE9uSW5pdCwgT25EZXN0cm95LCBDb250cm9sVmFsdWVBY2Nlc3NvciwgVmFsaWRhdG9yIHtcbiAgQElucHV0KCkgcHVibGljIGRhdGU6IERhdGUgfCBudWxsID0gbnVsbDsgLy8gbWFpbiBkYXRlIGlucHV0OyB0aGlzIGlzIGFsc28gdGhlIG9uZSB1c2VkIGZvciBuZ01vZGVsICYgZm9ybUNvbnRyb2whXG4gIEBPdXRwdXQoKSBkYXRlQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxEYXRlIHwgbnVsbD4oKTsgLy8gdHJpZ2dlcmVkIHdoZW5ldmVyIHRoZSBkYXRlIGNoYW5nZXNcbiAgQElucHV0KCkgcHVibGljIGRhdGVTdHJpbmc6IHN0cmluZyB8IG51bGwgPSBudWxsOyAvLyBzZWNvbmRhcnksIGFsdGVybmF0aXZlIGlucHV0IHdpdGggZGF0ZSBzdHJpbmdcbiAgQE91dHB1dCgpIGRhdGVTdHJpbmdDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZyB8IG51bGw+KCk7IC8vIHRyaWdnZXJlZCB3aGVuZXZlciB0aGUgZGF0ZSBjaGFuZ2VzXG4gIC8vIERldGVybWluZSB3aGV0aGVyIGZvcm1Hcm91cCdzIHZhbHVlIGFjY2Vzc29yIGlzIGFjY2Vzc2luZyB0aGUgc2VsZWN0ZWQgSURzIG9yIHRoZSBzZWxlY3RlZCBvYmplY3RzXG4gIEBJbnB1dCgpIHB1YmxpYyB2YWx1ZUFjY2Vzc29yOiAnZGF0ZScgfCAnZGF0ZVN0cmluZycgPSAnZGF0ZSc7XG5cbiAgQElucHV0KCkgcHVibGljIGlucHV0SWQ6IHN0cmluZyA9ICcnOyAvLyBpZCB0byBiZSBzZXQgb24gaW5wdXQgdG8gY29ycmVzcG9uZCB0byBvdXRzaWRlIGxhYmVsXG4gIEBJbnB1dCgpIHB1YmxpYyByZW5kZXJpbmdTdHlsZTogRGF0ZUlucHV0UmVuZGVyaW5nU3R5bGUgPSAnSU5QVVQnO1xuICBASW5wdXQoKSBwdWJsaWMgcGxhY2Vob2xkZXI6IHN0cmluZyA9ICd5eXl5LW1tLWRkJztcblxuICAvLy0tLSBJbnB1dHMgcmVwbGljYXRlZCBmcm9tIGRhdGVwaWNrZXI7IChzZWxlY3Rpb25Eb25lKSBpcyBub3QgbmVlZGVkLCBhcyAoZGF0ZUNoYW5nZSkgaXMgZXF1aXZhbGVuXG4gIEBJbnB1dCgpIHB1YmxpYyBkYXRlcGlja2VyTW9kZTogc3RyaW5nID0gJ2RheSc7IC8vIHNldHMgZGF0ZXBpY2tlciBtb2RlLCBzdXBwb3J0czogZGF5LCBtb250aCwgeWVhclxuICBASW5wdXQoKSBpbml0RGF0ZVN0cmluZyE6IHN0cmluZzsgLy8gZGVmYXVsdCBkYXRlIHRvIHNob3cgaWYgbmctbW9kZWwgdmFsdWUgaXMgbm90IHNwZWNpZmllZFxuICBAT2JzZXJ2ZSgnaW5pdERhdGVTdHJpbmcnKSBpbml0RGF0ZVN0cmluZyQhOiBPYnNlcnZhYmxlPHN0cmluZz47IC8vIGRlZmF1bHQgZGF0ZSB0byBzaG93IGlmIG5nLW1vZGVsIHZhbHVlIGlzIG5vdCBzcGVjaWZpZWRcbiAgQElucHV0KCkgcHVibGljIG1pbkRhdGUgPSBERUZBVUxUX01JTl9EQVRFOyAvLyBvbGRlc3Qgc2VsZWN0YWJsZSBkYXRlXG4gIEBJbnB1dCgpIHB1YmxpYyBtYXhEYXRlID0gREVGQVVMVF9NQVhfREFURTsgLy8gbGF0ZXN0IHNlbGVjdGFibGUgZGF0ZVxuICBASW5wdXQoKSBwdWJsaWMgbWluTW9kZTogc3RyaW5nID0gJ2RheSc7IC8vIHNldCBsb3dlciBkYXRlcGlja2VyIG1vZGUsIHN1cHBvcnRzOiBkYXksIG1vbnRoLCB5ZWFyXG4gIEBJbnB1dCgpIHB1YmxpYyBtYXhNb2RlOiBzdHJpbmcgPSAneWVhcic7IC8vIHNldHMgdXBwZXIgZGF0ZXBpY2tlciBtb2RlLCBzdXBwb3J0czogZGF5LCBtb250aCwgeWVhclxuICBASW5wdXQoKSBwdWJsaWMgc2hvd1dlZWtzOiBib29sZWFuID0gdHJ1ZTsgLy8gaWYgZmFsc2Ugd2VlayBudW1iZXJzIHdpbGwgYmUgaGlkZGVuXG4gIEBJbnB1dCgpIHB1YmxpYyBmb3JtYXREYXk6IHN0cmluZyA9ICdERCc7IC8vIGZvcm1hdCBvZiBkYXkgaW4gbW9udGhcbiAgQElucHV0KCkgcHVibGljIGZvcm1hdE1vbnRoOiBzdHJpbmcgPSAnTU1NTSc7IC8vIGZvcm1hdCBvZiBtb250aCBpbiB5ZWFyXG4gIEBJbnB1dCgpIHB1YmxpYyBmb3JtYXRZZWFyOiBzdHJpbmcgPSAnWVlZWSc7IC8vIGZvcm1hdCBvZiB5ZWFyIGluIHllYXIgcmFuZ2VcbiAgQElucHV0KCkgcHVibGljIGZvcm1hdERheUhlYWRlcjogc3RyaW5nID0gJ2RkJzsgLy8gZm9ybWF0IG9mIGRheSBpbiB3ZWVrIGhlYWRlclxuICBASW5wdXQoKSBwdWJsaWMgZm9ybWF0RGF5VGl0bGU6IHN0cmluZyA9ICdNTU1NIFlZWVknOyAvLyBmb3JtYXQgb2YgdGl0bGUgd2hlbiBzZWxlY3RpbmcgZGF5XG4gIEBJbnB1dCgpIHB1YmxpYyBmb3JtYXRNb250aFRpdGxlOiBzdHJpbmcgPSAnWVlZWSc7IC8vIGZvcm1hdCBvZiB0aXRsZSB3aGVuIHNlbGVjdGluZyBtb250aFxuICBASW5wdXQoKSBzdGFydGluZ0RheTogbnVtYmVyID0gMDsgLy8gc3RhcnRpbmcgZGF5IG9mIHRoZSB3ZWVrIGZyb20gMC02ICgwPVN1bmRheSwgLi4uLCA2PVNhdHVyZGF5KSBwdWJsaWNcbiAgQElucHV0KCkgcHVibGljIHllYXJSYW5nZTogbnVtYmVyID0gMjA7IC8vIG51bWJlciBvZiB5ZWFycyBkaXNwbGF5ZWQgaW4geWVhciBzZWxlY3Rpb25cbiAgQElucHV0KCkgcHVibGljIG9ubHlDdXJyZW50TW9udGg6IGJvb2xlYW4gPSBmYWxzZTsgLy8gaWYgdHJ1ZSBvbmx5IGRhdGVzIGZyb20gdGhlIGN1cnJlbnRseSBkaXNwbGF5ZWQgbW9udGggd2lsbCBiZSBzaG93blxuICBASW5wdXQoKSBwdWJsaWMgc2hvcnRjdXRQcm9wYWdhdGlvbjogYm9vbGVhbiA9IGZhbHNlOyAvLyAgaWYgdHJ1ZSBzaG9ydGN1dGBzIGV2ZW50IHByb3BhZ2F0aW9uIHdpbGwgYmUgZGlzYWJsZWRcbiAgQElucHV0KCkgcHVibGljIGN1c3RvbUNsYXNzOiB7IGRhdGU6IERhdGU7IG1vZGU6IHN0cmluZzsgY2xheno6IHN0cmluZyB9W10gPSBbXTsgLy8gYXJyYXkgb2YgY3VzdG9tIGNzcyBjbGFzc2VzIHRvIGJlIGFwcGxpZWQgdG9cbiAgLy8gdGFyZ2V0ZWQgZGF0ZXNcbiAgQElucHV0KCkgcHVibGljIGRpc2FibGVkITogYm9vbGVhbjtcbiAgQElucHV0KCkgcHVibGljIGRhdGVEaXNhYmxlZDogeyBkYXRlOiBEYXRlOyBtb2RlOiBzdHJpbmcgfVtdID0gW107IC8vIGFycmF5IG9mIGRpc2FibGVkIGRhdGVzIGlmIG1vZGUgaXMgZGF5LCBvciB5ZWFycywgZXRjLlxuICBASW5wdXQoKSBhdXRvRm9jdXMgPSBmYWxzZTtcblxuICBAT3V0cHV0KCkgY2xvc2VEYXRlSW5wdXQgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG5cbiAgQFZpZXdDaGlsZCgnaW5wdXQnKSBpbnB1dCE6IEVsZW1lbnRSZWY8SFRNTElucHV0RWxlbWVudD47XG5cbiAgc2hvd0RhdGVwaWNrZXI6IGJvb2xlYW4gPSBmYWxzZTtcbiAgZGF0ZUZvcm1hdDogc3RyaW5nO1xuICBpbml0RGF0ZSE6IERhdGU7XG5cbiAgcmVhZG9ubHkgZGVzdHJveWVkJCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgLy8tLSBJbXBsZW1lbnQgQ29udHJvbFZhbHVlQWNjZXNzb3JcbiAgcHJpdmF0ZSBmb3JtQ29udHJvbCE6IEZvcm1Db250cm9sO1xuICBoYXNFcnJvcjogYm9vbGVhbiA9IGZhbHNlO1xuICBvblRvdWNoZWQhOiAoKSA9PiB2b2lkO1xuXG4gIHByb3BhZ2F0ZUNoYW5nZSA9IChfZGF0ZTogRGF0ZSB8IG51bGwpID0+IHt9O1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgY2Q6IENoYW5nZURldGVjdG9yUmVmLFxuICAgIEBJbmplY3QoREFURV9GT1JNQVRTKSBwcml2YXRlIGRhdGVGb3JtYXRzUHJvdmlkZXI6IERhdGVGb3JtYXRzUHJvdmlkZXIsXG4gICAgQE9wdGlvbmFsKCkgQEluamVjdChEQVRFX0ZOX0xPQ0FMRSkgcHJpdmF0ZSBnZXREYXRlRm5Mb2NhbGU/OiBGdW5jdGlvblxuICApIHtcbiAgICB0aGlzLmRhdGVGb3JtYXQgPSB0aGlzLmRhdGVGb3JtYXRzUHJvdmlkZXIuZ2V0RGF0ZUZvcm1hdCgpO1xuICAgIC8vIFBhdGNoIERhdGVQaWNrZXIgdW50aWwgaHR0cHM6Ly9naXRodWIuY29tL3ZhbG9yLXNvZnR3YXJlL25nMi1ib290c3RyYXAvaXNzdWVzLzEzODUgaXMgcmVzb2x2ZWRcbiAgICBjb25zdCB3cml0ZVZhbHVlID0gRGF0ZVBpY2tlckNvbXBvbmVudC5wcm90b3R5cGUud3JpdGVWYWx1ZTtcbiAgICBEYXRlUGlja2VyQ29tcG9uZW50LnByb3RvdHlwZS53cml0ZVZhbHVlID0gZnVuY3Rpb24gKHZhbHVlKSB7XG4gICAgICBpZiAodmFsdWUgIT09IG51bGwpIHtcbiAgICAgICAgcmV0dXJuIHdyaXRlVmFsdWUuYXBwbHkodGhpcywgYXJndW1lbnRzIGFzIGFueSk7XG4gICAgICB9XG4gICAgfTtcblxuICAgIC8vIFNvbWVob3cgZGF0ZXBpY2tlciBkb2VzIHVzZSBhIHNlcGFyYXRlIG1vbWVudCBpbnN0YW5jZSB0aGFuIHdlIGRvLiBUaGF0IG9uZSBydW5zIG9uIGxvY2FsZSBlbiBieSBkZWZhdWx0LlxuICAgIC8vIFNvIHdlIHBhdGNoIHRoZSBmb3JtYXQgZnVuY3Rpb24gaGVyZSB0byB1c2Ugb3VyIG1vbWVudCBpbnN0YW5jZS5cbiAgICAvLyBNYXliZSBpdCB3aWxsIGJlIGZpeGVkIHdpdGg6IGh0dHBzOi8vZ2l0aHViLmNvbS92YWxvci1zb2Z0d2FyZS9uZ3gtYm9vdHN0cmFwL2lzc3Vlcy80NTVcbiAgICBjb25zdCBsb2NhbGUgPSB0aGlzLmdldERhdGVGbkxvY2FsZSA/IHRoaXMuZ2V0RGF0ZUZuTG9jYWxlKCkgOiBudWxsO1xuICAgIERhdGVGb3JtYXR0ZXIucHJvdG90eXBlLmZvcm1hdCA9IGZ1bmN0aW9uIChkYXRlOiBEYXRlLCBmOiBzdHJpbmcpIHtcbiAgICAgIHJldHVybiBmb3JtYXQoZGF0ZSwgZiwgeyBsb2NhbGUgfSk7XG4gICAgfTtcbiAgfVxuXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMuaW5pdERhdGVTdHJpbmckLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveWVkJCkpLnN1YnNjcmliZSgoZGF0ZSkgPT4ge1xuICAgICAgdGhpcy5pbml0RGF0ZSA9IGNyZWF0ZURhdGVGcm9tRGF0ZVN0cmluZyhkYXRlKSA/PyBzdGFydE9mRGF5KG5ldyBEYXRlKCkpO1xuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpIHtcbiAgICBpZiAoY2hhbmdlc1snZGF0ZSddKSB7XG4gICAgICB0aGlzLmRhdGVTdHJpbmcgPSB0aGlzLmRhdGUgPyBjb252ZXJ0RGF0ZVRvTG9jYWxlRGF0ZVN0cmluZyh0aGlzLmRhdGUpIDogbnVsbDtcbiAgICB9IGVsc2UgaWYgKGNoYW5nZXNbJ2RhdGVTdHJpbmcnXSkge1xuICAgICAgdGhpcy5vbkRhdGVTdHJpbmdDaGFuZ2UodGhpcy5kYXRlU3RyaW5nLCBmYWxzZSk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMuZGVzdHJveWVkJC5uZXh0KCk7XG4gIH1cblxuICBwdWJsaWMgZm9jdXMoKSB7XG4gICAgdGhpcy5pbnB1dC5uYXRpdmVFbGVtZW50LmZvY3VzKCk7XG4gIH1cblxuICBwdWJsaWMgc2hvd1BvcHVwKCkge1xuICAgIHRoaXMuc2hvd0RhdGVwaWNrZXIgPSB0cnVlO1xuICAgIHRoaXMuY2QuZGV0ZWN0Q2hhbmdlcygpO1xuICB9XG5cbiAgcHVibGljIHRvZ2dsZVBvcHVwKCkge1xuICAgIHRoaXMuc2hvd0RhdGVwaWNrZXIgPSAhdGhpcy5zaG93RGF0ZXBpY2tlcjtcbiAgfVxuXG4gIHB1YmxpYyBoaWRlUG9wdXAoKSB7XG4gICAgaWYgKHRoaXMuc2hvd0RhdGVwaWNrZXIpIHtcbiAgICAgIHRoaXMuc2hvd0RhdGVwaWNrZXIgPSBmYWxzZTtcbiAgICAgIHRoaXMuY2xvc2VEYXRlSW5wdXQuZW1pdCgpO1xuICAgIH1cbiAgfVxuXG4gIG9uRGF0ZVN0cmluZ0NoYW5nZShuZXdEYXRlU3RyaW5nOiBzdHJpbmcgfCBudWxsLCBlbWl0OiBib29sZWFuID0gdHJ1ZSkge1xuICAgIGlmIChpc1ZhbGlkRGF0ZVN0cmluZyhuZXdEYXRlU3RyaW5nKSkge1xuICAgICAgY29uc3QgZGF0ZSA9IGNyZWF0ZURhdGVGcm9tRGF0ZVN0cmluZyhuZXdEYXRlU3RyaW5nKTtcbiAgICAgIHRoaXMudXBkYXRlRGF0ZShkYXRlLCBlbWl0KTtcbiAgICB9IGVsc2UgaWYgKG5ld0RhdGVTdHJpbmcgPT09IG51bGwgfHwgbmV3RGF0ZVN0cmluZyA9PT0gJycpIHtcbiAgICAgIHRoaXMudXBkYXRlRGF0ZShudWxsLCBlbWl0KTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5oYXNFcnJvciA9IHRydWU7XG4gICAgICBpZiAodGhpcy5mb3JtQ29udHJvbCkge1xuICAgICAgICB0aGlzLmZvcm1Db250cm9sLnVwZGF0ZVZhbHVlQW5kVmFsaWRpdHkoKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBvblNlbGVjdGlvbkRvbmUobmV3RGF0ZTogRGF0ZSkge1xuICAgIHRoaXMudXBkYXRlRGF0ZShuZXdEYXRlKTtcbiAgICB0aGlzLmhpZGVQb3B1cCgpO1xuICB9XG5cbiAgb25CbHVyKCkge1xuICAgIGlmICh0aGlzLm9uVG91Y2hlZCkge1xuICAgICAgdGhpcy5vblRvdWNoZWQoKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIHVwZGF0ZURhdGUoZGF0ZTogRGF0ZSB8IG51bGwsIGVtaXQ6IGJvb2xlYW4gPSB0cnVlKSB7XG4gICAgdGhpcy5kYXRlID0gZGF0ZTtcbiAgICB0aGlzLmRhdGVTdHJpbmcgPSB0aGlzLmRhdGUgPyBjb252ZXJ0RGF0ZVRvTG9jYWxlRGF0ZVN0cmluZyh0aGlzLmRhdGUpIDogJyc7XG4gICAgaWYgKGVtaXQpIHtcbiAgICAgIHRoaXMuZGF0ZUNoYW5nZS5lbWl0KGRhdGUpO1xuICAgICAgdGhpcy5kYXRlU3RyaW5nQ2hhbmdlLmVtaXQodGhpcy5kYXRlU3RyaW5nKTtcbiAgICB9XG4gICAgdGhpcy5wcm9wYWdhdGVDaGFuZ2UoZGF0ZSk7XG4gICAgdGhpcy5yZWNoZWNrRXJyb3JzKCk7XG4gIH1cblxuICBwcml2YXRlIHJlY2hlY2tFcnJvcnMoKSB7XG4gICAgdGhpcy5oYXNFcnJvciA9IGZhbHNlO1xuICAgIGlmICh0aGlzLmZvcm1Db250cm9sKSB7XG4gICAgICB0aGlzLmZvcm1Db250cm9sLnVwZGF0ZVZhbHVlQW5kVmFsaWRpdHkoKTtcbiAgICB9XG4gIH1cblxuICAvLy0tLSBJbXBsZW1lbnQgQ29udHJvbFZhbHVlQWNjZXNzb3JcbiAgLyoqIFdyaXRlIGEgbmV3IHZhbHVlIHRvIHRoZSBlbGVtZW50LiAqL1xuICB3cml0ZVZhbHVlKG5ld0RhdGU6IERhdGUgfCBzdHJpbmcpIHtcbiAgICBpZiAodGhpcy52YWx1ZUFjY2Vzc29yID09PSAnZGF0ZScpIHtcbiAgICAgIHRoaXMuZGF0ZSA9IG5ld0RhdGUgYXMgRGF0ZTtcbiAgICAgIHRoaXMuZGF0ZVN0cmluZyA9IGNvbnZlcnREYXRlVG9Mb2NhbGVEYXRlU3RyaW5nKHRoaXMuZGF0ZSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuZGF0ZVN0cmluZyA9IG5ld0RhdGUgYXMgc3RyaW5nO1xuICAgICAgdGhpcy5vbkRhdGVTdHJpbmdDaGFuZ2UodGhpcy5kYXRlU3RyaW5nLCBmYWxzZSk7XG4gICAgfVxuICB9XG5cbiAgLyoqIFNldCB0aGUgZnVuY3Rpb24gdG8gYmUgY2FsbGVkIHdoZW4gdGhlIGNvbnRyb2wgcmVjZWl2ZXMgYSBjaGFuZ2UgZXZlbnQuICovXG4gIHJlZ2lzdGVyT25DaGFuZ2UoZm46IGFueSkge1xuICAgIGlmICh0aGlzLnZhbHVlQWNjZXNzb3IgPT09ICdkYXRlJykge1xuICAgICAgdGhpcy5kYXRlQ2hhbmdlLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveWVkJCkpLnN1YnNjcmliZShmbik7XG4gICAgfSBlbHNlIGlmICh0aGlzLnZhbHVlQWNjZXNzb3IgPT09ICdkYXRlU3RyaW5nJykge1xuICAgICAgdGhpcy5kYXRlU3RyaW5nQ2hhbmdlLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveWVkJCkpLnN1YnNjcmliZShmbik7XG4gICAgfVxuICB9XG5cbiAgLyoqIFNldCB0aGUgZnVuY3Rpb24gdG8gYmUgY2FsbGVkIHdoZW4gdGhlIGNvbnRyb2wgcmVjZWl2ZXMgYSB0b3VjaCBldmVudC4gKi9cbiAgcmVnaXN0ZXJPblRvdWNoZWQoZm46ICgpID0+IHZvaWQpIHtcbiAgICB0aGlzLm9uVG91Y2hlZCA9IGZuO1xuICB9XG5cbiAgdmFsaWRhdGUoYzogRm9ybUNvbnRyb2wpIHtcbiAgICB0aGlzLmZvcm1Db250cm9sID0gYztcbiAgICByZXR1cm4gdGhpcy5oYXNFcnJvclxuICAgICAgPyB7XG4gICAgICAgICAgZGF0ZUZvcm1hdEVycm9yOiB7XG4gICAgICAgICAgICBnaXZlbjogdGhpcy5kYXRlU3RyaW5nLFxuICAgICAgICAgICAgZm9ybWF0OiAneXl5eS1tbS1kZCdcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIDogbnVsbDtcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImJhY2tkcm9wXCIgKm5nSWY9XCJzaG93RGF0ZXBpY2tlclwiIChjbGljayk9XCJoaWRlUG9wdXAoKVwiPjwvZGl2PlxuPHNwYW4gY2xhc3M9XCJ3cmFwcGVyXCIgW2NsYXNzLmZvckxpbmtdPVwicmVuZGVyaW5nU3R5bGUgPT09ICdMSU5LJ1wiIFtjbGFzcy5oYXMtZXJyb3JdPVwiaGFzRXJyb3JcIj5cbiAgPGlucHV0XG4gICAgI2lucHV0XG4gICAgY2xhc3M9XCJmb3JtLWNvbnRyb2wgZGF0ZUNvbnRyb2xcIlxuICAgIHBsYWNlaG9sZGVyPVwie3sgcGxhY2Vob2xkZXIgfX1cIlxuICAgIFtpZF09XCJpbnB1dElkXCJcbiAgICBbbHhBdXRvZm9jdXNdPVwiYXV0b0ZvY3VzXCJcbiAgICBbKG5nTW9kZWwpXT1cImRhdGVTdHJpbmdcIlxuICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgKG5nTW9kZWxDaGFuZ2UpPVwib25EYXRlU3RyaW5nQ2hhbmdlKCRldmVudClcIlxuICAgIChmb2N1cyk9XCJzaG93UG9wdXAoKVwiXG4gICAgKGJsdXIpPVwib25CbHVyKClcIlxuICAgIChrZXlkb3duLmVudGVyKT1cImhpZGVQb3B1cCgpXCJcbiAgICAoa2V5ZG93bi5lc2NhcGUpPVwiaGlkZVBvcHVwKClcIlxuICAgIChrZXlkb3duLnRhYik9XCJoaWRlUG9wdXAoKVwiXG4gICAgKGtleWRvd24uc2hpZnQudGFiKT1cImhpZGVQb3B1cCgpXCJcbiAgICBbY2xhc3MudGV4dC1kYW5nZXJdPVwiaGFzRXJyb3JcIlxuICAgICpuZ0lmPVwicmVuZGVyaW5nU3R5bGUgPT09ICdJTlBVVCdcIlxuICAvPlxuICA8YSBjbGFzcz1cImRhdGVDb250cm9sXCIgKGNsaWNrKT1cInRvZ2dsZVBvcHVwKClcIiAqbmdJZj1cInJlbmRlcmluZ1N0eWxlID09PSAnTElOSydcIj57eyBkYXRlIHwgbHhEYXRlOiBkYXRlRm9ybWF0IH19PC9hPlxuICA8ZGl2IGNsYXNzPVwiZGF0ZXBpY2tlckNvbnRhaW5lclwiPlxuICAgIDxkaXYgY2xhc3M9XCJjYWxlbmRhclwiPlxuICAgICAgPGRhdGVwaWNrZXJcbiAgICAgICAgY2xhc3M9XCJwb3B1cFwiXG4gICAgICAgICpuZ0lmPVwic2hvd0RhdGVwaWNrZXJcIlxuICAgICAgICAoc2VsZWN0aW9uRG9uZSk9XCJvblNlbGVjdGlvbkRvbmUoJGV2ZW50KVwiXG4gICAgICAgIFtuZ01vZGVsXT1cImRhdGVcIlxuICAgICAgICBbZGF0ZXBpY2tlck1vZGVdPVwiZGF0ZXBpY2tlck1vZGVcIlxuICAgICAgICBbaW5pdERhdGVdPVwiaW5pdERhdGVcIlxuICAgICAgICBbbWluRGF0ZV09XCJtaW5EYXRlXCJcbiAgICAgICAgW21heERhdGVdPVwibWF4RGF0ZVwiXG4gICAgICAgIFttaW5Nb2RlXT1cIm1pbk1vZGVcIlxuICAgICAgICBbbWF4TW9kZV09XCJtYXhNb2RlXCJcbiAgICAgICAgW3Nob3dXZWVrc109XCJzaG93V2Vla3NcIlxuICAgICAgICBbZm9ybWF0RGF5XT1cImZvcm1hdERheVwiXG4gICAgICAgIFtmb3JtYXRNb250aF09XCJmb3JtYXRNb250aFwiXG4gICAgICAgIFtmb3JtYXRZZWFyXT1cImZvcm1hdFllYXJcIlxuICAgICAgICBbZm9ybWF0RGF5SGVhZGVyXT1cImZvcm1hdERheUhlYWRlclwiXG4gICAgICAgIFtmb3JtYXREYXlUaXRsZV09XCJmb3JtYXREYXlUaXRsZVwiXG4gICAgICAgIFtmb3JtYXRNb250aFRpdGxlXT1cImZvcm1hdE1vbnRoVGl0bGVcIlxuICAgICAgICBbc3RhcnRpbmdEYXldPVwic3RhcnRpbmdEYXlcIlxuICAgICAgICBbeWVhclJhbmdlXT1cInllYXJSYW5nZVwiXG4gICAgICAgIFtvbmx5Q3VycmVudE1vbnRoXT1cIm9ubHlDdXJyZW50TW9udGhcIlxuICAgICAgICBbc2hvcnRjdXRQcm9wYWdhdGlvbl09XCJzaG9ydGN1dFByb3BhZ2F0aW9uXCJcbiAgICAgICAgW2N1c3RvbUNsYXNzXT1cImN1c3RvbUNsYXNzXCJcbiAgICAgICAgW2RhdGVEaXNhYmxlZF09XCJkYXRlRGlzYWJsZWRcIlxuICAgICAgPlxuICAgICAgPC9kYXRlcGlja2VyPlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvc3Bhbj5cbiJdfQ==
269
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS1pbnB1dC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvc3JjL2xpYi9mb3Jtcy11aS9jb21wb25lbnRzL2RhdGUtaW5wdXQvZGF0ZS1pbnB1dC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvc3JjL2xpYi9mb3Jtcy11aS9jb21wb25lbnRzL2RhdGUtaW5wdXQvZGF0ZS1pbnB1dC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUVMLFNBQVMsRUFFVCxZQUFZLEVBQ1osVUFBVSxFQUNWLE1BQU0sRUFDTixLQUFLLEVBSUwsUUFBUSxFQUNSLE1BQU0sRUFFTixTQUFTLEVBQ1YsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUF3QixhQUFhLEVBQUUsaUJBQWlCLEVBQWlDLE1BQU0sZ0JBQWdCLENBQUM7QUFDdkgsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDOUMsT0FBTyxFQUFFLGFBQWEsRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzlFLE9BQU8sRUFBYyxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDM0MsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzNDLE9BQU8sRUFBRSxjQUFjLEVBQUUsWUFBWSxFQUF1QixNQUFNLG9DQUFvQyxDQUFDO0FBQ3ZHLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSx3QkFBd0IsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQzFILE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQzs7Ozs7OztBQUtsRCxNQUFNLGdCQUFnQixHQUFHLElBQUksSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO0FBQ2hELE1B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O3NCQUFsQyxLQUFLO2dCQUNVLFdBQVc7c0JBQTFCLEtBQUs7Z0JBRVUsUUFBUTtzQkFBdkIsS0FBSztnQkFDVSxZQUFZO3NCQUEzQixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBRUksY0FBYztzQkFBdkIsTUFBTTtnQkFFYSxLQUFLO3NCQUF4QixTQUFTO3VCQUFDLE9BQU8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBFbGVtZW50UmVmLFxuICBFdmVudEVtaXR0ZXIsXG4gIGZvcndhcmRSZWYsXG4gIEluamVjdCxcbiAgSW5wdXQsXG4gIE9uQ2hhbmdlcyxcbiAgT25EZXN0cm95LFxuICBPbkluaXQsXG4gIE9wdGlvbmFsLFxuICBPdXRwdXQsXG4gIFNpbXBsZUNoYW5nZXMsXG4gIFZpZXdDaGlsZFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBOR19WQUxJREFUT1JTLCBOR19WQUxVRV9BQ0NFU1NPUiwgVW50eXBlZEZvcm1Db250cm9sLCBWYWxpZGF0b3IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBmb3JtYXQsIHN0YXJ0T2ZEYXkgfSBmcm9tICdkYXRlLWZucyc7XG5pbXBvcnQgeyBEYXRlRm9ybWF0dGVyLCBEYXRlUGlja2VyQ29tcG9uZW50IH0gZnJvbSAnbmd4LWJvb3RzdHJhcC9kYXRlcGlja2VyJztcbmltcG9ydCB7IE9ic2VydmFibGUsIFN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IERBVEVfRk5fTE9DQUxFLCBEQVRFX0ZPUk1BVFMsIERhdGVGb3JtYXRzUHJvdmlkZXIgfSBmcm9tICcuLi8uLi8uLi9jb3JlLXVpL2NvcmUtdWkuY29uc3RhbnRzJztcbmltcG9ydCB7IGNvbnZlcnREYXRlVG9Mb2NhbGVEYXRlU3RyaW5nLCBjcmVhdGVEYXRlRnJvbURhdGVTdHJpbmcsIGlzVmFsaWREYXRlU3RyaW5nIH0gZnJvbSAnLi4vLi4vLi4vc2hhcmVkL2RhdGUtaGVscGVycyc7XG5pbXBvcnQgeyBPYnNlcnZlIH0gZnJvbSAnLi4vLi4vLi4vc2hhcmVkL29ic2VydmUnO1xuXG4vLyBJbnB1dCArIG5nMi1ib290c3RyYXAgZGF0ZXBpY2tlclxuZXhwb3J0IHR5cGUgRGF0ZUlucHV0UmVuZGVyaW5nU3R5bGUgPSAnSU5QVVQnIHwgJ0xJTksnO1xuXG5jb25zdCBERUZBVUxUX01JTl9EQVRFID0gbmV3IERhdGUoJzAwMDAtMDEtMDEnKTtcbmNvbnN0IERFRkFVTFRfTUFYX0RBVEUgPSBuZXcgRGF0ZSgnOTk5OS0xMi0zMScpO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdseC1kYXRlLWlucHV0JyxcbiAgdGVtcGxhdGVVcmw6ICdkYXRlLWlucHV0LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJ2RhdGUtaW5wdXQuY29tcG9uZW50LnNjc3MnXSxcbiAgcHJvdmlkZXJzOiBbXG4gICAgeyBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUiwgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gRGF0ZUlucHV0Q29tcG9uZW50KSwgbXVsdGk6IHRydWUgfSxcbiAgICB7IHByb3ZpZGU6IE5HX1ZBTElEQVRPUlMsIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IERhdGVJbnB1dENvbXBvbmVudCksIG11bHRpOiB0cnVlIH1cbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBEYXRlSW5wdXRDb21wb25lbnQgaW1wbGVtZW50cyBPbkNoYW5nZXMsIE9uSW5pdCwgT25EZXN0cm95LCBDb250cm9sVmFsdWVBY2Nlc3NvciwgVmFsaWRhdG9yIHtcbiAgQElucHV0KCkgcHVibGljIGRhdGU6IERhdGUgfCBudWxsID0gbnVsbDsgLy8gbWFpbiBkYXRlIGlucHV0OyB0aGlzIGlzIGFsc28gdGhlIG9uZSB1c2VkIGZvciBuZ01vZGVsICYgZm9ybUNvbnRyb2whXG4gIEBPdXRwdXQoKSBkYXRlQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxEYXRlIHwgbnVsbD4oKTsgLy8gdHJpZ2dlcmVkIHdoZW5ldmVyIHRoZSBkYXRlIGNoYW5nZXNcbiAgQElucHV0KCkgcHVibGljIGRhdGVTdHJpbmc6IHN0cmluZyB8IG51bGwgPSBudWxsOyAvLyBzZWNvbmRhcnksIGFsdGVybmF0aXZlIGlucHV0IHdpdGggZGF0ZSBzdHJpbmdcbiAgQE91dHB1dCgpIGRhdGVTdHJpbmdDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZyB8IG51bGw+KCk7IC8vIHRyaWdnZXJlZCB3aGVuZXZlciB0aGUgZGF0ZSBjaGFuZ2VzXG4gIC8vIERldGVybWluZSB3aGV0aGVyIGZvcm1Hcm91cCdzIHZhbHVlIGFjY2Vzc29yIGlzIGFjY2Vzc2luZyB0aGUgc2VsZWN0ZWQgSURzIG9yIHRoZSBzZWxlY3RlZCBvYmplY3RzXG4gIEBJbnB1dCgpIHB1YmxpYyB2YWx1ZUFjY2Vzc29yOiAnZGF0ZScgfCAnZGF0ZVN0cmluZycgPSAnZGF0ZSc7XG5cbiAgQElucHV0KCkgcHVibGljIGlucHV0SWQ6IHN0cmluZyA9ICcnOyAvLyBpZCB0byBiZSBzZXQgb24gaW5wdXQgdG8gY29ycmVzcG9uZCB0byBvdXRzaWRlIGxhYmVsXG4gIEBJbnB1dCgpIHB1YmxpYyByZW5kZXJpbmdTdHlsZTogRGF0ZUlucHV0UmVuZGVyaW5nU3R5bGUgPSAnSU5QVVQnO1xuICBASW5wdXQoKSBwdWJsaWMgcGxhY2Vob2xkZXI6IHN0cmluZyA9ICd5eXl5LW1tLWRkJztcblxuICAvLy0tLSBJbnB1dHMgcmVwbGljYXRlZCBmcm9tIGRhdGVwaWNrZXI7IChzZWxlY3Rpb25Eb25lKSBpcyBub3QgbmVlZGVkLCBhcyAoZGF0ZUNoYW5nZSkgaXMgZXF1aXZhbGVuXG4gIEBJbnB1dCgpIHB1YmxpYyBkYXRlcGlja2VyTW9kZTogc3RyaW5nID0gJ2RheSc7IC8vIHNldHMgZGF0ZXBpY2tlciBtb2RlLCBzdXBwb3J0czogZGF5LCBtb250aCwgeWVhclxuICBASW5wdXQoKSBpbml0RGF0ZVN0cmluZyE6IHN0cmluZzsgLy8gZGVmYXVsdCBkYXRlIHRvIHNob3cgaWYgbmctbW9kZWwgdmFsdWUgaXMgbm90IHNwZWNpZmllZFxuICBAT2JzZXJ2ZSgnaW5pdERhdGVTdHJpbmcnKSBpbml0RGF0ZVN0cmluZyQhOiBPYnNlcnZhYmxlPHN0cmluZz47IC8vIGRlZmF1bHQgZGF0ZSB0byBzaG93IGlmIG5nLW1vZGVsIHZhbHVlIGlzIG5vdCBzcGVjaWZpZWRcbiAgQElucHV0KCkgcHVibGljIG1pbkRhdGUgPSBERUZBVUxUX01JTl9EQVRFOyAvLyBvbGRlc3Qgc2VsZWN0YWJsZSBkYXRlXG4gIEBJbnB1dCgpIHB1YmxpYyBtYXhEYXRlID0gREVGQVVMVF9NQVhfREFURTsgLy8gbGF0ZXN0IHNlbGVjdGFibGUgZGF0ZVxuICBASW5wdXQoKSBwdWJsaWMgbWluTW9kZTogc3RyaW5nID0gJ2RheSc7IC8vIHNldCBsb3dlciBkYXRlcGlja2VyIG1vZGUsIHN1cHBvcnRzOiBkYXksIG1vbnRoLCB5ZWFyXG4gIEBJbnB1dCgpIHB1YmxpYyBtYXhNb2RlOiBzdHJpbmcgPSAneWVhcic7IC8vIHNldHMgdXBwZXIgZGF0ZXBpY2tlciBtb2RlLCBzdXBwb3J0czogZGF5LCBtb250aCwgeWVhclxuICBASW5wdXQoKSBwdWJsaWMgc2hvd1dlZWtzOiBib29sZWFuID0gdHJ1ZTsgLy8gaWYgZmFsc2Ugd2VlayBudW1iZXJzIHdpbGwgYmUgaGlkZGVuXG4gIEBJbnB1dCgpIHB1YmxpYyBmb3JtYXREYXk6IHN0cmluZyA9ICdERCc7IC8vIGZvcm1hdCBvZiBkYXkgaW4gbW9udGhcbiAgQElucHV0KCkgcHVibGljIGZvcm1hdE1vbnRoOiBzdHJpbmcgPSAnTU1NTSc7IC8vIGZvcm1hdCBvZiBtb250aCBpbiB5ZWFyXG4gIEBJbnB1dCgpIHB1YmxpYyBmb3JtYXRZZWFyOiBzdHJpbmcgPSAnWVlZWSc7IC8vIGZvcm1hdCBvZiB5ZWFyIGluIHllYXIgcmFuZ2VcbiAgQElucHV0KCkgcHVibGljIGZvcm1hdERheUhlYWRlcjogc3RyaW5nID0gJ2RkJzsgLy8gZm9ybWF0IG9mIGRheSBpbiB3ZWVrIGhlYWRlclxuICBASW5wdXQoKSBwdWJsaWMgZm9ybWF0RGF5VGl0bGU6IHN0cmluZyA9ICdNTU1NIFlZWVknOyAvLyBmb3JtYXQgb2YgdGl0bGUgd2hlbiBzZWxlY3RpbmcgZGF5XG4gIEBJbnB1dCgpIHB1YmxpYyBmb3JtYXRNb250aFRpdGxlOiBzdHJpbmcgPSAnWVlZWSc7IC8vIGZvcm1hdCBvZiB0aXRsZSB3aGVuIHNlbGVjdGluZyBtb250aFxuICBASW5wdXQoKSBzdGFydGluZ0RheTogbnVtYmVyID0gMDsgLy8gc3RhcnRpbmcgZGF5IG9mIHRoZSB3ZWVrIGZyb20gMC02ICgwPVN1bmRheSwgLi4uLCA2PVNhdHVyZGF5KSBwdWJsaWNcbiAgQElucHV0KCkgcHVibGljIHllYXJSYW5nZTogbnVtYmVyID0gMjA7IC8vIG51bWJlciBvZiB5ZWFycyBkaXNwbGF5ZWQgaW4geWVhciBzZWxlY3Rpb25cbiAgQElucHV0KCkgcHVibGljIG9ubHlDdXJyZW50TW9udGg6IGJvb2xlYW4gPSBmYWxzZTsgLy8gaWYgdHJ1ZSBvbmx5IGRhdGVzIGZyb20gdGhlIGN1cnJlbnRseSBkaXNwbGF5ZWQgbW9udGggd2lsbCBiZSBzaG93blxuICBASW5wdXQoKSBwdWJsaWMgc2hvcnRjdXRQcm9wYWdhdGlvbjogYm9vbGVhbiA9IGZhbHNlOyAvLyAgaWYgdHJ1ZSBzaG9ydGN1dGBzIGV2ZW50IHByb3BhZ2F0aW9uIHdpbGwgYmUgZGlzYWJsZWRcbiAgQElucHV0KCkgcHVibGljIGN1c3RvbUNsYXNzOiB7IGRhdGU6IERhdGU7IG1vZGU6IHN0cmluZzsgY2xheno6IHN0cmluZyB9W10gPSBbXTsgLy8gYXJyYXkgb2YgY3VzdG9tIGNzcyBjbGFzc2VzIHRvIGJlIGFwcGxpZWQgdG9cbiAgLy8gdGFyZ2V0ZWQgZGF0ZXNcbiAgQElucHV0KCkgcHVibGljIGRpc2FibGVkITogYm9vbGVhbjtcbiAgQElucHV0KCkgcHVibGljIGRhdGVEaXNhYmxlZDogeyBkYXRlOiBEYXRlOyBtb2RlOiBzdHJpbmcgfVtdID0gW107IC8vIGFycmF5IG9mIGRpc2FibGVkIGRhdGVzIGlmIG1vZGUgaXMgZGF5LCBvciB5ZWFycywgZXRjLlxuICBASW5wdXQoKSBhdXRvRm9jdXMgPSBmYWxzZTtcblxuICBAT3V0cHV0KCkgY2xvc2VEYXRlSW5wdXQgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG5cbiAgQFZpZXdDaGlsZCgnaW5wdXQnKSBpbnB1dCE6IEVsZW1lbnRSZWY8SFRNTElucHV0RWxlbWVudD47XG5cbiAgc2hvd0RhdGVwaWNrZXI6IGJvb2xlYW4gPSBmYWxzZTtcbiAgZGF0ZUZvcm1hdDogc3RyaW5nO1xuICBpbml0RGF0ZSE6IERhdGU7XG5cbiAgcmVhZG9ubHkgZGVzdHJveWVkJCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgLy8tLSBJbXBsZW1lbnQgQ29udHJvbFZhbHVlQWNjZXNzb3JcbiAgcHJpdmF0ZSBmb3JtQ29udHJvbCE6IFVudHlwZWRGb3JtQ29udHJvbDtcbiAgaGFzRXJyb3I6IGJvb2xlYW4gPSBmYWxzZTtcbiAgb25Ub3VjaGVkITogKCkgPT4gdm9pZDtcblxuICBwcm9wYWdhdGVDaGFuZ2UgPSAoX2RhdGU6IERhdGUgfCBudWxsKSA9PiB7fTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGNkOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBASW5qZWN0KERBVEVfRk9STUFUUykgcHJpdmF0ZSBkYXRlRm9ybWF0c1Byb3ZpZGVyOiBEYXRlRm9ybWF0c1Byb3ZpZGVyLFxuICAgIEBPcHRpb25hbCgpIEBJbmplY3QoREFURV9GTl9MT0NBTEUpIHByaXZhdGUgZ2V0RGF0ZUZuTG9jYWxlPzogRnVuY3Rpb25cbiAgKSB7XG4gICAgdGhpcy5kYXRlRm9ybWF0ID0gdGhpcy5kYXRlRm9ybWF0c1Byb3ZpZGVyLmdldERhdGVGb3JtYXQoKTtcbiAgICAvLyBQYXRjaCBEYXRlUGlja2VyIHVudGlsIGh0dHBzOi8vZ2l0aHViLmNvbS92YWxvci1zb2Z0d2FyZS9uZzItYm9vdHN0cmFwL2lzc3Vlcy8xMzg1IGlzIHJlc29sdmVkXG4gICAgY29uc3Qgd3JpdGVWYWx1ZSA9IERhdGVQaWNrZXJDb21wb25lbnQucHJvdG90eXBlLndyaXRlVmFsdWU7XG4gICAgRGF0ZVBpY2tlckNvbXBvbmVudC5wcm90b3R5cGUud3JpdGVWYWx1ZSA9IGZ1bmN0aW9uICh2YWx1ZSkge1xuICAgICAgaWYgKHZhbHVlICE9PSBudWxsKSB7XG4gICAgICAgIHJldHVybiB3cml0ZVZhbHVlLmFwcGx5KHRoaXMsIGFyZ3VtZW50cyBhcyBhbnkpO1xuICAgICAgfVxuICAgIH07XG5cbiAgICAvLyBTb21laG93IGRhdGVwaWNrZXIgZG9lcyB1c2UgYSBzZXBhcmF0ZSBtb21lbnQgaW5zdGFuY2UgdGhhbiB3ZSBkby4gVGhhdCBvbmUgcnVucyBvbiBsb2NhbGUgZW4gYnkgZGVmYXVsdC5cbiAgICAvLyBTbyB3ZSBwYXRjaCB0aGUgZm9ybWF0IGZ1bmN0aW9uIGhlcmUgdG8gdXNlIG91ciBtb21lbnQgaW5zdGFuY2UuXG4gICAgLy8gTWF5YmUgaXQgd2lsbCBiZSBmaXhlZCB3aXRoOiBodHRwczovL2dpdGh1Yi5jb20vdmFsb3Itc29mdHdhcmUvbmd4LWJvb3RzdHJhcC9pc3N1ZXMvNDU1XG4gICAgY29uc3QgbG9jYWxlID0gdGhpcy5nZXREYXRlRm5Mb2NhbGUgPyB0aGlzLmdldERhdGVGbkxvY2FsZSgpIDogbnVsbDtcbiAgICBEYXRlRm9ybWF0dGVyLnByb3RvdHlwZS5mb3JtYXQgPSBmdW5jdGlvbiAoZGF0ZTogRGF0ZSwgZjogc3RyaW5nKSB7XG4gICAgICByZXR1cm4gZm9ybWF0KGRhdGUsIGYsIHsgbG9jYWxlIH0pO1xuICAgIH07XG4gIH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLmluaXREYXRlU3RyaW5nJC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3llZCQpKS5zdWJzY3JpYmUoKGRhdGUpID0+IHtcbiAgICAgIHRoaXMuaW5pdERhdGUgPSBjcmVhdGVEYXRlRnJvbURhdGVTdHJpbmcoZGF0ZSkgPz8gc3RhcnRPZkRheShuZXcgRGF0ZSgpKTtcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XG4gICAgaWYgKGNoYW5nZXNbJ2RhdGUnXSkge1xuICAgICAgdGhpcy5kYXRlU3RyaW5nID0gdGhpcy5kYXRlID8gY29udmVydERhdGVUb0xvY2FsZURhdGVTdHJpbmcodGhpcy5kYXRlKSA6IG51bGw7XG4gICAgfSBlbHNlIGlmIChjaGFuZ2VzWydkYXRlU3RyaW5nJ10pIHtcbiAgICAgIHRoaXMub25EYXRlU3RyaW5nQ2hhbmdlKHRoaXMuZGF0ZVN0cmluZywgZmFsc2UpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLmRlc3Ryb3llZCQubmV4dCgpO1xuICB9XG5cbiAgcHVibGljIGZvY3VzKCkge1xuICAgIHRoaXMuaW5wdXQubmF0aXZlRWxlbWVudC5mb2N1cygpO1xuICB9XG5cbiAgcHVibGljIHNob3dQb3B1cCgpIHtcbiAgICB0aGlzLnNob3dEYXRlcGlja2VyID0gdHJ1ZTtcbiAgICB0aGlzLmNkLmRldGVjdENoYW5nZXMoKTtcbiAgfVxuXG4gIHB1YmxpYyB0b2dnbGVQb3B1cCgpIHtcbiAgICB0aGlzLnNob3dEYXRlcGlja2VyID0gIXRoaXMuc2hvd0RhdGVwaWNrZXI7XG4gIH1cblxuICBwdWJsaWMgaGlkZVBvcHVwKCkge1xuICAgIGlmICh0aGlzLnNob3dEYXRlcGlja2VyKSB7XG4gICAgICB0aGlzLnNob3dEYXRlcGlja2VyID0gZmFsc2U7XG4gICAgICB0aGlzLmNsb3NlRGF0ZUlucHV0LmVtaXQoKTtcbiAgICB9XG4gIH1cblxuICBvbkRhdGVTdHJpbmdDaGFuZ2UobmV3RGF0ZVN0cmluZzogc3RyaW5nIHwgbnVsbCwgZW1pdDogYm9vbGVhbiA9IHRydWUpIHtcbiAgICBpZiAoaXNWYWxpZERhdGVTdHJpbmcobmV3RGF0ZVN0cmluZykpIHtcbiAgICAgIGNvbnN0IGRhdGUgPSBjcmVhdGVEYXRlRnJvbURhdGVTdHJpbmcobmV3RGF0ZVN0cmluZyk7XG4gICAgICB0aGlzLnVwZGF0ZURhdGUoZGF0ZSwgZW1pdCk7XG4gICAgfSBlbHNlIGlmIChuZXdEYXRlU3RyaW5nID09PSBudWxsIHx8IG5ld0RhdGVTdHJpbmcgPT09ICcnKSB7XG4gICAgICB0aGlzLnVwZGF0ZURhdGUobnVsbCwgZW1pdCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuaGFzRXJyb3IgPSB0cnVlO1xuICAgICAgaWYgKHRoaXMuZm9ybUNvbnRyb2wpIHtcbiAgICAgICAgdGhpcy5mb3JtQ29udHJvbC51cGRhdGVWYWx1ZUFuZFZhbGlkaXR5KCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgb25TZWxlY3Rpb25Eb25lKG5ld0RhdGU6IERhdGUpIHtcbiAgICB0aGlzLnVwZGF0ZURhdGUobmV3RGF0ZSk7XG4gICAgdGhpcy5oaWRlUG9wdXAoKTtcbiAgfVxuXG4gIG9uQmx1cigpIHtcbiAgICBpZiAodGhpcy5vblRvdWNoZWQpIHtcbiAgICAgIHRoaXMub25Ub3VjaGVkKCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSB1cGRhdGVEYXRlKGRhdGU6IERhdGUgfCBudWxsLCBlbWl0OiBib29sZWFuID0gdHJ1ZSkge1xuICAgIHRoaXMuZGF0ZSA9IGRhdGU7XG4gICAgdGhpcy5kYXRlU3RyaW5nID0gdGhpcy5kYXRlID8gY29udmVydERhdGVUb0xvY2FsZURhdGVTdHJpbmcodGhpcy5kYXRlKSA6ICcnO1xuICAgIGlmIChlbWl0KSB7XG4gICAgICB0aGlzLmRhdGVDaGFuZ2UuZW1pdChkYXRlKTtcbiAgICAgIHRoaXMuZGF0ZVN0cmluZ0NoYW5nZS5lbWl0KHRoaXMuZGF0ZVN0cmluZyk7XG4gICAgfVxuICAgIHRoaXMucHJvcGFnYXRlQ2hhbmdlKGRhdGUpO1xuICAgIHRoaXMucmVjaGVja0Vycm9ycygpO1xuICB9XG5cbiAgcHJpdmF0ZSByZWNoZWNrRXJyb3JzKCkge1xuICAgIHRoaXMuaGFzRXJyb3IgPSBmYWxzZTtcbiAgICBpZiAodGhpcy5mb3JtQ29udHJvbCkge1xuICAgICAgdGhpcy5mb3JtQ29udHJvbC51cGRhdGVWYWx1ZUFuZFZhbGlkaXR5KCk7XG4gICAgfVxuICB9XG5cbiAgLy8tLS0gSW1wbGVtZW50IENvbnRyb2xWYWx1ZUFjY2Vzc29yXG4gIC8qKiBXcml0ZSBhIG5ldyB2YWx1ZSB0byB0aGUgZWxlbWVudC4gKi9cbiAgd3JpdGVWYWx1ZShuZXdEYXRlOiBEYXRlIHwgc3RyaW5nKSB7XG4gICAgaWYgKHRoaXMudmFsdWVBY2Nlc3NvciA9PT0gJ2RhdGUnKSB7XG4gICAgICB0aGlzLmRhdGUgPSBuZXdEYXRlIGFzIERhdGU7XG4gICAgICB0aGlzLmRhdGVTdHJpbmcgPSBjb252ZXJ0RGF0ZVRvTG9jYWxlRGF0ZVN0cmluZyh0aGlzLmRhdGUpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmRhdGVTdHJpbmcgPSBuZXdEYXRlIGFzIHN0cmluZztcbiAgICAgIHRoaXMub25EYXRlU3RyaW5nQ2hhbmdlKHRoaXMuZGF0ZVN0cmluZywgZmFsc2UpO1xuICAgIH1cbiAgfVxuXG4gIC8qKiBTZXQgdGhlIGZ1bmN0aW9uIHRvIGJlIGNhbGxlZCB3aGVuIHRoZSBjb250cm9sIHJlY2VpdmVzIGEgY2hhbmdlIGV2ZW50LiAqL1xuICByZWdpc3Rlck9uQ2hhbmdlKGZuOiBhbnkpIHtcbiAgICBpZiAodGhpcy52YWx1ZUFjY2Vzc29yID09PSAnZGF0ZScpIHtcbiAgICAgIHRoaXMuZGF0ZUNoYW5nZS5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3llZCQpKS5zdWJzY3JpYmUoZm4pO1xuICAgIH0gZWxzZSBpZiAodGhpcy52YWx1ZUFjY2Vzc29yID09PSAnZGF0ZVN0cmluZycpIHtcbiAgICAgIHRoaXMuZGF0ZVN0cmluZ0NoYW5nZS5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3llZCQpKS5zdWJzY3JpYmUoZm4pO1xuICAgIH1cbiAgfVxuXG4gIC8qKiBTZXQgdGhlIGZ1bmN0aW9uIHRvIGJlIGNhbGxlZCB3aGVuIHRoZSBjb250cm9sIHJlY2VpdmVzIGEgdG91Y2ggZXZlbnQuICovXG4gIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiAoKSA9PiB2b2lkKSB7XG4gICAgdGhpcy5vblRvdWNoZWQgPSBmbjtcbiAgfVxuXG4gIHZhbGlkYXRlKGM6IFVudHlwZWRGb3JtQ29udHJvbCkge1xuICAgIHRoaXMuZm9ybUNvbnRyb2wgPSBjO1xuICAgIHJldHVybiB0aGlzLmhhc0Vycm9yXG4gICAgICA/IHtcbiAgICAgICAgICBkYXRlRm9ybWF0RXJyb3I6IHtcbiAgICAgICAgICAgIGdpdmVuOiB0aGlzLmRhdGVTdHJpbmcsXG4gICAgICAgICAgICBmb3JtYXQ6ICd5eXl5LW1tLWRkJ1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgOiBudWxsO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiYmFja2Ryb3BcIiAqbmdJZj1cInNob3dEYXRlcGlja2VyXCIgKGNsaWNrKT1cImhpZGVQb3B1cCgpXCI+PC9kaXY+XG48c3BhbiBjbGFzcz1cIndyYXBwZXJcIiBbY2xhc3MuZm9yTGlua109XCJyZW5kZXJpbmdTdHlsZSA9PT0gJ0xJTksnXCIgW2NsYXNzLmhhcy1lcnJvcl09XCJoYXNFcnJvclwiPlxuICA8aW5wdXRcbiAgICAjaW5wdXRcbiAgICBjbGFzcz1cImZvcm0tY29udHJvbCBkYXRlQ29udHJvbFwiXG4gICAgcGxhY2Vob2xkZXI9XCJ7eyBwbGFjZWhvbGRlciB9fVwiXG4gICAgW2lkXT1cImlucHV0SWRcIlxuICAgIFtseEF1dG9mb2N1c109XCJhdXRvRm9jdXNcIlxuICAgIFsobmdNb2RlbCldPVwiZGF0ZVN0cmluZ1wiXG4gICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICAobmdNb2RlbENoYW5nZSk9XCJvbkRhdGVTdHJpbmdDaGFuZ2UoJGV2ZW50KVwiXG4gICAgKGZvY3VzKT1cInNob3dQb3B1cCgpXCJcbiAgICAoYmx1cik9XCJvbkJsdXIoKVwiXG4gICAgKGtleWRvd24uZW50ZXIpPVwiaGlkZVBvcHVwKClcIlxuICAgIChrZXlkb3duLmVzY2FwZSk9XCJoaWRlUG9wdXAoKVwiXG4gICAgKGtleWRvd24udGFiKT1cImhpZGVQb3B1cCgpXCJcbiAgICAoa2V5ZG93bi5zaGlmdC50YWIpPVwiaGlkZVBvcHVwKClcIlxuICAgIFtjbGFzcy50ZXh0LWRhbmdlcl09XCJoYXNFcnJvclwiXG4gICAgKm5nSWY9XCJyZW5kZXJpbmdTdHlsZSA9PT0gJ0lOUFVUJ1wiXG4gIC8+XG4gIDxhIGNsYXNzPVwiZGF0ZUNvbnRyb2xcIiAoY2xpY2spPVwidG9nZ2xlUG9wdXAoKVwiICpuZ0lmPVwicmVuZGVyaW5nU3R5bGUgPT09ICdMSU5LJ1wiPnt7IGRhdGUgfCBseERhdGU6IGRhdGVGb3JtYXQgfX08L2E+XG4gIDxkaXYgY2xhc3M9XCJkYXRlcGlja2VyQ29udGFpbmVyXCI+XG4gICAgPGRpdiBjbGFzcz1cImNhbGVuZGFyXCI+XG4gICAgICA8ZGF0ZXBpY2tlclxuICAgICAgICBjbGFzcz1cInBvcHVwXCJcbiAgICAgICAgKm5nSWY9XCJzaG93RGF0ZXBpY2tlclwiXG4gICAgICAgIChzZWxlY3Rpb25Eb25lKT1cIm9uU2VsZWN0aW9uRG9uZSgkZXZlbnQpXCJcbiAgICAgICAgW25nTW9kZWxdPVwiZGF0ZVwiXG4gICAgICAgIFtkYXRlcGlja2VyTW9kZV09XCJkYXRlcGlja2VyTW9kZVwiXG4gICAgICAgIFtpbml0RGF0ZV09XCJpbml0RGF0ZVwiXG4gICAgICAgIFttaW5EYXRlXT1cIm1pbkRhdGVcIlxuICAgICAgICBbbWF4RGF0ZV09XCJtYXhEYXRlXCJcbiAgICAgICAgW21pbk1vZGVdPVwibWluTW9kZVwiXG4gICAgICAgIFttYXhNb2RlXT1cIm1heE1vZGVcIlxuICAgICAgICBbc2hvd1dlZWtzXT1cInNob3dXZWVrc1wiXG4gICAgICAgIFtmb3JtYXREYXldPVwiZm9ybWF0RGF5XCJcbiAgICAgICAgW2Zvcm1hdE1vbnRoXT1cImZvcm1hdE1vbnRoXCJcbiAgICAgICAgW2Zvcm1hdFllYXJdPVwiZm9ybWF0WWVhclwiXG4gICAgICAgIFtmb3JtYXREYXlIZWFkZXJdPVwiZm9ybWF0RGF5SGVhZGVyXCJcbiAgICAgICAgW2Zvcm1hdERheVRpdGxlXT1cImZvcm1hdERheVRpdGxlXCJcbiAgICAgICAgW2Zvcm1hdE1vbnRoVGl0bGVdPVwiZm9ybWF0TW9udGhUaXRsZVwiXG4gICAgICAgIFtzdGFydGluZ0RheV09XCJzdGFydGluZ0RheVwiXG4gICAgICAgIFt5ZWFyUmFuZ2VdPVwieWVhclJhbmdlXCJcbiAgICAgICAgW29ubHlDdXJyZW50TW9udGhdPVwib25seUN1cnJlbnRNb250aFwiXG4gICAgICAgIFtzaG9ydGN1dFByb3BhZ2F0aW9uXT1cInNob3J0Y3V0UHJvcGFnYXRpb25cIlxuICAgICAgICBbY3VzdG9tQ2xhc3NdPVwiY3VzdG9tQ2xhc3NcIlxuICAgICAgICBbZGF0ZURpc2FibGVkXT1cImRhdGVEaXNhYmxlZFwiXG4gICAgICA+XG4gICAgICA8L2RhdGVwaWNrZXI+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9zcGFuPlxuIl19
@@ -1,7 +1,7 @@
1
1
  import { ChangeDetectionStrategy, Component, ContentChild, EventEmitter, HostBinding, Input, Output } from '@angular/core';
2
2
  import * as i0 from "@angular/core";
3
- import * as i1 from "../../../../core-ui/components/button/button.component";
4
- import * as i2 from "@angular/common";
3
+ import * as i1 from "@angular/common";
4
+ import * as i2 from "../../../../core-ui/components/button/button.component";
5
5
  export class DragAndDropListItemComponent {
6
6
  constructor(element) {
7
7
  this.element = element;
@@ -23,9 +23,9 @@ export class DragAndDropListItemComponent {
23
23
  this.element.nativeElement.focus();
24
24
  }
25
25
  }
26
- DragAndDropListItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DragAndDropListItemComponent, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
27
- DragAndDropListItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.2", type: DragAndDropListItemComponent, selector: "lx-drag-and-drop-list-item", inputs: { item: "item", draggable: "draggable", actions: "actions" }, outputs: { action: "action" }, host: { properties: { "class.draggingDisabled": "this.draggingDisabled", "class.customTemplate": "this.hasCustomTemplate" } }, queries: [{ propertyName: "customTemplateRef", first: true, predicate: ["customTemplate"], descendants: true }], ngImport: i0, template: "<ng-container *ngIf=\"customTemplateRef; else defaultTemplate\">\n <ng-container *ngTemplateOutlet=\"customTemplateRef\"></ng-container>\n</ng-container>\n<ng-template #defaultTemplate>\n <div class=\"drag-item-wrappper\">\n <i *ngIf=\"draggable\" class=\"far fa-bars drag-handle\"></i>\n <span [attr.title]=\"item\" class=\"itemWrapperForTruncation truncate\">{{ item }}</span>\n </div>\n <div class=\"left-button-container\" align=\"left\">\n <div class=\"action-buttons-wrapper\" *ngIf=\"!!actions\">\n <button\n lx-button\n *ngFor=\"let act of actions; trackBy: trackByAction\"\n (click)=\"action.emit({ actionId: act.id, item: item })\"\n [title]=\"act.label\"\n [square]=\"true\"\n mode=\"ghost\"\n size=\"small\"\n class=\"action-button\"\n [class.show-on-hover-button]=\"act.showOnlyOnHover ? true : false\"\n >\n <i class=\"far {{ act.icon }} actionIcon\"></i>\n </button>\n </div>\n </div>\n</ng-template>\n", styles: [":host:not(.customTemplate){padding:6px 8px;display:flex;flex-direction:row;align-items:center;justify-content:space-between;box-sizing:border-box;background:#fff;border-radius:3px}:host:not(.customTemplate):hover .show-on-hover-button{opacity:1}:host.draggingDisabled{background:#eaedf1}.truncate{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.drag-handle{padding-right:4px}.actionIcon{padding:0 2px}.drag-item-wrappper{display:flex;min-width:0;align-items:baseline}.left-button-container,.action-buttons-wrapper{display:flex;flex-direction:row;flex-wrap:nowrap}.show-on-hover-button{opacity:0}.show-on-hover-button:focus{opacity:1}lx-option i{margin-right:8px}\n"], components: [{ type: i1.ButtonComponent, selector: "button[lx-button]", inputs: ["size", "color", "mode", "pressed", "selected", "square", "circle", "disabled", "showSpinner"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
28
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DragAndDropListItemComponent, decorators: [{
26
+ DragAndDropListItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: DragAndDropListItemComponent, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
27
+ DragAndDropListItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.3", type: DragAndDropListItemComponent, selector: "lx-drag-and-drop-list-item", inputs: { item: "item", draggable: "draggable", actions: "actions" }, outputs: { action: "action" }, host: { properties: { "class.draggingDisabled": "this.draggingDisabled", "class.customTemplate": "this.hasCustomTemplate" } }, queries: [{ propertyName: "customTemplateRef", first: true, predicate: ["customTemplate"], descendants: true }], ngImport: i0, template: "<ng-container *ngIf=\"customTemplateRef; else defaultTemplate\">\n <ng-container *ngTemplateOutlet=\"customTemplateRef\"></ng-container>\n</ng-container>\n<ng-template #defaultTemplate>\n <div class=\"drag-item-wrappper\">\n <i *ngIf=\"draggable\" class=\"far fa-bars drag-handle\"></i>\n <span [attr.title]=\"item\" class=\"itemWrapperForTruncation truncate\">{{ item }}</span>\n </div>\n <div class=\"left-button-container\" align=\"left\">\n <div class=\"action-buttons-wrapper\" *ngIf=\"!!actions\">\n <button\n lx-button\n *ngFor=\"let act of actions; trackBy: trackByAction\"\n (click)=\"action.emit({ actionId: act.id, item: item })\"\n [title]=\"act.label\"\n [square]=\"true\"\n mode=\"ghost\"\n size=\"small\"\n class=\"action-button\"\n [class.show-on-hover-button]=\"act.showOnlyOnHover ? true : false\"\n >\n <i class=\"far {{ act.icon }} actionIcon\"></i>\n </button>\n </div>\n </div>\n</ng-template>\n", styles: [":host:not(.customTemplate){padding:6px 8px;display:flex;flex-direction:row;align-items:center;justify-content:space-between;box-sizing:border-box;background:#fff;border-radius:3px}:host:not(.customTemplate):hover .show-on-hover-button{opacity:1}:host.draggingDisabled{background:#eaedf1}.truncate{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.drag-handle{padding-right:4px}.actionIcon{padding:0 2px}.drag-item-wrappper{display:flex;min-width:0;align-items:baseline}.left-button-container,.action-buttons-wrapper{display:flex;flex-direction:row;flex-wrap:nowrap}.show-on-hover-button{opacity:0}.show-on-hover-button:focus{opacity:1}lx-option i{margin-right:8px}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.ButtonComponent, selector: "button[lx-button]", inputs: ["size", "color", "mode", "pressed", "selected", "square", "circle", "disabled", "showSpinner"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
28
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: DragAndDropListItemComponent, decorators: [{
29
29
  type: Component,
30
30
  args: [{ selector: 'lx-drag-and-drop-list-item', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container *ngIf=\"customTemplateRef; else defaultTemplate\">\n <ng-container *ngTemplateOutlet=\"customTemplateRef\"></ng-container>\n</ng-container>\n<ng-template #defaultTemplate>\n <div class=\"drag-item-wrappper\">\n <i *ngIf=\"draggable\" class=\"far fa-bars drag-handle\"></i>\n <span [attr.title]=\"item\" class=\"itemWrapperForTruncation truncate\">{{ item }}</span>\n </div>\n <div class=\"left-button-container\" align=\"left\">\n <div class=\"action-buttons-wrapper\" *ngIf=\"!!actions\">\n <button\n lx-button\n *ngFor=\"let act of actions; trackBy: trackByAction\"\n (click)=\"action.emit({ actionId: act.id, item: item })\"\n [title]=\"act.label\"\n [square]=\"true\"\n mode=\"ghost\"\n size=\"small\"\n class=\"action-button\"\n [class.show-on-hover-button]=\"act.showOnlyOnHover ? true : false\"\n >\n <i class=\"far {{ act.icon }} actionIcon\"></i>\n </button>\n </div>\n </div>\n</ng-template>\n", styles: [":host:not(.customTemplate){padding:6px 8px;display:flex;flex-direction:row;align-items:center;justify-content:space-between;box-sizing:border-box;background:#fff;border-radius:3px}:host:not(.customTemplate):hover .show-on-hover-button{opacity:1}:host.draggingDisabled{background:#eaedf1}.truncate{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.drag-handle{padding-right:4px}.actionIcon{padding:0 2px}.drag-item-wrappper{display:flex;min-width:0;align-items:baseline}.left-button-container,.action-buttons-wrapper{display:flex;flex-direction:row;flex-wrap:nowrap}.show-on-hover-button{opacity:0}.show-on-hover-button:focus{opacity:1}lx-option i{margin-right:8px}\n"] }]
31
31
  }], ctorParameters: function () { return [{ type: i0.ElementRef }]; }, propDecorators: { item: [{
@@ -5,11 +5,11 @@ import { DRAG_AND_DROP_LIST_TRANSLATION_NAME } from './constants';
5
5
  import { DragAndDropListItemComponent } from './drag-and-drop-list-item/drag-and-drop-list-item.component';
6
6
  import { KeyboardSortableItemDirective } from './keyboard-sortable-item/keyboard-sortable-item.directive';
7
7
  import * as i0 from "@angular/core";
8
- import * as i1 from "./drag-and-drop-list-item/drag-and-drop-list-item.component";
9
- import * as i2 from "@angular/common";
10
- import * as i3 from "@angular/cdk/drag-drop";
8
+ import * as i1 from "@angular/common";
9
+ import * as i2 from "@angular/cdk/drag-drop";
10
+ import * as i3 from "./keyboard-sortable-item/keyboard-sortable-item.directive";
11
11
  import * as i4 from "./keyboard-sortable-list/keyboard-sortable-list.directive";
12
- import * as i5 from "./keyboard-sortable-item/keyboard-sortable-item.directive";
12
+ import * as i5 from "./drag-and-drop-list-item/drag-and-drop-list-item.component";
13
13
  import * as i6 from "@ngx-translate/core";
14
14
  export class DragAndDropListComponent {
15
15
  constructor() {
@@ -69,9 +69,9 @@ export class DragAndDropListComponent {
69
69
  return item.item;
70
70
  }
71
71
  }
72
- DragAndDropListComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DragAndDropListComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
73
- DragAndDropListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.2", type: DragAndDropListComponent, selector: "lx-drag-and-drop-list", inputs: { label: "label", labelFontWeight: "labelFontWeight", color: "color", fontSize: "fontSize" }, outputs: { moveToIndex: "moveToIndex", moveItem: "moveItem" }, host: { properties: { "attr.color": "this.color", "attr.fontSize": "this.fontSize" } }, queries: [{ propertyName: "_items", predicate: DragAndDropListItemComponent }], viewQueries: [{ propertyName: "_keyboardSortableItems", predicate: KeyboardSortableItemDirective, descendants: true }], ngImport: i0, template: "<label *ngIf=\"label\" [style.font-weight]=\"labelFontWeight\">{{ label }}</label>\n<p class=\"sr-only\">{{ NAME + '.helpTooltip' | translate }}</p>\n<ul\n cdkDropList\n class=\"list\"\n role=\"listbox\"\n lxKeyboardSortableList\n [keyboardSortableItems]=\"keyboardSortableItems$ | async\"\n [cdkDropListData]=\"items$ | async\"\n (cdkDropListDropped)=\"drop($event)\"\n>\n <li\n *ngFor=\"let itemComponent of items$ | async; trackBy: trackByItem\"\n #listItemParent\n class=\"item\"\n cdkDrag\n cdkDragLockAxis=\"y\"\n [cdkDragData]=\"itemComponent.item\"\n [cdkDragDisabled]=\"!itemComponent.draggable\"\n [class.dark]=\"color === 'dark'\"\n [class.big]=\"fontSize === 'big'\"\n [tabIndex]=\"itemComponent.draggable === false ? -1 : 0\"\n [lxKeyboardSortableItem]=\"allItemsData$ | async\"\n [lxKeyboardItemData]=\"itemComponent.item\"\n [(isSortingByKeyboard)]=\"isSortingByKeyboard\"\n [(lxKeyboardItemBeingSorted)]=\"keyboardItemBeingSorted\"\n (sortItemsWithKeyboard)=\"dropToIndexAfterArrowKey(itemComponent.item, $event.previousIndex, $event.currentIndex)\"\n >\n <lx-drag-and-drop-list-item\n class=\"dragAndDropItem\"\n [item]=\"itemComponent.item\"\n [draggable]=\"itemComponent.draggable\"\n [actions]=\"itemComponent.actions\"\n (action)=\"emitContentChildAction($event)\"\n >\n <ng-template *ngIf=\"itemComponent.customTemplateRef\" #customTemplate>\n <ng-container *ngTemplateOutlet=\"itemComponent.customTemplateRef\"></ng-container>\n </ng-template>\n </lx-drag-and-drop-list-item>\n </li>\n</ul>\n", styles: ["@keyframes subtleScaleUpKeyFrames{0%{transform:scale(.95);opacity:0}}:host{display:block}.list{list-style-type:none;width:100%;display:block;padding:0;color:#526179}.item.cdk-drag-disabled{background:#eaedf1;cursor:default}.item{position:relative;cursor:move;border:solid 1px #99a5bb;margin-bottom:4px;border-radius:3px}.item:focus{outline:1px auto #1666ee}.cdk-drag-preview{box-sizing:border-box;border-radius:3px;list-style:none;border:solid 1px #99a5bb!important;box-shadow:0 3px 4px #7474744d}.cdk-drag-placeholder{opacity:.5}.cdk-drag-placeholder i{opacity:0}.cdk-drag-animating{transition:transform .18s;transition-delay:0s;transition-timing-function:ease}.list.cdk-drop-list-dragging .item:not(.cdk-drag-placeholder){transition:transform .18s;transition-delay:0s;transition-timing-function:ease}:host[color=dark] lx-drag-and-drop-list-item{background-color:#f0f2f5;color:#526179;border-radius:3px}:host[color=dark] .list,:host[color=dark] .item{border:0}:host[color=dark] .item.cdk-drag-disabled lx-drag-and-drop-list-item{background:#fff;color:#99a5bb;border:1px solid #99a5bb}:host[fontSize=big] .item{text-transform:uppercase;font-weight:700}.cdk-drag-preview.dark{border:0!important}.cdk-drag-preview.dark lx-drag-and-drop-list-item{background-color:#f0f2f5;color:#526179;border-radius:3px}.cdk-drag-preview.big{text-transform:uppercase;font-weight:700}.isBeingSortedByKeyboard{box-shadow:0 6px 24px #b2bccc;z-index:1}\n"], components: [{ type: i1.DragAndDropListItemComponent, selector: "lx-drag-and-drop-list-item", inputs: ["item", "draggable", "actions"], outputs: ["action"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i3.CdkDropList, selector: "[cdkDropList], cdk-drop-list", inputs: ["cdkDropListConnectedTo", "cdkDropListData", "cdkDropListOrientation", "id", "cdkDropListLockAxis", "cdkDropListDisabled", "cdkDropListSortingDisabled", "cdkDropListEnterPredicate", "cdkDropListSortPredicate", "cdkDropListAutoScrollDisabled", "cdkDropListAutoScrollStep"], outputs: ["cdkDropListDropped", "cdkDropListEntered", "cdkDropListExited", "cdkDropListSorted"], exportAs: ["cdkDropList"] }, { type: i4.KeyboardSortableListDirective, selector: "[lxKeyboardSortableList]", inputs: ["keyboardSortableItems"] }, { type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i3.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { type: i5.KeyboardSortableItemDirective, selector: "[lxKeyboardSortableItem]", inputs: ["lxKeyboardSortableItem", "lxKeyboardItemData", "isSortingByKeyboard", "lxKeyboardItemBeingSorted"], outputs: ["isSortingByKeyboardChange", "lxKeyboardItemBeingSortedChange", "sortItemsWithKeyboard", "focusWithKeyboard"] }, { type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], pipes: { "translate": i6.TranslatePipe, "async": i2.AsyncPipe } });
74
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DragAndDropListComponent, decorators: [{
72
+ DragAndDropListComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: DragAndDropListComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
73
+ DragAndDropListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.3", type: DragAndDropListComponent, selector: "lx-drag-and-drop-list", inputs: { label: "label", labelFontWeight: "labelFontWeight", color: "color", fontSize: "fontSize" }, outputs: { moveToIndex: "moveToIndex", moveItem: "moveItem" }, host: { properties: { "attr.color": "this.color", "attr.fontSize": "this.fontSize" } }, queries: [{ propertyName: "_items", predicate: DragAndDropListItemComponent }], viewQueries: [{ propertyName: "_keyboardSortableItems", predicate: KeyboardSortableItemDirective, descendants: true }], ngImport: i0, template: "<label *ngIf=\"label\" [style.font-weight]=\"labelFontWeight\">{{ label }}</label>\n<p class=\"sr-only\">{{ NAME + '.helpTooltip' | translate }}</p>\n<ul\n cdkDropList\n class=\"list\"\n role=\"listbox\"\n lxKeyboardSortableList\n [keyboardSortableItems]=\"keyboardSortableItems$ | async\"\n [cdkDropListData]=\"items$ | async\"\n (cdkDropListDropped)=\"drop($event)\"\n>\n <li\n *ngFor=\"let itemComponent of items$ | async; trackBy: trackByItem\"\n #listItemParent\n class=\"item\"\n cdkDrag\n cdkDragLockAxis=\"y\"\n [cdkDragData]=\"itemComponent.item\"\n [cdkDragDisabled]=\"!itemComponent.draggable\"\n [class.dark]=\"color === 'dark'\"\n [class.big]=\"fontSize === 'big'\"\n [tabIndex]=\"itemComponent.draggable === false ? -1 : 0\"\n [lxKeyboardSortableItem]=\"allItemsData$ | async\"\n [lxKeyboardItemData]=\"itemComponent.item\"\n [(isSortingByKeyboard)]=\"isSortingByKeyboard\"\n [(lxKeyboardItemBeingSorted)]=\"keyboardItemBeingSorted\"\n (sortItemsWithKeyboard)=\"dropToIndexAfterArrowKey(itemComponent.item, $event.previousIndex, $event.currentIndex)\"\n >\n <lx-drag-and-drop-list-item\n class=\"dragAndDropItem\"\n [item]=\"itemComponent.item\"\n [draggable]=\"itemComponent.draggable\"\n [actions]=\"itemComponent.actions\"\n (action)=\"emitContentChildAction($event)\"\n >\n <ng-template *ngIf=\"itemComponent.customTemplateRef\" #customTemplate>\n <ng-container *ngTemplateOutlet=\"itemComponent.customTemplateRef\"></ng-container>\n </ng-template>\n </lx-drag-and-drop-list-item>\n </li>\n</ul>\n", styles: ["@keyframes subtleScaleUpKeyFrames{0%{transform:scale(.95);opacity:0}}:host{display:block}.list{list-style-type:none;width:100%;display:block;padding:0;color:#526179}.item.cdk-drag-disabled{background:#eaedf1;cursor:default}.item{position:relative;cursor:move;border:solid 1px #99a5bb;margin-bottom:4px;border-radius:3px}.item:focus{outline:1px auto #1666ee}.cdk-drag-preview{box-sizing:border-box;border-radius:3px;list-style:none;border:solid 1px #99a5bb!important;box-shadow:0 3px 4px #7474744d}.cdk-drag-placeholder{opacity:.5}.cdk-drag-placeholder i{opacity:0}.cdk-drag-animating{transition:transform .18s;transition-delay:0s;transition-timing-function:ease}.list.cdk-drop-list-dragging .item:not(.cdk-drag-placeholder){transition:transform .18s;transition-delay:0s;transition-timing-function:ease}:host[color=dark] lx-drag-and-drop-list-item{background-color:#f0f2f5;color:#526179;border-radius:3px}:host[color=dark] .list,:host[color=dark] .item{border:0}:host[color=dark] .item.cdk-drag-disabled lx-drag-and-drop-list-item{background:#fff;color:#99a5bb;border:1px solid #99a5bb}:host[fontSize=big] .item{text-transform:uppercase;font-weight:700}.cdk-drag-preview.dark{border:0!important}.cdk-drag-preview.dark lx-drag-and-drop-list-item{background-color:#f0f2f5;color:#526179;border-radius:3px}.cdk-drag-preview.big{text-transform:uppercase;font-weight:700}.isBeingSortedByKeyboard{box-shadow:0 6px 24px #b2bccc;z-index:1}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.CdkDropList, selector: "[cdkDropList], cdk-drop-list", inputs: ["cdkDropListConnectedTo", "cdkDropListData", "cdkDropListOrientation", "id", "cdkDropListLockAxis", "cdkDropListDisabled", "cdkDropListSortingDisabled", "cdkDropListEnterPredicate", "cdkDropListSortPredicate", "cdkDropListAutoScrollDisabled", "cdkDropListAutoScrollStep"], outputs: ["cdkDropListDropped", "cdkDropListEntered", "cdkDropListExited", "cdkDropListSorted"], exportAs: ["cdkDropList"] }, { kind: "directive", type: i2.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "directive", type: i3.KeyboardSortableItemDirective, selector: "[lxKeyboardSortableItem]", inputs: ["lxKeyboardSortableItem", "lxKeyboardItemData", "isSortingByKeyboard", "lxKeyboardItemBeingSorted"], outputs: ["isSortingByKeyboardChange", "lxKeyboardItemBeingSortedChange", "sortItemsWithKeyboard", "focusWithKeyboard"] }, { kind: "directive", type: i4.KeyboardSortableListDirective, selector: "[lxKeyboardSortableList]", inputs: ["keyboardSortableItems"] }, { kind: "component", type: i5.DragAndDropListItemComponent, selector: "lx-drag-and-drop-list-item", inputs: ["item", "draggable", "actions"], outputs: ["action"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i6.TranslatePipe, name: "translate" }] });
74
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: DragAndDropListComponent, decorators: [{
75
75
  type: Component,
76
76
  args: [{ selector: 'lx-drag-and-drop-list', template: "<label *ngIf=\"label\" [style.font-weight]=\"labelFontWeight\">{{ label }}</label>\n<p class=\"sr-only\">{{ NAME + '.helpTooltip' | translate }}</p>\n<ul\n cdkDropList\n class=\"list\"\n role=\"listbox\"\n lxKeyboardSortableList\n [keyboardSortableItems]=\"keyboardSortableItems$ | async\"\n [cdkDropListData]=\"items$ | async\"\n (cdkDropListDropped)=\"drop($event)\"\n>\n <li\n *ngFor=\"let itemComponent of items$ | async; trackBy: trackByItem\"\n #listItemParent\n class=\"item\"\n cdkDrag\n cdkDragLockAxis=\"y\"\n [cdkDragData]=\"itemComponent.item\"\n [cdkDragDisabled]=\"!itemComponent.draggable\"\n [class.dark]=\"color === 'dark'\"\n [class.big]=\"fontSize === 'big'\"\n [tabIndex]=\"itemComponent.draggable === false ? -1 : 0\"\n [lxKeyboardSortableItem]=\"allItemsData$ | async\"\n [lxKeyboardItemData]=\"itemComponent.item\"\n [(isSortingByKeyboard)]=\"isSortingByKeyboard\"\n [(lxKeyboardItemBeingSorted)]=\"keyboardItemBeingSorted\"\n (sortItemsWithKeyboard)=\"dropToIndexAfterArrowKey(itemComponent.item, $event.previousIndex, $event.currentIndex)\"\n >\n <lx-drag-and-drop-list-item\n class=\"dragAndDropItem\"\n [item]=\"itemComponent.item\"\n [draggable]=\"itemComponent.draggable\"\n [actions]=\"itemComponent.actions\"\n (action)=\"emitContentChildAction($event)\"\n >\n <ng-template *ngIf=\"itemComponent.customTemplateRef\" #customTemplate>\n <ng-container *ngTemplateOutlet=\"itemComponent.customTemplateRef\"></ng-container>\n </ng-template>\n </lx-drag-and-drop-list-item>\n </li>\n</ul>\n", styles: ["@keyframes subtleScaleUpKeyFrames{0%{transform:scale(.95);opacity:0}}:host{display:block}.list{list-style-type:none;width:100%;display:block;padding:0;color:#526179}.item.cdk-drag-disabled{background:#eaedf1;cursor:default}.item{position:relative;cursor:move;border:solid 1px #99a5bb;margin-bottom:4px;border-radius:3px}.item:focus{outline:1px auto #1666ee}.cdk-drag-preview{box-sizing:border-box;border-radius:3px;list-style:none;border:solid 1px #99a5bb!important;box-shadow:0 3px 4px #7474744d}.cdk-drag-placeholder{opacity:.5}.cdk-drag-placeholder i{opacity:0}.cdk-drag-animating{transition:transform .18s;transition-delay:0s;transition-timing-function:ease}.list.cdk-drop-list-dragging .item:not(.cdk-drag-placeholder){transition:transform .18s;transition-delay:0s;transition-timing-function:ease}:host[color=dark] lx-drag-and-drop-list-item{background-color:#f0f2f5;color:#526179;border-radius:3px}:host[color=dark] .list,:host[color=dark] .item{border:0}:host[color=dark] .item.cdk-drag-disabled lx-drag-and-drop-list-item{background:#fff;color:#99a5bb;border:1px solid #99a5bb}:host[fontSize=big] .item{text-transform:uppercase;font-weight:700}.cdk-drag-preview.dark{border:0!important}.cdk-drag-preview.dark lx-drag-and-drop-list-item{background-color:#f0f2f5;color:#526179;border-radius:3px}.cdk-drag-preview.big{text-transform:uppercase;font-weight:700}.isBeingSortedByKeyboard{box-shadow:0 6px 24px #b2bccc;z-index:1}\n"] }]
77
77
  }], propDecorators: { label: [{
@@ -11,10 +11,10 @@ import * as i0 from "@angular/core";
11
11
  import * as i1 from "@ngx-translate/core";
12
12
  export class LxDragAndDropListModule {
13
13
  }
14
- LxDragAndDropListModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: LxDragAndDropListModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
15
- LxDragAndDropListModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: LxDragAndDropListModule, declarations: [KeyboardSortableItemDirective, KeyboardSortableListDirective, DragAndDropListComponent, DragAndDropListItemComponent], imports: [CommonModule, DragDropModule, LxCoreUiModule, i1.TranslateModule], exports: [DragAndDropListComponent, DragAndDropListItemComponent] });
16
- LxDragAndDropListModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: LxDragAndDropListModule, imports: [[CommonModule, DragDropModule, LxCoreUiModule, TranslateModule.forChild()]] });
17
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: LxDragAndDropListModule, decorators: [{
14
+ LxDragAndDropListModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: LxDragAndDropListModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
15
+ LxDragAndDropListModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.1.3", ngImport: i0, type: LxDragAndDropListModule, declarations: [KeyboardSortableItemDirective, KeyboardSortableListDirective, DragAndDropListComponent, DragAndDropListItemComponent], imports: [CommonModule, DragDropModule, LxCoreUiModule, i1.TranslateModule], exports: [DragAndDropListComponent, DragAndDropListItemComponent] });
16
+ LxDragAndDropListModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: LxDragAndDropListModule, imports: [CommonModule, DragDropModule, LxCoreUiModule, TranslateModule.forChild()] });
17
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: LxDragAndDropListModule, decorators: [{
18
18
  type: NgModule,
19
19
  args: [{
20
20
  declarations: [KeyboardSortableItemDirective, KeyboardSortableListDirective, DragAndDropListComponent, DragAndDropListItemComponent],
@@ -22,4 +22,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImpor
22
22
  exports: [DragAndDropListComponent, DragAndDropListItemComponent]
23
23
  }]
24
24
  }] });
25
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJhZy1hbmQtZHJvcC1saXN0Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9zcmMvbGliL2Zvcm1zLXVpL2NvbXBvbmVudHMvZHJhZy1hbmQtZHJvcC1saXN0L2RyYWctYW5kLWRyb3AtbGlzdC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3hELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN0RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDakUsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sNkRBQTZELENBQUM7QUFDM0csT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDMUUsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sMkRBQTJELENBQUM7QUFDMUcsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sMkRBQTJELENBQUM7OztBQU8xRyxNQUFNLE9BQU8sdUJBQXVCOztvSEFBdkIsdUJBQXVCO3FIQUF2Qix1QkFBdUIsaUJBSm5CLDZCQUE2QixFQUFFLDZCQUE2QixFQUFFLHdCQUF3QixFQUFFLDRCQUE0QixhQUN6SCxZQUFZLEVBQUUsY0FBYyxFQUFFLGNBQWMsaUNBQzVDLHdCQUF3QixFQUFFLDRCQUE0QjtxSEFFckQsdUJBQXVCLFlBSHpCLENBQUMsWUFBWSxFQUFFLGNBQWMsRUFBRSxjQUFjLEVBQUUsZUFBZSxDQUFDLFFBQVEsRUFBRSxDQUFDOzJGQUd4RSx1QkFBdUI7a0JBTG5DLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFLENBQUMsNkJBQTZCLEVBQUUsNkJBQTZCLEVBQUUsd0JBQXdCLEVBQUUsNEJBQTRCLENBQUM7b0JBQ3BJLE9BQU8sRUFBRSxDQUFDLFlBQVksRUFBRSxjQUFjLEVBQUUsY0FBYyxFQUFFLGVBQWUsQ0FBQyxRQUFRLEVBQUUsQ0FBQztvQkFDbkYsT0FBTyxFQUFFLENBQUMsd0JBQXdCLEVBQUUsNEJBQTRCLENBQUM7aUJBQ2xFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRHJhZ0Ryb3BNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jZGsvZHJhZy1kcm9wJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVHJhbnNsYXRlTW9kdWxlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XG5pbXBvcnQgeyBMeENvcmVVaU1vZHVsZSB9IGZyb20gJy4uLy4uLy4uL2NvcmUtdWkvY29yZS11aS5tb2R1bGUnO1xuaW1wb3J0IHsgRHJhZ0FuZERyb3BMaXN0SXRlbUNvbXBvbmVudCB9IGZyb20gJy4vZHJhZy1hbmQtZHJvcC1saXN0LWl0ZW0vZHJhZy1hbmQtZHJvcC1saXN0LWl0ZW0uY29tcG9uZW50JztcbmltcG9ydCB7IERyYWdBbmREcm9wTGlzdENvbXBvbmVudCB9IGZyb20gJy4vZHJhZy1hbmQtZHJvcC1saXN0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBLZXlib2FyZFNvcnRhYmxlSXRlbURpcmVjdGl2ZSB9IGZyb20gJy4va2V5Ym9hcmQtc29ydGFibGUtaXRlbS9rZXlib2FyZC1zb3J0YWJsZS1pdGVtLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBLZXlib2FyZFNvcnRhYmxlTGlzdERpcmVjdGl2ZSB9IGZyb20gJy4va2V5Ym9hcmQtc29ydGFibGUtbGlzdC9rZXlib2FyZC1zb3J0YWJsZS1saXN0LmRpcmVjdGl2ZSc7XG5cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW0tleWJvYXJkU29ydGFibGVJdGVtRGlyZWN0aXZlLCBLZXlib2FyZFNvcnRhYmxlTGlzdERpcmVjdGl2ZSwgRHJhZ0FuZERyb3BMaXN0Q29tcG9uZW50LCBEcmFnQW5kRHJvcExpc3RJdGVtQ29tcG9uZW50XSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgRHJhZ0Ryb3BNb2R1bGUsIEx4Q29yZVVpTW9kdWxlLCBUcmFuc2xhdGVNb2R1bGUuZm9yQ2hpbGQoKV0sXG4gIGV4cG9ydHM6IFtEcmFnQW5kRHJvcExpc3RDb21wb25lbnQsIERyYWdBbmREcm9wTGlzdEl0ZW1Db21wb25lbnRdXG59KVxuZXhwb3J0IGNsYXNzIEx4RHJhZ0FuZERyb3BMaXN0TW9kdWxlIHt9XG4iXX0=
25
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJhZy1hbmQtZHJvcC1saXN0Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9zcmMvbGliL2Zvcm1zLXVpL2NvbXBvbmVudHMvZHJhZy1hbmQtZHJvcC1saXN0L2RyYWctYW5kLWRyb3AtbGlzdC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3hELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN0RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDakUsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sNkRBQTZELENBQUM7QUFDM0csT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDMUUsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sMkRBQTJELENBQUM7QUFDMUcsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sMkRBQTJELENBQUM7OztBQU8xRyxNQUFNLE9BQU8sdUJBQXVCOztvSEFBdkIsdUJBQXVCO3FIQUF2Qix1QkFBdUIsaUJBSm5CLDZCQUE2QixFQUFFLDZCQUE2QixFQUFFLHdCQUF3QixFQUFFLDRCQUE0QixhQUN6SCxZQUFZLEVBQUUsY0FBYyxFQUFFLGNBQWMsaUNBQzVDLHdCQUF3QixFQUFFLDRCQUE0QjtxSEFFckQsdUJBQXVCLFlBSHhCLFlBQVksRUFBRSxjQUFjLEVBQUUsY0FBYyxFQUFFLGVBQWUsQ0FBQyxRQUFRLEVBQUU7MkZBR3ZFLHVCQUF1QjtrQkFMbkMsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUUsQ0FBQyw2QkFBNkIsRUFBRSw2QkFBNkIsRUFBRSx3QkFBd0IsRUFBRSw0QkFBNEIsQ0FBQztvQkFDcEksT0FBTyxFQUFFLENBQUMsWUFBWSxFQUFFLGNBQWMsRUFBRSxjQUFjLEVBQUUsZUFBZSxDQUFDLFFBQVEsRUFBRSxDQUFDO29CQUNuRixPQUFPLEVBQUUsQ0FBQyx3QkFBd0IsRUFBRSw0QkFBNEIsQ0FBQztpQkFDbEUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEcmFnRHJvcE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9kcmFnLWRyb3AnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBUcmFuc2xhdGVNb2R1bGUgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcbmltcG9ydCB7IEx4Q29yZVVpTW9kdWxlIH0gZnJvbSAnLi4vLi4vLi4vY29yZS11aS9jb3JlLXVpLm1vZHVsZSc7XG5pbXBvcnQgeyBEcmFnQW5kRHJvcExpc3RJdGVtQ29tcG9uZW50IH0gZnJvbSAnLi9kcmFnLWFuZC1kcm9wLWxpc3QtaXRlbS9kcmFnLWFuZC1kcm9wLWxpc3QtaXRlbS5jb21wb25lbnQnO1xuaW1wb3J0IHsgRHJhZ0FuZERyb3BMaXN0Q29tcG9uZW50IH0gZnJvbSAnLi9kcmFnLWFuZC1kcm9wLWxpc3QuY29tcG9uZW50JztcbmltcG9ydCB7IEtleWJvYXJkU29ydGFibGVJdGVtRGlyZWN0aXZlIH0gZnJvbSAnLi9rZXlib2FyZC1zb3J0YWJsZS1pdGVtL2tleWJvYXJkLXNvcnRhYmxlLWl0ZW0uZGlyZWN0aXZlJztcbmltcG9ydCB7IEtleWJvYXJkU29ydGFibGVMaXN0RGlyZWN0aXZlIH0gZnJvbSAnLi9rZXlib2FyZC1zb3J0YWJsZS1saXN0L2tleWJvYXJkLXNvcnRhYmxlLWxpc3QuZGlyZWN0aXZlJztcblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbS2V5Ym9hcmRTb3J0YWJsZUl0ZW1EaXJlY3RpdmUsIEtleWJvYXJkU29ydGFibGVMaXN0RGlyZWN0aXZlLCBEcmFnQW5kRHJvcExpc3RDb21wb25lbnQsIERyYWdBbmREcm9wTGlzdEl0ZW1Db21wb25lbnRdLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBEcmFnRHJvcE1vZHVsZSwgTHhDb3JlVWlNb2R1bGUsIFRyYW5zbGF0ZU1vZHVsZS5mb3JDaGlsZCgpXSxcbiAgZXhwb3J0czogW0RyYWdBbmREcm9wTGlzdENvbXBvbmVudCwgRHJhZ0FuZERyb3BMaXN0SXRlbUNvbXBvbmVudF1cbn0pXG5leHBvcnQgY2xhc3MgTHhEcmFnQW5kRHJvcExpc3RNb2R1bGUge31cbiJdfQ==
@@ -60,10 +60,11 @@ export class KeyboardSortableItemDirective {
60
60
  if ($event.target === this.element.nativeElement) {
61
61
  this.tooltipDirective.hide();
62
62
  if (this.isSortingByKeyboard) {
63
+ const allItemsData = this.allItemsData ?? [];
63
64
  $event.preventDefault();
64
- const previousIndex = this.allItemsData.findIndex((item) => item === this.itemData);
65
+ const previousIndex = allItemsData.findIndex((item) => item === this.itemData);
65
66
  const currentIndex = $event.code === 'ArrowUp' ? previousIndex - 1 : previousIndex + 1;
66
- if (currentIndex >= 0 && currentIndex <= this.allItemsData.length - 1) {
67
+ if (currentIndex >= 0 && currentIndex <= allItemsData.length - 1) {
67
68
  this.sortItemsWithKeyboard.emit({ previousIndex, currentIndex });
68
69
  // When triggering a keyboard event, the DOM would "removeChildren" on the HTML element
69
70
  // which specially for "ArrowUp" events would trigger a "blur" event since the element
@@ -75,9 +76,9 @@ export class KeyboardSortableItemDirective {
75
76
  }
76
77
  }
77
78
  }
78
- KeyboardSortableItemDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: KeyboardSortableItemDirective, deps: [{ token: i1.CdkDrag }, { token: i2.OverlayPositionBuilder }, { token: i0.ElementRef }, { token: i2.Overlay }], target: i0.ɵɵFactoryTarget.Directive });
79
- KeyboardSortableItemDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.2", type: KeyboardSortableItemDirective, selector: "[lxKeyboardSortableItem]", inputs: { allItemsData: ["lxKeyboardSortableItem", "allItemsData"], itemData: ["lxKeyboardItemData", "itemData"], isSortingByKeyboard: "isSortingByKeyboard", itemBeingSorted: ["lxKeyboardItemBeingSorted", "itemBeingSorted"] }, outputs: { isSortingByKeyboardChange: "isSortingByKeyboardChange", itemBeingSortedChange: "lxKeyboardItemBeingSortedChange", sortItemsWithKeyboard: "sortItemsWithKeyboard", focusWithKeyboard: "focusWithKeyboard" }, host: { listeners: { "keyup.tab": "focusViaKeyboard()", "keydown.enter": "enterSortingModeEnabledByKeyboard($event)", "keydown.space": "enterSortingModeEnabledByKeyboard($event)", "blur": "leaveSortingModeEnabledByKeyboard($event)", "keydown.esc": "leaveSortingModeEnabledByKeyboard($event)", "keydown.arrowUp": "sort($event)", "keydown.arrowDown": "sort($event)" }, properties: { "attr.lxTooltip": "this.tooltipDirective", "class.isBeingSortedByKeyboard": "this.isBeingSorted" } }, usesOnChanges: true, ngImport: i0 });
80
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: KeyboardSortableItemDirective, decorators: [{
79
+ KeyboardSortableItemDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: KeyboardSortableItemDirective, deps: [{ token: i1.CdkDrag }, { token: i2.OverlayPositionBuilder }, { token: i0.ElementRef }, { token: i2.Overlay }], target: i0.ɵɵFactoryTarget.Directive });
80
+ KeyboardSortableItemDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.1.3", type: KeyboardSortableItemDirective, selector: "[lxKeyboardSortableItem]", inputs: { allItemsData: ["lxKeyboardSortableItem", "allItemsData"], itemData: ["lxKeyboardItemData", "itemData"], isSortingByKeyboard: "isSortingByKeyboard", itemBeingSorted: ["lxKeyboardItemBeingSorted", "itemBeingSorted"] }, outputs: { isSortingByKeyboardChange: "isSortingByKeyboardChange", itemBeingSortedChange: "lxKeyboardItemBeingSortedChange", sortItemsWithKeyboard: "sortItemsWithKeyboard", focusWithKeyboard: "focusWithKeyboard" }, host: { listeners: { "keyup.tab": "focusViaKeyboard()", "keydown.enter": "enterSortingModeEnabledByKeyboard($event)", "keydown.space": "enterSortingModeEnabledByKeyboard($event)", "blur": "leaveSortingModeEnabledByKeyboard($event)", "keydown.esc": "leaveSortingModeEnabledByKeyboard($event)", "keydown.arrowUp": "sort($event)", "keydown.arrowDown": "sort($event)" }, properties: { "attr.lxTooltip": "this.tooltipDirective", "class.isBeingSortedByKeyboard": "this.isBeingSorted" } }, usesOnChanges: true, ngImport: i0 });
81
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: KeyboardSortableItemDirective, decorators: [{
81
82
  type: Directive,
82
83
  args: [{
83
84
  selector: '[lxKeyboardSortableItem]'
@@ -130,4 +131,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImpor
130
131
  type: HostListener,
131
132
  args: ['keydown.arrowDown', ['$event']]
132
133
  }] } });
133
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Ym9hcmQtc29ydGFibGUtaXRlbS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvc3JjL2xpYi9mb3Jtcy11aS9jb21wb25lbnRzL2RyYWctYW5kLWRyb3AtbGlzdC9rZXlib2FyZC1zb3J0YWJsZS1pdGVtL2tleWJvYXJkLXNvcnRhYmxlLWl0ZW0uZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUlBLE9BQU8sRUFBRSxTQUFTLEVBQWMsWUFBWSxFQUFFLFdBQVcsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFhLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6SCxPQUFPLEVBQWMsYUFBYSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2pELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLCtDQUErQyxDQUFDOzs7O0FBS2pGLE1BQU0sT0FBTyw2QkFBNkI7SUFxQnhDLFlBQ1UsYUFBc0IsRUFDdEIsc0JBQThDLEVBQzlDLE9BQWdDLEVBQ2hDLE9BQWdCO1FBSGhCLGtCQUFhLEdBQWIsYUFBYSxDQUFTO1FBQ3RCLDJCQUFzQixHQUF0QixzQkFBc0IsQ0FBd0I7UUFDOUMsWUFBTyxHQUFQLE9BQU8sQ0FBeUI7UUFDaEMsWUFBTyxHQUFQLE9BQU8sQ0FBUztRQW5CUCw4QkFBeUIsR0FBRyxJQUFJLFlBQVksRUFBVyxDQUFDO1FBQ3ZCLDBCQUFxQixHQUFHLElBQUksWUFBWSxFQUFVLENBQUM7UUFDN0YsMEJBQXFCLEdBQUcsSUFBSSxZQUFZLEVBQW1ELENBQUM7UUFHdkUscUJBQWdCLEdBQUcsSUFBSSxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsc0JBQXNCLEVBQUUsSUFBSSxDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDbEYsa0JBQWEsR0FBWSxLQUFLLENBQUM7UUFNckUsZ0JBQVcsR0FBRyxLQUFLLENBQUM7UUFDcEIsb0NBQStCLEdBQUcsSUFBSSxhQUFhLENBQWdDLENBQUMsQ0FBQyxDQUFDO1FBUTVGOzs7O1dBSUc7UUFDSCxJQUFJLENBQUMsaUJBQWlCLEdBQUcsSUFBSSxDQUFDLCtCQUErQixDQUFDLFlBQVksRUFBRSxDQUFDO0lBQy9FLENBQUM7SUFuQkQsSUFBSSxVQUFVO1FBQ1osT0FBTyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDO0lBQ3RDLENBQUM7SUFtQkQsV0FBVztRQUNULElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDLFFBQVEsS0FBSyxJQUFJLENBQUMsZUFBZSxDQUFDO1FBQzVELElBQUksSUFBSSxDQUFDLGFBQWEsRUFBRTtZQUN0QixtQ0FBbUM7WUFDbkMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsS0FBSyxFQUFFLENBQUM7U0FDcEM7SUFDSCxDQUFDO0lBR0QsZ0JBQWdCO1FBQ2QsSUFBSSxDQUFDLCtCQUErQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNsRCxDQUFDO0lBSUQsaUNBQWlDLENBQUMsTUFBcUI7UUFDckQsSUFBSSxNQUFNLENBQUMsTUFBTSxLQUFLLElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYSxFQUFFO1lBQ2hELElBQUksTUFBTSxDQUFDLElBQUksS0FBSyxPQUFPLElBQUksTUFBTSxDQUFDLElBQUksS0FBSyxPQUFPLEVBQUU7Z0JBQ3RELE1BQU0sQ0FBQyxjQUFjLEVBQUUsQ0FBQztnQkFDeEIsSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksRUFBRSxDQUFDO2dCQUU3QixJQUFJLENBQUMscUJBQXFCLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQztnQkFDdkYsSUFBSSxDQUFDLHlCQUF5QixDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO2FBQ2hFO1NBQ0Y7SUFDSCxDQUFDO0lBSUQsaUNBQWlDLENBQUMsTUFBa0M7UUFDbEUsSUFBSSxNQUFNLENBQUMsTUFBTSxLQUFLLElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYSxFQUFFO1lBQ2hELElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUM3QixJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRTtnQkFDckIsSUFBSSxDQUFDLHlCQUF5QixDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztnQkFDM0MsSUFBSSxDQUFDLHFCQUFxQixDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQzthQUM1QztTQUNGO0lBQ0gsQ0FBQztJQUlELElBQUksQ0FBQyxNQUFxQjtRQUN4QixJQUFJLE1BQU0sQ0FBQyxNQUFNLEtBQUssSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLEVBQUU7WUFDaEQsSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksRUFBRSxDQUFDO1lBQzdCLElBQUksSUFBSSxDQUFDLG1CQUFtQixFQUFFO2dCQUM1QixNQUFNLENBQUMsY0FBYyxFQUFFLENBQUM7Z0JBRXhCLE1BQU0sYUFBYSxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsU0FBUyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxJQUFJLEtBQUssSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO2dCQUNwRixNQUFNLFlBQVksR0FBRyxNQUFNLENBQUMsSUFBSSxLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUMsYUFBYSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsYUFBYSxHQUFHLENBQUMsQ0FBQztnQkFFdkYsSUFBSSxZQUFZLElBQUksQ0FBQyxJQUFJLFlBQVksSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7b0JBQ3JFLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxJQUFJLENBQUMsRUFBRSxhQUFhLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQztvQkFFakUsdUZBQXVGO29CQUN2RixzRkFBc0Y7b0JBQ3RGLGdFQUFnRTtvQkFDaEUsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUM7b0JBRXhCLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxXQUFXLEdBQUcsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7aUJBQ2pEO2FBQ0Y7U0FDRjtJQUNILENBQUM7OzBIQWpHVSw2QkFBNkI7OEdBQTdCLDZCQUE2QjsyRkFBN0IsNkJBQTZCO2tCQUh6QyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSwwQkFBMEI7aUJBQ3JDO2tMQUVrQyxZQUFZO3NCQUE1QyxLQUFLO3VCQUFDLHdCQUF3QjtnQkFDRixRQUFRO3NCQUFwQyxLQUFLO3VCQUFDLG9CQUFvQjtnQkFDbEIsbUJBQW1CO3NCQUEzQixLQUFLO2dCQUM4QixlQUFlO3NCQUFsRCxLQUFLO3VCQUFDLDJCQUEyQjtnQkFFZix5QkFBeUI7c0JBQTNDLE1BQU07Z0JBQzZDLHFCQUFxQjtzQkFBeEUsTUFBTTt1QkFBQyxpQ0FBaUM7Z0JBQy9CLHFCQUFxQjtzQkFBOUIsTUFBTTtnQkFDRyxpQkFBaUI7c0JBQTFCLE1BQU07Z0JBRXdCLGdCQUFnQjtzQkFBOUMsV0FBVzt1QkFBQyxnQkFBZ0I7Z0JBQ2lCLGFBQWE7c0JBQTFELFdBQVc7dUJBQUMsK0JBQStCO2dCQWdDNUMsZ0JBQWdCO3NCQURmLFlBQVk7dUJBQUMsV0FBVztnQkFPekIsaUNBQWlDO3NCQUZoQyxZQUFZO3VCQUFDLGVBQWUsRUFBRSxDQUFDLFFBQVEsQ0FBQzs7c0JBQ3hDLFlBQVk7dUJBQUMsZUFBZSxFQUFFLENBQUMsUUFBUSxDQUFDO2dCQWV6QyxpQ0FBaUM7c0JBRmhDLFlBQVk7dUJBQUMsTUFBTSxFQUFFLENBQUMsUUFBUSxDQUFDOztzQkFDL0IsWUFBWTt1QkFBQyxhQUFhLEVBQUUsQ0FBQyxRQUFRLENBQUM7Z0JBYXZDLElBQUk7c0JBRkgsWUFBWTt1QkFBQyxpQkFBaUIsRUFBRSxDQUFDLFFBQVEsQ0FBQzs7c0JBQzFDLFlBQVk7dUJBQUMsbUJBQW1CLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBAYW5ndWxhci1lc2xpbnQvbm8tb3V0cHV0LXJlbmFtZSAqL1xuLyogZXNsaW50LWRpc2FibGUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0LXJlbmFtZSAqL1xuaW1wb3J0IHsgQ2RrRHJhZyB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9kcmFnLWRyb3AnO1xuaW1wb3J0IHsgT3ZlcmxheSwgT3ZlcmxheVBvc2l0aW9uQnVpbGRlciB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9vdmVybGF5JztcbmltcG9ydCB7IERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgRXZlbnRFbWl0dGVyLCBIb3N0QmluZGluZywgSG9zdExpc3RlbmVyLCBJbnB1dCwgT25DaGFuZ2VzLCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE9ic2VydmFibGUsIFJlcGxheVN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFRvb2x0aXBEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi8uLi8uLi9jb3JlLXVpL3Rvb2x0aXAvdG9vbHRpcC5kaXJlY3RpdmUnO1xuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbbHhLZXlib2FyZFNvcnRhYmxlSXRlbV0nXG59KVxuZXhwb3J0IGNsYXNzIEtleWJvYXJkU29ydGFibGVJdGVtRGlyZWN0aXZlIGltcGxlbWVudHMgT25DaGFuZ2VzIHtcbiAgQElucHV0KCdseEtleWJvYXJkU29ydGFibGVJdGVtJykgYWxsSXRlbXNEYXRhITogc3RyaW5nW107XG4gIEBJbnB1dCgnbHhLZXlib2FyZEl0ZW1EYXRhJykgaXRlbURhdGEhOiBzdHJpbmc7XG4gIEBJbnB1dCgpIGlzU29ydGluZ0J5S2V5Ym9hcmQhOiBib29sZWFuO1xuICBASW5wdXQoJ2x4S2V5Ym9hcmRJdGVtQmVpbmdTb3J0ZWQnKSBpdGVtQmVpbmdTb3J0ZWQhOiBzdHJpbmc7XG5cbiAgQE91dHB1dCgpIHJlYWRvbmx5IGlzU29ydGluZ0J5S2V5Ym9hcmRDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KCk7XG4gIEBPdXRwdXQoJ2x4S2V5Ym9hcmRJdGVtQmVpbmdTb3J0ZWRDaGFuZ2UnKSByZWFkb25seSBpdGVtQmVpbmdTb3J0ZWRDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKTtcbiAgQE91dHB1dCgpIHNvcnRJdGVtc1dpdGhLZXlib2FyZCA9IG5ldyBFdmVudEVtaXR0ZXI8eyBwcmV2aW91c0luZGV4OiBudW1iZXI7IGN1cnJlbnRJbmRleDogbnVtYmVyIH0+KCk7XG4gIEBPdXRwdXQoKSBmb2N1c1dpdGhLZXlib2FyZCE6IE9ic2VydmFibGU8S2V5Ym9hcmRTb3J0YWJsZUl0ZW1EaXJlY3RpdmU+O1xuXG4gIEBIb3N0QmluZGluZygnYXR0ci5seFRvb2x0aXAnKSB0b29sdGlwRGlyZWN0aXZlID0gbmV3IFRvb2x0aXBEaXJlY3RpdmUodGhpcy5vdmVybGF5UG9zaXRpb25CdWlsZGVyLCB0aGlzLmVsZW1lbnQsIHRoaXMub3ZlcmxheSk7XG4gIEBIb3N0QmluZGluZygnY2xhc3MuaXNCZWluZ1NvcnRlZEJ5S2V5Ym9hcmQnKSBpc0JlaW5nU29ydGVkOiBib29sZWFuID0gZmFsc2U7XG5cbiAgZ2V0IGlzU29ydGFibGUoKSB7XG4gICAgcmV0dXJuICF0aGlzLmRyYWdnYWJsZUl0ZW0uZGlzYWJsZWQ7XG4gIH1cblxuICBwcml2YXRlIHByZXZlbnRCbHVyID0gZmFsc2U7XG4gIHByaXZhdGUgZm9jdXNXaXRoS2V5Ym9hcmRSZXBsYXlTdWJqZWN0JCA9IG5ldyBSZXBsYXlTdWJqZWN0PEtleWJvYXJkU29ydGFibGVJdGVtRGlyZWN0aXZlPigxKTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGRyYWdnYWJsZUl0ZW06IENka0RyYWcsXG4gICAgcHJpdmF0ZSBvdmVybGF5UG9zaXRpb25CdWlsZGVyOiBPdmVybGF5UG9zaXRpb25CdWlsZGVyLFxuICAgIHByaXZhdGUgZWxlbWVudDogRWxlbWVudFJlZjxIVE1MRWxlbWVudD4sXG4gICAgcHJpdmF0ZSBvdmVybGF5OiBPdmVybGF5XG4gICkge1xuICAgIC8qKlxuICAgICAqIFVzaW5nIGEgUmVwbGF5U3ViamVjdCBoZXJlIHNvIHRoYXQgdGhlIEtleWJvYXJkU29ydGFibGVMaXN0RGlyZWN0aXZlIHdpbGwgYWxzbyBrbm93XG4gICAgICogYWJvdXQgYSBmb2N1c1dpdGhLZXlib2FyZCBldmVudCB3aGVuIGl0cyBjb3B5IG9mIHRoZSBLZXlib2FyZFNvcnRhYmxlSXRlbURpcmVjdGl2ZSBDb250ZW50Q2hpbGRyZW5cbiAgICAgKiB3YXMganVzdCBpbml0aWFsaXNlZCBhZnRlciB0aGUgZXZlbnQgZmlyZWQuXG4gICAgICovXG4gICAgdGhpcy5mb2N1c1dpdGhLZXlib2FyZCA9IHRoaXMuZm9jdXNXaXRoS2V5Ym9hcmRSZXBsYXlTdWJqZWN0JC5hc09ic2VydmFibGUoKTtcbiAgfVxuXG4gIG5nT25DaGFuZ2VzKCk6IHZvaWQge1xuICAgIHRoaXMuaXNCZWluZ1NvcnRlZCA9IHRoaXMuaXRlbURhdGEgPT09IHRoaXMuaXRlbUJlaW5nU29ydGVkO1xuICAgIGlmICh0aGlzLmlzQmVpbmdTb3J0ZWQpIHtcbiAgICAgIC8vIGZvY3VzIGFsd2F5cyB0aGUgcHJlc3NlZCBlbGVtZW50XG4gICAgICB0aGlzLmVsZW1lbnQubmF0aXZlRWxlbWVudC5mb2N1cygpO1xuICAgIH1cbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ2tleXVwLnRhYicpXG4gIGZvY3VzVmlhS2V5Ym9hcmQoKTogdm9pZCB7XG4gICAgdGhpcy5mb2N1c1dpdGhLZXlib2FyZFJlcGxheVN1YmplY3QkLm5leHQodGhpcyk7XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdrZXlkb3duLmVudGVyJywgWyckZXZlbnQnXSlcbiAgQEhvc3RMaXN0ZW5lcigna2V5ZG93bi5zcGFjZScsIFsnJGV2ZW50J10pXG4gIGVudGVyU29ydGluZ01vZGVFbmFibGVkQnlLZXlib2FyZCgkZXZlbnQ6IEtleWJvYXJkRXZlbnQpIHtcbiAgICBpZiAoJGV2ZW50LnRhcmdldCA9PT0gdGhpcy5lbGVtZW50Lm5hdGl2ZUVsZW1lbnQpIHtcbiAgICAgIGlmICgkZXZlbnQuY29kZSA9PT0gJ0VudGVyJyB8fCAkZXZlbnQuY29kZSA9PT0gJ1NwYWNlJykge1xuICAgICAgICAkZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgdGhpcy50b29sdGlwRGlyZWN0aXZlLmhpZGUoKTtcblxuICAgICAgICB0aGlzLml0ZW1CZWluZ1NvcnRlZENoYW5nZS5lbWl0KCF0aGlzLmlzU29ydGluZ0J5S2V5Ym9hcmQgPyB0aGlzLml0ZW1EYXRhIDogdW5kZWZpbmVkKTtcbiAgICAgICAgdGhpcy5pc1NvcnRpbmdCeUtleWJvYXJkQ2hhbmdlLmVtaXQoIXRoaXMuaXNTb3J0aW5nQnlLZXlib2FyZCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQEhvc3RMaXN0ZW5lcignYmx1cicsIFsnJGV2ZW50J10pXG4gIEBIb3N0TGlzdGVuZXIoJ2tleWRvd24uZXNjJywgWyckZXZlbnQnXSlcbiAgbGVhdmVTb3J0aW5nTW9kZUVuYWJsZWRCeUtleWJvYXJkKCRldmVudDogS2V5Ym9hcmRFdmVudCB8IEZvY3VzRXZlbnQpOiB2b2lkIHtcbiAgICBpZiAoJGV2ZW50LnRhcmdldCA9PT0gdGhpcy5lbGVtZW50Lm5hdGl2ZUVsZW1lbnQpIHtcbiAgICAgIHRoaXMudG9vbHRpcERpcmVjdGl2ZS5oaWRlKCk7XG4gICAgICBpZiAoIXRoaXMucHJldmVudEJsdXIpIHtcbiAgICAgICAgdGhpcy5pc1NvcnRpbmdCeUtleWJvYXJkQ2hhbmdlLmVtaXQoZmFsc2UpO1xuICAgICAgICB0aGlzLml0ZW1CZWluZ1NvcnRlZENoYW5nZS5lbWl0KHVuZGVmaW5lZCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQEhvc3RMaXN0ZW5lcigna2V5ZG93bi5hcnJvd1VwJywgWyckZXZlbnQnXSlcbiAgQEhvc3RMaXN0ZW5lcigna2V5ZG93bi5hcnJvd0Rvd24nLCBbJyRldmVudCddKVxuICBzb3J0KCRldmVudDogS2V5Ym9hcmRFdmVudCkge1xuICAgIGlmICgkZXZlbnQudGFyZ2V0ID09PSB0aGlzLmVsZW1lbnQubmF0aXZlRWxlbWVudCkge1xuICAgICAgdGhpcy50b29sdGlwRGlyZWN0aXZlLmhpZGUoKTtcbiAgICAgIGlmICh0aGlzLmlzU29ydGluZ0J5S2V5Ym9hcmQpIHtcbiAgICAgICAgJGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG5cbiAgICAgICAgY29uc3QgcHJldmlvdXNJbmRleCA9IHRoaXMuYWxsSXRlbXNEYXRhLmZpbmRJbmRleCgoaXRlbSkgPT4gaXRlbSA9PT0gdGhpcy5pdGVtRGF0YSk7XG4gICAgICAgIGNvbnN0IGN1cnJlbnRJbmRleCA9ICRldmVudC5jb2RlID09PSAnQXJyb3dVcCcgPyBwcmV2aW91c0luZGV4IC0gMSA6IHByZXZpb3VzSW5kZXggKyAxO1xuXG4gICAgICAgIGlmIChjdXJyZW50SW5kZXggPj0gMCAmJiBjdXJyZW50SW5kZXggPD0gdGhpcy5hbGxJdGVtc0RhdGEubGVuZ3RoIC0gMSkge1xuICAgICAgICAgIHRoaXMuc29ydEl0ZW1zV2l0aEtleWJvYXJkLmVtaXQoeyBwcmV2aW91c0luZGV4LCBjdXJyZW50SW5kZXggfSk7XG5cbiAgICAgICAgICAvLyBXaGVuIHRyaWdnZXJpbmcgYSBrZXlib2FyZCBldmVudCwgdGhlIERPTSB3b3VsZCBcInJlbW92ZUNoaWxkcmVuXCIgb24gdGhlIEhUTUwgZWxlbWVudFxuICAgICAgICAgIC8vIHdoaWNoIHNwZWNpYWxseSBmb3IgXCJBcnJvd1VwXCIgZXZlbnRzIHdvdWxkIHRyaWdnZXIgYSBcImJsdXJcIiBldmVudCBzaW5jZSB0aGUgZWxlbWVudFxuICAgICAgICAgIC8vIGhhcyBiZWVuIG1vdmVkIGFib3ZlZCB0aGUgRE9NIHRyZWUgYW5kIGxvc2VzIHRoZSBmb2N1cyBzdGF0ZS5cbiAgICAgICAgICB0aGlzLnByZXZlbnRCbHVyID0gdHJ1ZTtcblxuICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4gKHRoaXMucHJldmVudEJsdXIgPSBmYWxzZSksIDApO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iXX0=
134
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Ym9hcmQtc29ydGFibGUtaXRlbS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvc3JjL2xpYi9mb3Jtcy11aS9jb21wb25lbnRzL2RyYWctYW5kLWRyb3AtbGlzdC9rZXlib2FyZC1zb3J0YWJsZS1pdGVtL2tleWJvYXJkLXNvcnRhYmxlLWl0ZW0uZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUlBLE9BQU8sRUFBRSxTQUFTLEVBQWMsWUFBWSxFQUFFLFdBQVcsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFhLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6SCxPQUFPLEVBQWMsYUFBYSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2pELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLCtDQUErQyxDQUFDOzs7O0FBS2pGLE1BQU0sT0FBTyw2QkFBNkI7SUFxQnhDLFlBQ1UsYUFBc0IsRUFDdEIsc0JBQThDLEVBQzlDLE9BQWdDLEVBQ2hDLE9BQWdCO1FBSGhCLGtCQUFhLEdBQWIsYUFBYSxDQUFTO1FBQ3RCLDJCQUFzQixHQUF0QixzQkFBc0IsQ0FBd0I7UUFDOUMsWUFBTyxHQUFQLE9BQU8sQ0FBeUI7UUFDaEMsWUFBTyxHQUFQLE9BQU8sQ0FBUztRQW5CUCw4QkFBeUIsR0FBRyxJQUFJLFlBQVksRUFBVyxDQUFDO1FBQ3ZCLDBCQUFxQixHQUFHLElBQUksWUFBWSxFQUFzQixDQUFDO1FBQ3pHLDBCQUFxQixHQUFHLElBQUksWUFBWSxFQUFtRCxDQUFDO1FBR3ZFLHFCQUFnQixHQUFHLElBQUksZ0JBQWdCLENBQUMsSUFBSSxDQUFDLHNCQUFzQixFQUFFLElBQUksQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ2xGLGtCQUFhLEdBQVksS0FBSyxDQUFDO1FBTXJFLGdCQUFXLEdBQUcsS0FBSyxDQUFD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RSxDQUFDLFFBQVEsQ0FBQzs7c0JBQzFDLFlBQVk7dUJBQUMsbUJBQW1CLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBAYW5ndWxhci1lc2xpbnQvbm8tb3V0cHV0LXJlbmFtZSAqL1xuLyogZXNsaW50LWRpc2FibGUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0LXJlbmFtZSAqL1xuaW1wb3J0IHsgQ2RrRHJhZyB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9kcmFnLWRyb3AnO1xuaW1wb3J0IHsgT3ZlcmxheSwgT3ZlcmxheVBvc2l0aW9uQnVpbGRlciB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9vdmVybGF5JztcbmltcG9ydCB7IERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgRXZlbnRFbWl0dGVyLCBIb3N0QmluZGluZywgSG9zdExpc3RlbmVyLCBJbnB1dCwgT25DaGFuZ2VzLCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE9ic2VydmFibGUsIFJlcGxheVN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFRvb2x0aXBEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi8uLi8uLi9jb3JlLXVpL3Rvb2x0aXAvdG9vbHRpcC5kaXJlY3RpdmUnO1xuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbbHhLZXlib2FyZFNvcnRhYmxlSXRlbV0nXG59KVxuZXhwb3J0IGNsYXNzIEtleWJvYXJkU29ydGFibGVJdGVtRGlyZWN0aXZlIGltcGxlbWVudHMgT25DaGFuZ2VzIHtcbiAgQElucHV0KCdseEtleWJvYXJkU29ydGFibGVJdGVtJykgYWxsSXRlbXNEYXRhITogc3RyaW5nW10gfCBudWxsO1xuICBASW5wdXQoJ2x4S2V5Ym9hcmRJdGVtRGF0YScpIGl0ZW1EYXRhITogc3RyaW5nO1xuICBASW5wdXQoKSBpc1NvcnRpbmdCeUtleWJvYXJkITogYm9vbGVhbjtcbiAgQElucHV0KCdseEtleWJvYXJkSXRlbUJlaW5nU29ydGVkJykgaXRlbUJlaW5nU29ydGVkPzogc3RyaW5nO1xuXG4gIEBPdXRwdXQoKSByZWFkb25seSBpc1NvcnRpbmdCeUtleWJvYXJkQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpO1xuICBAT3V0cHV0KCdseEtleWJvYXJkSXRlbUJlaW5nU29ydGVkQ2hhbmdlJykgcmVhZG9ubHkgaXRlbUJlaW5nU29ydGVkQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmcgfCB1bmRlZmluZWQ+KCk7XG4gIEBPdXRwdXQoKSBzb3J0SXRlbXNXaXRoS2V5Ym9hcmQgPSBuZXcgRXZlbnRFbWl0dGVyPHsgcHJldmlvdXNJbmRleDogbnVtYmVyOyBjdXJyZW50SW5kZXg6IG51bWJlciB9PigpO1xuICBAT3V0cHV0KCkgZm9jdXNXaXRoS2V5Ym9hcmQhOiBPYnNlcnZhYmxlPEtleWJvYXJkU29ydGFibGVJdGVtRGlyZWN0aXZlPjtcblxuICBASG9zdEJpbmRpbmcoJ2F0dHIubHhUb29sdGlwJykgdG9vbHRpcERpcmVjdGl2ZSA9IG5ldyBUb29sdGlwRGlyZWN0aXZlKHRoaXMub3ZlcmxheVBvc2l0aW9uQnVpbGRlciwgdGhpcy5lbGVtZW50LCB0aGlzLm92ZXJsYXkpO1xuICBASG9zdEJpbmRpbmcoJ2NsYXNzLmlzQmVpbmdTb3J0ZWRCeUtleWJvYXJkJykgaXNCZWluZ1NvcnRlZDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIGdldCBpc1NvcnRhYmxlKCkge1xuICAgIHJldHVybiAhdGhpcy5kcmFnZ2FibGVJdGVtLmRpc2FibGVkO1xuICB9XG5cbiAgcHJpdmF0ZSBwcmV2ZW50Qmx1ciA9IGZhbHNlO1xuICBwcml2YXRlIGZvY3VzV2l0aEtleWJvYXJkUmVwbGF5U3ViamVjdCQgPSBuZXcgUmVwbGF5U3ViamVjdDxLZXlib2FyZFNvcnRhYmxlSXRlbURpcmVjdGl2ZT4oMSk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBkcmFnZ2FibGVJdGVtOiBDZGtEcmFnLFxuICAgIHByaXZhdGUgb3ZlcmxheVBvc2l0aW9uQnVpbGRlcjogT3ZlcmxheVBvc2l0aW9uQnVpbGRlcixcbiAgICBwcml2YXRlIGVsZW1lbnQ6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+LFxuICAgIHByaXZhdGUgb3ZlcmxheTogT3ZlcmxheVxuICApIHtcbiAgICAvKipcbiAgICAgKiBVc2luZyBhIFJlcGxheVN1YmplY3QgaGVyZSBzbyB0aGF0IHRoZSBLZXlib2FyZFNvcnRhYmxlTGlzdERpcmVjdGl2ZSB3aWxsIGFsc28ga25vd1xuICAgICAqIGFib3V0IGEgZm9jdXNXaXRoS2V5Ym9hcmQgZXZlbnQgd2hlbiBpdHMgY29weSBvZiB0aGUgS2V5Ym9hcmRTb3J0YWJsZUl0ZW1EaXJlY3RpdmUgQ29udGVudENoaWxkcmVuXG4gICAgICogd2FzIGp1c3QgaW5pdGlhbGlzZWQgYWZ0ZXIgdGhlIGV2ZW50IGZpcmVkLlxuICAgICAqL1xuICAgIHRoaXMuZm9jdXNXaXRoS2V5Ym9hcmQgPSB0aGlzLmZvY3VzV2l0aEtleWJvYXJkUmVwbGF5U3ViamVjdCQuYXNPYnNlcnZhYmxlKCk7XG4gIH1cblxuICBuZ09uQ2hhbmdlcygpOiB2b2lkIHtcbiAgICB0aGlzLmlzQmVpbmdTb3J0ZWQgPSB0aGlzLml0ZW1EYXRhID09PSB0aGlzLml0ZW1CZWluZ1NvcnRlZDtcbiAgICBpZiAodGhpcy5pc0JlaW5nU29ydGVkKSB7XG4gICAgICAvLyBmb2N1cyBhbHdheXMgdGhlIHByZXNzZWQgZWxlbWVudFxuICAgICAgdGhpcy5lbGVtZW50Lm5hdGl2ZUVsZW1lbnQuZm9jdXMoKTtcbiAgICB9XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdrZXl1cC50YWInKVxuICBmb2N1c1ZpYUtleWJvYXJkKCk6IHZvaWQge1xuICAgIHRoaXMuZm9jdXNXaXRoS2V5Ym9hcmRSZXBsYXlTdWJqZWN0JC5uZXh0KHRoaXMpO1xuICB9XG5cbiAgQEhvc3RMaXN0ZW5lcigna2V5ZG93bi5lbnRlcicsIFsnJGV2ZW50J10pXG4gIEBIb3N0TGlzdGVuZXIoJ2tleWRvd24uc3BhY2UnLCBbJyRldmVudCddKVxuICBlbnRlclNvcnRpbmdNb2RlRW5hYmxlZEJ5S2V5Ym9hcmQoJGV2ZW50OiBLZXlib2FyZEV2ZW50KSB7XG4gICAgaWYgKCRldmVudC50YXJnZXQgPT09IHRoaXMuZWxlbWVudC5uYXRpdmVFbGVtZW50KSB7XG4gICAgICBpZiAoJGV2ZW50LmNvZGUgPT09ICdFbnRlcicgfHwgJGV2ZW50LmNvZGUgPT09ICdTcGFjZScpIHtcbiAgICAgICAgJGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIHRoaXMudG9vbHRpcERpcmVjdGl2ZS5oaWRlKCk7XG5cbiAgICAgICAgdGhpcy5pdGVtQmVpbmdTb3J0ZWRDaGFuZ2UuZW1pdCghdGhpcy5pc1NvcnRpbmdCeUtleWJvYXJkID8gdGhpcy5pdGVtRGF0YSA6IHVuZGVmaW5lZCk7XG4gICAgICAgIHRoaXMuaXNTb3J0aW5nQnlLZXlib2FyZENoYW5nZS5lbWl0KCF0aGlzLmlzU29ydGluZ0J5S2V5Ym9hcmQpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ2JsdXInLCBbJyRldmVudCddKVxuICBASG9zdExpc3RlbmVyKCdrZXlkb3duLmVzYycsIFsnJGV2ZW50J10pXG4gIGxlYXZlU29ydGluZ01vZGVFbmFibGVkQnlLZXlib2FyZCgkZXZlbnQ6IEtleWJvYXJkRXZlbnQgfCBGb2N1c0V2ZW50KTogdm9pZCB7XG4gICAgaWYgKCRldmVudC50YXJnZXQgPT09IHRoaXMuZWxlbWVudC5uYXRpdmVFbGVtZW50KSB7XG4gICAgICB0aGlzLnRvb2x0aXBEaXJlY3RpdmUuaGlkZSgpO1xuICAgICAgaWYgKCF0aGlzLnByZXZlbnRCbHVyKSB7XG4gICAgICAgIHRoaXMuaXNTb3J0aW5nQnlLZXlib2FyZENoYW5nZS5lbWl0KGZhbHNlKTtcbiAgICAgICAgdGhpcy5pdGVtQmVpbmdTb3J0ZWRDaGFuZ2UuZW1pdCh1bmRlZmluZWQpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ2tleWRvd24uYXJyb3dVcCcsIFsnJGV2ZW50J10pXG4gIEBIb3N0TGlzdGVuZXIoJ2tleWRvd24uYXJyb3dEb3duJywgWyckZXZlbnQnXSlcbiAgc29ydCgkZXZlbnQ6IEtleWJvYXJkRXZlbnQpIHtcbiAgICBpZiAoJGV2ZW50LnRhcmdldCA9PT0gdGhpcy5lbGVtZW50Lm5hdGl2ZUVsZW1lbnQpIHtcbiAgICAgIHRoaXMudG9vbHRpcERpcmVjdGl2ZS5oaWRlKCk7XG4gICAgICBpZiAodGhpcy5pc1NvcnRpbmdCeUtleWJvYXJkKSB7XG4gICAgICAgIGNvbnN0IGFsbEl0ZW1zRGF0YSA9IHRoaXMuYWxsSXRlbXNEYXRhID8/IFtdO1xuXG4gICAgICAgICRldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuXG4gICAgICAgIGNvbnN0IHByZXZpb3VzSW5kZXggPSBhbGxJdGVtc0RhdGEuZmluZEluZGV4KChpdGVtKSA9PiBpdGVtID09PSB0aGlzLml0ZW1EYXRhKTtcbiAgICAgICAgY29uc3QgY3VycmVudEluZGV4ID0gJGV2ZW50LmNvZGUgPT09ICdBcnJvd1VwJyA/IHByZXZpb3VzSW5kZXggLSAxIDogcHJldmlvdXNJbmRleCArIDE7XG5cbiAgICAgICAgaWYgKGN1cnJlbnRJbmRleCA+PSAwICYmIGN1cnJlbnRJbmRleCA8PSBhbGxJdGVtc0RhdGEubGVuZ3RoIC0gMSkge1xuICAgICAgICAgIHRoaXMuc29ydEl0ZW1zV2l0aEtleWJvYXJkLmVtaXQoeyBwcmV2aW91c0luZGV4LCBjdXJyZW50SW5kZXggfSk7XG5cbiAgICAgICAgICAvLyBXaGVuIHRyaWdnZXJpbmcgYSBrZXlib2FyZCBldmVudCwgdGhlIERPTSB3b3VsZCBcInJlbW92ZUNoaWxkcmVuXCIgb24gdGhlIEhUTUwgZWxlbWVudFxuICAgICAgICAgIC8vIHdoaWNoIHNwZWNpYWxseSBmb3IgXCJBcnJvd1VwXCIgZXZlbnRzIHdvdWxkIHRyaWdnZXIgYSBcImJsdXJcIiBldmVudCBzaW5jZSB0aGUgZWxlbWVudFxuICAgICAgICAgIC8vIGhhcyBiZWVuIG1vdmVkIGFib3ZlZCB0aGUgRE9NIHRyZWUgYW5kIGxvc2VzIHRoZSBmb2N1cyBzdGF0ZS5cbiAgICAgICAgICB0aGlzLnByZXZlbnRCbHVyID0gdHJ1ZTtcblxuICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4gKHRoaXMucHJldmVudEJsdXIgPSBmYWxzZSksIDApO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iXX0=
@@ -21,12 +21,12 @@ export class KeyboardSortableListDirective {
21
21
  });
22
22
  }
23
23
  }
24
- KeyboardSortableListDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: KeyboardSortableListDirective, deps: [{ token: i1.TranslateService }], target: i0.ɵɵFactoryTarget.Directive });
25
- KeyboardSortableListDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.2", type: KeyboardSortableListDirective, selector: "[lxKeyboardSortableList]", inputs: { keyboardSortableItems: "keyboardSortableItems" }, ngImport: i0 });
24
+ KeyboardSortableListDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: KeyboardSortableListDirective, deps: [{ token: i1.TranslateService }], target: i0.ɵɵFactoryTarget.Directive });
25
+ KeyboardSortableListDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.1.3", type: KeyboardSortableListDirective, selector: "[lxKeyboardSortableList]", inputs: { keyboardSortableItems: "keyboardSortableItems" }, ngImport: i0 });
26
26
  __decorate([
27
27
  Observe('keyboardSortableItems')
28
28
  ], KeyboardSortableListDirective.prototype, "keyboardSortableItems$", void 0);
29
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: KeyboardSortableListDirective, decorators: [{
29
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: KeyboardSortableListDirective, decorators: [{
30
30
  type: Directive,
31
31
  args: [{
32
32
  selector: '[lxKeyboardSortableList]'
@@ -34,4 +34,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImpor
34
34
  }], ctorParameters: function () { return [{ type: i1.TranslateService }]; }, propDecorators: { keyboardSortableItems$: [], keyboardSortableItems: [{
35
35
  type: Input
36
36
  }] } });
37
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Ym9hcmQtc29ydGFibGUtbGlzdC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvc3JjL2xpYi9mb3Jtcy11aS9jb21wb25lbnRzL2RyYWctYW5kLWRyb3AtbGlzdC9rZXlib2FyZC1zb3J0YWJsZS1saXN0L2tleWJvYXJkLXNvcnRhYmxlLWxpc3QuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQWlCLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFaEUsT0FBTyxFQUFFLEtBQUssRUFBYyxNQUFNLE1BQU0sQ0FBQztBQUN6QyxPQUFPLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN6RCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDckQsT0FBTyxFQUFFLG1DQUFtQyxFQUFFLE1BQU0sY0FBYyxDQUFDOzs7QUFNbkUsTUFBTSxPQUFPLDZCQUE2QjtJQUl4QyxZQUFvQixnQkFBa0M7UUFBbEMscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtJQUFHLENBQUM7SUFFMUQsZUFBZTtRQUNiLElBQUksQ0FBQywrQ0FBK0MsRUFBRSxDQUFDO0lBQ3pELENBQUM7SUFFTywrQ0FBK0M7UUFDckQsTUFBTSxnQ0FBZ0MsR0FBRyxJQUFJLENBQUMsc0JBQXNCLENBQUMsSUFBSSxDQUN2RSxNQUFNLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLEtBQUssSUFBSSxLQUFLLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxFQUM1QyxTQUFTLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxHQUFHLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLENBQUMsRUFDN0csSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUNSLENBQUM7UUFFRixnQ0FBZ0MsQ0FBQyxTQUFTLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRTtZQUNsRCxJQUFJLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLENBQUMsR0FBRyxtQ0FBbUMsY0FBYyxDQUFDLENBQUM7WUFDcEgsSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksRUFBRSxDQUFDO1FBQy9CLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs7MEhBckJVLDZCQUE2Qjs4R0FBN0IsNkJBQTZCO0FBQ047SUFBakMsT0FBTyxDQUFDLHVCQUF1QixDQUFDOzZFQUE4RTsyRkFEcEcsNkJBQTZCO2tCQUh6QyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSwwQkFBMEI7aUJBQ3JDO3VHQUUyQyxzQkFBc0IsTUFDdkQscUJBQXFCO3NCQUE3QixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWZ0ZXJWaWV3SW5pdCwgRGlyZWN0aXZlLCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuaW1wb3J0IHsgbWVyZ2UsIE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGZpbHRlciwgc3dpdGNoTWFwLCB0YWtlIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgT2JzZXJ2ZSB9IGZyb20gJy4uLy4uLy4uLy4uL3NoYXJlZC9vYnNlcnZlJztcbmltcG9ydCB7IERSQUdfQU5EX0RST1BfTElTVF9UUkFOU0xBVElPTl9OQU1FIH0gZnJvbSAnLi4vY29uc3RhbnRzJztcbmltcG9ydCB7IEtleWJvYXJkU29ydGFibGVJdGVtRGlyZWN0aXZlIH0gZnJvbSAnLi4va2V5Ym9hcmQtc29ydGFibGUtaXRlbS9rZXlib2FyZC1zb3J0YWJsZS1pdGVtLmRpcmVjdGl2ZSc7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tseEtleWJvYXJkU29ydGFibGVMaXN0XSdcbn0pXG5leHBvcnQgY2xhc3MgS2V5Ym9hcmRTb3J0YWJsZUxpc3REaXJlY3RpdmUgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0IHtcbiAgQE9ic2VydmUoJ2tleWJvYXJkU29ydGFibGVJdGVtcycpIHByaXZhdGUga2V5Ym9hcmRTb3J0YWJsZUl0ZW1zJCE6IE9ic2VydmFibGU8S2V5Ym9hcmRTb3J0YWJsZUl0ZW1EaXJlY3RpdmVbXT47XG4gIEBJbnB1dCgpIGtleWJvYXJkU29ydGFibGVJdGVtcyE6IEtleWJvYXJkU29ydGFibGVJdGVtRGlyZWN0aXZlW107XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSB0cmFuc2xhdGVTZXJ2aWNlOiBUcmFuc2xhdGVTZXJ2aWNlKSB7fVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLnNldHVwQ29udHJvbHNUb29sdGlwVG9CZVNob3duT25GaXJzdEZvY3VzZWRJdGVtKCk7XG4gIH1cblxuICBwcml2YXRlIHNldHVwQ29udHJvbHNUb29sdGlwVG9CZVNob3duT25GaXJzdEZvY3VzZWRJdGVtKCkge1xuICAgIGNvbnN0IGZpcnN0Rm9jdXNFdmVudE9uQURyYWdnYWJsZUl0ZW0kID0gdGhpcy5rZXlib2FyZFNvcnRhYmxlSXRlbXMkLnBpcGUoXG4gICAgICBmaWx0ZXIoKGl0ZW1zKSA9PiBpdGVtcyAmJiBpdGVtcy5sZW5ndGggPiAwKSxcbiAgICAgIHN3aXRjaE1hcCgoaXRlbXMpID0+IG1lcmdlKC4uLml0ZW1zLmZpbHRlcigoaXRlbSkgPT4gaXRlbS5pc1NvcnRhYmxlKS5tYXAoKGl0ZW0pID0+IGl0ZW0uZm9jdXNXaXRoS2V5Ym9hcmQpKSksXG4gICAgICB0YWtlKDEpXG4gICAgKTtcblxuICAgIGZpcnN0Rm9jdXNFdmVudE9uQURyYWdnYWJsZUl0ZW0kLnN1YnNjcmliZSgoaXRlbSkgPT4ge1xuICAgICAgaXRlbS50b29sdGlwRGlyZWN0aXZlLmNvbnRlbnQgPSB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudChgJHtEUkFHX0FORF9EUk9QX0xJU1RfVFJBTlNMQVRJT05fTkFNRX0uaGVscFRvb2x0aXBgKTtcbiAgICAgIGl0ZW0udG9vbHRpcERpcmVjdGl2ZS5zaG93KCk7XG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
37
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Ym9hcmQtc29ydGFibGUtbGlzdC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvc3JjL2xpYi9mb3Jtcy11aS9jb21wb25lbnRzL2RyYWctYW5kLWRyb3AtbGlzdC9rZXlib2FyZC1zb3J0YWJsZS1saXN0L2tleWJvYXJkLXNvcnRhYmxlLWxpc3QuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQWlCLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFaEUsT0FBTyxFQUFFLEtBQUssRUFBYyxNQUFNLE1BQU0sQ0FBQztBQUN6QyxPQUFPLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN6RCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDckQsT0FBTyxFQUFFLG1DQUFtQyxFQUFFLE1BQU0sY0FBYyxDQUFDOzs7QUFNbkUsTUFBTSxPQUFPLDZCQUE2QjtJQUl4QyxZQUFvQixnQkFBa0M7UUFBbEMscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtJQUFHLENBQUM7SUFFMUQsZUFBZTtRQUNiLElBQUksQ0FBQywrQ0FBK0MsRUFBRSxDQUFDO0lBQ3pELENBQUM7SUFFTywrQ0FBK0M7UUFDckQsTUFBTSxnQ0FBZ0MsR0FBRyxJQUFJLENBQUMsc0JBQXNCLENBQUMsSUFBSSxDQUN2RSxNQUFNLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLEtBQUssSUFBSSxLQUFLLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxFQUM1QyxTQUFTLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxHQUFHLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLENBQUMsRUFDN0csSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUNSLENBQUM7UUFFRixnQ0FBZ0MsQ0FBQyxTQUFTLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRTtZQUNsRCxJQUFJLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLENBQUMsR0FBRyxtQ0FBbUMsY0FBYyxDQUFDLENBQUM7WUFDcEgsSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksRUFBRSxDQUFDO1FBQy9CLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs7MEhBckJVLDZCQUE2Qjs4R0FBN0IsNkJBQTZCO0FBQ047SUFBakMsT0FBTyxDQUFDLHVCQUF1QixDQUFDOzZFQUE4RTsyRkFEcEcsNkJBQTZCO2tCQUh6QyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSwwQkFBMEI7aUJBQ3JDO3VHQUUyQyxzQkFBc0IsTUFDdkQscUJBQXFCO3NCQUE3QixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWZ0ZXJWaWV3SW5pdCwgRGlyZWN0aXZlLCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuaW1wb3J0IHsgbWVyZ2UsIE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGZpbHRlciwgc3dpdGNoTWFwLCB0YWtlIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgT2JzZXJ2ZSB9IGZyb20gJy4uLy4uLy4uLy4uL3NoYXJlZC9vYnNlcnZlJztcbmltcG9ydCB7IERSQUdfQU5EX0RST1BfTElTVF9UUkFOU0xBVElPTl9OQU1FIH0gZnJvbSAnLi4vY29uc3RhbnRzJztcbmltcG9ydCB7IEtleWJvYXJkU29ydGFibGVJdGVtRGlyZWN0aXZlIH0gZnJvbSAnLi4va2V5Ym9hcmQtc29ydGFibGUtaXRlbS9rZXlib2FyZC1zb3J0YWJsZS1pdGVtLmRpcmVjdGl2ZSc7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tseEtleWJvYXJkU29ydGFibGVMaXN0XSdcbn0pXG5leHBvcnQgY2xhc3MgS2V5Ym9hcmRTb3J0YWJsZUxpc3REaXJlY3RpdmUgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0IHtcbiAgQE9ic2VydmUoJ2tleWJvYXJkU29ydGFibGVJdGVtcycpIHByaXZhdGUga2V5Ym9hcmRTb3J0YWJsZUl0ZW1zJCE6IE9ic2VydmFibGU8S2V5Ym9hcmRTb3J0YWJsZUl0ZW1EaXJlY3RpdmVbXT47XG4gIEBJbnB1dCgpIGtleWJvYXJkU29ydGFibGVJdGVtcyE6IEtleWJvYXJkU29ydGFibGVJdGVtRGlyZWN0aXZlW10gfCBudWxsO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgdHJhbnNsYXRlU2VydmljZTogVHJhbnNsYXRlU2VydmljZSkge31cblxuICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgdGhpcy5zZXR1cENvbnRyb2xzVG9vbHRpcFRvQmVTaG93bk9uRmlyc3RGb2N1c2VkSXRlbSgpO1xuICB9XG5cbiAgcHJpdmF0ZSBzZXR1cENvbnRyb2xzVG9vbHRpcFRvQmVTaG93bk9uRmlyc3RGb2N1c2VkSXRlbSgpIHtcbiAgICBjb25zdCBmaXJzdEZvY3VzRXZlbnRPbkFEcmFnZ2FibGVJdGVtJCA9IHRoaXMua2V5Ym9hcmRTb3J0YWJsZUl0ZW1zJC5waXBlKFxuICAgICAgZmlsdGVyKChpdGVtcykgPT4gaXRlbXMgJiYgaXRlbXMubGVuZ3RoID4gMCksXG4gICAgICBzd2l0Y2hNYXAoKGl0ZW1zKSA9PiBtZXJnZSguLi5pdGVtcy5maWx0ZXIoKGl0ZW0pID0+IGl0ZW0uaXNTb3J0YWJsZSkubWFwKChpdGVtKSA9PiBpdGVtLmZvY3VzV2l0aEtleWJvYXJkKSkpLFxuICAgICAgdGFrZSgxKVxuICAgICk7XG5cbiAgICBmaXJzdEZvY3VzRXZlbnRPbkFEcmFnZ2FibGVJdGVtJC5zdWJzY3JpYmUoKGl0ZW0pID0+IHtcbiAgICAgIGl0ZW0udG9vbHRpcERpcmVjdGl2ZS5jb250ZW50ID0gdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQoYCR7RFJBR19BTkRfRFJPUF9MSVNUX1RSQU5TTEFUSU9OX05BTUV9LmhlbHBUb29sdGlwYCk7XG4gICAgICBpdGVtLnRvb2x0aXBEaXJlY3RpdmUuc2hvdygpO1xuICAgIH0pO1xuICB9XG59XG4iXX0=
@@ -13,9 +13,9 @@ export class ErrorMessageComponent {
13
13
  }
14
14
  }
15
15
  }
16
- ErrorMessageComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: ErrorMessageComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
17
- ErrorMessageComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.2", type: ErrorMessageComponent, selector: "lx-error-message", inputs: { key: "key" }, ngImport: i0, template: `<div class="error" *ngIf="_key">{{ _key | translate }}</div>`, isInline: true, styles: [".error{color:#f96464;padding:4px}\n"], directives: [{ type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "translate": i2.TranslatePipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
18
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: ErrorMessageComponent, decorators: [{
16
+ ErrorMessageComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: ErrorMessageComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
17
+ ErrorMessageComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.3", type: ErrorMessageComponent, selector: "lx-error-message", inputs: { key: "key" }, ngImport: i0, template: `<div class="error" *ngIf="_key">{{ _key | translate }}</div>`, isInline: true, styles: [".error{color:#f96464;padding:4px}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i2.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
18
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: ErrorMessageComponent, decorators: [{
19
19
  type: Component,
20
20
  args: [{ selector: 'lx-error-message', template: `<div class="error" *ngIf="_key">{{ _key | translate }}</div>`, changeDetection: ChangeDetectionStrategy.OnPush, styles: [".error{color:#f96464;padding:4px}\n"] }]
21
21
  }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { key: [{
@@ -25,9 +25,9 @@ export class FormErrorComponent {
25
25
  return [];
26
26
  }
27
27
  }
28
- FormErrorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: FormErrorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
29
- FormErrorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.2", type: FormErrorComponent, selector: "lx-form-error", inputs: { namespace: "namespace", form: "form", controlName: "controlName" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"error\" *ngFor=\"let key of translationKeys\">\n {{ key | translate }}\n</div>\n", styles: [".error{color:#f96464;padding:4px}\n"], directives: [{ type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], pipes: { "translate": i2.TranslatePipe } });
30
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: FormErrorComponent, decorators: [{
28
+ FormErrorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: FormErrorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
29
+ FormErrorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.3", type: FormErrorComponent, selector: "lx-form-error", inputs: { namespace: "namespace", form: "form", controlName: "controlName" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"error\" *ngFor=\"let key of translationKeys\">\n {{ key | translate }}\n</div>\n", styles: [".error{color:#f96464;padding:4px}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "pipe", type: i2.TranslatePipe, name: "translate" }] });
30
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: FormErrorComponent, decorators: [{
31
31
  type: Component,
32
32
  args: [{ selector: 'lx-form-error', template: "<div class=\"error\" *ngFor=\"let key of translationKeys\">\n {{ key | translate }}\n</div>\n", styles: [".error{color:#f96464;padding:4px}\n"] }]
33
33
  }], propDecorators: { namespace: [{
@@ -37,4 +37,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImpor
37
37
  }], controlName: [{
38
38
  type: Input
39
39
  }] } });
40
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1lcnJvci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvc3JjL2xpYi9mb3Jtcy11aS9jb21wb25lbnRzL2Zvcm0tZXJyb3IvZm9ybS1lcnJvci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvc3JjL2xpYi9mb3Jtcy11aS9jb21wb25lbnRzL2Zvcm0tZXJyb3IvZm9ybS1lcnJvci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBK0MsTUFBTSxlQUFlLENBQUM7Ozs7QUFTOUYsTUFBTSxPQUFPLGtCQUFrQjtJQUwvQjtRQVVFLG9CQUFlLEdBQWEsRUFBRSxDQUFDO0tBd0JoQztJQXJCQyxRQUFRO1FBQ04sSUFBSSxDQUFDLGdCQUFnQixHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDNUQsSUFBSSxDQUFDLGVBQWUsR0FBRyxJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztRQUNuRCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxXQUFXLENBQUMsUUFBdUI7UUFDakMsSUFBSSxDQUFDLGVBQWUsR0FBRyxJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztJQUNuRCxDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUN0QyxDQUFDO0lBRUQsa0JBQWtCO1FBQ2hCLE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUN6RCxJQUFJLFdBQVcsSUFBSSxXQUFXLENBQUMsTUFBTSxFQUFFO1lBQ3JDLE9BQU8sTUFBTSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQyxHQUFHLElBQUksQ0FBQyxTQUFTLFdBQVcsSUFBSSxDQUFDLFdBQVcsSUFBSSxRQUFRLEVBQUUsQ0FBQyxDQUFDO1NBQ3RIO1FBQ0QsT0FBTyxFQUFFLENBQUM7SUFDWixDQUFDOzsrR0E1QlUsa0JBQWtCO21HQUFsQixrQkFBa0Isd0pDVC9CLGdHQUdBOzJGRE1hLGtCQUFrQjtrQkFMOUIsU0FBUzsrQkFDRSxlQUFlOzhCQUtULFNBQVM7c0JBQXhCLEtBQUs7Z0JBQ1UsSUFBSTtzQkFBbkIsS0FBSztnQkFDVSxXQUFXO3NCQUExQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT25DaGFuZ2VzLCBPbkRlc3Ryb3ksIE9uSW5pdCwgU2ltcGxlQ2hhbmdlcyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybUdyb3VwIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2x4LWZvcm0tZXJyb3InLFxuICB0ZW1wbGF0ZVVybDogJ2Zvcm0tZXJyb3IuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnZm9ybS1lcnJvci5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIEZvcm1FcnJvckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzLCBPbkRlc3Ryb3kge1xuICBASW5wdXQoKSBwdWJsaWMgbmFtZXNwYWNlITogc3RyaW5nO1xuICBASW5wdXQoKSBwdWJsaWMgZm9ybSE6IEZvcm1Hcm91cDtcbiAgQElucHV0KCkgcHVibGljIGNvbnRyb2xOYW1lITogc3RyaW5nO1xuXG4gIHRyYW5zbGF0aW9uS2V5czogc3RyaW5nW10gPSBbXTtcbiAgcHJpdmF0ZSBmb3JtU3Vic2NyaXB0aW9uITogU3Vic2NyaXB0aW9uO1xuXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMuZm9ybVN1YnNjcmlwdGlvbiA9IHRoaXMuZm9ybS52YWx1ZUNoYW5nZXMuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgIHRoaXMudHJhbnNsYXRpb25LZXlzID0gdGhpcy5nZXRUcmFuc2xhdGlvbktleXMoKTtcbiAgICB9KTtcbiAgfVxuXG4gIG5nT25DaGFuZ2VzKF9jaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XG4gICAgdGhpcy50cmFuc2xhdGlvbktleXMgPSB0aGlzLmdldFRyYW5zbGF0aW9uS2V5cygpO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5mb3JtU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gIH1cblxuICBnZXRUcmFuc2xhdGlvbktleXMoKSB7XG4gICAgY29uc3QgZm9ybUNvbnRyb2wgPSB0aGlzLmZvcm0uY29udHJvbHNbdGhpcy5jb250cm9sTmFtZV07XG4gICAgaWYgKGZvcm1Db250cm9sICYmIGZvcm1Db250cm9sLmVycm9ycykge1xuICAgICAgcmV0dXJuIE9iamVjdC5rZXlzKGZvcm1Db250cm9sLmVycm9ycykubWFwKChlcnJvcktleSkgPT4gYCR7dGhpcy5uYW1lc3BhY2V9LmVycm9ycy4ke3RoaXMuY29udHJvbE5hbWV9LiR7ZXJyb3JLZXl9YCk7XG4gICAgfVxuICAgIHJldHVybiBbXTtcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImVycm9yXCIgKm5nRm9yPVwibGV0IGtleSBvZiB0cmFuc2xhdGlvbktleXNcIj5cbiAge3sga2V5IHwgdHJhbnNsYXRlIH19XG48L2Rpdj5cbiJdfQ==
40
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1lcnJvci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvc3JjL2xpYi9mb3Jtcy11aS9jb21wb25lbnRzL2Zvcm0tZXJyb3IvZm9ybS1lcnJvci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvc3JjL2xpYi9mb3Jtcy11aS9jb21wb25lbnRzL2Zvcm0tZXJyb3IvZm9ybS1lcnJvci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBK0MsTUFBTSxlQUFlLENBQUM7Ozs7QUFTOUYsTUFBTSxPQUFPLGtCQUFrQjtJQUwvQjtRQVVFLG9CQUFlLEdBQWEsRUFBRSxDQUFDO0tBd0JoQztJQXJCQyxRQUFRO1FBQ04sSUFBSSxDQUFDLGdCQUFnQixHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDNUQsSUFBSSxDQUFDLGVBQWUsR0FBRyxJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztRQUNuRCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxXQUFXLENBQUMsUUFBdUI7UUFDakMsSUFBSSxDQUFDLGVBQWUsR0FBRyxJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztJQUNuRCxDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUN0QyxDQUFDO0lBRUQsa0JBQWtCO1FBQ2hCLE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUN6RCxJQUFJLFdBQVcsSUFBSSxXQUFXLENBQUMsTUFBTSxFQUFFO1lBQ3JDLE9BQU8sTUFBTSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQyxHQUFHLElBQUksQ0FBQyxTQUFTLFdBQVcsSUFBSSxDQUFDLFdBQVcsSUFBSSxRQUFRLEVBQUUsQ0FBQyxDQUFDO1NBQ3RIO1FBQ0QsT0FBTyxFQUFFLENBQUM7SUFDWixDQUFDOzsrR0E1QlUsa0JBQWtCO21HQUFsQixrQkFBa0Isd0pDVC9CLGdHQUdBOzJGRE1hLGtCQUFrQjtrQkFMOUIsU0FBUzsrQkFDRSxlQUFlOzhCQUtULFNBQVM7c0JBQXhCLEtBQUs7Z0JBQ1UsSUFBSTtzQkFBbkIsS0FBSztnQkFDVSxXQUFXO3NCQUExQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT25DaGFuZ2VzLCBPbkRlc3Ryb3ksIE9uSW5pdCwgU2ltcGxlQ2hhbmdlcyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVW50eXBlZEZvcm1Hcm91cCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdseC1mb3JtLWVycm9yJyxcbiAgdGVtcGxhdGVVcmw6ICdmb3JtLWVycm9yLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJ2Zvcm0tZXJyb3IuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBGb3JtRXJyb3JDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uQ2hhbmdlcywgT25EZXN0cm95IHtcbiAgQElucHV0KCkgcHVibGljIG5hbWVzcGFjZSE6IHN0cmluZztcbiAgQElucHV0KCkgcHVibGljIGZvcm0hOiBVbnR5cGVkRm9ybUdyb3VwO1xuICBASW5wdXQoKSBwdWJsaWMgY29udHJvbE5hbWUhOiBzdHJpbmc7XG5cbiAgdHJhbnNsYXRpb25LZXlzOiBzdHJpbmdbXSA9IFtdO1xuICBwcml2YXRlIGZvcm1TdWJzY3JpcHRpb24hOiBTdWJzY3JpcHRpb247XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5mb3JtU3Vic2NyaXB0aW9uID0gdGhpcy5mb3JtLnZhbHVlQ2hhbmdlcy5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgdGhpcy50cmFuc2xhdGlvbktleXMgPSB0aGlzLmdldFRyYW5zbGF0aW9uS2V5cygpO1xuICAgIH0pO1xuICB9XG5cbiAgbmdPbkNoYW5nZXMoX2NoYW5nZXM6IFNpbXBsZUNoYW5nZXMpIHtcbiAgICB0aGlzLnRyYW5zbGF0aW9uS2V5cyA9IHRoaXMuZ2V0VHJhbnNsYXRpb25LZXlzKCk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLmZvcm1TdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcbiAgfVxuXG4gIGdldFRyYW5zbGF0aW9uS2V5cygpIHtcbiAgICBjb25zdCBmb3JtQ29udHJvbCA9IHRoaXMuZm9ybS5jb250cm9sc1t0aGlzLmNvbnRyb2xOYW1lXTtcbiAgICBpZiAoZm9ybUNvbnRyb2wgJiYgZm9ybUNvbnRyb2wuZXJyb3JzKSB7XG4gICAgICByZXR1cm4gT2JqZWN0LmtleXMoZm9ybUNvbnRyb2wuZXJyb3JzKS5tYXAoKGVycm9yS2V5KSA9PiBgJHt0aGlzLm5hbWVzcGFjZX0uZXJyb3JzLiR7dGhpcy5jb250cm9sTmFtZX0uJHtlcnJvcktleX1gKTtcbiAgICB9XG4gICAgcmV0dXJuIFtdO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiZXJyb3JcIiAqbmdGb3I9XCJsZXQga2V5IG9mIHRyYW5zbGF0aW9uS2V5c1wiPlxuICB7eyBrZXkgfCB0cmFuc2xhdGUgfX1cbjwvZGl2PlxuIl19
@@ -22,9 +22,9 @@ export class IconComponent {
22
22
  }
23
23
  }
24
24
  }
25
- IconComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: IconComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
26
- IconComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.2", type: IconComponent, selector: "lx-icon", inputs: { name: "name", color: "color", fontAwsomeStyle: "fontAwsomeStyle", size: "size", title: "title" }, host: { properties: { "style.height": "this.size" } }, usesOnChanges: true, ngImport: i0, template: "<i [attr.title]=\"title\" [class]=\"iconStyle + ' fa-' + name\" [style.color]=\"color\" [style.fontSize]=\"size\"></i>\n", styles: [":host{display:inline-block}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
27
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: IconComponent, decorators: [{
25
+ IconComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: IconComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
26
+ IconComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.3", type: IconComponent, selector: "lx-icon", inputs: { name: "name", color: "color", fontAwsomeStyle: "fontAwsomeStyle", size: "size", title: "title" }, host: { properties: { "style.height": "this.size" } }, usesOnChanges: true, ngImport: i0, template: "<i [attr.title]=\"title\" [class]=\"iconStyle + ' fa-' + name\" [style.color]=\"color\" [style.fontSize]=\"size\"></i>\n", styles: [":host{display:inline-block}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
27
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: IconComponent, decorators: [{
28
28
  type: Component,
29
29
  args: [{ selector: 'lx-icon', changeDetection: ChangeDetectionStrategy.OnPush, template: "<i [attr.title]=\"title\" [class]=\"iconStyle + ' fa-' + name\" [style.color]=\"color\" [style.fontSize]=\"size\"></i>\n", styles: [":host{display:inline-block}\n"] }]
30
30
  }], propDecorators: { name: [{
@@ -23,9 +23,9 @@ export class InputComponent {
23
23
  this.destory$.next();
24
24
  }
25
25
  }
26
- InputComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: InputComponent, deps: [{ token: i1.NgControl, optional: true }], target: i0.ɵɵFactoryTarget.Component });
27
- InputComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.2", type: InputComponent, selector: "input[lx-input]", inputs: { error: "error", disabled: "disabled" }, host: { properties: { "class.error": "this.error", "class.disabled": "this.disabled" } }, ngImport: i0, template: ``, isInline: true, styles: [":host{height:32px;padding:8px;border-radius:3px;border:solid 1px #99a5bb;outline:0;color:#2a303d}:host:focus{border-color:#59f}:host.error{border-color:#f96464}:host.disabled{background-color:#f0f2f5;color:#677a9a}\n"] });
28
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: InputComponent, decorators: [{
26
+ InputComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: InputComponent, deps: [{ token: i1.NgControl, optional: true }], target: i0.ɵɵFactoryTarget.Component });
27
+ InputComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.3", type: InputComponent, selector: "input[lx-input]", inputs: { error: "error", disabled: "disabled" }, host: { properties: { "class.error": "this.error", "class.disabled": "this.disabled" } }, ngImport: i0, template: ``, isInline: true, styles: [":host{height:32px;padding:8px;border-radius:3px;border:solid 1px #99a5bb;outline:0;color:#2a303d}:host:focus{border-color:#59f}:host.error{border-color:#f96464}:host.disabled{background-color:#f0f2f5;color:#677a9a}\n"] });
28
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: InputComponent, decorators: [{
29
29
  type: Component,
30
30
  args: [{ selector: 'input[lx-input]', template: ``, styles: [":host{height:32px;padding:8px;border-radius:3px;border:solid 1px #99a5bb;outline:0;color:#2a303d}:host:focus{border-color:#59f}:host.error{border-color:#f96464}:host.disabled{background-color:#f0f2f5;color:#677a9a}\n"] }]
31
31
  }], ctorParameters: function () { return [{ type: i1.NgControl, decorators: [{
@@ -98,9 +98,9 @@ export class KeyboardSelectDirective {
98
98
  this.destroyed$.next();
99
99
  }
100
100
  }
101
- KeyboardSelectDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: KeyboardSelectDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
102
- KeyboardSelectDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.2", type: KeyboardSelectDirective, inputs: { keyboardSelectAction: "keyboardSelectAction" }, outputs: { selectedItemIndexChange: "selectedItemIndexChange" }, viewQueries: [{ propertyName: "keyboardSelectContainer", first: true, predicate: ["keyboardSelectContainer"], descendants: true, static: true }, { propertyName: "_items", predicate: SelectableItemDirective, descendants: true }], ngImport: i0 });
103
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: KeyboardSelectDirective, decorators: [{
101
+ KeyboardSelectDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: KeyboardSelectDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
102
+ KeyboardSelectDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.1.3", type: KeyboardSelectDirective, inputs: { keyboardSelectAction: "keyboardSelectAction" }, outputs: { selectedItemIndexChange: "selectedItemIndexChange" }, viewQueries: [{ propertyName: "keyboardSelectContainer", first: true, predicate: ["keyboardSelectContainer"], descendants: true, static: true }, { propertyName: "_items", predicate: SelectableItemDirective, descendants: true }], ngImport: i0 });
103
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: KeyboardSelectDirective, decorators: [{
104
104
  type: Directive
105
105
  }], propDecorators: { keyboardSelectAction: [{
106
106
  type: Input