slick-components 4.4.13 → 4.4.16

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 (346) hide show
  1. package/css/slick-components.css +598 -365
  2. package/css/slick-components.min.css +1 -1
  3. package/esm2020/public-api.mjs +43 -0
  4. package/esm2020/slick-accordion/slick-accordion-item-header.component.mjs +14 -0
  5. package/esm2020/slick-accordion/slick-accordion-item.component.mjs +86 -0
  6. package/esm2020/slick-accordion/slick-accordion.component.mjs +75 -0
  7. package/esm2020/slick-accordion/slick-accordion.module.mjs +23 -0
  8. package/esm2020/slick-auto-complete/slick-auto-complete-list-item-template.directive.mjs +22 -0
  9. package/esm2020/slick-auto-complete/slick-auto-complete.component.mjs +375 -0
  10. package/esm2020/slick-auto-complete/slick-auto-complete.module.mjs +24 -0
  11. package/esm2020/slick-button-spinner/slick-button-spinner.component.mjs +175 -0
  12. package/esm2020/slick-button-spinner/slick-button-spinner.module.mjs +19 -0
  13. package/esm2020/slick-calendar/slick-calendar.component.mjs +246 -0
  14. package/esm2020/slick-calendar/slick-calendar.module.mjs +19 -0
  15. package/esm2020/slick-card/slick-card-header.component.mjs +14 -0
  16. package/esm2020/slick-card/slick-card.component.mjs +42 -0
  17. package/esm2020/slick-card/slick-card.module.mjs +20 -0
  18. package/esm2020/slick-components.mjs +5 -0
  19. package/esm2020/slick-confirm-dialog/slick-confirm-dialog.component.mjs +65 -0
  20. package/esm2020/slick-confirm-dialog/slick-confirm-dialog.module.mjs +20 -0
  21. package/esm2020/slick-container/slick-container-body.component.mjs +24 -0
  22. package/esm2020/slick-container/slick-container-footer.component.mjs +20 -0
  23. package/esm2020/slick-container/slick-container-header.component.mjs +20 -0
  24. package/esm2020/slick-container/slick-container.component.mjs +21 -0
  25. package/esm2020/slick-container/slick-container.module.mjs +25 -0
  26. package/esm2020/slick-context-menu/slick-context-menu-item.component.mjs +14 -0
  27. package/esm2020/slick-context-menu/slick-context-menu.component.mjs +48 -0
  28. package/esm2020/slick-context-menu/slick-context-menu.module.mjs +20 -0
  29. package/{esm2015/slick-currency-mask/slick-currency-mask-options.model.js → esm2020/slick-currency-mask/slick-currency-mask-options.model.mjs} +0 -0
  30. package/esm2020/slick-currency-mask/slick-currency-mask.directive.mjs +233 -0
  31. package/esm2020/slick-currency-mask/slick-currency-mask.module.mjs +19 -0
  32. package/esm2020/slick-date-picker/slick-date-picker.component.mjs +278 -0
  33. package/esm2020/slick-date-picker/slick-date-picker.module.mjs +21 -0
  34. package/esm2020/slick-dialog/slick-dialog-footer.component.mjs +24 -0
  35. package/esm2020/slick-dialog/slick-dialog.component.mjs +294 -0
  36. package/esm2020/slick-dialog/slick-dialog.module.mjs +23 -0
  37. package/esm2020/slick-dialog/slick-dialog.service.mjs +68 -0
  38. package/esm2020/slick-drag-drop/slick-drag-drop.directive.mjs +13 -0
  39. package/esm2020/slick-drag-drop/slick-drag-drop.module.mjs +21 -0
  40. package/esm2020/slick-drag-drop/slick-draggable.directive.mjs +13 -0
  41. package/{esm2015/slick-drop-down/slick-drop-down-button.model.js → esm2020/slick-drop-down/slick-drop-down-button.model.mjs} +0 -0
  42. package/esm2020/slick-drop-down/slick-drop-down.component.mjs +479 -0
  43. package/esm2020/slick-drop-down/slick-drop-down.module.mjs +24 -0
  44. package/esm2020/slick-drop-down/slick-drop-down.service.mjs +55 -0
  45. package/esm2020/slick-drop-list/slick-drop-list-grab.directive.mjs +18 -0
  46. package/esm2020/slick-drop-list/slick-drop-list-item.directive.mjs +18 -0
  47. package/esm2020/slick-drop-list/slick-drop-list.directive.mjs +215 -0
  48. package/esm2020/slick-drop-list/slick-drop-list.module.mjs +23 -0
  49. package/esm2020/slick-email-viewer/slick-email-viewer-dialog.component.mjs +81 -0
  50. package/esm2020/slick-email-viewer/slick-email-viewer.component.mjs +42 -0
  51. package/esm2020/slick-email-viewer/slick-email-viewer.module.mjs +26 -0
  52. package/{esm2015/slick-emailer/slick-emailer-address.model.js → esm2020/slick-emailer/slick-emailer-address.model.mjs} +0 -0
  53. package/esm2020/slick-emailer/slick-emailer-dialog.component.mjs +153 -0
  54. package/esm2020/slick-emailer/slick-emailer.component.mjs +235 -0
  55. package/{esm2015/slick-emailer/slick-emailer.model.js → esm2020/slick-emailer/slick-emailer.model.mjs} +0 -0
  56. package/esm2020/slick-emailer/slick-emailer.module.mjs +29 -0
  57. package/esm2020/slick-file-drop/slick-file-drop.component.mjs +156 -0
  58. package/esm2020/slick-file-drop/slick-file-drop.module.mjs +20 -0
  59. package/esm2020/slick-file-list/slick-file-list-item.component.mjs +173 -0
  60. package/esm2020/slick-file-list/slick-file-list.component.mjs +130 -0
  61. package/esm2020/slick-file-list/slick-file-list.module.mjs +23 -0
  62. package/{esm2015/slick-file-model/slick-file.model.js → esm2020/slick-file-model/slick-file.model.mjs} +0 -0
  63. package/esm2020/slick-google-address-search/slick-google-address-search.directive.mjs +75 -0
  64. package/esm2020/slick-google-address-search/slick-google-address-search.module.mjs +19 -0
  65. package/esm2020/slick-google-map/slick-google-map-dialog.component.mjs +50 -0
  66. package/esm2020/slick-google-map/slick-google-map.component.mjs +48 -0
  67. package/esm2020/slick-google-map/slick-google-map.module.mjs +22 -0
  68. package/esm2020/slick-grid/slick-grid-column-template.directive.mjs +19 -0
  69. package/{esm2015/slick-grid/slick-grid-column.model.js → esm2020/slick-grid/slick-grid-column.model.mjs} +0 -0
  70. package/{esm2015/slick-grid/slick-grid-favorite.model.js → esm2020/slick-grid/slick-grid-favorite.model.mjs} +0 -0
  71. package/{esm2015/slick-grid/slick-grid-request.model.js → esm2020/slick-grid/slick-grid-request.model.mjs} +0 -0
  72. package/{esm2015/slick-grid/slick-grid-response.model.js → esm2020/slick-grid/slick-grid-response.model.mjs} +0 -0
  73. package/esm2020/slick-grid/slick-grid-sanitize.pipe.mjs +20 -0
  74. package/esm2020/slick-grid/slick-grid.component.mjs +793 -0
  75. package/esm2020/slick-grid/slick-grid.module.mjs +43 -0
  76. package/{esm2015/slick-grid/slick-grid.options.js → esm2020/slick-grid/slick-grid.options.mjs} +0 -0
  77. package/esm2020/slick-grid/slick-grid.service.mjs +66 -0
  78. package/esm2020/slick-multi-select/slick-multi-select.component.mjs +362 -0
  79. package/esm2020/slick-multi-select/slick-multi-select.module.mjs +20 -0
  80. package/esm2020/slick-multi-select/slick-multi-select.service.mjs +77 -0
  81. package/esm2020/slick-ordered-list/slick-ordered-list.component.mjs +200 -0
  82. package/esm2020/slick-ordered-list/slick-ordered-list.module.mjs +20 -0
  83. package/esm2020/slick-paging/slick-paging.component.mjs +185 -0
  84. package/esm2020/slick-paging/slick-paging.module.mjs +19 -0
  85. package/esm2020/slick-photo-gallery/slick-photo-gallery.component.mjs +98 -0
  86. package/{esm2015/slick-photo-gallery/slick-photo-gallery.model.js → esm2020/slick-photo-gallery/slick-photo-gallery.model.mjs} +0 -0
  87. package/esm2020/slick-photo-gallery/slick-photo-gallery.module.mjs +21 -0
  88. package/esm2020/slick-pick-list/slick-pick-list.component.mjs +84 -0
  89. package/esm2020/slick-pick-list/slick-pick-list.module.mjs +20 -0
  90. package/esm2020/slick-popover/slick-popover.component.mjs +204 -0
  91. package/esm2020/slick-popover/slick-popover.module.mjs +19 -0
  92. package/esm2020/slick-profile-picture/slick-profile-picture.component.mjs +267 -0
  93. package/esm2020/slick-profile-picture/slick-profile-picture.module.mjs +20 -0
  94. package/esm2020/slick-progress-bar/slick-progress-bar.module.mjs +18 -0
  95. package/esm2020/slick-progress-bar/slick-progress-bar.service.mjs +53 -0
  96. package/esm2020/slick-screen-blocker/slick-screen-blocker.module.mjs +18 -0
  97. package/esm2020/slick-screen-blocker/slick-screen-blocker.service.mjs +83 -0
  98. package/{esm2015/slick-slider/slick-slider-tick.model.js → esm2020/slick-slider/slick-slider-tick.model.mjs} +0 -0
  99. package/esm2020/slick-slider/slick-slider.component.mjs +90 -0
  100. package/esm2020/slick-slider/slick-slider.module.mjs +20 -0
  101. package/esm2020/slick-split-screen/slick-screen-split-left-content.component.mjs +15 -0
  102. package/esm2020/slick-split-screen/slick-screen-split-right-content.component.mjs +15 -0
  103. package/esm2020/slick-split-screen/slick-split-screen.component.mjs +159 -0
  104. package/esm2020/slick-split-screen/slick-split-screen.module.mjs +21 -0
  105. package/esm2020/slick-tabs/slick-tab-header.component.mjs +28 -0
  106. package/esm2020/slick-tabs/slick-tab.component.mjs +63 -0
  107. package/{esm2015/slick-tabs/slick-tab.model.js → esm2020/slick-tabs/slick-tab.model.mjs} +0 -0
  108. package/esm2020/slick-tabs/slick-tabs.component.mjs +107 -0
  109. package/esm2020/slick-tabs/slick-tabs.module.mjs +23 -0
  110. package/esm2020/slick-toast/slick-toast.module.mjs +18 -0
  111. package/esm2020/slick-toast/slick-toast.service.mjs +88 -0
  112. package/{esm2015/slick-tree-view/slick-tree-node.model.js → esm2020/slick-tree-view/slick-tree-node.model.mjs} +0 -0
  113. package/esm2020/slick-tree-view/slick-tree-view.component.mjs +293 -0
  114. package/esm2020/slick-tree-view/slick-tree-view.module.mjs +22 -0
  115. package/esm2020/slick-type-ahead/slick-type-ahead.directive.mjs +164 -0
  116. package/esm2020/slick-type-ahead/slick-type-ahead.module.mjs +18 -0
  117. package/esm2020/slick-validation-indicator/slick-validation-indicator.directive.mjs +63 -0
  118. package/esm2020/slick-validation-indicator/slick-validation-indicator.module.mjs +19 -0
  119. package/esm2020/utils/slick-function-lock.service.mjs +55 -0
  120. package/esm2020/utils/slick-init.service.mjs +49 -0
  121. package/esm2020/utils/slick-log.service.mjs +23 -0
  122. package/esm2020/utils/slick-sleep.service.mjs +14 -0
  123. package/esm2020/utils/slick-utils.service.mjs +247 -0
  124. package/fesm2015/{slick-components.js → slick-components.mjs} +2779 -2070
  125. package/fesm2015/slick-components.mjs.map +1 -0
  126. package/fesm2020/slick-components.mjs +8467 -0
  127. package/fesm2020/slick-components.mjs.map +1 -0
  128. package/package.json +20 -8
  129. package/public-api.d.ts +8 -8
  130. package/slick-accordion/slick-accordion-item-header.component.d.ts +3 -0
  131. package/slick-accordion/slick-accordion-item.component.d.ts +3 -0
  132. package/slick-accordion/slick-accordion.component.d.ts +3 -0
  133. package/slick-accordion/slick-accordion.module.d.ts +8 -0
  134. package/slick-auto-complete/slick-auto-complete-list-item-template.directive.d.ts +3 -0
  135. package/slick-auto-complete/slick-auto-complete.component.d.ts +3 -0
  136. package/slick-auto-complete/slick-auto-complete.module.d.ts +8 -0
  137. package/slick-button-spinner/slick-button-spinner.component.d.ts +3 -0
  138. package/slick-button-spinner/slick-button-spinner.module.d.ts +6 -0
  139. package/slick-calendar/slick-calendar.component.d.ts +3 -0
  140. package/slick-calendar/slick-calendar.module.d.ts +6 -0
  141. package/slick-card/slick-card-header.component.d.ts +3 -0
  142. package/slick-card/slick-card.component.d.ts +3 -0
  143. package/slick-card/slick-card.module.d.ts +10 -0
  144. package/slick-components.d.ts +1 -22
  145. package/slick-confirm-dialog/slick-confirm-dialog.component.d.ts +3 -0
  146. package/slick-confirm-dialog/slick-confirm-dialog.module.d.ts +7 -0
  147. package/slick-container/slick-container-body.component.d.ts +3 -0
  148. package/slick-container/slick-container-footer.component.d.ts +3 -0
  149. package/slick-container/slick-container-header.component.d.ts +3 -0
  150. package/slick-container/slick-container.component.d.ts +3 -0
  151. package/slick-container/slick-container.module.d.ts +9 -0
  152. package/slick-context-menu/slick-context-menu-item.component.d.ts +3 -0
  153. package/slick-context-menu/slick-context-menu.component.d.ts +3 -0
  154. package/slick-context-menu/slick-context-menu.module.d.ts +7 -0
  155. package/slick-currency-mask/slick-currency-mask.directive.d.ts +3 -0
  156. package/slick-currency-mask/slick-currency-mask.module.d.ts +5 -0
  157. package/slick-date-picker/slick-date-picker.component.d.ts +3 -0
  158. package/slick-date-picker/slick-date-picker.module.d.ts +8 -0
  159. package/slick-dialog/slick-dialog-footer.component.d.ts +3 -0
  160. package/slick-dialog/slick-dialog.component.d.ts +3 -0
  161. package/slick-dialog/slick-dialog.module.d.ts +10 -1
  162. package/slick-dialog/slick-dialog.service.d.ts +3 -0
  163. package/slick-drag-drop/slick-drag-drop.directive.d.ts +3 -0
  164. package/slick-drag-drop/slick-drag-drop.module.d.ts +11 -0
  165. package/slick-drag-drop/slick-draggable.directive.d.ts +3 -0
  166. package/slick-drop-down/slick-drop-down.component.d.ts +3 -0
  167. package/slick-drop-down/slick-drop-down.module.d.ts +9 -0
  168. package/slick-drop-down/slick-drop-down.service.d.ts +3 -0
  169. package/slick-drop-list/slick-drop-list-grab.directive.d.ts +3 -0
  170. package/slick-drop-list/slick-drop-list-item.directive.d.ts +3 -0
  171. package/slick-drop-list/slick-drop-list.directive.d.ts +13 -7
  172. package/slick-drop-list/slick-drop-list.module.d.ts +14 -0
  173. package/slick-email-viewer/slick-email-viewer-dialog.component.d.ts +3 -0
  174. package/slick-email-viewer/slick-email-viewer.component.d.ts +3 -0
  175. package/slick-email-viewer/slick-email-viewer.module.d.ts +10 -0
  176. package/slick-emailer/slick-emailer-dialog.component.d.ts +3 -0
  177. package/slick-emailer/slick-emailer.component.d.ts +3 -0
  178. package/slick-emailer/slick-emailer.module.d.ts +13 -0
  179. package/slick-file-drop/slick-file-drop.component.d.ts +3 -0
  180. package/slick-file-drop/slick-file-drop.module.d.ts +7 -0
  181. package/slick-file-list/slick-file-list-item.component.d.ts +3 -0
  182. package/slick-file-list/slick-file-list.component.d.ts +3 -0
  183. package/slick-file-list/slick-file-list.module.d.ts +10 -0
  184. package/slick-google-address-search/slick-google-address-search.directive.d.ts +3 -0
  185. package/slick-google-address-search/slick-google-address-search.module.d.ts +6 -0
  186. package/slick-google-map/slick-google-map-dialog.component.d.ts +3 -0
  187. package/slick-google-map/slick-google-map.component.d.ts +3 -0
  188. package/slick-google-map/slick-google-map.module.d.ts +8 -0
  189. package/slick-grid/slick-grid-column-template.directive.d.ts +3 -0
  190. package/slick-grid/slick-grid-sanitize.pipe.d.ts +3 -0
  191. package/slick-grid/slick-grid.component.d.ts +3 -0
  192. package/slick-grid/slick-grid.module.d.ts +16 -0
  193. package/slick-grid/slick-grid.service.d.ts +3 -0
  194. package/slick-multi-select/slick-multi-select.component.d.ts +3 -0
  195. package/slick-multi-select/slick-multi-select.module.d.ts +7 -0
  196. package/slick-multi-select/slick-multi-select.service.d.ts +3 -0
  197. package/slick-ordered-list/slick-ordered-list.component.d.ts +3 -0
  198. package/slick-ordered-list/slick-ordered-list.module.d.ts +7 -0
  199. package/slick-paging/slick-paging.component.d.ts +3 -0
  200. package/slick-paging/slick-paging.module.d.ts +6 -0
  201. package/slick-photo-gallery/slick-photo-gallery.component.d.ts +3 -0
  202. package/slick-photo-gallery/slick-photo-gallery.module.d.ts +6 -0
  203. package/slick-pick-list/slick-pick-list.component.d.ts +3 -0
  204. package/slick-pick-list/slick-pick-list.module.d.ts +7 -0
  205. package/slick-popover/slick-popover.component.d.ts +3 -0
  206. package/slick-popover/slick-popover.module.d.ts +6 -0
  207. package/slick-profile-picture/slick-profile-picture.component.d.ts +3 -0
  208. package/slick-profile-picture/slick-profile-picture.module.d.ts +7 -0
  209. package/slick-progress-bar/slick-progress-bar.module.d.ts +5 -0
  210. package/slick-progress-bar/slick-progress-bar.service.d.ts +3 -0
  211. package/slick-screen-blocker/slick-screen-blocker.module.d.ts +5 -0
  212. package/slick-screen-blocker/slick-screen-blocker.service.d.ts +3 -0
  213. package/slick-slider/slick-slider.component.d.ts +3 -0
  214. package/slick-slider/slick-slider.module.d.ts +6 -0
  215. package/slick-split-screen/slick-screen-split-left-content.component.d.ts +3 -0
  216. package/slick-split-screen/slick-screen-split-right-content.component.d.ts +3 -0
  217. package/slick-split-screen/slick-split-screen.component.d.ts +3 -0
  218. package/slick-split-screen/slick-split-screen.module.d.ts +8 -0
  219. package/slick-tabs/slick-tab-header.component.d.ts +3 -0
  220. package/slick-tabs/slick-tab.component.d.ts +3 -0
  221. package/slick-tabs/slick-tabs.component.d.ts +3 -0
  222. package/slick-tabs/slick-tabs.module.d.ts +10 -0
  223. package/slick-toast/slick-toast.module.d.ts +5 -0
  224. package/slick-toast/slick-toast.service.d.ts +3 -0
  225. package/slick-tree-view/slick-tree-view.component.d.ts +3 -0
  226. package/slick-tree-view/slick-tree-view.module.d.ts +8 -0
  227. package/slick-type-ahead/slick-type-ahead.directive.d.ts +3 -0
  228. package/slick-type-ahead/slick-type-ahead.module.d.ts +5 -0
  229. package/slick-validation-indicator/slick-validation-indicator.directive.d.ts +3 -0
  230. package/slick-validation-indicator/slick-validation-indicator.module.d.ts +6 -0
  231. package/utils/slick-function-lock.service.d.ts +3 -0
  232. package/utils/slick-init.service.d.ts +3 -0
  233. package/utils/slick-log.service.d.ts +3 -0
  234. package/utils/slick-sleep.service.d.ts +3 -0
  235. package/utils/slick-utils.service.d.ts +5 -0
  236. package/bundles/slick-components.umd.js +0 -9777
  237. package/bundles/slick-components.umd.js.map +0 -1
  238. package/esm2015/public-api.js +0 -43
  239. package/esm2015/slick-accordion/slick-accordion-item-header.component.js +0 -10
  240. package/esm2015/slick-accordion/slick-accordion-item.component.js +0 -80
  241. package/esm2015/slick-accordion/slick-accordion.component.js +0 -77
  242. package/esm2015/slick-accordion/slick-accordion.module.js +0 -18
  243. package/esm2015/slick-auto-complete/slick-auto-complete-list-item-template.directive.js +0 -21
  244. package/esm2015/slick-auto-complete/slick-auto-complete.component.js +0 -352
  245. package/esm2015/slick-auto-complete/slick-auto-complete.module.js +0 -19
  246. package/esm2015/slick-button-spinner/slick-button-spinner.component.js +0 -186
  247. package/esm2015/slick-button-spinner/slick-button-spinner.module.js +0 -14
  248. package/esm2015/slick-calendar/slick-calendar.component.js +0 -233
  249. package/esm2015/slick-calendar/slick-calendar.module.js +0 -14
  250. package/esm2015/slick-card/slick-card-header.component.js +0 -10
  251. package/esm2015/slick-card/slick-card.component.js +0 -37
  252. package/esm2015/slick-card/slick-card.module.js +0 -14
  253. package/esm2015/slick-components.js +0 -27
  254. package/esm2015/slick-confirm-dialog/slick-confirm-dialog.component.js +0 -62
  255. package/esm2015/slick-confirm-dialog/slick-confirm-dialog.module.js +0 -15
  256. package/esm2015/slick-container/slick-container-body.component.js +0 -18
  257. package/esm2015/slick-container/slick-container-footer.component.js +0 -16
  258. package/esm2015/slick-container/slick-container-header.component.js +0 -16
  259. package/esm2015/slick-container/slick-container.component.js +0 -19
  260. package/esm2015/slick-container/slick-container.module.js +0 -20
  261. package/esm2015/slick-context-menu/slick-context-menu-item.component.js +0 -10
  262. package/esm2015/slick-context-menu/slick-context-menu.component.js +0 -43
  263. package/esm2015/slick-context-menu/slick-context-menu.module.js +0 -15
  264. package/esm2015/slick-currency-mask/slick-currency-mask.directive.js +0 -234
  265. package/esm2015/slick-currency-mask/slick-currency-mask.module.js +0 -14
  266. package/esm2015/slick-date-picker/slick-date-picker.component.js +0 -267
  267. package/esm2015/slick-date-picker/slick-date-picker.module.js +0 -16
  268. package/esm2015/slick-dialog/slick-dialog-footer.component.js +0 -18
  269. package/esm2015/slick-dialog/slick-dialog.component.js +0 -282
  270. package/esm2015/slick-dialog/slick-dialog.module.js +0 -18
  271. package/esm2015/slick-dialog/slick-dialog.service.js +0 -67
  272. package/esm2015/slick-drag-drop/slick-drag-drop.directive.js +0 -9
  273. package/esm2015/slick-drag-drop/slick-drag-drop.module.js +0 -14
  274. package/esm2015/slick-drag-drop/slick-draggable.directive.js +0 -9
  275. package/esm2015/slick-drop-down/slick-drop-down.component.js +0 -465
  276. package/esm2015/slick-drop-down/slick-drop-down.module.js +0 -19
  277. package/esm2015/slick-drop-down/slick-drop-down.service.js +0 -59
  278. package/esm2015/slick-drop-list/slick-drop-list-grab.directive.js +0 -18
  279. package/esm2015/slick-drop-list/slick-drop-list-item.directive.js +0 -18
  280. package/esm2015/slick-drop-list/slick-drop-list.directive.js +0 -162
  281. package/esm2015/slick-drop-list/slick-drop-list.module.js +0 -15
  282. package/esm2015/slick-email-viewer/slick-email-viewer-dialog.component.js +0 -61
  283. package/esm2015/slick-email-viewer/slick-email-viewer.component.js +0 -39
  284. package/esm2015/slick-email-viewer/slick-email-viewer.module.js +0 -21
  285. package/esm2015/slick-emailer/slick-emailer-dialog.component.js +0 -122
  286. package/esm2015/slick-emailer/slick-emailer.component.js +0 -226
  287. package/esm2015/slick-emailer/slick-emailer.module.js +0 -24
  288. package/esm2015/slick-file-drop/slick-file-drop.component.js +0 -144
  289. package/esm2015/slick-file-drop/slick-file-drop.module.js +0 -15
  290. package/esm2015/slick-file-list/slick-file-list-item.component.js +0 -156
  291. package/esm2015/slick-file-list/slick-file-list.component.js +0 -114
  292. package/esm2015/slick-file-list/slick-file-list.module.js +0 -18
  293. package/esm2015/slick-google-address-search/slick-google-address-search.directive.js +0 -75
  294. package/esm2015/slick-google-address-search/slick-google-address-search.module.js +0 -14
  295. package/esm2015/slick-google-map/slick-google-map-dialog.component.js +0 -45
  296. package/esm2015/slick-google-map/slick-google-map.component.js +0 -45
  297. package/esm2015/slick-google-map/slick-google-map.module.js +0 -17
  298. package/esm2015/slick-grid/slick-grid-column-template.directive.js +0 -19
  299. package/esm2015/slick-grid/slick-grid-sanitize.pipe.js +0 -20
  300. package/esm2015/slick-grid/slick-grid.component.js +0 -792
  301. package/esm2015/slick-grid/slick-grid.module.js +0 -38
  302. package/esm2015/slick-grid/slick-grid.service.js +0 -72
  303. package/esm2015/slick-multi-select/slick-multi-select.component.js +0 -356
  304. package/esm2015/slick-multi-select/slick-multi-select.module.js +0 -15
  305. package/esm2015/slick-multi-select/slick-multi-select.service.js +0 -74
  306. package/esm2015/slick-ordered-list/slick-ordered-list.component.js +0 -198
  307. package/esm2015/slick-ordered-list/slick-ordered-list.module.js +0 -15
  308. package/esm2015/slick-paging/slick-paging.component.js +0 -180
  309. package/esm2015/slick-paging/slick-paging.module.js +0 -14
  310. package/esm2015/slick-photo-gallery/slick-photo-gallery.component.js +0 -101
  311. package/esm2015/slick-photo-gallery/slick-photo-gallery.module.js +0 -16
  312. package/esm2015/slick-pick-list/slick-pick-list.component.js +0 -78
  313. package/esm2015/slick-pick-list/slick-pick-list.module.js +0 -15
  314. package/esm2015/slick-popover/slick-popover.component.js +0 -199
  315. package/esm2015/slick-popover/slick-popover.module.js +0 -14
  316. package/esm2015/slick-profile-picture/slick-profile-picture.component.js +0 -242
  317. package/esm2015/slick-profile-picture/slick-profile-picture.module.js +0 -15
  318. package/esm2015/slick-progress-bar/slick-progress-bar.module.js +0 -13
  319. package/esm2015/slick-progress-bar/slick-progress-bar.service.js +0 -50
  320. package/esm2015/slick-screen-blocker/slick-screen-blocker.module.js +0 -13
  321. package/esm2015/slick-screen-blocker/slick-screen-blocker.service.js +0 -80
  322. package/esm2015/slick-slider/slick-slider.component.js +0 -88
  323. package/esm2015/slick-slider/slick-slider.module.js +0 -15
  324. package/esm2015/slick-split-screen/slick-screen-split-left-content.component.js +0 -13
  325. package/esm2015/slick-split-screen/slick-screen-split-right-content.component.js +0 -13
  326. package/esm2015/slick-split-screen/slick-split-screen.component.js +0 -148
  327. package/esm2015/slick-split-screen/slick-split-screen.module.js +0 -16
  328. package/esm2015/slick-tabs/slick-tab-header.component.js +0 -25
  329. package/esm2015/slick-tabs/slick-tab.component.js +0 -67
  330. package/esm2015/slick-tabs/slick-tabs.component.js +0 -104
  331. package/esm2015/slick-tabs/slick-tabs.module.js +0 -17
  332. package/esm2015/slick-toast/slick-toast.module.js +0 -13
  333. package/esm2015/slick-toast/slick-toast.service.js +0 -91
  334. package/esm2015/slick-tree-view/slick-tree-view.component.js +0 -287
  335. package/esm2015/slick-tree-view/slick-tree-view.module.js +0 -17
  336. package/esm2015/slick-type-ahead/slick-type-ahead.directive.js +0 -155
  337. package/esm2015/slick-type-ahead/slick-type-ahead.module.js +0 -13
  338. package/esm2015/slick-validation-indicator/slick-validation-indicator.directive.js +0 -61
  339. package/esm2015/slick-validation-indicator/slick-validation-indicator.module.js +0 -14
  340. package/esm2015/utils/slick-function-lock.service.js +0 -54
  341. package/esm2015/utils/slick-init.service.js +0 -48
  342. package/esm2015/utils/slick-log.service.js +0 -27
  343. package/esm2015/utils/slick-sleep.service.js +0 -14
  344. package/esm2015/utils/slick-utils.service.js +0 -229
  345. package/fesm2015/slick-components.js.map +0 -1
  346. package/slick-components.metadata.json +0 -1
@@ -0,0 +1,19 @@
1
+ import { NgModule } from "@angular/core";
2
+ import { CommonModule } from "@angular/common";
3
+ import { SlickPagingComponent } from "./slick-paging.component";
4
+ import * as i0 from "@angular/core";
5
+ export class SlickPagingModule {
6
+ }
7
+ /** @nocollapse */ SlickPagingModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.3", ngImport: i0, type: SlickPagingModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
8
+ /** @nocollapse */ SlickPagingModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.3", ngImport: i0, type: SlickPagingModule, declarations: [SlickPagingComponent], imports: [CommonModule], exports: [SlickPagingComponent] });
9
+ /** @nocollapse */ SlickPagingModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.3", ngImport: i0, type: SlickPagingModule, imports: [[CommonModule]] });
10
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.3", ngImport: i0, type: SlickPagingModule, decorators: [{
11
+ type: NgModule,
12
+ args: [{
13
+ imports: [CommonModule],
14
+ declarations: [SlickPagingComponent],
15
+ exports: [SlickPagingComponent]
16
+ }]
17
+ }] });
18
+ export { SlickPagingComponent };
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2xpY2stcGFnaW5nLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudHMvc3JjL3NsaWNrLXBhZ2luZy9zbGljay1wYWdpbmcubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDBCQUEwQixDQUFDOztBQU9oRSxNQUFNLE9BQU8saUJBQWlCOztpSUFBakIsaUJBQWlCO2tJQUFqQixpQkFBaUIsaUJBSGQsb0JBQW9CLGFBRHpCLFlBQVksYUFFWixvQkFBb0I7a0lBRWxCLGlCQUFpQixZQUpwQixDQUFDLFlBQVksQ0FBQzsyRkFJWCxpQkFBaUI7a0JBTDdCLFFBQVE7bUJBQUM7b0JBQ1QsT0FBTyxFQUFFLENBQUMsWUFBWSxDQUFDO29CQUN2QixZQUFZLEVBQUUsQ0FBQyxvQkFBb0IsQ0FBQztvQkFDcEMsT0FBTyxFQUFFLENBQUMsb0JBQW9CLENBQUM7aUJBQy9COztBQUdELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29tbW9uXCI7XHJcbmltcG9ydCB7IFNsaWNrUGFnaW5nQ29tcG9uZW50IH0gZnJvbSBcIi4vc2xpY2stcGFnaW5nLmNvbXBvbmVudFwiO1xyXG5cclxuQE5nTW9kdWxlKHtcclxuXHRpbXBvcnRzOiBbQ29tbW9uTW9kdWxlXSxcclxuXHRkZWNsYXJhdGlvbnM6IFtTbGlja1BhZ2luZ0NvbXBvbmVudF0sXHJcblx0ZXhwb3J0czogW1NsaWNrUGFnaW5nQ29tcG9uZW50XVxyXG59KVxyXG5leHBvcnQgY2xhc3MgU2xpY2tQYWdpbmdNb2R1bGUgeyB9XHJcblxyXG5leHBvcnQgeyBTbGlja1BhZ2luZ0NvbXBvbmVudCB9Il19
@@ -0,0 +1,98 @@
1
+ import { Component, Input, ViewChild, HostListener } from "@angular/core";
2
+ import { SlickPhotoGalleryModel } from "./slick-photo-gallery.model";
3
+ import { SlickSleepService } from "../utils/slick-sleep.service";
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "@angular/common";
6
+ export class SlickPhotoGalleryComponent {
7
+ constructor(changeDetector) {
8
+ this.changeDetector = changeDetector;
9
+ this.isVisible = false;
10
+ this.isPhotoGalleryVisible = false;
11
+ this.selectedPhoto = null;
12
+ this.visibleIndex = 0;
13
+ }
14
+ async onResize(e) {
15
+ if (e.which === 39)
16
+ this.nextPhoto();
17
+ else if (e.which === 37)
18
+ this.previousPhoto();
19
+ else if (e.which === 27)
20
+ this.closeWindow();
21
+ }
22
+ ngOnDestroy() {
23
+ // It's fine if this fails. It just means it was removed elsewhere
24
+ try {
25
+ document.body.appendChild(this.containerRef.nativeElement);
26
+ }
27
+ catch { }
28
+ }
29
+ ngOnChanges(changes) {
30
+ if (changes.files) {
31
+ this.photos = [];
32
+ if (changes.files.currentValue) {
33
+ this.photos = changes.files.currentValue.map((f) => {
34
+ let photoModel = new SlickPhotoGalleryModel();
35
+ photoModel.photoUrl = f.base64Image || f.url;
36
+ photoModel.title = f.title;
37
+ return photoModel;
38
+ });
39
+ }
40
+ }
41
+ }
42
+ async showPhotoGallery(visibleIndex = 0) {
43
+ this.isVisible = true;
44
+ this.changeDetector.detectChanges();
45
+ document.body.appendChild(this.containerRef.nativeElement);
46
+ await SlickSleepService.sleep();
47
+ this.isPhotoGalleryVisible = true;
48
+ this.visibleIndex = visibleIndex;
49
+ if (this.photos && this.photos.length > 0)
50
+ this.selectedPhoto = this.photos[this.visibleIndex];
51
+ }
52
+ hidePhotoGallery() {
53
+ // It's fine if this fails. It just means it was removed elsewhere
54
+ try {
55
+ document.body.removeChild(this.containerRef.nativeElement);
56
+ }
57
+ catch { }
58
+ this.isVisible = false;
59
+ }
60
+ previousPhoto() {
61
+ if (this.visibleIndex === 0)
62
+ this.visibleIndex = this.photos.length - 1;
63
+ else
64
+ this.visibleIndex--;
65
+ this.selectedPhoto = this.photos[this.visibleIndex];
66
+ }
67
+ nextPhoto() {
68
+ if (this.visibleIndex === this.photos.length - 1)
69
+ this.visibleIndex = 0;
70
+ else
71
+ this.visibleIndex++;
72
+ this.selectedPhoto = this.photos[this.visibleIndex];
73
+ }
74
+ setPosition(idx) {
75
+ this.visibleIndex = idx;
76
+ this.selectedPhoto = this.photos[this.visibleIndex];
77
+ }
78
+ closeWindow() {
79
+ this.hidePhotoGallery();
80
+ }
81
+ }
82
+ /** @nocollapse */ SlickPhotoGalleryComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.3", ngImport: i0, type: SlickPhotoGalleryComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
83
+ /** @nocollapse */ SlickPhotoGalleryComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.3", type: SlickPhotoGalleryComponent, selector: "slick-photo-gallery", inputs: { photos: "photos", files: "files" }, host: { listeners: { "window:keydown": "onResize($event)" } }, viewQueries: [{ propertyName: "containerRef", first: true, predicate: ["containerRef"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div #containerRef *ngIf=\"isVisible === true\" class='slick-photo-gallery'>\r\n\t<div class=\"slick-photo-gallery_overlay\" (click)=\"closeWindow()\" [ngClass]=\"{'visible': isPhotoGalleryVisible === true}\"></div>\r\n\t<div class=\"modal-content slick-photo-gallery_content\" style=\"width: 90%; margin-left: 5%;\" *ngIf=\"isPhotoGalleryVisible === true\">\r\n\t\t<div class=\"modal-header slick-photo-gallery_header\"><div class=\"header-right\" (click)='closeWindow()'><i class=\"far fa-times\"></i></div></div>\r\n\t\t<div class=\"modal-body\">\r\n\t\t\t<div *ngIf=\"selectedPhoto\" class='slick-photo-gallery_photo-container'>\r\n\t\t\t\t<img class='slick-photo-gallery_photo' [src]='selectedPhoto.photoUrl' />\r\n\t\t\t</div>\r\n\t\t\t<div (click)='previousPhoto()' class='slick-photo-gallery_previous-photo'><i class='far fa-chevron-left'></i></div>\r\n\t\t\t<div (click)='nextPhoto()' class='slick-photo-gallery_next-photo'><i class='far fa-chevron-right'></i></div>\r\n\t\t\t<!--<div *ngIf=\"photos\" class='slick-photo-gallery_position-indicators'>\r\n\t\t\t\t<i (click)='setPosition(index)' *ngFor='let photo of photos; let index = index' [ngClass]='(index === visibleIndex) ? \"fas fa-circle\" : \"far fa-circle\"'></i>\r\n\t\t\t</div>-->\r\n\t\t</div>\r\n\t</div>\r\n</div>\r\n", directives: [{ type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
84
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.3", ngImport: i0, type: SlickPhotoGalleryComponent, decorators: [{
85
+ type: Component,
86
+ args: [{ selector: "slick-photo-gallery", template: "<div #containerRef *ngIf=\"isVisible === true\" class='slick-photo-gallery'>\r\n\t<div class=\"slick-photo-gallery_overlay\" (click)=\"closeWindow()\" [ngClass]=\"{'visible': isPhotoGalleryVisible === true}\"></div>\r\n\t<div class=\"modal-content slick-photo-gallery_content\" style=\"width: 90%; margin-left: 5%;\" *ngIf=\"isPhotoGalleryVisible === true\">\r\n\t\t<div class=\"modal-header slick-photo-gallery_header\"><div class=\"header-right\" (click)='closeWindow()'><i class=\"far fa-times\"></i></div></div>\r\n\t\t<div class=\"modal-body\">\r\n\t\t\t<div *ngIf=\"selectedPhoto\" class='slick-photo-gallery_photo-container'>\r\n\t\t\t\t<img class='slick-photo-gallery_photo' [src]='selectedPhoto.photoUrl' />\r\n\t\t\t</div>\r\n\t\t\t<div (click)='previousPhoto()' class='slick-photo-gallery_previous-photo'><i class='far fa-chevron-left'></i></div>\r\n\t\t\t<div (click)='nextPhoto()' class='slick-photo-gallery_next-photo'><i class='far fa-chevron-right'></i></div>\r\n\t\t\t<!--<div *ngIf=\"photos\" class='slick-photo-gallery_position-indicators'>\r\n\t\t\t\t<i (click)='setPosition(index)' *ngFor='let photo of photos; let index = index' [ngClass]='(index === visibleIndex) ? \"fas fa-circle\" : \"far fa-circle\"'></i>\r\n\t\t\t</div>-->\r\n\t\t</div>\r\n\t</div>\r\n</div>\r\n" }]
87
+ }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { photos: [{
88
+ type: Input
89
+ }], files: [{
90
+ type: Input
91
+ }], containerRef: [{
92
+ type: ViewChild,
93
+ args: ["containerRef"]
94
+ }], onResize: [{
95
+ type: HostListener,
96
+ args: ['window:keydown', ['$event']]
97
+ }] } });
98
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2xpY2stcGhvdG8tZ2FsbGVyeS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnRzL3NyYy9zbGljay1waG90by1nYWxsZXJ5L3NsaWNrLXBob3RvLWdhbGxlcnkuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tcG9uZW50cy9zcmMvc2xpY2stcGhvdG8tZ2FsbGVyeS9zbGljay1waG90by1nYWxsZXJ5LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBbUQsWUFBWSxFQUFxQixNQUFNLGVBQWUsQ0FBQztBQUM5SSxPQUFPLEVBQTJCLHNCQUFzQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFFOUYsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sOEJBQThCLENBQUM7OztBQU1qRSxNQUFNLE9BQU8sMEJBQTBCO0lBcUJ0QyxZQUFvQixjQUFpQztRQUFqQyxtQkFBYyxHQUFkLGNBQWMsQ0FBbUI7UUFMckQsY0FBUyxHQUFZLEtBQUssQ0FBQztRQUMzQiwwQkFBcUIsR0FBWSxLQUFLLENBQUM7UUFDdkMsa0JBQWEsR0FBNEIsSUFBSSxDQUFDO1FBQzlDLGlCQUFZLEdBQVcsQ0FBQyxDQUFDO0lBRWdDLENBQUM7SUFkMUQsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFnQjtRQUM5QixJQUFJLENBQUMsQ0FBQyxLQUFLLEtBQUssRUFBRTtZQUNqQixJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7YUFDYixJQUFJLENBQUMsQ0FBQyxLQUFLLEtBQUssRUFBRTtZQUN0QixJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7YUFDakIsSUFBSSxDQUFDLENBQUMsS0FBSyxLQUFLLEVBQUU7WUFDdEIsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ3JCLENBQUM7SUFTRCxXQUFXO1FB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QUUsQ0FBQztJQUN6QixDQUFDOzswSUEvRlcsMEJBQTBCOzhIQUExQiwwQkFBMEIsMlNDVHZDLDZ3Q0FnQkE7MkZEUGEsMEJBQTBCO2tCQUp0QyxTQUFTOytCQUNDLHFCQUFxQjt3R0FJdEIsTUFBTTtzQkFBZCxLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFFcUIsWUFBWTtzQkFBdEMsU0FBUzt1QkFBQyxjQUFjO2dCQUduQixRQUFRO3NCQURiLFlBQVk7dUJBQUMsZ0JBQWdCLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBWaWV3Q2hpbGQsIEVsZW1lbnRSZWYsIE9uQ2hhbmdlcywgU2ltcGxlQ2hhbmdlcywgT25EZXN0cm95LCBIb3N0TGlzdGVuZXIsIENoYW5nZURldGVjdG9yUmVmIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgSVNsaWNrUGhvdG9HYWxsZXJ5TW9kZWwsIFNsaWNrUGhvdG9HYWxsZXJ5TW9kZWwgfSBmcm9tIFwiLi9zbGljay1waG90by1nYWxsZXJ5Lm1vZGVsXCI7XHJcbmltcG9ydCB7IElTbGlja0ZpbGVNb2RlbCB9IGZyb20gXCIuLi9zbGljay1maWxlLW1vZGVsL3NsaWNrLWZpbGUubW9kZWxcIjtcclxuaW1wb3J0IHsgU2xpY2tTbGVlcFNlcnZpY2UgfSBmcm9tIFwiLi4vdXRpbHMvc2xpY2stc2xlZXAuc2VydmljZVwiO1xyXG5cclxuQENvbXBvbmVudCh7XHJcblx0c2VsZWN0b3I6IFwic2xpY2stcGhvdG8tZ2FsbGVyeVwiLFxyXG5cdHRlbXBsYXRlVXJsOiBcInNsaWNrLXBob3RvLWdhbGxlcnkuY29tcG9uZW50Lmh0bWxcIlxyXG59KVxyXG5leHBvcnQgY2xhc3MgU2xpY2tQaG90b0dhbGxlcnlDb21wb25lbnQgaW1wbGVtZW50cyBPbkNoYW5nZXMsIE9uRGVzdHJveSB7XHJcblx0QElucHV0KCkgcGhvdG9zOiBJU2xpY2tQaG90b0dhbGxlcnlNb2RlbFtdO1xyXG5cdEBJbnB1dCgpIGZpbGVzOiBJU2xpY2tGaWxlTW9kZWxbXTtcclxuXHJcblx0QFZpZXdDaGlsZChcImNvbnRhaW5lclJlZlwiKSBjb250YWluZXJSZWY6IEVsZW1lbnRSZWY7XHJcblxyXG5cdEBIb3N0TGlzdGVuZXIoJ3dpbmRvdzprZXlkb3duJywgWyckZXZlbnQnXSlcclxuXHRhc3luYyBvblJlc2l6ZShlOiBLZXlib2FyZEV2ZW50KSB7XHJcblx0XHRpZiAoZS53aGljaCA9PT0gMzkpXHJcblx0XHRcdHRoaXMubmV4dFBob3RvKCk7XHJcblx0XHRlbHNlIGlmIChlLndoaWNoID09PSAzNylcclxuXHRcdFx0dGhpcy5wcmV2aW91c1Bob3RvKCk7XHJcblx0XHRlbHNlIGlmIChlLndoaWNoID09PSAyNylcclxuXHRcdFx0dGhpcy5jbG9zZVdpbmRvdygpO1xyXG5cdH1cclxuXHJcblx0aXNWaXNpYmxlOiBib29sZWFuID0gZmFsc2U7XHJcblx0aXNQaG90b0dhbGxlcnlWaXNpYmxlOiBib29sZWFuID0gZmFsc2U7XHJcblx0c2VsZWN0ZWRQaG90bzogSVNsaWNrUGhvdG9HYWxsZXJ5TW9kZWwgPSBudWxsO1xyXG5cdHZpc2libGVJbmRleDogbnVtYmVyID0gMDtcclxuXHJcblx0Y29uc3RydWN0b3IocHJpdmF0ZSBjaGFuZ2VEZXRlY3RvcjogQ2hhbmdlRGV0ZWN0b3JSZWYpIHsgfVxyXG5cclxuXHRuZ09uRGVzdHJveSgpIHtcclxuXHRcdC8vIEl0J3MgZmluZSBpZiB0aGlzIGZhaWxzLiAgSXQganVzdCBtZWFucyBpdCB3YXMgcmVtb3ZlZCBlbHNld2hlcmVcclxuXHRcdHRyeSB7XHJcblx0XHRcdGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQodGhpcy5jb250YWluZXJSZWYubmF0aXZlRWxlbWVudCk7XHJcblx0XHR9XHJcblx0XHRjYXRjaCB7IH1cclxuXHR9XHJcblxyXG5cdG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpIHtcclxuXHRcdGlmIChjaGFuZ2VzLmZpbGVzKSB7XHJcblx0XHRcdHRoaXMucGhvdG9zID0gW107XHJcblx0XHRcdGlmIChjaGFuZ2VzLmZpbGVzLmN1cnJlbnRWYWx1ZSkge1xyXG5cdFx0XHRcdHRoaXMucGhvdG9zID0gY2hhbmdlcy5maWxlcy5jdXJyZW50VmFsdWUubWFwKChmKSA9PiB7XHJcblx0XHRcdFx0XHRsZXQgcGhvdG9Nb2RlbCA9IG5ldyBTbGlja1Bob3RvR2FsbGVyeU1vZGVsKCk7XHJcblx0XHRcdFx0XHRwaG90b01vZGVsLnBob3RvVXJsID0gZi5iYXNlNjRJbWFnZSB8fCBmLnVybDtcclxuXHRcdFx0XHRcdHBob3RvTW9kZWwudGl0bGUgPSBmLnRpdGxlO1xyXG5cdFx0XHRcdFx0cmV0dXJuIHBob3RvTW9kZWw7XHJcblx0XHRcdFx0fSk7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdGFzeW5jIHNob3dQaG90b0dhbGxlcnkodmlzaWJsZUluZGV4OiBudW1iZXIgPSAwKSB7XHJcblx0XHR0aGlzLmlzVmlzaWJsZSA9IHRydWU7XHJcblxyXG5cdFx0dGhpcy5jaGFuZ2VEZXRlY3Rvci5kZXRlY3RDaGFuZ2VzKCk7XHJcblxyXG5cdFx0ZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZCh0aGlzLmNvbnRhaW5lclJlZi5uYXRpdmVFbGVtZW50KTtcclxuXHJcblx0XHRhd2FpdCBTbGlja1NsZWVwU2VydmljZS5zbGVlcCgpO1xyXG5cdFx0dGhpcy5pc1Bob3RvR2FsbGVyeVZpc2libGUgPSB0cnVlO1xyXG5cclxuXHRcdHRoaXMudmlzaWJsZUluZGV4ID0gdmlzaWJsZUluZGV4O1xyXG5cdFx0aWYgKHRoaXMucGhvdG9zICYmIHRoaXMucGhvdG9zLmxlbmd0aCA+IDApXHJcblx0XHRcdHRoaXMuc2VsZWN0ZWRQaG90byA9IHRoaXMucGhvdG9zW3RoaXMudmlzaWJsZUluZGV4XTtcclxuXHR9XHJcblxyXG5cdGhpZGVQaG90b0dhbGxlcnkoKSB7XHJcblx0XHQvLyBJdCdzIGZpbmUgaWYgdGhpcyBmYWlscy4gIEl0IGp1c3QgbWVhbnMgaXQgd2FzIHJlbW92ZWQgZWxzZXdoZXJlXHJcblx0XHR0cnkge1xyXG5cdFx0XHRkb2N1bWVudC5ib2R5LnJlbW92ZUNoaWxkKHRoaXMuY29udGFpbmVyUmVmLm5hdGl2ZUVsZW1lbnQpO1xyXG5cdFx0fVxyXG5cdFx0Y2F0Y2ggeyB9XHJcblxyXG5cdFx0dGhpcy5pc1Zpc2libGUgPSBmYWxzZTtcclxuXHR9XHJcblxyXG5cdHByZXZpb3VzUGhvdG8oKSB7XHJcblx0XHRpZiAodGhpcy52aXNpYmxlSW5kZXggPT09IDApXHJcblx0XHRcdHRoaXMudmlzaWJsZUluZGV4ID0gdGhpcy5waG90b3MubGVuZ3RoIC0gMTtcclxuXHRcdGVsc2VcclxuXHRcdFx0dGhpcy52aXNpYmxlSW5kZXgtLTtcclxuXHJcblx0XHR0aGlzLnNlbGVjdGVkUGhvdG8gPSB0aGlzLnBob3Rvc1t0aGlzLnZpc2libGVJbmRleF07XHJcblx0fVxyXG5cclxuXHRuZXh0UGhvdG8oKSB7XHJcblx0XHRpZiAodGhpcy52aXNpYmxlSW5kZXggPT09IHRoaXMucGhvdG9zLmxlbmd0aCAtIDEpXHJcblx0XHRcdHRoaXMudmlzaWJsZUluZGV4ID0gMDtcclxuXHRcdGVsc2VcclxuXHRcdFx0dGhpcy52aXNpYmxlSW5kZXgrKztcclxuXHJcblx0XHR0aGlzLnNlbGVjdGVkUGhvdG8gPSB0aGlzLnBob3Rvc1t0aGlzLnZpc2libGVJbmRleF07XHJcblx0fVxyXG5cclxuXHRzZXRQb3NpdGlvbihpZHg6IG51bWJlcikge1xyXG5cdFx0dGhpcy52aXNpYmxlSW5kZXggPSBpZHg7XHJcblx0XHR0aGlzLnNlbGVjdGVkUGhvdG8gPSB0aGlzLnBob3Rvc1t0aGlzLnZpc2libGVJbmRleF07XHJcblx0fVxyXG5cclxuXHRjbG9zZVdpbmRvdygpIHtcclxuXHRcdHRoaXMuaGlkZVBob3RvR2FsbGVyeSgpO1xyXG5cdH1cclxufSIsIjxkaXYgI2NvbnRhaW5lclJlZiAqbmdJZj1cImlzVmlzaWJsZSA9PT0gdHJ1ZVwiIGNsYXNzPSdzbGljay1waG90by1nYWxsZXJ5Jz5cclxuXHQ8ZGl2IGNsYXNzPVwic2xpY2stcGhvdG8tZ2FsbGVyeV9vdmVybGF5XCIgKGNsaWNrKT1cImNsb3NlV2luZG93KClcIiBbbmdDbGFzc109XCJ7J3Zpc2libGUnOiBpc1Bob3RvR2FsbGVyeVZpc2libGUgPT09IHRydWV9XCI+PC9kaXY+XHJcblx0PGRpdiBjbGFzcz1cIm1vZGFsLWNvbnRlbnQgc2xpY2stcGhvdG8tZ2FsbGVyeV9jb250ZW50XCIgc3R5bGU9XCJ3aWR0aDogOTAlOyBtYXJnaW4tbGVmdDogNSU7XCIgKm5nSWY9XCJpc1Bob3RvR2FsbGVyeVZpc2libGUgPT09IHRydWVcIj5cclxuXHRcdDxkaXYgY2xhc3M9XCJtb2RhbC1oZWFkZXIgc2xpY2stcGhvdG8tZ2FsbGVyeV9oZWFkZXJcIj48ZGl2IGNsYXNzPVwiaGVhZGVyLXJpZ2h0XCIgKGNsaWNrKT0nY2xvc2VXaW5kb3coKSc+PGkgY2xhc3M9XCJmYXIgZmEtdGltZXNcIj48L2k+PC9kaXY+PC9kaXY+XHJcblx0XHQ8ZGl2IGNsYXNzPVwibW9kYWwtYm9keVwiPlxyXG5cdFx0XHQ8ZGl2ICpuZ0lmPVwic2VsZWN0ZWRQaG90b1wiIGNsYXNzPSdzbGljay1waG90by1nYWxsZXJ5X3Bob3RvLWNvbnRhaW5lcic+XHJcblx0XHRcdFx0PGltZyBjbGFzcz0nc2xpY2stcGhvdG8tZ2FsbGVyeV9waG90bycgW3NyY109J3NlbGVjdGVkUGhvdG8ucGhvdG9VcmwnIC8+XHJcblx0XHRcdDwvZGl2PlxyXG5cdFx0XHQ8ZGl2IChjbGljayk9J3ByZXZpb3VzUGhvdG8oKScgY2xhc3M9J3NsaWNrLXBob3RvLWdhbGxlcnlfcHJldmlvdXMtcGhvdG8nPjxpIGNsYXNzPSdmYXIgZmEtY2hldnJvbi1sZWZ0Jz48L2k+PC9kaXY+XHJcblx0XHRcdDxkaXYgKGNsaWNrKT0nbmV4dFBob3RvKCknIGNsYXNzPSdzbGljay1waG90by1nYWxsZXJ5X25leHQtcGhvdG8nPjxpIGNsYXNzPSdmYXIgZmEtY2hldnJvbi1yaWdodCc+PC9pPjwvZGl2PlxyXG5cdFx0XHQ8IS0tPGRpdiAqbmdJZj1cInBob3Rvc1wiIGNsYXNzPSdzbGljay1waG90by1nYWxsZXJ5X3Bvc2l0aW9uLWluZGljYXRvcnMnPlxyXG5cdFx0XHRcdDxpIChjbGljayk9J3NldFBvc2l0aW9uKGluZGV4KScgKm5nRm9yPSdsZXQgcGhvdG8gb2YgcGhvdG9zOyBsZXQgaW5kZXggPSBpbmRleCcgW25nQ2xhc3NdPScoaW5kZXggPT09IHZpc2libGVJbmRleCkgPyBcImZhcyBmYS1jaXJjbGVcIiA6IFwiZmFyIGZhLWNpcmNsZVwiJz48L2k+XHJcblx0XHRcdDwvZGl2Pi0tPlxyXG5cdFx0PC9kaXY+XHJcblx0PC9kaXY+XHJcbjwvZGl2PlxyXG4iXX0=
@@ -0,0 +1,21 @@
1
+ import { NgModule } from "@angular/core";
2
+ import { CommonModule } from "@angular/common";
3
+ import { SlickPhotoGalleryComponent } from "./slick-photo-gallery.component";
4
+ import { SlickPhotoGalleryModel } from "./slick-photo-gallery.model";
5
+ import * as i0 from "@angular/core";
6
+ export class SlickPhotoGalleryModule {
7
+ }
8
+ /** @nocollapse */ SlickPhotoGalleryModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.3", ngImport: i0, type: SlickPhotoGalleryModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
9
+ /** @nocollapse */ SlickPhotoGalleryModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.3", ngImport: i0, type: SlickPhotoGalleryModule, declarations: [SlickPhotoGalleryComponent], imports: [CommonModule], exports: [SlickPhotoGalleryComponent] });
10
+ /** @nocollapse */ SlickPhotoGalleryModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.3", ngImport: i0, type: SlickPhotoGalleryModule, imports: [[CommonModule]] });
11
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.3", ngImport: i0, type: SlickPhotoGalleryModule, decorators: [{
12
+ type: NgModule,
13
+ args: [{
14
+ imports: [CommonModule],
15
+ exports: [SlickPhotoGalleryComponent],
16
+ declarations: [SlickPhotoGalleryComponent]
17
+ }]
18
+ }] });
19
+ export { SlickPhotoGalleryComponent };
20
+ export { SlickPhotoGalleryModel };
21
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2xpY2stcGhvdG8tZ2FsbGVyeS5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnRzL3NyYy9zbGljay1waG90by1nYWxsZXJ5L3NsaWNrLXBob3RvLWdhbGxlcnkubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQzdFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDOztBQU9yRSxNQUFNLE9BQU8sdUJBQXVCOzt1SUFBdkIsdUJBQXVCO3dJQUF2Qix1QkFBdUIsaUJBRnBCLDBCQUEwQixhQUYvQixZQUFZLGFBQ1osMEJBQTBCO3dJQUd4Qix1QkFBdUIsWUFKMUIsQ0FBQyxZQUFZLENBQUM7MkZBSVgsdUJBQXVCO2tCQUxuQyxRQUFRO21CQUFDO29CQUNULE9BQU8sRUFBRSxDQUFDLFlBQVksQ0FBQztvQkFDdkIsT0FBTyxFQUFFLENBQUMsMEJBQTBCLENBQUM7b0JBQ3JDLFlBQVksRUFBRSxDQUFDLDBCQUEwQixDQUFDO2lCQUMxQzs7QUFHRCxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsQ0FBQTtBQUNyQyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvbW1vblwiO1xyXG5pbXBvcnQgeyBTbGlja1Bob3RvR2FsbGVyeUNvbXBvbmVudCB9IGZyb20gXCIuL3NsaWNrLXBob3RvLWdhbGxlcnkuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IFNsaWNrUGhvdG9HYWxsZXJ5TW9kZWwgfSBmcm9tIFwiLi9zbGljay1waG90by1nYWxsZXJ5Lm1vZGVsXCI7XHJcblxyXG5ATmdNb2R1bGUoe1xyXG5cdGltcG9ydHM6IFtDb21tb25Nb2R1bGVdLFxyXG5cdGV4cG9ydHM6IFtTbGlja1Bob3RvR2FsbGVyeUNvbXBvbmVudF0sXHJcblx0ZGVjbGFyYXRpb25zOiBbU2xpY2tQaG90b0dhbGxlcnlDb21wb25lbnRdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTbGlja1Bob3RvR2FsbGVyeU1vZHVsZSB7IH1cclxuXHJcbmV4cG9ydCB7IFNsaWNrUGhvdG9HYWxsZXJ5Q29tcG9uZW50IH1cclxuZXhwb3J0IHsgU2xpY2tQaG90b0dhbGxlcnlNb2RlbCB9Il19
@@ -0,0 +1,84 @@
1
+ import { Component, Input, Output, EventEmitter } from "@angular/core";
2
+ import { SlickUtilsService } from "../utils/slick-utils.service";
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "../slick-ordered-list/slick-ordered-list.component";
5
+ export class SlickPickListComponent {
6
+ constructor() {
7
+ this.leftItemsChange = new EventEmitter();
8
+ this.rightItemsChange = new EventEmitter();
9
+ this.leftAnySelected = false;
10
+ this.rightAnySelected = false;
11
+ this.leftSelectedItems = [];
12
+ this.rightSelectedItems = [];
13
+ this.uuid = SlickUtilsService.newGuid();
14
+ }
15
+ onLeftSelectedItemsChange(selectedItems) {
16
+ this.leftSelectedItems = selectedItems || [];
17
+ this.leftAnySelected = (this.leftSelectedItems.length > 0);
18
+ this.rightAnySelected = (this.rightSelectedItems.length > 0);
19
+ }
20
+ onRightSelectedItemsChange(selectedItems) {
21
+ this.rightSelectedItems = selectedItems || [];
22
+ this.leftAnySelected = (this.leftSelectedItems.length > 0);
23
+ this.rightAnySelected = (this.rightSelectedItems.length > 0);
24
+ }
25
+ moveLeft() {
26
+ let rightSelectedUuids = this.rightSelectedItems.map(item => item.uuid);
27
+ rightSelectedUuids.forEach(uuid => {
28
+ let itemIndex = this.rightItems.findIndex(i => i.uuid === uuid);
29
+ let item = this.rightItems.splice(itemIndex, 1)[0];
30
+ this.leftItems.push(item);
31
+ });
32
+ // Angular ngOnChange only works on reference detection. This will create a new array with a new ref
33
+ this.leftItems = this.leftItems.slice();
34
+ this.rightItems = this.rightItems.slice();
35
+ this.rightSelectedItems = [];
36
+ if (this.leftItemsChange)
37
+ this.leftItemsChange.emit(this.leftItems);
38
+ if (this.rightItemsChange)
39
+ this.rightItemsChange.emit(this.rightItems);
40
+ this.leftAnySelected = false;
41
+ this.rightAnySelected = false;
42
+ }
43
+ moveRight() {
44
+ let leftSelectedUuids = this.leftSelectedItems.map(item => item.uuid);
45
+ leftSelectedUuids.forEach(uuid => {
46
+ let itemIndex = this.leftItems.findIndex(i => i.uuid === uuid);
47
+ let item = this.leftItems.splice(itemIndex, 1)[0];
48
+ this.rightItems.push(item);
49
+ });
50
+ // Angular ngOnChange only works on reference detection. This will create a new array with a new ref
51
+ this.rightItems = this.rightItems.slice();
52
+ this.leftItems = this.leftItems.slice();
53
+ this.leftSelectedItems = [];
54
+ if (this.leftItemsChange)
55
+ this.leftItemsChange.emit(this.leftItems);
56
+ if (this.rightItemsChange)
57
+ this.rightItemsChange.emit(this.rightItems);
58
+ this.leftAnySelected = false;
59
+ this.rightAnySelected = false;
60
+ }
61
+ }
62
+ /** @nocollapse */ SlickPickListComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.3", ngImport: i0, type: SlickPickListComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
63
+ /** @nocollapse */ SlickPickListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.3", type: SlickPickListComponent, selector: "slick-pick-list", inputs: { leftItems: "leftItems", leftTitle: "leftTitle", rightItems: "rightItems", rightTitle: "rightTitle", sortOrderFieldName: "sortOrderFieldName", displayFieldName: "displayFieldName" }, outputs: { leftItemsChange: "leftItemsChange", rightItemsChange: "rightItemsChange" }, ngImport: i0, template: "<div class=\"slick-pick-list\" id=\"slick-pick-list_{{uuid}}\">\r\n\t<div class=\"slick-pick-list_left\">\r\n\t\t<slick-ordered-list [(items)]=\"leftItems\" [title]=\"leftTitle\" (selectedItemsChange)=\"onLeftSelectedItemsChange($event)\" [sortOrderFieldName]=\"sortOrderFieldName\" [displayFieldName]=\"displayFieldName\"></slick-ordered-list>\r\n\t</div>\r\n\t<div class=\"slick-pick-list_buttons\">\r\n\t\t<button type=\"button\" class=\"moveLeft btn btn-outline-primary\" (click)=\"moveLeft()\" [disabled]=\"rightAnySelected === false\"><i class=\"far fa-chevron-double-left\"></i></button>\r\n\t\t<button type=\"button\" class=\"moveRight btn btn-outline-primary\" (click)=\"moveRight()\" [disabled]=\"leftAnySelected === false\"><i class=\"far fa-chevron-double-right\"></i></button>\r\n\t</div>\r\n\t<div class=\"slick-pick-list_right\">\r\n\t\t<slick-ordered-list [(items)]=\"rightItems\" [title]=\"rightTitle\" (selectedItemsChange)=\"onRightSelectedItemsChange($event)\" [sortOrderFieldName]=\"sortOrderFieldName\" [displayFieldName]=\"displayFieldName\" buttonAlignment=\"right\"></slick-ordered-list>\r\n\t</div>\r\n\t<br />\r\n</div>", components: [{ type: i1.SlickOrderedListComponent, selector: "slick-ordered-list", inputs: ["items", "title", "sortOrderFieldName", "displayFieldName", "buttonAlignment"], outputs: ["itemsChange", "selectedItemsChange"] }] });
64
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.3", ngImport: i0, type: SlickPickListComponent, decorators: [{
65
+ type: Component,
66
+ args: [{ selector: "slick-pick-list", template: "<div class=\"slick-pick-list\" id=\"slick-pick-list_{{uuid}}\">\r\n\t<div class=\"slick-pick-list_left\">\r\n\t\t<slick-ordered-list [(items)]=\"leftItems\" [title]=\"leftTitle\" (selectedItemsChange)=\"onLeftSelectedItemsChange($event)\" [sortOrderFieldName]=\"sortOrderFieldName\" [displayFieldName]=\"displayFieldName\"></slick-ordered-list>\r\n\t</div>\r\n\t<div class=\"slick-pick-list_buttons\">\r\n\t\t<button type=\"button\" class=\"moveLeft btn btn-outline-primary\" (click)=\"moveLeft()\" [disabled]=\"rightAnySelected === false\"><i class=\"far fa-chevron-double-left\"></i></button>\r\n\t\t<button type=\"button\" class=\"moveRight btn btn-outline-primary\" (click)=\"moveRight()\" [disabled]=\"leftAnySelected === false\"><i class=\"far fa-chevron-double-right\"></i></button>\r\n\t</div>\r\n\t<div class=\"slick-pick-list_right\">\r\n\t\t<slick-ordered-list [(items)]=\"rightItems\" [title]=\"rightTitle\" (selectedItemsChange)=\"onRightSelectedItemsChange($event)\" [sortOrderFieldName]=\"sortOrderFieldName\" [displayFieldName]=\"displayFieldName\" buttonAlignment=\"right\"></slick-ordered-list>\r\n\t</div>\r\n\t<br />\r\n</div>" }]
67
+ }], ctorParameters: function () { return []; }, propDecorators: { leftItems: [{
68
+ type: Input
69
+ }], leftItemsChange: [{
70
+ type: Output
71
+ }], leftTitle: [{
72
+ type: Input
73
+ }], rightItems: [{
74
+ type: Input
75
+ }], rightItemsChange: [{
76
+ type: Output
77
+ }], rightTitle: [{
78
+ type: Input
79
+ }], sortOrderFieldName: [{
80
+ type: Input
81
+ }], displayFieldName: [{
82
+ type: Input
83
+ }] } });
84
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2xpY2stcGljay1saXN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudHMvc3JjL3NsaWNrLXBpY2stbGlzdC9zbGljay1waWNrLWxpc3QuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tcG9uZW50cy9zcmMvc2xpY2stcGljay1saXN0L3NsaWNrLXBpY2stbGlzdC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsWUFBWSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDhCQUE4QixDQUFDOzs7QUFNakUsTUFBTSxPQUFPLHNCQUFzQjtJQWdCbEM7UUFkVSxvQkFBZSxHQUF3QixJQUFJLFlBQVksRUFBRSxDQUFDO1FBRzFELHFCQUFnQixHQUF3QixJQUFJLFlBQVksRUFBRSxDQUFDO1FBTXJFLG9CQUFlLEdBQUcsS0FBSyxDQUFDO1FBQ3hCLHFCQUFnQixHQUFHLEtBQUssQ0FBQztRQUN6QixzQkFBaUIsR0FBVSxFQUFFLENBQUM7UUFDOUIsdUJBQWtCLEdBQVUsRUFBRSxDQUFDO1FBRzlCLElBQUksQ0FBQyxJQUFJLEdBQUcsaUJBQWlCLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDekMsQ0FBQztJQUVELHlCQUF5QixDQUFDLGFBQW9CO1FBQzdDLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxhQUFhLElBQUksRUFBRSxDQUFDO1FBQzdDLElBQUksQ0FBQyxlQUFlLEdBQUcsQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDO1FBQzNELElBQUksQ0FBQyxnQkFBZ0IsR0FBSSxDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUM7SUFD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Q0FBQyxnQkFBZ0I7WUFDeEIsSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7UUFFN0MsSUFBSSxDQUFDLGVBQWUsR0FBRyxLQUFLLENBQUM7UUFDN0IsSUFBSSxDQUFDLGdCQUFnQixHQUFHLEtBQUssQ0FBQztJQUMvQixDQUFDOztzSUE5RVcsc0JBQXNCOzBIQUF0QixzQkFBc0IsOFVDUG5DLDRuQ0FZTTsyRkRMTyxzQkFBc0I7a0JBSmxDLFNBQVM7K0JBQ0MsaUJBQWlCOzBFQUlsQixTQUFTO3NCQUFqQixLQUFLO2dCQUNJLGVBQWU7c0JBQXhCLE1BQU07Z0JBQ0UsU0FBUztzQkFBakIsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUNJLGdCQUFnQjtzQkFBekIsTUFBTTtnQkFDRSxVQUFVO3NCQUFsQixLQUFLO2dCQUNHLGtCQUFrQjtzQkFBMUIsS0FBSztnQkFDRyxnQkFBZ0I7c0JBQXhCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPdXRwdXQsIEV2ZW50RW1pdHRlciB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IFNsaWNrVXRpbHNTZXJ2aWNlIH0gZnJvbSBcIi4uL3V0aWxzL3NsaWNrLXV0aWxzLnNlcnZpY2VcIjtcclxuXHJcbkBDb21wb25lbnQoe1xyXG5cdHNlbGVjdG9yOiBcInNsaWNrLXBpY2stbGlzdFwiLFxyXG5cdHRlbXBsYXRlVXJsOiBcInNsaWNrLXBpY2stbGlzdC5jb21wb25lbnQuaHRtbFwiXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTbGlja1BpY2tMaXN0Q29tcG9uZW50IHtcclxuXHRASW5wdXQoKSBsZWZ0SXRlbXM6IGFueVtdO1xyXG5cdEBPdXRwdXQoKSBsZWZ0SXRlbXNDaGFuZ2U6IEV2ZW50RW1pdHRlcjxhbnlbXT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblx0QElucHV0KCkgbGVmdFRpdGxlOiBzdHJpbmc7XHJcblx0QElucHV0KCkgcmlnaHRJdGVtczogYW55W107XHJcblx0QE91dHB1dCgpIHJpZ2h0SXRlbXNDaGFuZ2U6IEV2ZW50RW1pdHRlcjxhbnlbXT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblx0QElucHV0KCkgcmlnaHRUaXRsZTogc3RyaW5nO1xyXG5cdEBJbnB1dCgpIHNvcnRPcmRlckZpZWxkTmFtZTogc3RyaW5nO1xyXG5cdEBJbnB1dCgpIGRpc3BsYXlGaWVsZE5hbWU6IHN0cmluZztcclxuXHJcblx0dXVpZDogc3RyaW5nO1xyXG5cdGxlZnRBbnlTZWxlY3RlZCA9IGZhbHNlO1xyXG5cdHJpZ2h0QW55U2VsZWN0ZWQgPSBmYWxzZTtcclxuXHRsZWZ0U2VsZWN0ZWRJdGVtczogYW55W10gPSBbXTtcclxuXHRyaWdodFNlbGVjdGVkSXRlbXM6IGFueVtdID0gW107XHJcblx0XHJcblx0Y29uc3RydWN0b3IoKSB7XHJcblx0XHR0aGlzLnV1aWQgPSBTbGlja1V0aWxzU2VydmljZS5uZXdHdWlkKCk7XHJcblx0fVxyXG5cclxuXHRvbkxlZnRTZWxlY3RlZEl0ZW1zQ2hhbmdlKHNlbGVjdGVkSXRlbXM6IGFueVtdKSB7XHJcblx0XHR0aGlzLmxlZnRTZWxlY3RlZEl0ZW1zID0gc2VsZWN0ZWRJdGVtcyB8fCBbXTtcclxuXHRcdHRoaXMubGVmdEFueVNlbGVjdGVkID0gKHRoaXMubGVmdFNlbGVjdGVkSXRlbXMubGVuZ3RoID4gMCk7XHRcdFx0XHJcblx0XHR0aGlzLnJpZ2h0QW55U2VsZWN0ZWQgPSAgKHRoaXMucmlnaHRTZWxlY3RlZEl0ZW1zLmxlbmd0aCA+IDApO1xyXG5cdH1cclxuXHJcblx0b25SaWdodFNlbGVjdGVkSXRlbXNDaGFuZ2Uoc2VsZWN0ZWRJdGVtczogYW55W10pIHtcclxuXHRcdHRoaXMucmlnaHRTZWxlY3RlZEl0ZW1zID0gc2VsZWN0ZWRJdGVtcyB8fCBbXTtcclxuXHRcdHRoaXMubGVmdEFueVNlbGVjdGVkID0gKHRoaXMubGVmdFNlbGVjdGVkSXRlbXMubGVuZ3RoID4gMCk7XHJcblx0XHR0aGlzLnJpZ2h0QW55U2VsZWN0ZWQgPSAodGhpcy5yaWdodFNlbGVjdGVkSXRlbXMubGVuZ3RoID4gMCk7XHJcblx0fVxyXG5cclxuXHRtb3ZlTGVmdCgpIHtcclxuXHRcdGxldCByaWdodFNlbGVjdGVkVXVpZHMgPSB0aGlzLnJpZ2h0U2VsZWN0ZWRJdGVtcy5tYXAoaXRlbSA9PiBpdGVtLnV1aWQpO1xyXG5cdFx0cmlnaHRTZWxlY3RlZFV1aWRzLmZvckVhY2godXVpZCA9PiB7XHJcblx0XHRcdGxldCBpdGVtSW5kZXggPSB0aGlzLnJpZ2h0SXRlbXMuZmluZEluZGV4KGkgPT4gaS51dWlkID09PSB1dWlkKTtcclxuXHRcdFx0bGV0IGl0ZW0gPSB0aGlzLnJpZ2h0SXRlbXMuc3BsaWNlKGl0ZW1JbmRleCwgMSlbMF07XHRcdFx0XHJcblxyXG5cdFx0XHR0aGlzLmxlZnRJdGVtcy5wdXNoKGl0ZW0pO1xyXG5cdFx0fSk7XHJcblx0XHQvLyBBbmd1bGFyIG5nT25DaGFuZ2Ugb25seSB3b3JrcyBvbiByZWZlcmVuY2UgZGV0ZWN0aW9uLiAgVGhpcyB3aWxsIGNyZWF0ZSBhIG5ldyBhcnJheSB3aXRoIGEgbmV3IHJlZlxyXG5cdFx0dGhpcy5sZWZ0SXRlbXMgPSB0aGlzLmxlZnRJdGVtcy5zbGljZSgpO1xyXG5cdFx0dGhpcy5yaWdodEl0ZW1zID0gdGhpcy5yaWdodEl0ZW1zLnNsaWNlKCk7XHJcblxyXG5cdFx0dGhpcy5yaWdodFNlbGVjdGVkSXRlbXMgPSBbXTtcclxuXHJcblx0XHRpZiAodGhpcy5sZWZ0SXRlbXNDaGFuZ2UpXHJcblx0XHRcdHRoaXMubGVmdEl0ZW1zQ2hhbmdlLmVtaXQodGhpcy5sZWZ0SXRlbXMpO1xyXG5cclxuXHRcdGlmICh0aGlzLnJpZ2h0SXRlbXNDaGFuZ2UpXHJcblx0XHRcdHRoaXMucmlnaHRJdGVtc0NoYW5nZS5lbWl0KHRoaXMucmlnaHRJdGVtcyk7XHJcblxyXG5cdFx0dGhpcy5sZWZ0QW55U2VsZWN0ZWQgPSBmYWxzZTtcclxuXHRcdHRoaXMucmlnaHRBbnlTZWxlY3RlZCA9IGZhbHNlO1xyXG5cdH1cclxuXHJcblx0bW92ZVJpZ2h0KCkge1xyXG5cdFx0bGV0IGxlZnRTZWxlY3RlZFV1aWRzID0gdGhpcy5sZWZ0U2VsZWN0ZWRJdGVtcy5tYXAoaXRlbSA9PiBpdGVtLnV1aWQpO1xyXG5cdFx0bGVmdFNlbGVjdGVkVXVpZHMuZm9yRWFjaCh1dWlkID0+IHtcclxuXHRcdFx0bGV0IGl0ZW1JbmRleCA9IHRoaXMubGVmdEl0ZW1zLmZpbmRJbmRleChpID0+IGkudXVpZCA9PT0gdXVpZCk7XHJcblx0XHRcdGxldCBpdGVtID0gdGhpcy5sZWZ0SXRlbXMuc3BsaWNlKGl0ZW1JbmRleCwgMSlbMF07XHJcblxyXG5cdFx0XHR0aGlzLnJpZ2h0SXRlbXMucHVzaChpdGVtKTtcclxuXHRcdH0pO1xyXG5cdFx0Ly8gQW5ndWxhciBuZ09uQ2hhbmdlIG9ubHkgd29ya3Mgb24gcmVmZXJlbmNlIGRldGVjdGlvbi4gIFRoaXMgd2lsbCBjcmVhdGUgYSBuZXcgYXJyYXkgd2l0aCBhIG5ldyByZWZcclxuXHRcdHRoaXMucmlnaHRJdGVtcyA9IHRoaXMucmlnaHRJdGVtcy5zbGljZSgpO1xyXG5cdFx0dGhpcy5sZWZ0SXRlbXMgPSB0aGlzLmxlZnRJdGVtcy5zbGljZSgpO1xyXG5cclxuXHRcdHRoaXMubGVmdFNlbGVjdGVkSXRlbXMgPSBbXTtcclxuXHJcblx0XHRpZiAodGhpcy5sZWZ0SXRlbXNDaGFuZ2UpXHJcblx0XHRcdHRoaXMubGVmdEl0ZW1zQ2hhbmdlLmVtaXQodGhpcy5sZWZ0SXRlbXMpO1xyXG5cclxuXHRcdGlmICh0aGlzLnJpZ2h0SXRlbXNDaGFuZ2UpXHJcblx0XHRcdHRoaXMucmlnaHRJdGVtc0NoYW5nZS5lbWl0KHRoaXMucmlnaHRJdGVtcyk7XHJcblxyXG5cdFx0dGhpcy5sZWZ0QW55U2VsZWN0ZWQgPSBmYWxzZTtcclxuXHRcdHRoaXMucmlnaHRBbnlTZWxlY3RlZCA9IGZhbHNlO1xyXG5cdH1cclxufSIsIjxkaXYgY2xhc3M9XCJzbGljay1waWNrLWxpc3RcIiBpZD1cInNsaWNrLXBpY2stbGlzdF97e3V1aWR9fVwiPlxyXG5cdDxkaXYgY2xhc3M9XCJzbGljay1waWNrLWxpc3RfbGVmdFwiPlxyXG5cdFx0PHNsaWNrLW9yZGVyZWQtbGlzdCBbKGl0ZW1zKV09XCJsZWZ0SXRlbXNcIiBbdGl0bGVdPVwibGVmdFRpdGxlXCIgKHNlbGVjdGVkSXRlbXNDaGFuZ2UpPVwib25MZWZ0U2VsZWN0ZWRJdGVtc0NoYW5nZSgkZXZlbnQpXCIgW3NvcnRPcmRlckZpZWxkTmFtZV09XCJzb3J0T3JkZXJGaWVsZE5hbWVcIiBbZGlzcGxheUZpZWxkTmFtZV09XCJkaXNwbGF5RmllbGROYW1lXCI+PC9zbGljay1vcmRlcmVkLWxpc3Q+XHJcblx0PC9kaXY+XHJcblx0PGRpdiBjbGFzcz1cInNsaWNrLXBpY2stbGlzdF9idXR0b25zXCI+XHJcblx0XHQ8YnV0dG9uIHR5cGU9XCJidXR0b25cIiBjbGFzcz1cIm1vdmVMZWZ0IGJ0biBidG4tb3V0bGluZS1wcmltYXJ5XCIgKGNsaWNrKT1cIm1vdmVMZWZ0KClcIiBbZGlzYWJsZWRdPVwicmlnaHRBbnlTZWxlY3RlZCA9PT0gZmFsc2VcIj48aSBjbGFzcz1cImZhciBmYS1jaGV2cm9uLWRvdWJsZS1sZWZ0XCI+PC9pPjwvYnV0dG9uPlxyXG5cdFx0PGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJtb3ZlUmlnaHQgYnRuIGJ0bi1vdXRsaW5lLXByaW1hcnlcIiAoY2xpY2spPVwibW92ZVJpZ2h0KClcIiBbZGlzYWJsZWRdPVwibGVmdEFueVNlbGVjdGVkID09PSBmYWxzZVwiPjxpIGNsYXNzPVwiZmFyIGZhLWNoZXZyb24tZG91YmxlLXJpZ2h0XCI+PC9pPjwvYnV0dG9uPlxyXG5cdDwvZGl2PlxyXG5cdDxkaXYgY2xhc3M9XCJzbGljay1waWNrLWxpc3RfcmlnaHRcIj5cclxuXHRcdDxzbGljay1vcmRlcmVkLWxpc3QgWyhpdGVtcyldPVwicmlnaHRJdGVtc1wiIFt0aXRsZV09XCJyaWdodFRpdGxlXCIgKHNlbGVjdGVkSXRlbXNDaGFuZ2UpPVwib25SaWdodFNlbGVjdGVkSXRlbXNDaGFuZ2UoJGV2ZW50KVwiIFtzb3J0T3JkZXJGaWVsZE5hbWVdPVwic29ydE9yZGVyRmllbGROYW1lXCIgW2Rpc3BsYXlGaWVsZE5hbWVdPVwiZGlzcGxheUZpZWxkTmFtZVwiIGJ1dHRvbkFsaWdubWVudD1cInJpZ2h0XCI+PC9zbGljay1vcmRlcmVkLWxpc3Q+XHJcblx0PC9kaXY+XHJcblx0PGJyIC8+XHJcbjwvZGl2PiJdfQ==
@@ -0,0 +1,20 @@
1
+ import { NgModule } from "@angular/core";
2
+ import { CommonModule } from "@angular/common";
3
+ import { SlickPickListComponent } from "./slick-pick-list.component";
4
+ import { SlickOrderedListModule } from "../slick-ordered-list/slick-ordered-list.module";
5
+ import * as i0 from "@angular/core";
6
+ export class SlickPickListModule {
7
+ }
8
+ /** @nocollapse */ SlickPickListModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.3", ngImport: i0, type: SlickPickListModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
9
+ /** @nocollapse */ SlickPickListModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.3", ngImport: i0, type: SlickPickListModule, declarations: [SlickPickListComponent], imports: [CommonModule, SlickOrderedListModule], exports: [CommonModule, SlickOrderedListModule, SlickPickListComponent] });
10
+ /** @nocollapse */ SlickPickListModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.3", ngImport: i0, type: SlickPickListModule, imports: [[CommonModule, SlickOrderedListModule], CommonModule, SlickOrderedListModule] });
11
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.3", ngImport: i0, type: SlickPickListModule, decorators: [{
12
+ type: NgModule,
13
+ args: [{
14
+ imports: [CommonModule, SlickOrderedListModule],
15
+ declarations: [SlickPickListComponent],
16
+ exports: [CommonModule, SlickOrderedListModule, SlickPickListComponent]
17
+ }]
18
+ }] });
19
+ export { SlickPickListComponent };
20
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2xpY2stcGljay1saXN0Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudHMvc3JjL3NsaWNrLXBpY2stbGlzdC9zbGljay1waWNrLWxpc3QubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ3JFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLGlEQUFpRCxDQUFDOztBQU96RixNQUFNLE9BQU8sbUJBQW1COzttSUFBbkIsbUJBQW1CO29JQUFuQixtQkFBbUIsaUJBSGhCLHNCQUFzQixhQUQzQixZQUFZLEVBQUUsc0JBQXNCLGFBRXBDLFlBQVksRUFBRSxzQkFBc0IsRUFBRSxzQkFBc0I7b0lBRTFELG1CQUFtQixZQUp0QixDQUFDLFlBQVksRUFBRSxzQkFBc0IsQ0FBQyxFQUVyQyxZQUFZLEVBQUUsc0JBQXNCOzJGQUVsQyxtQkFBbUI7a0JBTC9CLFFBQVE7bUJBQUM7b0JBQ1QsT0FBTyxFQUFFLENBQUMsWUFBWSxFQUFFLHNCQUFzQixDQUFDO29CQUMvQyxZQUFZLEVBQUUsQ0FBQyxzQkFBc0IsQ0FBQztvQkFDdEMsT0FBTyxFQUFFLENBQUMsWUFBWSxFQUFFLHNCQUFzQixFQUFFLHNCQUFzQixDQUFDO2lCQUN2RTs7QUFHRCxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvbW1vblwiO1xyXG5pbXBvcnQgeyBTbGlja1BpY2tMaXN0Q29tcG9uZW50IH0gZnJvbSBcIi4vc2xpY2stcGljay1saXN0LmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBTbGlja09yZGVyZWRMaXN0TW9kdWxlIH0gZnJvbSBcIi4uL3NsaWNrLW9yZGVyZWQtbGlzdC9zbGljay1vcmRlcmVkLWxpc3QubW9kdWxlXCI7XHJcblxyXG5ATmdNb2R1bGUoe1xyXG5cdGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIFNsaWNrT3JkZXJlZExpc3RNb2R1bGVdLFxyXG5cdGRlY2xhcmF0aW9uczogW1NsaWNrUGlja0xpc3RDb21wb25lbnRdLFxyXG5cdGV4cG9ydHM6IFtDb21tb25Nb2R1bGUsIFNsaWNrT3JkZXJlZExpc3RNb2R1bGUsIFNsaWNrUGlja0xpc3RDb21wb25lbnRdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTbGlja1BpY2tMaXN0TW9kdWxlIHsgfVxyXG5cclxuZXhwb3J0IHsgU2xpY2tQaWNrTGlzdENvbXBvbmVudCB9Il19
@@ -0,0 +1,204 @@
1
+ import { Component, Input, ViewChild } from "@angular/core";
2
+ import { SlickSleepService } from "../utils/slick-sleep.service";
3
+ import { SlickUtilsService } from "../utils/slick-utils.service";
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "@angular/common";
6
+ export class SlickPopoverComponent {
7
+ constructor(el) {
8
+ this.el = el;
9
+ this.position = 'right';
10
+ this.hoverDelay = 250;
11
+ this.outDelay = 250;
12
+ this.alignment = "left";
13
+ this.topOffsetPx = 0;
14
+ this.leftOffsetPx = 0;
15
+ this.whiteBackground = false;
16
+ this.showByClick = false;
17
+ this.showArrow = true;
18
+ this.fnReposition = () => this.reposition();
19
+ this.fnDocumentClick = (e) => this.documentClick(e);
20
+ this.fnMouseEnter = () => this.mouseEnter();
21
+ this.fnMouseLeave = () => this.mouseLeave();
22
+ this.isVisible = false;
23
+ this.uuid = SlickUtilsService.newGuid();
24
+ }
25
+ async ngOnChanges(changes) {
26
+ if (changes.topOffsetPx)
27
+ this.topOffsetPx = parseFloat(changes.topOffsetPx.currentValue);
28
+ if (changes.leftOffsetPx)
29
+ this.leftOffsetPx = parseFloat(changes.leftOffsetPx.currentValue);
30
+ if (changes.position) {
31
+ this.containerDivRef.nativeElement.classList.add("hidden");
32
+ this.containerDivRef.nativeElement.classList.remove("visible");
33
+ }
34
+ if (changes.showByClick)
35
+ this.showByClick = (this.showByClick.toString().toLowerCase() === 'true') ? true : false;
36
+ if (changes.whiteBackground && changes.whiteBackground.currentValue)
37
+ this.whiteBackground = (changes.whiteBackground.currentValue.toString().toLowerCase() !== 'false');
38
+ if (changes.showArrow && changes.showArrow.currentValue)
39
+ this.showArrow = (changes.showArrow.currentValue.toString().toLowerCase() !== 'false');
40
+ await SlickSleepService.sleep();
41
+ this.reposition();
42
+ }
43
+ ngAfterViewInit() {
44
+ this.containerDivRef.nativeElement.classList.add("hidden");
45
+ this.containerDivRef.nativeElement.classList.add("showArrow");
46
+ // Remove this from the inline version and put it on the body so that it doesn't hide behind the bottom
47
+ // of a div when it expands beyond the bottom.
48
+ //this.el.nativeElement.remove(this.el);
49
+ document.body.appendChild(this.el.nativeElement);
50
+ // This is necessary, otherwise `this` in the reposition function will be window
51
+ // and not the component.
52
+ // Since angular has no way to use the third parameter, I'm doing this in raw js
53
+ if (this.showByClick === true) {
54
+ document.addEventListener("click", this.fnDocumentClick, true);
55
+ if (!this.element.getAttribute("id"))
56
+ this.element.setAttribute('id', `slick-popover-element_${this.uuid}`);
57
+ this.elementId = this.element.getAttribute("id");
58
+ }
59
+ else {
60
+ this.el.nativeElement.addEventListener("mouseenter", this.fnMouseEnter);
61
+ this.element.addEventListener("mouseenter", this.fnMouseEnter);
62
+ this.el.nativeElement.addEventListener("mouseleave", this.fnMouseLeave);
63
+ this.element.addEventListener("mouseleave", this.fnMouseLeave);
64
+ }
65
+ }
66
+ ngOnDestroy() {
67
+ document.removeEventListener("click", this.fnDocumentClick, true);
68
+ this.el.nativeElement.removeEventListener("mouseenter", this.fnMouseEnter);
69
+ this.element.removeEventListener("mouseenter", this.fnMouseEnter);
70
+ this.el.nativeElement.removeEventListener("mouseleave", this.fnMouseLeave);
71
+ try {
72
+ this.element.removeEventListener("mouseleave", this.fnMouseLeave);
73
+ document.body.removeChild(this.el.nativeElement);
74
+ }
75
+ catch { }
76
+ }
77
+ mouseEnter() {
78
+ clearTimeout(this.displayTimeout);
79
+ clearTimeout(this.leaveTimeout);
80
+ this.displayTimeout = setTimeout(() => {
81
+ this.reposition();
82
+ this.containerDivRef.nativeElement.classList.remove("hidden");
83
+ this.containerDivRef.nativeElement.classList.add("visible");
84
+ }, this.hoverDelay);
85
+ }
86
+ mouseLeave() {
87
+ clearTimeout(this.displayTimeout);
88
+ clearTimeout(this.leaveTimeout);
89
+ this.leaveTimeout = setTimeout(() => {
90
+ this.containerDivRef.nativeElement.classList.add("hidden");
91
+ this.containerDivRef.nativeElement.classList.remove("visible");
92
+ }, this.outDelay);
93
+ }
94
+ async reposition() {
95
+ if (!this.topOffsetPx)
96
+ this.topOffsetPx = 0;
97
+ if (!this.leftOffsetPx)
98
+ this.leftOffsetPx = 0;
99
+ if (this.showArrow === true)
100
+ this.containerDivRef.nativeElement.classList.add("showArrow");
101
+ else if (this.showArrow === false)
102
+ this.containerDivRef.nativeElement.classList.remove("showArrow");
103
+ if (this.whiteBackground === true)
104
+ this.containerDivRef.nativeElement.classList.add("whiteBackground");
105
+ else if (this.whiteBackground === false)
106
+ this.containerDivRef.nativeElement.classList.remove("whiteBackground");
107
+ let targetRect = this.element.getBoundingClientRect();
108
+ let targetLeft = targetRect.left;
109
+ let targetTop = targetRect.top;
110
+ let targetHeight = this.element.offsetHeight;
111
+ let targetWidth = targetRect.width;
112
+ let popoverHeight = this.popoverContentRef.nativeElement.offsetHeight;
113
+ let popoverWidth = this.popoverContentRef.nativeElement.getBoundingClientRect().width;
114
+ if (this.showArrow) {
115
+ popoverWidth += 5;
116
+ }
117
+ if (this.position === 'left') {
118
+ this.top = (targetTop + this.topOffsetPx);
119
+ this.left = (targetLeft - popoverWidth - 3 + this.leftOffsetPx);
120
+ if (this.showArrow)
121
+ this.left -= 2;
122
+ }
123
+ else if (this.position === 'right') {
124
+ this.top = (targetTop + this.topOffsetPx);
125
+ this.left = (targetLeft + targetWidth - 7 + this.leftOffsetPx);
126
+ if (this.showArrow)
127
+ this.left += 7;
128
+ }
129
+ else if (this.position === 'top') {
130
+ this.top = (targetTop - popoverHeight - 3 + this.topOffsetPx);
131
+ this.left = (targetLeft + this.leftOffsetPx);
132
+ // default to left aligned
133
+ this.left = (targetLeft + this.leftOffsetPx);
134
+ if (this.alignment && this.alignment.toLowerCase() === 'right')
135
+ this.left = targetLeft + targetWidth - popoverWidth - 4 + this.leftOffsetPx;
136
+ if (this.showArrow)
137
+ this.top -= 7;
138
+ }
139
+ else if (this.position === 'bottom') {
140
+ this.top = (targetTop + targetHeight - 7 + this.topOffsetPx);
141
+ // default to left aligned
142
+ this.left = (targetLeft + this.leftOffsetPx);
143
+ if (this.alignment && this.alignment.toLowerCase() === 'right')
144
+ this.left = targetLeft + targetWidth - popoverWidth - 4 + this.leftOffsetPx;
145
+ if (this.showArrow)
146
+ this.top += 7;
147
+ }
148
+ }
149
+ documentClick(e) {
150
+ if (SlickUtilsService.checkParentIdExists(e.target, this.elementId) === true) {
151
+ if (this.isVisible === true) {
152
+ this.containerDivRef.nativeElement.classList.remove("visible");
153
+ this.containerDivRef.nativeElement.classList.add("hidden");
154
+ this.isVisible = false;
155
+ }
156
+ else {
157
+ this.reposition();
158
+ this.containerDivRef.nativeElement.classList.remove("hidden");
159
+ this.containerDivRef.nativeElement.classList.add("visible");
160
+ this.isVisible = true;
161
+ }
162
+ }
163
+ else {
164
+ if (this.isVisible === true) {
165
+ this.containerDivRef.nativeElement.classList.remove("visible");
166
+ this.containerDivRef.nativeElement.classList.add("hidden");
167
+ this.isVisible = false;
168
+ }
169
+ }
170
+ }
171
+ }
172
+ /** @nocollapse */ SlickPopoverComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.3", ngImport: i0, type: SlickPopoverComponent, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
173
+ /** @nocollapse */ SlickPopoverComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.3", type: SlickPopoverComponent, selector: "slick-popover", inputs: { element: "element", position: "position", hoverDelay: "hoverDelay", outDelay: "outDelay", alignment: "alignment", topOffsetPx: "topOffsetPx", leftOffsetPx: "leftOffsetPx", whiteBackground: "whiteBackground", showByClick: "showByClick", showArrow: "showArrow" }, viewQueries: [{ propertyName: "containerDivRef", first: true, predicate: ["containerDivRef"], descendants: true, static: true }, { propertyName: "popoverContentRef", first: true, predicate: ["popoverContentRef"], descendants: true, static: true }], usesOnChanges: true, ngImport: i0, template: "<div #containerDivRef id=\"slick-popover_{{uuid}}\" class=\"slick-popover slick-popover_{{position}}\" [style.top.px]=\"top\" [style.left.px]=\"left\">\r\n\t<div #popoverContentRef class=\"popover fade bs-popover-{{position}} show\">\r\n\t\t<div *ngIf=\"showArrow === true\" class=\"arrow\"></div>\r\n\t\t<div class=\"popover-body\"><ng-content></ng-content></div>\r\n\t</div>\r\n</div>\r\n", directives: [{ type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
174
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.3", ngImport: i0, type: SlickPopoverComponent, decorators: [{
175
+ type: Component,
176
+ args: [{ selector: 'slick-popover', template: "<div #containerDivRef id=\"slick-popover_{{uuid}}\" class=\"slick-popover slick-popover_{{position}}\" [style.top.px]=\"top\" [style.left.px]=\"left\">\r\n\t<div #popoverContentRef class=\"popover fade bs-popover-{{position}} show\">\r\n\t\t<div *ngIf=\"showArrow === true\" class=\"arrow\"></div>\r\n\t\t<div class=\"popover-body\"><ng-content></ng-content></div>\r\n\t</div>\r\n</div>\r\n" }]
177
+ }], ctorParameters: function () { return [{ type: i0.ElementRef }]; }, propDecorators: { element: [{
178
+ type: Input
179
+ }], position: [{
180
+ type: Input
181
+ }], hoverDelay: [{
182
+ type: Input
183
+ }], outDelay: [{
184
+ type: Input
185
+ }], alignment: [{
186
+ type: Input
187
+ }], topOffsetPx: [{
188
+ type: Input
189
+ }], leftOffsetPx: [{
190
+ type: Input
191
+ }], whiteBackground: [{
192
+ type: Input
193
+ }], showByClick: [{
194
+ type: Input
195
+ }], showArrow: [{
196
+ type: Input
197
+ }], containerDivRef: [{
198
+ type: ViewChild,
199
+ args: ["containerDivRef", { static: true }]
200
+ }], popoverContentRef: [{
201
+ type: ViewChild,
202
+ args: ["popoverContentRef", { static: true }]
203
+ }] } });
204
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2xpY2stcG9wb3Zlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnRzL3NyYy9zbGljay1wb3BvdmVyL3NsaWNrLXBvcG92ZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tcG9uZW50cy9zcmMvc2xpY2stcG9wb3Zlci9zbGljay1wb3BvdmVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUF3QyxTQUFTLEVBQW9DLE1BQU0sZUFBZSxDQUFDO0FBQ3BJLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ2pFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDhCQUE4QixDQUFDOzs7QUFNakUsTUFBTSxPQUFPLHFCQUFxQjtJQTZCakMsWUFBb0IsRUFBYztRQUFkLE9BQUUsR0FBRixFQUFFLENBQVk7UUEzQnpCLGFBQVEsR0FBVyxPQUFPLENBQUM7UUFDM0IsZUFBVSxHQUFXLEdBQUcsQ0FBQztRQUN6QixhQUFRLEdBQVcsR0FBRyxDQUFDO1FBQ3ZCLGNBQVMsR0FBVyxNQUFNLENBQUM7UUFDM0IsZ0JBQVcsR0FBVyxDQUFDLENBQUM7UUFDeEIsaUJBQVksR0FBVyxDQUFDLENBQUM7UUFDekIsb0JBQWUsR0FBWSxLQUFLLENBQUM7UUFDakMsZ0JBQVcsR0FBWSxLQUFLLENBQUM7UUFDN0IsY0FBUyxHQUFZLElBQUksQ0FBQztRQVNuQyxpQkFBWSxHQUFHLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUN2QyxvQkFBZSxHQUFHLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQy9DLGlCQUFZLEdBQUcsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1FBQ3ZDLGlCQUFZLEdBQUcsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1FBSXZDLGNBQVMsR0FBRyxLQUFLLENBQUM7UUFJakIsSUFBSSxDQUFDLElBQUksR0FBRyxpQkFBaUIsQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUN6QyxDQUFDO0lBRUQsS0FBSyxDQUFDLFdBQVcsQ0FBQyxPQUFzQjtRQUN2QyxJQUFJLE9BQU8sQ0FBQyxXQUFXO1lBQ3RCLElBQUksQ0FBQyxXQUFXLEdBQUcsVUFBVSxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUMsWUFBWSxDQUFDLENBQUM7UUFFakUsSUFBSSxPQUFPLENBQUMsWUFBWTtZQUN2QixJQUFJLENBQUMsWUFBWSxHQUFHLFVBQVUsQ0FBQyxPQUFPLENBQUMsWUFBWSxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBRW5FLElBQUksT0FBTyxDQUFDLFFBQVEsRUFBRTtZQUNyQixJQUFJLENBQUMsZUFBZSxDQUFDLGFBQWEsQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQzNELElBQUksQ0FBQyxlQUFlLENBQUMsYUFBYSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7U0FDL0Q7UUFFRCxJQUFJLE9BQU8sQ0FBQyxXQUFXO1lBQ3RCLElBQUksQ0FBQyxXQUFXLEdBQUcsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLFFBQVEsRUFBRSxDQUFDLFdBQVcsRUFBRSxLQUFLLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQztRQUUxRixJQUFJLE9BQU8sQ0FBQyxlQUFlLElBQUksT0FBTyxDQUFDLGVBQWUsQ0FBQyxZQUFZO1lBQ2xFLElBQUksQ0FBQyxlQUFlLEdBQUcsQ0FBQyxPQUFPLENBQUMsZUFBZSxDQUFDLFlBQVksQ0FBQyxRQUFRLEVBQUUsQ0FBQyxXQUFXLEVBQUUsS0FBSyxPQUFPLENBQUMsQ0FBQztRQUVwRyxJQUFJLE9BQU8sQ0FBQyxTQUFTLElBQUksT0FBTyxDQUFDLFNBQVMsQ0FBQyxZQUFZO1lBQ3RELElBQUksQ0FBQyxTQUFTLEdBQUcsQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLFlBQVksQ0FBQyxRQUFRLEVBQUUsQ0FBQyxXQUFXLEVBQUUsS0FBSyxPQUFPLENBQUMsQ0FBQztRQUV4RixNQUFNLGlCQUFpQixDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ2hDLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztJQUNuQixDQUFDO0lBRUQsZUFBZTtRQUNkLElBQUksQ0FBQyxlQUFlLENBQUMsYUFBYSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDM0QsSUFBSSxDQUFDLGVBQWUsQ0FBQyxhQUFhLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUU5RCx1R0FBdUc7UUFDdkcsOENBQThDO1FBQzlDLHdDQUF3QztRQUN4QyxRQUFRLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBRWpELGdGQUFnRjtRQUNoRix5QkFBeUI7UUFDekIsZ0ZBQWdGO1FBQ2hGLElBQUksSUFBSSxDQUFDLFdBQVcsS0FBSyxJQUFJLEVBQUU7WUFDOUIsUUFBUSxDQUFDLGdCQUFnQixDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsZUFBZSxFQUFFLElBQUksQ0FBQyxDQUFDO1lBQy9ELElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUM7Z0JBQ25DLElBQUksQ0FBQyxPQUFPLENBQUMsWUFBWSxDQUFDLElBQUksRUFBRSx5QkFBeUIsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDLENBQUM7WUFFdkUsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUNqRDthQUNJO1lBQ0osSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsZ0JBQWdCLENBQUMsWUFBWSxFQUFFLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQztZQUN4RSxJQUFJLENBQUMsT0FBTyxDQUFDLGdCQUFnQixDQUFDLFlBQVksRUFBRSxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUM7WUFDL0QsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsZ0JBQWdCLENBQUMsWUFBWSxFQUFFLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQztZQUN4RSxJQUFJLENBQUMsT0FBTyxDQUFDLGdCQUFnQixDQUFDLFlBQVksRUFBRSxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUM7U0FDL0Q7SUFDRixDQUFDO0lBRUQsV0FBVztRQUNWLFFBQVEsQ0FBQyxtQkFBbUIsQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLGVBQWUsRUFBRSxJQUFJLENBQUMsQ0FBQztRQUNsRSxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxtQkFBbUIsQ0FBQyxZQUFZLEVBQUUsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQzNFLElBQUksQ0FBQyxPQUFPLENBQUMsbUJBQW1CLENBQUMsWUFBWSxFQUFFLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUNsRSxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxtQkFBbUIsQ0FBQyxZQUFZLEVBQUUsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQzNFLElBQUk7WUFDSCxJQUFJLENBQUMsT0FBTyxDQUFDLG1CQUFtQixDQUFDLFlBQVksRUFBRSxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUM7WUFDbEUsUUFBUSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsQ0FBQztTQUNqRDtRQUNELE1BQU0sR0FBRztJQUNWLENBQUM7SUFFTyxVQUFVO1FBQ2pCLFlBQVksQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUM7UUFDbEMsWUFBWSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUNoQyxJQUFJLENBQUMsY0FBYyxHQUFHLFVBQVUsQ0FBQyxHQUFHLEVBQUU7WUFDckMsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1lBQ2xCLElBQUksQ0FBQyxlQUFlLENBQUMsYUFBYSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDOUQsSUFBSSxDQUFDLGVBQWUsQ0FBQyxhQUFhLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUM3RCxDQUFDLEVBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ3JCLENBQUM7SUFFTyxVQUFVO1FBQ2pCLFlBQVksQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUM7UUFDbEMsWUFBWSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUVoQyxJQUFJLENBQUMsWUFBWSxHQUFHLFVBQVUsQ0FBQyxHQUFHLEVBQUU7WUFDbkMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxhQUFhLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUMzRCxJQUFJLENBQUMsZUFBZSxDQUFDLGFBQWEsQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQ2hFLENBQUMsRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDbkIsQ0FBQztJQUVPLEtBQUssQ0FBQyxVQUFVO1FBQ3ZCLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVztZQUNwQixJQUFJLENBQUMsV0FBVyxHQUFHLENBQUMsQ0FBQztRQUV0QixJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVk7WUFDckIsSUFBSSxDQUFDLFlBQVksR0FBRyxDQUFDLENBQUM7UUFFdkIsSUFBSSxJQUFJLENBQUMsU0FBUyxLQUFLLElBQUk7WUFDMUIsSUFBSSxDQUFDLGVBQWUsQ0FBQyxhQUFhLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxXQUFXLENBQUMsQ0FBQzthQUMxRCxJQUFJLElBQUksQ0FBQyxTQUFTLEtBQUssS0FBSztZQUNoQyxJQUFJLENBQUMsZUFBZSxDQUFDLGFBQWEsQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBRWxFLElBQUksSUFBSSxDQUFDLGVBQWUsS0FBSyxJQUFJO1lBQ2hDLElBQUksQ0FBQyxlQUFlLENBQUMsYUFBYSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsaUJBQWlCLENBQUMsQ0FBQzthQUNoRSxJQUFJLElBQUksQ0FBQyxlQUFlLEtBQUssS0FBSztZQUN0QyxJQUFJLENBQUMsZUFBZSxDQUFDLGFBQWEsQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLGlCQUFpQixDQUFDLENBQUM7UUFHeEUsSUFBSSxVQUFVLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO1FBQ3RELElBQUksVUFBVSxHQUFHLFVBQVUsQ0FBQyxJQUFJLENBQUM7UUFDakMsSUFBSSxTQUFTLEdBQUcsVUFBVSxDQUFDLEdBQUcsQ0FBQztRQUMvQixJQUFJLFlBQVksR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLFlBQVksQ0FBQztRQUM3QyxJQUFJLFdBQVcsR0FBRyxVQUFVLENBQUMsS0FBSyxDQUFDO1FBRW5DLElBQUksYUFBYSxHQUFHLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxhQUFhLENBQUMsWUFBWSxDQUFDO1FBQ3RFLElBQUksWUFBWSxHQUFHLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxhQUFhLENBQUMscUJBQXFCLEVBQUUsQ0FBQyxLQUFLLENBQUM7UUFFdEYsSUFBSSxJQUFJLENBQUMsU0FBUyxFQUFFO1lBQ25CLFlBQVksSUFBSSxDQUFDLENBQUM7U0FDbEI7UUFFRCxJQUFJLElBQUksQ0FBQyxRQUFRLEtBQUssTUFBTSxFQUFFO1lBQzdCLElBQUksQ0FBQyxHQUFHLEdBQUcsQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1lBQzFDLElBQUksQ0FBQyxJQUFJLEdBQUcsQ0FBQyxVQUFVLEdBQUcsWUFBWSxHQUFHLENBQUMsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUM7WUFDaEUsSUFBSSxJQUFJLENBQUMsU0FBUztnQkFDakIsSUFBSSxDQUFDLElBQUksSUFBSSxDQUFDLENBQUM7U0FDaEI7YUFDSSxJQUFJLElBQUksQ0FBQyxRQUFRLEtBQUssT0FBTyxFQUFFO1lBQ25DLElBQUksQ0FBQyxHQUFHLEdBQUcsQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1lBQzFDLElBQUksQ0FBQyxJQUFJLEdBQUcsQ0FBQyxVQUFVLEdBQUcsV0FBVyxHQUFFLENBQUMsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUM7WUFDOUQsSUFBSSxJQUFJLENBQUMsU0FBUztnQkFDakIsSUFBSSxDQUFDLElBQUksSUFBSSxDQUFDLENBQUM7U0FDaEI7YUFDSSxJQUFJLElBQUksQ0FBQyxRQUFRLEtBQUssS0FBSyxFQUFFO1lBQ2pDLElBQUksQ0FBQyxHQUFHLEdBQUcsQ0FBQyxTQUFTLEdBQUcsYUFBYSxHQUFHLENBQUMsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7WUFDOUQsSUFBSSxDQUFDLElBQUksR0FBRyxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUM7WUFDN0MsMEJBQTBCO1lBQzFCLElBQUksQ0FBQyxJQUFJLEdBQUcsQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO1lBQzdDLElBQUksSUFBSSxDQUFDLFNBQVMsSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDLFdBQVcsRUFBRSxLQUFLLE9BQU87Z0JBQzdELElBQUksQ0FBQyxJQUFJLEdBQUcsVUFBVSxHQUFHLFdBQVcsR0FBRyxZQUFZLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUM7WUFFN0UsSUFBSSxJQUFJLENBQUMsU0FBUztnQkFDakIsSUFBSSxDQUFDLEdBQUcsSUFBSSxDQUFDLENBQUM7U0FDZjthQUNJLElBQUksSUFBSSxDQUFDLFFBQVEsS0FBSyxRQUFRLEVBQUU7WUFDcEMsSUFBSSxDQUFDLEdBQUcsR0FBRyxDQUFDLFNBQVMsR0FBRyxZQUFZLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztZQUM3RCwwQkFBMEI7WUFDMUIsSUFBSSxDQUFDLElBQUksR0FBRyxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUM7WUFDN0MsSUFBSSxJQUFJLENBQUMsU0FBUyxJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsV0FBVyxFQUFFLEtBQUssT0FBTztnQkFDN0QsSUFBSSxDQUFDLElBQUksR0FBRyxVQUFVLEdBQUcsV0FBVyxHQUFHLFlBQVksR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQztZQUU3RSxJQUFJLElBQUksQ0FBQyxTQUFTO2dCQUNqQixJQUFJLENBQUMsR0FBRyxJQUFJLENBQUMsQ0FBQztTQUNmO0lBQ0YsQ0FBQztJQUVPLGFBQWEsQ0FBQyxDQUFhO1FBQ2xDLElBQUksaUJBQWlCLENBQUMsbUJBQW1CLENBQWMsQ0FBQyxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssSUFBSSxFQUFFO1lBQzFGLElBQUksSUFBSSxDQUFDLFNBQVMsS0FBSyxJQUFJLEVBQUU7Z0JBQzVCLElBQUksQ0FBQyxlQUFlLENBQUMsYUFBYSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7Z0JBQy9ELElBQUksQ0FBQyxlQUFlLENBQUMsYUFBYSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLENBQUM7Z0JBQzNELElBQUksQ0FBQyxTQUFTLEdBQUcsS0FBSyxDQUFDO2FBQ3ZCO2lCQUNJO2dCQUNKLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztnQkFDbEIsSUFBSSxDQUFDLGVBQWUsQ0FBQyxhQUFhLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQztnQkFDOUQsSUFBSSxDQUFDLGVBQWUsQ0FBQyxhQUFhLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQztnQkFDNUQsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUM7YUFDdEI7U0FDRDthQUNJO1lBQ0osSUFBSSxJQUFJLENBQUMsU0FBUyxLQUFLLElBQUksRUFBRTtnQkFDNUIsSUFBSSxDQUFDLGVBQWUsQ0FBQyxhQUFhLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQztnQkFDL0QsSUFBSSxDQUFDLGVBQWUsQ0FBQyxhQUFhLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsQ0FBQztnQkFDM0QsSUFBSSxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUM7YUFDdkI7U0FDRDtJQUNGLENBQUM7O3FJQTVNVyxxQkFBcUI7eUhBQXJCLHFCQUFxQixtbEJDUmxDLHdZQU1BOzJGREVhLHFCQUFxQjtrQkFKakMsU0FBUzsrQkFDQyxlQUFlO2lHQUloQixPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csZUFBZTtzQkFBdkIsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBRTBDLGVBQWU7c0JBQTlELFNBQVM7dUJBQUMsaUJBQWlCLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFO2dCQUNJLGlCQUFpQjtzQkFBbEUsU0FBUzt1QkFBQyxtQkFBbUIsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3ksIEVsZW1lbnRSZWYsIFZpZXdDaGlsZCwgT25DaGFuZ2VzLCBTaW1wbGVDaGFuZ2VzLCBPbkluaXQgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBTbGlja1NsZWVwU2VydmljZSB9IGZyb20gXCIuLi91dGlscy9zbGljay1zbGVlcC5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7IFNsaWNrVXRpbHNTZXJ2aWNlIH0gZnJvbSBcIi4uL3V0aWxzL3NsaWNrLXV0aWxzLnNlcnZpY2VcIjtcclxuXHJcbkBDb21wb25lbnQoe1xyXG5cdHNlbGVjdG9yOiAnc2xpY2stcG9wb3ZlcicsXHJcblx0dGVtcGxhdGVVcmw6ICdzbGljay1wb3BvdmVyLmNvbXBvbmVudC5odG1sJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgU2xpY2tQb3BvdmVyQ29tcG9uZW50IGltcGxlbWVudHMgT25DaGFuZ2VzLCBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3kge1xyXG5cdEBJbnB1dCgpIGVsZW1lbnQ6IEhUTUxFbGVtZW50O1xyXG5cdEBJbnB1dCgpIHBvc2l0aW9uOiBzdHJpbmcgPSAncmlnaHQnO1xyXG5cdEBJbnB1dCgpIGhvdmVyRGVsYXk6IG51bWJlciA9IDI1MDtcclxuXHRASW5wdXQoKSBvdXREZWxheTogbnVtYmVyID0gMjUwO1xyXG5cdEBJbnB1dCgpIGFsaWdubWVudDogc3RyaW5nID0gXCJsZWZ0XCI7XHJcblx0QElucHV0KCkgdG9wT2Zmc2V0UHg6IG51bWJlciA9IDA7XHJcblx0QElucHV0KCkgbGVmdE9mZnNldFB4OiBudW1iZXIgPSAwO1xyXG5cdEBJbnB1dCgpIHdoaXRlQmFja2dyb3VuZDogYm9vbGVhbiA9IGZhbHNlO1xyXG5cdEBJbnB1dCgpIHNob3dCeUNsaWNrOiBib29sZWFuID0gZmFsc2U7XHJcblx0QElucHV0KCkgc2hvd0Fycm93OiBib29sZWFuID0gdHJ1ZTtcclxuXHJcblx0QFZpZXdDaGlsZChcImNvbnRhaW5lckRpdlJlZlwiLCB7IHN0YXRpYzogdHJ1ZSB9KSBjb250YWluZXJEaXZSZWY6IEVsZW1lbnRSZWY7XHJcblx0QFZpZXdDaGlsZChcInBvcG92ZXJDb250ZW50UmVmXCIsIHsgc3RhdGljOiB0cnVlIH0pIHBvcG92ZXJDb250ZW50UmVmOiBFbGVtZW50UmVmO1xyXG5cdFxyXG5cdHV1aWQ6IHN0cmluZztcclxuXHR0b3A6IG51bWJlcjtcclxuXHRsZWZ0OiBudW1iZXI7XHJcblxyXG5cdGZuUmVwb3NpdGlvbiA9ICgpID0+IHRoaXMucmVwb3NpdGlvbigpO1xyXG5cdGZuRG9jdW1lbnRDbGljayA9IChlKSA9PiB0aGlzLmRvY3VtZW50Q2xpY2soZSk7XHJcblx0Zm5Nb3VzZUVudGVyID0gKCkgPT4gdGhpcy5tb3VzZUVudGVyKCk7XHJcblx0Zm5Nb3VzZUxlYXZlID0gKCkgPT4gdGhpcy5tb3VzZUxlYXZlKCk7XHJcblxyXG5cdGRpc3BsYXlUaW1lb3V0OiBOb2RlSlMuVGltZXI7XHJcblx0bGVhdmVUaW1lb3V0OiBOb2RlSlMuVGltZXI7XHJcblx0aXNWaXNpYmxlID0gZmFsc2U7XHJcblx0ZWxlbWVudElkOiBzdHJpbmc7XHJcblxyXG5cdGNvbnN0cnVjdG9yKHByaXZhdGUgZWw6IEVsZW1lbnRSZWYpIHtcclxuXHRcdHRoaXMudXVpZCA9IFNsaWNrVXRpbHNTZXJ2aWNlLm5ld0d1aWQoKTtcdFx0XHJcblx0fVxyXG5cclxuXHRhc3luYyBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XHJcblx0XHRpZiAoY2hhbmdlcy50b3BPZmZzZXRQeClcclxuXHRcdFx0dGhpcy50b3BPZmZzZXRQeCA9IHBhcnNlRmxvYXQoY2hhbmdlcy50b3BPZmZzZXRQeC5jdXJyZW50VmFsdWUpO1xyXG5cclxuXHRcdGlmIChjaGFuZ2VzLmxlZnRPZmZzZXRQeClcclxuXHRcdFx0dGhpcy5sZWZ0T2Zmc2V0UHggPSBwYXJzZUZsb2F0KGNoYW5nZXMubGVmdE9mZnNldFB4LmN1cnJlbnRWYWx1ZSk7XHJcblxyXG5cdFx0aWYgKGNoYW5nZXMucG9zaXRpb24pIHtcclxuXHRcdFx0dGhpcy5jb250YWluZXJEaXZSZWYubmF0aXZlRWxlbWVudC5jbGFzc0xpc3QuYWRkKFwiaGlkZGVuXCIpO1xyXG5cdFx0XHR0aGlzLmNvbnRhaW5lckRpdlJlZi5uYXRpdmVFbGVtZW50LmNsYXNzTGlzdC5yZW1vdmUoXCJ2aXNpYmxlXCIpO1xyXG5cdFx0fVxyXG5cclxuXHRcdGlmIChjaGFuZ2VzLnNob3dCeUNsaWNrKSBcclxuXHRcdFx0dGhpcy5zaG93QnlDbGljayA9ICh0aGlzLnNob3dCeUNsaWNrLnRvU3RyaW5nKCkudG9Mb3dlckNhc2UoKSA9PT0gJ3RydWUnKSA/IHRydWUgOiBmYWxzZTtcclxuXHJcblx0XHRpZiAoY2hhbmdlcy53aGl0ZUJhY2tncm91bmQgJiYgY2hhbmdlcy53aGl0ZUJhY2tncm91bmQuY3VycmVudFZhbHVlKVxyXG5cdFx0XHR0aGlzLndoaXRlQmFja2dyb3VuZCA9IChjaGFuZ2VzLndoaXRlQmFja2dyb3VuZC5jdXJyZW50VmFsdWUudG9TdHJpbmcoKS50b0xvd2VyQ2FzZSgpICE9PSAnZmFsc2UnKTtcdFx0XHJcblxyXG5cdFx0aWYgKGNoYW5nZXMuc2hvd0Fycm93ICYmIGNoYW5nZXMuc2hvd0Fycm93LmN1cnJlbnRWYWx1ZSlcclxuXHRcdFx0dGhpcy5zaG93QXJyb3cgPSAoY2hhbmdlcy5zaG93QXJyb3cuY3VycmVudFZhbHVlLnRvU3RyaW5nKCkudG9Mb3dlckNhc2UoKSAhPT0gJ2ZhbHNlJyk7XHRcdFxyXG5cclxuXHRcdGF3YWl0IFNsaWNrU2xlZXBTZXJ2aWNlLnNsZWVwKCk7XHJcblx0XHR0aGlzLnJlcG9zaXRpb24oKTtcclxuXHR9XHJcblxyXG5cdG5nQWZ0ZXJWaWV3SW5pdCgpIHtcclxuXHRcdHRoaXMuY29udGFpbmVyRGl2UmVmLm5hdGl2ZUVsZW1lbnQuY2xhc3NMaXN0LmFkZChcImhpZGRlblwiKTtcclxuXHRcdHRoaXMuY29udGFpbmVyRGl2UmVmLm5hdGl2ZUVsZW1lbnQuY2xhc3NMaXN0LmFkZChcInNob3dBcnJvd1wiKTtcclxuXHJcblx0XHQvLyBSZW1vdmUgdGhpcyBmcm9tIHRoZSBpbmxpbmUgdmVyc2lvbiBhbmQgcHV0IGl0IG9uIHRoZSBib2R5IHNvIHRoYXQgaXQgZG9lc24ndCBoaWRlIGJlaGluZCB0aGUgYm90dG9tXHJcblx0XHQvLyBvZiBhIGRpdiB3aGVuIGl0IGV4cGFuZHMgYmV5b25kIHRoZSBib3R0b20uXHJcblx0XHQvL3RoaXMuZWwubmF0aXZlRWxlbWVudC5yZW1vdmUodGhpcy5lbCk7XHJcblx0XHRkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKHRoaXMuZWwubmF0aXZlRWxlbWVudCk7XHJcblxyXG5cdFx0Ly8gVGhpcyBpcyBuZWNlc3NhcnksIG90aGVyd2lzZSBgdGhpc2AgaW4gdGhlIHJlcG9zaXRpb24gZnVuY3Rpb24gd2lsbCBiZSB3aW5kb3dcclxuXHRcdC8vIGFuZCBub3QgdGhlIGNvbXBvbmVudC5cclxuXHRcdC8vIFNpbmNlIGFuZ3VsYXIgaGFzIG5vIHdheSB0byB1c2UgdGhlIHRoaXJkIHBhcmFtZXRlciwgSSdtIGRvaW5nIHRoaXMgaW4gcmF3IGpzXHJcblx0XHRpZiAodGhpcy5zaG93QnlDbGljayA9PT0gdHJ1ZSkge1xyXG5cdFx0XHRkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKFwiY2xpY2tcIiwgdGhpcy5mbkRvY3VtZW50Q2xpY2ssIHRydWUpO1xyXG5cdFx0XHRpZiAoIXRoaXMuZWxlbWVudC5nZXRBdHRyaWJ1dGUoXCJpZFwiKSlcclxuXHRcdFx0XHR0aGlzLmVsZW1lbnQuc2V0QXR0cmlidXRlKCdpZCcsIGBzbGljay1wb3BvdmVyLWVsZW1lbnRfJHt0aGlzLnV1aWR9YCk7XHJcblxyXG5cdFx0XHR0aGlzLmVsZW1lbnRJZCA9IHRoaXMuZWxlbWVudC5nZXRBdHRyaWJ1dGUoXCJpZFwiKTtcclxuXHRcdH1cclxuXHRcdGVsc2Uge1xyXG5cdFx0XHR0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuYWRkRXZlbnRMaXN0ZW5lcihcIm1vdXNlZW50ZXJcIiwgdGhpcy5mbk1vdXNlRW50ZXIpO1xyXG5cdFx0XHR0aGlzLmVsZW1lbnQuYWRkRXZlbnRMaXN0ZW5lcihcIm1vdXNlZW50ZXJcIiwgdGhpcy5mbk1vdXNlRW50ZXIpO1xyXG5cdFx0XHR0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuYWRkRXZlbnRMaXN0ZW5lcihcIm1vdXNlbGVhdmVcIiwgdGhpcy5mbk1vdXNlTGVhdmUpO1xyXG5cdFx0XHR0aGlzLmVsZW1lbnQuYWRkRXZlbnRMaXN0ZW5lcihcIm1vdXNlbGVhdmVcIiwgdGhpcy5mbk1vdXNlTGVhdmUpO1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0bmdPbkRlc3Ryb3koKSB7XHJcblx0XHRkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKFwiY2xpY2tcIiwgdGhpcy5mbkRvY3VtZW50Q2xpY2ssIHRydWUpO1x0XHRcdFxyXG5cdFx0dGhpcy5lbC5uYXRpdmVFbGVtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoXCJtb3VzZWVudGVyXCIsIHRoaXMuZm5Nb3VzZUVudGVyKTtcclxuXHRcdHRoaXMuZWxlbWVudC5yZW1vdmVFdmVudExpc3RlbmVyKFwibW91c2VlbnRlclwiLCB0aGlzLmZuTW91c2VFbnRlcik7XHJcblx0XHR0aGlzLmVsLm5hdGl2ZUVsZW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcihcIm1vdXNlbGVhdmVcIiwgdGhpcy5mbk1vdXNlTGVhdmUpO1xyXG5cdFx0dHJ5IHtcclxuXHRcdFx0dGhpcy5lbGVtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoXCJtb3VzZWxlYXZlXCIsIHRoaXMuZm5Nb3VzZUxlYXZlKTtcclxuXHRcdFx0ZG9jdW1lbnQuYm9keS5yZW1vdmVDaGlsZCh0aGlzLmVsLm5hdGl2ZUVsZW1lbnQpO1xyXG5cdFx0fVxyXG5cdFx0Y2F0Y2ggeyB9XHJcblx0fVxyXG5cclxuXHRwcml2YXRlIG1vdXNlRW50ZXIoKSB7XHJcblx0XHRjbGVhclRpbWVvdXQodGhpcy5kaXNwbGF5VGltZW91dCk7XHJcblx0XHRjbGVhclRpbWVvdXQodGhpcy5sZWF2ZVRpbWVvdXQpO1xyXG5cdFx0dGhpcy5kaXNwbGF5VGltZW91dCA9IHNldFRpbWVvdXQoKCkgPT4ge1xyXG5cdFx0XHR0aGlzLnJlcG9zaXRpb24oKTtcclxuXHRcdFx0dGhpcy5jb250YWluZXJEaXZSZWYubmF0aXZlRWxlbWVudC5jbGFzc0xpc3QucmVtb3ZlKFwiaGlkZGVuXCIpO1xyXG5cdFx0XHR0aGlzLmNvbnRhaW5lckRpdlJlZi5uYXRpdmVFbGVtZW50LmNsYXNzTGlzdC5hZGQoXCJ2aXNpYmxlXCIpO1xyXG5cdFx0fSwgdGhpcy5ob3ZlckRlbGF5KTtcclxuXHR9XHJcblxyXG5cdHByaXZhdGUgbW91c2VMZWF2ZSgpIHtcclxuXHRcdGNsZWFyVGltZW91dCh0aGlzLmRpc3BsYXlUaW1lb3V0KTtcclxuXHRcdGNsZWFyVGltZW91dCh0aGlzLmxlYXZlVGltZW91dCk7XHJcblxyXG5cdFx0dGhpcy5sZWF2ZVRpbWVvdXQgPSBzZXRUaW1lb3V0KCgpID0+IHtcclxuXHRcdFx0dGhpcy5jb250YWluZXJEaXZSZWYubmF0aXZlRWxlbWVudC5jbGFzc0xpc3QuYWRkKFwiaGlkZGVuXCIpO1xyXG5cdFx0XHR0aGlzLmNvbnRhaW5lckRpdlJlZi5uYXRpdmVFbGVtZW50LmNsYXNzTGlzdC5yZW1vdmUoXCJ2aXNpYmxlXCIpO1xyXG5cdFx0fSwgdGhpcy5vdXREZWxheSk7XHJcblx0fVxyXG5cclxuXHRwcml2YXRlIGFzeW5jIHJlcG9zaXRpb24oKSB7XHJcblx0XHRpZiAoIXRoaXMudG9wT2Zmc2V0UHgpXHJcblx0XHRcdHRoaXMudG9wT2Zmc2V0UHggPSAwO1xyXG5cclxuXHRcdGlmICghdGhpcy5sZWZ0T2Zmc2V0UHgpXHJcblx0XHRcdHRoaXMubGVmdE9mZnNldFB4ID0gMDtcclxuXHJcblx0XHRpZiAodGhpcy5zaG93QXJyb3cgPT09IHRydWUpXHJcblx0XHRcdHRoaXMuY29udGFpbmVyRGl2UmVmLm5hdGl2ZUVsZW1lbnQuY2xhc3NMaXN0LmFkZChcInNob3dBcnJvd1wiKTtcclxuXHRcdGVsc2UgaWYgKHRoaXMuc2hvd0Fycm93ID09PSBmYWxzZSlcclxuXHRcdFx0dGhpcy5jb250YWluZXJEaXZSZWYubmF0aXZlRWxlbWVudC5jbGFzc0xpc3QucmVtb3ZlKFwic2hvd0Fycm93XCIpO1xyXG5cclxuXHRcdGlmICh0aGlzLndoaXRlQmFja2dyb3VuZCA9PT0gdHJ1ZSlcclxuXHRcdFx0dGhpcy5jb250YWluZXJEaXZSZWYubmF0aXZlRWxlbWVudC5jbGFzc0xpc3QuYWRkKFwid2hpdGVCYWNrZ3JvdW5kXCIpO1xyXG5cdFx0ZWxzZSBpZiAodGhpcy53aGl0ZUJhY2tncm91bmQgPT09IGZhbHNlKVxyXG5cdFx0XHR0aGlzLmNvbnRhaW5lckRpdlJlZi5uYXRpdmVFbGVtZW50LmNsYXNzTGlzdC5yZW1vdmUoXCJ3aGl0ZUJhY2tncm91bmRcIik7XHJcblxyXG5cclxuXHRcdGxldCB0YXJnZXRSZWN0ID0gdGhpcy5lbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xyXG5cdFx0bGV0IHRhcmdldExlZnQgPSB0YXJnZXRSZWN0LmxlZnQ7XHJcblx0XHRsZXQgdGFyZ2V0VG9wID0gdGFyZ2V0UmVjdC50b3A7XHJcblx0XHRsZXQgdGFyZ2V0SGVpZ2h0ID0gdGhpcy5lbGVtZW50Lm9mZnNldEhlaWdodDtcclxuXHRcdGxldCB0YXJnZXRXaWR0aCA9IHRhcmdldFJlY3Qud2lkdGg7XHJcblxyXG5cdFx0bGV0IHBvcG92ZXJIZWlnaHQgPSB0aGlzLnBvcG92ZXJDb250ZW50UmVmLm5hdGl2ZUVsZW1lbnQub2Zmc2V0SGVpZ2h0O1xyXG5cdFx0bGV0IHBvcG92ZXJXaWR0aCA9IHRoaXMucG9wb3ZlckNvbnRlbnRSZWYubmF0aXZlRWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS53aWR0aDtcclxuXHJcblx0XHRpZiAodGhpcy5zaG93QXJyb3cpIHtcclxuXHRcdFx0cG9wb3ZlcldpZHRoICs9IDU7XHJcblx0XHR9XHJcblxyXG5cdFx0aWYgKHRoaXMucG9zaXRpb24gPT09ICdsZWZ0Jykge1xyXG5cdFx0XHR0aGlzLnRvcCA9ICh0YXJnZXRUb3AgKyB0aGlzLnRvcE9mZnNldFB4KTtcclxuXHRcdFx0dGhpcy5sZWZ0ID0gKHRhcmdldExlZnQgLSBwb3BvdmVyV2lkdGggLSAzICsgdGhpcy5sZWZ0T2Zmc2V0UHgpO1xyXG5cdFx0XHRpZiAodGhpcy5zaG93QXJyb3cpXHJcblx0XHRcdFx0dGhpcy5sZWZ0IC09IDI7XHJcblx0XHR9XHJcblx0XHRlbHNlIGlmICh0aGlzLnBvc2l0aW9uID09PSAncmlnaHQnKSB7XHJcblx0XHRcdHRoaXMudG9wID0gKHRhcmdldFRvcCArIHRoaXMudG9wT2Zmc2V0UHgpO1xyXG5cdFx0XHR0aGlzLmxlZnQgPSAodGFyZ2V0TGVmdCArIHRhcmdldFdpZHRoIC03ICsgdGhpcy5sZWZ0T2Zmc2V0UHgpO1xyXG5cdFx0XHRpZiAodGhpcy5zaG93QXJyb3cpXHJcblx0XHRcdFx0dGhpcy5sZWZ0ICs9IDc7XHJcblx0XHR9XHJcblx0XHRlbHNlIGlmICh0aGlzLnBvc2l0aW9uID09PSAndG9wJykge1xyXG5cdFx0XHR0aGlzLnRvcCA9ICh0YXJnZXRUb3AgLSBwb3BvdmVySGVpZ2h0IC0gMyArIHRoaXMudG9wT2Zmc2V0UHgpO1xyXG5cdFx0XHR0aGlzLmxlZnQgPSAodGFyZ2V0TGVmdCArIHRoaXMubGVmdE9mZnNldFB4KTtcclxuXHRcdFx0Ly8gZGVmYXVsdCB0byBsZWZ0IGFsaWduZWRcclxuXHRcdFx0dGhpcy5sZWZ0ID0gKHRhcmdldExlZnQgKyB0aGlzLmxlZnRPZmZzZXRQeCk7XHJcblx0XHRcdGlmICh0aGlzLmFsaWdubWVudCAmJiB0aGlzLmFsaWdubWVudC50b0xvd2VyQ2FzZSgpID09PSAncmlnaHQnKVxyXG5cdFx0XHRcdHRoaXMubGVmdCA9IHRhcmdldExlZnQgKyB0YXJnZXRXaWR0aCAtIHBvcG92ZXJXaWR0aCAtIDQgKyB0aGlzLmxlZnRPZmZzZXRQeDtcclxuXHJcblx0XHRcdGlmICh0aGlzLnNob3dBcnJvdylcclxuXHRcdFx0XHR0aGlzLnRvcCAtPSA3O1xyXG5cdFx0fVxyXG5cdFx0ZWxzZSBpZiAodGhpcy5wb3NpdGlvbiA9PT0gJ2JvdHRvbScpIHtcdFx0XHRcclxuXHRcdFx0dGhpcy50b3AgPSAodGFyZ2V0VG9wICsgdGFyZ2V0SGVpZ2h0IC0gNyArIHRoaXMudG9wT2Zmc2V0UHgpO1xyXG5cdFx0XHQvLyBkZWZhdWx0IHRvIGxlZnQgYWxpZ25lZFxyXG5cdFx0XHR0aGlzLmxlZnQgPSAodGFyZ2V0TGVmdCArIHRoaXMubGVmdE9mZnNldFB4KTtcclxuXHRcdFx0aWYgKHRoaXMuYWxpZ25tZW50ICYmIHRoaXMuYWxpZ25tZW50LnRvTG93ZXJDYXNlKCkgPT09ICdyaWdodCcpXHJcblx0XHRcdFx0dGhpcy5sZWZ0ID0gdGFyZ2V0TGVmdCArIHRhcmdldFdpZHRoIC0gcG9wb3ZlcldpZHRoIC0gNCArIHRoaXMubGVmdE9mZnNldFB4O1xyXG5cdFx0XHRcclxuXHRcdFx0aWYgKHRoaXMuc2hvd0Fycm93KVxyXG5cdFx0XHRcdHRoaXMudG9wICs9IDc7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHRwcml2YXRlIGRvY3VtZW50Q2xpY2soZTogTW91c2VFdmVudCkge1xyXG5cdFx0aWYgKFNsaWNrVXRpbHNTZXJ2aWNlLmNoZWNrUGFyZW50SWRFeGlzdHMoPEhUTUxFbGVtZW50PmUudGFyZ2V0LCB0aGlzLmVsZW1lbnRJZCkgPT09IHRydWUpIHtcclxuXHRcdFx0aWYgKHRoaXMuaXNWaXNpYmxlID09PSB0cnVlKSB7XHJcblx0XHRcdFx0dGhpcy5jb250YWluZXJEaXZSZWYubmF0aXZlRWxlbWVudC5jbGFzc0xpc3QucmVtb3ZlKFwidmlzaWJsZVwiKTtcclxuXHRcdFx0XHR0aGlzLmNvbnRhaW5lckRpdlJlZi5uYXRpdmVFbGVtZW50LmNsYXNzTGlzdC5hZGQoXCJoaWRkZW5cIik7XHJcblx0XHRcdFx0dGhpcy5pc1Zpc2libGUgPSBmYWxzZTtcclxuXHRcdFx0fVxyXG5cdFx0XHRlbHNlIHtcclxuXHRcdFx0XHR0aGlzLnJlcG9zaXRpb24oKTtcclxuXHRcdFx0XHR0aGlzLmNvbnRhaW5lckRpdlJlZi5uYXRpdmVFbGVtZW50LmNsYXNzTGlzdC5yZW1vdmUoXCJoaWRkZW5cIik7XHJcblx0XHRcdFx0dGhpcy5jb250YWluZXJEaXZSZWYubmF0aXZlRWxlbWVudC5jbGFzc0xpc3QuYWRkKFwidmlzaWJsZVwiKTtcclxuXHRcdFx0XHR0aGlzLmlzVmlzaWJsZSA9IHRydWU7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdGVsc2Uge1xyXG5cdFx0XHRpZiAodGhpcy5pc1Zpc2libGUgPT09IHRydWUpIHtcclxuXHRcdFx0XHR0aGlzLmNvbnRhaW5lckRpdlJlZi5uYXRpdmVFbGVtZW50LmNsYXNzTGlzdC5yZW1vdmUoXCJ2aXNpYmxlXCIpO1xyXG5cdFx0XHRcdHRoaXMuY29udGFpbmVyRGl2UmVmLm5hdGl2ZUVsZW1lbnQuY2xhc3NMaXN0LmFkZChcImhpZGRlblwiKTtcclxuXHRcdFx0XHR0aGlzLmlzVmlzaWJsZSA9IGZhbHNlO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG59XHJcbiIsIjxkaXYgI2NvbnRhaW5lckRpdlJlZiBpZD1cInNsaWNrLXBvcG92ZXJfe3t1dWlkfX1cIiBjbGFzcz1cInNsaWNrLXBvcG92ZXIgc2xpY2stcG9wb3Zlcl97e3Bvc2l0aW9ufX1cIiBbc3R5bGUudG9wLnB4XT1cInRvcFwiIFtzdHlsZS5sZWZ0LnB4XT1cImxlZnRcIj5cclxuXHQ8ZGl2ICNwb3BvdmVyQ29udGVudFJlZiBjbGFzcz1cInBvcG92ZXIgZmFkZSBicy1wb3BvdmVyLXt7cG9zaXRpb259fSBzaG93XCI+XHJcblx0XHQ8ZGl2ICpuZ0lmPVwic2hvd0Fycm93ID09PSB0cnVlXCIgY2xhc3M9XCJhcnJvd1wiPjwvZGl2PlxyXG5cdFx0PGRpdiBjbGFzcz1cInBvcG92ZXItYm9keVwiPjxuZy1jb250ZW50PjwvbmctY29udGVudD48L2Rpdj5cclxuXHQ8L2Rpdj5cclxuPC9kaXY+XHJcbiJdfQ==
@@ -0,0 +1,19 @@
1
+ import { CommonModule } from '@angular/common';
2
+ import { NgModule } from "@angular/core";
3
+ import { SlickPopoverComponent } from "./slick-popover.component";
4
+ import * as i0 from "@angular/core";
5
+ export class SlickPopoverModule {
6
+ }
7
+ /** @nocollapse */ SlickPopoverModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.3", ngImport: i0, type: SlickPopoverModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
8
+ /** @nocollapse */ SlickPopoverModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.3", ngImport: i0, type: SlickPopoverModule, declarations: [SlickPopoverComponent], imports: [CommonModule], exports: [CommonModule, SlickPopoverComponent] });
9
+ /** @nocollapse */ SlickPopoverModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.3", ngImport: i0, type: SlickPopoverModule, imports: [[CommonModule], CommonModule] });
10
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.3", ngImport: i0, type: SlickPopoverModule, decorators: [{
11
+ type: NgModule,
12
+ args: [{
13
+ imports: [CommonModule],
14
+ declarations: [SlickPopoverComponent],
15
+ exports: [CommonModule, SlickPopoverComponent]
16
+ }]
17
+ }] });
18
+ export { SlickPopoverComponent };
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2xpY2stcG9wb3Zlci5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnRzL3NyYy9zbGljay1wb3BvdmVyL3NsaWNrLXBvcG92ZXIubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDJCQUEyQixDQUFDOztBQU9sRSxNQUFNLE9BQU8sa0JBQWtCOztrSUFBbEIsa0JBQWtCO21JQUFsQixrQkFBa0IsaUJBSGYscUJBQXFCLGFBRDFCLFlBQVksYUFFWixZQUFZLEVBQUUscUJBQXFCO21JQUVqQyxrQkFBa0IsWUFKckIsQ0FBQyxZQUFZLENBQUMsRUFFYixZQUFZOzJGQUVWLGtCQUFrQjtrQkFMOUIsUUFBUTttQkFBQztvQkFDVCxPQUFPLEVBQUUsQ0FBQyxZQUFZLENBQUM7b0JBQ3ZCLFlBQVksRUFBRSxDQUFDLHFCQUFxQixDQUFDO29CQUNyQyxPQUFPLEVBQUUsQ0FBQyxZQUFZLEVBQUUscUJBQXFCLENBQUM7aUJBQzlDOztBQUVELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBTbGlja1BvcG92ZXJDb21wb25lbnQgfSBmcm9tIFwiLi9zbGljay1wb3BvdmVyLmNvbXBvbmVudFwiO1xyXG5cclxuQE5nTW9kdWxlKHtcclxuXHRpbXBvcnRzOiBbQ29tbW9uTW9kdWxlXSxcclxuXHRkZWNsYXJhdGlvbnM6IFtTbGlja1BvcG92ZXJDb21wb25lbnRdLFxyXG5cdGV4cG9ydHM6IFtDb21tb25Nb2R1bGUsIFNsaWNrUG9wb3ZlckNvbXBvbmVudF1cclxufSlcclxuZXhwb3J0IGNsYXNzIFNsaWNrUG9wb3Zlck1vZHVsZSB7IH1cclxuZXhwb3J0IHsgU2xpY2tQb3BvdmVyQ29tcG9uZW50IH1cclxuIl19