@recursyve/nice-ui-kit.v2 15.0.0-beta.130 → 16.0.0-beta.132

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 (390) hide show
  1. package/esm2022/lib/animations/defaults.mjs +32 -0
  2. package/{esm2020 → esm2022}/lib/api/interceptors/transform-response.interceptor.mjs +4 -4
  3. package/{esm2020 → esm2022}/lib/components/alert/alert.component.mjs +4 -4
  4. package/{esm2020 → esm2022}/lib/components/alert/alert.module.mjs +9 -9
  5. package/{esm2020 → esm2022}/lib/components/alert/alert.service.mjs +4 -4
  6. package/esm2022/lib/components/assets-carousel/assets-carousel.component.mjs +283 -0
  7. package/{esm2020 → esm2022}/lib/components/assets-carousel/assets-carousel.module.mjs +19 -19
  8. package/{esm2020 → esm2022}/lib/components/assets-carousel/directives/assets-carousel-active-content.directive.mjs +4 -4
  9. package/esm2022/lib/components/async-typeahead/async-typeahead.component.mjs +451 -0
  10. package/{esm2020 → esm2022}/lib/components/async-typeahead/async-typeahead.module.mjs +21 -21
  11. package/esm2022/lib/components/async-typeahead/providers/async-typeahead.service.mjs +219 -0
  12. package/{esm2020 → esm2022}/lib/components/base-form/base-form.component.mjs +4 -4
  13. package/{esm2020 → esm2022}/lib/components/base-form/base-form.module.mjs +5 -5
  14. package/{esm2020 → esm2022}/lib/components/base-form/form-submit.directive.mjs +4 -4
  15. package/{esm2020 → esm2022}/lib/components/card/card.component.mjs +4 -4
  16. package/{esm2020 → esm2022}/lib/components/card/card.module.mjs +5 -5
  17. package/{esm2020 → esm2022}/lib/components/carousel/carousel.component.mjs +4 -4
  18. package/esm2022/lib/components/carousel/carousel.module.mjs +40 -0
  19. package/{esm2020 → esm2022}/lib/components/carousel/picture-modal/picture-modal.component.mjs +4 -4
  20. package/{esm2020 → esm2022}/lib/components/carousel/picture-modal/picture-modal.service.mjs +4 -4
  21. package/{esm2020 → esm2022}/lib/components/carousel/pipe/carousel-layout.pipe.mjs +4 -4
  22. package/{esm2020 → esm2022}/lib/components/collapsable/collapsable.component.mjs +4 -4
  23. package/{esm2020 → esm2022}/lib/components/collapsable/collapsable.module.mjs +7 -7
  24. package/{esm2020 → esm2022}/lib/components/date-range-picker/components/header/header.component.mjs +4 -4
  25. package/{esm2020 → esm2022}/lib/components/date-range-picker/components/range-preset/range-preset.component.mjs +4 -4
  26. package/esm2022/lib/components/date-range-picker/date-range-picker.component.mjs +95 -0
  27. package/{esm2020 → esm2022}/lib/components/date-range-picker/date-range-picker.module.mjs +21 -21
  28. package/{esm2020 → esm2022}/lib/components/date-range-picker/providers/date-range-picker.service.mjs +4 -4
  29. package/{esm2020 → esm2022}/lib/components/drawer/drawer.component.mjs +4 -4
  30. package/{esm2020 → esm2022}/lib/components/drawer/drawer.module.mjs +7 -7
  31. package/{esm2020 → esm2022}/lib/components/drawer/drawer.service.mjs +4 -4
  32. package/{esm2020 → esm2022}/lib/components/export-bottom-sheet/export-bottom-sheet.component.mjs +4 -4
  33. package/esm2022/lib/components/export-bottom-sheet/export-bottom-sheet.module.mjs +45 -0
  34. package/{esm2020 → esm2022}/lib/components/export-bottom-sheet/providers/export-bottom-sheet.service.mjs +7 -7
  35. package/esm2022/lib/components/form-error/control-status.directive.mjs +123 -0
  36. package/esm2022/lib/components/form-error/form-error.component.mjs +53 -0
  37. package/{esm2020 → esm2022}/lib/components/form-error/form-error.module.mjs +5 -5
  38. package/esm2022/lib/components/horizontal-stepper/horizontal-stepper.component.mjs +34 -0
  39. package/{esm2020 → esm2022}/lib/components/horizontal-stepper/horizontal-stepper.module.mjs +9 -9
  40. package/{esm2020 → esm2022}/lib/components/horizontal-stepper/step.component.mjs +6 -6
  41. package/esm2022/lib/components/image-cropper/image-cropper.component.mjs +1269 -0
  42. package/{esm2020 → esm2022}/lib/components/image-cropper/image-cropper.module.mjs +5 -5
  43. package/{esm2020 → esm2022}/lib/components/layout/layout.component.mjs +4 -4
  44. package/{esm2020 → esm2022}/lib/components/layout/layout.module.mjs +5 -5
  45. package/{esm2020 → esm2022}/lib/components/loading-spinner/loading-spinner.component.mjs +4 -4
  46. package/{esm2020 → esm2022}/lib/components/loading-spinner/loading-spinner.module.mjs +9 -9
  47. package/{esm2020 → esm2022}/lib/components/loading-spinner/loading.directive.mjs +4 -4
  48. package/{esm2020 → esm2022}/lib/components/loading-toast/loading-toast.component.mjs +4 -4
  49. package/{esm2020 → esm2022}/lib/components/loading-toast/loading-toast.directive.mjs +4 -4
  50. package/{esm2020 → esm2022}/lib/components/loading-toast/loading-toast.module.mjs +5 -5
  51. package/{esm2020 → esm2022}/lib/components/loading-toast/loading-toast.service.mjs +4 -4
  52. package/{esm2020 → esm2022}/lib/components/lottie/lottie.component.mjs +4 -4
  53. package/{esm2020 → esm2022}/lib/components/lottie/lottie.module.mjs +5 -5
  54. package/{esm2020 → esm2022}/lib/components/navigation/components/hint-component-base.mjs +4 -4
  55. package/{esm2020 → esm2022}/lib/components/navigation/directives/show-hint.directive.mjs +4 -4
  56. package/{esm2020 → esm2022}/lib/components/navigation/horizontal/components/basic/basic.component.mjs +4 -4
  57. package/{esm2020 → esm2022}/lib/components/navigation/horizontal/components/branch/branch.component.mjs +4 -4
  58. package/{esm2020 → esm2022}/lib/components/navigation/horizontal/components/divider/divider.component.mjs +4 -4
  59. package/{esm2020 → esm2022}/lib/components/navigation/horizontal/components/spacer/spacer.component.mjs +4 -4
  60. package/{esm2020 → esm2022}/lib/components/navigation/horizontal/horizontal.component.mjs +4 -4
  61. package/{esm2020 → esm2022}/lib/components/navigation/navigation.component.mjs +4 -4
  62. package/{esm2020 → esm2022}/lib/components/navigation/navigation.module.mjs +37 -37
  63. package/{esm2020 → esm2022}/lib/components/navigation/navigation.service.mjs +4 -4
  64. package/{esm2020 → esm2022}/lib/components/navigation/pipes/should-hide.pipe.mjs +4 -4
  65. package/{esm2020 → esm2022}/lib/components/navigation/pipes/should-show-hint.pipe.mjs +4 -4
  66. package/{esm2020 → esm2022}/lib/components/navigation/providers/hint.service.mjs +4 -4
  67. package/{esm2020 → esm2022}/lib/components/navigation/vertical/components/aside/aside.component.mjs +4 -4
  68. package/{esm2020 → esm2022}/lib/components/navigation/vertical/components/basic/basic.component.mjs +4 -4
  69. package/{esm2020 → esm2022}/lib/components/navigation/vertical/components/collapsable/collapsable.component.mjs +4 -4
  70. package/{esm2020 → esm2022}/lib/components/navigation/vertical/components/divider/divider.component.mjs +4 -4
  71. package/{esm2020 → esm2022}/lib/components/navigation/vertical/components/group/group.component.mjs +4 -4
  72. package/{esm2020 → esm2022}/lib/components/navigation/vertical/components/spacer/spacer.component.mjs +4 -4
  73. package/{esm2020 → esm2022}/lib/components/navigation/vertical/vertical.component.mjs +4 -4
  74. package/esm2022/lib/components/search-bar/search-bar.component.mjs +76 -0
  75. package/{esm2020 → esm2022}/lib/components/search-bar/search-bar.module.mjs +13 -13
  76. package/{esm2020 → esm2022}/lib/components/sweet-alert/sweet-alert.component.mjs +4 -4
  77. package/{esm2020 → esm2022}/lib/components/sweet-alert/sweet-alert.directive.mjs +4 -4
  78. package/{esm2020 → esm2022}/lib/components/sweet-alert/sweet-alert.module.mjs +5 -5
  79. package/{esm2020 → esm2022}/lib/components/sweet-alert/sweet-alert.service.mjs +4 -4
  80. package/{esm2020 → esm2022}/lib/components/toast/toast.component.mjs +4 -4
  81. package/{esm2020 → esm2022}/lib/components/toast/toast.module.mjs +5 -5
  82. package/{esm2020 → esm2022}/lib/components/toast/toast.service.mjs +4 -4
  83. package/esm2022/lib/components/toggle-button-group/toggle-button-group.component.mjs +134 -0
  84. package/{esm2020 → esm2022}/lib/components/toggle-button-group/toggle-button-group.module.mjs +7 -7
  85. package/{esm2020 → esm2022}/lib/components/toggle-button-group/toggle-button.component.mjs +4 -4
  86. package/esm2022/lib/components/translation-form/components/textarea/translation-form-textarea.component.mjs +38 -0
  87. package/esm2022/lib/components/translation-form/components/textfield/translation-form-textfield.component.mjs +26 -0
  88. package/esm2022/lib/components/translation-form/components/translation-form.component.mjs +170 -0
  89. package/{esm2020 → esm2022}/lib/components/translation-form/components/translation-form.module.mjs +19 -19
  90. package/{esm2020 → esm2022}/lib/components/translation-form/directives/translation-context.directive.mjs +4 -4
  91. package/{esm2020 → esm2022}/lib/components/translation-form/providers/nice-translation-form.service.mjs +4 -4
  92. package/{esm2020 → esm2022}/lib/components/translation-form/toggle/translation-toggle.component.mjs +4 -4
  93. package/{esm2020 → esm2022}/lib/components/translation-form/validators/require-for-languages.validator.mjs +4 -4
  94. package/{esm2020 → esm2022}/lib/components/typeahead/directives/options-scroll.directive.mjs +4 -4
  95. package/{esm2020 → esm2022}/lib/components/typeahead/directives/options-scroll.module.mjs +5 -5
  96. package/{esm2020 → esm2022}/lib/components/typeahead/typeahead.component.mjs +9 -9
  97. package/{esm2020 → esm2022}/lib/components/typeahead/typeahead.module.mjs +25 -25
  98. package/{esm2020 → esm2022}/lib/directives/autofocus/autofocus.directive.mjs +4 -4
  99. package/{esm2020 → esm2022}/lib/directives/autofocus/autofocus.module.mjs +5 -5
  100. package/{esm2020 → esm2022}/lib/directives/autogrow/autogrow.directive.mjs +4 -4
  101. package/{esm2020 → esm2022}/lib/directives/autogrow/autogrow.module.mjs +5 -5
  102. package/{esm2020 → esm2022}/lib/directives/chip-async-typeahead/chip-async-typeahead.directive.mjs +4 -4
  103. package/{esm2020 → esm2022}/lib/directives/chip-list/chip-list-items/chip-list-item-label.directive.mjs +4 -4
  104. package/{esm2020 → esm2022}/lib/directives/chip-list/chip-list-items/chip-list-items.component.mjs +4 -4
  105. package/{esm2020 → esm2022}/lib/directives/chip-list/chip-list.directive.mjs +4 -4
  106. package/{esm2020 → esm2022}/lib/directives/chip-list/chip-list.module.mjs +5 -5
  107. package/{esm2020 → esm2022}/lib/directives/draggable-list/draggable-list.directive.mjs +4 -4
  108. package/{esm2020 → esm2022}/lib/directives/draggable-list/draggable-list.module.mjs +5 -5
  109. package/{esm2020 → esm2022}/lib/directives/dropzone/dropzone.directive.mjs +4 -4
  110. package/{esm2020 → esm2022}/lib/directives/dropzone/dropzone.module.mjs +5 -5
  111. package/{esm2020 → esm2022}/lib/directives/image-error-placeholder/image-error-placeholder.directive.mjs +4 -4
  112. package/{esm2020 → esm2022}/lib/directives/image-error-placeholder/image-error-placeholder.module.mjs +5 -5
  113. package/{esm2020 → esm2022}/lib/directives/material/material.module.mjs +7 -7
  114. package/{esm2020 → esm2022}/lib/directives/material/nice-material-style.directive.mjs +4 -4
  115. package/{esm2020 → esm2022}/lib/directives/material/nice-rounded-style.directive.mjs +4 -4
  116. package/{esm2020 → esm2022}/lib/directives/modals/modal-on-click.directive.mjs +4 -4
  117. package/{esm2020 → esm2022}/lib/directives/modals/modal-opener.directive.mjs +4 -4
  118. package/{esm2020 → esm2022}/lib/directives/rerender/rerender.directive.mjs +4 -4
  119. package/{esm2020 → esm2022}/lib/directives/resolve/resolve.directive.mjs +4 -4
  120. package/{esm2020 → esm2022}/lib/directives/scroll-reset/scroll-reset.directive.mjs +4 -4
  121. package/{esm2020 → esm2022}/lib/directives/scroll-reset/scroll-reset.module.mjs +5 -5
  122. package/{esm2020 → esm2022}/lib/directives/scrollbar/scrollbar.directive.mjs +4 -4
  123. package/{esm2020 → esm2022}/lib/directives/scrollbar/scrollbar.module.mjs +5 -5
  124. package/{esm2020 → esm2022}/lib/directives/stop-propagation/click-stop-propagation.directive.mjs +4 -4
  125. package/{esm2020 → esm2022}/lib/directives/stop-propagation/stop-propagation.module.mjs +5 -5
  126. package/{esm2020 → esm2022}/lib/directives/window/prevent-close-window.directive.mjs +4 -4
  127. package/{esm2020 → esm2022}/lib/directives/window/window-directive.module.mjs +5 -5
  128. package/esm2022/lib/nice.module.mjs +124 -0
  129. package/{esm2020 → esm2022}/lib/pipes/boolean.pipe.mjs +4 -4
  130. package/{esm2020 → esm2022}/lib/pipes/capitalize-first-letter.pipe.mjs +4 -4
  131. package/{esm2020 → esm2022}/lib/pipes/ceil.pipe.mjs +4 -4
  132. package/{esm2020 → esm2022}/lib/pipes/entries.pipe.mjs +4 -4
  133. package/{esm2020 → esm2022}/lib/pipes/find-by-key.pipe.mjs +4 -4
  134. package/{esm2020 → esm2022}/lib/pipes/first-letter.pipe.mjs +4 -4
  135. package/{esm2020 → esm2022}/lib/pipes/floor.pipe.mjs +4 -4
  136. package/{esm2020 → esm2022}/lib/pipes/join-if-defined.pipe.mjs +4 -4
  137. package/{esm2020 → esm2022}/lib/pipes/link.pipe.mjs +4 -4
  138. package/{esm2020 → esm2022}/lib/pipes/localized-boolean.pipe.mjs +4 -4
  139. package/{esm2020 → esm2022}/lib/pipes/localized-currency.pipe.mjs +4 -4
  140. package/{esm2020 → esm2022}/lib/pipes/localized-date-only.pipe.mjs +4 -4
  141. package/{esm2020 → esm2022}/lib/pipes/localized-date.pipe.mjs +4 -4
  142. package/{esm2020 → esm2022}/lib/pipes/minutes-to-time.pipe.mjs +4 -4
  143. package/{esm2020 → esm2022}/lib/pipes/number-to-ordinal-indicator.pipe.mjs +4 -4
  144. package/{esm2020 → esm2022}/lib/pipes/pad.pipe.mjs +4 -4
  145. package/{esm2020 → esm2022}/lib/pipes/phone.pipe.mjs +4 -4
  146. package/{esm2020 → esm2022}/lib/pipes/pipes.module.mjs +72 -72
  147. package/{esm2020 → esm2022}/lib/pipes/postal-code.pipe.mjs +4 -4
  148. package/{esm2020 → esm2022}/lib/pipes/range.pipe.mjs +4 -4
  149. package/{esm2020 → esm2022}/lib/pipes/round.pipe.mjs +4 -4
  150. package/{esm2020 → esm2022}/lib/pipes/sanitize-bypass.pipe.mjs +4 -4
  151. package/{esm2020 → esm2022}/lib/pipes/seconds-to-time.pipe.mjs +4 -4
  152. package/{esm2020 → esm2022}/lib/pipes/track-by-prop.pipe.mjs +4 -4
  153. package/{esm2020 → esm2022}/lib/providers/config/config.module.mjs +5 -5
  154. package/{esm2020 → esm2022}/lib/providers/config/config.service.mjs +4 -4
  155. package/{esm2020 → esm2022}/lib/providers/media-watcher/media-watcher.module.mjs +7 -7
  156. package/{esm2020 → esm2022}/lib/providers/media-watcher/media-watcher.service.mjs +4 -4
  157. package/{esm2020 → esm2022}/lib/providers/overlay/dynamic-overlay-container.service.mjs +4 -4
  158. package/{esm2020 → esm2022}/lib/providers/overlay/dynamic-overlay.service.mjs +4 -4
  159. package/{esm2020 → esm2022}/lib/providers/splash-screen/splash-screen.module.mjs +7 -7
  160. package/{esm2020 → esm2022}/lib/providers/splash-screen/splash-screen.service.mjs +4 -4
  161. package/{esm2020 → esm2022}/lib/providers/utils/utils.module.mjs +5 -5
  162. package/{esm2020 → esm2022}/lib/providers/utils/utils.service.mjs +4 -4
  163. package/esm2022/lib/utils/regex.utils.mjs +11 -0
  164. package/{fesm2020 → fesm2022}/recursyve-nice-ui-kit.v2.mjs +954 -917
  165. package/fesm2022/recursyve-nice-ui-kit.v2.mjs.map +1 -0
  166. package/lib/components/alert/alert.component.d.ts +1 -1
  167. package/lib/components/assets-carousel/assets-carousel.component.d.ts +1 -1
  168. package/lib/components/async-typeahead/async-typeahead.component.d.ts +5 -3
  169. package/lib/components/async-typeahead/providers/async-typeahead.service.d.ts +8 -5
  170. package/lib/components/base-form/base-form.component.d.ts +1 -1
  171. package/lib/components/base-form/form-submit.directive.d.ts +1 -1
  172. package/lib/components/card/card.component.d.ts +1 -1
  173. package/lib/components/carousel/carousel.component.d.ts +1 -1
  174. package/lib/components/collapsable/collapsable.component.d.ts +1 -1
  175. package/lib/components/date-range-picker/date-range-picker.component.d.ts +1 -1
  176. package/lib/components/drawer/drawer.component.d.ts +1 -1
  177. package/lib/components/form-error/form-error.component.d.ts +1 -1
  178. package/lib/components/image-cropper/image-cropper.component.d.ts +2 -2
  179. package/lib/components/loading-spinner/loading-spinner.component.d.ts +1 -1
  180. package/lib/components/loading-spinner/loading.directive.d.ts +1 -1
  181. package/lib/components/loading-toast/loading-toast.component.d.ts +1 -1
  182. package/lib/components/loading-toast/loading-toast.directive.d.ts +1 -1
  183. package/lib/components/lottie/lottie.component.d.ts +1 -1
  184. package/lib/components/navigation/directives/show-hint.directive.d.ts +1 -1
  185. package/lib/components/navigation/horizontal/components/basic/basic.component.d.ts +1 -1
  186. package/lib/components/navigation/horizontal/components/branch/branch.component.d.ts +1 -1
  187. package/lib/components/navigation/horizontal/components/divider/divider.component.d.ts +1 -1
  188. package/lib/components/navigation/horizontal/components/spacer/spacer.component.d.ts +1 -1
  189. package/lib/components/navigation/horizontal/horizontal.component.d.ts +1 -1
  190. package/lib/components/navigation/vertical/components/aside/aside.component.d.ts +1 -1
  191. package/lib/components/navigation/vertical/components/basic/basic.component.d.ts +1 -1
  192. package/lib/components/navigation/vertical/components/collapsable/collapsable.component.d.ts +1 -1
  193. package/lib/components/navigation/vertical/components/divider/divider.component.d.ts +1 -1
  194. package/lib/components/navigation/vertical/components/group/group.component.d.ts +1 -1
  195. package/lib/components/navigation/vertical/components/spacer/spacer.component.d.ts +1 -1
  196. package/lib/components/navigation/vertical/vertical.component.d.ts +1 -1
  197. package/lib/components/search-bar/search-bar.component.d.ts +1 -1
  198. package/lib/components/sweet-alert/sweet-alert.directive.d.ts +1 -1
  199. package/lib/components/toggle-button-group/toggle-button-group.component.d.ts +1 -1
  200. package/lib/components/toggle-button-group/toggle-button.component.d.ts +1 -1
  201. package/lib/components/translation-form/components/textarea/translation-form-textarea.component.d.ts +1 -1
  202. package/lib/components/translation-form/components/translation-form.component.d.ts +2 -1
  203. package/lib/components/typeahead/directives/options-scroll.directive.d.ts +1 -1
  204. package/lib/components/typeahead/typeahead.component.d.ts +1 -1
  205. package/lib/directives/autogrow/autogrow.directive.d.ts +1 -1
  206. package/lib/directives/chip-list/chip-list-items/chip-list-items.component.d.ts +1 -1
  207. package/lib/directives/chip-list/chip-list.directive.d.ts +1 -1
  208. package/lib/directives/draggable-list/draggable-list.directive.d.ts +1 -1
  209. package/lib/directives/image-error-placeholder/image-error-placeholder.directive.d.ts +1 -1
  210. package/lib/directives/modals/modal-opener.directive.d.ts +1 -1
  211. package/lib/directives/rerender/rerender.directive.d.ts +1 -1
  212. package/lib/directives/resolve/resolve.directive.d.ts +1 -1
  213. package/lib/directives/scrollbar/scrollbar.directive.d.ts +1 -1
  214. package/package.json +13 -19
  215. package/esm2020/lib/animations/defaults.mjs +0 -32
  216. package/esm2020/lib/components/assets-carousel/assets-carousel.component.mjs +0 -283
  217. package/esm2020/lib/components/async-typeahead/async-typeahead.component.mjs +0 -440
  218. package/esm2020/lib/components/async-typeahead/providers/async-typeahead.service.mjs +0 -209
  219. package/esm2020/lib/components/carousel/carousel.module.mjs +0 -41
  220. package/esm2020/lib/components/date-range-picker/date-range-picker.component.mjs +0 -95
  221. package/esm2020/lib/components/export-bottom-sheet/export-bottom-sheet.module.mjs +0 -45
  222. package/esm2020/lib/components/form-error/control-status.directive.mjs +0 -111
  223. package/esm2020/lib/components/form-error/form-error.component.mjs +0 -53
  224. package/esm2020/lib/components/horizontal-stepper/horizontal-stepper.component.mjs +0 -34
  225. package/esm2020/lib/components/image-cropper/image-cropper.component.mjs +0 -1269
  226. package/esm2020/lib/components/search-bar/search-bar.component.mjs +0 -76
  227. package/esm2020/lib/components/toggle-button-group/toggle-button-group.component.mjs +0 -134
  228. package/esm2020/lib/components/translation-form/components/textarea/translation-form-textarea.component.mjs +0 -38
  229. package/esm2020/lib/components/translation-form/components/textfield/translation-form-textfield.component.mjs +0 -26
  230. package/esm2020/lib/components/translation-form/components/translation-form.component.mjs +0 -165
  231. package/esm2020/lib/nice.module.mjs +0 -124
  232. package/esm2020/lib/utils/regex.utils.mjs +0 -11
  233. package/fesm2015/recursyve-nice-ui-kit.v2.mjs +0 -11831
  234. package/fesm2015/recursyve-nice-ui-kit.v2.mjs.map +0 -1
  235. package/fesm2020/recursyve-nice-ui-kit.v2.mjs.map +0 -1
  236. /package/{esm2020 → esm2022}/lib/animations/expand-collapse.mjs +0 -0
  237. /package/{esm2020 → esm2022}/lib/animations/fade.mjs +0 -0
  238. /package/{esm2020 → esm2022}/lib/animations/index.mjs +0 -0
  239. /package/{esm2020 → esm2022}/lib/animations/public-api.mjs +0 -0
  240. /package/{esm2020 → esm2022}/lib/animations/shake.mjs +0 -0
  241. /package/{esm2020 → esm2022}/lib/animations/slide.mjs +0 -0
  242. /package/{esm2020 → esm2022}/lib/animations/zoom.mjs +0 -0
  243. /package/{esm2020 → esm2022}/lib/api/exceptions/api.exception.mjs +0 -0
  244. /package/{esm2020 → esm2022}/lib/api/exceptions/exception.factory.mjs +0 -0
  245. /package/{esm2020 → esm2022}/lib/api/index.mjs +0 -0
  246. /package/{esm2020 → esm2022}/lib/api/nice.api.mjs +0 -0
  247. /package/{esm2020 → esm2022}/lib/api/public-api.mjs +0 -0
  248. /package/{esm2020 → esm2022}/lib/components/alert/alert.types.mjs +0 -0
  249. /package/{esm2020 → esm2022}/lib/components/alert/index.mjs +0 -0
  250. /package/{esm2020 → esm2022}/lib/components/alert/public-api.mjs +0 -0
  251. /package/{esm2020 → esm2022}/lib/components/assets-carousel/assets-carousel.constant.mjs +0 -0
  252. /package/{esm2020 → esm2022}/lib/components/assets-carousel/index.mjs +0 -0
  253. /package/{esm2020 → esm2022}/lib/components/assets-carousel/public-api.mjs +0 -0
  254. /package/{esm2020 → esm2022}/lib/components/async-typeahead/async-typeahead.constant.mjs +0 -0
  255. /package/{esm2020 → esm2022}/lib/components/async-typeahead/index.mjs +0 -0
  256. /package/{esm2020 → esm2022}/lib/components/async-typeahead/providers/async-typeahead.provider.mjs +0 -0
  257. /package/{esm2020 → esm2022}/lib/components/async-typeahead/public-api.mjs +0 -0
  258. /package/{esm2020 → esm2022}/lib/components/base-form/index.mjs +0 -0
  259. /package/{esm2020 → esm2022}/lib/components/base-form/nice-base.form.mjs +0 -0
  260. /package/{esm2020 → esm2022}/lib/components/base-form/public-api.mjs +0 -0
  261. /package/{esm2020 → esm2022}/lib/components/card/card.types.mjs +0 -0
  262. /package/{esm2020 → esm2022}/lib/components/card/index.mjs +0 -0
  263. /package/{esm2020 → esm2022}/lib/components/card/public-api.mjs +0 -0
  264. /package/{esm2020 → esm2022}/lib/components/carousel/index.mjs +0 -0
  265. /package/{esm2020 → esm2022}/lib/components/carousel/picture-modal/index.mjs +0 -0
  266. /package/{esm2020 → esm2022}/lib/components/carousel/picture-modal/public-api.mjs +0 -0
  267. /package/{esm2020 → esm2022}/lib/components/carousel/public-api.mjs +0 -0
  268. /package/{esm2020 → esm2022}/lib/components/collapsable/index.mjs +0 -0
  269. /package/{esm2020 → esm2022}/lib/components/collapsable/public-api.mjs +0 -0
  270. /package/{esm2020 → esm2022}/lib/components/date-range-picker/index.mjs +0 -0
  271. /package/{esm2020 → esm2022}/lib/components/date-range-picker/public-api.mjs +0 -0
  272. /package/{esm2020 → esm2022}/lib/components/drawer/drawer.types.mjs +0 -0
  273. /package/{esm2020 → esm2022}/lib/components/drawer/index.mjs +0 -0
  274. /package/{esm2020 → esm2022}/lib/components/drawer/public-api.mjs +0 -0
  275. /package/{esm2020 → esm2022}/lib/components/export-bottom-sheet/index.mjs +0 -0
  276. /package/{esm2020 → esm2022}/lib/components/export-bottom-sheet/models/export-strategy.model.mjs +0 -0
  277. /package/{esm2020 → esm2022}/lib/components/export-bottom-sheet/public-api.mjs +0 -0
  278. /package/{esm2020 → esm2022}/lib/components/form-error/index.mjs +0 -0
  279. /package/{esm2020 → esm2022}/lib/components/form-error/public-api.mjs +0 -0
  280. /package/{esm2020 → esm2022}/lib/components/horizontal-stepper/index.mjs +0 -0
  281. /package/{esm2020 → esm2022}/lib/components/horizontal-stepper/public-api.mjs +0 -0
  282. /package/{esm2020 → esm2022}/lib/components/image-cropper/index.mjs +0 -0
  283. /package/{esm2020 → esm2022}/lib/components/image-cropper/public-api.mjs +0 -0
  284. /package/{esm2020 → esm2022}/lib/components/image-cropper/resize-canvas.mjs +0 -0
  285. /package/{esm2020 → esm2022}/lib/components/index.mjs +0 -0
  286. /package/{esm2020 → esm2022}/lib/components/layout/index.mjs +0 -0
  287. /package/{esm2020 → esm2022}/lib/components/layout/public-api.mjs +0 -0
  288. /package/{esm2020 → esm2022}/lib/components/loading-spinner/index.mjs +0 -0
  289. /package/{esm2020 → esm2022}/lib/components/loading-spinner/loading.constant.mjs +0 -0
  290. /package/{esm2020 → esm2022}/lib/components/loading-spinner/public-api.mjs +0 -0
  291. /package/{esm2020 → esm2022}/lib/components/loading-toast/index.mjs +0 -0
  292. /package/{esm2020 → esm2022}/lib/components/loading-toast/loading-toast.constant.mjs +0 -0
  293. /package/{esm2020 → esm2022}/lib/components/loading-toast/public-api.mjs +0 -0
  294. /package/{esm2020 → esm2022}/lib/components/loading-toast/rxjs/show-loading-toast.operator.mjs +0 -0
  295. /package/{esm2020 → esm2022}/lib/components/lottie/index.mjs +0 -0
  296. /package/{esm2020 → esm2022}/lib/components/lottie/public-api.mjs +0 -0
  297. /package/{esm2020 → esm2022}/lib/components/navigation/index.mjs +0 -0
  298. /package/{esm2020 → esm2022}/lib/components/navigation/navigation.types.mjs +0 -0
  299. /package/{esm2020 → esm2022}/lib/components/navigation/providers/hide-item.resolver.mjs +0 -0
  300. /package/{esm2020 → esm2022}/lib/components/navigation/providers/hint.resolver.mjs +0 -0
  301. /package/{esm2020 → esm2022}/lib/components/navigation/public-api.mjs +0 -0
  302. /package/{esm2020 → esm2022}/lib/components/public-api.mjs +0 -0
  303. /package/{esm2020 → esm2022}/lib/components/search-bar/index.mjs +0 -0
  304. /package/{esm2020 → esm2022}/lib/components/search-bar/public-api.mjs +0 -0
  305. /package/{esm2020 → esm2022}/lib/components/sweet-alert/index.mjs +0 -0
  306. /package/{esm2020 → esm2022}/lib/components/sweet-alert/public-api.mjs +0 -0
  307. /package/{esm2020 → esm2022}/lib/components/sweet-alert/sweet-alert.constant.mjs +0 -0
  308. /package/{esm2020 → esm2022}/lib/components/toast/index.mjs +0 -0
  309. /package/{esm2020 → esm2022}/lib/components/toast/public-api.mjs +0 -0
  310. /package/{esm2020 → esm2022}/lib/components/toast/rxjs/show-success-or-error-toast.operator.mjs +0 -0
  311. /package/{esm2020 → esm2022}/lib/components/toast/rxjs/show-toast.operator.mjs +0 -0
  312. /package/{esm2020 → esm2022}/lib/components/toast/toast.constant.mjs +0 -0
  313. /package/{esm2020 → esm2022}/lib/components/toggle-button-group/index.mjs +0 -0
  314. /package/{esm2020 → esm2022}/lib/components/toggle-button-group/public-api.mjs +0 -0
  315. /package/{esm2020 → esm2022}/lib/components/translation-form/decorators/translation-form-group.decorator.mjs +0 -0
  316. /package/{esm2020 → esm2022}/lib/components/translation-form/index.mjs +0 -0
  317. /package/{esm2020 → esm2022}/lib/components/translation-form/public-api.mjs +0 -0
  318. /package/{esm2020 → esm2022}/lib/components/translation-form/translation.form.mjs +0 -0
  319. /package/{esm2020 → esm2022}/lib/components/typeahead/index.mjs +0 -0
  320. /package/{esm2020 → esm2022}/lib/components/typeahead/public-api.mjs +0 -0
  321. /package/{esm2020 → esm2022}/lib/directives/autofocus/index.mjs +0 -0
  322. /package/{esm2020 → esm2022}/lib/directives/autofocus/public-api.mjs +0 -0
  323. /package/{esm2020 → esm2022}/lib/directives/autogrow/index.mjs +0 -0
  324. /package/{esm2020 → esm2022}/lib/directives/autogrow/public-api.mjs +0 -0
  325. /package/{esm2020 → esm2022}/lib/directives/chip-async-typeahead/index.mjs +0 -0
  326. /package/{esm2020 → esm2022}/lib/directives/chip-async-typeahead/public-api.mjs +0 -0
  327. /package/{esm2020 → esm2022}/lib/directives/chip-list/chip-list.constant.mjs +0 -0
  328. /package/{esm2020 → esm2022}/lib/directives/chip-list/index.mjs +0 -0
  329. /package/{esm2020 → esm2022}/lib/directives/chip-list/public-api.mjs +0 -0
  330. /package/{esm2020 → esm2022}/lib/directives/draggable-list/index.mjs +0 -0
  331. /package/{esm2020 → esm2022}/lib/directives/draggable-list/public-api.mjs +0 -0
  332. /package/{esm2020 → esm2022}/lib/directives/dropzone/index.mjs +0 -0
  333. /package/{esm2020 → esm2022}/lib/directives/dropzone/public-api.mjs +0 -0
  334. /package/{esm2020 → esm2022}/lib/directives/image-error-placeholder/index.mjs +0 -0
  335. /package/{esm2020 → esm2022}/lib/directives/image-error-placeholder/public-api.mjs +0 -0
  336. /package/{esm2020 → esm2022}/lib/directives/index.mjs +0 -0
  337. /package/{esm2020 → esm2022}/lib/directives/material/index.mjs +0 -0
  338. /package/{esm2020 → esm2022}/lib/directives/material/public-api.mjs +0 -0
  339. /package/{esm2020 → esm2022}/lib/directives/modals/index.mjs +0 -0
  340. /package/{esm2020 → esm2022}/lib/directives/modals/public-api.mjs +0 -0
  341. /package/{esm2020 → esm2022}/lib/directives/public-api.mjs +0 -0
  342. /package/{esm2020 → esm2022}/lib/directives/rerender/index.mjs +0 -0
  343. /package/{esm2020 → esm2022}/lib/directives/rerender/public-api.mjs +0 -0
  344. /package/{esm2020 → esm2022}/lib/directives/resolve/index.mjs +0 -0
  345. /package/{esm2020 → esm2022}/lib/directives/resolve/public-api.mjs +0 -0
  346. /package/{esm2020 → esm2022}/lib/directives/scroll-reset/index.mjs +0 -0
  347. /package/{esm2020 → esm2022}/lib/directives/scroll-reset/public-api.mjs +0 -0
  348. /package/{esm2020 → esm2022}/lib/directives/scrollbar/index.mjs +0 -0
  349. /package/{esm2020 → esm2022}/lib/directives/scrollbar/public-api.mjs +0 -0
  350. /package/{esm2020 → esm2022}/lib/directives/scrollbar/scrollbar.types.mjs +0 -0
  351. /package/{esm2020 → esm2022}/lib/directives/stop-propagation/index.mjs +0 -0
  352. /package/{esm2020 → esm2022}/lib/directives/stop-propagation/public-api.mjs +0 -0
  353. /package/{esm2020 → esm2022}/lib/directives/window/index.mjs +0 -0
  354. /package/{esm2020 → esm2022}/lib/directives/window/public-api.mjs +0 -0
  355. /package/{esm2020 → esm2022}/lib/pipes/index.mjs +0 -0
  356. /package/{esm2020 → esm2022}/lib/pipes/public-api.mjs +0 -0
  357. /package/{esm2020 → esm2022}/lib/providers/config/config.constants.mjs +0 -0
  358. /package/{esm2020 → esm2022}/lib/providers/config/config.model.mjs +0 -0
  359. /package/{esm2020 → esm2022}/lib/providers/config/index.mjs +0 -0
  360. /package/{esm2020 → esm2022}/lib/providers/config/public-api.mjs +0 -0
  361. /package/{esm2020 → esm2022}/lib/providers/index.mjs +0 -0
  362. /package/{esm2020 → esm2022}/lib/providers/media-watcher/index.mjs +0 -0
  363. /package/{esm2020 → esm2022}/lib/providers/media-watcher/public-api.mjs +0 -0
  364. /package/{esm2020 → esm2022}/lib/providers/public-api.mjs +0 -0
  365. /package/{esm2020 → esm2022}/lib/providers/splash-screen/index.mjs +0 -0
  366. /package/{esm2020 → esm2022}/lib/providers/splash-screen/public-api.mjs +0 -0
  367. /package/{esm2020 → esm2022}/lib/providers/utils/index.mjs +0 -0
  368. /package/{esm2020 → esm2022}/lib/providers/utils/public-api.mjs +0 -0
  369. /package/{esm2020 → esm2022}/lib/types/constructor.mjs +0 -0
  370. /package/{esm2020 → esm2022}/lib/utils/array.utils.mjs +0 -0
  371. /package/{esm2020 → esm2022}/lib/utils/case.utils.mjs +0 -0
  372. /package/{esm2020 → esm2022}/lib/utils/colors.utils.mjs +0 -0
  373. /package/{esm2020 → esm2022}/lib/utils/date.utils.mjs +0 -0
  374. /package/{esm2020 → esm2022}/lib/utils/file.utils.mjs +0 -0
  375. /package/{esm2020 → esm2022}/lib/utils/font-awesome.utils.mjs +0 -0
  376. /package/{esm2020 → esm2022}/lib/utils/form-data.utils.mjs +0 -0
  377. /package/{esm2020 → esm2022}/lib/utils/http-status.utils.mjs +0 -0
  378. /package/{esm2020 → esm2022}/lib/utils/index.mjs +0 -0
  379. /package/{esm2020 → esm2022}/lib/utils/keyboard.utils.mjs +0 -0
  380. /package/{esm2020 → esm2022}/lib/utils/lexorank.utils.mjs +0 -0
  381. /package/{esm2020 → esm2022}/lib/utils/modal.utils.mjs +0 -0
  382. /package/{esm2020 → esm2022}/lib/utils/number.utils.mjs +0 -0
  383. /package/{esm2020 → esm2022}/lib/utils/object.utils.mjs +0 -0
  384. /package/{esm2020 → esm2022}/lib/utils/promise.utils.mjs +0 -0
  385. /package/{esm2020 → esm2022}/lib/utils/public-api.mjs +0 -0
  386. /package/{esm2020 → esm2022}/lib/utils/query-params.utils.mjs +0 -0
  387. /package/{esm2020 → esm2022}/lib/utils/type.utils.mjs +0 -0
  388. /package/{esm2020 → esm2022}/lib/utils/url.utils.mjs +0 -0
  389. /package/{esm2020 → esm2022}/public-api.mjs +0 -0
  390. /package/{esm2020 → esm2022}/recursyve-nice-ui-kit.v2.mjs +0 -0
