@bravura/ui 1.21.6 → 2.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 (275) hide show
  1. package/CHANGELOG.md +15 -0
  2. package/README.md +1 -0
  3. package/alert/alert-container.component.d.ts +1 -1
  4. package/alert/alert-message.component.d.ts +1 -1
  5. package/alert/{bravura-ui-alert.d.ts → index.d.ts} +0 -0
  6. package/behavior/await.directive.d.ts +1 -1
  7. package/behavior/{bravura-ui-behavior.d.ts → index.d.ts} +0 -0
  8. package/behavior/sizing-monitor.directive.d.ts +1 -1
  9. package/behavior/sizing.directive.d.ts +1 -1
  10. package/common/{bravura-ui-common.d.ts → index.d.ts} +0 -0
  11. package/currency-input/currency-input.directive.d.ts +1 -1
  12. package/currency-input/{bravura-ui-currency-input.d.ts → index.d.ts} +0 -0
  13. package/decimal-input/decimal-input.directive.d.ts +1 -1
  14. package/decimal-input/{bravura-ui-decimal-input.d.ts → index.d.ts} +0 -0
  15. package/discrete-input/discrete-input.component.d.ts +6 -5
  16. package/discrete-input/{bravura-ui-discrete-input.d.ts → index.d.ts} +0 -0
  17. package/esm2020/alert/alert-container.component.mjs +201 -0
  18. package/esm2020/alert/alert-message.component.mjs +92 -0
  19. package/esm2020/alert/alert.module.mjs +22 -0
  20. package/{esm2015/alert/bravura-ui-alert.js → esm2020/alert/bravura-ui-alert.mjs} +0 -0
  21. package/{esm2015/alert/public-api.js → esm2020/alert/public-api.mjs} +0 -0
  22. package/{esm2015/behavior/await.directive.js → esm2020/behavior/await.directive.mjs} +4 -4
  23. package/esm2020/behavior/behavior.module.mjs +25 -0
  24. package/{esm2015/behavior/bravura-ui-behavior.js → esm2020/behavior/bravura-ui-behavior.mjs} +0 -0
  25. package/{esm2015/behavior/public-api.js → esm2020/behavior/public-api.mjs} +0 -0
  26. package/{esm2015/behavior/sizing-monitor.directive.js → esm2020/behavior/sizing-monitor.directive.mjs} +4 -4
  27. package/{esm2015/behavior/sizing.directive.js → esm2020/behavior/sizing.directive.mjs} +4 -4
  28. package/{esm2015/bravura-ui.js → esm2020/bravura-ui.mjs} +0 -0
  29. package/{esm2015/common/bravura-ui-common.js → esm2020/common/bravura-ui-common.mjs} +0 -0
  30. package/{esm2015/common/common-utils.js → esm2020/common/common-utils.mjs} +0 -0
  31. package/esm2020/common/common.module.mjs +52 -0
  32. package/{esm2015/common/public-api.js → esm2020/common/public-api.mjs} +0 -0
  33. package/{esm2015/currency-input/bravura-ui-currency-input.js → esm2020/currency-input/bravura-ui-currency-input.mjs} +0 -0
  34. package/esm2020/currency-input/currency-input.directive.mjs +279 -0
  35. package/esm2020/currency-input/currency-input.module.mjs +19 -0
  36. package/{esm2015/currency-input/public-api.js → esm2020/currency-input/public-api.mjs} +0 -0
  37. package/{esm2015/decimal-input/bravura-ui-decimal-input.js → esm2020/decimal-input/bravura-ui-decimal-input.mjs} +0 -0
  38. package/{esm2015/decimal-input/decimal-input.directive.js → esm2020/decimal-input/decimal-input.directive.mjs} +4 -4
  39. package/esm2020/decimal-input/decimal-input.module.mjs +19 -0
  40. package/{esm2015/decimal-input/public-api.js → esm2020/decimal-input/public-api.mjs} +0 -0
  41. package/{esm2015/discrete-input/bravura-ui-discrete-input.js → esm2020/discrete-input/bravura-ui-discrete-input.mjs} +0 -0
  42. package/esm2020/discrete-input/discrete-input.component.mjs +326 -0
  43. package/esm2020/discrete-input/discrete-input.module.mjs +21 -0
  44. package/{esm2015/discrete-input/public-api.js → esm2020/discrete-input/public-api.mjs} +0 -0
  45. package/{esm2015/file-upload/bravura-ui-file-upload.js → esm2020/file-upload/bravura-ui-file-upload.mjs} +0 -0
  46. package/esm2020/file-upload/file-upload.component.mjs +356 -0
  47. package/{esm2015/file-upload/file-upload.module.js → esm2020/file-upload/file-upload.module.mjs} +11 -13
  48. package/{esm2015/file-upload/file-upload.service.js → esm2020/file-upload/file-upload.service.mjs} +4 -4
  49. package/{esm2015/file-upload/public-api.js → esm2020/file-upload/public-api.mjs} +0 -0
  50. package/{esm2015/form-field/bravura-ui-form-field.js → esm2020/form-field/bravura-ui-form-field.mjs} +0 -0
  51. package/esm2020/form-field/form-field.component.mjs +96 -0
  52. package/esm2020/form-field/form-field.module.mjs +20 -0
  53. package/{esm2015/form-field/public-api.js → esm2020/form-field/public-api.mjs} +0 -0
  54. package/{esm2015/icon-font/bravura-ui-icon-font.js → esm2020/icon-font/bravura-ui-icon-font.mjs} +0 -0
  55. package/esm2020/icon-font/icon-font.module.mjs +22 -0
  56. package/{esm2015/icon-font/icon.directive.js → esm2020/icon-font/icon.directive.mjs} +4 -4
  57. package/{esm2015/icon-font/public-api.js → esm2020/icon-font/public-api.mjs} +0 -0
  58. package/{esm2015/icon-font/utilities.js → esm2020/icon-font/utilities.mjs} +0 -0
  59. package/{esm2015/phone-number/bravura-ui-phone-number.js → esm2020/phone-number/bravura-ui-phone-number.mjs} +0 -0
  60. package/esm2020/phone-number/phone-number.directive.mjs +187 -0
  61. package/esm2020/phone-number/phone-number.module.mjs +24 -0
  62. package/{esm2015/phone-number/phone-number.pipe.js → esm2020/phone-number/phone-number.pipe.mjs} +4 -4
  63. package/{esm2015/phone-number/phone-number.validator.js → esm2020/phone-number/phone-number.validator.mjs} +4 -4
  64. package/{esm2015/phone-number/public-api.js → esm2020/phone-number/public-api.mjs} +0 -0
  65. package/{esm2015/public-api.js → esm2020/public-api.mjs} +0 -0
  66. package/{esm2015/radio-panel/bravura-ui-radio-panel.js → esm2020/radio-panel/bravura-ui-radio-panel.mjs} +0 -0
  67. package/{esm2015/radio-panel/public-api.js → esm2020/radio-panel/public-api.mjs} +0 -0
  68. package/esm2020/radio-panel/radio-panel-item.component.mjs +97 -0
  69. package/esm2020/radio-panel/radio-panel.component.mjs +89 -0
  70. package/esm2020/radio-panel/radio-panel.module.mjs +25 -0
  71. package/{esm2015/selection-panel/bravura-ui-selection-panel.js → esm2020/selection-panel/bravura-ui-selection-panel.mjs} +0 -0
  72. package/{esm2015/selection-panel/public-api.js → esm2020/selection-panel/public-api.mjs} +0 -0
  73. package/esm2020/selection-panel/selection-panel-item.component.mjs +166 -0
  74. package/esm2020/selection-panel/selection-panel.directive.mjs +119 -0
  75. package/esm2020/selection-panel/selection-panel.module.mjs +23 -0
  76. package/{esm2015/skeletons/bravura-ui-skeletons.js → esm2020/skeletons/bravura-ui-skeletons.mjs} +0 -0
  77. package/{esm2015/skeletons/public-api.js → esm2020/skeletons/public-api.mjs} +0 -0
  78. package/esm2020/skeletons/skeleton-loader-presets.directive.mjs +83 -0
  79. package/{esm2015/skeletons/skeleton-loader.component.js → esm2020/skeletons/skeleton-loader.component.mjs} +4 -4
  80. package/esm2020/skeletons/skeletons.module.mjs +35 -0
  81. package/{esm2015/stepper/bravura-ui-stepper.js → esm2020/stepper/bravura-ui-stepper.mjs} +0 -0
  82. package/{esm2015/stepper/public-api.js → esm2020/stepper/public-api.mjs} +0 -0
  83. package/esm2020/stepper/stepper-animation.mjs +23 -0
  84. package/esm2020/stepper/stepper.component.mjs +166 -0
  85. package/{esm2015/stepper/stepper.module.js → esm2020/stepper/stepper.module.mjs} +13 -15
  86. package/{esm2015/tooltip/bravura-ui-tooltip.js → esm2020/tooltip/bravura-ui-tooltip.mjs} +0 -0
  87. package/{esm2015/tooltip/public-api.js → esm2020/tooltip/public-api.mjs} +0 -0
  88. package/esm2020/tooltip/tooltip.component.mjs +51 -0
  89. package/{esm2015/tooltip/tooltip.directive.js → esm2020/tooltip/tooltip.directive.mjs} +4 -4
  90. package/esm2020/tooltip/tooltip.module.mjs +25 -0
  91. package/fesm2015/bravura-ui-alert.mjs +324 -0
  92. package/fesm2015/bravura-ui-alert.mjs.map +1 -0
  93. package/fesm2015/bravura-ui-behavior.mjs +407 -0
  94. package/fesm2015/bravura-ui-behavior.mjs.map +1 -0
  95. package/fesm2015/bravura-ui-common.mjs +74 -0
  96. package/fesm2015/bravura-ui-common.mjs.map +1 -0
  97. package/fesm2015/bravura-ui-currency-input.mjs +303 -0
  98. package/fesm2015/bravura-ui-currency-input.mjs.map +1 -0
  99. package/fesm2015/bravura-ui-decimal-input.mjs +147 -0
  100. package/fesm2015/bravura-ui-decimal-input.mjs.map +1 -0
  101. package/fesm2015/bravura-ui-discrete-input.mjs +354 -0
  102. package/fesm2015/bravura-ui-discrete-input.mjs.map +1 -0
  103. package/fesm2015/bravura-ui-file-upload.mjs +434 -0
  104. package/fesm2015/bravura-ui-file-upload.mjs.map +1 -0
  105. package/fesm2015/{bravura-ui-form-field.js → bravura-ui-form-field.mjs} +12 -23
  106. package/fesm2015/bravura-ui-form-field.mjs.map +1 -0
  107. package/fesm2015/{bravura-ui-icon-font.js → bravura-ui-icon-font.mjs} +8 -8
  108. package/fesm2015/bravura-ui-icon-font.mjs.map +1 -0
  109. package/fesm2015/{bravura-ui-phone-number.js → bravura-ui-phone-number.mjs} +34 -30
  110. package/fesm2015/bravura-ui-phone-number.mjs.map +1 -0
  111. package/fesm2015/bravura-ui-radio-panel.mjs +212 -0
  112. package/fesm2015/bravura-ui-radio-panel.mjs.map +1 -0
  113. package/fesm2015/{bravura-ui-selection-panel.js → bravura-ui-selection-panel.mjs} +24 -28
  114. package/fesm2015/bravura-ui-selection-panel.mjs.map +1 -0
  115. package/fesm2015/bravura-ui-skeletons.mjs +195 -0
  116. package/fesm2015/bravura-ui-skeletons.mjs.map +1 -0
  117. package/fesm2015/bravura-ui-stepper.mjs +243 -0
  118. package/fesm2015/bravura-ui-stepper.mjs.map +1 -0
  119. package/fesm2015/bravura-ui-tooltip.mjs +195 -0
  120. package/fesm2015/bravura-ui-tooltip.mjs.map +1 -0
  121. package/fesm2015/{bravura-ui.js → bravura-ui.mjs} +1 -1
  122. package/fesm2015/bravura-ui.mjs.map +1 -0
  123. package/fesm2020/bravura-ui-alert.mjs +312 -0
  124. package/fesm2020/bravura-ui-alert.mjs.map +1 -0
  125. package/{fesm2015/bravura-ui-behavior.js → fesm2020/bravura-ui-behavior.mjs} +14 -14
  126. package/fesm2020/bravura-ui-behavior.mjs.map +1 -0
  127. package/{fesm2015/bravura-ui-common.js → fesm2020/bravura-ui-common.mjs} +7 -7
  128. package/fesm2020/bravura-ui-common.mjs.map +1 -0
  129. package/{fesm2015/bravura-ui-currency-input.js → fesm2020/bravura-ui-currency-input.mjs} +9 -10
  130. package/fesm2020/bravura-ui-currency-input.mjs.map +1 -0
  131. package/{fesm2015/bravura-ui-decimal-input.js → fesm2020/bravura-ui-decimal-input.mjs} +8 -8
  132. package/fesm2020/bravura-ui-decimal-input.mjs.map +1 -0
  133. package/{fesm2015/bravura-ui-discrete-input.js → fesm2020/bravura-ui-discrete-input.mjs} +18 -26
  134. package/fesm2020/bravura-ui-discrete-input.mjs.map +1 -0
  135. package/fesm2020/bravura-ui-file-upload.mjs +430 -0
  136. package/fesm2020/bravura-ui-file-upload.mjs.map +1 -0
  137. package/fesm2020/bravura-ui-form-field.mjs +119 -0
  138. package/fesm2020/bravura-ui-form-field.mjs.map +1 -0
  139. package/fesm2020/bravura-ui-icon-font.mjs +178 -0
  140. package/fesm2020/bravura-ui-icon-font.mjs.map +1 -0
  141. package/fesm2020/bravura-ui-phone-number.mjs +317 -0
  142. package/fesm2020/bravura-ui-phone-number.mjs.map +1 -0
  143. package/fesm2020/bravura-ui-radio-panel.mjs +209 -0
  144. package/fesm2020/bravura-ui-radio-panel.mjs.map +1 -0
  145. package/fesm2020/bravura-ui-selection-panel.mjs +306 -0
  146. package/fesm2020/bravura-ui-selection-panel.mjs.map +1 -0
  147. package/{fesm2015/bravura-ui-skeletons.js → fesm2020/bravura-ui-skeletons.mjs} +13 -13
  148. package/fesm2020/bravura-ui-skeletons.mjs.map +1 -0
  149. package/{fesm2015/bravura-ui-stepper.js → fesm2020/bravura-ui-stepper.mjs} +27 -44
  150. package/fesm2020/bravura-ui-stepper.mjs.map +1 -0
  151. package/{fesm2015/bravura-ui-tooltip.js → fesm2020/bravura-ui-tooltip.mjs} +13 -22
  152. package/fesm2020/bravura-ui-tooltip.mjs.map +1 -0
  153. package/fesm2020/bravura-ui.mjs +8 -0
  154. package/fesm2020/bravura-ui.mjs.map +1 -0
  155. package/file-upload/file-upload.component.d.ts +1 -1
  156. package/file-upload/{bravura-ui-file-upload.d.ts → index.d.ts} +0 -0
  157. package/form-field/form-field.component.d.ts +1 -1
  158. package/form-field/{bravura-ui-form-field.d.ts → index.d.ts} +0 -0
  159. package/icon-font/icon.directive.d.ts +1 -1
  160. package/icon-font/{bravura-ui-icon-font.d.ts → index.d.ts} +0 -0
  161. package/{bravura-ui.d.ts → index.d.ts} +0 -0
  162. package/package.json +149 -14
  163. package/phone-number/{bravura-ui-phone-number.d.ts → index.d.ts} +0 -0
  164. package/phone-number/phone-number.directive.d.ts +1 -1
  165. package/phone-number/phone-number.pipe.d.ts +1 -1
  166. package/phone-number/phone-number.validator.d.ts +1 -1
  167. package/radio-panel/{bravura-ui-radio-panel.d.ts → index.d.ts} +0 -0
  168. package/radio-panel/radio-panel-item.component.d.ts +1 -1
  169. package/radio-panel/radio-panel.component.d.ts +1 -1
  170. package/selection-panel/{bravura-ui-selection-panel.d.ts → index.d.ts} +0 -0
  171. package/selection-panel/selection-panel-item.component.d.ts +1 -1
  172. package/selection-panel/selection-panel.directive.d.ts +1 -1
  173. package/skeletons/{bravura-ui-skeletons.d.ts → index.d.ts} +0 -0
  174. package/skeletons/skeleton-loader-presets.directive.d.ts +1 -1
  175. package/skeletons/skeleton-loader.component.d.ts +1 -1
  176. package/stepper/{bravura-ui-stepper.d.ts → index.d.ts} +0 -0
  177. package/stepper/stepper.component.d.ts +1 -1
  178. package/theme/_ui-theme.scss +1 -1
  179. package/tooltip/{bravura-ui-tooltip.d.ts → index.d.ts} +0 -0
  180. package/tooltip/tooltip.component.d.ts +1 -1
  181. package/tooltip/tooltip.directive.d.ts +1 -1
  182. package/alert/package.json +0 -10
  183. package/behavior/package.json +0 -10
  184. package/bundles/bravura-ui-alert.umd.js +0 -745
  185. package/bundles/bravura-ui-alert.umd.js.map +0 -1
  186. package/bundles/bravura-ui-behavior.umd.js +0 -788
  187. package/bundles/bravura-ui-behavior.umd.js.map +0 -1
  188. package/bundles/bravura-ui-common.umd.js +0 -103
  189. package/bundles/bravura-ui-common.umd.js.map +0 -1
  190. package/bundles/bravura-ui-currency-input.umd.js +0 -335
  191. package/bundles/bravura-ui-currency-input.umd.js.map +0 -1
  192. package/bundles/bravura-ui-decimal-input.umd.js +0 -176
  193. package/bundles/bravura-ui-decimal-input.umd.js.map +0 -1
  194. package/bundles/bravura-ui-discrete-input.umd.js +0 -747
  195. package/bundles/bravura-ui-discrete-input.umd.js.map +0 -1
  196. package/bundles/bravura-ui-file-upload.umd.js +0 -845
  197. package/bundles/bravura-ui-file-upload.umd.js.map +0 -1
  198. package/bundles/bravura-ui-form-field.umd.js +0 -494
  199. package/bundles/bravura-ui-form-field.umd.js.map +0 -1
  200. package/bundles/bravura-ui-icon-font.umd.js +0 -539
  201. package/bundles/bravura-ui-icon-font.umd.js.map +0 -1
  202. package/bundles/bravura-ui-phone-number.umd.js +0 -690
  203. package/bundles/bravura-ui-phone-number.umd.js.map +0 -1
  204. package/bundles/bravura-ui-radio-panel.umd.js +0 -595
  205. package/bundles/bravura-ui-radio-panel.umd.js.map +0 -1
  206. package/bundles/bravura-ui-selection-panel.umd.js +0 -699
  207. package/bundles/bravura-ui-selection-panel.umd.js.map +0 -1
  208. package/bundles/bravura-ui-skeletons.umd.js +0 -525
  209. package/bundles/bravura-ui-skeletons.umd.js.map +0 -1
  210. package/bundles/bravura-ui-stepper.umd.js +0 -613
  211. package/bundles/bravura-ui-stepper.umd.js.map +0 -1
  212. package/bundles/bravura-ui-tooltip.umd.js +0 -586
  213. package/bundles/bravura-ui-tooltip.umd.js.map +0 -1
  214. package/bundles/bravura-ui.umd.js +0 -18
  215. package/bundles/bravura-ui.umd.js.map +0 -1
  216. package/common/package.json +0 -10
  217. package/currency-input/package.json +0 -10
  218. package/decimal-input/package.json +0 -10
  219. package/discrete-input/package.json +0 -10
  220. package/esm2015/alert/alert-container.component.js +0 -220
  221. package/esm2015/alert/alert-message.component.js +0 -98
  222. package/esm2015/alert/alert.module.js +0 -22
  223. package/esm2015/behavior/behavior.module.js +0 -25
  224. package/esm2015/common/common.module.js +0 -52
  225. package/esm2015/currency-input/currency-input.directive.js +0 -280
  226. package/esm2015/currency-input/currency-input.module.js +0 -19
  227. package/esm2015/decimal-input/decimal-input.module.js +0 -19
  228. package/esm2015/discrete-input/discrete-input.component.js +0 -334
  229. package/esm2015/discrete-input/discrete-input.module.js +0 -21
  230. package/esm2015/file-upload/file-upload.component.js +0 -367
  231. package/esm2015/form-field/form-field.component.js +0 -107
  232. package/esm2015/form-field/form-field.module.js +0 -20
  233. package/esm2015/icon-font/icon-font.module.js +0 -22
  234. package/esm2015/phone-number/phone-number.directive.js +0 -192
  235. package/esm2015/phone-number/phone-number.module.js +0 -24
  236. package/esm2015/radio-panel/radio-panel-item.component.js +0 -109
  237. package/esm2015/radio-panel/radio-panel.component.js +0 -98
  238. package/esm2015/radio-panel/radio-panel.module.js +0 -25
  239. package/esm2015/selection-panel/selection-panel-item.component.js +0 -174
  240. package/esm2015/selection-panel/selection-panel.directive.js +0 -120
  241. package/esm2015/selection-panel/selection-panel.module.js +0 -23
  242. package/esm2015/skeletons/skeleton-loader-presets.directive.js +0 -83
  243. package/esm2015/skeletons/skeletons.module.js +0 -35
  244. package/esm2015/stepper/stepper-animation.js +0 -23
  245. package/esm2015/stepper/stepper.component.js +0 -181
  246. package/esm2015/tooltip/tooltip.component.js +0 -59
  247. package/esm2015/tooltip/tooltip.module.js +0 -26
  248. package/fesm2015/bravura-ui-alert.js +0 -337
  249. package/fesm2015/bravura-ui-alert.js.map +0 -1
  250. package/fesm2015/bravura-ui-behavior.js.map +0 -1
  251. package/fesm2015/bravura-ui-common.js.map +0 -1
  252. package/fesm2015/bravura-ui-currency-input.js.map +0 -1
  253. package/fesm2015/bravura-ui-decimal-input.js.map +0 -1
  254. package/fesm2015/bravura-ui-discrete-input.js.map +0 -1
  255. package/fesm2015/bravura-ui-file-upload.js +0 -443
  256. package/fesm2015/bravura-ui-file-upload.js.map +0 -1
  257. package/fesm2015/bravura-ui-form-field.js.map +0 -1
  258. package/fesm2015/bravura-ui-icon-font.js.map +0 -1
  259. package/fesm2015/bravura-ui-phone-number.js.map +0 -1
  260. package/fesm2015/bravura-ui-radio-panel.js +0 -230
  261. package/fesm2015/bravura-ui-radio-panel.js.map +0 -1
  262. package/fesm2015/bravura-ui-selection-panel.js.map +0 -1
  263. package/fesm2015/bravura-ui-skeletons.js.map +0 -1
  264. package/fesm2015/bravura-ui-stepper.js.map +0 -1
  265. package/fesm2015/bravura-ui-tooltip.js.map +0 -1
  266. package/fesm2015/bravura-ui.js.map +0 -1
  267. package/file-upload/package.json +0 -10
  268. package/form-field/package.json +0 -10
  269. package/icon-font/package.json +0 -10
  270. package/phone-number/package.json +0 -10
  271. package/radio-panel/package.json +0 -10
  272. package/selection-panel/package.json +0 -10
  273. package/skeletons/package.json +0 -10
  274. package/stepper/package.json +0 -10
  275. package/tooltip/package.json +0 -10
