@bravura/ui 3.8.0 → 4.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 (267) hide show
  1. package/CHANGELOG.md +579 -557
  2. package/LICENSE +6 -6
  3. package/README.md +56 -54
  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/{esm2020 → esm2022}/behavior/await.directive.mjs +6 -6
  19. package/esm2022/behavior/behavior.module.mjs +37 -0
  20. package/{esm2020 → esm2022}/behavior/observe-content-class.directive.mjs +5 -5
  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/{esm2020 → esm2022}/common/common.module.mjs +7 -7
  30. package/{esm2020 → esm2022}/common/public-api.mjs +1 -1
  31. package/{esm2020 → esm2022}/currency-input/currency-input.directive.mjs +6 -6
  32. package/esm2022/currency-input/currency-input.module.mjs +19 -0
  33. package/{esm2020 → esm2022}/currency-input/public-api.mjs +1 -1
  34. package/{esm2020 → esm2022}/decimal-input/decimal-input.directive.mjs +9 -9
  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/{esm2020 → esm2022}/icon-font/icon.directive.mjs +5 -5
  48. package/{esm2020 → esm2022}/icon-font/public-api.mjs +1 -1
  49. package/{esm2020 → esm2022}/icon-font/utilities.mjs +1 -1
  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/{esm2020 → esm2022}/phone-number/phone-number.pipe.mjs +6 -6
  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/{esm2020 → esm2022}/skeletons/skeleton-loader.component.mjs +5 -5
  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 +31 -31
  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 +76 -120
  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 +112 -112
  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/behavior.module.mjs +0 -37
  147. package/esm2020/behavior/sizing-monitor.directive.mjs +0 -31
  148. package/esm2020/behavior/sizing.directive.mjs +0 -256
  149. package/esm2020/clip-note/clip-note.component.mjs +0 -216
  150. package/esm2020/clip-note/clip-note.directive.mjs +0 -141
  151. package/esm2020/clip-note/clip-note.module.mjs +0 -32
  152. package/esm2020/currency-input/currency-input.module.mjs +0 -19
  153. package/esm2020/discrete-input/discrete-input.component.mjs +0 -337
  154. package/esm2020/discrete-input/discrete-input.module.mjs +0 -21
  155. package/esm2020/file-upload/file-upload.component.mjs +0 -400
  156. package/esm2020/file-upload/file-upload.module.mjs +0 -44
  157. package/esm2020/file-upload/file-upload.service.mjs +0 -29
  158. package/esm2020/form-field/form-field.component.mjs +0 -82
  159. package/esm2020/form-field/form-field.module.mjs +0 -33
  160. package/esm2020/icon-font/icon-font.module.mjs +0 -22
  161. package/esm2020/panel/panel-section.component.mjs +0 -41
  162. package/esm2020/panel/panel.component.mjs +0 -87
  163. package/esm2020/panel/panel.module.mjs +0 -23
  164. package/esm2020/panel/tinted.directive.mjs +0 -60
  165. package/esm2020/phone-number/phone-number.directive.mjs +0 -188
  166. package/esm2020/phone-number/phone-number.validator.mjs +0 -64
  167. package/esm2020/radio-panel/radio-panel-item.component.mjs +0 -93
  168. package/esm2020/radio-panel/radio-panel.component.mjs +0 -81
  169. package/esm2020/radio-panel/testing/test-api.mjs +0 -47
  170. package/esm2020/selection-panel/selection-panel-item.component.mjs +0 -166
  171. package/esm2020/selection-panel/selection-panel.directive.mjs +0 -119
  172. package/esm2020/selection-panel/selection-panel.module.mjs +0 -23
  173. package/esm2020/skeletons/skeleton-loader-presets.directive.mjs +0 -83
  174. package/esm2020/skeletons/skeletons.module.mjs +0 -35
  175. package/esm2020/stepper/stepper.component.mjs +0 -176
  176. package/esm2020/stepper/stepper.module.mjs +0 -52
  177. package/esm2020/tooltip/tooltip.component.mjs +0 -54
  178. package/esm2020/tooltip/tooltip.directive.mjs +0 -149
  179. package/esm2020/tooltip/tooltip.module.mjs +0 -25
  180. package/fesm2015/bravura-ui-alert-testing.mjs +0 -64
  181. package/fesm2015/bravura-ui-alert-testing.mjs.map +0 -1
  182. package/fesm2015/bravura-ui-alert.mjs +0 -340
  183. package/fesm2015/bravura-ui-alert.mjs.map +0 -1
  184. package/fesm2015/bravura-ui-behavior.mjs +0 -515
  185. package/fesm2015/bravura-ui-behavior.mjs.map +0 -1
  186. package/fesm2015/bravura-ui-clip-note.mjs +0 -393
  187. package/fesm2015/bravura-ui-clip-note.mjs.map +0 -1
  188. package/fesm2015/bravura-ui-common.mjs +0 -96
  189. package/fesm2015/bravura-ui-common.mjs.map +0 -1
  190. package/fesm2015/bravura-ui-currency-input.mjs +0 -300
  191. package/fesm2015/bravura-ui-currency-input.mjs.map +0 -1
  192. package/fesm2015/bravura-ui-decimal-input.mjs +0 -145
  193. package/fesm2015/bravura-ui-decimal-input.mjs.map +0 -1
  194. package/fesm2015/bravura-ui-discrete-input.mjs +0 -365
  195. package/fesm2015/bravura-ui-discrete-input.mjs.map +0 -1
  196. package/fesm2015/bravura-ui-file-upload.mjs +0 -478
  197. package/fesm2015/bravura-ui-file-upload.mjs.map +0 -1
  198. package/fesm2015/bravura-ui-form-field.mjs +0 -120
  199. package/fesm2015/bravura-ui-form-field.mjs.map +0 -1
  200. package/fesm2015/bravura-ui-icon-font.mjs +0 -178
  201. package/fesm2015/bravura-ui-icon-font.mjs.map +0 -1
  202. package/fesm2015/bravura-ui-panel.mjs +0 -210
  203. package/fesm2015/bravura-ui-panel.mjs.map +0 -1
  204. package/fesm2015/bravura-ui-phone-number.mjs +0 -327
  205. package/fesm2015/bravura-ui-phone-number.mjs.map +0 -1
  206. package/fesm2015/bravura-ui-radio-panel-testing.mjs +0 -63
  207. package/fesm2015/bravura-ui-radio-panel-testing.mjs.map +0 -1
  208. package/fesm2015/bravura-ui-radio-panel.mjs +0 -200
  209. package/fesm2015/bravura-ui-radio-panel.mjs.map +0 -1
  210. package/fesm2015/bravura-ui-selection-panel.mjs +0 -311
  211. package/fesm2015/bravura-ui-selection-panel.mjs.map +0 -1
  212. package/fesm2015/bravura-ui-skeletons.mjs +0 -195
  213. package/fesm2015/bravura-ui-skeletons.mjs.map +0 -1
  214. package/fesm2015/bravura-ui-stepper.mjs +0 -253
  215. package/fesm2015/bravura-ui-stepper.mjs.map +0 -1
  216. package/fesm2015/bravura-ui-tooltip.mjs +0 -229
  217. package/fesm2015/bravura-ui-tooltip.mjs.map +0 -1
  218. package/fesm2015/bravura-ui.mjs.map +0 -1
  219. package/fesm2020/bravura-ui-alert-testing.mjs.map +0 -1
  220. package/fesm2020/bravura-ui-alert.mjs +0 -328
  221. package/fesm2020/bravura-ui-alert.mjs.map +0 -1
  222. package/fesm2020/bravura-ui-behavior.mjs.map +0 -1
  223. package/fesm2020/bravura-ui-clip-note.mjs.map +0 -1
  224. package/fesm2020/bravura-ui-common.mjs.map +0 -1
  225. package/fesm2020/bravura-ui-currency-input.mjs.map +0 -1
  226. package/fesm2020/bravura-ui-decimal-input.mjs.map +0 -1
  227. package/fesm2020/bravura-ui-discrete-input.mjs.map +0 -1
  228. package/fesm2020/bravura-ui-file-upload.mjs +0 -474
  229. package/fesm2020/bravura-ui-file-upload.mjs.map +0 -1
  230. package/fesm2020/bravura-ui-form-field.mjs.map +0 -1
  231. package/fesm2020/bravura-ui-icon-font.mjs.map +0 -1
  232. package/fesm2020/bravura-ui-panel.mjs +0 -206
  233. package/fesm2020/bravura-ui-panel.mjs.map +0 -1
  234. package/fesm2020/bravura-ui-phone-number.mjs.map +0 -1
  235. package/fesm2020/bravura-ui-radio-panel-testing.mjs.map +0 -1
  236. package/fesm2020/bravura-ui-radio-panel.mjs.map +0 -1
  237. package/fesm2020/bravura-ui-selection-panel.mjs +0 -306
  238. package/fesm2020/bravura-ui-selection-panel.mjs.map +0 -1
  239. package/fesm2020/bravura-ui-skeletons.mjs.map +0 -1
  240. package/fesm2020/bravura-ui-stepper.mjs +0 -251
  241. package/fesm2020/bravura-ui-stepper.mjs.map +0 -1
  242. package/fesm2020/bravura-ui-tooltip.mjs.map +0 -1
  243. package/fesm2020/bravura-ui.mjs +0 -8
  244. package/fesm2020/bravura-ui.mjs.map +0 -1
  245. /package/{esm2020 → esm2022}/alert/bravura-ui-alert.mjs +0 -0
  246. /package/{esm2020 → esm2022}/alert/testing/bravura-ui-alert-testing.mjs +0 -0
  247. /package/{esm2020 → esm2022}/behavior/bravura-ui-behavior.mjs +0 -0
  248. /package/{esm2020 → esm2022}/bravura-ui.mjs +0 -0
  249. /package/{esm2020 → esm2022}/clip-note/bravura-ui-clip-note.mjs +0 -0
  250. /package/{esm2020 → esm2022}/common/bravura-ui-common.mjs +0 -0
  251. /package/{esm2020 → esm2022}/currency-input/bravura-ui-currency-input.mjs +0 -0
  252. /package/{esm2020 → esm2022}/decimal-input/bravura-ui-decimal-input.mjs +0 -0
  253. /package/{esm2020 → esm2022}/decimal-input/public-api.mjs +0 -0
  254. /package/{esm2020 → esm2022}/discrete-input/bravura-ui-discrete-input.mjs +0 -0
  255. /package/{esm2020 → esm2022}/file-upload/bravura-ui-file-upload.mjs +0 -0
  256. /package/{esm2020 → esm2022}/form-field/bravura-ui-form-field.mjs +0 -0
  257. /package/{esm2020 → esm2022}/icon-font/bravura-ui-icon-font.mjs +0 -0
  258. /package/{esm2020 → esm2022}/panel/bravura-ui-panel.mjs +0 -0
  259. /package/{esm2020 → esm2022}/phone-number/bravura-ui-phone-number.mjs +0 -0
  260. /package/{esm2020 → esm2022}/radio-panel/bravura-ui-radio-panel.mjs +0 -0
  261. /package/{esm2020 → esm2022}/radio-panel/public-api.mjs +0 -0
  262. /package/{esm2020 → esm2022}/radio-panel/testing/bravura-ui-radio-panel-testing.mjs +0 -0
  263. /package/{esm2020 → esm2022}/selection-panel/bravura-ui-selection-panel.mjs +0 -0
  264. /package/{esm2020 → esm2022}/skeletons/bravura-ui-skeletons.mjs +0 -0
  265. /package/{esm2020 → esm2022}/stepper/bravura-ui-stepper.mjs +0 -0
  266. /package/{esm2020 → esm2022}/tooltip/bravura-ui-tooltip.mjs +0 -0
  267. /package/{fesm2015 → fesm2022}/bravura-ui.mjs +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bravura-ui-alert.mjs","sources":["../../../projects/ui/alert/alert-message.component.ts","../../../projects/ui/alert/alert-message.component.html","../../../projects/ui/alert/alert-container.component.ts","../../../projects/ui/alert/alert-container.component.html","../../../projects/ui/alert/alert.module.ts","../../../projects/ui/alert/bravura-ui-alert.ts"],"sourcesContent":["import { coerceBooleanProperty } from '@angular/cdk/coercion';\r\nimport { ChangeDetectionStrategy, Component, EventEmitter, HostBinding, Input, OnInit, Output } from '@angular/core';\r\nimport { generateID } from '@bravura/ui/common';\r\n\r\n/** @ignore */\r\nconst ICONS: any = {\r\n\tsuccess: 'check_circle',\r\n\tinfo: 'info',\r\n\twarn: 'report_problem',\r\n\terror: 'cancel'\r\n};\r\n\r\n/** @ignore */\r\nconst DEFAULT_POLITENESS = {\r\n\tsuccess: 'polite',\r\n\tinfo: 'polite',\r\n\twarn: 'assertive',\r\n\terror: 'assertive'\r\n};\r\n\r\n/**\r\n * An alert style message usually appears in a global notification area.\r\n *\r\n * The base color of the message is determined by the `type` of the message and a list of predefined\r\n * CSS custom properties.\r\n *\r\n * ```scss\r\n * --bui-color-success: #519602;\r\n * --bui-color-info: #0dcaf0;\r\n * --bui-color-warning: #ffc107;\r\n * --bui-color-error: #dc3545;\r\n * ```\r\n *\r\n *\r\n */\r\n@Component({\r\n\tselector: 'bui-alert',\r\n\ttemplateUrl: './alert-message.component.html',\r\n\tstyleUrls: ['./alert-message.component.scss'],\r\n\thost: {\r\n\t\t'[class]': `'bui-alert bui-host bui-alert-' + (type === 'warn' ? 'warning' : type) + (dismissible ? ' bui-alert-dismissible' : '')`,\r\n\t\t'[role]': `politeness === 'off' ? 'region' : 'alert'`,\r\n\t\t'[attr.aria-live]': `politeness === 'assertive' ? undefined : politeness`\r\n\t},\r\n\tchangeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class AlertMessageComponent implements OnInit {\r\n\t/** @ignore */\r\n\tstatic ngAcceptInputType_dismissible: boolean | string | null | undefined;\r\n\t/** @ignore */\r\n\tstatic ngAcceptInputType_blink: boolean | string | null | undefined;\r\n\r\n\t/** The type of the message, used to derive the icon and base color. */\r\n\t@Input()\r\n\ttype: 'success' | 'info' | 'warn' | 'error' = 'error';\r\n\r\n\t/** The message to be displayed, HTML supported. */\r\n\t@Input()\r\n\tmessage = '';\r\n\r\n\t/** Specifies the ARIA live region politeness. */\r\n\t@Input()\r\n\tpoliteness!: 'off' | 'polite' | 'assertive';\r\n\r\n\t/** Whether to display the button to fire the `dismissed` event. */\r\n\t@Input()\r\n\tget dismissible() {\r\n\t\treturn this._dismissible;\r\n\t}\r\n\tset dismissible(value: any) {\r\n\t\tthis._dismissible = coerceBooleanProperty(value);\r\n\t}\r\n\r\n\t/** To be emitted when the user choose to dismiss the message. The event object is the ID of the element. */\r\n\t@Output()\r\n\tdismissed = new EventEmitter<string>();\r\n\r\n\t/** To be emitted when the component finishes initialisation. The event object is the ID of the element. */\r\n\t@Output()\r\n\tinitialised = new EventEmitter<string>();\r\n\r\n\t@Input('id')\r\n\t@HostBinding('id')\r\n\t/** @ignore */\r\n\t_id = `bui-alert-${generateID()}`;\r\n\r\n\tprivate _dismissible = false;\r\n\r\n\tconstructor() {}\r\n\r\n\tngOnInit(): void {\r\n\t\tthis.politeness = this.politeness || DEFAULT_POLITENESS[this.type];\r\n\t\tthis.initialised.emit(this._id);\r\n\t}\r\n\r\n\t/** @ignore */\r\n\tget iconName(): string {\r\n\t\treturn ICONS[this.type];\r\n\t}\r\n\r\n\t/** @ignore */\r\n\t_dismiss() {\r\n\t\tthis.dismissed.emit(this._id);\r\n\t}\r\n}\r\n","<div class=\"bui-alert-backdrop\"></div>\r\n<div class=\"bui-alert-frame\"></div>\r\n\r\n<div class=\"bui-alert-wrapper\">\r\n\t<div class=\"bui-alert-icon-area\">\r\n\t\t<mat-icon [buiIcon]=\"iconName\" variant=\"outlined\"></mat-icon>\r\n\t</div>\r\n\t<div class=\"bui-alert-content\">\r\n\t\t<div [innerHTML]=\"message\" *ngIf=\"message\"></div>\r\n\t\t<ng-content></ng-content>\r\n\t</div>\r\n</div>\r\n\r\n<div class=\"bui-alert-button-area\" *ngIf=\"dismissible\">\r\n\t<div class=\"bui-alert-button-backdrop\"></div>\r\n\t<button mat-icon-button class=\"bui-alert-button\" (click)=\"_dismiss()\" aria-label=\"dismiss alert\">\r\n\t\t<mat-icon>cancel</mat-icon>\r\n\t</button>\r\n</div>\r\n","import { animate, state, style, transition, trigger, AnimationEvent } from '@angular/animations';\r\nimport { ScrollDispatcher } from '@angular/cdk/scrolling';\r\nimport {\r\n\tChangeDetectionStrategy,\r\n\tChangeDetectorRef,\r\n\tComponent,\r\n\tElementRef,\r\n\tEventEmitter,\r\n\tInput,\r\n\tNgZone,\r\n\tOnDestroy,\r\n\tOnInit,\r\n\tOutput\r\n} from '@angular/core';\r\nimport { generateID, isElementInViewport } from '@bravura/ui/common';\r\nimport { Subject, Subscription, timer } from 'rxjs';\r\nimport { delay, take, takeUntil, tap } from 'rxjs/operators';\r\n\r\n/**@internal */\r\nclass InternalAlertOject {\r\n\tid: string;\r\n\tdeleted = false;\r\n\tconstructor(public readonly type: 'success' | 'info' | 'warn' | 'error', public readonly message: string) {\r\n\t\tthis.id = `bui-alert-cont-alert-${generateID()}`;\r\n\t}\r\n}\r\n\r\n/**\r\n * Use this component in a designated area of a page for displaying notification messages\r\n *\r\n */\r\n@Component({\r\n\tselector: 'bui-alert-container',\r\n\ttemplateUrl: './alert-container.component.html',\r\n\tstyleUrls: ['./alert-container.component.scss'],\r\n\thost: {\r\n\t\t'[class]': `'bui-alert-container bui-host bui-alert-container-' + (_remaining.length ? 'not-empty': 'empty')`\r\n\t},\r\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\r\n\tanimations: [\r\n\t\ttrigger('floatTransition', [\r\n\t\t\ttransition(':enter', [style({ opacity: '0', transform: 'translateY(-10vh)' }), animate('.3s ease-in')]),\r\n\t\t\ttransition(':leave', [animate('.4s ease-out', style({ transform: 'translateY(-10vh)', opacity: '0' }))])\r\n\t\t]),\r\n\t\ttrigger('alertTransition', [\r\n\t\t\tstate('visible', style({})),\r\n\t\t\tstate(\r\n\t\t\t\t'hidden',\r\n\t\t\t\tstyle({\r\n\t\t\t\t\theight: 0,\r\n\t\t\t\t\toverflow: 'hidden',\r\n\t\t\t\t\ttransform: 'scaleY(0)',\r\n\t\t\t\t\topacity: 0,\r\n\t\t\t\t\t'margin-top': '-1rem'\r\n\t\t\t\t})\r\n\t\t\t),\r\n\t\t\ttransition('void => visible', [\r\n\t\t\t\tstyle({ transform: 'translateY(100%)', height: 0, opacity: '0', overflow: 'hidden' }),\r\n\t\t\t\tanimate('250ms cubic-bezier(0.42, 0.0, 0.58, 1.0)')\r\n\t\t\t]),\r\n\t\t\ttransition('visible => hidden', [animate('250ms cubic-bezier(0.25, 0, 0.3, 1.0)')])\r\n\t\t])\r\n\t]\r\n})\r\nexport class AlertContainerComponent implements OnInit, OnDestroy {\r\n\t/** The maximum number of messages displayed in the container area. */\r\n\t@Input()\r\n\tmax = 5;\r\n\r\n\t/**\r\n\t * This property determines the behavior for displaying the notifications when the container is outside the viewport.\r\n\t *\r\n\t * `scroll`: The component will try to scroll to reveal the new notifications.\r\n\t * `float`: The component will float the alert panel to the center of the screen for a couple of seconds and move it back to the original position.\r\n\t */\r\n\t@Input()\r\n\toutsideViewportBehavior: 'scroll' | 'float' = 'float';\r\n\r\n\t/**\r\n\t * The number of milliseconds for which the alert container will be floated when new notification arrives.\r\n\t *\r\n\t * This will only take effect when `outsideViewportBehavior` is set to `float` and the container is outside the viewport.\r\n\t */\r\n\t@Input()\r\n\tfloatDuration = 2000;\r\n\r\n\t/**@internal */\r\n\t_alerts: InternalAlertOject[] = [];\r\n\t/**@internal */\r\n\t_floated = false;\r\n\t/**@internal */\r\n\t_floatPanelHidden = true;\r\n\r\n\t/** @ignore Emits whenever the animation is started. */\r\n\treadonly _animationStarted = new Subject<AnimationEvent>();\r\n\t/** @ignore Emits whenever the animation is done. */\r\n\treadonly _animationEnded = new Subject<AnimationEvent>();\r\n\r\n\tprivate _destroyed$ = new Subject<void>();\r\n\tprivate _endFloatingSub?: Subscription;\r\n\r\n\t/** Emits the component instance after initialisation. */\r\n\t@Output()\r\n\tprivate init = new EventEmitter<AlertContainerComponent>();\r\n\r\n\tconstructor(\r\n\t\tprivate zone: NgZone,\r\n\t\tprivate cdRef: ChangeDetectorRef,\r\n\t\tprivate _elementRef: ElementRef<HTMLElement>,\r\n\t\tprivate scroll: ScrollDispatcher\r\n\t) {}\r\n\r\n\tngOnInit(): void {\r\n\t\tconst checkScroll = () => {\r\n\t\t\tif (isElementInViewport(this._elementRef.nativeElement)) {\r\n\t\t\t\tthis._endFloating();\r\n\t\t\t}\r\n\t\t};\r\n\t\tthis.scroll\r\n\t\t\t.ancestorScrolled(this._elementRef.nativeElement)\r\n\t\t\t.pipe(takeUntil(this._destroyed$))\r\n\t\t\t.subscribe(checkScroll);\r\n\t\tcheckScroll();\r\n\t\tthis.init.emit(this);\r\n\t\tthis.init.complete();\r\n\t}\r\n\r\n\tngOnDestroy(): void {\r\n\t\tthis._destroyed$.next();\r\n\t\tthis._destroyed$.complete();\r\n\t\tthis._endFloatingSub?.unsubscribe();\r\n\t}\r\n\r\n\t/**@internal */\r\n\tget _remaining() {\r\n\t\treturn this._alerts.filter(a => !a.deleted);\r\n\t}\r\n\r\n\t/**@internal */\r\n\tget _width() {\r\n\t\treturn this._elementRef.nativeElement.clientWidth;\r\n\t}\r\n\r\n\t/** Add a message to the notification area */\r\n\tasync notify(type: 'success' | 'info' | 'warn' | 'error', message: string) {\r\n\t\tthis._endFloatingSub?.unsubscribe();\r\n\t\tconst duplicate = this._remaining.find(_a => message === _a.message);\r\n\t\tif (duplicate) {\r\n\t\t\tthis._dismiss(duplicate);\r\n\t\t}\r\n\r\n\t\tconst remaining = this._remaining;\r\n\t\tif (remaining.length >= this.max) {\r\n\t\t\tthis._dismiss(remaining[0]);\r\n\t\t}\r\n\r\n\t\tconst a = new InternalAlertOject(type, message);\r\n\t\tawait this._checkViewport();\r\n\t\tthis.zone.run(() => {\r\n\t\t\tthis._alerts.push(a);\r\n\t\t\tthis.cdRef.markForCheck();\r\n\t\t});\r\n\t}\r\n\r\n\t/**@ignore */\r\n\tasync _checkViewport() {\r\n\t\tif (!isElementInViewport(this._elementRef.nativeElement)) {\r\n\t\t\tif (this.outsideViewportBehavior === 'float') {\r\n\t\t\t\tconst d = this._floated ? 0 : 100;\r\n\t\t\t\tthis._floated = true;\r\n\t\t\t\tthis._floatPanelHidden = false;\r\n\t\t\t\tthis._endFloating(this.floatDuration);\r\n\t\t\t\tthis.cdRef.markForCheck();\r\n\t\t\t\tawait timer(d).toPromise();\r\n\t\t\t} else {\r\n\t\t\t\tthis._elementRef.nativeElement.scrollIntoView({ block: 'start', behavior: 'smooth' });\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\t/**@ignore */\r\n\tasync _dismiss(a: InternalAlertOject) {\r\n\t\tconst id = a.id;\r\n\t\ta.deleted = true;\r\n\t\tthis.cdRef.markForCheck();\r\n\t\tawait this._animationEnded.pipe(take(1)).toPromise();\r\n\t\tthis.zone.run(() => {\r\n\t\t\tthis._alerts = this._alerts.filter(_a => _a.id !== id);\r\n\t\t\tthis.cdRef.markForCheck();\r\n\t\t});\r\n\t}\r\n\r\n\t/** Remove all messages currently displayed. */\r\n\tasync clear() {\r\n\t\tawait Promise.all(this._remaining.map(a => this._dismiss(a)));\r\n\t\tthis._endFloating();\r\n\t}\r\n\r\n\tprivate _endFloating(_delay = 0) {\r\n\t\tif (!this._floated) {\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tthis._endFloatingSub?.unsubscribe();\r\n\t\tthis._endFloatingSub = timer(_delay)\r\n\t\t\t.pipe(\r\n\t\t\t\ttap(() => {\r\n\t\t\t\t\tthis._floated = false;\r\n\t\t\t\t\tthis.zone.run(() => this.cdRef.markForCheck());\r\n\t\t\t\t}),\r\n\t\t\t\tdelay(400)\r\n\t\t\t)\r\n\t\t\t.subscribe(() => {\r\n\t\t\t\tthis._floatPanelHidden = true;\r\n\t\t\t\tthis.zone.run(() => this.cdRef.markForCheck());\r\n\t\t\t});\r\n\t}\r\n}\r\n","<div\r\n\tclass=\"bui-alert-fixed-panel\"\r\n\t[style.opacity]=\"_floatPanelHidden ? 1 : 0\"\r\n\t[class.bui-alert-fixed-panel-blink]=\"outsideViewportBehavior === 'scroll'\"\r\n>\r\n\t<bui-alert\r\n\t\t*ngFor=\"let a of _alerts\"\r\n\t\t[id]=\"a.id\"\r\n\t\t[type]=\"a.type\"\r\n\t\t[message]=\"a.message\"\r\n\t\tdismissible\r\n\t\t[@alertTransition]=\"a.deleted ? 'hidden' : 'visible'\"\r\n\t\t(@alertTransition.start)=\"_animationStarted.next($event)\"\r\n\t\t(@alertTransition.done)=\"_animationEnded.next($event)\"\r\n\t\t(dismissed)=\"_dismiss(a)\"\r\n\t></bui-alert>\r\n</div>\r\n\r\n<div class=\"bui-alert-float-panel-frame\" [hidden]=\"_floatPanelHidden\" [class.bui-alert-float-panel-shaded]=\"_floated\">\r\n\t<div class=\"bui-alert-float-panel\" [style.max-width]=\"_width + 'px'\" [@floatTransition]=\"'visible'\" *ngIf=\"_floated\">\r\n\t\t<bui-alert\r\n\t\t\t*ngFor=\"let a of _alerts\"\r\n\t\t\t[id]=\"a.id\"\r\n\t\t\t[type]=\"a.type\"\r\n\t\t\t[message]=\"a.message\"\r\n\t\t\t[@alertTransition]=\"a.deleted ? 'hidden' : 'visible'\"\r\n\t\t></bui-alert>\r\n\t</div>\r\n</div>\r\n","import { CommonModule } from '@angular/common';\r\nimport { NgModule } from '@angular/core';\r\nimport { MatButtonModule } from '@angular/material/button';\r\nimport { IconFontModule } from '@bravura/ui/icon-font';\r\nimport { AlertContainerComponent } from './alert-container.component';\r\nimport { AlertMessageComponent } from './alert-message.component';\r\n\r\n@NgModule({\r\n\tdeclarations: [AlertMessageComponent, AlertContainerComponent],\r\n\timports: [CommonModule, IconFontModule, MatButtonModule],\r\n\texports: [AlertMessageComponent, AlertContainerComponent]\r\n})\r\nexport class AlertModule {}\r\n\r\nexport { AlertMessageComponent, AlertContainerComponent };\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1","i2","i3.AlertMessageComponent"],"mappings":"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"}
