@datarailsshared/datarailsshared 1.4.569 → 1.5.3

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 (493) hide show
  1. package/assets/styles/_storybook-styles.scss +37 -0
  2. package/assets/styles/_styles.scss +9 -2
  3. package/assets/styles/colors.scss +88 -74
  4. package/assets/styles/dataRailsFont.scss +1 -1
  5. package/assets/styles/dialog.scss +22 -0
  6. package/assets/styles/icons.scss +1 -1
  7. package/assets/styles/mixins.scss +106 -6
  8. package/assets/styles/vars.scss +6 -4
  9. package/datarailsshared-datarailsshared-1.5.3.tgz +0 -0
  10. package/esm2022/datarailsshared-datarailsshared.mjs +5 -0
  11. package/esm2022/lib/date-tags/any-tag.component.mjs +42 -0
  12. package/esm2022/lib/date-tags/date-tag.component.mjs +126 -0
  13. package/esm2022/lib/date-tags/date-tag.module.mjs +53 -0
  14. package/esm2022/lib/date-tags/day-tag/day-tag.component.mjs +95 -0
  15. package/esm2022/lib/date-tags/forecast-tag/forecast-tag.component.mjs +222 -0
  16. package/esm2022/lib/date-tags/forecast-tag/forecast-tag.service.mjs +87 -0
  17. package/esm2022/lib/date-tags/month-tag/month-tag.component.mjs +98 -0
  18. package/esm2022/lib/date-tags/quarter-tag/quarter-tag.component.mjs +126 -0
  19. package/esm2022/lib/date-tags/week-tag/week-tag.component.mjs +102 -0
  20. package/esm2022/lib/date-tags/year-tag/year-tag.component.mjs +96 -0
  21. package/esm2022/lib/directives/click-outside/click-outside.directive.mjs +92 -0
  22. package/esm2022/lib/directives/click-outside/click-outside.module.mjs +19 -0
  23. package/esm2022/lib/directives/dr-shine-animation/dr-shine-animation.directive.mjs +63 -0
  24. package/esm2022/lib/directives/let/let.directive.mjs +35 -0
  25. package/esm2022/lib/directives/ng-track-by-property/ng-track-by-property.directive.mjs +23 -0
  26. package/esm2022/lib/dr-accordion/accordion-item-body.component.mjs +61 -0
  27. package/esm2022/lib/dr-accordion/accordion-item-header.component.mjs +154 -0
  28. package/esm2022/lib/dr-accordion/accordion-item.component.mjs +143 -0
  29. package/esm2022/lib/dr-accordion/accordion.component.mjs +55 -0
  30. package/esm2022/lib/dr-accordion/accordion.module.mjs +35 -0
  31. package/esm2022/lib/dr-alert/dr-alert.component.mjs +64 -0
  32. package/esm2022/lib/dr-alert/dr-alert.module.mjs +20 -0
  33. package/{esm2015/lib/dr-alert/enums/dr-alert-theme.enum.js → esm2022/lib/dr-alert/enums/dr-alert-theme.enum.mjs} +1 -2
  34. package/esm2022/lib/dr-avatar/dr-avatar.component.mjs +142 -0
  35. package/esm2022/lib/dr-avatar/dr-avatar.module.mjs +21 -0
  36. package/esm2022/lib/dr-avatar/dr-avatar.pipe.mjs +20 -0
  37. package/esm2022/lib/dr-avatar/services/dr-avatar.service.mjs +17 -0
  38. package/esm2022/lib/dr-avatar/types.mjs +2 -0
  39. package/esm2022/lib/dr-badge-status/dr-badge-status.component.mjs +53 -0
  40. package/esm2022/lib/dr-badge-status/dr-badge-status.module.mjs +21 -0
  41. package/esm2022/lib/dr-chat/chat.component.mjs +202 -0
  42. package/esm2022/lib/dr-chat/chat.module.mjs +81 -0
  43. package/esm2022/lib/dr-chat/dr-chat-alert/dr-chat-alert.component.mjs +31 -0
  44. package/esm2022/lib/dr-chat/dr-chat-form/chat-form.component.mjs +273 -0
  45. package/esm2022/lib/dr-chat/dr-chat-form-with-history/chat-form-with-history.component.mjs +380 -0
  46. package/esm2022/lib/dr-chat/dr-chat-message/chat-message.component.mjs +185 -0
  47. package/esm2022/lib/dr-chat/dr-chat-message/dr-chat-message-custom/chat-custom-message.directive.mjs +47 -0
  48. package/esm2022/lib/dr-chat/dr-chat-message/dr-chat-message-custom/chat-custom-message.service.mjs +26 -0
  49. package/esm2022/lib/dr-chat/dr-chat-message/dr-chat-message-file/chat-message-file.component.mjs +78 -0
  50. package/esm2022/lib/dr-chat/dr-chat-message/dr-chat-message-text/chat-message-text.component.mjs +30 -0
  51. package/esm2022/lib/dr-chat/dr-chat-suggestions/chat-suggestions.component.mjs +187 -0
  52. package/esm2022/lib/dr-chat/dr-dot-flashing/dr-dot-flashing.component.mjs +14 -0
  53. package/esm2022/lib/dr-chip/dr-chip.component.mjs +58 -0
  54. package/esm2022/lib/dr-code-editor/components/code-editor-hint-wrapper.component.mjs +19 -0
  55. package/esm2022/lib/dr-code-editor/components/dr-codemirror.component.mjs +204 -0
  56. package/esm2022/lib/dr-code-editor/dr-code-editor.component.mjs +326 -0
  57. package/esm2022/lib/dr-code-editor/dr-code-editor.module.mjs +29 -0
  58. package/esm2022/lib/dr-code-editor/models/code-editor-hint.mjs +6 -0
  59. package/esm2022/lib/dr-details-list/dr-details-list.component.mjs +106 -0
  60. package/esm2022/lib/dr-details-list/dr-details-list.module.mjs +20 -0
  61. package/esm2022/lib/dr-dialog/components/dialog-modal-wrapper/dialog-modal-wrapper.component.mjs +339 -0
  62. package/esm2022/lib/dr-dialog/components/dialog-wrapper/dialog-wrapper.component.mjs +238 -0
  63. package/esm2022/lib/dr-dialog/dialog.module.mjs +27 -0
  64. package/esm2022/lib/dr-dialog/interfaces/dialog-data.mjs +27 -0
  65. package/esm2022/lib/dr-dialog/services/dialog.service.mjs +77 -0
  66. package/esm2022/lib/dr-dropdown/dr-dropdown-item/dr-dropdown-item.component.mjs +29 -0
  67. package/esm2022/lib/dr-dropdown/dr-dropdown-item-show.pipe.mjs +16 -0
  68. package/esm2022/lib/dr-dropdown/dr-dropdown.component.mjs +248 -0
  69. package/esm2022/lib/dr-dropdown/dr-dropdown.directive.mjs +142 -0
  70. package/esm2022/lib/dr-dropdown/dr-dropdown.module.mjs +41 -0
  71. package/esm2022/lib/dr-dropdown/dr-dropdown.service.mjs +62 -0
  72. package/esm2022/lib/dr-dynamic-tag/dr-dynamic-tag.component.mjs +203 -0
  73. package/esm2022/lib/dr-dynamic-tag/dr-dynamic-tag.module.mjs +21 -0
  74. package/esm2022/lib/dr-error/dr-error.component.mjs +90 -0
  75. package/esm2022/lib/dr-error/dr-error.module.mjs +22 -0
  76. package/esm2022/lib/dr-inputs/button/button.component.mjs +101 -0
  77. package/esm2022/lib/dr-inputs/checkbox/checkbox.component.mjs +110 -0
  78. package/esm2022/lib/dr-inputs/date-pickers/directives/dr-date-picker-format.directive.mjs +55 -0
  79. package/esm2022/lib/dr-inputs/date-pickers/dr-date-picker/dr-date-picker.component.mjs +400 -0
  80. package/esm2022/lib/dr-inputs/date-pickers/dr-date-picker-range/dr-date-picker-range.component.mjs +157 -0
  81. package/esm2022/lib/dr-inputs/date-pickers/dr-date-picker-with-timeframe/dr-date-picker-with-timeframe.component.mjs +269 -0
  82. package/esm2022/lib/dr-inputs/date-pickers/dr-date-picker_custom-header/dr-date-picker_custom-header.component.mjs +326 -0
  83. package/esm2022/lib/dr-inputs/date-pickers/dr-show-timeframe.pipe.mjs +16 -0
  84. package/esm2022/lib/dr-inputs/date-pickers/services/dr-date-picker.service.mjs +224 -0
  85. package/esm2022/lib/dr-inputs/date-pickers/services/week-selection-strategy.mjs +34 -0
  86. package/esm2022/lib/dr-inputs/date-pickers/week-selector/week-selector.component.mjs +91 -0
  87. package/esm2022/lib/dr-inputs/dr-input/dr-input.component.mjs +336 -0
  88. package/esm2022/lib/dr-inputs/dr-inputs.module.mjs +128 -0
  89. package/esm2022/lib/dr-inputs/dr-link/dr-link.component.mjs +43 -0
  90. package/esm2022/lib/dr-inputs/dr-model-debounce-change.directive.mjs +37 -0
  91. package/esm2022/lib/dr-inputs/dr-select/dr-select.component.mjs +391 -0
  92. package/esm2022/lib/dr-inputs/dr-select-add-item/dr-select-add-item.component.mjs +138 -0
  93. package/esm2022/lib/dr-inputs/dr-slider/dr-slider.component.mjs +53 -0
  94. package/esm2022/lib/dr-inputs/dr-toggle/dr-toggle.component.mjs +108 -0
  95. package/esm2022/lib/dr-inputs/dr-toggle-button/dr-toggle-button.component.mjs +108 -0
  96. package/esm2022/lib/dr-inputs/radio-button/radio-button.component.mjs +88 -0
  97. package/esm2022/lib/dr-inputs/radio-button/radio-group.component.mjs +185 -0
  98. package/esm2022/lib/dr-layout/dr-layout-body.component.mjs +19 -0
  99. package/esm2022/lib/dr-layout/dr-layout-header.component.mjs +25 -0
  100. package/esm2022/lib/dr-layout/dr-layout.component.mjs +21 -0
  101. package/esm2022/lib/dr-layout/dr-layout.module.mjs +22 -0
  102. package/esm2022/lib/dr-popover/dr-popover-ref.mjs +23 -0
  103. package/esm2022/lib/dr-popover/dr-popover.component.mjs +155 -0
  104. package/esm2022/lib/dr-popover/dr-popover.directive.mjs +137 -0
  105. package/esm2022/lib/dr-popover/dr-popover.module.mjs +20 -0
  106. package/esm2022/lib/dr-popover/dr-popover.service.mjs +117 -0
  107. package/esm2022/lib/dr-scenario/components/dr-scenario-configuration/dr-scenario-configuration.component.mjs +104 -0
  108. package/esm2022/lib/dr-scenario/components/dr-scenario-tag-configuration/dr-scenario-tag-configuration.component.mjs +100 -0
  109. package/esm2022/lib/dr-scenario/consts/scenario-tags-config.mjs +87 -0
  110. package/esm2022/lib/dr-scenario/dr-scenario.module.mjs +27 -0
  111. package/esm2022/lib/dr-scenario/services/scenario.service.mjs +195 -0
  112. package/esm2022/lib/dr-spinner/dr-spinner.component.mjs +27 -0
  113. package/esm2022/lib/dr-spinner/dr-spinner.directive.mjs +66 -0
  114. package/esm2022/lib/dr-spinner/dr-spinner.module.mjs +22 -0
  115. package/esm2022/lib/dr-tabs/dr-tab.component.mjs +47 -0
  116. package/esm2022/lib/dr-tabs/dr-tabs.component.mjs +252 -0
  117. package/esm2022/lib/dr-tabs/dr-tabs.module.mjs +25 -0
  118. package/esm2022/lib/dr-tags/dr-tag.component.mjs +235 -0
  119. package/esm2022/lib/dr-tags/dr-tag.module.mjs +23 -0
  120. package/esm2022/lib/dr-tags-constructor/dr-tags-constructor.component.mjs +161 -0
  121. package/esm2022/lib/dr-tags-constructor/dr-tags-constructor.module.mjs +24 -0
  122. package/esm2022/lib/dr-tags-constructor/tags-constructor.service.mjs +71 -0
  123. package/esm2022/lib/dr-toastr/default-toastr/default-toastr.component.mjs +73 -0
  124. package/esm2022/lib/dr-toastr/dr-toastr.module.mjs +31 -0
  125. package/esm2022/lib/dr-toastr/dr-toastr.service.mjs +44 -0
  126. package/esm2022/lib/dr-tooltip/components/tooltip-default/tooltip-default.component.mjs +31 -0
  127. package/esm2022/lib/dr-tooltip/components/tooltip-info/tooltip-info.component.mjs +82 -0
  128. package/esm2022/lib/dr-tooltip/dr-tooltip.component.mjs +86 -0
  129. package/esm2022/lib/dr-tooltip/dr-tooltip.directive.mjs +194 -0
  130. package/esm2022/lib/dr-tooltip/dr-tooltip.module.mjs +24 -0
  131. package/esm2022/lib/dr-tooltip/interfaces/tooltip-component-context.mjs +14 -0
  132. package/esm2022/lib/dr-treeview/components/treeview/treeview.component.mjs +407 -0
  133. package/esm2022/lib/dr-treeview/components/treeview-item/treeview-item.component.mjs +97 -0
  134. package/esm2022/lib/dr-treeview/dr-tree-view.module.mjs +31 -0
  135. package/esm2022/lib/dr-treeview/helpers/treeview-event-parser.mjs +108 -0
  136. package/esm2022/lib/dr-treeview/helpers/treeview-helper.mjs +82 -0
  137. package/esm2022/lib/dr-treeview/models/treeview-config.mjs +25 -0
  138. package/{esm2015/lib/dr-treeview/models/treeview-header-template-context.js → esm2022/lib/dr-treeview/models/treeview-header-template-context.mjs} +1 -1
  139. package/esm2022/lib/dr-treeview/models/treeview-i18n.mjs +47 -0
  140. package/{esm2015/lib/dr-treeview/models/treeview-item-template-context.js → esm2022/lib/dr-treeview/models/treeview-item-template-context.mjs} +1 -1
  141. package/esm2022/lib/dr-treeview/models/treeview-item.mjs +155 -0
  142. package/esm2022/lib/dr-treeview/pipes/treeview.pipe.mjs +21 -0
  143. package/esm2022/lib/drawer/drawer-animation.mjs +18 -0
  144. package/esm2022/lib/drawer/drawer-config.mjs +35 -0
  145. package/esm2022/lib/drawer/drawer-container.component.mjs +179 -0
  146. package/esm2022/lib/drawer/drawer-position-strategy.mjs +14 -0
  147. package/esm2022/lib/drawer/drawer-ref.mjs +106 -0
  148. package/esm2022/lib/drawer/drawer.module.mjs +19 -0
  149. package/esm2022/lib/drawer/drawer.service.mjs +140 -0
  150. package/esm2022/lib/drawer/public-api.mjs +6 -0
  151. package/esm2022/lib/image-cropper/dr-image-cropper-canvas.service.mjs +78 -0
  152. package/esm2022/lib/image-cropper/dr-image-cropper.component.mjs +133 -0
  153. package/esm2022/lib/image-cropper/dr-image-cropper.types.mjs +6 -0
  154. package/esm2022/lib/list-tags/list-tag.component.mjs +82 -0
  155. package/esm2022/lib/list-tags/list-tag.module.mjs +22 -0
  156. package/esm2022/lib/models/chat.mjs +36 -0
  157. package/{esm2015/lib/models/constants.js → esm2022/lib/models/constants.mjs} +17 -22
  158. package/{esm2015/lib/models/datePicker.js → esm2022/lib/models/datePicker.mjs} +2 -2
  159. package/esm2022/lib/models/datePickerRange.mjs +2 -0
  160. package/esm2022/lib/models/dropdown.mjs +2 -0
  161. package/{esm2015/lib/models/feedback.js → esm2022/lib/models/feedback.mjs} +1 -2
  162. package/esm2022/lib/models/popover.mjs +27 -0
  163. package/{esm2015/lib/models/serverTags.js → esm2022/lib/models/serverTags.mjs} +1 -1
  164. package/esm2022/lib/models/spinnerOptions.mjs +2 -0
  165. package/esm2022/lib/models/toastr.mjs +14 -0
  166. package/esm2022/lib/pipes/filter/filter.pipe.mjs +48 -0
  167. package/esm2022/lib/pipes/img/img.pipe.mjs +19 -0
  168. package/esm2022/lib/stepper/stepper.component.mjs +270 -0
  169. package/esm2022/lib/stepper/stepper.module.mjs +20 -0
  170. package/esm2022/lib/utils/data-analytics.service.mjs +21 -0
  171. package/esm2022/lib/utils/decorators.mjs +12 -0
  172. package/esm2022/lib/utils/dr-shared-utils.mjs +85 -0
  173. package/esm2022/public-api.mjs +156 -0
  174. package/esm2022/src/lib/drawer/drDrawer.mjs +5 -0
  175. package/esm2022/src/lib/drawer/drawer-animation.mjs +18 -0
  176. package/esm2022/src/lib/drawer/drawer-config.mjs +35 -0
  177. package/esm2022/src/lib/drawer/drawer-container.component.mjs +179 -0
  178. package/esm2022/src/lib/drawer/drawer-position-strategy.mjs +14 -0
  179. package/esm2022/src/lib/drawer/drawer-ref.mjs +106 -0
  180. package/esm2022/src/lib/drawer/drawer.module.mjs +19 -0
  181. package/esm2022/src/lib/drawer/drawer.service.mjs +140 -0
  182. package/esm2022/src/lib/drawer/public-api.mjs +6 -0
  183. package/fesm2022/datarailsshared-datarailsshared.mjs +13716 -0
  184. package/fesm2022/datarailsshared-datarailsshared.mjs.map +1 -0
  185. package/fesm2022/drDrawer.mjs +496 -0
  186. package/fesm2022/drDrawer.mjs.map +1 -0
  187. package/index.d.ts +5 -0
  188. package/lib/date-tags/any-tag.component.d.ts +20 -0
  189. package/lib/date-tags/date-tag.component.d.ts +4 -16
  190. package/lib/date-tags/date-tag.module.d.ts +19 -2
  191. package/lib/date-tags/day-tag/day-tag.component.d.ts +4 -1
  192. package/lib/date-tags/forecast-tag/forecast-tag.component.d.ts +4 -1
  193. package/lib/date-tags/forecast-tag/forecast-tag.service.d.ts +11 -8
  194. package/lib/date-tags/month-tag/month-tag.component.d.ts +4 -1
  195. package/lib/date-tags/quarter-tag/quarter-tag.component.d.ts +4 -1
  196. package/lib/date-tags/week-tag/week-tag.component.d.ts +4 -1
  197. package/lib/date-tags/year-tag/year-tag.component.d.ts +4 -1
  198. package/lib/directives/click-outside/click-outside.directive.d.ts +23 -0
  199. package/lib/directives/click-outside/click-outside.module.d.ts +8 -0
  200. package/lib/directives/dr-shine-animation/dr-shine-animation.directive.d.ts +18 -0
  201. package/lib/directives/let/let.directive.d.ts +19 -0
  202. package/lib/directives/ng-track-by-property/ng-track-by-property.directive.d.ts +8 -0
  203. package/lib/dr-accordion/accordion-item-body.component.d.ts +3 -0
  204. package/lib/dr-accordion/accordion-item-header.component.d.ts +14 -1
  205. package/lib/dr-accordion/accordion-item.component.d.ts +4 -1
  206. package/lib/dr-accordion/accordion.component.d.ts +5 -0
  207. package/lib/dr-accordion/accordion.module.d.ts +9 -0
  208. package/lib/dr-alert/dr-alert.component.d.ts +3 -0
  209. package/lib/dr-alert/dr-alert.module.d.ts +6 -0
  210. package/lib/dr-avatar/dr-avatar.component.d.ts +15 -13
  211. package/lib/dr-avatar/dr-avatar.module.d.ts +8 -0
  212. package/lib/dr-avatar/dr-avatar.pipe.d.ts +5 -1
  213. package/lib/dr-avatar/services/dr-avatar.service.d.ts +1 -1
  214. package/lib/dr-avatar/types.d.ts +8 -0
  215. package/lib/dr-badge-status/dr-badge-status.component.d.ts +5 -4
  216. package/lib/dr-badge-status/dr-badge-status.module.d.ts +7 -0
  217. package/lib/dr-chat/chat.component.d.ts +6 -7
  218. package/lib/dr-chat/chat.module.d.ts +20 -0
  219. package/lib/dr-chat/dr-chat-alert/dr-chat-alert.component.d.ts +8 -0
  220. package/lib/dr-chat/dr-chat-form/chat-form.component.d.ts +11 -1
  221. package/lib/dr-chat/dr-chat-form-with-history/chat-form-with-history.component.d.ts +81 -0
  222. package/lib/dr-chat/dr-chat-message/chat-message.component.d.ts +4 -0
  223. package/lib/dr-chat/dr-chat-message/dr-chat-message-custom/chat-custom-message.directive.d.ts +3 -0
  224. package/lib/dr-chat/dr-chat-message/dr-chat-message-custom/chat-custom-message.service.d.ts +3 -0
  225. package/lib/dr-chat/dr-chat-message/dr-chat-message-file/chat-message-file.component.d.ts +3 -0
  226. package/lib/dr-chat/dr-chat-message/dr-chat-message-text/chat-message-text.component.d.ts +3 -0
  227. package/lib/dr-chat/dr-chat-suggestions/chat-suggestions.component.d.ts +15 -2
  228. package/lib/dr-chat/dr-dot-flashing/dr-dot-flashing.component.d.ts +3 -0
  229. package/lib/dr-chip/dr-chip.component.d.ts +10 -0
  230. package/lib/dr-code-editor/components/code-editor-hint-wrapper.component.d.ts +7 -0
  231. package/lib/dr-code-editor/components/dr-codemirror.component.d.ts +47 -0
  232. package/lib/dr-code-editor/dr-code-editor.component.d.ts +45 -0
  233. package/lib/dr-code-editor/dr-code-editor.module.d.ts +17 -0
  234. package/lib/dr-code-editor/models/code-editor-hint.d.ts +14 -0
  235. package/lib/dr-details-list/dr-details-list.component.d.ts +3 -0
  236. package/lib/dr-details-list/dr-details-list.module.d.ts +6 -0
  237. package/lib/dr-dialog/components/dialog-modal-wrapper/dialog-modal-wrapper.component.d.ts +6 -5
  238. package/lib/dr-dialog/components/dialog-wrapper/dialog-wrapper.component.d.ts +6 -5
  239. package/lib/dr-dialog/dialog.module.d.ts +12 -0
  240. package/lib/dr-dialog/interfaces/dialog-data.d.ts +13 -9
  241. package/lib/dr-dialog/services/dialog.service.d.ts +10 -3
  242. package/lib/dr-dropdown/dr-dropdown-item/dr-dropdown-item.component.d.ts +8 -0
  243. package/lib/dr-dropdown/dr-dropdown-item-show.pipe.d.ts +3 -0
  244. package/lib/dr-dropdown/dr-dropdown.component.d.ts +28 -21
  245. package/lib/dr-dropdown/dr-dropdown.directive.d.ts +21 -14
  246. package/lib/dr-dropdown/dr-dropdown.module.d.ts +11 -0
  247. package/lib/dr-dropdown/dr-dropdown.service.d.ts +26 -8
  248. package/lib/dr-dynamic-tag/dr-dynamic-tag.component.d.ts +3 -0
  249. package/lib/dr-dynamic-tag/dr-dynamic-tag.module.d.ts +8 -0
  250. package/lib/dr-error/dr-error.component.d.ts +12 -8
  251. package/lib/dr-error/dr-error.module.d.ts +8 -0
  252. package/lib/dr-inputs/button/button.component.d.ts +6 -8
  253. package/lib/dr-inputs/checkbox/checkbox.component.d.ts +10 -2
  254. package/lib/dr-inputs/date-pickers/directives/dr-date-picker-format.directive.d.ts +3 -0
  255. package/lib/dr-inputs/date-pickers/dr-date-picker/dr-date-picker.component.d.ts +29 -9
  256. package/lib/dr-inputs/date-pickers/dr-date-picker-range/dr-date-picker-range.component.d.ts +40 -0
  257. package/lib/dr-inputs/date-pickers/dr-date-picker-with-timeframe/dr-date-picker-with-timeframe.component.d.ts +18 -11
  258. package/lib/dr-inputs/date-pickers/dr-date-picker_custom-header/dr-date-picker_custom-header.component.d.ts +11 -10
  259. package/lib/dr-inputs/date-pickers/dr-show-timeframe.pipe.d.ts +4 -2
  260. package/lib/dr-inputs/date-pickers/services/dr-date-picker.service.d.ts +22 -5
  261. package/lib/dr-inputs/date-pickers/services/week-selection-strategy.d.ts +12 -0
  262. package/lib/dr-inputs/date-pickers/week-selector/week-selector.component.d.ts +23 -0
  263. package/lib/dr-inputs/dr-input/dr-input.component.d.ts +35 -20
  264. package/lib/dr-inputs/dr-inputs.module.d.ts +30 -0
  265. package/lib/dr-inputs/dr-link/dr-link.component.d.ts +16 -0
  266. package/lib/dr-inputs/dr-model-debounce-change.directive.d.ts +4 -0
  267. package/lib/dr-inputs/dr-select/dr-select.component.d.ts +20 -3
  268. package/lib/dr-inputs/dr-select-add-item/dr-select-add-item.component.d.ts +4 -0
  269. package/lib/dr-inputs/dr-slider/dr-slider.component.d.ts +18 -0
  270. package/lib/dr-inputs/dr-toggle/dr-toggle.component.d.ts +3 -0
  271. package/lib/dr-inputs/dr-toggle-button/dr-toggle-button.component.d.ts +6 -1
  272. package/lib/dr-inputs/radio-button/radio-button.component.d.ts +3 -0
  273. package/lib/dr-inputs/radio-button/radio-group.component.d.ts +3 -0
  274. package/lib/dr-layout/dr-layout-body.component.d.ts +3 -0
  275. package/lib/dr-layout/dr-layout-header.component.d.ts +3 -0
  276. package/lib/dr-layout/dr-layout.component.d.ts +3 -0
  277. package/lib/dr-layout/dr-layout.module.d.ts +8 -0
  278. package/lib/dr-popover/dr-popover-ref.d.ts +1 -0
  279. package/lib/dr-popover/dr-popover.component.d.ts +8 -4
  280. package/lib/dr-popover/dr-popover.directive.d.ts +9 -5
  281. package/lib/dr-popover/dr-popover.module.d.ts +7 -0
  282. package/lib/dr-popover/dr-popover.service.d.ts +5 -1
  283. package/lib/dr-scenario/components/dr-scenario-configuration/dr-scenario-configuration.component.d.ts +3 -4
  284. package/lib/dr-scenario/components/dr-scenario-tag-configuration/dr-scenario-tag-configuration.component.d.ts +3 -0
  285. package/lib/dr-scenario/dr-scenario.module.d.ts +11 -0
  286. package/lib/dr-scenario/interfaces/scenario.d.ts +3 -3
  287. package/lib/dr-scenario/services/scenario.service.d.ts +3 -0
  288. package/lib/dr-spinner/dr-spinner.component.d.ts +3 -0
  289. package/lib/dr-spinner/dr-spinner.directive.d.ts +4 -2
  290. package/lib/dr-spinner/dr-spinner.module.d.ts +7 -0
  291. package/lib/dr-tabs/dr-tab.component.d.ts +5 -0
  292. package/lib/dr-tabs/dr-tabs.component.d.ts +21 -4
  293. package/lib/dr-tabs/dr-tabs.module.d.ts +11 -0
  294. package/lib/dr-tags/dr-tag.component.d.ts +3 -0
  295. package/lib/dr-tags/dr-tag.module.d.ts +9 -0
  296. package/lib/dr-tags-constructor/dr-tags-constructor.component.d.ts +33 -0
  297. package/lib/dr-tags-constructor/dr-tags-constructor.module.d.ts +10 -0
  298. package/lib/dr-tags-constructor/tags-constructor.service.d.ts +12 -0
  299. package/lib/dr-toastr/default-toastr/default-toastr.component.d.ts +15 -0
  300. package/lib/dr-toastr/dr-toastr.module.d.ts +9 -0
  301. package/lib/dr-toastr/dr-toastr.service.d.ts +14 -0
  302. package/lib/dr-tooltip/components/tooltip-default/tooltip-default.component.d.ts +9 -0
  303. package/lib/dr-tooltip/components/tooltip-info/tooltip-info.component.d.ts +3 -1
  304. package/lib/dr-tooltip/dr-tooltip.component.d.ts +4 -1
  305. package/lib/dr-tooltip/dr-tooltip.directive.d.ts +7 -0
  306. package/lib/dr-tooltip/dr-tooltip.module.d.ts +9 -0
  307. package/lib/dr-tooltip/interfaces/tooltip-component-context.d.ts +18 -2
  308. package/lib/dr-treeview/components/treeview/treeview.component.d.ts +3 -0
  309. package/lib/dr-treeview/components/treeview-item/treeview-item.component.d.ts +3 -0
  310. package/lib/dr-treeview/dr-tree-view.module.d.ts +9 -0
  311. package/lib/dr-treeview/helpers/treeview-event-parser.d.ts +9 -0
  312. package/lib/dr-treeview/models/treeview-config.d.ts +3 -0
  313. package/lib/dr-treeview/models/treeview-i18n.d.ts +5 -0
  314. package/lib/dr-treeview/models/treeview-item.d.ts +2 -1
  315. package/lib/dr-treeview/pipes/treeview.pipe.d.ts +3 -0
  316. package/lib/drawer/drawer-animation.d.ts +5 -0
  317. package/lib/drawer/drawer-config.d.ts +68 -0
  318. package/lib/drawer/drawer-container.component.d.ts +45 -0
  319. package/lib/drawer/drawer-position-strategy.d.ts +10 -0
  320. package/lib/drawer/drawer-ref.d.ts +55 -0
  321. package/lib/drawer/drawer.module.d.ts +7 -0
  322. package/lib/drawer/drawer.service.d.ts +62 -0
  323. package/lib/drawer/public-api.d.ts +5 -0
  324. package/lib/image-cropper/dr-image-cropper-canvas.service.d.ts +20 -0
  325. package/lib/image-cropper/dr-image-cropper.component.d.ts +28 -0
  326. package/lib/image-cropper/dr-image-cropper.types.d.ts +9 -0
  327. package/lib/list-tags/list-tag.component.d.ts +3 -0
  328. package/lib/list-tags/list-tag.module.d.ts +8 -0
  329. package/lib/models/chat.d.ts +3 -3
  330. package/lib/models/datePicker.d.ts +10 -3
  331. package/lib/models/datePickerRange.d.ts +4 -0
  332. package/lib/models/dropdown.d.ts +15 -21
  333. package/lib/models/popover.d.ts +7 -4
  334. package/lib/models/serverTags.d.ts +4 -4
  335. package/lib/models/spinnerOptions.d.ts +2 -10
  336. package/lib/models/toastr.d.ts +18 -0
  337. package/lib/pipes/filter/filter.pipe.d.ts +7 -0
  338. package/lib/pipes/img/img.pipe.d.ts +7 -0
  339. package/lib/stepper/interfaces/stepper.d.ts +1 -1
  340. package/lib/stepper/stepper.component.d.ts +13 -8
  341. package/lib/stepper/stepper.module.d.ts +7 -0
  342. package/lib/utils/data-analytics.service.d.ts +8 -0
  343. package/lib/utils/decorators.d.ts +1 -0
  344. package/lib/utils/dr-shared-utils.d.ts +9 -0
  345. package/package.json +41 -15
  346. package/public-api.d.ts +59 -6
  347. package/src/lib/drawer/drawer-animation.d.ts +5 -0
  348. package/src/lib/drawer/drawer-config.d.ts +68 -0
  349. package/src/lib/drawer/drawer-container.component.d.ts +45 -0
  350. package/src/lib/drawer/drawer-position-strategy.d.ts +10 -0
  351. package/src/lib/drawer/drawer-ref.d.ts +55 -0
  352. package/src/lib/drawer/drawer.module.d.ts +7 -0
  353. package/src/lib/drawer/drawer.service.d.ts +62 -0
  354. package/src/lib/drawer/index.d.ts +5 -0
  355. package/src/lib/drawer/public-api.d.ts +5 -0
  356. package/styles.css +749 -0
  357. package/_datarailsshared.styles.css +0 -4
  358. package/assets/styles/img/dr-icon-info.svg +0 -4
  359. package/bundles/datarailsshared-datarailsshared.umd.js +0 -8372
  360. package/bundles/datarailsshared-datarailsshared.umd.js.map +0 -1
  361. package/datarailsshared-datarailsshared-1.4.569.tgz +0 -0
  362. package/datarailsshared-datarailsshared.d.ts +0 -34
  363. package/datarailsshared-datarailsshared.metadata.json +0 -1
  364. package/esm2015/datarailsshared-datarailsshared.js +0 -35
  365. package/esm2015/lib/date-tags/date-tag.component.js +0 -74
  366. package/esm2015/lib/date-tags/date-tag.module.js +0 -36
  367. package/esm2015/lib/date-tags/day-tag/day-tag.component.js +0 -77
  368. package/esm2015/lib/date-tags/forecast-tag/forecast-tag.component.js +0 -164
  369. package/esm2015/lib/date-tags/forecast-tag/forecast-tag.service.js +0 -83
  370. package/esm2015/lib/date-tags/month-tag/month-tag.component.js +0 -80
  371. package/esm2015/lib/date-tags/quarter-tag/quarter-tag.component.js +0 -114
  372. package/esm2015/lib/date-tags/week-tag/week-tag.component.js +0 -84
  373. package/esm2015/lib/date-tags/year-tag/year-tag.component.js +0 -78
  374. package/esm2015/lib/dr-accordion/accordion-item-body.component.js +0 -55
  375. package/esm2015/lib/dr-accordion/accordion-item-header.component.js +0 -77
  376. package/esm2015/lib/dr-accordion/accordion-item.component.js +0 -123
  377. package/esm2015/lib/dr-accordion/accordion.component.js +0 -43
  378. package/esm2015/lib/dr-accordion/accordion.module.js +0 -23
  379. package/esm2015/lib/dr-alert/dr-alert.component.js +0 -35
  380. package/esm2015/lib/dr-alert/dr-alert.module.js +0 -18
  381. package/esm2015/lib/dr-avatar/dr-avatar.component.js +0 -54
  382. package/esm2015/lib/dr-avatar/dr-avatar.module.js +0 -26
  383. package/esm2015/lib/dr-avatar/dr-avatar.pipe.js +0 -16
  384. package/esm2015/lib/dr-avatar/services/dr-avatar.service.js +0 -17
  385. package/esm2015/lib/dr-badge-status/dr-badge-status.component.js +0 -25
  386. package/esm2015/lib/dr-badge-status/dr-badge-status.module.js +0 -20
  387. package/esm2015/lib/dr-chat/chat.component.js +0 -119
  388. package/esm2015/lib/dr-chat/chat.module.js +0 -41
  389. package/esm2015/lib/dr-chat/dr-chat-form/chat-form.component.js +0 -155
  390. package/esm2015/lib/dr-chat/dr-chat-message/chat-message.component.js +0 -71
  391. package/esm2015/lib/dr-chat/dr-chat-message/dr-chat-message-custom/chat-custom-message.directive.js +0 -49
  392. package/esm2015/lib/dr-chat/dr-chat-message/dr-chat-message-custom/chat-custom-message.service.js +0 -23
  393. package/esm2015/lib/dr-chat/dr-chat-message/dr-chat-message-file/chat-message-file.component.js +0 -47
  394. package/esm2015/lib/dr-chat/dr-chat-message/dr-chat-message-text/chat-message-text.component.js +0 -18
  395. package/esm2015/lib/dr-chat/dr-chat-suggestions/chat-suggestions.component.js +0 -87
  396. package/esm2015/lib/dr-chat/dr-dot-flashing/dr-dot-flashing.component.js +0 -15
  397. package/esm2015/lib/dr-details-list/dr-details-list.component.js +0 -65
  398. package/esm2015/lib/dr-details-list/dr-details-list.module.js +0 -16
  399. package/esm2015/lib/dr-dialog/components/dialog-modal-wrapper/dialog-modal-wrapper.component.js +0 -84
  400. package/esm2015/lib/dr-dialog/components/dialog-wrapper/dialog-wrapper.component.js +0 -92
  401. package/esm2015/lib/dr-dialog/dialog.module.js +0 -34
  402. package/esm2015/lib/dr-dialog/interfaces/dialog-data.js +0 -25
  403. package/esm2015/lib/dr-dialog/services/dialog.service.js +0 -78
  404. package/esm2015/lib/dr-dropdown/dr-dropdown-item-show.pipe.js +0 -12
  405. package/esm2015/lib/dr-dropdown/dr-dropdown-position.directive.js +0 -104
  406. package/esm2015/lib/dr-dropdown/dr-dropdown.component.js +0 -114
  407. package/esm2015/lib/dr-dropdown/dr-dropdown.directive.js +0 -104
  408. package/esm2015/lib/dr-dropdown/dr-dropdown.module.js +0 -34
  409. package/esm2015/lib/dr-dropdown/dr-dropdown.service.js +0 -24
  410. package/esm2015/lib/dr-dynamic-tag/dr-dynamic-tag.component.js +0 -120
  411. package/esm2015/lib/dr-dynamic-tag/dr-dynamic-tag.module.js +0 -19
  412. package/esm2015/lib/dr-error/dr-error.component.js +0 -56
  413. package/esm2015/lib/dr-error/dr-error.module.js +0 -22
  414. package/esm2015/lib/dr-inputs/button/button.component.js +0 -39
  415. package/esm2015/lib/dr-inputs/checkbox/checkbox.component.js +0 -66
  416. package/esm2015/lib/dr-inputs/date-pickers/directives/dr-date-picker-format.directive.js +0 -47
  417. package/esm2015/lib/dr-inputs/date-pickers/dr-date-picker/dr-date-picker.component.js +0 -234
  418. package/esm2015/lib/dr-inputs/date-pickers/dr-date-picker-with-timeframe/dr-date-picker-with-timeframe.component.js +0 -182
  419. package/esm2015/lib/dr-inputs/date-pickers/dr-date-picker_custom-header/dr-date-picker_custom-header.component.js +0 -183
  420. package/esm2015/lib/dr-inputs/date-pickers/dr-show-timeframe.pipe.js +0 -12
  421. package/esm2015/lib/dr-inputs/date-pickers/services/dr-date-picker.service.js +0 -194
  422. package/esm2015/lib/dr-inputs/dr-input/dr-input.component.js +0 -194
  423. package/esm2015/lib/dr-inputs/dr-inputs.module.js +0 -68
  424. package/esm2015/lib/dr-inputs/dr-model-debounce-change.directive.js +0 -29
  425. package/esm2015/lib/dr-inputs/dr-select/dr-select.component.js +0 -123
  426. package/esm2015/lib/dr-inputs/dr-select-add-item/dr-select-add-item.component.js +0 -74
  427. package/esm2015/lib/dr-inputs/dr-toggle/dr-toggle.component.js +0 -68
  428. package/esm2015/lib/dr-inputs/dr-toggle-button/dr-toggle-button.component.js +0 -67
  429. package/esm2015/lib/dr-inputs/radio-button/radio-button.component.js +0 -73
  430. package/esm2015/lib/dr-inputs/radio-button/radio-group.component.js +0 -157
  431. package/esm2015/lib/dr-layout/dr-layout-body.component.js +0 -13
  432. package/esm2015/lib/dr-layout/dr-layout-header.component.js +0 -17
  433. package/esm2015/lib/dr-layout/dr-layout.component.js +0 -14
  434. package/esm2015/lib/dr-layout/dr-layout.module.js +0 -20
  435. package/esm2015/lib/dr-popover/dr-popover-ref.js +0 -20
  436. package/esm2015/lib/dr-popover/dr-popover.component.js +0 -106
  437. package/esm2015/lib/dr-popover/dr-popover.directive.js +0 -84
  438. package/esm2015/lib/dr-popover/dr-popover.module.js +0 -23
  439. package/esm2015/lib/dr-popover/dr-popover.service.js +0 -106
  440. package/esm2015/lib/dr-scenario/components/dr-scenario-configuration/dr-scenario-configuration.component.js +0 -104
  441. package/esm2015/lib/dr-scenario/components/dr-scenario-tag-configuration/dr-scenario-tag-configuration.component.js +0 -75
  442. package/esm2015/lib/dr-scenario/consts/scenario-tags-config.js +0 -79
  443. package/esm2015/lib/dr-scenario/dr-scenario.module.js +0 -28
  444. package/esm2015/lib/dr-scenario/services/scenario.service.js +0 -196
  445. package/esm2015/lib/dr-spinner/dr-spinner.component.js +0 -18
  446. package/esm2015/lib/dr-spinner/dr-spinner.directive.js +0 -58
  447. package/esm2015/lib/dr-spinner/dr-spinner.module.js +0 -18
  448. package/esm2015/lib/dr-tabs/dr-tab.component.js +0 -26
  449. package/esm2015/lib/dr-tabs/dr-tabs.component.js +0 -35
  450. package/esm2015/lib/dr-tabs/dr-tabs.module.js +0 -32
  451. package/esm2015/lib/dr-tags/dr-tag.component.js +0 -183
  452. package/esm2015/lib/dr-tags/dr-tag.module.js +0 -24
  453. package/esm2015/lib/dr-tooltip/components/tooltip-info/tooltip-info.component.js +0 -19
  454. package/esm2015/lib/dr-tooltip/components/tooltip-info-simple/tooltip-info-simple.component.js +0 -18
  455. package/esm2015/lib/dr-tooltip/components/tooltip-no-body/tooltip-no-body.component.js +0 -20
  456. package/esm2015/lib/dr-tooltip/components/tooltip-process-default/tooltip-process-default.component.js +0 -34
  457. package/esm2015/lib/dr-tooltip/dr-tooltip.component.js +0 -41
  458. package/esm2015/lib/dr-tooltip/dr-tooltip.directive.js +0 -151
  459. package/esm2015/lib/dr-tooltip/dr-tooltip.module.js +0 -38
  460. package/esm2015/lib/dr-tooltip/interfaces/tooltip-component-context.js +0 -2
  461. package/esm2015/lib/dr-treeview/components/treeview/treeview.component.js +0 -210
  462. package/esm2015/lib/dr-treeview/components/treeview-item/treeview-item.component.js +0 -58
  463. package/esm2015/lib/dr-treeview/dr-tree-view.module.js +0 -38
  464. package/esm2015/lib/dr-treeview/helpers/treeview-event-parser.js +0 -97
  465. package/esm2015/lib/dr-treeview/helpers/treeview-helper.js +0 -82
  466. package/esm2015/lib/dr-treeview/models/treeview-config.js +0 -22
  467. package/esm2015/lib/dr-treeview/models/treeview-i18n.js +0 -42
  468. package/esm2015/lib/dr-treeview/models/treeview-item.js +0 -155
  469. package/esm2015/lib/dr-treeview/pipes/treeview.pipe.js +0 -17
  470. package/esm2015/lib/list-tags/list-tag.component.js +0 -37
  471. package/esm2015/lib/list-tags/list-tag.module.js +0 -23
  472. package/esm2015/lib/models/chat.js +0 -38
  473. package/esm2015/lib/models/dropdown.js +0 -2
  474. package/esm2015/lib/models/popover.js +0 -27
  475. package/esm2015/lib/models/spinnerOptions.js +0 -13
  476. package/esm2015/lib/stepper/stepper.component.js +0 -55
  477. package/esm2015/lib/stepper/stepper.module.js +0 -17
  478. package/esm2015/lib/utils/dr-shared-utils.js +0 -47
  479. package/esm2015/public-api.js +0 -101
  480. package/fesm2015/datarailsshared-datarailsshared.js +0 -7194
  481. package/fesm2015/datarailsshared-datarailsshared.js.map +0 -1
  482. package/lib/dr-dropdown/dr-dropdown-position.directive.d.ts +0 -12
  483. package/lib/dr-tooltip/components/tooltip-info-simple/tooltip-info-simple.component.d.ts +0 -5
  484. package/lib/dr-tooltip/components/tooltip-no-body/tooltip-no-body.component.d.ts +0 -6
  485. package/lib/dr-tooltip/components/tooltip-process-default/tooltip-process-default.component.d.ts +0 -4
  486. /package/{esm2015/lib/dr-inputs/dr-toggle-button/toggle-button-mode.js → esm2022/lib/dr-inputs/dr-toggle-button/toggle-button-mode.mjs} +0 -0
  487. /package/{esm2015/lib/dr-scenario/interfaces/scenario.js → esm2022/lib/dr-scenario/interfaces/scenario.mjs} +0 -0
  488. /package/{esm2015/lib/dr-tags/dr-tag.types.js → esm2022/lib/dr-tags/dr-tag.types.mjs} +0 -0
  489. /package/{esm2015/lib/dr-tooltip/enums/tooltip-position.enum.js → esm2022/lib/dr-tooltip/enums/tooltip-position.enum.mjs} +0 -0
  490. /package/{esm2015/lib/dr-tooltip/enums/tooltip-theme.enum.js → esm2022/lib/dr-tooltip/enums/tooltip-theme.enum.mjs} +0 -0
  491. /package/{esm2015/lib/models/badgeStatus.js → esm2022/lib/models/badgeStatus.mjs} +0 -0
  492. /package/{esm2015/lib/models/validationError.js → esm2022/lib/models/validationError.mjs} +0 -0
  493. /package/{esm2015/lib/stepper/interfaces/stepper.js → esm2022/lib/stepper/interfaces/stepper.mjs} +0 -0
