@bravura/ui 3.8.1 → 5.0.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 (276) hide show
  1. package/CHANGELOG.md +585 -565
  2. package/LICENSE +6 -6
  3. package/README.md +3 -1
  4. package/alert/alert-container.component.d.ts +1 -1
  5. package/alert/alert-message.component.d.ts +1 -1
  6. package/behavior/await.directive.d.ts +1 -1
  7. package/behavior/observe-content-class.directive.d.ts +1 -1
  8. package/behavior/sizing.directive.d.ts +1 -1
  9. package/clip-note/clip-note.directive.d.ts +1 -1
  10. package/currency-input/currency-input.directive.d.ts +1 -1
  11. package/decimal-input/decimal-input.directive.d.ts +1 -1
  12. package/discrete-input/discrete-input.component.d.ts +1 -1
  13. package/esm2022/alert/alert-container.component.mjs +207 -0
  14. package/esm2022/alert/alert-message.component.mjs +101 -0
  15. package/esm2022/alert/alert.module.mjs +22 -0
  16. package/{esm2020 → esm2022}/alert/public-api.mjs +1 -1
  17. package/esm2022/alert/testing/test-api.mjs +44 -0
  18. package/esm2022/behavior/await.directive.mjs +133 -0
  19. package/esm2022/behavior/behavior.module.mjs +37 -0
  20. package/esm2022/behavior/observe-content-class.directive.mjs +63 -0
  21. package/{esm2020 → esm2022}/behavior/public-api.mjs +1 -1
  22. package/esm2022/behavior/sizing-monitor.directive.mjs +31 -0
  23. package/esm2022/behavior/sizing.directive.mjs +256 -0
  24. package/esm2022/clip-note/clip-note.component.mjs +216 -0
  25. package/esm2022/clip-note/clip-note.directive.mjs +141 -0
  26. package/esm2022/clip-note/clip-note.module.mjs +32 -0
  27. package/{esm2020 → esm2022}/clip-note/public-api.mjs +1 -1
  28. package/{esm2020 → esm2022}/common/common-utils.mjs +1 -1
  29. package/esm2022/common/common.module.mjs +53 -0
  30. package/{esm2020 → esm2022}/common/public-api.mjs +1 -1
  31. package/esm2022/currency-input/currency-input.directive.mjs +276 -0
  32. package/esm2022/currency-input/currency-input.module.mjs +19 -0
  33. package/{esm2020 → esm2022}/currency-input/public-api.mjs +1 -1
  34. package/esm2022/decimal-input/decimal-input.directive.mjs +122 -0
  35. package/{esm2020 → esm2022}/decimal-input/decimal-input.module.mjs +5 -5
  36. package/esm2022/discrete-input/discrete-input.component.mjs +337 -0
  37. package/esm2022/discrete-input/discrete-input.module.mjs +21 -0
  38. package/{esm2020 → esm2022}/discrete-input/public-api.mjs +1 -1
  39. package/esm2022/file-upload/file-upload.component.mjs +400 -0
  40. package/esm2022/file-upload/file-upload.module.mjs +44 -0
  41. package/esm2022/file-upload/file-upload.service.mjs +29 -0
  42. package/{esm2020 → esm2022}/file-upload/public-api.mjs +1 -1
  43. package/esm2022/form-field/form-field.component.mjs +82 -0
  44. package/esm2022/form-field/form-field.module.mjs +33 -0
  45. package/{esm2020 → esm2022}/form-field/public-api.mjs +1 -1
  46. package/esm2022/icon-font/icon-font.module.mjs +22 -0
  47. package/esm2022/icon-font/icon.directive.mjs +102 -0
  48. package/{esm2020 → esm2022}/icon-font/public-api.mjs +1 -1
  49. package/esm2022/icon-font/utilities.mjs +51 -0
  50. package/esm2022/panel/panel-section.component.mjs +41 -0
  51. package/esm2022/panel/panel.component.mjs +87 -0
  52. package/esm2022/panel/panel.module.mjs +23 -0
  53. package/{esm2020 → esm2022}/panel/public-api.mjs +1 -1
  54. package/esm2022/panel/tinted.directive.mjs +60 -0
  55. package/esm2022/phone-number/phone-number.directive.mjs +188 -0
  56. package/{esm2020 → esm2022}/phone-number/phone-number.module.mjs +5 -5
  57. package/esm2022/phone-number/phone-number.pipe.mjs +47 -0
  58. package/esm2022/phone-number/phone-number.validator.mjs +64 -0
  59. package/{esm2020 → esm2022}/phone-number/public-api.mjs +1 -1
  60. package/{esm2020 → esm2022}/public-api.mjs +1 -1
  61. package/esm2022/radio-panel/radio-panel-item.component.mjs +93 -0
  62. package/esm2022/radio-panel/radio-panel.component.mjs +81 -0
  63. package/{esm2020 → esm2022}/radio-panel/radio-panel.module.mjs +5 -5
  64. package/esm2022/radio-panel/testing/test-api.mjs +46 -0
  65. package/{esm2020 → esm2022}/selection-panel/public-api.mjs +1 -1
  66. package/esm2022/selection-panel/selection-panel-item.component.mjs +166 -0
  67. package/esm2022/selection-panel/selection-panel.directive.mjs +119 -0
  68. package/esm2022/selection-panel/selection-panel.module.mjs +23 -0
  69. package/{esm2020 → esm2022}/skeletons/public-api.mjs +1 -1
  70. package/esm2022/skeletons/skeleton-loader-presets.directive.mjs +83 -0
  71. package/esm2022/skeletons/skeleton-loader.component.mjs +76 -0
  72. package/esm2022/skeletons/skeletons.module.mjs +35 -0
  73. package/{esm2020 → esm2022}/stepper/public-api.mjs +1 -1
  74. package/{esm2020 → esm2022}/stepper/stepper-animation.mjs +1 -1
  75. package/esm2022/stepper/stepper.component.mjs +176 -0
  76. package/esm2022/stepper/stepper.module.mjs +52 -0
  77. package/{esm2020 → esm2022}/tooltip/public-api.mjs +1 -1
  78. package/esm2022/tooltip/tooltip.component.mjs +63 -0
  79. package/esm2022/tooltip/tooltip.directive.mjs +148 -0
  80. package/esm2022/tooltip/tooltip.module.mjs +25 -0
  81. package/{fesm2020 → fesm2022}/bravura-ui-alert-testing.mjs +2 -2
  82. package/fesm2022/bravura-ui-alert-testing.mjs.map +1 -0
  83. package/fesm2022/bravura-ui-alert.mjs +327 -0
  84. package/fesm2022/bravura-ui-alert.mjs.map +1 -0
  85. package/{fesm2020 → fesm2022}/bravura-ui-behavior.mjs +45 -45
  86. package/fesm2022/bravura-ui-behavior.mjs.map +1 -0
  87. package/{fesm2020 → fesm2022}/bravura-ui-clip-note.mjs +70 -70
  88. package/fesm2022/bravura-ui-clip-note.mjs.map +1 -0
  89. package/{fesm2020 → fesm2022}/bravura-ui-common.mjs +6 -6
  90. package/fesm2022/bravura-ui-common.mjs.map +1 -0
  91. package/{fesm2020 → fesm2022}/bravura-ui-currency-input.mjs +11 -11
  92. package/fesm2022/bravura-ui-currency-input.mjs.map +1 -0
  93. package/{fesm2020 → fesm2022}/bravura-ui-decimal-input.mjs +12 -12
  94. package/fesm2022/bravura-ui-decimal-input.mjs.map +1 -0
  95. package/{fesm2020 → fesm2022}/bravura-ui-discrete-input.mjs +48 -48
  96. package/fesm2022/bravura-ui-discrete-input.mjs.map +1 -0
  97. package/fesm2022/bravura-ui-file-upload.mjs +474 -0
  98. package/fesm2022/bravura-ui-file-upload.mjs.map +1 -0
  99. package/{fesm2020 → fesm2022}/bravura-ui-form-field.mjs +19 -19
  100. package/fesm2022/bravura-ui-form-field.mjs.map +1 -0
  101. package/{fesm2020 → fesm2022}/bravura-ui-icon-font.mjs +8 -8
  102. package/fesm2022/bravura-ui-icon-font.mjs.map +1 -0
  103. package/fesm2022/bravura-ui-panel.mjs +206 -0
  104. package/fesm2022/bravura-ui-panel.mjs.map +1 -0
  105. package/{fesm2020 → fesm2022}/bravura-ui-phone-number.mjs +30 -30
  106. package/fesm2022/bravura-ui-phone-number.mjs.map +1 -0
  107. package/{fesm2020 → fesm2022}/bravura-ui-radio-panel-testing.mjs +5 -6
  108. package/fesm2022/bravura-ui-radio-panel-testing.mjs.map +1 -0
  109. package/{fesm2020 → fesm2022}/bravura-ui-radio-panel.mjs +32 -32
  110. package/fesm2022/bravura-ui-radio-panel.mjs.map +1 -0
  111. package/fesm2022/bravura-ui-selection-panel.mjs +306 -0
  112. package/fesm2022/bravura-ui-selection-panel.mjs.map +1 -0
  113. package/{fesm2020 → fesm2022}/bravura-ui-skeletons.mjs +43 -43
  114. package/fesm2022/bravura-ui-skeletons.mjs.map +1 -0
  115. package/fesm2022/bravura-ui-stepper.mjs +251 -0
  116. package/fesm2022/bravura-ui-stepper.mjs.map +1 -0
  117. package/{fesm2020 → fesm2022}/bravura-ui-tooltip.mjs +32 -24
  118. package/fesm2022/bravura-ui-tooltip.mjs.map +1 -0
  119. package/fesm2022/bravura-ui.mjs.map +1 -0
  120. package/file-upload/file-upload.component.d.ts +1 -1
  121. package/form-field/form-field.component.d.ts +1 -1
  122. package/icon-font/icon.directive.d.ts +1 -1
  123. package/package.json +88 -132
  124. package/panel/panel.component.d.ts +1 -1
  125. package/panel/tinted.directive.d.ts +1 -1
  126. package/phone-number/phone-number.directive.d.ts +1 -1
  127. package/phone-number/phone-number.validator.d.ts +2 -2
  128. package/radio-panel/radio-panel-item.component.d.ts +1 -1
  129. package/radio-panel/radio-panel.component.d.ts +1 -1
  130. package/radio-panel/testing/test-api.d.ts +2 -3
  131. package/selection-panel/selection-panel-item.component.d.ts +1 -1
  132. package/selection-panel/selection-panel.directive.d.ts +1 -1
  133. package/skeletons/skeleton-loader-presets.directive.d.ts +3 -3
  134. package/stepper/stepper.component.d.ts +1 -1
  135. package/theme/_bui-card.scss +56 -56
  136. package/theme/_ui-theme.scss +3 -3
  137. package/theme/global-style-by-bootstrap.scss +3 -3
  138. package/theme/global-style-by-tailwind.scss +3 -3
  139. package/theme/scrollbar.scss +40 -40
  140. package/tooltip/tooltip.component.d.ts +2 -0
  141. package/tooltip/tooltip.directive.d.ts +3 -5
  142. package/esm2020/alert/alert-container.component.mjs +0 -207
  143. package/esm2020/alert/alert-message.component.mjs +0 -102
  144. package/esm2020/alert/alert.module.mjs +0 -22
  145. package/esm2020/alert/testing/test-api.mjs +0 -44
  146. package/esm2020/behavior/await.directive.mjs +0 -133
  147. package/esm2020/behavior/behavior.module.mjs +0 -37
  148. package/esm2020/behavior/observe-content-class.directive.mjs +0 -63
  149. package/esm2020/behavior/sizing-monitor.directive.mjs +0 -31
  150. package/esm2020/behavior/sizing.directive.mjs +0 -256
  151. package/esm2020/clip-note/clip-note.component.mjs +0 -216
  152. package/esm2020/clip-note/clip-note.directive.mjs +0 -141
  153. package/esm2020/clip-note/clip-note.module.mjs +0 -32
  154. package/esm2020/common/common.module.mjs +0 -53
  155. package/esm2020/currency-input/currency-input.directive.mjs +0 -276
  156. package/esm2020/currency-input/currency-input.module.mjs +0 -19
  157. package/esm2020/decimal-input/decimal-input.directive.mjs +0 -122
  158. package/esm2020/discrete-input/discrete-input.component.mjs +0 -337
  159. package/esm2020/discrete-input/discrete-input.module.mjs +0 -21
  160. package/esm2020/file-upload/file-upload.component.mjs +0 -400
  161. package/esm2020/file-upload/file-upload.module.mjs +0 -44
  162. package/esm2020/file-upload/file-upload.service.mjs +0 -29
  163. package/esm2020/form-field/form-field.component.mjs +0 -82
  164. package/esm2020/form-field/form-field.module.mjs +0 -33
  165. package/esm2020/icon-font/icon-font.module.mjs +0 -22
  166. package/esm2020/icon-font/icon.directive.mjs +0 -102
  167. package/esm2020/icon-font/utilities.mjs +0 -51
  168. package/esm2020/panel/panel-section.component.mjs +0 -41
  169. package/esm2020/panel/panel.component.mjs +0 -87
  170. package/esm2020/panel/panel.module.mjs +0 -23
  171. package/esm2020/panel/tinted.directive.mjs +0 -60
  172. package/esm2020/phone-number/phone-number.directive.mjs +0 -188
  173. package/esm2020/phone-number/phone-number.pipe.mjs +0 -47
  174. package/esm2020/phone-number/phone-number.validator.mjs +0 -64
  175. package/esm2020/radio-panel/radio-panel-item.component.mjs +0 -93
  176. package/esm2020/radio-panel/radio-panel.component.mjs +0 -81
  177. package/esm2020/radio-panel/testing/test-api.mjs +0 -47
  178. package/esm2020/selection-panel/selection-panel-item.component.mjs +0 -166
  179. package/esm2020/selection-panel/selection-panel.directive.mjs +0 -119
  180. package/esm2020/selection-panel/selection-panel.module.mjs +0 -23
  181. package/esm2020/skeletons/skeleton-loader-presets.directive.mjs +0 -83
  182. package/esm2020/skeletons/skeleton-loader.component.mjs +0 -76
  183. package/esm2020/skeletons/skeletons.module.mjs +0 -35
  184. package/esm2020/stepper/stepper.component.mjs +0 -176
  185. package/esm2020/stepper/stepper.module.mjs +0 -52
  186. package/esm2020/tooltip/tooltip.component.mjs +0 -54
  187. package/esm2020/tooltip/tooltip.directive.mjs +0 -149
  188. package/esm2020/tooltip/tooltip.module.mjs +0 -25
  189. package/fesm2015/bravura-ui-alert-testing.mjs +0 -64
  190. package/fesm2015/bravura-ui-alert-testing.mjs.map +0 -1
  191. package/fesm2015/bravura-ui-alert.mjs +0 -340
  192. package/fesm2015/bravura-ui-alert.mjs.map +0 -1
  193. package/fesm2015/bravura-ui-behavior.mjs +0 -515
  194. package/fesm2015/bravura-ui-behavior.mjs.map +0 -1
  195. package/fesm2015/bravura-ui-clip-note.mjs +0 -393
  196. package/fesm2015/bravura-ui-clip-note.mjs.map +0 -1
  197. package/fesm2015/bravura-ui-common.mjs +0 -96
  198. package/fesm2015/bravura-ui-common.mjs.map +0 -1
  199. package/fesm2015/bravura-ui-currency-input.mjs +0 -300
  200. package/fesm2015/bravura-ui-currency-input.mjs.map +0 -1
  201. package/fesm2015/bravura-ui-decimal-input.mjs +0 -145
  202. package/fesm2015/bravura-ui-decimal-input.mjs.map +0 -1
  203. package/fesm2015/bravura-ui-discrete-input.mjs +0 -365
  204. package/fesm2015/bravura-ui-discrete-input.mjs.map +0 -1
  205. package/fesm2015/bravura-ui-file-upload.mjs +0 -478
  206. package/fesm2015/bravura-ui-file-upload.mjs.map +0 -1
  207. package/fesm2015/bravura-ui-form-field.mjs +0 -120
  208. package/fesm2015/bravura-ui-form-field.mjs.map +0 -1
  209. package/fesm2015/bravura-ui-icon-font.mjs +0 -178
  210. package/fesm2015/bravura-ui-icon-font.mjs.map +0 -1
  211. package/fesm2015/bravura-ui-panel.mjs +0 -210
  212. package/fesm2015/bravura-ui-panel.mjs.map +0 -1
  213. package/fesm2015/bravura-ui-phone-number.mjs +0 -327
  214. package/fesm2015/bravura-ui-phone-number.mjs.map +0 -1
  215. package/fesm2015/bravura-ui-radio-panel-testing.mjs +0 -63
  216. package/fesm2015/bravura-ui-radio-panel-testing.mjs.map +0 -1
  217. package/fesm2015/bravura-ui-radio-panel.mjs +0 -200
  218. package/fesm2015/bravura-ui-radio-panel.mjs.map +0 -1
  219. package/fesm2015/bravura-ui-selection-panel.mjs +0 -311
  220. package/fesm2015/bravura-ui-selection-panel.mjs.map +0 -1
  221. package/fesm2015/bravura-ui-skeletons.mjs +0 -195
  222. package/fesm2015/bravura-ui-skeletons.mjs.map +0 -1
  223. package/fesm2015/bravura-ui-stepper.mjs +0 -253
  224. package/fesm2015/bravura-ui-stepper.mjs.map +0 -1
  225. package/fesm2015/bravura-ui-tooltip.mjs +0 -229
  226. package/fesm2015/bravura-ui-tooltip.mjs.map +0 -1
  227. package/fesm2015/bravura-ui.mjs.map +0 -1
  228. package/fesm2020/bravura-ui-alert-testing.mjs.map +0 -1
  229. package/fesm2020/bravura-ui-alert.mjs +0 -328
  230. package/fesm2020/bravura-ui-alert.mjs.map +0 -1
  231. package/fesm2020/bravura-ui-behavior.mjs.map +0 -1
  232. package/fesm2020/bravura-ui-clip-note.mjs.map +0 -1
  233. package/fesm2020/bravura-ui-common.mjs.map +0 -1
  234. package/fesm2020/bravura-ui-currency-input.mjs.map +0 -1
  235. package/fesm2020/bravura-ui-decimal-input.mjs.map +0 -1
  236. package/fesm2020/bravura-ui-discrete-input.mjs.map +0 -1
  237. package/fesm2020/bravura-ui-file-upload.mjs +0 -474
  238. package/fesm2020/bravura-ui-file-upload.mjs.map +0 -1
  239. package/fesm2020/bravura-ui-form-field.mjs.map +0 -1
  240. package/fesm2020/bravura-ui-icon-font.mjs.map +0 -1
  241. package/fesm2020/bravura-ui-panel.mjs +0 -206
  242. package/fesm2020/bravura-ui-panel.mjs.map +0 -1
  243. package/fesm2020/bravura-ui-phone-number.mjs.map +0 -1
  244. package/fesm2020/bravura-ui-radio-panel-testing.mjs.map +0 -1
  245. package/fesm2020/bravura-ui-radio-panel.mjs.map +0 -1
  246. package/fesm2020/bravura-ui-selection-panel.mjs +0 -306
  247. package/fesm2020/bravura-ui-selection-panel.mjs.map +0 -1
  248. package/fesm2020/bravura-ui-skeletons.mjs.map +0 -1
  249. package/fesm2020/bravura-ui-stepper.mjs +0 -251
  250. package/fesm2020/bravura-ui-stepper.mjs.map +0 -1
  251. package/fesm2020/bravura-ui-tooltip.mjs.map +0 -1
  252. package/fesm2020/bravura-ui.mjs +0 -8
  253. package/fesm2020/bravura-ui.mjs.map +0 -1
  254. /package/{esm2020 → esm2022}/alert/bravura-ui-alert.mjs +0 -0
  255. /package/{esm2020 → esm2022}/alert/testing/bravura-ui-alert-testing.mjs +0 -0
  256. /package/{esm2020 → esm2022}/behavior/bravura-ui-behavior.mjs +0 -0
  257. /package/{esm2020 → esm2022}/bravura-ui.mjs +0 -0
  258. /package/{esm2020 → esm2022}/clip-note/bravura-ui-clip-note.mjs +0 -0
  259. /package/{esm2020 → esm2022}/common/bravura-ui-common.mjs +0 -0
  260. /package/{esm2020 → esm2022}/currency-input/bravura-ui-currency-input.mjs +0 -0
  261. /package/{esm2020 → esm2022}/decimal-input/bravura-ui-decimal-input.mjs +0 -0
  262. /package/{esm2020 → esm2022}/decimal-input/public-api.mjs +0 -0
  263. /package/{esm2020 → esm2022}/discrete-input/bravura-ui-discrete-input.mjs +0 -0
  264. /package/{esm2020 → esm2022}/file-upload/bravura-ui-file-upload.mjs +0 -0
  265. /package/{esm2020 → esm2022}/form-field/bravura-ui-form-field.mjs +0 -0
  266. /package/{esm2020 → esm2022}/icon-font/bravura-ui-icon-font.mjs +0 -0
  267. /package/{esm2020 → esm2022}/panel/bravura-ui-panel.mjs +0 -0
  268. /package/{esm2020 → esm2022}/phone-number/bravura-ui-phone-number.mjs +0 -0
  269. /package/{esm2020 → esm2022}/radio-panel/bravura-ui-radio-panel.mjs +0 -0
  270. /package/{esm2020 → esm2022}/radio-panel/public-api.mjs +0 -0
  271. /package/{esm2020 → esm2022}/radio-panel/testing/bravura-ui-radio-panel-testing.mjs +0 -0
  272. /package/{esm2020 → esm2022}/selection-panel/bravura-ui-selection-panel.mjs +0 -0
  273. /package/{esm2020 → esm2022}/skeletons/bravura-ui-skeletons.mjs +0 -0
  274. /package/{esm2020 → esm2022}/stepper/bravura-ui-stepper.mjs +0 -0
  275. /package/{esm2020 → esm2022}/tooltip/bravura-ui-tooltip.mjs +0 -0
  276. /package/{fesm2015 → fesm2022}/bravura-ui.mjs +0 -0
@@ -0,0 +1,63 @@
1
+ import { ANIMATION_MODULE_TYPE, ChangeDetectionStrategy, Component, Inject, InjectionToken, Optional, ViewChild, ViewContainerRef, ViewEncapsulation } from '@angular/core';
2
+ import { matTooltipAnimations, TooltipComponent as MatTooltipComponent } from '@angular/material/tooltip';
3
+ import { getTextWidth } from '@bravura/ui/common';
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "@angular/common";
6
+ /**
7
+ * @ignore
8
+ */
9
+ export const BUI_TOOLTIP_TEMPLATE_REF = new InjectionToken('@bravura/ui/tooltip/templateContainer');
10
+ export class TooltipComponent extends MatTooltipComponent {
11
+ constructor(changeDetectorRef, elementRef, _tooltipInst, animationMode) {
12
+ super(changeDetectorRef, elementRef, animationMode);
13
+ this._tooltipInst = _tooltipInst;
14
+ this._messageCopy = '';
15
+ }
16
+ show(delay) {
17
+ if (this._messageCopy !== this.message && !this._tooltipInst.template) {
18
+ this.tooltipDiv.nativeElement.innerHTML = this.message;
19
+ this._messageCopy = this.message;
20
+ const width = Math.max(Math.sqrt(getTextWidth(this.message) * 40), 360);
21
+ this._tooltip.nativeElement.style.maxWidth = `${width}px`;
22
+ }
23
+ else if (this._tooltipInst.template) {
24
+ this.messageCont.clear();
25
+ const ref = this.messageCont.createEmbeddedView(this._tooltipInst.template);
26
+ ref.detectChanges();
27
+ this._tooltipInst.message = this.message = this.tooltipDiv.nativeElement.textContent;
28
+ }
29
+ super.show(delay);
30
+ }
31
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: TooltipComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: BUI_TOOLTIP_TEMPLATE_REF }, { token: ANIMATION_MODULE_TYPE, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
32
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.2", type: TooltipComponent, selector: "bui-tooltip-component", host: { attributes: { "aria-hidden": "true" }, listeners: { "mouseleave": "_handleMouseLeave($event)" }, properties: { "style.zoom": "isVisible() ? 1 : null" }, classAttribute: "bui-tooltip-component bui-host" }, viewQueries: [{ propertyName: "_tooltip", first: true, predicate: ["tooltip"], descendants: true, static: true }, { propertyName: "tooltipDiv", first: true, predicate: ["tooltipDiv"], descendants: true, static: true }, { propertyName: "messageCont", first: true, predicate: ["messageCont"], descendants: true, read: ViewContainerRef, static: true }], usesInheritance: true, ngImport: i0, template: "<div\r\n\t#tooltip\r\n\tclass=\"mdc-tooltip mdc-tooltip--shown mat-mdc-tooltip bui-tooltip\"\r\n\t[ngClass]=\"tooltipClass\"\r\n\t(animationend)=\"_handleAnimationEnd($event)\"\r\n\t[class.mdc-tooltip--multiline]=\"_isMultiline\"\r\n>\r\n\t<div #tooltipDiv>\r\n\t\t<ng-container #messageCont></ng-container>\r\n\t</div>\r\n</div>\r\n", styles: [".bui-tooltip.mat-mdc-tooltip{--mdc-plain-tooltip-supporting-text-size: inherit;padding:8px;border-radius:4px;background-color:var(--mdc-plain-tooltip-container-color, #fff);color:var(--mdc-plain-tooltip-supporting-text-color, #000)}.bui-tooltip.mat-mdc-tooltip.bui-tooltip-400{max-width:400px!important}.bui-tooltip.mat-mdc-tooltip.bui-tooltip-500{max-width:500px!important}.bui-tooltip.mat-mdc-tooltip.bui-tooltip-600{max-width:600px!important}.bui-tooltip.mat-mdc-tooltip.bui-tooltip-700{max-width:700px!important}.bui-tooltip.mat-mdc-tooltip.bui-tooltip-800{max-width:800px!important}.bui-tooltip.mat-mdc-tooltip.bui-tooltip-900{max-width:900px!important}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], animations: [matTooltipAnimations.tooltipState], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
33
+ }
34
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: TooltipComponent, decorators: [{
35
+ type: Component,
36
+ args: [{ selector: 'bui-tooltip-component', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, animations: [matTooltipAnimations.tooltipState], host: {
37
+ class: 'bui-tooltip-component bui-host',
38
+ // Forces the element to have a layout in IE and Edge. This fixes issues where the element
39
+ // won't be rendered if the animations are disabled or there is no web animations polyfill.
40
+ '[style.zoom]': 'isVisible() ? 1 : null',
41
+ '(mouseleave)': '_handleMouseLeave($event)',
42
+ 'aria-hidden': 'true'
43
+ }, template: "<div\r\n\t#tooltip\r\n\tclass=\"mdc-tooltip mdc-tooltip--shown mat-mdc-tooltip bui-tooltip\"\r\n\t[ngClass]=\"tooltipClass\"\r\n\t(animationend)=\"_handleAnimationEnd($event)\"\r\n\t[class.mdc-tooltip--multiline]=\"_isMultiline\"\r\n>\r\n\t<div #tooltipDiv>\r\n\t\t<ng-container #messageCont></ng-container>\r\n\t</div>\r\n</div>\r\n", styles: [".bui-tooltip.mat-mdc-tooltip{--mdc-plain-tooltip-supporting-text-size: inherit;padding:8px;border-radius:4px;background-color:var(--mdc-plain-tooltip-container-color, #fff);color:var(--mdc-plain-tooltip-supporting-text-color, #000)}.bui-tooltip.mat-mdc-tooltip.bui-tooltip-400{max-width:400px!important}.bui-tooltip.mat-mdc-tooltip.bui-tooltip-500{max-width:500px!important}.bui-tooltip.mat-mdc-tooltip.bui-tooltip-600{max-width:600px!important}.bui-tooltip.mat-mdc-tooltip.bui-tooltip-700{max-width:700px!important}.bui-tooltip.mat-mdc-tooltip.bui-tooltip-800{max-width:800px!important}.bui-tooltip.mat-mdc-tooltip.bui-tooltip-900{max-width:900px!important}\n"] }]
44
+ }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: undefined, decorators: [{
45
+ type: Inject,
46
+ args: [BUI_TOOLTIP_TEMPLATE_REF]
47
+ }] }, { type: undefined, decorators: [{
48
+ type: Optional
49
+ }, {
50
+ type: Inject,
51
+ args: [ANIMATION_MODULE_TYPE]
52
+ }] }], propDecorators: { _tooltip: [{
53
+ type: ViewChild,
54
+ args: ['tooltip', { static: true }]
55
+ }], tooltipDiv: [{
56
+ type: ViewChild,
57
+ args: ['tooltipDiv', { static: true }]
58
+ }], messageCont: [{
59
+ type: ViewChild,
60
+ args: ['messageCont', { static: true, read: ViewContainerRef }]
61
+ }] } });
62
+ TooltipComponent.ɵcmp.styles.push(...MatTooltipComponent.ɵcmp.styles);
63
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbHRpcC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy91aS90b29sdGlwL3Rvb2x0aXAuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vcHJvamVjdHMvdWkvdG9vbHRpcC90b29sdGlwLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTixxQkFBcUIsRUFDckIsdUJBQXVCLEVBRXZCLFNBQVMsRUFFVCxNQUFNLEVBQ04sY0FBYyxFQUNkLFFBQVEsRUFFUixTQUFTLEVBQ1QsZ0JBQWdCLEVBQ2hCLGlCQUFpQixFQUNqQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsZ0JBQWdCLElBQUksbUJBQW1CLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUMxRyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7OztBQVVsRDs7R0FFRztBQUNILE1BQU0sQ0FBQyxNQUFNLHdCQUF3QixHQUFHLElBQUksY0FBYyxDQUN6RCx1Q0FBdUMsQ0FDdkMsQ0FBQztBQWtCRixNQUFNLE9BQU8sZ0JBQWlCLFNBQVEsbUJBQW1CO0lBWXhELFlBQ0MsaUJBQW9DLEVBQ3BDLFVBQW1DLEVBQ00sWUFBc0MsRUFDcEMsYUFBc0I7UUFFakUsS0FBSyxDQUFDLGlCQUFpQixFQUFFLFVBQVUsRUFBRSxhQUFhLENBQUMsQ0FBQztRQUhYLGlCQUFZLEdBQVosWUFBWSxDQUEwQjtRQWR4RSxpQkFBWSxHQUFHLEVBQUUsQ0FBQztJQWtCMUIsQ0FBQztJQUVELElBQUksQ0FBQyxLQUFhO1FBQ2pCLElBQUksSUFBSSxDQUFDLFlBQVksS0FBSyxJQUFJLENBQUMsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUN2RSxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQztZQUN2RCxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUM7WUFDakMsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsRUFBRSxDQUFDLEVBQUUsR0FBRyxDQUFDLENBQUM7WUFDeEUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLFFBQVEsR0FBRyxHQUFHLEtBQUssSUFBSSxDQUFDO1FBQzNELENBQUM7YUFBTSxJQUFJLElBQUksQ0FBQyxZQUFZLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDdkMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUN6QixNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDNUUsR0FBRyxDQUFDLGFBQWEsRUFBRSxDQUFDO1lBQ3BCLElBQUksQ0FBQyxZQUFZLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsV0FBcUIsQ0FBQztRQUNoRyxDQUFDO1FBQ0QsS0FBSyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNuQixDQUFDOzhHQWxDVyxnQkFBZ0IsNkVBZW5CLHdCQUF3QixhQUNaLHFCQUFxQjtrR0FoQjlCLGdCQUFnQixzakJBU29CLGdCQUFnQixrRUN6RGpFLCtVQVdBLDh4QkQyQmEsQ0FBQyxvQkFBb0IsQ0FBQyxZQUFZLENBQUM7OzJGQVVuQyxnQkFBZ0I7a0JBaEI1QixTQUFTOytCQUNDLHVCQUF1QixpQkFHbEIsaUJBQWlCLENBQUMsSUFBSSxtQkFDcEIsdUJBQXVCLENBQUMsTUFBTSxjQUNuQyxDQUFDLG9CQUFvQixDQUFDLFlBQVksQ0FBQyxRQUN6Qzt3QkFDTCxLQUFLLEVBQUUsZ0NBQWdDO3dCQUN2QywwRkFBMEY7d0JBQzFGLDJGQUEyRjt3QkFDM0YsY0FBYyxFQUFFLHdCQUF3Qjt3QkFDeEMsY0FBYyxFQUFFLDJCQUEyQjt3QkFDM0MsYUFBYSxFQUFFLE1BQU07cUJBQ3JCOzswQkFpQkMsTUFBTTsyQkFBQyx3QkFBd0I7OzBCQUMvQixRQUFROzswQkFBSSxNQUFNOzJCQUFDLHFCQUFxQjt5Q0FaMUMsUUFBUTtzQkFEUCxTQUFTO3VCQUFDLFNBQVMsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUU7Z0JBSTlCLFVBQVU7c0JBRGpCLFNBQVM7dUJBQUMsWUFBWSxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTtnQkFJakMsV0FBVztzQkFEbEIsU0FBUzt1QkFBQyxhQUFhLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxnQkFBZ0IsRUFBRTs7QUE0QmxFLGdCQUF3QixDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUksbUJBQTJCLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuXHRBTklNQVRJT05fTU9EVUxFX1RZUEUsXHJcblx0Q2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXHJcblx0Q2hhbmdlRGV0ZWN0b3JSZWYsXHJcblx0Q29tcG9uZW50LFxyXG5cdEVsZW1lbnRSZWYsXHJcblx0SW5qZWN0LFxyXG5cdEluamVjdGlvblRva2VuLFxyXG5cdE9wdGlvbmFsLFxyXG5cdFRlbXBsYXRlUmVmLFxyXG5cdFZpZXdDaGlsZCxcclxuXHRWaWV3Q29udGFpbmVyUmVmLFxyXG5cdFZpZXdFbmNhcHN1bGF0aW9uXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IG1hdFRvb2x0aXBBbmltYXRpb25zLCBUb29sdGlwQ29tcG9uZW50IGFzIE1hdFRvb2x0aXBDb21wb25lbnQgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90b29sdGlwJztcclxuaW1wb3J0IHsgZ2V0VGV4dFdpZHRoIH0gZnJvbSAnQGJyYXZ1cmEvdWkvY29tbW9uJztcclxuXHJcbi8qKlxyXG4gKiBAaWdub3JlXHJcbiAqL1xyXG5pbnRlcmZhY2UgVG9vbHRpcFRlbXBsYXRlQ29udGFpbmVyIHtcclxuXHR0ZW1wbGF0ZT86IFRlbXBsYXRlUmVmPGFueT47XHJcblx0bWVzc2FnZT86IHN0cmluZztcclxufVxyXG5cclxuLyoqXHJcbiAqIEBpZ25vcmVcclxuICovXHJcbmV4cG9ydCBjb25zdCBCVUlfVE9PTFRJUF9URU1QTEFURV9SRUYgPSBuZXcgSW5qZWN0aW9uVG9rZW48VG9vbHRpcFRlbXBsYXRlQ29udGFpbmVyPihcclxuXHQnQGJyYXZ1cmEvdWkvdG9vbHRpcC90ZW1wbGF0ZUNvbnRhaW5lcidcclxuKTtcclxuXHJcbkBDb21wb25lbnQoe1xyXG5cdHNlbGVjdG9yOiAnYnVpLXRvb2x0aXAtY29tcG9uZW50JyxcclxuXHR0ZW1wbGF0ZVVybDogJy4vdG9vbHRpcC5jb21wb25lbnQuaHRtbCcsXHJcblx0c3R5bGVVcmxzOiBbJy4vdG9vbHRpcC5jb21wb25lbnQuc2NzcyddLFxyXG5cdGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXHJcblx0Y2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcblx0YW5pbWF0aW9uczogW21hdFRvb2x0aXBBbmltYXRpb25zLnRvb2x0aXBTdGF0ZV0sXHJcblx0aG9zdDoge1xyXG5cdFx0Y2xhc3M6ICdidWktdG9vbHRpcC1jb21wb25lbnQgYnVpLWhvc3QnLFxyXG5cdFx0Ly8gRm9yY2VzIHRoZSBlbGVtZW50IHRvIGhhdmUgYSBsYXlvdXQgaW4gSUUgYW5kIEVkZ2UuIFRoaXMgZml4ZXMgaXNzdWVzIHdoZXJlIHRoZSBlbGVtZW50XHJcblx0XHQvLyB3b24ndCBiZSByZW5kZXJlZCBpZiB0aGUgYW5pbWF0aW9ucyBhcmUgZGlzYWJsZWQgb3IgdGhlcmUgaXMgbm8gd2ViIGFuaW1hdGlvbnMgcG9seWZpbGwuXHJcblx0XHQnW3N0eWxlLnpvb21dJzogJ2lzVmlzaWJsZSgpID8gMSA6IG51bGwnLFxyXG5cdFx0Jyhtb3VzZWxlYXZlKSc6ICdfaGFuZGxlTW91c2VMZWF2ZSgkZXZlbnQpJyxcclxuXHRcdCdhcmlhLWhpZGRlbic6ICd0cnVlJ1xyXG5cdH1cclxufSlcclxuZXhwb3J0IGNsYXNzIFRvb2x0aXBDb21wb25lbnQgZXh0ZW5kcyBNYXRUb29sdGlwQ29tcG9uZW50IHtcclxuXHRwcml2YXRlIF9tZXNzYWdlQ29weSA9ICcnO1xyXG5cclxuXHRAVmlld0NoaWxkKCd0b29sdGlwJywgeyBzdGF0aWM6IHRydWUgfSlcclxuXHRfdG9vbHRpcCE6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+O1xyXG5cclxuXHRAVmlld0NoaWxkKCd0b29sdGlwRGl2JywgeyBzdGF0aWM6IHRydWUgfSlcclxuXHRwcml2YXRlIHRvb2x0aXBEaXYhOiBFbGVtZW50UmVmPEhUTUxEaXZFbGVtZW50PjtcclxuXHJcblx0QFZpZXdDaGlsZCgnbWVzc2FnZUNvbnQnLCB7IHN0YXRpYzogdHJ1ZSwgcmVhZDogVmlld0NvbnRhaW5lclJlZiB9KVxyXG5cdHByaXZhdGUgbWVzc2FnZUNvbnQhOiBWaWV3Q29udGFpbmVyUmVmO1xyXG5cclxuXHRjb25zdHJ1Y3RvcihcclxuXHRcdGNoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZixcclxuXHRcdGVsZW1lbnRSZWY6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+LFxyXG5cdFx0QEluamVjdChCVUlfVE9PTFRJUF9URU1QTEFURV9SRUYpIHB1YmxpYyBfdG9vbHRpcEluc3Q6IFRvb2x0aXBUZW1wbGF0ZUNvbnRhaW5lcixcclxuXHRcdEBPcHRpb25hbCgpIEBJbmplY3QoQU5JTUFUSU9OX01PRFVMRV9UWVBFKSBhbmltYXRpb25Nb2RlPzogc3RyaW5nXHJcblx0KSB7XHJcblx0XHRzdXBlcihjaGFuZ2VEZXRlY3RvclJlZiwgZWxlbWVudFJlZiwgYW5pbWF0aW9uTW9kZSk7XHJcblx0fVxyXG5cclxuXHRzaG93KGRlbGF5OiBudW1iZXIpOiB2b2lkIHtcclxuXHRcdGlmICh0aGlzLl9tZXNzYWdlQ29weSAhPT0gdGhpcy5tZXNzYWdlICYmICF0aGlzLl90b29sdGlwSW5zdC50ZW1wbGF0ZSkge1xyXG5cdFx0XHR0aGlzLnRvb2x0aXBEaXYubmF0aXZlRWxlbWVudC5pbm5lckhUTUwgPSB0aGlzLm1lc3NhZ2U7XHJcblx0XHRcdHRoaXMuX21lc3NhZ2VDb3B5ID0gdGhpcy5tZXNzYWdlO1xyXG5cdFx0XHRjb25zdCB3aWR0aCA9IE1hdGgubWF4KE1hdGguc3FydChnZXRUZXh0V2lkdGgodGhpcy5tZXNzYWdlKSAqIDQwKSwgMzYwKTtcclxuXHRcdFx0dGhpcy5fdG9vbHRpcC5uYXRpdmVFbGVtZW50LnN0eWxlLm1heFdpZHRoID0gYCR7d2lkdGh9cHhgO1xyXG5cdFx0fSBlbHNlIGlmICh0aGlzLl90b29sdGlwSW5zdC50ZW1wbGF0ZSkge1xyXG5cdFx0XHR0aGlzLm1lc3NhZ2VDb250LmNsZWFyKCk7XHJcblx0XHRcdGNvbnN0IHJlZiA9IHRoaXMubWVzc2FnZUNvbnQuY3JlYXRlRW1iZWRkZWRWaWV3KHRoaXMuX3Rvb2x0aXBJbnN0LnRlbXBsYXRlKTtcclxuXHRcdFx0cmVmLmRldGVjdENoYW5nZXMoKTtcclxuXHRcdFx0dGhpcy5fdG9vbHRpcEluc3QubWVzc2FnZSA9IHRoaXMubWVzc2FnZSA9IHRoaXMudG9vbHRpcERpdi5uYXRpdmVFbGVtZW50LnRleHRDb250ZW50IGFzIHN0cmluZztcclxuXHRcdH1cclxuXHRcdHN1cGVyLnNob3coZGVsYXkpO1xyXG5cdH1cclxufVxyXG5cclxuKFRvb2x0aXBDb21wb25lbnQgYXMgYW55KS7JtWNtcC5zdHlsZXMucHVzaCguLi4oTWF0VG9vbHRpcENvbXBvbmVudCBhcyBhbnkpLsm1Y21wLnN0eWxlcyk7XHJcbiIsIjxkaXZcclxuXHQjdG9vbHRpcFxyXG5cdGNsYXNzPVwibWRjLXRvb2x0aXAgbWRjLXRvb2x0aXAtLXNob3duIG1hdC1tZGMtdG9vbHRpcCBidWktdG9vbHRpcFwiXHJcblx0W25nQ2xhc3NdPVwidG9vbHRpcENsYXNzXCJcclxuXHQoYW5pbWF0aW9uZW5kKT1cIl9oYW5kbGVBbmltYXRpb25FbmQoJGV2ZW50KVwiXHJcblx0W2NsYXNzLm1kYy10b29sdGlwLS1tdWx0aWxpbmVdPVwiX2lzTXVsdGlsaW5lXCJcclxuPlxyXG5cdDxkaXYgI3Rvb2x0aXBEaXY+XHJcblx0XHQ8bmctY29udGFpbmVyICNtZXNzYWdlQ29udD48L25nLWNvbnRhaW5lcj5cclxuXHQ8L2Rpdj5cclxuPC9kaXY+XHJcbiJdfQ==
@@ -0,0 +1,148 @@
1
+ import { DOCUMENT } from '@angular/common';
2
+ import { Directive, HostListener, Inject, Input, Optional, TemplateRef, forwardRef } from '@angular/core';
3
+ import { MAT_TOOLTIP_DEFAULT_OPTIONS, MAT_TOOLTIP_SCROLL_STRATEGY, MatTooltip } from '@angular/material/tooltip';
4
+ import { Observable, Subject } from 'rxjs';
5
+ import { BUI_TOOLTIP_TEMPLATE_REF } from './tooltip.component';
6
+ import * as i0 from "@angular/core";
7
+ import * as i1 from "@angular/cdk/overlay";
8
+ import * as i2 from "@angular/cdk/platform";
9
+ import * as i3 from "@angular/cdk/a11y";
10
+ import * as i4 from "@angular/cdk/bidi";
11
+ /**
12
+ * This directive extends [Angular Material tooltip](https://material.angular.io/components/tooltip/overview), with the additional capability of displaying
13
+ * HTML content in the overlay area.
14
+ *
15
+ * All the other features are identical as those in Angular Material tooltip.
16
+ */
17
+ export class TooltipDirective extends MatTooltip {
18
+ constructor(overlay, elementRef, scrollDispatcher, viewContainerRef, ngZone, platform, ariaDescriber, focusMonitor, scrollStrategy, dir, defaultOptions, _document) {
19
+ super(overlay, elementRef, scrollDispatcher, viewContainerRef, ngZone, platform, ariaDescriber, focusMonitor, scrollStrategy, dir, defaultOptions, _document);
20
+ this._contentSub = new Subject().subscribe();
21
+ this.touchGestures = 'off';
22
+ const element = elementRef.nativeElement;
23
+ element.setAttribute('aria-hidden', 'false');
24
+ if (element.tabIndex === -1) {
25
+ element.tabIndex = 0;
26
+ element.setAttribute('aria-roledescription', 'tooltip');
27
+ }
28
+ }
29
+ /** Allows the user to define the position of the tooltip relative to the parent element */
30
+ get buiTooltipPosition() {
31
+ return this.position;
32
+ }
33
+ set buiTooltipPosition(value) {
34
+ this.position = value;
35
+ }
36
+ /** Disables the display of the tooltip. */
37
+ get buiTooltipDisabled() {
38
+ return this.disabled;
39
+ }
40
+ set buiTooltipDisabled(value) {
41
+ this.disabled = value;
42
+ }
43
+ /** The message to be displayed in the tooltip. */
44
+ get buiTooltip() {
45
+ return this._templateRef || this.message;
46
+ }
47
+ set buiTooltip(value) {
48
+ this._contentSub.unsubscribe();
49
+ this._contentObs = undefined;
50
+ if (typeof value === 'string') {
51
+ this.message = value;
52
+ }
53
+ else if (value instanceof TemplateRef) {
54
+ this._templateRef = value;
55
+ if (value) {
56
+ this.message = '[bui-tooltip-template]';
57
+ }
58
+ else {
59
+ this._templateRef = undefined;
60
+ this.message = '';
61
+ }
62
+ }
63
+ else if (value instanceof Observable) {
64
+ this.message = '...';
65
+ this._contentObs = value;
66
+ }
67
+ }
68
+ /** @ignore */
69
+ get template() {
70
+ return this._templateRef;
71
+ }
72
+ /** Classes to be passed to the tooltip. Supports the same syntax as `ngClass`. */
73
+ get buiTooltipClass() {
74
+ return this.tooltipClass;
75
+ }
76
+ set buiTooltipClass(value) {
77
+ this.tooltipClass = value;
78
+ }
79
+ /** @ignore */
80
+ clicked() {
81
+ this.toggle();
82
+ }
83
+ /** Shows the tooltip after the delay in ms, defaults to tooltip-delay-show or 0ms if no input */
84
+ show(delay = this.showDelay, origin) {
85
+ if (this._contentObs) {
86
+ this._contentSub.unsubscribe();
87
+ this._contentSub = this._contentObs.subscribe(c => {
88
+ this.message = c;
89
+ this._contentSub.unsubscribe();
90
+ super.show(delay, origin);
91
+ });
92
+ }
93
+ else {
94
+ super.show(delay, origin);
95
+ }
96
+ }
97
+ ngOnDestroy() {
98
+ this._contentSub.unsubscribe();
99
+ }
100
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: TooltipDirective, deps: [{ token: i1.Overlay }, { token: i0.ElementRef }, { token: i1.ScrollDispatcher }, { token: i0.ViewContainerRef }, { token: i0.NgZone }, { token: i2.Platform }, { token: i3.AriaDescriber }, { token: i3.FocusMonitor }, { token: MAT_TOOLTIP_SCROLL_STRATEGY }, { token: i4.Directionality, optional: true }, { token: MAT_TOOLTIP_DEFAULT_OPTIONS, optional: true }, { token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Directive }); }
101
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.2", type: TooltipDirective, selector: "[buiTooltip]", inputs: { buiTooltipPosition: "buiTooltipPosition", buiTooltipDisabled: "buiTooltipDisabled", buiTooltip: "buiTooltip", buiTooltipClass: "buiTooltipClass" }, host: { listeners: { "click": "clicked()" }, classAttribute: "mat-tooltip-trigger bui-tooltip-trigger" }, providers: [
102
+ {
103
+ provide: BUI_TOOLTIP_TEMPLATE_REF,
104
+ useExisting: forwardRef(() => TooltipDirective)
105
+ }
106
+ ], exportAs: ["buiTooltip"], usesInheritance: true, ngImport: i0 }); }
107
+ }
108
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: TooltipDirective, decorators: [{
109
+ type: Directive,
110
+ args: [{
111
+ selector: '[buiTooltip]',
112
+ exportAs: 'buiTooltip',
113
+ host: {
114
+ class: 'mat-tooltip-trigger bui-tooltip-trigger'
115
+ },
116
+ providers: [
117
+ {
118
+ provide: BUI_TOOLTIP_TEMPLATE_REF,
119
+ useExisting: forwardRef(() => TooltipDirective)
120
+ }
121
+ ]
122
+ }]
123
+ }], ctorParameters: () => [{ type: i1.Overlay }, { type: i0.ElementRef }, { type: i1.ScrollDispatcher }, { type: i0.ViewContainerRef }, { type: i0.NgZone }, { type: i2.Platform }, { type: i3.AriaDescriber }, { type: i3.FocusMonitor }, { type: undefined, decorators: [{
124
+ type: Inject,
125
+ args: [MAT_TOOLTIP_SCROLL_STRATEGY]
126
+ }] }, { type: i4.Directionality, decorators: [{
127
+ type: Optional
128
+ }] }, { type: undefined, decorators: [{
129
+ type: Optional
130
+ }, {
131
+ type: Inject,
132
+ args: [MAT_TOOLTIP_DEFAULT_OPTIONS]
133
+ }] }, { type: undefined, decorators: [{
134
+ type: Inject,
135
+ args: [DOCUMENT]
136
+ }] }], propDecorators: { buiTooltipPosition: [{
137
+ type: Input
138
+ }], buiTooltipDisabled: [{
139
+ type: Input
140
+ }], buiTooltip: [{
141
+ type: Input
142
+ }], buiTooltipClass: [{
143
+ type: Input
144
+ }], clicked: [{
145
+ type: HostListener,
146
+ args: ['click']
147
+ }] } });
148
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbHRpcC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy91aS90b29sdGlwL3Rvb2x0aXAuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUlBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMzQyxPQUFPLEVBQ04sU0FBUyxFQUVULFlBQVksRUFDWixNQUFNLEVBQ04sS0FBSyxFQUVMLFFBQVEsRUFDUixXQUFXLEVBRVgsVUFBVSxFQUNWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFDTiwyQkFBMkIsRUFDM0IsMkJBQTJCLEVBQzNCLFVBQVUsRUFHVixNQUFNLDJCQUEyQixDQUFDO0FBQ25DLE9BQU8sRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFnQixNQUFNLE1BQU0sQ0FBQztBQUN6RCxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQzs7Ozs7O0FBRS9EOzs7OztHQUtHO0FBY0gsTUFBTSxPQUFPLGdCQUFpQixTQUFRLFVBQVU7SUFNL0MsWUFDQyxPQUFnQixFQUNoQixVQUFtQyxFQUNuQyxnQkFBa0MsRUFDbEMsZ0JBQWtDLEVBQ2xDLE1BQWMsRUFDZCxRQUFrQixFQUNsQixhQUE0QixFQUM1QixZQUEwQixFQUNXLGNBQW1CLEVBQzVDLEdBQW1CLEVBQ2tCLGNBQXdDLEVBQ3ZFLFNBQWM7UUFFaEMsS0FBSyxDQUNKLE9BQU8sRUFDUCxVQUFVLEVBQ1YsZ0JBQWdCLEVBQ2hCLGdCQUFnQixFQUNoQixNQUFNLEVBQ04sUUFBUSxFQUNSLGFBQWEsRUFDYixZQUFZLEVBQ1osY0FBYyxFQUNkLEdBQUcsRUFDSCxjQUFjLEVBQ2QsU0FBUyxDQUNULENBQUM7UUE5QkssZ0JBQVcsR0FBaUIsSUFBSSxPQUFPLEVBQVEsQ0FBQyxTQUFTLEVBQUUsQ0FBQztRQStCbkUsSUFBSSxDQUFDLGFBQWEsR0FBRyxLQUFLLENBQUM7UUFDM0Is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Q0FBQztZQUMzQixDQUFDLENBQUMsQ0FBQztRQUNKLENBQUM7YUFBTSxDQUFDO1lBQ1AsS0FBSyxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFDM0IsQ0FBQztJQUNGLENBQUM7SUFFRCxXQUFXO1FBQ1YsSUFBSSxDQUFDLFdBQVcsQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUNoQyxDQUFDOzhHQWpJVyxnQkFBZ0IsME9BZW5CLDJCQUEyQiwyREFFZiwyQkFBMkIsNkJBQ3ZDLFFBQVE7a0dBbEJMLGdCQUFnQiwrU0FQakI7WUFDVjtnQkFDQyxPQUFPLEVBQUUsd0JBQXdCO2dCQUNqQyxXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLGdCQUFnQixDQUFDO2FBQy9DO1NBQ0Q7OzJGQUVXLGdCQUFnQjtrQkFiNUIsU0FBUzttQkFBQztvQkFDVixRQUFRLEVBQUUsY0FBYztvQkFDeEIsUUFBUSxFQUFFLFlBQVk7b0JBQ3RCLElBQUksRUFBRTt3QkFDTCxLQUFLLEVBQUUseUNBQXlDO3FCQUNoRDtvQkFDRCxTQUFTLEVBQUU7d0JBQ1Y7NEJBQ0MsT0FBTyxFQUFFLHdCQUF3Qjs0QkFDakMsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsaUJBQWlCLENBQUM7eUJBQy9DO3FCQUNEO2lCQUNEOzswQkFnQkUsTUFBTTsyQkFBQywyQkFBMkI7OzBCQUNsQyxRQUFROzswQkFDUixRQUFROzswQkFBSSxNQUFNOzJCQUFDLDJCQUEyQjs7MEJBQzlDLE1BQU07MkJBQUMsUUFBUTt5Q0EyQmIsa0JBQWtCO3NCQURyQixLQUFLO2dCQVVGLGtCQUFrQjtzQkFEckIsS0FBSztnQkFVRixVQUFVO3NCQURiLEtBQUs7Z0JBOEJGLGVBQWU7c0JBRGxCLEtBQUs7Z0JBVU4sT0FBTztzQkFETixZQUFZO3VCQUFDLE9BQU8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBcmlhRGVzY3JpYmVyLCBGb2N1c01vbml0b3IgfSBmcm9tICdAYW5ndWxhci9jZGsvYTExeSc7XHJcbmltcG9ydCB7IERpcmVjdGlvbmFsaXR5IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2JpZGknO1xyXG5pbXBvcnQgeyBPdmVybGF5LCBTY3JvbGxEaXNwYXRjaGVyIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL292ZXJsYXknO1xyXG5pbXBvcnQgeyBQbGF0Zm9ybSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9wbGF0Zm9ybSc7XHJcbmltcG9ydCB7IERPQ1VNRU5UIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHtcclxuXHREaXJlY3RpdmUsXHJcblx0RWxlbWVudFJlZixcclxuXHRIb3N0TGlzdGVuZXIsXHJcblx0SW5qZWN0LFxyXG5cdElucHV0LFxyXG5cdE5nWm9uZSxcclxuXHRPcHRpb25hbCxcclxuXHRUZW1wbGF0ZVJlZixcclxuXHRWaWV3Q29udGFpbmVyUmVmLFxyXG5cdGZvcndhcmRSZWZcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtcclxuXHRNQVRfVE9PTFRJUF9ERUZBVUxUX09QVElPTlMsXHJcblx0TUFUX1RPT0xUSVBfU0NST0xMX1NUUkFURUdZLFxyXG5cdE1hdFRvb2x0aXAsXHJcblx0TWF0VG9vbHRpcERlZmF1bHRPcHRpb25zLFxyXG5cdFRvb2x0aXBQb3NpdGlvblxyXG59IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3Rvb2x0aXAnO1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBTdWJqZWN0LCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgQlVJX1RPT0xUSVBfVEVNUExBVEVfUkVGIH0gZnJvbSAnLi90b29sdGlwLmNvbXBvbmVudCc7XHJcblxyXG4vKipcclxuICogVGhpcyBkaXJlY3RpdmUgZXh0ZW5kcyBbQW5ndWxhciBNYXRlcmlhbCB0b29sdGlwXShodHRwczovL21hdGVyaWFsLmFuZ3VsYXIuaW8vY29tcG9uZW50cy90b29sdGlwL292ZXJ2aWV3KSwgd2l0aCB0aGUgYWRkaXRpb25hbCBjYXBhYmlsaXR5IG9mIGRpc3BsYXlpbmdcclxuICogSFRNTCBjb250ZW50IGluIHRoZSBvdmVybGF5IGFyZWEuXHJcbiAqXHJcbiAqIEFsbCB0aGUgb3RoZXIgZmVhdHVyZXMgYXJlIGlkZW50aWNhbCBhcyB0aG9zZSBpbiBBbmd1bGFyIE1hdGVyaWFsIHRvb2x0aXAuXHJcbiAqL1xyXG5ARGlyZWN0aXZlKHtcclxuXHRzZWxlY3RvcjogJ1tidWlUb29sdGlwXScsXHJcblx0ZXhwb3J0QXM6ICdidWlUb29sdGlwJyxcclxuXHRob3N0OiB7XHJcblx0XHRjbGFzczogJ21hdC10b29sdGlwLXRyaWdnZXIgYnVpLXRvb2x0aXAtdHJpZ2dlcidcclxuXHR9LFxyXG5cdHByb3ZpZGVyczogW1xyXG5cdFx0e1xyXG5cdFx0XHRwcm92aWRlOiBCVUlfVE9PTFRJUF9URU1QTEFURV9SRUYsXHJcblx0XHRcdHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFRvb2x0aXBEaXJlY3RpdmUpXHJcblx0XHR9XHJcblx0XVxyXG59KVxyXG5leHBvcnQgY2xhc3MgVG9vbHRpcERpcmVjdGl2ZSBleHRlbmRzIE1hdFRvb2x0aXAge1xyXG5cdC8vIHByaXZhdGUgX3Rvb2x0aXBDb21wb25lbnQgPSBUb29sdGlwQ29tcG9uZW50O1xyXG5cdHByaXZhdGUgX3RlbXBsYXRlUmVmPzogVGVtcGxhdGVSZWY8YW55PjtcclxuXHRwcml2YXRlIF9jb250ZW50U3ViOiBTdWJzY3JpcHRpb24gPSBuZXcgU3ViamVjdDx2b2lkPigpLnN1YnNjcmliZSgpO1xyXG5cdHByaXZhdGUgX2NvbnRlbnRPYnM/OiBPYnNlcnZhYmxlPHN0cmluZz47XHJcblxyXG5cdGNvbnN0cnVjdG9yKFxyXG5cdFx0b3ZlcmxheTogT3ZlcmxheSxcclxuXHRcdGVsZW1lbnRSZWY6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+LFxyXG5cdFx0c2Nyb2xsRGlzcGF0Y2hlcjogU2Nyb2xsRGlzcGF0Y2hlcixcclxuXHRcdHZpZXdDb250YWluZXJSZWY6IFZpZXdDb250YWluZXJSZWYsXHJcblx0XHRuZ1pvbmU6IE5nWm9uZSxcclxuXHRcdHBsYXRmb3JtOiBQbGF0Zm9ybSxcclxuXHRcdGFyaWFEZXNjcmliZXI6IEFyaWFEZXNjcmliZXIsXHJcblx0XHRmb2N1c01vbml0b3I6IEZvY3VzTW9uaXRvcixcclxuXHRcdEBJbmplY3QoTUFUX1RPT0xUSVBfU0NST0xMX1NUUkFURUdZKSBzY3JvbGxTdHJhdGVneTogYW55LFxyXG5cdFx0QE9wdGlvbmFsKCkgZGlyOiBEaXJlY3Rpb25hbGl0eSxcclxuXHRcdEBPcHRpb25hbCgpIEBJbmplY3QoTUFUX1RPT0xUSVBfREVGQVVMVF9PUFRJT05TKSBkZWZhdWx0T3B0aW9uczogTWF0VG9vbHRpcERlZmF1bHRPcHRpb25zLFxyXG5cdFx0QEluamVjdChET0NVTUVOVCkgX2RvY3VtZW50OiBhbnlcclxuXHQpIHtcclxuXHRcdHN1cGVyKFxyXG5cdFx0XHRvdmVybGF5LFxyXG5cdFx0XHRlbGVtZW50UmVmLFxyXG5cdFx0XHRzY3JvbGxEaXNwYXRjaGVyLFxyXG5cdFx0XHR2aWV3Q29udGFpbmVyUmVmLFxyXG5cdFx0XHRuZ1pvbmUsXHJcblx0XHRcdHBsYXRmb3JtLFxyXG5cdFx0XHRhcmlhRGVzY3JpYmVyLFxyXG5cdFx0XHRmb2N1c01vbml0b3IsXHJcblx0XHRcdHNjcm9sbFN0cmF0ZWd5LFxyXG5cdFx0XHRkaXIsXHJcblx0XHRcdGRlZmF1bHRPcHRpb25zLFxyXG5cdFx0XHRfZG9jdW1lbnRcclxuXHRcdCk7XHJcblx0XHR0aGlzLnRvdWNoR2VzdHVyZXMgPSAnb2ZmJztcclxuXHRcdGNvbnN0IGVsZW1lbnQgPSBlbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQ7XHJcblx0XHRlbGVtZW50LnNldEF0dHJpYnV0ZSgnYXJpYS1oaWRkZW4nLCAnZmFsc2UnKTtcclxuXHRcdGlmIChlbGVtZW50LnRhYkluZGV4ID09PSAtMSkge1xyXG5cdFx0XHRlbGVtZW50LnRhYkluZGV4ID0gMDtcclxuXHRcdFx0ZWxlbWVudC5zZXRBdHRyaWJ1dGUoJ2FyaWEtcm9sZWRlc2NyaXB0aW9uJywgJ3Rvb2x0aXAnKTtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdC8qKiBBbGxvd3MgdGhlIHVzZXIgdG8gZGVmaW5lIHRoZSBwb3NpdGlvbiBvZiB0aGUgdG9vbHRpcCByZWxhdGl2ZSB0byB0aGUgcGFyZW50IGVsZW1lbnQgKi9cclxuXHRASW5wdXQoKVxyXG5cdGdldCBidWlUb29sdGlwUG9zaXRpb24oKTogVG9vbHRpcFBvc2l0aW9uIHtcclxuXHRcdHJldHVybiB0aGlzLnBvc2l0aW9uO1xyXG5cdH1cclxuXHRzZXQgYnVpVG9vbHRpcFBvc2l0aW9uKHZhbHVlOiBUb29sdGlwUG9zaXRpb24pIHtcclxuXHRcdHRoaXMucG9zaXRpb24gPSB2YWx1ZTtcclxuXHR9XHJcblxyXG5cdC8qKiBEaXNhYmxlcyB0aGUgZGlzcGxheSBvZiB0aGUgdG9vbHRpcC4gKi9cclxuXHRASW5wdXQoKVxyXG5cdGdldCBidWlUb29sdGlwRGlzYWJsZWQoKTogYm9vbGVhbiB7XHJcblx0XHRyZXR1cm4gdGhpcy5kaXNhYmxlZDtcclxuXHR9XHJcblx0c2V0IGJ1aVRvb2x0aXBEaXNhYmxlZCh2YWx1ZSkge1xyXG5cdFx0dGhpcy5kaXNhYmxlZCA9IHZhbHVlO1xyXG5cdH1cclxuXHJcblx0LyoqIFRoZSBtZXNzYWdlIHRvIGJlIGRpc3BsYXllZCBpbiB0aGUgdG9vbHRpcC4gKi9cclxuXHRASW5wdXQoKVxyXG5cdGdldCBidWlUb29sdGlwKCk6IHN0cmluZyB8IFRlbXBsYXRlUmVmPGFueT4gfCBPYnNlcnZhYmxlPHN0cmluZz4ge1xyXG5cdFx0cmV0dXJuIHRoaXMuX3RlbXBsYXRlUmVmIHx8IHRoaXMubWVzc2FnZTtcclxuXHR9XHJcblx0c2V0IGJ1aVRvb2x0aXAodmFsdWUpIHtcclxuXHRcdHRoaXMuX2NvbnRlbnRTdWIudW5zdWJzY3JpYmUoKTtcclxuXHRcdHRoaXMuX2NvbnRlbnRPYnMgPSB1bmRlZmluZWQ7XHJcblx0XHRpZiAodHlwZW9mIHZhbHVlID09PSAnc3RyaW5nJykge1xyXG5cdFx0XHR0aGlzLm1lc3NhZ2UgPSB2YWx1ZTtcclxuXHRcdH0gZWxzZSBpZiAodmFsdWUgaW5zdGFuY2VvZiBUZW1wbGF0ZVJlZikge1xyXG5cdFx0XHR0aGlzLl90ZW1wbGF0ZVJlZiA9IHZhbHVlO1xyXG5cdFx0XHRpZiAodmFsdWUpIHtcclxuXHRcdFx0XHR0aGlzLm1lc3NhZ2UgPSAnW2J1aS10b29sdGlwLXRlbXBsYXRlXSc7XHJcblx0XHRcdH0gZWxzZSB7XHJcblx0XHRcdFx0dGhpcy5fdGVtcGxhdGVSZWYgPSB1bmRlZmluZWQ7XHJcblx0XHRcdFx0dGhpcy5tZXNzYWdlID0gJyc7XHJcblx0XHRcdH1cclxuXHRcdH0gZWxzZSBpZiAodmFsdWUgaW5zdGFuY2VvZiBPYnNlcnZhYmxlKSB7XHJcblx0XHRcdHRoaXMubWVzc2FnZSA9ICcuLi4nO1xyXG5cdFx0XHR0aGlzLl9jb250ZW50T2JzID0gdmFsdWU7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHQvKiogQGlnbm9yZSAqL1xyXG5cdGdldCB0ZW1wbGF0ZSgpOiBUZW1wbGF0ZVJlZjxhbnk+IHwgdW5kZWZpbmVkIHtcclxuXHRcdHJldHVybiB0aGlzLl90ZW1wbGF0ZVJlZjtcclxuXHR9XHJcblxyXG5cdC8qKiBDbGFzc2VzIHRvIGJlIHBhc3NlZCB0byB0aGUgdG9vbHRpcC4gU3VwcG9ydHMgdGhlIHNhbWUgc3ludGF4IGFzIGBuZ0NsYXNzYC4gKi9cclxuXHRASW5wdXQoKVxyXG5cdGdldCBidWlUb29sdGlwQ2xhc3MoKSB7XHJcblx0XHRyZXR1cm4gdGhpcy50b29sdGlwQ2xhc3M7XHJcblx0fVxyXG5cdHNldCBidWlUb29sdGlwQ2xhc3ModmFsdWU6IHN0cmluZyB8IHN0cmluZ1tdIHwgU2V0PHN0cmluZz4gfCB7IFtrZXk6IHN0cmluZ106IGFueSB9KSB7XHJcblx0XHR0aGlzLnRvb2x0aXBDbGFzcyA9IHZhbHVlO1xyXG5cdH1cclxuXHJcblx0LyoqIEBpZ25vcmUgKi9cclxuXHRASG9zdExpc3RlbmVyKCdjbGljaycpXHJcblx0Y2xpY2tlZCgpIHtcclxuXHRcdHRoaXMudG9nZ2xlKCk7XHJcblx0fVxyXG5cclxuXHQvKiogU2hvd3MgdGhlIHRvb2x0aXAgYWZ0ZXIgdGhlIGRlbGF5IGluIG1zLCBkZWZhdWx0cyB0byB0b29sdGlwLWRlbGF5LXNob3cgb3IgMG1zIGlmIG5vIGlucHV0ICovXHJcblx0c2hvdyhcclxuXHRcdGRlbGF5OiBudW1iZXIgPSB0aGlzLnNob3dEZWxheSxcclxuXHRcdG9yaWdpbj86XHJcblx0XHRcdHwge1xyXG5cdFx0XHRcdFx0eDogbnVtYmVyO1xyXG5cdFx0XHRcdFx0eTogbnVtYmVyO1xyXG5cdFx0XHQgIH1cclxuXHRcdFx0fCB1bmRlZmluZWRcclxuXHQpOiB2b2lkIHtcclxuXHRcdGlmICh0aGlzLl9jb250ZW50T2JzKSB7XHJcblx0XHRcdHRoaXMuX2NvbnRlbnRTdWIudW5zdWJzY3JpYmUoKTtcclxuXHRcdFx0dGhpcy5fY29udGVudFN1YiA9IHRoaXMuX2NvbnRlbnRPYnMuc3Vic2NyaWJlKGMgPT4ge1xyXG5cdFx0XHRcdHRoaXMubWVzc2FnZSA9IGM7XHJcblx0XHRcdFx0dGhpcy5fY29udGVudFN1Yi51bnN1YnNjcmliZSgpO1xyXG5cdFx0XHRcdHN1cGVyLnNob3coZGVsYXksIG9yaWdpbik7XHJcblx0XHRcdH0pO1xyXG5cdFx0fSBlbHNlIHtcclxuXHRcdFx0c3VwZXIuc2hvdyhkZWxheSwgb3JpZ2luKTtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdG5nT25EZXN0cm95KCkge1xyXG5cdFx0dGhpcy5fY29udGVudFN1Yi51bnN1YnNjcmliZSgpO1xyXG5cdH1cclxufVxyXG4iXX0=
@@ -0,0 +1,25 @@
1
+ import { A11yModule } from '@angular/cdk/a11y';
2
+ import { OverlayModule } from '@angular/cdk/overlay';
3
+ import { CdkScrollableModule } from '@angular/cdk/scrolling';
4
+ import { CommonModule } from '@angular/common';
5
+ import { NgModule } from '@angular/core';
6
+ import { MatCommonModule } from '@angular/material/core';
7
+ import { MAT_TOOLTIP_SCROLL_STRATEGY_FACTORY_PROVIDER } from '@angular/material/tooltip';
8
+ import { TooltipComponent } from './tooltip.component';
9
+ import { TooltipDirective } from './tooltip.directive';
10
+ import * as i0 from "@angular/core";
11
+ export class TooltipModule {
12
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: TooltipModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
13
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.2", ngImport: i0, type: TooltipModule, declarations: [TooltipDirective, TooltipComponent], imports: [A11yModule, CommonModule, OverlayModule, MatCommonModule], exports: [TooltipDirective, MatCommonModule, CdkScrollableModule] }); }
14
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: TooltipModule, providers: [MAT_TOOLTIP_SCROLL_STRATEGY_FACTORY_PROVIDER], imports: [A11yModule, CommonModule, OverlayModule, MatCommonModule, MatCommonModule, CdkScrollableModule] }); }
15
+ }
16
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: TooltipModule, decorators: [{
17
+ type: NgModule,
18
+ args: [{
19
+ imports: [A11yModule, CommonModule, OverlayModule, MatCommonModule],
20
+ exports: [TooltipDirective, MatCommonModule, CdkScrollableModule],
21
+ declarations: [TooltipDirective, TooltipComponent],
22
+ providers: [MAT_TOOLTIP_SCROLL_STRATEGY_FACTORY_PROVIDER]
23
+ }]
24
+ }] });
25
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbHRpcC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy91aS90b29sdGlwL3Rvb2x0aXAubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDckQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDN0QsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3pELE9BQU8sRUFBRSw0Q0FBNEMsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ3pGLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDOztBQVF2RCxNQUFNLE9BQU8sYUFBYTs4R0FBYixhQUFhOytHQUFiLGFBQWEsaUJBSFYsZ0JBQWdCLEVBQUUsZ0JBQWdCLGFBRnZDLFVBQVUsRUFBRSxZQUFZLEVBQUUsYUFBYSxFQUFFLGVBQWUsYUFDeEQsZ0JBQWdCLEVBQUUsZUFBZSxFQUFFLG1CQUFtQjsrR0FJcEQsYUFBYSxhQUZkLENBQUMsNENBQTRDLENBQUMsWUFIL0MsVUFBVSxFQUFFLFlBQVksRUFBRSxhQUFhLEVBQUUsZUFBZSxFQUN0QyxlQUFlLEVBQUUsbUJBQW1COzsyRkFJcEQsYUFBYTtrQkFOekIsUUFBUTttQkFBQztvQkFDVCxPQUFPLEVBQUUsQ0FBQyxVQUFVLEVBQUUsWUFBWSxFQUFFLGFBQWEsRUFBRSxlQUFlLENBQUM7b0JBQ25FLE9BQU8sRUFBRSxDQUFDLGdCQUFnQixFQUFFLGVBQWUsRUFBRSxtQkFBbUIsQ0FBQztvQkFDakUsWUFBWSxFQUFFLENBQUMsZ0JBQWdCLEVBQUUsZ0JBQWdCLENBQUM7b0JBQ2xELFNBQVMsRUFBRSxDQUFDLDRDQUE0QyxDQUFDO2lCQUN6RCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEExMXlNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jZGsvYTExeSc7XHJcbmltcG9ydCB7IE92ZXJsYXlNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jZGsvb3ZlcmxheSc7XHJcbmltcG9ydCB7IENka1Njcm9sbGFibGVNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jZGsvc2Nyb2xsaW5nJztcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgTWF0Q29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvY29yZSc7XHJcbmltcG9ydCB7IE1BVF9UT09MVElQX1NDUk9MTF9TVFJBVEVHWV9GQUNUT1JZX1BST1ZJREVSIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvdG9vbHRpcCc7XHJcbmltcG9ydCB7IFRvb2x0aXBDb21wb25lbnQgfSBmcm9tICcuL3Rvb2x0aXAuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVG9vbHRpcERpcmVjdGl2ZSB9IGZyb20gJy4vdG9vbHRpcC5kaXJlY3RpdmUnO1xyXG5cclxuQE5nTW9kdWxlKHtcclxuXHRpbXBvcnRzOiBbQTExeU1vZHVsZSwgQ29tbW9uTW9kdWxlLCBPdmVybGF5TW9kdWxlLCBNYXRDb21tb25Nb2R1bGVdLFxyXG5cdGV4cG9ydHM6IFtUb29sdGlwRGlyZWN0aXZlLCBNYXRDb21tb25Nb2R1bGUsIENka1Njcm9sbGFibGVNb2R1bGVdLFxyXG5cdGRlY2xhcmF0aW9uczogW1Rvb2x0aXBEaXJlY3RpdmUsIFRvb2x0aXBDb21wb25lbnRdLFxyXG5cdHByb3ZpZGVyczogW01BVF9UT09MVElQX1NDUk9MTF9TVFJBVEVHWV9GQUNUT1JZX1BST1ZJREVSXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgVG9vbHRpcE1vZHVsZSB7fVxyXG4iXX0=
@@ -7,6 +7,7 @@ class AlertMessageHarness extends ComponentHarness {
7
7
  this._getDeleteButton = this.locatorFor('.bui-alert-button');
8
8
  this._getContentDiv = this.locatorFor('.bui-alert-content');
9
9
  }