@@ -28,15 +28,15 @@ class SizingMonitorDirective {
28
28
  constructor(element) {
29
29
  this.element = element;
30
30
  }
31
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: SizingMonitorDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
32
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.12", type: SizingMonitorDirective, selector: "[buiSizingMonitor]", ngImport: i0 }); }
31
33
  }
32
- SizingMonitorDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.6", ngImport: i0, type: SizingMonitorDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
33
- SizingMonitorDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.6", type: SizingMonitorDirective, selector: "[buiSizingMonitor]", ngImport: i0 });
34
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.6", ngImport: i0, type: SizingMonitorDirective, decorators: [{
34
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: SizingMonitorDirective, decorators: [{
35
35
  type: Directive,
36
36
  args: [{
37
37
  selector: '[buiSizingMonitor]'
38
38
  }]
39
- }], ctorParameters: function () { return [{ type: i0.ElementRef }]; } });
39
+ }], ctorParameters: () => [{ type: i0.ElementRef }] });
40
40
 
41
41
  /**
42
42
  * This directive monitors the changes in the width of the `sizingBy` target, and apply specified style
@@ -60,6 +60,25 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.6", ngImpor
60
60
  * ```
61
61
  */
62
62
  class SizingDirective {
63
+ /**
64
+ * @ignore
65
+ */
66
+ static { this.defaultSizingBreakpoints = ['400', '800', '~']; }
67
+ /**
68
+ * Designate an element to be monitored for recalculating the style classes of the current element.
69
+ *
70
+ * - `root` specifies the document root or the enclosing shadow host. This is the default value.
71
+ * - `parent` specifies the parent element.
72
+ *
73
+ * @default 'root'
74
+ * @alias sizingBy
75
+ */
76
+ get buiSizingBy() {
77
+ return this.sizingBy;
78
+ }
79
+ set buiSizingBy(target) {
80
+ this.sizingBy = target;
81
+ }
63
82
  constructor(_doc, _defaultTarget, elemRef, _zone) {
64
83
  this._doc = _doc;
65
84
  this._defaultTarget = _defaultTarget;
@@ -99,21 +118,6 @@ class SizingDirective {
99
118
  this._element = elemRef.nativeElement;
100
119
  this._monitorTarget = this._element;
101
120
  }
102
- /**
103
- * Designate an element to be monitored for recalculating the style classes of the current element.
104
- *
105
- * - `root` specifies the document root or the enclosing shadow host. This is the default value.
106
- * - `parent` specifies the parent element.
107
- *
108
- * @default 'root'
109
- * @alias sizingBy
110
- */
111
- get buiSizingBy() {
112
- return this.sizingBy;
113
- }
114
- set buiSizingBy(target) {
115
- this.sizingBy = target;
116
- }
117
121
  ngOnChanges(_) {
118
122
  const disconnected = this._element.getRootNode() instanceof HTMLElement;
119
123
  if (disconnected) {
@@ -259,24 +263,20 @@ class SizingDirective {
259
263
  _toNumber(s) {
260
264
  return (s === '~' ? Infinity : Number(s)) || -Infinity;
261
265
  }
266
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: SizingDirective, deps: [{ token: DOCUMENT }, { token: SizingMonitorDirective, optional: true }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Directive }); }
267
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.12", type: SizingDirective, selector: "[buiSizing],[buiResized],[buiSizingBy],[buiFixedHeight]", inputs: { buiSizing: "buiSizing", sizingBy: "sizingBy", buiSizingBy: "buiSizingBy", buiFixedHeight: "buiFixedHeight" }, outputs: { buiResized: "buiResized" }, usesOnChanges: true, ngImport: i0 }); }
262
268
  }
263
- /**
264
- * @ignore
265
- */
266
- SizingDirective.defaultSizingBreakpoints = ['400', '800', '~'];
267
- SizingDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.6", ngImport: i0, type: SizingDirective, deps: [{ token: DOCUMENT }, { token: SizingMonitorDirective, optional: true }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Directive });
268
- SizingDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.6", type: SizingDirective, selector: "[buiSizing],[buiResized],[buiSizingBy],[buiFixedHeight]", inputs: { buiSizing: "buiSizing", sizingBy: "sizingBy", buiSizingBy: "buiSizingBy", buiFixedHeight: "buiFixedHeight" }, outputs: { buiResized: "buiResized" }, usesOnChanges: true, ngImport: i0 });
269
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.6", ngImport: i0, type: SizingDirective, decorators: [{
269
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: SizingDirective, decorators: [{
270
270
  type: Directive,
271
271
  args: [{
272
272
  selector: '[buiSizing],[buiResized],[buiSizingBy],[buiFixedHeight]'
273
273
  }]
274
- }], ctorParameters: function () { return [{ type: Document, decorators: [{
274
+ }], ctorParameters: () => [{ type: Document, decorators: [{
275
275
  type: Inject,
276
276
  args: [DOCUMENT]
277
277
  }] }, { type: SizingMonitorDirective, decorators: [{
278
278
  type: Optional
279
- }] }, { type: i0.ElementRef }, { type: i0.NgZone }]; }, propDecorators: { buiSizing: [{
279
+ }] }, { type: i0.ElementRef }, { type: i0.NgZone }], propDecorators: { buiSizing: [{
280
280
  type: Input
281
281
  }], sizingBy: [{
282
282
  type: Input
@@ -383,15 +383,15 @@ class AwaitDirective {
383
383
  }
384
384
  }
385
385
  }
386
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: AwaitDirective, deps: [{ token: i0.ElementRef }, { token: i1.MatButton, optional: true }, { token: i1.MatIconButton, optional: true }, { token: i1.MatIconAnchor, optional: true }, { token: i1.MatFabButton, optional: true }, { token: i1.MatFabAnchor, optional: true }, { token: i1.MatMiniFabButton, optional: true }, { token: i1.MatMiniFabAnchor, optional: true }, { token: DOCUMENT }, { token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Directive }); }
387
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.12", type: AwaitDirective, selector: "[buiAwait]", inputs: { buiAwait: "buiAwait", buiAwaitAriaLabel: "buiAwaitAriaLabel", buiAwaitDiameter: "buiAwaitDiameter" }, ngImport: i0 }); }
386
388
  }
387
- AwaitDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.6", ngImport: i0, type: AwaitDirective, deps: [{ token: i0.ElementRef }, { token: i1.MatButton, optional: true }, { token: i1.MatIconButton, optional: true }, { token: i1.MatIconAnchor, optional: true }, { token: i1.MatFabButton, optional: true }, { token: i1.MatFabAnchor, optional: true }, { token: i1.MatMiniFabButton, optional: true }, { token: i1.MatMiniFabAnchor, optional: true }, { token: DOCUMENT }, { token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Directive });
388
- AwaitDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.6", type: AwaitDirective, selector: "[buiAwait]", inputs: { buiAwait: "buiAwait", buiAwaitAriaLabel: "buiAwaitAriaLabel", buiAwaitDiameter: "buiAwaitDiameter" }, ngImport: i0 });
389
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.6", ngImport: i0, type: AwaitDirective, decorators: [{
389
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: AwaitDirective, decorators: [{
390
390
  type: Directive,
391
391
  args: [{
392
392
  selector: '[buiAwait]'
393
393
  }]
394
- }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i1.MatButton, decorators: [{
394
+ }], ctorParameters: () => [{ type: i0.ElementRef }, { type: i1.MatButton, decorators: [{
395
395
  type: Optional
396
396
  }] }, { type: i1.MatIconButton, decorators: [{
397
397
  type: Optional
@@ -408,7 +408,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.6", ngImpor
408
408
  }] }, { type: Document, decorators: [{
409
409
  type: Inject,
410
410
  args: [DOCUMENT]
411
- }] }, { type: i0.ViewContainerRef }]; }, propDecorators: { buiAwait: [{
411
+ }] }, { type: i0.ViewContainerRef }], propDecorators: { buiAwait: [{
412
412
  type: Input
413
413
  }], buiAwaitAriaLabel: [{
414
414
  type: Input
@@ -454,15 +454,15 @@ class ObserveContentClassDirective {
454
454
  this.classToRemove.push(...classes);
455
455
  }
456
456
  }
457
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ObserveContentClassDirective, deps: [{ token: i1$1.ContentObserver }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
458
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.12", type: ObserveContentClassDirective, selector: "[bui-class.empty],[bui-class.not-empty],[bui-class.no-text],[bui-class.has-text]", inputs: { classEmpty: ["bui-class.empty", "classEmpty"], classNotEmpty: ["bui-class.not-empty", "classNotEmpty"], classNoText: ["bui-class.no-text", "classNoText"], classHasText: ["bui-class.has-text", "classHasText"] }, ngImport: i0 }); }
457
459
  }
458
- ObserveContentClassDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.6", ngImport: i0, type: ObserveContentClassDirective, deps: [{ token: i1$1.ContentObserver }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
459
- ObserveContentClassDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.6", type: ObserveContentClassDirective, selector: "[bui-class.empty],[bui-class.not-empty],[bui-class.no-text],[bui-class.has-text]", inputs: { classEmpty: ["bui-class.empty", "classEmpty"], classNotEmpty: ["bui-class.not-empty", "classNotEmpty"], classNoText: ["bui-class.no-text", "classNoText"], classHasText: ["bui-class.has-text", "classHasText"] }, ngImport: i0 });
460
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.6", ngImport: i0, type: ObserveContentClassDirective, decorators: [{
460
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ObserveContentClassDirective, decorators: [{
461
461
  type: Directive,
462
462
  args: [{
463
463
  selector: '[bui-class.empty],[bui-class.not-empty],[bui-class.no-text],[bui-class.has-text]'
464
464
  }]
465
- }], ctorParameters: function () { return [{ type: i1$1.ContentObserver }, { type: i0.ElementRef }]; }, propDecorators: { classEmpty: [{
465
+ }], ctorParameters: () => [{ type: i1$1.ContentObserver }, { type: i0.ElementRef }], propDecorators: { classEmpty: [{
466
466
  type: Input,
467
467
  args: ['bui-class.empty']
468
468
  }], classNotEmpty: [{
@@ -480,15 +480,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.6", ngImpor
480
480
  * For functionality that cannot be easily achieved via CSS.
481
481
  */
482
482
  class BehaviorModule {
483
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: BehaviorModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
484
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.12", ngImport: i0, type: BehaviorModule, declarations: [SizingDirective, SizingMonitorDirective, AwaitDirective, ObserveContentClassDirective], imports: [CommonModule, MatButtonModule, MatProgressSpinnerModule, ObserversModule], exports: [SizingDirective,
485
+ SizingMonitorDirective,
486
+ AwaitDirective,
487
+ MatProgressSpinnerModule,
488
+ ObserveContentClassDirective] }); }
489
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: BehaviorModule, imports: [CommonModule, MatButtonModule, MatProgressSpinnerModule, ObserversModule, MatProgressSpinnerModule] }); }
483
490
  }
