myrta-ui 14.0.0-beta.5 → 17.0.0-beta.10

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 (752) hide show
  1. package/README.md +1 -0
  2. package/esm2022/lib/components/alert/alert.component.mjs +43 -0
  3. package/{esm2020 → esm2022}/lib/components/alert/alert.enum.mjs +14 -14
  4. package/{esm2020 → esm2022}/lib/components/alert/alert.module.mjs +19 -19
  5. package/{esm2020 → esm2022}/lib/components/badges/badge.enum.mjs +31 -31
  6. package/{esm2020 → esm2022}/lib/components/badges/badges.module.mjs +30 -30
  7. package/esm2022/lib/components/badges/components/badge/badge.component.mjs +61 -0
  8. package/{esm2020 → esm2022}/lib/components/badges/components/badge-group/badge-group.component.mjs +11 -11
  9. package/esm2022/lib/components/breadcrumbs/breadcrumbs.component.mjs +28 -0
  10. package/{esm2020 → esm2022}/lib/components/breadcrumbs/breadcrumbs.enum.mjs +5 -5
  11. package/{esm2020 → esm2022}/lib/components/breadcrumbs/breadcrumbs.module.mjs +25 -25
  12. package/esm2022/lib/components/button/button.component.mjs +100 -0
  13. package/esm2022/lib/components/button/button.enum.mjs +27 -0
  14. package/{esm2020 → esm2022}/lib/components/button/button.module.mjs +21 -21
  15. package/esm2022/lib/components/cdk-tooltip/cdk-tooltip/tooltip-container.component.mjs +29 -0
  16. package/esm2022/lib/components/cdk-tooltip/cdk-tooltip.directive.mjs +99 -0
  17. package/{esm2020 → esm2022}/lib/components/cdk-tooltip/cdk-tooltip.module.mjs +21 -21
  18. package/{esm2020 → esm2022}/lib/components/cdk-tooltip/constants/index.mjs +69 -69
  19. package/{esm2020 → esm2022}/lib/components/cdk-tooltip/models/tooltip-data.mjs +1 -1
  20. package/esm2022/lib/components/chars-left/chars-left.component.mjs +24 -0
  21. package/{esm2020 → esm2022}/lib/components/chars-left/chars-left.module.mjs +19 -19
  22. package/esm2022/lib/components/dropdown/directives/hide-after-click.directive.mjs +24 -0
  23. package/esm2022/lib/components/dropdown/dropdown.component.mjs +107 -0
  24. package/{esm2020 → esm2022}/lib/components/dropdown/dropdown.module.mjs +21 -21
  25. package/esm2022/lib/components/error-message/error-message.component.mjs +32 -0
  26. package/{esm2020 → esm2022}/lib/components/error-message/error-message.module.mjs +19 -19
  27. package/esm2022/lib/components/form/checkbox/checkbox.component.mjs +153 -0
  28. package/esm2022/lib/components/form/checkbox/checkbox.enum.mjs +5 -0
  29. package/{esm2020 → esm2022}/lib/components/form/checkbox/checkbox.module.mjs +22 -22
  30. package/esm2022/lib/components/form/checkbox-group/checkbox-group.component.mjs +178 -0
  31. package/{esm2020 → esm2022}/lib/components/form/checkbox-group/checkbox-group.module.mjs +47 -47
  32. package/{esm2020 → esm2022}/lib/components/form/checkbox-group/components/checkbox-group-header/checkbox-group-header.component.mjs +48 -49
  33. package/esm2022/lib/components/form/checkbox-group/components/checkbox-group-item/checkbox-group-item.component.mjs +106 -0
  34. package/esm2022/lib/components/form/checkbox-group/helpers/change-group-value.mjs +20 -0
  35. package/esm2022/lib/components/form/checkbox-group/helpers/change-item-value.mjs +15 -0
  36. package/esm2022/lib/components/form/checkbox-group/helpers/filter-search-group.mjs +27 -0
  37. package/esm2022/lib/components/form/checkbox-group/helpers/get-checked-items.mjs +20 -0
  38. package/{esm2020 → esm2022}/lib/components/form/checkbox-group/helpers/get-item-by-id.mjs +10 -10
  39. package/esm2022/lib/components/form/checkbox-group/helpers/get-sorted-list.mjs +50 -0
  40. package/{esm2020 → esm2022}/lib/components/form/checkbox-group/models/checkbox-group.model.mjs +1 -1
  41. package/{esm2020 → esm2022}/lib/components/form/editor/config/default-inline-style.mjs +5 -5
  42. package/{esm2020 → esm2022}/lib/components/form/editor/config/index.mjs +1 -1
  43. package/{esm2020 → esm2022}/lib/components/form/editor/config/popups-toolbar.mjs +8 -8
  44. package/{esm2020 → esm2022}/lib/components/form/editor/config/toolbar.mjs +71 -71
  45. package/esm2022/lib/components/form/editor/editor.component.mjs +265 -0
  46. package/{esm2020 → esm2022}/lib/components/form/editor/editor.enum.mjs +1 -1
  47. package/esm2022/lib/components/form/editor/editor.module.mjs +45 -0
  48. package/{esm2020 → esm2022}/lib/components/form/editor/models/toolbar.model.mjs +1 -1
  49. package/esm2022/lib/components/form/editor/modules/change-icon-module.mjs +92 -0
  50. package/{esm2020 → esm2022}/lib/components/form/input-date-time/constants/value-models.mjs +13 -13
  51. package/{esm2020 → esm2022}/lib/components/form/input-date-time/enum/timezone.mjs +6 -6
  52. package/{esm2020 → esm2022}/lib/components/form/input-date-time/helpers/clean-date.mjs +4 -4
  53. package/esm2022/lib/components/form/input-date-time/helpers/cursor-position.mjs +23 -0
  54. package/esm2022/lib/components/form/input-date-time/helpers/formatting-from-models.mjs +10 -0
  55. package/{esm2020 → esm2022}/lib/components/form/input-date-time/helpers/formatting-moscow-timezone.mjs +9 -9
  56. package/{esm2020 → esm2022}/lib/components/form/input-date-time/helpers/validate-value-models.mjs +60 -60
  57. package/{esm2020 → esm2022}/lib/components/form/input-date-time/helpers/value-parser.mjs +38 -38
  58. package/esm2022/lib/components/form/input-date-time/input-date-time.component.mjs +386 -0
  59. package/{esm2020 → esm2022}/lib/components/form/input-date-time/input-date-time.enum.mjs +7 -7
  60. package/esm2022/lib/components/form/input-date-time/input-date-time.module.mjs +46 -0
  61. package/{esm2020 → esm2022}/lib/components/form/input-datepicker/constants/value-models.mjs +14 -14
  62. package/{esm2020 → esm2022}/lib/components/form/input-datepicker/helpers/clean-date.mjs +4 -4
  63. package/esm2022/lib/components/form/input-datepicker/helpers/cursor-position.mjs +23 -0
  64. package/esm2022/lib/components/form/input-datepicker/helpers/get-date-dayjs-object.mjs +10 -0
  65. package/esm2022/lib/components/form/input-datepicker/helpers/get-date-object.mjs +10 -0
  66. package/{esm2020 → esm2022}/lib/components/form/input-datepicker/helpers/validate-value-models.mjs +74 -74
  67. package/{esm2020 → esm2022}/lib/components/form/input-datepicker/helpers/value-parser.mjs +47 -47
  68. package/esm2022/lib/components/form/input-datepicker/input-datepicker.component.mjs +356 -0
  69. package/{esm2020 → esm2022}/lib/components/form/input-datepicker/input-datepicker.enum.mjs +6 -6
  70. package/esm2022/lib/components/form/input-datepicker/input-datepicker.module.mjs +46 -0
  71. package/{esm2020 → esm2022}/lib/components/form/input-file/enums/error-messages.enum.mjs +7 -7
  72. package/esm2022/lib/components/form/input-file/input-file.component.mjs +368 -0
  73. package/{esm2020 → esm2022}/lib/components/form/input-file/input-file.enum.mjs +7 -7
  74. package/{esm2020 → esm2022}/lib/components/form/input-file/input-file.module.mjs +26 -26
  75. package/esm2022/lib/components/form/input-file-image/components/file-image-edit-modal/file-image-edit-modal.component.mjs +88 -0
  76. package/esm2022/lib/components/form/input-file-image/input-file-image.component.mjs +356 -0
  77. package/{esm2020 → esm2022}/lib/components/form/input-file-image/input-file-image.enum.mjs +9 -9
  78. package/esm2022/lib/components/form/input-file-image/input-file-image.module.mjs +53 -0
  79. package/esm2022/lib/components/form/input-number/input-number.component.mjs +267 -0
  80. package/{esm2020 → esm2022}/lib/components/form/input-number/input-number.enum.mjs +7 -7
  81. package/esm2022/lib/components/form/input-number/input-number.module.mjs +55 -0
  82. package/esm2022/lib/components/form/input-opt/components/input-opt/input-opt.component.mjs +370 -0
  83. package/{esm2020 → esm2022}/lib/components/form/input-opt/components/input-opt/input-opt.enum.mjs +7 -7
  84. package/esm2022/lib/components/form/input-opt/directives/opt-pattern.directive.mjs +43 -0
  85. package/{esm2020 → esm2022}/lib/components/form/input-opt/input-opt.module.mjs +38 -38
  86. package/{esm2020 → esm2022}/lib/components/form/input-opt/models/input-opt.model.mjs +5 -5
  87. package/{esm2020 → esm2022}/lib/components/form/input-opt/services/input-opt.service.mjs +33 -33
  88. package/esm2022/lib/components/form/input-password/input-password.component.mjs +118 -0
  89. package/{esm2020 → esm2022}/lib/components/form/input-password/input-password.enum.mjs +7 -7
  90. package/esm2022/lib/components/form/input-password/input-password.module.mjs +36 -0
  91. package/esm2022/lib/components/form/input-phone/data/country-code.mjs +1331 -0
  92. package/esm2022/lib/components/form/input-phone/directives/native-element-injector.directive.mjs +35 -0
  93. package/{esm2020 → esm2022}/lib/components/form/input-phone/enums/country-iso.enum.mjs +246 -246
  94. package/{esm2020 → esm2022}/lib/components/form/input-phone/enums/input-phone.enum.mjs +6 -6
  95. package/{esm2020 → esm2022}/lib/components/form/input-phone/enums/mask.enum.mjs +138 -138
  96. package/{esm2020 → esm2022}/lib/components/form/input-phone/enums/phone-number-format.enum.mjs +5 -5
  97. package/{esm2020 → esm2022}/lib/components/form/input-phone/enums/search-country-field.enum.mjs +7 -7
  98. package/esm2022/lib/components/form/input-phone/input-phone.component.mjs +679 -0
  99. package/esm2022/lib/components/form/input-phone/input-phone.module.mjs +50 -0
  100. package/esm2022/lib/components/form/input-phone/input-phone.validator.mjs +61 -0
  101. package/{esm2020 → esm2022}/lib/components/form/input-phone/interfaces/change-data.mjs +1 -1
  102. package/{esm2020 → esm2022}/lib/components/form/input-phone/models/country.model.mjs +1 -1
  103. package/esm2022/lib/components/form/input-search/input-search.component.mjs +167 -0
  104. package/{esm2020 → esm2022}/lib/components/form/input-search/input-search.enum.mjs +7 -7
  105. package/esm2022/lib/components/form/input-search/input-search.module.mjs +41 -0
  106. package/esm2022/lib/components/form/input-select/input-select.component.mjs +253 -0
  107. package/{esm2020 → esm2022}/lib/components/form/input-select/input-select.enum.mjs +5 -5
  108. package/{esm2020 → esm2022}/lib/components/form/input-select/input-select.module.mjs +45 -45
  109. package/{esm2020 → esm2022}/lib/components/form/input-tel/assets/base64.mjs +3 -3
  110. package/{esm2020 → esm2022}/lib/components/form/input-tel/data/all-countries.mjs +1323 -1323
  111. package/{esm2020 → esm2022}/lib/components/form/input-tel/data/country-iso.enum.mjs +246 -246
  112. package/{esm2020 → esm2022}/lib/components/form/input-tel/data/phone-number-format.enum.mjs +5 -5
  113. package/{esm2020 → esm2022}/lib/components/form/input-tel/data/search-country-field.enum.mjs +7 -7
  114. package/esm2022/lib/components/form/input-tel/directives/input-tel.directive.mjs +66 -0
  115. package/{esm2020 → esm2022}/lib/components/form/input-tel/enums/input-phone.enum.mjs +6 -6
  116. package/esm2022/lib/components/form/input-tel/input-tel.component.mjs +400 -0
  117. package/esm2022/lib/components/form/input-tel/input-tel.module.mjs +43 -0
  118. package/{esm2020 → esm2022}/lib/components/form/input-tel/models/country.model.mjs +1 -1
  119. package/esm2022/lib/components/form/input-text/input-text.component.mjs +189 -0
  120. package/{esm2020 → esm2022}/lib/components/form/input-text/input-text.enum.mjs +14 -14
  121. package/esm2022/lib/components/form/input-text/input-text.module.mjs +49 -0
  122. package/esm2022/lib/components/form/input-textarea/input-textarea.component.mjs +197 -0
  123. package/{esm2020 → esm2022}/lib/components/form/input-textarea/input-textarea.enum.mjs +6 -6
  124. package/esm2022/lib/components/form/input-textarea/input-textarea.module.mjs +49 -0
  125. package/{esm2020 → esm2022}/lib/components/form/input-timepicker/constants/value-models.mjs +7 -7
  126. package/{esm2020 → esm2022}/lib/components/form/input-timepicker/helpers/clean-date.mjs +4 -4
  127. package/esm2022/lib/components/form/input-timepicker/helpers/cursor-position.mjs +14 -0
  128. package/{esm2020 → esm2022}/lib/components/form/input-timepicker/helpers/get-date-dayjs-object.mjs +4 -4
  129. package/{esm2020 → esm2022}/lib/components/form/input-timepicker/helpers/get-date-object.mjs +4 -4
  130. package/{esm2020 → esm2022}/lib/components/form/input-timepicker/helpers/validate-value-models.mjs +29 -29
  131. package/{esm2020 → esm2022}/lib/components/form/input-timepicker/helpers/value-parser.mjs +17 -17
  132. package/esm2022/lib/components/form/input-timepicker/input-timepicker.component.mjs +292 -0
  133. package/{esm2020 → esm2022}/lib/components/form/input-timepicker/input-timepicker.enum.mjs +6 -6
  134. package/esm2022/lib/components/form/input-timepicker/input-timepicker.module.mjs +46 -0
  135. package/esm2022/lib/components/form/radio/radio.component.mjs +91 -0
  136. package/{esm2020 → esm2022}/lib/components/form/radio/radio.enum.mjs +4 -4
  137. package/{esm2020 → esm2022}/lib/components/form/radio/radio.module.mjs +20 -20
  138. package/esm2022/lib/components/form/radio-group/components/radio-group-header/radio-group-header.component.mjs +45 -0
  139. package/esm2022/lib/components/form/radio-group/components/radio-group-item/radio-group-item.component.mjs +66 -0
  140. package/esm2022/lib/components/form/radio-group/helpers/filter-search-group.mjs +27 -0
  141. package/{esm2020 → esm2022}/lib/components/form/radio-group/helpers/get-item-by-id.mjs +10 -10
  142. package/esm2022/lib/components/form/radio-group/helpers/move-selected-to-first.mjs +27 -0
  143. package/{esm2020 → esm2022}/lib/components/form/radio-group/models/radio-group.model.mjs +2 -2
  144. package/esm2022/lib/components/form/radio-group/radio-group.component.mjs +175 -0
  145. package/esm2022/lib/components/form/radio-group/radio-group.module.mjs +26 -0
  146. package/esm2022/lib/components/form/rating/rating.component.mjs +215 -0
  147. package/{esm2020 → esm2022}/lib/components/form/rating/rating.enum.mjs +15 -15
  148. package/{esm2020 → esm2022}/lib/components/form/rating/rating.module.mjs +25 -25
  149. package/esm2022/lib/components/form/switch/switch.component.mjs +95 -0
  150. package/{esm2020 → esm2022}/lib/components/form/switch/switch.enum.mjs +10 -10
  151. package/{esm2020 → esm2022}/lib/components/form/switch/switch.module.mjs +21 -21
  152. package/esm2022/lib/components/gallery/components/gallery-confirm-modal/gallery-confirm-modal.component.mjs +37 -0
  153. package/esm2022/lib/components/gallery/components/gallery-item/gallery-item.component.mjs +112 -0
  154. package/{esm2020 → esm2022}/lib/components/gallery/constants/custom-buttons-default.mjs +6 -6
  155. package/{esm2020 → esm2022}/lib/components/gallery/constants/thumbs-config-default.mjs +4 -4
  156. package/esm2022/lib/components/gallery/gallery.component.mjs +203 -0
  157. package/{esm2020 → esm2022}/lib/components/gallery/gallery.module.mjs +54 -54
  158. package/{esm2020 → esm2022}/lib/components/gallery/models/gallery-item.model.mjs +1 -1
  159. package/esm2022/lib/components/gallery/services/gallery.service.mjs +33 -0
  160. package/esm2022/lib/components/hint-error-message/hint-error-message.component.mjs +121 -0
  161. package/{esm2020 → esm2022}/lib/components/hint-error-message/hint-error-message.module.mjs +19 -19
  162. package/esm2022/lib/components/icon-button/icon-button.component.mjs +49 -0
  163. package/{esm2020 → esm2022}/lib/components/icon-button/icon-button.enum.mjs +15 -15
  164. package/{esm2020 → esm2022}/lib/components/icon-button/icon-button.module.mjs +19 -19
  165. package/esm2022/lib/components/label/label.component.mjs +143 -0
  166. package/{esm2020 → esm2022}/lib/components/label/label.module.mjs +25 -25
  167. package/esm2022/lib/components/link/link.component.mjs +48 -0
  168. package/{esm2020 → esm2022}/lib/components/link/link.enum.mjs +19 -19
  169. package/{esm2020 → esm2022}/lib/components/link/link.module.mjs +19 -19
  170. package/esm2022/lib/components/loader/loader.component.mjs +24 -0
  171. package/{esm2020 → esm2022}/lib/components/loader/loader.enum.mjs +19 -19
  172. package/{esm2020 → esm2022}/lib/components/loader/loader.module.mjs +19 -19
  173. package/esm2022/lib/components/modal/modal.component.mjs +137 -0
  174. package/{esm2020 → esm2022}/lib/components/modal/modal.emun.mjs +20 -20
  175. package/{esm2020 → esm2022}/lib/components/modal/modal.module.mjs +20 -20
  176. package/esm2022/lib/components/pages-nav/pages-nav.component.mjs +31 -0
  177. package/{esm2020 → esm2022}/lib/components/pages-nav/pages-nav.enum.mjs +5 -5
  178. package/{esm2020 → esm2022}/lib/components/pages-nav/pages-nav.module.mjs +24 -24
  179. package/esm2022/lib/components/paginator/paginator.component.mjs +140 -0
  180. package/{esm2020 → esm2022}/lib/components/paginator/paginator.enum.mjs +5 -5
  181. package/esm2022/lib/components/paginator/paginator.module.mjs +31 -0
  182. package/esm2022/lib/components/progress/progress.component.mjs +24 -0
  183. package/{esm2020 → esm2022}/lib/components/progress/progress.enum.mjs +7 -7
  184. package/{esm2020 → esm2022}/lib/components/progress/progress.module.mjs +19 -19
  185. package/esm2022/lib/components/save-state/components/save-state-checkbox/save-state-checkbox.component.mjs +16 -0
  186. package/esm2022/lib/components/save-state/components/save-state-checkbox-group/save-state-checkbox-group.component.mjs +16 -0
  187. package/esm2022/lib/components/save-state/components/save-state-editor/save-state-editor.component.mjs +16 -0
  188. package/esm2022/lib/components/save-state/components/save-state-input/save-state-input.component.mjs +16 -0
  189. package/esm2022/lib/components/save-state/components/save-state-switch/save-state-switch.component.mjs +16 -0
  190. package/esm2022/lib/components/save-state/save-state.component.mjs +40 -0
  191. package/{esm2020 → esm2022}/lib/components/save-state/save-state.enum.mjs +2 -2
  192. package/{esm2020 → esm2022}/lib/components/save-state/save-state.module.mjs +37 -37
  193. package/esm2022/lib/components/stepper/stepper.component.mjs +52 -0
  194. package/{esm2020 → esm2022}/lib/components/stepper/stepper.enum.mjs +5 -5
  195. package/{esm2020 → esm2022}/lib/components/stepper/stepper.module.mjs +20 -20
  196. package/esm2022/lib/components/table/components/column/column.component.mjs +40 -0
  197. package/{esm2020 → esm2022}/lib/components/table/default/default-pager-settings.mjs +6 -6
  198. package/{esm2020 → esm2022}/lib/components/table/models/data-state-change.event.mjs +1 -1
  199. package/{esm2020 → esm2022}/lib/components/table/models/index.mjs +3 -3
  200. package/{esm2020 → esm2022}/lib/components/table/models/pager-settings.mjs +1 -1
  201. package/esm2022/lib/components/table/table.component.mjs +281 -0
  202. package/{esm2020 → esm2022}/lib/components/table/table.enum.mjs +7 -7
  203. package/{esm2020 → esm2022}/lib/components/table/table.module.mjs +50 -50
  204. package/esm2022/lib/components/tabs/tab/tab.component.mjs +33 -0
  205. package/esm2022/lib/components/tabs/tabs-group/tabs-group.component.mjs +27 -0
  206. package/{esm2020 → esm2022}/lib/components/tabs/tabs.enum.mjs +13 -13
  207. package/{esm2020 → esm2022}/lib/components/tabs/tabs.module.mjs +20 -20
  208. package/esm2022/lib/components/tooltip/services/tooltip.service.mjs +65 -0
  209. package/esm2022/lib/components/tooltip/tooltip-trigger/tooltip-trigger.component.mjs +36 -0
  210. package/{esm2020 → esm2022}/lib/components/tooltip/tooltip-trigger/tooltip-trigger.enum.mjs +10 -10
  211. package/esm2022/lib/components/tooltip/tooltip.component.mjs +59 -0
  212. package/{esm2020 → esm2022}/lib/components/tooltip/tooltip.enum.mjs +5 -5
  213. package/{esm2020 → esm2022}/lib/components/tooltip/tooltip.module.mjs +21 -21
  214. package/{esm2020 → esm2022}/lib/components/truncate-text/directives/truncate-text.directive.mjs +149 -139
  215. package/esm2022/lib/components/truncate-text/truncate-text.component.mjs +30 -0
  216. package/{esm2020 → esm2022}/lib/components/truncate-text/truncate-text.enum.mjs +1 -1
  217. package/{esm2020 → esm2022}/lib/components/truncate-text/truncate-text.module.mjs +21 -21
  218. package/esm2022/lib/components/warning-message/warning-message.component.mjs +29 -0
  219. package/{esm2020 → esm2022}/lib/components/warning-message/warning-message.module.mjs +19 -19
  220. package/esm2022/lib/components/wrappers/content-wrapper/content-wrapper.component.mjs +25 -0
  221. package/{esm2020 → esm2022}/lib/components/wrappers/content-wrapper/content-wrapper.enum.mjs +5 -5
  222. package/{esm2020 → esm2022}/lib/components/wrappers/content-wrapper/content-wrapper.module.mjs +19 -19
  223. package/esm2022/lib/components/wrappers/controls-wrapper/components/controls-item/controls-item.component.mjs +15 -0
  224. package/esm2022/lib/components/wrappers/controls-wrapper/controls-wrapper.component.mjs +23 -0
  225. package/{esm2020 → esm2022}/lib/components/wrappers/controls-wrapper/controls-wrapper.enum.mjs +6 -6
  226. package/{esm2020 → esm2022}/lib/components/wrappers/controls-wrapper/controls-wrapper.module.mjs +20 -20
  227. package/esm2022/lib/components/wrappers/widget-wrapper/widget-wrapper.component.mjs +99 -0
  228. package/{esm2020 → esm2022}/lib/components/wrappers/widget-wrapper/widget-wrapper.enum.mjs +16 -16
  229. package/{esm2020 → esm2022}/lib/components/wrappers/widget-wrapper/widget-wrapper.module.mjs +24 -24
  230. package/esm2022/lib/directives/autosize/autosize.directive.mjs +57 -0
  231. package/{esm2020 → esm2022}/lib/directives/autosize/autosize.module.mjs +24 -24
  232. package/esm2022/lib/directives/truncate/truncate.directive.mjs +34 -0
  233. package/{esm2020 → esm2022}/lib/directives/truncate/truncate.module.mjs +18 -18
  234. package/{esm2020 → esm2022}/lib/enums/typed.input.state.mjs +8 -8
  235. package/esm2022/lib/helpers/extension/input-file.extension.mjs +39 -0
  236. package/esm2022/lib/helpers/formatting-date.mjs +51 -0
  237. package/{esm2020 → esm2022}/lib/helpers/formatting-dates-from-array.mjs +18 -18
  238. package/{esm2020 → esm2022}/lib/helpers/formatting-iso-to-string.mjs +12 -12
  239. package/{esm2020 → esm2022}/lib/helpers/index.mjs +7 -7
  240. package/{esm2020 → esm2022}/lib/helpers/number-format.mjs +8 -8
  241. package/esm2022/lib/helpers/string-hash-code.mjs +17 -0
  242. package/{esm2020 → esm2022}/lib/helpers/word-form.mjs +10 -10
  243. package/{esm2020 → esm2022}/lib/models/index.mjs +2 -2
  244. package/esm2022/lib/models/input-file/input-file.model.mjs +2 -0
  245. package/{esm2020 → esm2022}/lib/models/typed-input-model.mjs +1 -1
  246. package/{esm2020 → esm2022}/lib/pipes/currency/currency.module.mjs +20 -20
  247. package/esm2022/lib/pipes/currency/currency.pipe.mjs +22 -0
  248. package/{esm2020 → esm2022}/lib/pipes/date/date-format.module.mjs +19 -19
  249. package/esm2022/lib/pipes/date/date-format.pipe.mjs +21 -0
  250. package/esm2022/lib/pipes/date/date-time-format.pipe.mjs +21 -0
  251. package/{esm2020 → esm2022}/lib/pipes/date/enums/timezone.mjs +9 -9
  252. package/{esm2020 → esm2022}/lib/pipes/date/helpers/change-timezone.mjs +22 -22
  253. package/{esm2020 → esm2022}/lib/pipes/phone/phone-format.module.mjs +18 -18
  254. package/esm2022/lib/pipes/phone/phone-format.pipe.mjs +23 -0
  255. package/{esm2020 → esm2022}/lib/pipes/safe/safe.module.mjs +20 -20
  256. package/esm2022/lib/pipes/safe/safe.pipe.mjs +21 -0
  257. package/{esm2020 → esm2022}/lib/pipes/truncate/truncate.module.mjs +20 -20
  258. package/esm2022/lib/pipes/truncate/truncate.pipe.mjs +23 -0
  259. package/esm2022/lib/services/file-upload/file-upload.service.mjs +28 -0
  260. package/esm2022/lib/services/index.mjs +11 -0
  261. package/esm2022/lib/services/modal-service/components/alert-modal/alert-modal.component.mjs +44 -0
  262. package/esm2022/lib/services/modal-service/components/confirm-modal/confirm-modal.component.mjs +48 -0
  263. package/esm2022/lib/services/modal-service/helpers/index.mjs +5 -0
  264. package/esm2022/lib/services/modal-service/helpers/modal-default-config.mjs +14 -0
  265. package/esm2022/lib/services/modal-service/helpers/modal-ref.mjs +29 -0
  266. package/esm2022/lib/services/modal-service/helpers/modal-tokens.mjs +4 -0
  267. package/esm2022/lib/services/modal-service/helpers/modal.component.mjs +4 -0
  268. package/esm2022/lib/services/modal-service/modal-service.module.mjs +25 -0
  269. package/esm2022/lib/services/modal-service/modal-service.service.mjs +84 -0
  270. package/esm2022/lib/services/modal-service/models/modal-config.model.mjs +2 -0
  271. package/esm2022/lib/services/mrx-autosave/mrx-autosave.service.mjs +43 -0
  272. package/esm2022/lib/services/mrx-form-validator/mrx-form-validator.mjs +283 -0
  273. package/{esm2020 → esm2022}/lib/services/save-store/constants/constants.mjs +1 -1
  274. package/{esm2020 → esm2022}/lib/services/save-store/models/save-store.model.mjs +1 -1
  275. package/{esm2020 → esm2022}/lib/services/save-store/save-store.module.mjs +29 -29
  276. package/{esm2020 → esm2022}/lib/services/save-store/store/actions.mjs +22 -22
  277. package/esm2022/lib/services/save-store/store/effect.mjs +61 -0
  278. package/esm2022/lib/services/save-store/store/reducer.mjs +96 -0
  279. package/{esm2020 → esm2022}/lib/services/save-store/store/selectors.mjs +4 -4
  280. package/{esm2020 → esm2022}/lib/services/save-store/store/state.mjs +3 -3
  281. package/{esm2020 → esm2022}/myrta-ui.mjs +4 -4
  282. package/esm2022/public-api.mjs +176 -0
  283. package/fesm2022/myrta-ui.mjs +15470 -0
  284. package/fesm2022/myrta-ui.mjs.map +1 -0
  285. package/index.d.ts +5 -5
  286. package/lib/components/alert/alert.component.d.ts +17 -17
  287. package/lib/components/alert/alert.enum.d.ts +13 -13
  288. package/lib/components/alert/alert.module.d.ts +8 -8
  289. package/lib/components/badges/badge.enum.d.ts +38 -38
  290. package/lib/components/badges/badges.module.d.ts +9 -9
  291. package/lib/components/badges/components/badge/badge.component.d.ts +21 -21
  292. package/lib/components/badges/components/badge-group/badge-group.component.d.ts +5 -5
  293. package/lib/components/breadcrumbs/breadcrumbs.component.d.ts +11 -11
  294. package/lib/components/breadcrumbs/breadcrumbs.enum.d.ts +11 -11
  295. package/lib/components/breadcrumbs/breadcrumbs.module.d.ts +8 -8
  296. package/lib/components/button/button.component.d.ts +31 -31
  297. package/lib/components/button/button.enum.d.ts +27 -29
  298. package/lib/components/button/button.module.d.ts +10 -10
  299. package/lib/components/cdk-tooltip/cdk-tooltip/tooltip-container.component.d.ts +13 -13
  300. package/lib/components/cdk-tooltip/cdk-tooltip.directive.d.ts +24 -24
  301. package/lib/components/cdk-tooltip/cdk-tooltip.module.d.ts +10 -10
  302. package/lib/components/cdk-tooltip/constants/index.d.ts +7 -7
  303. package/lib/components/cdk-tooltip/models/tooltip-data.d.ts +6 -6
  304. package/lib/components/chars-left/chars-left.component.d.ts +9 -10
  305. package/lib/components/chars-left/chars-left.module.d.ts +8 -8
  306. package/lib/components/dropdown/directives/hide-after-click.directive.d.ts +9 -9
  307. package/lib/components/dropdown/dropdown.component.d.ts +26 -26
  308. package/lib/components/dropdown/dropdown.module.d.ts +10 -10
  309. package/lib/components/error-message/error-message.component.d.ts +10 -10
  310. package/lib/components/error-message/error-message.module.d.ts +8 -8
  311. package/lib/components/form/checkbox/checkbox.component.d.ts +48 -46
  312. package/lib/components/form/checkbox/checkbox.enum.d.ts +14 -10
  313. package/lib/components/form/checkbox/checkbox.module.d.ts +11 -11
  314. package/lib/components/form/checkbox-group/checkbox-group.component.d.ts +54 -56
  315. package/lib/components/form/checkbox-group/checkbox-group.module.d.ts +16 -16
  316. package/lib/components/form/checkbox-group/components/checkbox-group-header/checkbox-group-header.component.d.ts +19 -19
  317. package/lib/components/form/checkbox-group/components/checkbox-group-item/checkbox-group-item.component.d.ts +26 -29
  318. package/lib/components/form/checkbox-group/helpers/change-group-value.d.ts +3 -3
  319. package/lib/components/form/checkbox-group/helpers/change-item-value.d.ts +3 -3
  320. package/lib/components/form/checkbox-group/helpers/filter-search-group.d.ts +2 -2
  321. package/lib/components/form/checkbox-group/helpers/get-checked-items.d.ts +2 -2
  322. package/lib/components/form/checkbox-group/helpers/get-item-by-id.d.ts +2 -2
  323. package/lib/components/form/checkbox-group/helpers/get-sorted-list.d.ts +2 -2
  324. package/lib/components/form/checkbox-group/models/checkbox-group.model.d.ts +15 -15
  325. package/lib/components/form/editor/config/default-inline-style.d.ts +11 -11
  326. package/lib/components/form/editor/config/index.d.ts +1 -1
  327. package/lib/components/form/editor/config/popups-toolbar.d.ts +15 -15
  328. package/lib/components/form/editor/config/toolbar.d.ts +2 -2
  329. package/lib/components/form/editor/editor.component.d.ts +65 -57
  330. package/lib/components/form/editor/editor.enum.d.ts +5 -5
  331. package/lib/components/form/editor/editor.module.d.ts +14 -14
  332. package/lib/components/form/editor/models/toolbar.model.d.ts +6 -6
  333. package/lib/components/form/editor/modules/change-icon-module.d.ts +1 -1
  334. package/lib/components/form/input-date-time/constants/value-models.d.ts +3 -3
  335. package/lib/components/form/input-date-time/enum/timezone.d.ts +6 -6
  336. package/lib/components/form/input-date-time/helpers/clean-date.d.ts +1 -1
  337. package/lib/components/form/input-date-time/helpers/cursor-position.d.ts +1 -1
  338. package/lib/components/form/input-date-time/helpers/formatting-from-models.d.ts +3 -3
  339. package/lib/components/form/input-date-time/helpers/formatting-moscow-timezone.d.ts +2 -2
  340. package/lib/components/form/input-date-time/helpers/validate-value-models.d.ts +19 -19
  341. package/lib/components/form/input-date-time/helpers/value-parser.d.ts +4 -4
  342. package/lib/components/form/input-date-time/input-date-time.component.d.ts +72 -76
  343. package/lib/components/form/input-date-time/input-date-time.enum.d.ts +21 -21
  344. package/lib/components/form/input-date-time/input-date-time.module.d.ts +13 -13
  345. package/lib/components/form/input-datepicker/constants/value-models.d.ts +3 -3
  346. package/lib/components/form/input-datepicker/helpers/clean-date.d.ts +1 -1
  347. package/lib/components/form/input-datepicker/helpers/cursor-position.d.ts +1 -1
  348. package/lib/components/form/input-datepicker/helpers/get-date-dayjs-object.d.ts +3 -3
  349. package/lib/components/form/input-datepicker/helpers/get-date-object.d.ts +2 -2
  350. package/lib/components/form/input-datepicker/helpers/validate-value-models.d.ts +20 -20
  351. package/lib/components/form/input-datepicker/helpers/value-parser.d.ts +3 -3
  352. package/lib/components/form/input-datepicker/input-datepicker.component.d.ts +69 -70
  353. package/lib/components/form/input-datepicker/input-datepicker.enum.d.ts +12 -12
  354. package/lib/components/form/input-datepicker/input-datepicker.module.d.ts +13 -13
  355. package/lib/components/form/input-file/enums/error-messages.enum.d.ts +6 -6
  356. package/lib/components/form/input-file/input-file.component.d.ts +74 -72
  357. package/lib/components/form/input-file/input-file.enum.d.ts +7 -7
  358. package/lib/components/form/input-file/input-file.module.d.ts +13 -13
  359. package/lib/components/form/input-file-image/components/file-image-edit-modal/file-image-edit-modal.component.d.ts +43 -39
  360. package/lib/components/form/input-file-image/input-file-image.component.d.ts +57 -61
  361. package/lib/components/form/input-file-image/input-file-image.enum.d.ts +8 -8
  362. package/lib/components/form/input-file-image/input-file-image.module.d.ts +15 -16
  363. package/lib/components/form/input-number/input-number.component.d.ts +64 -69
  364. package/lib/components/form/input-number/input-number.enum.d.ts +12 -12
  365. package/lib/components/form/input-number/input-number.module.d.ts +13 -13
  366. package/lib/components/form/input-opt/components/input-opt/input-opt.component.d.ts +77 -77
  367. package/lib/components/form/input-opt/components/input-opt/input-opt.enum.d.ts +7 -7
  368. package/lib/components/form/input-opt/directives/opt-pattern.directive.d.ts +8 -8
  369. package/lib/components/form/input-opt/input-opt.module.d.ts +11 -11
  370. package/lib/components/form/input-opt/models/input-opt.model.d.ts +26 -26
  371. package/lib/components/form/input-opt/services/input-opt.service.d.ts +11 -11
  372. package/lib/components/form/input-password/input-password.component.d.ts +38 -43
  373. package/lib/components/form/input-password/input-password.enum.d.ts +7 -11
  374. package/lib/components/form/input-password/input-password.module.d.ts +11 -13
  375. package/lib/components/form/input-phone/data/country-code.d.ts +6 -6
  376. package/lib/components/form/input-phone/directives/native-element-injector.directive.d.ts +11 -11
  377. package/lib/components/form/input-phone/enums/country-iso.enum.d.ts +245 -245
  378. package/lib/components/form/input-phone/enums/input-phone.enum.d.ts +11 -11
  379. package/lib/components/form/input-phone/enums/mask.enum.d.ts +8 -8
  380. package/lib/components/form/input-phone/enums/phone-number-format.enum.d.ts +4 -4
  381. package/lib/components/form/input-phone/enums/search-country-field.enum.d.ts +6 -6
  382. package/lib/components/form/input-phone/input-phone.component.d.ts +132 -132
  383. package/lib/components/form/input-phone/input-phone.module.d.ts +14 -14
  384. package/lib/components/form/input-phone/input-phone.validator.d.ts +5 -5
  385. package/lib/components/form/input-phone/interfaces/change-data.d.ts +9 -9
  386. package/lib/components/form/input-phone/models/country.model.d.ts +13 -13
  387. package/lib/components/form/input-search/input-search.component.d.ts +48 -52
  388. package/lib/components/form/input-search/input-search.enum.d.ts +6 -11
  389. package/lib/components/form/input-search/input-search.module.d.ts +12 -13
  390. package/lib/components/form/input-select/input-select.component.d.ts +94 -86
  391. package/lib/components/form/input-select/input-select.enum.d.ts +10 -10
  392. package/lib/components/form/input-select/input-select.module.d.ts +14 -14
  393. package/lib/components/form/input-tel/assets/base64.d.ts +3 -3
  394. package/lib/components/form/input-tel/data/all-countries.d.ts +1 -1
  395. package/lib/components/form/input-tel/data/country-iso.enum.d.ts +245 -245
  396. package/lib/components/form/input-tel/data/phone-number-format.enum.d.ts +5 -5
  397. package/lib/components/form/input-tel/data/search-country-field.enum.d.ts +6 -6
  398. package/lib/components/form/input-tel/directives/input-tel.directive.d.ts +21 -21
  399. package/lib/components/form/input-tel/enums/input-phone.enum.d.ts +11 -11
  400. package/lib/components/form/input-tel/input-tel.component.d.ts +89 -89
  401. package/lib/components/form/input-tel/input-tel.module.d.ts +13 -14
  402. package/lib/components/form/input-tel/models/country.model.d.ts +18 -18
  403. package/lib/components/form/input-text/input-text.component.d.ts +54 -57
  404. package/lib/components/form/input-text/input-text.enum.d.ts +19 -19
  405. package/lib/components/form/input-text/input-text.module.d.ts +14 -14
  406. package/lib/components/form/input-textarea/input-textarea.component.d.ts +54 -49
  407. package/lib/components/form/input-textarea/input-textarea.enum.d.ts +11 -11
  408. package/lib/components/form/input-textarea/input-textarea.module.d.ts +14 -14
  409. package/lib/components/form/input-timepicker/constants/value-models.d.ts +2 -2
  410. package/lib/components/form/input-timepicker/helpers/clean-date.d.ts +1 -1
  411. package/lib/components/form/input-timepicker/helpers/cursor-position.d.ts +1 -1
  412. package/lib/components/form/input-timepicker/helpers/get-date-dayjs-object.d.ts +3 -3
  413. package/lib/components/form/input-timepicker/helpers/get-date-object.d.ts +2 -2
  414. package/lib/components/form/input-timepicker/helpers/validate-value-models.d.ts +10 -10
  415. package/lib/components/form/input-timepicker/helpers/value-parser.d.ts +2 -2
  416. package/lib/components/form/input-timepicker/input-timepicker.component.d.ts +60 -60
  417. package/lib/components/form/input-timepicker/input-timepicker.enum.d.ts +11 -11
  418. package/lib/components/form/input-timepicker/input-timepicker.module.d.ts +13 -13
  419. package/lib/components/form/radio/radio.component.d.ts +29 -29
  420. package/lib/components/form/radio/radio.enum.d.ts +4 -4
  421. package/lib/components/form/radio/radio.module.d.ts +9 -9
  422. package/lib/components/form/radio-group/components/radio-group-header/radio-group-header.component.d.ts +18 -20
  423. package/lib/components/form/radio-group/components/radio-group-item/radio-group-item.component.d.ts +26 -28
  424. package/lib/components/form/radio-group/helpers/filter-search-group.d.ts +2 -2
  425. package/lib/components/form/radio-group/helpers/get-item-by-id.d.ts +2 -2
  426. package/lib/components/form/radio-group/helpers/move-selected-to-first.d.ts +2 -2
  427. package/lib/components/form/radio-group/models/radio-group.model.d.ts +8 -12
  428. package/lib/components/form/radio-group/radio-group.component.d.ts +57 -60
  429. package/lib/components/form/radio-group/radio-group.module.d.ts +15 -16
  430. package/lib/components/form/rating/rating.component.d.ts +51 -51
  431. package/lib/components/form/rating/rating.enum.d.ts +27 -27
  432. package/lib/components/form/rating/rating.module.d.ts +9 -9
  433. package/lib/components/form/switch/switch.component.d.ts +32 -32
  434. package/lib/components/form/switch/switch.enum.d.ts +15 -15
  435. package/lib/components/form/switch/switch.module.d.ts +10 -10
  436. package/lib/components/gallery/components/gallery-confirm-modal/gallery-confirm-modal.component.d.ts +20 -17
  437. package/lib/components/gallery/components/gallery-item/gallery-item.component.d.ts +38 -38
  438. package/lib/components/gallery/constants/custom-buttons-default.d.ts +3 -3
  439. package/lib/components/gallery/constants/thumbs-config-default.d.ts +2 -2
  440. package/lib/components/gallery/gallery.component.d.ts +38 -38
  441. package/lib/components/gallery/gallery.module.d.ts +16 -16
  442. package/lib/components/gallery/models/gallery-item.model.d.ts +24 -24
  443. package/lib/components/gallery/services/gallery.service.d.ts +14 -14
  444. package/lib/components/hint-error-message/hint-error-message.component.d.ts +21 -21
  445. package/lib/components/hint-error-message/hint-error-message.module.d.ts +8 -8
  446. package/lib/components/icon-button/icon-button.component.d.ts +19 -19
  447. package/lib/components/icon-button/icon-button.enum.d.ts +15 -15
  448. package/lib/components/icon-button/icon-button.module.d.ts +9 -9
  449. package/lib/components/label/label.component.d.ts +44 -44
  450. package/lib/components/label/label.module.d.ts +14 -14
  451. package/lib/components/link/link.component.d.ts +18 -18
  452. package/lib/components/link/link.enum.d.ts +19 -19
  453. package/lib/components/link/link.module.d.ts +8 -8
  454. package/lib/components/loader/loader.component.d.ts +10 -10
  455. package/lib/components/loader/loader.enum.d.ts +19 -19
  456. package/lib/components/loader/loader.module.d.ts +8 -8
  457. package/lib/components/modal/modal.component.d.ts +36 -37
  458. package/lib/components/modal/modal.emun.d.ts +20 -20
  459. package/lib/components/modal/modal.module.d.ts +9 -9
  460. package/lib/components/pages-nav/pages-nav.component.d.ts +12 -12
  461. package/lib/components/pages-nav/pages-nav.enum.d.ts +5 -5
  462. package/lib/components/pages-nav/pages-nav.module.d.ts +8 -8
  463. package/lib/components/paginator/paginator.component.d.ts +29 -31
  464. package/lib/components/paginator/paginator.enum.d.ts +10 -10
  465. package/lib/components/paginator/paginator.module.d.ts +10 -10
  466. package/lib/components/progress/progress.component.d.ts +10 -10
  467. package/lib/components/progress/progress.enum.d.ts +7 -7
  468. package/lib/components/progress/progress.module.d.ts +8 -8
  469. package/lib/components/save-state/components/save-state-checkbox/save-state-checkbox.component.d.ts +8 -8
  470. package/lib/components/save-state/components/save-state-checkbox-group/save-state-checkbox-group.component.d.ts +8 -8
  471. package/lib/components/save-state/components/save-state-editor/save-state-editor.component.d.ts +8 -8
  472. package/lib/components/save-state/components/save-state-input/save-state-input.component.d.ts +8 -8
  473. package/lib/components/save-state/components/save-state-switch/save-state-switch.component.d.ts +8 -8
  474. package/lib/components/save-state/save-state.component.d.ts +13 -13
  475. package/lib/components/save-state/save-state.enum.d.ts +1 -1
  476. package/lib/components/save-state/save-state.module.d.ts +13 -13
  477. package/lib/components/stepper/stepper.component.d.ts +17 -17
  478. package/lib/components/stepper/stepper.enum.d.ts +5 -5
  479. package/lib/components/stepper/stepper.module.d.ts +9 -9
  480. package/lib/components/table/components/column/column.component.d.ts +14 -14
  481. package/lib/components/table/default/default-pager-settings.d.ts +2 -2
  482. package/lib/components/table/models/data-state-change.event.d.ts +15 -15
  483. package/lib/components/table/models/index.d.ts +3 -3
  484. package/lib/components/table/models/pager-settings.d.ts +22 -22
  485. package/lib/components/table/table.component.d.ts +55 -55
  486. package/lib/components/table/table.enum.d.ts +32 -32
  487. package/lib/components/table/table.module.d.ts +14 -14
  488. package/lib/components/tabs/tab/tab.component.d.ts +13 -13
  489. package/lib/components/tabs/tabs-group/tabs-group.component.d.ts +11 -11
  490. package/lib/components/tabs/tabs.enum.d.ts +11 -11
  491. package/lib/components/tabs/tabs.module.d.ts +9 -9
  492. package/lib/components/tooltip/services/tooltip.service.d.ts +18 -18
  493. package/lib/components/tooltip/tooltip-trigger/tooltip-trigger.component.d.ts +15 -15
  494. package/lib/components/tooltip/tooltip-trigger/tooltip-trigger.enum.d.ts +10 -10
  495. package/lib/components/tooltip/tooltip.component.d.ts +18 -18
  496. package/lib/components/tooltip/tooltip.enum.d.ts +4 -4
  497. package/lib/components/tooltip/tooltip.module.d.ts +10 -10
  498. package/lib/components/truncate-text/directives/truncate-text.directive.d.ts +37 -37
  499. package/lib/components/truncate-text/truncate-text.component.d.ts +12 -12
  500. package/lib/components/truncate-text/truncate-text.enum.d.ts +2 -2
  501. package/lib/components/truncate-text/truncate-text.module.d.ts +10 -10
  502. package/lib/components/warning-message/warning-message.component.d.ts +9 -9
  503. package/lib/components/warning-message/warning-message.module.d.ts +8 -8
  504. package/lib/components/wrappers/content-wrapper/content-wrapper.component.d.ts +10 -10
  505. package/lib/components/wrappers/content-wrapper/content-wrapper.enum.d.ts +5 -5
  506. package/lib/components/wrappers/content-wrapper/content-wrapper.module.d.ts +8 -8
  507. package/lib/components/wrappers/controls-wrapper/components/controls-item/controls-item.component.d.ts +6 -6
  508. package/lib/components/wrappers/controls-wrapper/controls-wrapper.component.d.ts +10 -10
  509. package/lib/components/wrappers/controls-wrapper/controls-wrapper.enum.d.ts +6 -6
  510. package/lib/components/wrappers/controls-wrapper/controls-wrapper.module.d.ts +9 -9
  511. package/lib/components/wrappers/widget-wrapper/widget-wrapper.component.d.ts +26 -26
  512. package/lib/components/wrappers/widget-wrapper/widget-wrapper.enum.d.ts +15 -15
  513. package/lib/components/wrappers/widget-wrapper/widget-wrapper.module.d.ts +8 -8
  514. package/lib/directives/autosize/autosize.directive.d.ts +16 -16
  515. package/lib/directives/autosize/autosize.module.d.ts +8 -8
  516. package/lib/directives/truncate/truncate.directive.d.ts +12 -12
  517. package/lib/directives/truncate/truncate.module.d.ts +8 -8
  518. package/lib/enums/typed.input.state.d.ts +6 -6
  519. package/lib/helpers/extension/input-file.extension.d.ts +4 -4
  520. package/lib/helpers/formatting-date.d.ts +9 -9
  521. package/lib/helpers/formatting-dates-from-array.d.ts +2 -2
  522. package/lib/helpers/formatting-iso-to-string.d.ts +2 -2
  523. package/lib/helpers/index.d.ts +7 -7
  524. package/lib/helpers/number-format.d.ts +6 -6
  525. package/lib/helpers/string-hash-code.d.ts +2 -2
  526. package/lib/helpers/word-form.d.ts +7 -7
  527. package/lib/models/index.d.ts +2 -2
  528. package/lib/models/input-file/input-file.model.d.ts +23 -22
  529. package/lib/models/typed-input-model.d.ts +16 -16
  530. package/lib/pipes/currency/currency.module.d.ts +8 -8
  531. package/lib/pipes/currency/currency.pipe.d.ts +7 -7
  532. package/lib/pipes/date/date-format.module.d.ts +9 -9
  533. package/lib/pipes/date/date-format.pipe.d.ts +9 -9
  534. package/lib/pipes/date/date-time-format.pipe.d.ts +9 -9
  535. package/lib/pipes/date/enums/timezone.d.ts +8 -8
  536. package/lib/pipes/date/helpers/change-timezone.d.ts +2 -2
  537. package/lib/pipes/phone/phone-format.module.d.ts +8 -8
  538. package/lib/pipes/phone/phone-format.pipe.d.ts +8 -8
  539. package/lib/pipes/safe/safe.module.d.ts +8 -8
  540. package/lib/pipes/safe/safe.pipe.d.ts +10 -10
  541. package/lib/pipes/truncate/truncate.module.d.ts +8 -8
  542. package/lib/pipes/truncate/truncate.pipe.d.ts +7 -7
  543. package/lib/services/file-upload/file-upload.service.d.ts +12 -12
  544. package/lib/services/index.d.ts +10 -7
  545. package/lib/services/modal-service/components/alert-modal/alert-modal.component.d.ts +19 -0
  546. package/lib/services/modal-service/components/confirm-modal/confirm-modal.component.d.ts +20 -0
  547. package/lib/services/modal-service/helpers/index.d.ts +4 -0
  548. package/lib/services/modal-service/helpers/modal-default-config.d.ts +3 -0
  549. package/lib/services/modal-service/helpers/modal-ref.d.ts +11 -0
  550. package/lib/services/modal-service/helpers/modal-tokens.d.ts +3 -0
  551. package/lib/services/modal-service/helpers/modal.component.d.ts +3 -0
  552. package/lib/services/modal-service/modal-service.module.d.ts +9 -0
  553. package/lib/services/modal-service/modal-service.service.d.ts +20 -0
  554. package/lib/services/modal-service/models/modal-config.model.d.ts +14 -0
  555. package/lib/services/mrx-autosave/mrx-autosave.service.d.ts +19 -19
  556. package/lib/services/mrx-form-validator/mrx-form-validator.d.ts +51 -23
  557. package/lib/services/save-store/constants/constants.d.ts +1 -1
  558. package/lib/services/save-store/models/save-store.model.d.ts +4 -4
  559. package/lib/services/save-store/save-store.module.d.ts +9 -9
  560. package/lib/services/save-store/store/actions.d.ts +21 -21
  561. package/lib/services/save-store/store/effect.d.ts +10 -16
  562. package/lib/services/save-store/store/reducer.d.ts +3 -3
  563. package/lib/services/save-store/store/selectors.d.ts +3 -3
  564. package/lib/services/save-store/store/state.d.ts +11 -11
  565. package/package.json +27 -37
  566. package/public-api.d.ts +162 -176
  567. package/esm2020/lib/components/alert/alert.component.mjs +0 -45
  568. package/esm2020/lib/components/badges/components/badge/badge.component.mjs +0 -61
  569. package/esm2020/lib/components/breadcrumbs/breadcrumbs.component.mjs +0 -29
  570. package/esm2020/lib/components/button/button.component.mjs +0 -102
  571. package/esm2020/lib/components/button/button.enum.mjs +0 -29
  572. package/esm2020/lib/components/cdk-tooltip/cdk-tooltip/tooltip-container.component.mjs +0 -28
  573. package/esm2020/lib/components/cdk-tooltip/cdk-tooltip.directive.mjs +0 -95
  574. package/esm2020/lib/components/chars-left/chars-left.component.mjs +0 -29
  575. package/esm2020/lib/components/context-menu/components/context-menu/context-menu.component.mjs +0 -99
  576. package/esm2020/lib/components/context-menu/components/context-menu-content/context-menu-content.component.mjs +0 -324
  577. package/esm2020/lib/components/context-menu/context-menu.module.mjs +0 -51
  578. package/esm2020/lib/components/context-menu/context-menu.options.mjs +0 -2
  579. package/esm2020/lib/components/context-menu/context-menu.tokens.mjs +0 -3
  580. package/esm2020/lib/components/context-menu/directives/context-menu/context-menu.directive.mjs +0 -36
  581. package/esm2020/lib/components/context-menu/directives/context-menu-item/context-menu-item.directive.mjs +0 -61
  582. package/esm2020/lib/components/context-menu/models/context-menu.enum.mjs +0 -2
  583. package/esm2020/lib/components/context-menu/services/context-menu/context-menu-fixed.service.mjs +0 -103
  584. package/esm2020/lib/components/context-menu/services/context-menu/context-menu.service.mjs +0 -223
  585. package/esm2020/lib/components/dropdown/directives/hide-after-click.directive.mjs +0 -23
  586. package/esm2020/lib/components/dropdown/dropdown.component.mjs +0 -104
  587. package/esm2020/lib/components/error-message/error-message.component.mjs +0 -34
  588. package/esm2020/lib/components/form/checkbox/checkbox.component.mjs +0 -143
  589. package/esm2020/lib/components/form/checkbox/checkbox.enum.mjs +0 -2
  590. package/esm2020/lib/components/form/checkbox-group/checkbox-group.component.mjs +0 -184
  591. package/esm2020/lib/components/form/checkbox-group/components/checkbox-group-item/checkbox-group-item.component.mjs +0 -112
  592. package/esm2020/lib/components/form/checkbox-group/helpers/change-group-value.mjs +0 -20
  593. package/esm2020/lib/components/form/checkbox-group/helpers/change-item-value.mjs +0 -15
  594. package/esm2020/lib/components/form/checkbox-group/helpers/filter-search-group.mjs +0 -27
  595. package/esm2020/lib/components/form/checkbox-group/helpers/get-checked-items.mjs +0 -20
  596. package/esm2020/lib/components/form/checkbox-group/helpers/get-sorted-list.mjs +0 -50
  597. package/esm2020/lib/components/form/document-editor/components/document-editor-preview-modal/document-editor-preview-modal.component.mjs +0 -33
  598. package/esm2020/lib/components/form/document-editor/document-editor.component.mjs +0 -105
  599. package/esm2020/lib/components/form/document-editor/document-editor.module.mjs +0 -42
  600. package/esm2020/lib/components/form/document-editor/helpers/transform-sysname.mjs +0 -41
  601. package/esm2020/lib/components/form/document-editor/models/document-editor-short-codes.enum.mjs +0 -2
  602. package/esm2020/lib/components/form/editor/editor.component.mjs +0 -264
  603. package/esm2020/lib/components/form/editor/editor.module.mjs +0 -45
  604. package/esm2020/lib/components/form/editor/modules/change-icon-module.mjs +0 -92
  605. package/esm2020/lib/components/form/input-date-time/helpers/cursor-position.mjs +0 -23
  606. package/esm2020/lib/components/form/input-date-time/helpers/formatting-from-models.mjs +0 -10
  607. package/esm2020/lib/components/form/input-date-time/input-date-time.component.mjs +0 -413
  608. package/esm2020/lib/components/form/input-date-time/input-date-time.module.mjs +0 -46
  609. package/esm2020/lib/components/form/input-datepicker/helpers/cursor-position.mjs +0 -23
  610. package/esm2020/lib/components/form/input-datepicker/helpers/get-date-dayjs-object.mjs +0 -10
  611. package/esm2020/lib/components/form/input-datepicker/helpers/get-date-object.mjs +0 -10
  612. package/esm2020/lib/components/form/input-datepicker/input-datepicker.component.mjs +0 -359
  613. package/esm2020/lib/components/form/input-datepicker/input-datepicker.module.mjs +0 -46
  614. package/esm2020/lib/components/form/input-file/input-file.component.mjs +0 -363
  615. package/esm2020/lib/components/form/input-file-image/components/file-image-edit-modal/file-image-edit-modal.component.mjs +0 -66
  616. package/esm2020/lib/components/form/input-file-image/input-file-image.component.mjs +0 -350
  617. package/esm2020/lib/components/form/input-file-image/input-file-image.module.mjs +0 -58
  618. package/esm2020/lib/components/form/input-number/input-number.component.mjs +0 -265
  619. package/esm2020/lib/components/form/input-number/input-number.module.mjs +0 -55
  620. package/esm2020/lib/components/form/input-opt/components/input-opt/input-opt.component.mjs +0 -361
  621. package/esm2020/lib/components/form/input-opt/directives/opt-pattern.directive.mjs +0 -44
  622. package/esm2020/lib/components/form/input-password/input-password.component.mjs +0 -133
  623. package/esm2020/lib/components/form/input-password/input-password.module.mjs +0 -44
  624. package/esm2020/lib/components/form/input-phone/data/country-code.mjs +0 -1333
  625. package/esm2020/lib/components/form/input-phone/directives/native-element-injector.directive.mjs +0 -33
  626. package/esm2020/lib/components/form/input-phone/input-phone.component.mjs +0 -671
  627. package/esm2020/lib/components/form/input-phone/input-phone.module.mjs +0 -50
  628. package/esm2020/lib/components/form/input-phone/input-phone.validator.mjs +0 -61
  629. package/esm2020/lib/components/form/input-search/input-search.component.mjs +0 -174
  630. package/esm2020/lib/components/form/input-search/input-search.module.mjs +0 -44
  631. package/esm2020/lib/components/form/input-select/input-select.component.mjs +0 -249
  632. package/esm2020/lib/components/form/input-tel/directives/input-tel.directive.mjs +0 -62
  633. package/esm2020/lib/components/form/input-tel/input-tel.component.mjs +0 -389
  634. package/esm2020/lib/components/form/input-tel/input-tel.module.mjs +0 -47
  635. package/esm2020/lib/components/form/input-text/input-text.component.mjs +0 -194
  636. package/esm2020/lib/components/form/input-text/input-text.module.mjs +0 -49
  637. package/esm2020/lib/components/form/input-textarea/input-textarea.component.mjs +0 -174
  638. package/esm2020/lib/components/form/input-textarea/input-textarea.module.mjs +0 -48
  639. package/esm2020/lib/components/form/input-timepicker/helpers/cursor-position.mjs +0 -14
  640. package/esm2020/lib/components/form/input-timepicker/input-timepicker.component.mjs +0 -290
  641. package/esm2020/lib/components/form/input-timepicker/input-timepicker.module.mjs +0 -46
  642. package/esm2020/lib/components/form/radio/radio.component.mjs +0 -91
  643. package/esm2020/lib/components/form/radio-group/components/radio-group-header/radio-group-header.component.mjs +0 -49
  644. package/esm2020/lib/components/form/radio-group/components/radio-group-item/radio-group-item.component.mjs +0 -69
  645. package/esm2020/lib/components/form/radio-group/helpers/filter-search-group.mjs +0 -27
  646. package/esm2020/lib/components/form/radio-group/helpers/move-selected-to-first.mjs +0 -27
  647. package/esm2020/lib/components/form/radio-group/radio-group.component.mjs +0 -185
  648. package/esm2020/lib/components/form/radio-group/radio-group.module.mjs +0 -47
  649. package/esm2020/lib/components/form/rating/rating.component.mjs +0 -217
  650. package/esm2020/lib/components/form/switch/switch.component.mjs +0 -97
  651. package/esm2020/lib/components/gallery/components/gallery-confirm-modal/gallery-confirm-modal.component.mjs +0 -22
  652. package/esm2020/lib/components/gallery/components/gallery-item/gallery-item.component.mjs +0 -102
  653. package/esm2020/lib/components/gallery/gallery.component.mjs +0 -197
  654. package/esm2020/lib/components/gallery/services/gallery.service.mjs +0 -31
  655. package/esm2020/lib/components/hint-error-message/hint-error-message.component.mjs +0 -123
  656. package/esm2020/lib/components/icon-button/icon-button.component.mjs +0 -51
  657. package/esm2020/lib/components/label/label.component.mjs +0 -141
  658. package/esm2020/lib/components/link/link.component.mjs +0 -50
  659. package/esm2020/lib/components/loader/loader.component.mjs +0 -26
  660. package/esm2020/lib/components/modal/modal.component.mjs +0 -146
  661. package/esm2020/lib/components/pages-nav/pages-nav.component.mjs +0 -33
  662. package/esm2020/lib/components/paginator/paginator.component.mjs +0 -152
  663. package/esm2020/lib/components/paginator/paginator.module.mjs +0 -31
  664. package/esm2020/lib/components/progress/progress.component.mjs +0 -26
  665. package/esm2020/lib/components/save-state/components/save-state-checkbox/save-state-checkbox.component.mjs +0 -15
  666. package/esm2020/lib/components/save-state/components/save-state-checkbox-group/save-state-checkbox-group.component.mjs +0 -15
  667. package/esm2020/lib/components/save-state/components/save-state-editor/save-state-editor.component.mjs +0 -15
  668. package/esm2020/lib/components/save-state/components/save-state-input/save-state-input.component.mjs +0 -15
  669. package/esm2020/lib/components/save-state/components/save-state-switch/save-state-switch.component.mjs +0 -15
  670. package/esm2020/lib/components/save-state/save-state.component.mjs +0 -39
  671. package/esm2020/lib/components/stepper/stepper.component.mjs +0 -54
  672. package/esm2020/lib/components/table/components/column/column.component.mjs +0 -40
  673. package/esm2020/lib/components/table/table.component.mjs +0 -274
  674. package/esm2020/lib/components/tabs/tab/tab.component.mjs +0 -31
  675. package/esm2020/lib/components/tabs/tabs-group/tabs-group.component.mjs +0 -29
  676. package/esm2020/lib/components/tooltip/services/tooltip.service.mjs +0 -67
  677. package/esm2020/lib/components/tooltip/tooltip-trigger/tooltip-trigger.component.mjs +0 -38
  678. package/esm2020/lib/components/tooltip/tooltip.component.mjs +0 -60
  679. package/esm2020/lib/components/truncate-text/truncate-text.component.mjs +0 -30
  680. package/esm2020/lib/components/warning-message/warning-message.component.mjs +0 -31
  681. package/esm2020/lib/components/wrappers/content-wrapper/content-wrapper.component.mjs +0 -26
  682. package/esm2020/lib/components/wrappers/controls-wrapper/components/controls-item/controls-item.component.mjs +0 -17
  683. package/esm2020/lib/components/wrappers/controls-wrapper/controls-wrapper.component.mjs +0 -24
  684. package/esm2020/lib/components/wrappers/widget-wrapper/widget-wrapper.component.mjs +0 -96
  685. package/esm2020/lib/directives/autosize/autosize.directive.mjs +0 -55
  686. package/esm2020/lib/directives/truncate/truncate.directive.mjs +0 -32
  687. package/esm2020/lib/helpers/extension/input-file.extension.mjs +0 -39
  688. package/esm2020/lib/helpers/formatting-date.mjs +0 -51
  689. package/esm2020/lib/helpers/string-hash-code.mjs +0 -17
  690. package/esm2020/lib/models/input-file/input-file.model.mjs +0 -2
  691. package/esm2020/lib/pipes/currency/currency.pipe.mjs +0 -22
  692. package/esm2020/lib/pipes/date/date-format.pipe.mjs +0 -21
  693. package/esm2020/lib/pipes/date/date-time-format.pipe.mjs +0 -21
  694. package/esm2020/lib/pipes/phone/phone-format.pipe.mjs +0 -23
  695. package/esm2020/lib/pipes/safe/safe.pipe.mjs +0 -20
  696. package/esm2020/lib/pipes/truncate/truncate.pipe.mjs +0 -23
  697. package/esm2020/lib/services/file-upload/file-upload.service.mjs +0 -26
  698. package/esm2020/lib/services/index.mjs +0 -8
  699. package/esm2020/lib/services/mrx-autosave/mrx-autosave.service.mjs +0 -44
  700. package/esm2020/lib/services/mrx-form-validator/constants/invalid-messages.mjs +0 -10
  701. package/esm2020/lib/services/mrx-form-validator/helpers/get-error-message.helper.mjs +0 -10
  702. package/esm2020/lib/services/mrx-form-validator/helpers/get-sorting-validations.helper.mjs +0 -28
  703. package/esm2020/lib/services/mrx-form-validator/models/index.mjs +0 -4
  704. package/esm2020/lib/services/mrx-form-validator/models/validations-options.model.mjs +0 -2
  705. package/esm2020/lib/services/mrx-form-validator/models/validations-settings.model.mjs +0 -2
  706. package/esm2020/lib/services/mrx-form-validator/models/validations-types.model.mjs +0 -22
  707. package/esm2020/lib/services/mrx-form-validator/mrx-form-validator.mjs +0 -207
  708. package/esm2020/lib/services/mrx-form-validator/validations/callback.validation.mjs +0 -15
  709. package/esm2020/lib/services/mrx-form-validator/validations/email.validation.mjs +0 -11
  710. package/esm2020/lib/services/mrx-form-validator/validations/max-length.validation.mjs +0 -10
  711. package/esm2020/lib/services/mrx-form-validator/validations/max-value.validation.mjs +0 -10
  712. package/esm2020/lib/services/mrx-form-validator/validations/min-length.validation.mjs +0 -11
  713. package/esm2020/lib/services/mrx-form-validator/validations/min-value.validation.mjs +0 -10
  714. package/esm2020/lib/services/mrx-form-validator/validations/pattern.validation.mjs +0 -11
  715. package/esm2020/lib/services/mrx-form-validator/validations/required.validation.mjs +0 -22
  716. package/esm2020/lib/services/save-store/store/effect.mjs +0 -31
  717. package/esm2020/lib/services/save-store/store/reducer.mjs +0 -79
  718. package/esm2020/public-api.mjs +0 -186
  719. package/fesm2015/myrta-ui.mjs +0 -16283
  720. package/fesm2015/myrta-ui.mjs.map +0 -1
  721. package/fesm2020/myrta-ui.mjs +0 -16319
  722. package/fesm2020/myrta-ui.mjs.map +0 -1
  723. package/lib/components/context-menu/components/context-menu/context-menu.component.d.ts +0 -34
  724. package/lib/components/context-menu/components/context-menu-content/context-menu-content.component.d.ts +0 -62
  725. package/lib/components/context-menu/context-menu.module.d.ts +0 -15
  726. package/lib/components/context-menu/context-menu.options.d.ts +0 -4
  727. package/lib/components/context-menu/context-menu.tokens.d.ts +0 -2
  728. package/lib/components/context-menu/directives/context-menu/context-menu.directive.d.ts +0 -12
  729. package/lib/components/context-menu/directives/context-menu-item/context-menu-item.directive.d.ts +0 -30
  730. package/lib/components/context-menu/models/context-menu.enum.d.ts +0 -11
  731. package/lib/components/context-menu/services/context-menu/context-menu-fixed.service.d.ts +0 -11
  732. package/lib/components/context-menu/services/context-menu/context-menu.service.d.ts +0 -56
  733. package/lib/components/form/document-editor/components/document-editor-preview-modal/document-editor-preview-modal.component.d.ts +0 -22
  734. package/lib/components/form/document-editor/document-editor.component.d.ts +0 -37
  735. package/lib/components/form/document-editor/document-editor.module.d.ts +0 -13
  736. package/lib/components/form/document-editor/helpers/transform-sysname.d.ts +0 -5
  737. package/lib/components/form/document-editor/models/document-editor-short-codes.enum.d.ts +0 -6
  738. package/lib/services/mrx-form-validator/constants/invalid-messages.d.ts +0 -9
  739. package/lib/services/mrx-form-validator/helpers/get-error-message.helper.d.ts +0 -3
  740. package/lib/services/mrx-form-validator/helpers/get-sorting-validations.helper.d.ts +0 -2
  741. package/lib/services/mrx-form-validator/models/index.d.ts +0 -3
  742. package/lib/services/mrx-form-validator/models/validations-options.model.d.ts +0 -28
  743. package/lib/services/mrx-form-validator/models/validations-settings.model.d.ts +0 -7
  744. package/lib/services/mrx-form-validator/models/validations-types.model.d.ts +0 -19
  745. package/lib/services/mrx-form-validator/validations/callback.validation.d.ts +0 -6
  746. package/lib/services/mrx-form-validator/validations/email.validation.d.ts +0 -6
  747. package/lib/services/mrx-form-validator/validations/max-length.validation.d.ts +0 -6
  748. package/lib/services/mrx-form-validator/validations/max-value.validation.d.ts +0 -6
  749. package/lib/services/mrx-form-validator/validations/min-length.validation.d.ts +0 -6
  750. package/lib/services/mrx-form-validator/validations/min-value.validation.d.ts +0 -6
  751. package/lib/services/mrx-form-validator/validations/pattern.validation.d.ts +0 -6
  752. package/lib/services/mrx-form-validator/validations/required.validation.d.ts +0 -6