10
+ static { this.hostSelector = '.bui-alert'; }
10
11
  static with(options = {}) {
11
12
  return new HarnessPredicate(this, options).addOption('content', options.content, AlertMessageHarness.filterByContent);
12
13
  }
@@ -24,13 +25,13 @@ class AlertMessageHarness extends ComponentHarness {
24
25
  return content.test(contentText);
25
26
  }
26
27
  }
27
- AlertMessageHarness.hostSelector = '.bui-alert';
28
28
  class AlertContainerHarness extends ComponentHarness {
29
29
  constructor() {
30
30
  super(...arguments);
31
31
  this._items = this.locatorForAll(AlertMessageHarness.with({ ancestor: '.bui-alert-fixed-panel' }));
32
32
  this._floatingFrame = this.locatorFor('.bui-alert-float-panel-frame');
33
33
  }
34
+ static { this.hostSelector = '.bui-alert-container'; }
34
35
  getAlertItem(content) {
35
36
  return this.locatorForOptional(AlertMessageHarness.with({ ancestor: '.bui-alert-fixed-panel', content }))();
36
37
  }
@@ -41,7 +42,6 @@ class AlertContainerHarness extends ComponentHarness {
41
42
  return (await (await this._floatingFrame()).getCssValue('display')) !== 'none';
42
43
  }
43
44
  }