@@ -1,181 +0,0 @@
1
- import { CdkStepper, STEPPER_GLOBAL_OPTIONS } from '@angular/cdk/stepper';
2
- import { DOCUMENT } from '@angular/common';
3
- import { ChangeDetectionStrategy, Component, ContentChildren, EventEmitter, Inject, Input, Optional, Output, QueryList, Self, SkipSelf, ViewChild, ViewChildren, ViewEncapsulation } from '@angular/core';
4
- import { MatHorizontalStepper, MatStep, MatStepHeader, MatStepper, MatStepperIcon, MatVerticalStepper } from '@angular/material/stepper';
5
- import { Subject } from 'rxjs';
6
- import { distinctUntilChanged, filter, takeUntil } from 'rxjs/operators';
7
- import animation from './stepper-animation';
8
- import * as i0 from "@angular/core";
9
- import * as i1 from "@angular/cdk/bidi";
10
- import * as i2 from "@angular/material/stepper";
11
- import * as i3 from "@angular/material/progress-spinner";
12
- import * as i4 from "@angular/common";
13
- import * as i5 from "@bravura/ui/behavior";
14
- /** @ignore */
15
- const BREAKPOINT = 768;
16
- /**
17
- * [Angular Material's stepper](https://material.angular.io/components/stepper/overview) provides a wizard-like workflow by dividing
18
- * content into logical steps.
19
- *
20
- * This stepper extends Angular's to customise the presentation of its headers to achieve a better user experience in both mobile and
21
- * desktop browsers.
22
- *
23
- */
24
- export class StepperComponent extends CdkStepper {
25
- constructor(dir, changeDetectorRef, _buiElRef, _document, stepperOptions, defaultStepperOptions) {
26
- super(dir, changeDetectorRef, _buiElRef, _document);
27
- this._buiElRef = _buiElRef;
28
- /** @ignore Steps that belong to the current stepper, excluding ones from nested steppers. */
29
- this.steps = new QueryList();
30
- /** @ignore Event emitted when the current step is done transitioning in. */
31
- this.animationDone = new EventEmitter();
32
- /** The text that precedes the name of the next step label, used in the 'narrow' view. */
33
- this.nextStepLabelPrefix = 'Next: ';
34
- /** @ignore Consumer-specified template-refs to be used to override the header icons. */
35
- this._iconOverrides = {};
36
- /** @ignore Stream of animation `done` events when the body expands/collapses. */
37
- this._animationDone = new Subject();
38
- /** @ignore Whether the stepper is in a narrow container */
39
- this._narrow = false;
40
- /** @ignore Emits whenever the drawer has started animating. */
41
- this._leftDrawerStarted = new Subject();
42
- /** @ignore Emits whenever the drawer is done animating. */
43
- this._leftDrawerEnded = new Subject();
44
- /** @ignore Current state of the sidenav animation. */
45
- this._leftDrawerState = 'open-instant';
46
- /** @ignore Emits whenever the drawer has started animating. */
47
- this._topDrawerStarted = new Subject();
48
- /** @ignore Emits whenever the drawer is done animating. */
49
- this._topDrawerEnded = new Subject();
50
- /** @ignore Current state of the sidenav animation. */
51
- this._topDrawerState = 'void';
52
- /** @ignore */ this._progressCircleSize = 80;
53
- /** @ignore */ this._progressCircleWidth = 5;
54
- this.orientation = 'vertical';
55
- this.indicatorFormatter = (index, total) => `${index} of ${total}`;
56
- Object.keys(defaultStepperOptions || {})
57
- .filter(k => k !== 'displayDefaultIndicatorType')
58
- .forEach(((k) => (stepperOptions[k] = defaultStepperOptions[k])));
59
- }
60
- ngAfterContentInit() {
61
- super.ngAfterContentInit();
62
- this._icons.forEach(({ name, templateRef }) => (this._iconOverrides[name] = templateRef));
63
- // Mark the component for change detection whenever the content children query changes
64
- this.steps.changes.pipe(takeUntil(this._destroyed)).subscribe(() => {
65
- this._stateChanged();
66
- });
67
- this._animationDone
68
- .pipe(distinctUntilChanged((x, y) => x.fromState === y.fromState && x.toState === y.toState), takeUntil(this._destroyed))
69
- .subscribe(event => {
70
- if (event.toState === 'current') {
71
- this.animationDone.emit();
72
- }
73
- });
74
- this._leftDrawerEnded
75
- .pipe(distinctUntilChanged((x, y) => x.fromState === y.fromState && x.toState === y.toState), filter(ev => ev.toState === 'void' && ev.toState !== ev.fromState), takeUntil(this._destroyed))
76
- .subscribe(() => {
77
- this._topDrawerState = 'open';
78
- });
79
- this._topDrawerEnded
80
- .pipe(distinctUntilChanged((x, y) => x.fromState === y.fromState && x.toState === y.toState), filter(ev => ev.toState === 'void' && ev.toState !== ev.fromState), takeUntil(this._destroyed))
81
- .subscribe(() => {
82
- this._leftDrawerState = 'open';
83
- });
84
- this._iconOverrides.edit = this._iconOverrides.edit || this._editIconTemplate;
85
- }
86
- /** @ignore */
87
- _stepIsNavigable(index, step) {
88
- return step.completed || this.selectedIndex === index || !this.linear;
89
- }
90
- /** @ignore */
91
- _widthChanged(w) {
92
- const narrow = Math.abs(w - BREAKPOINT) < 20 ? this._narrow : w < BREAKPOINT;
93
- const cls = 'bui-stepper-narrow';
94
- const classList = this._buiElRef.nativeElement.classList;
95
- if (narrow) {
96
- this._leftDrawerState = 'void';
97
- classList.add(cls);
98
- }
99
- else {
100
- this._topDrawerState = 'void';
101
- classList.remove(cls);
102
- }
103
- if (this._narrow !== narrow) {
104
- this._narrow = narrow;
105
- this._stateChanged();
106
- }
107
- }
108
- }
109
- StepperComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: StepperComponent, deps: [{ token: i1.Directionality, optional: true }, { token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: DOCUMENT }, { token: STEPPER_GLOBAL_OPTIONS, self: true }, { token: STEPPER_GLOBAL_OPTIONS, optional: true, skipSelf: true }], target: i0.ɵɵFactoryTarget.Component });
110
- StepperComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: StepperComponent, selector: "bui-stepper, [buiStepper]", inputs: { selectedIndex: "selectedIndex", disableRipple: "disableRipple", color: "color", indicatorFormatter: "indicatorFormatter", nextStepLabelPrefix: "nextStepLabelPrefix" }, outputs: { animationDone: "animationDone" }, host: { attributes: { "role": "tablist" }, properties: { "attr.aria-orientation": "orientation" }, classAttribute: "bui-stepper bui-host" }, providers: [
111
- { provide: MatStepper, useExisting: StepperComponent },
112
- { provide: CdkStepper, useExisting: StepperComponent },
113
- { provide: MatHorizontalStepper, useExisting: StepperComponent },
114
- { provide: MatVerticalStepper, useExisting: StepperComponent },
115
- { provide: STEPPER_GLOBAL_OPTIONS, useValue: { displayDefaultIndicatorType: false } }
116
- ], queries: [{ propertyName: "_steps", predicate: MatStep, descendants: true }, { propertyName: "_icons", predicate: MatStepperIcon, descendants: true }], viewQueries: [{ propertyName: "_editIconTemplate", first: true, predicate: ["editIconTemplate"], descendants: true, static: true }, { propertyName: "_stepHeader", predicate: MatStepHeader, descendants: true }], exportAs: ["buiStepper", "matStepper", "matVerticalStepper", "matHorizontalStepper"], usesInheritance: true, ngImport: i0, template: "<div class=\"bui-stepper-wrapper\" [style.display]=\"_leftDrawerState.startsWith('open') ? 'flex' : 'block'\" #sizeMonitor>\n\t<div\n\t\tclass=\"bui-stepper-left-header-container\"\n\t\t[@leftDrawer]=\"_leftDrawerState\"\n\t\t(@leftDrawer.start)=\"_leftDrawerStarted.next($event)\"\n\t\t(@leftDrawer.done)=\"_leftDrawerEnded.next($event)\"\n\t>\n\t\t<div\n\t\t\t*ngFor=\"let step of steps; let i = index; let isLast = last\"\n\t\t\tclass=\"bui-stepper-header-wrapper\"\n\t\t\t[class.bui-stepper-vertical-line]=\"!isLast\"\n\t\t>\n\t\t\t<mat-step-header\n\t\t\t\tclass=\"bui-stepper-header\"\n\t\t\t\t(click)=\"step.select()\"\n\t\t\t\t(keydown)=\"_onKeydown($event)\"\n\t\t\t\t[tabIndex]=\"_getFocusIndex() === i ? 0 : -1\"\n\t\t\t\t[id]=\"_getStepLabelId(i)\"\n\t\t\t\t[attr.aria-posinset]=\"i + 1\"\n\t\t\t\t[attr.aria-setsize]=\"steps.length\"\n\t\t\t\t[attr.aria-controls]=\"_getStepContentId(i)\"\n\t\t\t\t[attr.aria-selected]=\"selectedIndex == i\"\n\t\t\t\t[attr.aria-label]=\"step.ariaLabel || null\"\n\t\t\t\t[attr.aria-labelledby]=\"!step.ariaLabel && step.ariaLabelledby ? step.ariaLabelledby : null\"\n\t\t\t\t[attr.aria-disabled]=\"_stepIsNavigable(i, step) ? null : true\"\n\t\t\t\t[index]=\"i\"\n\t\t\t\t[state]=\"_getIndicatorType(i, step.state)\"\n\t\t\t\t[label]=\"step.stepLabel || step.label\"\n\t\t\t\t[selected]=\"selectedIndex === i\"\n\t\t\t\t[active]=\"_stepIsNavigable(i, step)\"\n\t\t\t\t[optional]=\"step.optional\"\n\t\t\t\t[errorMessage]=\"step.errorMessage\"\n\t\t\t\t[iconOverrides]=\"_iconOverrides\"\n\t\t\t\t[disableRipple]=\"disableRipple || !_stepIsNavigable(i, step)\"\n\t\t\t\t[color]=\"step.color || color\"\n\t\t\t></mat-step-header>\n\t\t</div>\n\t</div>\n\n\t<div class=\"bui-stepper-content-container\" [buiSizingBy]=\"sizeMonitor\" (buiResized)=\"_widthChanged($event.width)\">\n\t\t<div\n\t\t\tclass=\"bui-stepper-top-header-container\"\n\t\t\t[class.bui-stepper-header-active]=\"_leftDrawerState === 'void'\"\n\t\t\t[@topDrawer]=\"_topDrawerState\"\n\t\t\t(@topDrawer.start)=\"_topDrawerStarted.next($event)\"\n\t\t\t(@topDrawer.done)=\"_topDrawerEnded.next($event)\"\n\t\t>\n\t\t\t<div\n\t\t\t\tclass=\"bui-stepper-top-header-progress\"\n\t\t\t\t[style]=\"'height:' + _progressCircleSize + 'px; width:' + _progressCircleSize + 'px'\"\n\t\t\t>\n\t\t\t\t<mat-progress-spinner\n\t\t\t\t\tclass=\"bui-progress-spinner-light\"\n\t\t\t\t\t[value]=\"100\"\n\t\t\t\t\t[diameter]=\"_progressCircleSize\"\n\t\t\t\t\t[strokeWidth]=\"_progressCircleWidth\"\n\t\t\t\t></mat-progress-spinner>\n\t\t\t\t<mat-progress-spinner\n\t\t\t\t\t[color]=\"color\"\n\t\t\t\t\t[value]=\"((selectedIndex + 1) * 100) / steps.length\"\n\t\t\t\t\t[diameter]=\"_progressCircleSize\"\n\t\t\t\t\t[strokeWidth]=\"_progressCircleWidth\"\n\t\t\t\t></mat-progress-spinner>\n\t\t\t\t<span class=\"bui-stepper-top-header-indicator\">\n\t\t\t\t\t{{ indicatorFormatter(selectedIndex + 1, steps.length) }}\n\t\t\t\t</span>\n\t\t\t</div>\n\t\t\t<div class=\"bui-stepper-top-header-titles-wrapper\" *ngIf=\"selected\">\n\t\t\t\t<div class=\"bui-stepper-top-header-title\">\n\t\t\t\t\t<ng-template\n\t\t\t\t\t\t[ngTemplateOutlet]=\"labelTemplate\"\n\t\t\t\t\t\t[ngTemplateOutletContext]=\"{ $implicit: selected }\"\n\t\t\t\t\t></ng-template>\n\t\t\t\t</div>\n\t\t\t\t<div class=\"bui-stepper-top-header-title-next\" *ngIf=\"selectedIndex < steps.length - 1\">\n\t\t\t\t\t{{ nextStepLabelPrefix }}\n\t\t\t\t\t<ng-template\n\t\t\t\t\t\t[ngTemplateOutlet]=\"labelTemplate\"\n\t\t\t\t\t\t[ngTemplateOutletContext]=\"{ $implicit: steps.get(selectedIndex + 1) }\"\n\t\t\t\t\t></ng-template>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t\t<div class=\"bui-stepper-content-wrapper\">\n\t\t\t<div\n\t\t\t\t*ngFor=\"let step of steps; let i = index\"\n\t\t\t\tclass=\"bui-stepper-content\"\n\t\t\t\trole=\"tabpanel\"\n\t\t\t\t[@stepTransition]=\"_getAnimationDirection(i)\"\n\t\t\t\t(@stepTransition.done)=\"_animationDone.next($event)\"\n\t\t\t\t[id]=\"_getStepContentId(i)\"\n\t\t\t\t[attr.aria-labelledby]=\"_getStepLabelId(i)\"\n\t\t\t\t[attr.aria-expanded]=\"selectedIndex === i\"\n\t\t\t>\n\t\t\t\t<div class=\"bui-stepper-content-header-label\" *ngIf=\"!_narrow\">\n\t\t\t\t\t<ng-template [ngTemplateOutlet]=\"labelTemplate\" [ngTemplateOutletContext]=\"{ $implicit: step }\"></ng-template>\n\t\t\t\t</div>\n\t\t\t\t<ng-template [ngTemplateOutlet]=\"step.content\"></ng-template>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n</div>\n\n<ng-template #labelTemplate let-step>\n\t<ng-template [ngIf]=\"step.stepLabel\" [ngIfElse]=\"stringLabelTempl\">\n\t\t<ng-template [ngTemplateOutlet]=\"step.stepLabel.template\"></ng-template>\n\t</ng-template>\n\t<ng-template #stringLabelTempl>{{ step.label }}</ng-template>\n</ng-template>\n\n<ng-template #editIconTemplate let-index=\"index\">\n\t<span>{{ index + 1 }}</span>\n</ng-template>\n", styles: [".bui-stepper{display:block;box-sizing:border-box}.bui-stepper-wrapper{display:flex;box-sizing:border-box;background-color:var(--bui-bg-card);overflow:hidden}.bui-stepper-left-header-container{max-width:30%}.bui-stepper-header-wrapper{position:relative}.bui-stepper-vertical-line:before{content:\"\";position:absolute;left:28px;border-left-width:1px;border-left-style:solid;border-left-color:var(--bui-color-divider);top:44px;bottom:-12px}[dir=rtl] .bui-stepper-vertical-line:before{left:auto;right:0}.bui-stepper-content-header-label{font-size:larger;font-weight:bold;margin-bottom:32px}.bui-stepper .bui-stepper-header{display:flex;align-items:center;padding:0 16px;height:56px}.bui-stepper .bui-stepper-header .mat-step-icon{margin-right:16px}[dir=rtl] .bui-stepper .bui-stepper-header .mat-step-icon{margin-right:0;margin-left:16px}.bui-stepper .bui-stepper-header .mat-step-icon.mat-step-icon-state-done{background-color:var(--bui-color-success);color:#fff}.bui-stepper .bui-stepper-header .mat-step-icon.mat-step-icon-state-number{color:var(--bui-bg-card)}.bui-stepper-top-header-container{display:flex;align-items:stretch}.bui-stepper-top-header-container.bui-stepper-header-active{margin-bottom:16px}.bui-progress-spinner-light circle{stroke:var(--bui-color-divider)!important}.bui-stepper-top-header-progress{position:relative;display:flex;justify-content:center;align-items:center;margin-right:16px}[dir=rtl] .bui-stepper-top-header-progress{margin-right:unset;margin-left:16px}.bui-stepper-top-header-progress>.mat-progress-spinner{position:absolute}.bui-stepper-top-header-progress .bui-stepper-top-header-indicator{color:var(--bui-color-muted)}.bui-stepper-top-header-titles-wrapper{display:flex;flex-basis:max-content;flex-direction:column;justify-content:space-evenly}.bui-stepper-top-header-title{font-size:larger}.bui-stepper-top-header-title-next{color:var(--bui-color-muted)}.bui-stepper-content-container{flex:1 1 100%;padding:16px;display:flex;flex-direction:column}.cdk-high-contrast-active .bui-stepper-content-container{outline:solid 1px}.bui-stepper-content-wrapper{flex:1 1 100%}.bui-stepper-content{outline:0}.bui-stepper-content[aria-expanded=false]{height:0;overflow:hidden}\n"], components: [{ type: i2.MatStepHeader, selector: "mat-step-header", inputs: ["color", "state", "label", "errorMessage", "iconOverrides", "index", "selected", "active", "optional", "disableRipple"] }, { type: i3.MatProgressSpinner, selector: "mat-progress-spinner", inputs: ["color", "mode", "diameter", "strokeWidth", "value"], exportAs: ["matProgressSpinner"] }], directives: [{ type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i5.SizingDirective, selector: "[buiSizing],[buiResized],[buiSizingBy],[buiFixedHeight]", inputs: ["buiSizing", "sizingBy", "buiSizingBy", "buiFixedHeight"], outputs: ["buiResized"] }, { type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], animations: [animation.stepTransition, animation.leftDrawer, animation.topDrawer], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
117
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: StepperComponent, decorators: [{
118
- type: Component,
119
- args: [{
120
- selector: 'bui-stepper, [buiStepper]',
121
- exportAs: 'buiStepper, matStepper, matVerticalStepper, matHorizontalStepper',
122
- templateUrl: './stepper.component.html',
123
- styleUrls: ['./stepper.component.scss'],
124
- inputs: ['selectedIndex'],
125
- host: {
126
- class: 'bui-stepper bui-host',
127
- '[attr.aria-orientation]': 'orientation',
128
- role: 'tablist'
129
- },
130
- animations: [animation.stepTransition, animation.leftDrawer, animation.topDrawer],
131
- providers: [
132
- { provide: MatStepper, useExisting: StepperComponent },
133
- { provide: CdkStepper, useExisting: StepperComponent },
134
- { provide: MatHorizontalStepper, useExisting: StepperComponent },
135
- { provide: MatVerticalStepper, useExisting: StepperComponent },
136
- { provide: STEPPER_GLOBAL_OPTIONS, useValue: { displayDefaultIndicatorType: false } }
137
- ],
138
- encapsulation: ViewEncapsulation.None,
139
- changeDetection: ChangeDetectionStrategy.OnPush
140
- }]
141
- }], ctorParameters: function () { return [{ type: i1.Directionality, decorators: [{
142
- type: Optional
143
- }] }, { type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: undefined, decorators: [{
144
- type: Inject,
145
- args: [DOCUMENT]
146
- }] }, { type: undefined, decorators: [{
147
- type: Self
148
- }, {
149
- type: Inject,
150
- args: [STEPPER_GLOBAL_OPTIONS]
151
- }] }, { type: undefined, decorators: [{
152
- type: Optional
153
- }, {
154
- type: SkipSelf
155
- }, {
156
- type: Inject,
157
- args: [STEPPER_GLOBAL_OPTIONS]
158
- }] }]; }, propDecorators: { _stepHeader: [{
159
- type: ViewChildren,
160
- args: [MatStepHeader]
161
- }], _steps: [{
162
- type: ContentChildren,
163
- args: [MatStep, { descendants: true }]
164
- }], _icons: [{
165
- type: ContentChildren,
166
- args: [MatStepperIcon, { descendants: true }]
167
- }], animationDone: [{
168
- type: Output
169
- }], disableRipple: [{
170
- type: Input
171
- }], color: [{
172
- type: Input
173
- }], indicatorFormatter: [{
174
- type: Input
175
- }], nextStepLabelPrefix: [{
176
- type: Input
177
- }], _editIconTemplate: [{
178
- type: ViewChild,
179
- args: ['editIconTemplate', { static: true }]
180
- }] } });
181
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RlcHBlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy91aS9zdGVwcGVyL3N0ZXBwZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vcHJvamVjdHMvdWkvc3RlcHBlci9zdGVwcGVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sRUFBRSxVQUFVLEVBQTRDLHNCQUFzQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDcEgsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzNDLE9BQU8sRUFFTix1QkFBdUIsRUFFdkIsU0FBUyxFQUNULGVBQWUsRUFFZixZQUFZLEVBQ1osTUFBTSxFQUNOLEtBQUssRUFDTCxRQUFRLEVBQ1IsTUFBTSxFQUNOLFNBQVMsRUFDVCxJQUFJLEVBQ0osUUFBUSxFQUVSLFNBQVMsRUFDVCxZQUFZLEVBQ1osaUJBQWlCLEVBQ2pCLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFDTixvQkFBb0IsRUFDcEIsT0FBTyxFQUNQLGFBQWEsRUFDYixVQUFVLEVBQ1YsY0FBYyxFQUVkLGtCQUFrQixFQUNsQixNQUFNLDJCQUEyQixDQUFDO0FBQ25DLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDL0IsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN6RSxPQUFPLFNBQVMsTUFBTSxxQkFBcUIsQ0FBQzs7Ozs7OztBQUU1QyxjQUFjO0FBQ2QsTUFBTSxVQUFVLEdBQUcsR0FBRyxDQUFDO0FBRXZCOzs7Ozs7O0dBT0c7QUF1QkgsTUFBTSxPQUFPLGdCQUFpQixTQUFRLFVBQVU7SUE2RC9DLFlBQ2EsR0FBbUIsRUFDL0IsaUJBQW9DLEVBQzVCLFNBQWtDLEVBQ3hCLFNBQWMsRUFDUSxjQUE4QixFQUNkLHFCQUFzQztRQUU5RixL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RUFBRSxLQUFLLEVBQUUsRUFBRTtxQkFDckY7b0JBQ0QsYUFBYSxFQUFFLGlCQUFpQixDQUFDLElBQUk7b0JBQ3JDLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO2lCQUMvQzs7MEJBK0RFLFFBQVE7OzBCQUdSLE1BQU07MkJBQUMsUUFBUTs7MEJBQ2YsSUFBSTs7MEJBQUksTUFBTTsyQkFBQyxzQkFBc0I7OzBCQUNyQyxRQUFROzswQkFBSSxRQUFROzswQkFBSSxNQUFNOzJCQUFDLHNCQUFzQjs0Q0FqRWpCLFdBQVc7c0JBQWhELFlBQVk7dUJBQUMsYUFBYTtnQkFHK0IsTUFBTTtzQkFBL0QsZUFBZTt1QkFBQyxPQUFPLEVBQUUsRUFBRSxXQUFXLEVBQUUsSUFBSSxFQUFFO2dCQU1TLE1BQU07c0JBQTdELGVBQWU7dUJBQUMsY0FBYyxFQUFFLEVBQUUsV0FBVyxFQUFFLElBQUksRUFBRTtnQkFHbkMsYUFBYTtzQkFBL0IsTUFBTTtnQkFHRSxhQUFhO3NCQUFyQixLQUFLO2dCQUdHLEtBQUs7c0JBQWIsS0FBSztnQkFPRyxrQkFBa0I7c0JBQTFCLEtBQUs7Z0JBR0csbUJBQW1CO3NCQUEzQixLQUFLO2dCQTZCRSxpQkFBaUI7c0JBRHhCLFNBQVM7dUJBQUMsa0JBQWtCLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQW5pbWF0aW9uRXZlbnQgfSBmcm9tICdAYW5ndWxhci9hbmltYXRpb25zJztcbmltcG9ydCB7IERpcmVjdGlvbmFsaXR5IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2JpZGknO1xuaW1wb3J0IHsgQ2RrU3RlcHBlciwgU3RlcENvbnRlbnRQb3NpdGlvblN0YXRlLCBTdGVwcGVyT3B0aW9ucywgU1RFUFBFUl9HTE9CQUxfT1BUSU9OUyB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9zdGVwcGVyJztcbmltcG9ydCB7IERPQ1VNRU5UIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG5cdEFmdGVyQ29udGVudEluaXQsXG5cdENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuXHRDaGFuZ2VEZXRlY3RvclJlZixcblx0Q29tcG9uZW50LFxuXHRDb250ZW50Q2hpbGRyZW4sXG5cdEVsZW1lbnRSZWYsXG5cdEV2ZW50RW1pdHRlcixcblx0SW5qZWN0LFxuXHRJbnB1dCxcblx0T3B0aW9uYWwsXG5cdE91dHB1dCxcblx0UXVlcnlMaXN0LFxuXHRTZWxmLFxuXHRTa2lwU2VsZixcblx0VGVtcGxhdGVSZWYsXG5cdFZpZXdDaGlsZCxcblx0Vmlld0NoaWxkcmVuLFxuXHRWaWV3RW5jYXBzdWxhdGlvblxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFRoZW1lUGFsZXR0ZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2NvcmUnO1xuaW1wb3J0IHtcblx0TWF0SG9yaXpvbnRhbFN0ZXBwZXIsXG5cdE1hdFN0ZXAsXG5cdE1hdFN0ZXBIZWFkZXIsXG5cdE1hdFN0ZXBwZXIsXG5cdE1hdFN0ZXBwZXJJY29uLFxuXHRNYXRTdGVwcGVySWNvbkNvbnRleHQsXG5cdE1hdFZlcnRpY2FsU3RlcHBlclxufSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9zdGVwcGVyJztcbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGRpc3RpbmN0VW50aWxDaGFuZ2VkLCBmaWx0ZXIsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCBhbmltYXRpb24gZnJvbSAnLi9zdGVwcGVyLWFuaW1hdGlvbic7XG5cbi8qKiBAaWdub3JlICovXG5jb25zdCBCUkVBS1BPSU5UID0gNzY4O1xuXG4vKipcbiAqIFtBbmd1bGFyIE1hdGVyaWFsJ3Mgc3RlcHBlcl0oaHR0cHM6Ly9tYXRlcmlhbC5hbmd1bGFyLmlvL2NvbXBvbmVudHMvc3RlcHBlci9vdmVydmlldykgcHJvdmlkZXMgYSB3aXphcmQtbGlrZSB3b3JrZmxvdyBieSBkaXZpZGluZ1xuICogY29udGVudCBpbnRvIGxvZ2ljYWwgc3RlcHMuXG4gKlxuICogVGhpcyBzdGVwcGVyIGV4dGVuZHMgQW5ndWxhcidzIHRvIGN1c3RvbWlzZSB0aGUgcHJlc2VudGF0aW9uIG9mIGl0cyBoZWFkZXJzIHRvIGFjaGlldmUgYSBiZXR0ZXIgdXNlciBleHBlcmllbmNlIGluIGJvdGggbW9iaWxlIGFuZFxuICogZGVza3RvcCBicm93c2Vycy5cbiAqXG4gKi9cbkBDb21wb25lbnQoe1xuXHRzZWxlY3RvcjogJ2J1aS1zdGVwcGVyLCBbYnVpU3RlcHBlcl0nLFxuXHRleHBvcnRBczogJ2J1aVN0ZXBwZXIsIG1hdFN0ZXBwZXIsIG1hdFZlcnRpY2FsU3RlcHBlciwgbWF0SG9yaXpvbnRhbFN0ZXBwZXInLFxuXHR0ZW1wbGF0ZVVybDogJy4vc3RlcHBlci5jb21wb25lbnQuaHRtbCcsXG5cdHN0eWxlVXJsczogWycuL3N0ZXBwZXIuY29tcG9uZW50LnNjc3MnXSxcblx0aW5wdXRzOiBbJ3NlbGVjdGVkSW5kZXgnXSxcblx0aG9zdDoge1xuXHRcdGNsYXNzOiAnYnVpLXN0ZXBwZXIgYnVpLWhvc3QnLFxuXHRcdCdbYXR0ci5hcmlhLW9yaWVudGF0aW9uXSc6ICdvcmllbnRhdGlvbicsXG5cdFx0cm9sZTogJ3RhYmxpc3QnXG5cdH0sXG5cdGFuaW1hdGlvbnM6IFthbmltYXRpb24uc3RlcFRyYW5zaXRpb24sIGFuaW1hdGlvbi5sZWZ0RHJhd2VyLCBhbmltYXRpb24udG9wRHJhd2VyXSxcblx0cHJvdmlkZXJzOiBbXG5cdFx0eyBwcm92aWRlOiBNYXRTdGVwcGVyLCB1c2VFeGlzdGluZzogU3RlcHBlckNvbXBvbmVudCB9LFxuXHRcdHsgcHJvdmlkZTogQ2RrU3RlcHBlciwgdXNlRXhpc3Rpbmc6IFN0ZXBwZXJDb21wb25lbnQgfSxcblx0XHR7IHByb3ZpZGU6IE1hdEhvcml6b250YWxTdGVwcGVyLCB1c2VFeGlzdGluZzogU3RlcHBlckNvbXBvbmVudCB9LFxuXHRcdHsgcHJvdmlkZTogTWF0VmVydGljYWxTdGVwcGVyLCB1c2VFeGlzdGluZzogU3RlcHBlckNvbXBvbmVudCB9LFxuXHRcdHsgcHJvdmlkZTogU1RFUFBFUl9HTE9CQUxfT1BUSU9OUywgdXNlVmFsdWU6IHsgZGlzcGxheURlZmF1bHRJbmRpY2F0b3JUeXBlOiBmYWxzZSB9IH1cblx0XSxcblx0ZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcblx0Y2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgU3RlcHBlckNvbXBvbmVudCBleHRlbmRzIENka1N0ZXBwZXIgaW1wbGVtZW50cyBBZnRlckNvbnRlbnRJbml0IHtcblx0LyoqIEBpZ25vcmUgVGhlIGxpc3Qgb2Ygc3RlcCBoZWFkZXJzIG9mIHRoZSBzdGVwcyBpbiB0aGUgc3RlcHBlci4gKi9cblx0QFZpZXdDaGlsZHJlbihNYXRTdGVwSGVhZGVyKSBvdmVycmlkZSBfc3RlcEhlYWRlciE6IFF1ZXJ5TGlzdDxNYXRTdGVwSGVhZGVyPjtcblxuXHQvKiogQGlnbm9yZSBGdWxsIGxpc3Qgb2Ygc3RlcHMgaW5zaWRlIHRoZSBzdGVwcGVyLCBpbmNsdWRpbmcgaW5zaWRlIG5lc3RlZCBzdGVwcGVycy4gKi9cblx0QENvbnRlbnRDaGlsZHJlbihNYXRTdGVwLCB7IGRlc2NlbmRhbnRzOiB0cnVlIH0pIG92ZXJyaWRlIF9zdGVwcyE6IFF1ZXJ5TGlzdDxNYXRTdGVwPjtcblxuXHQvKiogQGlnbm9yZSBTdGVwcyB0aGF0IGJlbG9uZyB0byB0aGUgY3VycmVudCBzdGVwcGVyLCBleGNsdWRpbmcgb25lcyBmcm9tIG5lc3RlZCBzdGVwcGVycy4gKi9cblx0b3ZlcnJpZGUgcmVhZG9ubHkgc3RlcHM6IFF1ZXJ5TGlzdDxNYXRTdGVwPiA9IG5ldyBRdWVyeUxpc3Q8TWF0U3RlcD4oKTtcblxuXHQvKiogQGlnbm9yZSBDdXN0b20gaWNvbiBvdmVycmlkZXMgcGFzc2VkIGluIGJ5IHRoZSBjb25zdW1lci4gKi9cblx0QENvbnRlbnRDaGlsZHJlbihNYXRTdGVwcGVySWNvbiwgeyBkZXNjZW5kYW50czogdHJ1ZSB9KSBfaWNvbnMhOiBRdWVyeUxpc3Q8TWF0U3RlcHBlckljb24+O1xuXG5cdC8qKiBAaWdub3JlIEV2ZW50IGVtaXR0ZWQgd2hlbiB0aGUgY3VycmVudCBzdGVwIGlzIGRvbmUgdHJhbnNpdGlvbmluZyBpbi4gKi9cblx0QE91dHB1dCgpIHJlYWRvbmx5IGFuaW1hdGlvbkRvbmU6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcblxuXHQvKiogV2hldGhlciByaXBwbGVzIHNob3VsZCBiZSBkaXNhYmxlZCBmb3IgdGhlIHN0ZXAgaGVhZGVycy4gKi9cblx0QElucHV0KCkgZGlzYWJsZVJpcHBsZT86IGJvb2xlYW47XG5cblx0LyoqIFRoZW1lIGNvbG9yIGZvciBhbGwgb2YgdGhlIHN0ZXBzIGluIHN0ZXBwZXIuICovXG5cdEBJbnB1dCgpIGNvbG9yOiBUaGVtZVBhbGV0dGU7XG5cblx0LyoqXG5cdCAqIEEgZnVuY3Rpb24gdGhhdCBjb25zdHJ1Y3RzIHRoZSB0ZXh0IGluIHRoZSBwcm9ncmVzcyBjeWNsZSBmb3IgdGhlICduYXJyb3cnIHZpZXcuXG5cdCAqXG5cdCAqIERlZmF1bHQgdmFsdWU6IGAne3NlbGVjdGVkIHN0ZXB9IG9mIHt0b3RhbCBudW1iZXIgb2Ygc3RlcHN9J2Bcblx0ICovXG5cdEBJbnB1dCgpIGluZGljYXRvckZvcm1hdHRlcjogKGluZGV4OiBudW1iZXIsIHRvdGFsOiBudW1iZXIpID0+IHN0cmluZztcblxuXHQvKiogVGhlIHRleHQgdGhhdCBwcmVjZWRlcyB0aGUgbmFtZSBvZiB0aGUgbmV4dCBzdGVwIGxhYmVsLCB1c2VkIGluIHRoZSAnbmFycm93JyB2aWV3LiAgICovXG5cdEBJbnB1dCgpIG5leHRTdGVwTGFiZWxQcmVmaXggPSAnTmV4dDogJztcblxuXHQvKiogQGlnbm9yZSBDb25zdW1lci1zcGVjaWZpZWQgdGVtcGxhdGUtcmVmcyB0byBiZSB1c2VkIHRvIG92ZXJyaWRlIHRoZSBoZWFkZXIgaWNvbnMuICovXG5cdF9pY29uT3ZlcnJpZGVzOiBSZWNvcmQ8c3RyaW5nLCBUZW1wbGF0ZVJlZjxNYXRTdGVwcGVySWNvbkNvbnRleHQ+PiA9IHt9O1xuXG5cdC8qKiBAaWdub3JlIFN0cmVhbSBvZiBhbmltYXRpb24gYGRvbmVgIGV2ZW50cyB3aGVuIHRoZSBib2R5IGV4cGFuZHMvY29sbGFwc2VzLiAqL1xuXHRyZWFkb25seSBfYW5pbWF0aW9uRG9uZSA9IG5ldyBTdWJqZWN0PEFuaW1hdGlvbkV2ZW50PigpO1xuXG5cdC8qKiBAaWdub3JlIFdoZXRoZXIgdGhlIHN0ZXBwZXIgaXMgaW4gYSBuYXJyb3cgY29udGFpbmVyICovXG5cdF9uYXJyb3cgPSBmYWxzZTtcblxuXHQvKiogQGlnbm9yZSBFbWl0cyB3aGVuZXZlciB0aGUgZHJhd2VyIGhhcyBzdGFydGVkIGFuaW1hdGluZy4gKi9cblx0cmVhZG9ubHkgX2xlZnREcmF3ZXJTdGFydGVkID0gbmV3IFN1YmplY3Q8QW5pbWF0aW9uRXZlbnQ+KCk7XG5cdC8qKiBAaWdub3JlIEVtaXRzIHdoZW5ldmVyIHRoZSBkcmF3ZXIgaXMgZG9uZSBhbmltYXRpbmcuICovXG5cdHJlYWRvbmx5IF9sZWZ0RHJhd2VyRW5kZWQgPSBuZXcgU3ViamVjdDxBbmltYXRpb25FdmVudD4oKTtcblx0LyoqIEBpZ25vcmUgQ3VycmVudCBzdGF0ZSBvZiB0aGUgc2lkZW5hdiBhbmltYXRpb24uICovXG5cdF9sZWZ0RHJhd2VyU3RhdGU6ICdvcGVuLWluc3RhbnQnIHwgJ29wZW4nIHwgJ3ZvaWQnID0gJ29wZW4taW5zdGFudCc7XG5cblx0LyoqIEBpZ25vcmUgRW1pdHMgd2hlbmV2ZXIgdGhlIGRyYXdlciBoYXMgc3RhcnRlZCBhbmltYXRpbmcuICovXG5cdHJlYWRvbmx5IF90b3BEcmF3ZXJTdGFydGVkID0gbmV3IFN1YmplY3Q8QW5pbWF0aW9uRXZlbnQ+KCk7XG5cdC8qKiBAaWdub3JlIEVtaXRzIHdoZW5ldmVyIHRoZSBkcmF3ZXIgaXMgZG9uZSBhbmltYXRpbmcuICovXG5cdHJlYWRvbmx5IF90b3BEcmF3ZXJFbmRlZCA9IG5ldyBTdWJqZWN0PEFuaW1hdGlvbkV2ZW50PigpO1xuXHQvKiogQGlnbm9yZSBDdXJyZW50IHN0YXRlIG9mIHRoZSBzaWRlbmF2IGFuaW1hdGlvbi4gKi9cblx0X3RvcERyYXdlclN0YXRlOiAnb3Blbi1pbnN0YW50JyB8ICdvcGVuJyB8ICd2b2lkJyA9ICd2b2lkJztcblxuXHQvKiogQGlnbm9yZSAqLyByZWFkb25seSBfcHJvZ3Jlc3NDaXJjbGVTaXplID0gODA7XG5cdC8qKiBAaWdub3JlICovIHJlYWRvbmx5IF9wcm9ncmVzc0NpcmNsZVdpZHRoID0gNTtcblxuXHRAVmlld0NoaWxkKCdlZGl0SWNvblRlbXBsYXRlJywgeyBzdGF0aWM6IHRydWUgfSlcblx0cHJpdmF0ZSBfZWRpdEljb25UZW1wbGF0ZSE6IFRlbXBsYXRlUmVmPGFueT47XG5cblx0Y29uc3RydWN0b3IoXG5cdFx0QE9wdGlvbmFsKCkgZGlyOiBEaXJlY3Rpb25hbGl0eSxcblx0XHRjaGFuZ2VEZXRlY3RvclJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG5cdFx0cHJpdmF0ZSBfYnVpRWxSZWY6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+LFxuXHRcdEBJbmplY3QoRE9DVU1FTlQpIF9kb2N1bWVudDogYW55LFxuXHRcdEBTZWxmKCkgQEluamVjdChTVEVQUEVSX0dMT0JBTF9PUFRJT05TKSBzdGVwcGVyT3B0aW9uczogU3RlcHBlck9wdGlvbnMsXG5cdFx0QE9wdGlvbmFsKCkgQFNraXBTZWxmKCkgQEluamVjdChTVEVQUEVSX0dMT0JBTF9PUFRJT05TKSBkZWZhdWx0U3RlcHBlck9wdGlvbnM/OiBTdGVwcGVyT3B0aW9uc1xuXHQpIHtcblx0XHRzdXBlcihkaXIsIGNoYW5nZURldGVjdG9yUmVmLCBfYnVpRWxSZWYsIF9kb2N1bWVudCk7XG5cdFx0dGhpcy5vcmllbnRhdGlvbiA9ICd2ZXJ0aWNhbCc7XG5cdFx0dGhpcy5pbmRpY2F0b3JGb3JtYXR0ZXIgPSAoaW5kZXgsIHRvdGFsKSA9PiBgJHtpbmRleH0gb2YgJHt0b3RhbH1gO1xuXHRcdE9iamVjdC5rZXlzKGRlZmF1bHRTdGVwcGVyT3B0aW9ucyB8fCB7fSlcblx0XHRcdC5maWx0ZXIoayA9PiBrICE9PSAnZGlzcGxheURlZmF1bHRJbmRpY2F0b3JUeXBlJylcblx0XHRcdC5mb3JFYWNoKCgoazoga2V5b2YgU3RlcHBlck9wdGlvbnMpID0+IChzdGVwcGVyT3B0aW9uc1trXSA9IGRlZmF1bHRTdGVwcGVyT3B0aW9ucyFba10pKSBhcyBhbnkpO1xuXHR9XG5cblx0b3ZlcnJpZGUgbmdBZnRlckNvbnRlbnRJbml0KCkge1xuXHRcdHN1cGVyLm5nQWZ0ZXJDb250ZW50SW5pdCgpO1xuXHRcdHRoaXMuX2ljb25zLmZvckVhY2goKHsgbmFtZSwgdGVtcGxhdGVSZWYgfSkgPT4gKHRoaXMuX2ljb25PdmVycmlkZXNbbmFtZV0gPSB0ZW1wbGF0ZVJlZikpO1xuXG5cdFx0Ly8gTWFyayB0aGUgY29tcG9uZW50IGZvciBjaGFuZ2UgZGV0ZWN0aW9uIHdoZW5ldmVyIHRoZSBjb250ZW50IGNoaWxkcmVuIHF1ZXJ5IGNoYW5nZXNcblx0XHR0aGlzLnN0ZXBzLmNoYW5nZXMucGlwZSh0YWtlVW50aWwodGhpcy5fZGVzdHJveWVkKSkuc3Vic2NyaWJlKCgpID0+IHtcblx0XHRcdHRoaXMuX3N0YXRlQ2hhbmdlZCgpO1xuXHRcdH0pO1xuXG5cdFx0dGhpcy5fYW5pbWF0aW9uRG9uZVxuXHRcdFx0LnBpcGUoXG5cdFx0XHRcdGRpc3RpbmN0VW50aWxDaGFuZ2VkKCh4LCB5KSA9PiB4LmZyb21TdGF0ZSA9PT0geS5mcm9tU3RhdGUgJiYgeC50b1N0YXRlID09PSB5LnRvU3RhdGUpLFxuXHRcdFx0XHR0YWtlVW50aWwodGhpcy5fZGVzdHJveWVkKVxuXHRcdFx0KVxuXHRcdFx0LnN1YnNjcmliZShldmVudCA9PiB7XG5cdFx0XHRcdGlmICgoZXZlbnQudG9TdGF0ZSBhcyBTdGVwQ29udGVudFBvc2l0aW9uU3RhdGUpID09PSAnY3VycmVudCcpIHtcblx0XHRcdFx0XHR0aGlzLmFuaW1hdGlvbkRvbmUuZW1pdCgpO1xuXHRcdFx0XHR9XG5cdFx0XHR9KTtcblxuXHRcdHRoaXMuX2xlZnREcmF3ZXJFbmRlZFxuXHRcdFx0LnBpcGUoXG5cdFx0XHRcdGRpc3RpbmN0VW50aWxDaGFuZ2VkKCh4LCB5KSA9PiB4LmZyb21TdGF0ZSA9PT0geS5mcm9tU3RhdGUgJiYgeC50b1N0YXRlID09PSB5LnRvU3RhdGUpLFxuXHRcdFx0XHRmaWx0ZXIoZXYgPT4gZXYudG9TdGF0ZSA9PT0gJ3ZvaWQnICYmIGV2LnRvU3RhdGUgIT09IGV2LmZyb21TdGF0ZSksXG5cdFx0XHRcdHRha2VVbnRpbCh0aGlzLl9kZXN0cm95ZWQpXG5cdFx0XHQpXG5cdFx0XHQuc3Vic2NyaWJlKCgpID0+IHtcblx0XHRcdFx0dGhpcy5fdG9wRHJhd2VyU3RhdGUgPSAnb3Blbic7XG5cdFx0XHR9KTtcblxuXHRcdHRoaXMuX3RvcERyYXdlckVuZGVkXG5cdFx0XHQucGlwZShcblx0XHRcdFx0ZGlzdGluY3RVbnRpbENoYW5nZWQoKHgsIHkpID0+IHguZnJvbVN0YXRlID09PSB5LmZyb21TdGF0ZSAmJiB4LnRvU3RhdGUgPT09IHkudG9TdGF0ZSksXG5cdFx0XHRcdGZpbHRlcihldiA9PiBldi50b1N0YXRlID09PSAndm9pZCcgJiYgZXYudG9TdGF0ZSAhPT0gZXYuZnJvbVN0YXRlKSxcblx0XHRcdFx0dGFrZVVudGlsKHRoaXMuX2Rlc3Ryb3llZClcblx0XHRcdClcblx0XHRcdC5zdWJzY3JpYmUoKCkgPT4ge1xuXHRcdFx0XHR0aGlzLl9sZWZ0RHJhd2VyU3RhdGUgPSAnb3Blbic7XG5cdFx0XHR9KTtcblx0XHR0aGlzLl9pY29uT3ZlcnJpZGVzLmVkaXQgPSB0aGlzLl9pY29uT3ZlcnJpZGVzLmVkaXQgfHwgdGhpcy5fZWRpdEljb25UZW1wbGF0ZTtcblx0fVxuXG5cdC8qKiBAaWdub3JlICovXG5cdF9zdGVwSXNOYXZpZ2FibGUoaW5kZXg6IG51bWJlciwgc3RlcDogTWF0U3RlcCk6IGJvb2xlYW4ge1xuXHRcdHJldHVybiBzdGVwLmNvbXBsZXRlZCB8fCB0aGlzLnNlbGVjdGVkSW5kZXggPT09IGluZGV4IHx8ICF0aGlzLmxpbmVhcjtcblx0fVxuXG5cdC8qKiBAaWdub3JlICovXG5cdF93aWR0aENoYW5nZWQodzogbnVtYmVyKSB7XG5cdFx0Y29uc3QgbmFycm93ID0gTWF0aC5hYnModyAtIEJSRUFLUE9JTlQpIDwgMjAgPyB0aGlzLl9uYXJyb3cgOiB3IDwgQlJFQUtQT0lOVDtcblx0XHRjb25zdCBjbHMgPSAnYnVpLXN0ZXBwZXItbmFycm93Jztcblx0XHRjb25zdCBjbGFzc0xpc3QgPSB0aGlzLl9idWlFbFJlZi5uYXRpdmVFbGVtZW50LmNsYXNzTGlzdDtcblx0XHRpZiAobmFycm93KSB7XG5cdFx0XHR0aGlzLl9sZWZ0RHJhd2VyU3RhdGUgPSAndm9pZCc7XG5cdFx0XHRjbGFzc0xpc3QuYWRkKGNscyk7XG5cdFx0fSBlbHNlIHtcblx0XHRcdHRoaXMuX3RvcERyYXdlclN0YXRlID0gJ3ZvaWQnO1xuXHRcdFx0Y2xhc3NMaXN0LnJlbW92ZShjbHMpO1xuXHRcdH1cblx0XHRpZiAodGhpcy5fbmFycm93ICE9PSBuYXJyb3cpIHtcblx0XHRcdHRoaXMuX25hcnJvdyA9IG5hcnJvdztcblx0XHRcdHRoaXMuX3N0YXRlQ2hhbmdlZCgpO1xuXHRcdH1cblx0fVxufVxuIiwiPGRpdiBjbGFzcz1cImJ1aS1zdGVwcGVyLXdyYXBwZXJcIiBbc3R5bGUuZGlzcGxheV09XCJfbGVmdERyYXdlclN0YXRlLnN0YXJ0c1dpdGgoJ29wZW4nKSA/ICdmbGV4JyA6ICdibG9jaydcIiAjc2l6ZU1vbml0b3I+XG5cdDxkaXZcblx0XHRjbGFzcz1cImJ1aS1zdGVwcGVyLWxlZnQtaGVhZGVyLWNvbnRhaW5lclwiXG5cdFx0W0BsZWZ0RHJhd2VyXT1cIl9sZWZ0RHJhd2VyU3RhdGVcIlxuXHRcdChAbGVmdERyYXdlci5zdGFydCk9XCJfbGVmdERyYXdlclN0YXJ0ZWQubmV4dCgkZXZlbnQpXCJcblx0XHQoQGxlZnREcmF3ZXIuZG9uZSk9XCJfbGVmdERyYXdlckVuZGVkLm5leHQoJGV2ZW50KVwiXG5cdD5cblx0XHQ8ZGl2XG5cdFx0XHQqbmdGb3I9XCJsZXQgc3RlcCBvZiBzdGVwczsgbGV0IGkgPSBpbmRleDsgbGV0IGlzTGFzdCA9IGxhc3RcIlxuXHRcdFx0Y2xhc3M9XCJidWktc3RlcHBlci1oZWFkZXItd3JhcHBlclwiXG5cdFx0XHRbY2xhc3MuYnVpLXN0ZXBwZXItdmVydGljYWwtbGluZV09XCIhaXNMYXN0XCJcblx0XHQ+XG5cdFx0XHQ8bWF0LXN0ZXAtaGVhZGVyXG5cdFx0XHRcdGNsYXNzPVwiYnVpLXN0ZXBwZXItaGVhZGVyXCJcblx0XHRcdFx0KGNsaWNrKT1cInN0ZXAuc2VsZWN0KClcIlxuXHRcdFx0XHQoa2V5ZG93bik9XCJfb25LZXlkb3duKCRldmVudClcIlxuXHRcdFx0XHRbdGFiSW5kZXhdPVwiX2dldEZvY3VzSW5kZXgoKSA9PT0gaSA/IDAgOiAtMVwiXG5cdFx0XHRcdFtpZF09XCJfZ2V0U3RlcExhYmVsSWQoaSlcIlxuXHRcdFx0XHRbYXR0ci5hcmlhLXBvc2luc2V0XT1cImkgKyAxXCJcblx0XHRcdFx0W2F0dHIuYXJpYS1zZXRzaXplXT1cInN0ZXBzLmxlbmd0aFwiXG5cdFx0XHRcdFthdHRyLmFyaWEtY29udHJvbHNdPVwiX2dldFN0ZXBDb250ZW50SWQoaSlcIlxuXHRcdFx0XHRbYXR0ci5hcmlhLXNlbGVjdGVkXT1cInNlbGVjdGVkSW5kZXggPT0gaVwiXG5cdFx0XHRcdFthdHRyLmFyaWEtbGFiZWxdPVwic3RlcC5hcmlhTGFiZWwgfHwgbnVsbFwiXG5cdFx0XHRcdFthdHRyLmFyaWEtbGFiZWxsZWRieV09XCIhc3RlcC5hcmlhTGFiZWwgJiYgc3RlcC5hcmlhTGFiZWxsZWRieSA/IHN0ZXAuYXJpYUxhYmVsbGVkYnkgOiBudWxsXCJcblx0XHRcdFx0W2F0dHIuYXJpYS1kaXNhYmxlZF09XCJfc3RlcElzTmF2aWdhYmxlKGksIHN0ZXApID8gbnVsbCA6IHRydWVcIlxuXHRcdFx0XHRbaW5kZXhdPVwiaVwiXG5cdFx0XHRcdFtzdGF0ZV09XCJfZ2V0SW5kaWNhdG9yVHlwZShpLCBzdGVwLnN0YXRlKVwiXG5cdFx0XHRcdFtsYWJlbF09XCJzdGVwLnN0ZXBMYWJlbCB8fCBzdGVwLmxhYmVsXCJcblx0XHRcdFx0W3NlbGVjdGVkXT1cInNlbGVjdGVkSW5kZXggPT09IGlcIlxuXHRcdFx0XHRbYWN0aXZlXT1cIl9zdGVwSXNOYXZpZ2FibGUoaSwgc3RlcClcIlxuXHRcdFx0XHRbb3B0aW9uYWxdPVwic3RlcC5vcHRpb25hbFwiXG5cdFx0XHRcdFtlcnJvck1lc3NhZ2VdPVwic3RlcC5lcnJvck1lc3NhZ2VcIlxuXHRcdFx0XHRbaWNvbk92ZXJyaWRlc109XCJfaWNvbk92ZXJyaWRlc1wiXG5cdFx0XHRcdFtkaXNhYmxlUmlwcGxlXT1cImRpc2FibGVSaXBwbGUgfHwgIV9zdGVwSXNOYXZpZ2FibGUoaSwgc3RlcClcIlxuXHRcdFx0XHRbY29sb3JdPVwic3RlcC5jb2xvciB8fCBjb2xvclwiXG5cdFx0XHQ+PC9tYXQtc3RlcC1oZWFkZXI+XG5cdFx0PC9kaXY+XG5cdDwvZGl2PlxuXG5cdDxkaXYgY2xhc3M9XCJidWktc3RlcHBlci1jb250ZW50LWNvbnRhaW5lclwiIFtidWlTaXppbmdCeV09XCJzaXplTW9uaXRvclwiIChidWlSZXNpemVkKT1cIl93aWR0aENoYW5nZWQoJGV2ZW50LndpZHRoKVwiPlxuXHRcdDxkaXZcblx0XHRcdGNsYXNzPVwiYnVpLXN0ZXBwZXItdG9wLWhlYWRlci1jb250YWluZXJcIlxuXHRcdFx0W2NsYXNzLmJ1aS1zdGVwcGVyLWhlYWRlci1hY3RpdmVdPVwiX2xlZnREcmF3ZXJTdGF0ZSA9PT0gJ3ZvaWQnXCJcblx0XHRcdFtAdG9wRHJhd2VyXT1cIl90b3BEcmF3ZXJTdGF0ZVwiXG5cdFx0XHQoQHRvcERyYXdlci5zdGFydCk9XCJfdG9wRHJhd2VyU3RhcnRlZC5uZXh0KCRldmVudClcIlxuXHRcdFx0KEB0b3BEcmF3ZXIuZG9uZSk9XCJfdG9wRHJhd2VyRW5kZWQubmV4dCgkZXZlbnQpXCJcblx0XHQ+XG5cdFx0XHQ8ZGl2XG5cdFx0XHRcdGNsYXNzPVwiYnVpLXN0ZXBwZXItdG9wLWhlYWRlci1wcm9ncmVzc1wiXG5cdFx0XHRcdFtzdHlsZV09XCInaGVpZ2h0OicgKyBfcHJvZ3Jlc3NDaXJjbGVTaXplICsgJ3B4OyB3aWR0aDonICsgX3Byb2dyZXNzQ2lyY2xlU2l6ZSArICdweCdcIlxuXHRcdFx0PlxuXHRcdFx0XHQ8bWF0LXByb2dyZXNzLXNwaW5uZXJcblx0XHRcdFx0XHRjbGFzcz1cImJ1aS1wcm9ncmVzcy1zcGlubmVyLWxpZ2h0XCJcblx0XHRcdFx0XHRbdmFsdWVdPVwiMTAwXCJcblx0XHRcdFx0XHRbZGlhbWV0ZXJdPVwiX3Byb2dyZXNzQ2lyY2xlU2l6ZVwiXG5cdFx0XHRcdFx0W3N0cm9rZVdpZHRoXT1cIl9wcm9ncmVzc0NpcmNsZVdpZHRoXCJcblx0XHRcdFx0PjwvbWF0LXByb2dyZXNzLXNwaW5uZXI+XG5cdFx0XHRcdDxtYXQtcHJvZ3Jlc3Mtc3Bpbm5lclxuXHRcdFx0XHRcdFtjb2xvcl09XCJjb2xvclwiXG5cdFx0XHRcdFx0W3ZhbHVlXT1cIigoc2VsZWN0ZWRJbmRleCArIDEpICogMTAwKSAvIHN0ZXBzLmxlbmd0aFwiXG5cdFx0XHRcdFx0W2RpYW1ldGVyXT1cIl9wcm9ncmVzc0NpcmNsZVNpemVcIlxuXHRcdFx0XHRcdFtzdHJva2VXaWR0aF09XCJfcHJvZ3Jlc3NDaXJjbGVXaWR0aFwiXG5cdFx0XHRcdD48L21hdC1wcm9ncmVzcy1zcGlubmVyPlxuXHRcdFx0XHQ8c3BhbiBjbGFzcz1cImJ1aS1zdGVwcGVyLXRvcC1oZWFkZXItaW5kaWNhdG9yXCI+XG5cdFx0XHRcdFx0e3sgaW5kaWNhdG9yRm9ybWF0dGVyKHNlbGVjdGVkSW5kZXggKyAxLCBzdGVwcy5sZW5ndGgpIH19XG5cdFx0XHRcdDwvc3Bhbj5cblx0XHRcdDwvZGl2PlxuXHRcdFx0PGRpdiBjbGFzcz1cImJ1aS1zdGVwcGVyLXRvcC1oZWFkZXItdGl0bGVzLXdyYXBwZXJcIiAqbmdJZj1cInNlbGVjdGVkXCI+XG5cdFx0XHRcdDxkaXYgY2xhc3M9XCJidWktc3RlcHBlci10b3AtaGVhZGVyLXRpdGxlXCI+XG5cdFx0XHRcdFx0PG5nLXRlbXBsYXRlXG5cdFx0XHRcdFx0XHRbbmdUZW1wbGF0ZU91dGxldF09XCJsYWJlbFRlbXBsYXRlXCJcblx0XHRcdFx0XHRcdFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7ICRpbXBsaWNpdDogc2VsZWN0ZWQgfVwiXG5cdFx0XHRcdFx0PjwvbmctdGVtcGxhdGU+XG5cdFx0XHRcdDwvZGl2PlxuXHRcdFx0XHQ8ZGl2IGNsYXNzPVwiYnVpLXN0ZXBwZXItdG9wLWhlYWRlci10aXRsZS1uZXh0XCIgKm5nSWY9XCJzZWxlY3RlZEluZGV4IDwgc3RlcHMubGVuZ3RoIC0gMVwiPlxuXHRcdFx0XHRcdHt7IG5leHRTdGVwTGFiZWxQcmVmaXggfX1cblx0XHRcdFx0XHQ8bmctdGVtcGxhdGVcblx0XHRcdFx0XHRcdFtuZ1RlbXBsYXRlT3V0bGV0XT1cImxhYmVsVGVtcGxhdGVcIlxuXHRcdFx0XHRcdFx0W25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cInsgJGltcGxpY2l0OiBzdGVwcy5nZXQoc2VsZWN0ZWRJbmRleCArIDEpIH1cIlxuXHRcdFx0XHRcdD48L25nLXRlbXBsYXRlPlxuXHRcdFx0XHQ8L2Rpdj5cblx0XHRcdDwvZGl2PlxuXHRcdDwvZGl2PlxuXHRcdDxkaXYgY2xhc3M9XCJidWktc3RlcHBlci1jb250ZW50LXdyYXBwZXJcIj5cblx0XHRcdDxkaXZcblx0XHRcdFx0Km5nRm9yPVwibGV0IHN0ZXAgb2Ygc3RlcHM7IGxldCBpID0gaW5kZXhcIlxuXHRcdFx0XHRjbGFzcz1cImJ1aS1zdGVwcGVyLWNvbnRlbnRcIlxuXHRcdFx0XHRyb2xlPVwidGFicGFuZWxcIlxuXHRcdFx0XHRbQHN0ZXBUcmFuc2l0aW9uXT1cIl9nZXRBbmltYXRpb25EaXJlY3Rpb24oaSlcIlxuXHRcdFx0XHQoQHN0ZXBUcmFuc2l0aW9uLmRvbmUpPVwiX2FuaW1hdGlvbkRvbmUubmV4dCgkZXZlbnQpXCJcblx0XHRcdFx0W2lkXT1cIl9nZXRTdGVwQ29udGVudElkKGkpXCJcblx0XHRcdFx0W2F0dHIuYXJpYS1sYWJlbGxlZGJ5XT1cIl9nZXRTdGVwTGFiZWxJZChpKVwiXG5cdFx0XHRcdFthdHRyLmFyaWEtZXhwYW5kZWRdPVwic2VsZWN0ZWRJbmRleCA9PT0gaVwiXG5cdFx0XHQ+XG5cdFx0XHRcdDxkaXYgY2xhc3M9XCJidWktc3RlcHBlci1jb250ZW50LWhlYWRlci1sYWJlbFwiICpuZ0lmPVwiIV9uYXJyb3dcIj5cblx0XHRcdFx0XHQ8bmctdGVtcGxhdGUgW25nVGVtcGxhdGVPdXRsZXRdPVwibGFiZWxUZW1wbGF0ZVwiIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7ICRpbXBsaWNpdDogc3RlcCB9XCI+PC9uZy10ZW1wbGF0ZT5cblx0XHRcdFx0PC9kaXY+XG5cdFx0XHRcdDxuZy10ZW1wbGF0ZSBbbmdUZW1wbGF0ZU91dGxldF09XCJzdGVwLmNvbnRlbnRcIj48L25nLXRlbXBsYXRlPlxuXHRcdFx0PC9kaXY+XG5cdFx0PC9kaXY+XG5cdDwvZGl2PlxuPC9kaXY+XG5cbjxuZy10ZW1wbGF0ZSAjbGFiZWxUZW1wbGF0ZSBsZXQtc3RlcD5cblx0PG5nLXRlbXBsYXRlIFtuZ0lmXT1cInN0ZXAuc3RlcExhYmVsXCIgW25nSWZFbHNlXT1cInN0cmluZ0xhYmVsVGVtcGxcIj5cblx0XHQ8bmctdGVtcGxhdGUgW25nVGVtcGxhdGVPdXRsZXRdPVwic3RlcC5zdGVwTGFiZWwudGVtcGxhdGVcIj48L25nLXRlbXBsYXRlPlxuXHQ8L25nLXRlbXBsYXRlPlxuXHQ8bmctdGVtcGxhdGUgI3N0cmluZ0xhYmVsVGVtcGw+e3sgc3RlcC5sYWJlbCB9fTwvbmctdGVtcGxhdGU+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI2VkaXRJY29uVGVtcGxhdGUgbGV0LWluZGV4PVwiaW5kZXhcIj5cblx0PHNwYW4+e3sgaW5kZXggKyAxIH19PC9zcGFuPlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
@@ -1,59 +0,0 @@
1
- import { ChangeDetectionStrategy, Component, Inject, InjectionToken, ViewChild, ViewEncapsulation } from '@angular/core';
2
- import { matTooltipAnimations, TooltipComponent as MatTooltipComponent } from '@angular/material/tooltip';
3
- import * as i0 from "@angular/core";
4
- import * as i1 from "@angular/cdk/layout";
5
- import * as i2 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, _breakpointObserver, _tooltipInst) {
12
- super(changeDetectorRef, _breakpointObserver);
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
- }
21
- super.show(delay);
22
- }
23
- get _self() {
24
- return this;
25
- }
26
- }
27
- TooltipComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TooltipComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i1.BreakpointObserver }, { token: BUI_TOOLTIP_TEMPLATE_REF }], target: i0.ɵɵFactoryTarget.Component });
28
- TooltipComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: TooltipComponent, selector: "bui-tooltip-component", host: { attributes: { "aria-hidden": "true" }, listeners: { "body:click": "this._handleBodyInteraction()", "body:auxclick": "this._handleBodyInteraction()" }, properties: { "style.zoom": "_visibility === \"visible\" ? 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 }], usesInheritance: true, ngImport: i0, template: "<div\n\t#tooltip\n\tclass=\"mat-tooltip bui-tooltip\"\n\t[ngClass]=\"tooltipClass\"\n\t[class.mat-tooltip-handset]=\"(_isHandset | async)?.matches\"\n\t[@state]=\"_visibility\"\n\t(@state.start)=\"_self._animationStart && _self._animationStart()\"\n\t(@state.done)=\"_self._animationDone && _self._animationDone($event)\"\n\t(animationend)=\"_self._handleAnimationEnd && _self._handleAnimationEnd($event)\"\n>\n\t<ng-template [ngIf]=\"_tooltipInst.template\">\n\t\t<ng-template [ngTemplateOutlet]=\"_tooltipInst.template\"></ng-template>\n\t</ng-template>\n\t<div #tooltipDiv></div>\n</div>\n", styles: [".bui-tooltip.mat-tooltip{max-width:768px;font-size:inherit}.bui-tooltip.mat-tooltip.bui-tooltip-400{max-width:400px}.bui-tooltip.mat-tooltip.bui-tooltip-500{max-width:500px}.bui-tooltip.mat-tooltip.bui-tooltip-600{max-width:600px}.bui-tooltip.mat-tooltip.bui-tooltip-700{max-width:700px}.bui-tooltip.mat-tooltip.bui-tooltip-800{max-width:800px}.bui-tooltip.mat-tooltip.bui-tooltip-900{max-width:900px}\n"], directives: [{ type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], pipes: { "async": i2.AsyncPipe }, animations: [matTooltipAnimations.tooltipState], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
29
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TooltipComponent, decorators: [{
30
- type: Component,
31
- args: [{
32
- selector: 'bui-tooltip-component',
33
- templateUrl: './tooltip.component.html',
34
- styleUrls: ['./tooltip.component.scss'],
35
- encapsulation: ViewEncapsulation.None,
36
- changeDetection: ChangeDetectionStrategy.OnPush,
37
- animations: [matTooltipAnimations.tooltipState],
38
- host: {
39
- class: 'bui-tooltip-component bui-host',
40
- // Forces the element to have a layout in IE and Edge. This fixes issues where the element
41
- // won't be rendered if the animations are disabled or there is no web animations polyfill.
42
- '[style.zoom]': '_visibility === "visible" ? 1 : null',
43
- '(body:click)': 'this._handleBodyInteraction()',
44
- '(body:auxclick)': 'this._handleBodyInteraction()',
45
- 'aria-hidden': 'true'
46
- }
47
- }]
48
- }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i1.BreakpointObserver }, { type: undefined, decorators: [{
49
- type: Inject,
50
- args: [BUI_TOOLTIP_TEMPLATE_REF]
51
- }] }]; }, propDecorators: { _tooltip: [{
52
- type: ViewChild,
53
- args: ['tooltip', { static: true }]
54
- }], tooltipDiv: [{
55
- type: ViewChild,
56
- args: ['tooltipDiv', { static: true }]
57
- }] } });
58
- TooltipComponent.ɵcmp.styles.push(MatTooltipComponent.ɵcmp.styles);
59
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbHRpcC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy91aS90b29sdGlwL3Rvb2x0aXAuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vcHJvamVjdHMvdWkvdG9vbHRpcC90b29sdGlwLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFDTix1QkFBdUIsRUFFdkIsU0FBUyxFQUVULE1BQU0sRUFDTixjQUFjLEVBRWQsU0FBUyxFQUNULGlCQUFpQixFQUNqQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsZ0JBQWdCLElBQUksbUJBQW1CLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQzs7OztBQVMxRzs7R0FFRztBQUNILE1BQU0sQ0FBQyxNQUFNLHdCQUF3QixHQUFHLElBQUksY0FBYyxDQUN6RCx1Q0FBdUMsQ0FDdkMsQ0FBQztBQW1CRixNQUFNLE9BQU8sZ0JBQWlCLFNBQVEsbUJBQW1CO0lBU3hELFlBQ0MsaUJBQW9DLEVBQ3BDLG1CQUF1QyxFQUNFLFlBQXNDO1FBRS9FLEtBQUssQ0FBQyxpQkFBaUIsRUFBRSxtQkFBbUIsQ0FBQyxDQUFDO1FBRkwsaUJBQVksR0FBWixZQUFZLENBQTBCO1FBWHhFLGlCQUFZLEdBQUcsRUFBRSxDQUFDO0lBYzFCLENBQUM7SUFFRCxJQUFJLENBQUMsS0FBYTtRQUNqQixJQUFJLElBQUksQ0FBQyxZQUFZLEtBQUssSUFBSSxDQUFDLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsUUFBUSxFQUFFO1lBQ3RFLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDO1lBQ3ZELElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQztTQUNqQztRQUNELEtBQUssQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDbkIsQ0FBQztJQUVELElBQUksS0FBSztRQUNSLE9BQU8sSUFBSSxDQUFDO0lBQ2IsQ0FBQzs7OEdBM0JXLGdCQUFnQixxRkFZbkIsd0JBQXdCO2tHQVpyQixnQkFBZ0IsMmtCQzdDN0Isa2xCQWVBLG12QkRtQmEsQ0FBQyxvQkFBb0IsQ0FBQyxZQUFZLENBQUM7NEZBV25DLGdCQUFnQjtrQkFqQjVCLFNBQVM7bUJBQUM7b0JBQ1YsUUFBUSxFQUFFLHVCQUF1QjtvQkFDakMsV0FBVyxFQUFFLDBCQUEwQjtvQkFDdkMsU0FBUyxFQUFFLENBQUMsMEJBQTBCLENBQUM7b0JBQ3ZDLGFBQWEsRUFBRSxpQkFBaUIsQ0FBQyxJQUFJO29CQUNyQyxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtvQkFDL0MsVUFBVSxFQUFFLENBQUMsb0JBQW9CLENBQUMsWUFBWSxDQUFDO29CQUMvQyxJQUFJLEVBQUU7d0JBQ0wsS0FBSyxFQUFFLGdDQUFnQzt3QkFDdkMsMEZBQTBGO3dCQUMxRiwyRkFBMkY7d0JBQzNGLGNBQWMsRUFBRSxzQ0FBc0M7d0JBQ3RELGNBQWMsRUFBRSwrQkFBK0I7d0JBQy9DLGlCQUFpQixFQUFFLCtCQUErQjt3QkFDbEQsYUFBYSxFQUFFLE1BQU07cUJBQ3JCO2lCQUNEOzswQkFhRSxNQUFNOzJCQUFDLHdCQUF3Qjs0Q0FSakMsUUFBUTtzQkFEUCxTQUFTO3VCQUFDLFNBQVMsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUU7Z0JBSTlCLFVBQVU7c0JBRGpCLFNBQVM7dUJBQUMsWUFBWSxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTs7QUF3QnpDLGdCQUF3QixDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFFLG1CQUEyQixDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJyZWFrcG9pbnRPYnNlcnZlciB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9sYXlvdXQnO1xuaW1wb3J0IHtcblx0Q2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG5cdENoYW5nZURldGVjdG9yUmVmLFxuXHRDb21wb25lbnQsXG5cdEVsZW1lbnRSZWYsXG5cdEluamVjdCxcblx0SW5qZWN0aW9uVG9rZW4sXG5cdFRlbXBsYXRlUmVmLFxuXHRWaWV3Q2hpbGQsXG5cdFZpZXdFbmNhcHN1bGF0aW9uXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgbWF0VG9vbHRpcEFuaW1hdGlvbnMsIFRvb2x0aXBDb21wb25lbnQgYXMgTWF0VG9vbHRpcENvbXBvbmVudCB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3Rvb2x0aXAnO1xuXG4vKipcbiAqIEBpZ25vcmVcbiAqL1xuaW50ZXJmYWNlIFRvb2x0aXBUZW1wbGF0ZUNvbnRhaW5lciB7XG5cdHRlbXBsYXRlPzogVGVtcGxhdGVSZWY8YW55Pjtcbn1cblxuLyoqXG4gKiBAaWdub3JlXG4gKi9cbmV4cG9ydCBjb25zdCBCVUlfVE9PTFRJUF9URU1QTEFURV9SRUYgPSBuZXcgSW5qZWN0aW9uVG9rZW48VG9vbHRpcFRlbXBsYXRlQ29udGFpbmVyPihcblx0J0BicmF2dXJhL3VpL3Rvb2x0aXAvdGVtcGxhdGVDb250YWluZXInXG4pO1xuXG5AQ29tcG9uZW50KHtcblx0c2VsZWN0b3I6ICdidWktdG9vbHRpcC1jb21wb25lbnQnLFxuXHR0ZW1wbGF0ZVVybDogJy4vdG9vbHRpcC5jb21wb25lbnQuaHRtbCcsXG5cdHN0eWxlVXJsczogWycuL3Rvb2x0aXAuY29tcG9uZW50LnNjc3MnXSxcblx0ZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcblx0Y2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG5cdGFuaW1hdGlvbnM6IFttYXRUb29sdGlwQW5pbWF0aW9ucy50b29sdGlwU3RhdGVdLFxuXHRob3N0OiB7XG5cdFx0Y2xhc3M6ICdidWktdG9vbHRpcC1jb21wb25lbnQgYnVpLWhvc3QnLFxuXHRcdC8vIEZvcmNlcyB0aGUgZWxlbWVudCB0byBoYXZlIGEgbGF5b3V0IGluIElFIGFuZCBFZGdlLiBUaGlzIGZpeGVzIGlzc3VlcyB3aGVyZSB0aGUgZWxlbWVudFxuXHRcdC8vIHdvbid0IGJlIHJlbmRlcmVkIGlmIHRoZSBhbmltYXRpb25zIGFyZSBkaXNhYmxlZCBvciB0aGVyZSBpcyBubyB3ZWIgYW5pbWF0aW9ucyBwb2x5ZmlsbC5cblx0XHQnW3N0eWxlLnpvb21dJzogJ192aXNpYmlsaXR5ID09PSBcInZpc2libGVcIiA/IDEgOiBudWxsJyxcblx0XHQnKGJvZHk6Y2xpY2spJzogJ3RoaXMuX2hhbmRsZUJvZHlJbnRlcmFjdGlvbigpJyxcblx0XHQnKGJvZHk6YXV4Y2xpY2spJzogJ3RoaXMuX2hhbmRsZUJvZHlJbnRlcmFjdGlvbigpJyxcblx0XHQnYXJpYS1oaWRkZW4nOiAndHJ1ZSdcblx0fVxufSlcbmV4cG9ydCBjbGFzcyBUb29sdGlwQ29tcG9uZW50IGV4dGVuZHMgTWF0VG9vbHRpcENvbXBvbmVudCB7XG5cdHByaXZhdGUgX21lc3NhZ2VDb3B5ID0gJyc7XG5cblx0QFZpZXdDaGlsZCgndG9vbHRpcCcsIHsgc3RhdGljOiB0cnVlIH0pXG5cdF90b29sdGlwITogRWxlbWVudFJlZjxIVE1MRWxlbWVudD47XG5cblx0QFZpZXdDaGlsZCgndG9vbHRpcERpdicsIHsgc3RhdGljOiB0cnVlIH0pXG5cdHByaXZhdGUgdG9vbHRpcERpdiE6IEVsZW1lbnRSZWY8SFRNTERpdkVsZW1lbnQ+O1xuXG5cdGNvbnN0cnVjdG9yKFxuXHRcdGNoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZixcblx0XHRfYnJlYWtwb2ludE9ic2VydmVyOiBCcmVha3BvaW50T2JzZXJ2ZXIsXG5cdFx0QEluamVjdChCVUlfVE9PTFRJUF9URU1QTEFURV9SRUYpIHB1YmxpYyBfdG9vbHRpcEluc3Q6IFRvb2x0aXBUZW1wbGF0ZUNvbnRhaW5lclxuXHQpIHtcblx0XHRzdXBlcihjaGFuZ2VEZXRlY3RvclJlZiwgX2JyZWFrcG9pbnRPYnNlcnZlcik7XG5cdH1cblxuXHRzaG93KGRlbGF5OiBudW1iZXIpOiB2b2lkIHtcblx0XHRpZiAodGhpcy5fbWVzc2FnZUNvcHkgIT09IHRoaXMubWVzc2FnZSAmJiAhdGhpcy5fdG9vbHRpcEluc3QudGVtcGxhdGUpIHtcblx0XHRcdHRoaXMudG9vbHRpcERpdi5uYXRpdmVFbGVtZW50LmlubmVySFRNTCA9IHRoaXMubWVzc2FnZTtcblx0XHRcdHRoaXMuX21lc3NhZ2VDb3B5ID0gdGhpcy5tZXNzYWdlO1xuXHRcdH1cblx0XHRzdXBlci5zaG93KGRlbGF5KTtcblx0fVxuXG5cdGdldCBfc2VsZigpOiBhbnkge1xuXHRcdHJldHVybiB0aGlzO1xuXHR9XG59XG5cbihUb29sdGlwQ29tcG9uZW50IGFzIGFueSkuybVjbXAuc3R5bGVzLnB1c2goKE1hdFRvb2x0aXBDb21wb25lbnQgYXMgYW55KS7JtWNtcC5zdHlsZXMpO1xuIiwiPGRpdlxuXHQjdG9vbHRpcFxuXHRjbGFzcz1cIm1hdC10b29sdGlwIGJ1aS10b29sdGlwXCJcblx0W25nQ2xhc3NdPVwidG9vbHRpcENsYXNzXCJcblx0W2NsYXNzLm1hdC10b29sdGlwLWhhbmRzZXRdPVwiKF9pc0hhbmRzZXQgfCBhc3luYyk/Lm1hdGNoZXNcIlxuXHRbQHN0YXRlXT1cIl92aXNpYmlsaXR5XCJcblx0KEBzdGF0ZS5zdGFydCk9XCJfc2VsZi5fYW5pbWF0aW9uU3RhcnQgJiYgX3NlbGYuX2FuaW1hdGlvblN0YXJ0KClcIlxuXHQoQHN0YXRlLmRvbmUpPVwiX3NlbGYuX2FuaW1hdGlvbkRvbmUgJiYgX3NlbGYuX2FuaW1hdGlvbkRvbmUoJGV2ZW50KVwiXG5cdChhbmltYXRpb25lbmQpPVwiX3NlbGYuX2hhbmRsZUFuaW1hdGlvbkVuZCAmJiBfc2VsZi5faGFuZGxlQW5pbWF0aW9uRW5kKCRldmVudClcIlxuPlxuXHQ8bmctdGVtcGxhdGUgW25nSWZdPVwiX3Rvb2x0aXBJbnN0LnRlbXBsYXRlXCI+XG5cdFx0PG5nLXRlbXBsYXRlIFtuZ1RlbXBsYXRlT3V0bGV0XT1cIl90b29sdGlwSW5zdC50ZW1wbGF0ZVwiPjwvbmctdGVtcGxhdGU+XG5cdDwvbmctdGVtcGxhdGU+XG5cdDxkaXYgI3Rvb2x0aXBEaXY+PC9kaXY+XG48L2Rpdj5cbiJdfQ==
@@ -1,26 +0,0 @@
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
- }
13
- TooltipModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TooltipModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
14
- TooltipModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TooltipModule, declarations: [TooltipDirective, TooltipComponent], imports: [A11yModule, CommonModule, OverlayModule, MatCommonModule], exports: [TooltipDirective, MatCommonModule, CdkScrollableModule] });
15
- TooltipModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TooltipModule, providers: [MAT_TOOLTIP_SCROLL_STRATEGY_FACTORY_PROVIDER], imports: [[A11yModule, CommonModule, OverlayModule, MatCommonModule], MatCommonModule, CdkScrollableModule] });
16
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", 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
- entryComponents: [TooltipComponent],
23
- providers: [MAT_TOOLTIP_SCROLL_STRATEGY_FACTORY_PROVIDER]
24
- }]
25
- }] });
26
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbHRpcC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy91aS90b29sdGlwL3Rvb2x0aXAubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDckQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDN0QsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3pELE9BQU8sRUFBRSw0Q0FBNEMsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ3pGLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDOztBQVN2RCxNQUFNLE9BQU8sYUFBYTs7MkdBQWIsYUFBYTs0R0FBYixhQUFhLGlCQUpWLGdCQUFnQixFQUFFLGdCQUFnQixhQUZ2QyxVQUFVLEVBQUUsWUFBWSxFQUFFLGFBQWEsRUFBRSxlQUFlLGFBQ3hELGdCQUFnQixFQUFFLGVBQWUsRUFBRSxtQkFBbUI7NEdBS3BELGFBQWEsYUFGZCxDQUFDLDRDQUE0QyxDQUFDLFlBSmhELENBQUMsVUFBVSxFQUFFLFlBQVksRUFBRSxhQUFhLEVBQUUsZUFBZSxDQUFDLEVBQ3ZDLGVBQWUsRUFBRSxtQkFBbUI7NEZBS3BELGFBQWE7a0JBUHpCLFFBQVE7bUJBQUM7b0JBQ1QsT0FBTyxFQUFFLENBQUMsVUFBVSxFQUFFLFlBQVksRUFBRSxhQUFhLEVBQUUsZUFBZSxDQUFDO29CQUNuRSxPQUFPLEVBQUUsQ0FBQyxnQkFBZ0IsRUFBRSxlQUFlLEVBQUUsbUJBQW1CLENBQUM7b0JBQ2pFLFlBQVksRUFBRSxDQUFDLGdCQUFnQixFQUFFLGdCQUFnQixDQUFDO29CQUNsRCxlQUFlLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQztvQkFDbkMsU0FBUyxFQUFFLENBQUMsNENBQTRDLENBQUM7aUJBQ3pEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQTExeU1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9hMTF5JztcbmltcG9ydCB7IE92ZXJsYXlNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jZGsvb3ZlcmxheSc7XG5pbXBvcnQgeyBDZGtTY3JvbGxhYmxlTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL3Njcm9sbGluZyc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1hdENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2NvcmUnO1xuaW1wb3J0IHsgTUFUX1RPT0xUSVBfU0NST0xMX1NUUkFURUdZX0ZBQ1RPUllfUFJPVklERVIgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90b29sdGlwJztcbmltcG9ydCB7IFRvb2x0aXBDb21wb25lbnQgfSBmcm9tICcuL3Rvb2x0aXAuY29tcG9uZW50JztcbmltcG9ydCB7IFRvb2x0aXBEaXJlY3RpdmUgfSBmcm9tICcuL3Rvb2x0aXAuZGlyZWN0aXZlJztcblxuQE5nTW9kdWxlKHtcblx0aW1wb3J0czogW0ExMXlNb2R1bGUsIENvbW1vbk1vZHVsZSwgT3ZlcmxheU1vZHVsZSwgTWF0Q29tbW9uTW9kdWxlXSxcblx0ZXhwb3J0czogW1Rvb2x0aXBEaXJlY3RpdmUsIE1hdENvbW1vbk1vZHVsZSwgQ2RrU2Nyb2xsYWJsZU1vZHVsZV0sXG5cdGRlY2xhcmF0aW9uczogW1Rvb2x0aXBEaXJlY3RpdmUsIFRvb2x0aXBDb21wb25lbnRdLFxuXHRlbnRyeUNvbXBvbmVudHM6IFtUb29sdGlwQ29tcG9uZW50XSxcblx0cHJvdmlkZXJzOiBbTUFUX1RPT0xUSVBfU0NST0xMX1NUUkFURUdZX0ZBQ1RPUllfUFJPVklERVJdXG59KVxuZXhwb3J0IGNsYXNzIFRvb2x0aXBNb2R1bGUge31cbiJdfQ==