@evotor-dev/ui-kit 6.4.0 → 7.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (694) hide show
  1. package/{esm2015/evotor-dev-ui-kit.js → esm2020/evotor-dev-ui-kit.mjs} +4 -4
  2. package/{esm2015/icons/category/evotor-dev-ui-kit-icons-category.js → esm2020/icons/category/evotor-dev-ui-kit-icons-category.mjs} +4 -4
  3. package/{esm2015/icons/category/index.js → esm2020/icons/category/index.mjs} +61 -61
  4. package/{esm2015/icons/emotions/evotor-dev-ui-kit-icons-emotions.js → esm2020/icons/emotions/evotor-dev-ui-kit-icons-emotions.mjs} +4 -4
  5. package/{esm2015/icons/emotions/index.js → esm2020/icons/emotions/index.mjs} +17 -17
  6. package/{esm2015/icons/evotor-dev-ui-kit-icons.js → esm2020/icons/evotor-dev-ui-kit-icons.mjs} +4 -4
  7. package/{esm2015/icons/header/evotor-dev-ui-kit-icons-header.js → esm2020/icons/header/evotor-dev-ui-kit-icons-header.mjs} +4 -4
  8. package/{esm2015/icons/header/index.js → esm2020/icons/header/index.mjs} +27 -27
  9. package/{esm2015/icons/index.js → esm2020/icons/index.mjs} +8 -8
  10. package/{esm2015/icons/info/evotor-dev-ui-kit-icons-info.js → esm2020/icons/info/evotor-dev-ui-kit-icons-info.mjs} +4 -4
  11. package/{esm2015/icons/info/index.js → esm2020/icons/info/index.mjs} +39 -39
  12. package/{esm2015/icons/navigation/evotor-dev-ui-kit-icons-navigation.js → esm2020/icons/navigation/evotor-dev-ui-kit-icons-navigation.mjs} +4 -4
  13. package/{esm2015/icons/navigation/index.js → esm2020/icons/navigation/index.mjs} +56 -56
  14. package/{esm2015/icons/side-menu/evotor-dev-ui-kit-icons-side-menu.js → esm2020/icons/side-menu/evotor-dev-ui-kit-icons-side-menu.mjs} +4 -4
  15. package/{esm2015/icons/side-menu/index.js → esm2020/icons/side-menu/index.mjs} +63 -63
  16. package/{esm2015/icons/system/evotor-dev-ui-kit-icons-system.js → esm2020/icons/system/evotor-dev-ui-kit-icons-system.mjs} +4 -4
  17. package/{esm2015/icons/system/index.js → esm2020/icons/system/index.mjs} +368 -368
  18. package/{esm2015/lib/common/Serializable.js → esm2020/lib/common/Serializable.mjs} +5 -5
  19. package/{esm2015/lib/common/animations/expand.animation.js → esm2020/lib/common/animations/expand.animation.mjs} +27 -27
  20. package/{esm2015/lib/common/animations/index.js → esm2020/lib/common/animations/index.mjs} +3 -3
  21. package/{esm2015/lib/common/animations/sidebar.animation.js → esm2020/lib/common/animations/sidebar.animation.mjs} +9 -9
  22. package/{esm2015/lib/common/animations/skip-initial-render.animation.js → esm2020/lib/common/animations/skip-initial-render.animation.mjs} +2 -2
  23. package/{esm2015/lib/common/collection/evo-collection-fabric.js → esm2020/lib/common/collection/evo-collection-fabric.mjs} +9 -9
  24. package/{esm2015/lib/common/collection/evo-collection.js → esm2020/lib/common/collection/evo-collection.mjs} +6 -6
  25. package/{esm2015/lib/common/collection/index.js → esm2020/lib/common/collection/index.mjs} +2 -2
  26. package/{esm2015/lib/common/constants/css-breakpoints.js → esm2020/lib/common/constants/css-breakpoints.mjs} +8 -8
  27. package/{esm2015/lib/common/constants/view-breakpoint-streams.js → esm2020/lib/common/constants/view-breakpoint-streams.mjs} +23 -23
  28. package/esm2020/lib/common/evo-base-control.mjs +46 -0
  29. package/{esm2015/lib/common/evo-control-state-manager/evo-control-state-manager.js → esm2020/lib/common/evo-control-state-manager/evo-control-state-manager.mjs} +12 -12
  30. package/{esm2015/lib/common/evo-control-state-manager/evo-control-state.interface.js → esm2020/lib/common/evo-control-state-manager/evo-control-state.interface.mjs} +1 -1
  31. package/{esm2015/lib/common/evo-control-state-manager/evo-control-states.enum.js → esm2020/lib/common/evo-control-state-manager/evo-control-states.enum.mjs} +5 -5
  32. package/{esm2015/lib/common/form-helper/form-helper.js → esm2020/lib/common/form-helper/form-helper.mjs} +30 -30
  33. package/{esm2015/lib/common/types/evo-color.js → esm2020/lib/common/types/evo-color.mjs} +1 -1
  34. package/{esm2015/lib/common/types/evo-size.js → esm2020/lib/common/types/evo-size.mjs} +1 -1
  35. package/{esm2015/lib/common/types/index.js → esm2020/lib/common/types/index.mjs} +2 -2
  36. package/esm2020/lib/components/evo-accordion/evo-accordion-content/evo-accordion-content.component.mjs +31 -0
  37. package/esm2020/lib/components/evo-accordion/evo-accordion-panel/evo-accordion-panel.component.mjs +19 -0
  38. package/esm2020/lib/components/evo-accordion/evo-accordion-title/evo-accordion-title.component.mjs +57 -0
  39. package/esm2020/lib/components/evo-accordion/evo-accordion.component.mjs +17 -0
  40. package/{esm2015/lib/components/evo-accordion/evo-accordion.module.js → esm2020/lib/components/evo-accordion/evo-accordion.module.mjs} +66 -66
  41. package/{esm2015/lib/components/evo-accordion/index.js → esm2020/lib/components/evo-accordion/index.mjs} +1 -1
  42. package/{esm2015/lib/components/evo-accordion/public-api.js → esm2020/lib/components/evo-accordion/public-api.mjs} +5 -5
  43. package/esm2020/lib/components/evo-alert/evo-alert.component.mjs +79 -0
  44. package/{esm2015/lib/components/evo-alert/evo-alert.module.js → esm2020/lib/components/evo-alert/evo-alert.module.mjs} +29 -29
  45. package/{esm2015/lib/components/evo-alert/index.js → esm2020/lib/components/evo-alert/index.mjs} +1 -1
  46. package/{esm2015/lib/components/evo-alert/public-api.js → esm2020/lib/components/evo-alert/public-api.mjs} +2 -2
  47. package/esm2020/lib/components/evo-autocomplete/components/evo-autocomplete.component.mjs +358 -0
  48. package/esm2020/lib/components/evo-autocomplete/components/templates/evo-autocomplete-default-option.component.mjs +43 -0
  49. package/{esm2015/lib/components/evo-autocomplete/evo-autocomplete.module.js → esm2020/lib/components/evo-autocomplete/evo-autocomplete.module.mjs} +58 -58
  50. package/esm2020/lib/components/evo-autocomplete/helpers/switch-query-to-list.mjs +6 -0
  51. package/{esm2015/lib/components/evo-autocomplete/index.js → esm2020/lib/components/evo-autocomplete/index.mjs} +1 -1
  52. package/{esm2015/lib/components/evo-autocomplete/models/DaDataParty.js → esm2020/lib/components/evo-autocomplete/models/DaDataParty.mjs} +27 -27
  53. package/{esm2015/lib/components/evo-autocomplete/models/dadata.model.js → esm2020/lib/components/evo-autocomplete/models/dadata.model.mjs} +47 -47
  54. package/{esm2015/lib/components/evo-autocomplete/public-api.js → esm2020/lib/components/evo-autocomplete/public-api.mjs} +6 -6
  55. package/{esm2015/lib/components/evo-autocomplete/types/evo-autocomplete-size.js → esm2020/lib/components/evo-autocomplete/types/evo-autocomplete-size.mjs} +1 -1
  56. package/esm2020/lib/components/evo-badge/evo-badge.component.mjs +40 -0
  57. package/{esm2015/lib/components/evo-badge/evo-badge.module.js → esm2020/lib/components/evo-badge/evo-badge.module.mjs} +28 -28
  58. package/{esm2015/lib/components/evo-badge/index.js → esm2020/lib/components/evo-badge/index.mjs} +2 -2
  59. package/{esm2015/lib/components/evo-badge/public-api.js → esm2020/lib/components/evo-badge/public-api.mjs} +2 -2
  60. package/{esm2015/lib/components/evo-badge/types/evo-badge-color.js → esm2020/lib/components/evo-badge/types/evo-badge-color.mjs} +1 -1
  61. package/{esm2015/lib/components/evo-badge/types/evo-badge-size.js → esm2020/lib/components/evo-badge/types/evo-badge-size.mjs} +1 -1
  62. package/{esm2015/lib/components/evo-badge/types/index.js → esm2020/lib/components/evo-badge/types/index.mjs} +2 -2
  63. package/esm2020/lib/components/evo-banner/evo-banner.component.mjs +112 -0
  64. package/{esm2015/lib/components/evo-banner/evo-banner.module.js → esm2020/lib/components/evo-banner/evo-banner.module.mjs} +27 -27
  65. package/{esm2015/lib/components/evo-banner/index.js → esm2020/lib/components/evo-banner/index.mjs} +1 -1
  66. package/{esm2015/lib/components/evo-banner/public-api.js → esm2020/lib/components/evo-banner/public-api.mjs} +2 -2
  67. package/esm2020/lib/components/evo-button/evo-button.component.mjs +82 -0
  68. package/{esm2015/lib/components/evo-button/evo-button.module.js → esm2020/lib/components/evo-button/evo-button.module.mjs} +26 -26
  69. package/{esm2015/lib/components/evo-button/index.js → esm2020/lib/components/evo-button/index.mjs} +1 -1
  70. package/{esm2015/lib/components/evo-button/public-api.js → esm2020/lib/components/evo-button/public-api.mjs} +2 -2
  71. package/esm2020/lib/components/evo-checkbox/evo-checkbox.component.mjs +82 -0
  72. package/{esm2015/lib/components/evo-checkbox/evo-checkbox.module.js → esm2020/lib/components/evo-checkbox/evo-checkbox.module.mjs} +34 -34
  73. package/{esm2015/lib/components/evo-checkbox/index.js → esm2020/lib/components/evo-checkbox/index.mjs} +1 -1
  74. package/{esm2015/lib/components/evo-checkbox/public-api.js → esm2020/lib/components/evo-checkbox/public-api.mjs} +2 -2
  75. package/esm2020/lib/components/evo-chip/evo-chip.component.mjs +130 -0
  76. package/{esm2015/lib/components/evo-chip/evo-chip.module.js → esm2020/lib/components/evo-chip/evo-chip.module.mjs} +45 -45
  77. package/{esm2015/lib/components/evo-chip/index.js → esm2020/lib/components/evo-chip/index.mjs} +1 -1
  78. package/{esm2015/lib/components/evo-chip/public-api.js → esm2020/lib/components/evo-chip/public-api.mjs} +2 -2
  79. package/esm2020/lib/components/evo-control-error/evo-control-error.component.mjs +41 -0
  80. package/{esm2015/lib/components/evo-control-error/evo-control-error.module.js → esm2020/lib/components/evo-control-error/evo-control-error.module.mjs} +30 -30
  81. package/{esm2015/lib/components/evo-control-error/index.js → esm2020/lib/components/evo-control-error/index.mjs} +1 -1
  82. package/{esm2015/lib/components/evo-control-error/public-api.js → esm2020/lib/components/evo-control-error/public-api.mjs} +2 -2
  83. package/esm2020/lib/components/evo-control-label/evo-control-label.component.mjs +19 -0
  84. package/{esm2015/lib/components/evo-control-label/evo-control-label.module.js → esm2020/lib/components/evo-control-label/evo-control-label.module.mjs} +22 -22
  85. package/{esm2015/lib/components/evo-control-label/index.js → esm2020/lib/components/evo-control-label/index.mjs} +1 -1
  86. package/{esm2015/lib/components/evo-control-label/public-api.js → esm2020/lib/components/evo-control-label/public-api.mjs} +2 -2
  87. package/esm2020/lib/components/evo-counter/evo-counter.component.mjs +38 -0
  88. package/{esm2015/lib/components/evo-counter/evo-counter.module.js → esm2020/lib/components/evo-counter/evo-counter.module.mjs} +30 -30
  89. package/{esm2015/lib/components/evo-counter/index.js → esm2020/lib/components/evo-counter/index.mjs} +1 -1
  90. package/{esm2015/lib/components/evo-counter/public-api.js → esm2020/lib/components/evo-counter/public-api.mjs} +2 -2
  91. package/esm2020/lib/components/evo-datepicker/evo-datepicker.component.mjs +561 -0
  92. package/{esm2015/lib/components/evo-datepicker/evo-datepicker.module.js → esm2020/lib/components/evo-datepicker/evo-datepicker.module.mjs} +34 -34
  93. package/{esm2015/lib/components/evo-datepicker/flatpickr-options.interface.js → esm2020/lib/components/evo-datepicker/flatpickr-options.interface.mjs} +1 -1
  94. package/{esm2015/lib/components/evo-datepicker/index.js → esm2020/lib/components/evo-datepicker/index.mjs} +1 -1
  95. package/{esm2015/lib/components/evo-datepicker/public-api.js → esm2020/lib/components/evo-datepicker/public-api.mjs} +2 -2
  96. package/{esm2015/lib/components/evo-datepicker/templates/index.js → esm2020/lib/components/evo-datepicker/templates/index.mjs} +19 -19
  97. package/{esm2015/lib/components/evo-dropdown/evo-dropdown-origin.directive.js → esm2020/lib/components/evo-dropdown/evo-dropdown-origin.directive.mjs} +41 -41
  98. package/{esm2015/lib/components/evo-dropdown/evo-dropdown-position-description.js → esm2020/lib/components/evo-dropdown/evo-dropdown-position-description.mjs} +50 -50
  99. package/esm2020/lib/components/evo-dropdown/evo-dropdown.component.mjs +107 -0
  100. package/{esm2015/lib/components/evo-dropdown/evo-dropdown.module.js → esm2020/lib/components/evo-dropdown/evo-dropdown.module.mjs} +20 -20
  101. package/{esm2015/lib/components/evo-dropdown/index.js → esm2020/lib/components/evo-dropdown/index.mjs} +1 -1
  102. package/{esm2015/lib/components/evo-dropdown/public-api.js → esm2020/lib/components/evo-dropdown/public-api.mjs} +4 -4
  103. package/{esm2015/lib/components/evo-dropdown/types/evo-dropdown-positions.js → esm2020/lib/components/evo-dropdown/types/evo-dropdown-positions.mjs} +1 -1
  104. package/{esm2015/lib/components/evo-icon/classes/evo-icons-library.js → esm2020/lib/components/evo-icon/classes/evo-icons-library.mjs} +18 -18
  105. package/esm2020/lib/components/evo-icon/evo-icon.component.mjs +52 -0
  106. package/{esm2015/lib/components/evo-icon/evo-icon.module.js → esm2020/lib/components/evo-icon/evo-icon.module.mjs} +57 -57
  107. package/{esm2015/lib/components/evo-icon/index.js → esm2020/lib/components/evo-icon/index.mjs} +1 -1
  108. package/{esm2015/lib/components/evo-icon/interfaces/icons-category.js → esm2020/lib/components/evo-icon/interfaces/icons-category.mjs} +1 -1
  109. package/{esm2015/lib/components/evo-icon/interfaces/icons-source.js → esm2020/lib/components/evo-icon/interfaces/icons-source.mjs} +1 -1
  110. package/{esm2015/lib/components/evo-icon/public-api.js → esm2020/lib/components/evo-icon/public-api.mjs} +5 -5
  111. package/esm2020/lib/components/evo-icon-button/evo-icon-button.component.mjs +61 -0
  112. package/{esm2015/lib/components/evo-icon-button/evo-icon-button.module.js → esm2020/lib/components/evo-icon-button/evo-icon-button.module.mjs} +26 -26
  113. package/{esm2015/lib/components/evo-icon-button/index.js → esm2020/lib/components/evo-icon-button/index.mjs} +1 -1
  114. package/{esm2015/lib/components/evo-icon-button/public-api.js → esm2020/lib/components/evo-icon-button/public-api.mjs} +2 -2
  115. package/{esm2015/lib/components/evo-icon-button/types/evo-icon-button-size.js → esm2020/lib/components/evo-icon-button/types/evo-icon-button-size.mjs} +1 -1
  116. package/{esm2015/lib/components/evo-icon-button/types/evo-icon-button-theme.js → esm2020/lib/components/evo-icon-button/types/evo-icon-button-theme.mjs} +1 -1
  117. package/esm2020/lib/components/evo-icon-number/components/evo-icon-number/evo-icon-number.component.mjs +14 -0
  118. package/{esm2015/lib/components/evo-icon-number/evo-icon-number.module.js → esm2020/lib/components/evo-icon-number/evo-icon-number.module.mjs} +18 -18
  119. package/{esm2015/lib/components/evo-icon-number/index.js → esm2020/lib/components/evo-icon-number/index.mjs} +1 -1
  120. package/{esm2015/lib/components/evo-icon-number/public-api.js → esm2020/lib/components/evo-icon-number/public-api.mjs} +2 -2
  121. package/{esm2015/lib/components/evo-input/evo-input-icon/evo-input-icon.directive.js → esm2020/lib/components/evo-input/evo-input-icon/evo-input-icon.directive.mjs} +13 -13
  122. package/esm2020/lib/components/evo-input/evo-input.component.mjs +357 -0
  123. package/{esm2015/lib/components/evo-input/evo-input.module.js → esm2020/lib/components/evo-input/evo-input.module.mjs} +66 -66
  124. package/{esm2015/lib/components/evo-input/index.js → esm2020/lib/components/evo-input/index.mjs} +1 -1
  125. package/{esm2015/lib/components/evo-input/public-api.js → esm2020/lib/components/evo-input/public-api.mjs} +3 -3
  126. package/esm2020/lib/components/evo-input-contenteditable/evo-input-contenteditable.component.mjs +150 -0
  127. package/{esm2015/lib/components/evo-input-contenteditable/evo-input-contenteditable.module.js → esm2020/lib/components/evo-input-contenteditable/evo-input-contenteditable.module.mjs} +34 -34
  128. package/{esm2015/lib/components/evo-input-contenteditable/index.js → esm2020/lib/components/evo-input-contenteditable/index.mjs} +1 -1
  129. package/{esm2015/lib/components/evo-input-contenteditable/public-api.js → esm2020/lib/components/evo-input-contenteditable/public-api.mjs} +2 -2
  130. package/esm2020/lib/components/evo-input-contenteditable/utils/clear-multiline.mjs +7 -0
  131. package/esm2020/lib/components/evo-loader/evo-circular-loader.component.mjs +18 -0
  132. package/esm2020/lib/components/evo-loader/evo-loader.component.mjs +24 -0
  133. package/{esm2015/lib/components/evo-loader/evo-loader.module.js → esm2020/lib/components/evo-loader/evo-loader.module.mjs} +33 -33
  134. package/{esm2015/lib/components/evo-loader/index.js → esm2020/lib/components/evo-loader/index.mjs} +1 -1
  135. package/{esm2015/lib/components/evo-loader/public-api.js → esm2020/lib/components/evo-loader/public-api.mjs} +3 -3
  136. package/esm2020/lib/components/evo-modal/evo-modal.component.mjs +118 -0
  137. package/{esm2015/lib/components/evo-modal/evo-modal.module.js → esm2020/lib/components/evo-modal/evo-modal.module.mjs} +32 -32
  138. package/{esm2015/lib/components/evo-modal/evo-modal.service.js → esm2020/lib/components/evo-modal/evo-modal.service.mjs} +32 -32
  139. package/{esm2015/lib/components/evo-modal/index.js → esm2020/lib/components/evo-modal/index.mjs} +1 -1
  140. package/{esm2015/lib/components/evo-modal/public-api.js → esm2020/lib/components/evo-modal/public-api.mjs} +3 -3
  141. package/esm2020/lib/components/evo-navbar/evo-navbar-item/evo-navbar-item.component.mjs +58 -0
  142. package/esm2020/lib/components/evo-navbar/evo-navbar.component.mjs +46 -0
  143. package/{esm2015/lib/components/evo-navbar/evo-navbar.module.js → esm2020/lib/components/evo-navbar/evo-navbar.module.mjs} +24 -24
  144. package/{esm2015/lib/components/evo-navbar/index.js → esm2020/lib/components/evo-navbar/index.mjs} +1 -1
  145. package/{esm2015/lib/components/evo-navbar/interfaces/nav-item-main-info.js → esm2020/lib/components/evo-navbar/interfaces/nav-item-main-info.mjs} +1 -1
  146. package/{esm2015/lib/components/evo-navbar/interfaces/nav-item-router-link.js → esm2020/lib/components/evo-navbar/interfaces/nav-item-router-link.mjs} +1 -1
  147. package/{esm2015/lib/components/evo-navbar/interfaces/nav-item.href.js → esm2020/lib/components/evo-navbar/interfaces/nav-item.href.mjs} +1 -1
  148. package/{esm2015/lib/components/evo-navbar/public-api.js → esm2020/lib/components/evo-navbar/public-api.mjs} +3 -3
  149. package/{esm2015/lib/components/evo-navbar/types/nav-item.js → esm2020/lib/components/evo-navbar/types/nav-item.mjs} +1 -1
  150. package/esm2020/lib/components/evo-note/evo-note.component.mjs +40 -0
  151. package/{esm2015/lib/components/evo-note/evo-note.module.js → esm2020/lib/components/evo-note/evo-note.module.mjs} +45 -45
  152. package/{esm2015/lib/components/evo-note/index.js → esm2020/lib/components/evo-note/index.mjs} +1 -1
  153. package/{esm2015/lib/components/evo-note/public.api.js → esm2020/lib/components/evo-note/public.api.mjs} +3 -3
  154. package/{esm2015/lib/components/evo-note/types/evo-note-type.js → esm2020/lib/components/evo-note/types/evo-note-type.mjs} +1 -1
  155. package/esm2020/lib/components/evo-paginator/evo-paginator.component.mjs +109 -0
  156. package/{esm2015/lib/components/evo-paginator/evo-paginator.module.js → esm2020/lib/components/evo-paginator/evo-paginator.module.mjs} +22 -22
  157. package/{esm2015/lib/components/evo-paginator/index.js → esm2020/lib/components/evo-paginator/index.mjs} +1 -1
  158. package/{esm2015/lib/components/evo-paginator/public-api.js → esm2020/lib/components/evo-paginator/public-api.mjs} +2 -2
  159. package/esm2020/lib/components/evo-plus-minus/evo-plus-minus.component.mjs +26 -0
  160. package/{esm2015/lib/components/evo-plus-minus/evo-plus-minus.module.js → esm2020/lib/components/evo-plus-minus/evo-plus-minus.module.mjs} +22 -22
  161. package/{esm2015/lib/components/evo-plus-minus/index.js → esm2020/lib/components/evo-plus-minus/index.mjs} +1 -1
  162. package/{esm2015/lib/components/evo-plus-minus/public-api.js → esm2020/lib/components/evo-plus-minus/public-api.mjs} +2 -2
  163. package/esm2020/lib/components/evo-popover/evo-popover.component.mjs +173 -0
  164. package/{esm2015/lib/components/evo-popover/evo-popover.module.js → esm2020/lib/components/evo-popover/evo-popover.module.mjs} +26 -26
  165. package/{esm2015/lib/components/evo-popover/index.js → esm2020/lib/components/evo-popover/index.mjs} +1 -1
  166. package/{esm2015/lib/components/evo-popover/public-api.js → esm2020/lib/components/evo-popover/public-api.mjs} +2 -2
  167. package/{esm2015/lib/components/evo-portal/evo-portal-outlet.class.js → esm2020/lib/components/evo-portal/evo-portal-outlet.class.mjs} +6 -6
  168. package/{esm2015/lib/components/evo-portal/evo-portal-outlet.directive.js → esm2020/lib/components/evo-portal/evo-portal-outlet.directive.mjs} +19 -19
  169. package/{esm2015/lib/components/evo-portal/evo-portal.module.js → esm2020/lib/components/evo-portal/evo-portal.module.mjs} +32 -32
  170. package/{esm2015/lib/components/evo-portal/evo-portal.service.js → esm2020/lib/components/evo-portal/evo-portal.service.mjs} +92 -92
  171. package/{esm2015/lib/components/evo-portal/index.js → esm2020/lib/components/evo-portal/index.mjs} +1 -1
  172. package/{esm2015/lib/components/evo-portal/public-api.js → esm2020/lib/components/evo-portal/public-api.mjs} +4 -4
  173. package/esm2020/lib/components/evo-radio/evo-radio.component.mjs +51 -0
  174. package/{esm2015/lib/components/evo-radio/evo-radio.module.js → esm2020/lib/components/evo-radio/evo-radio.module.mjs} +26 -26
  175. package/{esm2015/lib/components/evo-radio/index.js → esm2020/lib/components/evo-radio/index.mjs} +1 -1
  176. package/{esm2015/lib/components/evo-radio/public-api.js → esm2020/lib/components/evo-radio/public-api.mjs} +2 -2
  177. package/{esm2015/lib/components/evo-radio-group/evo-radio-group.component.js → esm2020/lib/components/evo-radio-group/evo-radio-group.component.mjs} +123 -128
  178. package/{esm2015/lib/components/evo-radio-group/evo-radio-group.module.js → esm2020/lib/components/evo-radio-group/evo-radio-group.module.mjs} +34 -34
  179. package/{esm2015/lib/components/evo-radio-group/index.js → esm2020/lib/components/evo-radio-group/index.mjs} +1 -1
  180. package/{esm2015/lib/components/evo-radio-group/public-api.js → esm2020/lib/components/evo-radio-group/public-api.mjs} +2 -2
  181. package/{esm2015/lib/components/evo-radio-group/typings/options.js → esm2020/lib/components/evo-radio-group/typings/options.mjs} +1 -1
  182. package/esm2020/lib/components/evo-radioshape/components/evo-radioshape.component.mjs +56 -0
  183. package/{esm2015/lib/components/evo-radioshape/evo-radioshape.module.js → esm2020/lib/components/evo-radioshape/evo-radioshape.module.mjs} +33 -33
  184. package/{esm2015/lib/components/evo-radioshape/index.js → esm2020/lib/components/evo-radioshape/index.mjs} +1 -1
  185. package/{esm2015/lib/components/evo-radioshape/public-api.js → esm2020/lib/components/evo-radioshape/public-api.mjs} +2 -2
  186. package/esm2020/lib/components/evo-segmented-bar/evo-segmented-bar/evo-segmented-bar.component.mjs +20 -0
  187. package/esm2020/lib/components/evo-segmented-bar/evo-segmented-bar-button/evo-segmented-bar-button.component.mjs +74 -0
  188. package/{esm2015/lib/components/evo-segmented-bar/evo-segmented-bar.module.js → esm2020/lib/components/evo-segmented-bar/evo-segmented-bar.module.mjs} +39 -39
  189. package/{esm2015/lib/components/evo-segmented-bar/index.js → esm2020/lib/components/evo-segmented-bar/index.mjs} +1 -1
  190. package/{esm2015/lib/components/evo-segmented-bar/public-api.js → esm2020/lib/components/evo-segmented-bar/public-api.mjs} +3 -3
  191. package/esm2020/lib/components/evo-select/evo-select.component.mjs +115 -0
  192. package/{esm2015/lib/components/evo-select/evo-select.module.js → esm2020/lib/components/evo-select/evo-select.module.mjs} +34 -34
  193. package/{esm2015/lib/components/evo-select/index.js → esm2020/lib/components/evo-select/index.mjs} +1 -1
  194. package/{esm2015/lib/components/evo-select/public-api.js → esm2020/lib/components/evo-select/public-api.mjs} +2 -2
  195. package/{esm2015/lib/components/evo-sidebar/enums/evo-sidebar-close-targets.js → esm2020/lib/components/evo-sidebar/enums/evo-sidebar-close-targets.mjs} +7 -7
  196. package/{esm2015/lib/components/evo-sidebar/enums/evo-sidebar-sizes.js → esm2020/lib/components/evo-sidebar/enums/evo-sidebar-sizes.mjs} +6 -6
  197. package/{esm2015/lib/components/evo-sidebar/enums/evo-sidebar-states.js → esm2020/lib/components/evo-sidebar/enums/evo-sidebar-states.mjs} +5 -5
  198. package/esm2020/lib/components/evo-sidebar/evo-sidebar-content/evo-sidebar-content.component.mjs +33 -0
  199. package/esm2020/lib/components/evo-sidebar/evo-sidebar-footer/evo-sidebar-footer.component.mjs +13 -0
  200. package/esm2020/lib/components/evo-sidebar/evo-sidebar-header/evo-sidebar-header.component.mjs +40 -0
  201. package/{esm2015/lib/components/evo-sidebar/evo-sidebar-portal.js → esm2020/lib/components/evo-sidebar/evo-sidebar-portal.mjs} +20 -20
  202. package/esm2020/lib/components/evo-sidebar/evo-sidebar.component.mjs +172 -0
  203. package/{esm2015/lib/components/evo-sidebar/evo-sidebar.module.js → esm2020/lib/components/evo-sidebar/evo-sidebar.module.mjs} +90 -90
  204. package/esm2020/lib/components/evo-sidebar/evo-sidebar.service.mjs +105 -0
  205. package/{esm2015/lib/components/evo-sidebar/index.js → esm2020/lib/components/evo-sidebar/index.mjs} +1 -1
  206. package/{esm2015/lib/components/evo-sidebar/interfaces.js → esm2020/lib/components/evo-sidebar/interfaces.mjs} +1 -1
  207. package/{esm2015/lib/components/evo-sidebar/public-api.js → esm2020/lib/components/evo-sidebar/public-api.mjs} +11 -11
  208. package/{esm2015/lib/components/evo-sidebar/sidebar-injection-token.js → esm2020/lib/components/evo-sidebar/sidebar-injection-token.mjs} +2 -2
  209. package/{esm2015/lib/components/evo-sidebar/tokens.js → esm2020/lib/components/evo-sidebar/tokens.mjs} +11 -11
  210. package/{esm2015/lib/components/evo-stepper/evo-stepper-events.js → esm2020/lib/components/evo-stepper/evo-stepper-events.mjs} +25 -25
  211. package/esm2020/lib/components/evo-stepper/evo-stepper-item/evo-stepper-item.component.mjs +31 -0
  212. package/esm2020/lib/components/evo-stepper/evo-stepper.component.mjs +67 -0
  213. package/{esm2015/lib/components/evo-stepper/evo-stepper.module.js → esm2020/lib/components/evo-stepper/evo-stepper.module.mjs} +27 -27
  214. package/{esm2015/lib/components/evo-stepper/index.js → esm2020/lib/components/evo-stepper/index.mjs} +1 -1
  215. package/{esm2015/lib/components/evo-stepper/public-api.js → esm2020/lib/components/evo-stepper/public-api.mjs} +3 -3
  216. package/esm2020/lib/components/evo-submenu/evo-submenu.component.mjs +154 -0
  217. package/{esm2015/lib/components/evo-submenu/evo-submenu.module.js → esm2020/lib/components/evo-submenu/evo-submenu.module.mjs} +36 -36
  218. package/{esm2015/lib/components/evo-submenu/index.js → esm2020/lib/components/evo-submenu/index.mjs} +1 -1
  219. package/{esm2015/lib/components/evo-submenu/public-api.js → esm2020/lib/components/evo-submenu/public-api.mjs} +2 -2
  220. package/esm2020/lib/components/evo-switcher/components/evo-switcher-item/evo-switcher-item.component.mjs +11 -0
  221. package/esm2020/lib/components/evo-switcher/evo-switcher.component.mjs +32 -0
  222. package/{esm2015/lib/components/evo-switcher/evo-switcher.module.js → esm2020/lib/components/evo-switcher/evo-switcher.module.mjs} +27 -27
  223. package/{esm2015/lib/components/evo-switcher/index.js → esm2020/lib/components/evo-switcher/index.mjs} +1 -1
  224. package/{esm2015/lib/components/evo-switcher/public-api.js → esm2020/lib/components/evo-switcher/public-api.mjs} +3 -3
  225. package/esm2020/lib/components/evo-table/evo-table/evo-table.component.mjs +67 -0
  226. package/esm2020/lib/components/evo-table/evo-table-column/evo-table-column.component.mjs +31 -0
  227. package/{esm2015/lib/components/evo-table/evo-table.module.js → esm2020/lib/components/evo-table/evo-table.module.mjs} +23 -23
  228. package/{esm2015/lib/components/evo-table/index.js → esm2020/lib/components/evo-table/index.mjs} +1 -1
  229. package/{esm2015/lib/components/evo-table/public-api.js → esm2020/lib/components/evo-table/public-api.mjs} +3 -3
  230. package/{esm2015/lib/components/evo-tabs/enums/evo-tabs-size.js → esm2020/lib/components/evo-tabs/enums/evo-tabs-size.mjs} +5 -5
  231. package/esm2020/lib/components/evo-tabs/evo-tab/evo-tab.component.mjs +88 -0
  232. package/{esm2015/lib/components/evo-tabs/evo-tab-content/evo-tab-content.component.js → esm2020/lib/components/evo-tabs/evo-tab-content/evo-tab-content.component.mjs} +37 -40
  233. package/{esm2015/lib/components/evo-tabs/evo-tab-state.collection.js → esm2020/lib/components/evo-tabs/evo-tab-state.collection.mjs} +42 -42
  234. package/{esm2015/lib/components/evo-tabs/evo-tabs-size.service.js → esm2020/lib/components/evo-tabs/evo-tabs-size.service.mjs} +24 -24
  235. package/{esm2015/lib/components/evo-tabs/evo-tabs.component.js → esm2020/lib/components/evo-tabs/evo-tabs.component.mjs} +83 -88
  236. package/{esm2015/lib/components/evo-tabs/evo-tabs.module.js → esm2020/lib/components/evo-tabs/evo-tabs.module.mjs} +30 -30
  237. package/{esm2015/lib/components/evo-tabs/evo-tabs.service.js → esm2020/lib/components/evo-tabs/evo-tabs.service.mjs} +67 -67
  238. package/{esm2015/lib/components/evo-tabs/index.js → esm2020/lib/components/evo-tabs/index.mjs} +1 -1
  239. package/{esm2015/lib/components/evo-tabs/public-api.js → esm2020/lib/components/evo-tabs/public-api.mjs} +8 -8
  240. package/esm2020/lib/components/evo-textarea/evo-textarea.component.mjs +79 -0
  241. package/{esm2015/lib/components/evo-textarea/evo-textarea.module.js → esm2020/lib/components/evo-textarea/evo-textarea.module.mjs} +37 -37
  242. package/{esm2015/lib/components/evo-textarea/index.js → esm2020/lib/components/evo-textarea/index.mjs} +1 -1
  243. package/{esm2015/lib/components/evo-textarea/public-api.js → esm2020/lib/components/evo-textarea/public-api.mjs} +2 -2
  244. package/esm2020/lib/components/evo-toast/evo-toast.component.mjs +98 -0
  245. package/{esm2015/lib/components/evo-toast/evo-toast.module.js → esm2020/lib/components/evo-toast/evo-toast.module.mjs} +45 -45
  246. package/{esm2015/lib/components/evo-toast/evo-toast.service.js → esm2020/lib/components/evo-toast/evo-toast.service.mjs} +49 -49
  247. package/{esm2015/lib/components/evo-toast/index.js → esm2020/lib/components/evo-toast/index.mjs} +1 -1
  248. package/{esm2015/lib/components/evo-toast/public-api.js → esm2020/lib/components/evo-toast/public-api.mjs} +3 -3
  249. package/esm2020/lib/components/evo-toggle/evo-toggle.component.mjs +64 -0
  250. package/{esm2015/lib/components/evo-toggle/evo-toggle.module.js → esm2020/lib/components/evo-toggle/evo-toggle.module.mjs} +30 -30
  251. package/{esm2015/lib/components/evo-toggle/index.js → esm2020/lib/components/evo-toggle/index.mjs} +1 -1
  252. package/{esm2015/lib/components/evo-toggle/public-api.js → esm2020/lib/components/evo-toggle/public-api.mjs} +2 -2
  253. package/esm2020/lib/components/evo-upload/evo-upload.component.mjs +287 -0
  254. package/{esm2015/lib/components/evo-upload/evo-upload.module.js → esm2020/lib/components/evo-upload/evo-upload.module.mjs} +59 -59
  255. package/{esm2015/lib/components/evo-upload/index.js → esm2020/lib/components/evo-upload/index.mjs} +1 -1
  256. package/{esm2015/lib/components/evo-upload/public-api.js → esm2020/lib/components/evo-upload/public-api.mjs} +2 -2
  257. package/{esm2015/lib/decorators/deprecate-method.decorator.js → esm2020/lib/decorators/deprecate-method.decorator.mjs} +7 -7
  258. package/{esm2015/lib/decorators/deprecate-variable.decorator.js → esm2020/lib/decorators/deprecate-variable.decorator.mjs} +16 -16
  259. package/{esm2015/lib/decorators/index.js → esm2020/lib/decorators/index.mjs} +1 -1
  260. package/{esm2015/lib/decorators/public-api.js → esm2020/lib/decorators/public-api.mjs} +2 -2
  261. package/{esm2015/lib/directives/evo-click-outside.directive.js → esm2020/lib/directives/evo-click-outside.directive.mjs} +40 -40
  262. package/esm2020/lib/directives/evo-is-expanded.directive.mjs +71 -0
  263. package/{esm2015/lib/directives/evo-let/evo-let.directive.js → esm2020/lib/directives/evo-let/evo-let.directive.mjs} +36 -36
  264. package/{esm2015/lib/directives/evo-ui-class.directive.js → esm2020/lib/directives/evo-ui-class.directive.mjs} +159 -159
  265. package/{esm2015/lib/directives/index.js → esm2020/lib/directives/index.mjs} +1 -1
  266. package/{esm2015/lib/directives/public-api.js → esm2020/lib/directives/public-api.mjs} +4 -4
  267. package/{esm2015/lib/evo-ui-kit.module.js → esm2020/lib/evo-ui-kit.module.mjs} +65 -65
  268. package/{esm2015/lib/operators/enter-zone.operator.js → esm2020/lib/operators/enter-zone.operator.mjs} +8 -8
  269. package/{esm2015/lib/operators/index.js → esm2020/lib/operators/index.mjs} +1 -1
  270. package/{esm2015/lib/operators/public-api.js → esm2020/lib/operators/public-api.mjs} +1 -1
  271. package/{esm2015/lib/pipes/declination.pipe.js → esm2020/lib/pipes/declination.pipe.mjs} +40 -40
  272. package/{esm2015/lib/pipes/evo-pipes.module.js → esm2020/lib/pipes/evo-pipes.module.mjs} +17 -17
  273. package/{esm2015/lib/pipes/index.js → esm2020/lib/pipes/index.mjs} +1 -1
  274. package/{esm2015/lib/pipes/public-api.js → esm2020/lib/pipes/public-api.mjs} +3 -3
  275. package/{esm2015/lib/pipes/safe-html.pipe.js → esm2020/lib/pipes/safe-html.pipe.mjs} +18 -18
  276. package/{esm2015/lib/services/evo-expanded.service.js → esm2020/lib/services/evo-expanded.service.mjs} +23 -23
  277. package/{esm2015/lib/services/index.js → esm2020/lib/services/index.mjs} +1 -1
  278. package/{esm2015/lib/services/public-api.js → esm2020/lib/services/public-api.mjs} +1 -1
  279. package/{esm2015/lib/services/window.service.js → esm2020/lib/services/window.service.mjs} +49 -49
  280. package/{esm2015/public_api.js → esm2020/public_api.mjs} +72 -72
  281. package/evotor-dev-ui-kit.d.ts +5 -5
  282. package/fesm2015/{evotor-dev-ui-kit-icons-category.js → evotor-dev-ui-kit-icons-category.mjs} +63 -63
  283. package/fesm2015/evotor-dev-ui-kit-icons-category.mjs.map +1 -0
  284. package/fesm2015/{evotor-dev-ui-kit-icons-emotions.js → evotor-dev-ui-kit-icons-emotions.mjs} +19 -19
  285. package/fesm2015/evotor-dev-ui-kit-icons-emotions.mjs.map +1 -0
  286. package/fesm2015/{evotor-dev-ui-kit-icons-header.js → evotor-dev-ui-kit-icons-header.mjs} +29 -29
  287. package/fesm2015/evotor-dev-ui-kit-icons-header.mjs.map +1 -0
  288. package/fesm2015/{evotor-dev-ui-kit-icons-info.js → evotor-dev-ui-kit-icons-info.mjs} +41 -41
  289. package/fesm2015/evotor-dev-ui-kit-icons-info.mjs.map +1 -0
  290. package/fesm2015/{evotor-dev-ui-kit-icons-navigation.js → evotor-dev-ui-kit-icons-navigation.mjs} +57 -57
  291. package/fesm2015/evotor-dev-ui-kit-icons-navigation.mjs.map +1 -0
  292. package/fesm2015/{evotor-dev-ui-kit-icons-side-menu.js → evotor-dev-ui-kit-icons-side-menu.mjs} +65 -65
  293. package/fesm2015/evotor-dev-ui-kit-icons-side-menu.mjs.map +1 -0
  294. package/fesm2015/{evotor-dev-ui-kit-icons-system.js → evotor-dev-ui-kit-icons-system.mjs} +369 -369
  295. package/fesm2015/evotor-dev-ui-kit-icons-system.mjs.map +1 -0
  296. package/fesm2015/{evotor-dev-ui-kit-icons.js → evotor-dev-ui-kit-icons.mjs} +625 -625
  297. package/fesm2015/evotor-dev-ui-kit-icons.mjs.map +1 -0
  298. package/fesm2015/evotor-dev-ui-kit.mjs +7286 -0
  299. package/fesm2015/evotor-dev-ui-kit.mjs.map +1 -0
  300. package/fesm2020/evotor-dev-ui-kit-icons-category.mjs +68 -0
  301. package/fesm2020/evotor-dev-ui-kit-icons-category.mjs.map +1 -0
  302. package/fesm2020/evotor-dev-ui-kit-icons-emotions.mjs +24 -0
  303. package/fesm2020/evotor-dev-ui-kit-icons-emotions.mjs.map +1 -0
  304. package/fesm2020/evotor-dev-ui-kit-icons-header.mjs +34 -0
  305. package/fesm2020/evotor-dev-ui-kit-icons-header.mjs.map +1 -0
  306. package/fesm2020/evotor-dev-ui-kit-icons-info.mjs +46 -0
  307. package/fesm2020/evotor-dev-ui-kit-icons-info.mjs.map +1 -0
  308. package/fesm2020/evotor-dev-ui-kit-icons-navigation.mjs +62 -0
  309. package/fesm2020/evotor-dev-ui-kit-icons-navigation.mjs.map +1 -0
  310. package/fesm2020/evotor-dev-ui-kit-icons-side-menu.mjs +70 -0
  311. package/fesm2020/evotor-dev-ui-kit-icons-side-menu.mjs.map +1 -0
  312. package/fesm2020/evotor-dev-ui-kit-icons-system.mjs +374 -0
  313. package/fesm2020/evotor-dev-ui-kit-icons-system.mjs.map +1 -0
  314. package/fesm2020/evotor-dev-ui-kit-icons.mjs +644 -0
  315. package/fesm2020/evotor-dev-ui-kit-icons.mjs.map +1 -0
  316. package/fesm2020/evotor-dev-ui-kit.mjs +7267 -0
  317. package/fesm2020/evotor-dev-ui-kit.mjs.map +1 -0
  318. package/icons/category/evotor-dev-ui-kit-icons-category.d.ts +5 -5
  319. package/icons/category/index.d.ts +59 -59
  320. package/icons/category/package.json +5 -5
  321. package/icons/emotions/evotor-dev-ui-kit-icons-emotions.d.ts +5 -5
  322. package/icons/emotions/index.d.ts +15 -15
  323. package/icons/emotions/package.json +5 -5
  324. package/icons/evotor-dev-ui-kit-icons.d.ts +5 -5
  325. package/icons/header/evotor-dev-ui-kit-icons-header.d.ts +5 -5
  326. package/icons/header/index.d.ts +25 -25
  327. package/icons/header/package.json +5 -5
  328. package/icons/index.d.ts +319 -319
  329. package/icons/info/evotor-dev-ui-kit-icons-info.d.ts +5 -5
  330. package/icons/info/index.d.ts +37 -37
  331. package/icons/info/package.json +5 -5
  332. package/icons/navigation/evotor-dev-ui-kit-icons-navigation.d.ts +5 -5
  333. package/icons/navigation/index.d.ts +53 -53
  334. package/icons/navigation/package.json +5 -5
  335. package/icons/package.json +5 -5
  336. package/icons/side-menu/evotor-dev-ui-kit-icons-side-menu.d.ts +5 -5
  337. package/icons/side-menu/index.d.ts +61 -61
  338. package/icons/side-menu/package.json +5 -5
  339. package/icons/system/evotor-dev-ui-kit-icons-system.d.ts +5 -5
  340. package/icons/system/index.d.ts +365 -365
  341. package/icons/system/package.json +5 -5
  342. package/lib/common/Serializable.d.ts +3 -3
  343. package/lib/common/animations/expand.animation.d.ts +1 -1
  344. package/lib/common/animations/index.d.ts +3 -3
  345. package/lib/common/animations/sidebar.animation.d.ts +2 -2
  346. package/lib/common/animations/skip-initial-render.animation.d.ts +1 -1
  347. package/lib/common/collection/evo-collection-fabric.d.ts +4 -4
  348. package/lib/common/collection/evo-collection.d.ts +3 -3
  349. package/lib/common/collection/index.d.ts +2 -2
  350. package/lib/common/constants/css-breakpoints.d.ts +8 -8
  351. package/lib/common/constants/view-breakpoint-streams.d.ts +9 -9
  352. package/lib/common/evo-base-control.d.ts +21 -21
  353. package/lib/common/evo-control-state-manager/evo-control-state-manager.d.ts +7 -7
  354. package/lib/common/evo-control-state-manager/evo-control-state.interface.d.ts +5 -5
  355. package/lib/common/evo-control-state-manager/evo-control-states.enum.d.ts +4 -4
  356. package/lib/common/form-helper/form-helper.d.ts +5 -5
  357. package/lib/common/types/evo-color.d.ts +1 -1
  358. package/lib/common/types/evo-size.d.ts +1 -1
  359. package/lib/common/types/index.d.ts +2 -2
  360. package/lib/components/evo-accordion/evo-accordion-content/evo-accordion-content.component.d.ts +11 -11
  361. package/lib/components/evo-accordion/evo-accordion-panel/evo-accordion-panel.component.d.ts +9 -9
  362. package/lib/components/evo-accordion/evo-accordion-title/evo-accordion-title.component.d.ts +11 -11
  363. package/lib/components/evo-accordion/evo-accordion.component.d.ts +9 -9
  364. package/lib/components/evo-accordion/evo-accordion.module.d.ts +13 -13
  365. package/lib/components/evo-accordion/index.d.ts +1 -1
  366. package/lib/components/evo-accordion/public-api.d.ts +5 -5
  367. package/lib/components/evo-alert/evo-alert.component.d.ts +38 -38
  368. package/lib/components/evo-alert/evo-alert.module.d.ts +9 -9
  369. package/lib/components/evo-alert/index.d.ts +1 -1
  370. package/lib/components/evo-alert/public-api.d.ts +2 -2
  371. package/lib/components/evo-autocomplete/components/evo-autocomplete.component.d.ts +115 -115
  372. package/lib/components/evo-autocomplete/components/templates/evo-autocomplete-default-option.component.d.ts +16 -16
  373. package/lib/components/evo-autocomplete/evo-autocomplete.module.d.ts +15 -15
  374. package/lib/components/evo-autocomplete/helpers/switch-query-to-list.d.ts +2 -2
  375. package/lib/components/evo-autocomplete/index.d.ts +1 -1
  376. package/lib/components/evo-autocomplete/models/DaDataParty.d.ts +37 -37
  377. package/lib/components/evo-autocomplete/models/dadata.model.d.ts +320 -320
  378. package/lib/components/evo-autocomplete/public-api.d.ts +6 -6
  379. package/lib/components/evo-autocomplete/types/evo-autocomplete-size.d.ts +1 -1
  380. package/lib/components/evo-badge/evo-badge.component.d.ts +12 -12
  381. package/lib/components/evo-badge/evo-badge.module.d.ts +9 -9
  382. package/lib/components/evo-badge/index.d.ts +2 -2
  383. package/lib/components/evo-badge/public-api.d.ts +2 -2
  384. package/lib/components/evo-badge/types/evo-badge-color.d.ts +2 -2
  385. package/lib/components/evo-badge/types/evo-badge-size.d.ts +2 -2
  386. package/lib/components/evo-badge/types/index.d.ts +2 -2
  387. package/lib/components/evo-banner/evo-banner.component.d.ts +46 -46
  388. package/lib/components/evo-banner/evo-banner.module.d.ts +9 -9
  389. package/lib/components/evo-banner/index.d.ts +1 -1
  390. package/lib/components/evo-banner/public-api.d.ts +2 -2
  391. package/lib/components/evo-button/evo-button.component.d.ts +33 -33
  392. package/lib/components/evo-button/evo-button.module.d.ts +9 -9
  393. package/lib/components/evo-button/index.d.ts +1 -1
  394. package/lib/components/evo-button/public-api.d.ts +2 -2
  395. package/lib/components/evo-checkbox/evo-checkbox.component.d.ts +26 -26
  396. package/lib/components/evo-checkbox/evo-checkbox.module.d.ts +11 -11
  397. package/lib/components/evo-checkbox/index.d.ts +1 -1
  398. package/lib/components/evo-checkbox/public-api.d.ts +2 -2
  399. package/lib/components/evo-chip/evo-chip.component.d.ts +45 -45
  400. package/lib/components/evo-chip/evo-chip.module.d.ts +11 -11
  401. package/lib/components/evo-chip/index.d.ts +1 -1
  402. package/lib/components/evo-chip/public-api.d.ts +2 -2
  403. package/lib/components/evo-control-error/evo-control-error.component.d.ts +14 -14
  404. package/lib/components/evo-control-error/evo-control-error.module.d.ts +10 -10
  405. package/lib/components/evo-control-error/index.d.ts +1 -1
  406. package/lib/components/evo-control-error/public-api.d.ts +2 -2
  407. package/lib/components/evo-control-label/evo-control-label.component.d.ts +9 -9
  408. package/lib/components/evo-control-label/evo-control-label.module.d.ts +8 -8
  409. package/lib/components/evo-control-label/index.d.ts +1 -1
  410. package/lib/components/evo-control-label/public-api.d.ts +2 -2
  411. package/lib/components/evo-counter/evo-counter.component.d.ts +16 -16
  412. package/lib/components/evo-counter/evo-counter.module.d.ts +9 -9
  413. package/lib/components/evo-counter/index.d.ts +1 -1
  414. package/lib/components/evo-counter/public-api.d.ts +2 -2
  415. package/lib/components/evo-datepicker/evo-datepicker.component.d.ts +174 -174
  416. package/lib/components/evo-datepicker/evo-datepicker.module.d.ts +11 -11
  417. package/lib/components/evo-datepicker/flatpickr-options.interface.d.ts +10 -10
  418. package/lib/components/evo-datepicker/index.d.ts +1 -1
  419. package/lib/components/evo-datepicker/public-api.d.ts +2 -2
  420. package/lib/components/evo-datepicker/templates/index.d.ts +16 -16
  421. package/lib/components/evo-dropdown/evo-dropdown-origin.directive.d.ts +15 -15
  422. package/lib/components/evo-dropdown/evo-dropdown-position-description.d.ts +3 -3
  423. package/lib/components/evo-dropdown/evo-dropdown.component.d.ts +34 -34
  424. package/lib/components/evo-dropdown/evo-dropdown.module.d.ts +10 -10
  425. package/lib/components/evo-dropdown/index.d.ts +1 -1
  426. package/lib/components/evo-dropdown/public-api.d.ts +4 -4
  427. package/lib/components/evo-dropdown/types/evo-dropdown-positions.d.ts +1 -1
  428. package/lib/components/evo-icon/classes/evo-icons-library.d.ts +11 -11
  429. package/lib/components/evo-icon/evo-icon.component.d.ts +20 -20
  430. package/lib/components/evo-icon/evo-icon.module.d.ts +16 -16
  431. package/lib/components/evo-icon/index.d.ts +1 -1
  432. package/lib/components/evo-icon/interfaces/icons-category.d.ts +5 -5
  433. package/lib/components/evo-icon/interfaces/icons-source.d.ts +3 -3
  434. package/lib/components/evo-icon/public-api.d.ts +5 -5
  435. package/lib/components/evo-icon-button/evo-icon-button.component.d.ts +23 -23
  436. package/lib/components/evo-icon-button/evo-icon-button.module.d.ts +8 -8
  437. package/lib/components/evo-icon-button/index.d.ts +1 -1
  438. package/lib/components/evo-icon-button/public-api.d.ts +2 -2
  439. package/lib/components/evo-icon-button/types/evo-icon-button-size.d.ts +2 -2
  440. package/lib/components/evo-icon-button/types/evo-icon-button-theme.d.ts +1 -1
  441. package/lib/components/evo-icon-number/components/evo-icon-number/evo-icon-number.component.d.ts +6 -6
  442. package/lib/components/evo-icon-number/evo-icon-number.module.d.ts +8 -8
  443. package/lib/components/evo-icon-number/index.d.ts +1 -1
  444. package/lib/components/evo-icon-number/public-api.d.ts +2 -2
  445. package/lib/components/evo-input/evo-input-icon/evo-input-icon.directive.d.ts +5 -5
  446. package/lib/components/evo-input/evo-input.component.d.ts +93 -93
  447. package/lib/components/evo-input/evo-input.module.d.ts +14 -14
  448. package/lib/components/evo-input/index.d.ts +1 -1
  449. package/lib/components/evo-input/public-api.d.ts +3 -3
  450. package/lib/components/evo-input-contenteditable/evo-input-contenteditable.component.d.ts +44 -44
  451. package/lib/components/evo-input-contenteditable/evo-input-contenteditable.module.d.ts +10 -10
  452. package/lib/components/evo-input-contenteditable/index.d.ts +1 -1
  453. package/lib/components/evo-input-contenteditable/public-api.d.ts +2 -2
  454. package/lib/components/evo-input-contenteditable/utils/clear-multiline.d.ts +1 -1
  455. package/lib/components/evo-loader/evo-circular-loader.component.d.ts +8 -8
  456. package/lib/components/evo-loader/evo-loader.component.d.ts +14 -14
  457. package/lib/components/evo-loader/evo-loader.module.d.ts +10 -10
  458. package/lib/components/evo-loader/index.d.ts +1 -1
  459. package/lib/components/evo-loader/public-api.d.ts +3 -3
  460. package/lib/components/evo-modal/evo-modal.component.d.ts +37 -37
  461. package/lib/components/evo-modal/evo-modal.module.d.ts +10 -10
  462. package/lib/components/evo-modal/evo-modal.service.d.ts +22 -22
  463. package/lib/components/evo-modal/index.d.ts +1 -1
  464. package/lib/components/evo-modal/public-api.d.ts +3 -3
  465. package/lib/components/evo-navbar/evo-navbar-item/evo-navbar-item.component.d.ts +21 -21
  466. package/lib/components/evo-navbar/evo-navbar.component.d.ts +18 -18
  467. package/lib/components/evo-navbar/evo-navbar.module.d.ts +12 -12
  468. package/lib/components/evo-navbar/index.d.ts +1 -1
  469. package/lib/components/evo-navbar/interfaces/nav-item-main-info.d.ts +5 -5
  470. package/lib/components/evo-navbar/interfaces/nav-item-router-link.d.ts +14 -14
  471. package/lib/components/evo-navbar/interfaces/nav-item.href.d.ts +4 -4
  472. package/lib/components/evo-navbar/public-api.d.ts +7 -7
  473. package/lib/components/evo-navbar/types/nav-item.d.ts +4 -4
  474. package/lib/components/evo-note/evo-note.component.d.ts +13 -13
  475. package/lib/components/evo-note/evo-note.module.d.ts +10 -10
  476. package/lib/components/evo-note/index.d.ts +1 -1
  477. package/lib/components/evo-note/public.api.d.ts +3 -3
  478. package/lib/components/evo-note/types/evo-note-type.d.ts +1 -1
  479. package/lib/components/evo-paginator/evo-paginator.component.d.ts +26 -26
  480. package/lib/components/evo-paginator/evo-paginator.module.d.ts +8 -8
  481. package/lib/components/evo-paginator/index.d.ts +1 -1
  482. package/lib/components/evo-paginator/public-api.d.ts +2 -2
  483. package/lib/components/evo-plus-minus/evo-plus-minus.component.d.ts +13 -13
  484. package/lib/components/evo-plus-minus/evo-plus-minus.module.d.ts +8 -8
  485. package/lib/components/evo-plus-minus/index.d.ts +1 -1
  486. package/lib/components/evo-plus-minus/public-api.d.ts +2 -2
  487. package/lib/components/evo-popover/evo-popover.component.d.ts +43 -43
  488. package/lib/components/evo-popover/evo-popover.module.d.ts +9 -9
  489. package/lib/components/evo-popover/index.d.ts +1 -1
  490. package/lib/components/evo-popover/public-api.d.ts +2 -2
  491. package/lib/components/evo-portal/evo-portal-outlet.class.d.ts +6 -6
  492. package/lib/components/evo-portal/evo-portal-outlet.directive.d.ts +10 -10
  493. package/lib/components/evo-portal/evo-portal.module.d.ts +8 -8
  494. package/lib/components/evo-portal/evo-portal.service.d.ts +27 -27
  495. package/lib/components/evo-portal/index.d.ts +1 -1
  496. package/lib/components/evo-portal/public-api.d.ts +4 -4
  497. package/lib/components/evo-radio/evo-radio.component.d.ts +18 -18
  498. package/lib/components/evo-radio/evo-radio.module.d.ts +9 -9
  499. package/lib/components/evo-radio/index.d.ts +1 -1
  500. package/lib/components/evo-radio/public-api.d.ts +2 -2
  501. package/lib/components/evo-radio-group/evo-radio-group.component.d.ts +56 -56
  502. package/lib/components/evo-radio-group/evo-radio-group.module.d.ts +11 -11
  503. package/lib/components/evo-radio-group/index.d.ts +1 -1
  504. package/lib/components/evo-radio-group/public-api.d.ts +2 -2
  505. package/lib/components/evo-radio-group/typings/options.d.ts +6 -6
  506. package/lib/components/evo-radioshape/components/evo-radioshape.component.d.ts +19 -19
  507. package/lib/components/evo-radioshape/evo-radioshape.module.d.ts +9 -9
  508. package/lib/components/evo-radioshape/index.d.ts +1 -1
  509. package/lib/components/evo-radioshape/public-api.d.ts +2 -2
  510. package/lib/components/evo-segmented-bar/evo-segmented-bar/evo-segmented-bar.component.d.ts +10 -10
  511. package/lib/components/evo-segmented-bar/evo-segmented-bar-button/evo-segmented-bar-button.component.d.ts +22 -22
  512. package/lib/components/evo-segmented-bar/evo-segmented-bar.module.d.ts +11 -11
  513. package/lib/components/evo-segmented-bar/index.d.ts +1 -1
  514. package/lib/components/evo-segmented-bar/public-api.d.ts +3 -3
  515. package/lib/components/evo-select/evo-select.component.d.ts +37 -37
  516. package/lib/components/evo-select/evo-select.module.d.ts +11 -11
  517. package/lib/components/evo-select/index.d.ts +1 -1
  518. package/lib/components/evo-select/public-api.d.ts +2 -2
  519. package/lib/components/evo-sidebar/enums/evo-sidebar-close-targets.d.ts +6 -6
  520. package/lib/components/evo-sidebar/enums/evo-sidebar-sizes.d.ts +5 -5
  521. package/lib/components/evo-sidebar/enums/evo-sidebar-states.d.ts +4 -4
  522. package/lib/components/evo-sidebar/evo-sidebar-content/evo-sidebar-content.component.d.ts +12 -12
  523. package/lib/components/evo-sidebar/evo-sidebar-footer/evo-sidebar-footer.component.d.ts +5 -5
  524. package/lib/components/evo-sidebar/evo-sidebar-header/evo-sidebar-header.component.d.ts +13 -13
  525. package/lib/components/evo-sidebar/evo-sidebar-portal.d.ts +13 -13
  526. package/lib/components/evo-sidebar/evo-sidebar.component.d.ts +42 -42
  527. package/lib/components/evo-sidebar/evo-sidebar.module.d.ts +17 -17
  528. package/lib/components/evo-sidebar/evo-sidebar.service.d.ts +26 -26
  529. package/lib/components/evo-sidebar/index.d.ts +1 -1
  530. package/lib/components/evo-sidebar/interfaces.d.ts +23 -23
  531. package/lib/components/evo-sidebar/public-api.d.ts +11 -11
  532. package/lib/components/evo-sidebar/sidebar-injection-token.d.ts +2 -2
  533. package/lib/components/evo-sidebar/tokens.d.ts +7 -7
  534. package/lib/components/evo-stepper/evo-stepper-events.d.ts +12 -12
  535. package/lib/components/evo-stepper/evo-stepper-item/evo-stepper-item.component.d.ts +13 -13
  536. package/lib/components/evo-stepper/evo-stepper.component.d.ts +27 -27
  537. package/lib/components/evo-stepper/evo-stepper.module.d.ts +10 -10
  538. package/lib/components/evo-stepper/index.d.ts +1 -1
  539. package/lib/components/evo-stepper/public-api.d.ts +3 -3
  540. package/lib/components/evo-submenu/evo-submenu.component.d.ts +49 -49
  541. package/lib/components/evo-submenu/evo-submenu.module.d.ts +11 -11
  542. package/lib/components/evo-submenu/index.d.ts +1 -1
  543. package/lib/components/evo-submenu/public-api.d.ts +2 -2
  544. package/lib/components/evo-switcher/components/evo-switcher-item/evo-switcher-item.component.d.ts +9 -9
  545. package/lib/components/evo-switcher/evo-switcher.component.d.ts +14 -14
  546. package/lib/components/evo-switcher/evo-switcher.module.d.ts +10 -10
  547. package/lib/components/evo-switcher/index.d.ts +1 -1
  548. package/lib/components/evo-switcher/public-api.d.ts +3 -3
  549. package/lib/components/evo-table/evo-table/evo-table.component.d.ts +35 -35
  550. package/lib/components/evo-table/evo-table-column/evo-table-column.component.d.ts +12 -12
  551. package/lib/components/evo-table/evo-table.module.d.ts +9 -9
  552. package/lib/components/evo-table/index.d.ts +1 -1
  553. package/lib/components/evo-table/public-api.d.ts +3 -3
  554. package/lib/components/evo-tabs/enums/evo-tabs-size.d.ts +4 -4
  555. package/lib/components/evo-tabs/evo-tab/evo-tab.component.d.ts +35 -35
  556. package/lib/components/evo-tabs/evo-tab-content/evo-tab-content.component.d.ts +16 -16
  557. package/lib/components/evo-tabs/evo-tab-state.collection.d.ts +15 -15
  558. package/lib/components/evo-tabs/evo-tabs-size.service.d.ts +12 -12
  559. package/lib/components/evo-tabs/evo-tabs.component.d.ts +22 -22
  560. package/lib/components/evo-tabs/evo-tabs.module.d.ts +11 -11
  561. package/lib/components/evo-tabs/evo-tabs.service.d.ts +19 -19
  562. package/lib/components/evo-tabs/index.d.ts +1 -1
  563. package/lib/components/evo-tabs/public-api.d.ts +8 -8
  564. package/lib/components/evo-textarea/evo-textarea.component.d.ts +25 -25
  565. package/lib/components/evo-textarea/evo-textarea.module.d.ts +11 -11
  566. package/lib/components/evo-textarea/index.d.ts +1 -1
  567. package/lib/components/evo-textarea/public-api.d.ts +2 -2
  568. package/lib/components/evo-toast/evo-toast.component.d.ts +23 -23
  569. package/lib/components/evo-toast/evo-toast.module.d.ts +10 -10
  570. package/lib/components/evo-toast/evo-toast.service.d.ts +22 -22
  571. package/lib/components/evo-toast/index.d.ts +1 -1
  572. package/lib/components/evo-toast/public-api.d.ts +3 -3
  573. package/lib/components/evo-toggle/evo-toggle.component.d.ts +20 -20
  574. package/lib/components/evo-toggle/evo-toggle.module.d.ts +10 -10
  575. package/lib/components/evo-toggle/index.d.ts +1 -1
  576. package/lib/components/evo-toggle/public-api.d.ts +2 -2
  577. package/lib/components/evo-upload/evo-upload.component.d.ts +65 -65
  578. package/lib/components/evo-upload/evo-upload.module.d.ts +13 -13
  579. package/lib/components/evo-upload/index.d.ts +1 -1
  580. package/lib/components/evo-upload/public-api.d.ts +2 -2
  581. package/lib/decorators/deprecate-method.decorator.d.ts +1 -1
  582. package/lib/decorators/deprecate-variable.decorator.d.ts +1 -1
  583. package/lib/decorators/index.d.ts +1 -1
  584. package/lib/decorators/public-api.d.ts +2 -2
  585. package/lib/directives/evo-click-outside.directive.d.ts +12 -12
  586. package/lib/directives/evo-is-expanded.directive.d.ts +19 -19
  587. package/lib/directives/evo-let/evo-let.directive.d.ts +17 -17
  588. package/lib/directives/evo-ui-class.directive.d.ts +61 -61
  589. package/lib/directives/index.d.ts +1 -1
  590. package/lib/directives/public-api.d.ts +4 -4
  591. package/lib/evo-ui-kit.module.d.ts +16 -16
  592. package/lib/operators/enter-zone.operator.d.ts +3 -3
  593. package/lib/operators/index.d.ts +1 -1
  594. package/lib/operators/public-api.d.ts +1 -1
  595. package/lib/pipes/declination.pipe.d.ts +7 -7
  596. package/lib/pipes/evo-pipes.module.d.ts +8 -8
  597. package/lib/pipes/index.d.ts +1 -1
  598. package/lib/pipes/public-api.d.ts +3 -3
  599. package/lib/pipes/safe-html.pipe.d.ts +10 -10
  600. package/lib/services/evo-expanded.service.d.ts +11 -11
  601. package/lib/services/index.d.ts +1 -1
  602. package/lib/services/public-api.d.ts +1 -1
  603. package/lib/services/window.service.d.ts +14 -14
  604. package/package.json +94 -38
  605. package/public_api.d.ts +62 -62
  606. package/styles/components/evo-chip.scss +2 -2
  607. package/styles/components/evo-dropdown.scss +1 -1
  608. package/styles/mixins.scss +2 -3
  609. package/styles/variables.scss +13 -16
  610. package/bundles/evotor-dev-ui-kit-icons-category.umd.js +0 -105
  611. package/bundles/evotor-dev-ui-kit-icons-category.umd.js.map +0 -1
  612. package/bundles/evotor-dev-ui-kit-icons-emotions.umd.js +0 -39
  613. package/bundles/evotor-dev-ui-kit-icons-emotions.umd.js.map +0 -1
  614. package/bundles/evotor-dev-ui-kit-icons-header.umd.js +0 -54
  615. package/bundles/evotor-dev-ui-kit-icons-header.umd.js.map +0 -1
  616. package/bundles/evotor-dev-ui-kit-icons-info.umd.js +0 -72
  617. package/bundles/evotor-dev-ui-kit-icons-info.umd.js.map +0 -1
  618. package/bundles/evotor-dev-ui-kit-icons-navigation.umd.js +0 -96
  619. package/bundles/evotor-dev-ui-kit-icons-navigation.umd.js.map +0 -1
  620. package/bundles/evotor-dev-ui-kit-icons-side-menu.umd.js +0 -108
  621. package/bundles/evotor-dev-ui-kit-icons-side-menu.umd.js.map +0 -1
  622. package/bundles/evotor-dev-ui-kit-icons-system.umd.js +0 -564
  623. package/bundles/evotor-dev-ui-kit-icons-system.umd.js.map +0 -1
  624. package/bundles/evotor-dev-ui-kit-icons.umd.js +0 -654
  625. package/bundles/evotor-dev-ui-kit-icons.umd.js.map +0 -1
  626. package/bundles/evotor-dev-ui-kit.umd.js +0 -8818
  627. package/bundles/evotor-dev-ui-kit.umd.js.map +0 -1
  628. package/esm2015/lib/common/evo-base-control.js +0 -47
  629. package/esm2015/lib/components/evo-accordion/evo-accordion-content/evo-accordion-content.component.js +0 -36
  630. package/esm2015/lib/components/evo-accordion/evo-accordion-panel/evo-accordion-panel.component.js +0 -24
  631. package/esm2015/lib/components/evo-accordion/evo-accordion-title/evo-accordion-title.component.js +0 -62
  632. package/esm2015/lib/components/evo-accordion/evo-accordion.component.js +0 -23
  633. package/esm2015/lib/components/evo-alert/evo-alert.component.js +0 -83
  634. package/esm2015/lib/components/evo-autocomplete/components/evo-autocomplete.component.js +0 -365
  635. package/esm2015/lib/components/evo-autocomplete/components/templates/evo-autocomplete-default-option.component.js +0 -49
  636. package/esm2015/lib/components/evo-autocomplete/helpers/switch-query-to-list.js +0 -6
  637. package/esm2015/lib/components/evo-badge/evo-badge.component.js +0 -45
  638. package/esm2015/lib/components/evo-banner/evo-banner.component.js +0 -116
  639. package/esm2015/lib/components/evo-button/evo-button.component.js +0 -87
  640. package/esm2015/lib/components/evo-checkbox/evo-checkbox.component.js +0 -87
  641. package/esm2015/lib/components/evo-chip/evo-chip.component.js +0 -138
  642. package/esm2015/lib/components/evo-control-error/evo-control-error.component.js +0 -43
  643. package/esm2015/lib/components/evo-control-label/evo-control-label.component.js +0 -23
  644. package/esm2015/lib/components/evo-counter/evo-counter.component.js +0 -43
  645. package/esm2015/lib/components/evo-datepicker/evo-datepicker.component.js +0 -557
  646. package/esm2015/lib/components/evo-dropdown/evo-dropdown.component.js +0 -112
  647. package/esm2015/lib/components/evo-icon/evo-icon.component.js +0 -57
  648. package/esm2015/lib/components/evo-icon-button/evo-icon-button.component.js +0 -67
  649. package/esm2015/lib/components/evo-icon-number/components/evo-icon-number/evo-icon-number.component.js +0 -19
  650. package/esm2015/lib/components/evo-input/evo-input.component.js +0 -363
  651. package/esm2015/lib/components/evo-input-contenteditable/evo-input-contenteditable.component.js +0 -157
  652. package/esm2015/lib/components/evo-input-contenteditable/utils/clear-multiline.js +0 -7
  653. package/esm2015/lib/components/evo-loader/evo-circular-loader.component.js +0 -23
  654. package/esm2015/lib/components/evo-loader/evo-loader.component.js +0 -28
  655. package/esm2015/lib/components/evo-modal/evo-modal.component.js +0 -122
  656. package/esm2015/lib/components/evo-navbar/evo-navbar-item/evo-navbar-item.component.js +0 -63
  657. package/esm2015/lib/components/evo-navbar/evo-navbar.component.js +0 -51
  658. package/esm2015/lib/components/evo-note/evo-note.component.js +0 -45
  659. package/esm2015/lib/components/evo-paginator/evo-paginator.component.js +0 -114
  660. package/esm2015/lib/components/evo-plus-minus/evo-plus-minus.component.js +0 -30
  661. package/esm2015/lib/components/evo-popover/evo-popover.component.js +0 -177
  662. package/esm2015/lib/components/evo-radio/evo-radio.component.js +0 -56
  663. package/esm2015/lib/components/evo-radioshape/components/evo-radioshape.component.js +0 -61
  664. package/esm2015/lib/components/evo-segmented-bar/evo-segmented-bar/evo-segmented-bar.component.js +0 -24
  665. package/esm2015/lib/components/evo-segmented-bar/evo-segmented-bar-button/evo-segmented-bar-button.component.js +0 -79
  666. package/esm2015/lib/components/evo-select/evo-select.component.js +0 -121
  667. package/esm2015/lib/components/evo-sidebar/evo-sidebar-content/evo-sidebar-content.component.js +0 -38
  668. package/esm2015/lib/components/evo-sidebar/evo-sidebar-footer/evo-sidebar-footer.component.js +0 -19
  669. package/esm2015/lib/components/evo-sidebar/evo-sidebar-header/evo-sidebar-header.component.js +0 -47
  670. package/esm2015/lib/components/evo-sidebar/evo-sidebar.component.js +0 -174
  671. package/esm2015/lib/components/evo-sidebar/evo-sidebar.service.js +0 -102
  672. package/esm2015/lib/components/evo-stepper/evo-stepper-item/evo-stepper-item.component.js +0 -35
  673. package/esm2015/lib/components/evo-stepper/evo-stepper.component.js +0 -72
  674. package/esm2015/lib/components/evo-submenu/evo-submenu.component.js +0 -160
  675. package/esm2015/lib/components/evo-switcher/components/evo-switcher-item/evo-switcher-item.component.js +0 -15
  676. package/esm2015/lib/components/evo-switcher/evo-switcher.component.js +0 -36
  677. package/esm2015/lib/components/evo-table/evo-table/evo-table.component.js +0 -71
  678. package/esm2015/lib/components/evo-table/evo-table-column/evo-table-column.component.js +0 -35
  679. package/esm2015/lib/components/evo-tabs/evo-tab/evo-tab.component.js +0 -92
  680. package/esm2015/lib/components/evo-textarea/evo-textarea.component.js +0 -84
  681. package/esm2015/lib/components/evo-toast/evo-toast.component.js +0 -103
  682. package/esm2015/lib/components/evo-toggle/evo-toggle.component.js +0 -70
  683. package/esm2015/lib/components/evo-upload/evo-upload.component.js +0 -292
  684. package/esm2015/lib/directives/evo-is-expanded.directive.js +0 -72
  685. package/fesm2015/evotor-dev-ui-kit-icons-category.js.map +0 -1
  686. package/fesm2015/evotor-dev-ui-kit-icons-emotions.js.map +0 -1
  687. package/fesm2015/evotor-dev-ui-kit-icons-header.js.map +0 -1
  688. package/fesm2015/evotor-dev-ui-kit-icons-info.js.map +0 -1
  689. package/fesm2015/evotor-dev-ui-kit-icons-navigation.js.map +0 -1
  690. package/fesm2015/evotor-dev-ui-kit-icons-side-menu.js.map +0 -1
  691. package/fesm2015/evotor-dev-ui-kit-icons-system.js.map +0 -1
  692. package/fesm2015/evotor-dev-ui-kit-icons.js.map +0 -1
  693. package/fesm2015/evotor-dev-ui-kit.js +0 -7527
  694. package/fesm2015/evotor-dev-ui-kit.js.map +0 -1
