myrta-ui 14.0.0-beta.1 → 17.0.0-beta.2

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 (702) hide show
  1. package/README.md +2 -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/{esm2020 → esm2022}/lib/components/form/checkbox/checkbox.enum.mjs +4 -4
  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/esm2022/lib/components/form/editor/config/default-inline-style.mjs +6 -0
  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 +261 -0
  46. package/esm2022/lib/components/form/editor/editor.module.mjs +45 -0
  47. package/{esm2020 → esm2022}/lib/components/form/editor/models/toolbar.model.mjs +1 -1
  48. package/esm2022/lib/components/form/editor/modules/change-icon-module.mjs +92 -0
  49. package/{esm2020 → esm2022}/lib/components/form/input-date-time/constants/value-models.mjs +13 -13
  50. package/{esm2020 → esm2022}/lib/components/form/input-date-time/enum/timezone.mjs +6 -6
  51. package/{esm2020 → esm2022}/lib/components/form/input-date-time/helpers/clean-date.mjs +4 -4
  52. package/esm2022/lib/components/form/input-date-time/helpers/cursor-position.mjs +23 -0
  53. package/esm2022/lib/components/form/input-date-time/helpers/formatting-from-models.mjs +10 -0
  54. package/{esm2020 → esm2022}/lib/components/form/input-date-time/helpers/formatting-moscow-timezone.mjs +9 -9
  55. package/{esm2020 → esm2022}/lib/components/form/input-date-time/helpers/validate-value-models.mjs +60 -60
  56. package/{esm2020 → esm2022}/lib/components/form/input-date-time/helpers/value-parser.mjs +38 -38
  57. package/esm2022/lib/components/form/input-date-time/input-date-time.component.mjs +386 -0
  58. package/{esm2020 → esm2022}/lib/components/form/input-date-time/input-date-time.enum.mjs +6 -6
  59. package/esm2022/lib/components/form/input-date-time/input-date-time.module.mjs +46 -0
  60. package/{esm2020 → esm2022}/lib/components/form/input-datepicker/constants/value-models.mjs +14 -14
  61. package/{esm2020 → esm2022}/lib/components/form/input-datepicker/helpers/clean-date.mjs +4 -4
  62. package/esm2022/lib/components/form/input-datepicker/helpers/cursor-position.mjs +23 -0
  63. package/esm2022/lib/components/form/input-datepicker/helpers/get-date-dayjs-object.mjs +10 -0
  64. package/esm2022/lib/components/form/input-datepicker/helpers/get-date-object.mjs +10 -0
  65. package/{esm2020 → esm2022}/lib/components/form/input-datepicker/helpers/validate-value-models.mjs +74 -74
  66. package/{esm2020 → esm2022}/lib/components/form/input-datepicker/helpers/value-parser.mjs +47 -47
  67. package/esm2022/lib/components/form/input-datepicker/input-datepicker.component.mjs +356 -0
  68. package/{esm2020 → esm2022}/lib/components/form/input-datepicker/input-datepicker.enum.mjs +6 -6
  69. package/esm2022/lib/components/form/input-datepicker/input-datepicker.module.mjs +46 -0
  70. package/{esm2020 → esm2022}/lib/components/form/input-file/enums/error-messages.enum.mjs +7 -7
  71. package/esm2022/lib/components/form/input-file/input-file.component.mjs +370 -0
  72. package/{esm2020 → esm2022}/lib/components/form/input-file/input-file.enum.mjs +7 -7
  73. package/{esm2020 → esm2022}/lib/components/form/input-file/input-file.module.mjs +26 -26
  74. package/esm2022/lib/components/form/input-file-image/components/file-image-edit-modal/file-image-edit-modal.component.mjs +88 -0
  75. package/esm2022/lib/components/form/input-file-image/input-file-image.component.mjs +364 -0
  76. package/{esm2020 → esm2022}/lib/components/form/input-file-image/input-file-image.enum.mjs +9 -9
  77. package/esm2022/lib/components/form/input-file-image/input-file-image.module.mjs +51 -0
  78. package/esm2022/lib/components/form/input-number/input-number.component.mjs +267 -0
  79. package/{esm2020 → esm2022}/lib/components/form/input-number/input-number.enum.mjs +6 -6
  80. package/esm2022/lib/components/form/input-number/input-number.module.mjs +55 -0
  81. package/esm2022/lib/components/form/input-opt/components/input-opt/input-opt.component.mjs +370 -0
  82. package/{esm2020 → esm2022}/lib/components/form/input-opt/components/input-opt/input-opt.enum.mjs +7 -7
  83. package/esm2022/lib/components/form/input-opt/directives/opt-pattern.directive.mjs +43 -0
  84. package/{esm2020 → esm2022}/lib/components/form/input-opt/input-opt.module.mjs +38 -38
  85. package/{esm2020 → esm2022}/lib/components/form/input-opt/models/input-opt.model.mjs +5 -5
  86. package/{esm2020 → esm2022}/lib/components/form/input-opt/services/input-opt.service.mjs +33 -33
  87. package/esm2022/lib/components/form/input-password/input-password.component.mjs +118 -0
  88. package/{esm2020 → esm2022}/lib/components/form/input-password/input-password.enum.mjs +6 -6
  89. package/{esm2020 → esm2022}/lib/components/form/input-password/input-password.module.mjs +36 -36
  90. package/esm2022/lib/components/form/input-phone/data/country-code.mjs +1331 -0
  91. package/esm2022/lib/components/form/input-phone/directives/native-element-injector.directive.mjs +35 -0
  92. package/{esm2020 → esm2022}/lib/components/form/input-phone/enums/country-iso.enum.mjs +246 -246
  93. package/{esm2020 → esm2022}/lib/components/form/input-phone/enums/input-phone.enum.mjs +6 -6
  94. package/{esm2020 → esm2022}/lib/components/form/input-phone/enums/mask.enum.mjs +138 -138
  95. package/{esm2020 → esm2022}/lib/components/form/input-phone/enums/phone-number-format.enum.mjs +5 -5
  96. package/{esm2020 → esm2022}/lib/components/form/input-phone/enums/search-country-field.enum.mjs +7 -7
  97. package/esm2022/lib/components/form/input-phone/input-phone.component.mjs +679 -0
  98. package/esm2022/lib/components/form/input-phone/input-phone.module.mjs +50 -0
  99. package/esm2022/lib/components/form/input-phone/input-phone.validator.mjs +61 -0
  100. package/{esm2020 → esm2022}/lib/components/form/input-phone/interfaces/change-data.mjs +1 -1
  101. package/{esm2020 → esm2022}/lib/components/form/input-phone/models/country.model.mjs +1 -1
  102. package/esm2022/lib/components/form/input-search/input-search.component.mjs +167 -0
  103. package/{esm2020 → esm2022}/lib/components/form/input-search/input-search.enum.mjs +6 -6
  104. package/esm2022/lib/components/form/input-search/input-search.module.mjs +41 -0
  105. package/esm2022/lib/components/form/input-select/input-select.component.mjs +253 -0
  106. package/{esm2020 → esm2022}/lib/components/form/input-select/input-select.enum.mjs +5 -5
  107. package/{esm2020 → esm2022}/lib/components/form/input-select/input-select.module.mjs +45 -45
  108. package/esm2022/lib/components/form/input-tel/assets/base64.mjs +4 -0
  109. package/esm2022/lib/components/form/input-tel/data/all-countries.mjs +1323 -0
  110. package/esm2022/lib/components/form/input-tel/data/country-iso.enum.mjs +247 -0
  111. package/esm2022/lib/components/form/input-tel/data/phone-number-format.enum.mjs +6 -0
  112. package/esm2022/lib/components/form/input-tel/data/search-country-field.enum.mjs +8 -0
  113. package/esm2022/lib/components/form/input-tel/directives/input-tel.directive.mjs +66 -0
  114. package/esm2022/lib/components/form/input-tel/enums/input-phone.enum.mjs +7 -0
  115. package/esm2022/lib/components/form/input-tel/input-tel.component.mjs +400 -0
  116. package/esm2022/lib/components/form/input-tel/input-tel.module.mjs +43 -0
  117. package/esm2022/lib/components/form/input-tel/models/country.model.mjs +2 -0
  118. package/esm2022/lib/components/form/input-text/input-text.component.mjs +189 -0
  119. package/{esm2020 → esm2022}/lib/components/form/input-text/input-text.enum.mjs +14 -14
  120. package/esm2022/lib/components/form/input-text/input-text.module.mjs +49 -0
  121. package/esm2022/lib/components/form/input-textarea/input-textarea.component.mjs +197 -0
  122. package/{esm2020 → esm2022}/lib/components/form/input-textarea/input-textarea.enum.mjs +6 -6
  123. package/esm2022/lib/components/form/input-textarea/input-textarea.module.mjs +49 -0
  124. package/{esm2020 → esm2022}/lib/components/form/input-timepicker/constants/value-models.mjs +7 -7
  125. package/{esm2020 → esm2022}/lib/components/form/input-timepicker/helpers/clean-date.mjs +4 -4
  126. package/esm2022/lib/components/form/input-timepicker/helpers/cursor-position.mjs +14 -0
  127. package/{esm2020 → esm2022}/lib/components/form/input-timepicker/helpers/get-date-dayjs-object.mjs +4 -4
  128. package/{esm2020 → esm2022}/lib/components/form/input-timepicker/helpers/get-date-object.mjs +4 -4
  129. package/{esm2020 → esm2022}/lib/components/form/input-timepicker/helpers/validate-value-models.mjs +29 -29
  130. package/{esm2020 → esm2022}/lib/components/form/input-timepicker/helpers/value-parser.mjs +17 -17
  131. package/esm2022/lib/components/form/input-timepicker/input-timepicker.component.mjs +292 -0
  132. package/{esm2020 → esm2022}/lib/components/form/input-timepicker/input-timepicker.enum.mjs +6 -6
  133. package/esm2022/lib/components/form/input-timepicker/input-timepicker.module.mjs +46 -0
  134. package/esm2022/lib/components/form/radio/radio.component.mjs +91 -0
  135. package/{esm2020 → esm2022}/lib/components/form/radio/radio.enum.mjs +4 -4
  136. package/{esm2020 → esm2022}/lib/components/form/radio/radio.module.mjs +20 -20
  137. package/esm2022/lib/components/form/radio-group/components/radio-group-header/radio-group-header.component.mjs +45 -0
  138. package/esm2022/lib/components/form/radio-group/components/radio-group-item/radio-group-item.component.mjs +66 -0
  139. package/esm2022/lib/components/form/radio-group/helpers/filter-search-group.mjs +27 -0
  140. package/esm2022/lib/components/form/radio-group/helpers/get-item-by-id.mjs +11 -0
  141. package/esm2022/lib/components/form/radio-group/helpers/move-selected-to-first.mjs +27 -0
  142. package/esm2022/lib/components/form/radio-group/models/radio-group.model.mjs +2 -0
  143. package/esm2022/lib/components/form/radio-group/radio-group.component.mjs +175 -0
  144. package/esm2022/lib/components/form/radio-group/radio-group.module.mjs +26 -0
  145. package/esm2022/lib/components/form/rating/rating.component.mjs +215 -0
  146. package/{esm2020 → esm2022}/lib/components/form/rating/rating.enum.mjs +15 -15
  147. package/{esm2020 → esm2022}/lib/components/form/rating/rating.module.mjs +25 -25
  148. package/esm2022/lib/components/form/switch/switch.component.mjs +95 -0
  149. package/{esm2020 → esm2022}/lib/components/form/switch/switch.enum.mjs +10 -10
  150. package/{esm2020 → esm2022}/lib/components/form/switch/switch.module.mjs +21 -21
  151. package/esm2022/lib/components/gallery/components/gallery-confirm-modal/gallery-confirm-modal.component.mjs +39 -0
  152. package/esm2022/lib/components/gallery/components/gallery-item/gallery-item.component.mjs +112 -0
  153. package/{esm2020 → esm2022}/lib/components/gallery/constants/custom-buttons-default.mjs +6 -6
  154. package/{esm2020 → esm2022}/lib/components/gallery/constants/thumbs-config-default.mjs +4 -4
  155. package/esm2022/lib/components/gallery/gallery.component.mjs +203 -0
  156. package/{esm2020 → esm2022}/lib/components/gallery/gallery.module.mjs +54 -54
  157. package/{esm2020 → esm2022}/lib/components/gallery/models/gallery-item.model.mjs +1 -1
  158. package/esm2022/lib/components/gallery/services/gallery.service.mjs +33 -0
  159. package/esm2022/lib/components/hint-error-message/hint-error-message.component.mjs +121 -0
  160. package/{esm2020 → esm2022}/lib/components/hint-error-message/hint-error-message.module.mjs +19 -19
  161. package/esm2022/lib/components/icon-button/icon-button.component.mjs +49 -0
  162. package/{esm2020 → esm2022}/lib/components/icon-button/icon-button.enum.mjs +15 -15
  163. package/{esm2020 → esm2022}/lib/components/icon-button/icon-button.module.mjs +19 -19
  164. package/esm2022/lib/components/label/label.component.mjs +143 -0
  165. package/{esm2020 → esm2022}/lib/components/label/label.module.mjs +25 -25
  166. package/esm2022/lib/components/link/link.component.mjs +48 -0
  167. package/{esm2020 → esm2022}/lib/components/link/link.enum.mjs +19 -19
  168. package/{esm2020 → esm2022}/lib/components/link/link.module.mjs +19 -19
  169. package/esm2022/lib/components/loader/loader.component.mjs +24 -0
  170. package/{esm2020 → esm2022}/lib/components/loader/loader.enum.mjs +19 -19
  171. package/{esm2020 → esm2022}/lib/components/loader/loader.module.mjs +19 -19
  172. package/esm2022/lib/components/modal/modal.component.mjs +137 -0
  173. package/{esm2020 → esm2022}/lib/components/modal/modal.emun.mjs +20 -20
  174. package/{esm2020 → esm2022}/lib/components/modal/modal.module.mjs +20 -20
  175. package/esm2022/lib/components/pages-nav/pages-nav.component.mjs +31 -0
  176. package/{esm2020 → esm2022}/lib/components/pages-nav/pages-nav.enum.mjs +5 -5
  177. package/{esm2020 → esm2022}/lib/components/pages-nav/pages-nav.module.mjs +24 -24
  178. package/esm2022/lib/components/paginator/paginator.component.mjs +140 -0
  179. package/{esm2020 → esm2022}/lib/components/paginator/paginator.enum.mjs +5 -5
  180. package/{esm2020 → esm2022}/lib/components/paginator/paginator.module.mjs +31 -31
  181. package/esm2022/lib/components/progress/progress.component.mjs +24 -0
  182. package/{esm2020 → esm2022}/lib/components/progress/progress.enum.mjs +7 -7
  183. package/{esm2020 → esm2022}/lib/components/progress/progress.module.mjs +19 -19
  184. package/esm2022/lib/components/save-state/components/save-state-checkbox/save-state-checkbox.component.mjs +16 -0
  185. package/esm2022/lib/components/save-state/components/save-state-checkbox-group/save-state-checkbox-group.component.mjs +16 -0
  186. package/esm2022/lib/components/save-state/components/save-state-editor/save-state-editor.component.mjs +16 -0
  187. package/esm2022/lib/components/save-state/components/save-state-input/save-state-input.component.mjs +16 -0
  188. package/esm2022/lib/components/save-state/components/save-state-switch/save-state-switch.component.mjs +16 -0
  189. package/esm2022/lib/components/save-state/save-state.component.mjs +40 -0
  190. package/{esm2020 → esm2022}/lib/components/save-state/save-state.enum.mjs +1 -1
  191. package/{esm2020 → esm2022}/lib/components/save-state/save-state.module.mjs +37 -37
  192. package/esm2022/lib/components/stepper/stepper.component.mjs +52 -0
  193. package/{esm2020 → esm2022}/lib/components/stepper/stepper.enum.mjs +5 -5
  194. package/{esm2020 → esm2022}/lib/components/stepper/stepper.module.mjs +20 -20
  195. package/esm2022/lib/components/table/components/column/column.component.mjs +40 -0
  196. package/{esm2020 → esm2022}/lib/components/table/default/default-pager-settings.mjs +6 -6
  197. package/{esm2020 → esm2022}/lib/components/table/models/data-state-change.event.mjs +1 -1
  198. package/{esm2020 → esm2022}/lib/components/table/models/index.mjs +3 -3
  199. package/{esm2020 → esm2022}/lib/components/table/models/pager-settings.mjs +1 -1
  200. package/esm2022/lib/components/table/table.component.mjs +281 -0
  201. package/{esm2020 → esm2022}/lib/components/table/table.enum.mjs +7 -7
  202. package/{esm2020 → esm2022}/lib/components/table/table.module.mjs +50 -50
  203. package/esm2022/lib/components/tabs/tab/tab.component.mjs +33 -0
  204. package/esm2022/lib/components/tabs/tabs-group/tabs-group.component.mjs +27 -0
  205. package/{esm2020 → esm2022}/lib/components/tabs/tabs.enum.mjs +13 -13
  206. package/{esm2020 → esm2022}/lib/components/tabs/tabs.module.mjs +20 -20
  207. package/esm2022/lib/components/tooltip/services/tooltip.service.mjs +65 -0
  208. package/esm2022/lib/components/tooltip/tooltip-trigger/tooltip-trigger.component.mjs +36 -0
  209. package/{esm2020 → esm2022}/lib/components/tooltip/tooltip-trigger/tooltip-trigger.enum.mjs +10 -10
  210. package/esm2022/lib/components/tooltip/tooltip.component.mjs +59 -0
  211. package/{esm2020 → esm2022}/lib/components/tooltip/tooltip.enum.mjs +5 -5
  212. package/{esm2020 → esm2022}/lib/components/tooltip/tooltip.module.mjs +21 -21
  213. package/{esm2020 → esm2022}/lib/components/truncate-text/directives/truncate-text.directive.mjs +149 -139
  214. package/esm2022/lib/components/truncate-text/truncate-text.component.mjs +30 -0
  215. package/{esm2020 → esm2022}/lib/components/truncate-text/truncate-text.enum.mjs +1 -1
  216. package/{esm2020 → esm2022}/lib/components/truncate-text/truncate-text.module.mjs +21 -21
  217. package/esm2022/lib/components/warning-message/warning-message.component.mjs +29 -0
  218. package/{esm2020 → esm2022}/lib/components/warning-message/warning-message.module.mjs +19 -19
  219. package/esm2022/lib/components/wrappers/content-wrapper/content-wrapper.component.mjs +25 -0
  220. package/{esm2020 → esm2022}/lib/components/wrappers/content-wrapper/content-wrapper.enum.mjs +5 -5
  221. package/{esm2020 → esm2022}/lib/components/wrappers/content-wrapper/content-wrapper.module.mjs +19 -19
  222. package/esm2022/lib/components/wrappers/controls-wrapper/components/controls-item/controls-item.component.mjs +15 -0
  223. package/esm2022/lib/components/wrappers/controls-wrapper/controls-wrapper.component.mjs +23 -0
  224. package/{esm2020 → esm2022}/lib/components/wrappers/controls-wrapper/controls-wrapper.enum.mjs +6 -6
  225. package/{esm2020 → esm2022}/lib/components/wrappers/controls-wrapper/controls-wrapper.module.mjs +20 -20
  226. package/esm2022/lib/components/wrappers/widget-wrapper/widget-wrapper.component.mjs +99 -0
  227. package/{esm2020 → esm2022}/lib/components/wrappers/widget-wrapper/widget-wrapper.enum.mjs +16 -16
  228. package/{esm2020 → esm2022}/lib/components/wrappers/widget-wrapper/widget-wrapper.module.mjs +24 -24
  229. package/esm2022/lib/directives/autosize/autosize.directive.mjs +57 -0
  230. package/{esm2020 → esm2022}/lib/directives/autosize/autosize.module.mjs +24 -24
  231. package/esm2022/lib/directives/truncate/truncate.directive.mjs +34 -0
  232. package/{esm2020 → esm2022}/lib/directives/truncate/truncate.module.mjs +18 -18
  233. package/{esm2020 → esm2022}/lib/enums/typed.input.state.mjs +7 -7
  234. package/esm2022/lib/helpers/extension/input-file.extension.mjs +39 -0
  235. package/esm2022/lib/helpers/formatting-date.mjs +51 -0
  236. package/{esm2020 → esm2022}/lib/helpers/formatting-dates-from-array.mjs +18 -18
  237. package/{esm2020 → esm2022}/lib/helpers/formatting-iso-to-string.mjs +12 -12
  238. package/{esm2020 → esm2022}/lib/helpers/index.mjs +7 -7
  239. package/{esm2020 → esm2022}/lib/helpers/number-format.mjs +8 -8
  240. package/esm2022/lib/helpers/string-hash-code.mjs +17 -0
  241. package/{esm2020 → esm2022}/lib/helpers/word-form.mjs +10 -10
  242. package/{esm2020 → esm2022}/lib/models/index.mjs +2 -2
  243. package/{esm2020 → esm2022}/lib/models/input-file/input-file.model.mjs +1 -1
  244. package/{esm2020 → esm2022}/lib/models/typed-input-model.mjs +1 -1
  245. package/{esm2020 → esm2022}/lib/pipes/currency/currency.module.mjs +20 -20
  246. package/esm2022/lib/pipes/currency/currency.pipe.mjs +22 -0
  247. package/{esm2020 → esm2022}/lib/pipes/date/date-format.module.mjs +19 -19
  248. package/esm2022/lib/pipes/date/date-format.pipe.mjs +21 -0
  249. package/esm2022/lib/pipes/date/date-time-format.pipe.mjs +21 -0
  250. package/{esm2020 → esm2022}/lib/pipes/date/enums/timezone.mjs +9 -9
  251. package/{esm2020 → esm2022}/lib/pipes/date/helpers/change-timezone.mjs +22 -22
  252. package/{esm2020 → esm2022}/lib/pipes/phone/phone-format.module.mjs +18 -18
  253. package/esm2022/lib/pipes/phone/phone-format.pipe.mjs +23 -0
  254. package/{esm2020 → esm2022}/lib/pipes/safe/safe.module.mjs +20 -20
  255. package/esm2022/lib/pipes/safe/safe.pipe.mjs +21 -0
  256. package/{esm2020 → esm2022}/lib/pipes/truncate/truncate.module.mjs +20 -20
  257. package/esm2022/lib/pipes/truncate/truncate.pipe.mjs +23 -0
  258. package/esm2022/lib/services/file-upload/file-upload.service.mjs +27 -0
  259. package/{esm2020 → esm2022}/lib/services/index.mjs +6 -6
  260. package/esm2022/lib/services/modal-service/components/alert-modal/alert-modal.component.mjs +46 -0
  261. package/esm2022/lib/services/modal-service/components/confirm-modal/confirm-modal.component.mjs +50 -0
  262. package/esm2022/lib/services/modal-service/helpers/modal-default-config.mjs +14 -0
  263. package/esm2022/lib/services/modal-service/helpers/modal-ref.mjs +29 -0
  264. package/esm2022/lib/services/modal-service/helpers/modal-tokens.mjs +4 -0
  265. package/esm2022/lib/services/modal-service/helpers/modal.component.mjs +5 -0
  266. package/esm2022/lib/services/modal-service/modal-service.service.mjs +84 -0
  267. package/esm2022/lib/services/modal-service/models/modal-config.model.mjs +2 -0
  268. package/esm2022/lib/services/mrx-autosave/mrx-autosave.service.mjs +43 -0
  269. package/esm2022/lib/services/mrx-form-validator/mrx-form-validator.mjs +283 -0
  270. package/{esm2020 → esm2022}/lib/services/save-store/constants/constants.mjs +1 -1
  271. package/{esm2020 → esm2022}/lib/services/save-store/models/save-store.model.mjs +1 -1
  272. package/{esm2020 → esm2022}/lib/services/save-store/save-store.module.mjs +29 -29
  273. package/{esm2020 → esm2022}/lib/services/save-store/store/actions.mjs +22 -22
  274. package/esm2022/lib/services/save-store/store/effect.mjs +61 -0
  275. package/esm2022/lib/services/save-store/store/reducer.mjs +96 -0
  276. package/{esm2020 → esm2022}/lib/services/save-store/store/selectors.mjs +4 -4
  277. package/{esm2020 → esm2022}/lib/services/save-store/store/state.mjs +3 -3
  278. package/{esm2020 → esm2022}/myrta-ui.mjs +4 -4
  279. package/esm2022/public-api.mjs +176 -0
  280. package/fesm2022/myrta-ui.mjs +15458 -0
  281. package/fesm2022/myrta-ui.mjs.map +1 -0
  282. package/index.d.ts +5 -5
  283. package/lib/components/alert/alert.component.d.ts +17 -17
  284. package/lib/components/alert/alert.enum.d.ts +13 -13
  285. package/lib/components/alert/alert.module.d.ts +8 -8
  286. package/lib/components/badges/badge.enum.d.ts +38 -38
  287. package/lib/components/badges/badges.module.d.ts +9 -9
  288. package/lib/components/badges/components/badge/badge.component.d.ts +21 -21
  289. package/lib/components/badges/components/badge-group/badge-group.component.d.ts +5 -5
  290. package/lib/components/breadcrumbs/breadcrumbs.component.d.ts +11 -11
  291. package/lib/components/breadcrumbs/breadcrumbs.enum.d.ts +11 -11
  292. package/lib/components/breadcrumbs/breadcrumbs.module.d.ts +8 -8
  293. package/lib/components/button/button.component.d.ts +31 -31
  294. package/lib/components/button/button.enum.d.ts +27 -29
  295. package/lib/components/button/button.module.d.ts +10 -10
  296. package/lib/components/cdk-tooltip/cdk-tooltip/tooltip-container.component.d.ts +13 -13
  297. package/lib/components/cdk-tooltip/cdk-tooltip.directive.d.ts +24 -24
  298. package/lib/components/cdk-tooltip/cdk-tooltip.module.d.ts +10 -10
  299. package/lib/components/cdk-tooltip/constants/index.d.ts +7 -7
  300. package/lib/components/cdk-tooltip/models/tooltip-data.d.ts +6 -6
  301. package/lib/components/chars-left/chars-left.component.d.ts +9 -9
  302. package/lib/components/chars-left/chars-left.module.d.ts +8 -8
  303. package/lib/components/dropdown/directives/hide-after-click.directive.d.ts +9 -9
  304. package/lib/components/dropdown/dropdown.component.d.ts +26 -26
  305. package/lib/components/dropdown/dropdown.module.d.ts +10 -10
  306. package/lib/components/error-message/error-message.component.d.ts +10 -9
  307. package/lib/components/error-message/error-message.module.d.ts +8 -8
  308. package/lib/components/form/checkbox/checkbox.component.d.ts +48 -48
  309. package/lib/components/form/checkbox/checkbox.enum.d.ts +14 -14
  310. package/lib/components/form/checkbox/checkbox.module.d.ts +11 -11
  311. package/lib/components/form/checkbox-group/checkbox-group.component.d.ts +54 -54
  312. package/lib/components/form/checkbox-group/checkbox-group.module.d.ts +16 -16
  313. package/lib/components/form/checkbox-group/components/checkbox-group-header/checkbox-group-header.component.d.ts +19 -19
  314. package/lib/components/form/checkbox-group/components/checkbox-group-item/checkbox-group-item.component.d.ts +26 -26
  315. package/lib/components/form/checkbox-group/helpers/change-group-value.d.ts +3 -3
  316. package/lib/components/form/checkbox-group/helpers/change-item-value.d.ts +3 -3
  317. package/lib/components/form/checkbox-group/helpers/filter-search-group.d.ts +2 -2
  318. package/lib/components/form/checkbox-group/helpers/get-checked-items.d.ts +2 -2
  319. package/lib/components/form/checkbox-group/helpers/get-item-by-id.d.ts +2 -2
  320. package/lib/components/form/checkbox-group/helpers/get-sorted-list.d.ts +2 -2
  321. package/lib/components/form/checkbox-group/models/checkbox-group.model.d.ts +15 -15
  322. package/lib/components/form/editor/config/default-inline-style.d.ts +11 -0
  323. package/lib/components/form/editor/config/index.d.ts +1 -1
  324. package/lib/components/form/editor/config/popups-toolbar.d.ts +15 -15
  325. package/lib/components/form/editor/config/toolbar.d.ts +2 -2
  326. package/lib/components/form/editor/editor.component.d.ts +63 -48
  327. package/lib/components/form/editor/editor.module.d.ts +14 -14
  328. package/lib/components/form/editor/models/toolbar.model.d.ts +6 -6
  329. package/lib/components/form/editor/modules/change-icon-module.d.ts +1 -1
  330. package/lib/components/form/input-date-time/constants/value-models.d.ts +3 -3
  331. package/lib/components/form/input-date-time/enum/timezone.d.ts +6 -6
  332. package/lib/components/form/input-date-time/helpers/clean-date.d.ts +1 -1
  333. package/lib/components/form/input-date-time/helpers/cursor-position.d.ts +1 -1
  334. package/lib/components/form/input-date-time/helpers/formatting-from-models.d.ts +3 -3
  335. package/lib/components/form/input-date-time/helpers/formatting-moscow-timezone.d.ts +2 -2
  336. package/lib/components/form/input-date-time/helpers/validate-value-models.d.ts +19 -19
  337. package/lib/components/form/input-date-time/helpers/value-parser.d.ts +4 -4
  338. package/lib/components/form/input-date-time/input-date-time.component.d.ts +72 -72
  339. package/lib/components/form/input-date-time/input-date-time.enum.d.ts +21 -21
  340. package/lib/components/form/input-date-time/input-date-time.module.d.ts +13 -13
  341. package/lib/components/form/input-datepicker/constants/value-models.d.ts +3 -3
  342. package/lib/components/form/input-datepicker/helpers/clean-date.d.ts +1 -1
  343. package/lib/components/form/input-datepicker/helpers/cursor-position.d.ts +1 -1
  344. package/lib/components/form/input-datepicker/helpers/get-date-dayjs-object.d.ts +3 -3
  345. package/lib/components/form/input-datepicker/helpers/get-date-object.d.ts +2 -2
  346. package/lib/components/form/input-datepicker/helpers/validate-value-models.d.ts +20 -20
  347. package/lib/components/form/input-datepicker/helpers/value-parser.d.ts +3 -3
  348. package/lib/components/form/input-datepicker/input-datepicker.component.d.ts +69 -69
  349. package/lib/components/form/input-datepicker/input-datepicker.enum.d.ts +12 -12
  350. package/lib/components/form/input-datepicker/input-datepicker.module.d.ts +13 -13
  351. package/lib/components/form/input-file/enums/error-messages.enum.d.ts +6 -6
  352. package/lib/components/form/input-file/input-file.component.d.ts +72 -72
  353. package/lib/components/form/input-file/input-file.enum.d.ts +7 -7
  354. package/lib/components/form/input-file/input-file.module.d.ts +13 -13
  355. package/lib/components/form/input-file-image/components/file-image-edit-modal/file-image-edit-modal.component.d.ts +42 -33
  356. package/lib/components/form/input-file-image/input-file-image.component.d.ts +62 -59
  357. package/lib/components/form/input-file-image/input-file-image.enum.d.ts +8 -8
  358. package/lib/components/form/input-file-image/input-file-image.module.d.ts +15 -16
  359. package/lib/components/form/input-number/input-number.component.d.ts +64 -61
  360. package/lib/components/form/input-number/input-number.enum.d.ts +12 -12
  361. package/lib/components/form/input-number/input-number.module.d.ts +13 -13
  362. package/lib/components/form/input-opt/components/input-opt/input-opt.component.d.ts +77 -77
  363. package/lib/components/form/input-opt/components/input-opt/input-opt.enum.d.ts +7 -7
  364. package/lib/components/form/input-opt/directives/opt-pattern.directive.d.ts +8 -8
  365. package/lib/components/form/input-opt/input-opt.module.d.ts +11 -11
  366. package/lib/components/form/input-opt/models/input-opt.model.d.ts +26 -26
  367. package/lib/components/form/input-opt/services/input-opt.service.d.ts +11 -11
  368. package/lib/components/form/input-password/input-password.component.d.ts +38 -38
  369. package/lib/components/form/input-password/input-password.enum.d.ts +7 -7
  370. package/lib/components/form/input-password/input-password.module.d.ts +11 -11
  371. package/lib/components/form/input-phone/data/country-code.d.ts +6 -6
  372. package/lib/components/form/input-phone/directives/native-element-injector.directive.d.ts +11 -11
  373. package/lib/components/form/input-phone/enums/country-iso.enum.d.ts +245 -245
  374. package/lib/components/form/input-phone/enums/input-phone.enum.d.ts +11 -11
  375. package/lib/components/form/input-phone/enums/mask.enum.d.ts +8 -8
  376. package/lib/components/form/input-phone/enums/phone-number-format.enum.d.ts +4 -4
  377. package/lib/components/form/input-phone/enums/search-country-field.enum.d.ts +6 -6
  378. package/lib/components/form/input-phone/input-phone.component.d.ts +132 -132
  379. package/lib/components/form/input-phone/input-phone.module.d.ts +14 -14
  380. package/lib/components/form/input-phone/input-phone.validator.d.ts +5 -5
  381. package/lib/components/form/input-phone/interfaces/change-data.d.ts +9 -9
  382. package/lib/components/form/input-phone/models/country.model.d.ts +13 -13
  383. package/lib/components/form/input-search/input-search.component.d.ts +48 -48
  384. package/lib/components/form/input-search/input-search.enum.d.ts +6 -6
  385. package/lib/components/form/input-search/input-search.module.d.ts +12 -12
  386. package/lib/components/form/input-select/input-select.component.d.ts +84 -84
  387. package/lib/components/form/input-select/input-select.enum.d.ts +10 -10
  388. package/lib/components/form/input-select/input-select.module.d.ts +14 -14
  389. package/lib/components/form/input-tel/assets/base64.d.ts +3 -0
  390. package/lib/components/form/input-tel/data/all-countries.d.ts +1 -0
  391. package/lib/components/form/input-tel/data/country-iso.enum.d.ts +245 -0
  392. package/lib/components/form/input-tel/data/phone-number-format.enum.d.ts +5 -0
  393. package/lib/components/form/input-tel/data/search-country-field.enum.d.ts +6 -0
  394. package/lib/components/form/input-tel/directives/input-tel.directive.d.ts +21 -0
  395. package/lib/components/form/input-tel/enums/input-phone.enum.d.ts +11 -0
  396. package/lib/components/form/input-tel/input-tel.component.d.ts +89 -0
  397. package/lib/components/form/input-tel/input-tel.module.d.ts +13 -0
  398. package/lib/components/form/input-tel/models/country.model.d.ts +18 -0
  399. package/lib/components/form/input-text/input-text.component.d.ts +54 -54
  400. package/lib/components/form/input-text/input-text.enum.d.ts +19 -19
  401. package/lib/components/form/input-text/input-text.module.d.ts +14 -14
  402. package/lib/components/form/input-textarea/input-textarea.component.d.ts +54 -52
  403. package/lib/components/form/input-textarea/input-textarea.enum.d.ts +11 -11
  404. package/lib/components/form/input-textarea/input-textarea.module.d.ts +14 -14
  405. package/lib/components/form/input-timepicker/constants/value-models.d.ts +2 -2
  406. package/lib/components/form/input-timepicker/helpers/clean-date.d.ts +1 -1
  407. package/lib/components/form/input-timepicker/helpers/cursor-position.d.ts +1 -1
  408. package/lib/components/form/input-timepicker/helpers/get-date-dayjs-object.d.ts +3 -3
  409. package/lib/components/form/input-timepicker/helpers/get-date-object.d.ts +2 -2
  410. package/lib/components/form/input-timepicker/helpers/validate-value-models.d.ts +10 -10
  411. package/lib/components/form/input-timepicker/helpers/value-parser.d.ts +2 -2
  412. package/lib/components/form/input-timepicker/input-timepicker.component.d.ts +60 -60
  413. package/lib/components/form/input-timepicker/input-timepicker.enum.d.ts +11 -11
  414. package/lib/components/form/input-timepicker/input-timepicker.module.d.ts +13 -13
  415. package/lib/components/form/radio/radio.component.d.ts +29 -29
  416. package/lib/components/form/radio/radio.enum.d.ts +4 -4
  417. package/lib/components/form/radio/radio.module.d.ts +9 -9
  418. package/lib/components/form/radio-group/components/radio-group-header/radio-group-header.component.d.ts +18 -0
  419. package/lib/components/form/radio-group/components/radio-group-item/radio-group-item.component.d.ts +26 -0
  420. package/lib/components/form/radio-group/helpers/filter-search-group.d.ts +2 -0
  421. package/lib/components/form/radio-group/helpers/get-item-by-id.d.ts +2 -0
  422. package/lib/components/form/radio-group/helpers/move-selected-to-first.d.ts +2 -0
  423. package/lib/components/form/radio-group/models/radio-group.model.d.ts +8 -0
  424. package/lib/components/form/radio-group/radio-group.component.d.ts +57 -0
  425. package/lib/components/form/radio-group/radio-group.module.d.ts +15 -0
  426. package/lib/components/form/rating/rating.component.d.ts +51 -51
  427. package/lib/components/form/rating/rating.enum.d.ts +27 -27
  428. package/lib/components/form/rating/rating.module.d.ts +9 -9
  429. package/lib/components/form/switch/switch.component.d.ts +32 -32
  430. package/lib/components/form/switch/switch.enum.d.ts +15 -15
  431. package/lib/components/form/switch/switch.module.d.ts +10 -10
  432. package/lib/components/gallery/components/gallery-confirm-modal/gallery-confirm-modal.component.d.ts +21 -17
  433. package/lib/components/gallery/components/gallery-item/gallery-item.component.d.ts +38 -38
  434. package/lib/components/gallery/constants/custom-buttons-default.d.ts +3 -3
  435. package/lib/components/gallery/constants/thumbs-config-default.d.ts +2 -2
  436. package/lib/components/gallery/gallery.component.d.ts +38 -38
  437. package/lib/components/gallery/gallery.module.d.ts +16 -16
  438. package/lib/components/gallery/models/gallery-item.model.d.ts +24 -24
  439. package/lib/components/gallery/services/gallery.service.d.ts +14 -14
  440. package/lib/components/hint-error-message/hint-error-message.component.d.ts +21 -21
  441. package/lib/components/hint-error-message/hint-error-message.module.d.ts +8 -8
  442. package/lib/components/icon-button/icon-button.component.d.ts +19 -19
  443. package/lib/components/icon-button/icon-button.enum.d.ts +15 -15
  444. package/lib/components/icon-button/icon-button.module.d.ts +9 -9
  445. package/lib/components/label/label.component.d.ts +44 -44
  446. package/lib/components/label/label.module.d.ts +14 -14
  447. package/lib/components/link/link.component.d.ts +18 -18
  448. package/lib/components/link/link.enum.d.ts +19 -19
  449. package/lib/components/link/link.module.d.ts +8 -8
  450. package/lib/components/loader/loader.component.d.ts +10 -10
  451. package/lib/components/loader/loader.enum.d.ts +19 -19
  452. package/lib/components/loader/loader.module.d.ts +8 -8
  453. package/lib/components/modal/modal.component.d.ts +36 -36
  454. package/lib/components/modal/modal.emun.d.ts +20 -20
  455. package/lib/components/modal/modal.module.d.ts +9 -9
  456. package/lib/components/pages-nav/pages-nav.component.d.ts +12 -12
  457. package/lib/components/pages-nav/pages-nav.enum.d.ts +5 -5
  458. package/lib/components/pages-nav/pages-nav.module.d.ts +8 -8
  459. package/lib/components/paginator/paginator.component.d.ts +29 -29
  460. package/lib/components/paginator/paginator.enum.d.ts +10 -10
  461. package/lib/components/paginator/paginator.module.d.ts +10 -10
  462. package/lib/components/progress/progress.component.d.ts +10 -10
  463. package/lib/components/progress/progress.enum.d.ts +7 -7
  464. package/lib/components/progress/progress.module.d.ts +8 -8
  465. package/lib/components/save-state/components/save-state-checkbox/save-state-checkbox.component.d.ts +8 -8
  466. package/lib/components/save-state/components/save-state-checkbox-group/save-state-checkbox-group.component.d.ts +8 -8
  467. package/lib/components/save-state/components/save-state-editor/save-state-editor.component.d.ts +8 -8
  468. package/lib/components/save-state/components/save-state-input/save-state-input.component.d.ts +8 -8
  469. package/lib/components/save-state/components/save-state-switch/save-state-switch.component.d.ts +8 -8
  470. package/lib/components/save-state/save-state.component.d.ts +13 -13
  471. package/lib/components/save-state/save-state.enum.d.ts +1 -1
  472. package/lib/components/save-state/save-state.module.d.ts +13 -13
  473. package/lib/components/stepper/stepper.component.d.ts +17 -17
  474. package/lib/components/stepper/stepper.enum.d.ts +5 -5
  475. package/lib/components/stepper/stepper.module.d.ts +9 -9
  476. package/lib/components/table/components/column/column.component.d.ts +14 -14
  477. package/lib/components/table/default/default-pager-settings.d.ts +2 -2
  478. package/lib/components/table/models/data-state-change.event.d.ts +15 -15
  479. package/lib/components/table/models/index.d.ts +3 -3
  480. package/lib/components/table/models/pager-settings.d.ts +22 -22
  481. package/lib/components/table/table.component.d.ts +55 -55
  482. package/lib/components/table/table.enum.d.ts +32 -32
  483. package/lib/components/table/table.module.d.ts +14 -14
  484. package/lib/components/tabs/tab/tab.component.d.ts +13 -13
  485. package/lib/components/tabs/tabs-group/tabs-group.component.d.ts +11 -11
  486. package/lib/components/tabs/tabs.enum.d.ts +11 -11
  487. package/lib/components/tabs/tabs.module.d.ts +9 -9
  488. package/lib/components/tooltip/services/tooltip.service.d.ts +18 -18
  489. package/lib/components/tooltip/tooltip-trigger/tooltip-trigger.component.d.ts +15 -16
  490. package/lib/components/tooltip/tooltip-trigger/tooltip-trigger.enum.d.ts +10 -10
  491. package/lib/components/tooltip/tooltip.component.d.ts +18 -18
  492. package/lib/components/tooltip/tooltip.enum.d.ts +4 -4
  493. package/lib/components/tooltip/tooltip.module.d.ts +10 -10
  494. package/lib/components/truncate-text/directives/truncate-text.directive.d.ts +37 -37
  495. package/lib/components/truncate-text/truncate-text.component.d.ts +12 -12
  496. package/lib/components/truncate-text/truncate-text.enum.d.ts +2 -2
  497. package/lib/components/truncate-text/truncate-text.module.d.ts +10 -10
  498. package/lib/components/warning-message/warning-message.component.d.ts +9 -9
  499. package/lib/components/warning-message/warning-message.module.d.ts +8 -8
  500. package/lib/components/wrappers/content-wrapper/content-wrapper.component.d.ts +10 -10
  501. package/lib/components/wrappers/content-wrapper/content-wrapper.enum.d.ts +5 -5
  502. package/lib/components/wrappers/content-wrapper/content-wrapper.module.d.ts +8 -8
  503. package/lib/components/wrappers/controls-wrapper/components/controls-item/controls-item.component.d.ts +6 -6
  504. package/lib/components/wrappers/controls-wrapper/controls-wrapper.component.d.ts +10 -10
  505. package/lib/components/wrappers/controls-wrapper/controls-wrapper.enum.d.ts +6 -6
  506. package/lib/components/wrappers/controls-wrapper/controls-wrapper.module.d.ts +9 -9
  507. package/lib/components/wrappers/widget-wrapper/widget-wrapper.component.d.ts +26 -26
  508. package/lib/components/wrappers/widget-wrapper/widget-wrapper.enum.d.ts +15 -15
  509. package/lib/components/wrappers/widget-wrapper/widget-wrapper.module.d.ts +8 -8
  510. package/lib/directives/autosize/autosize.directive.d.ts +16 -16
  511. package/lib/directives/autosize/autosize.module.d.ts +8 -8
  512. package/lib/directives/truncate/truncate.directive.d.ts +12 -12
  513. package/lib/directives/truncate/truncate.module.d.ts +8 -8
  514. package/lib/enums/typed.input.state.d.ts +6 -6
  515. package/lib/helpers/extension/input-file.extension.d.ts +4 -4
  516. package/lib/helpers/formatting-date.d.ts +9 -9
  517. package/lib/helpers/formatting-dates-from-array.d.ts +2 -2
  518. package/lib/helpers/formatting-iso-to-string.d.ts +2 -2
  519. package/lib/helpers/index.d.ts +7 -7
  520. package/lib/helpers/number-format.d.ts +6 -6
  521. package/lib/helpers/string-hash-code.d.ts +2 -2
  522. package/lib/helpers/word-form.d.ts +7 -7
  523. package/lib/models/index.d.ts +2 -2
  524. package/lib/models/input-file/input-file.model.d.ts +22 -22
  525. package/lib/models/typed-input-model.d.ts +16 -16
  526. package/lib/pipes/currency/currency.module.d.ts +8 -8
  527. package/lib/pipes/currency/currency.pipe.d.ts +7 -7
  528. package/lib/pipes/date/date-format.module.d.ts +9 -9
  529. package/lib/pipes/date/date-format.pipe.d.ts +9 -9
  530. package/lib/pipes/date/date-time-format.pipe.d.ts +9 -9
  531. package/lib/pipes/date/enums/timezone.d.ts +8 -8
  532. package/lib/pipes/date/helpers/change-timezone.d.ts +2 -2
  533. package/lib/pipes/phone/phone-format.module.d.ts +8 -8
  534. package/lib/pipes/phone/phone-format.pipe.d.ts +8 -8
  535. package/lib/pipes/safe/safe.module.d.ts +8 -8
  536. package/lib/pipes/safe/safe.pipe.d.ts +10 -10
  537. package/lib/pipes/truncate/truncate.module.d.ts +8 -8
  538. package/lib/pipes/truncate/truncate.pipe.d.ts +7 -7
  539. package/lib/services/file-upload/file-upload.service.d.ts +12 -12
  540. package/lib/services/index.d.ts +6 -6
  541. package/lib/services/modal-service/components/alert-modal/alert-modal.component.d.ts +20 -0
  542. package/lib/services/modal-service/components/confirm-modal/confirm-modal.component.d.ts +21 -0
  543. package/lib/services/modal-service/helpers/modal-default-config.d.ts +3 -0
  544. package/lib/services/modal-service/helpers/modal-ref.d.ts +11 -0
  545. package/lib/services/modal-service/helpers/modal-tokens.d.ts +3 -0
  546. package/lib/services/modal-service/helpers/modal.component.d.ts +4 -0
  547. package/lib/services/modal-service/modal-service.service.d.ts +20 -0
  548. package/lib/services/modal-service/models/modal-config.model.d.ts +14 -0
  549. package/lib/services/mrx-autosave/mrx-autosave.service.d.ts +19 -19
  550. package/lib/services/mrx-form-validator/mrx-form-validator.d.ts +51 -51
  551. package/lib/services/save-store/constants/constants.d.ts +1 -1
  552. package/lib/services/save-store/models/save-store.model.d.ts +4 -4
  553. package/lib/services/save-store/save-store.module.d.ts +9 -9
  554. package/lib/services/save-store/store/actions.d.ts +21 -21
  555. package/lib/services/save-store/store/effect.d.ts +10 -16
  556. package/lib/services/save-store/store/reducer.d.ts +3 -3
  557. package/lib/services/save-store/store/selectors.d.ts +3 -3
  558. package/lib/services/save-store/store/state.d.ts +11 -11
  559. package/package.json +29 -37
  560. package/public-api.d.ts +162 -171
  561. package/esm2020/lib/components/alert/alert.component.mjs +0 -45
  562. package/esm2020/lib/components/badges/components/badge/badge.component.mjs +0 -61
  563. package/esm2020/lib/components/breadcrumbs/breadcrumbs.component.mjs +0 -29
  564. package/esm2020/lib/components/button/button.component.mjs +0 -102
  565. package/esm2020/lib/components/button/button.enum.mjs +0 -29
  566. package/esm2020/lib/components/cdk-tooltip/cdk-tooltip/tooltip-container.component.mjs +0 -28
  567. package/esm2020/lib/components/cdk-tooltip/cdk-tooltip.directive.mjs +0 -95
  568. package/esm2020/lib/components/chars-left/chars-left.component.mjs +0 -26
  569. package/esm2020/lib/components/context-menu/components/context-menu/context-menu.component.mjs +0 -99
  570. package/esm2020/lib/components/context-menu/components/context-menu-content/context-menu-content.component.mjs +0 -324
  571. package/esm2020/lib/components/context-menu/context-menu.module.mjs +0 -51
  572. package/esm2020/lib/components/context-menu/context-menu.options.mjs +0 -2
  573. package/esm2020/lib/components/context-menu/context-menu.tokens.mjs +0 -3
  574. package/esm2020/lib/components/context-menu/directives/context-menu/context-menu.directive.mjs +0 -36
  575. package/esm2020/lib/components/context-menu/directives/context-menu-item/context-menu-item.directive.mjs +0 -61
  576. package/esm2020/lib/components/context-menu/models/context-menu.enum.mjs +0 -2
  577. package/esm2020/lib/components/context-menu/services/context-menu/context-menu-fixed.service.mjs +0 -103
  578. package/esm2020/lib/components/context-menu/services/context-menu/context-menu.service.mjs +0 -223
  579. package/esm2020/lib/components/dropdown/directives/hide-after-click.directive.mjs +0 -23
  580. package/esm2020/lib/components/dropdown/dropdown.component.mjs +0 -104
  581. package/esm2020/lib/components/error-message/error-message.component.mjs +0 -31
  582. package/esm2020/lib/components/form/checkbox/checkbox.component.mjs +0 -150
  583. package/esm2020/lib/components/form/checkbox-group/checkbox-group.component.mjs +0 -178
  584. package/esm2020/lib/components/form/checkbox-group/components/checkbox-group-item/checkbox-group-item.component.mjs +0 -103
  585. package/esm2020/lib/components/form/checkbox-group/helpers/change-group-value.mjs +0 -20
  586. package/esm2020/lib/components/form/checkbox-group/helpers/change-item-value.mjs +0 -15
  587. package/esm2020/lib/components/form/checkbox-group/helpers/filter-search-group.mjs +0 -27
  588. package/esm2020/lib/components/form/checkbox-group/helpers/get-checked-items.mjs +0 -20
  589. package/esm2020/lib/components/form/checkbox-group/helpers/get-sorted-list.mjs +0 -50
  590. package/esm2020/lib/components/form/document-editor/components/document-editor-preview-modal/document-editor-preview-modal.component.mjs +0 -33
  591. package/esm2020/lib/components/form/document-editor/document-editor.component.mjs +0 -105
  592. package/esm2020/lib/components/form/document-editor/document-editor.module.mjs +0 -42
  593. package/esm2020/lib/components/form/document-editor/helpers/transform-sysname.mjs +0 -41
  594. package/esm2020/lib/components/form/document-editor/models/document-editor-short-codes.enum.mjs +0 -2
  595. package/esm2020/lib/components/form/editor/editor.component.mjs +0 -232
  596. package/esm2020/lib/components/form/editor/editor.module.mjs +0 -45
  597. package/esm2020/lib/components/form/editor/modules/change-icon-module.mjs +0 -92
  598. package/esm2020/lib/components/form/input-date-time/helpers/cursor-position.mjs +0 -23
  599. package/esm2020/lib/components/form/input-date-time/helpers/formatting-from-models.mjs +0 -10
  600. package/esm2020/lib/components/form/input-date-time/input-date-time.component.mjs +0 -381
  601. package/esm2020/lib/components/form/input-date-time/input-date-time.module.mjs +0 -46
  602. package/esm2020/lib/components/form/input-datepicker/helpers/cursor-position.mjs +0 -23
  603. package/esm2020/lib/components/form/input-datepicker/helpers/get-date-dayjs-object.mjs +0 -10
  604. package/esm2020/lib/components/form/input-datepicker/helpers/get-date-object.mjs +0 -10
  605. package/esm2020/lib/components/form/input-datepicker/input-datepicker.component.mjs +0 -354
  606. package/esm2020/lib/components/form/input-datepicker/input-datepicker.module.mjs +0 -46
  607. package/esm2020/lib/components/form/input-file/input-file.component.mjs +0 -362
  608. package/esm2020/lib/components/form/input-file-image/components/file-image-edit-modal/file-image-edit-modal.component.mjs +0 -66
  609. package/esm2020/lib/components/form/input-file-image/input-file-image.component.mjs +0 -339
  610. package/esm2020/lib/components/form/input-file-image/input-file-image.module.mjs +0 -58
  611. package/esm2020/lib/components/form/input-number/input-number.component.mjs +0 -238
  612. package/esm2020/lib/components/form/input-number/input-number.module.mjs +0 -55
  613. package/esm2020/lib/components/form/input-opt/components/input-opt/input-opt.component.mjs +0 -363
  614. package/esm2020/lib/components/form/input-opt/directives/opt-pattern.directive.mjs +0 -44
  615. package/esm2020/lib/components/form/input-password/input-password.component.mjs +0 -119
  616. package/esm2020/lib/components/form/input-phone/data/country-code.mjs +0 -1333
  617. package/esm2020/lib/components/form/input-phone/directives/native-element-injector.directive.mjs +0 -33
  618. package/esm2020/lib/components/form/input-phone/input-phone.component.mjs +0 -671
  619. package/esm2020/lib/components/form/input-phone/input-phone.module.mjs +0 -50
  620. package/esm2020/lib/components/form/input-phone/input-phone.validator.mjs +0 -61
  621. package/esm2020/lib/components/form/input-search/input-search.component.mjs +0 -166
  622. package/esm2020/lib/components/form/input-search/input-search.module.mjs +0 -41
  623. package/esm2020/lib/components/form/input-select/input-select.component.mjs +0 -243
  624. package/esm2020/lib/components/form/input-text/input-text.component.mjs +0 -188
  625. package/esm2020/lib/components/form/input-text/input-text.module.mjs +0 -49
  626. package/esm2020/lib/components/form/input-textarea/input-textarea.component.mjs +0 -169
  627. package/esm2020/lib/components/form/input-textarea/input-textarea.module.mjs +0 -48
  628. package/esm2020/lib/components/form/input-timepicker/helpers/cursor-position.mjs +0 -14
  629. package/esm2020/lib/components/form/input-timepicker/input-timepicker.component.mjs +0 -290
  630. package/esm2020/lib/components/form/input-timepicker/input-timepicker.module.mjs +0 -46
  631. package/esm2020/lib/components/form/radio/radio.component.mjs +0 -91
  632. package/esm2020/lib/components/form/rating/rating.component.mjs +0 -217
  633. package/esm2020/lib/components/form/switch/switch.component.mjs +0 -97
  634. package/esm2020/lib/components/gallery/components/gallery-confirm-modal/gallery-confirm-modal.component.mjs +0 -22
  635. package/esm2020/lib/components/gallery/components/gallery-item/gallery-item.component.mjs +0 -102
  636. package/esm2020/lib/components/gallery/gallery.component.mjs +0 -197
  637. package/esm2020/lib/components/gallery/services/gallery.service.mjs +0 -31
  638. package/esm2020/lib/components/hint-error-message/hint-error-message.component.mjs +0 -123
  639. package/esm2020/lib/components/icon-button/icon-button.component.mjs +0 -51
  640. package/esm2020/lib/components/label/label.component.mjs +0 -141
  641. package/esm2020/lib/components/link/link.component.mjs +0 -50
  642. package/esm2020/lib/components/loader/loader.component.mjs +0 -26
  643. package/esm2020/lib/components/modal/modal.component.mjs +0 -136
  644. package/esm2020/lib/components/pages-nav/pages-nav.component.mjs +0 -33
  645. package/esm2020/lib/components/paginator/paginator.component.mjs +0 -142
  646. package/esm2020/lib/components/progress/progress.component.mjs +0 -26
  647. package/esm2020/lib/components/save-state/components/save-state-checkbox/save-state-checkbox.component.mjs +0 -15
  648. package/esm2020/lib/components/save-state/components/save-state-checkbox-group/save-state-checkbox-group.component.mjs +0 -15
  649. package/esm2020/lib/components/save-state/components/save-state-editor/save-state-editor.component.mjs +0 -15
  650. package/esm2020/lib/components/save-state/components/save-state-input/save-state-input.component.mjs +0 -15
  651. package/esm2020/lib/components/save-state/components/save-state-switch/save-state-switch.component.mjs +0 -15
  652. package/esm2020/lib/components/save-state/save-state.component.mjs +0 -39
  653. package/esm2020/lib/components/stepper/stepper.component.mjs +0 -54
  654. package/esm2020/lib/components/table/components/column/column.component.mjs +0 -40
  655. package/esm2020/lib/components/table/table.component.mjs +0 -274
  656. package/esm2020/lib/components/tabs/tab/tab.component.mjs +0 -31
  657. package/esm2020/lib/components/tabs/tabs-group/tabs-group.component.mjs +0 -29
  658. package/esm2020/lib/components/tooltip/services/tooltip.service.mjs +0 -67
  659. package/esm2020/lib/components/tooltip/tooltip-trigger/tooltip-trigger.component.mjs +0 -48
  660. package/esm2020/lib/components/tooltip/tooltip.component.mjs +0 -60
  661. package/esm2020/lib/components/truncate-text/truncate-text.component.mjs +0 -30
  662. package/esm2020/lib/components/warning-message/warning-message.component.mjs +0 -31
  663. package/esm2020/lib/components/wrappers/content-wrapper/content-wrapper.component.mjs +0 -26
  664. package/esm2020/lib/components/wrappers/controls-wrapper/components/controls-item/controls-item.component.mjs +0 -17
  665. package/esm2020/lib/components/wrappers/controls-wrapper/controls-wrapper.component.mjs +0 -24
  666. package/esm2020/lib/components/wrappers/widget-wrapper/widget-wrapper.component.mjs +0 -96
  667. package/esm2020/lib/directives/autosize/autosize.directive.mjs +0 -55
  668. package/esm2020/lib/directives/truncate/truncate.directive.mjs +0 -32
  669. package/esm2020/lib/helpers/extension/input-file.extension.mjs +0 -39
  670. package/esm2020/lib/helpers/formatting-date.mjs +0 -51
  671. package/esm2020/lib/helpers/string-hash-code.mjs +0 -17
  672. package/esm2020/lib/pipes/currency/currency.pipe.mjs +0 -22
  673. package/esm2020/lib/pipes/date/date-format.pipe.mjs +0 -21
  674. package/esm2020/lib/pipes/date/date-time-format.pipe.mjs +0 -21
  675. package/esm2020/lib/pipes/phone/phone-format.pipe.mjs +0 -23
  676. package/esm2020/lib/pipes/safe/safe.pipe.mjs +0 -20
  677. package/esm2020/lib/pipes/truncate/truncate.pipe.mjs +0 -23
  678. package/esm2020/lib/services/file-upload/file-upload.service.mjs +0 -26
  679. package/esm2020/lib/services/mrx-autosave/mrx-autosave.service.mjs +0 -44
  680. package/esm2020/lib/services/mrx-form-validator/mrx-form-validator.mjs +0 -282
  681. package/esm2020/lib/services/save-store/store/effect.mjs +0 -31
  682. package/esm2020/lib/services/save-store/store/reducer.mjs +0 -79
  683. package/esm2020/public-api.mjs +0 -180
  684. package/fesm2015/myrta-ui.mjs +0 -13594
  685. package/fesm2015/myrta-ui.mjs.map +0 -1
  686. package/fesm2020/myrta-ui.mjs +0 -13637
  687. package/fesm2020/myrta-ui.mjs.map +0 -1
  688. package/lib/components/context-menu/components/context-menu/context-menu.component.d.ts +0 -34
  689. package/lib/components/context-menu/components/context-menu-content/context-menu-content.component.d.ts +0 -62
  690. package/lib/components/context-menu/context-menu.module.d.ts +0 -15
  691. package/lib/components/context-menu/context-menu.options.d.ts +0 -4
  692. package/lib/components/context-menu/context-menu.tokens.d.ts +0 -2
  693. package/lib/components/context-menu/directives/context-menu/context-menu.directive.d.ts +0 -12
  694. package/lib/components/context-menu/directives/context-menu-item/context-menu-item.directive.d.ts +0 -30
  695. package/lib/components/context-menu/models/context-menu.enum.d.ts +0 -11
  696. package/lib/components/context-menu/services/context-menu/context-menu-fixed.service.d.ts +0 -11
  697. package/lib/components/context-menu/services/context-menu/context-menu.service.d.ts +0 -56
  698. package/lib/components/form/document-editor/components/document-editor-preview-modal/document-editor-preview-modal.component.d.ts +0 -22
  699. package/lib/components/form/document-editor/document-editor.component.d.ts +0 -37
  700. package/lib/components/form/document-editor/document-editor.module.d.ts +0 -13
  701. package/lib/components/form/document-editor/helpers/transform-sysname.d.ts +0 -5
  702. package/lib/components/form/document-editor/models/document-editor-short-codes.enum.d.ts +0 -6