@@ -1,274 +0,0 @@
1
- import { Component, ContentChild, ContentChildren, EventEmitter, Input, Output, } from '@angular/core';
2
- import { TableTypeEnum } from './table.enum';
3
- import { ColumnComponent } from './components/column/column.component';
4
- import { DefaultPagerSettings } from './default/default-pager-settings';
5
- import { animate, group, state, style, transition, trigger } from '@angular/animations';
6
- import * as i0 from "@angular/core";
7
- import * as i1 from "@angular/common";
8
- import * as i2 from "../paginator/paginator.component";
9
- import * as i3 from "@ng-select/ng-select";
10
- import * as i4 from "@angular/forms";
11
- import * as i5 from "../loader/loader.component";
12
- export class TableComponent {
13
- constructor(changeDetector) {
14
- this.changeDetector = changeDetector;
15
- this.colArray = [];
16
- this.pageable = DefaultPagerSettings;
17
- this.selectedSort = '';
18
- this.init = false;
19
- this.type = 'default';
20
- this.pageSize = 20;
21
- this.currentPage = 1;
22
- this.total = 0;
23
- this.link = '';
24
- this.isLoading = false;
25
- this.trackById = 'id';
26
- this.sortable = true;
27
- this.striped = true;
28
- this.customClasses = '';
29
- this.emptyResultMsg = '';
30
- this.hovered = true;
31
- this.autoHeight = true;
32
- this.contentSettings = {
33
- substrate: false
34
- };
35
- this.paginatorSettings = {
36
- substrate: false
37
- };
38
- // Проверить и вырезать
39
- this.selectedItem = 1;
40
- this.dataStateChanged = new EventEmitter();
41
- this.downloadData = new EventEmitter();
42
- this.changeTypeTable = new EventEmitter();
43
- this.change = new EventEmitter();
44
- }
45
- set setPageable(value) {
46
- if (value === true) {
47
- this.pageable = DefaultPagerSettings;
48
- }
49
- else if (value === false) {
50
- this.pageable = null;
51
- }
52
- else {
53
- this.pageable = value;
54
- }
55
- }
56
- ngAfterViewInit() {
57
- this.colArray = this.contentChildren.toArray();
58
- this.colArray.forEach(item => {
59
- if (this.sort && this.sort.col === item.name) {
60
- this.selectedSort = item.name;
61
- }
62
- });
63
- this.colArray = this.colArray.filter(item => {
64
- return item.name !== '' && item.sortLabel;
65
- });
66
- this.changeDetector.detectChanges();
67
- this.init = true;
68
- if (this.autoHeight) {
69
- document.querySelectorAll('.td-content-wrapper').forEach((wrapper) => {
70
- const tdHeight = wrapper.closest('td')?.scrollHeight;
71
- const link = wrapper;
72
- link.style.height = tdHeight + 'px';
73
- });
74
- }
75
- }
76
- get getClasses() {
77
- return `${TableTypeEnum[this.type]} ${this.customClasses}`;
78
- }
79
- trackByFn(index, item) {
80
- return item[this.trackById];
81
- }
82
- changeSort() {
83
- const newEventData = { page: this.currentPage, pageSize: this.pageSize };
84
- if (!this.colArray.length) {
85
- return;
86
- }
87
- if (this.sort) {
88
- newEventData.sort = {
89
- dir: this.sort.dir === 'desc' ? 'asc' : 'desc',
90
- col: this.sort.col
91
- };
92
- }
93
- else {
94
- newEventData.sort = {
95
- dir: 'asc',
96
- col: this.colArray[0].name
97
- };
98
- }
99
- this.dataStateChanged.emit(newEventData);
100
- }
101
- columnSortedDir(column) {
102
- if (this.sort && this.sort.col == column && this.sort.dir) {
103
- return this.sort.dir;
104
- }
105
- return '';
106
- }
107
- onSortColumn(column, sortable) {
108
- if (!sortable) {
109
- return;
110
- }
111
- const newEventData = { page: this.currentPage, pageSize: this.pageSize };
112
- if (this.sort && this.sort.col == column) {
113
- if (this.sort.dir && this.sort.dir === 'asc') {
114
- newEventData.sort = { dir: 'desc', col: column };
115
- }
116
- }
117
- else {
118
- newEventData.sort = { dir: 'asc', col: column };
119
- }
120
- this.dataStateChanged.emit(newEventData);
121
- }
122
- clickToDownload(event) {
123
- this.downloadData.emit(event);
124
- }
125
- updateSortSelect(value) {
126
- const newEventData = {
127
- page: this.currentPage,
128
- pageSize: this.pageSize,
129
- sort: {
130
- col: value.name,
131
- dir: this.sort?.dir
132
- }
133
- };
134
- this.dataStateChanged.emit(newEventData);
135
- }
136
- onDataStatePaginatorChanged(pagination) {
137
- const newEventData = {
138
- page: pagination.currentPage,
139
- pageSize: pagination.pageSize
140
- };
141
- if (this.sort && this.sort.col && this.sort.dir) {
142
- newEventData.sort = { dir: this.sort.dir, col: this.sort.col };
143
- }
144
- this.dataStateChanged.emit(newEventData);
145
- }
146
- getLinkForStroke(link, dataItem) {
147
- // регулярки
148
- const regExpParams = /(?<=\[)[^\s\[\]]+(?=])/gi;
149
- // основной массив
150
- const linkArray = link.split('?');
151
- // массивы строк url и параметров
152
- const arrayUrl = linkArray[0]?.split('/');
153
- const searchParams = linkArray[1]?.split('&');
154
- const searchParamsObj = searchParams?.map((str) => {
155
- const strParamData = str.split('=')[1].match(regExpParams);
156
- return {
157
- name: str.split('=')[0],
158
- data: strParamData ? strParamData[0] : str.split('=')[0],
159
- };
160
- });
161
- // const arrayParams = linkArray[1]?.match(regExpParams)
162
- // обработка тела url
163
- const strUrl = arrayUrl.map((str) => {
164
- if (str.match(regExpParams)) {
165
- // @ts-ignore
166
- return dataItem[str.match(regExpParams)[0]];
167
- }
168
- else {
169
- return str;
170
- }
171
- }).join('/');
172
- // обработка параметров
173
- // если есть параметры - возвращаем их строкой с динамическими параметрами
174
- const strParams = searchParamsObj ? searchParamsObj.map((param, index) => {
175
- return `${index > 0 ? '' : '?'}${param.name}=${dataItem[param.data]}`;
176
- }).join('&') : '';
177
- // const strParams = arrayParams ? arrayParams.map((str, index) => {
178
- // return `${index > 0 ? '' : '?'}${str}=${dataItem[str]}`
179
- // }).join('&') : ''
180
- return `${strUrl}${strParams}`;
181
- }
182
- onChangeTypeTable(type) {
183
- this.changeTypeTable.emit(type);
184
- }
185
- }
186
- TableComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: TableComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
187
- TableComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: TableComponent, selector: "mrx-table", inputs: { type: "type", data: "data", pageSize: "pageSize", currentPage: "currentPage", total: "total", link: "link", isLoading: "isLoading", sort: "sort", trackById: "trackById", sortable: "sortable", striped: "striped", customClasses: "customClasses", emptyResultMsg: "emptyResultMsg", hovered: "hovered", autoHeight: "autoHeight", headerSettings: "headerSettings", contentSettings: "contentSettings", paginatorSettings: "paginatorSettings", setPageable: ["pageable", "setPageable"] }, outputs: { dataStateChanged: "dataStateChanged", downloadData: "downloadData", changeTypeTable: "changeTypeTable", change: "change" }, queries: [{ propertyName: "templateCard", first: true, predicate: ["templateCard"], descendants: true }, { propertyName: "emptyResultMsgTemplate", first: true, predicate: ["emptyResultMsgTemplate"], descendants: true }, { propertyName: "contentChildren", predicate: ColumnComponent }], ngImport: i0, template: "<div class=\"mrx-table\" [class]=\"getClasses\" [class.mb-3]=\"pageable\">\r\n <ng-container *ngIf=\"headerSettings\">\r\n <div\r\n class=\"mrx-table-card-header pt-2 pb-2 mb-3\"\r\n [class.mrx-table-card-header--substrate]=\"headerSettings.substrate\"\r\n *ngIf=\"headerSettings.type === 'default'\"\r\n >\r\n <div class=\"row\">\r\n <div\r\n class=\"mrx-table-card-header--left col col-12 col-md-6 mb-1 mb-md-0 d-flex justify-content-start align-content-center\">\r\n <ng-container *ngTemplateOutlet=\"counterTemplate\"></ng-container>\r\n </div>\r\n\r\n <div class=\"mrx-table-card-header--right col col-12 col-md-6 d-flex justify-content-end align-content-center\">\r\n <ng-container *ngTemplateOutlet=\"sortTemplate\"></ng-container>\r\n <div class=\"ml-4\" *ngIf=\"headerSettings.toggle\">\r\n <ng-container *ngTemplateOutlet=\"toggleTemplate\"></ng-container>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div\r\n class=\"mrx-table-card-header mb-3 pt-2 pb-2\"\r\n [class.mrx-table-card-header--substrate]=\"headerSettings.substrate\"\r\n *ngIf=\"headerSettings.type === 'second'\"\r\n >\r\n <div class=\"row\">\r\n <div\r\n class=\"mrx-table-card-header--left col col-12 col-sm-6 mb-1 mb-sm-0 d-flex justify-content-start align-content-center\">\r\n <ng-container *ngTemplateOutlet=\"sortTemplate\"></ng-container>\r\n </div>\r\n\r\n <div class=\"mrx-table-card-header--right col col-12 col-sm-6 d-flex justify-content-end align-content-center\">\r\n <ng-container *ngTemplateOutlet=\"downloadTemplate\"></ng-container>\r\n </div>\r\n </div>\r\n </div>\r\n </ng-container>\r\n\r\n <ng-container [ngSwitch]=\"type\">\r\n <div class=\"mrx-table__wrapper\" *ngSwitchCase=\"'default'\"\r\n [class.mrx-table__wrapper--substrate]=\"contentSettings.substrate\">\r\n <table\r\n [class.table-striped]=\"striped\"\r\n [class.table-solid]=\"!striped\"\r\n [class.mt-2]=\"contentSettings.substrate\"\r\n [class.mb-3]=\"contentSettings.substrate && data.length\"\r\n >\r\n <thead [class.table-head-gray]=\"!headerSettings || headerSettings.background\">\r\n <tr>\r\n <th *ngFor=\"let col of contentChildren; let index = index; let first = first; let last = last; trackBy: trackByFn\" [class]=\"col.customClasses\">\r\n <ng-container *ngIf=\"!col.templateHead; else headerItemTemplate\">\r\n <ng-container *ngIf=\"col.sortable; else defaultHeadCol\">\r\n <div [class.th-wrapper]=\"sortable\" (click)=\"onSortColumn(col.name, col.sortable)\">\r\n <span>{{ col.label }}</span>\r\n <svg\r\n width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"\r\n [class]=\"columnSortedDir(col.name)\"\r\n class=\"mrx-table__sort-icon\">\r\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M4 9L8 13L12 9\" fill=\"#DAD5CE\"/>\r\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M12 7L8 3L4 7\" fill=\"#DAD5CE\"/>\r\n </svg>\r\n </div>\r\n </ng-container>\r\n <ng-template #defaultHeadCol>\r\n <div><span>{{ col.label }}</span></div>\r\n </ng-template>\r\n </ng-container>\r\n\r\n <ng-template #headerItemTemplate>\r\n <ng-container *ngIf=\"col.sortable; else defaultHeadCol\">\r\n <div [class.th-wrapper]=\"sortable\" (click)=\"onSortColumn(col.name, col.sortable)\">\r\n <ng-container *ngTemplateOutlet=\"col.templateHead; context: { $implicit: col }\"></ng-container>\r\n <svg\r\n width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"\r\n [class]=\"columnSortedDir(col.name)\"\r\n class=\"mrx-table__sort-icon\">\r\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M4 9L8 13L12 9\" fill=\"#DAD5CE\"/>\r\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M12 7L8 3L4 7\" fill=\"#DAD5CE\"/>\r\n </svg>\r\n </div>\r\n </ng-container>\r\n <ng-template #defaultHeadCol>\r\n <ng-container *ngTemplateOutlet=\"col.templateHead; context: { $implicit: col, index, first, last }\"></ng-container>\r\n </ng-template>\r\n </ng-template>\r\n </th>\r\n </tr>\r\n </thead>\r\n\r\n <tbody>\r\n <tr *ngFor=\"let dataItem of data; let index = index; let first = first; let last = last\" [class.-hovered]=\"hovered\">\r\n <td\r\n #tableTD\r\n class=\"p-0\"\r\n *ngFor=\"let col of contentChildren\"\r\n [class]=\"col.customClasses\"\r\n >\r\n <a\r\n class=\"link-wrapper td-content-wrapper\"\r\n [href]=\"getLinkForStroke(link, dataItem)\"\r\n *ngIf=\"link && col['isLink']; else defaultTemplate\"\r\n >\r\n <ng-container *ngIf=\"!col.templateCell; else bodyItemTemplate\">\r\n <div class=\"p-2\">{{ dataItem[col.name] }}</div>\r\n </ng-container>\r\n\r\n <ng-template #bodyItemTemplate>\r\n <ng-container\r\n *ngTemplateOutlet=\"col.templateCell; context: { $implicit: col, row: dataItem, index, first, last }\"></ng-container>\r\n </ng-template>\r\n </a>\r\n\r\n <ng-template #defaultTemplate>\r\n <ng-container *ngIf=\"!col.templateCell; else bodyItemTemplate\">\r\n <div class=\"p-2 td-content-wrapper\">{{ dataItem[col.name] }}</div>\r\n </ng-container>\r\n\r\n <ng-template #bodyItemTemplate>\r\n <div class=\"td-content-wrapper\">\r\n <ng-container\r\n *ngTemplateOutlet=\"col.templateCell; context: { $implicit: col, row: dataItem, index, first, last }\"></ng-container>\r\n </div>\r\n </ng-template>\r\n </ng-template>\r\n </td>\r\n </tr>\r\n </tbody>\r\n </table>\r\n\r\n <div class=\"mrx-table__result-message\" *ngIf=\"!data.length\">\r\n <ng-container *ngTemplateOutlet=\"emptyResultMsg ? emptyResultMsgTemplateDefault : emptyResultMsgTemplate\">\r\n </ng-container>\r\n </div>\r\n\r\n <div class=\"mrx-table__overlay\" [@visibleLoading]=\"isLoading ? 'in' : 'out'\" [ngClass]=\"{'open': isLoading}\" >\r\n <mrx-loader size=\"large\" color=\"brand\"></mrx-loader>\r\n </div>\r\n </div>\r\n\r\n <div class=\"mrx-table__wrapper\" *ngSwitchCase=\"'cards'\">\r\n <ng-container *ngFor=\"let item of data; let index = index; let first = first; let last = last\">\r\n <ng-container *ngTemplateOutlet=\"templateCard; context: { $implicit: item, index, first, last }\"></ng-container>\r\n </ng-container>\r\n\r\n <div class=\"mrx-table__result-message--substrate\" *ngIf=\"!data.length\" >\r\n <ng-container *ngTemplateOutlet=\"emptyResultMsg ? emptyResultMsgTemplateDefault : emptyResultMsgTemplate\">\r\n </ng-container>\r\n </div>\r\n\r\n <div class=\"mrx-table__overlay\" [@visibleLoading]=\"isLoading ? 'in' : 'out'\" [ngClass]=\"{'open': isLoading}\" >\r\n <mrx-loader size=\"large\" color=\"brand\"></mrx-loader>\r\n </div>\r\n </div>\r\n </ng-container>\r\n</div>\r\n\r\n<div class=\"mrx-table__paginator pt-2 pb-2\" [class.mrx-table__paginator--substrate]=\"paginatorSettings.substrate\" *ngIf=\"total\">\r\n <mrx-paginator\r\n *ngIf=\"pageable\"\r\n [total]=\"total\"\r\n [pageSize]=\"pageSize\"\r\n [position]=\"pageable.position\"\r\n [pageSizes]=\"pageable.pageSizes\"\r\n [currentPage]=\"currentPage\"\r\n [withPageSize]=\"pageable.withPageSize\"\r\n (dataStateChanged)=\"onDataStatePaginatorChanged($event)\">\r\n </mrx-paginator>\r\n</div>\r\n\r\n<ng-template #counterTemplate>\r\n <span class=\"d-flex align-items-center\" *ngIf=\"headerSettings?.count\">\r\n {{ total }} {{headerSettings?.countText || '\u043D\u043E\u0432\u043E\u0441\u0442\u0435\u0439'}}\r\n </span>\r\n</ng-template>\r\n\r\n<ng-template #sortTemplate>\r\n <div class=\"d-flex mrx-table-sort\" *ngIf=\"headerSettings?.sort\">\r\n <div class=\"mrx-table-sort-scale\" (click)=\"changeSort()\">\r\n <span class=\"mrx-table-sort-scale__title\">\u0421\u043E\u0440\u0442\u0438\u0440\u043E\u0432\u0430\u0442\u044C \u043F\u043E:</span>\r\n <div class=\"mrx-table-sort-scale__icon\">\r\n <span *ngIf=\"sort?.dir === 'desc'\" class=\"mrx-icon icon-sorting-down icon-font-16\"></span>\r\n <span *ngIf=\"sort?.dir === 'asc'\" class=\"mrx-icon icon-sorting-up icon-font-16\"></span>\r\n </div>\r\n </div>\r\n <ng-select\r\n bindLabel=\"sortLabel\"\r\n bindValue=\"name\"\r\n [items]=\"colArray\"\r\n [ngModel]=\"selectedSort\"\r\n (change)=\"updateSortSelect($event)\"\r\n [clearable]=\"false\"\r\n [searchable]=\"false\"\r\n [closeOnSelect]=\"true\"\r\n ></ng-select>\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #downloadTemplate>\r\n <div class=\"mrx-table-download\" (click)=\"clickToDownload($event)\" *ngIf=\"headerSettings?.download\">\r\n <span class=\"desktop\">\u0421\u043A\u0430\u0447\u0430\u0442\u044C \u0434\u0430\u043D\u043D\u044B\u0435</span>\r\n <span class=\"mrx-icon icon-download icon-font-24\"></span>\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #toggleTemplate>\r\n <div class=\"mrx-table-toggle\">\r\n <div class=\"mrx-table-toggle--item mr-1\" (click)=\"onChangeTypeTable('cards')\" [class.active]=\"type === 'cards'\">\r\n <span class=\"mrx-icon icon-cards-view icon-font-24\"></span>\r\n </div>\r\n <div class=\"mrx-table-toggle--item\" (click)=\"onChangeTypeTable('default')\" [class.active]=\"type === 'default'\">\r\n <span class=\"mrx-icon icon-table-view icon-font-24\"></span>\r\n </div>\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #emptyResultMsgTemplateDefault>\r\n {{emptyResultMsg}}\r\n</ng-template>\r\n", styles: [".mrx-table.mrx-table{display:block;width:100%}.mrx-table.mrx-table .th-wrapper{display:flex;cursor:pointer;word-break:inherit;justify-content:space-between;align-items:flex-end}.mrx-table.mrx-table .th-wrapper span{word-break:inherit}.mrx-table.mrx-table .mrx-table__sort-icon.asc path:last-child{fill:var(--brand-bg-primary-default)}.mrx-table.mrx-table .mrx-table__sort-icon.desc path:first-child{fill:var(--brand-bg-primary-default)}.mrx-table__wrapper.mrx-table__wrapper{overflow-x:auto;overflow-y:hidden;position:relative}.mrx-table__wrapper.mrx-table__wrapper .mrx-table__wrapper--substrate{padding-top:8px}.mrx-table.mrx-table.type-default table{width:100%;text-align:left;background-color:transparent;border-spacing:0}.mrx-table.mrx-table.type-default table thead.table-head-gray{background:var(--Disabled)}.mrx-table.mrx-table.type-default table thead .sort-asc .custom-table__sort path:nth-child(2){fill:var(--Main2)}.mrx-table.mrx-table.type-default table thead .sort-desc .custom-table__sort path:nth-child(1){fill:var(--Main2)}.mrx-table.mrx-table.type-default table td{max-width:340px;vertical-align:top}.mrx-table.mrx-table.type-default table td .link-wrapper{display:block;color:initial;height:100%}.mrx-table.mrx-table.type-default table td .link-wrapper:active{color:var(--Main1)}.mrx-table.mrx-table.type-default table td .left-border{border-left:4px solid var(--Main2)}.mrx-table.mrx-table.type-default table td .light-border{border-left:4px solid transparent}.mrx-table.mrx-table.type-default table td .warning-back{background-color:#ffece7}.mrx-table.mrx-table.type-default table td .disabled-back{background-color:#fafafa}.mrx-table.mrx-table.type-default table td .link-colored,.mrx-table.mrx-table.type-default table td .link-colored:active{color:var(--Main2)}.mrx-table.mrx-table.type-default table th{padding:8px;vertical-align:bottom;word-break:inherit;font-weight:700}.mrx-table.mrx-table.type-default table th svg{margin-left:8px;cursor:pointer}.mrx-table.mrx-table .mrx-table-card-header{position:relative}.mrx-table.mrx-table .mrx-table-card-header--substrate{padding-left:24px;padding-right:24px;background:#FFFFFF;box-shadow:0 1px 4px #3b43571a;border-radius:4px}.mrx-table.mrx-table .mrx-table__wrapper--substrate{background:#FFFFFF;box-shadow:0 1px 4px #3b43571a;border-radius:4px}.mrx-table.mrx-table .mrx-table-toggle{display:flex}.mrx-table.mrx-table .mrx-table-toggle--item{display:flex;align-items:center;justify-content:center;cursor:pointer}.mrx-table.mrx-table .mrx-table-toggle--item .mrx-icon{color:#e5e5e5}.mrx-table.mrx-table .mrx-table-toggle--item.active .mrx-icon{color:var(--Main2)}.mrx-table.mrx-table .mrx-table-sort.mrx-table-sort--is-card,.mrx-table.mrx-table .mrx-table-sort.mrx-table-sort--is-table{justify-content:flex-start}.mrx-table.mrx-table .mrx-table-sort-scale{display:flex;align-items:center;margin-right:8px;cursor:pointer}.mrx-table.mrx-table .mrx-table-sort-scale__title{font-family:PT Sans;font-style:normal;font-weight:400;font-size:14px;line-height:143%;color:var(--Main1);margin-right:12px}.mrx-table.mrx-table .mrx-table-sort-scale__icon{display:flex;align-items:center;justify-content:center}:host::ng-deep .mrx-table.mrx-table .mrx-table-sort .ng-select{max-width:215px;margin-bottom:0}:host::ng-deep .mrx-table.mrx-table .mrx-table-sort .ng-select .ng-select-container.ng-select-container{min-height:auto!important;border:none;cursor:pointer;align-items:center;height:100%!important}:host::ng-deep .mrx-table.mrx-table .mrx-table-sort .ng-select .ng-value-container.ng-value-container{padding-left:0!important;margin-right:8px}:host::ng-deep .mrx-table.mrx-table .mrx-table-sort .ng-select .ng-arrow-wrapper.ng-arrow-wrapper{min-height:auto;width:auto!important}:host::ng-deep .mrx-table.mrx-table .mrx-table-sort .ng-select .ng-dropdown-panel.ng-dropdown-panel{width:100vw;max-width:215px;left:auto;right:0}.mrx-table__paginator.mrx-table__paginator.mrx-table__paginator--substrate{padding-left:24px;padding-right:24px;background:#FFFFFF;box-shadow:0 1px 4px #3b43571a;border-radius:4px}.mrx-table.mrx-table .table-striped tbody tr:nth-child(even){background-color:var(--Disabled)}.mrx-table.mrx-table .table-striped tbody tr:nth-child(n){transition:.2s}.mrx-table.mrx-table .table-striped tbody tr:nth-child(n).-hovered:hover{background-color:var(--Bg2)}.mrx-table.mrx-table .table-solid{border-collapse:collapse}.mrx-table.mrx-table .table-solid thead tr{border-bottom:1px solid #f2f2f2}.mrx-table.mrx-table .table-solid tbody tr:not(:last-child){border-bottom:1px solid #f2f2f2}.mrx-table.mrx-table .table-solid tbody tr.-hovered:hover{box-shadow:0 1px 4px #3a3a3a4d}.mrx-table.mrx-table .mrx-table__wrapper .mrx-table__overlay{position:absolute;inset:0;background:rgba(255,255,255,.7);display:flex;align-items:flex-start;justify-content:center;padding-top:12px;border-radius:4px}.mrx-table .mrx-table__result-message{display:flex;justify-content:center;width:100%;padding:var(--spacing-4);font-family:var(--body-md-font-family);font-weight:var(--body-md-font-weight);font-size:var(--body-md-font-size);line-height:var(--body-md-line-height);color:var(--neutral-text-secondary)}.mrx-table .mrx-table__result-message *{font-family:var(--body-md-font-family);font-weight:var(--body-md-font-weight);font-size:var(--body-md-font-size);line-height:var(--body-md-line-height);color:var(--neutral-text-secondary)}.mrx-table .mrx-table__result-message--substrate{display:flex;justify-content:center;width:100%;font-weight:400;font-size:16px;line-height:24px;color:var(--neutral-text-primary);padding:24px;background:#FFFFFF;box-shadow:0 1px 4px #3b43571a;border-radius:4px;position:relative}.mrx-table.mrx-table .mrx-table-download{display:flex;align-items:center;justify-content:flex-end;cursor:pointer}.mrx-table.mrx-table .mrx-table-download span{margin-right:8px;color:var(--Main2)}.mrx-table.mrx-table .mrx-table-download svg path{stroke:var(--Main2)}.mrx-table.mrx-table .mrx-table-counter{font-family:var(--body-lg-font-family);font-size:var(--body-lg-font-size);font-weight:var(--body-lg-font-weight);line-height:var(--body-lg-line-height)}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "component", type: i2.PaginatorComponent, selector: "mrx-paginator", inputs: ["pageSizes", "currentPage", "pageSize", "total", "customClasses", "isEmptyPaginator", "isPaginatorText", "paginatorText", "position", "withPageSize"], outputs: ["dataStateChanged"] }, { kind: "component", type: i3.NgSelectComponent, selector: "ng-select", inputs: ["bindLabel", "bindValue", "markFirst", "placeholder", "notFoundText", "typeToSearchText", "addTagText", "loadingText", "clearAllText", "appearance", "dropdownPosition", "appendTo", "loading", "closeOnSelect", "hideSelected", "selectOnTab", "openOnEnter", "maxSelectedItems", "groupBy", "groupValue", "bufferAmount", "virtualScroll", "selectableGroup", "selectableGroupAsModel", "searchFn", "trackByFn", "clearOnBackspace", "labelForId", "inputAttrs", "tabIndex", "readonly", "searchWhileComposing", "minTermLength", "editableSearchTerm", "keyDownFn", "typeahead", "multiple", "addTag", "searchable", "clearable", "isOpen", "items", "compareWith", "clearSearchOnAdd"], outputs: ["blur", "focus", "change", "open", "close", "search", "clear", "add", "remove", "scroll", "scrollToEnd"] }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i5.LoaderComponent, selector: "mrx-loader", inputs: ["size", "color", "customClasses"] }], animations: [
188
- trigger('visibleLoading', [
189
- state('in', style({ opacity: 1, visibility: 'visible' })),
190
- state('out', style({ opacity: 0, visibility: 'hidden' })),
191
- transition('in => out', [group([
192
- animate('300ms ease-in-out', style({ opacity: 0 })),
193
- animate('300ms ease-in-out', style({ visibility: 'hidden' }))
194
- ])]),
195
- transition('out => in', [group([
196
- animate('1ms ease-in-out', style({ visibility: 'visible' })),
197
- animate('300ms ease-in-out', style({ opacity: 1 }))
198
- ])])
199
- ])
200
- ] });
201
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: TableComponent, decorators: [{
202
- type: Component,
203
- args: [{ selector: 'mrx-table', animations: [
204
- trigger('visibleLoading', [
205
- state('in', style({ opacity: 1, visibility: 'visible' })),
206
- state('out', style({ opacity: 0, visibility: 'hidden' })),
207
- transition('in => out', [group([
208
- animate('300ms ease-in-out', style({ opacity: 0 })),
209
- animate('300ms ease-in-out', style({ visibility: 'hidden' }))
210
- ])]),
211
- transition('out => in', [group([
212
- animate('1ms ease-in-out', style({ visibility: 'visible' })),
213
- animate('300ms ease-in-out', style({ opacity: 1 }))
214
- ])])
215
- ])
216
- ], template: "<div class=\"mrx-table\" [class]=\"getClasses\" [class.mb-3]=\"pageable\">\r\n <ng-container *ngIf=\"headerSettings\">\r\n <div\r\n class=\"mrx-table-card-header pt-2 pb-2 mb-3\"\r\n [class.mrx-table-card-header--substrate]=\"headerSettings.substrate\"\r\n *ngIf=\"headerSettings.type === 'default'\"\r\n >\r\n <div class=\"row\">\r\n <div\r\n class=\"mrx-table-card-header--left col col-12 col-md-6 mb-1 mb-md-0 d-flex justify-content-start align-content-center\">\r\n <ng-container *ngTemplateOutlet=\"counterTemplate\"></ng-container>\r\n </div>\r\n\r\n <div class=\"mrx-table-card-header--right col col-12 col-md-6 d-flex justify-content-end align-content-center\">\r\n <ng-container *ngTemplateOutlet=\"sortTemplate\"></ng-container>\r\n <div class=\"ml-4\" *ngIf=\"headerSettings.toggle\">\r\n <ng-container *ngTemplateOutlet=\"toggleTemplate\"></ng-container>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div\r\n class=\"mrx-table-card-header mb-3 pt-2 pb-2\"\r\n [class.mrx-table-card-header--substrate]=\"headerSettings.substrate\"\r\n *ngIf=\"headerSettings.type === 'second'\"\r\n >\r\n <div class=\"row\">\r\n <div\r\n class=\"mrx-table-card-header--left col col-12 col-sm-6 mb-1 mb-sm-0 d-flex justify-content-start align-content-center\">\r\n <ng-container *ngTemplateOutlet=\"sortTemplate\"></ng-container>\r\n </div>\r\n\r\n <div class=\"mrx-table-card-header--right col col-12 col-sm-6 d-flex justify-content-end align-content-center\">\r\n <ng-container *ngTemplateOutlet=\"downloadTemplate\"></ng-container>\r\n </div>\r\n </div>\r\n </div>\r\n </ng-container>\r\n\r\n <ng-container [ngSwitch]=\"type\">\r\n <div class=\"mrx-table__wrapper\" *ngSwitchCase=\"'default'\"\r\n [class.mrx-table__wrapper--substrate]=\"contentSettings.substrate\">\r\n <table\r\n [class.table-striped]=\"striped\"\r\n [class.table-solid]=\"!striped\"\r\n [class.mt-2]=\"contentSettings.substrate\"\r\n [class.mb-3]=\"contentSettings.substrate && data.length\"\r\n >\r\n <thead [class.table-head-gray]=\"!headerSettings || headerSettings.background\">\r\n <tr>\r\n <th *ngFor=\"let col of contentChildren; let index = index; let first = first; let last = last; trackBy: trackByFn\" [class]=\"col.customClasses\">\r\n <ng-container *ngIf=\"!col.templateHead; else headerItemTemplate\">\r\n <ng-container *ngIf=\"col.sortable; else defaultHeadCol\">\r\n <div [class.th-wrapper]=\"sortable\" (click)=\"onSortColumn(col.name, col.sortable)\">\r\n <span>{{ col.label }}</span>\r\n <svg\r\n width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"\r\n [class]=\"columnSortedDir(col.name)\"\r\n class=\"mrx-table__sort-icon\">\r\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M4 9L8 13L12 9\" fill=\"#DAD5CE\"/>\r\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M12 7L8 3L4 7\" fill=\"#DAD5CE\"/>\r\n </svg>\r\n </div>\r\n </ng-container>\r\n <ng-template #defaultHeadCol>\r\n <div><span>{{ col.label }}</span></div>\r\n </ng-template>\r\n </ng-container>\r\n\r\n <ng-template #headerItemTemplate>\r\n <ng-container *ngIf=\"col.sortable; else defaultHeadCol\">\r\n <div [class.th-wrapper]=\"sortable\" (click)=\"onSortColumn(col.name, col.sortable)\">\r\n <ng-container *ngTemplateOutlet=\"col.templateHead; context: { $implicit: col }\"></ng-container>\r\n <svg\r\n width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"\r\n [class]=\"columnSortedDir(col.name)\"\r\n class=\"mrx-table__sort-icon\">\r\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M4 9L8 13L12 9\" fill=\"#DAD5CE\"/>\r\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M12 7L8 3L4 7\" fill=\"#DAD5CE\"/>\r\n </svg>\r\n </div>\r\n </ng-container>\r\n <ng-template #defaultHeadCol>\r\n <ng-container *ngTemplateOutlet=\"col.templateHead; context: { $implicit: col, index, first, last }\"></ng-container>\r\n </ng-template>\r\n </ng-template>\r\n </th>\r\n </tr>\r\n </thead>\r\n\r\n <tbody>\r\n <tr *ngFor=\"let dataItem of data; let index = index; let first = first; let last = last\" [class.-hovered]=\"hovered\">\r\n <td\r\n #tableTD\r\n class=\"p-0\"\r\n *ngFor=\"let col of contentChildren\"\r\n [class]=\"col.customClasses\"\r\n >\r\n <a\r\n class=\"link-wrapper td-content-wrapper\"\r\n [href]=\"getLinkForStroke(link, dataItem)\"\r\n *ngIf=\"link && col['isLink']; else defaultTemplate\"\r\n >\r\n <ng-container *ngIf=\"!col.templateCell; else bodyItemTemplate\">\r\n <div class=\"p-2\">{{ dataItem[col.name] }}</div>\r\n </ng-container>\r\n\r\n <ng-template #bodyItemTemplate>\r\n <ng-container\r\n *ngTemplateOutlet=\"col.templateCell; context: { $implicit: col, row: dataItem, index, first, last }\"></ng-container>\r\n </ng-template>\r\n </a>\r\n\r\n <ng-template #defaultTemplate>\r\n <ng-container *ngIf=\"!col.templateCell; else bodyItemTemplate\">\r\n <div class=\"p-2 td-content-wrapper\">{{ dataItem[col.name] }}</div>\r\n </ng-container>\r\n\r\n <ng-template #bodyItemTemplate>\r\n <div class=\"td-content-wrapper\">\r\n <ng-container\r\n *ngTemplateOutlet=\"col.templateCell; context: { $implicit: col, row: dataItem, index, first, last }\"></ng-container>\r\n </div>\r\n </ng-template>\r\n </ng-template>\r\n </td>\r\n </tr>\r\n </tbody>\r\n </table>\r\n\r\n <div class=\"mrx-table__result-message\" *ngIf=\"!data.length\">\r\n <ng-container *ngTemplateOutlet=\"emptyResultMsg ? emptyResultMsgTemplateDefault : emptyResultMsgTemplate\">\r\n </ng-container>\r\n </div>\r\n\r\n <div class=\"mrx-table__overlay\" [@visibleLoading]=\"isLoading ? 'in' : 'out'\" [ngClass]=\"{'open': isLoading}\" >\r\n <mrx-loader size=\"large\" color=\"brand\"></mrx-loader>\r\n </div>\r\n </div>\r\n\r\n <div class=\"mrx-table__wrapper\" *ngSwitchCase=\"'cards'\">\r\n <ng-container *ngFor=\"let item of data; let index = index; let first = first; let last = last\">\r\n <ng-container *ngTemplateOutlet=\"templateCard; context: { $implicit: item, index, first, last }\"></ng-container>\r\n </ng-container>\r\n\r\n <div class=\"mrx-table__result-message--substrate\" *ngIf=\"!data.length\" >\r\n <ng-container *ngTemplateOutlet=\"emptyResultMsg ? emptyResultMsgTemplateDefault : emptyResultMsgTemplate\">\r\n </ng-container>\r\n </div>\r\n\r\n <div class=\"mrx-table__overlay\" [@visibleLoading]=\"isLoading ? 'in' : 'out'\" [ngClass]=\"{'open': isLoading}\" >\r\n <mrx-loader size=\"large\" color=\"brand\"></mrx-loader>\r\n </div>\r\n </div>\r\n </ng-container>\r\n</div>\r\n\r\n<div class=\"mrx-table__paginator pt-2 pb-2\" [class.mrx-table__paginator--substrate]=\"paginatorSettings.substrate\" *ngIf=\"total\">\r\n <mrx-paginator\r\n *ngIf=\"pageable\"\r\n [total]=\"total\"\r\n [pageSize]=\"pageSize\"\r\n [position]=\"pageable.position\"\r\n [pageSizes]=\"pageable.pageSizes\"\r\n [currentPage]=\"currentPage\"\r\n [withPageSize]=\"pageable.withPageSize\"\r\n (dataStateChanged)=\"onDataStatePaginatorChanged($event)\">\r\n </mrx-paginator>\r\n</div>\r\n\r\n<ng-template #counterTemplate>\r\n <span class=\"d-flex align-items-center\" *ngIf=\"headerSettings?.count\">\r\n {{ total }} {{headerSettings?.countText || '\u043D\u043E\u0432\u043E\u0441\u0442\u0435\u0439'}}\r\n </span>\r\n</ng-template>\r\n\r\n<ng-template #sortTemplate>\r\n <div class=\"d-flex mrx-table-sort\" *ngIf=\"headerSettings?.sort\">\r\n <div class=\"mrx-table-sort-scale\" (click)=\"changeSort()\">\r\n <span class=\"mrx-table-sort-scale__title\">\u0421\u043E\u0440\u0442\u0438\u0440\u043E\u0432\u0430\u0442\u044C \u043F\u043E:</span>\r\n <div class=\"mrx-table-sort-scale__icon\">\r\n <span *ngIf=\"sort?.dir === 'desc'\" class=\"mrx-icon icon-sorting-down icon-font-16\"></span>\r\n <span *ngIf=\"sort?.dir === 'asc'\" class=\"mrx-icon icon-sorting-up icon-font-16\"></span>\r\n </div>\r\n </div>\r\n <ng-select\r\n bindLabel=\"sortLabel\"\r\n bindValue=\"name\"\r\n [items]=\"colArray\"\r\n [ngModel]=\"selectedSort\"\r\n (change)=\"updateSortSelect($event)\"\r\n [clearable]=\"false\"\r\n [searchable]=\"false\"\r\n [closeOnSelect]=\"true\"\r\n ></ng-select>\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #downloadTemplate>\r\n <div class=\"mrx-table-download\" (click)=\"clickToDownload($event)\" *ngIf=\"headerSettings?.download\">\r\n <span class=\"desktop\">\u0421\u043A\u0430\u0447\u0430\u0442\u044C \u0434\u0430\u043D\u043D\u044B\u0435</span>\r\n <span class=\"mrx-icon icon-download icon-font-24\"></span>\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #toggleTemplate>\r\n <div class=\"mrx-table-toggle\">\r\n <div class=\"mrx-table-toggle--item mr-1\" (click)=\"onChangeTypeTable('cards')\" [class.active]=\"type === 'cards'\">\r\n <span class=\"mrx-icon icon-cards-view icon-font-24\"></span>\r\n </div>\r\n <div class=\"mrx-table-toggle--item\" (click)=\"onChangeTypeTable('default')\" [class.active]=\"type === 'default'\">\r\n <span class=\"mrx-icon icon-table-view icon-font-24\"></span>\r\n </div>\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #emptyResultMsgTemplateDefault>\r\n {{emptyResultMsg}}\r\n</ng-template>\r\n", styles: [".mrx-table.mrx-table{display:block;width:100%}.mrx-table.mrx-table .th-wrapper{display:flex;cursor:pointer;word-break:inherit;justify-content:space-between;align-items:flex-end}.mrx-table.mrx-table .th-wrapper span{word-break:inherit}.mrx-table.mrx-table .mrx-table__sort-icon.asc path:last-child{fill:var(--brand-bg-primary-default)}.mrx-table.mrx-table .mrx-table__sort-icon.desc path:first-child{fill:var(--brand-bg-primary-default)}.mrx-table__wrapper.mrx-table__wrapper{overflow-x:auto;overflow-y:hidden;position:relative}.mrx-table__wrapper.mrx-table__wrapper .mrx-table__wrapper--substrate{padding-top:8px}.mrx-table.mrx-table.type-default table{width:100%;text-align:left;background-color:transparent;border-spacing:0}.mrx-table.mrx-table.type-default table thead.table-head-gray{background:var(--Disabled)}.mrx-table.mrx-table.type-default table thead .sort-asc .custom-table__sort path:nth-child(2){fill:var(--Main2)}.mrx-table.mrx-table.type-default table thead .sort-desc .custom-table__sort path:nth-child(1){fill:var(--Main2)}.mrx-table.mrx-table.type-default table td{max-width:340px;vertical-align:top}.mrx-table.mrx-table.type-default table td .link-wrapper{display:block;color:initial;height:100%}.mrx-table.mrx-table.type-default table td .link-wrapper:active{color:var(--Main1)}.mrx-table.mrx-table.type-default table td .left-border{border-left:4px solid var(--Main2)}.mrx-table.mrx-table.type-default table td .light-border{border-left:4px solid transparent}.mrx-table.mrx-table.type-default table td .warning-back{background-color:#ffece7}.mrx-table.mrx-table.type-default table td .disabled-back{background-color:#fafafa}.mrx-table.mrx-table.type-default table td .link-colored,.mrx-table.mrx-table.type-default table td .link-colored:active{color:var(--Main2)}.mrx-table.mrx-table.type-default table th{padding:8px;vertical-align:bottom;word-break:inherit;font-weight:700}.mrx-table.mrx-table.type-default table th svg{margin-left:8px;cursor:pointer}.mrx-table.mrx-table .mrx-table-card-header{position:relative}.mrx-table.mrx-table .mrx-table-card-header--substrate{padding-left:24px;padding-right:24px;background:#FFFFFF;box-shadow:0 1px 4px #3b43571a;border-radius:4px}.mrx-table.mrx-table .mrx-table__wrapper--substrate{background:#FFFFFF;box-shadow:0 1px 4px #3b43571a;border-radius:4px}.mrx-table.mrx-table .mrx-table-toggle{display:flex}.mrx-table.mrx-table .mrx-table-toggle--item{display:flex;align-items:center;justify-content:center;cursor:pointer}.mrx-table.mrx-table .mrx-table-toggle--item .mrx-icon{color:#e5e5e5}.mrx-table.mrx-table .mrx-table-toggle--item.active .mrx-icon{color:var(--Main2)}.mrx-table.mrx-table .mrx-table-sort.mrx-table-sort--is-card,.mrx-table.mrx-table .mrx-table-sort.mrx-table-sort--is-table{justify-content:flex-start}.mrx-table.mrx-table .mrx-table-sort-scale{display:flex;align-items:center;margin-right:8px;cursor:pointer}.mrx-table.mrx-table .mrx-table-sort-scale__title{font-family:PT Sans;font-style:normal;font-weight:400;font-size:14px;line-height:143%;color:var(--Main1);margin-right:12px}.mrx-table.mrx-table .mrx-table-sort-scale__icon{display:flex;align-items:center;justify-content:center}:host::ng-deep .mrx-table.mrx-table .mrx-table-sort .ng-select{max-width:215px;margin-bottom:0}:host::ng-deep .mrx-table.mrx-table .mrx-table-sort .ng-select .ng-select-container.ng-select-container{min-height:auto!important;border:none;cursor:pointer;align-items:center;height:100%!important}:host::ng-deep .mrx-table.mrx-table .mrx-table-sort .ng-select .ng-value-container.ng-value-container{padding-left:0!important;margin-right:8px}:host::ng-deep .mrx-table.mrx-table .mrx-table-sort .ng-select .ng-arrow-wrapper.ng-arrow-wrapper{min-height:auto;width:auto!important}:host::ng-deep .mrx-table.mrx-table .mrx-table-sort .ng-select .ng-dropdown-panel.ng-dropdown-panel{width:100vw;max-width:215px;left:auto;right:0}.mrx-table__paginator.mrx-table__paginator.mrx-table__paginator--substrate{padding-left:24px;padding-right:24px;background:#FFFFFF;box-shadow:0 1px 4px #3b43571a;border-radius:4px}.mrx-table.mrx-table .table-striped tbody tr:nth-child(even){background-color:var(--Disabled)}.mrx-table.mrx-table .table-striped tbody tr:nth-child(n){transition:.2s}.mrx-table.mrx-table .table-striped tbody tr:nth-child(n).-hovered:hover{background-color:var(--Bg2)}.mrx-table.mrx-table .table-solid{border-collapse:collapse}.mrx-table.mrx-table .table-solid thead tr{border-bottom:1px solid #f2f2f2}.mrx-table.mrx-table .table-solid tbody tr:not(:last-child){border-bottom:1px solid #f2f2f2}.mrx-table.mrx-table .table-solid tbody tr.-hovered:hover{box-shadow:0 1px 4px #3a3a3a4d}.mrx-table.mrx-table .mrx-table__wrapper .mrx-table__overlay{position:absolute;inset:0;background:rgba(255,255,255,.7);display:flex;align-items:flex-start;justify-content:center;padding-top:12px;border-radius:4px}.mrx-table .mrx-table__result-message{display:flex;justify-content:center;width:100%;padding:var(--spacing-4);font-family:var(--body-md-font-family);font-weight:var(--body-md-font-weight);font-size:var(--body-md-font-size);line-height:var(--body-md-line-height);color:var(--neutral-text-secondary)}.mrx-table .mrx-table__result-message *{font-family:var(--body-md-font-family);font-weight:var(--body-md-font-weight);font-size:var(--body-md-font-size);line-height:var(--body-md-line-height);color:var(--neutral-text-secondary)}.mrx-table .mrx-table__result-message--substrate{display:flex;justify-content:center;width:100%;font-weight:400;font-size:16px;line-height:24px;color:var(--neutral-text-primary);padding:24px;background:#FFFFFF;box-shadow:0 1px 4px #3b43571a;border-radius:4px;position:relative}.mrx-table.mrx-table .mrx-table-download{display:flex;align-items:center;justify-content:flex-end;cursor:pointer}.mrx-table.mrx-table .mrx-table-download span{margin-right:8px;color:var(--Main2)}.mrx-table.mrx-table .mrx-table-download svg path{stroke:var(--Main2)}.mrx-table.mrx-table .mrx-table-counter{font-family:var(--body-lg-font-family);font-size:var(--body-lg-font-size);font-weight:var(--body-lg-font-weight);line-height:var(--body-lg-line-height)}\n"] }]
217
- }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { contentChildren: [{
218
- type: ContentChildren,
219
- args: [ColumnComponent]
220
- }], templateCard: [{
221
- type: ContentChild,
222
- args: ['templateCard']
223
- }], emptyResultMsgTemplate: [{
224
- type: ContentChild,
225
- args: ['emptyResultMsgTemplate']
226
- }], type: [{
227
- type: Input
228
- }], data: [{
229
- type: Input
230
- }], pageSize: [{
231
- type: Input
232
- }], currentPage: [{
233
- type: Input
234
- }], total: [{
235
- type: Input
236
- }], link: [{
237
- type: Input
238
- }], isLoading: [{
239
- type: Input
240
- }], sort: [{
241
- type: Input
242
- }], trackById: [{
243
- type: Input
244
- }], sortable: [{
245
- type: Input
246
- }], striped: [{
247
- type: Input
248
- }], customClasses: [{
249
- type: Input
250
- }], emptyResultMsg: [{
251
- type: Input
252
- }], hovered: [{
253
- type: Input
254
- }], autoHeight: [{
255
- type: Input
256
- }], headerSettings: [{
257
- type: Input
258
- }], contentSettings: [{
259
- type: Input
260
- }], paginatorSettings: [{
261
- type: Input
262
- }], setPageable: [{
263
- type: Input,
264
- args: ['pageable']
265
- }], dataStateChanged: [{
266
- type: Output
267
- }], downloadData: [{
268
- type: Output
269
- }], changeTypeTable: [{
270
- type: Output
271
- }], change: [{
272
- type: Output
273
- }] } });
274
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbXlydGEtdWkvc3JjL2xpYi9jb21wb25lbnRzL3RhYmxlL3RhYmxlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL215cnRhLXVpL3NyYy9saWIvY29tcG9uZW50cy90YWJsZS90YWJsZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBR0wsU0FBUyxFQUNULFlBQVksRUFDWixlQUFlLEVBQ2YsWUFBWSxFQUNaLEtBQUssRUFDTCxNQUFNLEdBR1AsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFnRyxhQUFhLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDM0ksT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBRXZFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBR3hFLE9BQU8sRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsVUFBVSxFQUFFLE9BQU8sRUFBRSxNQUFNLHFCQUFxQixDQUFDOzs7Ozs7O0FBdUJ4RixNQUFNLE9BQU8sY0FBYztJQTBEekIsWUFBb0IsY0FBaUM7UUFBakMsbUJBQWMsR0FBZCxjQUFjLENBQW1CO1FBekQ5QyxhQUFRLEdBQXNCLEVBQUUsQ0FBQztRQUNqQyxhQUFRLEdBQXlCLG9CQUFvQixDQUFDO1FBQ3RELGlCQUFZLEdBQUcsRUFBRSxDQUFBO1FBQ2pCLFNBQUksR0FBRyxLQUFLLENBQUE7UUFNVixTQUFJLEdBQWMsU0FBUyxDQUFDO1FBRTVCLGFBQVEsR0FBRyxFQUFFLENBQUM7UUFDZCxnQkFBVyxHQUFHLENBQUMsQ0FBQztRQUNoQixVQUFLLEdBQUcsQ0FBQyxDQUFDO1FBQ1YsU0FBSSxHQUFHLEVBQUUsQ0FBQztRQUNWLGNBQVMsR0FBRyxL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QjtzQkFBekIsTUFBTTtnQkFFRyxZQUFZO3NCQUFyQixNQUFNO2dCQUNHLGVBQWU7c0JBQXhCLE1BQU07Z0JBQ0csTUFBTTtzQkFBZixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBBZnRlclZpZXdJbml0LFxyXG4gIENoYW5nZURldGVjdG9yUmVmLFxyXG4gIENvbXBvbmVudCxcclxuICBDb250ZW50Q2hpbGQsXHJcbiAgQ29udGVudENoaWxkcmVuLFxyXG4gIEV2ZW50RW1pdHRlcixcclxuICBJbnB1dCxcclxuICBPdXRwdXQsXHJcbiAgUXVlcnlMaXN0LFxyXG4gIFRlbXBsYXRlUmVmLFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBDb250ZW50U2V0dGluZ3MsIEhlYWRlclNldHRpbmdzLCBQYWdpbmF0b3JTZXR0aW5ncywgU29ydERlc2NyaXB0b3IsIFRhYmxlQm9keUl0ZW0sIFRhYmxlVHlwZSwgVGFibGVUeXBlRW51bSB9IGZyb20gJy4vdGFibGUuZW51bSc7XHJcbmltcG9ydCB7IENvbHVtbkNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9jb2x1bW4vY29sdW1uLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFBhZ2VyU2V0dGluZ3MgfSBmcm9tICcuL21vZGVscy9wYWdlci1zZXR0aW5ncyc7XHJcbmltcG9ydCB7IERlZmF1bHRQYWdlclNldHRpbmdzIH0gZnJvbSAnLi9kZWZhdWx0L2RlZmF1bHQtcGFnZXItc2V0dGluZ3MnO1xyXG5pbXBvcnQgeyBEYXRhU3RhdGVDaGFuZ2VFdmVudCB9IGZyb20gJy4vbW9kZWxzL2RhdGEtc3RhdGUtY2hhbmdlLmV2ZW50JztcclxuaW1wb3J0IHsgUGFnaW5hdGVPdXRwdXRPYmplY3QgfSBmcm9tICcuLi9wYWdpbmF0b3IvcGFnaW5hdG9yLmVudW0nO1xyXG5pbXBvcnQgeyBhbmltYXRlLCBncm91cCwgc3RhdGUsIHN0eWxlLCB0cmFuc2l0aW9uLCB0cmlnZ2VyIH0gZnJvbSAnQGFuZ3VsYXIvYW5pbWF0aW9ucyc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ21yeC10YWJsZScsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3RhYmxlLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi90YWJsZS5jb21wb25lbnQubGVzcyddLFxyXG4gIGFuaW1hdGlvbnM6IFtcclxuICAgIHRyaWdnZXIoJ3Zpc2libGVMb2FkaW5nJywgW1xyXG4gICAgICBzdGF0ZSgnaW4nLCBzdHlsZSh7IG9wYWNpdHk6IDEsIHZpc2liaWxpdHk6ICd2aXNpYmxlJyB9KSksXHJcbiAgICAgIHN0YXRlKCdvdXQnLCBzdHlsZSh7IG9wYWNpdHk6IDAsIHZpc2liaWxpdHk6ICdoaWRkZW4nIH0pKSxcclxuICAgICAgdHJhbnNpdGlvbignaW4gPT4gb3V0JywgW2dyb3VwKFtcclxuICAgICAgICBhbmltYXRlKCczMDBtcyBlYXNlLWluLW91dCcsIHN0eWxlKHsgb3BhY2l0eTogMCB9KSksXHJcbiAgICAgICAgYW5pbWF0ZSgnMzAwbXMgZWFzZS1pbi1vdXQnLCBzdHlsZSh7IHZpc2liaWxpdHk6ICdoaWRkZW4nIH0pKVxyXG4gICAgICBdXHJcbiAgICAgICldKSxcclxuICAgICAgdHJhbnNpdGlvbignb3V0ID0+IGluJywgW2dyb3VwKFtcclxuICAgICAgICBhbmltYXRlKCcxbXMgZWFzZS1pbi1vdXQnLCBzdHlsZSh7IHZpc2liaWxpdHk6ICd2aXNpYmxlJyB9KSksXHJcbiAgICAgICAgYW5pbWF0ZSgnMzAwbXMgZWFzZS1pbi1vdXQnLCBzdHlsZSh7IG9wYWNpdHk6IDEgfSkpXHJcbiAgICAgIF1cclxuICAgICAgKV0pXHJcbiAgICBdKVxyXG4gIF1cclxufSlcclxuZXhwb3J0IGNsYXNzIFRhYmxlQ29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCB7XHJcbiAgcHVibGljIGNvbEFycmF5OiBDb2x1bW5Db21wb25lbnRbXSA9IFtdO1xyXG4gIHB1YmxpYyBwYWdlYWJsZTogUGFnZXJTZXR0aW5ncyB8IG51bGwgPSBEZWZhdWx0UGFnZXJTZXR0aW5ncztcclxuICBwdWJsaWMgc2VsZWN0ZWRTb3J0ID0gJydcclxuICBwdWJsaWMgaW5pdCA9IGZhbHNlXHJcblxyXG4gIEBDb250ZW50Q2hpbGRyZW4oQ29sdW1uQ29tcG9uZW50KSBjb250ZW50Q2hpbGRyZW4hOiBRdWVyeUxpc3Q8Q29sdW1uQ29tcG9uZW50PjtcclxuICBAQ29udGVudENoaWxkKCd0ZW1wbGF0ZUNhcmQnKSB0ZW1wbGF0ZUNhcmQhOiBUZW1wbGF0ZVJlZjxhbnk+O1xyXG4gIEBDb250ZW50Q2hpbGQoJ2VtcHR5UmVzdWx0TXNnVGVtcGxhdGUnKSBlbXB0eVJlc3VsdE1zZ1RlbXBsYXRlITogVGVtcGxhdGVSZWY8YW55PjtcclxuXHJcbiAgQElucHV0KCkgdHlwZTogVGFibGVUeXBlID0gJ2RlZmF1bHQnO1xyXG4gIEBJbnB1dCgpIGRhdGEhOiBUYWJsZUJvZHlJdGVtW107XHJcbiAgQElucHV0KCkgcGFnZVNpemUgPSAyMDtcclxuICBASW5wdXQoKSBjdXJyZW50UGFnZSA9IDE7XHJcbiAgQElucHV0KCkgdG90YWwgPSAwO1xyXG4gIEBJbnB1dCgpIGxpbmsgPSAnJztcclxuICBASW5wdXQoKSBpc0xvYWRpbmcgPSBmYWxzZTtcclxuXHJcbiAgQElucHV0KCkgc29ydDogU29ydERlc2NyaXB0b3IgfCB1bmRlZmluZWQ7XHJcbiAgQElucHV0KCkgdHJhY2tCeUlkID0gJ2lkJztcclxuICBASW5wdXQoKSBzb3J0YWJsZSA9IHRydWU7XHJcbiAgQElucHV0KCkgc3RyaXBlZCA9IHRydWU7XHJcbiAgQElucHV0KCkgY3VzdG9tQ2xhc3NlcyA9ICcnXHJcbiAgQElucHV0KCkgZW1wdHlSZXN1bHRNc2cgPSAnJ1xyXG4gIEBJbnB1dCgpIGhvdmVyZWQgPSB0cnVlO1xyXG5cclxuICBASW5wdXQoKSBhdXRvSGVpZ2h0ID0gdHJ1ZVxyXG5cclxuICBASW5wdXQoKSBoZWFkZXJTZXR0aW5nczogSGVhZGVyU2V0dGluZ3MgfCB1bmRlZmluZWRcclxuXHJcbiAgQElucHV0KCkgY29udGVudFNldHRpbmdzOiBDb250ZW50U2V0dGluZ3MgPSB7XHJcbiAgICBzdWJzdHJhdGU6IGZhbHNlXHJcbiAgfVxyXG5cclxuICBASW5wdXQoKSBwYWdpbmF0b3JTZXR0aW5nczogUGFnaW5hdG9yU2V0dGluZ3MgPSB7XHJcbiAgICBzdWJzdHJhdGU6IGZhbHNlXHJcbiAgfVxyXG5cclxuICAvLyDQn9GA0L7QstC10YDQuNGC0Ywg0Lgg0LLRi9GA0LXQt9Cw0YLRjFxyXG4gIHB1YmxpYyBzZWxlY3RlZEl0ZW0gPSAxXHJcblxyXG4gIEBJbnB1dCgncGFnZWFibGUnKVxyXG4gIHB1YmxpYyBzZXQgc2V0UGFnZWFibGUodmFsdWU6IFBhZ2VyU2V0dGluZ3MgfCBib29sZWFuKSB7XHJcbiAgICBpZiAodmFsdWUgPT09IHRydWUpIHtcclxuICAgICAgdGhpcy5wYWdlYWJsZSA9IERlZmF1bHRQYWdlclNldHRpbmdzO1xyXG4gICAgfSBlbHNlIGlmICh2YWx1ZSA9PT0gZmFsc2UpIHtcclxuICAgICAgdGhpcy5wYWdlYWJsZSA9IG51bGw7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLnBhZ2VhYmxlID0gdmFsdWU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBAT3V0cHV0KCkgZGF0YVN0YXRlQ2hhbmdlZDogRXZlbnRFbWl0dGVyPERhdGFTdGF0ZUNoYW5nZUV2ZW50PiA9XHJcbiAgICBuZXcgRXZlbnRFbWl0dGVyPERhdGFTdGF0ZUNoYW5nZUV2ZW50PigpO1xyXG4gIEBPdXRwdXQoKSBkb3dubG9hZERhdGE6IEV2ZW50RW1pdHRlcjxFdmVudD4gPSBuZXcgRXZlbnRFbWl0dGVyPEV2ZW50PigpXHJcbiAgQE91dHB1dCgpIGNoYW5nZVR5cGVUYWJsZTogRXZlbnRFbWl0dGVyPFRhYmxlVHlwZT4gPSBuZXcgRXZlbnRFbWl0dGVyPFRhYmxlVHlwZT4oKVxyXG4gIEBPdXRwdXQoKSBjaGFuZ2U6IEV2ZW50RW1pdHRlcjxFdmVudD4gPSBuZXcgRXZlbnRFbWl0dGVyPEV2ZW50PigpXHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgY2hhbmdlRGV0ZWN0b3I6IENoYW5nZURldGVjdG9yUmVmKSB7XHJcbiAgfVxyXG5cclxuICBuZ0FmdGVyVmlld0luaXQoKSB7XHJcbiAgICB0aGlzLmNvbEFycmF5ID0gdGhpcy5jb250ZW50Q2hpbGRyZW4udG9BcnJheSgpO1xyXG5cclxuICAgIHRoaXMuY29sQXJyYXkuZm9yRWFjaChpdGVtID0+IHtcclxuICAgICAgaWYgKHRoaXMuc29ydCAmJiB0aGlzLnNvcnQuY29sID09PSBpdGVtLm5hbWUpIHtcclxuICAgICAgICB0aGlzLnNlbGVjdGVkU29ydCA9IGl0ZW0ubmFtZVxyXG4gICAgICB9XHJcbiAgICB9KVxyXG5cclxuICAgIHRoaXMuY29sQXJyYXkgPSB0aGlzLmNvbEFycmF5LmZpbHRlcihpdGVtID0+IHtcclxuICAgICAgcmV0dXJuIGl0ZW0ubmFtZSAhPT0gJycgJiYgaXRlbS5zb3J0TGFiZWxcclxuICAgIH0pXHJcblxyXG4gICAgdGhpcy5jaGFuZ2VEZXRlY3Rvci5kZXRlY3RDaGFuZ2VzKClcclxuICAgIHRoaXMuaW5pdCA9IHRydWVcclxuXHJcbiAgICBpZiAodGhpcy5hdXRvSGVpZ2h0KSB7XHJcbiAgICAgIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoJy50ZC1jb250ZW50LXdyYXBwZXInKS5mb3JFYWNoKCh3cmFwcGVyOiBFbGVtZW50KSA9PiB7XHJcbiAgICAgICAgY29uc3QgdGRIZWlnaHQgPSB3cmFwcGVyLmNsb3Nlc3QoJ3RkJyk/LnNjcm9sbEhlaWdodFxyXG4gICAgICAgIGNvbnN0IGxpbmsgPSB3cmFwcGVyIGFzIEhUTUxFbGVtZW50XHJcbiAgICAgICAgbGluay5zdHlsZS5oZWlnaHQgPSB0ZEhlaWdodCArICdweCdcclxuICAgICAgfSlcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXQgZ2V0Q2xhc3NlcygpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIGAkeyBUYWJsZVR5cGVFbnVtW3RoaXMudHlwZV0gfSAkeyB0aGlzLmN1c3RvbUNsYXNzZXMgfWA7XHJcbiAgfVxyXG5cclxuICB0cmFja0J5Rm4oaW5kZXg6IG51bWJlciwgaXRlbTogYW55KTogc3RyaW5nIHtcclxuICAgIHJldHVybiBpdGVtW3RoaXMudHJhY2tCeUlkXTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBjaGFuZ2VTb3J0KCkge1xyXG4gICAgY29uc3QgbmV3RXZlbnREYXRhOiBEYXRhU3RhdGVDaGFuZ2VFdmVudCA9IHsgcGFnZTogdGhpcy5jdXJyZW50UGFnZSwgcGFnZVNpemU6IHRoaXMucGFnZVNpemUgfTtcclxuXHJcbiAgICBpZiAoIXRoaXMuY29sQXJyYXkubGVuZ3RoKSB7XHJcbiAgICAgIHJldHVyblxyXG4gICAgfVxyXG5cclxuICAgIGlmICh0aGlzLnNvcnQpIHtcclxuICAgICAgbmV3RXZlbnREYXRhLnNvcnQgPSB7XHJcbiAgICAgICAgZGlyOiB0aGlzLnNvcnQuZGlyID09PSAnZGVzYycgPyAnYXNjJyA6ICdkZXNjJyxcclxuICAgICAgICBjb2w6IHRoaXMuc29ydC5jb2xcclxuICAgICAgfTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIG5ld0V2ZW50RGF0YS5zb3J0ID0ge1xyXG4gICAgICAgIGRpcjogJ2FzYycsXHJcbiAgICAgICAgY29sOiB0aGlzLmNvbEFycmF5WzBdLm5hbWVcclxuICAgICAgfTtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLmRhdGFTdGF0ZUNoYW5nZWQuZW1pdChuZXdFdmVudERhdGEpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGNvbHVtblNvcnRlZERpcihjb2x1bW46IHN0cmluZyk6IHN0cmluZyB7XHJcbiAgICBpZiAodGhpcy5zb3J0ICYmIHRoaXMuc29ydC5jb2wgPT0gY29sdW1uICYmIHRoaXMuc29ydC5kaXIpIHtcclxuICAgICAgcmV0dXJuIHRoaXMuc29ydC5kaXI7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gJyc7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgb25Tb3J0Q29sdW1uKGNvbHVtbjogc3RyaW5nLCBzb3J0YWJsZTogYm9vbGVhbik6IHZvaWQge1xyXG4gICAgaWYgKCFzb3J0YWJsZSkge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3QgbmV3RXZlbnREYXRhOiBEYXRhU3RhdGVDaGFuZ2VFdmVudCA9IHsgcGFnZTogdGhpcy5jdXJyZW50UGFnZSwgcGFnZVNpemU6IHRoaXMucGFnZVNpemUgfTtcclxuXHJcbiAgICBpZiAodGhpcy5zb3J0ICYmIHRoaXMuc29ydC5jb2wgPT0gY29sdW1uKSB7XHJcbiAgICAgIGlmICh0aGlzLnNvcnQuZGlyICYmIHRoaXMuc29ydC5kaXIgPT09ICdhc2MnKSB7XHJcbiAgICAgICAgbmV3RXZlbnREYXRhLnNvcnQgPSB7IGRpcjogJ2Rlc2MnLCBjb2w6IGNvbHVtbiB9O1xyXG4gICAgICB9XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBuZXdFdmVudERhdGEuc29ydCA9IHsgZGlyOiAnYXNjJywgY29sOiBjb2x1bW4gfTtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLmRhdGFTdGF0ZUNoYW5nZWQuZW1pdChuZXdFdmVudERhdGEpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGNsaWNrVG9Eb3dubG9hZChldmVudDogRXZlbnQpOiB2b2lkIHtcclxuICAgIHRoaXMuZG93bmxvYWREYXRhLmVtaXQoZXZlbnQpXHJcbiAgfVxyXG5cclxuICBwdWJsaWMgdXBkYXRlU29ydFNlbGVjdCh2YWx1ZTogYW55KTogdm9pZCB7XHJcbiAgICBjb25zdCBuZXdFdmVudERhdGE6IERhdGFTdGF0ZUNoYW5nZUV2ZW50ID0ge1xyXG4gICAgICBwYWdlOiB0aGlzLmN1cnJlbnRQYWdlLFxyXG4gICAgICBwYWdlU2l6ZTogdGhpcy5wYWdlU2l6ZSxcclxuICAgICAgc29ydDoge1xyXG4gICAgICAgIGNvbDogdmFsdWUubmFtZSxcclxuICAgICAgICBkaXI6IHRoaXMuc29ydD8uZGlyXHJcbiAgICAgIH1cclxuICAgIH07XHJcblxyXG4gICAgdGhpcy5kYXRhU3RhdGVDaGFuZ2VkLmVtaXQobmV3RXZlbnREYXRhKVxyXG4gIH1cclxuXHJcbiAgcHVibGljIG9uRGF0YVN0YXRlUGFnaW5hdG9yQ2hhbmdlZChwYWdpbmF0aW9uOiBQYWdpbmF0ZU91dHB1dE9iamVjdCk6IHZvaWQge1xyXG4gICAgY29uc3QgbmV3RXZlbnREYXRhOiBEYXRhU3RhdGVDaGFuZ2VFdmVudCA9IHtcclxuICAgICAgcGFnZTogcGFnaW5hdGlvbi5jdXJyZW50UGFnZSxcclxuICAgICAgcGFnZVNpemU6IHBhZ2luYXRpb24ucGFnZVNpemVcclxuICAgIH07XHJcblxyXG4gICAgaWYgKHRoaXMuc29ydCAmJiB0aGlzLnNvcnQuY29sICYmIHRoaXMuc29ydC5kaXIpIHtcclxuICAgICAgbmV3RXZlbnREYXRhLnNvcnQgPSB7IGRpcjogdGhpcy5zb3J0LmRpciwgY29sOiB0aGlzLnNvcnQuY29sIH07XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5kYXRhU3RhdGVDaGFuZ2VkLmVtaXQobmV3RXZlbnREYXRhKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXRMaW5rRm9yU3Ryb2tlKGxpbms6IHN0cmluZywgZGF0YUl0ZW06IFRhYmxlQm9keUl0ZW0pIHtcclxuICAgIC8vINGA0LXQs9GD0LvRj9GA0LrQuFxyXG4gICAgY29uc3QgcmVnRXhwUGFyYW1zID0gLyg/PD1cXFspW15cXHNcXFtcXF1dKyg/PV0pL2dpO1xyXG4gICAgLy8g0L7RgdC90L7QstC90L7QuSDQvNCw0YHRgdC40LJcclxuICAgIGNvbnN0IGxpbmtBcnJheSA9IGxpbmsuc3BsaXQoJz8nKVxyXG4gICAgLy8g0LzQsNGB0YHQuNCy0Ysg0YHRgtGA0L7QuiB1cmwg0Lgg0L/QsNGA0LDQvNC10YLRgNC+0LJcclxuICAgIGNvbnN0IGFycmF5VXJsID0gbGlua0FycmF5WzBdPy5zcGxpdCgnLycpXHJcbiAgICBjb25zdCBzZWFyY2hQYXJhbXMgPSBsaW5rQXJyYXlbMV0/LnNwbGl0KCcmJylcclxuICAgIGNvbnN0IHNlYXJjaFBhcmFtc09iaiA9IHNlYXJjaFBhcmFtcz8ubWFwKChzdHIpID0+IHtcclxuICAgICAgY29uc3Qgc3RyUGFyYW1EYXRhID0gc3RyLnNwbGl0KCc9JylbMV0ubWF0Y2gocmVnRXhwUGFyYW1zKVxyXG4gICAgICByZXR1cm4ge1xyXG4gICAgICAgIG5hbWU6IHN0ci5zcGxpdCgnPScpWzBdLFxyXG4gICAgICAgIGRhdGE6IHN0clBhcmFtRGF0YSA/IHN0clBhcmFtRGF0YVswXSA6IHN0ci5zcGxpdCgnPScpWzBdLFxyXG4gICAgICB9XHJcbiAgICB9KVxyXG4gICAgLy8gY29uc3QgYXJyYXlQYXJhbXMgPSBsaW5rQXJyYXlbMV0/Lm1hdGNoKHJlZ0V4cFBhcmFtcylcclxuXHJcbiAgICAvLyDQvtCx0YDQsNCx0L7RgtC60LAg0YLQtdC70LAgdXJsXHJcbiAgICBjb25zdCBzdHJVcmwgPSBhcnJheVVybC5tYXAoKHN0cikgPT4ge1xyXG4gICAgICBpZiAoc3RyLm1hdGNoKHJlZ0V4cFBhcmFtcykpIHtcclxuICAgICAgICAvLyBAdHMtaWdub3JlXHJcbiAgICAgICAgcmV0dXJuIGRhdGFJdGVtW3N0ci5tYXRjaChyZWdFeHBQYXJhbXMpWzBdXVxyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHJldHVybiBzdHJcclxuICAgICAgfVxyXG4gICAgfSkuam9pbignLycpXHJcbiAgICAvLyDQvtCx0YDQsNCx0L7RgtC60LAg0L/QsNGA0LDQvNC10YLRgNC+0LJcclxuICAgIC8vINC10YHQu9C4INC10YHRgtGMINC/0LDRgNCw0LzQtdGC0YDRiyAtINCy0L7Qt9Cy0YDQsNGJ0LDQtdC8INC40YUg0YHRgtGA0L7QutC+0Lkg0YEg0LTQuNC90LDQvNC40YfQtdGB0LrQuNC80Lgg0L/QsNGA0LDQvNC10YLRgNCw0LzQuFxyXG5cclxuICAgIGNvbnN0IHN0clBhcmFtcyA9IHNlYXJjaFBhcmFtc09iaiA/IHNlYXJjaFBhcmFtc09iai5tYXAoKHBhcmFtLCBpbmRleDogbnVtYmVyKSA9PiB7XHJcbiAgICAgIHJldHVybiBgJHsgaW5kZXggPiAwID8gJycgOiAnPycgfSR7IHBhcmFtLm5hbWUgfT0keyBkYXRhSXRlbVtwYXJhbS5kYXRhXSB9YFxyXG4gICAgfSkuam9pbignJicpIDogJydcclxuXHJcbiAgICAvLyBjb25zdCBzdHJQYXJhbXMgPSBhcnJheVBhcmFtcyA/IGFycmF5UGFyYW1zLm1hcCgoc3RyLCBpbmRleCkgPT4ge1xyXG4gICAgLy8gICByZXR1cm4gYCR7aW5kZXggPiAwID8gJycgOiAnPyd9JHtzdHJ9PSR7ZGF0YUl0ZW1bc3RyXX1gXHJcbiAgICAvLyB9KS5qb2luKCcmJykgOiAnJ1xyXG5cclxuICAgIHJldHVybiBgJHsgc3RyVXJsIH0keyBzdHJQYXJhbXMgfWBcclxuICB9XHJcblxyXG4gIHB1YmxpYyBvbkNoYW5nZVR5cGVUYWJsZSh0eXBlOiBUYWJsZVR5cGUpOiB2b2lkIHtcclxuICAgIHRoaXMuY2hhbmdlVHlwZVRhYmxlLmVtaXQodHlwZSlcclxuICB9XHJcblxyXG4gIC8vIHB1YmxpYyBnZXRIZWlnaHRGb3JURCh0YWJsZVREOiBIVE1MRWxlbWVudCkge1xyXG4gIC8vICAgcmV0dXJuIHRhYmxlVEQuc2Nyb2xsSGVpZ2h0XHJcbiAgLy8gfVxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJtcngtdGFibGVcIiBbY2xhc3NdPVwiZ2V0Q2xhc3Nlc1wiIFtjbGFzcy5tYi0zXT1cInBhZ2VhYmxlXCI+XHJcbiAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImhlYWRlclNldHRpbmdzXCI+XHJcbiAgICA8ZGl2XHJcbiAgICAgIGNsYXNzPVwibXJ4LXRhYmxlLWNhcmQtaGVhZGVyIHB0LTIgcGItMiBtYi0zXCJcclxuICAgICAgW2NsYXNzLm1yeC10YWJsZS1jYXJkLWhlYWRlci0tc3Vic3RyYXRlXT1cImhlYWRlclNldHRpbmdzLnN1YnN0cmF0ZVwiXHJcbiAgICAgICpuZ0lmPVwiaGVhZGVyU2V0dGluZ3MudHlwZSA9PT0gJ2RlZmF1bHQnXCJcclxuICAgID5cclxuICAgICAgPGRpdiBjbGFzcz1cInJvd1wiPlxyXG4gICAgICAgIDxkaXZcclxuICAgICAgICAgIGNsYXNzPVwibXJ4LXRhYmxlLWNhcmQtaGVhZGVyLS1sZWZ0IGNvbCBjb2wtMTIgY29sLW1kLTYgbWItMSBtYi1tZC0wIGQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtc3RhcnQgYWxpZ24tY29udGVudC1jZW50ZXJcIj5cclxuICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJjb3VudGVyVGVtcGxhdGVcIj48L25nLWNvbnRhaW5lcj5cclxuICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgPGRpdiBjbGFzcz1cIm1yeC10YWJsZS1jYXJkLWhlYWRlci0tcmlnaHQgY29sIGNvbC0xMiBjb2wtbWQtNiBkLWZsZXgganVzdGlmeS1jb250ZW50LWVuZCBhbGlnbi1jb250ZW50LWNlbnRlclwiPlxyXG4gICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cInNvcnRUZW1wbGF0ZVwiPjwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cIm1sLTRcIiAqbmdJZj1cImhlYWRlclNldHRpbmdzLnRvZ2dsZVwiPlxyXG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwidG9nZ2xlVGVtcGxhdGVcIj48L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG5cclxuICAgIDxkaXZcclxuICAgICAgY2xhc3M9XCJtcngtdGFibGUtY2FyZC1oZWFkZXIgbWItMyBwdC0yIHBiLTJcIlxyXG4gICAgICBbY2xhc3MubXJ4LXRhYmxlLWNhcmQtaGVhZGVyLS1zdWJzdHJhdGVdPVwiaGVhZGVyU2V0dGluZ3Muc3Vic3RyYXRlXCJcclxuICAgICAgKm5nSWY9XCJoZWFkZXJTZXR0aW5ncy50eXBlID09PSAnc2Vjb25kJ1wiXHJcbiAgICA+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJyb3dcIj5cclxuICAgICAgICA8ZGl2XHJcbiAgICAgICAgICBjbGFzcz1cIm1yeC10YWJsZS1jYXJkLWhlYWRlci0tbGVmdCBjb2wgY29sLTEyIGNvbC1zbS02IG1iLTEgbWItc20tMCBkLWZsZXgganVzdGlmeS1jb250ZW50LXN0YXJ0IGFsaWduLWNvbnRlbnQtY2VudGVyXCI+XHJcbiAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwic29ydFRlbXBsYXRlXCI+PC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJtcngtdGFibGUtY2FyZC1oZWFkZXItLXJpZ2h0IGNvbCBjb2wtMTIgY29sLXNtLTYgZC1mbGV4IGp1c3RpZnktY29udGVudC1lbmQgYWxpZ24tY29udGVudC1jZW50ZXJcIj5cclxuICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJkb3dubG9hZFRlbXBsYXRlXCI+PC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgPC9uZy1jb250YWluZXI+XHJcblxyXG4gIDxuZy1jb250YWluZXIgW25nU3dpdGNoXT1cInR5cGVcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJtcngtdGFibGVfX3dyYXBwZXJcIiAqbmdTd2l0Y2hDYXNlPVwiJ2RlZmF1bHQnXCJcclxuICAgICAgICAgW2NsYXNzLm1yeC10YWJsZV9fd3JhcHBlci0tc3Vic3RyYXRlXT1cImNvbnRlbnRTZXR0aW5ncy5zdWJzdHJhdGVcIj5cclxuICAgICAgPHRhYmxlXHJcbiAgICAgICAgW2NsYXNzLnRhYmxlLXN0cmlwZWRdPVwic3RyaXBlZFwiXHJcbiAgICAgICAgW2NsYXNzLnRhYmxlLXNvbGlkXT1cIiFzdHJpcGVkXCJcclxuICAgICAgICBbY2xhc3MubXQtMl09XCJjb250ZW50U2V0dGluZ3Muc3Vic3RyYXRlXCJcclxuICAgICAgICBbY2xhc3MubWItM109XCJjb250ZW50U2V0dGluZ3Muc3Vic3RyYXRlICYmIGRhdGEubGVuZ3RoXCJcclxuICAgICAgPlxyXG4gICAgICAgIDx0aGVhZCBbY2xhc3MudGFibGUtaGVhZC1ncmF5XT1cIiFoZWFkZXJTZXR0aW5ncyB8fCBoZWFkZXJTZXR0aW5ncy5iYWNrZ3JvdW5kXCI+XHJcbiAgICAgICAgPHRyPlxyXG4gICAgICAgICAgPHRoICpuZ0Zvcj1cImxldCBjb2wgb2YgY29udGVudENoaWxkcmVuOyBsZXQgaW5kZXggPSBpbmRleDsgbGV0IGZpcnN0ID0gZmlyc3Q7IGxldCBsYXN0ID0gbGFzdDsgdHJhY2tCeTogdHJhY2tCeUZuXCIgW2NsYXNzXT1cImNvbC5jdXN0b21DbGFzc2VzXCI+XHJcbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhY29sLnRlbXBsYXRlSGVhZDsgZWxzZSBoZWFkZXJJdGVtVGVtcGxhdGVcIj5cclxuICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiY29sLnNvcnRhYmxlOyBlbHNlIGRlZmF1bHRIZWFkQ29sXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IFtjbGFzcy50aC13cmFwcGVyXT1cInNvcnRhYmxlXCIgKGNsaWNrKT1cIm9uU29ydENvbHVtbihjb2wubmFtZSwgY29sLnNvcnRhYmxlKVwiPlxyXG4gICAgICAgICAgICAgICAgICA8c3Bhbj57eyBjb2wubGFiZWwgfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgIDxzdmdcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIiB2aWV3Qm94PVwiMCAwIDE2IDE2XCIgZmlsbD1cIm5vbmVcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcclxuICAgICAgICAgICAgICAgICAgICBbY2xhc3NdPVwiY29sdW1uU29ydGVkRGlyKGNvbC5uYW1lKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJtcngtdGFibGVfX3NvcnQtaWNvblwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxwYXRoIGZpbGwtcnVsZT1cImV2ZW5vZGRcIiBjbGlwLXJ1bGU9XCJldmVub2RkXCIgZD1cIk00IDlMOCAxM0wxMiA5XCIgZmlsbD1cIiNEQUQ1Q0VcIi8+XHJcbiAgICAgICAgICAgICAgICAgICAgPHBhdGggZmlsbC1ydWxlPVwiZXZlbm9kZFwiIGNsaXAtcnVsZT1cImV2ZW5vZGRcIiBkPVwiTTEyIDdMOCAzTDQgN1wiIGZpbGw9XCIjREFENUNFXCIvPlxyXG4gICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjZGVmYXVsdEhlYWRDb2w+XHJcbiAgICAgICAgICAgICAgICA8ZGl2PjxzcGFuPnt7IGNvbC5sYWJlbCB9fTwvc3Bhbj48L2Rpdj5cclxuICAgICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjaGVhZGVySXRlbVRlbXBsYXRlPlxyXG4gICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJjb2wuc29ydGFibGU7IGVsc2UgZGVmYXVsdEhlYWRDb2xcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgW2NsYXNzLnRoLXdyYXBwZXJdPVwic29ydGFibGVcIiAoY2xpY2spPVwib25Tb3J0Q29sdW1uKGNvbC5uYW1lLCBjb2wuc29ydGFibGUpXCI+XHJcbiAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJjb2wudGVtcGxhdGVIZWFkOyBjb250ZXh0OiB7ICRpbXBsaWNpdDogY29sIH1cIj48L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgICAgICAgPHN2Z1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoPVwiMTZcIiBoZWlnaHQ9XCIxNlwiIHZpZXdCb3g9XCIwIDAgMTYgMTZcIiBmaWxsPVwibm9uZVwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxyXG4gICAgICAgICAgICAgICAgICAgIFtjbGFzc109XCJjb2x1bW5Tb3J0ZWREaXIoY29sLm5hbWUpXCJcclxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cIm1yeC10YWJsZV9fc29ydC1pY29uXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPHBhdGggZmlsbC1ydWxlPVwiZXZlbm9kZFwiIGNsaXAtcnVsZT1cImV2ZW5vZGRcIiBkPVwiTTQgOUw4IDEzTDEyIDlcIiBmaWxsPVwiI0RBRDVDRVwiLz5cclxuICAgICAgICAgICAgICAgICAgICA8cGF0aCBmaWxsLXJ1bGU9XCJldmVub2RkXCIgY2xpcC1ydWxlPVwiZXZlbm9kZFwiIGQ9XCJNMTIgN0w4IDNMNCA3XCIgZmlsbD1cIiNEQUQ1Q0VcIi8+XHJcbiAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlICNkZWZhdWx0SGVhZENvbD5cclxuICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJjb2wudGVtcGxhdGVIZWFkOyBjb250ZXh0OiB7ICRpbXBsaWNpdDogY29sLCBpbmRleCwgZmlyc3QsIGxhc3QgfVwiPjwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgICAgICA8L3RoPlxyXG4gICAgICAgIDwvdHI+XHJcbiAgICAgICAgPC90aGVhZD5cclxuXHJcbiAgICAgICAgPHRib2R5PlxyXG4gICAgICAgIDx0ciAqbmdGb3I9XCJsZXQgZGF0YUl0ZW0gb2YgZGF0YTsgbGV0IGluZGV4ID0gaW5kZXg7IGxldCBmaXJzdCA9IGZpcnN0OyBsZXQgbGFzdCA9IGxhc3RcIiBbY2xhc3MuLWhvdmVyZWRdPVwiaG92ZXJlZFwiPlxyXG4gICAgICAgICAgPHRkXHJcbiAgICAgICAgICAgICN0YWJsZVREXHJcbiAgICAgICAgICAgIGNsYXNzPVwicC0wXCJcclxuICAgICAgICAgICAgKm5nRm9yPVwibGV0IGNvbCBvZiBjb250ZW50Q2hpbGRyZW5cIlxyXG4gICAgICAgICAgICBbY2xhc3NdPVwiY29sLmN1c3RvbUNsYXNzZXNcIlxyXG4gICAgICAgICAgPlxyXG4gICAgICAgICAgICA8YVxyXG4gICAgICAgICAgICAgIGNsYXNzPVwibGluay13cmFwcGVyIHRkLWNvbnRlbnQtd3JhcHBlclwiXHJcbiAgICAgICAgICAgICAgW2hyZWZdPVwiZ2V0TGlua0ZvclN0cm9rZShsaW5rLCBkYXRhSXRlbSlcIlxyXG4gICAgICAgICAgICAgICpuZ0lmPVwibGluayAmJiBjb2xbJ2lzTGluayddOyBlbHNlIGRlZmF1bHRUZW1wbGF0ZVwiXHJcbiAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIWNvbC50ZW1wbGF0ZUNlbGw7IGVsc2UgYm9keUl0ZW1UZW1wbGF0ZVwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInAtMlwiPnt7IGRhdGFJdGVtW2NvbC5uYW1lXSB9fTwvZGl2PlxyXG4gICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG5cclxuICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgI2JvZHlJdGVtVGVtcGxhdGU+XHJcbiAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyXHJcbiAgICAgICAgICAgICAgICAgICpuZ1RlbXBsYXRlT3V0bGV0PVwiY29sLnRlbXBsYXRlQ2VsbDsgY29udGV4dDogeyAkaW1wbGljaXQ6IGNvbCwgcm93OiBkYXRhSXRlbSwgaW5kZXgsIGZpcnN0LCBsYXN0IH1cIj48L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICAgICAgICA8L2E+XHJcblxyXG4gICAgICAgICAgICA8bmctdGVtcGxhdGUgI2RlZmF1bHRUZW1wbGF0ZT5cclxuICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIWNvbC50ZW1wbGF0ZUNlbGw7IGVsc2UgYm9keUl0ZW1UZW1wbGF0ZVwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInAtMiB0ZC1jb250ZW50LXdyYXBwZXJcIj57eyBkYXRhSXRlbVtjb2wubmFtZV0gfX08L2Rpdj5cclxuICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlICNib2R5SXRlbVRlbXBsYXRlPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRkLWNvbnRlbnQtd3JhcHBlclwiPlxyXG4gICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyXHJcbiAgICAgICAgICAgICAgICAgICAgKm5nVGVtcGxhdGVPdXRsZXQ9XCJjb2wudGVtcGxhdGVDZWxsOyBjb250ZXh0OiB7ICRpbXBsaWNpdDogY29sLCByb3c6IGRhdGFJdGVtLCBpbmRleCwgZmlyc3QsIGxhc3QgfVwiPjwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgICAgICAgIDwvdGQ+XHJcbiAgICAgICAgPC90cj5cclxuICAgICAgICA8L3Rib2R5PlxyXG4gICAgICA8L3RhYmxlPlxyXG5cclxuICAgICAgPGRpdiBjbGFzcz1cIm1yeC10YWJsZV9fcmVzdWx0LW1lc3NhZ2VcIiAqbmdJZj1cIiFkYXRhLmxlbmd0aFwiPlxyXG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJlbXB0eVJlc3VsdE1zZyA/IGVtcHR5UmVzdWx0TXNnVGVtcGxhdGVEZWZhdWx0IDogZW1wdHlSZXN1bHRNc2dUZW1wbGF0ZVwiPlxyXG4gICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICA8L2Rpdj5cclxuXHJcbiAgICAgIDxkaXYgY2xhc3M9XCJtcngtdGFibGVfX292ZXJsYXlcIiBbQHZpc2libGVMb2FkaW5nXT1cImlzTG9hZGluZyA/ICdpbicgOiAnb3V0J1wiIFtuZ0NsYXNzXT1cInsnb3Blbic6IGlzTG9hZGluZ31cIiA+XHJcbiAgICAgICAgPG1yeC1sb2FkZXIgc2l6ZT1cImxhcmdlXCIgY29sb3I9XCJicmFuZFwiPjwvbXJ4LWxvYWRlcj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuXHJcbiAgICA8ZGl2IGNsYXNzPVwibXJ4LXRhYmxlX193cmFwcGVyXCIgKm5nU3dpdGNoQ2FzZT1cIidjYXJkcydcIj5cclxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgaXRlbSBvZiBkYXRhOyBsZXQgaW5kZXggPSBpbmRleDsgbGV0IGZpcnN0ID0gZmlyc3Q7IGxldCBsYXN0ID0gbGFzdFwiPlxyXG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJ0ZW1wbGF0ZUNhcmQ7IGNvbnRleHQ6IHsgJGltcGxpY2l0OiBpdGVtLCBpbmRleCwgZmlyc3QsIGxhc3QgfVwiPjwvbmctY29udGFpbmVyPlxyXG4gICAgICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgICAgIDxkaXYgY2xhc3M9XCJtcngtdGFibGVfX3Jlc3VsdC1tZXNzYWdlLS1zdWJzdHJhdGVcIiAqbmdJZj1cIiFkYXRhLmxlbmd0aFwiID5cclxuICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiZW1wdHlSZXN1bHRNc2cgPyBlbXB0eVJlc3VsdE1zZ1RlbXBsYXRlRGVmYXVsdCA6IGVtcHR5UmVzdWx0TXNnVGVtcGxhdGVcIj5cclxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgPC9kaXY+XHJcblxyXG4gICAgICA8ZGl2IGNsYXNzPVwibXJ4LXRhYmxlX19vdmVybGF5XCIgW0B2aXNpYmxlTG9hZGluZ109XCJpc0xvYWRpbmcgPyAnaW4nIDogJ291dCdcIiBbbmdDbGFzc109XCJ7J29wZW4nOiBpc0xvYWRpbmd9XCIgPlxyXG4gICAgICAgIDxtcngtbG9hZGVyIHNpemU9XCJsYXJnZVwiIGNvbG9yPVwiYnJhbmRcIj48L21yeC1sb2FkZXI+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgPC9uZy1jb250YWluZXI+XHJcbjwvZGl2PlxyXG5cclxuPGRpdiBjbGFzcz1cIm1yeC10YWJsZV9fcGFnaW5hdG9yIHB0LTIgcGItMlwiIFtjbGFzcy5tcngtdGFibGVfX3BhZ2luYXRvci0tc3Vic3RyYXRlXT1cInBhZ2luYXRvclNldHRpbmdzLnN1YnN0cmF0ZVwiICpuZ0lmPVwidG90YWxcIj5cclxuICA8bXJ4LXBhZ2luYXRvclxyXG4gICAgKm5nSWY9XCJwYWdlYWJsZVwiXHJcbiAgICBbdG90YWxdPVwidG90YWxcIlxyXG4gICAgW3BhZ2VTaXplXT1cInBhZ2VTaXplXCJcclxuICAgIFtwb3NpdGlvbl09XCJwYWdlYWJsZS5wb3NpdGlvblwiXHJcbiAgICBbcGFnZVNpemVzXT1cInBhZ2VhYmxlLnBhZ2VTaXplc1wiXHJcbiAgICBbY3VycmVudFBhZ2VdPVwiY3VycmVudFBhZ2VcIlxyXG4gICAgW3dpdGhQYWdlU2l6ZV09XCJwYWdlYWJsZS53aXRoUGFnZVNpemVcIlxyXG4gICAgKGRhdGFTdGF0ZUNoYW5nZWQpPVwib25EYXRhU3RhdGVQYWdpbmF0b3JDaGFuZ2VkKCRldmVudClcIj5cclxuICA8L21yeC1wYWdpbmF0b3I+XHJcbjwvZGl2PlxyXG5cclxuPG5nLXRlbXBsYXRlICNjb3VudGVyVGVtcGxhdGU+XHJcbiAgPHNwYW4gY2xhc3M9XCJkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyXCIgKm5nSWY9XCJoZWFkZXJTZXR0aW5ncz8uY291bnRcIj5cclxuICAgIHt7IHRvdGFsIH19IHt7aGVhZGVyU2V0dGluZ3M/LmNvdW50VGV4dCB8fCAn0L3QvtCy0L7RgdGC0LXQuSd9fVxyXG4gIDwvc3Bhbj5cclxuPC9uZy10ZW1wbGF0ZT5cclxuXHJcbjxuZy10ZW1wbGF0ZSAjc29ydFRlbXBsYXRlPlxyXG4gIDxkaXYgY2xhc3M9XCJkLWZsZXggbXJ4LXRhYmxlLXNvcnRcIiAqbmdJZj1cImhlYWRlclNldHRpbmdzPy5zb3J0XCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwibXJ4LXRhYmxlLXNvcnQtc2NhbGVcIiAoY2xpY2spPVwiY2hhbmdlU29ydCgpXCI+XHJcbiAgICAgIDxzcGFuIGNsYXNzPVwibXJ4LXRhYmxlLXNvcnQtc2NhbGVfX3RpdGxlXCI+0KHQvtGA0YLQuNGA0L7QstCw0YLRjCDQv9C+Ojwvc3Bhbj5cclxuICAgICAgPGRpdiBjbGFzcz1cIm1yeC10YWJsZS1zb3J0LXNjYWxlX19pY29uXCI+XHJcbiAgICAgICAgPHNwYW4gKm5nSWY9XCJzb3J0Py5kaXIgPT09ICdkZXNjJ1wiIGNsYXNzPVwibXJ4LWljb24gaWNvbi1zb3J0aW5nLWRvd24gaWNvbi1mb250LTE2XCI+PC9zcGFuPlxyXG4gICAgICAgIDxzcGFuICpuZ0lmPVwic29ydD8uZGlyID09PSAnYXNjJ1wiIGNsYXNzPVwibXJ4LWljb24gaWNvbi1zb3J0aW5nLXVwIGljb24tZm9udC0xNlwiPjwvc3Bhbj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxuZy1zZWxlY3RcclxuICAgICAgYmluZExhYmVsPVwic29ydExhYmVsXCJcclxuICAgICAgYmluZFZhbHVlPVwibmFtZVwiXHJcbiAgICAgIFtpdGVtc109XCJjb2xBcnJheVwiXHJcbiAgICAgIFtuZ01vZGVsXT1cInNlbGVjdGVkU29ydFwiXHJcbiAgICAgIChjaGFuZ2UpPVwidXBkYXRlU29ydFNlbGVjdCgkZXZlbnQpXCJcclxuICAgICAgW2NsZWFyYWJsZV09XCJmYWxzZVwiXHJcbiAgICAgIFtzZWFyY2hhYmxlXT1cImZhbHNlXCJcclxuICAgICAgW2Nsb3NlT25TZWxlY3RdPVwidHJ1ZVwiXHJcbiAgICA+PC9uZy1zZWxlY3Q+XHJcbiAgPC9kaXY+XHJcbjwvbmctdGVtcGxhdGU+XHJcblxyXG48bmctdGVtcGxhdGUgI2Rvd25sb2FkVGVtcGxhdGU+XHJcbiAgPGRpdiBjbGFzcz1cIm1yeC10YWJsZS1kb3dubG9hZFwiIChjbGljayk9XCJjbGlja1RvRG93bmxvYWQoJGV2ZW50KVwiICpuZ0lmPVwiaGVhZGVyU2V0dGluZ3M/LmRvd25sb2FkXCI+XHJcbiAgICA8c3BhbiBjbGFzcz1cImRlc2t0b3BcIj7QodC60LDRh9Cw0YLRjCDQtNCw0L3QvdGL0LU8L3NwYW4+XHJcbiAgICA8c3BhbiBjbGFzcz1cIm1yeC1pY29uIGljb24tZG93bmxvYWQgaWNvbi1mb250LTI0XCI+PC9zcGFuPlxyXG4gIDwvZGl2PlxyXG48L25nLXRlbXBsYXRlPlxyXG5cclxuPG5nLXRlbXBsYXRlICN0b2dnbGVUZW1wbGF0ZT5cclxuICA8ZGl2IGNsYXNzPVwibXJ4LXRhYmxlLXRvZ2dsZVwiPlxyXG4gICAgPGRpdiBjbGFzcz1cIm1yeC10YWJsZS10b2dnbGUtLWl0ZW0gbXItMVwiIChjbGljayk9XCJvbkNoYW5nZVR5cGVUYWJsZSgnY2FyZHMnKVwiIFtjbGFzcy5hY3RpdmVdPVwidHlwZSA9PT0gJ2NhcmRzJ1wiPlxyXG4gICAgICA8c3BhbiBjbGFzcz1cIm1yeC1pY29uIGljb24tY2FyZHMtdmlldyBpY29uLWZvbnQtMjRcIj48L3NwYW4+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxkaXYgY2xhc3M9XCJtcngtdGFibGUtdG9nZ2xlLS1pdGVtXCIgKGNsaWNrKT1cIm9uQ2hhbmdlVHlwZVRhYmxlKCdkZWZhdWx0JylcIiBbY2xhc3MuYWN0aXZlXT1cInR5cGUgPT09ICdkZWZhdWx0J1wiPlxyXG4gICAgICA8c3BhbiBjbGFzcz1cIm1yeC1pY29uIGljb24tdGFibGUtdmlldyBpY29uLWZvbnQtMjRcIj48L3NwYW4+XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuPC9uZy10ZW1wbGF0ZT5cclxuXHJcbjxuZy10ZW1wbGF0ZSAjZW1wdHlSZXN1bHRNc2dUZW1wbGF0ZURlZmF1bHQ+XHJcbiAge3tlbXB0eVJlc3VsdE1zZ319XHJcbjwvbmctdGVtcGxhdGU+XHJcbiJdfQ==
@@ -1,31 +0,0 @@
1
- import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- import * as i1 from "@angular/common";
4
- export class TabComponent {
5
- constructor() {
6
- this.customClasses = '';
7
- this.onClick = new EventEmitter();
8
- }
9
- onTabClick() {
10
- this.onClick.emit(this.id);
11
- }
12
- }
13
- TabComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: TabComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
14
- TabComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: TabComponent, selector: "mrx-tab", inputs: { id: "id", customClasses: "customClasses", subTitle: "subTitle", active: "active", disabled: "disabled" }, outputs: { onClick: "onClick" }, ngImport: i0, template: "<div class=\"mrx-tab\" [class]=\"customClasses\" [class.active]=\"active\" (click)=\"onTabClick()\">\r\n <ng-content></ng-content>\r\n <span *ngIf=\"subTitle\">{{subTitle}}</span>\r\n</div>\r\n", styles: [".mrx-tab.mrx-tab{position:relative;display:flex;align-items:center;cursor:pointer;white-space:nowrap;transition:all .2s}.mrx-tab.mrx-tab a{color:var(--neutral-text-primary);text-decoration:none}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
15
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: TabComponent, decorators: [{
16
- type: Component,
17
- args: [{ selector: 'mrx-tab', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"mrx-tab\" [class]=\"customClasses\" [class.active]=\"active\" (click)=\"onTabClick()\">\r\n <ng-content></ng-content>\r\n <span *ngIf=\"subTitle\">{{subTitle}}</span>\r\n</div>\r\n", styles: [".mrx-tab.mrx-tab{position:relative;display:flex;align-items:center;cursor:pointer;white-space:nowrap;transition:all .2s}.mrx-tab.mrx-tab a{color:var(--neutral-text-primary);text-decoration:none}\n"] }]
18
- }], propDecorators: { id: [{
19
- type: Input
20
- }], customClasses: [{
21
- type: Input
22
- }], subTitle: [{
23
- type: Input
24
- }], active: [{
25
- type: Input
26
- }], disabled: [{
27
- type: Input
28
- }], onClick: [{
29
- type: Output
30
- }] } });
31
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFiLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL215cnRhLXVpL3NyYy9saWIvY29tcG9uZW50cy90YWJzL3RhYi90YWIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbXlydGEtdWkvc3JjL2xpYi9jb21wb25lbnRzL3RhYnMvdGFiL3RhYi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUFRaEcsTUFBTSxPQUFPLFlBQVk7SUFOekI7UUFRVyxrQkFBYSxHQUFHLEVBQUUsQ0FBQztRQU1sQixZQUFPLEdBQWlDLElBQUksWUFBWSxFQUFrQixDQUFDO0tBS3RGO0lBSFEsVUFBVTtRQUNmLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUM3QixDQUFDOzt5R0FaVSxZQUFZOzZGQUFaLFlBQVksb01DUnpCLHFNQUlBOzJGRElhLFlBQVk7a0JBTnhCLFNBQVM7K0JBQ0UsU0FBUyxtQkFHRix1QkFBdUIsQ0FBQyxNQUFNOzhCQUd0QyxFQUFFO3NCQUFWLEtBQUs7Z0JBQ0csYUFBYTtzQkFBckIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLE1BQU07c0JBQWQsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUdJLE9BQU87c0JBQWhCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnbXJ4LXRhYicsXHJcbiAgdGVtcGxhdGVVcmw6ICd0YWIuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3RhYi5jb21wb25lbnQubGVzcyddLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgVGFiQ29tcG9uZW50IHtcclxuICBASW5wdXQoKSBpZCE6IG51bWJlcnwgc3RyaW5nO1xyXG4gIEBJbnB1dCgpIGN1c3RvbUNsYXNzZXMgPSAnJztcclxuICBASW5wdXQoKSBzdWJUaXRsZSE6IHN0cmluZztcclxuICBASW5wdXQoKSBhY3RpdmUhOiBib29sZWFuO1xyXG4gIEBJbnB1dCgpIGRpc2FibGVkITogYm9vbGVhbjtcclxuXHJcblxyXG4gIEBPdXRwdXQoKSBvbkNsaWNrOiBFdmVudEVtaXR0ZXI8bnVtYmVyfCBzdHJpbmc+ID0gbmV3IEV2ZW50RW1pdHRlcjxudW1iZXJ8IHN0cmluZz4oKTtcclxuXHJcbiAgcHVibGljIG9uVGFiQ2xpY2soKTogdm9pZCB7XHJcbiAgICB0aGlzLm9uQ2xpY2suZW1pdCh0aGlzLmlkKTtcclxuICB9XHJcbn1cclxuIiwiPGRpdiBjbGFzcz1cIm1yeC10YWJcIiBbY2xhc3NdPVwiY3VzdG9tQ2xhc3Nlc1wiIFtjbGFzcy5hY3RpdmVdPVwiYWN0aXZlXCIgKGNsaWNrKT1cIm9uVGFiQ2xpY2soKVwiPlxyXG4gIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cclxuICA8c3BhbiAqbmdJZj1cInN1YlRpdGxlXCI+e3tzdWJUaXRsZX19PC9zcGFuPlxyXG48L2Rpdj5cclxuIl19
@@ -1,29 +0,0 @@
1
- import { ChangeDetectionStrategy, Component, Input } from '@angular/core';
2
- import { TabsClasses, TabsTypesClasses, } from '../tabs.enum';
3
- import * as i0 from "@angular/core";
4
- export class TabsGroupComponent {
5
- constructor() {
6
- this.customClasses = '';
7
- this.size = 'medium';
8
- this.type = 'default';
9
- this.isResponsive = false;
10
- }
11
- get tabClasses() {
12
- return `${TabsTypesClasses[this.type]} ${TabsClasses[this.size]} ${this.customClasses}`;
13
- }
14
- }
15
- TabsGroupComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: TabsGroupComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
16
- TabsGroupComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: TabsGroupComponent, selector: "mrx-tabs-group", inputs: { customClasses: "customClasses", size: "size", type: "type", isResponsive: "isResponsive" }, ngImport: i0, template: "<div class=\"mrx-tabs-group\" [class]=\"tabClasses\" [class.responsive]=\"isResponsive\">\r\n <div class=\"mrx-tabs-group-wrapper\">\r\n <ng-content></ng-content>\r\n </div> \r\n</div>\r\n", styles: [".mrx-tabs-group.mrx-tabs-group{display:flex;overflow:hidden}.mrx-tabs-group.mrx-tabs-group .mrx-tabs-group-wrapper{display:flex;overflow-x:auto}:host::ng-deep .mrx-tabs-group.mrx-tabs-group.mrx-tabs-lg .mrx-tab{font-family:var(--body-lg-font-family);font-size:var(--body-lg-font-size);font-weight:var(--body-lg-font-weight);line-height:var(--body-lg-line-height)}:host::ng-deep .mrx-tabs-group.mrx-tabs-group.mrx-tabs-md .mrx-tab{font-family:var(--body-md-font-family);font-size:var(--body-md-font-size);font-weight:var(--body-md-font-weight);line-height:var(--body-md-line-height)}:host::ng-deep .mrx-tabs-group.mrx-tabs-group.mrx-tabs-sm .mrx-tab{font-family:var(--body-sm-font-family);font-size:var(--body-sm-font-size);font-weight:var(--body-sm-font-weight);line-height:var(--body-sm-line-height)}:host::ng-deep .mrx-tabs-button.mrx-tabs-button.mrx-tabs-lg .mrx-tab{padding:var(--spacing-2) var(--spacing-6)}:host::ng-deep .mrx-tabs-button.mrx-tabs-button.mrx-tabs-md .mrx-tab{padding:calc(var(--spacing-2) - var(--spacing-half)) var(--spacing-4)}:host::ng-deep .mrx-tabs-button.mrx-tabs-button.mrx-tabs-sm .mrx-tab{padding:var(--spacing-1) var(--spacing-3)}:host::ng-deep .mrx-tabs-default.mrx-tabs-default .mrx-tab{padding:var(--spacing-2) var(--spacing-4);border-radius:var(--border-radius-1) var(--border-radius-1) 0 0}:host::ng-deep .mrx-tabs-default.mrx-tabs-default .mrx-tab>span{margin-left:var(--spacing-1)}:host::ng-deep .mrx-tabs-default.mrx-tabs-default .mrx-tab:not(.active){color:var(--neutral-text-primary);border-bottom:var(--border-width-default) solid var(--neutral-bg-stroke-default)}:host::ng-deep .mrx-tabs-default.mrx-tabs-default .mrx-tab:not(.active)>span{color:var(--neutral-text-tertiary)}:host::ng-deep .mrx-tabs-default.mrx-tabs-default .mrx-tab.active{color:var(--brand-text-controls-default);border-bottom:var(--border-width-default) solid var(--brand-bg-primary-default)}:host::ng-deep .mrx-tabs-default.mrx-tabs-default .mrx-tab.active a{color:var(--brand-text-controls-default)}:host::ng-deep .mrx-tabs-default.mrx-tabs-default .mrx-tab.active>span{color:var(--brand-text-accent)}:host::ng-deep .mrx-tabs-default.mrx-tabs-default .mrx-tab:hover{background-color:var(--brand-bg-secondary-default)}:host::ng-deep .mrx-tabs-button.mrx-tabs-button .mrx-tab{justify-content:center;border-radius:var(--border-radius-1);color:var(--neutral-text-primary)}:host::ng-deep .mrx-tabs-button.mrx-tabs-button .mrx-tab>span{margin-left:var(--spacing-1)}:host::ng-deep .mrx-tabs-button.mrx-tabs-button .mrx-tab span{color:var(--neutral-text-primary)}:host::ng-deep .mrx-tabs-button.mrx-tabs-button .mrx-tab.active{background:var(--brand-bg-tertiary-default);box-shadow:var(--box-shadow-secondary-x) var(--box-shadow-secondary-y) var(--box-shadow-secondary-blur) var(--box-shadow-secondary-color)}:host::ng-deep .mrx-tabs-button.mrx-tabs-button .mrx-tab.active span{color:var(--neutral-text-primary)}:host::ng-deep .mrx-tabs-group.mrx-tabs-group.mrx-tabs-button .mrx-tabs-group-wrapper{background:var(--neutral-bg-island-default);padding:var(--spacing-1)}:host::ng-deep .mrx-tabs-group.mrx-tabs-group.mrx-tabs-button .mrx-tabs-group-wrapper>*{padding:0 var(--spacing-1)}:host::ng-deep .mrx-tabs-group.mrx-tabs-group.mrx-tabs-button .mrx-tabs-group-wrapper>*:last-child{padding-right:0}:host::ng-deep .mrx-tabs-group.mrx-tabs-group.mrx-tabs-button .mrx-tabs-group-wrapper>*:first-child{padding-left:0}@media screen and (min-width: 768px){:host::ng-deep .mrx-tabs-group.mrx-tabs-group.mrx-tabs-button .mrx-tabs-group-wrapper>*:not(:last-child){border-right:var(--border-width-default) solid var(--neutral-bg-divider)}}@media screen and (max-width: 767px){:host::ng-deep .mrx-tabs-group.mrx-tabs-group.mrx-tabs-button .mrx-tabs-group-wrapper{flex-direction:column;width:100%}}:host::ng-deep .mrx-tabs-group.mrx-tabs-group.mrx-tabs-button.responsive .mrx-tabs-group-wrapper{width:100%}:host::ng-deep .mrx-tabs-group.mrx-tabs-group.mrx-tabs-button.responsive .mrx-tabs-group-wrapper>*{width:100%}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
17
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: TabsGroupComponent, decorators: [{
18
- type: Component,
19
- args: [{ selector: 'mrx-tabs-group', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"mrx-tabs-group\" [class]=\"tabClasses\" [class.responsive]=\"isResponsive\">\r\n <div class=\"mrx-tabs-group-wrapper\">\r\n <ng-content></ng-content>\r\n </div> \r\n</div>\r\n", styles: [".mrx-tabs-group.mrx-tabs-group{display:flex;overflow:hidden}.mrx-tabs-group.mrx-tabs-group .mrx-tabs-group-wrapper{display:flex;overflow-x:auto}:host::ng-deep .mrx-tabs-group.mrx-tabs-group.mrx-tabs-lg .mrx-tab{font-family:var(--body-lg-font-family);font-size:var(--body-lg-font-size);font-weight:var(--body-lg-font-weight);line-height:var(--body-lg-line-height)}:host::ng-deep .mrx-tabs-group.mrx-tabs-group.mrx-tabs-md .mrx-tab{font-family:var(--body-md-font-family);font-size:var(--body-md-font-size);font-weight:var(--body-md-font-weight);line-height:var(--body-md-line-height)}:host::ng-deep .mrx-tabs-group.mrx-tabs-group.mrx-tabs-sm .mrx-tab{font-family:var(--body-sm-font-family);font-size:var(--body-sm-font-size);font-weight:var(--body-sm-font-weight);line-height:var(--body-sm-line-height)}:host::ng-deep .mrx-tabs-button.mrx-tabs-button.mrx-tabs-lg .mrx-tab{padding:var(--spacing-2) var(--spacing-6)}:host::ng-deep .mrx-tabs-button.mrx-tabs-button.mrx-tabs-md .mrx-tab{padding:calc(var(--spacing-2) - var(--spacing-half)) var(--spacing-4)}:host::ng-deep .mrx-tabs-button.mrx-tabs-button.mrx-tabs-sm .mrx-tab{padding:var(--spacing-1) var(--spacing-3)}:host::ng-deep .mrx-tabs-default.mrx-tabs-default .mrx-tab{padding:var(--spacing-2) var(--spacing-4);border-radius:var(--border-radius-1) var(--border-radius-1) 0 0}:host::ng-deep .mrx-tabs-default.mrx-tabs-default .mrx-tab>span{margin-left:var(--spacing-1)}:host::ng-deep .mrx-tabs-default.mrx-tabs-default .mrx-tab:not(.active){color:var(--neutral-text-primary);border-bottom:var(--border-width-default) solid var(--neutral-bg-stroke-default)}:host::ng-deep .mrx-tabs-default.mrx-tabs-default .mrx-tab:not(.active)>span{color:var(--neutral-text-tertiary)}:host::ng-deep .mrx-tabs-default.mrx-tabs-default .mrx-tab.active{color:var(--brand-text-controls-default);border-bottom:var(--border-width-default) solid var(--brand-bg-primary-default)}:host::ng-deep .mrx-tabs-default.mrx-tabs-default .mrx-tab.active a{color:var(--brand-text-controls-default)}:host::ng-deep .mrx-tabs-default.mrx-tabs-default .mrx-tab.active>span{color:var(--brand-text-accent)}:host::ng-deep .mrx-tabs-default.mrx-tabs-default .mrx-tab:hover{background-color:var(--brand-bg-secondary-default)}:host::ng-deep .mrx-tabs-button.mrx-tabs-button .mrx-tab{justify-content:center;border-radius:var(--border-radius-1);color:var(--neutral-text-primary)}:host::ng-deep .mrx-tabs-button.mrx-tabs-button .mrx-tab>span{margin-left:var(--spacing-1)}:host::ng-deep .mrx-tabs-button.mrx-tabs-button .mrx-tab span{color:var(--neutral-text-primary)}:host::ng-deep .mrx-tabs-button.mrx-tabs-button .mrx-tab.active{background:var(--brand-bg-tertiary-default);box-shadow:var(--box-shadow-secondary-x) var(--box-shadow-secondary-y) var(--box-shadow-secondary-blur) var(--box-shadow-secondary-color)}:host::ng-deep .mrx-tabs-button.mrx-tabs-button .mrx-tab.active span{color:var(--neutral-text-primary)}:host::ng-deep .mrx-tabs-group.mrx-tabs-group.mrx-tabs-button .mrx-tabs-group-wrapper{background:var(--neutral-bg-island-default);padding:var(--spacing-1)}:host::ng-deep .mrx-tabs-group.mrx-tabs-group.mrx-tabs-button .mrx-tabs-group-wrapper>*{padding:0 var(--spacing-1)}:host::ng-deep .mrx-tabs-group.mrx-tabs-group.mrx-tabs-button .mrx-tabs-group-wrapper>*:last-child{padding-right:0}:host::ng-deep .mrx-tabs-group.mrx-tabs-group.mrx-tabs-button .mrx-tabs-group-wrapper>*:first-child{padding-left:0}@media screen and (min-width: 768px){:host::ng-deep .mrx-tabs-group.mrx-tabs-group.mrx-tabs-button .mrx-tabs-group-wrapper>*:not(:last-child){border-right:var(--border-width-default) solid var(--neutral-bg-divider)}}@media screen and (max-width: 767px){:host::ng-deep .mrx-tabs-group.mrx-tabs-group.mrx-tabs-button .mrx-tabs-group-wrapper{flex-direction:column;width:100%}}:host::ng-deep .mrx-tabs-group.mrx-tabs-group.mrx-tabs-button.responsive .mrx-tabs-group-wrapper{width:100%}:host::ng-deep .mrx-tabs-group.mrx-tabs-group.mrx-tabs-button.responsive .mrx-tabs-group-wrapper>*{width:100%}\n"] }]
20
- }], propDecorators: { customClasses: [{
21
- type: Input
22
- }], size: [{
23
- type: Input
24
- }], type: [{
25
- type: Input
26
- }], isResponsive: [{
27
- type: Input
28
- }] } });
29
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFicy1ncm91cC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9teXJ0YS11aS9zcmMvbGliL2NvbXBvbmVudHMvdGFicy90YWJzLWdyb3VwL3RhYnMtZ3JvdXAuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbXlydGEtdWkvc3JjL2xpYi9jb21wb25lbnRzL3RhYnMvdGFicy1ncm91cC90YWJzLWdyb3VwLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzFFLE9BQU8sRUFDTCxXQUFXLEVBQ0YsZ0JBQWdCLEdBQzFCLE1BQU0sY0FBYyxDQUFDOztBQVF0QixNQUFNLE9BQU8sa0JBQWtCO0lBTi9CO1FBUVcsa0JBQWEsR0FBRyxFQUFFLENBQUM7UUFDbkIsU0FBSSxHQUFZLFFBQVEsQ0FBQztRQUN6QixTQUFJLEdBQWEsU0FBUyxDQUFDO1FBQzNCLGlCQUFZLEdBQUcsS0FBSyxDQUFDO0tBSy9CO0lBSEMsSUFBVyxVQUFVO1FBQ25CLE9BQU8sR0FBRyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksV0FBVyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDMUYsQ0FBQzs7K0dBVFUsa0JBQWtCO21HQUFsQixrQkFBa0IsNEpDWi9CLDJNQUtBOzJGRE9hLGtCQUFrQjtrQkFOOUIsU0FBUzsrQkFDRSxnQkFBZ0IsbUJBR1QsdUJBQXVCLENBQUMsTUFBTTs4QkFJdEMsYUFBYTtzQkFBckIsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge1xyXG4gIFRhYnNDbGFzc2VzLFxyXG4gIFRhYlNpemUsIFRhYnNUeXBlc0NsYXNzZXMsIFRhYlR5cGVzLFxyXG59IGZyb20gJy4uL3RhYnMuZW51bSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ21yeC10YWJzLWdyb3VwJyxcclxuICB0ZW1wbGF0ZVVybDogJ3RhYnMtZ3JvdXAuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3RhYnMtZ3JvdXAuY29tcG9uZW50Lmxlc3MnXSxcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxufSlcclxuZXhwb3J0IGNsYXNzIFRhYnNHcm91cENvbXBvbmVudCB7XHJcblxyXG4gIEBJbnB1dCgpIGN1c3RvbUNsYXNzZXMgPSAnJztcclxuICBASW5wdXQoKSBzaXplOiBUYWJTaXplID0gJ21lZGl1bSc7XHJcbiAgQElucHV0KCkgdHlwZTogVGFiVHlwZXMgPSAnZGVmYXVsdCc7XHJcbiAgQElucHV0KCkgaXNSZXNwb25zaXZlID0gZmFsc2U7XHJcblxyXG4gIHB1YmxpYyBnZXQgdGFiQ2xhc3NlcygpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIGAke1RhYnNUeXBlc0NsYXNzZXNbdGhpcy50eXBlXX0gJHtUYWJzQ2xhc3Nlc1t0aGlzLnNpemVdfSAke3RoaXMuY3VzdG9tQ2xhc3Nlc31gO1xyXG4gIH1cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwibXJ4LXRhYnMtZ3JvdXBcIiBbY2xhc3NdPVwidGFiQ2xhc3Nlc1wiIFtjbGFzcy5yZXNwb25zaXZlXT1cImlzUmVzcG9uc2l2ZVwiPlxyXG4gICAgPGRpdiBjbGFzcz1cIm1yeC10YWJzLWdyb3VwLXdyYXBwZXJcIj5cclxuICAgICAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XHJcbiAgICA8L2Rpdj4gXHJcbjwvZGl2PlxyXG4iXX0=
@@ -1,67 +0,0 @@
1
- import { Injectable } from '@angular/core';
2
- import { getHashCode } from '../../../helpers/string-hash-code';
3
- import * as i0 from "@angular/core";
4
- export class TooltipService {
5
- constructor() {
6
- this._tooltip = '';
7
- this._tooltipVisible = false;
8
- this._isSaveToStorage = false;
9
- }
10
- get localStorageKey() {
11
- return this.getTooltip ? `tooltip_${getHashCode(this.getTooltip)}` : null;
12
- }
13
- get getTooltip() {
14
- return this._tooltip;
15
- }
16
- set setTooltip(value) {
17
- this._tooltip = value;
18
- }
19
- get getSaveToStorage() {
20
- return this._isSaveToStorage;
21
- }
22
- set setSaveToStorage(value) {
23
- this._isSaveToStorage = value;
24
- }
25
- get getTooltipVisible() {
26
- return this._tooltipVisible;
27
- }
28
- set setTooltipVisible(value) {
29
- this._tooltipVisible = value || !!localStorage.getItem(this.localStorageKey);
30
- if (this._tooltipVisible && this._isSaveToStorage) {
31
- localStorage.setItem(this.localStorageKey, 'visible');
32
- }
33
- }
34
- toggleTooltipVisibleFromCode(value) {
35
- if (value && this._isSaveToStorage) {
36
- localStorage.setItem(this.localStorageKey, 'visible');
37
- }
38
- else {
39
- localStorage.removeItem(this.localStorageKey);
40
- }
41
- this._tooltipVisible = value;
42
- }
43
- toggleTooltipVisible() {
44
- if (this._isSaveToStorage) {
45
- if (localStorage.getItem(this.localStorageKey)) {
46
- localStorage.removeItem(this.localStorageKey);
47
- }
48
- else {
49
- localStorage.setItem(this.localStorageKey, 'visible');
50
- }
51
- }
52
- this._tooltipVisible = !this._tooltipVisible;
53
- }
54
- initTooltip(tooltip, tooltipInitialVisible) {
55
- this.setTooltip = tooltip;
56
- this.setTooltipVisible = tooltipInitialVisible;
57
- if (this._isSaveToStorage) {
58
- this._tooltipVisible = !!localStorage.getItem(this.localStorageKey);
59
- }
60
- }
61
- }
62
- TooltipService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: TooltipService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
63
- TooltipService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: TooltipService });
64
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: TooltipService, decorators: [{
65
- type: Injectable
66
- }] });
67
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbHRpcC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbXlydGEtdWkvc3JjL2xpYi9jb21wb25lbnRzL3Rvb2x0aXAvc2VydmljZXMvdG9vbHRpcC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLG1DQUFtQyxDQUFDOztBQUdoRSxNQUFNLE9BQU8sY0FBYztJQUQzQjtRQUdVLGFBQVEsR0FBVyxFQUFFLENBQUE7UUFDckIsb0JBQWUsR0FBWSxLQUFLLENBQUE7UUFDaEMscUJBQWdCLEdBQVksS0FBSyxDQUFBO0tBaUUxQztJQS9EQyxJQUFZLGVBQWU7UUFDekIsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxXQUFXLFdBQVcsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFBO0lBQzNFLENBQUM7SUFFRCxJQUFXLFVBQVU7UUFDbkIsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFBO0lBQ3RCLENBQUM7SUFFRCxJQUFXLFVBQVUsQ0FBQyxLQUFhO1FBQ2pDLElBQUksQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFBO0lBQ3ZCLENBQUM7SUFFRCxJQUFXLGdCQUFnQjtRQUN6QixPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQTtJQUM5QixDQUFDO0lBRUQsSUFBVyxnQkFBZ0IsQ0FBQyxLQUFjO1FBQ3hDLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxLQUFLLENBQUE7SUFDL0IsQ0FBQztJQUVELElBQVcsaUJBQWlCO1FBQzFCLE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQTtJQUM3QixDQUFDO0lBRUQsSUFBVyxpQkFBaUIsQ0FBQyxLQUFjO1FBQ3pDLElBQUksQ0FBQyxlQUFlLEdBQUcsS0FBSyxJQUFJLENBQUMsQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFTLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQTtRQUVwRixJQUFJLElBQUksQ0FBQyxlQUFlLElBQUksSUFBSSxDQUFDLGdCQUFnQixFQUFFO1lBQ2pELFlBQVksQ0FBQyxPQUFPLENBQVMsSUFBSSxDQUFDLGVBQWUsRUFBRSxTQUFTLENBQUMsQ0FBQTtTQUM5RDtJQUNILENBQUM7SUFFTSw0QkFBNEIsQ0FBQyxLQUFjO1FBQ2hELElBQUksS0FBSyxJQUFJLElBQUksQ0FBQyxnQkFBZ0IsRUFBRTtZQUNsQyxZQUFZLENBQUMsT0FBTyxDQUFTLElBQUksQ0FBQyxlQUFlLEVBQUUsU0FBUyxDQUFDLENBQUE7U0FDOUQ7YUFBTTtZQUNMLFlBQVksQ0FBQyxVQUFVLENBQVMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUFBO1NBQ3REO1FBRUQsSUFBSSxDQUFDLGVBQWUsR0FBRyxLQUFLLENBQUE7SUFDOUIsQ0FBQztJQUVNLG9CQUFvQjtRQUN6QixJQUFJLElBQUksQ0FBQyxnQkFBZ0IsRUFBRTtZQUN6QixJQUFJLFlBQVksQ0FBQyxPQUFPLENBQVMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxFQUFFO2dCQUN0RCxZQUFZLENBQUMsVUFBVSxDQUFTLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQTthQUN0RDtpQkFBTTtnQkFDTCxZQUFZLENBQUMsT0FBTyxDQUFTLElBQUksQ0FBQyxlQUFlLEVBQUUsU0FBUyxDQUFDLENBQUE7YUFDOUQ7U0FDRjtRQUdELElBQUksQ0FBQyxlQUFlLEdBQUcsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFBO0lBQzlDLENBQUM7SUFFTSxXQUFXLENBQUMsT0FBZSxFQUFFLHFCQUE4QjtRQUNoRSxJQUFJLENBQUMsVUFBVSxHQUFHLE9BQU8sQ0FBQTtRQUN6QixJQUFJLENBQUMsaUJBQWlCLEdBQUcscUJBQXFCLENBQUE7UUFFOUMsSUFBSSxJQUFJLENBQUMsZ0JBQWdCLEVBQUU7WUFDekIsSUFBSSxDQUFDLGVBQWUsR0FBRyxDQUFDLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBUyxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUE7U0FDNUU7SUFDSCxDQUFDOzsyR0FwRVUsY0FBYzsrR0FBZCxjQUFjOzJGQUFkLGNBQWM7a0JBRDFCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IGdldEhhc2hDb2RlIH0gZnJvbSAnLi4vLi4vLi4vaGVscGVycy9zdHJpbmctaGFzaC1jb2RlJztcclxuXHJcbkBJbmplY3RhYmxlKClcclxuZXhwb3J0IGNsYXNzIFRvb2x0aXBTZXJ2aWNlIHtcclxuXHJcbiAgcHJpdmF0ZSBfdG9vbHRpcDogc3RyaW5nID0gJydcclxuICBwcml2YXRlIF90b29sdGlwVmlzaWJsZTogYm9vbGVhbiA9IGZhbHNlXHJcbiAgcHJpdmF0ZSBfaXNTYXZlVG9TdG9yYWdlOiBib29sZWFuID0gZmFsc2VcclxuXHJcbiAgcHJpdmF0ZSBnZXQgbG9jYWxTdG9yYWdlS2V5KCkge1xyXG4gICAgcmV0dXJuIHRoaXMuZ2V0VG9vbHRpcCA/IGB0b29sdGlwXyR7Z2V0SGFzaENvZGUodGhpcy5nZXRUb29sdGlwKX1gIDogbnVsbFxyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldCBnZXRUb29sdGlwKCk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gdGhpcy5fdG9vbHRpcFxyXG4gIH1cclxuXHJcbiAgcHVibGljIHNldCBzZXRUb29sdGlwKHZhbHVlOiBzdHJpbmcpIHtcclxuICAgIHRoaXMuX3Rvb2x0aXAgPSB2YWx1ZVxyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldCBnZXRTYXZlVG9TdG9yYWdlKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMuX2lzU2F2ZVRvU3RvcmFnZVxyXG4gIH1cclxuXHJcbiAgcHVibGljIHNldCBzZXRTYXZlVG9TdG9yYWdlKHZhbHVlOiBib29sZWFuKSB7XHJcbiAgICB0aGlzLl9pc1NhdmVUb1N0b3JhZ2UgPSB2YWx1ZVxyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldCBnZXRUb29sdGlwVmlzaWJsZSgpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLl90b29sdGlwVmlzaWJsZVxyXG4gIH1cclxuXHJcbiAgcHVibGljIHNldCBzZXRUb29sdGlwVmlzaWJsZSh2YWx1ZTogYm9vbGVhbikge1xyXG4gICAgdGhpcy5fdG9vbHRpcFZpc2libGUgPSB2YWx1ZSB8fCAhIWxvY2FsU3RvcmFnZS5nZXRJdGVtKDxzdHJpbmc+dGhpcy5sb2NhbFN0b3JhZ2VLZXkpXHJcblxyXG4gICAgaWYgKHRoaXMuX3Rvb2x0aXBWaXNpYmxlICYmIHRoaXMuX2lzU2F2ZVRvU3RvcmFnZSkge1xyXG4gICAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbSg8c3RyaW5nPnRoaXMubG9jYWxTdG9yYWdlS2V5LCAndmlzaWJsZScpXHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgdG9nZ2xlVG9vbHRpcFZpc2libGVGcm9tQ29kZSh2YWx1ZTogYm9vbGVhbik6IHZvaWQge1xyXG4gICAgaWYgKHZhbHVlICYmIHRoaXMuX2lzU2F2ZVRvU3RvcmFnZSkge1xyXG4gICAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbSg8c3RyaW5nPnRoaXMubG9jYWxTdG9yYWdlS2V5LCAndmlzaWJsZScpXHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBsb2NhbFN0b3JhZ2UucmVtb3ZlSXRlbSg8c3RyaW5nPnRoaXMubG9jYWxTdG9yYWdlS2V5KVxyXG4gICAgfVxyXG5cclxuICAgIHRoaXMuX3Rvb2x0aXBWaXNpYmxlID0gdmFsdWVcclxuICB9XHJcblxyXG4gIHB1YmxpYyB0b2dnbGVUb29sdGlwVmlzaWJsZSgpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLl9pc1NhdmVUb1N0b3JhZ2UpIHtcclxuICAgICAgaWYgKGxvY2FsU3RvcmFnZS5nZXRJdGVtKDxzdHJpbmc+dGhpcy5sb2NhbFN0b3JhZ2VLZXkpKSB7XHJcbiAgICAgICAgbG9jYWxTdG9yYWdlLnJlbW92ZUl0ZW0oPHN0cmluZz50aGlzLmxvY2FsU3RvcmFnZUtleSlcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbSg8c3RyaW5nPnRoaXMubG9jYWxTdG9yYWdlS2V5LCAndmlzaWJsZScpXHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcblxyXG4gICAgdGhpcy5fdG9vbHRpcFZpc2libGUgPSAhdGhpcy5fdG9vbHRpcFZpc2libGVcclxuICB9XHJcblxyXG4gIHB1YmxpYyBpbml0VG9vbHRpcCh0b29sdGlwOiBzdHJpbmcsIHRvb2x0aXBJbml0aWFsVmlzaWJsZTogYm9vbGVhbik6IHZvaWQge1xyXG4gICAgdGhpcy5zZXRUb29sdGlwID0gdG9vbHRpcFxyXG4gICAgdGhpcy5zZXRUb29sdGlwVmlzaWJsZSA9IHRvb2x0aXBJbml0aWFsVmlzaWJsZVxyXG5cclxuICAgIGlmICh0aGlzLl9pc1NhdmVUb1N0b3JhZ2UpIHtcclxuICAgICAgdGhpcy5fdG9vbHRpcFZpc2libGUgPSAhIWxvY2FsU3RvcmFnZS5nZXRJdGVtKDxzdHJpbmc+dGhpcy5sb2NhbFN0b3JhZ2VLZXkpXHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiJdfQ==