@agorapulse/ui-components 15.1.31 → 16.0.0-rc.0

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 (386) hide show
  1. package/add-comment/add-comment.component.d.ts +3 -3
  2. package/agorapulse-ui-components-16.0.0-rc.0.tgz +0 -0
  3. package/avatar/avatar.component.d.ts +1 -1
  4. package/button/button.component.d.ts +2 -2
  5. package/checkbox/checkbox.component.d.ts +4 -4
  6. package/confirm-modal/confirm-modal.component.d.ts +2 -2
  7. package/datepicker/datepicker.component.d.ts +7 -7
  8. package/directives/base-button.directive.d.ts +2 -2
  9. package/directives/default-image.directive.d.ts +1 -1
  10. package/directives/ellipsis.directive.d.ts +1 -1
  11. package/directives/equal-validator.directive.d.ts +1 -1
  12. package/directives/frozen-gif.directive.d.ts +2 -2
  13. package/directives/multi-style-text.directive.d.ts +2 -2
  14. package/directives/truncate-tooltip.directive.d.ts +1 -1
  15. package/dots-stepper/dots-stepper.component.d.ts +6 -6
  16. package/esm2022/add-comment/add-comment.component.mjs +68 -0
  17. package/esm2022/avatar/avatar.component.mjs +209 -0
  18. package/esm2022/button/button.component.mjs +109 -0
  19. package/esm2022/checkbox/checkbox.component.mjs +169 -0
  20. package/esm2022/confirm-modal/confirm-modal.component.mjs +61 -0
  21. package/esm2022/datepicker/datepicker.component.mjs +271 -0
  22. package/esm2022/directives/autosize-textarea.directive.mjs +45 -0
  23. package/esm2022/directives/base-button.directive.mjs +47 -0
  24. package/esm2022/directives/default-image.directive.mjs +37 -0
  25. package/esm2022/directives/ellipsis.directive.mjs +90 -0
  26. package/esm2022/directives/equal-validator.directive.mjs +73 -0
  27. package/esm2022/directives/frozen-gif.directive.mjs +125 -0
  28. package/esm2022/directives/multi-style-text.directive.mjs +61 -0
  29. package/esm2022/directives/truncate-tooltip.directive.mjs +43 -0
  30. package/esm2022/dots-stepper/dots-stepper.component.mjs +43 -0
  31. package/esm2022/icon-button/icon-button.component.mjs +118 -0
  32. package/esm2022/index.mjs +42 -0
  33. package/esm2022/infobox/infobox.component.mjs +65 -0
  34. package/esm2022/labels/label-list.component.mjs +106 -0
  35. package/esm2022/labels/label.component.mjs +64 -0
  36. package/esm2022/labels-selector/labels-selector.component.mjs +107 -0
  37. package/esm2022/media-display-overlay/media-display-overlay-dialog.component.mjs +94 -0
  38. package/esm2022/modal/modal.component.mjs +119 -0
  39. package/{esm2020 → esm2022}/neo-datepicker/day-detail.model.mjs +1 -1
  40. package/esm2022/neo-datepicker/day-disabled.pipe.mjs +21 -0
  41. package/esm2022/neo-datepicker/neo-datepicker.component.mjs +243 -0
  42. package/esm2022/notification/notification.component.mjs +15 -0
  43. package/esm2022/paginator/paginator-button/paginator-button.component.mjs +51 -0
  44. package/esm2022/paginator/paginator.component.mjs +126 -0
  45. package/esm2022/password-input/password-input.component.mjs +77 -0
  46. package/esm2022/popmenu/options.mjs +17 -0
  47. package/esm2022/popmenu/popmenu-options.interface.mjs +2 -0
  48. package/esm2022/popmenu/popmenu-options.service.mjs +7 -0
  49. package/esm2022/popmenu/popmenu.component.mjs +384 -0
  50. package/esm2022/popmenu/popmenu.directive.mjs +292 -0
  51. package/esm2022/popmenu/popmenu.module.mjs +29 -0
  52. package/esm2022/radio/radio-control.registry.mjs +102 -0
  53. package/esm2022/radio/radio.component.mjs +218 -0
  54. package/esm2022/slide-toggle/slide-toggle.component.mjs +63 -0
  55. package/esm2022/snackbar/snackbar.component.mjs +27 -0
  56. package/esm2022/snackbars-thread/component/snackbars-thread.component.mjs +75 -0
  57. package/esm2022/snackbars-thread/model/snackbars-thread.model.mjs +54 -0
  58. package/{esm2020 → esm2022}/snackbars-thread/public_api.mjs +2 -2
  59. package/esm2022/snackbars-thread/service/snackbars-thread.service.mjs +45 -0
  60. package/esm2022/snackbars-thread/utils/const/snackbars-thread.const.mjs +13 -0
  61. package/esm2022/social-button/social-button.component.mjs +143 -0
  62. package/esm2022/split-button/split-button.component.mjs +126 -0
  63. package/esm2022/src/lib/agorapulse-ui-components.module.mjs +213 -0
  64. package/esm2022/stepper/stepper.component.mjs +38 -0
  65. package/esm2022/text-measurement/text-measurement.service.mjs +29 -0
  66. package/esm2022/toggle/toggle.component.mjs +203 -0
  67. package/esm2022/tooltip/tooltip.directive.mjs +397 -0
  68. package/esm2022/tooltip/tooltip.service.mjs +29 -0
  69. package/fesm2022/agorapulse-ui-components-add-comment.mjs +75 -0
  70. package/fesm2022/agorapulse-ui-components-add-comment.mjs.map +1 -0
  71. package/fesm2022/agorapulse-ui-components-avatar.mjs +216 -0
  72. package/fesm2022/agorapulse-ui-components-avatar.mjs.map +1 -0
  73. package/fesm2022/agorapulse-ui-components-button.mjs +116 -0
  74. package/fesm2022/agorapulse-ui-components-button.mjs.map +1 -0
  75. package/fesm2022/agorapulse-ui-components-checkbox.mjs +176 -0
  76. package/fesm2022/agorapulse-ui-components-checkbox.mjs.map +1 -0
  77. package/fesm2022/agorapulse-ui-components-confirm-modal.mjs +68 -0
  78. package/fesm2022/agorapulse-ui-components-confirm-modal.mjs.map +1 -0
  79. package/fesm2022/agorapulse-ui-components-datepicker.mjs +278 -0
  80. package/fesm2022/agorapulse-ui-components-datepicker.mjs.map +1 -0
  81. package/{fesm2020 → fesm2022}/agorapulse-ui-components-directives.mjs +104 -72
  82. package/fesm2022/agorapulse-ui-components-directives.mjs.map +1 -0
  83. package/fesm2022/agorapulse-ui-components-dots-stepper.mjs +50 -0
  84. package/fesm2022/agorapulse-ui-components-dots-stepper.mjs.map +1 -0
  85. package/fesm2022/agorapulse-ui-components-icon-button.mjs +125 -0
  86. package/fesm2022/agorapulse-ui-components-icon-button.mjs.map +1 -0
  87. package/fesm2022/agorapulse-ui-components-infobox.mjs +69 -0
  88. package/fesm2022/agorapulse-ui-components-infobox.mjs.map +1 -0
  89. package/fesm2022/agorapulse-ui-components-labels-selector.mjs +114 -0
  90. package/fesm2022/agorapulse-ui-components-labels-selector.mjs.map +1 -0
  91. package/fesm2022/agorapulse-ui-components-labels.mjs +173 -0
  92. package/fesm2022/agorapulse-ui-components-labels.mjs.map +1 -0
  93. package/fesm2022/agorapulse-ui-components-media-display-overlay.mjs +101 -0
  94. package/fesm2022/agorapulse-ui-components-media-display-overlay.mjs.map +1 -0
  95. package/fesm2022/agorapulse-ui-components-modal.mjs +126 -0
  96. package/fesm2022/agorapulse-ui-components-modal.mjs.map +1 -0
  97. package/fesm2022/agorapulse-ui-components-neo-datepicker.mjs +268 -0
  98. package/fesm2022/agorapulse-ui-components-neo-datepicker.mjs.map +1 -0
  99. package/fesm2022/agorapulse-ui-components-notification.mjs +22 -0
  100. package/fesm2022/agorapulse-ui-components-notification.mjs.map +1 -0
  101. package/fesm2022/agorapulse-ui-components-paginator.mjs +181 -0
  102. package/fesm2022/agorapulse-ui-components-paginator.mjs.map +1 -0
  103. package/fesm2022/agorapulse-ui-components-password-input.mjs +84 -0
  104. package/fesm2022/agorapulse-ui-components-password-input.mjs.map +1 -0
  105. package/{fesm2020 → fesm2022}/agorapulse-ui-components-popmenu.mjs +112 -83
  106. package/fesm2022/agorapulse-ui-components-popmenu.mjs.map +1 -0
  107. package/fesm2022/agorapulse-ui-components-radio.mjs +322 -0
  108. package/fesm2022/agorapulse-ui-components-radio.mjs.map +1 -0
  109. package/fesm2022/agorapulse-ui-components-slide-toggle.mjs +70 -0
  110. package/fesm2022/agorapulse-ui-components-slide-toggle.mjs.map +1 -0
  111. package/fesm2022/agorapulse-ui-components-snackbar.mjs +34 -0
  112. package/fesm2022/agorapulse-ui-components-snackbar.mjs.map +1 -0
  113. package/fesm2022/agorapulse-ui-components-snackbars-thread.mjs +190 -0
  114. package/fesm2022/agorapulse-ui-components-snackbars-thread.mjs.map +1 -0
  115. package/fesm2022/agorapulse-ui-components-social-button.mjs +150 -0
  116. package/fesm2022/agorapulse-ui-components-social-button.mjs.map +1 -0
  117. package/fesm2022/agorapulse-ui-components-split-button.mjs +133 -0
  118. package/fesm2022/agorapulse-ui-components-split-button.mjs.map +1 -0
  119. package/fesm2022/agorapulse-ui-components-stepper.mjs +45 -0
  120. package/fesm2022/agorapulse-ui-components-stepper.mjs.map +1 -0
  121. package/{fesm2020 → fesm2022}/agorapulse-ui-components-text-measurement.mjs +8 -7
  122. package/fesm2022/agorapulse-ui-components-text-measurement.mjs.map +1 -0
  123. package/fesm2022/agorapulse-ui-components-toggle.mjs +210 -0
  124. package/fesm2022/agorapulse-ui-components-toggle.mjs.map +1 -0
  125. package/{fesm2020 → fesm2022}/agorapulse-ui-components-tooltip.mjs +114 -75
  126. package/fesm2022/agorapulse-ui-components-tooltip.mjs.map +1 -0
  127. package/{fesm2015 → fesm2022}/agorapulse-ui-components.mjs +100 -103
  128. package/fesm2022/agorapulse-ui-components.mjs.map +1 -0
  129. package/icon-button/icon-button.component.d.ts +3 -3
  130. package/infobox/infobox.component.d.ts +3 -3
  131. package/labels/label-list.component.d.ts +2 -2
  132. package/labels/label.component.d.ts +3 -3
  133. package/labels-selector/labels-selector.component.d.ts +2 -2
  134. package/media-display-overlay/media-display-overlay-dialog.component.d.ts +1 -1
  135. package/modal/modal.component.d.ts +12 -12
  136. package/neo-datepicker/day-detail.model.d.ts +2 -2
  137. package/neo-datepicker/day-disabled.pipe.d.ts +1 -1
  138. package/neo-datepicker/neo-datepicker.component.d.ts +10 -7
  139. package/notification/notification.component.d.ts +1 -1
  140. package/package.json +107 -172
  141. package/paginator/paginator-button/paginator-button.component.d.ts +1 -1
  142. package/paginator/paginator.component.d.ts +1 -1
  143. package/password-input/password-input.component.d.ts +4 -4
  144. package/popmenu/popmenu-options.interface.d.ts +24 -19
  145. package/popmenu/popmenu.component.d.ts +10 -10
  146. package/popmenu/popmenu.directive.d.ts +23 -23
  147. package/radio/radio-control.registry.d.ts +2 -2
  148. package/radio/radio.component.d.ts +2 -2
  149. package/slide-toggle/slide-toggle.component.d.ts +1 -1
  150. package/snackbar/snackbar.component.d.ts +1 -1
  151. package/snackbars-thread/component/snackbars-thread.component.d.ts +2 -2
  152. package/snackbars-thread/model/snackbars-thread.model.d.ts +1 -1
  153. package/snackbars-thread/public_api.d.ts +1 -1
  154. package/snackbars-thread/service/snackbars-thread.service.d.ts +4 -4
  155. package/social-button/social-button.component.d.ts +3 -3
  156. package/split-button/split-button.component.d.ts +3 -3
  157. package/stepper/stepper.component.d.ts +2 -2
  158. package/toggle/toggle.component.d.ts +3 -3
  159. package/tooltip/tooltip.directive.d.ts +5 -5
  160. package/agorapulse-ui-components-15.1.31.tgz +0 -0
  161. package/esm2020/add-comment/add-comment.component.mjs +0 -69
  162. package/esm2020/avatar/avatar.component.mjs +0 -211
  163. package/esm2020/button/button.component.mjs +0 -104
  164. package/esm2020/checkbox/checkbox.component.mjs +0 -163
  165. package/esm2020/confirm-modal/confirm-modal.component.mjs +0 -60
  166. package/esm2020/datepicker/datepicker.component.mjs +0 -259
  167. package/esm2020/directives/autosize-textarea.directive.mjs +0 -44
  168. package/esm2020/directives/base-button.directive.mjs +0 -47
  169. package/esm2020/directives/default-image.directive.mjs +0 -32
  170. package/esm2020/directives/ellipsis.directive.mjs +0 -86
  171. package/esm2020/directives/equal-validator.directive.mjs +0 -66
  172. package/esm2020/directives/frozen-gif.directive.mjs +0 -116
  173. package/esm2020/directives/multi-style-text.directive.mjs +0 -58
  174. package/esm2020/directives/truncate-tooltip.directive.mjs +0 -40
  175. package/esm2020/dots-stepper/dots-stepper.component.mjs +0 -43
  176. package/esm2020/icon-button/icon-button.component.mjs +0 -112
  177. package/esm2020/index.mjs +0 -42
  178. package/esm2020/infobox/infobox.component.mjs +0 -67
  179. package/esm2020/labels/label-list.component.mjs +0 -101
  180. package/esm2020/labels/label.component.mjs +0 -58
  181. package/esm2020/labels-selector/labels-selector.component.mjs +0 -101
  182. package/esm2020/media-display-overlay/media-display-overlay-dialog.component.mjs +0 -94
  183. package/esm2020/modal/modal.component.mjs +0 -109
  184. package/esm2020/neo-datepicker/day-disabled.pipe.mjs +0 -21
  185. package/esm2020/neo-datepicker/neo-datepicker.component.mjs +0 -228
  186. package/esm2020/notification/notification.component.mjs +0 -17
  187. package/esm2020/paginator/paginator-button/paginator-button.component.mjs +0 -51
  188. package/esm2020/paginator/paginator.component.mjs +0 -124
  189. package/esm2020/password-input/password-input.component.mjs +0 -75
  190. package/esm2020/popmenu/options.mjs +0 -17
  191. package/esm2020/popmenu/popmenu-options.interface.mjs +0 -2
  192. package/esm2020/popmenu/popmenu-options.service.mjs +0 -7
  193. package/esm2020/popmenu/popmenu.component.mjs +0 -373
  194. package/esm2020/popmenu/popmenu.directive.mjs +0 -268
  195. package/esm2020/popmenu/popmenu.module.mjs +0 -35
  196. package/esm2020/radio/radio-control.registry.mjs +0 -104
  197. package/esm2020/radio/radio.component.mjs +0 -199
  198. package/esm2020/slide-toggle/slide-toggle.component.mjs +0 -65
  199. package/esm2020/snackbar/snackbar.component.mjs +0 -26
  200. package/esm2020/snackbars-thread/component/snackbars-thread.component.mjs +0 -79
  201. package/esm2020/snackbars-thread/model/snackbars-thread.model.mjs +0 -52
  202. package/esm2020/snackbars-thread/service/snackbars-thread.service.mjs +0 -41
  203. package/esm2020/snackbars-thread/utils/const/snackbars-thread.const.mjs +0 -13
  204. package/esm2020/social-button/social-button.component.mjs +0 -137
  205. package/esm2020/split-button/split-button.component.mjs +0 -112
  206. package/esm2020/src/lib/agorapulse-ui-components.module.mjs +0 -213
  207. package/esm2020/stepper/stepper.component.mjs +0 -36
  208. package/esm2020/text-measurement/text-measurement.service.mjs +0 -28
  209. package/esm2020/toggle/toggle.component.mjs +0 -190
  210. package/esm2020/tooltip/tooltip.directive.mjs +0 -358
  211. package/esm2020/tooltip/tooltip.service.mjs +0 -29
  212. package/fesm2015/agorapulse-ui-components-add-comment.mjs +0 -76
  213. package/fesm2015/agorapulse-ui-components-add-comment.mjs.map +0 -1
  214. package/fesm2015/agorapulse-ui-components-avatar.mjs +0 -218
  215. package/fesm2015/agorapulse-ui-components-avatar.mjs.map +0 -1
  216. package/fesm2015/agorapulse-ui-components-button.mjs +0 -111
  217. package/fesm2015/agorapulse-ui-components-button.mjs.map +0 -1
  218. package/fesm2015/agorapulse-ui-components-checkbox.mjs +0 -170
  219. package/fesm2015/agorapulse-ui-components-checkbox.mjs.map +0 -1
  220. package/fesm2015/agorapulse-ui-components-confirm-modal.mjs +0 -67
  221. package/fesm2015/agorapulse-ui-components-confirm-modal.mjs.map +0 -1
  222. package/fesm2015/agorapulse-ui-components-datepicker.mjs +0 -269
  223. package/fesm2015/agorapulse-ui-components-datepicker.mjs.map +0 -1
  224. package/fesm2015/agorapulse-ui-components-directives.mjs +0 -483
  225. package/fesm2015/agorapulse-ui-components-directives.mjs.map +0 -1
  226. package/fesm2015/agorapulse-ui-components-dots-stepper.mjs +0 -50
  227. package/fesm2015/agorapulse-ui-components-dots-stepper.mjs.map +0 -1
  228. package/fesm2015/agorapulse-ui-components-icon-button.mjs +0 -119
  229. package/fesm2015/agorapulse-ui-components-icon-button.mjs.map +0 -1
  230. package/fesm2015/agorapulse-ui-components-infobox.mjs +0 -71
  231. package/fesm2015/agorapulse-ui-components-infobox.mjs.map +0 -1
  232. package/fesm2015/agorapulse-ui-components-labels-selector.mjs +0 -109
  233. package/fesm2015/agorapulse-ui-components-labels-selector.mjs.map +0 -1
  234. package/fesm2015/agorapulse-ui-components-labels.mjs +0 -162
  235. package/fesm2015/agorapulse-ui-components-labels.mjs.map +0 -1
  236. package/fesm2015/agorapulse-ui-components-media-display-overlay.mjs +0 -103
  237. package/fesm2015/agorapulse-ui-components-media-display-overlay.mjs.map +0 -1
  238. package/fesm2015/agorapulse-ui-components-modal.mjs +0 -116
  239. package/fesm2015/agorapulse-ui-components-modal.mjs.map +0 -1
  240. package/fesm2015/agorapulse-ui-components-neo-datepicker.mjs +0 -253
  241. package/fesm2015/agorapulse-ui-components-neo-datepicker.mjs.map +0 -1
  242. package/fesm2015/agorapulse-ui-components-notification.mjs +0 -24
  243. package/fesm2015/agorapulse-ui-components-notification.mjs.map +0 -1
  244. package/fesm2015/agorapulse-ui-components-paginator.mjs +0 -179
  245. package/fesm2015/agorapulse-ui-components-paginator.mjs.map +0 -1
  246. package/fesm2015/agorapulse-ui-components-password-input.mjs +0 -82
  247. package/fesm2015/agorapulse-ui-components-password-input.mjs.map +0 -1
  248. package/fesm2015/agorapulse-ui-components-popmenu.mjs +0 -698
  249. package/fesm2015/agorapulse-ui-components-popmenu.mjs.map +0 -1
  250. package/fesm2015/agorapulse-ui-components-radio.mjs +0 -306
  251. package/fesm2015/agorapulse-ui-components-radio.mjs.map +0 -1
  252. package/fesm2015/agorapulse-ui-components-slide-toggle.mjs +0 -72
  253. package/fesm2015/agorapulse-ui-components-slide-toggle.mjs.map +0 -1
  254. package/fesm2015/agorapulse-ui-components-snackbar.mjs +0 -35
  255. package/fesm2015/agorapulse-ui-components-snackbar.mjs.map +0 -1
  256. package/fesm2015/agorapulse-ui-components-snackbars-thread.mjs +0 -188
  257. package/fesm2015/agorapulse-ui-components-snackbars-thread.mjs.map +0 -1
  258. package/fesm2015/agorapulse-ui-components-social-button.mjs +0 -144
  259. package/fesm2015/agorapulse-ui-components-social-button.mjs.map +0 -1
  260. package/fesm2015/agorapulse-ui-components-split-button.mjs +0 -119
  261. package/fesm2015/agorapulse-ui-components-split-button.mjs.map +0 -1
  262. package/fesm2015/agorapulse-ui-components-stepper.mjs +0 -44
  263. package/fesm2015/agorapulse-ui-components-stepper.mjs.map +0 -1
  264. package/fesm2015/agorapulse-ui-components-text-measurement.mjs +0 -35
  265. package/fesm2015/agorapulse-ui-components-text-measurement.mjs.map +0 -1
  266. package/fesm2015/agorapulse-ui-components-toggle.mjs +0 -197
  267. package/fesm2015/agorapulse-ui-components-toggle.mjs.map +0 -1
  268. package/fesm2015/agorapulse-ui-components-tooltip.mjs +0 -391
  269. package/fesm2015/agorapulse-ui-components-tooltip.mjs.map +0 -1
  270. package/fesm2015/agorapulse-ui-components.mjs.map +0 -1
  271. package/fesm2020/agorapulse-ui-components-add-comment.mjs +0 -76
  272. package/fesm2020/agorapulse-ui-components-add-comment.mjs.map +0 -1
  273. package/fesm2020/agorapulse-ui-components-avatar.mjs +0 -218
  274. package/fesm2020/agorapulse-ui-components-avatar.mjs.map +0 -1
  275. package/fesm2020/agorapulse-ui-components-button.mjs +0 -111
  276. package/fesm2020/agorapulse-ui-components-button.mjs.map +0 -1
  277. package/fesm2020/agorapulse-ui-components-checkbox.mjs +0 -170
  278. package/fesm2020/agorapulse-ui-components-checkbox.mjs.map +0 -1
  279. package/fesm2020/agorapulse-ui-components-confirm-modal.mjs +0 -67
  280. package/fesm2020/agorapulse-ui-components-confirm-modal.mjs.map +0 -1
  281. package/fesm2020/agorapulse-ui-components-datepicker.mjs +0 -266
  282. package/fesm2020/agorapulse-ui-components-datepicker.mjs.map +0 -1
  283. package/fesm2020/agorapulse-ui-components-directives.mjs.map +0 -1
  284. package/fesm2020/agorapulse-ui-components-dots-stepper.mjs +0 -50
  285. package/fesm2020/agorapulse-ui-components-dots-stepper.mjs.map +0 -1
  286. package/fesm2020/agorapulse-ui-components-icon-button.mjs +0 -119
  287. package/fesm2020/agorapulse-ui-components-icon-button.mjs.map +0 -1
  288. package/fesm2020/agorapulse-ui-components-infobox.mjs +0 -71
  289. package/fesm2020/agorapulse-ui-components-infobox.mjs.map +0 -1
  290. package/fesm2020/agorapulse-ui-components-labels-selector.mjs +0 -108
  291. package/fesm2020/agorapulse-ui-components-labels-selector.mjs.map +0 -1
  292. package/fesm2020/agorapulse-ui-components-labels.mjs +0 -162
  293. package/fesm2020/agorapulse-ui-components-labels.mjs.map +0 -1
  294. package/fesm2020/agorapulse-ui-components-media-display-overlay.mjs +0 -101
  295. package/fesm2020/agorapulse-ui-components-media-display-overlay.mjs.map +0 -1
  296. package/fesm2020/agorapulse-ui-components-modal.mjs +0 -116
  297. package/fesm2020/agorapulse-ui-components-modal.mjs.map +0 -1
  298. package/fesm2020/agorapulse-ui-components-neo-datepicker.mjs +0 -253
  299. package/fesm2020/agorapulse-ui-components-neo-datepicker.mjs.map +0 -1
  300. package/fesm2020/agorapulse-ui-components-notification.mjs +0 -24
  301. package/fesm2020/agorapulse-ui-components-notification.mjs.map +0 -1
  302. package/fesm2020/agorapulse-ui-components-paginator.mjs +0 -179
  303. package/fesm2020/agorapulse-ui-components-paginator.mjs.map +0 -1
  304. package/fesm2020/agorapulse-ui-components-password-input.mjs +0 -82
  305. package/fesm2020/agorapulse-ui-components-password-input.mjs.map +0 -1
  306. package/fesm2020/agorapulse-ui-components-popmenu.mjs.map +0 -1
  307. package/fesm2020/agorapulse-ui-components-radio.mjs +0 -305
  308. package/fesm2020/agorapulse-ui-components-radio.mjs.map +0 -1
  309. package/fesm2020/agorapulse-ui-components-slide-toggle.mjs +0 -72
  310. package/fesm2020/agorapulse-ui-components-slide-toggle.mjs.map +0 -1
  311. package/fesm2020/agorapulse-ui-components-snackbar.mjs +0 -33
  312. package/fesm2020/agorapulse-ui-components-snackbar.mjs.map +0 -1
  313. package/fesm2020/agorapulse-ui-components-snackbars-thread.mjs +0 -188
  314. package/fesm2020/agorapulse-ui-components-snackbars-thread.mjs.map +0 -1
  315. package/fesm2020/agorapulse-ui-components-social-button.mjs +0 -144
  316. package/fesm2020/agorapulse-ui-components-social-button.mjs.map +0 -1
  317. package/fesm2020/agorapulse-ui-components-split-button.mjs +0 -119
  318. package/fesm2020/agorapulse-ui-components-split-button.mjs.map +0 -1
  319. package/fesm2020/agorapulse-ui-components-stepper.mjs +0 -43
  320. package/fesm2020/agorapulse-ui-components-stepper.mjs.map +0 -1
  321. package/fesm2020/agorapulse-ui-components-text-measurement.mjs.map +0 -1
  322. package/fesm2020/agorapulse-ui-components-toggle.mjs +0 -197
  323. package/fesm2020/agorapulse-ui-components-toggle.mjs.map +0 -1
  324. package/fesm2020/agorapulse-ui-components-tooltip.mjs.map +0 -1
  325. package/fesm2020/agorapulse-ui-components.mjs +0 -252
  326. package/fesm2020/agorapulse-ui-components.mjs.map +0 -1
  327. /package/{esm2020 → esm2022}/add-comment/agorapulse-ui-components-add-comment.mjs +0 -0
  328. /package/{esm2020 → esm2022}/add-comment/public_api.mjs +0 -0
  329. /package/{esm2020 → esm2022}/agorapulse-ui-components.mjs +0 -0
  330. /package/{esm2020 → esm2022}/avatar/agorapulse-ui-components-avatar.mjs +0 -0
  331. /package/{esm2020 → esm2022}/avatar/public_api.mjs +0 -0
  332. /package/{esm2020 → esm2022}/button/agorapulse-ui-components-button.mjs +0 -0
  333. /package/{esm2020 → esm2022}/button/public_api.mjs +0 -0
  334. /package/{esm2020 → esm2022}/checkbox/agorapulse-ui-components-checkbox.mjs +0 -0
  335. /package/{esm2020 → esm2022}/checkbox/public_api.mjs +0 -0
  336. /package/{esm2020 → esm2022}/confirm-modal/agorapulse-ui-components-confirm-modal.mjs +0 -0
  337. /package/{esm2020 → esm2022}/confirm-modal/confirm-modal-texts.model.mjs +0 -0
  338. /package/{esm2020 → esm2022}/confirm-modal/public_api.mjs +0 -0
  339. /package/{esm2020 → esm2022}/datepicker/agorapulse-ui-components-datepicker.mjs +0 -0
  340. /package/{esm2020 → esm2022}/datepicker/public_api.mjs +0 -0
  341. /package/{esm2020 → esm2022}/directives/agorapulse-ui-components-directives.mjs +0 -0
  342. /package/{esm2020 → esm2022}/directives/public_api.mjs +0 -0
  343. /package/{esm2020 → esm2022}/dots-stepper/agorapulse-ui-components-dots-stepper.mjs +0 -0
  344. /package/{esm2020 → esm2022}/dots-stepper/public_api.mjs +0 -0
  345. /package/{esm2020 → esm2022}/icon-button/agorapulse-ui-components-icon-button.mjs +0 -0
  346. /package/{esm2020 → esm2022}/icon-button/public_api.mjs +0 -0
  347. /package/{esm2020 → esm2022}/infobox/agorapulse-ui-components-infobox.mjs +0 -0
  348. /package/{esm2020 → esm2022}/infobox/public_api.mjs +0 -0
  349. /package/{esm2020 → esm2022}/labels/agorapulse-ui-components-labels.mjs +0 -0
  350. /package/{esm2020 → esm2022}/labels/public_api.mjs +0 -0
  351. /package/{esm2020 → esm2022}/labels-selector/agorapulse-ui-components-labels-selector.mjs +0 -0
  352. /package/{esm2020 → esm2022}/labels-selector/public_api.mjs +0 -0
  353. /package/{esm2020 → esm2022}/media-display-overlay/agorapulse-ui-components-media-display-overlay.mjs +0 -0
  354. /package/{esm2020 → esm2022}/media-display-overlay/public_api.mjs +0 -0
  355. /package/{esm2020 → esm2022}/modal/agorapulse-ui-components-modal.mjs +0 -0
  356. /package/{esm2020 → esm2022}/modal/public_api.mjs +0 -0
  357. /package/{esm2020 → esm2022}/neo-datepicker/agorapulse-ui-components-neo-datepicker.mjs +0 -0
  358. /package/{esm2020 → esm2022}/neo-datepicker/public_api.mjs +0 -0
  359. /package/{esm2020 → esm2022}/notification/agorapulse-ui-components-notification.mjs +0 -0
  360. /package/{esm2020 → esm2022}/notification/public_api.mjs +0 -0
  361. /package/{esm2020 → esm2022}/paginator/agorapulse-ui-components-paginator.mjs +0 -0
  362. /package/{esm2020 → esm2022}/paginator/public_api.mjs +0 -0
  363. /package/{esm2020 → esm2022}/password-input/agorapulse-ui-components-password-input.mjs +0 -0
  364. /package/{esm2020 → esm2022}/password-input/public_api.mjs +0 -0
  365. /package/{esm2020 → esm2022}/popmenu/agorapulse-ui-components-popmenu.mjs +0 -0
  366. /package/{esm2020 → esm2022}/popmenu/public_api.mjs +0 -0
  367. /package/{esm2020 → esm2022}/radio/agorapulse-ui-components-radio.mjs +0 -0
  368. /package/{esm2020 → esm2022}/radio/public_api.mjs +0 -0
  369. /package/{esm2020 → esm2022}/slide-toggle/agorapulse-ui-components-slide-toggle.mjs +0 -0
  370. /package/{esm2020 → esm2022}/slide-toggle/public_api.mjs +0 -0
  371. /package/{esm2020 → esm2022}/snackbar/agorapulse-ui-components-snackbar.mjs +0 -0
  372. /package/{esm2020 → esm2022}/snackbar/public_api.mjs +0 -0
  373. /package/{esm2020 → esm2022}/snackbars-thread/agorapulse-ui-components-snackbars-thread.mjs +0 -0
  374. /package/{esm2020 → esm2022}/social-button/agorapulse-ui-components-social-button.mjs +0 -0
  375. /package/{esm2020 → esm2022}/social-button/public_api.mjs +0 -0
  376. /package/{esm2020 → esm2022}/split-button/agorapulse-ui-components-split-button.mjs +0 -0
  377. /package/{esm2020 → esm2022}/split-button/public_api.mjs +0 -0
  378. /package/{esm2020 → esm2022}/stepper/agorapulse-ui-components-stepper.mjs +0 -0
  379. /package/{esm2020 → esm2022}/stepper/public_api.mjs +0 -0
  380. /package/{esm2020 → esm2022}/stepper/step.model.mjs +0 -0
  381. /package/{esm2020 → esm2022}/text-measurement/agorapulse-ui-components-text-measurement.mjs +0 -0
  382. /package/{esm2020 → esm2022}/text-measurement/public_api.mjs +0 -0
  383. /package/{esm2020 → esm2022}/toggle/agorapulse-ui-components-toggle.mjs +0 -0
  384. /package/{esm2020 → esm2022}/toggle/public_api.mjs +0 -0
  385. /package/{esm2020 → esm2022}/tooltip/agorapulse-ui-components-tooltip.mjs +0 -0
  386. /package/{esm2020 → esm2022}/tooltip/public_api.mjs +0 -0