484
- BehaviorModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.6", ngImport: i0, type: BehaviorModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
485
- BehaviorModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.6", ngImport: i0, type: BehaviorModule, declarations: [SizingDirective, SizingMonitorDirective, AwaitDirective, ObserveContentClassDirective], imports: [CommonModule, MatButtonModule, MatProgressSpinnerModule, ObserversModule], exports: [SizingDirective,
486
- SizingMonitorDirective,
487
- AwaitDirective,
488
- MatProgressSpinnerModule,
489
- ObserveContentClassDirective] });
490
- BehaviorModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.6", ngImport: i0, type: BehaviorModule, imports: [CommonModule, MatButtonModule, MatProgressSpinnerModule, ObserversModule, MatProgressSpinnerModule] });
491
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.6", ngImport: i0, type: BehaviorModule, decorators: [{
491
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: BehaviorModule, decorators: [{
492
492
  type: NgModule,
493
493
  args: [{
494
494
  declarations: [SizingDirective, SizingMonitorDirective, AwaitDirective, ObserveContentClassDirective],
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bravura-ui-behavior.mjs","sources":["../../../projects/ui/behavior/sizing-monitor.directive.ts","../../../projects/ui/behavior/sizing.directive.ts","../../../projects/ui/behavior/await.directive.ts","../../../projects/ui/behavior/observe-content-class.directive.ts","../../../projects/ui/behavior/behavior.module.ts","../../../projects/ui/behavior/bravura-ui-behavior.ts"],"sourcesContent":["import { Directive, ElementRef } from '@angular/core';\r\n\r\n/**\r\n * Use this directive to designate a target HTML element, based on which the child elements'\r\n * `[buiSizing]` directives will calculate the sizes.\r\n *\r\n * ```html\r\n * <div [buiSizingMonitor]>\r\n * <div [buiSizing]=\"...\">\r\n * </div>\r\n * <div>\r\n * <div [buiSizing]=\"...\">\r\n * </div>\r\n * </div>\r\n * <div>\r\n * ```\r\n */\r\n@Directive({\r\n\tselector: '[buiSizingMonitor]'\r\n})\r\nexport class SizingMonitorDirective {\r\n\tconstructor(public readonly element: ElementRef<HTMLElement>) {}\r\n}\r\n","import { coerceBooleanProperty } from '@angular/cdk/coercion';\r\nimport { DOCUMENT } from '@angular/common';\r\nimport {\r\n\tDirective,\r\n\tElementRef,\r\n\tEventEmitter,\r\n\tInject,\r\n\tInput,\r\n\tNgZone,\r\n\tOnChanges,\r\n\tOnDestroy,\r\n\tOptional,\r\n\tOutput,\r\n\tSimpleChanges\r\n} from '@angular/core';\r\nimport { debounceTime, take } from 'rxjs/operators';\r\nimport { SizingMonitorDirective } from './sizing-monitor.directive';\r\n\r\n/**\r\n * This directive monitors the changes in the width of the `sizingBy` target, and apply specified style\r\n * classes and/or inline styles to the current element dynamically.\r\n *\r\n * In order for the layout engine to efficiently calculate and stabilize the dimensions, the effective style property\r\n * `box-sizing` of the `sizingBy` target element must be set to `border-box`.\r\n *\r\n * The directive uses [ResizeObserver API](https://developer.mozilla.org/en-US/docs/Web/API/Resize_Observer_API)\r\n * to capture the events of element resizing. Please use a polyfill if you want to support older browsers\r\n * that do not implement ResizeObserver API.\r\n *\r\n * Examples:\r\n *\r\n * ```html\r\n * <div #parentElement>\r\n * <div [buiSizing]=\"{'400': 'small', '800': 'medium', '~': 'large'}\" [buiSizingBy]=\"parentElement\"></div>\r\n * <div [buiSizing]=\"['small', 'medium', 'large']\" [buiSizingBy]=\"'root'\"></div>\r\n * <div [buiSizing]=\"{'650': 'border-color: #28569', '~': 'bg-muted; border-style: dotted'}\" [buiSizingBy]=\"parentElement\"></div>\r\n * </div>\r\n * ```\r\n */\r\n@Directive({\r\n\tselector: '[buiSizing],[buiResized],[buiSizingBy],[buiFixedHeight]'\r\n})\r\nexport class SizingDirective implements OnChanges, OnDestroy {\r\n\t/**\r\n\t * @ignore\r\n\t */\r\n\tstatic defaultSizingBreakpoints = ['400', '800', '~'];\r\n\r\n\t/**\r\n\t * Specifies the breakpoint widths and the style classes.\r\n\t *\r\n\t * The sizing spec `{\"400\": \"small\", \"800\": \"medium\", \"~\": \"large\"}` tells the directive to apply\r\n\t * a style class `small` when the width of the monitored target is smaller than 400 pixels,\r\n\t * `medium` when the width is between 400 and 800 pixels, and `large` when above.\r\n\t *\r\n\t * @example {'400': 'small', '800': 'medium', '~': 'large'}\r\n\t */\r\n\t@Input()\r\n\tbuiSizing: string | Array<string> | { [key: string]: string } = {};\r\n\r\n\t/**\r\n\t * The alias of `buiSizingBy`.\r\n\t * @default 'root'\r\n\t * @deprecated\r\n\t * @ignore\r\n\t */\r\n\t@Input()\r\n\tsizingBy: 'root' | 'parent' | HTMLElement = 'root';\r\n\r\n\t/**\r\n\t * Designate an element to be monitored for recalculating the style classes of the current element.\r\n\t *\r\n\t * - `root` specifies the document root or the enclosing shadow host. This is the default value.\r\n\t * - `parent` specifies the parent element.\r\n\t *\r\n\t * @default 'root'\r\n\t * @alias sizingBy\r\n\t */\r\n\t@Input()\r\n\tget buiSizingBy(): 'root' | 'parent' | HTMLElement {\r\n\t\treturn this.sizingBy;\r\n\t}\r\n\tset buiSizingBy(target: 'root' | 'parent' | HTMLElement) {\r\n\t\tthis.sizingBy = target;\r\n\t}\r\n\r\n\t/**\r\n\t * Emits `{width, height}` when the monitor target element resizes.\r\n\t *\r\n\t * Note that the dimensions emitted are of the [sizingBy] target, but not the current element.\r\n\t */\r\n\t@Output()\r\n\tbuiResized = new EventEmitter<{ width: number; height: number }>();\r\n\r\n\t/**\r\n\t * Recalculate the height of this element according to the height of the monitored target.\r\n\t */\r\n\t@Input()\r\n\tbuiFixedHeight = false;\r\n\r\n\tprivate _monitorTarget: HTMLElement;\r\n\tprivate _observer: ResizeObserver | undefined;\r\n\tprivate _sizingSpec: { [key: string]: string } = {};\r\n\tprivate _width = 0;\r\n\tprivate _height = 0;\r\n\tprivate _reflowFrameCount = 0;\r\n\tprivate _element: HTMLElement;\r\n\tprivate _frameHandlerId = 0;\r\n\r\n\tconstructor(\r\n\t\t@Inject(DOCUMENT) private _doc: Document,\r\n\t\t@Optional() private _defaultTarget: SizingMonitorDirective,\r\n\t\telemRef: ElementRef<HTMLElement>,\r\n\t\tprivate _zone: NgZone\r\n\t) {\r\n\t\tthis._element = elemRef.nativeElement;\r\n\t\tthis._monitorTarget = this._element;\r\n\t}\r\n\r\n\tngOnChanges(_: SimpleChanges): void {\r\n\t\tconst disconnected = this._element.getRootNode() instanceof HTMLElement;\r\n\t\tif (disconnected) {\r\n\t\t\t// defer shadow detection till dom connection event\r\n\t\t\tthis._zone.onStable.pipe(debounceTime(10), take(1)).subscribe(() => this._initOrReset());\r\n\t\t} else {\r\n\t\t\tthis._initOrReset();\r\n\t\t}\r\n\t}\r\n\r\n\tngOnDestroy(): void {\r\n\t\tthis._tearDownNodeMonitor();\r\n\t}\r\n\r\n\tprivate _initOrReset() {\r\n\t\tconst originalTarget = this._monitorTarget;\r\n\t\tif (this.buiSizingBy instanceof HTMLElement) {\r\n\t\t\tthis._monitorTarget = this.buiSizingBy;\r\n\t\t} else if (this._defaultTarget) {\r\n\t\t\tthis._monitorTarget = this._defaultTarget.element.nativeElement;\r\n\t\t} else if (this.buiSizingBy === 'root') {\r\n\t\t\tconst root = this._element.getRootNode();\r\n\t\t\tif (root instanceof ShadowRoot) {\r\n\t\t\t\tthis._monitorTarget = root.host as HTMLElement;\r\n\t\t\t} else {\r\n\t\t\t\tthis._monitorTarget = this._doc.documentElement;\r\n\t\t\t}\r\n\t\t} else {\r\n\t\t\tthis._monitorTarget = this._element.parentElement as any;\r\n\t\t}\r\n\r\n\t\tif (this._monitorTarget != originalTarget) {\r\n\t\t\tthis._setUpNodeMonitor();\r\n\t\t}\r\n\r\n\t\tthis._sizingSpec = {};\r\n\t\tlet spec = this.buiSizing;\r\n\t\tif (typeof spec === 'string') {\r\n\t\t\tspec = spec.split(',').map(k => k.trim());\r\n\t\t}\r\n\r\n\t\tif (Array.isArray(spec)) {\r\n\t\t\tspec.forEach((c, i) => {\r\n\t\t\t\tthis._sizingSpec[SizingDirective.defaultSizingBreakpoints[i] || '~'] = c;\r\n\t\t\t});\r\n\t\t} else if (spec) {\r\n\t\t\tthis._sizingSpec = spec;\r\n\t\t}\r\n\r\n\t\tthis.buiFixedHeight = coerceBooleanProperty(this.buiFixedHeight);\r\n\r\n\t\tthis._calculateSize();\r\n\t}\r\n\r\n\tprivate _setUpNodeMonitor() {\r\n\t\tthis._tearDownNodeMonitor();\r\n\t\tif (this._monitorTarget) {\r\n\t\t\tthis._observer = new ResizeObserver(() => this._runWithObserver(this._calculateSize.bind(this)));\r\n\r\n\t\t\tthis._observer.observe(this._monitorTarget, { box: 'border-box' });\r\n\t\t}\r\n\t}\r\n\r\n\tprivate _tearDownNodeMonitor() {\r\n\t\tcancelAnimationFrame(this._frameHandlerId);\r\n\t\tthis._runWithObserver(() => {\r\n\t\t\tthis._observer!.disconnect();\r\n\t\t\tthis._observer = undefined;\r\n\t\t});\r\n\t}\r\n\r\n\tprivate _runWithObserver<T>(func: () => T): T | undefined {\r\n\t\tif (this._observer) {\r\n\t\t\treturn func();\r\n\t\t}\r\n\t\treturn undefined;\r\n\t}\r\n\r\n\tprivate _calculateSize() {\r\n\t\tconst widthChanged = this._width !== this._monitorTarget.clientWidth;\r\n\t\tconst heightChanged = this._height !== this._monitorTarget.clientHeight;\r\n\t\tif (widthChanged) {\r\n\t\t\tthis._width = this._monitorTarget.clientWidth;\r\n\r\n\t\t\tconst bks = Object.keys(this._sizingSpec).sort((a, b) => this._toNumber(a) - this._toNumber(b));\r\n\t\t\tlet found = false;\r\n\t\t\tfor (const key of bks) {\r\n\t\t\t\tconst classesOrStyles = this._sizingSpec[key].split(/;+/).filter(c => c);\r\n\t\t\t\tthis._removeClassesOrStyles(classesOrStyles);\r\n\t\t\t\tconst expectedWidth = this._toNumber(key);\r\n\t\t\t\tif (this._width <= expectedWidth && !found) {\r\n\t\t\t\t\tthis._applyClassesOrStyles(classesOrStyles);\r\n\t\t\t\t\tfound = true;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\tif (widthChanged || heightChanged) {\r\n\t\t\tthis._height = this._monitorTarget.clientHeight;\r\n\t\t\tif (this.buiFixedHeight) {\r\n\t\t\t\tthis._reflowFrameCount = 0;\r\n\t\t\t\tthis._reflowHeight();\r\n\t\t\t}\r\n\t\t\tsetTimeout(() => this._zone.run(() => this.buiResized.emit({ width: this._width, height: this._height })));\r\n\t\t}\r\n\t}\r\n\r\n\tprivate _applyClassesOrStyles(clsOrStyles: string[]) {\r\n\t\tclsOrStyles.forEach(s => {\r\n\t\t\tif (s.includes(':')) {\r\n\t\t\t\tconst [prop, val] = s.split(':');\r\n\t\t\t\tthis._element.style.setProperty(prop.trim(), val.trim());\r\n\t\t\t} else {\r\n\t\t\t\tconst classes = s.split(/\\s+/).filter(c => c);\r\n\t\t\t\tif (classes.length) {\r\n\t\t\t\t\tthis._element.classList.add(...classes);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\r\n\tprivate _removeClassesOrStyles(clsOrStyles: string[]) {\r\n\t\tclsOrStyles.forEach(s => {\r\n\t\t\tif (s.includes(':')) {\r\n\t\t\t\tconst [prop] = s.split(':');\r\n\t\t\t\tthis._element.style.removeProperty(prop);\r\n\t\t\t} else {\r\n\t\t\t\tconst classes = s.split(/\\s+/).filter(c => c);\r\n\t\t\t\tif (classes.length) {\r\n\t\t\t\t\tthis._element.classList.remove(...classes);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\r\n\tprivate _reflowHeight() {\r\n\t\tconst cnt = this._reflowFrameCount;\r\n\t\tif (cnt < 15) {\r\n\t\t\tcancelAnimationFrame(this._frameHandlerId);\r\n\t\t\tthis._frameHandlerId = requestAnimationFrame(this._reflowHeight.bind(this));\r\n\r\n\t\t\tif (cnt === 0) {\r\n\t\t\t\tthis._element.style.height = '0';\r\n\t\t\t} else if (cnt === 14) {\r\n\t\t\t\tconst gt = parseInt(\r\n\t\t\t\t\tgetComputedStyle(this._monitorTarget).getPropertyValue('padding-top').replace(/px$/, '') || '0',\r\n\t\t\t\t\t10\r\n\t\t\t\t);\r\n\t\t\t\tconst gb = parseInt(\r\n\t\t\t\t\tgetComputedStyle(this._monitorTarget).getPropertyValue('padding-bottom').replace(/px$/, '') || '0',\r\n\t\t\t\t\t10\r\n\t\t\t\t);\r\n\t\t\t\tthis._element.style.height = `${this._height - gt - gb - 5}px`;\r\n\t\t\t}\r\n\t\t}\r\n\t\tthis._reflowFrameCount++;\r\n\t}\r\n\r\n\tprivate _toNumber(s: string) {\r\n\t\treturn (s === '~' ? Infinity : Number(s)) || -Infinity;\r\n\t}\r\n}\r\n","import { DOCUMENT } from '@angular/common';\r\nimport {\r\n\tAfterViewInit,\r\n\tComponentRef,\r\n\tDirective,\r\n\tDoCheck,\r\n\tElementRef,\r\n\tInject,\r\n\tInput,\r\n\tOptional,\r\n\tViewContainerRef\r\n} from '@angular/core';\r\nimport {\r\n\tMatButton,\r\n\tMatFabAnchor,\r\n\tMatFabButton,\r\n\tMatIconAnchor,\r\n\tMatIconButton,\r\n\tMatMiniFabAnchor,\r\n\tMatMiniFabButton\r\n} from '@angular/material/button';\r\nimport { MatProgressSpinner, ProgressSpinnerMode } from '@angular/material/progress-spinner';\r\nimport { Subscription } from 'rxjs';\r\n\r\n/**\r\n * Use this directive on a `MatButton` element to provide an alternative view when an async operation is in progress.\r\n *\r\n * For example:\r\n *\r\n * ```\r\n * <button (click)=\"submit();\" [buiAwait]=\"submitSubscription\" buiAwaitAriaLabel=\"submitting\">Submit</button>\r\n * ```\r\n *\r\n * Please refer to [Material Design](https://material.io/components/progress-indicators#circular-progress-indicators)\r\n * for more details of integrating circular spinner component with action buttons.\r\n *\r\n * The operation is considered 'in progress' when the bound property `buiAwait` evaluates to\r\n *\r\n * - `true`; or\r\n * - a `number` within 0 - 100; or\r\n * - an instance of `rxjs/Subscription` and `buiAwait.closed` is falsy\r\n *\r\n * When in progress\r\n *\r\n * - the button's caption will be hidden;\r\n * - a `<mat-progress-spinner>` will be displayed in place of the caption;\r\n * - the button will be disabled by setting the property `disabled` of the `MatButton` instance.\r\n */\r\n@Directive({\r\n\tselector: '[buiAwait]'\r\n})\r\nexport class AwaitDirective implements AfterViewInit, DoCheck {\r\n\t/**\r\n\t * Indicates the `in progress` status of an async operation.\r\n\t *\r\n\t * The operation is considered 'in progress' when the property evaluates to\r\n\t *\r\n\t * - `true`; or\r\n\t * - a `number` within 0 - 100; or\r\n\t * - an instance of `rxjs/Subscription` and `buiAwait.closed` is falsy\r\n\t *\r\n\t * When it is a number, it represets the progress in percentage term.\r\n\t */\r\n\t@Input()\r\n\tbuiAwait: null | undefined | boolean | Subscription | number;\r\n\r\n\t/** The ARIA label to be put on the spinner. The default value is `\"In progress\"`. */\r\n\t@Input()\r\n\tbuiAwaitAriaLabel = 'In progress';\r\n\r\n\t/** The diameter of the in-progress spinner. The default value is `20`. */\r\n\t@Input()\r\n\tbuiAwaitDiameter = 20;\r\n\r\n\tprivate _overlayEl: HTMLDivElement | undefined;\r\n\tprivate _processing = false;\r\n\tprivate _spinnerRef: ComponentRef<MatProgressSpinner> | undefined;\r\n\tprivate _captionWrapper: HTMLElement | undefined;\r\n\tprivate button:\r\n\t\t| MatButton\r\n\t\t| MatIconButton\r\n\t\t| MatIconAnchor\r\n\t\t| MatFabButton\r\n\t\t| MatFabAnchor\r\n\t\t| MatMiniFabButton\r\n\t\t| MatMiniFabAnchor\r\n\t\t| undefined;\r\n\r\n\tconstructor(\r\n\t\tprivate readonly _eRef: ElementRef<HTMLElement>,\r\n\t\t@Optional() readonly _button: MatButton,\r\n\t\t@Optional() readonly _iconButton: MatIconButton,\r\n\t\t@Optional() readonly _iconAnchor: MatIconAnchor,\r\n\t\t@Optional() readonly _fab: MatFabButton,\r\n\t\t@Optional() readonly _fabAnchor: MatFabAnchor,\r\n\t\t@Optional() readonly _miniFab: MatMiniFabButton,\r\n\t\t@Optional() readonly _miniFabAnchor: MatMiniFabAnchor,\r\n\t\t@Inject(DOCUMENT) private readonly doc: Document,\r\n\t\tprivate _viewCont: ViewContainerRef\r\n\t) {\r\n\t\tthis.button = _button || _iconButton || _iconAnchor || _fab || _fabAnchor || _miniFab || _miniFabAnchor;\r\n\t\tif (!this.button) {\r\n\t\t\tconsole.error('[buiAwait] can only be used on a Material button.');\r\n\t\t\treturn;\r\n\t\t}\r\n\t}\r\n\r\n\t/** @ignore */\r\n\tngAfterViewInit(): void {\r\n\t\tif (this.button) {\r\n\t\t\tthis._overlayEl = this.doc.createElement('div');\r\n\t\t\tthis._eRef.nativeElement.appendChild(this._overlayEl);\r\n\t\t\tthis._overlayEl.classList.add('bui-await-overlay');\r\n\t\t\tthis._overlayEl.style.cssText =\r\n\t\t\t\t'display:flex; position:absolute; top:0; right:0; bottom:0; left:0; align-items: center; justify-content: center';\r\n\t\t\tthis._captionWrapper = this._eRef.nativeElement.querySelector('.mdc-button__label,.mat-icon') as HTMLElement;\r\n\t\t}\r\n\t}\r\n\r\n\t/** @ignore */\r\n\tngDoCheck(): void {\r\n\t\tconst inProgress =\r\n\t\t\tthis.buiAwait === true || (typeof this.buiAwait === 'object' && !this.buiAwait!.closed) || this._isDeterminate;\r\n\t\tif (inProgress !== this._processing) {\r\n\t\t\tthis._processing = inProgress;\r\n\t\t\tthis._statusChanged(this._isDeterminate ? 'determinate' : 'indeterminate');\r\n\t\t}\r\n\t\tif (this._isDeterminate && this._spinnerRef) {\r\n\t\t\tthis._spinnerRef.setInput('value', this.buiAwait);\r\n\t\t}\r\n\t}\r\n\r\n\t/** @ignore */\r\n\tprivate get _isDeterminate(): boolean {\r\n\t\treturn typeof this.buiAwait === 'number' && this.buiAwait >= 0 && this.buiAwait < 100;\r\n\t}\r\n\r\n\tprivate _statusChanged(mode: ProgressSpinnerMode) {\r\n\t\tif (this.button) {\r\n\t\t\tthis.button.disabled = this._processing;\r\n\r\n\t\t\tif (this._processing) {\r\n\t\t\t\tthis._spinnerRef = this._viewCont.createComponent(MatProgressSpinner);\r\n\t\t\t\tconst c = this._spinnerRef.instance;\r\n\t\t\t\tc.diameter = this.buiAwaitDiameter;\r\n\t\t\t\tc.mode = mode;\r\n\t\t\t\tc.color = this.button.color;\r\n\t\t\t\tconst e: HTMLElement = this._spinnerRef.location.nativeElement;\r\n\t\t\t\te.setAttribute('aria-label', this.buiAwaitAriaLabel);\r\n\t\t\t\tthis._overlayEl!.appendChild(e);\r\n\t\t\t\tthis._captionWrapper!.style.visibility = 'hidden';\r\n\t\t\t} else {\r\n\t\t\t\tthis._captionWrapper!.style.visibility = '';\r\n\t\t\t\tthis._spinnerRef!.destroy();\r\n\t\t\t\tthis._spinnerRef = undefined;\r\n\t\t\t\tthis._overlayEl!.innerHTML = '';\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n}\r\n","import { ContentObserver } from '@angular/cdk/observers';\r\nimport { Directive, ElementRef, Input, OnDestroy, OnInit } from '@angular/core';\r\nimport { Subscription } from 'rxjs';\r\n\r\n/**\r\n * Use `[bui-class.not-empty]` to specify a style class activated only when the host element has DOM children;\r\n *\r\n * use `[bui-class.empty]` for a style class activated when it has no DOM children.\r\n *\r\n * Use `[bui-class.no-text]` to specify a style class activated only when the host element has text content;\r\n *\r\n * use `[bui-class.has-text]` for a style class activated when it has no text content.\r\n */\r\n@Directive({\r\n\tselector: '[bui-class.empty],[bui-class.not-empty],[bui-class.no-text],[bui-class.has-text]'\r\n})\r\nexport class ObserveContentClassDirective implements OnDestroy, OnInit {\r\n\tprivate readonly subscription: Subscription;\r\n\tprivate readonly element: HTMLElement;\r\n\tprivate classToRemove: string[] = [];\r\n\r\n\t@Input('bui-class.empty')\r\n\tprivate classEmpty?: string;\r\n\r\n\t@Input('bui-class.not-empty')\r\n\tprivate classNotEmpty?: string;\r\n\r\n\t@Input('bui-class.no-text')\r\n\tprivate classNoText?: string;\r\n\r\n\t@Input('bui-class.has-text')\r\n\tprivate classHasText?: string;\r\n\r\n\tconstructor(observer: ContentObserver, elementRef: ElementRef<HTMLElement>) {\r\n\t\tthis.element = elementRef.nativeElement;\r\n\t\tthis.subscription = observer.observe(elementRef).subscribe(() => this.checkClass());\r\n\t}\r\n\r\n\tngOnInit(): void {\r\n\t\tthis.checkClass.bind(this);\r\n\t}\r\n\r\n\tngOnDestroy(): void {\r\n\t\tthis.subscription.unsubscribe();\r\n\t}\r\n\r\n\tprivate checkClass(): void {\r\n\t\tthis.element.classList.remove(...this.classToRemove);\r\n\t\tthis.classToRemove = [];\r\n\t\tthis.checkClassWith(\r\n\t\t\tthis.classEmpty,\r\n\t\t\tthis.classNotEmpty,\r\n\t\t\t() => this.element.childElementCount === 0 && !this.element.textContent?.trim()\r\n\t\t);\r\n\t\tthis.checkClassWith(this.classNoText, this.classHasText, () => !this.element.textContent?.trim());\r\n\t}\r\n\r\n\tprivate checkClassWith(\r\n\t\twithoutClass: string | null | undefined,\r\n\t\twithClass: string | null | undefined,\r\n\t\tisWithout: () => boolean\r\n\t): void {\r\n\t\tconst without = isWithout();\r\n\t\tthis.addClass(without ? withoutClass : (withClass as any));\r\n\t}\r\n\r\n\tprivate addClass(cls: string | null) {\r\n\t\tif (cls?.trim()) {\r\n\t\t\tconst classes = cls.trim().split(/\\s+/);\r\n\t\t\tthis.element.classList.add(...classes);\r\n\t\t\tthis.classToRemove.push(...classes);\r\n\t\t}\r\n\t}\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { SizingDirective } from './sizing.directive';\r\nimport { SizingMonitorDirective } from './sizing-monitor.directive';\r\nimport { AwaitDirective } from './await.directive';\r\nimport { MatButtonModule } from '@angular/material/button';\r\nimport { MatProgressSpinnerModule } from '@angular/material/progress-spinner';\r\nimport { ObserveContentClassDirective } from './observe-content-class.directive';\r\nimport { ObserversModule } from '@angular/cdk/observers';\r\n\r\n/**\r\n * For functionality that cannot be easily achieved via CSS.\r\n */\r\n@NgModule({\r\n\tdeclarations: [SizingDirective, SizingMonitorDirective, AwaitDirective, ObserveContentClassDirective],\r\n\timports: [CommonModule, MatButtonModule, MatProgressSpinnerModule, ObserversModule],\r\n\texports: [\r\n\t\tSizingDirective,\r\n\t\tSizingMonitorDirective,\r\n\t\tAwaitDirective,\r\n\t\tMatProgressSpinnerModule,\r\n\t\tObserveContentClassDirective\r\n\t]\r\n})\r\nexport class BehaviorModule {}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1.SizingMonitorDirective","i1"],"mappings":"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"}
@@ -16,21 +16,6 @@ import { trigger, state, style, transition, group, animate, query, animateChild
16
16
  import { Subject, takeUntil } from 'rxjs';
17
17
 
18
18
  class ClipNoteComponent {
19
- constructor(_cd, _dir, _elemRef) {
20
- this._cd = _cd;
21
- this._dir = _dir;
22
- this._elemRef = _elemRef;
23
- this.buttonText = '';
24
- this.panelState = 'closed-ltr';
25
- this.direction = 'ltr';
26
- this._buttonAnimating = false;
27
- this._hasContent = false;
28
- this.opened = new EventEmitter();
29
- this.closed = new EventEmitter();
30
- this._hovering = false;
31
- this._destroyed$ = new Subject();
32
- this._toggleQueue = [];
33
- }
34
19
  get buttonState() {
35
20
  if (this._hovering || this.panelState === 'open') {
36
21
  return 'active';
@@ -46,6 +31,21 @@ class ClipNoteComponent {
46
31
  }
47
32
  return 'inactive';
48
33
  }
34
+ constructor(_cd, _dir, _elemRef) {
35
+ this._cd = _cd;
36
+ this._dir = _dir;
37
+ this._elemRef = _elemRef;
38
+ this.buttonText = '';
39
+ this.panelState = 'closed-ltr';
40
+ this.direction = 'ltr';
41
+ this._buttonAnimating = false;
42
+ this._hasContent = false;
43
+ this.opened = new EventEmitter();
44
+ this.closed = new EventEmitter();
45
+ this._hovering = false;
46
+ this._destroyed$ = new Subject();
47
+ this._toggleQueue = [];
48
+ }
49
49
  ngOnInit() {
50
50
  const changeDir = () => {
51
51
  this.direction = this._dir.value;
@@ -145,39 +145,39 @@ class ClipNoteComponent {
145
145
  this._icon = icon;
146
146
  this._cd.markForCheck();
147
147
  }
148
- }
149
- ClipNoteComponentfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.6", ngImport: i0, type: ClipNoteComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i1.Directionality }, { token: i0.ElementRef, host: true }], target: i0.ɵɵFactoryTarget.Component });
150
- ClipNoteComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.6", type: ClipNoteComponent, selector: "bui-clip-note", host: { classAttribute: "bui-clip-note bui-host" }, viewQueries: [{ propertyName: "_viewDiv", first: true, predicate: ["viewDiv"], descendants: true, read: ElementRef, static: true }, { propertyName: "_noteViewRef", first: true, predicate: ["noteViewRef"], descendants: true, read: ViewContainerRef, static: true }, { propertyName: "_fallbackTemplate", first: true, predicate: ["fallbackTemplate"], descendants: true, static: true }], ngImport: i0, template: "<div class=\"bui-clip-note-wrapper\">\n\t<div\n\t\tclass=\"bui-clip-note-content bui-border-{{ _color }} mat-elevation-z3\"\n\t\t[@panelAnimation]=\"panelState\"\n\t\t#viewDiv\n\t\t(cdkObserveContent)=\"_checkContent()\"\n\t>\n\t\t<ng-container #noteViewRef></ng-container>\n\t</div>\n\n\t<button\n\t\tmat-raised-button\n\t\tclass=\"bui-clip-note-trigger bui-clip-note-trigger-{{ buttonIconState }}\"\n\t\t[color]=\"_color\"\n\t\t[@buttonAnimation]=\"buttonState\"\n\t\t(mouseenter)=\"_mouseOverButton(true)\"\n\t\t(mouseleave)=\"_mouseOverButton(false)\"\n\t\t(click)=\"_scheduleToggle()\"\n\t>\n\t\t<mat-icon\n\t\t\t[@buttonIconAnimation]=\"_icon ? 'disabled' : buttonIconState\"\n\t\t\t(@buttonIconAnimation.start)=\"_buttonAnimating = true\"\n\t\t\t(@buttonIconAnimation.done)=\"_buttonAnimating = false; _checkToggle()\"\n\t\t\t[buiIcon]=\"_icon || (direction === 'rtl' ? 'chevron_right' : 'chevron_left')\"\n\t\t\tstyle=\"margin: 0\"\n\t\t>\n\t\t</mat-icon>\n\t\t<span [@buttonTextAnimation]=\"buttonState\" class=\"bui-clip-note-button-text\">&nbsp; {{ buttonText }}</span>\n\t</button>\n</div>\n\n<ng-template #fallbackTemplate>\n\t<div [innerHTML]=\"_content\"></div>\n</ng-template>\n", styles: [":host{position:absolute;top:2rem;box-sizing:border-box;z-index:var(--bui-clip-note-z-index, 100)}:host(.bui-clip-note-hidden){display:none}:host-context(:not([dir=rtl])){right:0}:host-context(:not([dir=rtl])) .bui-clip-note-trigger{right:-18px}:host-context([dir=rtl]){left:0;right:unset}:host-context([dir=rtl]) .bui-clip-note-trigger{left:-18px;right:unset}.bui-clip-note-trigger{border-radius:18px;overflow:hidden;position:absolute;top:-1rem}.bui-clip-note-button-text{display:inline-block;overflow:hidden;white-space:nowrap;vertical-align:middle}.bui-clip-note-wrapper{position:relative}.bui-clip-note-content{max-width:320px;min-width:150px;background-color:var(--bui-bg-body);border-radius:6px;border-width:1px;border-style:solid;padding:1rem;overflow-y:hidden}@keyframes rubber-band{0%{transform:scaleZ(1)}30%{transform:scale3d(1.25,.75,1)}40%{transform:scale3d(.75,1.25,1)}50%{transform:scale3d(1.15,.85,1)}65%{transform:scale3d(.95,1.05,1)}75%{transform:scale3d(1.05,.95,1)}to{transform:scaleZ(1)}}:host(.bui-clip-note-reveal) .bui-clip-note-trigger{animation:rubber-band .8s ease}\n"], dependencies: [{ kind: "component", type: i2.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i4.CdkObserveContent, selector: "[cdkObserveContent]", inputs: ["cdkObserveContentDisabled", "debounce"], outputs: ["cdkObserveContent"], exportAs: ["cdkObserveContent"] }, { kind: "directive", type: i5.IconDirective, selector: "[buiIcon]", inputs: ["buiIcon", "size", "variant"] }], animations: [
151
- trigger('buttonAnimation', [
152
- state('*', style({ width: '36px', minWidth: 0, padding: 0 })),
153
- state('active', style({})),
154
- transition('inactive <=> active', [
155
- group([animate('250ms cubic-bezier(.56,.14,.18,.91)'), query('@buttonTextAnimation', animateChild())]),
156
- query('@buttonIconAnimation', animateChild())
148
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ClipNoteComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i1.Directionality }, { token: i0.ElementRef, host: true }], target: i0.ɵɵFactoryTarget.Component }); }
149
+ static { thiscmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: ClipNoteComponent, selector: "bui-clip-note", host: { classAttribute: "bui-clip-note bui-host" }, viewQueries: [{ propertyName: "_viewDiv", first: true, predicate: ["viewDiv"], descendants: true, read: ElementRef, static: true }, { propertyName: "_noteViewRef", first: true, predicate: ["noteViewRef"], descendants: true, read: ViewContainerRef, static: true }, { propertyName: "_fallbackTemplate", first: true, predicate: ["fallbackTemplate"], descendants: true, static: true }], ngImport: i0, template: "<div class=\"bui-clip-note-wrapper\">\r\n\t<div\r\n\t\tclass=\"bui-clip-note-content bui-border-{{ _color }} mat-elevation-z3\"\r\n\t\t[@panelAnimation]=\"panelState\"\r\n\t\t#viewDiv\r\n\t\t(cdkObserveContent)=\"_checkContent()\"\r\n\t>\r\n\t\t<ng-container #noteViewRef></ng-container>\r\n\t</div>\r\n\r\n\t<button\r\n\t\tmat-raised-button\r\n\t\tclass=\"bui-clip-note-trigger bui-clip-note-trigger-{{ buttonIconState }}\"\r\n\t\t[color]=\"_color\"\r\n\t\t[@buttonAnimation]=\"buttonState\"\r\n\t\t(mouseenter)=\"_mouseOverButton(true)\"\r\n\t\t(mouseleave)=\"_mouseOverButton(false)\"\r\n\t\t(click)=\"_scheduleToggle()\"\r\n\t>\r\n\t\t<mat-icon\r\n\t\t\t[@buttonIconAnimation]=\"_icon ? 'disabled' : buttonIconState\"\r\n\t\t\t(@buttonIconAnimation.start)=\"_buttonAnimating = true\"\r\n\t\t\t(@buttonIconAnimation.done)=\"_buttonAnimating = false; _checkToggle()\"\r\n\t\t\t[buiIcon]=\"_icon || (direction === 'rtl' ? 'chevron_right' : 'chevron_left')\"\r\n\t\t\tstyle=\"margin: 0\"\r\n\t\t>\r\n\t\t</mat-icon>\r\n\t\t<span [@buttonTextAnimation]=\"buttonState\" class=\"bui-clip-note-button-text\">&nbsp; {{ buttonText }}</span>\r\n\t</button>\r\n</div>\r\n\r\n<ng-template #fallbackTemplate>\r\n\t<div [innerHTML]=\"_content\"></div>\r\n</ng-template>\r\n", styles: [":host{position:absolute;top:2rem;box-sizing:border-box;z-index:var(--bui-clip-note-z-index, 100)}:host(.bui-clip-note-hidden){display:none}:host-context(:not([dir=rtl])){right:0}:host-context(:not([dir=rtl])) .bui-clip-note-trigger{right:-18px}:host-context([dir=rtl]){left:0;right:unset}:host-context([dir=rtl]) .bui-clip-note-trigger{left:-18px;right:unset}.bui-clip-note-trigger{border-radius:18px;overflow:hidden;position:absolute;top:-1rem}.bui-clip-note-button-text{display:inline-block;overflow:hidden;white-space:nowrap;vertical-align:middle}.bui-clip-note-wrapper{position:relative}.bui-clip-note-content{max-width:320px;min-width:150px;background-color:var(--bui-bg-body);border-radius:6px;border-width:1px;border-style:solid;padding:1rem;overflow-y:hidden}@keyframes rubber-band{0%{transform:scaleZ(1)}30%{transform:scale3d(1.25,.75,1)}40%{transform:scale3d(.75,1.25,1)}50%{transform:scale3d(1.15,.85,1)}65%{transform:scale3d(.95,1.05,1)}75%{transform:scale3d(1.05,.95,1)}to{transform:scaleZ(1)}}:host(.bui-clip-note-reveal) .bui-clip-note-trigger{animation:rubber-band .8s ease}\n"], dependencies: [{ kind: "component", type: i2.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i4.CdkObserveContent, selector: "[cdkObserveContent]", inputs: ["cdkObserveContentDisabled", "debounce"], outputs: ["cdkObserveContent"], exportAs: ["cdkObserveContent"] }, { kind: "directive", type: i5.IconDirective, selector: "[buiIcon]", inputs: ["buiIcon", "size", "variant"] }], animations: [
150
+ trigger('buttonAnimation', [
151
+ state('*', style({ width: '36px', minWidth: 0, padding: 0 })),
152
+ state('active', style({})),
153
+ transition('inactive <=> active', [
154
+ group([animate('250ms cubic-bezier(.56,.14,.18,.91)'), query('@buttonTextAnimation', animateChild())]),
155
+ query('@buttonIconAnimation', animateChild())
156
+ ])
157
+ ]),
158
+ trigger('buttonTextAnimation', [
159
+ state('inactive', style({ opacity: 0, width: 0 })),
160
+ state('active', style({ opacity: 1 })),
161
+ transition('inactive => active', animate('250ms cubic-bezier(.88,.15,.63,.61)')),
162
+ transition('active => inactive', animate('250ms cubic-bezier(.05,.72,.44,.92)'))
163
+ ]),
164
+ trigger('buttonIconAnimation', [
165
+ state('active-ltr', style({ transform: 'rotate(-90deg)' })),
166
+ state('active-rtl', style({ transform: 'rotate(90deg)' })),
167
+ state('open-ltr', style({ transform: 'rotate(90deg)' })),
168
+ state('open-rtl', style({ transform: 'rotate(270deg)' })),
169
+ state('inactive', style({})),
170
+ transition('inactive <=> *, * <=> open-ltr, * <=> open-rtl', animate('250ms cubic-bezier(0.25, 0.8, 0.25, 1)'))
171
+ ]),
172
+ trigger('panelAnimation', [
173
+ state('open', style({})),
174
+ state('closed-rtl', style({ transform: 'scale(0) translate(-80%, -70%)', padding: 0, opacity: 0 })),
175
+ state('closed-ltr', style({ transform: 'scale(0) translate(80%, -70%)', padding: 0, opacity: 0 })),
176
+ transition('open <=> *', animate('300ms cubic-bezier(.69,.12,.6,.62)'))
157
177
  ])
158
- ]),
159
- trigger('buttonTextAnimation', [
160
- state('inactive', style({ opacity: 0, width: 0 })),
161
- state('active', style({ opacity: 1 })),
162
- transition('inactive => active', animate('250ms cubic-bezier(.88,.15,.63,.61)')),
163
- transition('active => inactive', animate('250ms cubic-bezier(.05,.72,.44,.92)'))
164
- ]),
165
- trigger('buttonIconAnimation', [
166
- state('active-ltr', style({ transform: 'rotate(-90deg)' })),
167
- state('active-rtl', style({ transform: 'rotate(90deg)' })),
168
- state('open-ltr', style({ transform: 'rotate(90deg)' })),
169
- state('open-rtl', style({ transform: 'rotate(270deg)' })),
170
- state('inactive', style({})),
171
- transition('inactive <=> *, * <=> open-ltr, * <=> open-rtl', animate('250ms cubic-bezier(0.25, 0.8, 0.25, 1)'))
172
- ]),
173
- trigger('panelAnimation', [
174
- state('open', style({})),
175
- state('closed-rtl', style({ transform: 'scale(0) translate(-80%, -70%)', padding: 0, opacity: 0 })),
176
- state('closed-ltr', style({ transform: 'scale(0) translate(80%, -70%)', padding: 0, opacity: 0 })),
177
- transition('open <=> *', animate('300ms cubic-bezier(.69,.12,.6,.62)'))
178
- ])
179
- ], changeDetection: i0.ChangeDetectionStrategy.OnPush });
180
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.6", ngImport: i0, type: ClipNoteComponent, decorators: [{
178
+ ], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
179
+ }
180
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ClipNoteComponent, decorators: [{
181
181
  type: Component,
182
182
  args: [{ selector: 'bui-clip-note', host: { class: 'bui-clip-note bui-host' }, animations: [
183
183
  trigger('buttonAnimation', [
@@ -208,10 +208,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.6", ngImpor
208
208
  state('closed-ltr', style({ transform: 'scale(0) translate(80%, -70%)', padding: 0, opacity: 0 })),
209
209
  transition('open <=> *', animate('300ms cubic-bezier(.69,.12,.6,.62)'))
210
210
  ])
211
- ], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"bui-clip-note-wrapper\">\n\t<div\n\t\tclass=\"bui-clip-note-content bui-border-{{ _color }} mat-elevation-z3\"\n\t\t[@panelAnimation]=\"panelState\"\n\t\t#viewDiv\n\t\t(cdkObserveContent)=\"_checkContent()\"\n\t>\n\t\t<ng-container #noteViewRef></ng-container>\n\t</div>\n\n\t<button\n\t\tmat-raised-button\n\t\tclass=\"bui-clip-note-trigger bui-clip-note-trigger-{{ buttonIconState }}\"\n\t\t[color]=\"_color\"\n\t\t[@buttonAnimation]=\"buttonState\"\n\t\t(mouseenter)=\"_mouseOverButton(true)\"\n\t\t(mouseleave)=\"_mouseOverButton(false)\"\n\t\t(click)=\"_scheduleToggle()\"\n\t>\n\t\t<mat-icon\n\t\t\t[@buttonIconAnimation]=\"_icon ? 'disabled' : buttonIconState\"\n\t\t\t(@buttonIconAnimation.start)=\"_buttonAnimating = true\"\n\t\t\t(@buttonIconAnimation.done)=\"_buttonAnimating = false; _checkToggle()\"\n\t\t\t[buiIcon]=\"_icon || (direction === 'rtl' ? 'chevron_right' : 'chevron_left')\"\n\t\t\tstyle=\"margin: 0\"\n\t\t>\n\t\t</mat-icon>\n\t\t<span [@buttonTextAnimation]=\"buttonState\" class=\"bui-clip-note-button-text\">&nbsp; {{ buttonText }}</span>\n\t</button>\n</div>\n\n<ng-template #fallbackTemplate>\n\t<div [innerHTML]=\"_content\"></div>\n</ng-template>\n", styles: [":host{position:absolute;top:2rem;box-sizing:border-box;z-index:var(--bui-clip-note-z-index, 100)}:host(.bui-clip-note-hidden){display:none}:host-context(:not([dir=rtl])){right:0}:host-context(:not([dir=rtl])) .bui-clip-note-trigger{right:-18px}:host-context([dir=rtl]){left:0;right:unset}:host-context([dir=rtl]) .bui-clip-note-trigger{left:-18px;right:unset}.bui-clip-note-trigger{border-radius:18px;overflow:hidden;position:absolute;top:-1rem}.bui-clip-note-button-text{display:inline-block;overflow:hidden;white-space:nowrap;vertical-align:middle}.bui-clip-note-wrapper{position:relative}.bui-clip-note-content{max-width:320px;min-width:150px;background-color:var(--bui-bg-body);border-radius:6px;border-width:1px;border-style:solid;padding:1rem;overflow-y:hidden}@keyframes rubber-band{0%{transform:scaleZ(1)}30%{transform:scale3d(1.25,.75,1)}40%{transform:scale3d(.75,1.25,1)}50%{transform:scale3d(1.15,.85,1)}65%{transform:scale3d(.95,1.05,1)}75%{transform:scale3d(1.05,.95,1)}to{transform:scaleZ(1)}}:host(.bui-clip-note-reveal) .bui-clip-note-trigger{animation:rubber-band .8s ease}\n"] }]
212
- }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i1.Directionality }, { type: i0.ElementRef, decorators: [{
211
+ ], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"bui-clip-note-wrapper\">\r\n\t<div\r\n\t\tclass=\"bui-clip-note-content bui-border-{{ _color }} mat-elevation-z3\"\r\n\t\t[@panelAnimation]=\"panelState\"\r\n\t\t#viewDiv\r\n\t\t(cdkObserveContent)=\"_checkContent()\"\r\n\t>\r\n\t\t<ng-container #noteViewRef></ng-container>\r\n\t</div>\r\n\r\n\t<button\r\n\t\tmat-raised-button\r\n\t\tclass=\"bui-clip-note-trigger bui-clip-note-trigger-{{ buttonIconState }}\"\r\n\t\t[color]=\"_color\"\r\n\t\t[@buttonAnimation]=\"buttonState\"\r\n\t\t(mouseenter)=\"_mouseOverButton(true)\"\r\n\t\t(mouseleave)=\"_mouseOverButton(false)\"\r\n\t\t(click)=\"_scheduleToggle()\"\r\n\t>\r\n\t\t<mat-icon\r\n\t\t\t[@buttonIconAnimation]=\"_icon ? 'disabled' : buttonIconState\"\r\n\t\t\t(@buttonIconAnimation.start)=\"_buttonAnimating = true\"\r\n\t\t\t(@buttonIconAnimation.done)=\"_buttonAnimating = false; _checkToggle()\"\r\n\t\t\t[buiIcon]=\"_icon || (direction === 'rtl' ? 'chevron_right' : 'chevron_left')\"\r\n\t\t\tstyle=\"margin: 0\"\r\n\t\t>\r\n\t\t</mat-icon>\r\n\t\t<span [@buttonTextAnimation]=\"buttonState\" class=\"bui-clip-note-button-text\">&nbsp; {{ buttonText }}</span>\r\n\t</button>\r\n</div>\r\n\r\n<ng-template #fallbackTemplate>\r\n\t<div [innerHTML]=\"_content\"></div>\r\n</ng-template>\r\n", styles: [":host{position:absolute;top:2rem;box-sizing:border-box;z-index:var(--bui-clip-note-z-index, 100)}:host(.bui-clip-note-hidden){display:none}:host-context(:not([dir=rtl])){right:0}:host-context(:not([dir=rtl])) .bui-clip-note-trigger{right:-18px}:host-context([dir=rtl]){left:0;right:unset}:host-context([dir=rtl]) .bui-clip-note-trigger{left:-18px;right:unset}.bui-clip-note-trigger{border-radius:18px;overflow:hidden;position:absolute;top:-1rem}.bui-clip-note-button-text{display:inline-block;overflow:hidden;white-space:nowrap;vertical-align:middle}.bui-clip-note-wrapper{position:relative}.bui-clip-note-content{max-width:320px;min-width:150px;background-color:var(--bui-bg-body);border-radius:6px;border-width:1px;border-style:solid;padding:1rem;overflow-y:hidden}@keyframes rubber-band{0%{transform:scaleZ(1)}30%{transform:scale3d(1.25,.75,1)}40%{transform:scale3d(.75,1.25,1)}50%{transform:scale3d(1.15,.85,1)}65%{transform:scale3d(.95,1.05,1)}75%{transform:scale3d(1.05,.95,1)}to{transform:scaleZ(1)}}:host(.bui-clip-note-reveal) .bui-clip-note-trigger{animation:rubber-band .8s ease}\n"] }]
212
+ }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i1.Directionality }, { type: i0.ElementRef, decorators: [{
213
213
  type: Host
214
- }] }]; }, propDecorators: { _viewDiv: [{
214
+ }] }], propDecorators: { _viewDiv: [{
215
215
  type: ViewChild,
216
216
  args: ['viewDiv', { static: true, read: ElementRef }]
217
217
  }], _noteViewRef: [{
@@ -241,17 +241,6 @@ const CLIP_NOTE_DEFAULT_CONFIG = new InjectionToken('bui-clip-note.default-confi
241
241
  *
242
242
  */
243
243
  class ClipNoteDirective {
244
- constructor(_elementRef, _vc, _config) {
245
- this._elementRef = _elementRef;
246
- this._vc = _vc;
247
- /** Emits when the panel opens */
248
- this.buiClipNoteOpened = new EventEmitter();
249
- /** Emits when the panel closes */
250
- this.buiClipNoteClosed = new EventEmitter();
251
- this._color = 'primary';
252
- this._caption = _config.caption;
253
- this._color = _config.color;
254
- }
255
244
  /**
256
245
  * Provide content to the clip note's floating notepad element.
257
246
  * It accepts a `string` of HTML content or a `TemplateRef` object.
@@ -303,6 +292,17 @@ class ClipNoteDirective {
303
292
  this._compRef.instance._assignButtonText(this._caption);
304
293
  }
305
294
  }
295
+ constructor(_elementRef, _vc, _config) {
296
+ this._elementRef = _elementRef;
297
+ this._vc = _vc;
298
+ /** Emits when the panel opens */
299
+ this.buiClipNoteOpened = new EventEmitter();
300
+ /** Emits when the panel closes */
301
+ this.buiClipNoteClosed = new EventEmitter();
302
+ this._color = 'primary';
303
+ this._caption = _config.caption;
304
+ this._color = _config.color;
305
+ }
306
306
  ngAfterViewInit() {
307
307
  setTimeout(() => {
308
308
  this._compRef = this._vc.createComponent(ClipNoteComponent);
@@ -332,21 +332,21 @@ class ClipNoteDirective {
332
332
  _processContent() {
333
333
  this._compRef.instance._contentChanged(this._content);
334
334
  }
335
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ClipNoteDirective, deps: [{ token: i0.ElementRef, host: true }, { token: i0.ViewContainerRef }, { token: CLIP_NOTE_DEFAULT_CONFIG }], target: i0.ɵɵFactoryTarget.Directive }); }
336
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.12", type: ClipNoteDirective, selector: "[buiClipNote]", inputs: { buiClipNote: "buiClipNote", buiClipNoteColor: "buiClipNoteColor", buiClipNoteIcon: "buiClipNoteIcon", buiClipNoteCaption: "buiClipNoteCaption" }, outputs: { buiClipNoteOpened: "buiClipNoteOpened", buiClipNoteClosed: "buiClipNoteClosed" }, exportAs: ["buiClipNote"], ngImport: i0 }); }
335
337
  }
336
- ClipNoteDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.6", ngImport: i0, type: ClipNoteDirective, deps: [{ token: i0.ElementRef, host: true }, { token: i0.ViewContainerRef }, { token: CLIP_NOTE_DEFAULT_CONFIG }], target: i0.ɵɵFactoryTarget.Directive });
337
- ClipNoteDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.6", type: ClipNoteDirective, selector: "[buiClipNote]", inputs: { buiClipNote: "buiClipNote", buiClipNoteColor: "buiClipNoteColor", buiClipNoteIcon: "buiClipNoteIcon", buiClipNoteCaption: "buiClipNoteCaption" }, outputs: { buiClipNoteOpened: "buiClipNoteOpened", buiClipNoteClosed: "buiClipNoteClosed" }, exportAs: ["buiClipNote"], ngImport: i0 });
338
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.6", ngImport: i0, type: ClipNoteDirective, decorators: [{
338
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ClipNoteDirective, decorators: [{
339
339
  type: Directive,
340
340
  args: [{
341
341
  selector: '[buiClipNote]',
342
342
  exportAs: 'buiClipNote'
343
343
  }]
344
- }], ctorParameters: function () { return [{ type: i0.ElementRef, decorators: [{
344
+ }], ctorParameters: () => [{ type: i0.ElementRef, decorators: [{
345
345
  type: Host
346
346
  }] }, { type: i0.ViewContainerRef }, { type: undefined, decorators: [{
347
347
  type: Inject,
348
348
  args: [CLIP_NOTE_DEFAULT_CONFIG]
349
- }] }]; }, propDecorators: { buiClipNote: [{
349
+ }] }], propDecorators: { buiClipNote: [{
350
350
  type: Input
351
351
  }], buiClipNoteColor: [{
352
352
  type: Input
@@ -367,11 +367,11 @@ class ClipNoteModule {
367
367
  providers: [{ provide: CLIP_NOTE_DEFAULT_CONFIG, useValue: config }]
368
368
  };
369
369
  }
370
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ClipNoteModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
371
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.12", ngImport: i0, type: ClipNoteModule, declarations: [ClipNoteComponent, ClipNoteDirective], imports: [CommonModule, MatButtonModule, MatIconModule, BidiModule, BuiCommonModule, ObserversModule, IconFontModule], exports: [ClipNoteDirective] }); }
372
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ClipNoteModule, imports: [CommonModule, MatButtonModule, MatIconModule, BidiModule, BuiCommonModule, ObserversModule, IconFontModule] }); }
370
373
  }
371
- ClipNoteModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.6", ngImport: i0, type: ClipNoteModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
372
- ClipNoteModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.6", ngImport: i0, type: ClipNoteModule, declarations: [ClipNoteComponent, ClipNoteDirective], imports: [CommonModule, MatButtonModule, MatIconModule, BidiModule, BuiCommonModule, ObserversModule, IconFontModule], exports: [ClipNoteDirective] });
373
- ClipNoteModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.6", ngImport: i0, type: ClipNoteModule, imports: [CommonModule, MatButtonModule, MatIconModule, BidiModule, BuiCommonModule, ObserversModule, IconFontModule] });
374
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.6", ngImport: i0, type: ClipNoteModule, decorators: [{
374
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ClipNoteModule, decorators: [{
375
375
  type: NgModule,
376
376
  args: [{
377
377
  declarations: [ClipNoteComponent, ClipNoteDirective],