44
- AlertContainerHarness.hostSelector = '.bui-alert-container';
45
45
 
46
46
  /**
47
47
  * Generated bundle index. Do not edit.
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bravura-ui-alert-testing.mjs","sources":["../../../projects/ui/alert/testing/test-api.ts","../../../projects/ui/alert/testing/bravura-ui-alert-testing.ts"],"sourcesContent":["import {\r\n\tComponentHarness,\r\n\tTextOptions,\r\n\tBaseHarnessFilters,\r\n\tComponentHarnessConstructor,\r\n\tHarnessPredicate\r\n} from '@angular/cdk/testing';\r\n\r\nexport interface AlertMessageHarnessFilters extends BaseHarnessFilters {\r\n\t/** only select the alert with the content matching this regular expression */\r\n\tcontent?: RegExp;\r\n}\r\n\r\nexport class AlertMessageHarness extends ComponentHarness {\r\n\tstatic hostSelector = '.bui-alert';\r\n\tprivate _getBackdrop = this.locatorFor('.bui-alert-backdrop');\r\n\tprivate _getDeleteButton = this.locatorFor('.bui-alert-button');\r\n\tprivate _getContentDiv = this.locatorFor('.bui-alert-content');\r\n\r\n\tstatic with<T extends AlertMessageHarness>(\r\n\t\tthis: ComponentHarnessConstructor<T>,\r\n\t\toptions: AlertMessageHarnessFilters = {}\r\n\t): HarnessPredicate<T> {\r\n\t\treturn new HarnessPredicate(this, options).addOption(\r\n\t\t\t'content',\r\n\t\t\toptions.content,\r\n\t\t\tAlertMessageHarness.filterByContent\r\n\t\t);\r\n\t}\r\n\r\n\tasync getColor(): Promise<string> {\r\n\t\treturn (await this._getBackdrop()).getCssValue('background-color');\r\n\t}\r\n\r\n\tasync delete(): Promise<void> {\r\n\t\tawait (await this._getDeleteButton()).click();\r\n\t}\r\n\r\n\tasync getContent(options?: TextOptions): Promise<string> {\r\n\t\treturn (await this._getContentDiv()).text(options);\r\n\t}\r\n\r\n\tprivate static async filterByContent(harness: AlertMessageHarness, content: RegExp): Promise<boolean> {\r\n\t\tconst contentText = await harness.getContent();\r\n\t\treturn content.test(contentText);\r\n\t}\r\n}\r\n\r\nexport class AlertContainerHarness extends ComponentHarness {\r\n\tstatic hostSelector = '.bui-alert-container';\r\n\r\n\tprivate _items = this.locatorForAll(AlertMessageHarness.with({ ancestor: '.bui-alert-fixed-panel' }));\r\n\tprivate _floatingFrame = this.locatorFor('.bui-alert-float-panel-frame');\r\n\r\n\tgetAlertItem(content: RegExp): Promise<AlertMessageHarness | null> {\r\n\t\treturn this.locatorForOptional(AlertMessageHarness.with({ ancestor: '.bui-alert-fixed-panel', content }))();\r\n\t}\r\n\r\n\tasync countAlertItems(): Promise<number> {\r\n\t\treturn (await this._items()).length;\r\n\t}\r\n\r\n\tasync isFloated(): Promise<boolean> {\r\n\t\treturn (await (await this._floatingFrame()).getCssValue('display')) !== 'none';\r\n\t}\r\n}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './test-api';\n"],"names":[],"mappings":";;AAaM,MAAO,mBAAoB,SAAQ,gBAAgB,CAAA;AAAzD,IAAA,WAAA,GAAA;;AAES,QAAA,IAAA,CAAA,YAAY,GAAG,IAAI,CAAC,UAAU,CAAC,qBAAqB,CAAC,CAAC;AACtD,QAAA,IAAA,CAAA,gBAAgB,GAAG,IAAI,CAAC,UAAU,CAAC,mBAAmB,CAAC,CAAC;AACxD,QAAA,IAAA,CAAA,cAAc,GAAG,IAAI,CAAC,UAAU,CAAC,oBAAoB,CAAC,CAAC;KA6B/D;aAhCO,IAAY,CAAA,YAAA,GAAG,YAAH,CAAgB,EAAA;AAKnC,IAAA,OAAO,IAAI,CAEV,OAAA,GAAsC,EAAE,EAAA;QAExC,OAAO,IAAI,gBAAgB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,SAAS,CACnD,SAAS,EACT,OAAO,CAAC,OAAO,EACf,mBAAmB,CAAC,eAAe,CACnC,CAAC;KACF;AAED,IAAA,MAAM,QAAQ,GAAA;AACb,QAAA,OAAO,CAAC,MAAM,IAAI,CAAC,YAAY,EAAE,EAAE,WAAW,CAAC,kBAAkB,CAAC,CAAC;KACnE;AAED,IAAA,MAAM,MAAM,GAAA;QACX,MAAM,CAAC,MAAM,IAAI,CAAC,gBAAgB,EAAE,EAAE,KAAK,EAAE,CAAC;KAC9C;IAED,MAAM,UAAU,CAAC,OAAqB,EAAA;AACrC,QAAA,OAAO,CAAC,MAAM,IAAI,CAAC,cAAc,EAAE,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;KACnD;AAEO,IAAA,aAAa,eAAe,CAAC,OAA4B,EAAE,OAAe,EAAA;AACjF,QAAA,MAAM,WAAW,GAAG,MAAM,OAAO,CAAC,UAAU,EAAE,CAAC;AAC/C,QAAA,OAAO,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;KACjC;;AAGI,MAAO,qBAAsB,SAAQ,gBAAgB,CAAA;AAA3D,IAAA,WAAA,GAAA;;AAGS,QAAA,IAAA,CAAA,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC,mBAAmB,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,wBAAwB,EAAE,CAAC,CAAC,CAAC;AAC9F,QAAA,IAAA,CAAA,cAAc,GAAG,IAAI,CAAC,UAAU,CAAC,8BAA8B,CAAC,CAAC;KAazE;aAhBO,IAAY,CAAA,YAAA,GAAG,sBAAH,CAA0B,EAAA;AAK7C,IAAA,YAAY,CAAC,OAAe,EAAA;AAC3B,QAAA,OAAO,IAAI,CAAC,kBAAkB,CAAC,mBAAmB,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,wBAAwB,EAAE,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC;KAC5G;AAED,IAAA,MAAM,eAAe,GAAA;QACpB,OAAO,CAAC,MAAM,IAAI,CAAC,MAAM,EAAE,EAAE,MAAM,CAAC;KACpC;AAED,IAAA,MAAM,SAAS,GAAA;AACd,QAAA,OAAO,CAAC,MAAM,CAAC,MAAM,IAAI,CAAC,cAAc,EAAE,EAAE,WAAW,CAAC,SAAS,CAAC,MAAM,MAAM,CAAC;KAC/E;;;AChEF;;AAEG;;;;"}