@@ -1,209 +0,0 @@
1
- import { Inject, Injectable, Optional } from "@angular/core";
2
- import { BehaviorSubject, catchError, defer, distinctUntilChanged, EMPTY, firstValueFrom, from, isObservable, mergeMap, Subject, switchMap } from "rxjs";
3
- import { fromPromise } from "rxjs/internal/observable/innerFrom";
4
- import { finalize, map } from "rxjs/operators";
5
- import { NICE_ASYNC_TYPEAHEAD_PROVIDER } from "../async-typeahead.constant";
6
- import * as i0 from "@angular/core";
7
- export class AsyncTypeaheadState {
8
- }
9
- export class NiceAsyncTypeaheadService {
10
- constructor(apis) {
11
- this.apis = apis;
12
- this.state$ = new BehaviorSubject({
13
- items: [],
14
- active: null,
15
- loading: false,
16
- loadingPage: false,
17
- initialized: false,
18
- searchQuery: null,
19
- page: 0,
20
- isLastPage: false,
21
- excludedIds: []
22
- });
23
- this.loading$ = this.state$.pipe(map(x => x.loading), distinctUntilChanged());
24
- this.loadingPage$ = this.state$.pipe(map(x => x.loadingPage), distinctUntilChanged());
25
- this.active$ = this.state$.pipe(map(x => x.active), distinctUntilChanged());
26
- this.items$ = this.state$.pipe(map(x => x.items), distinctUntilChanged());
27
- this.filteredItems$ = this.state$.pipe(map(x => x.items.filter(item => !x.excludedIds.includes(item.id))), distinctUntilChanged());
28
- this.requests$ = new Subject();
29
- if (!this.apis) {
30
- this.apis = [];
31
- }
32
- }
33
- listenForRequest() {
34
- this.requestsSubscription$ = this.requests$.pipe(switchMap((request) => this.sendRequest(request))).subscribe();
35
- }
36
- closeRequestSubscription() {
37
- this.requestsSubscription$?.unsubscribe();
38
- }
39
- async initialize(resource, options) {
40
- const { initialized } = this.state$.getValue();
41
- if (initialized) {
42
- return;
43
- }
44
- return this.search(resource, "", options);
45
- }
46
- sendRequest(request) {
47
- return defer(() => {
48
- const { active, initialized } = this.state$.getValue();
49
- if (active && !initialized) {
50
- this.state$.next({
51
- ...this.state$.value,
52
- initialized: true
53
- });
54
- return EMPTY;
55
- }
56
- const api = this.apis.find(x => x.resource === request.resource);
57
- if (!api) {
58
- return EMPTY;
59
- }
60
- if (request.page === 0) {
61
- this.state$.next({
62
- ...this.state$.value,
63
- loading: true,
64
- initialized: true,
65
- page: request.page,
66
- isLastPage: false,
67
- searchQuery: request.searchQuery
68
- });
69
- }
70
- else {
71
- this.state$.next({
72
- ...this.state$.value,
73
- loadingPage: true
74
- });
75
- }
76
- const result = api.search(request.searchQuery, request.page, request.searchOptions);
77
- if (isObservable(result)) {
78
- return result;
79
- }
80
- return fromPromise(result);
81
- }).pipe(map((result) => {
82
- this.state$.next({
83
- ...this.state$.value,
84
- items: request.page === 0 ? result.items : [...(this.state$.value.items ?? []), ...result.items],
85
- page: result.nextPage ? result.nextPage : this.state$.value.page,
86
- isLastPage: !result.nextPage
87
- });
88
- }), catchError(() => EMPTY), finalize(() => {
89
- this.state$.next({
90
- ...this.state$.value,
91
- loading: false,
92
- loadingPage: false
93
- });
94
- }));
95
- }
96
- search(resource, searchQuery, options) {
97
- this.requests$.next({
98
- resource,
99
- searchQuery,
100
- searchOptions: options,
101
- page: 0
102
- });
103
- }
104
- loadMore(resource, options) {
105
- const { loadingPage, isLastPage } = this.state$.getValue();
106
- if (loadingPage || isLastPage) {
107
- return;
108
- }
109
- const { searchQuery, page } = this.state$.getValue();
110
- this.requests$.next({
111
- resource,
112
- page,
113
- searchQuery,
114
- searchOptions: options,
115
- });
116
- }
117
- getActive() {
118
- return this.state$.value.active;
119
- }
120
- getInitialized() {
121
- return this.state$.value.initialized;
122
- }
123
- setActive(entity) {
124
- this.state$.next({
125
- ...this.state$.value,
126
- active: entity ?? null
127
- });
128
- }
129
- async setActiveId(resource, id, options) {
130
- if (!id) {
131
- return;
132
- }
133
- const api = this.apis.find(x => x.resource === resource);
134
- if (!api) {
135
- return;
136
- }
137
- try {
138
- this.state$.next({
139
- ...this.state$.value,
140
- loading: true
141
- });
142
- const localItem = this.state$.value.items.find((item) => item.id === id);
143
- if (localItem) {
144
- this.state$.next({
145
- ...this.state$.value,
146
- items: [localItem],
147
- active: localItem,
148
- page: 0,
149
- isLastPage: false
150
- });
151
- return;
152
- }
153
- const entity = await api.getById(id, options);
154
- if (!entity) {
155
- return;
156
- }
157
- this.state$.next({
158
- ...this.state$.value,
159
- items: [entity],
160
- active: entity,
161
- page: 0,
162
- isLastPage: false
163
- });
164
- }
165
- catch { }
166
- finally {
167
- this.state$.next({
168
- ...this.state$.value,
169
- loading: false
170
- });
171
- }
172
- }
173
- reloadActive(resource, options) {
174
- return this.setActiveId(resource, this.state$.value.active?.id, options);
175
- }
176
- reloadFilteredItems() {
177
- // TODO: Use a better way to trigger the items$ observable
178
- this.state$.next({
179
- ...this.state$.value
180
- });
181
- }
182
- setFilterFn(filterFn) {
183
- this.filteredItems$ = this.items$.pipe(mergeMap(items => {
184
- return from(Promise.all(items.map(async (item) => {
185
- const result = filterFn(item);
186
- const unwrappedResult = isObservable(result) ? await firstValueFrom(result) : await result;
187
- return [item, unwrappedResult];
188
- })));
189
- }), map(items => items.filter(([item, keep]) => keep).map(([item, keep]) => item)));
190
- }
191
- format(resource, item) {
192
- const api = this.apis.find(x => x.resource === resource);
193
- if (!api) {
194
- return "";
195
- }
196
- return api.format(item);
197
- }
198
- }
199
- NiceAsyncTypeaheadService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: NiceAsyncTypeaheadService, deps: [{ token: NICE_ASYNC_TYPEAHEAD_PROVIDER, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
200
- NiceAsyncTypeaheadService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: NiceAsyncTypeaheadService });
201
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: NiceAsyncTypeaheadService, decorators: [{
202
- type: Injectable
203
- }], ctorParameters: function () { return [{ type: undefined, decorators: [{
204
- type: Optional
205
- }, {
206
- type: Inject,
207
- args: [NICE_ASYNC_TYPEAHEAD_PROVIDER]
208
- }] }]; } });
209
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXN5bmMtdHlwZWFoZWFkLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uaWNlLXVpLWtpdC12Mi9zcmMvbGliL2NvbXBvbmVudHMvYXN5bmMtdHlwZWFoZWFkL3Byb3ZpZGVycy9hc3luYy10eXBlYWhlYWQuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDN0QsT0FBTyxFQUNILGVBQWUsRUFBRSxVQUFVLEVBQzNCLEtBQUssRUFBRSxvQkFBb0IsRUFDM0IsS0FBSyxFQUNMLGNBQWMsRUFDZCxJQUFJLEVBQ0osWUFBWSxFQUNaLFFBQVEsRUFFUixPQUFPLEVBRVAsU0FBUyxFQUNaLE1BQU0sTUFBTSxDQUFDO0FBQ2QsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ2pFLE9BQU8sRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDL0MsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sNkJBQTZCLENBQUM7O0FBRzVFLE1BQU0sT0FBTyxtQkFBbUI7Q0FVL0I7QUFVRCxNQUFNLE9BQU8seUJBQXlCO0lBc0JsQyxZQUFnRixJQUF1QztRQUF2QyxTQUFJLEdBQUosSUFBSSxDQUFtQztRQXJCL0csV0FBTSxHQUF5QyxJQUFJLGVBQWUsQ0FBQztZQUN2RSxLQUFLLEVBQUUsRUFBRTtZQUNULE1BQU0sRUFBRSxJQUFJO1lBQ1osT0FBTyxFQUFFLEtBQUs7WUFDZCxXQUFXLEVBQUUsS0FBSztZQUNsQixXQUFXLEVBQUUsS0FBSztZQUNsQixXQUFXLEVBQUUsSUFBSTtZQUNqQixJQUFJLEVBQUUsQ0FBQztZQUNQLFVBQVUsRUFBRSxLQUFLO1lBQ2pCLFdBQVcsRUFBRSxFQUFFO1NBQ2xCLENBQUMsQ0FBQztRQUVJ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cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlLCBPcHRpb25hbCB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQge1xuICAgIEJlaGF2aW9yU3ViamVjdCwgY2F0Y2hFcnJvcixcbiAgICBkZWZlciwgZGlzdGluY3RVbnRpbENoYW5nZWQsXG4gICAgRU1QVFksXG4gICAgZmlyc3RWYWx1ZUZyb20sXG4gICAgZnJvbSxcbiAgICBpc09ic2VydmFibGUsXG4gICAgbWVyZ2VNYXAsXG4gICAgT2JzZXJ2YWJsZSxcbiAgICBTdWJqZWN0LFxuICAgIFN1YnNjcmlwdGlvbixcbiAgICBzd2l0Y2hNYXBcbn0gZnJvbSBcInJ4anNcIjtcbmltcG9ydCB7IGZyb21Qcm9taXNlIH0gZnJvbSBcInJ4anMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9pbm5lckZyb21cIjtcbmltcG9ydCB7IGZpbmFsaXplLCBtYXAgfSBmcm9tIFwicnhqcy9vcGVyYXRvcnNcIjtcbmltcG9ydCB7IE5JQ0VfQVNZTkNfVFlQRUFIRUFEX1BST1ZJREVSIH0gZnJvbSBcIi4uL2FzeW5jLXR5cGVhaGVhZC5jb25zdGFudFwiO1xuaW1wb3J0IHsgTmljZUFzeW5jVHlwZWFoZWFkUHJvdmlkZXIsIE5pY2VBc3luY1R5cGVhaGVhZFNlYXJjaFJlc3VsdCB9IGZyb20gXCIuL2FzeW5jLXR5cGVhaGVhZC5wcm92aWRlclwiO1xuXG5leHBvcnQgY2xhc3MgQXN5bmNUeXBlYWhlYWRTdGF0ZSB7XG4gICAgaXRlbXM6IGFueVtdO1xuICAgIGFjdGl2ZTogYW55O1xuICAgIGxvYWRpbmc6IGJvb2xlYW47XG4gICAgbG9hZGluZ1BhZ2U6IGJvb2xlYW47XG4gICAgaW5pdGlhbGl6ZWQ6IGJvb2xlYW47XG4gICAgcGFnZTogbnVtYmVyO1xuICAgIGlzTGFzdFBhZ2U6IGJvb2xlYW47XG4gICAgc2VhcmNoUXVlcnk/OiBzdHJpbmc7XG4gICAgZXhjbHVkZWRJZHM6IGFueVtdO1xufVxuXG5leHBvcnQgdHlwZSBBc3luY1R5cGVhaGVhZFJlcXVlc3RzID0ge1xuICAgIHJlc291cmNlOiBzdHJpbmc7XG4gICAgcGFnZTogbnVtYmVyO1xuICAgIHNlYXJjaFF1ZXJ5Pzogc3RyaW5nO1xuICAgIHNlYXJjaE9wdGlvbnM/OiBhbnk7XG59O1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgTmljZUFzeW5jVHlwZWFoZWFkU2VydmljZSB7XG4gICAgcHJpdmF0ZSBzdGF0ZSQ6IEJlaGF2aW9yU3ViamVjdDxBc3luY1R5cGVhaGVhZFN0YXRlPiA9IG5ldyBCZWhhdmlvclN1YmplY3Qoe1xuICAgICAgICBpdGVtczogW10sXG4gICAgICAgIGFjdGl2ZTogbnVsbCxcbiAgICAgICAgbG9hZGluZzogZmFsc2UsXG4gICAgICAgIGxvYWRpbmdQYWdlOiBmYWxzZSxcbiAgICAgICAgaW5pdGlhbGl6ZWQ6IGZhbHNlLFxuICAgICAgICBzZWFyY2hRdWVyeTogbnVsbCxcbiAgICAgICAgcGFnZTogMCxcbiAgICAgICAgaXNMYXN0UGFnZTogZmFsc2UsXG4gICAgICAgIGV4Y2x1ZGVkSWRzOiBbXVxuICAgIH0pO1xuXG4gICAgcHVibGljIGxvYWRpbmckID0gdGhpcy5zdGF0ZSQucGlwZShtYXAoeCA9PiB4LmxvYWRpbmcpLCBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpKTtcbiAgICBwdWJsaWMgbG9hZGluZ1BhZ2UkID0gdGhpcy5zdGF0ZSQucGlwZShtYXAoeCA9PiB4LmxvYWRpbmdQYWdlKSwgZGlzdGluY3RVbnRpbENoYW5nZWQoKSk7XG4gICAgcHVibGljIGFjdGl2ZSQgPSB0aGlzLnN0YXRlJC5waXBlKG1hcCh4ID0+IHguYWN0aXZlKSwgZGlzdGluY3RVbnRpbENoYW5nZWQoKSk7XG4gICAgcHVibGljIGl0ZW1zJCA9IHRoaXMuc3RhdGUkLnBpcGUobWFwKHggPT4geC5pdGVtcyksIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCkpO1xuICAgIHB1YmxpYyBmaWx0ZXJlZEl0ZW1zJCA9IHRoaXMuc3RhdGUkLnBpcGUobWFwKHggPT4geC5pdGVtcy5maWx0ZXIoaXRlbSA9PiAheC5leGNsdWRlZElkcy5pbmNsdWRlcyhpdGVtLmlkKSkpLCBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpKTtcblxuICAgIHByaXZhdGUgcmVxdWVzdHMkID0gbmV3IFN1YmplY3Q8QXN5bmNUeXBlYWhlYWRSZXF1ZXN0cz4oKTtcbiAgICBwcml2YXRlIHJlcXVlc3RzU3Vic2NyaXB0aW9uJDogU3Vic2NyaXB0aW9uO1xuXG4gICAgY29uc3RydWN0b3IoQE9wdGlvbmFsKCkgQEluamVjdChOSUNFX0FTWU5DX1RZUEVBSEVBRF9QUk9WSURFUikgcHJpdmF0ZSByZWFkb25seSBhcGlzOiBOaWNlQXN5bmNUeXBlYWhlYWRQcm92aWRlcjxhbnk+W10pIHtcbiAgICAgICAgaWYgKCF0aGlzLmFwaXMpIHtcbiAgICAgICAgICAgIHRoaXMuYXBpcyA9IFtdO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIGxpc3RlbkZvclJlcXVlc3QoKTogdm9pZCB7XG4gICAgICAgIHRoaXMucmVxdWVzdHNTdWJzY3JpcHRpb24kID0gdGhpcy5yZXF1ZXN0cyQucGlwZShcbiAgICAgICAgICAgIHN3aXRjaE1hcCgocmVxdWVzdCkgPT4gdGhpcy5zZW5kUmVxdWVzdChyZXF1ZXN0KSlcbiAgICAgICAgKS5zdWJzY3JpYmUoKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgY2xvc2VSZXF1ZXN0U3Vic2NyaXB0aW9uKCk6IHZvaWQge1xuICAgICAgICB0aGlzLnJlcXVlc3RzU3Vic2NyaXB0aW9uJD8udW5zdWJzY3JpYmUoKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgYXN5bmMgaW5pdGlhbGl6ZShyZXNvdXJjZTogc3RyaW5nLCBvcHRpb25zPzogYW55KTogUHJvbWlzZTx2b2lkPiB7XG4gICAgICAgIGNvbnN0IHsgaW5pdGlhbGl6ZWQgfSA9IHRoaXMuc3RhdGUkLmdldFZhbHVlKCk7XG4gICAgICAgIGlmIChpbml0aWFsaXplZCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHRoaXMuc2VhcmNoKHJlc291cmNlLCBcIlwiLCBvcHRpb25zKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc2VuZFJlcXVlc3QocmVxdWVzdDogQXN5bmNUeXBlYWhlYWRSZXF1ZXN0cyk6IE9ic2VydmFibGU8dm9pZD4ge1xuICAgICAgICByZXR1cm4gZGVmZXIoKCkgPT4ge1xuICAgICAgICAgICAgY29uc3QgeyBhY3RpdmUsIGluaXRpYWxpemVkIH0gPSB0aGlzLnN0YXRlJC5nZXRWYWx1ZSgpO1xuXG4gICAgICAgICAgICBpZiAoYWN0aXZlICYmICFpbml0aWFsaXplZCkge1xuICAgICAgICAgICAgICAgIHRoaXMuc3RhdGUkLm5leHQoe1xuICAgICAgICAgICAgICAgICAgICAuLi50aGlzLnN0YXRlJC52YWx1ZSxcbiAgICAgICAgICAgICAgICAgICAgaW5pdGlhbGl6ZWQ6IHRydWVcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICByZXR1cm4gRU1QVFk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGNvbnN0IGFwaSA9IHRoaXMuYXBpcy5maW5kKHggPT4geC5yZXNvdXJjZSA9PT0gcmVxdWVzdC5yZXNvdXJjZSk7XG4gICAgICAgICAgICBpZiAoIWFwaSkge1xuICAgICAgICAgICAgICAgIHJldHVybiBFTVBUWTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKHJlcXVlc3QucGFnZSA9PT0gMCkge1xuICAgICAgICAgICAgICAgIHRoaXMuc3RhdGUkLm5leHQoe1xuICAgICAgICAgICAgICAgICAgICAuLi50aGlzLnN0YXRlJC52YWx1ZSxcbiAgICAgICAgICAgICAgICAgICAgbG9hZGluZzogdHJ1ZSxcbiAgICAgICAgICAgICAgICAgICAgaW5pdGlhbGl6ZWQ6IHRydWUsXG4gICAgICAgICAgICAgICAgICAgIHBhZ2U6IHJlcXVlc3QucGFnZSxcbiAgICAgICAgICAgICAgICAgICAgaXNMYXN0UGFnZTogZmFsc2UsXG4gICAgICAgICAgICAgICAgICAgIHNlYXJjaFF1ZXJ5OiByZXF1ZXN0LnNlYXJjaFF1ZXJ5XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHRoaXMuc3RhdGUkLm5leHQoe1xuICAgICAgICAgICAgICAgICAgICAuLi50aGlzLnN0YXRlJC52YWx1ZSxcbiAgICAgICAgICAgICAgICAgICAgbG9hZGluZ1BhZ2U6IHRydWVcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgY29uc3QgcmVzdWx0ID0gYXBpLnNlYXJjaChyZXF1ZXN0LnNlYXJjaFF1ZXJ5LCByZXF1ZXN0LnBhZ2UsIHJlcXVlc3Quc2VhcmNoT3B0aW9ucyk7XG4gICAgICAgICAgICBpZiAoaXNPYnNlcnZhYmxlKHJlc3VsdCkpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gcmVzdWx0O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICByZXR1cm4gZnJvbVByb21pc2UocmVzdWx0KTtcbiAgICAgICAgfSkucGlwZShcbiAgICAgICAgICAgIG1hcCgocmVzdWx0KSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5zdGF0ZSQubmV4dCh7XG4gICAgICAgICAgICAgICAgICAgIC4uLnRoaXMuc3RhdGUkLnZhbHVlLFxuICAgICAgICAgICAgICAgICAgICBpdGVtczogcmVxdWVzdC5wYWdlID09PSAwID8gcmVzdWx0Lml0ZW1zIDogWy4uLih0aGlzLnN0YXRlJC52YWx1ZS5pdGVtcyA/PyBbXSksIC4uLnJlc3VsdC5pdGVtc10sXG4gICAgICAgICAgICAgICAgICAgIHBhZ2U6IHJlc3VsdC5uZXh0UGFnZSA/IHJlc3VsdC5uZXh0UGFnZSA6IHRoaXMuc3RhdGUkLnZhbHVlLnBhZ2UsXG4gICAgICAgICAgICAgICAgICAgIGlzTGFzdFBhZ2U6ICFyZXN1bHQubmV4dFBhZ2VcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgY2F0Y2hFcnJvcigoKSA9PiBFTVBUWSksXG4gICAgICAgICAgICBmaW5hbGl6ZSgoKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5zdGF0ZSQubmV4dCh7XG4gICAgICAgICAgICAgICAgICAgIC4uLnRoaXMuc3RhdGUkLnZhbHVlLFxuICAgICAgICAgICAgICAgICAgICBsb2FkaW5nOiBmYWxzZSxcbiAgICAgICAgICAgICAgICAgICAgbG9hZGluZ1BhZ2U6IGZhbHNlXG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9KVxuICAgICAgICApO1xuICAgIH1cblxuICAgIHB1YmxpYyBzZWFyY2gocmVzb3VyY2U6IHN0cmluZywgc2VhcmNoUXVlcnk6IHN0cmluZywgb3B0aW9ucz86IGFueSk6IHZvaWQge1xuICAgICAgICB0aGlzLnJlcXVlc3RzJC5uZXh0KHtcbiAgICAgICAgICAgIHJlc291cmNlLFxuICAgICAgICAgICAgc2VhcmNoUXVlcnksXG4gICAgICAgICAgICBzZWFyY2hPcHRpb25zOiBvcHRpb25zLFxuICAgICAgICAgICAgcGFnZTogMFxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgbG9hZE1vcmUocmVzb3VyY2U6IHN0cmluZywgb3B0aW9ucz86IGFueSk6IHZvaWQge1xuICAgICAgICBjb25zdCB7IGxvYWRpbmdQYWdlLCBpc0xhc3RQYWdlIH0gPSB0aGlzLnN0YXRlJC5nZXRWYWx1ZSgpO1xuICAgICAgICBpZiAobG9hZGluZ1BhZ2UgfHwgaXNMYXN0UGFnZSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgeyBzZWFyY2hRdWVyeSwgcGFnZSB9ID0gdGhpcy5zdGF0ZSQuZ2V0VmFsdWUoKTtcbiAgICAgICAgdGhpcy5yZXF1ZXN0cyQubmV4dCh7XG4gICAgICAgICAgICByZXNvdXJjZSxcbiAgICAgICAgICAgIHBhZ2UsXG4gICAgICAgICAgICBzZWFyY2hRdWVyeSxcbiAgICAgICAgICAgIHNlYXJjaE9wdGlvbnM6IG9wdGlvbnMsXG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXRBY3RpdmUoKTogYW55IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuc3RhdGUkLnZhbHVlLmFjdGl2ZTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0SW5pdGlhbGl6ZWQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLnN0YXRlJC52YWx1ZS5pbml0aWFsaXplZDtcbiAgICB9XG5cbiAgICBwdWJsaWMgc2V0QWN0aXZlKGVudGl0eTogYW55IHwgdW5kZWZpbmVkKTogdm9pZCB7XG4gICAgICAgIHRoaXMuc3RhdGUkLm5leHQoe1xuICAgICAgICAgICAgLi4udGhpcy5zdGF0ZSQudmFsdWUsXG4gICAgICAgICAgICBhY3RpdmU6IGVudGl0eSA/PyBudWxsXG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHB1YmxpYyBhc3luYyBzZXRBY3RpdmVJZChyZXNvdXJjZTogc3RyaW5nLCBpZDogYW55LCBvcHRpb25zPzogYW55KTogUHJvbWlzZTx2b2lkPiB7XG4gICAgICAgIGlmICghaWQpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IGFwaSA9IHRoaXMuYXBpcy5maW5kKHggPT4geC5yZXNvdXJjZSA9PT0gcmVzb3VyY2UpO1xuICAgICAgICBpZiAoIWFwaSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIHRoaXMuc3RhdGUkLm5leHQoe1xuICAgICAgICAgICAgICAgIC4uLnRoaXMuc3RhdGUkLnZhbHVlLFxuICAgICAgICAgICAgICAgIGxvYWRpbmc6IHRydWVcbiAgICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgICBjb25zdCBsb2NhbEl0ZW0gPSB0aGlzLnN0YXRlJC52YWx1ZS5pdGVtcy5maW5kKChpdGVtKSA9PiBpdGVtLmlkID09PSBpZCk7XG4gICAgICAgICAgICBpZiAobG9jYWxJdGVtKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5zdGF0ZSQubmV4dCh7XG4gICAgICAgICAgICAgICAgICAgIC4uLnRoaXMuc3RhdGUkLnZhbHVlLFxuICAgICAgICAgICAgICAgICAgICBpdGVtczogW2xvY2FsSXRlbV0sXG4gICAgICAgICAgICAgICAgICAgIGFjdGl2ZTogbG9jYWxJdGVtLFxuICAgICAgICAgICAgICAgICAgICBwYWdlOiAwLFxuICAgICAgICAgICAgICAgICAgICBpc0xhc3RQYWdlOiBmYWxzZVxuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgY29uc3QgZW50aXR5ID0gYXdhaXQgYXBpLmdldEJ5SWQoaWQsIG9wdGlvbnMpO1xuICAgICAgICAgICAgaWYgKCFlbnRpdHkpIHtcbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHRoaXMuc3RhdGUkLm5leHQoe1xuICAgICAgICAgICAgICAgIC4uLnRoaXMuc3RhdGUkLnZhbHVlLFxuICAgICAgICAgICAgICAgIGl0ZW1zOiBbZW50aXR5XSxcbiAgICAgICAgICAgICAgICBhY3RpdmU6IGVudGl0eSxcbiAgICAgICAgICAgICAgICBwYWdlOiAwLFxuICAgICAgICAgICAgICAgIGlzTGFzdFBhZ2U6IGZhbHNlXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfSBjYXRjaCB7fSBmaW5hbGx5IHtcbiAgICAgICAgICAgIHRoaXMuc3RhdGUkLm5leHQoe1xuICAgICAgICAgICAgICAgIC4uLnRoaXMuc3RhdGUkLnZhbHVlLFxuICAgICAgICAgICAgICAgIGxvYWRpbmc6IGZhbHNlXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyByZWxvYWRBY3RpdmUocmVzb3VyY2U6IHN0cmluZywgb3B0aW9ucz86IGFueSk6IFByb21pc2U8dm9pZD4ge1xuICAgICAgICByZXR1cm4gdGhpcy5zZXRBY3RpdmVJZChyZXNvdXJjZSwgdGhpcy5zdGF0ZSQudmFsdWUuYWN0aXZlPy5pZCwgb3B0aW9ucyk7XG4gICAgfVxuXG4gICAgcHVibGljIHJlbG9hZEZpbHRlcmVkSXRlbXMoKTogdm9pZCB7XG4gICAgICAgIC8vIFRPRE86IFVzZSBhIGJldHRlciB3YXkgdG8gdHJpZ2dlciB0aGUgaXRlbXMkIG9ic2VydmFibGVcbiAgICAgICAgdGhpcy5zdGF0ZSQubmV4dCh7XG4gICAgICAgICAgICAuLi50aGlzLnN0YXRlJC52YWx1ZVxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc2V0RmlsdGVyRm4oZmlsdGVyRm46ICh2YWx1ZTogYW55KSA9PiBib29sZWFuIHwgUHJvbWlzZTxib29sZWFuPiB8IE9ic2VydmFibGU8Ym9vbGVhbj4pOiB2b2lkIHtcbiAgICAgICAgdGhpcy5maWx0ZXJlZEl0ZW1zJCA9IHRoaXMuaXRlbXMkLnBpcGUobWVyZ2VNYXAoaXRlbXMgPT4ge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gZnJvbShQcm9taXNlLmFsbChpdGVtcy5tYXAoYXN5bmMgaXRlbSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCByZXN1bHQgPSBmaWx0ZXJGbihpdGVtKTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgdW53cmFwcGVkUmVzdWx0ID0gaXNPYnNlcnZhYmxlKHJlc3VsdCkgPyBhd2FpdCBmaXJzdFZhbHVlRnJvbShyZXN1bHQpIDogYXdhaXQgcmVzdWx0O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gW2l0ZW0sIHVud3JhcHBlZFJlc3VsdF07XG4gICAgICAgICAgICAgICAgICAgIH0pKSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgKSxcbiAgICAgICAgICAgIG1hcChpdGVtcyA9PiBpdGVtcy5maWx0ZXIoKFtpdGVtLCBrZWVwXSkgPT4ga2VlcCkubWFwKChbaXRlbSwga2VlcF0pID0+IGl0ZW0pKVxuICAgICAgICApO1xuICAgIH1cblxuICAgIHB1YmxpYyBmb3JtYXQocmVzb3VyY2U6IHN0cmluZywgaXRlbTogc3RyaW5nKTogc3RyaW5nIHtcbiAgICAgICAgY29uc3QgYXBpID0gdGhpcy5hcGlzLmZpbmQoeCA9PiB4LnJlc291cmNlID09PSByZXNvdXJjZSk7XG4gICAgICAgIGlmICghYXBpKSB7XG4gICAgICAgICAgICByZXR1cm4gXCJcIjtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBhcGkuZm9ybWF0KGl0ZW0pO1xuICAgIH1cbn1cbiJdfQ==
@@ -1,41 +0,0 @@
1
- import { CommonModule } from "@angular/common";
2
- import { NgModule } from "@angular/core";
3
- import { MatButtonModule } from "@angular/material/button";
4
- import { MatCardModule } from "@angular/material/card";
5
- import { MatIconModule } from "@angular/material/icon";
6
- import { TranslateModule } from "@ngx-translate/core";
7
- import { CarouselComponent } from "./carousel.component";
8
- import { PictureModalComponent } from "./picture-modal";
9
- import { PictureModalService } from "./picture-modal";
10
- import { CarouselLayoutPipe } from "./pipe/carousel-layout.pipe";
11
- import * as i0 from "@angular/core";
12
- export class NiceCarouselModule {
13
- }
14
- NiceCarouselModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: NiceCarouselModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
15
- NiceCarouselModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: NiceCarouselModule, declarations: [CarouselComponent, PictureModalComponent, CarouselLayoutPipe], imports: [CommonModule,
16
- MatCardModule,
17
- MatButtonModule,
18
- TranslateModule,
19
- MatIconModule], exports: [CarouselComponent] });
20
- NiceCarouselModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: NiceCarouselModule, providers: [PictureModalService], imports: [CommonModule,
21
- MatCardModule,
22
- MatButtonModule,
23
- TranslateModule,
24
- MatIconModule] });
25
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: NiceCarouselModule, decorators: [{
26
- type: NgModule,
27
- args: [{
28
- imports: [
29
- CommonModule,
30
- MatCardModule,
31
- MatButtonModule,
32
- TranslateModule,
33
- MatIconModule
34
- ],
35
- exports: [CarouselComponent],
36
- declarations: [CarouselComponent, PictureModalComponent, CarouselLayoutPipe],
37
- entryComponents: [PictureModalComponent],
38
- providers: [PictureModalService]
39
- }]
40
- }] });
41
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2Fyb3VzZWwubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmljZS11aS1raXQtdjIvc3JjL2xpYi9jb21wb25lbnRzL2Nhcm91c2VsL2Nhcm91c2VsLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDdEQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDekQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDeEQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDdEQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7O0FBZWpFLE1BQU0sT0FBTyxrQkFBa0I7OytHQUFsQixrQkFBa0I7Z0hBQWxCLGtCQUFrQixpQkFKWixpQkFBaUIsRUFBRSxxQkFBcUIsRUFBRSxrQkFBa0IsYUFQdkUsWUFBWTtRQUNaLGFBQWE7UUFDYixlQUFlO1FBQ2YsZUFBZTtRQUNmLGFBQWEsYUFFUCxpQkFBaUI7Z0hBS2xCLGtCQUFrQixhQUZoQixDQUFDLG1CQUFtQixDQUFDLFlBVDVCLFlBQVk7UUFDWixhQUFhO1FBQ2IsZUFBZTtRQUNmLGVBQWU7UUFDZixhQUFhOzJGQU9SLGtCQUFrQjtrQkFiOUIsUUFBUTttQkFBQztvQkFDTixPQUFPLEVBQUU7d0JBQ0wsWUFBWTt3QkFDWixhQUFhO3dCQUNiLGVBQWU7d0JBQ2YsZUFBZTt3QkFDZixhQUFhO3FCQUNoQjtvQkFDRCxPQUFPLEVBQUUsQ0FBQyxpQkFBaUIsQ0FBQztvQkFDNUIsWUFBWSxFQUFFLENBQUMsaUJBQWlCLEVBQUUscUJBQXFCLEVBQUUsa0JBQWtCLENBQUM7b0JBQzVFLGVBQWUsRUFBRSxDQUFDLHFCQUFxQixDQUFDO29CQUN4QyxTQUFTLEVBQUUsQ0FBQyxtQkFBbUIsQ0FBQztpQkFDbkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29tbW9uXCI7XG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBNYXRCdXR0b25Nb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvbWF0ZXJpYWwvYnV0dG9uXCI7XG5pbXBvcnQgeyBNYXRDYXJkTW9kdWxlIH0gZnJvbSBcIkBhbmd1bGFyL21hdGVyaWFsL2NhcmRcIjtcbmltcG9ydCB7IE1hdEljb25Nb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvblwiO1xuaW1wb3J0IHsgVHJhbnNsYXRlTW9kdWxlIH0gZnJvbSBcIkBuZ3gtdHJhbnNsYXRlL2NvcmVcIjtcbmltcG9ydCB7IENhcm91c2VsQ29tcG9uZW50IH0gZnJvbSBcIi4vY2Fyb3VzZWwuY29tcG9uZW50XCI7XG5pbXBvcnQgeyBQaWN0dXJlTW9kYWxDb21wb25lbnQgfSBmcm9tIFwiLi9waWN0dXJlLW1vZGFsXCI7XG5pbXBvcnQgeyBQaWN0dXJlTW9kYWxTZXJ2aWNlIH0gZnJvbSBcIi4vcGljdHVyZS1tb2RhbFwiO1xuaW1wb3J0IHsgQ2Fyb3VzZWxMYXlvdXRQaXBlIH0gZnJvbSBcIi4vcGlwZS9jYXJvdXNlbC1sYXlvdXQucGlwZVwiO1xuXG5ATmdNb2R1bGUoe1xuICAgIGltcG9ydHM6IFtcbiAgICAgICAgQ29tbW9uTW9kdWxlLFxuICAgICAgICBNYXRDYXJkTW9kdWxlLFxuICAgICAgICBNYXRCdXR0b25Nb2R1bGUsXG4gICAgICAgIFRyYW5zbGF0ZU1vZHVsZSxcbiAgICAgICAgTWF0SWNvbk1vZHVsZVxuICAgIF0sXG4gICAgZXhwb3J0czogW0Nhcm91c2VsQ29tcG9uZW50XSxcbiAgICBkZWNsYXJhdGlvbnM6IFtDYXJvdXNlbENvbXBvbmVudCwgUGljdHVyZU1vZGFsQ29tcG9uZW50LCBDYXJvdXNlbExheW91dFBpcGVdLFxuICAgIGVudHJ5Q29tcG9uZW50czogW1BpY3R1cmVNb2RhbENvbXBvbmVudF0sXG4gICAgcHJvdmlkZXJzOiBbUGljdHVyZU1vZGFsU2VydmljZV1cbn0pXG5leHBvcnQgY2xhc3MgTmljZUNhcm91c2VsTW9kdWxlIHt9XG4iXX0=
@@ -1,95 +0,0 @@
1
- import { Component, forwardRef, Input, ViewEncapsulation } from "@angular/core";
2
- import { FormControl, FormGroup, NG_VALUE_ACCESSOR } from "@angular/forms";
3
- import { isSameDay } from "date-fns";
4
- import subDays from "date-fns/subDays";
5
- import { pairwise, startWith } from "rxjs";
6
- import { filter } from "rxjs/operators";
7
- import { HeaderComponent } from "./components/header/header.component";
8
- import * as i0 from "@angular/core";
9
- import * as i1 from "@angular/common";
10
- import * as i2 from "@angular/material/datepicker";
11
- import * as i3 from "@angular/material/form-field";
12
- import * as i4 from "@angular/forms";
13
- import * as i5 from "../../pipes/localized-date.pipe";
14
- export class NiceDateRangePickerComponent {
15
- constructor() {
16
- this.HeaderComponent = HeaderComponent;
17
- this.min = subDays(new Date(), 3);
18
- this.max = new Date();
19
- this.nowIsMax = true;
20
- this.allowClear = true;
21
- this.formGroup = new FormGroup({
22
- from: new FormControl(),
23
- to: new FormControl()
24
- });
25
- this.now = new Date();
26
- }
27
- ngOnInit() {
28
- this.value = {
29
- from: this.min,
30
- to: this.max
31
- };
32
- this.formGroup.patchValue(this.value);
33
- this.formGroup.valueChanges.pipe(startWith(this.value), pairwise(), filter(([before, after]) => {
34
- /**
35
- * We filter out the value changes to only emit when the selection is completed/
36
- */
37
- if (!after.from && !after.to) {
38
- return true;
39
- }
40
- // This is the middle of the selection
41
- if (after.from && !after.to) {
42
- return false;
43
- }
44
- // This means that the selection is done
45
- if (!before.to && after.to) {
46
- return true;
47
- }
48
- // This is an edge case when we select a new range with an active range selected.
49
- // The after.to will be at null after the after.from is emitted
50
- if (!isSameDay(before.from, after.from) && isSameDay(before.to, after.to)) {
51
- return false;
52
- }
53
- // Skip if noting has changed
54
- return !(isSameDay(before.from, after.from) && !isSameDay(before.to, after.to));
55
- })).subscribe((_) => {
56
- this.value = this.formGroup.getRawValue();
57
- this.propagate?.(this.value);
58
- });
59
- }
60
- writeValue(value) {
61
- this.value = value;
62
- this.formGroup.patchValue(this.value);
63
- }
64
- registerOnChange(fn) {
65
- this.propagate = fn;
66
- }
67
- registerOnTouched(fn) { }
68
- }
69
- NiceDateRangePickerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: NiceDateRangePickerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
70
- NiceDateRangePickerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: NiceDateRangePickerComponent, selector: "nice-date-range-picker", inputs: { min: "min", max: "max", nowIsMax: "nowIsMax", allowClear: "allowClear" }, providers: [
71
- {
72
- provide: NG_VALUE_ACCESSOR,
73
- useExisting: forwardRef(() => NiceDateRangePickerComponent),
74
- multi: true
75
- }
76
- ], ngImport: i0, template: "<div class=\"nice-date-picker-container\">\n <div class=\"nice-date-picker-header\">\n <div class=\"from-to\">\n <ng-container *ngIf=\"value?.from\">\n {{ value.from | localizedDate: \"longDate\" }}\n </ng-container>\n <ng-container *ngIf=\"value?.to\">\n <div class=\"separator\">-</div>\n {{ value.to | localizedDate: \"longDate\" }}\n </ng-container>\n </div>\n </div>\n\n <mat-date-range-input [formGroup]=\"formGroup\" [max]=\"nowIsMax ? now : null\" [rangePicker]=\"picker\">\n <input formControlName=\"from\" class=\"hidden-input\" matStartDate placeholder=\"Start date\">\n <input formControlName=\"to\" class=\"hidden-input\" matEndDate placeholder=\"End date\">\n </mat-date-range-input>\n\n <mat-datepicker-toggle matSuffix [for]=\"picker\"></mat-datepicker-toggle>\n\n <mat-date-range-picker\n [calendarHeaderComponent]=\"HeaderComponent\"\n panelClass=\"nice-date-range-picker\"\n #picker\n ></mat-date-range-picker>\n</div>\n", styles: ["nice-date-range-picker .mat-date-range-input{width:0;height:0;padding:0;margin:0;border:none;visibility:hidden}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.MatDatepickerToggle, selector: "mat-datepicker-toggle", inputs: ["for", "tabIndex", "aria-label", "disabled", "disableRipple"], exportAs: ["matDatepickerToggle"] }, { kind: "component", type: i2.MatDateRangeInput, selector: "mat-date-range-input", inputs: ["rangePicker", "required", "dateFilter", "min", "max", "disabled", "separator", "comparisonStart", "comparisonEnd"], exportAs: ["matDateRangeInput"] }, { kind: "directive", type: i2.MatStartDate, selector: "input[matStartDate]", inputs: ["errorStateMatcher"], outputs: ["dateChange", "dateInput"] }, { kind: "directive", type: i2.MatEndDate, selector: "input[matEndDate]", inputs: ["errorStateMatcher"], outputs: ["dateChange", "dateInput"] }, { kind: "component", type: i2.MatDateRangePicker, selector: "mat-date-range-picker", exportAs: ["matDateRangePicker"] }, { kind: "directive", type: i3.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "directive", type: i4.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: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i4.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i4.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "pipe", type: i5.LocalizedDatePipe, name: "localizedDate" }], encapsulation: i0.ViewEncapsulation.None });
77
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: NiceDateRangePickerComponent, decorators: [{
78
- type: Component,
79
- args: [{ selector: "nice-date-range-picker", encapsulation: ViewEncapsulation.None, providers: [
80
- {
81
- provide: NG_VALUE_ACCESSOR,
82
- useExisting: forwardRef(() => NiceDateRangePickerComponent),
83
- multi: true
84
- }
85
- ], template: "<div class=\"nice-date-picker-container\">\n <div class=\"nice-date-picker-header\">\n <div class=\"from-to\">\n <ng-container *ngIf=\"value?.from\">\n {{ value.from | localizedDate: \"longDate\" }}\n </ng-container>\n <ng-container *ngIf=\"value?.to\">\n <div class=\"separator\">-</div>\n {{ value.to | localizedDate: \"longDate\" }}\n </ng-container>\n </div>\n </div>\n\n <mat-date-range-input [formGroup]=\"formGroup\" [max]=\"nowIsMax ? now : null\" [rangePicker]=\"picker\">\n <input formControlName=\"from\" class=\"hidden-input\" matStartDate placeholder=\"Start date\">\n <input formControlName=\"to\" class=\"hidden-input\" matEndDate placeholder=\"End date\">\n </mat-date-range-input>\n\n <mat-datepicker-toggle matSuffix [for]=\"picker\"></mat-datepicker-toggle>\n\n <mat-date-range-picker\n [calendarHeaderComponent]=\"HeaderComponent\"\n panelClass=\"nice-date-range-picker\"\n #picker\n ></mat-date-range-picker>\n</div>\n", styles: ["nice-date-range-picker .mat-date-range-input{width:0;height:0;padding:0;margin:0;border:none;visibility:hidden}\n"] }]
86
- }], propDecorators: { min: [{
87
- type: Input
88
- }], max: [{
89
- type: Input
90
- }], nowIsMax: [{
91
- type: Input
92
- }], allowClear: [{
93
- type: Input
94
- }] } });
95
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS1yYW5nZS1waWNrZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmljZS11aS1raXQtdjIvc3JjL2xpYi9jb21wb25lbnRzL2RhdGUtcmFuZ2UtcGlja2VyL2RhdGUtcmFuZ2UtcGlja2VyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25pY2UtdWkta2l0LXYyL3NyYy9saWIvY29tcG9uZW50cy9kYXRlLXJhbmdlLXBpY2tlci9kYXRlLXJhbmdlLXBpY2tlci50ZW1wbGF0ZS5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBVSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN4RixPQUFPLEVBQXdCLFdBQVcsRUFBRSxTQUFTLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNqRyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQ3JDLE9BQU8sT0FBTyxNQUFNLGtCQUFrQixDQUFDO0FBQ3ZDLE9BQU8sRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4QyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sc0NBQXNDLENBQUM7Ozs7Ozs7QUFvQnZFLE1BQU0sT0FBTyw0QkFBNEI7SUFiekM7UUFjb0Isb0JBQWUsR0FBRyxlQUFlLENBQUM7UUFHM0MsUUFBRyxHQUFHLE9BQU8sQ0FBQyxJQUFJLElBQUksRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBRzdCLFFBQUcsR0FBRyxJQUFJLElBQUksRUFBRSxDQUFDO1FBR2pCLGFBQVEsR0FBRyxJQUFJLENBQUM7UUFHaEIsZUFBVSxHQUFHLElBQUksQ0FBQztRQUVsQixjQUFT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QUcsRUFBRSw2QkFBNkIsQ0FBQzs0QkFDM0QsS0FBSyxFQUFFLElBQUk7eUJBQ2Q7cUJBQ0o7OEJBTU0sR0FBRztzQkFEVCxLQUFLO2dCQUlDLEdBQUc7c0JBRFQsS0FBSztnQkFJQyxRQUFRO3NCQURkLEtBQUs7Z0JBSUMsVUFBVTtzQkFEaEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgZm9yd2FyZFJlZiwgSW5wdXQsIE9uSW5pdCwgVmlld0VuY2Fwc3VsYXRpb24gfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgQ29udHJvbFZhbHVlQWNjZXNzb3IsIEZvcm1Db250cm9sLCBGb3JtR3JvdXAsIE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSBcIkBhbmd1bGFyL2Zvcm1zXCI7XG5pbXBvcnQgeyBpc1NhbWVEYXkgfSBmcm9tIFwiZGF0ZS1mbnNcIjtcbmltcG9ydCBzdWJEYXlzIGZyb20gXCJkYXRlLWZucy9zdWJEYXlzXCI7XG5pbXBvcnQgeyBwYWlyd2lzZSwgc3RhcnRXaXRoIH0gZnJvbSBcInJ4anNcIjtcbmltcG9ydCB7IGZpbHRlciB9IGZyb20gXCJyeGpzL29wZXJhdG9yc1wiO1xuaW1wb3J0IHsgSGVhZGVyQ29tcG9uZW50IH0gZnJvbSBcIi4vY29tcG9uZW50cy9oZWFkZXIvaGVhZGVyLmNvbXBvbmVudFwiO1xuXG5leHBvcnQgaW50ZXJmYWNlIE5pY2VEYXRlUmFuZ2VQaWNrZXJWYWx1ZSB7XG4gICAgZnJvbTogRGF0ZTtcbiAgICB0bzogRGF0ZTtcbn1cblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6IFwibmljZS1kYXRlLXJhbmdlLXBpY2tlclwiLFxuICAgIHRlbXBsYXRlVXJsOiBcImRhdGUtcmFuZ2UtcGlja2VyLnRlbXBsYXRlLmh0bWxcIixcbiAgICBzdHlsZVVybHM6IFtcImRhdGUtcmFuZ2UtcGlja2VyLnN0eWxlLnNjc3NcIl0sXG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAge1xuICAgICAgICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgICAgICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBOaWNlRGF0ZVJhbmdlUGlja2VyQ29tcG9uZW50KSxcbiAgICAgICAgICAgIG11bHRpOiB0cnVlXG4gICAgICAgIH1cbiAgICBdXG59KVxuZXhwb3J0IGNsYXNzIE5pY2VEYXRlUmFuZ2VQaWNrZXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIENvbnRyb2xWYWx1ZUFjY2Vzc29yIHtcbiAgICBwdWJsaWMgcmVhZG9ubHkgSGVhZGVyQ29tcG9uZW50ID0gSGVhZGVyQ29tcG9uZW50O1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgbWluID0gc3ViRGF5cyhuZXcgRGF0ZSgpLCAzKTtcblxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIG1heCA9IG5ldyBEYXRlKCk7XG5cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBub3dJc01heCA9IHRydWU7XG5cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBhbGxvd0NsZWFyID0gdHJ1ZTtcblxuICAgIHB1YmxpYyBmb3JtR3JvdXAgPSBuZXcgRm9ybUdyb3VwKHtcbiAgICAgICAgZnJvbTogbmV3IEZvcm1Db250cm9sKCksXG4gICAgICAgIHRvOiBuZXcgRm9ybUNvbnRyb2woKVxuICAgIH0pO1xuICAgIHB1YmxpYyBub3cgPSBuZXcgRGF0ZSgpO1xuICAgIHB1YmxpYyB2YWx1ZTogTmljZURhdGVSYW5nZVBpY2tlclZhbHVlO1xuXG4gICAgcHJpdmF0ZSBwcm9wYWdhdGU6ICh2YWx1ZTogTmljZURhdGVSYW5nZVBpY2tlclZhbHVlKSA9PiB2b2lkO1xuXG4gICAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLnZhbHVlID0ge1xuICAgICAgICAgICAgZnJvbTogdGhpcy5taW4sXG4gICAgICAgICAgICB0bzogdGhpcy5tYXhcbiAgICAgICAgfTtcbiAgICAgICAgdGhpcy5mb3JtR3JvdXAucGF0Y2hWYWx1ZSh0aGlzLnZhbHVlKTtcblxuICAgICAgICB0aGlzLmZvcm1Hcm91cC52YWx1ZUNoYW5nZXMucGlwZShcbiAgICAgICAgICAgIHN0YXJ0V2l0aCh0aGlzLnZhbHVlKSxcbiAgICAgICAgICAgIHBhaXJ3aXNlKCksXG4gICAgICAgICAgICBmaWx0ZXIoKFtiZWZvcmUsIGFmdGVyXSkgPT4ge1xuICAgICAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICAgICAqIFdlIGZpbHRlciBvdXQgdGhlIHZhbHVlIGNoYW5nZXMgdG8gb25seSBlbWl0IHdoZW4gdGhlIHNlbGVjdGlvbiBpcyBjb21wbGV0ZWQvXG4gICAgICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICAgICBpZiAoIWFmdGVyLmZyb20gJiYgIWFmdGVyLnRvKSB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC8vIFRoaXMgaXMgdGhlIG1pZGRsZSBvZiB0aGUgc2VsZWN0aW9uXG4gICAgICAgICAgICAgICAgaWYgKGFmdGVyLmZyb20gJiYgIWFmdGVyLnRvKSB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAvLyBUaGlzIG1lYW5zIHRoYXQgdGhlIHNlbGVjdGlvbiBpcyBkb25lXG4gICAgICAgICAgICAgICAgaWYgKCFiZWZvcmUudG8gJiYgYWZ0ZXIudG8pIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLy8gVGhpcyBpcyBhbiBlZGdlIGNhc2Ugd2hlbiB3ZSBzZWxlY3QgYSBuZXcgcmFuZ2Ugd2l0aCBhbiBhY3RpdmUgcmFuZ2Ugc2VsZWN0ZWQuXG4gICAgICAgICAgICAgICAgLy8gVGhlIGFmdGVyLnRvIHdpbGwgYmUgYXQgbnVsbCBhZnRlciB0aGUgYWZ0ZXIuZnJvbSBpcyBlbWl0dGVkXG4gICAgICAgICAgICAgICAgaWYgKCFpc1NhbWVEYXkoYmVmb3JlLmZyb20sIGFmdGVyLmZyb20pICYmIGlzU2FtZURheShiZWZvcmUudG8sIGFmdGVyLnRvKSkge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLy8gU2tpcCBpZiBub3RpbmcgaGFzIGNoYW5nZWRcbiAgICAgICAgICAgICAgICByZXR1cm4gIShpc1NhbWVEYXkoYmVmb3JlLmZyb20sIGFmdGVyLmZyb20pICYmICFpc1NhbWVEYXkoYmVmb3JlLnRvLCBhZnRlci50bykpO1xuICAgICAgICAgICAgfSksXG4gICAgICAgICkuc3Vic2NyaWJlKChfKSA9PiB7XG4gICAgICAgICAgICB0aGlzLnZhbHVlID0gdGhpcy5mb3JtR3JvdXAuZ2V0UmF3VmFsdWUoKTtcbiAgICAgICAgICAgIHRoaXMucHJvcGFnYXRlPy4odGhpcy52YWx1ZSk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHB1YmxpYyB3cml0ZVZhbHVlKHZhbHVlOiBOaWNlRGF0ZVJhbmdlUGlja2VyVmFsdWUpOiB2b2lkIHtcbiAgICAgICAgdGhpcy52YWx1ZSA9IHZhbHVlO1xuICAgICAgICB0aGlzLmZvcm1Hcm91cC5wYXRjaFZhbHVlKHRoaXMudmFsdWUpO1xuICAgIH1cblxuICAgIHB1YmxpYyByZWdpc3Rlck9uQ2hhbmdlKGZuOiAodmFsdWU6IE5pY2VEYXRlUmFuZ2VQaWNrZXJWYWx1ZSkgPT4gdm9pZCk6IHZvaWQge1xuICAgICAgICB0aGlzLnByb3BhZ2F0ZSA9IGZuO1xuICAgIH1cblxuICAgIHB1YmxpYyByZWdpc3Rlck9uVG91Y2hlZChmbjogYW55KTogdm9pZCB7fVxufVxuIiwiPGRpdiBjbGFzcz1cIm5pY2UtZGF0ZS1waWNrZXItY29udGFpbmVyXCI+XG4gICAgPGRpdiBjbGFzcz1cIm5pY2UtZGF0ZS1waWNrZXItaGVhZGVyXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJmcm9tLXRvXCI+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwidmFsdWU/LmZyb21cIj5cbiAgICAgICAgICAgICAgICB7eyB2YWx1ZS5mcm9tIHwgbG9jYWxpemVkRGF0ZTogXCJsb25nRGF0ZVwiIH19XG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJ2YWx1ZT8udG9cIj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic2VwYXJhdG9yXCI+LTwvZGl2PlxuICAgICAgICAgICAgICAgIHt7IHZhbHVlLnRvIHwgbG9jYWxpemVkRGF0ZTogXCJsb25nRGF0ZVwiIH19XG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG5cbiAgICA8bWF0LWRhdGUtcmFuZ2UtaW5wdXQgW2Zvcm1Hcm91cF09XCJmb3JtR3JvdXBcIiBbbWF4XT1cIm5vd0lzTWF4ID8gbm93IDogbnVsbFwiIFtyYW5nZVBpY2tlcl09XCJwaWNrZXJcIj5cbiAgICAgICAgPGlucHV0IGZvcm1Db250cm9sTmFtZT1cImZyb21cIiBjbGFzcz1cImhpZGRlbi1pbnB1dFwiIG1hdFN0YXJ0RGF0ZSBwbGFjZWhvbGRlcj1cIlN0YXJ0IGRhdGVcIj5cbiAgICAgICAgPGlucHV0IGZvcm1Db250cm9sTmFtZT1cInRvXCIgY2xhc3M9XCJoaWRkZW4taW5wdXRcIiBtYXRFbmREYXRlIHBsYWNlaG9sZGVyPVwiRW5kIGRhdGVcIj5cbiAgICA8L21hdC1kYXRlLXJhbmdlLWlucHV0PlxuXG4gICAgPG1hdC1kYXRlcGlja2VyLXRvZ2dsZSBtYXRTdWZmaXggW2Zvcl09XCJwaWNrZXJcIj48L21hdC1kYXRlcGlja2VyLXRvZ2dsZT5cblxuICAgIDxtYXQtZGF0ZS1yYW5nZS1waWNrZXJcbiAgICAgICAgICAgIFtjYWxlbmRhckhlYWRlckNvbXBvbmVudF09XCJIZWFkZXJDb21wb25lbnRcIlxuICAgICAgICAgICAgcGFuZWxDbGFzcz1cIm5pY2UtZGF0ZS1yYW5nZS1waWNrZXJcIlxuICAgICAgICAgICAgI3BpY2tlclxuICAgID48L21hdC1kYXRlLXJhbmdlLXBpY2tlcj5cbjwvZGl2PlxuIl19
@@ -1,45 +0,0 @@
1
- import { CommonModule } from "@angular/common";
2
- import { NgModule } from "@angular/core";
3
- import { MatBottomSheetModule } from "@angular/material/bottom-sheet";
4
- import { MatIconModule } from "@angular/material/icon";
5
- import { MatListModule } from "@angular/material/list";
6
- import { TranslateModule } from "@ngx-translate/core";
7
- import { ExportBottomSheetComponent } from "./export-bottom-sheet.component";
8
- import { DefaultExportBottomSheetService, ExportBottomSheetService } from "./providers/export-bottom-sheet.service";
9
- import * as i0 from "@angular/core";
10
- export class NiceExportBottomSheetModule {
11
- static forFeature(options) {
12
- return {
13
- ngModule: NiceExportBottomSheetModule,
14
- providers: [
15
- {
16
- provide: ExportBottomSheetService,
17
- useClass: options.service
18
- }
19
- ]
20
- };
21
- }
22
- }
23
- NiceExportBottomSheetModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: NiceExportBottomSheetModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
24
- NiceExportBottomSheetModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: NiceExportBottomSheetModule, declarations: [ExportBottomSheetComponent], imports: [CommonModule, MatBottomSheetModule, MatListModule, MatIconModule, TranslateModule], exports: [ExportBottomSheetComponent] });
25
- NiceExportBottomSheetModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: NiceExportBottomSheetModule, providers: [
26
- {
27
- provide: ExportBottomSheetService,
28
- useClass: DefaultExportBottomSheetService
29
- }
30
- ], imports: [CommonModule, MatBottomSheetModule, MatListModule, MatIconModule, TranslateModule] });
31
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: NiceExportBottomSheetModule, decorators: [{
32
- type: NgModule,
33
- args: [{
34
- imports: [CommonModule, MatBottomSheetModule, MatListModule, MatIconModule, TranslateModule],
35
- declarations: [ExportBottomSheetComponent],
36
- providers: [
37
- {
38
- provide: ExportBottomSheetService,
39
- useClass: DefaultExportBottomSheetService
40
- }
41
- ],
42
- exports: [ExportBottomSheetComponent]
43
- }]
44
- }] });
45
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhwb3J0LWJvdHRvbS1zaGVldC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uaWNlLXVpLWtpdC12Mi9zcmMvbGliL2NvbXBvbmVudHMvZXhwb3J0LWJvdHRvbS1zaGVldC9leHBvcnQtYm90dG9tLXNoZWV0Lm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUF1QixRQUFRLEVBQVEsTUFBTSxlQUFlLENBQUM7QUFDcEUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDdEUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDdEQsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDN0UsT0FBTyxFQUFFLCtCQUErQixFQUFFLHdCQUF3QixFQUFFLE1BQU0seUNBQXlDLENBQUM7O0FBaUJwSCxNQUFNLE9BQU8sMkJBQTJCO0lBQzdCLE1BQU0sQ0FBQyxVQUFVLENBQUMsT0FBaUM7UUFDdEQsT0FBTztZQUNILFFBQVEsRUFBRSwyQkFBMkI7WUFDckMsU0FBUyxFQUFFO2dCQUNQO29CQUNJLE9BQU8sRUFBRSx3QkFBd0I7b0JBQ2pDLFFBQVEsRUFBRSxPQUFPLENBQUMsT0FBTztpQkFDNUI7YUFDSjtTQUNKLENBQUM7SUFDTixDQUFDOzt3SEFYUSwyQkFBMkI7eUhBQTNCLDJCQUEyQixpQkFUckIsMEJBQTBCLGFBRC9CLFlBQVksRUFBRSxvQkFBb0IsRUFBRSxhQUFhLEVBQUUsYUFBYSxFQUFFLGVBQWUsYUFRakYsMEJBQTBCO3lIQUUzQiwyQkFBMkIsYUFSekI7UUFDUDtZQUNJLE9BQU8sRUFBRSx3QkFBd0I7WUFDakMsUUFBUSxFQUFFLCtCQUErQjtTQUM1QztLQUNKLFlBUFMsWUFBWSxFQUFFLG9CQUFvQixFQUFFLGFBQWEsRUFBRSxhQUFhLEVBQUUsZUFBZTsyRkFVbEYsMkJBQTJCO2tCQVh2QyxRQUFRO21CQUFDO29CQUNOLE9BQU8sRUFBRSxDQUFDLFlBQVksRUFBRSxvQkFBb0IsRUFBRSxhQUFhLEVBQUUsYUFBYSxFQUFFLGVBQWUsQ0FBQztvQkFDNUYsWUFBWSxFQUFFLENBQUMsMEJBQTBCLENBQUM7b0JBQzFDLFNBQVMsRUFBRTt3QkFDUDs0QkFDSSxPQUFPLEVBQUUsd0JBQXdCOzRCQUNqQyxRQUFRLEVBQUUsK0JBQStCO3lCQUM1QztxQkFDSjtvQkFDRCxPQUFPLEVBQUUsQ0FBQywwQkFBMEIsQ0FBQztpQkFDeEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29tbW9uXCI7XG5pbXBvcnQgeyBNb2R1bGVXaXRoUHJvdmlkZXJzLCBOZ01vZHVsZSwgVHlwZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBNYXRCb3R0b21TaGVldE1vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9tYXRlcmlhbC9ib3R0b20tc2hlZXRcIjtcbmltcG9ydCB7IE1hdEljb25Nb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvblwiO1xuaW1wb3J0IHsgTWF0TGlzdE1vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9tYXRlcmlhbC9saXN0XCI7XG5pbXBvcnQgeyBUcmFuc2xhdGVNb2R1bGUgfSBmcm9tIFwiQG5neC10cmFuc2xhdGUvY29yZVwiO1xuaW1wb3J0IHsgRXhwb3J0Qm90dG9tU2hlZXRDb21wb25lbnQgfSBmcm9tIFwiLi9leHBvcnQtYm90dG9tLXNoZWV0LmNvbXBvbmVudFwiO1xuaW1wb3J0IHsgRGVmYXVsdEV4cG9ydEJvdHRvbVNoZWV0U2VydmljZSwgRXhwb3J0Qm90dG9tU2hlZXRTZXJ2aWNlIH0gZnJvbSBcIi4vcHJvdmlkZXJzL2V4cG9ydC1ib3R0b20tc2hlZXQuc2VydmljZVwiO1xuXG5leHBvcnQgaW50ZXJmYWNlIEV4cG9ydEJvdHRvbVNoZWV0T3B0aW9ucyB7XG4gICAgc2VydmljZTogVHlwZTxFeHBvcnRCb3R0b21TaGVldFNlcnZpY2U+O1xufVxuXG5ATmdNb2R1bGUoe1xuICAgIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIE1hdEJvdHRvbVNoZWV0TW9kdWxlLCBNYXRMaXN0TW9kdWxlLCBNYXRJY29uTW9kdWxlLCBUcmFuc2xhdGVNb2R1bGVdLFxuICAgIGRlY2xhcmF0aW9uczogW0V4cG9ydEJvdHRvbVNoZWV0Q29tcG9uZW50XSxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAge1xuICAgICAgICAgICAgcHJvdmlkZTogRXhwb3J0Qm90dG9tU2hlZXRTZXJ2aWNlLFxuICAgICAgICAgICAgdXNlQ2xhc3M6IERlZmF1bHRFeHBvcnRCb3R0b21TaGVldFNlcnZpY2VcbiAgICAgICAgfVxuICAgIF0sXG4gICAgZXhwb3J0czogW0V4cG9ydEJvdHRvbVNoZWV0Q29tcG9uZW50XVxufSlcbmV4cG9ydCBjbGFzcyBOaWNlRXhwb3J0Qm90dG9tU2hlZXRNb2R1bGUge1xuICAgIHB1YmxpYyBzdGF0aWMgZm9yRmVhdHVyZShvcHRpb25zOiBFeHBvcnRCb3R0b21TaGVldE9wdGlvbnMpOiBNb2R1bGVXaXRoUHJvdmlkZXJzPE5pY2VFeHBvcnRCb3R0b21TaGVldE1vZHVsZT4ge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgbmdNb2R1bGU6IE5pY2VFeHBvcnRCb3R0b21TaGVldE1vZHVsZSxcbiAgICAgICAgICAgIHByb3ZpZGVyczogW1xuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgcHJvdmlkZTogRXhwb3J0Qm90dG9tU2hlZXRTZXJ2aWNlLFxuICAgICAgICAgICAgICAgICAgICB1c2VDbGFzczogb3B0aW9ucy5zZXJ2aWNlXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgXVxuICAgICAgICB9O1xuICAgIH1cbn1cbiJdfQ==
@@ -1,111 +0,0 @@
1
- import { Directive, ElementRef, ViewContainerRef } from "@angular/core";
2
- import { MatFormField } from "@angular/material/form-field";
3
- import { TranslateService } from "@ngx-translate/core";
4
- import { NiceFormErrorComponent } from "./form-error.component";
5
- import { Subject } from "rxjs";
6
- import { takeUntil } from "rxjs/operators";
7
- import * as i0 from "@angular/core";
8
- import * as i1 from "@angular/material/form-field";
9
- import * as i2 from "@ngx-translate/core";
10
- export class NiceControlStatusDirective {
11
- constructor(el, vcr, formField, translateService) {
12
- this.el = el;
13
- this.vcr = vcr;
14
- this.formField = formField;
15
- this.translateService = translateService;
16
- this.unsubscribeAll$ = new Subject();
17
- }
18
- ngAfterViewInit() {
19
- this.control = this.formField._control.ngControl;
20
- this.formField._control.stateChanges.pipe(takeUntil(this.unsubscribeAll$)).subscribe(() => this.onChange());
21
- }
22
- ngOnDestroy() {
23
- this.unsubscribeAll$.next();
24
- this.unsubscribeAll$.complete();
25
- }
26
- onChange() {
27
- if (this.control.pending) {
28
- return;
29
- }
30
- if (this.control.invalid && this.control.touched) {
31
- for (const error in this.control.errors) {
32
- if (this.control.errors.hasOwnProperty(error)) {
33
- if (this.control.errors[error]) {
34
- let lastErrorKey = error;
35
- let param;
36
- if (error === "pattern") {
37
- lastErrorKey = this.control.errors[error].requiredPattern;
38
- }
39
- if (error === "mask") {
40
- lastErrorKey = this.control.errors[error].requiredMask;
41
- }
42
- if (error === "minlength" || error === "maxlength") {
43
- param = {
44
- value: this.control.errors[error].requiredLength
45
- };
46
- }
47
- if (error === "min") {
48
- param = {
49
- min: this.control.errors[error].min,
50
- actual: this.control.errors[error].actual
51
- };
52
- }
53
- if (error === "max") {
54
- param = {
55
- max: this.control.errors[error].max,
56
- actual: this.control.errors[error].actual
57
- };
58
- }
59
- if (typeof this.control.errors[error] === "object" && !param) {
60
- param = this.control.errors[error];
61
- }
62
- this.setError(this.translateService.instant(`errors.${lastErrorKey}`, param));
63
- break;
64
- }
65
- }
66
- }
67
- }
68
- else {
69
- this.setError("");
70
- }
71
- }
72
- setError(text) {
73
- if (!this.ref) {
74
- this.ref = this.vcr.createComponent(NiceFormErrorComponent);
75
- if (this.el.nativeElement.getElementsByClassName("mat-form-field-wrapper").item(0)) {
76
- this.el.nativeElement
77
- .getElementsByClassName("mat-form-field-wrapper")
78
- .item(0)
79
- .getElementsByClassName("mat-form-field-subscript-wrapper")
80
- .item(0)
81
- .appendChild(this.ref.location.nativeElement);
82
- }
83
- if (this.el.nativeElement.getElementsByClassName("mat-mdc-form-field-subscript-wrapper").item(0)) {
84
- const hint = this.el.nativeElement.getElementsByClassName("mat-mdc-form-field-hint").item(0);
85
- this.ref.location.nativeElement.style.position = "absolute";
86
- this.ref.location.nativeElement.style.top = hint ? "16px" : "0";
87
- const wrapper = this.el.nativeElement
88
- .getElementsByClassName("mat-mdc-form-field-subscript-wrapper")
89
- .item(0);
90
- if (hint) {
91
- wrapper.classList.add("override-height");
92
- }
93
- wrapper.prepend(this.ref.location.nativeElement);
94
- }
95
- }
96
- if (text) {
97
- this.el.nativeElement.classList.add("form-error-show");
98
- }
99
- else {
100
- this.el.nativeElement.classList.remove("form-error-show");
101
- }
102
- this.ref.instance.error = text;
103
- }
104
- }
105
- NiceControlStatusDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: NiceControlStatusDirective, deps: [{ token: i0.ElementRef }, { token: i0.ViewContainerRef }, { token: i1.MatFormField }, { token: i2.TranslateService }], target: i0.ɵɵFactoryTarget.Directive });
106
- NiceControlStatusDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.9", type: NiceControlStatusDirective, selector: "[niceControlStatus]", ngImport: i0 });
107
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: NiceControlStatusDirective, decorators: [{
108
- type: Directive,
109
- args: [{ selector: "[niceControlStatus]" }]
110
- }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.ViewContainerRef }, { type: i1.MatFormField }, { type: i2.TranslateService }]; } });
111
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udHJvbC1zdGF0dXMuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmljZS11aS1raXQtdjIvc3JjL2xpYi9jb21wb25lbnRzL2Zvcm0tZXJyb3IvY29udHJvbC1zdGF0dXMuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBK0IsU0FBUyxFQUFFLFVBQVUsRUFBYSxnQkFBZ0IsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVoSCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDNUQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDdkQsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDaEUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvQixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7QUFHM0MsTUFBTSxPQUFPLDBCQUEwQjtJQU1uQyxZQUNZLEVBQTJCLEVBQzNCLEdBQXFCLEVBQ3JCLFNBQXVCLEVBQ3ZCLGdCQUFrQztRQUhsQyxPQUFFLEdBQUYsRUFBRSxDQUF5QjtRQUMzQixRQUFHLEdBQUgsR0FBRyxDQUFrQjtRQUNyQixjQUFTLEdBQVQsU0FBUyxDQUFjO1FBQ3ZCLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFOdEMsb0JBQWUsR0FBRyxJQUFJLE9BQU8sRUFBUSxDQUFDO0lBTzNDLENBQUM7SUFFRyxlQUFlO1FBQ2xCLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsU0FBc0IsQ0FBQztRQUM5RCxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUMsQ0FBQyxTQUFT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QyxJQUFJLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsQ0FBQzthQUNwRDtTQUNKO1FBQ0QsSUFBSSxJQUFJLEVBQUU7WUFDTixJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLGlCQUFpQixDQUFDLENBQUM7U0FDMUQ7YUFBTTtZQUNILElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsaUJBQWlCLENBQUMsQ0FBQztTQUM3RDtRQUNELElBQUksQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUM7SUFDbkMsQ0FBQzs7dUhBekdRLDBCQUEwQjsyR0FBMUIsMEJBQTBCOzJGQUExQiwwQkFBMEI7a0JBRHRDLFNBQVM7bUJBQUMsRUFBRSxRQUFRLEVBQUUscUJBQXFCLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBZnRlclZpZXdJbml0LCBDb21wb25lbnRSZWYsIERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgT25EZXN0cm95LCBWaWV3Q29udGFpbmVyUmVmIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IE5nQ29udHJvbCB9IGZyb20gXCJAYW5ndWxhci9mb3Jtc1wiO1xuaW1wb3J0IHsgTWF0Rm9ybUZpZWxkIH0gZnJvbSBcIkBhbmd1bGFyL21hdGVyaWFsL2Zvcm0tZmllbGRcIjtcbmltcG9ydCB7IFRyYW5zbGF0ZVNlcnZpY2UgfSBmcm9tIFwiQG5neC10cmFuc2xhdGUvY29yZVwiO1xuaW1wb3J0IHsgTmljZUZvcm1FcnJvckNvbXBvbmVudCB9IGZyb20gXCIuL2Zvcm0tZXJyb3IuY29tcG9uZW50XCI7XG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSBcInJ4anNcIjtcbmltcG9ydCB7IHRha2VVbnRpbCB9IGZyb20gXCJyeGpzL29wZXJhdG9yc1wiO1xuXG5ARGlyZWN0aXZlKHsgc2VsZWN0b3I6IFwiW25pY2VDb250cm9sU3RhdHVzXVwiIH0pXG5leHBvcnQgY2xhc3MgTmljZUNvbnRyb2xTdGF0dXNEaXJlY3RpdmUgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3kge1xuICAgIHByaXZhdGUgcmVmOiBDb21wb25lbnRSZWY8TmljZUZvcm1FcnJvckNvbXBvbmVudD47XG4gICAgcHJpdmF0ZSBjb250cm9sOiBOZ0NvbnRyb2w7XG5cbiAgICBwcml2YXRlIHVuc3Vic2NyaWJlQWxsJCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSBlbDogRWxlbWVudFJlZjxIVE1MRWxlbWVudD4sXG4gICAgICAgIHByaXZhdGUgdmNyOiBWaWV3Q29udGFpbmVyUmVmLFxuICAgICAgICBwcml2YXRlIGZvcm1GaWVsZDogTWF0Rm9ybUZpZWxkLFxuICAgICAgICBwcml2YXRlIHRyYW5zbGF0ZVNlcnZpY2U6IFRyYW5zbGF0ZVNlcnZpY2VcbiAgICApIHt9XG5cbiAgICBwdWJsaWMgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmNvbnRyb2wgPSB0aGlzLmZvcm1GaWVsZC5fY29udHJvbC5uZ0NvbnRyb2wgYXMgTmdDb250cm9sO1xuICAgICAgICB0aGlzLmZvcm1GaWVsZC5fY29udHJvbC5zdGF0ZUNoYW5nZXMucGlwZSh0YWtlVW50aWwodGhpcy51bnN1YnNjcmliZUFsbCQpKS5zdWJzY3JpYmUoKCkgPT4gdGhpcy5vbkNoYW5nZSgpKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgICAgIHRoaXMudW5zdWJzY3JpYmVBbGwkLm5leHQoKTtcbiAgICAgICAgdGhpcy51bnN1YnNjcmliZUFsbCQuY29tcGxldGUoKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgb25DaGFuZ2UoKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmNvbnRyb2wucGVuZGluZykge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRoaXMuY29udHJvbC5pbnZhbGlkICYmIHRoaXMuY29udHJvbC50b3VjaGVkKSB7XG4gICAgICAgICAgICBmb3IgKGNvbnN0IGVycm9yIGluIHRoaXMuY29udHJvbC5lcnJvcnMpIHtcbiAgICAgICAgICAgICAgICBpZiAodGhpcy5jb250cm9sLmVycm9ycy5oYXNPd25Qcm9wZXJ0eShlcnJvcikpIHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKHRoaXMuY29udHJvbC5lcnJvcnNbZXJyb3JdKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBsZXQgbGFzdEVycm9yS2V5ID0gZXJyb3I7XG4gICAgICAgICAgICAgICAgICAgICAgICBsZXQgcGFyYW06IGFueTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChlcnJvciA9PT0gXCJwYXR0ZXJuXCIpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYXN0RXJyb3JLZXkgPSB0aGlzLmNvbnRyb2wuZXJyb3JzW2Vycm9yXS5yZXF1aXJlZFBhdHRlcm47XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoZXJyb3IgPT09IFwibWFza1wiKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGFzdEVycm9yS2V5ID0gdGhpcy5jb250cm9sLmVycm9yc1tlcnJvcl0ucmVxdWlyZWRNYXNrO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGVycm9yID09PSBcIm1pbmxlbmd0aFwiIHx8IGVycm9yID09PSBcIm1heGxlbmd0aFwiKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFyYW0gPSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlOiB0aGlzLmNvbnRyb2wuZXJyb3JzW2Vycm9yXS5yZXF1aXJlZExlbmd0aFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoZXJyb3IgPT09IFwibWluXCIpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYXJhbSA9IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWluOiB0aGlzLmNvbnRyb2wuZXJyb3JzW2Vycm9yXS5taW4sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFjdHVhbDogdGhpcy5jb250cm9sLmVycm9yc1tlcnJvcl0uYWN0dWFsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChlcnJvciA9PT0gXCJtYXhcIikge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhcmFtID0ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXg6IHRoaXMuY29udHJvbC5lcnJvcnNbZXJyb3JdLm1heCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYWN0dWFsOiB0aGlzLmNvbnRyb2wuZXJyb3JzW2Vycm9yXS5hY3R1YWxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAodHlwZW9mIHRoaXMuY29udHJvbC5lcnJvcnNbZXJyb3JdID09PSBcIm9iamVjdFwiICYmICFwYXJhbSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhcmFtID0gdGhpcy5jb250cm9sLmVycm9yc1tlcnJvcl07XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuc2V0RXJyb3IodGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQoYGVycm9ycy4ke2xhc3RFcnJvcktleX1gLCBwYXJhbSkpO1xuICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLnNldEVycm9yKFwiXCIpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIHNldEVycm9yKHRleHQ6IHN0cmluZyk6IHZvaWQge1xuICAgICAgICBpZiAoIXRoaXMucmVmKSB7XG4gICAgICAgICAgICB0aGlzLnJlZiA9IHRoaXMudmNyLmNyZWF0ZUNvbXBvbmVudChOaWNlRm9ybUVycm9yQ29tcG9uZW50KTtcbiAgICAgICAgICAgIGlmICh0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZShcIm1hdC1mb3JtLWZpZWxkLXdyYXBwZXJcIikuaXRlbSgwKSkge1xuICAgICAgICAgICAgICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudFxuICAgICAgICAgICAgICAgICAgICAuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZShcIm1hdC1mb3JtLWZpZWxkLXdyYXBwZXJcIilcbiAgICAgICAgICAgICAgICAgICAgLml0ZW0oMClcbiAgICAgICAgICAgICAgICAgICAgLmdldEVsZW1lbnRzQnlDbGFzc05hbWUoXCJtYXQtZm9ybS1maWVsZC1zdWJzY3JpcHQtd3JhcHBlclwiKVxuICAgICAgICAgICAgICAgICAgICAuaXRlbSgwKVxuICAgICAgICAgICAgICAgICAgICAuYXBwZW5kQ2hpbGQodGhpcy5yZWYubG9jYXRpb24ubmF0aXZlRWxlbWVudCk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGlmICh0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZShcIm1hdC1tZGMtZm9ybS1maWVsZC1zdWJzY3JpcHQtd3JhcHBlclwiKS5pdGVtKDApKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgaGludCA9IHRoaXMuZWwubmF0aXZlRWxlbWVudC5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKFwibWF0LW1kYy1mb3JtLWZpZWxkLWhpbnRcIikuaXRlbSgwKTtcbiAgICAgICAgICAgICAgICAodGhpcy5yZWYubG9jYXRpb24ubmF0aXZlRWxlbWVudCBhcyBIVE1MRGl2RWxlbWVudCkuc3R5bGUucG9zaXRpb24gPSBcImFic29sdXRlXCI7XG4gICAgICAgICAgICAgICAgKHRoaXMucmVmLmxvY2F0aW9uLm5hdGl2ZUVsZW1lbnQgYXMgSFRNTERpdkVsZW1lbnQpLnN0eWxlLnRvcCA9IGhpbnQgPyBcIjE2cHhcIiA6IFwiMFwiO1xuXG4gICAgICAgICAgICAgICAgY29uc3Qgd3JhcHBlciA9IHRoaXMuZWwubmF0aXZlRWxlbWVudFxuICAgICAgICAgICAgICAgICAgICAuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZShcIm1hdC1tZGMtZm9ybS1maWVsZC1zdWJzY3JpcHQtd3JhcHBlclwiKVxuICAgICAgICAgICAgICAgICAgICAuaXRlbSgwKTtcbiAgICAgICAgICAgICAgICBpZiAoaGludCkge1xuICAgICAgICAgICAgICAgICAgICB3cmFwcGVyLmNsYXNzTGlzdC5hZGQoXCJvdmVycmlkZS1oZWlnaHRcIik7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgd3JhcHBlci5wcmVwZW5kKHRoaXMucmVmLmxvY2F0aW9uLm5hdGl2ZUVsZW1lbnQpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGlmICh0ZXh0KSB7XG4gICAgICAgICAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuY2xhc3NMaXN0LmFkZChcImZvcm0tZXJyb3Itc2hvd1wiKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5jbGFzc0xpc3QucmVtb3ZlKFwiZm9ybS1lcnJvci1zaG93XCIpO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMucmVmLmluc3RhbmNlLmVycm9yID0gdGV4dDtcbiAgICB9XG59XG4iXX0=