@@ -1,358 +0,0 @@
1
- import { Directive, ElementRef, Input, NgZone, TemplateRef, ViewContainerRef, inject } from '@angular/core';
2
- import { TooltipService } from './tooltip.service';
3
- import * as i0 from "@angular/core";
4
- export class TooltipDirective {
5
- constructor() {
6
- this.elementRef = inject(ElementRef);
7
- this.zone = inject(NgZone);
8
- this.viewContainerRef = inject(ViewContainerRef);
9
- this.apTooltipPosition = 'top';
10
- this.apTooltipShowDelay = 80;
11
- this.nativeElement = this.elementRef.nativeElement;
12
- }
13
- ngAfterViewInit() {
14
- this.zone.runOutsideAngular(() => {
15
- this.mouseEnterListener = this.onMouseEnter.bind(this);
16
- this.mouseLeaveListener = this.onMouseLeave.bind(this);
17
- this.clickListener = this.onInputClick.bind(this);
18
- this.nativeElement.addEventListener('mouseenter', this.mouseEnterListener);
19
- this.nativeElement.addEventListener('click', this.clickListener);
20
- this.nativeElement.addEventListener('mouseleave', this.mouseLeaveListener);
21
- });
22
- }
23
- ngOnDestroy() {
24
- if (this.container) {
25
- this.deactivate();
26
- }
27
- this.nativeElement.removeEventListener('mouseenter', this.mouseEnterListener);
28
- this.nativeElement.removeEventListener('click', this.clickListener);
29
- this.nativeElement.removeEventListener('mouseleave', this.mouseLeaveListener);
30
- this.mouseEnterListener = undefined;
31
- this.mouseLeaveListener = undefined;
32
- this.clickListener = undefined;
33
- }
34
- onMouseEnter() {
35
- if (!this.container) {
36
- this.activate();
37
- }
38
- }
39
- onMouseLeave() {
40
- this.deactivate();
41
- }
42
- onInputClick() {
43
- this.deactivate();
44
- }
45
- activate() {
46
- this.clearHideTimeout();
47
- if (this.apTooltipShowDelay) {
48
- this.showTimeout = window.setTimeout(() => {
49
- this.show();
50
- }, this.apTooltipShowDelay);
51
- }
52
- else {
53
- this.show();
54
- }
55
- if (this.apTooltipDuration) {
56
- const duration = this.apTooltipShowDelay ? this.apTooltipDuration + this.apTooltipShowDelay : this.apTooltipDuration;
57
- this.hideTimeout = window.setTimeout(() => {
58
- this.remove();
59
- }, duration);
60
- }
61
- }
62
- deactivate() {
63
- this.clearShowTimeout();
64
- if (this.apTooltipHideDelay) {
65
- this.clearHideTimeout();
66
- this.hideTimeout = window.setTimeout(() => {
67
- this.remove();
68
- }, this.apTooltipHideDelay);
69
- }
70
- else {
71
- this.remove();
72
- }
73
- }
74
- show() {
75
- if (!this.content || this.apTooltipDisabled) {
76
- return;
77
- }
78
- this.create();
79
- this.align();
80
- }
81
- create() {
82
- if (this.container) {
83
- this.clearHideTimeout();
84
- this.remove();
85
- }
86
- this.container = document.createElement('div');
87
- this.container.setAttribute('role', 'tooltip');
88
- const contentContainer = document.createElement('div');
89
- contentContainer.classList.add('ap-content-container');
90
- const svgNamespace = 'http://www.w3.org/2000/svg';
91
- const arrowSvg = document.createElementNS(svgNamespace, 'svg');
92
- arrowSvg.classList.add('ap-tooltip-arrow');
93
- arrowSvg.setAttribute('xmlns', svgNamespace);
94
- arrowSvg.setAttribute('viewBox', '0 0 16 8');
95
- arrowSvg.setAttribute('fill', 'none');
96
- const path = document.createElementNS(svgNamespace, 'path');
97
- path.setAttribute('d', 'M6.68299 1.15238C7.43705 0.492586 8.56296 0.492588 9.31701 1.15238L16 7L0 7L6.68299 1.15238Z');
98
- arrowSvg.appendChild(path);
99
- this.tooltipText = document.createElement('div');
100
- this.tooltipText.className = 'ap-tooltip-text';
101
- this.updateText();
102
- contentContainer.appendChild(this.tooltipText);
103
- contentContainer.appendChild(arrowSvg);
104
- this.container.appendChild(contentContainer);
105
- document.body.appendChild(this.container);
106
- this.container.classList.add('ap-tooltip');
107
- if (this.content instanceof TemplateRef) {
108
- this.container.classList.add('ap-tooltip-custom-template');
109
- }
110
- this.setCssVariables();
111
- }
112
- align() {
113
- switch (this.apTooltipPosition) {
114
- case 'top-left':
115
- this.alignTopLeft();
116
- if (this.isOutOfBounds()) {
117
- this.alignBottom();
118
- if (this.isOutOfBounds()) {
119
- this.alignRight();
120
- if (this.isOutOfBounds()) {
121
- this.alignLeft();
122
- }
123
- }
124
- }
125
- break;
126
- case 'top-right':
127
- this.alignTopRight();
128
- if (this.isOutOfBounds()) {
129
- this.alignBottom();
130
- if (this.isOutOfBounds()) {
131
- this.alignRight();
132
- if (this.isOutOfBounds()) {
133
- this.alignLeft();
134
- }
135
- }
136
- }
137
- break;
138
- case 'top':
139
- this.alignTop();
140
- if (this.isOutOfBounds()) {
141
- this.alignBottom();
142
- if (this.isOutOfBounds()) {
143
- this.alignRight();
144
- if (this.isOutOfBounds()) {
145
- this.alignLeft();
146
- }
147
- }
148
- }
149
- break;
150
- case 'bottom':
151
- this.alignBottom();
152
- if (this.isOutOfBounds()) {
153
- this.alignTop();
154
- if (this.isOutOfBounds()) {
155
- this.alignRight();
156
- if (this.isOutOfBounds()) {
157
- this.alignLeft();
158
- }
159
- }
160
- }
161
- break;
162
- case 'bottom-left':
163
- this.alignBottomLeft();
164
- if (this.isOutOfBounds()) {
165
- this.alignTop();
166
- if (this.isOutOfBounds()) {
167
- this.alignRight();
168
- if (this.isOutOfBounds()) {
169
- this.alignLeft();
170
- }
171
- }
172
- }
173
- break;
174
- case 'bottom-right':
175
- this.alignBottomRight();
176
- if (this.isOutOfBounds()) {
177
- this.alignTop();
178
- if (this.isOutOfBounds()) {
179
- this.alignRight();
180
- if (this.isOutOfBounds()) {
181
- this.alignLeft();
182
- }
183
- }
184
- }
185
- break;
186
- case 'left':
187
- this.alignLeft();
188
- if (this.isOutOfBounds()) {
189
- this.alignRight();
190
- if (this.isOutOfBounds()) {
191
- this.alignTop();
192
- if (this.isOutOfBounds()) {
193
- this.alignBottom();
194
- }
195
- }
196
- }
197
- break;
198
- case 'right':
199
- this.alignRight();
200
- if (this.isOutOfBounds()) {
201
- this.alignLeft();
202
- if (this.isOutOfBounds()) {
203
- this.alignTop();
204
- if (this.isOutOfBounds()) {
205
- this.alignBottom();
206
- }
207
- }
208
- }
209
- break;
210
- }
211
- }
212
- alignRight() {
213
- this.preAlign('right');
214
- const hostOffset = this.getHostOffset();
215
- const left = hostOffset.left + TooltipService.getOuterWidth(this.nativeElement) + TooltipService.defaultOffset;
216
- const top = hostOffset.top + (TooltipService.getOuterHeight(this.nativeElement) - TooltipService.getOuterHeight(this.container)) / 2;
217
- this.container.style.left = left + 'px';
218
- this.container.style.top = top + 'px';
219
- }
220
- alignLeft() {
221
- this.preAlign('left');
222
- const hostOffset = this.getHostOffset();
223
- const left = hostOffset.left - TooltipService.getOuterWidth(this.container) - TooltipService.defaultOffset;
224
- const top = hostOffset.top + (TooltipService.getOuterHeight(this.nativeElement) - TooltipService.getOuterHeight(this.container)) / 2;
225
- this.container.style.left = left + 'px';
226
- this.container.style.top = top + 'px';
227
- }
228
- alignTop() {
229
- this.preAlign('top');
230
- const hostOffset = this.getHostOffset();
231
- const left = hostOffset.left + (TooltipService.getOuterWidth(this.nativeElement) - TooltipService.getOuterWidth(this.container)) / 2;
232
- const top = hostOffset.top - TooltipService.getOuterHeight(this.container) - TooltipService.defaultOffset;
233
- this.container.style.left = left + 'px';
234
- this.container.style.top = top + 'px';
235
- }
236
- alignTopLeft() {
237
- this.preAlign('top-left');
238
- const hostOffset = this.getHostOffset();
239
- const left = hostOffset.left;
240
- const top = hostOffset.top - TooltipService.getOuterHeight(this.container) - TooltipService.defaultOffset;
241
- this.container.style.left = left + 'px';
242
- this.container.style.top = top + 'px';
243
- }
244
- alignTopRight() {
245
- this.preAlign('top-right');
246
- const hostOffset = this.getHostOffset();
247
- const left = hostOffset.left + TooltipService.getOuterWidth(this.nativeElement) - TooltipService.getOuterWidth(this.container);
248
- const top = hostOffset.top - TooltipService.getOuterHeight(this.container) - TooltipService.defaultOffset;
249
- this.container.style.left = left + 'px';
250
- this.container.style.top = top + 'px';
251
- }
252
- alignBottom() {
253
- this.preAlign('bottom');
254
- const hostOffset = this.getHostOffset();
255
- const left = hostOffset.left + (TooltipService.getOuterWidth(this.nativeElement) - TooltipService.getOuterWidth(this.container)) / 2;
256
- const top = hostOffset.top + TooltipService.getOuterHeight(this.nativeElement) + TooltipService.defaultOffset;
257
- this.container.style.left = left + 'px';
258
- this.container.style.top = top + 'px';
259
- }
260
- alignBottomLeft() {
261
- this.preAlign('bottom-left');
262
- const hostOffset = this.getHostOffset();
263
- const left = hostOffset.left;
264
- const top = hostOffset.top + TooltipService.getOuterHeight(this.nativeElement) + TooltipService.defaultOffset;
265
- this.container.style.left = left + 'px';
266
- this.container.style.top = top + 'px';
267
- }
268
- alignBottomRight() {
269
- this.preAlign('bottom-right');
270
- const hostOffset = this.getHostOffset();
271
- const left = hostOffset.left + (TooltipService.getOuterWidth(this.nativeElement) - TooltipService.getOuterWidth(this.container));
272
- const top = hostOffset.top + TooltipService.getOuterHeight(this.nativeElement) + TooltipService.defaultOffset;
273
- this.container.style.left = left + 'px';
274
- this.container.style.top = top + 'px';
275
- }
276
- preAlign(position) {
277
- this.container.style.left = -999 + 'px';
278
- this.container.style.top = -999 + 'px';
279
- const defaultClassName = 'ap-tooltip-' + position;
280
- this.container.classList.add(defaultClassName);
281
- }
282
- getHostOffset() {
283
- const offset = this.nativeElement.getBoundingClientRect();
284
- const targetLeft = offset.left + TooltipService.getWindowScrollLeft();
285
- const targetTop = offset.top + TooltipService.getWindowScrollTop();
286
- return { left: targetLeft, top: targetTop };
287
- }
288
- isOutOfBounds() {
289
- const offset = this.container.getBoundingClientRect();
290
- const targetTop = offset.top;
291
- const targetLeft = offset.left;
292
- const width = TooltipService.getOuterWidth(this.container);
293
- const height = TooltipService.getOuterHeight(this.container);
294
- const viewport = TooltipService.getViewport();
295
- return targetLeft + width > viewport.width || targetLeft < 0 || targetTop < 0 || targetTop + height > viewport.height;
296
- }
297
- remove() {
298
- if (this.container && this.container.parentElement) {
299
- document.body.removeChild(this.container);
300
- }
301
- this.clearTimeouts();
302
- this.container = null;
303
- }
304
- clearShowTimeout() {
305
- if (this.showTimeout) {
306
- clearTimeout(this.showTimeout);
307
- this.showTimeout = null;
308
- }
309
- }
310
- clearHideTimeout() {
311
- if (this.hideTimeout) {
312
- clearTimeout(this.hideTimeout);
313
- this.hideTimeout = null;
314
- }
315
- }
316
- clearTimeouts() {
317
- this.clearShowTimeout();
318
- this.clearHideTimeout();
319
- }
320
- updateText() {
321
- if (this.content instanceof TemplateRef) {
322
- const embeddedViewRef = this.viewContainerRef.createEmbeddedView(this.content);
323
- embeddedViewRef.context = this.apTooltipTemplateContext;
324
- embeddedViewRef.detectChanges();
325
- embeddedViewRef.rootNodes.forEach(node => this.tooltipText.appendChild(node));
326
- }
327
- else {
328
- this.tooltipText.innerHTML = this.content;
329
- }
330
- }
331
- setCssVariables() {
332
- if (this.container) {
333
- this.container.style.setProperty('--ap-tooltip-height', this.container.offsetHeight + 'px');
334
- }
335
- }
336
- }
337
- TooltipDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.2", ngImport: i0, type: TooltipDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
338
- TooltipDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.1.2", type: TooltipDirective, isStandalone: true, selector: "[apTooltip]", inputs: { apTooltipPosition: "apTooltipPosition", content: ["apTooltip", "content"], apTooltipShowDelay: "apTooltipShowDelay", apTooltipHideDelay: "apTooltipHideDelay", apTooltipDuration: "apTooltipDuration", apTooltipDisabled: "apTooltipDisabled", apTooltipTemplateContext: "apTooltipTemplateContext" }, ngImport: i0 });
339
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.2", ngImport: i0, type: TooltipDirective, decorators: [{
340
- type: Directive,
341
- args: [{ selector: '[apTooltip]', standalone: true }]
342
- }], propDecorators: { apTooltipPosition: [{
343
- type: Input
344
- }], content: [{
345
- type: Input,
346
- args: ['apTooltip']
347
- }], apTooltipShowDelay: [{
348
- type: Input
349
- }], apTooltipHideDelay: [{
350
- type: Input
351
- }], apTooltipDuration: [{
352
- type: Input
353
- }], apTooltipDisabled: [{
354
- type: Input
355
- }], apTooltipTemplateContext: [{
356
- type: Input
357
- }] } });
358
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbHRpcC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9saWJzL3VpLWNvbXBvbmVudHMvdG9vbHRpcC9zcmMvdG9vbHRpcC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFpQixTQUFTLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQWEsV0FBVyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN0SSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7O0FBR25ELE1BQU0sT0FBTyxnQkFBZ0I7SUFEN0I7UUFFcUIsZUFBVSxHQUFlLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUM1QyxTQUFJLEdBQVcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQzlCLHFCQUFnQixHQUFxQixNQUFNLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztRQUV0RSxzQkFBaUIsR0FTUixLQUFLLENBQUM7UUFJZix1QkFBa0IsR0FBdUIsRUFBRSxDQUFDO1FBb0JyRCxrQkFBYSxHQUFnQixJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQztLQTRYOUQ7SUF0WEcsZUFBZTtRQUNYLElBQUksQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsR0FBRyxFQUFFO1lBQzdCLElBQUksQ0FBQyxrQkFBa0IsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUN2RCxJQUFJLENBQUMsa0JBQWtCLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDdkQsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUNsRCxJQUFJLENBQUMsYUFBYSxDQUFDLGdCQUFnQixDQUFDLFlBQVksRUFBRSxJ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SUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLGNBQWMsQ0FBQyxhQUFhLENBQUM7UUFDMUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsSUFBSSxHQUFHLElBQUksR0FBRyxJQUFJLENBQUM7UUFDeEMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsR0FBRyxHQUFHLEdBQUcsR0FBRyxJQUFJLENBQUM7SUFDMUMsQ0FBQztJQUVELGFBQWE7UUFDVCxJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQzNCLE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztRQUN4QyxNQUFNLElBQUksR0FBRyxVQUFVLENBQUMsSUFBSSxHQUFHLGNBQWMsQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUFHLGNBQWMsQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQy9ILE1BQU0sR0FBRyxHQUFHLFVBQVUsQ0FBQyxHQUFHLEdBQUcsY0FBYyxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsY0FBYyxDQUFDLGFBQWEsQ0FBQztRQUMxRyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxJQUFJLEdBQUcsSUFBSSxHQUFHLElBQUksQ0FBQztRQUN4QyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxHQUFHLEdBQUcsR0FBRyxHQUFHLElBQUksQ0FBQztJQUMxQyxDQUFDO0lBRUQsV0FBVztRQUNQLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDeEIsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBQ3hDLE1BQU0sSUFBSSxHQUNOLFVBQVUsQ0FBQyxJQUFJLEdBQUcsQ0FBQyxjQUFjLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsR0FBRyxjQUFjLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxHQUFH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dCB7IEFmdGVyVmlld0luaXQsIERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgSW5wdXQsIE5nWm9uZSwgT25EZXN0cm95LCBUZW1wbGF0ZVJlZiwgVmlld0NvbnRhaW5lclJlZiwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBUb29sdGlwU2VydmljZSB9IGZyb20gJy4vdG9vbHRpcC5zZXJ2aWNlJztcblxuQERpcmVjdGl2ZSh7IHNlbGVjdG9yOiAnW2FwVG9vbHRpcF0nLCBzdGFuZGFsb25lOiB0cnVlIH0pXG5leHBvcnQgY2xhc3MgVG9vbHRpcERpcmVjdGl2ZSBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQsIE9uRGVzdHJveSB7XG4gICAgcHJpdmF0ZSByZWFkb25seSBlbGVtZW50UmVmOiBFbGVtZW50UmVmID0gaW5qZWN0KEVsZW1lbnRSZWYpO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgem9uZTogTmdab25lID0gaW5qZWN0KE5nWm9uZSk7XG4gICAgcHJpdmF0ZSByZWFkb25seSB2aWV3Q29udGFpbmVyUmVmOiBWaWV3Q29udGFpbmVyUmVmID0gaW5qZWN0KFZpZXdDb250YWluZXJSZWYpO1xuXG4gICAgQElucHV0KCkgYXBUb29sdGlwUG9zaXRpb246XG4gICAgICAgIHwgJ3JpZ2h0J1xuICAgICAgICB8ICdsZWZ0J1xuICAgICAgICB8ICd0b3AnXG4gICAgICAgIHwgJ2JvdHRvbSdcbiAgICAgICAgfCAnYm90dG9tLWxlZnQnXG4gICAgICAgIHwgJ2JvdHRvbS1yaWdodCdcbiAgICAgICAgfCAndG9wLWxlZnQnXG4gICAgICAgIHwgJ3RvcC1yaWdodCdcbiAgICAgICAgfCB1bmRlZmluZWQgPSAndG9wJztcblxuICAgIEBJbnB1dCgnYXBUb29sdGlwJykgY29udGVudDogc3RyaW5nIHwgVGVtcGxhdGVSZWY8SFRNTEVsZW1lbnQ+IHwgdW5kZWZpbmVkO1xuXG4gICAgQElucHV0KCkgYXBUb29sdGlwU2hvd0RlbGF5OiBudW1iZXIgfCB1bmRlZmluZWQgPSA4MDtcblxuICAgIEBJbnB1dCgpIGFwVG9vbHRpcEhpZGVEZWxheTogbnVtYmVyIHwgdW5kZWZpbmVkO1xuXG4gICAgQElucHV0KCkgYXBUb29sdGlwRHVyYXRpb246IG51bWJlciB8IHVuZGVmaW5lZDtcblxuICAgIEBJbnB1dCgpIGFwVG9vbHRpcERpc2FibGVkOiBib29sZWFuIHwgdW5kZWZpbmVkO1xuXG4gICAgQElucHV0KCkgYXBUb29sdGlwVGVtcGxhdGVDb250ZXh0OiBhbnkgfCB1bmRlZmluZWQ7XG5cbiAgICBjbGlja0xpc3RlbmVyOiAoKSA9PiB2b2lkIHwgdW5kZWZpbmVkO1xuXG4gICAgY29udGFpbmVyOiBIVE1MRWxlbWVudDtcblxuICAgIGhpZGVUaW1lb3V0OiBudW1iZXIgfCB1bmRlZmluZWQ7XG5cbiAgICBtb3VzZUVudGVyTGlzdGVuZXI6ICgpID0+IHZvaWQgfCB1bmRlZmluZWQ7XG5cbiAgICBtb3VzZUxlYXZlTGlzdGVuZXI6ICgpID0+IHZvaWQgfCB1bmRlZmluZWQ7XG5cbiAgICBuYXRpdmVFbGVtZW50OiBIVE1MRWxlbWVudCA9IHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50O1xuXG4gICAgc2hvd1RpbWVvdXQ6IG51bWJlciB8IHVuZGVmaW5lZDtcblxuICAgIHRvb2x0aXBUZXh0OiBIVE1MRWxlbWVudCB8IHVuZGVmaW5lZDtcblxuICAgIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy56b25lLnJ1bk91dHNpZGVBbmd1bGFyKCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMubW91c2VFbnRlckxpc3RlbmVyID0gdGhpcy5vbk1vdXNlRW50ZXIuYmluZCh0aGlzKTtcbiAgICAgICAgICAgIHRoaXMubW91c2VMZWF2ZUxpc3RlbmVyID0gdGhpcy5vbk1vdXNlTGVhdmUuYmluZCh0aGlzKTtcbiAgICAgICAgICAgIHRoaXMuY2xpY2tMaXN0ZW5lciA9IHRoaXMub25JbnB1dENsaWNrLmJpbmQodGhpcyk7XG4gICAgICAgICAgICB0aGlzLm5hdGl2ZUVsZW1lbnQuYWRkRXZlbnRMaXN0ZW5lcignbW91c2VlbnRlcicsIHRoaXMubW91c2VFbnRlckxpc3RlbmVyKTtcbiAgICAgICAgICAgIHRoaXMubmF0aXZlRWxlbWVudC5hZGRFdmVudExpc3RlbmVyKCdjbGljaycsIHRoaXMuY2xpY2tMaXN0ZW5lcik7XG4gICAgICAgICAgICB0aGlzLm5hdGl2ZUVsZW1lbnQuYWRkRXZlbnRMaXN0ZW5lcignbW91c2VsZWF2ZScsIHRoaXMubW91c2VMZWF2ZUxpc3RlbmVyKTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmNvbnRhaW5lcikge1xuICAgICAgICAgICAgdGhpcy5kZWFjdGl2YXRlKCk7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5uYXRpdmVFbGVtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ21vdXNlZW50ZXInLCB0aGlzLm1vdXNlRW50ZXJMaXN0ZW5lcik7XG4gICAgICAgIHRoaXMubmF0aXZlRWxlbWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCdjbGljaycsIHRoaXMuY2xpY2tMaXN0ZW5lcik7XG4gICAgICAgIHRoaXMubmF0aXZlRWxlbWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCdtb3VzZWxlYXZlJywgdGhpcy5tb3VzZUxlYXZlTGlzdGVuZXIpO1xuICAgICAgICB0aGlzLm1vdXNlRW50ZXJMaXN0ZW5lciA9IHVuZGVmaW5lZDtcbiAgICAgICAgdGhpcy5tb3VzZUxlYXZlTGlzdGVuZXIgPSB1bmRlZmluZWQ7XG4gICAgICAgIHRoaXMuY2xpY2tMaXN0ZW5lciA9IHVuZGVmaW5lZDtcbiAgICB9XG5cbiAgICBvbk1vdXNlRW50ZXIoKTogdm9pZCB7XG4gICAgICAgIGlmICghdGhpcy5jb250YWluZXIpIHtcbiAgICAgICAgICAgIHRoaXMuYWN0aXZhdGUoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG9uTW91c2VMZWF2ZSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5kZWFjdGl2YXRlKCk7XG4gICAgfVxuXG4gICAgb25JbnB1dENsaWNrKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmRlYWN0aXZhdGUoKTtcbiAgICB9XG5cbiAgICBhY3RpdmF0ZSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5jbGVhckhpZGVUaW1lb3V0KCk7XG4gICAgICAgIGlmICh0aGlzLmFwVG9vbHRpcFNob3dEZWxheSkge1xuICAgICAgICAgICAgdGhpcy5zaG93VGltZW91dCA9IHdpbmRvdy5zZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLnNob3coKTtcbiAgICAgICAgICAgIH0sIHRoaXMuYXBUb29sdGlwU2hvd0RlbGF5KTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuc2hvdygpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRoaXMuYXBUb29sdGlwRHVyYXRpb24pIHtcbiAgICAgICAgICAgIGNvbnN0IGR1cmF0aW9uID0gdGhpcy5hcFRvb2x0aXBTaG93RGVsYXkgPyB0aGlzLmFwVG9vbHRpcER1cmF0aW9uICsgdGhpcy5hcFRvb2x0aXBTaG93RGVsYXkgOiB0aGlzLmFwVG9vbHRpcER1cmF0aW9uO1xuICAgICAgICAgICAgdGhpcy5oaWRlVGltZW91dCA9IHdpbmRvdy5zZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLnJlbW92ZSgpO1xuICAgICAgICAgICAgfSwgZHVyYXRpb24pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgZGVhY3RpdmF0ZSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5jbGVhclNob3dUaW1lb3V0KCk7XG4gICAgICAgIGlmICh0aGlzLmFwVG9vbHRpcEhpZGVEZWxheSkge1xuICAgICAgICAgICAgdGhpcy5jbGVhckhpZGVUaW1lb3V0KCk7XG4gICAgICAgICAgICB0aGlzLmhpZGVUaW1lb3V0ID0gd2luZG93LnNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMucmVtb3ZlKCk7XG4gICAgICAgICAgICB9LCB0aGlzLmFwVG9vbHRpcEhpZGVEZWxheSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLnJlbW92ZSgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgc2hvdygpOiB2b2lkIHtcbiAgICAgICAgaWYgKCF0aGlzLmNvbnRlbnQgfHwgdGhpcy5hcFRvb2x0aXBEaXNhYmxlZCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5jcmVhdGUoKTtcbiAgICAgICAgdGhpcy5hbGlnbigpO1xuICAgIH1cblxuICAgIGNyZWF0ZSgpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuY29udGFpbmVyKSB7XG4gICAgICAgICAgICB0aGlzLmNsZWFySGlkZVRpbWVvdXQoKTtcbiAgICAgICAgICAgIHRoaXMucmVtb3ZlKCk7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLmNvbnRhaW5lciA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpO1xuICAgICAgICB0aGlzLmNvbnRhaW5lci5zZXRBdHRyaWJ1dGUoJ3JvbGUnLCAndG9vbHRpcCcpO1xuICAgICAgICBjb25zdCBjb250ZW50Q29udGFpbmVyID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnZGl2Jyk7XG4gICAgICAgIGNvbnRlbnRDb250YWluZXIuY2xhc3NMaXN0LmFkZCgnYXAtY29udGVudC1jb250YWluZXInKTtcblxuICAgICAgICBjb25zdCBzdmdOYW1lc3BhY2UgPSAnaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnO1xuICAgICAgICBjb25zdCBhcnJvd1N2ZyA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnROUyhzdmdOYW1lc3BhY2UsICdzdmcnKTtcbiAgICAgICAgYXJyb3dTdmcuY2xhc3NMaXN0LmFkZCgnYXAtdG9vbHRpcC1hcnJvdycpO1xuICAgICAgICBhcnJvd1N2Zy5zZXRBdHRyaWJ1dGUoJ3htbG5zJywgc3ZnTmFtZXNwYWNlKTtcbiAgICAgICAgYXJyb3dTdmcuc2V0QXR0cmlidXRlKCd2aWV3Qm94JywgJzAgMCAxNiA4Jyk7XG4gICAgICAgIGFycm93U3ZnLnNldEF0dHJpYnV0ZSgnZmlsbCcsICdub25lJyk7XG4gICAgICAgIGNvbnN0IHBhdGggPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50TlMoc3ZnTmFtZXNwYWNlLCAncGF0aCcpO1xuICAgICAgICBwYXRoLnNldEF0dHJpYnV0ZSgnZCcsICdNNi42ODI5OSAxLjE1MjM4QzcuNDM3MDUgMC40OTI1ODYgOC41NjI5NiAwLjQ5MjU4OCA5LjMxNzAxIDEuMTUyMzhMMTYgN0wwIDdMNi42ODI5OSAxLjE1MjM4WicpO1xuICAgICAgICBhcnJvd1N2Zy5hcHBlbmRDaGlsZChwYXRoKTtcblxuICAgICAgICB0aGlzLnRvb2x0aXBUZXh0ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnZGl2Jyk7XG4gICAgICAgIHRoaXMudG9vbHRpcFRleHQuY2xhc3NOYW1lID0gJ2FwLXRvb2x0aXAtdGV4dCc7XG4gICAgICAgIHRoaXMudXBkYXRlVGV4dCgpO1xuXG4gICAgICAgIGNvbnRlbnRDb250YWluZXIuYXBwZW5kQ2hpbGQodGhpcy50b29sdGlwVGV4dCk7XG4gICAgICAgIGNvbnRlbnRDb250YWluZXIuYXBwZW5kQ2hpbGQoYXJyb3dTdmcpO1xuICAgICAgICB0aGlzLmNvbnRhaW5lci5hcHBlbmRDaGlsZChjb250ZW50Q29udGFpbmVyKTtcbiAgICAgICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZCh0aGlzLmNvbnRhaW5lcik7XG4gICAgICAgIHRoaXMuY29udGFpbmVyLmNsYXNzTGlzdC5hZGQoJ2FwLXRvb2x0aXAnKTtcblxuICAgICAgICBpZiAodGhpcy5jb250ZW50IGluc3RhbmNlb2YgVGVtcGxhdGVSZWYpIHtcbiAgICAgICAgICAgIHRoaXMuY29udGFpbmVyLmNsYXNzTGlzdC5hZGQoJ2FwLXRvb2x0aXAtY3VzdG9tLXRlbXBsYXRlJyk7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5zZXRDc3NWYXJpYWJsZXMoKTtcbiAgICB9XG5cbiAgICBhbGlnbigpOiB2b2lkIHtcbiAgICAgICAgc3dpdGNoICh0aGlzLmFwVG9vbHRpcFBvc2l0aW9uKSB7XG4gICAgICAgICAgICBjYXNlICd0b3AtbGVmdCc6XG4gICAgICAgICAgICAgICAgdGhpcy5hbGlnblRvcExlZnQoKTtcbiAgICAgICAgICAgICAgICBpZiAodGhpcy5pc091dE9mQm91bmRzKCkpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5hbGlnbkJvdHRvbSgpO1xuICAgICAgICAgICAgICAgICAgICBpZiAodGhpcy5pc091dE9mQm91bmRzKCkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuYWxpZ25SaWdodCgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHRoaXMuaXNPdXRPZkJvdW5kcygpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5hbGlnbkxlZnQoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2UgJ3RvcC1yaWdodCc6XG4gICAgICAgICAgICAgICAgdGhpcy5hbGlnblRvcFJpZ2h0KCk7XG4gICAgICAgICAgICAgICAgaWYgKHRoaXMuaXNPdXRPZkJvdW5kcygpKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuYWxpZ25Cb3R0b20oKTtcbiAgICAgICAgICAgICAgICAgICAgaWYgKHRoaXMuaXNPdXRPZkJvdW5kcygpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmFsaWduUmlnaHQoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmICh0aGlzLmlzT3V0T2ZCb3VuZHMoKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuYWxpZ25MZWZ0KCk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBjYXNlICd0b3AnOlxuICAgICAgICAgICAgICAgIHRoaXMuYWxpZ25Ub3AoKTtcbiAgICAgICAgICAgICAgICBpZiAodGhpcy5pc091dE9mQm91bmRzKCkpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5hbGlnbkJvdHRvbSgpO1xuICAgICAgICAgICAgICAgICAgICBpZiAodGhpcy5pc091dE9mQm91bmRzKCkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuYWxpZ25SaWdodCgpO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAodGhpcy5pc091dE9mQm91bmRzKCkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmFsaWduTGVmdCgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgICAgICBjYXNlICdib3R0b20nOlxuICAgICAgICAgICAgICAgIHRoaXMuYWxpZ25Cb3R0b20oKTtcbiAgICAgICAgICAgICAgICBpZiAodGhpcy5pc091dE9mQm91bmRzKCkpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5hbGlnblRvcCgpO1xuICAgICAgICAgICAgICAgICAgICBpZiAodGhpcy5pc091dE9mQm91bmRzKCkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuYWxpZ25SaWdodCgpO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAodGhpcy5pc091dE9mQm91bmRzKCkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmFsaWduTGVmdCgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgICAgICBjYXNlICdib3R0b20tbGVmdCc6XG4gICAgICAgICAgICAgICAgdGhpcy5hbGlnbkJvdHRvbUxlZnQoKTtcbiAgICAgICAgICAgICAgICBpZiAodGhpcy5pc091dE9mQm91bmRzKCkpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5hbGlnblRvcCgpO1xuICAgICAgICAgICAgICAgICAgICBpZiAodGhpcy5pc091dE9mQm91bmRzKCkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuYWxpZ25SaWdodCgpO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAodGhpcy5pc091dE9mQm91bmRzKCkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmFsaWduTGVmdCgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgICAgICBjYXNlICdib3R0b20tcmlnaHQnOlxuICAgICAgICAgICAgICAgIHRoaXMuYWxpZ25Cb3R0b21SaWdodCgpO1xuICAgICAgICAgICAgICAgIGlmICh0aGlzLmlzT3V0T2ZCb3VuZHMoKSkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmFsaWduVG9wKCk7XG4gICAgICAgICAgICAgICAgICAgIGlmICh0aGlzLmlzT3V0T2ZCb3VuZHMoKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5hbGlnblJpZ2h0KCk7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIGlmICh0aGlzLmlzT3V0T2ZCb3VuZHMoKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuYWxpZ25MZWZ0KCk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgICAgIGNhc2UgJ2xlZnQnOlxuICAgICAgICAgICAgICAgIHRoaXMuYWxpZ25MZWZ0KCk7XG4gICAgICAgICAgICAgICAgaWYgKHRoaXMuaXNPdXRPZkJvdW5kcygpKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuYWxpZ25SaWdodCgpO1xuXG4gICAgICAgICAgICAgICAgICAgIGlmICh0aGlzLmlzT3V0T2ZCb3VuZHMoKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5hbGlnblRvcCgpO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAodGhpcy5pc091dE9mQm91bmRzKCkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmFsaWduQm90dG9tKCk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgICAgIGNhc2UgJ3JpZ2h0JzpcbiAgICAgICAgICAgICAgICB0aGlzLmFsaWduUmlnaHQoKTtcbiAgICAgICAgICAgICAgICBpZiAodGhpcy5pc091dE9mQm91bmRzKCkpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5hbGlnbkxlZnQoKTtcblxuICAgICAgICAgICAgICAgICAgICBpZiAodGhpcy5pc091dE9mQm91bmRzKCkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuYWxpZ25Ub3AoKTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHRoaXMuaXNPdXRPZkJvdW5kcygpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5hbGlnbkJvdHRvbSgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgYWxpZ25SaWdodCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5wcmVBbGlnbigncmlnaHQnKTtcbiAgICAgICAgY29uc3QgaG9zdE9mZnNldCA9IHRoaXMuZ2V0SG9zdE9mZnNldCgpO1xuICAgICAgICBjb25zdCBsZWZ0ID0gaG9zdE9mZnNldC5sZWZ0ICsgVG9vbHRpcFNlcnZpY2UuZ2V0T3V0ZXJXaWR0aCh0aGlzLm5hdGl2ZUVsZW1lbnQpICsgVG9vbHRpcFNlcnZpY2UuZGVmYXVsdE9mZnNldDtcbiAgICAgICAgY29uc3QgdG9wID1cbiAgICAgICAgICAgIGhvc3RPZmZzZXQudG9wICsgKFRvb2x0aXBTZXJ2aWNlLmdldE91dGVySGVpZ2h0KHRoaXMubmF0aXZlRWxlbWVudCkgLSBUb29sdGlwU2VydmljZS5nZXRPdXRlckhlaWdodCh0aGlzLmNvbnRhaW5lcikpIC8gMjtcbiAgICAgICAgdGhpcy5jb250YWluZXIuc3R5bGUubGVmdCA9IGxlZnQgKyAncHgnO1xuICAgICAgICB0aGlzLmNvbnRhaW5lci5zdHlsZS50b3AgPSB0b3AgKyAncHgnO1xuICAgIH1cblxuICAgIGFsaWduTGVmdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5wcmVBbGlnbignbGVmdCcpO1xuICAgICAgICBjb25zdCBob3N0T2Zmc2V0ID0gdGhpcy5nZXRIb3N0T2Zmc2V0KCk7XG4gICAgICAgIGNvbnN0IGxlZnQgPSBob3N0T2Zmc2V0LmxlZnQgLSBUb29sdGlwU2VydmljZS5nZXRPdXRlcldpZHRoKHRoaXMuY29udGFpbmVyKSAtIFRvb2x0aXBTZXJ2aWNlLmRlZmF1bHRPZmZzZXQ7XG4gICAgICAgIGNvbnN0IHRvcCA9XG4gICAgICAgICAgICBob3N0T2Zmc2V0LnRvcCArIChUb29sdGlwU2VydmljZS5nZXRPdXRlckhlaWdodCh0aGlzLm5hdGl2ZUVsZW1lbnQpIC0gVG9vbHRpcFNlcnZpY2UuZ2V0T3V0ZXJIZWlnaHQodGhpcy5jb250YWluZXIpKSAvIDI7XG4gICAgICAgIHRoaXMuY29udGFpbmVyLnN0eWxlLmxlZnQgPSBsZWZ0ICsgJ3B4JztcbiAgICAgICAgdGhpcy5jb250YWluZXIuc3R5bGUudG9wID0gdG9wICsgJ3B4JztcbiAgICB9XG5cbiAgICBhbGlnblRvcCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5wcmVBbGlnbigndG9wJyk7XG4gICAgICAgIGNvbnN0IGhvc3RPZmZzZXQgPSB0aGlzLmdldEhvc3RPZmZzZXQoKTtcbiAgICAgICAgY29uc3QgbGVmdCA9XG4gICAgICAgICAgICBob3N0T2Zmc2V0LmxlZnQgKyAoVG9vbHRpcFNlcnZpY2UuZ2V0T3V0ZXJXaWR0aCh0aGlzLm5hdGl2ZUVsZW1lbnQpIC0gVG9vbHRpcFNlcnZpY2UuZ2V0T3V0ZXJXaWR0aCh0aGlzLmNvbnRhaW5lcikpIC8gMjtcbiAgICAgICAgY29uc3QgdG9wID0gaG9zdE9mZnNldC50b3AgLSBUb29sdGlwU2VydmljZS5nZXRPdXRlckhlaWdodCh0aGlzLmNvbnRhaW5lcikgLSBUb29sdGlwU2VydmljZS5kZWZhdWx0T2Zmc2V0O1xuICAgICAgICB0aGlzLmNvbnRhaW5lci5zdHlsZS5sZWZ0ID0gbGVmdCArICdweCc7XG4gICAgICAgIHRoaXMuY29udGFpbmVyLnN0eWxlLnRvcCA9IHRvcCArICdweCc7XG4gICAgfVxuXG4gICAgYWxpZ25Ub3BMZWZ0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLnByZUFsaWduKCd0b3AtbGVmdCcpO1xuICAgICAgICBjb25zdCBob3N0T2Zmc2V0ID0gdGhpcy5nZXRIb3N0T2Zmc2V0KCk7XG4gICAgICAgIGNvbnN0IGxlZnQgPSBob3N0T2Zmc2V0LmxlZnQ7XG4gICAgICAgIGNvbnN0IHRvcCA9IGhvc3RPZmZzZXQudG9wIC0gVG9vbHRpcFNlcnZpY2UuZ2V0T3V0ZXJIZWlnaHQodGhpcy5jb250YWluZXIpIC0gVG9vbHRpcFNlcnZpY2UuZGVmYXVsdE9mZnNldDtcbiAgICAgICAgdGhpcy5jb250YWluZXIuc3R5bGUubGVmdCA9IGxlZnQgKyAncHgnO1xuICAgICAgICB0aGlzLmNvbnRhaW5lci5zdHlsZS50b3AgPSB0b3AgKyAncHgnO1xuICAgIH1cblxuICAgIGFsaWduVG9wUmlnaHQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMucHJlQWxpZ24oJ3RvcC1yaWdodCcpO1xuICAgICAgICBjb25zdCBob3N0T2Zmc2V0ID0gdGhpcy5nZXRIb3N0T2Zmc2V0KCk7XG4gICAgICAgIGNvbnN0IGxlZnQgPSBob3N0T2Zmc2V0LmxlZnQgKyBUb29sdGlwU2VydmljZS5nZXRPdXRlcldpZHRoKHRoaXMubmF0aXZlRWxlbWVudCkgLSBUb29sdGlwU2VydmljZS5nZXRPdXRlcldpZHRoKHRoaXMuY29udGFpbmVyKTtcbiAgICAgICAgY29uc3QgdG9wID0gaG9zdE9mZnNldC50b3AgLSBUb29sdGlwU2VydmljZS5nZXRPdXRlckhlaWdodCh0aGlzLmNvbnRhaW5lcikgLSBUb29sdGlwU2VydmljZS5kZWZhdWx0T2Zmc2V0O1xuICAgICAgICB0aGlzLmNvbnRhaW5lci5zdHlsZS5sZWZ0ID0gbGVmdCArICdweCc7XG4gICAgICAgIHRoaXMuY29udGFpbmVyLnN0eWxlLnRvcCA9IHRvcCArICdweCc7XG4gICAgfVxuXG4gICAgYWxpZ25Cb3R0b20oKTogdm9pZCB7XG4gICAgICAgIHRoaXMucHJlQWxpZ24oJ2JvdHRvbScpO1xuICAgICAgICBjb25zdCBob3N0T2Zmc2V0ID0gdGhpcy5nZXRIb3N0T2Zmc2V0KCk7XG4gICAgICAgIGNvbnN0IGxlZnQgPVxuICAgICAgICAgICAgaG9zdE9mZnNldC5sZWZ0ICsgKFRvb2x0aXBTZXJ2aWNlLmdldE91dGVyV2lkdGgodGhpcy5uYXRpdmVFbGVtZW50KSAtIFRvb2x0aXBTZXJ2aWNlLmdldE91dGVyV2lkdGgodGhpcy5jb250YWluZXIpKSAvIDI7XG4gICAgICAgIGNvbnN0IHRvcCA9IGhvc3RPZmZzZXQudG9wICsgVG9vbHRpcFNlcnZpY2UuZ2V0T3V0ZXJIZWlnaHQodGhpcy5uYXRpdmVFbGVtZW50KSArIFRvb2x0aXBTZXJ2aWNlLmRlZmF1bHRPZmZzZXQ7XG4gICAgICAgIHRoaXMuY29udGFpbmVyLnN0eWxlLmxlZnQgPSBsZWZ0ICsgJ3B4JztcbiAgICAgICAgdGhpcy5jb250YWluZXIuc3R5bGUudG9wID0gdG9wICsgJ3B4JztcbiAgICB9XG5cbiAgICBhbGlnbkJvdHRvbUxlZnQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMucHJlQWxpZ24oJ2JvdHRvbS1sZWZ0Jyk7XG4gICAgICAgIGNvbnN0IGhvc3RPZmZzZXQgPSB0aGlzLmdldEhvc3RPZmZzZXQoKTtcbiAgICAgICAgY29uc3QgbGVmdCA9IGhvc3RPZmZzZXQubGVmdDtcbiAgICAgICAgY29uc3QgdG9wID0gaG9zdE9mZnNldC50b3AgKyBUb29sdGlwU2VydmljZS5nZXRPdXRlckhlaWdodCh0aGlzLm5hdGl2ZUVsZW1lbnQpICsgVG9vbHRpcFNlcnZpY2UuZGVmYXVsdE9mZnNldDtcbiAgICAgICAgdGhpcy5jb250YWluZXIuc3R5bGUubGVmdCA9IGxlZnQgKyAncHgnO1xuICAgICAgICB0aGlzLmNvbnRhaW5lci5zdHlsZS50b3AgPSB0b3AgKyAncHgnO1xuICAgIH1cblxuICAgIGFsaWduQm90dG9tUmlnaHQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMucHJlQWxpZ24oJ2JvdHRvbS1yaWdodCcpO1xuICAgICAgICBjb25zdCBob3N0T2Zmc2V0ID0gdGhpcy5nZXRIb3N0T2Zmc2V0KCk7XG4gICAgICAgIGNvbnN0IGxlZnQgPSBob3N0T2Zmc2V0LmxlZnQgKyAoVG9vbHRpcFNlcnZpY2UuZ2V0T3V0ZXJXaWR0aCh0aGlzLm5hdGl2ZUVsZW1lbnQpIC0gVG9vbHRpcFNlcnZpY2UuZ2V0T3V0ZXJXaWR0aCh0aGlzLmNvbnRhaW5lcikpO1xuICAgICAgICBjb25zdCB0b3AgPSBob3N0T2Zmc2V0LnRvcCArIFRvb2x0aXBTZXJ2aWNlLmdldE91dGVySGVpZ2h0KHRoaXMubmF0aXZlRWxlbWVudCkgKyBUb29sdGlwU2VydmljZS5kZWZhdWx0T2Zmc2V0O1xuICAgICAgICB0aGlzLmNvbnRhaW5lci5zdHlsZS5sZWZ0ID0gbGVmdCArICdweCc7XG4gICAgICAgIHRoaXMuY29udGFpbmVyLnN0eWxlLnRvcCA9IHRvcCArICdweCc7XG4gICAgfVxuXG4gICAgcHJlQWxpZ24ocG9zaXRpb246IHN0cmluZykge1xuICAgICAgICB0aGlzLmNvbnRhaW5lci5zdHlsZS5sZWZ0ID0gLTk5OSArICdweCc7XG4gICAgICAgIHRoaXMuY29udGFpbmVyLnN0eWxlLnRvcCA9IC05OTkgKyAncHgnO1xuXG4gICAgICAgIGNvbnN0IGRlZmF1bHRDbGFzc05hbWUgPSAnYXAtdG9vbHRpcC0nICsgcG9zaXRpb247XG4gICAgICAgIHRoaXMuY29udGFpbmVyLmNsYXNzTGlzdC5hZGQoZGVmYXVsdENsYXNzTmFtZSk7XG4gICAgfVxuXG4gICAgZ2V0SG9zdE9mZnNldCgpIHtcbiAgICAgICAgY29uc3Qgb2Zmc2V0ID0gdGhpcy5uYXRpdmVFbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuICAgICAgICBjb25zdCB0YXJnZXRMZWZ0ID0gb2Zmc2V0LmxlZnQgKyBUb29sdGlwU2VydmljZS5nZXRXaW5kb3dTY3JvbGxMZWZ0KCk7XG4gICAgICAgIGNvbnN0IHRhcmdldFRvcCA9IG9mZnNldC50b3AgKyBUb29sdGlwU2VydmljZS5nZXRXaW5kb3dTY3JvbGxUb3AoKTtcblxuICAgICAgICByZXR1cm4geyBsZWZ0OiB0YXJnZXRMZWZ0LCB0b3A6IHRhcmdldFRvcCB9O1xuICAgIH1cblxuICAgIGlzT3V0T2ZCb3VuZHMoKTogYm9vbGVhbiB7XG4gICAgICAgIGNvbnN0IG9mZnNldCA9IHRoaXMuY29udGFpbmVyLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuICAgICAgICBjb25zdCB0YXJnZXRUb3AgPSBvZmZzZXQudG9wO1xuICAgICAgICBjb25zdCB0YXJnZXRMZWZ0ID0gb2Zmc2V0LmxlZnQ7XG4gICAgICAgIGNvbnN0IHdpZHRoID0gVG9vbHRpcFNlcnZpY2UuZ2V0T3V0ZXJXaWR0aCh0aGlzLmNvbnRhaW5lcik7XG4gICAgICAgIGNvbnN0IGhlaWdodCA9IFRvb2x0aXBTZXJ2aWNlLmdldE91dGVySGVpZ2h0KHRoaXMuY29udGFpbmVyKTtcbiAgICAgICAgY29uc3Qgdmlld3BvcnQgPSBUb29sdGlwU2VydmljZS5nZXRWaWV3cG9ydCgpO1xuXG4gICAgICAgIHJldHVybiB0YXJnZXRMZWZ0ICsgd2lkdGggPiB2aWV3cG9ydC53aWR0aCB8fCB0YXJnZXRMZWZ0IDwgMCB8fCB0YXJnZXRUb3AgPCAwIHx8IHRhcmdldFRvcCArIGhlaWdodCA+IHZpZXdwb3J0LmhlaWdodDtcbiAgICB9XG5cbiAgICByZW1vdmUoKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmNvbnRhaW5lciAmJiB0aGlzLmNvbnRhaW5lci5wYXJlbnRFbGVtZW50KSB7XG4gICAgICAgICAgICBkb2N1bWVudC5ib2R5LnJlbW92ZUNoaWxkKHRoaXMuY29udGFpbmVyKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuY2xlYXJUaW1lb3V0cygpO1xuICAgICAgICB0aGlzLmNvbnRhaW5lciA9IG51bGw7XG4gICAgfVxuXG4gICAgY2xlYXJTaG93VGltZW91dCgpIHtcbiAgICAgICAgaWYgKHRoaXMuc2hvd1RpbWVvdXQpIHtcbiAgICAgICAgICAgIGNsZWFyVGltZW91dCh0aGlzLnNob3dUaW1lb3V0KTtcbiAgICAgICAgICAgIHRoaXMuc2hvd1RpbWVvdXQgPSBudWxsO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgY2xlYXJIaWRlVGltZW91dCgpIHtcbiAgICAgICAgaWYgKHRoaXMuaGlkZVRpbWVvdXQpIHtcbiAgICAgICAgICAgIGNsZWFyVGltZW91dCh0aGlzLmhpZGVUaW1lb3V0KTtcbiAgICAgICAgICAgIHRoaXMuaGlkZVRpbWVvdXQgPSBudWxsO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgY2xlYXJUaW1lb3V0cygpIHtcbiAgICAgICAgdGhpcy5jbGVhclNob3dUaW1lb3V0KCk7XG4gICAgICAgIHRoaXMuY2xlYXJIaWRlVGltZW91dCgpO1xuICAgIH1cblxuICAgIHVwZGF0ZVRleHQoKSB7XG4gICAgICAgIGlmICh0aGlzLmNvbnRlbnQgaW5zdGFuY2VvZiBUZW1wbGF0ZVJlZikge1xuICAgICAgICAgICAgY29uc3QgZW1iZWRkZWRWaWV3UmVmID0gdGhpcy52aWV3Q29udGFpbmVyUmVmLmNyZWF0ZUVtYmVkZGVkVmlldyh0aGlzLmNvbnRlbnQpO1xuICAgICAgICAgICAgZW1iZWRkZWRWaWV3UmVmLmNvbnRleHQgPSB0aGlzLmFwVG9vbHRpcFRlbXBsYXRlQ29udGV4dDtcbiAgICAgICAgICAgIGVtYmVkZGVkVmlld1JlZi5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgICAgICAgICBlbWJlZGRlZFZpZXdSZWYucm9vdE5vZGVzLmZvckVhY2gobm9kZSA9PiB0aGlzLnRvb2x0aXBUZXh0LmFwcGVuZENoaWxkKG5vZGUpKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMudG9vbHRpcFRleHQuaW5uZXJIVE1MID0gdGhpcy5jb250ZW50O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgc2V0Q3NzVmFyaWFibGVzKCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5jb250YWluZXIpIHtcbiAgICAgICAgICAgIHRoaXMuY29udGFpbmVyLnN0eWxlLnNldFByb3BlcnR5KCctLWFwLXRvb2x0aXAtaGVpZ2h0JywgdGhpcy5jb250YWluZXIub2Zmc2V0SGVpZ2h0ICsgJ3B4Jyk7XG4gICAgICAgIH1cbiAgICB9XG59XG4iXX0=
@@ -1,29 +0,0 @@
1
- import { Injectable } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- export class TooltipService {
4
- static getOuterWidth(el) {
5
- return el.offsetWidth;
6
- }
7
- static getOuterHeight(el) {
8
- return el.offsetHeight;
9
- }
10
- static getViewport() {
11
- const win = window, d = document, e = d.documentElement, g = d.getElementsByTagName('body')[0], w = win.innerWidth || e.clientWidth || g.clientWidth, h = win.innerHeight || e.clientHeight || g.clientHeight;
12
- return { width: w, height: h };
13
- }
14
- static getWindowScrollLeft() {
15
- const doc = document.documentElement;
16
- return (window.pageXOffset || doc.scrollLeft) - (doc.clientLeft || 0);
17
- }
18
- static getWindowScrollTop() {
19
- const doc = document.documentElement;
20
- return (window.pageYOffset || doc.scrollTop) - (doc.clientTop || 0);
21
- }
22
- }
23
- TooltipService.defaultOffset = 12;
24
- TooltipService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.2", ngImport: i0, type: TooltipService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
25
- TooltipService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.1.2", ngImport: i0, type: TooltipService });
26
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.2", ngImport: i0, type: TooltipService, decorators: [{
27
- type: Injectable
28
- }] });
29
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbHRpcC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vbGlicy91aS1jb21wb25lbnRzL3Rvb2x0aXAvc3JjL3Rvb2x0aXAuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sZUFBZSxDQUFDOztBQUd6QyxNQUFNLE9BQU8sY0FBYztJQUd2QixNQUFNLENBQUMsYUFBYSxDQUFDLEVBQWU7UUFDaEMsT0FBTyxFQUFFLENBQUMsV0FBVyxDQUFDO0lBQzFCLENBQUM7SUFFRCxNQUFNLENBQUMsY0FBYyxDQUFDLEVBQWU7UUFDakMsT0FBTyxFQUFFLENBQUMsWUFBWSxDQUFDO0lBQzNCLENBQUM7SUFFRCxNQUFNLENBQUMsV0FBVztRQUNkLE1BQU0sR0FBRyxHQUFHLE1BQU0sRUFDZCxDQUFDLEdBQUcsUUFBUSxFQUNaLENBQUMsR0FBRyxDQUFDLENBQUMsZUFBZSxFQUNyQixDQUFDLEdBQUcsQ0FBQyxDQUFDLG9CQUFvQixDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUNyQyxDQUFDLEdBQUcsR0FBRyxDQUFDLFVBQVUsSUFBSSxDQUFDLENBQUMsV0FBVyxJQUFJLENBQUMsQ0FBQyxXQUFXLEVBQ3BELENBQUMsR0FBRyxHQUFHLENBQUMsV0FBVyxJQUFJLENBQUMsQ0FBQyxZQUFZLElBQUksQ0FBQyxDQUFDLFlBQVksQ0FBQztRQUU1RCxPQUFPLEVBQUMsS0FBSyxFQUFFLENBQUMsRUFBRSxNQUFNLEVBQUUsQ0FBQyxFQUFDLENBQUM7SUFDakMsQ0FBQztJQUVELE1BQU0sQ0FBQyxtQkFBbUI7UUFDdEIsTUFBTSxHQUFHLEdBQUcsUUFBUSxDQUFDLGVBQWUsQ0FBQztRQUNyQyxPQUFPLENBQUMsTUFBTSxDQUFDLFdBQVcsSUFBSSxHQUFHLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsVUFBVSxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQzFFLENBQUM7SUFFRCxNQUFNLENBQUMsa0JBQWtCO1FBQ3JCLE1BQU0sR0FBRyxHQUFHLFFBQVEsQ0FBQyxlQUFlLENBQUM7UUFDckMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxXQUFXLElBQUksR0FBRyxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLFNBQVMsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUN4RSxDQUFDOztBQTdCZSw0QkFBYSxHQUFHLEVBQUUsQ0FBQzsyR0FEMUIsY0FBYzsrR0FBZCxjQUFjOzJGQUFkLGNBQWM7a0JBRDFCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0luamVjdGFibGV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgVG9vbHRpcFNlcnZpY2Uge1xuICAgIHN0YXRpYyByZWFkb25seSBkZWZhdWx0T2Zmc2V0ID0gMTI7XG5cbiAgICBzdGF0aWMgZ2V0T3V0ZXJXaWR0aChlbDogSFRNTEVsZW1lbnQpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gZWwub2Zmc2V0V2lkdGg7XG4gICAgfVxuXG4gICAgc3RhdGljIGdldE91dGVySGVpZ2h0KGVsOiBIVE1MRWxlbWVudCk6IG51bWJlciB7XG4gICAgICAgIHJldHVybiBlbC5vZmZzZXRIZWlnaHQ7XG4gICAgfVxuXG4gICAgc3RhdGljIGdldFZpZXdwb3J0KCk6IGFueSB7XG4gICAgICAgIGNvbnN0IHdpbiA9IHdpbmRvdyxcbiAgICAgICAgICAgIGQgPSBkb2N1bWVudCxcbiAgICAgICAgICAgIGUgPSBkLmRvY3VtZW50RWxlbWVudCxcbiAgICAgICAgICAgIGcgPSBkLmdldEVsZW1lbnRzQnlUYWdOYW1lKCdib2R5JylbMF0sXG4gICAgICAgICAgICB3ID0gd2luLmlubmVyV2lkdGggfHwgZS5jbGllbnRXaWR0aCB8fCBnLmNsaWVudFdpZHRoLFxuICAgICAgICAgICAgaCA9IHdpbi5pbm5lckhlaWdodCB8fCBlLmNsaWVudEhlaWdodCB8fCBnLmNsaWVudEhlaWdodDtcblxuICAgICAgICByZXR1cm4ge3dpZHRoOiB3LCBoZWlnaHQ6IGh9O1xuICAgIH1cblxuICAgIHN0YXRpYyBnZXRXaW5kb3dTY3JvbGxMZWZ0KCk6IG51bWJlciB7XG4gICAgICAgIGNvbnN0IGRvYyA9IGRvY3VtZW50LmRvY3VtZW50RWxlbWVudDtcbiAgICAgICAgcmV0dXJuICh3aW5kb3cucGFnZVhPZmZzZXQgfHwgZG9jLnNjcm9sbExlZnQpIC0gKGRvYy5jbGllbnRMZWZ0IHx8IDApO1xuICAgIH1cblxuICAgIHN0YXRpYyBnZXRXaW5kb3dTY3JvbGxUb3AoKTogbnVtYmVyIHtcbiAgICAgICAgY29uc3QgZG9jID0gZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50O1xuICAgICAgICByZXR1cm4gKHdpbmRvdy5wYWdlWU9mZnNldCB8fCBkb2Muc2Nyb2xsVG9wKSAtIChkb2MuY2xpZW50VG9wIHx8IDApO1xuICAgIH1cbn1cbiJdfQ==
@@ -1,76 +0,0 @@
1
- import { NgTemplateOutlet } from '@angular/common';
2
- import * as i0 from '@angular/core';
3
- import { EventEmitter, forwardRef, Component, ChangeDetectionStrategy, Input, Output } from '@angular/core';
4
- import { NG_VALUE_ACCESSOR } from '@angular/forms';
5
- import { ButtonComponent } from '@agorapulse/ui-components/button';
6
- import * as i2 from '@angular/material/legacy-input';
7
- import { MatLegacyInputModule } from '@angular/material/legacy-input';
8
- import { AutosizeTextareaDirective } from '@agorapulse/ui-components/directives';
9
- import * as i1 from '@angular/cdk/bidi';
10
-
11
- /* eslint-disable @typescript-eslint/no-empty-function */
12
- class AddCommentComponent {
13
- constructor() {
14
- this.placeholder = 'Add a comment';
15
- this.disable = false;
16
- this.action = new EventEmitter();
17
- this._commentValue = '';
18
- this.propagateChange = () => { };
19
- }
20
- get commentValue() {
21
- return this._commentValue;
22
- }
23
- set commentValue(value) {
24
- this._commentValue = value;
25
- this.propagateChange(value);
26
- }
27
- registerOnChange(fn) {
28
- this.propagateChange = fn;
29
- }
30
- registerOnTouched(fn) { }
31
- setDisabledState(isDisabled) {
32
- this.disable = isDisabled;
33
- }
34
- writeValue(obj) {
35
- this._commentValue = obj != undefined ? obj : '';
36
- this.propagateChange(this._commentValue);
37
- }
38
- onChange(event) {
39
- const value = event.target.value;
40
- this._commentValue = value != undefined ? value : '';
41
- this.propagateChange(value);
42
- }
43
- }
44
- AddCommentComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.2", ngImport: i0, type: AddCommentComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
45
- AddCommentComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.2", type: AddCommentComponent, isStandalone: true, selector: "ap-add-comment", inputs: { placeholder: "placeholder", customTemplate: "customTemplate", disable: "disable" }, outputs: { action: "action" }, providers: [
46
- {
47
- provide: NG_VALUE_ACCESSOR,
48
- useExisting: forwardRef(() => AddCommentComponent),
49
- multi: true,
50
- },
51
- ], ngImport: i0, template: "<div class=\"add-comment\">\n <textarea apAutosize\n dir=\"auto\"\n matInput\n rows=\"1\"\n [placeholder]=\"placeholder\"\n [value]=\"_commentValue\"\n (keyup)=\"onChange($event)\"\n (change)=\"onChange($event)\">\n </textarea>\n\n <ng-template\n #defaultTemplate\n let-action=\"action\">\n <div class=\"default-template\">\n <ap-button name=\"\"\n [config]=\"{\n style: 'stroked',\n color: 'grey'\n }\"\n (click)=\"action.emit('send')\">\n Send\n </ap-button>\n </div>\n </ng-template>\n\n <ng-template\n [ngTemplateOutlet]=\"customTemplate || defaultTemplate\"\n [ngTemplateOutletContext]=\"{\n action: action\n }\">\n </ng-template>\n</div>\n", styles: ["[color=facebook]{color:#1877f2}[bgcolor=facebook],[hcolor=facebook]:hover{background-color:#1877f2}[border=facebook]{border:1px solid #1877f2}[color=google]{color:#4e85e8}[bgcolor=google],[hcolor=google]:hover{background-color:#4e85e8}[border=google]{border:1px solid #4e85e8}[color=instagram]{color:#e1306c}[bgcolor=instagram],[hcolor=instagram]:hover{background-color:#e1306c}[border=instagram]{border:1px solid #e1306c}[color=instagrammagenta]{color:#c13584}[bgcolor=instagrammagenta],[hcolor=instagrammagenta]:hover{background-color:#c13584}[border=instagrammagenta]{border:1px solid #c13584}[color=instagramblue]{color:#5851db}[bgcolor=instagramblue],[hcolor=instagramblue]:hover{background-color:#5851db}[border=instagramblue]{border:1px solid #5851db}[color=instagrampurple]{color:#833ab4}[bgcolor=instagrampurple],[hcolor=instagrampurple]:hover{background-color:#833ab4}[border=instagrampurple]{border:1px solid #833ab4}[color=instagramorange]{color:#f56040}[bgcolor=instagramorange],[hcolor=instagramorange]:hover{background-color:#f56040}[border=instagramorange]{border:1px solid #f56040}[color=instagramyellow]{color:#ffdc80}[bgcolor=instagramyellow],[hcolor=instagramyellow]:hover{background-color:#ffdc80}[border=instagramyellow]{border:1px solid #ffdc80}[color=linkedin]{color:#2c67bc}[bgcolor=linkedin],[hcolor=linkedin]:hover{background-color:#2c67bc}[border=linkedin]{border:1px solid #2c67bc}[color=twitter]{color:#55acee}[bgcolor=twitter],[hcolor=twitter]:hover{background-color:#55acee}[border=twitter]{border:1px solid #55acee}[color=youtube]{color:red}[bgcolor=youtube],[hcolor=youtube]:hover{background-color:red}[border=youtube]{border:1px solid #ff0000}[color=blood-orange]{color:#ff4d00}[bgcolor=blood-orange],[hcolor=blood-orange]:hover{background-color:#ff4d00}[border=blood-orange]{border:1px solid #ff4d00}[color=pinkish-orange]{color:#ff7b49}[bgcolor=pinkish-orange],[hcolor=pinkish-orange]:hover{background-color:#ff7b49}[border=pinkish-orange]{border:1px solid #ff7b49}[color=charcoal-grey]{color:#2a2f34}[bgcolor=charcoal-grey],[hcolor=charcoal-grey]:hover{background-color:#2a2f34}[border=charcoal-grey]{border:1px solid #2a2f34}[color=azure]{color:#00aeef}[bgcolor=azure],[hcolor=azure]:hover{background-color:#00aeef}[border=azure]{border:1px solid #00aeef}[color=light-azure]{color:#eaf5fd}[bgcolor=light-azure],[hcolor=light-azure]:hover{background-color:#eaf5fd}[border=light-azure]{border:1px solid #eaf5fd}[color=blue-grey]{color:#8d98a9}[bgcolor=blue-grey],[hcolor=blue-grey]:hover{background-color:#8d98a9}[border=blue-grey]{border:1px solid #8d98a9}[color=silver]{color:#ced0da}[bgcolor=silver],[hcolor=silver]:hover{background-color:#ced0da}[border=silver]{border:1px solid #ced0da}[color=pale-grey]{color:#dfe3e9}[bgcolor=pale-grey],[hcolor=pale-grey]:hover{background-color:#dfe3e9}[border=pale-grey]{border:1px solid #dfe3e9}[color=grey-white]{color:#f5f7f8}[bgcolor=grey-white],[hcolor=grey-white]:hover{background-color:#f5f7f8}[border=grey-white]{border:1px solid #f5f7f8}[color=cool-grey]{color:#b4bbc6}[bgcolor=cool-grey],[hcolor=cool-grey]:hover{background-color:#b4bbc6}[border=cool-grey]{border:1px solid #b4bbc6}[color=black]{color:#344563}[bgcolor=black],[hcolor=black]:hover{background-color:#344563}[border=black]{border:1px solid #344563}[color=grey-blue]{color:#68768c}[bgcolor=grey-blue],[hcolor=grey-blue]:hover{background-color:#68768c}[border=grey-blue]{border:1px solid #68768c}[color=strawberry]{color:#f4282d}[bgcolor=strawberry],[hcolor=strawberry]:hover{background-color:#f4282d}[border=strawberry]{border:1px solid #f4282d}[color=light-strawberry]{color:#f8eded}[bgcolor=light-strawberry],[hcolor=light-strawberry]:hover{background-color:#f8eded}[border=light-strawberry]{border:1px solid #f8eded}[color=white]{color:#fff}[bgcolor=white],[hcolor=white]:hover{background-color:#fff}[border=white]{border:1px solid #ffffff}[color=cool-green]{color:#33c15d}[bgcolor=cool-green],[hcolor=cool-green]:hover{background-color:#33c15d}[border=cool-green]{border:1px solid #33c15d}[color=light-green]{color:#ebfaef}[bgcolor=light-green],[hcolor=light-green]:hover{background-color:#ebfaef}[border=light-green]{border:1px solid #ebfaef}[color=transparent]{color:transparent}[bgcolor=transparent],[hcolor=transparent]:hover{background-color:transparent}[border=transparent]{border:1px solid transparent}[color=c0]{color:#a566a5}[bgcolor=c0],[hcolor=c0]:hover{background-color:#a566a5}[border=c0]{border:1px solid #A566A5}[color=c1]{color:#c7ab82}[bgcolor=c1],[hcolor=c1]:hover{background-color:#c7ab82}[border=c1]{border:1px solid #C7AB82}[color=c2]{color:#f2713c}[bgcolor=c2],[hcolor=c2]:hover{background-color:#f2713c}[border=c2]{border:1px solid #F2713C}[color=c3]{color:#ffd006}[bgcolor=c3],[hcolor=c3]:hover{background-color:#ffd006}[border=c3]{border:1px solid #FFD006}[color=c4]{color:#94c5aa}[bgcolor=c4],[hcolor=c4]:hover{background-color:#94c5aa}[border=c4]{border:1px solid #94C5AA}[color=c5]{color:#2a9d8f}[bgcolor=c5],[hcolor=c5]:hover{background-color:#2a9d8f}[border=c5]{border:1px solid #2A9D8F}[color=c6]{color:#78acd8}[bgcolor=c6],[hcolor=c6]:hover{background-color:#78acd8}[border=c6]{border:1px solid #78ACD8}[color=c7]{color:#525a9e}[bgcolor=c7],[hcolor=c7]:hover{background-color:#525a9e}[border=c7]{border:1px solid #525A9E}[color=c8]{color:#6a2459}[bgcolor=c8],[hcolor=c8]:hover{background-color:#6a2459}[border=c8]{border:1px solid #6A2459}[color=c9]{color:#74729e}[bgcolor=c9],[hcolor=c9]:hover{background-color:#74729e}[border=c9]{border:1px solid #74729E}.add-comment{border:1px solid #d6dae0;border-radius:4px;display:flex;flex-direction:column}.add-comment:focus-within{border:1px solid #178dfe}.add-comment:not(:focus-within):hover{border-color:#aeb5c1}.add-comment textarea{border:none;background:transparent;color:#858fa1;padding:0;margin:6px 16px}.add-comment textarea:focus,.add-comment input:focus{outline:none}.add-comment .default-template{display:flex;flex-direction:row-reverse}.add-comment .default-template button{background-color:#fff!important;width:90px;margin-right:8px;margin-bottom:8px;align-self:end}.add-comment .default-template button:hover{border-color:#d6dae0!important}.add-comment .default-template button:active{border-color:#aeb5c1!important}\n"], dependencies: [{ kind: "directive", type: AutosizeTextareaDirective, selector: "textarea[apAutosize]" }, { kind: "ngmodule", type: MatLegacyInputModule }, { kind: "directive", type: i1.Dir, selector: "[dir]", inputs: ["dir"], outputs: ["dirChange"], exportAs: ["dir"] }, { kind: "directive", type: i2.MatLegacyInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", exportAs: ["matInput"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: ButtonComponent, selector: "ap-button[name]", inputs: ["ariaLabel", "disabled", "name", "form", "config", "loading", "locked", "menuTrigger", "symbolPosition", "ionicModalEnabled"], outputs: ["menuOpened", "menuClosed", "click", "focus", "blur"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
52
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.2", ngImport: i0, type: AddCommentComponent, decorators: [{
53
- type: Component,
54
- args: [{ changeDetection: ChangeDetectionStrategy.OnPush, selector: 'ap-add-comment', standalone: true, imports: [AutosizeTextareaDirective, MatLegacyInputModule, NgTemplateOutlet, ButtonComponent], providers: [
55
- {
56
- provide: NG_VALUE_ACCESSOR,
57
- useExisting: forwardRef(() => AddCommentComponent),
58
- multi: true,
59
- },
60
- ], template: "<div class=\"add-comment\">\n <textarea apAutosize\n dir=\"auto\"\n matInput\n rows=\"1\"\n [placeholder]=\"placeholder\"\n [value]=\"_commentValue\"\n (keyup)=\"onChange($event)\"\n (change)=\"onChange($event)\">\n </textarea>\n\n <ng-template\n #defaultTemplate\n let-action=\"action\">\n <div class=\"default-template\">\n <ap-button name=\"\"\n [config]=\"{\n style: 'stroked',\n color: 'grey'\n }\"\n (click)=\"action.emit('send')\">\n Send\n </ap-button>\n </div>\n </ng-template>\n\n <ng-template\n [ngTemplateOutlet]=\"customTemplate || defaultTemplate\"\n [ngTemplateOutletContext]=\"{\n action: action\n }\">\n </ng-template>\n</div>\n", styles: ["[color=facebook]{color:#1877f2}[bgcolor=facebook],[hcolor=facebook]:hover{background-color:#1877f2}[border=facebook]{border:1px solid #1877f2}[color=google]{color:#4e85e8}[bgcolor=google],[hcolor=google]:hover{background-color:#4e85e8}[border=google]{border:1px solid #4e85e8}[color=instagram]{color:#e1306c}[bgcolor=instagram],[hcolor=instagram]:hover{background-color:#e1306c}[border=instagram]{border:1px solid #e1306c}[color=instagrammagenta]{color:#c13584}[bgcolor=instagrammagenta],[hcolor=instagrammagenta]:hover{background-color:#c13584}[border=instagrammagenta]{border:1px solid #c13584}[color=instagramblue]{color:#5851db}[bgcolor=instagramblue],[hcolor=instagramblue]:hover{background-color:#5851db}[border=instagramblue]{border:1px solid #5851db}[color=instagrampurple]{color:#833ab4}[bgcolor=instagrampurple],[hcolor=instagrampurple]:hover{background-color:#833ab4}[border=instagrampurple]{border:1px solid #833ab4}[color=instagramorange]{color:#f56040}[bgcolor=instagramorange],[hcolor=instagramorange]:hover{background-color:#f56040}[border=instagramorange]{border:1px solid #f56040}[color=instagramyellow]{color:#ffdc80}[bgcolor=instagramyellow],[hcolor=instagramyellow]:hover{background-color:#ffdc80}[border=instagramyellow]{border:1px solid #ffdc80}[color=linkedin]{color:#2c67bc}[bgcolor=linkedin],[hcolor=linkedin]:hover{background-color:#2c67bc}[border=linkedin]{border:1px solid #2c67bc}[color=twitter]{color:#55acee}[bgcolor=twitter],[hcolor=twitter]:hover{background-color:#55acee}[border=twitter]{border:1px solid #55acee}[color=youtube]{color:red}[bgcolor=youtube],[hcolor=youtube]:hover{background-color:red}[border=youtube]{border:1px solid #ff0000}[color=blood-orange]{color:#ff4d00}[bgcolor=blood-orange],[hcolor=blood-orange]:hover{background-color:#ff4d00}[border=blood-orange]{border:1px solid #ff4d00}[color=pinkish-orange]{color:#ff7b49}[bgcolor=pinkish-orange],[hcolor=pinkish-orange]:hover{background-color:#ff7b49}[border=pinkish-orange]{border:1px solid #ff7b49}[color=charcoal-grey]{color:#2a2f34}[bgcolor=charcoal-grey],[hcolor=charcoal-grey]:hover{background-color:#2a2f34}[border=charcoal-grey]{border:1px solid #2a2f34}[color=azure]{color:#00aeef}[bgcolor=azure],[hcolor=azure]:hover{background-color:#00aeef}[border=azure]{border:1px solid #00aeef}[color=light-azure]{color:#eaf5fd}[bgcolor=light-azure],[hcolor=light-azure]:hover{background-color:#eaf5fd}[border=light-azure]{border:1px solid #eaf5fd}[color=blue-grey]{color:#8d98a9}[bgcolor=blue-grey],[hcolor=blue-grey]:hover{background-color:#8d98a9}[border=blue-grey]{border:1px solid #8d98a9}[color=silver]{color:#ced0da}[bgcolor=silver],[hcolor=silver]:hover{background-color:#ced0da}[border=silver]{border:1px solid #ced0da}[color=pale-grey]{color:#dfe3e9}[bgcolor=pale-grey],[hcolor=pale-grey]:hover{background-color:#dfe3e9}[border=pale-grey]{border:1px solid #dfe3e9}[color=grey-white]{color:#f5f7f8}[bgcolor=grey-white],[hcolor=grey-white]:hover{background-color:#f5f7f8}[border=grey-white]{border:1px solid #f5f7f8}[color=cool-grey]{color:#b4bbc6}[bgcolor=cool-grey],[hcolor=cool-grey]:hover{background-color:#b4bbc6}[border=cool-grey]{border:1px solid #b4bbc6}[color=black]{color:#344563}[bgcolor=black],[hcolor=black]:hover{background-color:#344563}[border=black]{border:1px solid #344563}[color=grey-blue]{color:#68768c}[bgcolor=grey-blue],[hcolor=grey-blue]:hover{background-color:#68768c}[border=grey-blue]{border:1px solid #68768c}[color=strawberry]{color:#f4282d}[bgcolor=strawberry],[hcolor=strawberry]:hover{background-color:#f4282d}[border=strawberry]{border:1px solid #f4282d}[color=light-strawberry]{color:#f8eded}[bgcolor=light-strawberry],[hcolor=light-strawberry]:hover{background-color:#f8eded}[border=light-strawberry]{border:1px solid #f8eded}[color=white]{color:#fff}[bgcolor=white],[hcolor=white]:hover{background-color:#fff}[border=white]{border:1px solid #ffffff}[color=cool-green]{color:#33c15d}[bgcolor=cool-green],[hcolor=cool-green]:hover{background-color:#33c15d}[border=cool-green]{border:1px solid #33c15d}[color=light-green]{color:#ebfaef}[bgcolor=light-green],[hcolor=light-green]:hover{background-color:#ebfaef}[border=light-green]{border:1px solid #ebfaef}[color=transparent]{color:transparent}[bgcolor=transparent],[hcolor=transparent]:hover{background-color:transparent}[border=transparent]{border:1px solid transparent}[color=c0]{color:#a566a5}[bgcolor=c0],[hcolor=c0]:hover{background-color:#a566a5}[border=c0]{border:1px solid #A566A5}[color=c1]{color:#c7ab82}[bgcolor=c1],[hcolor=c1]:hover{background-color:#c7ab82}[border=c1]{border:1px solid #C7AB82}[color=c2]{color:#f2713c}[bgcolor=c2],[hcolor=c2]:hover{background-color:#f2713c}[border=c2]{border:1px solid #F2713C}[color=c3]{color:#ffd006}[bgcolor=c3],[hcolor=c3]:hover{background-color:#ffd006}[border=c3]{border:1px solid #FFD006}[color=c4]{color:#94c5aa}[bgcolor=c4],[hcolor=c4]:hover{background-color:#94c5aa}[border=c4]{border:1px solid #94C5AA}[color=c5]{color:#2a9d8f}[bgcolor=c5],[hcolor=c5]:hover{background-color:#2a9d8f}[border=c5]{border:1px solid #2A9D8F}[color=c6]{color:#78acd8}[bgcolor=c6],[hcolor=c6]:hover{background-color:#78acd8}[border=c6]{border:1px solid #78ACD8}[color=c7]{color:#525a9e}[bgcolor=c7],[hcolor=c7]:hover{background-color:#525a9e}[border=c7]{border:1px solid #525A9E}[color=c8]{color:#6a2459}[bgcolor=c8],[hcolor=c8]:hover{background-color:#6a2459}[border=c8]{border:1px solid #6A2459}[color=c9]{color:#74729e}[bgcolor=c9],[hcolor=c9]:hover{background-color:#74729e}[border=c9]{border:1px solid #74729E}.add-comment{border:1px solid #d6dae0;border-radius:4px;display:flex;flex-direction:column}.add-comment:focus-within{border:1px solid #178dfe}.add-comment:not(:focus-within):hover{border-color:#aeb5c1}.add-comment textarea{border:none;background:transparent;color:#858fa1;padding:0;margin:6px 16px}.add-comment textarea:focus,.add-comment input:focus{outline:none}.add-comment .default-template{display:flex;flex-direction:row-reverse}.add-comment .default-template button{background-color:#fff!important;width:90px;margin-right:8px;margin-bottom:8px;align-self:end}.add-comment .default-template button:hover{border-color:#d6dae0!important}.add-comment .default-template button:active{border-color:#aeb5c1!important}\n"] }]
61
- }], propDecorators: { placeholder: [{
62
- type: Input
63
- }], customTemplate: [{
64
- type: Input
65
- }], disable: [{
66
- type: Input
67
- }], action: [{
68
- type: Output
69
- }] } });
70
-
71
- /**
72
- * Generated bundle index. Do not edit.
73
- */
74
-
75
- export { AddCommentComponent };
76
- //# sourceMappingURL=agorapulse-ui-components-add-comment.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"agorapulse-ui-components-add-comment.mjs","sources":["../../../libs/ui-components/add-comment/src/add-comment.component.ts","../../../libs/ui-components/add-comment/src/add-comment.component.html","../../../libs/ui-components/add-comment/src/agorapulse-ui-components-add-comment.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-empty-function */\nimport {NgTemplateOutlet} from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component, EventEmitter, forwardRef,\n Input, Output, TemplateRef,\n} from '@angular/core';\nimport {ControlValueAccessor, NG_VALUE_ACCESSOR} from \"@angular/forms\";\nimport { ButtonComponent } from '@agorapulse/ui-components/button';\nimport {MatLegacyInputModule as MatInputModule} from '@angular/material/legacy-input';\nimport {AutosizeTextareaDirective} from '@agorapulse/ui-components/directives';\n\n@Component({\n changeDetection: ChangeDetectionStrategy.OnPush,\n selector: 'ap-add-comment',\n templateUrl: './add-comment.component.html',\n styleUrls: ['./add-comment.component.scss'],\n standalone: true,\n imports: [AutosizeTextareaDirective, MatInputModule, NgTemplateOutlet, ButtonComponent ],\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => AddCommentComponent),\n multi: true,\n },\n ],\n})\nexport class AddCommentComponent implements ControlValueAccessor {\n @Input() placeholder = 'Add a comment';\n @Input() customTemplate: TemplateRef<any>;\n @Input() disable = false;\n\n @Output() action: EventEmitter<string> = new EventEmitter();\n\n _commentValue = '';\n public get commentValue(): string {\n return this._commentValue;\n }\n\n public set commentValue(value: string) {\n this._commentValue = value;\n this.propagateChange(value);\n }\n\n propagateChange: any = () => {};\n\n registerOnChange(fn: any): void {\n this.propagateChange = fn;\n }\n\n registerOnTouched(fn: any): void {}\n\n setDisabledState(isDisabled: boolean): void {\n this.disable = isDisabled;\n }\n\n writeValue(obj: any): void {\n this._commentValue = obj != undefined ? obj : '';\n this.propagateChange(this._commentValue);\n }\n\n onChange(event) {\n const value = event.target.value;\n this._commentValue = value != undefined ? value : '';\n this.propagateChange(value);\n }\n}\n","<div class=\"add-comment\">\n <textarea apAutosize\n dir=\"auto\"\n matInput\n rows=\"1\"\n [placeholder]=\"placeholder\"\n [value]=\"_commentValue\"\n (keyup)=\"onChange($event)\"\n (change)=\"onChange($event)\">\n </textarea>\n\n <ng-template\n #defaultTemplate\n let-action=\"action\">\n <div class=\"default-template\">\n <ap-button name=\"\"\n [config]=\"{\n style: 'stroked',\n color: 'grey'\n }\"\n (click)=\"action.emit('send')\">\n Send\n </ap-button>\n </div>\n </ng-template>\n\n <ng-template\n [ngTemplateOutlet]=\"customTemplate || defaultTemplate\"\n [ngTemplateOutletContext]=\"{\n action: action\n }\">\n </ng-template>\n</div>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["MatInputModule"],"mappings":"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"}