@@ -0,0 +1,339 @@
1
+ import { Component, HostBinding, Inject } from '@angular/core';
2
+ import { FormControl, FormGroup } from '@angular/forms';
3
+ import { MAT_LEGACY_DIALOG_DATA as MAT_DIALOG_DATA, MatLegacyDialogRef as MatDialogRef } from '@angular/material/legacy-dialog';
4
+ import { DIALOG_FIELD_TYPE } from '../../interfaces/dialog-data';
5
+ import { BehaviorSubject, Subject, throwError } from 'rxjs';
6
+ import { catchError, finalize, takeUntil, tap } from 'rxjs/operators';
7
+ import * as i0 from "@angular/core";
8
+ import * as i1 from "@angular/material/legacy-dialog";
9
+ import * as i2 from "@angular/common";
10
+ import * as i3 from "../../../dr-inputs/button/button.component";
11
+ import * as i4 from "../../../dr-inputs/checkbox/checkbox.component";
12
+ import * as i5 from "../../../dr-inputs/dr-input/dr-input.component";
13
+ import * as i6 from "../../../dr-inputs/dr-select/dr-select.component";
14
+ import * as i7 from "../../../dr-inputs/date-pickers/dr-date-picker/dr-date-picker.component";
15
+ import * as i8 from "@angular/forms";
16
+ function DialogModalWrapperComponent_i_2_Template(rf, ctx) { if (rf & 1) {
17
+ const _r6 = i0.ɵɵgetCurrentView();
18
+ i0.ɵɵelementStart(0, "i", 9);
19
+ i0.ɵɵlistener("click", function DialogModalWrapperComponent_i_2_Template_i_click_0_listener() { i0.ɵɵrestoreView(_r6); const ctx_r5 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r5.closeDialog()); });
20
+ i0.ɵɵelementEnd();
21
+ } if (rf & 2) {
22
+ const ctx_r0 = i0.ɵɵnextContext();
23
+ i0.ɵɵclassMap(ctx_r0.dialogData.headerIconClass);
24
+ } }
25
+ function DialogModalWrapperComponent_i_5_Template(rf, ctx) { if (rf & 1) {
26
+ const _r8 = i0.ɵɵgetCurrentView();
27
+ i0.ɵɵelementStart(0, "i", 10);
28
+ i0.ɵɵlistener("click", function DialogModalWrapperComponent_i_5_Template_i_click_0_listener() { i0.ɵɵrestoreView(_r8); const ctx_r7 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r7.closeDialog()); });
29
+ i0.ɵɵelementEnd();
30
+ } }
31
+ function DialogModalWrapperComponent_div_6_Template(rf, ctx) { if (rf & 1) {
32
+ i0.ɵɵelementStart(0, "div", 11);
33
+ i0.ɵɵelement(1, "span", 12, 13);
34
+ i0.ɵɵelementEnd();
35
+ } if (rf & 2) {
36
+ const ctx_r2 = i0.ɵɵnextContext();
37
+ i0.ɵɵproperty("innerHTML", ctx_r2.dialogData.content, i0.ɵɵsanitizeHtml);
38
+ } }
39
+ function DialogModalWrapperComponent_form_7_div_2_label_1_Template(rf, ctx) { if (rf & 1) {
40
+ i0.ɵɵelementStart(0, "label", 25);
41
+ i0.ɵɵtext(1);
42
+ i0.ɵɵelementEnd();
43
+ } if (rf & 2) {
44
+ const field_r11 = i0.ɵɵnextContext().$implicit;
45
+ i0.ɵɵproperty("ngClass", field_r11.isLabelFullWidth ? "col-md-12 mb-2" : "col-md-2");
46
+ i0.ɵɵadvance(1);
47
+ i0.ɵɵtextInterpolate(field_r11.label);
48
+ } }
49
+ function DialogModalWrapperComponent_form_7_div_2_dr_select_3_3_ng_template_0_i_1_Template(rf, ctx) { if (rf & 1) {
50
+ i0.ɵɵelement(0, "i");
51
+ } if (rf & 2) {
52
+ const ctx_r26 = i0.ɵɵnextContext(6);
53
+ i0.ɵɵclassMap(ctx_r26.dialogData.footerTemplateData.icon);
54
+ } }
55
+ function DialogModalWrapperComponent_form_7_div_2_dr_select_3_3_ng_template_0_Template(rf, ctx) { if (rf & 1) {
56
+ const _r28 = i0.ɵɵgetCurrentView();
57
+ i0.ɵɵelementStart(0, "button", 29);
58
+ i0.ɵɵlistener("click", function DialogModalWrapperComponent_form_7_div_2_dr_select_3_3_ng_template_0_Template_button_click_0_listener() { const restoredCtx = i0.ɵɵrestoreView(_r28); const close_r25 = restoredCtx.close; const ctx_r27 = i0.ɵɵnextContext(5); ctx_r27.footerAction(); return i0.ɵɵresetView(close_r25()); });
59
+ i0.ɵɵtemplate(1, DialogModalWrapperComponent_form_7_div_2_dr_select_3_3_ng_template_0_i_1_Template, 1, 3, "i", 30);
60
+ i0.ɵɵtext(2);
61
+ i0.ɵɵelementEnd();
62
+ } if (rf & 2) {
63
+ const ctx_r23 = i0.ɵɵnextContext(5);
64
+ i0.ɵɵadvance(1);
65
+ i0.ɵɵproperty("ngIf", ctx_r23.dialogData.footerTemplateData.icon);
66
+ i0.ɵɵadvance(1);
67
+ i0.ɵɵtextInterpolate1(" ", ctx_r23.dialogData.footerTemplateData.label, " ");
68
+ } }
69
+ function DialogModalWrapperComponent_form_7_div_2_dr_select_3_3_Template(rf, ctx) { if (rf & 1) {
70
+ i0.ɵɵtemplate(0, DialogModalWrapperComponent_form_7_div_2_dr_select_3_3_ng_template_0_Template, 3, 2, "ng-template", null, 28, i0.ɵɵtemplateRefExtractor);
71
+ } }
72
+ function DialogModalWrapperComponent_form_7_div_2_dr_select_3_Template(rf, ctx) { if (rf & 1) {
73
+ i0.ɵɵelementStart(0, "dr-select", 26);
74
+ i0.ɵɵpipe(1, "async");
75
+ i0.ɵɵpipe(2, "async");
76
+ i0.ɵɵtemplate(3, DialogModalWrapperComponent_form_7_div_2_dr_select_3_3_Template, 2, 0, null, 27);
77
+ i0.ɵɵelementEnd();
78
+ } if (rf & 2) {
79
+ const field_r11 = i0.ɵɵnextContext().$implicit;
80
+ const ctx_r13 = i0.ɵɵnextContext(2);
81
+ i0.ɵɵproperty("searchable", ctx_r13.dialogData.searchable)("clearable", ctx_r13.dialogData.clearable)("formControlName", field_r11.name)("bindLabel", field_r11.bindLabel || null)("bindValue", field_r11.bindValue || null)("selectedItem", field_r11.default)("items", field_r11.items || i0.ɵɵpipeBind1(1, 11, field_r11.items$))("loading", i0.ɵɵpipeBind1(2, 13, ctx_r13.fieldsItemsLoading[field_r11.name]))("required", true)("placeholder", field_r11.placeholder);
82
+ i0.ɵɵadvance(3);
83
+ i0.ɵɵproperty("ngIf", ctx_r13.dialogData == null ? null : ctx_r13.dialogData.footerTemplateData);
84
+ } }
85
+ function DialogModalWrapperComponent_form_7_div_2_dr_input_4_Template(rf, ctx) { if (rf & 1) {
86
+ i0.ɵɵelement(0, "dr-input", 31);
87
+ } if (rf & 2) {
88
+ const field_r11 = i0.ɵɵnextContext().$implicit;
89
+ i0.ɵɵproperty("formControlName", field_r11.name)("placeholder", field_r11.placeholder);
90
+ } }
91
+ function DialogModalWrapperComponent_form_7_div_2_dr_date_picker_5_Template(rf, ctx) { if (rf & 1) {
92
+ i0.ɵɵelement(0, "dr-date-picker", 32);
93
+ } if (rf & 2) {
94
+ const field_r11 = i0.ɵɵnextContext().$implicit;
95
+ i0.ɵɵproperty("formControlName", field_r11.name)("format", field_r11.datePickerFormat)("placeholder", field_r11.placeholder);
96
+ } }
97
+ function DialogModalWrapperComponent_form_7_div_2_dr_checkbox_6_Template(rf, ctx) { if (rf & 1) {
98
+ i0.ɵɵelementStart(0, "dr-checkbox", 33);
99
+ i0.ɵɵtext(1);
100
+ i0.ɵɵelementEnd();
101
+ } if (rf & 2) {
102
+ const field_r11 = i0.ɵɵnextContext().$implicit;
103
+ i0.ɵɵproperty("formControlName", field_r11.name);
104
+ i0.ɵɵadvance(1);
105
+ i0.ɵɵtextInterpolate1(" ", field_r11.label, " ");
106
+ } }
107
+ function DialogModalWrapperComponent_form_7_div_2_label_7_Template(rf, ctx) { if (rf & 1) {
108
+ i0.ɵɵelementStart(0, "label", 34);
109
+ i0.ɵɵtext(1);
110
+ i0.ɵɵelementEnd();
111
+ } if (rf & 2) {
112
+ const field_r11 = i0.ɵɵnextContext().$implicit;
113
+ const ctx_r17 = i0.ɵɵnextContext(2);
114
+ i0.ɵɵadvance(1);
115
+ i0.ɵɵtextInterpolate1(" ", ctx_r17.form.controls[field_r11.name].errors.errorString, " ");
116
+ } }
117
+ function DialogModalWrapperComponent_form_7_div_2_label_8_Template(rf, ctx) { if (rf & 1) {
118
+ i0.ɵɵelementStart(0, "label", 35);
119
+ i0.ɵɵtext(1);
120
+ i0.ɵɵelementEnd();
121
+ } if (rf & 2) {
122
+ const ctx_r18 = i0.ɵɵnextContext(3);
123
+ i0.ɵɵadvance(1);
124
+ i0.ɵɵtextInterpolate1(" ", ctx_r18.dialogData.errorMessage, " ");
125
+ } }
126
+ function DialogModalWrapperComponent_form_7_div_2_label_9_Template(rf, ctx) { if (rf & 1) {
127
+ i0.ɵɵelementStart(0, "label", 35);
128
+ i0.ɵɵtext(1);
129
+ i0.ɵɵelementEnd();
130
+ } if (rf & 2) {
131
+ const ctx_r19 = i0.ɵɵnextContext(3);
132
+ i0.ɵɵadvance(1);
133
+ i0.ɵɵtextInterpolate1(" ", ctx_r19.dialogData.serverErrorMessage, " ");
134
+ } }
135
+ const _c0 = function (a0) { return { display: a0 }; };
136
+ const _c1 = function (a0, a1) { return { "col-md-10": a0, "col-md-12": a1 }; };
137
+ function DialogModalWrapperComponent_form_7_div_2_Template(rf, ctx) { if (rf & 1) {
138
+ i0.ɵɵelementStart(0, "div", 16);
139
+ i0.ɵɵtemplate(1, DialogModalWrapperComponent_form_7_div_2_label_1_Template, 2, 2, "label", 17);
140
+ i0.ɵɵelementStart(2, "div", 18);
141
+ i0.ɵɵtemplate(3, DialogModalWrapperComponent_form_7_div_2_dr_select_3_Template, 4, 15, "dr-select", 19);
142
+ i0.ɵɵtemplate(4, DialogModalWrapperComponent_form_7_div_2_dr_input_4_Template, 1, 2, "dr-input", 20);
143
+ i0.ɵɵtemplate(5, DialogModalWrapperComponent_form_7_div_2_dr_date_picker_5_Template, 1, 3, "dr-date-picker", 21);
144
+ i0.ɵɵtemplate(6, DialogModalWrapperComponent_form_7_div_2_dr_checkbox_6_Template, 2, 2, "dr-checkbox", 22);
145
+ i0.ɵɵtemplate(7, DialogModalWrapperComponent_form_7_div_2_label_7_Template, 2, 1, "label", 23);
146
+ i0.ɵɵtemplate(8, DialogModalWrapperComponent_form_7_div_2_label_8_Template, 2, 1, "label", 24);
147
+ i0.ɵɵtemplate(9, DialogModalWrapperComponent_form_7_div_2_label_9_Template, 2, 1, "label", 24);
148
+ i0.ɵɵelementEnd()();
149
+ } if (rf & 2) {
150
+ const field_r11 = ctx.$implicit;
151
+ const ctx_r10 = i0.ɵɵnextContext(2);
152
+ i0.ɵɵclassMap(field_r11.formGroupClass);
153
+ i0.ɵɵproperty("ngStyle", i0.ɵɵpureFunction1(12, _c0, field_r11.isLabelFullWidth ? "block" : "flex"));
154
+ i0.ɵɵadvance(1);
155
+ i0.ɵɵproperty("ngIf", field_r11.label && field_r11.type !== ctx_r10.dialogFieldType.CHECKBOX);
156
+ i0.ɵɵadvance(1);
157
+ i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction2(14, _c1, field_r11.label && !field_r11.isLabelFullWidth, !field_r11.label || field_r11.isLabelFullWidth));
158
+ i0.ɵɵadvance(1);
159
+ i0.ɵɵproperty("ngIf", field_r11.type === ctx_r10.dialogFieldType.SELECT);
160
+ i0.ɵɵadvance(1);
161
+ i0.ɵɵproperty("ngIf", field_r11.type === ctx_r10.dialogFieldType.INPUT);
162
+ i0.ɵɵadvance(1);
163
+ i0.ɵɵproperty("ngIf", field_r11.type === ctx_r10.dialogFieldType.DATE_PICKER);
164
+ i0.ɵɵadvance(1);
165
+ i0.ɵɵproperty("ngIf", field_r11.type === ctx_r10.dialogFieldType.CHECKBOX);
166
+ i0.ɵɵadvance(1);
167
+ i0.ɵɵproperty("ngIf", ctx_r10.form.invalid && (ctx_r10.form.controls[field_r11.name] == null ? null : ctx_r10.form.controls[field_r11.name].dirty) && (ctx_r10.form.controls[field_r11.name] == null ? null : ctx_r10.form.controls[field_r11.name].errors));
168
+ i0.ɵɵadvance(1);
169
+ i0.ɵɵproperty("ngIf", ctx_r10.dialogData.errorMessage && !ctx_r10.form.pristine && ctx_r10.form.invalid);
170
+ i0.ɵɵadvance(1);
171
+ i0.ɵɵproperty("ngIf", ctx_r10.form.valid && ctx_r10.showServerErrorMessage && ctx_r10.dialogData.serverErrorMessage);
172
+ } }
173
+ function DialogModalWrapperComponent_form_7_Template(rf, ctx) { if (rf & 1) {
174
+ i0.ɵɵelementStart(0, "form", 14)(1, "div");
175
+ i0.ɵɵtemplate(2, DialogModalWrapperComponent_form_7_div_2_Template, 10, 17, "div", 15);
176
+ i0.ɵɵelementEnd()();
177
+ } if (rf & 2) {
178
+ const ctx_r3 = i0.ɵɵnextContext();
179
+ i0.ɵɵproperty("formGroup", ctx_r3.form);
180
+ i0.ɵɵadvance(1);
181
+ i0.ɵɵclassMap(ctx_r3.dialogData.formWrapperClass || "dr-smart-form_wrapper");
182
+ i0.ɵɵadvance(1);
183
+ i0.ɵɵproperty("ngForOf", ctx_r3.dialogData.fields);
184
+ } }
185
+ function DialogModalWrapperComponent_div_9_dr_button_1_Template(rf, ctx) { if (rf & 1) {
186
+ const _r38 = i0.ɵɵgetCurrentView();
187
+ i0.ɵɵelementStart(0, "dr-button", 40);
188
+ i0.ɵɵlistener("click", function DialogModalWrapperComponent_div_9_dr_button_1_Template_dr_button_click_0_listener() { i0.ɵɵrestoreView(_r38); const ctx_r37 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r37.onDecline()); });
189
+ i0.ɵɵtext(1);
190
+ i0.ɵɵelementEnd();
191
+ } if (rf & 2) {
192
+ const ctx_r34 = i0.ɵɵnextContext(2);
193
+ i0.ɵɵproperty("theme", (ctx_r34.dialogData.customButton == null ? null : ctx_r34.dialogData.customButton.theme) || "secondary");
194
+ i0.ɵɵadvance(1);
195
+ i0.ɵɵtextInterpolate(ctx_r34.dialogData.customButton.label);
196
+ } }
197
+ function DialogModalWrapperComponent_div_9_dr_button_2_Template(rf, ctx) { if (rf & 1) {
198
+ const _r40 = i0.ɵɵgetCurrentView();
199
+ i0.ɵɵelementStart(0, "dr-button", 41);
200
+ i0.ɵɵlistener("click", function DialogModalWrapperComponent_div_9_dr_button_2_Template_dr_button_click_0_listener() { i0.ɵɵrestoreView(_r40); const ctx_r39 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r39.closeDialog()); });
201
+ i0.ɵɵtext(1);
202
+ i0.ɵɵelementEnd();
203
+ } if (rf & 2) {
204
+ const ctx_r35 = i0.ɵɵnextContext(2);
205
+ i0.ɵɵproperty("theme", "secondary");
206
+ i0.ɵɵadvance(1);
207
+ i0.ɵɵtextInterpolate(ctx_r35.dialogData.cancelButton.label);
208
+ } }
209
+ function DialogModalWrapperComponent_div_9_dr_button_3_Template(rf, ctx) { if (rf & 1) {
210
+ const _r42 = i0.ɵɵgetCurrentView();
211
+ i0.ɵɵelementStart(0, "dr-button", 42);
212
+ i0.ɵɵlistener("click", function DialogModalWrapperComponent_div_9_dr_button_3_Template_dr_button_click_0_listener() { i0.ɵɵrestoreView(_r42); const ctx_r41 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r41.onAccept()); });
213
+ i0.ɵɵtext(1);
214
+ i0.ɵɵelementEnd();
215
+ } if (rf & 2) {
216
+ const ctx_r36 = i0.ɵɵnextContext(2);
217
+ i0.ɵɵproperty("theme", "primary")("isLoading", ctx_r36.isLoading)("disabled", ctx_r36.form.invalid);
218
+ i0.ɵɵadvance(1);
219
+ i0.ɵɵtextInterpolate(ctx_r36.dialogData.acceptButton.label);
220
+ } }
221
+ function DialogModalWrapperComponent_div_9_Template(rf, ctx) { if (rf & 1) {
222
+ i0.ɵɵelementStart(0, "div", 36);
223
+ i0.ɵɵtemplate(1, DialogModalWrapperComponent_div_9_dr_button_1_Template, 2, 2, "dr-button", 37);
224
+ i0.ɵɵtemplate(2, DialogModalWrapperComponent_div_9_dr_button_2_Template, 2, 2, "dr-button", 38);
225
+ i0.ɵɵtemplate(3, DialogModalWrapperComponent_div_9_dr_button_3_Template, 2, 4, "dr-button", 39);
226
+ i0.ɵɵelementEnd();
227
+ } if (rf & 2) {
228
+ const ctx_r4 = i0.ɵɵnextContext();
229
+ i0.ɵɵadvance(1);
230
+ i0.ɵɵproperty("ngIf", ctx_r4.dialogData.customButton);
231
+ i0.ɵɵadvance(1);
232
+ i0.ɵɵproperty("ngIf", ctx_r4.dialogData.cancelButton);
233
+ i0.ɵɵadvance(1);
234
+ i0.ɵɵproperty("ngIf", ctx_r4.dialogData.acceptButton);
235
+ } }
236
+ export class DialogModalWrapperComponent {
237
+ constructor(dialogRef, dialogData) {
238
+ this.dialogRef = dialogRef;
239
+ this.dialogData = dialogData;
240
+ this.dialogFieldType = DIALOG_FIELD_TYPE;
241
+ this.destroy$ = new Subject();
242
+ this.saving$ = new BehaviorSubject(false);
243
+ this.isLoading = false;
244
+ this.showServerErrorMessage = false;
245
+ this.fieldsItemsLoading = {};
246
+ this.class = this?.dialogData?.theme?.themeSize;
247
+ }
248
+ ngOnInit() {
249
+ if (!this.dialogData.fields)
250
+ this.dialogData.fields = [];
251
+ this.form = new FormGroup(this.dialogData.fields.reduce((accumulator, currentValue) => {
252
+ if (currentValue.items$) {
253
+ this.fieldsItemsLoading[currentValue.name] = new BehaviorSubject(true);
254
+ currentValue.items$ = currentValue.items$.pipe(catchError((err) => {
255
+ this.fieldsItemsLoading[currentValue.name].next(false);
256
+ return throwError(() => err);
257
+ }), tap(() => this.fieldsItemsLoading[currentValue.name].next(false)), finalize(() => this.fieldsItemsLoading[currentValue.name].next(false)));
258
+ }
259
+ const currentFormControl = {};
260
+ currentFormControl[currentValue.name] = new FormControl(currentValue.default || null, currentValue.validators || []);
261
+ return Object.assign(accumulator, currentFormControl);
262
+ }, {}));
263
+ }
264
+ onAccept() {
265
+ if (!this.dialogData.confirmFn)
266
+ return this.dialogRef.close(this.form.value || true);
267
+ this.isLoading = true;
268
+ this.saving$.next(true);
269
+ this.dialogData
270
+ .confirmFn(this.form.value)
271
+ .pipe(finalize(() => {
272
+ this.isLoading = false;
273
+ this.saving$.next(false);
274
+ }), takeUntil(this.destroy$), catchError((err) => {
275
+ this.showServerErrorMessage = true;
276
+ this.isLoading = false;
277
+ this.saving$.next(false);
278
+ return throwError(() => err);
279
+ }))
280
+ .subscribe(() => {
281
+ this.saving$.next(false);
282
+ this.dialogRef.close(this.form.value || true);
283
+ });
284
+ }
285
+ onDecline() {
286
+ this.dialogRef.close(undefined);
287
+ }
288
+ footerAction() {
289
+ this.dialogData.footerTemplateData.action(this.form.value);
290
+ }
291
+ closeDialog() {
292
+ this.dialogRef.close(false);
293
+ }
294
+ ngOnDestroy() {
295
+ this.destroy$.next();
296
+ this.destroy$.complete();
297
+ }
298
+ /** @nocollapse */ static { this.ɵfac = function DialogModalWrapperComponent_Factory(t) { return new (t || DialogModalWrapperComponent)(i0.ɵɵdirectiveInject(i1.MatLegacyDialogRef), i0.ɵɵdirectiveInject(MAT_DIALOG_DATA)); }; }
299
+ /** @nocollapse */ static { this.ɵcmp = /** @pureOrBreakMyCode */ i0.ɵɵdefineComponent({ type: DialogModalWrapperComponent, selectors: [["dr-dialog-modal-wrapper"]], hostVars: 2, hostBindings: function DialogModalWrapperComponent_HostBindings(rf, ctx) { if (rf & 2) {
300
+ i0.ɵɵclassMap(ctx.class);
301
+ } }, decls: 10, vars: 6, consts: [["header", "", 1, "header-dialog"], ["data-test", "modalTitle", 1, "title-dialog"], ["class", "title-dialog__icon", "data-test", "dialogTitleIcon", 3, "class", "click", 4, "ngIf"], [1, "title-dialog__text"], ["class", "dr-icon-exit icon-close", "data-test", "xBtn", 3, "click", 4, "ngIf"], ["class", "content-dialog", 3, "innerHTML", 4, "ngIf"], ["class", "dr-smart-from", 3, "formGroup", 4, "ngIf"], ["footer", "", 1, "footer-dialog"], ["class", "buttons-wrapper", 4, "ngIf"], ["data-test", "dialogTitleIcon", 1, "title-dialog__icon", 3, "click"], ["data-test", "xBtn", 1, "dr-icon-exit", "icon-close", 3, "click"], [1, "content-dialog", 3, "innerHTML"], [1, "content-anchor"], ["content", ""], [1, "dr-smart-from", 3, "formGroup"], ["class", "dr-smart-form_group", 3, "class", "ngStyle", 4, "ngFor", "ngForOf"], [1, "dr-smart-form_group", 3, "ngStyle"], ["class", "label p-0 d-flex align-items-center", 3, "ngClass", 4, "ngIf"], [1, "input-group", "p-0", 3, "ngClass"], [3, "searchable", "clearable", "formControlName", "bindLabel", "bindValue", "selectedItem", "items", "loading", "required", "placeholder", 4, "ngIf"], ["data-test", "modalInput", "class", "form-control", 3, "formControlName", "placeholder", 4, "ngIf"], [3, "formControlName", "format", "placeholder", 4, "ngIf"], [3, "formControlName", 4, "ngIf"], ["class", "form-field-error-alert", 4, "ngIf"], ["class", "form-error-alert", 4, "ngIf"], [1, "label", "p-0", "d-flex", "align-items-center", 3, "ngClass"], [3, "searchable", "clearable", "formControlName", "bindLabel", "bindValue", "selectedItem", "items", "loading", "required", "placeholder"], [4, "ngIf"], ["optionFooterTemplate", ""], [1, "dr-select-footer__btn", 3, "click"], [3, "class", 4, "ngIf"], ["data-test", "modalInput", 1, "form-control", 3, "formControlName", "placeholder"], [3, "formControlName", "format", "placeholder"], [3, "formControlName"], [1, "form-field-error-alert"], [1, "form-error-alert"], [1, "buttons-wrapper"], ["class", "buttons-wrapper--custom-btn", "data-test", "declineBtn", 3, "theme", "click", 4, "ngIf"], ["data-test", "modalCloseBtn", 3, "theme", "click", 4, "ngIf"], ["data-test", "modalAddBtn", 3, "theme", "isLoading", "disabled", "click", 4, "ngIf"], ["data-test", "declineBtn", 1, "buttons-wrapper--custom-btn", 3, "theme", "click"], ["data-test", "modalCloseBtn", 3, "theme", "click"], ["data-test", "modalAddBtn", 3, "theme", "isLoading", "disabled", "click"]], template: function DialogModalWrapperComponent_Template(rf, ctx) { if (rf & 1) {
302
+ i0.ɵɵelementStart(0, "div", 0)(1, "h1", 1);
303
+ i0.ɵɵtemplate(2, DialogModalWrapperComponent_i_2_Template, 1, 2, "i", 2);
304
+ i0.ɵɵelementStart(3, "span", 3);
305
+ i0.ɵɵtext(4);
306
+ i0.ɵɵelementEnd()();
307
+ i0.ɵɵtemplate(5, DialogModalWrapperComponent_i_5_Template, 1, 0, "i", 4);
308
+ i0.ɵɵelementEnd();
309
+ i0.ɵɵtemplate(6, DialogModalWrapperComponent_div_6_Template, 3, 1, "div", 5);
310
+ i0.ɵɵtemplate(7, DialogModalWrapperComponent_form_7_Template, 3, 4, "form", 6);
311
+ i0.ɵɵelementStart(8, "div", 7);
312
+ i0.ɵɵtemplate(9, DialogModalWrapperComponent_div_9_Template, 4, 3, "div", 8);
313
+ i0.ɵɵelementEnd();
314
+ } if (rf & 2) {
315
+ i0.ɵɵadvance(2);
316
+ i0.ɵɵproperty("ngIf", ctx.dialogData.headerIconClass);
317
+ i0.ɵɵadvance(2);
318
+ i0.ɵɵtextInterpolate(ctx.dialogData.title);
319
+ i0.ɵɵadvance(1);
320
+ i0.ɵɵproperty("ngIf", !ctx.dialogData.hideCloseBtn);
321
+ i0.ɵɵadvance(1);
322
+ i0.ɵɵproperty("ngIf", ctx.dialogData.content);
323
+ i0.ɵɵadvance(1);
324
+ i0.ɵɵproperty("ngIf", ctx.dialogData.fields);
325
+ i0.ɵɵadvance(2);
326
+ i0.ɵɵproperty("ngIf", ctx.dialogData.cancelButton || ctx.dialogData.acceptButton);
327
+ } }, dependencies: [i2.NgClass, i2.NgForOf, i2.NgIf, i2.NgStyle, i3.DrButtonComponent, i4.CheckboxComponent, i5.DrInputComponent, i6.DrSelectComponent, i7.DrDatePickerComponent, i8.ɵNgNoValidate, i8.NgControlStatus, i8.NgControlStatusGroup, i8.RequiredValidator, i8.FormGroupDirective, i8.FormControlName, i2.AsyncPipe], styles: ["[_nghost-%COMP%]{display:flex;justify-content:space-between;flex-direction:column}.small-modal[_nghost-%COMP%], .small-modal-max-height[_nghost-%COMP%]{min-height:188px;max-height:467px;min-width:400px;max-width:400px}.medium-modal[_nghost-%COMP%], .medium-modal-max-height[_nghost-%COMP%]{min-height:188px;max-height:467px;min-width:632px;max-width:632px}.medium-small-modal[_nghost-%COMP%]{min-height:188px;max-height:345px;min-width:460px;max-width:460px}.medium-modal-max-height[_nghost-%COMP%], .small-modal-max-height[_nghost-%COMP%]{max-height:80vh}.header-dialog[_ngcontent-%COMP%]{position:relative;display:flex;flex-direction:row;justify-content:space-between;align-items:center;padding:16px 56px 16px 32px;border-bottom:1px solid #dfe0e3}.header-dialog[_ngcontent-%COMP%] > .icon-close[_ngcontent-%COMP%]{position:absolute;right:32px;top:16px;cursor:pointer}.title-dialog[_ngcontent-%COMP%]{display:flex;color:#333;position:static;font-weight:600;font-size:16px;line-height:24px;margin-top:0;margin-bottom:0}.title-dialog__icon[_ngcontent-%COMP%]{font-size:32px;margin-right:8px;line-height:24px;color:#6d6e6f}.content-dialog[_ngcontent-%COMP%]{font-weight:400;font-size:14px;padding:16px 32px 5px;white-space:pre-line}.icon-close[_ngcontent-%COMP%]{color:#6d6e6f;cursor:pointer}.dr-smart-from[_ngcontent-%COMP%]{font-size:14px;font-weight:400;line-height:22px;padding:8px 32px 24px}.dr-smart-from[_ngcontent-%COMP%] dr-checkbox[_ngcontent-%COMP%]{font-weight:400}.content-dialog[_ngcontent-%COMP%]{padding:16px 32px 0;font-weight:400;font-size:14px;line-height:22px}.content-anchor[_ngcontent-%COMP%]{display:none}.footer-dialog[_ngcontent-%COMP%]{border-top:1px solid #dfe0e3}.buttons-wrapper[_ngcontent-%COMP%]{display:flex;justify-content:flex-end;padding:10px 32px 11px}.buttons-wrapper[_ngcontent-%COMP%] dr-button[_ngcontent-%COMP%]:nth-of-type(n+2){margin-left:12px}.buttons-wrapper--custom-btn[_ngcontent-%COMP%]{margin-right:auto}.form-field-error-alert[_ngcontent-%COMP%]{font-size:12px;color:#bf1d30;line-height:20px}.form-error-alert[_ngcontent-%COMP%]{position:absolute;margin-top:5px;font-size:12px;color:#bf1d30}.dr-select-footer__btn[_ngcontent-%COMP%]{background-color:transparent;display:flex;align-items:center;justify-content:flex-start;cursor:pointer;min-width:15rem;font-style:normal;font-weight:400;font-size:14px;line-height:24px;clear:both;width:100%;white-space:nowrap;padding:0 12px;height:36px;flex-shrink:0}"] }); }
328
+ }
329
+ (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(DialogModalWrapperComponent, [{
330
+ type: Component,
331
+ args: [{ selector: 'dr-dialog-modal-wrapper', template: "<div header class=\"header-dialog\">\n <h1 class=\"title-dialog\" data-test=\"modalTitle\">\n <i\n *ngIf=\"dialogData.headerIconClass\"\n (click)=\"closeDialog()\"\n class=\"title-dialog__icon\"\n [class]=\"dialogData.headerIconClass\"\n data-test=\"dialogTitleIcon\"></i>\n <span class=\"title-dialog__text\">{{ dialogData.title }}</span>\n </h1>\n <i *ngIf=\"!dialogData.hideCloseBtn\" (click)=\"closeDialog()\" class=\"dr-icon-exit icon-close\" data-test=\"xBtn\"></i>\n</div>\n<div *ngIf=\"dialogData.content\" class=\"content-dialog\" [innerHTML]=\"dialogData.content\">\n <span #content class=\"content-anchor\"></span>\n</div>\n<form *ngIf=\"dialogData.fields\" [formGroup]=\"form\" class=\"dr-smart-from\">\n <div [class]=\"dialogData.formWrapperClass || 'dr-smart-form_wrapper'\">\n <div\n *ngFor=\"let field of dialogData.fields\"\n class=\"dr-smart-form_group\"\n [class]=\"field.formGroupClass\"\n [ngStyle]=\"{ display: field.isLabelFullWidth ? 'block' : 'flex' }\">\n <label\n *ngIf=\"field.label && field.type !== dialogFieldType.CHECKBOX\"\n [ngClass]=\"field.isLabelFullWidth ? 'col-md-12 mb-2' : 'col-md-2'\"\n class=\"label p-0 d-flex align-items-center\"\n >{{ field.label }}</label\n >\n <div\n class=\"input-group p-0\"\n [ngClass]=\"{\n 'col-md-10': field.label && !field.isLabelFullWidth,\n 'col-md-12': !field.label || field.isLabelFullWidth,\n }\">\n <dr-select\n *ngIf=\"field.type === dialogFieldType.SELECT\"\n [searchable]=\"dialogData.searchable\"\n [clearable]=\"dialogData.clearable\"\n [formControlName]=\"field.name\"\n [bindLabel]=\"field.bindLabel || null\"\n [bindValue]=\"field.bindValue || null\"\n [selectedItem]=\"field.default\"\n [items]=\"field.items || (field.items$ | async)\"\n [loading]=\"fieldsItemsLoading[field.name] | async\"\n [required]=\"true\"\n [placeholder]=\"field.placeholder\">\n <ng-template *ngIf=\"dialogData?.footerTemplateData\" #optionFooterTemplate let-item=\"item\" let-close=\"close\">\n <button (click)=\"footerAction(); close()\" class=\"dr-select-footer__btn\">\n <i *ngIf=\"dialogData.footerTemplateData.icon\" class=\"{{ dialogData.footerTemplateData.icon }}\"></i>\n {{ dialogData.footerTemplateData.label }}\n </button>\n </ng-template>\n </dr-select>\n <dr-input\n *ngIf=\"field.type === dialogFieldType.INPUT\"\n data-test=\"modalInput\"\n class=\"form-control\"\n [formControlName]=\"field.name\"\n [placeholder]=\"field.placeholder\"></dr-input>\n <dr-date-picker\n *ngIf=\"field.type === dialogFieldType.DATE_PICKER\"\n [formControlName]=\"field.name\"\n [format]=\"field.datePickerFormat\"\n [placeholder]=\"field.placeholder\"></dr-date-picker>\n <dr-checkbox *ngIf=\"field.type === dialogFieldType.CHECKBOX\" [formControlName]=\"field.name\">\n {{ field.label }}\n </dr-checkbox>\n <label\n class=\"form-field-error-alert\"\n *ngIf=\"form.invalid && form.controls[field.name]?.dirty && form.controls[field.name]?.errors\">\n {{ form.controls[field.name].errors.errorString }}\n </label>\n <label class=\"form-error-alert\" *ngIf=\"dialogData.errorMessage && !form.pristine && form.invalid\">\n {{ dialogData.errorMessage }}\n </label>\n <label class=\"form-error-alert\" *ngIf=\"form.valid && showServerErrorMessage && dialogData.serverErrorMessage\">\n {{ dialogData.serverErrorMessage }}\n </label>\n </div>\n </div>\n </div>\n</form>\n\n<div footer class=\"footer-dialog\">\n <div class=\"buttons-wrapper\" *ngIf=\"dialogData.cancelButton || dialogData.acceptButton\">\n <dr-button\n (click)=\"onDecline()\"\n *ngIf=\"dialogData.customButton\"\n [theme]=\"dialogData.customButton?.theme || 'secondary'\"\n class=\"buttons-wrapper--custom-btn\"\n data-test=\"declineBtn\"\n >{{ dialogData.customButton.label }}</dr-button\n >\n <dr-button *ngIf=\"dialogData.cancelButton\" data-test=\"modalCloseBtn\" (click)=\"closeDialog()\" [theme]=\"'secondary'\">{{\n dialogData.cancelButton.label\n }}</dr-button>\n <dr-button\n *ngIf=\"dialogData.acceptButton\"\n data-test=\"modalAddBtn\"\n (click)=\"onAccept()\"\n [theme]=\"'primary'\"\n [isLoading]=\"isLoading\"\n [disabled]=\"form.invalid\"\n >{{ dialogData.acceptButton.label }}</dr-button\n >\n </div>\n</div>\n", styles: [":host{display:flex;justify-content:space-between;flex-direction:column}:host.small-modal,:host.small-modal-max-height{min-height:188px;max-height:467px;min-width:400px;max-width:400px}:host.medium-modal,:host.medium-modal-max-height{min-height:188px;max-height:467px;min-width:632px;max-width:632px}:host.medium-small-modal{min-height:188px;max-height:345px;min-width:460px;max-width:460px}:host.medium-modal-max-height,:host.small-modal-max-height{max-height:80vh}.header-dialog{position:relative;display:flex;flex-direction:row;justify-content:space-between;align-items:center;padding:16px 56px 16px 32px;border-bottom:1px solid #dfe0e3}.header-dialog>.icon-close{position:absolute;right:32px;top:16px;cursor:pointer}.title-dialog{display:flex;color:#333;position:static;font-weight:600;font-size:16px;line-height:24px;margin-top:0;margin-bottom:0}.title-dialog__icon{font-size:32px;margin-right:8px;line-height:24px;color:#6d6e6f}.content-dialog{font-weight:400;font-size:14px;padding:16px 32px 5px;white-space:pre-line}.icon-close{color:#6d6e6f;cursor:pointer}.dr-smart-from{font-size:14px;font-weight:400;line-height:22px;padding:8px 32px 24px}.dr-smart-from dr-checkbox{font-weight:400}.content-dialog{padding:16px 32px 0;font-weight:400;font-size:14px;line-height:22px}.content-anchor{display:none}.footer-dialog{border-top:1px solid #dfe0e3}.buttons-wrapper{display:flex;justify-content:flex-end;padding:10px 32px 11px}.buttons-wrapper dr-button:nth-of-type(n+2){margin-left:12px}.buttons-wrapper--custom-btn{margin-right:auto}.form-field-error-alert{font-size:12px;color:#bf1d30;line-height:20px}.form-error-alert{position:absolute;margin-top:5px;font-size:12px;color:#bf1d30}.dr-select-footer__btn{background-color:transparent;display:flex;align-items:center;justify-content:flex-start;cursor:pointer;min-width:15rem;font-style:normal;font-weight:400;font-size:14px;line-height:24px;clear:both;width:100%;white-space:nowrap;padding:0 12px;height:36px;flex-shrink:0}\n"] }]
332
+ }], function () { return [{ type: i1.MatLegacyDialogRef }, { type: undefined, decorators: [{
333
+ type: Inject,
334
+ args: [MAT_DIALOG_DATA]
335
+ }] }]; }, { class: [{
336
+ type: HostBinding,
337
+ args: ['class']
338
+ }] }); })();
339
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9nLW1vZGFsLXdyYXBwZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGF0YXJhaWxzc2hhcmVkL3NyYy9saWIvZHItZGlhbG9nL2NvbXBvbmVudHMvZGlhbG9nLW1vZGFsLXdyYXBwZXIvZGlhbG9nLW1vZGFsLXdyYXBwZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGF0YXJhaWxzc2hhcmVkL3NyYy9saWIvZHItZGlhbG9nL2NvbXBvbmVudHMvZGlhbG9nLW1vZGFsLXdyYXBwZXIvZGlhbG9nLW1vZGFsLXdyYXBwZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsTUFBTSxFQUFxQixNQUFNLGVBQWUsQ0FBQztBQUNsRixPQUFPLEVBQUUsV0FBVyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxzQkFBc0IsSUFBSSxlQUFlLEVBQUUsa0JBQWtCLElBQUksWUFBWSxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDaEksT0FBTyxFQUFZLGlCQUFpQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDM0UsT0FBTyxFQUFFLGVBQWUsRUFBRSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzVELE9BQU8sRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7Ozs7Ozs7O0lDSDlELDRCQUtnQztJQUg1QixpS0FBUyxlQUFBLG9CQUFhLENBQUEsSUFBQztJQUdLLGlCQUFJOzs7SUFEaEMsZ0RBQW9DOzs7O0lBSTVDLDZCQUE2RztJQUF6RSxpS0FBUyxlQUFBLG9CQUFhLENBQUEsSUFBQztJQUFrRCxpQkFBSTs7O0lBRXJILCtCQUF3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QUE7WUFFbEUsd0VBQWlIO1lBQ3JILGlCQUFNO1lBQ04sNEVBRU07WUFDTiw4RUFrRU87WUFFUCw4QkFBa0M7WUFDOUIsNEVBcUJNO1lBQ1YsaUJBQU07O1lBdkdPLGVBQWdDO1lBQWhDLHFEQUFnQztZQUtKLGVBQXNCO1lBQXRCLDBDQUFzQjtZQUV2RCxlQUE4QjtZQUE5QixtREFBOEI7WUFFaEMsZUFBd0I7WUFBeEIsNkNBQXdCO1lBR3ZCLGVBQXVCO1lBQXZCLDRDQUF1QjtZQXFFSSxlQUF3RDtZQUF4RCxpRkFBd0Q7Ozt1RkR4RTdFLDJCQUEyQjtjQUx2QyxTQUFTOzJCQUNJLHlCQUF5Qjs7c0JBa0I5QixNQUFNO3VCQUFDLGVBQWU7d0JBSkwsS0FBSztrQkFBMUIsV0FBVzttQkFBQyxPQUFPIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBIb3N0QmluZGluZywgSW5qZWN0LCBPbkRlc3Ryb3ksIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybUNvbnRyb2wsIEZvcm1Hcm91cCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IE1BVF9MRUdBQ1lfRElBTE9HX0RBVEEgYXMgTUFUX0RJQUxPR19EQVRBLCBNYXRMZWdhY3lEaWFsb2dSZWYgYXMgTWF0RGlhbG9nUmVmIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvbGVnYWN5LWRpYWxvZyc7XG5pbXBvcnQgeyBEYXRhUHJvcCwgRElBTE9HX0ZJRUxEX1RZUEUgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL2RpYWxvZy1kYXRhJztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgU3ViamVjdCwgdGhyb3dFcnJvciB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgY2F0Y2hFcnJvciwgZmluYWxpemUsIHRha2VVbnRpbCwgdGFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2RyLWRpYWxvZy1tb2RhbC13cmFwcGVyJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vZGlhbG9nLW1vZGFsLXdyYXBwZXIuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2RpYWxvZy1tb2RhbC13cmFwcGVyLmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIERpYWxvZ01vZGFsV3JhcHBlckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgICByZWFkb25seSBkaWFsb2dGaWVsZFR5cGUgPSBESUFMT0dfRklFTERfVFlQRTtcbiAgICByZWFkb25seSBkZXN0cm95JCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgICBmb3JtOiBGb3JtR3JvdXA7XG4gICAgc2F2aW5nJCA9IG5ldyBCZWhhdmlvclN1YmplY3QoZmFsc2UpO1xuICAgIGlzTG9hZGluZyA9IGZhbHNlO1xuICAgIHNob3dTZXJ2ZXJFcnJvck1lc3NhZ2UgPSBmYWxzZTtcbiAgICBmaWVsZHNJdGVtc0xvYWRpbmc6IFJlY29yZDxzdHJpbmcsIEJlaGF2aW9yU3ViamVjdDxib29sZWFuPj4gPSB7fTtcblxuICAgIEBIb3N0QmluZGluZygnY2xhc3MnKSBjbGFzcyA9IHRoaXM/LmRpYWxvZ0RhdGE/LnRoZW1lPy50aGVtZVNpemU7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHVibGljIGRpYWxvZ1JlZjogTWF0RGlhbG9nUmVmPERpYWxvZ01vZGFsV3JhcHBlckNvbXBvbmVudD4sXG4gICAgICAgIEBJbmplY3QoTUFUX0RJQUxPR19EQVRBKSBwdWJsaWMgZGlhbG9nRGF0YTogRGF0YVByb3AsXG4gICAgKSB7fVxuXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIGlmICghdGhpcy5kaWFsb2dEYXRhLmZpZWxkcykgdGhpcy5kaWFsb2dEYXRhLmZpZWxkcyA9IFtdO1xuXG4gICAgICAgIHRoaXMuZm9ybSA9IG5ldyBGb3JtR3JvdXAoXG4gICAgICAgICAgICB0aGlzLmRpYWxvZ0RhdGEuZmllbGRzLnJlZHVjZSgoYWNjdW11bGF0b3IsIGN1cnJlbnRWYWx1ZSkgPT4ge1xuICAgICAgICAgICAgICAgIGlmIChjdXJyZW50VmFsdWUuaXRlbXMkKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZmllbGRzSXRlbXNMb2FkaW5nW2N1cnJlbnRWYWx1ZS5uYW1lXSA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4odHJ1ZSk7XG4gICAgICAgICAgICAgICAgICAgIGN1cnJlbnRWYWx1ZS5pdGVtcyQgPSAoY3VycmVudFZhbHVlLml0ZW1zJCBhcyBhbnkpLnBpcGUoXG4gICAgICAgICAgICAgICAgICAgICAgICBjYXRjaEVycm9yKChlcnIpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmZpZWxkc0l0ZW1zTG9hZGluZ1tjdXJyZW50VmFsdWUubmFtZV0ubmV4dChmYWxzZSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRocm93RXJyb3IoKCkgPT4gZXJyKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgICAgICAgICAgdGFwKCgpID0+IHRoaXMuZmllbGRzSXRlbXNMb2FkaW5nW2N1cnJlbnRWYWx1ZS5uYW1lXS5uZXh0KGZhbHNlKSksXG4gICAgICAgICAgICAgICAgICAgICAgICBmaW5hbGl6ZSgoKSA9PiB0aGlzLmZpZWxkc0l0ZW1zTG9hZGluZ1tjdXJyZW50VmFsdWUubmFtZV0ubmV4dChmYWxzZSkpLFxuICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGNvbnN0IGN1cnJlbnRGb3JtQ29udHJvbCA9IHt9O1xuICAgICAgICAgICAgICAgIGN1cnJlbnRGb3JtQ29udHJvbFtjdXJyZW50VmFsdWUubmFtZV0gPSBuZXcgRm9ybUNvbnRyb2woXG4gICAgICAgICAgICAgICAgICAgIGN1cnJlbnRWYWx1ZS5kZWZhdWx0IHx8IG51bGwsXG4gICAgICAgICAgICAgICAgICAgIGN1cnJlbnRWYWx1ZS52YWxpZGF0b3JzIHx8IFtdLFxuICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgcmV0dXJuIE9iamVjdC5hc3NpZ24oYWNjdW11bGF0b3IsIGN1cnJlbnRGb3JtQ29udHJvbCk7XG4gICAgICAgICAgICB9LCB7fSksXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgb25BY2NlcHQoKSB7XG4gICAgICAgIGlmICghdGhpcy5kaWFsb2dEYXRhLmNvbmZpcm1GbikgcmV0dXJuIHRoaXMuZGlhbG9nUmVmLmNsb3NlKHRoaXMuZm9ybS52YWx1ZSB8fCB0cnVlKTtcblxuICAgICAgICB0aGlzLmlzTG9hZGluZyA9IHRydWU7XG4gICAgICAgIHRoaXMuc2F2aW5nJC5uZXh0KHRydWUpO1xuICAgICAgICB0aGlzLmRpYWxvZ0RhdGFcbiAgICAgICAgICAgIC5jb25maXJtRm4odGhpcy5mb3JtLnZhbHVlKVxuICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgZmluYWxpemUoKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmlzTG9hZGluZyA9IGZhbHNlO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnNhdmluZyQubmV4dChmYWxzZSk7XG4gICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgdGFrZVVudGlsKHRoaXMuZGVzdHJveSQpLFxuICAgICAgICAgICAgICAgIGNhdGNoRXJyb3IoKGVycikgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnNob3dTZXJ2ZXJFcnJvck1lc3NhZ2UgPSB0cnVlO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmlzTG9hZGluZyA9IGZhbHNlO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnNhdmluZyQubmV4dChmYWxzZSk7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiB0aHJvd0Vycm9yKCgpID0+IGVycik7XG4gICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICApXG4gICAgICAgICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLnNhdmluZyQubmV4dChmYWxzZSk7XG4gICAgICAgICAgICAgICAgdGhpcy5kaWFsb2dSZWYuY2xvc2UodGhpcy5mb3JtLnZhbHVlIHx8IHRydWUpO1xuICAgICAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgb25EZWNsaW5lKCkge1xuICAgICAgICB0aGlzLmRpYWxvZ1JlZi5jbG9zZSh1bmRlZmluZWQpO1xuICAgIH1cblxuICAgIGZvb3RlckFjdGlvbigpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5kaWFsb2dEYXRhLmZvb3RlclRlbXBsYXRlRGF0YS5hY3Rpb24odGhpcy5mb3JtLnZhbHVlKTtcbiAgICB9XG5cbiAgICBjbG9zZURpYWxvZygpIHtcbiAgICAgICAgdGhpcy5kaWFsb2dSZWYuY2xvc2UoZmFsc2UpO1xuICAgIH1cblxuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmRlc3Ryb3kkLm5leHQoKTtcbiAgICAgICAgdGhpcy5kZXN0cm95JC5jb21wbGV0ZSgpO1xuICAgIH1cbn1cbiIsIjxkaXYgaGVhZGVyIGNsYXNzPVwiaGVhZGVyLWRpYWxvZ1wiPlxuICAgIDxoMSBjbGFzcz1cInRpdGxlLWRpYWxvZ1wiIGRhdGEtdGVzdD1cIm1vZGFsVGl0bGVcIj5cbiAgICAgICAgPGlcbiAgICAgICAgICAgICpuZ0lmPVwiZGlhbG9nRGF0YS5oZWFkZXJJY29uQ2xhc3NcIlxuICAgICAgICAgICAgKGNsaWNrKT1cImNsb3NlRGlhbG9nKClcIlxuICAgICAgICAgICAgY2xhc3M9XCJ0aXRsZS1kaWFsb2dfX2ljb25cIlxuICAgICAgICAgICAgW2NsYXNzXT1cImRpYWxvZ0RhdGEuaGVhZGVySWNvbkNsYXNzXCJcbiAgICAgICAgICAgIGRhdGEtdGVzdD1cImRpYWxvZ1RpdGxlSWNvblwiPjwvaT5cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJ0aXRsZS1kaWFsb2dfX3RleHRcIj57eyBkaWFsb2dEYXRhLnRpdGxlIH19PC9zcGFuPlxuICAgIDwvaDE+XG4gICAgPGkgKm5nSWY9XCIhZGlhbG9nRGF0YS5oaWRlQ2xvc2VCdG5cIiAoY2xpY2spPVwiY2xvc2VEaWFsb2coKVwiIGNsYXNzPVwiZHItaWNvbi1leGl0IGljb24tY2xvc2VcIiBkYXRhLXRlc3Q9XCJ4QnRuXCI+PC9pPlxuPC9kaXY+XG48ZGl2ICpuZ0lmPVwiZGlhbG9nRGF0YS5jb250ZW50XCIgY2xhc3M9XCJjb250ZW50LWRpYWxvZ1wiIFtpbm5lckhUTUxdPVwiZGlhbG9nRGF0YS5jb250ZW50XCI+XG4gICAgPHNwYW4gI2NvbnRlbnQgY2xhc3M9XCJjb250ZW50LWFuY2hvclwiPjwvc3Bhbj5cbjwvZGl2PlxuPGZvcm0gKm5nSWY9XCJkaWFsb2dEYXRhLmZpZWxkc1wiIFtmb3JtR3JvdXBdPVwiZm9ybVwiIGNsYXNzPVwiZHItc21hcnQtZnJvbVwiPlxuICAgIDxkaXYgW2NsYXNzXT1cImRpYWxvZ0RhdGEuZm9ybVdyYXBwZXJDbGFzcyB8fCAnZHItc21hcnQtZm9ybV93cmFwcGVyJ1wiPlxuICAgICAgICA8ZGl2XG4gICAgICAgICAgICAqbmdGb3I9XCJsZXQgZmllbGQgb2YgZGlhbG9nRGF0YS5maWVsZHNcIlxuICAgICAgICAgICAgY2xhc3M9XCJkci1zbWFydC1mb3JtX2dyb3VwXCJcbiAgICAgICAgICAgIFtjbGFzc109XCJmaWVsZC5mb3JtR3JvdXBDbGFzc1wiXG4gICAgICAgICAgICBbbmdTdHlsZV09XCJ7IGRpc3BsYXk6IGZpZWxkLmlzTGFiZWxGdWxsV2lkdGggPyAnYmxvY2snIDogJ2ZsZXgnIH1cIj5cbiAgICAgICAgICAgIDxsYWJlbFxuICAgICAgICAgICAgICAgICpuZ0lmPVwiZmllbGQubGFiZWwgJiYgZmllbGQudHlwZSAhPT0gZGlhbG9nRmllbGRUeXBlLkNIRUNLQk9YXCJcbiAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJmaWVsZC5pc0xhYmVsRnVsbFdpZHRoID8gJ2NvbC1tZC0xMiBtYi0yJyA6ICdjb2wtbWQtMidcIlxuICAgICAgICAgICAgICAgIGNsYXNzPVwibGFiZWwgcC0wIGQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXJcIlxuICAgICAgICAgICAgICAgID57eyBmaWVsZC5sYWJlbCB9fTwvbGFiZWxcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICBjbGFzcz1cImlucHV0LWdyb3VwIHAtMFwiXG4gICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwie1xuICAgICAgICAgICAgICAgICAgICAnY29sLW1kLTEwJzogZmllbGQubGFiZWwgJiYgIWZpZWxkLmlzTGFiZWxGdWxsV2lkdGgsXG4gICAgICAgICAgICAgICAgICAgICdjb2wtbWQtMTInOiAhZmllbGQubGFiZWwgfHwgZmllbGQuaXNMYWJlbEZ1bGxXaWR0aCxcbiAgICAgICAgICAgICAgICB9XCI+XG4gICAgICAgICAgICAgICAgPGRyLXNlbGVjdFxuICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImZpZWxkLnR5cGUgPT09IGRpYWxvZ0ZpZWxkVHlwZS5TRUxFQ1RcIlxuICAgICAgICAgICAgICAgICAgICBbc2VhcmNoYWJsZV09XCJkaWFsb2dEYXRhLnNlYXJjaGFibGVcIlxuICAgICAgICAgICAgICAgICAgICBbY2xlYXJhYmxlXT1cImRpYWxvZ0RhdGEuY2xlYXJhYmxlXCJcbiAgICAgICAgICAgICAgICAgICAgW2Zvcm1Db250cm9sTmFtZV09XCJmaWVsZC5uYW1lXCJcbiAgICAgICAgICAgICAgICAgICAgW2JpbmRMYWJlbF09XCJmaWVsZC5iaW5kTGFiZWwgfHwgbnVsbFwiXG4gICAgICAgICAgICAgICAgICAgIFtiaW5kVmFsdWVdPVwiZmllbGQuYmluZFZhbHVlIHx8IG51bGxcIlxuICAgICAgICAgICAgICAgICAgICBbc2VsZWN0ZWRJdGVtXT1cImZpZWxkLmRlZmF1bHRcIlxuICAgICAgICAgICAgICAgICAgICBbaXRlbXNdPVwiZmllbGQuaXRlbXMgfHwgKGZpZWxkLml0ZW1zJCB8IGFzeW5jKVwiXG4gICAgICAgICAgICAgICAgICAgIFtsb2FkaW5nXT1cImZpZWxkc0l0ZW1zTG9hZGluZ1tmaWVsZC5uYW1lXSB8IGFzeW5jXCJcbiAgICAgICAgICAgICAgICAgICAgW3JlcXVpcmVkXT1cInRydWVcIlxuICAgICAgICAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiZmllbGQucGxhY2Vob2xkZXJcIj5cbiAgICAgICAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlICpuZ0lmPVwiZGlhbG9nRGF0YT8uZm9vdGVyVGVtcGxhdGVEYXRhXCIgI29wdGlvbkZvb3RlclRlbXBsYXRlIGxldC1pdGVtPVwiaXRlbVwiIGxldC1jbG9zZT1cImNsb3NlXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIChjbGljayk9XCJmb290ZXJBY3Rpb24oKTsgY2xvc2UoKVwiIGNsYXNzPVwiZHItc2VsZWN0LWZvb3Rlcl9fYnRuXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGkgKm5nSWY9XCJkaWFsb2dEYXRhLmZvb3RlclRlbXBsYXRlRGF0YS5pY29uXCIgY2xhc3M9XCJ7eyBkaWFsb2dEYXRhLmZvb3RlclRlbXBsYXRlRGF0YS5pY29uIH19XCI+PC9pPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7IGRpYWxvZ0RhdGEuZm9vdGVyVGVtcGxhdGVEYXRhLmxhYmVsIH19XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgICAgICAgICA8L2RyLXNlbGVjdD5cbiAgICAgICAgICAgICAgICA8ZHItaW5wdXRcbiAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJmaWVsZC50eXBlID09PSBkaWFsb2dGaWVsZFR5cGUuSU5QVVRcIlxuICAgICAgICAgICAgICAgICAgICBkYXRhLXRlc3Q9XCJtb2RhbElucHV0XCJcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIlxuICAgICAgICAgICAgICAgICAgICBbZm9ybUNvbnRyb2xOYW1lXT1cImZpZWxkLm5hbWVcIlxuICAgICAgICAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiZmllbGQucGxhY2Vob2xkZXJcIj48L2RyLWlucHV0PlxuICAgICAgICAgICAgICAgIDxkci1kYXRlLXBpY2tlclxuICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImZpZWxkLnR5cGUgPT09IGRpYWxvZ0ZpZWxkVHlwZS5EQVRFX1BJQ0tFUlwiXG4gICAgICAgICAgICAgICAgICAgIFtmb3JtQ29udHJvbE5hbWVdPVwiZmllbGQubmFtZVwiXG4gICAgICAgICAgICAgICAgICAgIFtmb3JtYXRdPVwiZmllbGQuZGF0ZVBpY2tlckZvcm1hdFwiXG4gICAgICAgICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCJmaWVsZC5wbGFjZWhvbGRlclwiPjwvZHItZGF0ZS1waWNrZXI+XG4gICAgICAgICAgICAgICAgPGRyLWNoZWNrYm94ICpuZ0lmPVwiZmllbGQudHlwZSA9PT0gZGlhbG9nRmllbGRUeXBlLkNIRUNLQk9YXCIgW2Zvcm1Db250cm9sTmFtZV09XCJmaWVsZC5uYW1lXCI+XG4gICAgICAgICAgICAgICAgICAgIHt7IGZpZWxkLmxhYmVsIH19XG4gICAgICAgICAgICAgICAgPC9kci1jaGVja2JveD5cbiAgICAgICAgICAgICAgICA8bGFiZWxcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJmb3JtLWZpZWxkLWVycm9yLWFsZXJ0XCJcbiAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJmb3JtLmludmFsaWQgJiYgZm9ybS5jb250cm9sc1tmaWVsZC5uYW1lXT8uZGlydHkgJiYgZm9ybS5jb250cm9sc1tmaWVsZC5uYW1lXT8uZXJyb3JzXCI+XG4gICAgICAgICAgICAgICAgICAgIHt7IGZvcm0uY29udHJvbHNbZmllbGQubmFtZV0uZXJyb3JzLmVycm9yU3RyaW5nIH19XG4gICAgICAgICAgICAgICAgPC9sYWJlbD5cbiAgICAgICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJmb3JtLWVycm9yLWFsZXJ0XCIgKm5nSWY9XCJkaWFsb2dEYXRhLmVycm9yTWVzc2FnZSAmJiAhZm9ybS5wcmlzdGluZSAmJiBmb3JtLmludmFsaWRcIj5cbiAgICAgICAgICAgICAgICAgICAge3sgZGlhbG9nRGF0YS5lcnJvck1lc3NhZ2UgfX1cbiAgICAgICAgICAgICAgICA8L2xhYmVsPlxuICAgICAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cImZvcm0tZXJyb3ItYWxlcnRcIiAqbmdJZj1cImZvcm0udmFsaWQgJiYgc2hvd1NlcnZlckVycm9yTWVzc2FnZSAmJiBkaWFsb2dEYXRhLnNlcnZlckVycm9yTWVzc2FnZVwiPlxuICAgICAgICAgICAgICAgICAgICB7eyBkaWFsb2dEYXRhLnNlcnZlckVycm9yTWVzc2FnZSB9fVxuICAgICAgICAgICAgICAgIDwvbGFiZWw+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG48L2Zvcm0+XG5cbjxkaXYgZm9vdGVyIGNsYXNzPVwiZm9vdGVyLWRpYWxvZ1wiPlxuICAgIDxkaXYgY2xhc3M9XCJidXR0b25zLXdyYXBwZXJcIiAqbmdJZj1cImRpYWxvZ0RhdGEuY2FuY2VsQnV0dG9uIHx8IGRpYWxvZ0RhdGEuYWNjZXB0QnV0dG9uXCI+XG4gICAgICAgIDxkci1idXR0b25cbiAgICAgICAgICAgIChjbGljayk9XCJvbkRlY2xpbmUoKVwiXG4gICAgICAgICAgICAqbmdJZj1cImRpYWxvZ0RhdGEuY3VzdG9tQnV0dG9uXCJcbiAgICAgICAgICAgIFt0aGVtZV09XCJkaWFsb2dEYXRhLmN1c3RvbUJ1dHRvbj8udGhlbWUgfHwgJ3NlY29uZGFyeSdcIlxuICAgICAgICAgICAgY2xhc3M9XCJidXR0b25zLXdyYXBwZXItLWN1c3RvbS1idG5cIlxuICAgICAgICAgICAgZGF0YS10ZXN0PVwiZGVjbGluZUJ0blwiXG4gICAgICAgICAgICA+e3sgZGlhbG9nRGF0YS5jdXN0b21CdXR0b24ubGFiZWwgfX08L2RyLWJ1dHRvblxuICAgICAgICA+XG4gICAgICAgIDxkci1idXR0b24gKm5nSWY9XCJkaWFsb2dEYXRhLmNhbmNlbEJ1dHRvblwiIGRhdGEtdGVzdD1cIm1vZGFsQ2xvc2VCdG5cIiAoY2xpY2spPVwiY2xvc2VEaWFsb2coKVwiIFt0aGVtZV09XCInc2Vjb25kYXJ5J1wiPnt7XG4gICAgICAgICAgICBkaWFsb2dEYXRhLmNhbmNlbEJ1dHRvbi5sYWJlbFxuICAgICAgICB9fTwvZHItYnV0dG9uPlxuICAgICAgICA8ZHItYnV0dG9uXG4gICAgICAgICAgICAqbmdJZj1cImRpYWxvZ0RhdGEuYWNjZXB0QnV0dG9uXCJcbiAgICAgICAgICAgIGRhdGEtdGVzdD1cIm1vZGFsQWRkQnRuXCJcbiAgICAgICAgICAgIChjbGljayk9XCJvbkFjY2VwdCgpXCJcbiAgICAgICAgICAgIFt0aGVtZV09XCIncHJpbWFyeSdcIlxuICAgICAgICAgICAgW2lzTG9hZGluZ109XCJpc0xvYWRpbmdcIlxuICAgICAgICAgICAgW2Rpc2FibGVkXT1cImZvcm0uaW52YWxpZFwiXG4gICAgICAgICAgICA+e3sgZGlhbG9nRGF0YS5hY2NlcHRCdXR0b24ubGFiZWwgfX08L2RyLWJ1dHRvblxuICAgICAgICA+XG4gICAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==