@@ -1,103 +0,0 @@
1
- import { Component } from '@angular/core';
2
- import { animate, style, transition, trigger } from '@angular/animations';
3
- import { delay, filter, map, mergeMap, take, tap } from 'rxjs/operators';
4
- import { BehaviorSubject, of } from 'rxjs';
5
- import * as i0 from "@angular/core";
6
- import * as i1 from "./evo-toast.service";
7
- import * as i2 from "../evo-icon/evo-icon.component";
8
- import * as i3 from "@angular/common";
9
- import * as i4 from "../../directives/evo-ui-class.directive";
10
- export var EvoToastTypes;
11
- (function (EvoToastTypes) {
12
- EvoToastTypes["DEFAULT"] = "default";
13
- EvoToastTypes["DANGER"] = "danger";
14
- EvoToastTypes["SUCCESS"] = "success";
15
- })(EvoToastTypes || (EvoToastTypes = {}));
16
- export class EvoToastComponent {
17
- constructor(toastService, cdr) {
18
- this.toastService = toastService;
19
- this.cdr = cdr;
20
- this.isForced = false;
21
- this.isOpen$ = new BehaviorSubject(false);
22
- }
23
- ngOnInit() {
24
- this.toastService.register();
25
- this.subscribeToToastPushes();
26
- }
27
- handleAnimationDone() {
28
- if (this.toast) {
29
- this.$appearTimeout = of({}).pipe(delay(5000)).subscribe(() => {
30
- this.toast = null;
31
- this.cdr.detectChanges();
32
- });
33
- }
34
- else if (!this.isForced) {
35
- this.toastService.toastComplete();
36
- }
37
- this.isOpen$.next(!!this.toast);
38
- }
39
- close() {
40
- this.$appearTimeout.unsubscribe();
41
- this.toast = null;
42
- this.cdr.detectChanges();
43
- }
44
- subscribeToToastPushes() {
45
- this.toastService.pushEvents.pipe(tap(() => {
46
- this.toast = null;
47
- if (this.$appearTimeout && !this.$appearTimeout.closed) {
48
- this.isForced = true;
49
- this.$appearTimeout.unsubscribe();
50
- }
51
- }), mergeMap((toast) => {
52
- return this.isOpen$.pipe(filter((isOpen) => !isOpen), take(1), map(() => toast));
53
- })).subscribe((toast) => {
54
- this.toast = toast;
55
- this.isForced = false;
56
- this.cdr.detectChanges();
57
- });
58
- }
59
- }
60
- EvoToastComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: EvoToastComponent, deps: [{ token: i1.EvoToastService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
61
- EvoToastComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: EvoToastComponent, selector: "evo-toast", ngImport: i0, template: "<div class=\"evo-toast__wrapper\"\n [@appear]=\"toast ? 'in' : null\"\n (@appear.done)=\"handleAnimationDone()\"\n *ngIf=\"toast\">\n <div class=\"evo-toast\" [evoUiClass]=\"toast?.type || ''\">\n <ng-container *ngIf=\"toast?.message\">\n <div class=\"evo-toast__message\" [innerHTML]=\"toast?.message\"></div>\n </ng-container>\n <ng-container *ngIf=\"toast?.templateRef\">\n <div class=\"evo-toast__message\">\n <ng-container [ngTemplateOutlet]=\"toast?.templateRef\"></ng-container>\n </div>\n </ng-container>\n <evo-icon class=\"evo-toast__close\" shape=\"close\" (click)=\"close()\"></evo-icon>\n </div>\n</div>\n", styles: [".evo-toast{display:flex;width:300px;padding:16px;background:#403C3D;border-radius:8px;box-shadow:0 8px 10px #0003,0 6px 30px #0000001f,0 16px 24px #00000024}.evo-toast_danger{background:#FF6F6F;box-shadow:0 8px 10px #ff6f6f33,0 6px 30px #ff6f6f1f,0 16px 24px #ff6f6f24}.evo-toast_success{background:#21C68B;box-shadow:0 8px 10px #21c68b33,0 6px 30px #21c68b1f,0 16px 24px #21c68b24}.evo-toast__wrapper{position:fixed;bottom:32px;left:calc(50% - 150px)}.evo-toast__message{flex:1;color:#fff;font-weight:600;font-size:14px}.evo-toast__close{flex-shrink:0;width:24px;height:24px;cursor:pointer;opacity:.5;transition:opacity .25s;-webkit-user-select:none;user-select:none;fill:#fff}.evo-toast__close:hover{opacity:1}.evo-toast_danger::ng-deep a:link,.evo-toast_danger::ng-deep a:hover,.evo-toast_danger::ng-deep a:active,.evo-toast_danger::ng-deep a:visited,.evo-toast_success::ng-deep a:link,.evo-toast_success::ng-deep a:hover,.evo-toast_success::ng-deep a:active,.evo-toast_success::ng-deep a:visited{color:#fff;font-weight:bold;text-decoration:underline}.evo-toast_danger::ng-deep *,.evo-toast_success::ng-deep *{color:#fff}\n"], components: [{ type: i2.EvoIconComponent, selector: "evo-icon", inputs: ["shape", "svgWidth", "svgHeight", "svgViewBox"] }], directives: [{ type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4.EvoUiClassDirective, selector: "[evoUiClass]", inputs: ["class", "evoUiClass"] }, { type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], animations: [
62
- trigger('appear', [
63
- transition('void => in', [
64
- style({
65
- bottom: '-100px',
66
- }),
67
- animate('250ms cubic-bezier(0, 0, 0.2, 1.40)', style({
68
- bottom: '32px',
69
- })),
70
- ]),
71
- transition('in => void', [
72
- animate('250ms ease-in', style({
73
- bottom: '-100px',
74
- })),
75
- ]),
76
- ]),
77
- ] });
78
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: EvoToastComponent, decorators: [{
79
- type: Component,
80
- args: [{
81
- selector: 'evo-toast',
82
- templateUrl: './evo-toast.component.html',
83
- styleUrls: ['./evo-toast.component.scss'],
84
- animations: [
85
- trigger('appear', [
86
- transition('void => in', [
87
- style({
88
- bottom: '-100px',
89
- }),
90
- animate('250ms cubic-bezier(0, 0, 0.2, 1.40)', style({
91
- bottom: '32px',
92
- })),
93
- ]),
94
- transition('in => void', [
95
- animate('250ms ease-in', style({
96
- bottom: '-100px',
97
- })),
98
- ]),
99
- ]),
100
- ],
101
- }]
102
- }], ctorParameters: function () { return [{ type: i1.EvoToastService }, { type: i0.ChangeDetectorRef }]; } });
103
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZvLXRvYXN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2V2by11aS1raXQvc3JjL2xpYi9jb21wb25lbnRzL2V2by10b2FzdC9ldm8tdG9hc3QuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZXZvLXVpLWtpdC9zcmMvbGliL2NvbXBvbmVudHMvZXZvLXRvYXN0L2V2by10b2FzdC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQXFCLFNBQVMsRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUVyRSxPQUFPLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDMUUsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDekUsT0FBTyxFQUFFLGVBQWUsRUFBRSxFQUFFLEVBQWdCLE1BQU0sTUFBTSxDQUFDOzs7Ozs7QUFFekQsTUFBTSxDQUFOLElBQVksYUFJWDtBQUpELFdBQVksYUFBYTtJQUNyQixvQ0FBbUIsQ0FBQTtJQUNuQixrQ0FBaUIsQ0FBQTtJQUNqQixvQ0FBbUIsQ0FBQTtBQUN2QixDQUFDLEVBSlcsYUFBYSxLQUFiLGFBQWEsUUFJeEI7QUF3QkQsTUFBTSxPQUFPLGlCQUFpQjtJQVExQixZQUNZLFlBQTZCLEVBQ3BCLEdBQXNCO1FBRC9CLGlCQUFZLEdBQVosWUFBWSxDQUFpQjtRQUNwQixRQUFHLEdBQUgsR0FBRyxDQUFtQjtRQUxuQyxhQUFRLEdBQUcsS0FBSyxDQUFDO1FBQ2pCLFlBQU8sR0FBNkIsSUFBSSxlQUFlLENBQVUsS0FBSyxDQUFDLENBQUM7SUFLNUUsQ0FBQztJQUVMLFFBQVE7UUFDSixJQUFJLENBQUMsWUFBWSxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQzdCLElBQUksQ0FBQyxzQkFBc0IsRUFBRSxDQUFDO0lBQ2xDLENBQUM7SUFFRCxtQkFBbUI7UUFDZixJQUFJLElBQUksQ0FBQyxLQUFLLEVBQUU7WUFDWixJQUFJLENBQUMsY0FBYyxHQUFHLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQzdCLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FDZCxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7Z0JBQ2IsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUM7Z0JBQ2xCLElBQUksQ0FBQyxHQUFHLENBQUMsYUFBYSxFQUFFLENBQUM7WUFDN0IsQ0FBQyxDQUFDLENBQUM7U0FDTjthQUFNLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQ3ZCLElBQUksQ0FBQyxZQUFZLENBQUMsYUFBYSxFQUFFLENBQUM7U0FDckM7UUFFRCxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3BDLENBQUM7SUFFRCxLQUFLO1FBQ0QsSUFBSSxDQUFDLGNBQWMsQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUNsQyxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQztRQUNsQixJQUFJLENBQUMsR0FBRyxDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQzdCLENBQUM7SUFFTyxzQkFBc0I7UUFDMUIsSUFBSSxDQUFDLFlBQVksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUM3QixHQUFHLENBQUMsR0FBRyxFQUFFO1lBQ0wsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUM7WUFFbEIsSUFBSSxJQUFJLENBQUMsY0FBYyxJQUFJLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxNQUFNLEVBQUU7Z0JBQ3BELElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDO2dCQUNyQixJQUFJLENBQUMsY0FBYyxDQUFDLFdBQVcsRUFBRSxDQUFDO2FBQ3JDO1FBQ0wsQ0FBQyxDQUFDLEVBQ0YsUUFBUSxDQUFDLENBQUMsS0FBZSxFQUFFLEVBQUU7WUFDekIsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FDcEIsTUFBTSxDQUFDLENBQUMsTUFBZSxFQUFFLEVBQUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxFQUNwQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQ1AsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUNuQixDQUFDO1FBQ04sQ0FBQyxDQUFDLENBQ0wsQ0FBQyxTQUFTLENBQUMsQ0FBQyxLQUFlLEVBQUUsRUFBRTtZQUM1QixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztZQUNuQixJQUFJLENBQUMsUUFBUSxHQUFHLEtBQUssQ0FBQztZQUN0QixJQUFJLENBQUMsR0FBRyxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBQzdCLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQzs7K0dBN0RRLGlCQUFpQjttR0FBakIsaUJBQWlCLGlEQ2xDOUIsaXRCQWdCQSxtakREQWdCO1FBQ1IsT0FBTyxDQUFDLFFBQVEsRUFBRTtZQUNkLFVBQVUsQ0FBQyxZQUFZLEVBQUU7Z0JBQ3JCLEtBQUssQ0FBQztvQkFDRixNQUFNLEVBQUUsUUFBUTtpQkFDbkIsQ0FBQztnQkFDRixPQUFPLENBQUMscUNBQXFDLEVBQUUsS0FBSyxDQUFDO29CQUNqRCxNQUFNLEVBQUUsTUFBTTtpQkFDakIsQ0FBQyxDQUFDO2FBQ04sQ0FBQztZQUNGLFVBQVUsQ0FBQyxZQUFZLEVBQUU7Z0JBQ3JCLE9BQU8sQ0FBQyxlQUFlLEVBQUUsS0FBSyxDQUFDO29CQUMzQixNQUFNLEVBQUUsUUFBUTtpQkFDbkIsQ0FBQyxDQUFDO2FBQ04sQ0FBQztTQUNMLENBQUM7S0FDTDs0RkFFUSxpQkFBaUI7a0JBdEI3QixTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxXQUFXO29CQUNyQixXQUFXLEVBQUUsNEJBQTRCO29CQUN6QyxTQUFTLEVBQUUsQ0FBRSw0QkFBNEIsQ0FBRTtvQkFDM0MsVUFBVSxFQUFFO3dCQUNSLE9BQU8sQ0FBQyxRQUFRLEVBQUU7NEJBQ2QsVUFBVSxDQUFDLFlBQVksRUFBRTtnQ0FDckIsS0FBSyxDQUFDO29DQUNGLE1BQU0sRUFBRSxRQUFRO2lDQUNuQixDQUFDO2dDQUNGLE9BQU8sQ0FBQyxxQ0FBcUMsRUFBRSxLQUFLLENBQUM7b0NBQ2pELE1BQU0sRUFBRSxNQUFNO2lDQUNqQixDQUFDLENBQUM7NkJBQ04sQ0FBQzs0QkFDRixVQUFVLENBQUMsWUFBWSxFQUFFO2dDQUNyQixPQUFPLENBQUMsZUFBZSxFQUFFLEtBQUssQ0FBQztvQ0FDM0IsTUFBTSxFQUFFLFFBQVE7aUNBQ25CLENBQUMsQ0FBQzs2QkFDTixDQUFDO3lCQUNMLENBQUM7cUJBQ0w7aUJBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEV2b1RvYXN0LCBFdm9Ub2FzdFNlcnZpY2UgfSBmcm9tICcuL2V2by10b2FzdC5zZXJ2aWNlJztcbmltcG9ydCB7IGFuaW1hdGUsIHN0eWxlLCB0cmFuc2l0aW9uLCB0cmlnZ2VyIH0gZnJvbSAnQGFuZ3VsYXIvYW5pbWF0aW9ucyc7XG5pbXBvcnQgeyBkZWxheSwgZmlsdGVyLCBtYXAsIG1lcmdlTWFwLCB0YWtlLCB0YXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIG9mLCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcblxuZXhwb3J0IGVudW0gRXZvVG9hc3RUeXBlcyB7XG4gICAgREVGQVVMVCA9ICdkZWZhdWx0JyxcbiAgICBEQU5HRVIgPSAnZGFuZ2VyJyxcbiAgICBTVUNDRVNTID0gJ3N1Y2Nlc3MnLFxufVxuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2V2by10b2FzdCcsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2V2by10b2FzdC5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbICcuL2V2by10b2FzdC5jb21wb25lbnQuc2NzcycgXSxcbiAgICBhbmltYXRpb25zOiBbXG4gICAgICAgIHRyaWdnZXIoJ2FwcGVhcicsIFtcbiAgICAgICAgICAgIHRyYW5zaXRpb24oJ3ZvaWQgPT4gaW4nLCBbXG4gICAgICAgICAgICAgICAgc3R5bGUoe1xuICAgICAgICAgICAgICAgICAgICBib3R0b206ICctMTAwcHgnLFxuICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgIGFuaW1hdGUoJzI1MG1zIGN1YmljLWJlemllcigwLCAwLCAwLjIsIDEuNDApJywgc3R5bGUoe1xuICAgICAgICAgICAgICAgICAgICBib3R0b206ICczMnB4JyxcbiAgICAgICAgICAgICAgICB9KSksXG4gICAgICAgICAgICBdKSxcbiAgICAgICAgICAgIHRyYW5zaXRpb24oJ2luID0+IHZvaWQnLCBbXG4gICAgICAgICAgICAgICAgYW5pbWF0ZSgnMjUwbXMgZWFzZS1pbicsIHN0eWxlKHtcbiAgICAgICAgICAgICAgICAgICAgYm90dG9tOiAnLTEwMHB4JyxcbiAgICAgICAgICAgICAgICB9KSksXG4gICAgICAgICAgICBdKSxcbiAgICAgICAgXSksXG4gICAgXSxcbn0pXG5leHBvcnQgY2xhc3MgRXZvVG9hc3RDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuXG4gICAgdG9hc3Q6IEV2b1RvYXN0O1xuXG4gICAgcHJpdmF0ZSAkYXBwZWFyVGltZW91dDogU3Vic2NyaXB0aW9uO1xuICAgIHByaXZhdGUgaXNGb3JjZWQgPSBmYWxzZTtcbiAgICBwcml2YXRlIGlzT3BlbiQ6IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPiA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4oZmFsc2UpO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgdG9hc3RTZXJ2aWNlOiBFdm9Ub2FzdFNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICApIHsgfVxuXG4gICAgbmdPbkluaXQoKSB7XG4gICAgICAgIHRoaXMudG9hc3RTZXJ2aWNlLnJlZ2lzdGVyKCk7XG4gICAgICAgIHRoaXMuc3Vic2NyaWJlVG9Ub2FzdFB1c2hlcygpO1xuICAgIH1cblxuICAgIGhhbmRsZUFuaW1hdGlvbkRvbmUoKSB7XG4gICAgICAgIGlmICh0aGlzLnRvYXN0KSB7XG4gICAgICAgICAgICB0aGlzLiRhcHBlYXJUaW1lb3V0ID0gb2Yoe30pLnBpcGUoXG4gICAgICAgICAgICAgICAgZGVsYXkoNTAwMCksXG4gICAgICAgICAgICApLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy50b2FzdCA9IG51bGw7XG4gICAgICAgICAgICAgICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0gZWxzZSBpZiAoIXRoaXMuaXNGb3JjZWQpIHtcbiAgICAgICAgICAgIHRoaXMudG9hc3RTZXJ2aWNlLnRvYXN0Q29tcGxldGUoKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuaXNPcGVuJC5uZXh0KCEhdGhpcy50b2FzdCk7XG4gICAgfVxuXG4gICAgY2xvc2UoKSB7XG4gICAgICAgIHRoaXMuJGFwcGVhclRpbWVvdXQudW5zdWJzY3JpYmUoKTtcbiAgICAgICAgdGhpcy50b2FzdCA9IG51bGw7XG4gICAgICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHN1YnNjcmliZVRvVG9hc3RQdXNoZXMoKSB7XG4gICAgICAgIHRoaXMudG9hc3RTZXJ2aWNlLnB1c2hFdmVudHMucGlwZShcbiAgICAgICAgICAgIHRhcCgoKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy50b2FzdCA9IG51bGw7XG5cbiAgICAgICAgICAgICAgICBpZiAodGhpcy4kYXBwZWFyVGltZW91dCAmJiAhdGhpcy4kYXBwZWFyVGltZW91dC5jbG9zZWQpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5pc0ZvcmNlZCA9IHRydWU7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuJGFwcGVhclRpbWVvdXQudW5zdWJzY3JpYmUoKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIG1lcmdlTWFwKCh0b2FzdDogRXZvVG9hc3QpID0+IHtcbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5pc09wZW4kLnBpcGUoXG4gICAgICAgICAgICAgICAgICAgIGZpbHRlcigoaXNPcGVuOiBib29sZWFuKSA9PiAhaXNPcGVuKSxcbiAgICAgICAgICAgICAgICAgICAgdGFrZSgxKSxcbiAgICAgICAgICAgICAgICAgICAgbWFwKCgpID0+IHRvYXN0KSxcbiAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgfSksXG4gICAgICAgICkuc3Vic2NyaWJlKCh0b2FzdDogRXZvVG9hc3QpID0+IHtcbiAgICAgICAgICAgIHRoaXMudG9hc3QgPSB0b2FzdDtcbiAgICAgICAgICAgIHRoaXMuaXNGb3JjZWQgPSBmYWxzZTtcbiAgICAgICAgICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcbiAgICAgICAgfSk7XG4gICAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImV2by10b2FzdF9fd3JhcHBlclwiXG4gICAgIFtAYXBwZWFyXT1cInRvYXN0ID8gJ2luJyA6IG51bGxcIlxuICAgICAoQGFwcGVhci5kb25lKT1cImhhbmRsZUFuaW1hdGlvbkRvbmUoKVwiXG4gICAgICpuZ0lmPVwidG9hc3RcIj5cbiAgICA8ZGl2IGNsYXNzPVwiZXZvLXRvYXN0XCIgW2V2b1VpQ2xhc3NdPVwidG9hc3Q/LnR5cGUgfHwgJydcIj5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInRvYXN0Py5tZXNzYWdlXCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZXZvLXRvYXN0X19tZXNzYWdlXCIgW2lubmVySFRNTF09XCJ0b2FzdD8ubWVzc2FnZVwiPjwvZGl2PlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInRvYXN0Py50ZW1wbGF0ZVJlZlwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImV2by10b2FzdF9fbWVzc2FnZVwiPlxuICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgW25nVGVtcGxhdGVPdXRsZXRdPVwidG9hc3Q/LnRlbXBsYXRlUmVmXCI+PC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgIDxldm8taWNvbiBjbGFzcz1cImV2by10b2FzdF9fY2xvc2VcIiBzaGFwZT1cImNsb3NlXCIgKGNsaWNrKT1cImNsb3NlKClcIj48L2V2by1pY29uPlxuICAgIDwvZGl2PlxuPC9kaXY+XG4iXX0=
@@ -1,70 +0,0 @@
1
- import { ChangeDetectionStrategy, Component, forwardRef } from '@angular/core';
2
- import { NG_VALUE_ACCESSOR } from '@angular/forms';
3
- import * as i0 from "@angular/core";
4
- import * as i1 from "../../directives/evo-ui-class.directive";
5
- import * as i2 from "@angular/forms";
6
- export class EvoToggleComponent {
7
- constructor(changeDetector) {
8
- this.changeDetector = changeDetector;
9
- this.isDisabled = false;
10
- this.onChange = (_value) => { };
11
- this.onTouched = () => { };
12
- }
13
- get value() {
14
- return this._value;
15
- }
16
- set value(value) {
17
- if (value !== this._value) {
18
- this._value = value;
19
- this.onChange(value);
20
- }
21
- }
22
- get totalClasses() {
23
- const classes = [];
24
- if (this.isDisabled) {
25
- classes.push('disabled');
26
- }
27
- return classes;
28
- }
29
- writeValue(value) {
30
- if (value !== this._value) {
31
- this._value = value;
32
- this.changeDetector.detectChanges();
33
- }
34
- }
35
- registerOnChange(fn) {
36
- this.onChange = fn;
37
- }
38
- registerOnTouched(fn) {
39
- this.onTouched = fn;
40
- }
41
- setDisabledState(state) {
42
- this.isDisabled = state;
43
- this.changeDetector.detectChanges();
44
- }
45
- }
46
- EvoToggleComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: EvoToggleComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
47
- EvoToggleComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: EvoToggleComponent, selector: "evo-toggle", providers: [
48
- {
49
- provide: NG_VALUE_ACCESSOR,
50
- useExisting: forwardRef(() => EvoToggleComponent),
51
- multi: true,
52
- },
53
- ], ngImport: i0, template: "<label class=\"evo-toggle\" [evoUiClass]=\"totalClasses\">\n <input type=\"checkbox\" [(ngModel)]=\"value\" [disabled]=\"isDisabled\">\n <span class=\"slider\"></span>\n</label>\n", styles: [":host{position:relative;display:inline-block}.evo-toggle{display:flex;justify-content:center;align-items:center;width:40px;height:24px;cursor:pointer}.evo-toggle_disabled{cursor:default;opacity:.5}.evo-toggle input{display:none}.slider{position:absolute;display:inline-block;width:34px;height:14px;background-color:#c6c6c6;border-radius:16px;transition:background-color .3s;mix-blend-mode:normal}.slider:before{position:absolute;top:-3px;left:-3px;width:20px;height:20px;background-color:#f4f6f8;border-radius:50%;box-shadow:0 1px 3px #0003,0 2px 2px #0000001f,0 0 2px #00000024;transition:color .3s,background-color .3s,transform .3s;content:\"\"}input[type=checkbox]:checked+.slider{background:rgba(9,134,226,.5)}input[type=checkbox]:checked+.slider:before{right:0px;left:0px;background-color:#0986e2;transform:translate(18px);pointer-events:none}\n"], directives: [{ type: i1.EvoUiClassDirective, selector: "[evoUiClass]", inputs: ["class", "evoUiClass"] }, { type: i2.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
54
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: EvoToggleComponent, decorators: [{
55
- type: Component,
56
- args: [{
57
- selector: 'evo-toggle',
58
- templateUrl: './evo-toggle.component.html',
59
- styleUrls: ['./evo-toggle.component.scss'],
60
- changeDetection: ChangeDetectionStrategy.OnPush,
61
- providers: [
62
- {
63
- provide: NG_VALUE_ACCESSOR,
64
- useExisting: forwardRef(() => EvoToggleComponent),
65
- multi: true,
66
- },
67
- ],
68
- }]
69
- }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; } });
70
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZvLXRvZ2dsZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9ldm8tdWkta2l0L3NyYy9saWIvY29tcG9uZW50cy9ldm8tdG9nZ2xlL2V2by10b2dnbGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZXZvLXVpLWtpdC9zcmMvbGliL2NvbXBvbmVudHMvZXZvLXRvZ2dsZS9ldm8tdG9nZ2xlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBcUIsU0FBUyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNsRyxPQUFPLEVBQXdCLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7QUFlekUsTUFBTSxPQUFPLGtCQUFrQjtJQUszQixZQUNZLGNBQWlDO1FBQWpDLG1CQUFjLEdBQWQsY0FBYyxDQUFtQjtRQUw3QyxlQUFVLEdBQUcsS0FBSyxDQUFDO1FBOEJuQixhQUFRLEdBQUcsQ0FBQyxNQUFNLEVBQUUsRUFBRSxHQUFFLENBQUMsQ0FBQztRQUMxQixjQUFTLEdBQUcsR0FBRyxFQUFFLEdBQUUsQ0FBQyxDQUFDO0lBeEJyQixDQUFDO0lBRUQsSUFBSSxLQUFLO1FBQ0wsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDO0lBQ3ZCLENBQUM7SUFFRCxJQUFJLEtBQUssQ0FBQyxLQUFjO1FBQ3BCLElBQUksS0FBSyxLQUFLLElBQUksQ0FBQyxNQUFNLEVBQUU7WUFDdkIsSUFBSSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7WUFDcEIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUN4QjtJQUNMLENBQUM7SUFFRCxJQUFJLFlBQVk7UUFDWixNQUFNLE9BQU8sR0FBYSxFQUFFLENBQUM7UUFFN0IsSUFBSSxJQUFJLENBQUMsVUFBVSxFQUFFO1lBQ2pCLE9BQU8sQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7U0FDNUI7UUFFRCxPQUFPLE9BQU8sQ0FBQztJQUNuQixDQUFDO0lBS0QsVUFBVSxDQUFDLEtBQVU7UUFDakIsSUFBSSxLQUFLLEtBQUssSUFBSSxDQUFDLE1BQU0sRUFBRTtZQUN2QixJQUFJLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztZQUNwQixJQUFJLENBQUMsY0FBYyxDQUFDLGFBQWEsRUFBRSxDQUFDO1NBQ3ZDO0lBQ0wsQ0FBQztJQUVELGdCQUFnQixDQUFDLEVBQU87UUFDcEIsSUFBSSxDQUFDLFFBQVEsR0FBRyxFQUFFLENBQUM7SUFDdkIsQ0FBQztJQUVELGlCQUFpQixDQUFDLEVBQU87UUFDckIsSUFBSSxDQUFDLFNBQVMsR0FBRyxFQUFFLENBQUM7SUFDeEIsQ0FBQztJQUVELGdCQUFnQixDQUFDLEtBQWM7UUFDM0IsSUFBSSxDQUFDLFVBQVUsR0FBRyxLQUFLLENBQUM7UUFDeEIsSUFBSSxDQUFDLGNBQWMsQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUN4QyxDQUFDOztnSEFwRFEsa0JBQWtCO29HQUFsQixrQkFBa0IscUNBUmhCO1FBQ1A7WUFDSSxPQUFPLEVBQUUsaUJBQWlCO1lBQzFCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsa0JBQWtCLENBQUM7WUFDakQsS0FBSyxFQUFFLElBQUk7U0FDZDtLQUNKLDBCQ2RMLDJMQUlBOzRGRFlhLGtCQUFrQjtrQkFiOUIsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUsWUFBWTtvQkFDdEIsV0FBVyxFQUFFLDZCQUE2QjtvQkFDMUMsU0FBUyxFQUFFLENBQUMsNkJBQTZCLENBQUM7b0JBQzFDLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO29CQUMvQyxTQUFTLEVBQUU7d0JBQ1A7NEJBQ0ksT0FBTyxFQUFFLGlCQUFpQjs0QkFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsbUJBQW1CLENBQUM7NEJBQ2pELEtBQUssRUFBRSxJQUFJO3lCQUNkO3FCQUNKO2lCQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIGZvcndhcmRSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdldm8tdG9nZ2xlJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vZXZvLXRvZ2dsZS5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vZXZvLXRvZ2dsZS5jb21wb25lbnQuc2NzcyddLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7XG4gICAgICAgICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgICAgICAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IEV2b1RvZ2dsZUNvbXBvbmVudCksXG4gICAgICAgICAgICBtdWx0aTogdHJ1ZSxcbiAgICAgICAgfSxcbiAgICBdLFxufSlcbmV4cG9ydCBjbGFzcyBFdm9Ub2dnbGVDb21wb25lbnQgaW1wbGVtZW50cyBDb250cm9sVmFsdWVBY2Nlc3NvciB7XG4gICAgaXNEaXNhYmxlZCA9IGZhbHNlO1xuXG4gICAgcHJpdmF0ZSBfdmFsdWU6IGJvb2xlYW47XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSBjaGFuZ2VEZXRlY3RvcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgKSB7XG4gICAgfVxuXG4gICAgZ2V0IHZhbHVlKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5fdmFsdWU7XG4gICAgfVxuXG4gICAgc2V0IHZhbHVlKHZhbHVlOiBib29sZWFuKSB7XG4gICAgICAgIGlmICh2YWx1ZSAhPT0gdGhpcy5fdmFsdWUpIHtcbiAgICAgICAgICAgIHRoaXMuX3ZhbHVlID0gdmFsdWU7XG4gICAgICAgICAgICB0aGlzLm9uQ2hhbmdlKHZhbHVlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGdldCB0b3RhbENsYXNzZXMoKTogc3RyaW5nW10ge1xuICAgICAgICBjb25zdCBjbGFzc2VzOiBzdHJpbmdbXSA9IFtdO1xuXG4gICAgICAgIGlmICh0aGlzLmlzRGlzYWJsZWQpIHtcbiAgICAgICAgICAgIGNsYXNzZXMucHVzaCgnZGlzYWJsZWQnKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBjbGFzc2VzO1xuICAgIH1cblxuICAgIG9uQ2hhbmdlID0gKF92YWx1ZSkgPT4ge307XG4gICAgb25Ub3VjaGVkID0gKCkgPT4ge307XG5cbiAgICB3cml0ZVZhbHVlKHZhbHVlOiBhbnkpOiB2b2lkIHtcbiAgICAgICAgaWYgKHZhbHVlICE9PSB0aGlzLl92YWx1ZSkge1xuICAgICAgICAgICAgdGhpcy5fdmFsdWUgPSB2YWx1ZTtcbiAgICAgICAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3IuZGV0ZWN0Q2hhbmdlcygpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcmVnaXN0ZXJPbkNoYW5nZShmbjogYW55KTogdm9pZCB7XG4gICAgICAgIHRoaXMub25DaGFuZ2UgPSBmbjtcbiAgICB9XG5cbiAgICByZWdpc3Rlck9uVG91Y2hlZChmbjogYW55KTogdm9pZCB7XG4gICAgICAgIHRoaXMub25Ub3VjaGVkID0gZm47XG4gICAgfVxuXG4gICAgc2V0RGlzYWJsZWRTdGF0ZShzdGF0ZTogYm9vbGVhbik6IHZvaWQge1xuICAgICAgICB0aGlzLmlzRGlzYWJsZWQgPSBzdGF0ZTtcbiAgICAgICAgdGhpcy5jaGFuZ2VEZXRlY3Rvci5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgfVxufVxuIiwiPGxhYmVsIGNsYXNzPVwiZXZvLXRvZ2dsZVwiIFtldm9VaUNsYXNzXT1cInRvdGFsQ2xhc3Nlc1wiPlxuICAgIDxpbnB1dCB0eXBlPVwiY2hlY2tib3hcIiBbKG5nTW9kZWwpXT1cInZhbHVlXCIgW2Rpc2FibGVkXT1cImlzRGlzYWJsZWRcIj5cbiAgICA8c3BhbiBjbGFzcz1cInNsaWRlclwiPjwvc3Bhbj5cbjwvbGFiZWw+XG4iXX0=
@@ -1,292 +0,0 @@
1
- import { __decorate } from "tslib";
2
- import { Component, EventEmitter, forwardRef, Input, Output, ViewChild } from '@angular/core';
3
- import { FormControl, NG_VALUE_ACCESSOR } from '@angular/forms';
4
- import autobind from 'autobind-decorator';
5
- import bytes from 'bytes';
6
- import * as mime from 'mime';
7
- import { EvoBaseControl } from '../../common/evo-base-control';
8
- import * as i0 from "@angular/core";
9
- import * as i1 from "@angular/forms";
10
- import * as i2 from "../evo-icon/evo-icon.component";
11
- import * as i3 from "../evo-alert/evo-alert.component";
12
- import * as i4 from "../evo-button/evo-button.component";
13
- import * as i5 from "../../directives/evo-ui-class.directive";
14
- import * as i6 from "@angular/common";
15
- import * as i7 from "../../pipes/safe-html.pipe";
16
- import * as i8 from "../../pipes/declination.pipe";
17
- export class EvoUploadComponent extends EvoBaseControl {
18
- constructor(formBuilder, injector) {
19
- super(injector);
20
- this.formBuilder = formBuilder;
21
- this.injector = injector;
22
- this.dropZoneLabel = 'Перетащите сюда файлы для загрузки';
23
- this.hideClearButton = false;
24
- this.hideSubmitButton = false;
25
- this.clickableFiles = false;
26
- this.earlyValidation = false;
27
- this.loading = false;
28
- this.submit = new EventEmitter();
29
- this.addFiles = new EventEmitter();
30
- this.remove = new EventEmitter();
31
- this.clickFile = new EventEmitter();
32
- this.isDisabled = false;
33
- this.filesForm = this.formBuilder.array([], [this.maxFilesValidator]);
34
- this.states = {
35
- isDragOver: false,
36
- };
37
- this.onChange = (value) => { };
38
- this.onTouched = () => { };
39
- }
40
- set accept(extensions) {
41
- if (extensions) {
42
- this.acceptedMimeTypes = extensions
43
- .split(',')
44
- .map(extension => mime.getType(extension));
45
- }
46
- }
47
- set fileSizeLimit(fileSize) {
48
- this.filesSizeLimitText = fileSize;
49
- this.filesSizeLimitInBytes = bytes(fileSize);
50
- }
51
- ngOnInit() {
52
- this.subscribeOnFormChanges();
53
- }
54
- ngAfterContentInit() {
55
- this.mergeControlsErrors();
56
- }
57
- registerOnChange(fn) {
58
- this.onChange = fn;
59
- }
60
- registerOnTouched(fn) {
61
- this.onTouched = fn;
62
- }
63
- setDisabledState(isDisabled) {
64
- this.isDisabled = isDisabled;
65
- if (!isDisabled) {
66
- this.mergeControlsErrors();
67
- }
68
- }
69
- writeValue(fileList) {
70
- if (fileList && fileList.length > 0) {
71
- if (fileList instanceof Array || fileList instanceof FileList) {
72
- this.wipeUploadList();
73
- if (this.earlyValidation) {
74
- this.earlyValidationFn(fileList);
75
- if (this.filesForm.errors) {
76
- return;
77
- }
78
- }
79
- this.processFiles(fileList);
80
- }
81
- else {
82
- throw Error('[EvoUiKit]: wrong initial value passed to "evo-upload" component. Only FileList and File[] are allowed');
83
- }
84
- }
85
- }
86
- getControlError(control) {
87
- if (!control.errors) {
88
- return null;
89
- }
90
- return Object.keys(control.errors)[0];
91
- }
92
- handleDragOver(event) {
93
- event.preventDefault();
94
- event.stopPropagation();
95
- if (this.loading) {
96
- return;
97
- }
98
- this.states.isDragOver = true;
99
- }
100
- handleDragLeave(event) {
101
- event.preventDefault();
102
- event.stopPropagation();
103
- this.states.isDragOver = false;
104
- }
105
- handleDrop(event) {
106
- event.preventDefault();
107
- event.stopPropagation();
108
- const files = event.dataTransfer.files;
109
- this.states.isDragOver = false;
110
- if (files.length) {
111
- if (this.earlyValidation) {
112
- this.earlyValidationFn(files);
113
- if (this.filesForm.errors) {
114
- return;
115
- }
116
- }
117
- this.addFiles.emit(files);
118
- this.processFiles(files);
119
- }
120
- }
121
- handleItemRemove(index) {
122
- if (this.loading || this.isDisabled) {
123
- return;
124
- }
125
- this.filesForm.removeAt(index);
126
- this.remove.emit(index);
127
- }
128
- handleResetButtonClick() {
129
- if (this.loading || this.isDisabled) {
130
- return;
131
- }
132
- this.wipeUploadList();
133
- }
134
- handleSubmitButtonClick() {
135
- this.submit.emit(this.filesForm.value);
136
- }
137
- inputChange(files) {
138
- if (this.earlyValidation) {
139
- this.earlyValidationFn(files);
140
- if (this.filesForm.errors) {
141
- return;
142
- }
143
- }
144
- this.addFiles.emit(files);
145
- this.processFiles(files);
146
- }
147
- earlyValidationFn(files) {
148
- this.filesForm.setErrors(null);
149
- const filesArray = Array.from(files);
150
- const errors = [];
151
- if (this.maxFiles && this.isFilesLengthValid(filesArray)) {
152
- errors.push({ maxFiles: true });
153
- }
154
- if (this.filesSizeLimitInBytes && !this.isFilesSizeValid(filesArray)) {
155
- errors.push({ size: true });
156
- }
157
- if (this.acceptedMimeTypes && !this.isFilesExtensionValid(filesArray)) {
158
- errors.push({ extension: true });
159
- }
160
- if (errors.length) {
161
- this.filesForm.setErrors(Object.assign({}, ...errors));
162
- this.mergeControlsErrors();
163
- }
164
- }
165
- isFilesLengthValid(files) {
166
- return this.maxFiles < (files.length + this.filesForm.controls.length);
167
- }
168
- isFilesSizeValid(files) {
169
- return !files.some(({ size }) => this.filesSizeLimitInBytes < size);
170
- }
171
- isFilesExtensionValid(files) {
172
- return files.every(({ type }) => {
173
- return this.acceptedMimeTypes.includes(type);
174
- });
175
- }
176
- processFiles(files) {
177
- if (this.loading) {
178
- return;
179
- }
180
- Array.from(files).forEach((file) => {
181
- this.filesForm.push(new FormControl(file, [this.fileExtensionValidator, this.fileSizeValidator]));
182
- });
183
- if (this.inputFileElement && this.inputFileElement.nativeElement) {
184
- this.inputFileElement.nativeElement.value = '';
185
- }
186
- }
187
- wipeUploadList() {
188
- while (this.filesForm.controls.length) {
189
- this.filesForm.removeAt(0);
190
- }
191
- }
192
- mergeControlsErrors() {
193
- if (!this.control) {
194
- return;
195
- }
196
- const errors = Object.assign({}, this.filesForm.errors);
197
- this.filesForm.controls.forEach((control) => {
198
- Object.assign(errors, control.errors);
199
- });
200
- this.control.setErrors(Object.keys(errors).length ? errors : null);
201
- }
202
- subscribeOnFormChanges() {
203
- this.filesForm.valueChanges.subscribe((value) => {
204
- this.onChange(value);
205
- this.mergeControlsErrors();
206
- });
207
- }
208
- fileSizeValidator(control) {
209
- if (!this.filesSizeLimitInBytes) {
210
- return null;
211
- }
212
- return control.value.size > this.filesSizeLimitInBytes ? { size: true } : null;
213
- }
214
- fileExtensionValidator(control) {
215
- if (!this.acceptedMimeTypes) {
216
- return null;
217
- }
218
- const fileType = control.value.type;
219
- const isExtensionAllowed = this.acceptedMimeTypes.includes(fileType);
220
- return isExtensionAllowed ? null : { extension: true };
221
- }
222
- maxFilesValidator(control) {
223
- if (!this.maxFiles) {
224
- return;
225
- }
226
- return control.controls.length > this.maxFiles ? { maxFiles: true } : null;
227
- }
228
- }
229
- EvoUploadComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: EvoUploadComponent, deps: [{ token: i1.FormBuilder }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
230
- EvoUploadComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: EvoUploadComponent, selector: "evo-upload", inputs: { accept: "accept", dropZoneLabel: "dropZoneLabel", dropZoneHint: "dropZoneHint", hideClearButton: "hideClearButton", hideSubmitButton: "hideSubmitButton", clickableFiles: "clickableFiles", earlyValidation: "earlyValidation", fileSizeLimit: "fileSizeLimit", maxFiles: "maxFiles", loading: "loading" }, outputs: { submit: "submit", addFiles: "addFiles", remove: "remove", clickFile: "clickFile" }, providers: [
231
- {
232
- provide: NG_VALUE_ACCESSOR,
233
- useExisting: forwardRef(() => EvoUploadComponent),
234
- multi: true,
235
- },
236
- ], viewQueries: [{ propertyName: "inputFileElement", first: true, predicate: ["inputFile"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"evo-upload\">\n <label class=\"evo-upload__wrapper\"\n [evoUiClass]=\"{over: states.isDragOver, disabled: isDisabled || loading}\"\n (click)=\"onTouched()\"\n (dragover)=\"handleDragOver($event)\"\n (dragleave)=\"handleDragLeave($event)\"\n (drop)=\"handleDrop($event)\">\n <evo-icon class=\"evo-upload__upload-icon\" shape=\"upload\" [evoUiClass]=\"{disabled: isDisabled || loading}\"></evo-icon>\n <span class=\"evo-upload__title\" [evoUiClass]=\"{disabled: isDisabled || loading}\">{{ dropZoneLabel }}</span>\n\n <span class=\"evo-upload__hint\" [evoUiClass]=\"{disabled: isDisabled || loading}\">\n \u0438\u043B\u0438 <span class=\"evo-upload__fake-link\" [evoUiClass]=\"{disabled: isDisabled || loading}\">\u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u0435</span>\n <ng-container *ngIf=\"dropZoneHint\">\n (<span class=\"evo-upload__additional-hint\" [innerHTML]=\"dropZoneHint | safeHtml\"></span>)\n </ng-container>\n </span>\n\n <input class=\"evo-upload__input\"\n (change)=\"inputChange($event.target.files)\"\n [accept]=\"accept\"\n [disabled]=\"loading || isDisabled\"\n [attr.multiple]=\"maxFiles === 1 ? null : true\"\n type=\"file\"\n #inputFile />\n </label>\n\n <evo-alert *ngIf=\"!earlyValidation && filesForm.errors?.maxFiles\" type=\"danger\">\n <ng-container>\u041D\u0435\u043B\u044C\u0437\u044F \u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044C \u0431\u043E\u043B\u0435\u0435 {{ maxFiles || 1 | declination:[\"\u0444\u0430\u0439\u043B\u0430\", \"\u0444\u0430\u0439\u043B\u043E\u0432\", \"\u0444\u0430\u0439\u043B\u043E\u0432\"] }}</ng-container>\n </evo-alert>\n <evo-alert *ngIf=\"earlyValidation && filesForm.errors\" type=\"danger\">\n <ul class=\"evo-list\">\n <li *ngIf=\"filesForm.errors.maxFiles\">\u041D\u0435\u043B\u044C\u0437\u044F \u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044C \u0431\u043E\u043B\u0435\u0435 {{ maxFiles || 1 | declination:[\"\u0444\u0430\u0439\u043B\u0430\", \"\u0444\u0430\u0439\u043B\u043E\u0432\", \"\u0444\u0430\u0439\u043B\u043E\u0432\"] }}</li>\n <li *ngIf=\"filesForm.errors.size\">\u041C\u0430\u043A\u0441\u0438\u043C\u0430\u043B\u044C\u043D\u044B\u0439 \u0440\u0430\u0437\u043C\u0435\u0440 \u043E\u0434\u043D\u043E\u0433\u043E \u0444\u0430\u0439\u043B\u0430 \u043D\u0435 \u0431\u043E\u043B\u0435\u0435 {{ filesSizeLimitText }}</li>\n <li *ngIf=\"filesForm.errors.extension\">\u0412\u044B\u0431\u0440\u0430\u043D \u0444\u0430\u0439\u043B \u043D\u0435\u0434\u043E\u043F\u0443\u0441\u0442\u0438\u043C\u043E\u0433\u043E \u0444\u043E\u0440\u043C\u0430\u0442\u0430</li>\n </ul>\n </evo-alert>\n\n <ul class=\"evo-upload__list\">\n <li class=\"evo-upload__list-item\" *ngFor=\"let file of filesForm.controls; let i = index\">\n\n <div class=\"evo-upload__item-inner\">\n <evo-icon class=\"evo-upload__file-icon\"\n shape=\"file\"\n svgWidth=\"24\"\n svgHeight=\"24\"></evo-icon>\n\n <span class=\"evo-upload__link evo-link\"\n *ngIf=\"clickableFiles\"\n (click)=\"clickFile.emit({ file: file.value, index: i })\"\n >{{ file.value.name }}</span>\n\n <span *ngIf=\"!clickableFiles\"\n >{{ file.value.name }}</span>\n\n </div>\n\n <evo-icon class=\"evo-upload__button-remove\"\n shape=\"decline\"\n svgWidth=\"24\"\n svgHeight=\"24\"\n (click)=\"handleItemRemove(i)\"\n [evoUiClass]=\"{disabled: loading || isDisabled}\">\n </evo-icon>\n\n <div class=\"evo-upload__list-delimiter\"\n [evoUiClass]=\"{error: filesForm.controls[i].errors}\"\n [ngSwitch]=\"getControlError(filesForm.controls[i])\">\n <ng-container *ngSwitchCase=\"'size'\">\u0420\u0430\u0437\u043C\u0435\u0440 \u0444\u0430\u0439\u043B\u0430 \u043F\u0440\u0435\u0432\u044B\u0448\u0430\u0435\u0442 \u0434\u043E\u043F\u0443\u0441\u0442\u0438\u043C\u044B\u0439</ng-container>\n <ng-container *ngSwitchCase=\"'extension'\">\u041D\u0435\u0432\u0435\u0440\u043D\u044B\u0439 \u0444\u043E\u0440\u043C\u0430\u0442 \u0444\u0430\u0439\u043B\u0430</ng-container>\n </div>\n </li>\n </ul>\n\n <div class=\"evo-upload__controls\" *ngIf=\"filesForm.controls.length\">\n <button *ngIf=\"!hideClearButton\"\n evo-button\n color=\"darkblue-lined\"\n (click)=\"handleResetButtonClick()\"\n [disabled]=\"loading || isDisabled\"\n [loading]=\"loading\">\u0423\u0434\u0430\u043B\u0438\u0442\u044C \u0432\u0441\u0451</button>\n <button *ngIf=\"!hideSubmitButton\"\n evo-button\n class=\"evo-upload__submit\"\n color=\"green\"\n (click)=\"handleSubmitButtonClick()\"\n [disabled]=\"filesForm.invalid || loading || isDisabled\"\n [loading]=\"loading\">\u0417\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044C</button>\n </div>\n</div>\n", styles: [".evo-link,.evo-upload__fake-link{color:#0986e2;font-weight:600;text-decoration:none;border-bottom:1px solid transparent;transition:color .3s,border-color .3s}.evo-link:hover,.evo-upload__fake-link:hover{color:#0986e2;border-bottom-color:#0986e2}.evo-link:active,.evo-upload__fake-link:active{color:#0879cb}.evo-link_dashed{border-bottom:1px dashed}.evo-link_dashed:hover{text-decoration:none;border-bottom-color:transparent}.evo-link_danger{color:#ff1817}.evo-link_danger:hover{color:#ff4645;border-bottom-color:#ff4645}.evo-link_danger:active{color:#e51715;border-bottom-color:#e51715}.evo-upload{width:100%}.evo-upload__wrapper{display:flex;flex-direction:column;align-items:center;width:100%;margin-bottom:24px;padding:32px 0;color:#231f20;background:#F4F6F8;border:2px solid transparent;border-radius:8px}@media (max-width: 767px){.evo-upload__wrapper{padding:16px}}.evo-upload__wrapper_disabled{pointer-events:none}.evo-upload__wrapper_over{border-color:#dbe3ea}.evo-upload__upload-icon{flex:0 0 48px;width:48px;height:48px;margin-bottom:24px;transition:fill .3s;fill:#91b1b8}.evo-upload__upload-icon_disabled{fill:#727272}@media (max-width: 767px){.evo-upload__upload-icon{margin-bottom:16px}}.evo-upload__title{margin-bottom:8px;font-weight:bold;font-size:24px;text-align:center;transition:color .3s}.evo-upload__title_disabled{color:#727272}@media (max-width: 767px){.evo-upload__title{font-size:16px}}.evo-upload__hint{font-size:18px;text-align:center;transition:color .3s}.evo-upload__hint_disabled{color:#727272}@media (max-width: 767px){.evo-upload__hint{font-size:14px}}.evo-upload__fake-link_disabled{color:#727272}.evo-upload__input{display:none}.evo-upload__list{margin-top:24px;margin-bottom:24px}.evo-upload__list:empty{display:none}.evo-upload__file-icon{margin-right:8px;fill:#91b1b8}.evo-upload__list-item{display:flex;flex-wrap:wrap;align-items:center;margin-bottom:15px;color:#212121;font-weight:600;font-size:16px}.evo-upload__list-item:last-of-type{margin-bottom:24px}.evo-upload__item-inner{display:flex;flex-flow:row wrap;align-items:center}.evo-upload__list-delimiter{width:100%;margin-top:15px;color:#ff1817;font-size:14px;font-style:italic;line-height:22px;border-top:1px solid #C6C6C6}.evo-upload__list-delimiter_error{border-top-color:#ff1817}.evo-upload__button-remove{margin-left:auto;cursor:pointer;transition:fill .3s;fill:#91b1b8}.evo-upload__button-remove:not(.evo-upload__button-remove_disabled):hover{fill:#231f20}.evo-upload__button-remove_disabled{cursor:default;fill:#c6c6c6}.evo-upload__controls{display:flex;justify-content:space-between}.evo-upload__submit{margin-left:auto}.evo-upload__link{cursor:pointer}.evo-list{margin-bottom:0}.evo-list li:before{color:#fff}\n"], components: [{ type: i2.EvoIconComponent, selector: "evo-icon", inputs: ["shape", "svgWidth", "svgHeight", "svgViewBox"] }, { type: i3.EvoAlertComponent, selector: "evo-alert", inputs: ["closable", "icon", "iconSrc", "type", "size"], outputs: ["close"] }, { type: i4.EvoButtonComponent, selector: "evo-button, button[evo-button]", inputs: ["color", "size", "disabled", "loading"] }], directives: [{ type: i5.EvoUiClassDirective, selector: "[evoUiClass]", inputs: ["class", "evoUiClass"] }, { type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i6.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i6.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { type: i6.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }], pipes: { "safeHtml": i7.SafeHtmlPipe, "declination": i8.DeclinationPipe } });
237
- __decorate([
238
- autobind
239
- ], EvoUploadComponent.prototype, "fileSizeValidator", null);
240
- __decorate([
241
- autobind
242
- ], EvoUploadComponent.prototype, "fileExtensionValidator", null);
243
- __decorate([
244
- autobind
245
- ], EvoUploadComponent.prototype, "maxFilesValidator", null);
246
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: EvoUploadComponent, decorators: [{
247
- type: Component,
248
- args: [{
249
- selector: 'evo-upload',
250
- styleUrls: ['./evo-upload.component.scss'],
251
- templateUrl: './evo-upload.component.html',
252
- providers: [
253
- {
254
- provide: NG_VALUE_ACCESSOR,
255
- useExisting: forwardRef(() => EvoUploadComponent),
256
- multi: true,
257
- },
258
- ],
259
- }]
260
- }], ctorParameters: function () { return [{ type: i1.FormBuilder }, { type: i0.Injector }]; }, propDecorators: { accept: [{
261
- type: Input
262
- }], dropZoneLabel: [{
263
- type: Input
264
- }], dropZoneHint: [{
265
- type: Input
266
- }], hideClearButton: [{
267
- type: Input
268
- }], hideSubmitButton: [{
269
- type: Input
270
- }], clickableFiles: [{
271
- type: Input
272
- }], earlyValidation: [{
273
- type: Input
274
- }], fileSizeLimit: [{
275
- type: Input
276
- }], maxFiles: [{
277
- type: Input
278
- }], loading: [{
279
- type: Input
280
- }], submit: [{
281
- type: Output
282
- }], addFiles: [{
283
- type: Output
284
- }], remove: [{
285
- type: Output
286
- }], clickFile: [{
287
- type: Output
288
- }], inputFileElement: [{
289
- type: ViewChild,
290
- args: ['inputFile']
291
- }], fileSizeValidator: [], fileExtensionValidator: [], maxFilesValidator: [] } });
292
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZvLXVwbG9hZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9ldm8tdWkta2l0L3NyYy9saWIvY29tcG9uZW50cy9ldm8tdXBsb2FkL2V2by11cGxvYWQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZXZvLXVpLWtpdC9zcmMvbGliL2NvbXBvbmVudHMvZXZvLXVwbG9hZC9ldm8tdXBsb2FkLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBRUgsU0FBUyxFQUVULFlBQVksRUFDWixVQUFVLEVBQ1YsS0FBSyxFQUNMLE1BQU0sRUFDTixTQUFTLEVBQ1osTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUtILFdBQVcsRUFDWCxpQkFBaUIsRUFDcEIsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4QixPQUFPLFFBQVEsTUFBTSxvQkFBb0IsQ0FBQztBQUMxQyxPQUFPLEtBQUssTUFBTSxPQUFPLENBQUM7QUFDMUIsT0FBTyxLQUFLLElBQUksTUFBTSxNQUFNLENBQUM7QUFDN0IsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLCtCQUErQixDQUFDOzs7Ozs7Ozs7O0FBbUIvRCxNQUFNLE9BQU8sa0JBQW1CLFNBQVEsY0FBYztJQXdDbEQsWUFDWSxXQUF3QixFQUN0QixRQUFrQjtRQUU1QixLQUFLLENBQUMsUUFBUSxDQUFDLENBQUM7UUFIUixnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQUN0QixhQUFRLEdBQVIsUUFBUSxDQUFVO1FBakN2QixrQkFBYSxHQUFHLG9DQUFvQyxDQUFDO1FBRXJELG9CQUFlLEdBQUcsS0FBSyxDQUFDO1FBQ3hCLHFCQUFnQixHQUFHLEtBQUssQ0FBQztRQUN6QixtQkFBYyxHQUFHLEtBQUssQ0FBQztRQUN2QixvQkFBZSxHQUFHLEtBQUssQ0FBQztRQVF4QixZQUFPLEdBQUcsS0FBSyxDQUFDO1FB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QUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLGtCQUFrQixDQUFDO1lBQ2pELEtBQUssRUFBRSxJQUFJO1NBQ2Q7S0FDSixnS0N0Q0wsbTFLQXlGQTtBRHVMSTtJQURDLFFBQVE7MkRBT1I7QUFHRDtJQURDLFFBQVE7Z0VBVVI7QUFHRDtJQURDLFFBQVE7MkRBT1I7NEZBblFRLGtCQUFrQjtrQkFaOUIsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUsWUFBWTtvQkFDdEIsU0FBUyxFQUFFLENBQUMsNkJBQTZCLENBQUM7b0JBQzFDLFdBQVcsRUFBRSw2QkFBNkI7b0JBQzFDLFNBQVMsRUFBRTt3QkFDUDs0QkFDSSxPQUFPLEVBQUUsaUJBQWlCOzRCQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxtQkFBbUIsQ0FBQzs0QkFDakQsS0FBSyxFQUFFLElBQUk7eUJBQ2Q7cUJBQ0o7aUJBQ0o7eUhBR2dCLE1BQU07c0JBQWxCLEtBQUs7Z0JBT0csYUFBYTtzQkFBckIsS0FBSztnQkFDRyxZQUFZO3NCQUFwQixLQUFLO2dCQUNHLGVBQWU7c0JBQXZCLEtBQUs7Z0JBQ0csZ0JBQWdCO3NCQUF4QixLQUFLO2dCQUNHLGNBQWM7c0JBQXRCLEtBQUs7Z0JBQ0csZUFBZTtzQkFBdkIsS0FBSztnQkFFTyxhQUFhO3NCQUF6QixLQUFLO2dCQUtHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLO2dCQUVJLE1BQU07c0JBQWYsTUFBTTtnQkFDRyxRQUFRO3NCQUFqQixNQUFNO2dCQUNHLE1BQU07c0JBQWYsTUFBTTtnQkFDRyxTQUFTO3NCQUFsQixNQUFNO2dCQUVpQixnQkFBZ0I7c0JBQXZDLFNBQVM7dUJBQUMsV0FBVztnQkEyTWQsaUJBQWlCLE1BU2pCLHNCQUFzQixNQVl0QixpQkFBaUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIEFmdGVyQ29udGVudEluaXQsXG4gICAgQ29tcG9uZW50LFxuICAgIEVsZW1lbnRSZWYsXG4gICAgRXZlbnRFbWl0dGVyLFxuICAgIGZvcndhcmRSZWYsIEluamVjdG9yLFxuICAgIElucHV0LCBPbkluaXQsXG4gICAgT3V0cHV0LFxuICAgIFZpZXdDaGlsZFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gICAgQWJzdHJhY3RDb250cm9sLFxuICAgIENvbnRyb2xWYWx1ZUFjY2Vzc29yLFxuICAgIEZvcm1BcnJheSxcbiAgICBGb3JtQnVpbGRlcixcbiAgICBGb3JtQ29udHJvbCxcbiAgICBOR19WQUxVRV9BQ0NFU1NPUlxufSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgYXV0b2JpbmQgZnJvbSAnYXV0b2JpbmQtZGVjb3JhdG9yJztcbmltcG9ydCBieXRlcyBmcm9tICdieXRlcyc7XG5pbXBvcnQgKiBhcyBtaW1lIGZyb20gJ21pbWUnO1xuaW1wb3J0IHsgRXZvQmFzZUNvbnRyb2wgfSBmcm9tICcuLi8uLi9jb21tb24vZXZvLWJhc2UtY29udHJvbCc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgRXZvVXBsb2FkSXRlbUNsaWNrRXZlbnQge1xuICAgIGZpbGU6IEZpbGU7XG4gICAgaW5kZXg6IG51bWJlcjtcbn1cblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdldm8tdXBsb2FkJyxcbiAgICBzdHlsZVVybHM6IFsnLi9ldm8tdXBsb2FkLmNvbXBvbmVudC5zY3NzJ10sXG4gICAgdGVtcGxhdGVVcmw6ICcuL2V2by11cGxvYWQuY29tcG9uZW50Lmh0bWwnLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7XG4gICAgICAgICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgICAgICAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IEV2b1VwbG9hZENvbXBvbmVudCksXG4gICAgICAgICAgICBtdWx0aTogdHJ1ZSxcbiAgICAgICAgfSxcbiAgICBdLFxufSlcbmV4cG9ydCBjbGFzcyBFdm9VcGxvYWRDb21wb25lbnQgZXh0ZW5kcyBFdm9CYXNlQ29udHJvbCBpbXBsZW1lbnRzIENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBBZnRlckNvbnRlbnRJbml0LCBPbkluaXQge1xuXG4gICAgQElucHV0KCkgc2V0IGFjY2VwdChleHRlbnNpb25zOiBzdHJpbmcpIHtcbiAgICAgICAgaWYgKGV4dGVuc2lvbnMpIHtcbiAgICAgICAgICAgIHRoaXMuYWNjZXB0ZWRNaW1lVHlwZXMgPSBleHRlbnNpb25zXG4gICAgICAgICAgICAgICAgLnNwbGl0KCcsJylcbiAgICAgICAgICAgICAgICAubWFwKGV4dGVuc2lvbiA9PiBtaW1lLmdldFR5cGUoZXh0ZW5zaW9uKSk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgQElucHV0KCkgZHJvcFpvbmVMYWJlbCA9ICfQn9C10YDQtdGC0LDRidC40YLQtSDRgdGO0LTQsCDRhNCw0LnQu9GLINC00LvRjyDQt9Cw0LPRgNGD0LfQutC4JztcbiAgICBASW5wdXQoKSBkcm9wWm9uZUhpbnQ6IHN0cmluZztcbiAgICBASW5wdXQoKSBoaWRlQ2xlYXJCdXR0b24gPSBmYWxzZTtcbiAgICBASW5wdXQoKSBoaWRlU3VibWl0QnV0dG9uID0gZmFsc2U7XG4gICAgQElucHV0KCkgY2xpY2thYmxlRmlsZXMgPSBmYWxzZTtcbiAgICBASW5wdXQoKSBlYXJseVZhbGlkYXRpb24gPSBmYWxzZTtcblxuICAgIEBJbnB1dCgpIHNldCBmaWxlU2l6ZUxpbWl0KGZpbGVTaXplOiBzdHJpbmcpIHtcbiAgICAgICAgdGhpcy5maWxlc1NpemVMaW1pdFRleHQgPSBmaWxlU2l6ZTtcbiAgICAgICAgdGhpcy5maWxlc1NpemVMaW1pdEluQnl0ZXMgPSBieXRlcyhmaWxlU2l6ZSk7XG4gICAgfVxuXG4gICAgQElucHV0KCkgbWF4RmlsZXM6IG51bWJlcjtcbiAgICBASW5wdXQoKSBsb2FkaW5nID0gZmFsc2U7XG5cbiAgICBAT3V0cHV0KCkgc3VibWl0ID0gbmV3IEV2ZW50RW1pdHRlcjxGaWxlTGlzdD4oKTtcbiAgICBAT3V0cHV0KCkgYWRkRmlsZXMgPSBuZXcgRXZlbnRFbWl0dGVyPEZpbGVMaXN0PigpO1xuICAgIEBPdXRwdXQoKSByZW1vdmUgPSBuZXcgRXZlbnRFbWl0dGVyPG51bWJlcj4oKTtcbiAgICBAT3V0cHV0KCkgY2xpY2tGaWxlID0gbmV3IEV2ZW50RW1pdHRlcjxFdm9VcGxvYWRJdGVtQ2xpY2tFdmVudD4oKTtcblxuICAgIEBWaWV3Q2hpbGQoJ2lucHV0RmlsZScpIGlucHV0RmlsZUVsZW1lbnQ6IEVsZW1lbnRSZWY7XG5cbiAgICBpc0Rpc2FibGVkID0gZmFsc2U7XG4gICAgZmlsZXNGb3JtID0gdGhpcy5mb3JtQnVpbGRlci5hcnJheShbXSwgW3RoaXMubWF4RmlsZXNWYWxpZGF0b3JdKTtcbiAgICBmaWxlc1NpemVMaW1pdFRleHQ6IHN0cmluZztcbiAgICBmaWxlc1NpemVMaW1pdEluQnl0ZXM6IG51bWJlcjtcbiAgICBzdGF0ZXMgPSB7XG4gICAgICAgIGlzRHJhZ092ZXI6IGZhbHNlLFxuICAgIH07XG4gICAgYWNjZXB0ZWRNaW1lVHlwZXM6IHN0cmluZ1tdO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgZm9ybUJ1aWxkZXI6IEZvcm1CdWlsZGVyLFxuICAgICAgICBwcm90ZWN0ZWQgaW5qZWN0b3I6IEluamVjdG9yLFxuICAgICkge1xuICAgICAgICBzdXBlcihpbmplY3Rvcik7XG4gICAgfVxuXG4gICAgbmdPbkluaXQoKSB7XG4gICAgICAgIHRoaXMuc3Vic2NyaWJlT25Gb3JtQ2hhbmdlcygpO1xuICAgIH1cblxuICAgIG5nQWZ0ZXJDb250ZW50SW5pdCgpIHtcbiAgICAgICAgdGhpcy5tZXJnZUNvbnRyb2xzRXJyb3JzKCk7XG4gICAgfVxuXG4gICAgb25DaGFuZ2UgPSAodmFsdWUpID0+IHt9O1xuICAgIG9uVG91Y2hlZCA9ICgpID0+IHt9O1xuXG4gICAgcmVnaXN0ZXJPbkNoYW5nZShmbjogYW55KSB7XG4gICAgICAgIHRoaXMub25DaGFuZ2UgPSBmbjtcbiAgICB9XG5cbiAgICByZWdpc3Rlck9uVG91Y2hlZChmbjogYW55KSB7XG4gICAgICAgIHRoaXMub25Ub3VjaGVkID0gZm47XG4gICAgfVxuXG4gICAgc2V0RGlzYWJsZWRTdGF0ZShpc0Rpc2FibGVkOiBib29sZWFuKSB7XG4gICAgICAgIHRoaXMuaXNEaXNhYmxlZCA9IGlzRGlzYWJsZWQ7XG5cbiAgICAgICAgaWYgKCFpc0Rpc2FibGVkKSB7XG4gICAgICAgICAgICB0aGlzLm1lcmdlQ29udHJvbHNFcnJvcnMoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHdyaXRlVmFsdWUoZmlsZUxpc3Q6IEZpbGVMaXN0IHwgRmlsZVtdKSB7XG4gICAgICAgIGlmIChmaWxlTGlzdCAmJiBmaWxlTGlzdC5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICBpZiAoZmlsZUxpc3QgaW5zdGFuY2VvZiBBcnJheSB8fCBmaWxlTGlzdCBpbnN0YW5jZW9mIEZpbGVMaXN0KSB7XG4gICAgICAgICAgICAgICAgdGhpcy53aXBlVXBsb2FkTGlzdCgpO1xuICAgICAgICAgICAgICAgIGlmICh0aGlzLmVhcmx5VmFsaWRhdGlvbikge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmVhcmx5VmFsaWRhdGlvbkZuKGZpbGVMaXN0KTtcbiAgICAgICAgICAgICAgICAgICAgaWYgKHRoaXMuZmlsZXNGb3JtLmVycm9ycykgeyByZXR1cm47IH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgdGhpcy5wcm9jZXNzRmlsZXMoZmlsZUxpc3QgYXMgRmlsZUxpc3QpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICB0aHJvdyBFcnJvcignW0V2b1VpS2l0XTogd3JvbmcgaW5pdGlhbCB2YWx1ZSBwYXNzZWQgdG8gXCJldm8tdXBsb2FkXCIgY29tcG9uZW50LiBPbmx5IEZpbGVMaXN0IGFuZCBGaWxlW10gYXJlIGFsbG93ZWQnKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIGdldENvbnRyb2xFcnJvcihjb250cm9sOiBBYnN0cmFjdENvbnRyb2wpOiBzdHJpbmcge1xuICAgICAgICBpZiAoIWNvbnRyb2wuZXJyb3JzKSB7XG4gICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBPYmplY3Qua2V5cyhjb250cm9sLmVycm9ycylbMF07XG4gICAgfVxuXG4gICAgaGFuZGxlRHJhZ092ZXIoZXZlbnQ6IEV2ZW50KSB7XG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuXG4gICAgICAgIGlmICh0aGlzLmxvYWRpbmcpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLnN0YXRlcy5pc0RyYWdPdmVyID0gdHJ1ZTtcbiAgICB9XG5cbiAgICBoYW5kbGVEcmFnTGVhdmUoZXZlbnQ6IEV2ZW50KSB7XG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICB0aGlzLnN0YXRlcy5pc0RyYWdPdmVyID0gZmFsc2U7XG4gICAgfVxuXG4gICAgaGFuZGxlRHJvcChldmVudDogRHJhZ0V2ZW50KSB7XG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuXG4gICAgICAgIGNvbnN0IGZpbGVzID0gZXZlbnQuZGF0YVRyYW5zZmVyLmZpbGVzO1xuXG4gICAgICAgIHRoaXMuc3RhdGVzLmlzRHJhZ092ZXIgPSBmYWxzZTtcbiAgICAgICAgaWYgKGZpbGVzLmxlbmd0aCkge1xuICAgICAgICAgICAgaWYgKHRoaXMuZWFybHlWYWxpZGF0aW9uKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5lYXJseVZhbGlkYXRpb25GbihmaWxlcyk7XG4gICAgICAgICAgICAgICAgaWYgKHRoaXMuZmlsZXNGb3JtLmVycm9ycykgeyByZXR1cm47IH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHRoaXMuYWRkRmlsZXMuZW1pdChmaWxlcyk7XG4gICAgICAgICAgICB0aGlzLnByb2Nlc3NGaWxlcyhmaWxlcyk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBoYW5kbGVJdGVtUmVtb3ZlKGluZGV4KSB7XG4gICAgICAgIGlmICh0aGlzLmxvYWRpbmcgfHwgdGhpcy5pc0Rpc2FibGVkKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5maWxlc0Zvcm0ucmVtb3ZlQXQoaW5kZXgpO1xuICAgICAgICB0aGlzLnJlbW92ZS5lbWl0KGluZGV4KTtcbiAgICB9XG5cbiAgICBoYW5kbGVSZXNldEJ1dHRvbkNsaWNrKCkge1xuICAgICAgICBpZiAodGhpcy5sb2FkaW5nIHx8IHRoaXMuaXNEaXNhYmxlZCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy53aXBlVXBsb2FkTGlzdCgpO1xuICAgIH1cblxuICAgIGhhbmRsZVN1Ym1pdEJ1dHRvbkNsaWNrKCkge1xuICAgICAgICB0aGlzLnN1Ym1pdC5lbWl0KHRoaXMuZmlsZXNGb3JtLnZhbHVlKTtcbiAgICB9XG5cbiAgICBpbnB1dENoYW5nZShmaWxlczogRmlsZUxpc3QpIHtcbiAgICAgICAgaWYgKHRoaXMuZWFybHlWYWxpZGF0aW9uKSB7XG4gICAgICAgICAgICB0aGlzLmVhcmx5VmFsaWRhdGlvbkZuKGZpbGVzKTtcbiAgICAgICAgICAgIGlmICh0aGlzLmZpbGVzRm9ybS5lcnJvcnMpIHsgcmV0dXJuOyB9XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5hZGRGaWxlcy5lbWl0KGZpbGVzKTtcbiAgICAgICAgdGhpcy5wcm9jZXNzRmlsZXMoZmlsZXMpO1xuICAgIH1cblxuICAgIGVhcmx5VmFsaWRhdGlvbkZuKGZpbGVzOiBGaWxlTGlzdCB8IEZpbGVbXSkge1xuICAgICAgICB0aGlzLmZpbGVzRm9ybS5zZXRFcnJvcnMobnVsbCk7XG4gICAgICAgIGNvbnN0IGZpbGVzQXJyYXkgPSBBcnJheS5mcm9tKGZpbGVzKTtcbiAgICAgICAgY29uc3QgZXJyb3JzID0gW107XG4gICAgICAgIGlmICh0aGlzLm1heEZpbGVzICYmIHRoaXMuaXNGaWxlc0xlbmd0aFZhbGlkKGZpbGVzQXJyYXkpKSB7XG4gICAgICAgICAgICBlcnJvcnMucHVzaCh7IG1heEZpbGVzOiB0cnVlIH0pO1xuICAgICAgICB9XG4gICAgICAgIGlmICh0aGlzLmZpbGVzU2l6ZUxpbWl0SW5CeXRlcyAmJiAhdGhpcy5pc0ZpbGVzU2l6ZVZhbGlkKGZpbGVzQXJyYXkpKSB7XG4gICAgICAgICAgICBlcnJvcnMucHVzaCh7IHNpemU6IHRydWUgfSk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHRoaXMuYWNjZXB0ZWRNaW1lVHlwZXMgJiYgIXRoaXMuaXNGaWxlc0V4dGVuc2lvblZhbGlkKGZpbGVzQXJyYXkpKSB7XG4gICAgICAgICAgICBlcnJvcnMucHVzaCh7IGV4dGVuc2lvbjogdHJ1ZSB9KTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoZXJyb3JzLmxlbmd0aCkge1xuICAgICAgICAgICAgdGhpcy5maWxlc0Zvcm0uc2V0RXJyb3JzKE9iamVjdC5hc3NpZ24oe30sIC4uLmVycm9ycykpO1xuICAgICAgICAgICAgdGhpcy5tZXJnZUNvbnRyb2xzRXJyb3JzKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBpc0ZpbGVzTGVuZ3RoVmFsaWQoZmlsZXM6IEZpbGVbXSk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5tYXhGaWxlcyA8IChmaWxlcy5sZW5ndGggKyB0aGlzLmZpbGVzRm9ybS5jb250cm9scy5sZW5ndGgpO1xuICAgIH1cblxuICAgIGlzRmlsZXNTaXplVmFsaWQoZmlsZXM6IEZpbGVbXSk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gIWZpbGVzLnNvbWUoKHsgc2l6ZSB9KSA9PiB0aGlzLmZpbGVzU2l6ZUxpbWl0SW5CeXRlcyA8IHNpemUpO1xuICAgIH1cblxuICAgIGlzRmlsZXNFeHRlbnNpb25WYWxpZChmaWxlczogRmlsZVtdKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiBmaWxlcy5ldmVyeSgoeyB0eXBlIH0pID0+IHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLmFjY2VwdGVkTWltZVR5cGVzLmluY2x1ZGVzKHR5cGUpO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwcm9jZXNzRmlsZXMoZmlsZXM6IEZpbGVMaXN0KSB7XG4gICAgICAgIGlmICh0aGlzLmxvYWRpbmcpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIEFycmF5LmZyb20oZmlsZXMpLmZvckVhY2goKGZpbGU6IEZpbGUpID0+IHsgLy8gdHNsaW50OmRpc2FibGU6bm8tZm9yLWVhY2gtcHVzaFxuICAgICAgICAgICAgdGhpcy5maWxlc0Zvcm0ucHVzaChuZXcgRm9ybUNvbnRyb2woZmlsZSwgW3RoaXMuZmlsZUV4dGVuc2lvblZhbGlkYXRvciwgdGhpcy5maWxlU2l6ZVZhbGlkYXRvcl0pKTtcbiAgICAgICAgfSk7XG5cbiAgICAgICAgaWYgKHRoaXMuaW5wdXRGaWxlRWxlbWVudCAmJiB0aGlzLmlucHV0RmlsZUVsZW1lbnQubmF0aXZlRWxlbWVudCkge1xuICAgICAgICAgICAgdGhpcy5pbnB1dEZpbGVFbGVtZW50Lm5hdGl2ZUVsZW1lbnQudmFsdWUgPSAnJztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHdpcGVVcGxvYWRMaXN0KCkge1xuICAgICAgICB3aGlsZSAodGhpcy5maWxlc0Zvcm0uY29udHJvbHMubGVuZ3RoKSB7XG4gICAgICAgICAgICB0aGlzLmZpbGVzRm9ybS5yZW1vdmVBdCgwKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgbWVyZ2VDb250cm9sc0Vycm9ycygpIHtcbiAgICAgICAgaWYgKCF0aGlzLmNvbnRyb2wpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IGVycm9ycyA9IE9iamVjdC5hc3NpZ24oe30sIHRoaXMuZmlsZXNGb3JtLmVycm9ycyk7XG4gICAgICAgIHRoaXMuZmlsZXNGb3JtLmNvbnRyb2xzLmZvckVhY2goKGNvbnRyb2w6IEZvcm1Db250cm9sKSA9PiB7XG4gICAgICAgICAgICBPYmplY3QuYXNzaWduKGVycm9ycywgY29udHJvbC5lcnJvcnMpO1xuICAgICAgICB9KTtcbiAgICAgICAgdGhpcy5jb250cm9sLnNldEVycm9ycyhPYmplY3Qua2V5cyhlcnJvcnMpLmxlbmd0aCA/IGVycm9ycyA6IG51bGwpO1xuICAgIH1cblxuICAgIHByaXZhdGUgc3Vic2NyaWJlT25Gb3JtQ2hhbmdlcygpIHtcbiAgICAgICAgdGhpcy5maWxlc0Zvcm0udmFsdWVDaGFuZ2VzLnN1YnNjcmliZSgodmFsdWUpID0+IHtcbiAgICAgICAgICAgIHRoaXMub25DaGFuZ2UodmFsdWUpO1xuICAgICAgICAgICAgdGhpcy5tZXJnZUNvbnRyb2xzRXJyb3JzKCk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIEBhdXRvYmluZFxuICAgIHByaXZhdGUgZmlsZVNpemVWYWxpZGF0b3IoY29udHJvbDogQWJzdHJhY3RDb250cm9sKSB7XG4gICAgICAgIGlmICghdGhpcy5maWxlc1NpemVMaW1pdEluQnl0ZXMpIHtcbiAgICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGNvbnRyb2wudmFsdWUuc2l6ZSA+IHRoaXMuZmlsZXNTaXplTGltaXRJbkJ5dGVzID8geyBzaXplOiB0cnVlIH0gOiBudWxsO1xuICAgIH1cblxuICAgIEBhdXRvYmluZFxuICAgIHByaXZhdGUgZmlsZUV4dGVuc2lvblZhbGlkYXRvcihjb250cm9sOiBBYnN0cmFjdENvbnRyb2wpIHtcbiAgICAgICAgaWYgKCF0aGlzLmFjY2VwdGVkTWltZVR5cGVzKSB7XG4gICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IGZpbGVUeXBlID0gKGNvbnRyb2wudmFsdWUgYXMgRmlsZSkudHlwZTtcbiAgICAgICAgY29uc3QgaXNFeHRlbnNpb25BbGxvd2VkID0gdGhpcy5hY2NlcHRlZE1pbWVUeXBlcy5pbmNsdWRlcyhmaWxlVHlwZSk7XG5cbiAgICAgICAgcmV0dXJuIGlzRXh0ZW5zaW9uQWxsb3dlZCA/IG51bGwgOiB7IGV4dGVuc2lvbjogdHJ1ZSB9O1xuICAgIH1cblxuICAgIEBhdXRvYmluZFxuICAgIHByaXZhdGUgbWF4RmlsZXNWYWxpZGF0b3IoY29udHJvbDogRm9ybUFycmF5KSB7XG4gICAgICAgIGlmICghdGhpcy5tYXhGaWxlcykge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGNvbnRyb2wuY29udHJvbHMubGVuZ3RoID4gdGhpcy5tYXhGaWxlcyA/IHsgbWF4RmlsZXM6IHRydWUgfSA6IG51bGw7XG4gICAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImV2by11cGxvYWRcIj5cbiAgICA8bGFiZWwgY2xhc3M9XCJldm8tdXBsb2FkX193cmFwcGVyXCJcbiAgICAgICAgICAgW2V2b1VpQ2xhc3NdPVwie292ZXI6IHN0YXRlcy5pc0RyYWdPdmVyLCBkaXNhYmxlZDogaXNEaXNhYmxlZCB8fCBsb2FkaW5nfVwiXG4gICAgICAgICAgIChjbGljayk9XCJvblRvdWNoZWQoKVwiXG4gICAgICAgICAgIChkcmFnb3Zlcik9XCJoYW5kbGVEcmFnT3ZlcigkZXZlbnQpXCJcbiAgICAgICAgICAgKGRyYWdsZWF2ZSk9XCJoYW5kbGVEcmFnTGVhdmUoJGV2ZW50KVwiXG4gICAgICAgICAgIChkcm9wKT1cImhhbmRsZURyb3AoJGV2ZW50KVwiPlxuICAgICAgICA8ZXZvLWljb24gY2xhc3M9XCJldm8tdXBsb2FkX191cGxvYWQtaWNvblwiIHNoYXBlPVwidXBsb2FkXCIgW2V2b1VpQ2xhc3NdPVwie2Rpc2FibGVkOiBpc0Rpc2FibGVkIHx8IGxvYWRpbmd9XCI+PC9ldm8taWNvbj5cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJldm8tdXBsb2FkX190aXRsZVwiIFtldm9VaUNsYXNzXT1cIntkaXNhYmxlZDogaXNEaXNhYmxlZCB8fCBsb2FkaW5nfVwiPnt7IGRyb3Bab25lTGFiZWwgfX08L3NwYW4+XG5cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJldm8tdXBsb2FkX19oaW50XCIgW2V2b1VpQ2xhc3NdPVwie2Rpc2FibGVkOiBpc0Rpc2FibGVkIHx8IGxvYWRpbmd9XCI+XG4gICAgICAgICAgICDQuNC70LggPHNwYW4gY2xhc3M9XCJldm8tdXBsb2FkX19mYWtlLWxpbmtcIiBbZXZvVWlDbGFzc109XCJ7ZGlzYWJsZWQ6IGlzRGlzYWJsZWQgfHwgbG9hZGluZ31cIj7Qt9Cw0LPRgNGD0LfQuNGC0LU8L3NwYW4+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiZHJvcFpvbmVIaW50XCI+XG4gICAgICAgICAgICAgICAgKDxzcGFuIGNsYXNzPVwiZXZvLXVwbG9hZF9fYWRkaXRpb25hbC1oaW50XCIgW2lubmVySFRNTF09XCJkcm9wWm9uZUhpbnQgfCBzYWZlSHRtbFwiPjwvc3Bhbj4pXG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9zcGFuPlxuXG4gICAgICAgIDxpbnB1dCBjbGFzcz1cImV2by11cGxvYWRfX2lucHV0XCJcbiAgICAgICAgICAgICAgIChjaGFuZ2UpPVwiaW5wdXRDaGFuZ2UoJGV2ZW50LnRhcmdldC5maWxlcylcIlxuICAgICAgICAgICAgICAgW2FjY2VwdF09XCJhY2NlcHRcIlxuICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cImxvYWRpbmcgfHwgaXNEaXNhYmxlZFwiXG4gICAgICAgICAgICAgICBbYXR0ci5tdWx0aXBsZV09XCJtYXhGaWxlcyA9PT0gMSA/IG51bGwgOiB0cnVlXCJcbiAgICAgICAgICAgICAgIHR5cGU9XCJmaWxlXCJcbiAgICAgICAgICAgICAgICNpbnB1dEZpbGUgLz5cbiAgICA8L2xhYmVsPlxuXG4gICAgPGV2by1hbGVydCAqbmdJZj1cIiFlYXJseVZhbGlkYXRpb24gJiYgZmlsZXNGb3JtLmVycm9ycz8ubWF4RmlsZXNcIiB0eXBlPVwiZGFuZ2VyXCI+XG4gICAgICAgIDxuZy1jb250YWluZXI+0J3QtdC70YzQt9GPINC30LDQs9GA0YPQt9C40YLRjCDQsdC+0LvQtdC1IHt7IG1heEZpbGVzIHx8IDEgfCBkZWNsaW5hdGlvbjpbXCLRhNCw0LnQu9CwXCIsIFwi0YTQsNC50LvQvtCyXCIsIFwi0YTQsNC50LvQvtCyXCJdIH19PC9uZy1jb250YWluZXI+XG4gICAgPC9ldm8tYWxlcnQ+XG4gICAgPGV2by1hbGVydCAqbmdJZj1cImVhcmx5VmFsaWRhdGlvbiAmJiBmaWxlc0Zvcm0uZXJyb3JzXCIgdHlwZT1cImRhbmdlclwiPlxuICAgICAgICA8dWwgY2xhc3M9XCJldm8tbGlzdFwiPlxuICAgICAgICAgICAgPGxpICpuZ0lmPVwiZmlsZXNGb3JtLmVycm9ycy5tYXhGaWxlc1wiPtCd0LXQu9GM0LfRjyDQt9Cw0LPRgNGD0LfQuNGC0Ywg0LHQvtC70LXQtSB7eyBtYXhGaWxlcyB8fCAxIHwgZGVjbGluYXRpb246W1wi0YTQsNC50LvQsFwiLCBcItGE0LDQudC70L7QslwiLCBcItGE0LDQudC70L7QslwiXSB9fTwvbGk+XG4gICAgICAgICAgICA8bGkgKm5nSWY9XCJmaWxlc0Zvcm0uZXJyb3JzLnNpemVcIj7QnNCw0LrRgdC40LzQsNC70YzQvdGL0Lkg0YDQsNC30LzQtdGAINC+0LTQvdC+0LPQviDRhNCw0LnQu9CwINC90LUg0LHQvtC70LXQtSB7eyBmaWxlc1NpemVMaW1pdFRleHQgfX08L2xpPlxuICAgICAgICAgICAgPGxpICpuZ0lmPVwiZmlsZXNGb3JtLmVycm9ycy5leHRlbnNpb25cIj7QktGL0LHRgNCw0L0g0YTQsNC50Lsg0L3QtdC00L7Qv9GD0YHRgtC40LzQvtCz0L4g0YTQvtGA0LzQsNGC0LA8L2xpPlxuICAgICAgICA8L3VsPlxuICAgIDwvZXZvLWFsZXJ0PlxuXG4gICAgPHVsIGNsYXNzPVwiZXZvLXVwbG9hZF9fbGlzdFwiPlxuICAgICAgICA8bGkgY2xhc3M9XCJldm8tdXBsb2FkX19saXN0LWl0ZW1cIiAqbmdGb3I9XCJsZXQgZmlsZSBvZiBmaWxlc0Zvcm0uY29udHJvbHM7IGxldCBpID0gaW5kZXhcIj5cblxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImV2by11cGxvYWRfX2l0ZW0taW5uZXJcIj5cbiAgICAgICAgICAgICAgICA8ZXZvLWljb24gY2xhc3M9XCJldm8tdXBsb2FkX19maWxlLWljb25cIlxuICAgICAgICAgICAgICAgICAgICBzaGFwZT1cImZpbGVcIlxuICAgICAgICAgICAgICAgICAgICBzdmdXaWR0aD1cIjI0XCJcbiAgICAgICAgICAgICAgICAgICAgc3ZnSGVpZ2h0PVwiMjRcIj48L2V2by1pY29uPlxuXG4gICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJldm8tdXBsb2FkX19saW5rIGV2by1saW5rXCJcbiAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJjbGlja2FibGVGaWxlc1wiXG4gICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJjbGlja0ZpbGUuZW1pdCh7IGZpbGU6IGZpbGUudmFsdWUsIGluZGV4OiBpIH0pXCJcbiAgICAgICAgICAgICAgICAgICAgPnt7IGZpbGUudmFsdWUubmFtZSB9fTwvc3Bhbj5cblxuICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiIWNsaWNrYWJsZUZpbGVzXCJcbiAgICAgICAgICAgICAgICAgICAgPnt7IGZpbGUudmFsdWUubmFtZSB9fTwvc3Bhbj5cblxuICAgICAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgICAgIDxldm8taWNvbiBjbGFzcz1cImV2by11cGxvYWRfX2J1dHRvbi1yZW1vdmVcIlxuICAgICAgICAgICAgICAgICAgICAgIHNoYXBlPVwiZGVjbGluZVwiXG4gICAgICAgICAgICAgICAgICAgICAgc3ZnV2lkdGg9XCIyNFwiXG4gICAgICAgICAgICAgICAgICAgICAgc3ZnSGVpZ2h0PVwiMjRcIlxuICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJoYW5kbGVJdGVtUmVtb3ZlKGkpXCJcbiAgICAgICAgICAgICAgICAgICAgICBbZXZvVWlDbGFzc109XCJ7ZGlzYWJsZWQ6IGxvYWRpbmcgfHwgaXNEaXNhYmxlZH1cIj5cbiAgICAgICAgICAgIDwvZXZvLWljb24+XG5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJldm8tdXBsb2FkX19saXN0LWRlbGltaXRlclwiXG4gICAgICAgICAgICAgICAgIFtldm9VaUNsYXNzXT1cIntlcnJvcjogZmlsZXNGb3JtLmNvbnRyb2xzW2ldLmVycm9yc31cIlxuICAgICAgICAgICAgICAgICBbbmdTd2l0Y2hdPVwiZ2V0Q29udHJvbEVycm9yKGZpbGVzRm9ybS5jb250cm9sc1tpXSlcIj5cbiAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCInc2l6ZSdcIj7QoNCw0LfQvNC10YAg0YTQsNC50LvQsCDQv9GA0LXQstGL0YjQsNC10YIg0LTQvtC/0YPRgdGC0LjQvNGL0Lk8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCInZXh0ZW5zaW9uJ1wiPtCd0LXQstC10YDQvdGL0Lkg0YTQvtGA0LzQsNGCINGE0LDQudC70LA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2xpPlxuICAgIDwvdWw+XG5cbiAgICA8ZGl2IGNsYXNzPVwiZXZvLXVwbG9hZF9fY29udHJvbHNcIiAqbmdJZj1cImZpbGVzRm9ybS5jb250cm9scy5sZW5ndGhcIj5cbiAgICAgICAgPGJ1dHRvbiAqbmdJZj1cIiFoaWRlQ2xlYXJCdXR0b25cIlxuICAgICAgICAgICAgICAgIGV2by1idXR0b25cbiAgICAgICAgICAgICAgICBjb2xvcj1cImRhcmtibHVlLWxpbmVkXCJcbiAgICAgICAgICAgICAgICAoY2xpY2spPVwiaGFuZGxlUmVzZXRCdXR0b25DbGljaygpXCJcbiAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwibG9hZGluZyB8fCBpc0Rpc2FibGVkXCJcbiAgICAgICAgICAgICAgICBbbG9hZGluZ109XCJsb2FkaW5nXCI+0KPQtNCw0LvQuNGC0Ywg0LLRgdGRPC9idXR0b24+XG4gICAgICAgIDxidXR0b24gKm5nSWY9XCIhaGlkZVN1Ym1pdEJ1dHRvblwiXG4gICAgICAgICAgICAgICAgZXZvLWJ1dHRvblxuICAgICAgICAgICAgICAgIGNsYXNzPVwiZXZvLXVwbG9hZF9fc3VibWl0XCJcbiAgICAgICAgICAgICAgICBjb2xvcj1cImdyZWVuXCJcbiAgICAgICAgICAgICAgICAoY2xpY2spPVwiaGFuZGxlU3VibWl0QnV0dG9uQ2xpY2soKVwiXG4gICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cImZpbGVzRm9ybS5pbnZhbGlkIHx8IGxvYWRpbmcgfHwgaXNEaXNhYmxlZFwiXG4gICAgICAgICAgICAgICAgW2xvYWRpbmddPVwibG9hZGluZ1wiPtCX0LDQs9GA0YPQt9C40YLRjDwvYnV0dG9uPlxuICAgIDwvZGl2PlxuPC9kaXY+XG4iXX0=