@@ -0,0 +1,370 @@
1
+ import { ChangeDetectionStrategy, Component, EventEmitter, forwardRef, HostListener, Input, Output, ViewChildren } from '@angular/core';
2
+ import { FormArray, FormControl, NG_VALUE_ACCESSOR, Validators } from '@angular/forms';
3
+ import { NgxOtpBehavior } from '../../models/input-opt.model';
4
+ import { InputOptSizesEnum } from './input-opt.enum';
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "../../services/input-opt.service";
7
+ import * as i2 from "@angular/forms";
8
+ import * as i3 from "@angular/common";
9
+ import * as i4 from "../../../../error-message/error-message.component";
10
+ import * as i5 from "../../directives/opt-pattern.directive";
11
+ export class InputOptComponent {
12
+ otpService;
13
+ ref;
14
+ defaultPattern = /^.+$/;
15
+ DEFAULT_ARIA_LABEL = 'One time password input';
16
+ LAST_INPUT_INDEX;
17
+ inputs;
18
+ isNgxOtpArrayDisabled = false;
19
+ ngxOtpArray$;
20
+ focusedInputHasValue = false;
21
+ isInit = false;
22
+ ngxOtpArray = new FormArray([]);
23
+ ariaLabels = [];
24
+ pattern;
25
+ styles = [];
26
+ otpConfig = {
27
+ otpLength: 6,
28
+ autofocus: true,
29
+ autoblur: true,
30
+ behavior: NgxOtpBehavior.DEFAULT,
31
+ pattern: this.defaultPattern,
32
+ classList: {
33
+ container: '',
34
+ inputBox: '',
35
+ input: '',
36
+ inputFilled: '',
37
+ inputDisabled: '',
38
+ inputSuccess: '',
39
+ inputError: '',
40
+ }
41
+ };
42
+ size = 'large';
43
+ customClasses = '';
44
+ invalid = false;
45
+ invalidMessage = '';
46
+ checkInvalid = null;
47
+ set disable(isDisabled) {
48
+ this.handleDisable(isDisabled);
49
+ this.isNgxOtpArrayDisabled = isDisabled;
50
+ }
51
+ set config(c) {
52
+ this.otpConfig = { ...this.otpConfig, ...c };
53
+ if (this.otpConfig.classList?.input) {
54
+ this.setInitialStyles();
55
+ }
56
+ if (!c.pattern) {
57
+ this.otpConfig.pattern = this.defaultPattern;
58
+ }
59
+ }
60
+ set status(status) {
61
+ this.handleStatusChange(status);
62
+ }
63
+ otpInputElements;
64
+ change = new EventEmitter();
65
+ fillChange = new EventEmitter();
66
+ constructor(otpService, ref) {
67
+ this.otpService = otpService;
68
+ this.ref = ref;
69
+ }
70
+ ngOnInit() {
71
+ this.setUpOtpForm();
72
+ this.setUpAriaLabels();
73
+ this.LAST_INPUT_INDEX = this.otpConfig.otpLength - 1;
74
+ this.otpFormChangeListener();
75
+ }
76
+ ngAfterViewInit() {
77
+ this.setNativeHTMLElements();
78
+ this.setInitialFocus();
79
+ this.setNumericInputIfPossible();
80
+ this.handleDisable(this.isNgxOtpArrayDisabled);
81
+ this.isInit = true;
82
+ }
83
+ ngOnDestroy() {
84
+ this.ngxOtpArray$.unsubscribe();
85
+ }
86
+ get isInvalidMessage() {
87
+ return !!this.invalidMessage || !!this.invalidMessage.length;
88
+ }
89
+ get checkValidClasses() {
90
+ return this.checkInvalid === false ?
91
+ 'mrx-input-checked-success' :
92
+ this.checkInvalid === true ? 'mrx-input-checked-error' : '';
93
+ }
94
+ get getClasses() {
95
+ return `${InputOptSizesEnum[this.size]} ${this.customClasses}`;
96
+ }
97
+ get getContainerClasses() {
98
+ return this.otpConfig?.classList?.container || '';
99
+ }
100
+ get getInputBoxClasses() {
101
+ return this.otpConfig?.classList?.inputBox || '';
102
+ }
103
+ convertToFormControl(absCtrl) {
104
+ return absCtrl;
105
+ }
106
+ clear() {
107
+ if (this.otpConfig.classList && this.otpConfig.classList.inputFilled) {
108
+ this.removeStyleFromAll(this.otpConfig.classList.inputFilled);
109
+ }
110
+ this.ngxOtpArray.reset();
111
+ this.ref.detectChanges();
112
+ if (this.otpConfig.autofocus) {
113
+ this.setFocus(0);
114
+ }
115
+ }
116
+ handleKeyUp(index, value) {
117
+ // @ts-ignore
118
+ if (this.otpConfig.pattern.test(value) && value !== 'Backspace') {
119
+ if (this.otpConfig.classList && this.otpConfig.classList.inputFilled) {
120
+ this.addStyle(index, this.otpConfig.classList.inputFilled);
121
+ }
122
+ if (!this.ngxOtpArray.valid) {
123
+ this.getFormControlByIndex(index).setValue(value, { emitEvent: false });
124
+ this.stepForward(index);
125
+ }
126
+ else {
127
+ this.blur();
128
+ }
129
+ }
130
+ }
131
+ handleDelete(index) {
132
+ if (this.otpConfig.classList && this.otpConfig.classList.inputFilled) {
133
+ this.removeStyle(index, this.otpConfig.classList.inputFilled);
134
+ }
135
+ if ((this.otpConfig.behavior === NgxOtpBehavior.LEGACY &&
136
+ !this.focusedInputHasValue) ||
137
+ this.otpConfig.behavior !== NgxOtpBehavior.LEGACY) {
138
+ this.stepBackward(index);
139
+ }
140
+ else {
141
+ this.focusedInputHasValue = false;
142
+ }
143
+ }
144
+ handleFocus(index) {
145
+ // @ts-ignore
146
+ this.focusedInputHasValue = !!this.ngxOtpArray.controls[index].value;
147
+ if (this.otpConfig.behavior === NgxOtpBehavior.LEGACY &&
148
+ this.focusedInputHasValue) {
149
+ this.inputs[index].select();
150
+ }
151
+ }
152
+ stepBackward(index) {
153
+ if (index > 0) {
154
+ this.setFocus(index - 1);
155
+ }
156
+ }
157
+ stepForward(index) {
158
+ if (index < this.LAST_INPUT_INDEX) {
159
+ this.setFocus(index + 1);
160
+ }
161
+ }
162
+ otpFormChangeListener() {
163
+ this.ngxOtpArray$ = this.ngxOtpArray.valueChanges.subscribe((values) => {
164
+ if (this.isInit) {
165
+ this.change.emit(values);
166
+ if (this.ngxOtpArray.valid) {
167
+ this.fillChange.emit(values.join(''));
168
+ }
169
+ }
170
+ });
171
+ }
172
+ setUpOtpForm() {
173
+ for (let i = 0; i < this.otpConfig.otpLength; i++) {
174
+ // @ts-ignore
175
+ this.ngxOtpArray.push(new FormControl('', [Validators.required]));
176
+ }
177
+ }
178
+ setUpAriaLabels() {
179
+ const labels = this.otpConfig.ariaLabels;
180
+ this.ariaLabels = Array.isArray(labels)
181
+ ? labels
182
+ : new Array(this.otpConfig.otpLength).fill(labels || this.DEFAULT_ARIA_LABEL);
183
+ }
184
+ setNativeHTMLElements() {
185
+ this.inputs = this.otpInputElements.map((element) => element.nativeElement);
186
+ }
187
+ setInitialFocus() {
188
+ if (this.otpConfig.autofocus) {
189
+ this.setFocus(0);
190
+ }
191
+ }
192
+ setInitialStyles() {
193
+ this.styles = this.otpService.init2DArray(this.otpConfig.otpLength);
194
+ if (this.otpConfig.classList && this.otpConfig.classList.input) {
195
+ this.addStyleToAll(this.otpConfig.classList.input);
196
+ }
197
+ }
198
+ setFocus(index) {
199
+ this.inputs[index].focus();
200
+ }
201
+ setNumericInputIfPossible() {
202
+ if (this.otpConfig.numericInputMode) {
203
+ this.otpConfig.pattern = this.defaultPattern;
204
+ this.inputs.map((element) => {
205
+ element.setAttribute('inputmode', 'numeric');
206
+ element.setAttribute('pattern', '[0-9]*');
207
+ });
208
+ }
209
+ }
210
+ blur() {
211
+ if (this.otpConfig.autoblur) {
212
+ this.inputs.map((input) => input.blur());
213
+ }
214
+ }
215
+ handlePaste(value) {
216
+ // @ts-ignore
217
+ if (this.otpConfig.pattern.test(value)) {
218
+ let lastIndex = 0;
219
+ value
220
+ .split('')
221
+ .slice(0, this.otpConfig.otpLength)
222
+ .map((character, index) => {
223
+ if (this.otpConfig.classList && this.otpConfig.classList.inputFilled) {
224
+ this.addStyle(index, this.otpConfig.classList.inputFilled);
225
+ }
226
+ this.getFormControlByIndex(index).setValue(character);
227
+ lastIndex = index;
228
+ });
229
+ if (this.ngxOtpArray.valid) {
230
+ this.blur();
231
+ }
232
+ else {
233
+ this.setFocus(lastIndex + 1);
234
+ }
235
+ }
236
+ }
237
+ handleDisable(isDisabled) {
238
+ if (isDisabled) {
239
+ this.ngxOtpArray.disable();
240
+ if (this.otpConfig.classList && this.otpConfig.classList.inputDisabled) {
241
+ this.addStyleToAll(this.otpConfig.classList.inputDisabled);
242
+ }
243
+ }
244
+ else {
245
+ this.ngxOtpArray.enable();
246
+ if (this.otpConfig.classList && this.otpConfig.classList.inputDisabled) {
247
+ this.removeStyleFromAll(this.otpConfig.classList.inputDisabled);
248
+ }
249
+ }
250
+ }
251
+ handleStatusChange(status) {
252
+ if (this.otpConfig.classList && (this.otpConfig.classList.inputSuccess && this.otpConfig.classList.inputError)) {
253
+ this.removeStyleFromAll([
254
+ ...this.otpService.toArray(this.otpConfig.classList.inputSuccess),
255
+ ...this.otpService.toArray(this.otpConfig.classList.inputError),
256
+ ]);
257
+ }
258
+ if (status) {
259
+ if (status === 'success') {
260
+ if (this.otpConfig.classList && this.otpConfig.classList.inputSuccess) {
261
+ this.addStyleToAll(this.otpConfig.classList.inputSuccess);
262
+ }
263
+ }
264
+ else if (status === 'error') {
265
+ if (this.otpConfig.classList && this.otpConfig.classList.inputError) {
266
+ this.addStyleToAll(this.otpConfig.classList.inputError);
267
+ }
268
+ }
269
+ }
270
+ }
271
+ getFormControlByIndex(index) {
272
+ return this.ngxOtpArray.controls[index];
273
+ }
274
+ addStyle(index, styles) {
275
+ this.styles = this.otpService.addItemAtIndex(this.styles, index, this.otpService.toArray(styles));
276
+ }
277
+ addStyleToAll(styles) {
278
+ this.styles = this.otpService.addItemToAll(this.styles, this.otpService.toArray(styles));
279
+ }
280
+ removeStyle(index, styles) {
281
+ this.styles = this.otpService.removeItemAtIndex(this.styles, index, this.otpService.toArray(styles));
282
+ }
283
+ removeStyleFromAll(styles) {
284
+ this.styles = this.otpService.removeItemFromAll(this.styles, this.otpService.toArray(styles));
285
+ }
286
+ onChange = (value) => {
287
+ };
288
+ onTouched = () => {
289
+ };
290
+ registerOnChange(fn) {
291
+ this.onChange = fn;
292
+ }
293
+ registerOnTouched(fn) {
294
+ this.onTouched = fn;
295
+ }
296
+ writeValue(outsideValue) {
297
+ if (outsideValue) {
298
+ let lastIndex = 0;
299
+ String(outsideValue)
300
+ .split('')
301
+ .slice(0, this.otpConfig.otpLength)
302
+ .map((character, index) => {
303
+ if (this.otpConfig.classList && this.otpConfig.classList.inputFilled) {
304
+ this.addStyle(index, this.otpConfig.classList.inputFilled);
305
+ }
306
+ this.getFormControlByIndex(index).setValue(character, { emitEvent: false });
307
+ lastIndex = index;
308
+ });
309
+ if (this.ngxOtpArray.valid) {
310
+ this.blur();
311
+ }
312
+ else {
313
+ this.setFocus(lastIndex + 1);
314
+ }
315
+ }
316
+ }
317
+ onPaste(event) {
318
+ event.preventDefault();
319
+ // @ts-ignore
320
+ this.handlePaste(event.clipboardData.getData('text'));
321
+ }
322
+ getInputType() {
323
+ return this.otpConfig.isPasswordInput ? 'password' : this.otpConfig.isNumberInput ? 'tel' : 'text';
324
+ }
325
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: InputOptComponent, deps: [{ token: i1.InputOptService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
326
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.11", type: InputOptComponent, selector: "mrx-input-opt", inputs: { size: "size", customClasses: "customClasses", invalid: "invalid", invalidMessage: "invalidMessage", checkInvalid: "checkInvalid", disable: "disable", config: "config", status: "status" }, outputs: { change: "change", fillChange: "fillChange" }, host: { listeners: { "paste": "onPaste($event)" } }, providers: [
327
+ {
328
+ provide: NG_VALUE_ACCESSOR,
329
+ useExisting: forwardRef(() => InputOptComponent),
330
+ multi: true,
331
+ },
332
+ ], viewQueries: [{ propertyName: "otpInputElements", predicate: ["otpInputElement"], descendants: true }], ngImport: i0, template: "<form\r\n [ngClass]=\"getContainerClasses\"\r\n class=\"mrx-input-otp-container\"\r\n [class]=\"getClasses\"\r\n>\r\n <div\r\n *ngFor=\"let control of ngxOtpArray.controls; let i = index\"\r\n [ngClass]=\"getInputBoxClasses\"\r\n [class.mrx-input-error]=\"invalid\"\r\n [class]=\"checkValidClasses\"\r\n class=\"mrx-input-otp-box\"\r\n >\r\n <label [attr.aria-label]=\"ariaLabels[i]\">\r\n <input\r\n #otpInputElement\r\n [id]=\"'mrx-input-otp-' + i\"\r\n [formControl]=\"convertToFormControl(control)\"\r\n [mrxOptPattern]=\"otpConfig.pattern\"\r\n [type]=\"getInputType()\"\r\n [ngClass]=\"styles[i]\"\r\n (keyup)=\"handleKeyUp(i, $event.key)\"\r\n (keyup.backspace)=\"handleDelete(i)\"\r\n (keyup.arrowLeft)=\"stepBackward(i)\"\r\n (keyup.arrowRight)=\"stepForward(i)\"\r\n (focus)=\"handleFocus(i)\"\r\n class=\"mrx-input-otp\"\r\n maxlength=\"1\"\r\n autocapitalize=\"off\"\r\n spellcheck=\"false\"\r\n />\r\n </label>\r\n </div>\r\n</form>\r\n\r\n<mrx-error-message\r\n *ngIf=\"invalid && isInvalidMessage\"\r\n customClasses=\"text-left\"\r\n [invalidMessage]=\"invalidMessage\"\r\n></mrx-error-message>\r\n", styles: [".mrx-input-otp{background:var(--brand-bg-tertiary-default, #FFF);color:var(--neutral-text-primary, #262626);text-align:center;outline:0}.mrx-input-otp-container{display:flex}.mrx-input-otp-box label{margin-bottom:0}.mrx-input-otp-disabled{opacity:.3}.mrx-input-otp-container.mrx-input-opt-lg{gap:12px}.mrx-input-otp-container.mrx-input-opt-lg .mrx-input-otp{width:var(--sizing-12);height:var(--sizing-12);border-radius:var(--border-radius-1);border:1px solid var(--neutral-bg-stroke-default, #DAD5CE);font-family:var(--headlines-lvl-3-font-family);font-weight:var(--headlines-lvl-3-font-weight);line-height:var(--headlines-lvl-3-line-height);font-size:var(--headlines-lvl-3-font-size)}.mrx-input-otp-container.mrx-input-opt-md{gap:10px}.mrx-input-otp-container.mrx-input-opt-md .mrx-input-otp{width:var(--sizing-10);height:var(--sizing-10);border-radius:var(--border-radius-1);border:1px solid var(--neutral-bg-stroke-default, #DAD5CE);font-family:var(--headlines-lvl-4-font-family);font-weight:var(--headlines-lvl-4-font-weight);line-height:var(--headlines-lvl-4-line-height);font-size:var(--headlines-lvl-4-font-size)}.mrx-input-otp-container.mrx-input-opt-responsive{flex-wrap:wrap;gap:12px}.mrx-input-otp-container.mrx-input-opt-responsive .mrx-input-otp{width:var(--sizing-12);height:var(--sizing-12);border-radius:var(--border-radius-1);border:1px solid var(--neutral-bg-stroke-default, #DAD5CE);font-family:var(--headlines-lvl-3-font-family);font-weight:var(--headlines-lvl-3-font-weight);line-height:var(--headlines-lvl-3-line-height);font-size:var(--headlines-lvl-3-font-size)}@media (max-width: 576px){.mrx-input-otp-container.mrx-input-opt-responsive{gap:10px}.mrx-input-otp-container.mrx-input-opt-responsive .mrx-input-otp{width:var(--sizing-10);height:var(--sizing-10);font-family:var(--headlines-lvl-4-font-family);font-weight:var(--headlines-lvl-4-font-weight);line-height:var(--headlines-lvl-4-line-height);font-size:var(--headlines-lvl-4-font-size)}}@media (max-width: 370px){.mrx-input-otp-container.mrx-input-opt-responsive{gap:8px}.mrx-input-otp-container.mrx-input-opt-responsive .mrx-input-otp{width:var(--sizing-8);height:var(--sizing-8);font-family:var(--headlines-lvl-5-font-family);font-weight:var(--headlines-lvl-5-font-weight);line-height:var(--headlines-lvl-5-line-height);font-size:var(--headlines-lvl-5-font-size)}}.mrx-input-otp-container .mrx-input-otp-box.mrx-input-error .mrx-input-otp{border-color:var(--system-bg-controls-negative-default)}.mrx-input-otp-container .mrx-input-otp-box.mrx-input-checked-error .mrx-input-otp{border-color:var(--system-bg-controls-negative-default);background-color:var(--system-bg-negative-secondary)}.mrx-input-otp-container .mrx-input-otp-box.mrx-input-checked-success .mrx-input-otp{background-color:var(--system-bg-positive-secondary);border-color:var(--system-bg-controls-positive-default)}\n"], dependencies: [{ kind: "directive", type: i2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i2.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i4.ErrorMessageComponent, selector: "mrx-error-message", inputs: ["invalid", "invalidMessage", "customClasses"] }, { kind: "directive", type: i5.OptPatternDirective, selector: "[mrxOptPattern]", inputs: ["mrxOptPattern"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
333
+ }
334
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: InputOptComponent, decorators: [{
335
+ type: Component,
336
+ args: [{ selector: 'mrx-input-opt', changeDetection: ChangeDetectionStrategy.OnPush, providers: [
337
+ {
338
+ provide: NG_VALUE_ACCESSOR,
339
+ useExisting: forwardRef(() => InputOptComponent),
340
+ multi: true,
341
+ },
342
+ ], template: "<form\r\n [ngClass]=\"getContainerClasses\"\r\n class=\"mrx-input-otp-container\"\r\n [class]=\"getClasses\"\r\n>\r\n <div\r\n *ngFor=\"let control of ngxOtpArray.controls; let i = index\"\r\n [ngClass]=\"getInputBoxClasses\"\r\n [class.mrx-input-error]=\"invalid\"\r\n [class]=\"checkValidClasses\"\r\n class=\"mrx-input-otp-box\"\r\n >\r\n <label [attr.aria-label]=\"ariaLabels[i]\">\r\n <input\r\n #otpInputElement\r\n [id]=\"'mrx-input-otp-' + i\"\r\n [formControl]=\"convertToFormControl(control)\"\r\n [mrxOptPattern]=\"otpConfig.pattern\"\r\n [type]=\"getInputType()\"\r\n [ngClass]=\"styles[i]\"\r\n (keyup)=\"handleKeyUp(i, $event.key)\"\r\n (keyup.backspace)=\"handleDelete(i)\"\r\n (keyup.arrowLeft)=\"stepBackward(i)\"\r\n (keyup.arrowRight)=\"stepForward(i)\"\r\n (focus)=\"handleFocus(i)\"\r\n class=\"mrx-input-otp\"\r\n maxlength=\"1\"\r\n autocapitalize=\"off\"\r\n spellcheck=\"false\"\r\n />\r\n </label>\r\n </div>\r\n</form>\r\n\r\n<mrx-error-message\r\n *ngIf=\"invalid && isInvalidMessage\"\r\n customClasses=\"text-left\"\r\n [invalidMessage]=\"invalidMessage\"\r\n></mrx-error-message>\r\n", styles: [".mrx-input-otp{background:var(--brand-bg-tertiary-default, #FFF);color:var(--neutral-text-primary, #262626);text-align:center;outline:0}.mrx-input-otp-container{display:flex}.mrx-input-otp-box label{margin-bottom:0}.mrx-input-otp-disabled{opacity:.3}.mrx-input-otp-container.mrx-input-opt-lg{gap:12px}.mrx-input-otp-container.mrx-input-opt-lg .mrx-input-otp{width:var(--sizing-12);height:var(--sizing-12);border-radius:var(--border-radius-1);border:1px solid var(--neutral-bg-stroke-default, #DAD5CE);font-family:var(--headlines-lvl-3-font-family);font-weight:var(--headlines-lvl-3-font-weight);line-height:var(--headlines-lvl-3-line-height);font-size:var(--headlines-lvl-3-font-size)}.mrx-input-otp-container.mrx-input-opt-md{gap:10px}.mrx-input-otp-container.mrx-input-opt-md .mrx-input-otp{width:var(--sizing-10);height:var(--sizing-10);border-radius:var(--border-radius-1);border:1px solid var(--neutral-bg-stroke-default, #DAD5CE);font-family:var(--headlines-lvl-4-font-family);font-weight:var(--headlines-lvl-4-font-weight);line-height:var(--headlines-lvl-4-line-height);font-size:var(--headlines-lvl-4-font-size)}.mrx-input-otp-container.mrx-input-opt-responsive{flex-wrap:wrap;gap:12px}.mrx-input-otp-container.mrx-input-opt-responsive .mrx-input-otp{width:var(--sizing-12);height:var(--sizing-12);border-radius:var(--border-radius-1);border:1px solid var(--neutral-bg-stroke-default, #DAD5CE);font-family:var(--headlines-lvl-3-font-family);font-weight:var(--headlines-lvl-3-font-weight);line-height:var(--headlines-lvl-3-line-height);font-size:var(--headlines-lvl-3-font-size)}@media (max-width: 576px){.mrx-input-otp-container.mrx-input-opt-responsive{gap:10px}.mrx-input-otp-container.mrx-input-opt-responsive .mrx-input-otp{width:var(--sizing-10);height:var(--sizing-10);font-family:var(--headlines-lvl-4-font-family);font-weight:var(--headlines-lvl-4-font-weight);line-height:var(--headlines-lvl-4-line-height);font-size:var(--headlines-lvl-4-font-size)}}@media (max-width: 370px){.mrx-input-otp-container.mrx-input-opt-responsive{gap:8px}.mrx-input-otp-container.mrx-input-opt-responsive .mrx-input-otp{width:var(--sizing-8);height:var(--sizing-8);font-family:var(--headlines-lvl-5-font-family);font-weight:var(--headlines-lvl-5-font-weight);line-height:var(--headlines-lvl-5-line-height);font-size:var(--headlines-lvl-5-font-size)}}.mrx-input-otp-container .mrx-input-otp-box.mrx-input-error .mrx-input-otp{border-color:var(--system-bg-controls-negative-default)}.mrx-input-otp-container .mrx-input-otp-box.mrx-input-checked-error .mrx-input-otp{border-color:var(--system-bg-controls-negative-default);background-color:var(--system-bg-negative-secondary)}.mrx-input-otp-container .mrx-input-otp-box.mrx-input-checked-success .mrx-input-otp{background-color:var(--system-bg-positive-secondary);border-color:var(--system-bg-controls-positive-default)}\n"] }]
343
+ }], ctorParameters: () => [{ type: i1.InputOptService }, { type: i0.ChangeDetectorRef }], propDecorators: { size: [{
344
+ type: Input
345
+ }], customClasses: [{
346
+ type: Input
347
+ }], invalid: [{
348
+ type: Input
349
+ }], invalidMessage: [{
350
+ type: Input
351
+ }], checkInvalid: [{
352
+ type: Input
353
+ }], disable: [{
354
+ type: Input
355
+ }], config: [{
356
+ type: Input
357
+ }], status: [{
358
+ type: Input
359
+ }], otpInputElements: [{
360
+ type: ViewChildren,
361
+ args: ['otpInputElement']
362
+ }], change: [{
363
+ type: Output
364
+ }], fillChange: [{
365
+ type: Output
366
+ }], onPaste: [{
367
+ type: HostListener,
368
+ args: ['paste', ['$event']]
369
+ }] } });
370
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtb3B0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL215cnRhLXVpL3NyYy9saWIvY29tcG9uZW50cy9mb3JtL2lucHV0LW9wdC9jb21wb25lbnRzL2lucHV0LW9wdC9pbnB1dC1vcHQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbXlydGEtdWkvc3JjL2xpYi9jb21wb25lbnRzL2Zvcm0vaW5wdXQtb3B0L2NvbXBvbmVudHMvaW5wdXQtb3B0L2lucHV0LW9wdC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFFVCxZQUFZLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxLQUFLLEVBRTdDLE1BQU0sRUFFTixZQUFZLEVBQ2IsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFtQixTQUFTLEVBQUUsV0FBVyxFQUFFLGlCQUFpQixFQUFFLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3hHLE9BQU8sRUFBRSxjQUFjLEVBQW1DLE1BQU0sOEJBQThCLENBQUM7QUFHL0YsT0FBTyxFQUFFLGlCQUFpQixFQUFzQixNQUFNLGtCQUFrQixDQUFDOzs7Ozs7O0FBZ0J6RSxNQUFNLE9BQU8saUJBQWlCO0lBK0RUO0lBQ0E7SUEvRFgsY0FBYyxHQUFHLE1BQU0sQ0FBQztJQUN4QixrQkFBa0IsR0FBRyx5QkFBeUIsQ0FBQztJQUMvQyxnQkFBZ0IsQ0FBVTtJQUMxQixNQUFNLENBQXNCO0lBQzVCLHFCQUFxQixHQUFHLEtBQUssQ0FBQztJQUM5QixZQUFZLENBQWdCO0lBQzVCLG9CQUFvQixHQUFHLEtBQUssQ0FBQztJQUM3QixNQUFNLEdBQUcsS0FBSyxDQUFDO0lBRXZCLFdBQVcsR0FBRyxJQUFJLFNBQVMsQ0FBQyxFQUFFLENBQUMs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QU87c0JBQXRCLEtBQUs7Z0JBQ1UsY0FBYztzQkFBN0IsS0FBSztnQkFDVSxZQUFZO3NCQUEzQixLQUFLO2dCQUVPLE9BQU87c0JBQW5CLEtBQUs7Z0JBS08sTUFBTTtzQkFBbEIsS0FBSztnQkFVTyxNQUFNO3NCQUFsQixLQUFLO2dCQUkyQixnQkFBZ0I7c0JBQWhELFlBQVk7dUJBQUMsaUJBQWlCO2dCQUVyQixNQUFNO3NCQUFmLE1BQU07Z0JBQ0csVUFBVTtzQkFBbkIsTUFBTTtnQkE0VDRCLE9BQU87c0JBQXpDLFlBQVk7dUJBQUMsT0FBTyxFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBBZnRlclZpZXdJbml0LFxyXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDaGFuZ2VEZXRlY3RvclJlZixcclxuICBDb21wb25lbnQsXHJcbiAgRWxlbWVudFJlZixcclxuICBFdmVudEVtaXR0ZXIsIGZvcndhcmRSZWYsIEhvc3RMaXN0ZW5lciwgSW5wdXQsIE9uRGVzdHJveSxcclxuICBPbkluaXQsXHJcbiAgT3V0cHV0LFxyXG4gIFF1ZXJ5TGlzdCxcclxuICBWaWV3Q2hpbGRyZW5cclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQWJzdHJhY3RDb250cm9sLCBGb3JtQXJyYXksIEZvcm1Db250cm9sLCBOR19WQUxVRV9BQ0NFU1NPUiwgVmFsaWRhdG9ycyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgTmd4T3RwQmVoYXZpb3IsIE5neE90cElucHV0Q29uZmlnLCBOZ3hPdHBTdGF0dXMgfSBmcm9tICcuLi8uLi9tb2RlbHMvaW5wdXQtb3B0Lm1vZGVsJztcclxuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IElucHV0T3B0U2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2lucHV0LW9wdC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgSW5wdXRPcHRTaXplc0VudW0sIElucHV0T3B0U2l6ZXNUeXBlcyB9IGZyb20gJy4vaW5wdXQtb3B0LmVudW0nO1xyXG5pbXBvcnQgeyBJbnB1dFRleHRWYWx1ZVR5cGVzIH0gZnJvbSAnLi4vLi4vLi4vaW5wdXQtdGV4dC9pbnB1dC10ZXh0LmVudW0nO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdtcngtaW5wdXQtb3B0JyxcclxuICB0ZW1wbGF0ZVVybDogJy4vaW5wdXQtb3B0LmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9pbnB1dC1vcHQuY29tcG9uZW50Lmxlc3MnXSxcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxuICBwcm92aWRlcnM6IFtcclxuICAgIHtcclxuICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXHJcbiAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IElucHV0T3B0Q29tcG9uZW50KSxcclxuICAgICAgbXVsdGk6IHRydWUsXHJcbiAgICB9LFxyXG4gIF0sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBJbnB1dE9wdENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95IHtcclxuICBwcml2YXRlIGRlZmF1bHRQYXR0ZXJuID0gL14uKyQvO1xyXG4gIHByaXZhdGUgREVGQVVMVF9BUklBX0xBQkVMID0gJ09uZSB0aW1lIHBhc3N3b3JkIGlucHV0JztcclxuICBwcml2YXRlIExBU1RfSU5QVVRfSU5ERVghOiBudW1iZXI7XHJcbiAgcHJpdmF0ZSBpbnB1dHMhOiBIVE1MSW5wdXRFbGVtZW50W107XHJcbiAgcHJpdmF0ZSBpc05neE90cEFycmF5RGlzYWJsZWQgPSBmYWxzZTtcclxuICBwcml2YXRlIG5neE90cEFycmF5JCE6IFN1YnNjcmlwdGlvbjtcclxuICBwcml2YXRlIGZvY3VzZWRJbnB1dEhhc1ZhbHVlID0gZmFsc2U7XHJcbiAgcHJpdmF0ZSBpc0luaXQgPSBmYWxzZTtcclxuXHJcbiAgbmd4T3RwQXJyYXkgPSBuZXcgRm9ybUFycmF5KFtdKTtcclxuICBhcmlhTGFiZWxzOiBzdHJpbmdbXSA9IFtdO1xyXG4gIHBhdHRlcm4hOiBSZWdFeHA7XHJcbiAgc3R5bGVzOiBzdHJpbmdbXVtdID0gW107XHJcblxyXG4gIG90cENvbmZpZzogTmd4T3RwSW5wdXRDb25maWcgPSB7XHJcbiAgICBvdHBMZW5ndGg6IDYsXHJcbiAgICBhdXRvZm9jdXM6IHRydWUsXHJcbiAgICBhdXRvYmx1cjogdHJ1ZSxcclxuICAgIGJlaGF2aW9yOiBOZ3hPdHBCZWhhdmlvci5ERUZBVUxULFxyXG4gICAgcGF0dGVybjogdGhpcy5kZWZhdWx0UGF0dGVybixcclxuICAgIGNsYXNzTGlzdDoge1xyXG4gICAgICBjb250YWluZXI6ICcnLFxyXG4gICAgICBpbnB1dEJveDogJycsXHJcbiAgICAgIGlucHV0OiAnJyxcclxuICAgICAgaW5wdXRGaWxsZWQ6ICcnLFxyXG4gICAgICBpbnB1dERpc2FibGVkOiAnJyxcclxuICAgICAgaW5wdXRTdWNjZXNzOiAnJyxcclxuICAgICAgaW5wdXRFcnJvcjogJycsXHJcbiAgICB9XHJcbiAgfTtcclxuXHJcbiAgQElucHV0KCkgcHVibGljIHNpemU6IElucHV0T3B0U2l6ZXNUeXBlcyA9ICdsYXJnZSc7XHJcbiAgQElucHV0KCkgcHVibGljIGN1c3RvbUNsYXNzZXMgPSAnJztcclxuICBASW5wdXQoKSBwdWJsaWMgaW52YWxpZCA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBpbnZhbGlkTWVzc2FnZTogc3RyaW5nIHwgc3RyaW5nW10gPSAnJztcclxuICBASW5wdXQoKSBwdWJsaWMgY2hlY2tJbnZhbGlkOiB0cnVlIHwgZmFsc2UgfCBudWxsID0gbnVsbDtcclxuXHJcbiAgQElucHV0KCkgc2V0IGRpc2FibGUoaXNEaXNhYmxlZDogYm9vbGVhbikge1xyXG4gICAgdGhpcy5oYW5kbGVEaXNhYmxlKGlzRGlzYWJsZWQpO1xyXG4gICAgdGhpcy5pc05neE90cEFycmF5RGlzYWJsZWQgPSBpc0Rpc2FibGVkO1xyXG4gIH1cclxuXHJcbiAgQElucHV0KCkgc2V0IGNvbmZpZyhjOiBOZ3hPdHBJbnB1dENvbmZpZykge1xyXG4gICAgdGhpcy5vdHBDb25maWcgPSB7Li4udGhpcy5vdHBDb25maWcsIC4uLmN9O1xyXG4gICAgaWYgKHRoaXMub3RwQ29uZmlnLmNsYXNzTGlzdD8uaW5wdXQpIHtcclxuICAgICAgdGhpcy5zZXRJbml0aWFsU3R5bGVzKCk7XHJcbiAgICB9XHJcbiAgICBpZiAoIWMucGF0dGVybikge1xyXG4gICAgICB0aGlzLm90cENvbmZpZy5wYXR0ZXJuID0gdGhpcy5kZWZhdWx0UGF0dGVybjtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIEBJbnB1dCgpIHNldCBzdGF0dXMoc3RhdHVzOiBOZ3hPdHBTdGF0dXMpIHtcclxuICAgIHRoaXMuaGFuZGxlU3RhdHVzQ2hhbmdlKHN0YXR1cyk7XHJcbiAgfVxyXG5cclxuICBAVmlld0NoaWxkcmVuKCdvdHBJbnB1dEVsZW1lbnQnKSBvdHBJbnB1dEVsZW1lbnRzITogUXVlcnlMaXN0PEVsZW1lbnRSZWY+O1xyXG5cclxuICBAT3V0cHV0KCkgY2hhbmdlOiBFdmVudEVtaXR0ZXI8c3RyaW5nW10+ID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmdbXT4oKTtcclxuICBAT3V0cHV0KCkgZmlsbENoYW5nZTogRXZlbnRFbWl0dGVyPHN0cmluZz4gPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKTtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IG90cFNlcnZpY2U6IElucHV0T3B0U2VydmljZSxcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgcmVmOiBDaGFuZ2VEZXRlY3RvclJlZlxyXG4gICkge1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLnNldFVwT3RwRm9ybSgpO1xyXG4gICAgdGhpcy5zZXRVcEFyaWFMYWJlbHMoKTtcclxuICAgIHRoaXMuTEFTVF9JTlBVVF9JTkRFWCA9IHRoaXMub3RwQ29uZmlnLm90cExlbmd0aCAtIDE7XHJcbiAgICB0aGlzLm90cEZvcm1DaGFuZ2VMaXN0ZW5lcigpO1xyXG4gIH1cclxuXHJcbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5zZXROYXRpdmVIVE1MRWxlbWVudHMoKTtcclxuICAgIHRoaXMuc2V0SW5pdGlhbEZvY3VzKCk7XHJcbiAgICB0aGlzLnNldE51bWVyaWNJbnB1dElmUG9zc2libGUoKTtcclxuICAgIHRoaXMuaGFuZGxlRGlzYWJsZSh0aGlzLmlzTmd4T3RwQXJyYXlEaXNhYmxlZCk7XHJcbiAgICB0aGlzLmlzSW5pdCA9IHRydWU7XHJcbiAgfVxyXG5cclxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgIHRoaXMubmd4T3RwQXJyYXkkLnVuc3Vic2NyaWJlKCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0IGlzSW52YWxpZE1lc3NhZ2UoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gISF0aGlzLmludmFsaWRNZXNzYWdlIHx8ICEhdGhpcy5pbnZhbGlkTWVzc2FnZS5sZW5ndGg7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0IGNoZWNrVmFsaWRDbGFzc2VzKCk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gdGhpcy5jaGVja0ludmFsaWQgPT09IGZhbHNlID9cclxuICAgICAgJ21yeC1pbnB1dC1jaGVja2VkLXN1Y2Nlc3MnIDpcclxuICAgICAgdGhpcy5jaGVja0ludmFsaWQgPT09IHRydWUgPyAnbXJ4LWlucHV0LWNoZWNrZWQtZXJyb3InIDogJyc7XHJcbiAgfVxyXG5cclxuICBnZXQgZ2V0Q2xhc3NlcygpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIGAke0lucHV0T3B0U2l6ZXNFbnVtW3RoaXMuc2l6ZV19ICR7dGhpcy5jdXN0b21DbGFzc2VzfWA7XHJcbiAgfVxyXG5cclxuICBnZXQgZ2V0Q29udGFpbmVyQ2xhc3NlcygpOiBzdHJpbmcgfCBzdHJpbmdbXSB7XHJcbiAgICByZXR1cm4gdGhpcy5vdHBDb25maWc/LmNsYXNzTGlzdD8uY29udGFpbmVyIHx8ICcnXHJcbiAgfVxyXG5cclxuICBnZXQgZ2V0SW5wdXRCb3hDbGFzc2VzKCk6IHN0cmluZyB8IHN0cmluZ1tdIHtcclxuICAgIHJldHVybiB0aGlzLm90cENvbmZpZz8uY2xhc3NMaXN0Py5pbnB1dEJveCB8fCAnJ1xyXG4gIH1cclxuXHJcbiAgY29udmVydFRvRm9ybUNvbnRyb2woYWJzQ3RybDogQWJzdHJhY3RDb250cm9sIHwgbnVsbCk6IEZvcm1Db250cm9sIHtcclxuICAgIHJldHVybiBhYnNDdHJsIGFzIEZvcm1Db250cm9sO1xyXG4gIH1cclxuXHJcbiAgY2xlYXIoKTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy5vdHBDb25maWcuY2xhc3NMaXN0ICYmIHRoaXMub3RwQ29uZmlnLmNsYXNzTGlzdC5pbnB1dEZpbGxlZCkge1xyXG4gICAgICB0aGlzLnJlbW92ZVN0eWxlRnJvbUFsbCh0aGlzLm90cENvbmZpZy5jbGFzc0xpc3QuaW5wdXRGaWxsZWQpO1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMubmd4T3RwQXJyYXkucmVzZXQoKTtcclxuICAgIHRoaXMucmVmLmRldGVjdENoYW5nZXMoKTtcclxuXHJcbiAgICBpZiAodGhpcy5vdHBDb25maWcuYXV0b2ZvY3VzKSB7XHJcbiAgICAgIHRoaXMuc2V0Rm9jdXMoMCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBoYW5kbGVLZXlVcChpbmRleDogbnVtYmVyLCB2YWx1ZTogc3RyaW5nKTogdm9pZCB7XHJcbiAgICAvLyBAdHMtaWdub3JlXHJcbiAgICBpZiAodGhpcy5vdHBDb25maWcucGF0dGVybi50ZXN0KHZhbHVlKSAmJiB2YWx1ZSAhPT0gJ0JhY2tzcGFjZScpIHtcclxuICAgICAgaWYgKHRoaXMub3RwQ29uZmlnLmNsYXNzTGlzdCAmJiB0aGlzLm90cENvbmZpZy5jbGFzc0xpc3QuaW5wdXRGaWxsZWQpIHtcclxuICAgICAgICB0aGlzLmFkZFN0eWxlKGluZGV4LCB0aGlzLm90cENvbmZpZy5jbGFzc0xpc3QuaW5wdXRGaWxsZWQpO1xyXG4gICAgICB9XHJcbiAgICAgIGlmICghdGhpcy5uZ3hPdHBBcnJheS52YWxpZCkge1xyXG4gICAgICAgIHRoaXMuZ2V0Rm9ybUNvbnRyb2xCeUluZGV4KGluZGV4KS5zZXRWYWx1ZSh2YWx1ZSwge2VtaXRFdmVudDogZmFsc2V9KTtcclxuICAgICAgICB0aGlzLnN0ZXBGb3J3YXJkKGluZGV4KTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICB0aGlzLmJsdXIoKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgaGFuZGxlRGVsZXRlKGluZGV4OiBudW1iZXIpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLm90cENvbmZpZy5jbGFzc0xpc3QgJiYgdGhpcy5vdHBDb25maWcuY2xhc3NMaXN0LmlucHV0RmlsbGVkKSB7XHJcbiAgICAgIHRoaXMucmVtb3ZlU3R5bGUoaW5kZXgsIHRoaXMub3RwQ29uZmlnLmNsYXNzTGlzdC5pbnB1dEZpbGxlZCk7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKFxyXG4gICAgICAodGhpcy5vdHBDb25maWcuYmVoYXZpb3IgPT09IE5neE90cEJlaGF2aW9yLkxFR0FDWSAmJlxyXG4gICAgICAgICF0aGlzLmZvY3VzZWRJbnB1dEhhc1ZhbHVlKSB8fFxyXG4gICAgICB0aGlzLm90cENvbmZpZy5iZWhhdmlvciAhPT0gTmd4T3RwQmVoYXZpb3IuTEVHQUNZXHJcbiAgICApIHtcclxuICAgICAgdGhpcy5zdGVwQmFja3dhcmQoaW5kZXgpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5mb2N1c2VkSW5wdXRIYXNWYWx1ZSA9IGZhbHNlO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgaGFuZGxlRm9jdXMoaW5kZXg6IG51bWJlcik6IHZvaWQge1xyXG4gICAgLy8gQHRzLWlnbm9yZVxyXG4gICAgdGhpcy5mb2N1c2VkSW5wdXRIYXNWYWx1ZSA9ICEhdGhpcy5uZ3hPdHBBcnJheS5jb250cm9sc1tpbmRleF0udmFsdWU7XHJcbiAgICBpZiAoXHJcbiAgICAgIHRoaXMub3RwQ29uZmlnLmJlaGF2aW9yID09PSBOZ3hPdHBCZWhhdmlvci5MRUdBQ1kgJiZcclxuICAgICAgdGhpcy5mb2N1c2VkSW5wdXRIYXNWYWx1ZVxyXG4gICAgKSB7XHJcbiAgICAgIHRoaXMuaW5wdXRzW2luZGV4XS5zZWxlY3QoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHN0ZXBCYWNrd2FyZChpbmRleDogbnVtYmVyKTogdm9pZCB7XHJcbiAgICBpZiAoaW5kZXggPiAwKSB7XHJcbiAgICAgIHRoaXMuc2V0Rm9jdXMoaW5kZXggLSAxKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHN0ZXBGb3J3YXJkKGluZGV4OiBudW1iZXIpOiB2b2lkIHtcclxuICAgIGlmIChpbmRleCA8IHRoaXMuTEFTVF9JTlBVVF9JTkRFWCkge1xyXG4gICAgICB0aGlzLnNldEZvY3VzKGluZGV4ICsgMSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIG90cEZvcm1DaGFuZ2VMaXN0ZW5lcigpOiB2b2lkIHtcclxuICAgIHRoaXMubmd4T3RwQXJyYXkkID0gdGhpcy5uZ3hPdHBBcnJheS52YWx1ZUNoYW5nZXMuc3Vic2NyaWJlKCh2YWx1ZXMpID0+IHtcclxuICAgICAgaWYgKHRoaXMuaXNJbml0KSB7XHJcbiAgICAgICAgdGhpcy5jaGFuZ2UuZW1pdCh2YWx1ZXMpO1xyXG5cclxuICAgICAgICBpZiAodGhpcy5uZ3hPdHBBcnJheS52YWxpZCkge1xyXG4gICAgICAgICAgdGhpcy5maWxsQ2hhbmdlLmVtaXQodmFsdWVzLmpvaW4oJycpKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBzZXRVcE90cEZvcm0oKTogdm9pZCB7XHJcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IHRoaXMub3RwQ29uZmlnLm90cExlbmd0aDsgaSsrKSB7XHJcbiAgICAgIC8vIEB0cy1pZ25vcmVcclxuICAgICAgdGhpcy5uZ3hPdHBBcnJheS5wdXNoKG5ldyBGb3JtQ29udHJvbCgnJywgW1ZhbGlkYXRvcnMucmVxdWlyZWRdKSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHNldFVwQXJpYUxhYmVscygpOiB2b2lkIHtcclxuICAgIGNvbnN0IGxhYmVscyA9IHRoaXMub3RwQ29uZmlnLmFyaWFMYWJlbHM7XHJcblxyXG4gICAgdGhpcy5hcmlhTGFiZWxzID0gQXJyYXkuaXNBcnJheShsYWJlbHMpXHJcbiAgICAgID8gbGFiZWxzXHJcbiAgICAgIDogbmV3IEFycmF5KHRoaXMub3RwQ29uZmlnLm90cExlbmd0aCkuZmlsbChcclxuICAgICAgICBsYWJlbHMgfHwgdGhpcy5ERUZBVUxUX0FSSUFfTEFCRUxcclxuICAgICAgKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgc2V0TmF0aXZlSFRNTEVsZW1lbnRzKCk6IHZvaWQge1xyXG4gICAgdGhpcy5pbnB1dHMgPSB0aGlzLm90cElucHV0RWxlbWVudHMubWFwKChlbGVtZW50KSA9PiBlbGVtZW50Lm5hdGl2ZUVsZW1lbnQpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBzZXRJbml0aWFsRm9jdXMoKTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy5vdHBDb25maWcuYXV0b2ZvY3VzKSB7XHJcbiAgICAgIHRoaXMuc2V0Rm9jdXMoMCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHNldEluaXRpYWxTdHlsZXMoKTogdm9pZCB7XHJcbiAgICB0aGlzLnN0eWxlcyA9IHRoaXMub3RwU2VydmljZS5pbml0MkRBcnJheSh0aGlzLm90cENvbmZpZy5vdHBMZW5ndGgpO1xyXG5cclxuICAgIGlmICh0aGlzLm90cENvbmZpZy5jbGFzc0xpc3QgJiYgdGhpcy5vdHBDb25maWcuY2xhc3NMaXN0LmlucHV0KSB7XHJcbiAgICAgIHRoaXMuYWRkU3R5bGVUb0FsbCh0aGlzLm90cENvbmZpZy5jbGFzc0xpc3QuaW5wdXQpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBzZXRGb2N1cyhpbmRleDogbnVtYmVyKTogdm9pZCB7XHJcbiAgICB0aGlzLmlucHV0c1tpbmRleF0uZm9jdXMoKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgc2V0TnVtZXJpY0lucHV0SWZQb3NzaWJsZSgpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLm90cENvbmZpZy5udW1lcmljSW5wdXRNb2RlKSB7XHJcbiAgICAgIHRoaXMub3RwQ29uZmlnLnBhdHRlcm4gPSB0aGlzLmRlZmF1bHRQYXR0ZXJuO1xyXG4gICAgICB0aGlzLmlucHV0cy5tYXAoKGVsZW1lbnQpID0+IHtcclxuICAgICAgICBlbGVtZW50LnNldEF0dHJpYnV0ZSgnaW5wdXRtb2RlJywgJ251bWVyaWMnKTtcclxuICAgICAgICBlbGVtZW50LnNldEF0dHJpYnV0ZSgncGF0dGVybicsICdbMC05XSonKTtcclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGJsdXIoKTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy5vdHBDb25maWcuYXV0b2JsdXIpIHtcclxuICAgICAgdGhpcy5pbnB1dHMubWFwKChpbnB1dCkgPT4gaW5wdXQuYmx1cigpKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgaGFuZGxlUGFzdGUodmFsdWU6IHN0cmluZyk6IHZvaWQge1xyXG4gICAgLy8gQHRzLWlnbm9yZVxyXG4gICAgaWYgKHRoaXMub3RwQ29uZmlnLnBhdHRlcm4udGVzdCh2YWx1ZSkpIHtcclxuICAgICAgbGV0IGxhc3RJbmRleCA9IDA7XHJcbiAgICAgIHZhbHVlXHJcbiAgICAgICAgLnNwbGl0KCcnKVxyXG4gICAgICAgIC5zbGljZSgwLCB0aGlzLm90cENvbmZpZy5vdHBMZW5ndGgpXHJcbiAgICAgICAgLm1hcCgoY2hhcmFjdGVyOiBzdHJpbmcsIGluZGV4OiBudW1iZXIpID0+IHtcclxuICAgICAgICAgIGlmICh0aGlzLm90cENvbmZpZy5jbGFzc0xpc3QgJiYgdGhpcy5vdHBDb25maWcuY2xhc3NMaXN0LmlucHV0RmlsbGVkKSB7XHJcbiAgICAgICAgICAgIHRoaXMuYWRkU3R5bGUoaW5kZXgsIHRoaXMub3RwQ29uZmlnLmNsYXNzTGlzdC5pbnB1dEZpbGxlZCk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICB0aGlzLmdldEZvcm1Db250cm9sQnlJbmRleChpbmRleCkuc2V0VmFsdWUoY2hhcmFjdGVyKTtcclxuICAgICAgICAgIGxhc3RJbmRleCA9IGluZGV4O1xyXG4gICAgICAgIH0pO1xyXG5cclxuICAgICAgaWYgKHRoaXMubmd4T3RwQXJyYXkudmFsaWQpIHtcclxuICAgICAgICB0aGlzLmJsdXIoKTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICB0aGlzLnNldEZvY3VzKGxhc3RJbmRleCArIDEpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGhhbmRsZURpc2FibGUoaXNEaXNhYmxlZDogYm9vbGVhbik6IHZvaWQge1xyXG4gICAgaWYgKGlzRGlzYWJsZWQpIHtcclxuICAgICAgdGhpcy5uZ3hPdHBBcnJheS5kaXNhYmxlKCk7XHJcbiAgICAgIGlmICh0aGlzLm90cENvbmZpZy5jbGFzc0xpc3QgJiYgdGhpcy5vdHBDb25maWcuY2xhc3NMaXN0LmlucHV0RGlzYWJsZWQpIHtcclxuICAgICAgICB0aGlzLmFkZFN0eWxlVG9BbGwodGhpcy5vdHBDb25maWcuY2xhc3NMaXN0LmlucHV0RGlzYWJsZWQpO1xyXG4gICAgICB9XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLm5neE90cEFycmF5LmVuYWJsZSgpO1xyXG4gICAgICBpZiAodGhpcy5vdHBDb25maWcuY2xhc3NMaXN0ICYmIHRoaXMub3RwQ29uZmlnLmNsYXNzTGlzdC5pbnB1dERpc2FibGVkKSB7XHJcbiAgICAgICAgdGhpcy5yZW1vdmVTdHlsZUZyb21BbGwodGhpcy5vdHBDb25maWcuY2xhc3NMaXN0LmlucHV0RGlzYWJsZWQpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGhhbmRsZVN0YXR1c0NoYW5nZShzdGF0dXM6IE5neE90cFN0YXR1cyk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMub3RwQ29uZmlnLmNsYXNzTGlzdCAmJiAodGhpcy5vdHBDb25maWcuY2xhc3NMaXN0LmlucHV0U3VjY2VzcyAmJiB0aGlzLm90cENvbmZpZy5jbGFzc0xpc3QuaW5wdXRFcnJvcikpIHtcclxuICAgICAgdGhpcy5yZW1vdmVTdHlsZUZyb21BbGwoW1xyXG4gICAgICAgIC4uLnRoaXMub3RwU2VydmljZS50b0FycmF5KFxyXG4gICAgICAgICAgdGhpcy5vdHBDb25maWcuY2xhc3NMaXN0LmlucHV0U3VjY2Vzc1xyXG4gICAgICAgICksXHJcbiAgICAgICAgLi4udGhpcy5vdHBTZXJ2aWNlLnRvQXJyYXkodGhpcy5vdHBDb25maWcuY2xhc3NMaXN0LmlucHV0RXJyb3IpLFxyXG4gICAgICBdKTtcclxuICAgIH1cclxuXHJcbiAgICBpZiAoc3RhdHVzKSB7XHJcbiAgICAgIGlmIChzdGF0dXMgPT09ICdzdWNjZXNzJykge1xyXG4gICAgICAgIGlmICh0aGlzLm90cENvbmZpZy5jbGFzc0xpc3QgJiYgdGhpcy5vdHBDb25maWcuY2xhc3NMaXN0LmlucHV0U3VjY2Vzcykge1xyXG4gICAgICAgICAgdGhpcy5hZGRTdHlsZVRvQWxsKHRoaXMub3RwQ29uZmlnLmNsYXNzTGlzdC5pbnB1dFN1Y2Nlc3MpO1xyXG4gICAgICAgIH1cclxuICAgICAgfSBlbHNlIGlmIChzdGF0dXMgPT09ICdlcnJvcicpIHtcclxuICAgICAgICBpZiAodGhpcy5vdHBDb25maWcuY2xhc3NMaXN0ICYmIHRoaXMub3RwQ29uZmlnLmNsYXNzTGlzdC5pbnB1dEVycm9yKSB7XHJcbiAgICAgICAgICB0aGlzLmFkZFN0eWxlVG9BbGwodGhpcy5vdHBDb25maWcuY2xhc3NMaXN0LmlucHV0RXJyb3IpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBnZXRGb3JtQ29udHJvbEJ5SW5kZXgoaW5kZXg6IG51bWJlcik6IEZvcm1Db250cm9sIHtcclxuICAgIHJldHVybiB0aGlzLm5neE90cEFycmF5LmNvbnRyb2xzW2luZGV4XSBhcyBGb3JtQ29udHJvbDtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgYWRkU3R5bGUoaW5kZXg6IG51bWJlciwgc3R5bGVzOiBzdHJpbmcgfCBzdHJpbmdbXSk6IHZvaWQge1xyXG4gICAgdGhpcy5zdHlsZXMgPSB0aGlzLm90cFNlcnZpY2UuYWRkSXRlbUF0SW5kZXgoXHJcbiAgICAgIHRoaXMuc3R5bGVzLFxyXG4gICAgICBpbmRleCxcclxuICAgICAgdGhpcy5vdHBTZXJ2aWNlLnRvQXJyYXkoc3R5bGVzKVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgYWRkU3R5bGVUb0FsbChzdHlsZXM6IHN0cmluZyB8IHN0cmluZ1tdKTogdm9pZCB7XHJcbiAgICB0aGlzLnN0eWxlcyA9IHRoaXMub3RwU2VydmljZS5hZGRJdGVtVG9BbGwoXHJcbiAgICAgIHRoaXMuc3R5bGVzLFxyXG4gICAgICB0aGlzLm90cFNlcnZpY2UudG9BcnJheShzdHlsZXMpXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSByZW1vdmVTdHlsZShpbmRleDogbnVtYmVyLCBzdHlsZXM6IHN0cmluZyB8IHN0cmluZ1tdKTogdm9pZCB7XHJcbiAgICB0aGlzLnN0eWxlcyA9IHRoaXMub3RwU2VydmljZS5yZW1vdmVJdGVtQXRJbmRleChcclxuICAgICAgdGhpcy5zdHlsZXMsXHJcbiAgICAgIGluZGV4LFxyXG4gICAgICB0aGlzLm90cFNlcnZpY2UudG9BcnJheShzdHlsZXMpXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSByZW1vdmVTdHlsZUZyb21BbGwoc3R5bGVzOiBzdHJpbmcgfCBzdHJpbmdbXSk6IHZvaWQge1xyXG4gICAgdGhpcy5zdHlsZXMgPSB0aGlzLm90cFNlcnZpY2UucmVtb3ZlSXRlbUZyb21BbGwoXHJcbiAgICAgIHRoaXMuc3R5bGVzLFxyXG4gICAgICB0aGlzLm90cFNlcnZpY2UudG9BcnJheShzdHlsZXMpXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBvbkNoYW5nZSA9ICh2YWx1ZTogSW5wdXRUZXh0VmFsdWVUeXBlcykgPT4ge1xyXG4gIH07XHJcbiAgcHJpdmF0ZSBvblRvdWNoZWQgPSAoKSA9PiB7XHJcbiAgfTtcclxuXHJcbiAgcHVibGljIHJlZ2lzdGVyT25DaGFuZ2UoZm46IGFueSkge1xyXG4gICAgdGhpcy5vbkNoYW5nZSA9IGZuO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiAoKSA9PiB7fSk6IHZvaWQge1xyXG4gICAgdGhpcy5vblRvdWNoZWQgPSBmbjtcclxuICB9XHJcblxyXG4gIHB1YmxpYyB3cml0ZVZhbHVlKG91dHNpZGVWYWx1ZTogSW5wdXRUZXh0VmFsdWVUeXBlcykge1xyXG4gICAgaWYgKG91dHNpZGVWYWx1ZSkge1xyXG4gICAgICBsZXQgbGFzdEluZGV4ID0gMDtcclxuICAgICAgU3RyaW5nKG91dHNpZGVWYWx1ZSlcclxuICAgICAgICAuc3BsaXQoJycpXHJcbiAgICAgICAgLnNsaWNlKDAsIHRoaXMub3RwQ29uZmlnLm90cExlbmd0aClcclxuICAgICAgICAubWFwKChjaGFyYWN0ZXI6IHN0cmluZywgaW5kZXg6IG51bWJlcikgPT4ge1xyXG4gICAgICAgICAgaWYgKHRoaXMub3RwQ29uZmlnLmNsYXNzTGlzdCAmJiB0aGlzLm90cENvbmZpZy5jbGFzc0xpc3QuaW5wdXRGaWxsZWQpIHtcclxuICAgICAgICAgICAgdGhpcy5hZGRTdHlsZShpbmRleCwgdGhpcy5vdHBDb25maWcuY2xhc3NMaXN0LmlucHV0RmlsbGVkKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIHRoaXMuZ2V0Rm9ybUNvbnRyb2xCeUluZGV4KGluZGV4KS5zZXRWYWx1ZShjaGFyYWN0ZXIsIHtlbWl0RXZlbnQ6IGZhbHNlfSk7XHJcbiAgICAgICAgICBsYXN0SW5kZXggPSBpbmRleDtcclxuICAgICAgICB9KTtcclxuXHJcbiAgICAgIGlmICh0aGlzLm5neE90cEFycmF5LnZhbGlkKSB7XHJcbiAgICAgICAgdGhpcy5ibHVyKCk7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgdGhpcy5zZXRGb2N1cyhsYXN0SW5kZXggKyAxKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgQEhvc3RMaXN0ZW5lcigncGFzdGUnLCBbJyRldmVudCddKSBvblBhc3RlKGV2ZW50OiBDbGlwYm9hcmRFdmVudCk6IHZvaWQge1xyXG4gICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcclxuICAgIC8vIEB0cy1pZ25vcmVcclxuICAgIHRoaXMuaGFuZGxlUGFzdGUoZXZlbnQuY2xpcGJvYXJkRGF0YS5nZXREYXRhKCd0ZXh0JykpO1xyXG4gIH1cclxuXHJcbiAgZ2V0SW5wdXRUeXBlKCk6ICd0ZXh0JyB8ICdwYXNzd29yZCcgfCAndGVsJyB7XHJcbiAgICByZXR1cm4gdGhpcy5vdHBDb25maWcuaXNQYXNzd29yZElucHV0ID8gJ3Bhc3N3b3JkJyA6IHRoaXMub3RwQ29uZmlnLmlzTnVtYmVySW5wdXQgPyAndGVsJyA6ICd0ZXh0JztcclxuICB9XHJcbn1cclxuIiwiPGZvcm1cclxuICBbbmdDbGFzc109XCJnZXRDb250YWluZXJDbGFzc2VzXCJcclxuICBjbGFzcz1cIm1yeC1pbnB1dC1vdHAtY29udGFpbmVyXCJcclxuICBbY2xhc3NdPVwiZ2V0Q2xhc3Nlc1wiXHJcbj5cclxuICA8ZGl2XHJcbiAgICAqbmdGb3I9XCJsZXQgY29udHJvbCBvZiBuZ3hPdHBBcnJheS5jb250cm9sczsgbGV0IGkgPSBpbmRleFwiXHJcbiAgICBbbmdDbGFzc109XCJnZXRJbnB1dEJveENsYXNzZXNcIlxyXG4gICAgW2NsYXNzLm1yeC1pbnB1dC1lcnJvcl09XCJpbnZhbGlkXCJcclxuICAgIFtjbGFzc109XCJjaGVja1ZhbGlkQ2xhc3Nlc1wiXHJcbiAgICBjbGFzcz1cIm1yeC1pbnB1dC1vdHAtYm94XCJcclxuICA+XHJcbiAgICA8bGFiZWwgW2F0dHIuYXJpYS1sYWJlbF09XCJhcmlhTGFiZWxzW2ldXCI+XHJcbiAgICAgIDxpbnB1dFxyXG4gICAgICAgICNvdHBJbnB1dEVsZW1lbnRcclxuICAgICAgICBbaWRdPVwiJ21yeC1pbnB1dC1vdHAtJyArIGlcIlxyXG4gICAgICAgIFtmb3JtQ29udHJvbF09XCJjb252ZXJ0VG9Gb3JtQ29udHJvbChjb250cm9sKVwiXHJcbiAgICAgICAgW21yeE9wdFBhdHRlcm5dPVwib3RwQ29uZmlnLnBhdHRlcm5cIlxyXG4gICAgICAgIFt0eXBlXT1cImdldElucHV0VHlwZSgpXCJcclxuICAgICAgICBbbmdDbGFzc109XCJzdHlsZXNbaV1cIlxyXG4gICAgICAgIChrZXl1cCk9XCJoYW5kbGVLZXlVcChpLCAkZXZlbnQua2V5KVwiXHJcbiAgICAgICAgKGtleXVwLmJhY2tzcGFjZSk9XCJoYW5kbGVEZWxldGUoaSlcIlxyXG4gICAgICAgIChrZXl1cC5hcnJvd0xlZnQpPVwic3RlcEJhY2t3YXJkKGkpXCJcclxuICAgICAgICAoa2V5dXAuYXJyb3dSaWdodCk9XCJzdGVwRm9yd2FyZChpKVwiXHJcbiAgICAgICAgKGZvY3VzKT1cImhhbmRsZUZvY3VzKGkpXCJcclxuICAgICAgICBjbGFzcz1cIm1yeC1pbnB1dC1vdHBcIlxyXG4gICAgICAgIG1heGxlbmd0aD1cIjFcIlxyXG4gICAgICAgIGF1dG9jYXBpdGFsaXplPVwib2ZmXCJcclxuICAgICAgICBzcGVsbGNoZWNrPVwiZmFsc2VcIlxyXG4gICAgICAvPlxyXG4gICAgPC9sYWJlbD5cclxuICA8L2Rpdj5cclxuPC9mb3JtPlxyXG5cclxuPG1yeC1lcnJvci1tZXNzYWdlXHJcbiAgKm5nSWY9XCJpbnZhbGlkICYmIGlzSW52YWxpZE1lc3NhZ2VcIlxyXG4gIGN1c3RvbUNsYXNzZXM9XCJ0ZXh0LWxlZnRcIlxyXG4gIFtpbnZhbGlkTWVzc2FnZV09XCJpbnZhbGlkTWVzc2FnZVwiXHJcbj48L21yeC1lcnJvci1tZXNzYWdlPlxyXG4iXX0=
@@ -1,8 +1,8 @@
1
- export var InputOptSizesEnum;
2
- (function (InputOptSizesEnum) {
3
- InputOptSizesEnum["small"] = "mrx-input-opt-sm";
4
- InputOptSizesEnum["medium"] = "mrx-input-opt-md";
5
- InputOptSizesEnum["large"] = "mrx-input-opt-lg";
6
- InputOptSizesEnum["responsive"] = "mrx-input-opt-responsive";
7
- })(InputOptSizesEnum || (InputOptSizesEnum = {}));
1
+ export var InputOptSizesEnum;
2
+ (function (InputOptSizesEnum) {
3
+ InputOptSizesEnum["small"] = "mrx-input-opt-sm";
4
+ InputOptSizesEnum["medium"] = "mrx-input-opt-md";
5
+ InputOptSizesEnum["large"] = "mrx-input-opt-lg";
6
+ InputOptSizesEnum["responsive"] = "mrx-input-opt-responsive";
7
+ })(InputOptSizesEnum || (InputOptSizesEnum = {}));
8
8
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtb3B0LmVudW0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9teXJ0YS11aS9zcmMvbGliL2NvbXBvbmVudHMvZm9ybS9pbnB1dC1vcHQvY29tcG9uZW50cy9pbnB1dC1vcHQvaW5wdXQtb3B0LmVudW0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFOLElBQVksaUJBS1g7QUFMRCxXQUFZLGlCQUFpQjtJQUMzQiwrQ0FBNEIsQ0FBQTtJQUM1QixnREFBNkIsQ0FBQTtJQUM3QiwrQ0FBNEIsQ0FBQTtJQUM1Qiw0REFBeUMsQ0FBQTtBQUMzQyxDQUFDLEVBTFcsaUJBQWlCLEtBQWpCLGlCQUFpQixRQUs1QiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBlbnVtIElucHV0T3B0U2l6ZXNFbnVtIHtcclxuICAnc21hbGwnID0gJ21yeC1pbnB1dC1vcHQtc20nLFxyXG4gICdtZWRpdW0nID0gJ21yeC1pbnB1dC1vcHQtbWQnLFxyXG4gICdsYXJnZScgPSAnbXJ4LWlucHV0LW9wdC1sZycsXHJcbiAgJ3Jlc3BvbnNpdmUnID0gJ21yeC1pbnB1dC1vcHQtcmVzcG9uc2l2ZScsXHJcbn1cclxuXHJcbmV4cG9ydCB0eXBlIElucHV0T3B0U2l6ZXNUeXBlcyA9ICdzbWFsbCcgfCAnbWVkaXVtJyB8ICdsYXJnZScgfCAncmVzcG9uc2l2ZSc7XHJcbiJdfQ==
@@ -0,0 +1,43 @@
1
+ import { Directive, HostListener, Input } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export class OptPatternDirective {
4
+ allowedKeys = [
5
+ 'Backspace',
6
+ 'ArrowLeft',
7
+ 'ArrowRight',
8
+ 'Escape',
9
+ 'Tab',
10
+ ];
11
+ pattern;
12
+ onKeyDown(e) {
13
+ if (this.allowedKeys.includes(e.key) ||
14
+ (e.code === 'KeyA' && e.ctrlKey === true) ||
15
+ (e.code === 'KeyC' && e.ctrlKey === true) ||
16
+ (e.code === 'KeyV' && e.ctrlKey === true) ||
17
+ (e.code === 'KeyX' && e.ctrlKey === true) ||
18
+ (e.code === 'KeyA' && e.metaKey === true) ||
19
+ (e.code === 'KeyC' && e.metaKey === true) ||
20
+ (e.code === 'KeyV' && e.metaKey === true) ||
21
+ (e.code === 'KeyX' && e.metaKey === true)) {
22
+ return;
23
+ }
24
+ else if (this.pattern && !this.pattern.test(e.key)) {
25
+ e.preventDefault();
26
+ }
27
+ }
28
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: OptPatternDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
29
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.11", type: OptPatternDirective, selector: "[mrxOptPattern]", inputs: { pattern: ["mrxOptPattern", "pattern"] }, host: { listeners: { "keydown": "onKeyDown($event)" } }, ngImport: i0 });
30
+ }
31
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: OptPatternDirective, decorators: [{
32
+ type: Directive,
33
+ args: [{
34
+ selector: '[mrxOptPattern]'
35
+ }]
36
+ }], propDecorators: { pattern: [{
37
+ type: Input,
38
+ args: ['mrxOptPattern']
39
+ }], onKeyDown: [{
40
+ type: HostListener,
41
+ args: ['keydown', ['$event']]
42
+ }] } });
43
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3B0LXBhdHRlcm4uZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbXlydGEtdWkvc3JjL2xpYi9jb21wb25lbnRzL2Zvcm0vaW5wdXQtb3B0L2RpcmVjdGl2ZXMvb3B0LXBhdHRlcm4uZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFLL0QsTUFBTSxPQUFPLG1CQUFtQjtJQUN0QixXQUFXLEdBQUc7UUFDcEIsV0FBVztRQUNYLFdBQVc7UUFDWCxZQUFZO1FBQ1osUUFBUTtRQUNSLEtBQUs7S0FDTixDQUFDO0lBRXNCLE9BQU8sQ0FBVTtJQUVKLFNBQVMsQ0FBQyxDQUFnQjtRQUM3RCxJQUNFLElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUM7WUFDaEMsQ0FBQyxDQUFDLENBQUMsSUFBSSxLQUFLLE1BQU0sSUFBSSxDQUFDLENBQUMsT0FBTyxLQUFLLElBQUksQ0FBQztZQUN6QyxDQUFDLENBQUMsQ0FBQyxJQUFJLEtBQUssTUFBTSxJQUFJLENBQUMsQ0FBQyxPQUFPLEtBQUssSUFBSSxDQUFDO1lBQ3pDLENBQUMsQ0FBQyxDQUFDLElBQUksS0FBSyxNQUFNLElBQUksQ0FBQyxDQUFDLE9BQU8sS0FBSyxJQUFJLENBQUM7WUFDekMsQ0FBQyxDQUFDLENBQUMsSUFBSSxLQUFLLE1BQU0sSUFBSSxDQUFDLENBQUMsT0FBTyxLQUFLLElBQUksQ0FBQztZQUN6QyxDQUFDLENBQUMsQ0FBQyxJQUFJLEtBQUssTUFBTSxJQUFJLENBQUMsQ0FBQyxPQUFPLEtBQUssSUFBSSxDQUFDO1lBQ3pDLENBQUMsQ0FBQyxDQUFDLElBQUksS0FBSyxNQUFNLElBQUksQ0FBQyxDQUFDLE9BQU8sS0FBSyxJQUFJLENBQUM7WUFDekMsQ0FBQyxDQUFDLENBQUMsSUFBSSxLQUFLLE1BQU0sSUFBSSxDQUFDLENBQUMsT0FBTyxLQUFLLElBQUksQ0FBQztZQUN6QyxDQUFDLENBQUMsQ0FBQyxJQUFJLEtBQUssTUFBTSxJQUFJLENBQUMsQ0FBQyxPQUFPLEtBQUssSUFBSSxDQUFDLEVBQ3pDLENBQUM7WUFDRCxPQUFPO1FBQ1QsQ0FBQzthQUFNLElBQUksSUFBSSxDQUFDLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDO1lBQ3JELENBQUMsQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUNyQixDQUFDO0lBQ0gsQ0FBQzt3R0EzQlUsbUJBQW1COzRGQUFuQixtQkFBbUI7OzRGQUFuQixtQkFBbUI7a0JBSC9CLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGlCQUFpQjtpQkFDNUI7OEJBVXlCLE9BQU87c0JBQTlCLEtBQUs7dUJBQUMsZUFBZTtnQkFFZSxTQUFTO3NCQUE3QyxZQUFZO3VCQUFDLFNBQVMsRUFBRSxDQUFDLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgSG9zdExpc3RlbmVyLCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuQERpcmVjdGl2ZSh7XHJcbiAgc2VsZWN0b3I6ICdbbXJ4T3B0UGF0dGVybl0nXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBPcHRQYXR0ZXJuRGlyZWN0aXZlIHtcclxuICBwcml2YXRlIGFsbG93ZWRLZXlzID0gW1xyXG4gICAgJ0JhY2tzcGFjZScsXHJcbiAgICAnQXJyb3dMZWZ0JyxcclxuICAgICdBcnJvd1JpZ2h0JyxcclxuICAgICdFc2NhcGUnLFxyXG4gICAgJ1RhYicsXHJcbiAgXTtcclxuXHJcbiAgQElucHV0KCdtcnhPcHRQYXR0ZXJuJykgcGF0dGVybj86IFJlZ0V4cDtcclxuXHJcbiAgQEhvc3RMaXN0ZW5lcigna2V5ZG93bicsIFsnJGV2ZW50J10pIG9uS2V5RG93bihlOiBLZXlib2FyZEV2ZW50KTogdm9pZCB7XHJcbiAgICBpZiAoXHJcbiAgICAgIHRoaXMuYWxsb3dlZEtleXMuaW5jbHVkZXMoZS5rZXkpIHx8XHJcbiAgICAgIChlLmNvZGUgPT09ICdLZXlBJyAmJiBlLmN0cmxLZXkgPT09IHRydWUpIHx8XHJcbiAgICAgIChlLmNvZGUgPT09ICdLZXlDJyAmJiBlLmN0cmxLZXkgPT09IHRydWUpIHx8XHJcbiAgICAgIChlLmNvZGUgPT09ICdLZXlWJyAmJiBlLmN0cmxLZXkgPT09IHRydWUpIHx8XHJcbiAgICAgIChlLmNvZGUgPT09ICdLZXlYJyAmJiBlLmN0cmxLZXkgPT09IHRydWUpIHx8XHJcbiAgICAgIChlLmNvZGUgPT09ICdLZXlBJyAmJiBlLm1ldGFLZXkgPT09IHRydWUpIHx8XHJcbiAgICAgIChlLmNvZGUgPT09ICdLZXlDJyAmJiBlLm1ldGFLZXkgPT09IHRydWUpIHx8XHJcbiAgICAgIChlLmNvZGUgPT09ICdLZXlWJyAmJiBlLm1ldGFLZXkgPT09IHRydWUpIHx8XHJcbiAgICAgIChlLmNvZGUgPT09ICdLZXlYJyAmJiBlLm1ldGFLZXkgPT09IHRydWUpXHJcbiAgICApIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfSBlbHNlIGlmICh0aGlzLnBhdHRlcm4gJiYgIXRoaXMucGF0dGVybi50ZXN0KGUua2V5KSkge1xyXG4gICAgICBlLnByZXZlbnREZWZhdWx0KCk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -1,38 +1,38 @@
1
- import { NgModule } from '@angular/core';
2
- import { CommonModule } from '@angular/common';
3
- import { InputOptComponent } from './components/input-opt/input-opt.component';
4
- import { OptPatternDirective } from './directives/opt-pattern.directive';
5
- import { FormsModule, ReactiveFormsModule } from '@angular/forms';
6
- import { InputOptService } from './services/input-opt.service';
7
- import { ErrorMessageModule } from '../../error-message/error-message.module';
8
- import * as i0 from "@angular/core";
9
- export class InputOptModule {
10
- }
11
- InputOptModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: InputOptModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
12
- InputOptModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: InputOptModule, declarations: [OptPatternDirective,
13
- InputOptComponent], imports: [ReactiveFormsModule,
14
- FormsModule,
15
- CommonModule,
16
- ErrorMessageModule], exports: [InputOptComponent] });
17
- InputOptModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: InputOptModule, providers: [InputOptService], imports: [ReactiveFormsModule,
18
- FormsModule,
19
- CommonModule,
20
- ErrorMessageModule] });
21
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: InputOptModule, decorators: [{
22
- type: NgModule,
23
- args: [{
24
- declarations: [
25
- OptPatternDirective,
26
- InputOptComponent
27
- ],
28
- imports: [
29
- ReactiveFormsModule,
30
- FormsModule,
31
- CommonModule,
32
- ErrorMessageModule
33
- ],
34
- exports: [InputOptComponent],
35
- providers: [InputOptService],
36
- }]
37
- }] });
38
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtb3B0Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL215cnRhLXVpL3NyYy9saWIvY29tcG9uZW50cy9mb3JtL2lucHV0LW9wdC9pbnB1dC1vcHQubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBQy9FLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ3pFLE9BQU8sRUFBRSxXQUFXLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDL0QsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sMENBQTBDLENBQUM7O0FBa0I5RSxNQUFNLE9BQU8sY0FBYzs7MkdBQWQsY0FBYzs0R0FBZCxjQUFjLGlCQVp2QixtQkFBbUI7UUFDbkIsaUJBQWlCLGFBR2pCLG1CQUFtQjtRQUNuQixXQUFXO1FBQ1gsWUFBWTtRQUNaLGtCQUFrQixhQUVWLGlCQUFpQjs0R0FHaEIsY0FBYyxhQUZkLENBQUMsZUFBZSxDQUFDLFlBTjFCLG1CQUFtQjtRQUNuQixXQUFXO1FBQ1gsWUFBWTtRQUNaLGtCQUFrQjsyRkFLVCxjQUFjO2tCQWQxQixRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRTt3QkFDWixtQkFBbUI7d0JBQ25CLGlCQUFpQjtxQkFDbEI7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLG1CQUFtQjt3QkFDbkIsV0FBVzt3QkFDWCxZQUFZO3dCQUNaLGtCQUFrQjtxQkFDbkI7b0JBQ0QsT0FBTyxFQUFFLENBQUMsaUJBQWlCLENBQUM7b0JBQzVCLFNBQVMsRUFBRSxDQUFDLGVBQWUsQ0FBQztpQkFDN0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBJbnB1dE9wdENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9pbnB1dC1vcHQvaW5wdXQtb3B0LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IE9wdFBhdHRlcm5EaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMvb3B0LXBhdHRlcm4uZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgRm9ybXNNb2R1bGUsIFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IElucHV0T3B0U2VydmljZSB9IGZyb20gJy4vc2VydmljZXMvaW5wdXQtb3B0LnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBFcnJvck1lc3NhZ2VNb2R1bGUgfSBmcm9tICcuLi8uLi9lcnJvci1tZXNzYWdlL2Vycm9yLW1lc3NhZ2UubW9kdWxlJztcclxuXHJcblxyXG5cclxuQE5nTW9kdWxlKHtcclxuICBkZWNsYXJhdGlvbnM6IFtcclxuICAgIE9wdFBhdHRlcm5EaXJlY3RpdmUsXHJcbiAgICBJbnB1dE9wdENvbXBvbmVudFxyXG4gIF0sXHJcbiAgaW1wb3J0czogW1xyXG4gICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcclxuICAgIEZvcm1zTW9kdWxlLFxyXG4gICAgQ29tbW9uTW9kdWxlLFxyXG4gICAgRXJyb3JNZXNzYWdlTW9kdWxlXHJcbiAgXSxcclxuICBleHBvcnRzOiBbSW5wdXRPcHRDb21wb25lbnRdLFxyXG4gIHByb3ZpZGVyczogW0lucHV0T3B0U2VydmljZV0sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBJbnB1dE9wdE1vZHVsZSB7IH1cclxuIl19
1
+ import { NgModule } from '@angular/core';
2
+ import { CommonModule } from '@angular/common';
3
+ import { InputOptComponent } from './components/input-opt/input-opt.component';
4
+ import { OptPatternDirective } from './directives/opt-pattern.directive';
5
+ import { FormsModule, ReactiveFormsModule } from '@angular/forms';
6
+ import { InputOptService } from './services/input-opt.service';
7
+ import { ErrorMessageModule } from '../../error-message/error-message.module';
8
+ import * as i0 from "@angular/core";
9
+ export class InputOptModule {
10
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: InputOptModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
11
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.11", ngImport: i0, type: InputOptModule, declarations: [OptPatternDirective,
12
+ InputOptComponent], imports: [ReactiveFormsModule,
13
+ FormsModule,
14
+ CommonModule,
15
+ ErrorMessageModule], exports: [InputOptComponent] });
16
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: InputOptModule, providers: [InputOptService], imports: [ReactiveFormsModule,
17
+ FormsModule,
18
+ CommonModule,
19
+ ErrorMessageModule] });
20
+ }
21
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: InputOptModule, decorators: [{
22
+ type: NgModule,
23
+ args: [{
24
+ declarations: [
25
+ OptPatternDirective,
26
+ InputOptComponent
27
+ ],
28
+ imports: [
29
+ ReactiveFormsModule,
30
+ FormsModule,
31
+ CommonModule,
32
+ ErrorMessageModule
33
+ ],
34
+ exports: [InputOptComponent],
35
+ providers: [InputOptService],
36
+ }]
37
+ }] });
38
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtb3B0Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL215cnRhLXVpL3NyYy9saWIvY29tcG9uZW50cy9mb3JtL2lucHV0LW9wdC9pbnB1dC1vcHQubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBQy9FLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ3pFLE9BQU8sRUFBRSxXQUFXLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDL0QsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sMENBQTBDLENBQUM7O0FBa0I5RSxNQUFNLE9BQU8sY0FBYzt3R0FBZCxjQUFjO3lHQUFkLGNBQWMsaUJBWnZCLG1CQUFtQjtZQUNuQixpQkFBaUIsYUFHakIsbUJBQW1CO1lBQ25CLFdBQVc7WUFDWCxZQUFZO1lBQ1osa0JBQWtCLGFBRVYsaUJBQWlCO3lHQUdoQixjQUFjLGFBRmQsQ0FBQyxlQUFlLENBQUMsWUFOMUIsbUJBQW1CO1lBQ25CLFdBQVc7WUFDWCxZQUFZO1lBQ1osa0JBQWtCOzs0RkFLVCxjQUFjO2tCQWQxQixRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRTt3QkFDWixtQkFBbUI7d0JBQ25CLGlCQUFpQjtxQkFDbEI7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLG1CQUFtQjt3QkFDbkIsV0FBVzt3QkFDWCxZQUFZO3dCQUNaLGtCQUFrQjtxQkFDbkI7b0JBQ0QsT0FBTyxFQUFFLENBQUMsaUJBQWlCLENBQUM7b0JBQzVCLFNBQVMsRUFBRSxDQUFDLGVBQWUsQ0FBQztpQkFDN0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBJbnB1dE9wdENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9pbnB1dC1vcHQvaW5wdXQtb3B0LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IE9wdFBhdHRlcm5EaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMvb3B0LXBhdHRlcm4uZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgRm9ybXNNb2R1bGUsIFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IElucHV0T3B0U2VydmljZSB9IGZyb20gJy4vc2VydmljZXMvaW5wdXQtb3B0LnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBFcnJvck1lc3NhZ2VNb2R1bGUgfSBmcm9tICcuLi8uLi9lcnJvci1tZXNzYWdlL2Vycm9yLW1lc3NhZ2UubW9kdWxlJztcclxuXHJcblxyXG5cclxuQE5nTW9kdWxlKHtcclxuICBkZWNsYXJhdGlvbnM6IFtcclxuICAgIE9wdFBhdHRlcm5EaXJlY3RpdmUsXHJcbiAgICBJbnB1dE9wdENvbXBvbmVudFxyXG4gIF0sXHJcbiAgaW1wb3J0czogW1xyXG4gICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcclxuICAgIEZvcm1zTW9kdWxlLFxyXG4gICAgQ29tbW9uTW9kdWxlLFxyXG4gICAgRXJyb3JNZXNzYWdlTW9kdWxlXHJcbiAgXSxcclxuICBleHBvcnRzOiBbSW5wdXRPcHRDb21wb25lbnRdLFxyXG4gIHByb3ZpZGVyczogW0lucHV0T3B0U2VydmljZV0sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBJbnB1dE9wdE1vZHVsZSB7IH1cclxuIl19
@@ -1,6 +1,6 @@
1
- export var NgxOtpBehavior;
2
- (function (NgxOtpBehavior) {
3
- NgxOtpBehavior[NgxOtpBehavior["DEFAULT"] = 0] = "DEFAULT";
4
- NgxOtpBehavior[NgxOtpBehavior["LEGACY"] = 1] = "LEGACY";
5
- })(NgxOtpBehavior || (NgxOtpBehavior = {}));
1
+ export var NgxOtpBehavior;
2
+ (function (NgxOtpBehavior) {
3
+ NgxOtpBehavior[NgxOtpBehavior["DEFAULT"] = 0] = "DEFAULT";
4
+ NgxOtpBehavior[NgxOtpBehavior["LEGACY"] = 1] = "LEGACY";
5
+ })(NgxOtpBehavior || (NgxOtpBehavior = {}));
6
6
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtb3B0Lm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbXlydGEtdWkvc3JjL2xpYi9jb21wb25lbnRzL2Zvcm0vaW5wdXQtb3B0L21vZGVscy9pbnB1dC1vcHQubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsTUFBTSxDQUFOLElBQVksY0FHWDtBQUhELFdBQVksY0FBYztJQUN4Qix5REFBTyxDQUFBO0lBQ1AsdURBQU0sQ0FBQTtBQUNSLENBQUMsRUFIVyxjQUFjLEtBQWQsY0FBYyxRQUd6QiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB0eXBlIE5neE90cFN0YXR1cyA9ICdzdWNjZXNzJyB8ICdlcnJvcicgfCBudWxsO1xyXG5cclxuZXhwb3J0IGVudW0gTmd4T3RwQmVoYXZpb3Ige1xyXG4gIERFRkFVTFQsXHJcbiAgTEVHQUNZLFxyXG59XHJcblxyXG5leHBvcnQgdHlwZSBOZ3hPdHBTdHlsZXMgPSB7XHJcbiAgY29udGFpbmVyPzogc3RyaW5nIHwgc3RyaW5nW107XHJcbiAgaW5wdXRCb3g/OiBzdHJpbmcgfCBzdHJpbmdbXTtcclxuICBpbnB1dD86IHN0cmluZyB8IHN0cmluZ1tdO1xyXG4gIGlucHV0RmlsbGVkPzogc3RyaW5nIHwgc3RyaW5nW107XHJcbiAgaW5wdXREaXNhYmxlZD86IHN0cmluZyB8IHN0cmluZ1tdO1xyXG4gIGlucHV0U3VjY2Vzcz86IHN0cmluZyB8IHN0cmluZ1tdO1xyXG4gIGlucHV0RXJyb3I/OiBzdHJpbmcgfCBzdHJpbmdbXTtcclxufTtcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgTmd4T3RwSW5wdXRDb25maWcge1xyXG4gIG90cExlbmd0aDogbnVtYmVyO1xyXG4gIHBhdHRlcm4/OiBSZWdFeHA7XHJcbiAgYXV0b2ZvY3VzPzogYm9vbGVhbjtcclxuICBhdXRvYmx1cj86IGJvb2xlYW47XHJcbiAgaXNQYXNzd29yZElucHV0PzogYm9vbGVhbjtcclxuICBpc051bWJlcklucHV0PzogYm9vbGVhbjtcclxuICBhcmlhTGFiZWxzPzogc3RyaW5nIHwgc3RyaW5nW107XHJcbiAgbnVtZXJpY0lucHV0TW9kZT86IGJvb2xlYW47XHJcbiAgY2xhc3NMaXN0PzogTmd4T3RwU3R5bGVzO1xyXG4gIGJlaGF2aW9yPzogTmd4T3RwQmVoYXZpb3I7XHJcbn1cclxuXHJcbiJdfQ==