@ng-matero/extensions 14.6.3 → 15.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 (336) hide show
  1. package/README.md +0 -1
  2. package/_index.scss +3 -4
  3. package/_theming.scss +3 -4
  4. package/alert/_alert-theme.import.scss +1 -1
  5. package/alert/_alert-theme.scss +2 -2
  6. package/alert/{alert.module.d.ts → alert-module.d.ts} +2 -2
  7. package/alert/{alert.component.d.ts → alert.d.ts} +4 -4
  8. package/alert/{alert.component.scss → alert.scss} +0 -0
  9. package/alert/public-api.d.ts +2 -2
  10. package/button/button-loading.d.ts +25 -0
  11. package/button/button-loading.scss +5 -4
  12. package/button/{button.module.d.ts → button-module.d.ts} +2 -2
  13. package/button/public-api.d.ts +2 -2
  14. package/checkbox-group/{checkbox-group.module.d.ts → checkbox-group-module.d.ts} +2 -2
  15. package/checkbox-group/{checkbox-group.component.d.ts → checkbox-group.d.ts} +4 -4
  16. package/checkbox-group/checkbox-group.scss +0 -0
  17. package/checkbox-group/{checkbox-group.interface.d.ts → interfaces.d.ts} +0 -0
  18. package/checkbox-group/public-api.d.ts +3 -3
  19. package/colorpicker/_colorpicker-theme.import.scss +1 -1
  20. package/colorpicker/_colorpicker-theme.scss +2 -2
  21. package/colorpicker/colorpicker-input.d.ts +1 -1
  22. package/colorpicker/colorpicker-toggle.d.ts +2 -2
  23. package/colorpicker/colorpicker.d.ts +2 -2
  24. package/column-resize/column-resize-directives/column-resize-flex.d.ts +1 -1
  25. package/column-resize/column-resize-directives/column-resize.d.ts +1 -1
  26. package/column-resize/column-resize.d.ts +1 -1
  27. package/column-resize/overlay-handle.d.ts +1 -1
  28. package/column-resize/resizable.d.ts +1 -1
  29. package/core/color/_all-color.scss +28 -0
  30. package/core/density/_all-density.scss +24 -0
  31. package/core/style/_elevation.scss +20 -126
  32. package/core/style/_private.scss +9 -18
  33. package/core/style/_variables.scss +1 -1
  34. package/core/style/_vendor-prefixes.scss +8 -21
  35. package/core/theming/_all-theme.scss +38 -0
  36. package/core/theming/_palette.scss +1 -1
  37. package/core/theming/_theming.scss +55 -22
  38. package/core/typography/_typography.scss +195 -17
  39. package/datetimepicker/_datetimepicker-theme.import.scss +1 -1
  40. package/datetimepicker/_datetimepicker-theme.scss +3 -4
  41. package/datetimepicker/calendar-body.d.ts +1 -1
  42. package/datetimepicker/calendar.d.ts +1 -1
  43. package/datetimepicker/calendar.scss +3 -0
  44. package/datetimepicker/clock.d.ts +1 -1
  45. package/datetimepicker/datetimepicker-input.d.ts +1 -1
  46. package/datetimepicker/datetimepicker-toggle.d.ts +2 -2
  47. package/datetimepicker/datetimepicker.d.ts +2 -2
  48. package/datetimepicker/month-view.d.ts +1 -1
  49. package/datetimepicker/multi-year-view.d.ts +1 -1
  50. package/datetimepicker/time.d.ts +2 -2
  51. package/datetimepicker/time.scss +1 -1
  52. package/datetimepicker/year-view.d.ts +1 -1
  53. package/dialog/dialog-container.d.ts +12 -0
  54. package/dialog/dialog-container.scss +48 -0
  55. package/dialog/{dialog.module.d.ts → dialog-module.d.ts} +2 -2
  56. package/dialog/public-api.d.ts +2 -2
  57. package/drawer/_drawer-theme.import.scss +1 -1
  58. package/drawer/_drawer-theme.scss +2 -2
  59. package/drawer/drawer-container.d.ts +1 -1
  60. package/esm2020/alert/alert-module.mjs +18 -0
  61. package/esm2020/alert/alert.mjs +52 -0
  62. package/esm2020/alert/public-api.mjs +3 -3
  63. package/esm2020/button/button-loading.mjs +76 -0
  64. package/esm2020/button/button-module.mjs +20 -0
  65. package/esm2020/button/public-api.mjs +3 -3
  66. package/esm2020/checkbox-group/{checkbox-group.module.mjs → checkbox-group-module.mjs} +8 -8
  67. package/esm2020/checkbox-group/checkbox-group.mjs +234 -0
  68. package/esm2020/checkbox-group/interfaces.mjs +2 -0
  69. package/esm2020/checkbox-group/public-api.mjs +4 -4
  70. package/esm2020/colorpicker/colorpicker-input.mjs +3 -3
  71. package/esm2020/colorpicker/colorpicker-module.mjs +4 -4
  72. package/esm2020/colorpicker/colorpicker-toggle.mjs +6 -6
  73. package/esm2020/colorpicker/colorpicker.mjs +6 -6
  74. package/esm2020/column-resize/column-resize-directives/column-resize-flex.mjs +3 -3
  75. package/esm2020/column-resize/column-resize-directives/column-resize.mjs +3 -3
  76. package/esm2020/column-resize/column-resize-module.mjs +4 -4
  77. package/esm2020/column-resize/column-resize-notifier.mjs +7 -7
  78. package/esm2020/column-resize/column-resize.mjs +3 -3
  79. package/esm2020/column-resize/column-size-store.mjs +3 -3
  80. package/esm2020/column-resize/event-dispatcher.mjs +3 -3
  81. package/esm2020/column-resize/overlay-handle.mjs +3 -3
  82. package/esm2020/column-resize/resizable.mjs +3 -3
  83. package/esm2020/column-resize/resize-strategy.mjs +9 -9
  84. package/esm2020/core/datetime/datetime.module.mjs +8 -8
  85. package/esm2020/core/datetime/native-datetime-adapter.mjs +3 -3
  86. package/esm2020/core/pipes/pipes.module.mjs +4 -4
  87. package/esm2020/core/pipes/to-observable.pipe.mjs +3 -3
  88. package/esm2020/datetimepicker/calendar-body.mjs +3 -3
  89. package/esm2020/datetimepicker/calendar.mjs +5 -5
  90. package/esm2020/datetimepicker/clock.mjs +4 -4
  91. package/esm2020/datetimepicker/datetimepicker-input.mjs +3 -3
  92. package/esm2020/datetimepicker/datetimepicker-intl.mjs +3 -3
  93. package/esm2020/datetimepicker/datetimepicker-module.mjs +4 -4
  94. package/esm2020/datetimepicker/datetimepicker-toggle.mjs +6 -6
  95. package/esm2020/datetimepicker/datetimepicker.mjs +6 -6
  96. package/esm2020/datetimepicker/month-view.mjs +3 -3
  97. package/esm2020/datetimepicker/multi-year-view.mjs +3 -3
  98. package/esm2020/datetimepicker/time.mjs +8 -8
  99. package/esm2020/datetimepicker/year-view.mjs +3 -3
  100. package/esm2020/dialog/dialog-container.mjs +35 -0
  101. package/esm2020/dialog/{dialog.module.mjs → dialog-module.mjs} +8 -8
  102. package/esm2020/dialog/dialog.mjs +7 -7
  103. package/esm2020/dialog/public-api.mjs +3 -3
  104. package/esm2020/drawer/drawer-container.mjs +3 -3
  105. package/esm2020/drawer/drawer-module.mjs +4 -4
  106. package/esm2020/drawer/drawer.mjs +4 -4
  107. package/esm2020/grid/cell.mjs +130 -0
  108. package/esm2020/grid/column-menu.mjs +112 -0
  109. package/esm2020/grid/column-resize/column-resize-directives/column-resize-flex.mjs +3 -3
  110. package/esm2020/grid/column-resize/column-resize-directives/column-resize.mjs +3 -3
  111. package/esm2020/grid/column-resize/column-resize-module.mjs +8 -8
  112. package/esm2020/grid/column-resize/overlay-handle.mjs +3 -3
  113. package/esm2020/grid/column-resize/resizable-directives/resizable.mjs +3 -3
  114. package/esm2020/grid/column-resize/resize-strategy.mjs +3 -3
  115. package/esm2020/grid/expansion-toggle.mjs +64 -0
  116. package/esm2020/grid/grid-module.mjs +115 -0
  117. package/esm2020/grid/grid-utils.mjs +44 -0
  118. package/esm2020/grid/grid.mjs +619 -0
  119. package/esm2020/grid/interfaces.mjs +2 -0
  120. package/esm2020/grid/public-api.mjs +8 -8
  121. package/esm2020/loader/loader-module.mjs +20 -0
  122. package/esm2020/loader/loader.mjs +69 -0
  123. package/esm2020/loader/public-api.mjs +3 -3
  124. package/esm2020/popover/popover-content.mjs +6 -6
  125. package/esm2020/popover/popover-module.mjs +4 -4
  126. package/esm2020/popover/popover-target.mjs +3 -3
  127. package/esm2020/popover/popover-trigger.mjs +3 -3
  128. package/esm2020/popover/popover.mjs +3 -3
  129. package/esm2020/progress/progress-module.mjs +18 -0
  130. package/esm2020/progress/progress.mjs +55 -0
  131. package/esm2020/progress/public-api.mjs +3 -3
  132. package/esm2020/select/option.mjs +57 -0
  133. package/esm2020/select/public-api.mjs +5 -5
  134. package/esm2020/select/select-module.mjs +74 -0
  135. package/esm2020/select/select.mjs +550 -0
  136. package/esm2020/select/templates.mjs +124 -0
  137. package/esm2020/slider/slider-module.mjs +4 -4
  138. package/esm2020/slider/slider.mjs +4 -4
  139. package/esm2020/split/interfaces.mjs +2 -0
  140. package/esm2020/split/public-api.mjs +5 -5
  141. package/esm2020/split/split-module.mjs +19 -0
  142. package/esm2020/split/split-pane.mjs +149 -0
  143. package/esm2020/split/split.mjs +619 -0
  144. package/esm2020/split/utils.mjs +4 -4
  145. package/esm2020/tooltip/tooltip-module.mjs +4 -4
  146. package/esm2020/tooltip/tooltip.mjs +6 -6
  147. package/fesm2015/mtxAlert.mjs +12 -11
  148. package/fesm2015/mtxAlert.mjs.map +1 -1
  149. package/fesm2015/mtxButton.mjs +31 -31
  150. package/fesm2015/mtxButton.mjs.map +1 -1
  151. package/fesm2015/mtxCheckboxGroup.mjs +16 -15
  152. package/fesm2015/mtxCheckboxGroup.mjs.map +1 -1
  153. package/fesm2015/mtxColorpicker.mjs +20 -19
  154. package/fesm2015/mtxColorpicker.mjs.map +1 -1
  155. package/fesm2015/mtxColumnResize.mjs +41 -40
  156. package/fesm2015/mtxColumnResize.mjs.map +1 -1
  157. package/fesm2015/mtxCore.mjs +19 -18
  158. package/fesm2015/mtxDatetimepicker.mjs +50 -49
  159. package/fesm2015/mtxDatetimepicker.mjs.map +1 -1
  160. package/fesm2015/mtxDialog.mjs +20 -17
  161. package/fesm2015/mtxDialog.mjs.map +1 -1
  162. package/fesm2015/mtxDrawer.mjs +11 -10
  163. package/fesm2015/mtxDrawer.mjs.map +1 -1
  164. package/fesm2015/mtxGrid.mjs +90 -90
  165. package/fesm2015/mtxGrid.mjs.map +1 -1
  166. package/fesm2015/mtxLoader.mjs +13 -12
  167. package/fesm2015/mtxLoader.mjs.map +1 -1
  168. package/fesm2015/mtxPopover.mjs +20 -19
  169. package/fesm2015/mtxProgress.mjs +12 -11
  170. package/fesm2015/mtxProgress.mjs.map +1 -1
  171. package/fesm2015/mtxSelect.mjs +122 -121
  172. package/fesm2015/mtxSelect.mjs.map +1 -1
  173. package/fesm2015/mtxSlider.mjs +9 -8
  174. package/fesm2015/mtxSlider.mjs.map +1 -1
  175. package/fesm2015/mtxSplit.mjs +19 -18
  176. package/fesm2015/mtxSplit.mjs.map +1 -1
  177. package/fesm2015/mtxTooltip.mjs +11 -10
  178. package/fesm2015/ng-matero-extensions.mjs +1 -0
  179. package/fesm2020/mtxAlert.mjs +12 -11
  180. package/fesm2020/mtxAlert.mjs.map +1 -1
  181. package/fesm2020/mtxButton.mjs +31 -31
  182. package/fesm2020/mtxButton.mjs.map +1 -1
  183. package/fesm2020/mtxCheckboxGroup.mjs +16 -15
  184. package/fesm2020/mtxCheckboxGroup.mjs.map +1 -1
  185. package/fesm2020/mtxColorpicker.mjs +20 -19
  186. package/fesm2020/mtxColorpicker.mjs.map +1 -1
  187. package/fesm2020/mtxColumnResize.mjs +41 -40
  188. package/fesm2020/mtxColumnResize.mjs.map +1 -1
  189. package/fesm2020/mtxCore.mjs +19 -18
  190. package/fesm2020/mtxDatetimepicker.mjs +50 -49
  191. package/fesm2020/mtxDatetimepicker.mjs.map +1 -1
  192. package/fesm2020/mtxDialog.mjs +20 -17
  193. package/fesm2020/mtxDialog.mjs.map +1 -1
  194. package/fesm2020/mtxDrawer.mjs +11 -10
  195. package/fesm2020/mtxDrawer.mjs.map +1 -1
  196. package/fesm2020/mtxGrid.mjs +90 -90
  197. package/fesm2020/mtxGrid.mjs.map +1 -1
  198. package/fesm2020/mtxLoader.mjs +13 -12
  199. package/fesm2020/mtxLoader.mjs.map +1 -1
  200. package/fesm2020/mtxPopover.mjs +20 -19
  201. package/fesm2020/mtxProgress.mjs +12 -11
  202. package/fesm2020/mtxProgress.mjs.map +1 -1
  203. package/fesm2020/mtxSelect.mjs +122 -121
  204. package/fesm2020/mtxSelect.mjs.map +1 -1
  205. package/fesm2020/mtxSlider.mjs +9 -8
  206. package/fesm2020/mtxSlider.mjs.map +1 -1
  207. package/fesm2020/mtxSplit.mjs +19 -18
  208. package/fesm2020/mtxSplit.mjs.map +1 -1
  209. package/fesm2020/mtxTooltip.mjs +11 -10
  210. package/fesm2020/ng-matero-extensions.mjs +1 -0
  211. package/grid/_grid-theme.import.scss +1 -1
  212. package/grid/_grid-theme.scss +16 -16
  213. package/grid/{cell.component.d.ts → cell.d.ts} +8 -8
  214. package/grid/{cell.component.scss → cell.scss} +0 -0
  215. package/grid/{column-menu.component.d.ts → column-menu.d.ts} +4 -4
  216. package/grid/{column-menu.component.scss → column-menu.scss} +6 -10
  217. package/grid/column-resize/_column-resize.scss +9 -9
  218. package/grid/column-resize/column-resize-directives/column-resize-flex.d.ts +1 -1
  219. package/grid/column-resize/column-resize-directives/column-resize.d.ts +1 -1
  220. package/grid/column-resize/overlay-handle.d.ts +1 -1
  221. package/grid/column-resize/resizable-directives/resizable.d.ts +1 -1
  222. package/grid/{expansion-toggle.directive.d.ts → expansion-toggle.d.ts} +4 -4
  223. package/grid/{grid.module.d.ts → grid-module.d.ts} +5 -5
  224. package/grid/{grid.service.d.ts → grid-utils.d.ts} +4 -4
  225. package/grid/{grid.component.d.ts → grid.d.ts} +18 -17
  226. package/grid/{grid.component.scss → grid.scss} +17 -29
  227. package/grid/{grid.interface.d.ts → interfaces.d.ts} +0 -6
  228. package/grid/public-api.d.ts +7 -7
  229. package/loader/_loader-theme.import.scss +1 -1
  230. package/loader/_loader-theme.scss +2 -2
  231. package/loader/{loader.module.d.ts → loader-module.d.ts} +2 -2
  232. package/loader/{loader.component.d.ts → loader.d.ts} +3 -3
  233. package/loader/{loader.component.scss → loader.scss} +2 -2
  234. package/loader/public-api.d.ts +2 -2
  235. package/package.json +8 -24
  236. package/popover/_popover-theme.import.scss +1 -1
  237. package/popover/_popover-theme.scss +2 -2
  238. package/popover/popover-content.d.ts +2 -2
  239. package/popover/popover-target.d.ts +1 -1
  240. package/popover/popover-trigger.d.ts +1 -1
  241. package/popover/popover.d.ts +1 -1
  242. package/progress/_progress-theme.import.scss +1 -1
  243. package/progress/_progress-theme.scss +2 -2
  244. package/progress/{progress.module.d.ts → progress-module.d.ts} +2 -2
  245. package/progress/{progress.component.d.ts → progress.d.ts} +3 -3
  246. package/progress/{progress.component.scss → progress.scss} +0 -0
  247. package/progress/public-api.d.ts +2 -2
  248. package/select/_select-density.scss +68 -0
  249. package/select/_select-theme.import.scss +2 -1
  250. package/select/_select-theme.scss +6 -2
  251. package/select/{option.component.d.ts → option.d.ts} +3 -3
  252. package/select/public-api.d.ts +4 -4
  253. package/select/select-module.d.ts +12 -0
  254. package/select/{select.component.d.ts → select.d.ts} +5 -5
  255. package/select/{select.component.scss → select.scss} +14 -22
  256. package/select/{templates.directive.d.ts → templates.d.ts} +33 -33
  257. package/slider/_slider-theme.import.scss +1 -1
  258. package/slider/_slider-theme.scss +3 -4
  259. package/slider/slider.d.ts +1 -1
  260. package/slider/slider.scss +3 -3
  261. package/split/_split-theme.import.scss +1 -1
  262. package/split/_split-theme.scss +2 -2
  263. package/split/{interface.d.ts → interfaces.d.ts} +2 -2
  264. package/split/public-api.d.ts +4 -4
  265. package/split/{split.module.d.ts → split-module.d.ts} +3 -3
  266. package/split/{split-pane.directive.d.ts → split-pane.d.ts} +5 -5
  267. package/split/{split.component.d.ts → split.d.ts} +11 -11
  268. package/split/{split.component.scss → split.scss} +0 -0
  269. package/split/utils.d.ts +4 -1
  270. package/tooltip/_tooltip-theme.import.scss +1 -1
  271. package/tooltip/_tooltip-theme.scss +3 -4
  272. package/tooltip/tooltip.d.ts +2 -2
  273. package/_all-color.scss +0 -47
  274. package/_all-theme.scss +0 -47
  275. package/button/button-loading.directive.d.ts +0 -26
  276. package/checkbox-group/checkbox-group.component.scss +0 -12
  277. package/core/density/private/_compatibility.scss +0 -74
  278. package/dialog/dialog.component.d.ts +0 -12
  279. package/dialog/dialog.component.scss +0 -27
  280. package/esm2020/alert/alert.component.mjs +0 -52
  281. package/esm2020/alert/alert.module.mjs +0 -18
  282. package/esm2020/button/button-loading.directive.mjs +0 -77
  283. package/esm2020/button/button.module.mjs +0 -20
  284. package/esm2020/checkbox-group/checkbox-group.component.mjs +0 -234
  285. package/esm2020/checkbox-group/checkbox-group.interface.mjs +0 -2
  286. package/esm2020/dialog/dialog.component.mjs +0 -33
  287. package/esm2020/form-group/form-group.component.mjs +0 -37
  288. package/esm2020/form-group/form-group.module.mjs +0 -18
  289. package/esm2020/form-group/mtxFormGroup.mjs +0 -5
  290. package/esm2020/form-group/public-api.mjs +0 -3
  291. package/esm2020/grid/cell.component.mjs +0 -130
  292. package/esm2020/grid/column-menu.component.mjs +0 -112
  293. package/esm2020/grid/expansion-toggle.directive.mjs +0 -64
  294. package/esm2020/grid/grid.component.mjs +0 -619
  295. package/esm2020/grid/grid.interface.mjs +0 -2
  296. package/esm2020/grid/grid.module.mjs +0 -115
  297. package/esm2020/grid/grid.service.mjs +0 -44
  298. package/esm2020/loader/loader.component.mjs +0 -69
  299. package/esm2020/loader/loader.module.mjs +0 -20
  300. package/esm2020/progress/progress.component.mjs +0 -55
  301. package/esm2020/progress/progress.module.mjs +0 -18
  302. package/esm2020/select/option.component.mjs +0 -57
  303. package/esm2020/select/select.component.mjs +0 -549
  304. package/esm2020/select/select.module.mjs +0 -74
  305. package/esm2020/select/templates.directive.mjs +0 -124
  306. package/esm2020/split/interface.mjs +0 -2
  307. package/esm2020/split/split-pane.directive.mjs +0 -149
  308. package/esm2020/split/split.component.mjs +0 -619
  309. package/esm2020/split/split.module.mjs +0 -19
  310. package/esm2020/text3d/mtxText3d.mjs +0 -5
  311. package/esm2020/text3d/public-api.mjs +0 -3
  312. package/esm2020/text3d/text3d.component.mjs +0 -45
  313. package/esm2020/text3d/text3d.module.mjs +0 -18
  314. package/fesm2015/mtxFormGroup.mjs +0 -59
  315. package/fesm2015/mtxFormGroup.mjs.map +0 -1
  316. package/fesm2015/mtxText3d.mjs +0 -67
  317. package/fesm2015/mtxText3d.mjs.map +0 -1
  318. package/fesm2020/mtxFormGroup.mjs +0 -59
  319. package/fesm2020/mtxFormGroup.mjs.map +0 -1
  320. package/fesm2020/mtxText3d.mjs +0 -67
  321. package/fesm2020/mtxText3d.mjs.map +0 -1
  322. package/form-group/_form-group-theme.import.scss +0 -2
  323. package/form-group/_form-group-theme.scss +0 -95
  324. package/form-group/form-group.component.d.ts +0 -15
  325. package/form-group/form-group.component.scss +0 -103
  326. package/form-group/form-group.module.d.ts +0 -8
  327. package/form-group/index.d.ts +0 -5
  328. package/form-group/public-api.d.ts +0 -2
  329. package/select/select.module.d.ts +0 -12
  330. package/text3d/_text3d-theme.import.scss +0 -2
  331. package/text3d/_text3d-theme.scss +0 -48
  332. package/text3d/index.d.ts +0 -5
  333. package/text3d/public-api.d.ts +0 -2
  334. package/text3d/text3d.component.d.ts +0 -14
  335. package/text3d/text3d.component.scss +0 -21
  336. package/text3d/text3d.module.d.ts +0 -8
@@ -80,7 +80,7 @@ export function getGutterSideAbsorptionCapacity(unit, sideAreas, pixels, allArea
80
80
  return acc;
81
81
  }, { remain: pixels, list: [] });
82
82
  }
83
- function getAreaAbsorptionCapacity(unit, areaSnapshot, pixels, allAreasSizePixel) {
83
+ export function getAreaAbsorptionCapacity(unit, areaSnapshot, pixels, allAreasSizePixel) {
84
84
  // No pain no gain
85
85
  if (pixels === 0) {
86
86
  return {
@@ -106,7 +106,7 @@ function getAreaAbsorptionCapacity(unit, areaSnapshot, pixels, allAreasSizePixel
106
106
  return getAreaAbsorptionCapacityPixel(areaSnapshot, pixels, allAreasSizePixel);
107
107
  }
108
108
  }
109
- function getAreaAbsorptionCapacityPercent(areaSnapshot, pixels, allAreasSizePixel) {
109
+ export function getAreaAbsorptionCapacityPercent(areaSnapshot, pixels, allAreasSizePixel) {
110
110
  const tempPixelSize = areaSnapshot.sizePixelAtStart + pixels;
111
111
  const tempPercentSize = (tempPixelSize / allAreasSizePixel) * 100;
112
112
  // ENLARGE AREA
@@ -160,7 +160,7 @@ function getAreaAbsorptionCapacityPercent(areaSnapshot, pixels, allAreasSizePixe
160
160
  };
161
161
  }
162
162
  }
163
- function getAreaAbsorptionCapacityPixel(areaSnapshot, pixels, containerSizePixel) {
163
+ export function getAreaAbsorptionCapacityPixel(areaSnapshot, pixels, containerSizePixel) {
164
164
  const tempPixelSize = areaSnapshot.sizePixelAtStart + pixels;
165
165
  // ENLARGE AREA
166
166
  if (pixels > 0) {
@@ -219,4 +219,4 @@ export function updateAreaSize(unit, item) {
219
219
  }
220
220
  }
221
221
  }
222
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9leHRlbnNpb25zL3NwbGl0L3V0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQVVBLE1BQU0sVUFBVSxpQkFBaUIsQ0FBQyxLQUE4QjtJQUM5RCxhQUFhO0lBQ2IsSUFDRyxLQUFvQixDQUFDLGNBQWMsS0FBSyxTQUFTO1FBQ2pELEtBQW9CLENBQUMsY0FBYyxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQy9DO1FBQ0EsT0FBTztZQUNMLENBQUMsRUFBRyxLQUFvQixDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPO1lBQ2xELENBQUMsRUFBRyxLQUFvQixDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPO1NBQ25ELENBQUM7S0FDSDtJQUNELGFBQWE7U0FDUixJQUNGLEtBQW9CLENBQUMsT0FBTyxLQUFLLFNBQVM7UUFDMUMsS0FBb0IsQ0FBQyxPQUFPLEtBQUssU0FBUyxFQUMzQztRQUNBLE9BQU87WUFDTCxDQUFDLEVBQUcsS0FBb0IsQ0FBQyxPQUFPO1lBQ2hDLENBQUMsRUFBRyxLQUFvQixDQUFDLE9BQU87U0FDakMsQ0FBQztLQUNIO0lBQ0QsT0FBTyxJQUFJLENBQUM7QUFDZCxDQUFDO0FBRUQsTUFBTSxVQUFVLG1CQUFtQixDQUNqQyxLQUFpQixFQUNqQixTQUFvQztJQUVwQyxNQUFNLElBQUksR0FBSSxLQUFLLENBQUMsYUFBNkIsQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO0lBRTFFLE9BQU8sU0FBUyxLQUFLLFlBQVksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQztBQUMvRCxDQUFDO0FBRUQsTUFBTSxVQUFVLGVBQWUsQ0FBQyxDQUFNO0lBQ3BDLE9BQU8sT0FBTyxDQUFDLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxD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LENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLHNCQUFzQixDQUFDO0tBQzNEO1NBQU0sSUFBSSxJQUFJLEtBQUssT0FBTyxFQUFFO1FBQzNCLGdEQUFnRDtRQUNoRCxJQUFJLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLElBQUksS0FBSyxJQUFJLEVBQUU7WUFDeEMsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQztTQUNyRjtLQUNGO0FBQ0gsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEVsZW1lbnRSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHtcbiAgTXR4U3BsaXRBcmVhLFxuICBNdHhTcGxpdFBvaW50LFxuICBNdHhTcGxpdEFyZWFTbmFwc2hvdCxcbiAgTXR4U3BsaXRTaWRlQWJzb3JwdGlvbkNhcGFjaXR5LFxuICBNdHhTcGxpdEFyZWFBYnNvcnB0aW9uQ2FwYWNpdHksXG59IGZyb20gJy4vaW50ZXJmYWNlJztcblxuZXhwb3J0IGZ1bmN0aW9uIGdldFBvaW50RnJvbUV2ZW50KGV2ZW50OiBNb3VzZUV2ZW50IHwgVG91Y2hFdmVudCk6IE10eFNwbGl0UG9pbnQgfCBudWxsIHtcbiAgLy8gVG91Y2hFdmVudFxuICBpZiAoXG4gICAgKGV2ZW50IGFzIFRvdWNoRXZlbnQpLmNoYW5nZWRUb3VjaGVzICE9PSB1bmRlZmluZWQgJiZcbiAgICAoZXZlbnQgYXMgVG91Y2hFdmVudCkuY2hhbmdlZFRvdWNoZXMubGVuZ3RoID4gMFxuICApIHtcbiAgICByZXR1cm4ge1xuICAgICAgeDogKGV2ZW50IGFzIFRvdWNoRXZlbnQpLmNoYW5nZWRUb3VjaGVzWzBdLmNsaWVudFgsXG4gICAgICB5OiAoZXZlbnQgYXMgVG91Y2hFdmVudCkuY2hhbmdlZFRvdWNoZXNbMF0uY2xpZW50WSxcbiAgICB9O1xuICB9XG4gIC8vIE1vdXNlRXZlbnRcbiAgZWxzZSBpZiAoXG4gICAgKGV2ZW50IGFzIE1vdXNlRXZlbnQpLmNsaWVudFggIT09IHVuZGVmaW5lZCAmJlxuICAgIChldmVudCBhcyBNb3VzZUV2ZW50KS5jbGllbnRZICE9PSB1bmRlZmluZWRcbiAgKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIHg6IChldmVudCBhcyBNb3VzZUV2ZW50KS5jbGllbnRYLFxuICAgICAgeTogKGV2ZW50IGFzIE1vdXNlRXZlbnQpLmNsaWVudFksXG4gICAgfTtcbiAgfVxuICByZXR1cm4gbnVsbDtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldEVsZW1lbnRQaXhlbFNpemUoXG4gIGVsUmVmOiBFbGVtZW50UmVmLFxuICBkaXJlY3Rpb246ICdob3Jpem9udGFsJyB8ICd2ZXJ0aWNhbCdcbik6IG51bWJlciB7XG4gIGNvbnN0IHJlY3QgPSAoZWxSZWYubmF0aXZlRWxlbWVudCBhcyBIVE1MRWxlbWVudCkuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG5cbiAgcmV0dXJuIGRpcmVjdGlvbiA9PT0gJ2hvcml6b250YWwnID8gcmVjdC53aWR0aCA6IHJlY3QuaGVpZ2h0O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0SW5wdXRCb29sZWFuKHY6IGFueSk6IGJvb2xlYW4ge1xuICByZXR1cm4gdHlwZW9mIHYgPT09ICdib29sZWFuJyA/IHYgOiB2ID09PSAnZmFsc2UnID8gZmFsc2UgOiB0cnVlO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0SW5wdXRQb3NpdGl2ZU51bWJlcjxUPih2OiBhbnksIGRlZmF1bHRWYWx1ZTogVCk6IG51bWJlciB8IFQge1xuICBpZiAodiA9PT0gbnVsbCB8fCB2ID09PSB1bmRlZmluZWQpIHtcbiAgICByZXR1cm4gZGVmYXVsdFZhbHVlO1xuICB9XG5cbiAgdiA9IE51bWJlcih2KTtcbiAgcmV0dXJuICFpc05hTih2KSAmJiB2ID49IDAgPyB2IDogZGVmYXVsdFZhbHVlO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaXNVc2VyU2l6ZXNWYWxpZChcbiAgdW5pdDogJ3BlcmNlbnQnIHwgJ3BpeGVsJyxcbiAgc2l6ZXM6IEFycmF5PG51bWJlcj5cbik6IGJvb2xlYW4gfCBudW1iZXIgfCB2b2lkIHtcbiAgLy8gQWxsIHNpemVzIGhhdmUgdG8gYmUgbm90IG51bGwgYW5kIHRvdGFsIHNob3VsZCBiZSAxMDBcbiAgaWYgKHVuaXQgPT09ICdwZXJjZW50Jykge1xuICAgIGNvbnN0IHRvdGFsID0gc2l6ZXMucmVkdWNlKChfdG90YWwsIHMpID0+IChzICE9PSBudWxsID8gX3RvdGFsICsgcyA6IF90b3RhbCksIDApO1xuICAgIHJldHVybiBzaXplcy5ldmVyeShzID0+IHMgIT09IG51bGwpICYmIHRvdGFsICYmIHRvdGFsID4gOTkuOSAmJiB0b3RhbCA8IDEwMC4xO1xuICB9XG5cbiAgLy8gQSBzaXplIGF0IG51bGwgaXMgbWFuZGF0b3J5IGJ1dCBvbmx5IG9uZS5cbiAgaWYgKHVuaXQgPT09ICdwaXhlbCcpIHtcbiAgICByZXR1cm4gc2l6ZXMuZmlsdGVyKHMgPT4gcyA9PT0gbnVsbCkubGVuZ3RoID09PSAxO1xuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRBcmVhTWluU2l6ZShhOiBNdHhTcGxpdEFyZWEpOiBudWxsIHwgbnVtYmVyIHtcbiAgaWYgKGEuc2l6ZSA9PT0gbnVsbCkge1xuICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgaWYgKGEuY29tcG9uZW50LmxvY2tTaXplID09PSB0cnVlKSB7XG4gICAgcmV0dXJuIGEuc2l6ZTtcbiAgfVxuXG4gIGlmIChhLmNvbXBvbmVudC5taW5TaXplID09PSBudWxsKSB7XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICBpZiAoYS5jb21wb25lbnQubWluU2l6ZSA+IGEuc2l6ZSkge1xuICAgIHJldHVybiBhLnNpemU7XG4gIH1cblxuICByZXR1cm4gYS5jb21wb25lbnQubWluU2l6ZTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldEFyZWFNYXhTaXplKGE6IE10eFNwbGl0QXJlYSk6IG51bGwgfCBudW1iZXIge1xuICBpZiAoYS5zaXplID09PSBudWxsKSB7XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICBpZiAoYS5jb21wb25lbnQubG9ja1NpemUgPT09IHRydWUpIHtcbiAgICByZXR1cm4gYS5zaXplO1xuICB9XG5cbiAgaWYgKGEuY29tcG9uZW50Lm1heFNpemUgPT09IG51bGwpIHtcbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIGlmIChhLmNvbXBvbmVudC5tYXhTaXplIDwgYS5zaXplKSB7XG4gICAgcmV0dXJuIGEuc2l6ZTtcbiAgfVxuXG4gIHJldHVybiBhLmNvbXBvbmVudC5tYXhTaXplO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0R3V0dGVyU2lkZUFic29ycHRpb25DYXBhY2l0eShcbiAgdW5pdDogJ3BlcmNlbnQnIHwgJ3BpeGVsJyxcbiAgc2lkZUFyZWFzOiBBcnJheTxNdHhTcGxpdEFyZWFTbmFwc2hvdD4sXG4gIHBpeGVsczogbnVtYmVyLFxuICBhbGxBcmVhc1NpemVQaXhlbDogbnVtYmVyXG4pOiBNdHhTcGxpdFNpZGVBYnNvcnB0aW9uQ2FwYWNpdHkge1xuICByZXR1cm4gc2lkZUFyZWFzLnJlZHVjZShcbiAgICAoYWNjOiBhbnksIGFyZWEpID0+IHtcbiAgICAgIGNvbnN0IHJlcyA9IGdldEFyZWFBYnNvcnB0aW9uQ2FwYWNpdHkodW5pdCwgYXJlYSwgYWNjLnJlbWFpbiwgYWxsQXJlYXNTaXplUGl4ZWwpO1xuICAgICAgYWNjLmxpc3QucHVzaChyZXMpO1xuICAgICAgYWNjLnJlbWFpbiA9IHJlcyAmJiByZXMucGl4ZWxSZW1haW47XG4gICAgICByZXR1cm4gYWNjO1xuICAgIH0sXG4gICAgeyByZW1haW46IHBpeGVscywgbGlzdDogW10gfVxuICApO1xufVxuXG5mdW5jdGlvbiBnZXRBcmVhQWJzb3JwdGlvbkNhcGFjaXR5KFxuICB1bml0OiAncGVyY2VudCcgfCAncGl4ZWwnLFxuICBhcmVhU25hcHNob3Q6IE10eFNwbGl0QXJlYVNuYXBzaG90LFxuICBwaXhlbHM6IG51bWJlcixcbiAgYWxsQXJlYXNTaXplUGl4ZWw6IG51bWJlclxuKTogTXR4U3BsaXRBcmVhQWJzb3JwdGlvbkNhcGFjaXR5IHwgdm9pZCB7XG4gIC8vIE5vIHBhaW4gbm8gZ2FpblxuICBpZiAocGl4ZWxzID09PSAwKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGFyZWFTbmFwc2hvdCxcbiAgICAgIHBpeGVsQWJzb3JiOiAwLFxuICAgICAgcGVyY2VudEFmdGVyQWJzb3JwdGlvbjogYXJlYVNuYXBzaG90LnNpemVQZXJjZW50QXRTdGFydCxcbiAgICAgIHBpeGVsUmVtYWluOiAwLFxuICAgIH07XG4gIH1cblxuICAvLyBBcmVhIHN0YXJ0IGF0IHplcm8gYW5kIG5lZWQgdG8gYmUgcmVkdWNlZCwgbm90IHBvc3NpYmxlXG4gIGlmIChhcmVhU25hcHNob3Quc2l6ZVBpeGVsQXRTdGFydCA9PT0gMCAmJiBwaXhlbHMgPCAwKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGFyZWFTbmFwc2hvdCxcbiAgICAgIHBpeGVsQWJzb3JiOiAwLFxuICAgICAgcGVyY2VudEFmdGVyQWJzb3JwdGlvbjogMCxcbiAgICAgIHBpeGVsUmVtYWluOiBwaXhlbHMsXG4gICAgfTtcbiAgfVxuXG4gIGlmICh1bml0ID09PSAncGVyY2VudCcpIHtcbiAgICByZXR1cm4gZ2V0QXJlYUFic29ycHRpb25DYXBhY2l0eVBlcmNlbnQoYXJlYVNuYXBzaG90LCBwaXhlbHMsIGFsbEFyZWFzU2l6ZVBpeGVsKTtcbiAgfVxuXG4gIGlmICh1bml0ID09PSAncGl4ZWwnKSB7XG4gICAgcmV0dXJuIGdldEFyZWFBYnNvcnB0aW9uQ2FwYWNpdHlQaXhlbChhcmVhU25hcHNob3QsIHBpeGVscywgYWxsQXJlYXNTaXplUGl4ZWwpO1xuICB9XG59XG5cbmZ1bmN0aW9uIGdldEFyZWFBYnNvcnB0aW9uQ2FwYWNpdHlQZXJjZW50KFxuICBhcmVhU25hcHNob3Q6IE10eFNwbGl0QXJlYVNuYXBzaG90LFxuICBwaXhlbHM6IG51bWJlcixcbiAgYWxsQXJlYXNTaXplUGl4ZWw6IG51bWJlclxuKTogTXR4U3BsaXRBcmVhQWJzb3JwdGlvbkNhcGFjaXR5IHwgdm9pZCB7XG4gIGNvbnN0IHRlbXBQaXhlbFNpemUgPSBhcmVhU25hcHNob3Quc2l6ZVBpeGVsQXRTdGFydCArIHBpeGVscztcbiAgY29uc3QgdGVtcFBlcmNlbnRTaXplID0gKHRlbXBQaXhlbFNpemUgLyBhbGxBcmVhc1NpemVQaXhlbCkgKiAxMDA7XG5cbiAgLy8gRU5MQVJHRSBBUkVBXG5cbiAgaWYgKHBpeGVscyA+IDApIHtcbiAgICAvLyBJZiBtYXhTaXplICYgbmV3U2l6ZSBiaWdnZXIgdGhhbiBpdCA+IGFic29yYiB0byBtYXggYW5kIHJldHVybiByZW1haW5pbmcgcGl4ZWxzXG4gICAgaWYgKGFyZWFTbmFwc2hvdC5hcmVhLm1heFNpemUgIT09IG51bGwgJiYgdGVtcFBlcmNlbnRTaXplID4gYXJlYVNuYXBzaG90LmFyZWEubWF4U2l6ZSkge1xuICAgICAgLy8gVXNlIGFyZWEuYXJlYS5tYXhTaXplIGFzIG5ld1BlcmNlbnRTaXplIGFuZCByZXR1cm4gY2FsY3VsYXRlIHBpeGVscyByZW1haW5pbmdcbiAgICAgIGNvbnN0IG1heFNpemVQaXhlbCA9IChhcmVhU25hcHNob3QuYXJlYS5tYXhTaXplIC8gMTAwKSAqIGFsbEFyZWFzU2l6ZVBpeGVsO1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgYXJlYVNuYXBzaG90LFxuICAgICAgICBwaXhlbEFic29yYjogbWF4U2l6ZVBpeGVsLFxuICAgICAgICBwZXJjZW50QWZ0ZXJBYnNvcnB0aW9uOiBhcmVhU25hcHNob3QuYXJlYS5tYXhTaXplLFxuICAgICAgICBwaXhlbFJlbWFpbjogYXJlYVNuYXBzaG90LnNpemVQaXhlbEF0U3RhcnQgKyBwaXhlbHMgLSBtYXhTaXplUGl4ZWwsXG4gICAgICB9O1xuICAgIH1cbiAgICByZXR1cm4ge1xuICAgICAgYXJlYVNuYXBzaG90LFxuICAgICAgcGl4ZWxBYnNvcmI6IHBpeGVscyxcbiAgICAgIHBlcmNlbnRBZnRlckFic29ycHRpb246IHRlbXBQZXJjZW50U2l6ZSA+IDEwMCA/IDEwMCA6IHRlbXBQZXJjZW50U2l6ZSxcbiAgICAgIHBpeGVsUmVtYWluOiAwLFxuICAgIH07XG4gIH1cblxuICAvLyBSRURVQ0UgQVJFQVxuICBlbHNlIGlmIChwaXhlbHMgPCAwKSB7XG4gICAgLy8gSWYgbWluU2l6ZSAmIG5ld1NpemUgc21hbGxlciB0aGFuIGl0ID4gYWJzb3JiIHRvIG1pbiBhbmQgcmV0dXJuIHJlbWFpbmluZyBwaXhlbHNcbiAgICBpZiAoYXJlYVNuYXBzaG90LmFyZWEubWluU2l6ZSAhPT0gbnVsbCAmJiB0ZW1wUGVyY2VudFNpemUgPCBhcmVhU25hcHNob3QuYXJlYS5taW5TaXplKSB7XG4gICAgICAvLyBVc2UgYXJlYS5hcmVhLm1pblNpemUgYXMgbmV3UGVyY2VudFNpemUgYW5kIHJldHVybiBjYWxjdWxhdGUgcGl4ZWxzIHJlbWFpbmluZ1xuICAgICAgY29uc3QgbWluU2l6ZVBpeGVsID0gKGFyZWFTbmFwc2hvdC5hcmVhLm1pblNpemUgLyAxMDApICogYWxsQXJlYXNTaXplUGl4ZWw7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBhcmVhU25hcHNob3QsXG4gICAgICAgIHBpeGVsQWJzb3JiOiBtaW5TaXplUGl4ZWwsXG4gICAgICAgIHBlcmNlbnRBZnRlckFic29ycHRpb246IGFyZWFTbmFwc2hvdC5hcmVhLm1pblNpemUsXG4gICAgICAgIHBpeGVsUmVtYWluOiBhcmVhU25hcHNob3Quc2l6ZVBpeGVsQXRTdGFydCArIHBpeGVscyAtIG1pblNpemVQaXhlbCxcbiAgICAgIH07XG4gICAgfVxuICAgIC8vIElmIHJlZHVjZWQgdW5kZXIgemVybyA+IHJldHVybiByZW1haW5pbmcgcGl4ZWxzXG4gICAgZWxzZSBpZiAodGVtcFBlcmNlbnRTaXplIDwgMCkge1xuICAgICAgLy8gVXNlIDAgYXMgbmV3UGVyY2VudFNpemUgYW5kIHJldHVybiBjYWxjdWxhdGUgcGl4ZWxzIHJlbWFpbmluZ1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgYXJlYVNuYXBzaG90LFxuICAgICAgICBwaXhlbEFic29yYjogLWFyZWFTbmFwc2hvdC5zaXplUGl4ZWxBdFN0YXJ0LFxuICAgICAgICBwZXJjZW50QWZ0ZXJBYnNvcnB0aW9uOiAwLFxuICAgICAgICBwaXhlbFJlbWFpbjogcGl4ZWxzICsgYXJlYVNuYXBzaG90LnNpemVQaXhlbEF0U3RhcnQsXG4gICAgICB9O1xuICAgIH1cbiAgICByZXR1cm4ge1xuICAgICAgYXJlYVNuYXBzaG90LFxuICAgICAgcGl4ZWxBYnNvcmI6IHBpeGVscyxcbiAgICAgIHBlcmNlbnRBZnRlckFic29ycHRpb246IHRlbXBQZXJjZW50U2l6ZSxcbiAgICAgIHBpeGVsUmVtYWluOiAwLFxuICAgIH07XG4gIH1cbn1cblxuZnVuY3Rpb24gZ2V0QXJlYUFic29ycHRpb25DYXBhY2l0eVBpeGVsKFxuICBhcmVhU25hcHNob3Q6IE10eFNwbGl0QXJlYVNuYXBzaG90LFxuICBwaXhlbHM6IG51bWJlcixcbiAgY29udGFpbmVyU2l6ZVBpeGVsOiBudW1iZXJcbik6IE10eFNwbGl0QXJlYUFic29ycHRpb25DYXBhY2l0eSB8IHZvaWQge1xuICBjb25zdCB0ZW1wUGl4ZWxTaXplID0gYXJlYVNuYXBzaG90LnNpemVQaXhlbEF0U3RhcnQgKyBwaXhlbHM7XG5cbiAgLy8gRU5MQVJHRSBBUkVBXG5cbiAgaWYgKHBpeGVscyA+IDApIHtcbiAgICAvLyBJZiBtYXhTaXplICYgbmV3U2l6ZSBiaWdnZXIgdGhhbiBpdCA+IGFic29yYiB0byBtYXggYW5kIHJldHVybiByZW1haW5pbmcgcGl4ZWxzXG4gICAgaWYgKGFyZWFTbmFwc2hvdC5hcmVhLm1heFNpemUgIT09IG51bGwgJiYgdGVtcFBpeGVsU2l6ZSA+IGFyZWFTbmFwc2hvdC5hcmVhLm1heFNpemUpIHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIGFyZWFTbmFwc2hvdCxcbiAgICAgICAgcGl4ZWxBYnNvcmI6IGFyZWFTbmFwc2hvdC5hcmVhLm1heFNpemUgLSBhcmVhU25hcHNob3Quc2l6ZVBpeGVsQXRTdGFydCxcbiAgICAgICAgcGVyY2VudEFmdGVyQWJzb3JwdGlvbjogLTEsXG4gICAgICAgIHBpeGVsUmVtYWluOiB0ZW1wUGl4ZWxTaXplIC0gYXJlYVNuYXBzaG90LmFyZWEubWF4U2l6ZSxcbiAgICAgIH07XG4gICAgfVxuICAgIHJldHVybiB7XG4gICAgICBhcmVhU25hcHNob3QsXG4gICAgICBwaXhlbEFic29yYjogcGl4ZWxzLFxuICAgICAgcGVyY2VudEFmdGVyQWJzb3JwdGlvbjogLTEsXG4gICAgICBwaXhlbFJlbWFpbjogMCxcbiAgICB9O1xuICB9XG5cbiAgLy8gUkVEVUNFIEFSRUFcbiAgZWxzZSBpZiAocGl4ZWxzIDwgMCkge1xuICAgIC8vIElmIG1pblNpemUgJiBuZXdTaXplIHNtYWxsZXIgdGhhbiBpdCA+IGFic29yYiB0byBtaW4gYW5kIHJldHVybiByZW1haW5pbmcgcGl4ZWxzXG4gICAgaWYgKGFyZWFTbmFwc2hvdC5hcmVhLm1pblNpemUgIT09IG51bGwgJiYgdGVtcFBpeGVsU2l6ZSA8IGFyZWFTbmFwc2hvdC5hcmVhLm1pblNpemUpIHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIGFyZWFTbmFwc2hvdCxcbiAgICAgICAgcGl4ZWxBYnNvcmI6IGFyZWFTbmFwc2hvdC5hcmVhLm1pblNpemUgKyBwaXhlbHMgLSB0ZW1wUGl4ZWxTaXplLFxuICAgICAgICBwZXJjZW50QWZ0ZXJBYnNvcnB0aW9uOiAtMSxcbiAgICAgICAgcGl4ZWxSZW1haW46IHRlbXBQaXhlbFNpemUgLSBhcmVhU25hcHNob3QuYXJlYS5taW5TaXplLFxuICAgICAgfTtcbiAgICB9XG4gICAgLy8gSWYgcmVkdWNlZCB1bmRlciB6ZXJvID4gcmV0dXJuIHJlbWFpbmluZyBwaXhlbHNcbiAgICBlbHNlIGlmICh0ZW1wUGl4ZWxTaXplIDwgMCkge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgYXJlYVNuYXBzaG90LFxuICAgICAgICBwaXhlbEFic29yYjogLWFyZWFTbmFwc2hvdC5zaXplUGl4ZWxBdFN0YXJ0LFxuICAgICAgICBwZXJjZW50QWZ0ZXJBYnNvcnB0aW9uOiAtMSxcbiAgICAgICAgcGl4ZWxSZW1haW46IHBpeGVscyArIGFyZWFTbmFwc2hvdC5zaXplUGl4ZWxBdFN0YXJ0LFxuICAgICAgfTtcbiAgICB9XG4gICAgcmV0dXJuIHtcbiAgICAgIGFyZWFTbmFwc2hvdCxcbiAgICAgIHBpeGVsQWJzb3JiOiBwaXhlbHMsXG4gICAgICBwZXJjZW50QWZ0ZXJBYnNvcnB0aW9uOiAtMSxcbiAgICAgIHBpeGVsUmVtYWluOiAwLFxuICAgIH07XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHVwZGF0ZUFyZWFTaXplKHVuaXQ6ICdwZXJjZW50JyB8ICdwaXhlbCcsIGl0ZW06IE10eFNwbGl0QXJlYUFic29ycHRpb25DYXBhY2l0eSkge1xuICBpZiAodW5pdCA9PT0gJ3BlcmNlbnQnKSB7XG4gICAgaXRlbS5hcmVhU25hcHNob3QuYXJlYS5zaXplID0gaXRlbS5wZXJjZW50QWZ0ZXJBYnNvcnB0aW9uO1xuICB9IGVsc2UgaWYgKHVuaXQgPT09ICdwaXhlbCcpIHtcbiAgICAvLyBVcGRhdGUgc2l6ZSBleGNlcHQgZm9yIHRoZSB3aWxkY2FyZCBzaXplIGFyZWFcbiAgICBpZiAoaXRlbS5hcmVhU25hcHNob3QuYXJlYS5zaXplICE9PSBudWxsKSB7XG4gICAgICBpdGVtLmFyZWFTbmFwc2hvdC5hcmVhLnNpemUgPSBpdGVtLmFyZWFTbmFwc2hvdC5zaXplUGl4ZWxBdFN0YXJ0ICsgaXRlbS5waXhlbEFic29yYjtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
222
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9leHRlbnNpb25zL3NwbGl0L3V0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQVVBLE1BQU0sVUFBVSxpQkFBaUIsQ0FBQyxLQUE4QjtJQUM5RCxhQUFhO0lBQ2IsSUFDRyxLQUFvQixDQUFDLGNBQWMsS0FBSyxTQUFTO1FBQ2pELEtBQW9CLENBQUMsY0FBYyxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQy9DO1FBQ0EsT0FBTztZQUNMLENBQUMsRUFBRyxLQUFvQixDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPO1lBQ2xELENBQUMsRUFBRyxLQUFvQixDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPO1NBQ25ELENBQUM7S0FDSDtJQUNELGFBQWE7U0FDUixJQUNGLEtBQW9CLENBQUMsT0FBTyxLQUFLLFNBQVM7UUFDMUMsS0FBb0IsQ0FBQyxPQUFPLEtBQUssU0FBUyxFQUMzQztRQUNBLE9BQU87WUFDTCxDQUFDLEVBQUcsS0FBb0IsQ0FBQyxPQUFPO1lBQ2hDLENBQUMsRUFBRyxLQUFvQixDQUFDLE9BQU87U0FDakMsQ0FBQztLQUNIO0lBQ0QsT0FBTyxJQUFJLENBQUM7QUFDZCxDQUFDO0FBRUQsTUFBTSxVQUFVLG1CQUFtQixDQUNqQyxLQUFpQixFQUNqQixTQUFvQztJQUVwQyxNQUFNLElBQUksR0FBSSxLQUFLLENBQUMsYUFBNkIsQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO0lBRTFFLE9BQU8sU0FBUyxLQUFLLFlBQVksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQztBQUMvRCxDQUFDO0FBRUQsTUFBTSxVQUFVLGVBQWUsQ0FBQyxDQUFNO0lBQ3BDLE9BQU8sT0FBTyxDQUFDLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxD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RUFBRTtRQUN0QixJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLHNCQUFzQixDQUFDO0tBQzNEO1NBQU0sSUFBSSxJQUFJLEtBQUssT0FBTyxFQUFFO1FBQzNCLGdEQUFnRDtRQUNoRCxJQUFJLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLElBQUksS0FBSyxJQUFJLEVBQUU7WUFDeEMsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQztTQUNyRjtLQUNGO0FBQ0gsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEVsZW1lbnRSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHtcbiAgTXR4U3BsaXRBcmVhLFxuICBNdHhTcGxpdFBvaW50LFxuICBNdHhTcGxpdEFyZWFTbmFwc2hvdCxcbiAgTXR4U3BsaXRTaWRlQWJzb3JwdGlvbkNhcGFjaXR5LFxuICBNdHhTcGxpdEFyZWFBYnNvcnB0aW9uQ2FwYWNpdHksXG59IGZyb20gJy4vaW50ZXJmYWNlcyc7XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRQb2ludEZyb21FdmVudChldmVudDogTW91c2VFdmVudCB8IFRvdWNoRXZlbnQpOiBNdHhTcGxpdFBvaW50IHwgbnVsbCB7XG4gIC8vIFRvdWNoRXZlbnRcbiAgaWYgKFxuICAgIChldmVudCBhcyBUb3VjaEV2ZW50KS5jaGFuZ2VkVG91Y2hlcyAhPT0gdW5kZWZpbmVkICYmXG4gICAgKGV2ZW50IGFzIFRvdWNoRXZlbnQpLmNoYW5nZWRUb3VjaGVzLmxlbmd0aCA+IDBcbiAgKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIHg6IChldmVudCBhcyBUb3VjaEV2ZW50KS5jaGFuZ2VkVG91Y2hlc1swXS5jbGllbnRYLFxuICAgICAgeTogKGV2ZW50IGFzIFRvdWNoRXZlbnQpLmNoYW5nZWRUb3VjaGVzWzBdLmNsaWVudFksXG4gICAgfTtcbiAgfVxuICAvLyBNb3VzZUV2ZW50XG4gIGVsc2UgaWYgKFxuICAgIChldmVudCBhcyBNb3VzZUV2ZW50KS5jbGllbnRYICE9PSB1bmRlZmluZWQgJiZcbiAgICAoZXZlbnQgYXMgTW91c2VFdmVudCkuY2xpZW50WSAhPT0gdW5kZWZpbmVkXG4gICkge1xuICAgIHJldHVybiB7XG4gICAgICB4OiAoZXZlbnQgYXMgTW91c2VFdmVudCkuY2xpZW50WCxcbiAgICAgIHk6IChldmVudCBhcyBNb3VzZUV2ZW50KS5jbGllbnRZLFxuICAgIH07XG4gIH1cbiAgcmV0dXJuIG51bGw7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRFbGVtZW50UGl4ZWxTaXplKFxuICBlbFJlZjogRWxlbWVudFJlZixcbiAgZGlyZWN0aW9uOiAnaG9yaXpvbnRhbCcgfCAndmVydGljYWwnXG4pOiBudW1iZXIge1xuICBjb25zdCByZWN0ID0gKGVsUmVmLm5hdGl2ZUVsZW1lbnQgYXMgSFRNTEVsZW1lbnQpLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuXG4gIHJldHVybiBkaXJlY3Rpb24gPT09ICdob3Jpem9udGFsJyA/IHJlY3Qud2lkdGggOiByZWN0LmhlaWdodDtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldElucHV0Qm9vbGVhbih2OiBhbnkpOiBib29sZWFuIHtcbiAgcmV0dXJuIHR5cGVvZiB2ID09PSAnYm9vbGVhbicgPyB2IDogdiA9PT0gJ2ZhbHNlJyA/IGZhbHNlIDogdHJ1ZTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldElucHV0UG9zaXRpdmVOdW1iZXI8VD4odjogYW55LCBkZWZhdWx0VmFsdWU6IFQpOiBudW1iZXIgfCBUIHtcbiAgaWYgKHYgPT09IG51bGwgfHwgdiA9PT0gdW5kZWZpbmVkKSB7XG4gICAgcmV0dXJuIGRlZmF1bHRWYWx1ZTtcbiAgfVxuXG4gIHYgPSBOdW1iZXIodik7XG4gIHJldHVybiAhaXNOYU4odikgJiYgdiA+PSAwID8gdiA6IGRlZmF1bHRWYWx1ZTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGlzVXNlclNpemVzVmFsaWQoXG4gIHVuaXQ6ICdwZXJjZW50JyB8ICdwaXhlbCcsXG4gIHNpemVzOiBBcnJheTxudW1iZXI+XG4pOiBib29sZWFuIHwgbnVtYmVyIHwgdm9pZCB7XG4gIC8vIEFsbCBzaXplcyBoYXZlIHRvIGJlIG5vdCBudWxsIGFuZCB0b3RhbCBzaG91bGQgYmUgMTAwXG4gIGlmICh1bml0ID09PSAncGVyY2VudCcpIHtcbiAgICBjb25zdCB0b3RhbCA9IHNpemVzLnJlZHVjZSgoX3RvdGFsLCBzKSA9PiAocyAhPT0gbnVsbCA/IF90b3RhbCArIHMgOiBfdG90YWwpLCAwKTtcbiAgICByZXR1cm4gc2l6ZXMuZXZlcnkocyA9PiBzICE9PSBudWxsKSAmJiB0b3RhbCAmJiB0b3RhbCA+IDk5LjkgJiYgdG90YWwgPCAxMDAuMTtcbiAgfVxuXG4gIC8vIEEgc2l6ZSBhdCBudWxsIGlzIG1hbmRhdG9yeSBidXQgb25seSBvbmUuXG4gIGlmICh1bml0ID09PSAncGl4ZWwnKSB7XG4gICAgcmV0dXJuIHNpemVzLmZpbHRlcihzID0+IHMgPT09IG51bGwpLmxlbmd0aCA9PT0gMTtcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0QXJlYU1pblNpemUoYTogTXR4U3BsaXRBcmVhKTogbnVsbCB8IG51bWJlciB7XG4gIGlmIChhLnNpemUgPT09IG51bGwpIHtcbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIGlmIChhLmNvbXBvbmVudC5sb2NrU2l6ZSA9PT0gdHJ1ZSkge1xuICAgIHJldHVybiBhLnNpemU7XG4gIH1cblxuICBpZiAoYS5jb21wb25lbnQubWluU2l6ZSA9PT0gbnVsbCkge1xuICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgaWYgKGEuY29tcG9uZW50Lm1pblNpemUgPiBhLnNpemUpIHtcbiAgICByZXR1cm4gYS5zaXplO1xuICB9XG5cbiAgcmV0dXJuIGEuY29tcG9uZW50Lm1pblNpemU7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRBcmVhTWF4U2l6ZShhOiBNdHhTcGxpdEFyZWEpOiBudWxsIHwgbnVtYmVyIHtcbiAgaWYgKGEuc2l6ZSA9PT0gbnVsbCkge1xuICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgaWYgKGEuY29tcG9uZW50LmxvY2tTaXplID09PSB0cnVlKSB7XG4gICAgcmV0dXJuIGEuc2l6ZTtcbiAgfVxuXG4gIGlmIChhLmNvbXBvbmVudC5tYXhTaXplID09PSBudWxsKSB7XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICBpZiAoYS5jb21wb25lbnQubWF4U2l6ZSA8IGEuc2l6ZSkge1xuICAgIHJldHVybiBhLnNpemU7XG4gIH1cblxuICByZXR1cm4gYS5jb21wb25lbnQubWF4U2l6ZTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldEd1dHRlclNpZGVBYnNvcnB0aW9uQ2FwYWNpdHkoXG4gIHVuaXQ6ICdwZXJjZW50JyB8ICdwaXhlbCcsXG4gIHNpZGVBcmVhczogQXJyYXk8TXR4U3BsaXRBcmVhU25hcHNob3Q+LFxuICBwaXhlbHM6IG51bWJlcixcbiAgYWxsQXJlYXNTaXplUGl4ZWw6IG51bWJlclxuKTogTXR4U3BsaXRTaWRlQWJzb3JwdGlvbkNhcGFjaXR5IHtcbiAgcmV0dXJuIHNpZGVBcmVhcy5yZWR1Y2UoXG4gICAgKGFjYzogYW55LCBhcmVhKSA9PiB7XG4gICAgICBjb25zdCByZXMgPSBnZXRBcmVhQWJzb3JwdGlvbkNhcGFjaXR5KHVuaXQsIGFyZWEsIGFjYy5yZW1haW4sIGFsbEFyZWFzU2l6ZVBpeGVsKTtcbiAgICAgIGFjYy5saXN0LnB1c2gocmVzKTtcbiAgICAgIGFjYy5yZW1haW4gPSByZXMgJiYgcmVzLnBpeGVsUmVtYWluO1xuICAgICAgcmV0dXJuIGFjYztcbiAgICB9LFxuICAgIHsgcmVtYWluOiBwaXhlbHMsIGxpc3Q6IFtdIH1cbiAgKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldEFyZWFBYnNvcnB0aW9uQ2FwYWNpdHkoXG4gIHVuaXQ6ICdwZXJjZW50JyB8ICdwaXhlbCcsXG4gIGFyZWFTbmFwc2hvdDogTXR4U3BsaXRBcmVhU25hcHNob3QsXG4gIHBpeGVsczogbnVtYmVyLFxuICBhbGxBcmVhc1NpemVQaXhlbDogbnVtYmVyXG4pOiBNdHhTcGxpdEFyZWFBYnNvcnB0aW9uQ2FwYWNpdHkgfCB2b2lkIHtcbiAgLy8gTm8gcGFpbiBubyBnYWluXG4gIGlmIChwaXhlbHMgPT09IDApIHtcbiAgICByZXR1cm4ge1xuICAgICAgYXJlYVNuYXBzaG90LFxuICAgICAgcGl4ZWxBYnNvcmI6IDAsXG4gICAgICBwZXJjZW50QWZ0ZXJBYnNvcnB0aW9uOiBhcmVhU25hcHNob3Quc2l6ZVBlcmNlbnRBdFN0YXJ0LFxuICAgICAgcGl4ZWxSZW1haW46IDAsXG4gICAgfTtcbiAgfVxuXG4gIC8vIEFyZWEgc3RhcnQgYXQgemVybyBhbmQgbmVlZCB0byBiZSByZWR1Y2VkLCBub3QgcG9zc2libGVcbiAgaWYgKGFyZWFTbmFwc2hvdC5zaXplUGl4ZWxBdFN0YXJ0ID09PSAwICYmIHBpeGVscyA8IDApIHtcbiAgICByZXR1cm4ge1xuICAgICAgYXJlYVNuYXBzaG90LFxuICAgICAgcGl4ZWxBYnNvcmI6IDAsXG4gICAgICBwZXJjZW50QWZ0ZXJBYnNvcnB0aW9uOiAwLFxuICAgICAgcGl4ZWxSZW1haW46IHBpeGVscyxcbiAgICB9O1xuICB9XG5cbiAgaWYgKHVuaXQgPT09ICdwZXJjZW50Jykge1xuICAgIHJldHVybiBnZXRBcmVhQWJzb3JwdGlvbkNhcGFjaXR5UGVyY2VudChhcmVhU25hcHNob3QsIHBpeGVscywgYWxsQXJlYXNTaXplUGl4ZWwpO1xuICB9XG5cbiAgaWYgKHVuaXQgPT09ICdwaXhlbCcpIHtcbiAgICByZXR1cm4gZ2V0QXJlYUFic29ycHRpb25DYXBhY2l0eVBpeGVsKGFyZWFTbmFwc2hvdCwgcGl4ZWxzLCBhbGxBcmVhc1NpemVQaXhlbCk7XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldEFyZWFBYnNvcnB0aW9uQ2FwYWNpdHlQZXJjZW50KFxuICBhcmVhU25hcHNob3Q6IE10eFNwbGl0QXJlYVNuYXBzaG90LFxuICBwaXhlbHM6IG51bWJlcixcbiAgYWxsQXJlYXNTaXplUGl4ZWw6IG51bWJlclxuKTogTXR4U3BsaXRBcmVhQWJzb3JwdGlvbkNhcGFjaXR5IHwgdm9pZCB7XG4gIGNvbnN0IHRlbXBQaXhlbFNpemUgPSBhcmVhU25hcHNob3Quc2l6ZVBpeGVsQXRTdGFydCArIHBpeGVscztcbiAgY29uc3QgdGVtcFBlcmNlbnRTaXplID0gKHRlbXBQaXhlbFNpemUgLyBhbGxBcmVhc1NpemVQaXhlbCkgKiAxMDA7XG5cbiAgLy8gRU5MQVJHRSBBUkVBXG5cbiAgaWYgKHBpeGVscyA+IDApIHtcbiAgICAvLyBJZiBtYXhTaXplICYgbmV3U2l6ZSBiaWdnZXIgdGhhbiBpdCA+IGFic29yYiB0byBtYXggYW5kIHJldHVybiByZW1haW5pbmcgcGl4ZWxzXG4gICAgaWYgKGFyZWFTbmFwc2hvdC5hcmVhLm1heFNpemUgIT09IG51bGwgJiYgdGVtcFBlcmNlbnRTaXplID4gYXJlYVNuYXBzaG90LmFyZWEubWF4U2l6ZSkge1xuICAgICAgLy8gVXNlIGFyZWEuYXJlYS5tYXhTaXplIGFzIG5ld1BlcmNlbnRTaXplIGFuZCByZXR1cm4gY2FsY3VsYXRlIHBpeGVscyByZW1haW5pbmdcbiAgICAgIGNvbnN0IG1heFNpemVQaXhlbCA9IChhcmVhU25hcHNob3QuYXJlYS5tYXhTaXplIC8gMTAwKSAqIGFsbEFyZWFzU2l6ZVBpeGVsO1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgYXJlYVNuYXBzaG90LFxuICAgICAgICBwaXhlbEFic29yYjogbWF4U2l6ZVBpeGVsLFxuICAgICAgICBwZXJjZW50QWZ0ZXJBYnNvcnB0aW9uOiBhcmVhU25hcHNob3QuYXJlYS5tYXhTaXplLFxuICAgICAgICBwaXhlbFJlbWFpbjogYXJlYVNuYXBzaG90LnNpemVQaXhlbEF0U3RhcnQgKyBwaXhlbHMgLSBtYXhTaXplUGl4ZWwsXG4gICAgICB9O1xuICAgIH1cbiAgICByZXR1cm4ge1xuICAgICAgYXJlYVNuYXBzaG90LFxuICAgICAgcGl4ZWxBYnNvcmI6IHBpeGVscyxcbiAgICAgIHBlcmNlbnRBZnRlckFic29ycHRpb246IHRlbXBQZXJjZW50U2l6ZSA+IDEwMCA/IDEwMCA6IHRlbXBQZXJjZW50U2l6ZSxcbiAgICAgIHBpeGVsUmVtYWluOiAwLFxuICAgIH07XG4gIH1cblxuICAvLyBSRURVQ0UgQVJFQVxuICBlbHNlIGlmIChwaXhlbHMgPCAwKSB7XG4gICAgLy8gSWYgbWluU2l6ZSAmIG5ld1NpemUgc21hbGxlciB0aGFuIGl0ID4gYWJzb3JiIHRvIG1pbiBhbmQgcmV0dXJuIHJlbWFpbmluZyBwaXhlbHNcbiAgICBpZiAoYXJlYVNuYXBzaG90LmFyZWEubWluU2l6ZSAhPT0gbnVsbCAmJiB0ZW1wUGVyY2VudFNpemUgPCBhcmVhU25hcHNob3QuYXJlYS5taW5TaXplKSB7XG4gICAgICAvLyBVc2UgYXJlYS5hcmVhLm1pblNpemUgYXMgbmV3UGVyY2VudFNpemUgYW5kIHJldHVybiBjYWxjdWxhdGUgcGl4ZWxzIHJlbWFpbmluZ1xuICAgICAgY29uc3QgbWluU2l6ZVBpeGVsID0gKGFyZWFTbmFwc2hvdC5hcmVhLm1pblNpemUgLyAxMDApICogYWxsQXJlYXNTaXplUGl4ZWw7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBhcmVhU25hcHNob3QsXG4gICAgICAgIHBpeGVsQWJzb3JiOiBtaW5TaXplUGl4ZWwsXG4gICAgICAgIHBlcmNlbnRBZnRlckFic29ycHRpb246IGFyZWFTbmFwc2hvdC5hcmVhLm1pblNpemUsXG4gICAgICAgIHBpeGVsUmVtYWluOiBhcmVhU25hcHNob3Quc2l6ZVBpeGVsQXRTdGFydCArIHBpeGVscyAtIG1pblNpemVQaXhlbCxcbiAgICAgIH07XG4gICAgfVxuICAgIC8vIElmIHJlZHVjZWQgdW5kZXIgemVybyA+IHJldHVybiByZW1haW5pbmcgcGl4ZWxzXG4gICAgZWxzZSBpZiAodGVtcFBlcmNlbnRTaXplIDwgMCkge1xuICAgICAgLy8gVXNlIDAgYXMgbmV3UGVyY2VudFNpemUgYW5kIHJldHVybiBjYWxjdWxhdGUgcGl4ZWxzIHJlbWFpbmluZ1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgYXJlYVNuYXBzaG90LFxuICAgICAgICBwaXhlbEFic29yYjogLWFyZWFTbmFwc2hvdC5zaXplUGl4ZWxBdFN0YXJ0LFxuICAgICAgICBwZXJjZW50QWZ0ZXJBYnNvcnB0aW9uOiAwLFxuICAgICAgICBwaXhlbFJlbWFpbjogcGl4ZWxzICsgYXJlYVNuYXBzaG90LnNpemVQaXhlbEF0U3RhcnQsXG4gICAgICB9O1xuICAgIH1cbiAgICByZXR1cm4ge1xuICAgICAgYXJlYVNuYXBzaG90LFxuICAgICAgcGl4ZWxBYnNvcmI6IHBpeGVscyxcbiAgICAgIHBlcmNlbnRBZnRlckFic29ycHRpb246IHRlbXBQZXJjZW50U2l6ZSxcbiAgICAgIHBpeGVsUmVtYWluOiAwLFxuICAgIH07XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldEFyZWFBYnNvcnB0aW9uQ2FwYWNpdHlQaXhlbChcbiAgYXJlYVNuYXBzaG90OiBNdHhTcGxpdEFyZWFTbmFwc2hvdCxcbiAgcGl4ZWxzOiBudW1iZXIsXG4gIGNvbnRhaW5lclNpemVQaXhlbDogbnVtYmVyXG4pOiBNdHhTcGxpdEFyZWFBYnNvcnB0aW9uQ2FwYWNpdHkgfCB2b2lkIHtcbiAgY29uc3QgdGVtcFBpeGVsU2l6ZSA9IGFyZWFTbmFwc2hvdC5zaXplUGl4ZWxBdFN0YXJ0ICsgcGl4ZWxzO1xuXG4gIC8vIEVOTEFSR0UgQVJFQVxuXG4gIGlmIChwaXhlbHMgPiAwKSB7XG4gICAgLy8gSWYgbWF4U2l6ZSAmIG5ld1NpemUgYmlnZ2VyIHRoYW4gaXQgPiBhYnNvcmIgdG8gbWF4IGFuZCByZXR1cm4gcmVtYWluaW5nIHBpeGVsc1xuICAgIGlmIChhcmVhU25hcHNob3QuYXJlYS5tYXhTaXplICE9PSBudWxsICYmIHRlbXBQaXhlbFNpemUgPiBhcmVhU25hcHNob3QuYXJlYS5tYXhTaXplKSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBhcmVhU25hcHNob3QsXG4gICAgICAgIHBpeGVsQWJzb3JiOiBhcmVhU25hcHNob3QuYXJlYS5tYXhTaXplIC0gYXJlYVNuYXBzaG90LnNpemVQaXhlbEF0U3RhcnQsXG4gICAgICAgIHBlcmNlbnRBZnRlckFic29ycHRpb246IC0xLFxuICAgICAgICBwaXhlbFJlbWFpbjogdGVtcFBpeGVsU2l6ZSAtIGFyZWFTbmFwc2hvdC5hcmVhLm1heFNpemUsXG4gICAgICB9O1xuICAgIH1cbiAgICByZXR1cm4ge1xuICAgICAgYXJlYVNuYXBzaG90LFxuICAgICAgcGl4ZWxBYnNvcmI6IHBpeGVscyxcbiAgICAgIHBlcmNlbnRBZnRlckFic29ycHRpb246IC0xLFxuICAgICAgcGl4ZWxSZW1haW46IDAsXG4gICAgfTtcbiAgfVxuXG4gIC8vIFJFRFVDRSBBUkVBXG4gIGVsc2UgaWYgKHBpeGVscyA8IDApIHtcbiAgICAvLyBJZiBtaW5TaXplICYgbmV3U2l6ZSBzbWFsbGVyIHRoYW4gaXQgPiBhYnNvcmIgdG8gbWluIGFuZCByZXR1cm4gcmVtYWluaW5nIHBpeGVsc1xuICAgIGlmIChhcmVhU25hcHNob3QuYXJlYS5taW5TaXplICE9PSBudWxsICYmIHRlbXBQaXhlbFNpemUgPCBhcmVhU25hcHNob3QuYXJlYS5taW5TaXplKSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBhcmVhU25hcHNob3QsXG4gICAgICAgIHBpeGVsQWJzb3JiOiBhcmVhU25hcHNob3QuYXJlYS5taW5TaXplICsgcGl4ZWxzIC0gdGVtcFBpeGVsU2l6ZSxcbiAgICAgICAgcGVyY2VudEFmdGVyQWJzb3JwdGlvbjogLTEsXG4gICAgICAgIHBpeGVsUmVtYWluOiB0ZW1wUGl4ZWxTaXplIC0gYXJlYVNuYXBzaG90LmFyZWEubWluU2l6ZSxcbiAgICAgIH07XG4gICAgfVxuICAgIC8vIElmIHJlZHVjZWQgdW5kZXIgemVybyA+IHJldHVybiByZW1haW5pbmcgcGl4ZWxzXG4gICAgZWxzZSBpZiAodGVtcFBpeGVsU2l6ZSA8IDApIHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIGFyZWFTbmFwc2hvdCxcbiAgICAgICAgcGl4ZWxBYnNvcmI6IC1hcmVhU25hcHNob3Quc2l6ZVBpeGVsQXRTdGFydCxcbiAgICAgICAgcGVyY2VudEFmdGVyQWJzb3JwdGlvbjogLTEsXG4gICAgICAgIHBpeGVsUmVtYWluOiBwaXhlbHMgKyBhcmVhU25hcHNob3Quc2l6ZVBpeGVsQXRTdGFydCxcbiAgICAgIH07XG4gICAgfVxuICAgIHJldHVybiB7XG4gICAgICBhcmVhU25hcHNob3QsXG4gICAgICBwaXhlbEFic29yYjogcGl4ZWxzLFxuICAgICAgcGVyY2VudEFmdGVyQWJzb3JwdGlvbjogLTEsXG4gICAgICBwaXhlbFJlbWFpbjogMCxcbiAgICB9O1xuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB1cGRhdGVBcmVhU2l6ZSh1bml0OiAncGVyY2VudCcgfCAncGl4ZWwnLCBpdGVtOiBNdHhTcGxpdEFyZWFBYnNvcnB0aW9uQ2FwYWNpdHkpIHtcbiAgaWYgKHVuaXQgPT09ICdwZXJjZW50Jykge1xuICAgIGl0ZW0uYXJlYVNuYXBzaG90LmFyZWEuc2l6ZSA9IGl0ZW0ucGVyY2VudEFmdGVyQWJzb3JwdGlvbjtcbiAgfSBlbHNlIGlmICh1bml0ID09PSAncGl4ZWwnKSB7XG4gICAgLy8gVXBkYXRlIHNpemUgZXhjZXB0IGZvciB0aGUgd2lsZGNhcmQgc2l6ZSBhcmVhXG4gICAgaWYgKGl0ZW0uYXJlYVNuYXBzaG90LmFyZWEuc2l6ZSAhPT0gbnVsbCkge1xuICAgICAgaXRlbS5hcmVhU25hcHNob3QuYXJlYS5zaXplID0gaXRlbS5hcmVhU25hcHNob3Quc2l6ZVBpeGVsQXRTdGFydCArIGl0ZW0ucGl4ZWxBYnNvcmI7XG4gICAgfVxuICB9XG59XG4iXX0=
@@ -8,10 +8,10 @@ import { MtxTooltip, TooltipComponent, MTX_TOOLTIP_SCROLL_STRATEGY_FACTORY_PROVI
8
8
  import * as i0 from "@angular/core";
9
9
  export class MtxTooltipModule {
10
10
  }
11
- /** @nocollapse */ MtxTooltipModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: MtxTooltipModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
12
- /** @nocollapse */ MtxTooltipModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.0", ngImport: i0, type: MtxTooltipModule, declarations: [MtxTooltip, TooltipComponent], imports: [A11yModule, CommonModule, OverlayModule, MatCommonModule], exports: [MtxTooltip, TooltipComponent, MatCommonModule, CdkScrollableModule] });
13
- /** @nocollapse */ MtxTooltipModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: MtxTooltipModule, providers: [MTX_TOOLTIP_SCROLL_STRATEGY_FACTORY_PROVIDER], imports: [A11yModule, CommonModule, OverlayModule, MatCommonModule, MatCommonModule, CdkScrollableModule] });
14
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: MtxTooltipModule, decorators: [{
11
+ /** @nocollapse */ MtxTooltipModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.2", ngImport: i0, type: MtxTooltipModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
12
+ /** @nocollapse */ MtxTooltipModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.0.2", ngImport: i0, type: MtxTooltipModule, declarations: [MtxTooltip, TooltipComponent], imports: [A11yModule, CommonModule, OverlayModule, MatCommonModule], exports: [MtxTooltip, TooltipComponent, MatCommonModule, CdkScrollableModule] });
13
+ /** @nocollapse */ MtxTooltipModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.0.2", ngImport: i0, type: MtxTooltipModule, providers: [MTX_TOOLTIP_SCROLL_STRATEGY_FACTORY_PROVIDER], imports: [A11yModule, CommonModule, OverlayModule, MatCommonModule, MatCommonModule, CdkScrollableModule] });
14
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.2", ngImport: i0, type: MtxTooltipModule, decorators: [{
15
15
  type: NgModule,
16
16
  args: [{
17
17
  imports: [A11yModule, CommonModule, OverlayModule, MatCommonModule],
@@ -516,9 +516,9 @@ export class MtxTooltip {
516
516
  }
517
517
  }
518
518
  }
519
- /** @nocollapse */ MtxTooltip.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: MtxTooltip, deps: [{ token: i1.Overlay }, { token: i0.ElementRef }, { token: i2.ScrollDispatcher }, { token: i0.ViewContainerRef }, { token: i0.NgZone }, { token: i3.Platform }, { token: i4.AriaDescriber }, { token: i4.FocusMonitor }, { token: MTX_TOOLTIP_SCROLL_STRATEGY }, { token: i5.Directionality, optional: true }, { token: MTX_TOOLTIP_DEFAULT_OPTIONS, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
520
- /** @nocollapse */ MtxTooltip.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.0", type: MtxTooltip, selector: "[mtxTooltip]", inputs: { position: ["mtxTooltipPosition", "position"], disabled: ["mtxTooltipDisabled", "disabled"], showDelay: ["mtxTooltipShowDelay", "showDelay"], hideDelay: ["mtxTooltipHideDelay", "hideDelay"], touchGestures: ["mtxTooltipTouchGestures", "touchGestures"], message: ["mtxTooltip", "message"], tooltipClass: ["mtxTooltipClass", "tooltipClass"] }, host: { classAttribute: "mtx-tooltip-trigger" }, exportAs: ["mtxTooltip"], ngImport: i0 });
521
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: MtxTooltip, decorators: [{
519
+ /** @nocollapse */ MtxTooltip.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.2", ngImport: i0, type: MtxTooltip, deps: [{ token: i1.Overlay }, { token: i0.ElementRef }, { token: i2.ScrollDispatcher }, { token: i0.ViewContainerRef }, { token: i0.NgZone }, { token: i3.Platform }, { token: i4.AriaDescriber }, { token: i4.FocusMonitor }, { token: MTX_TOOLTIP_SCROLL_STRATEGY }, { token: i5.Directionality, optional: true }, { token: MTX_TOOLTIP_DEFAULT_OPTIONS, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
520
+ /** @nocollapse */ MtxTooltip.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.2", type: MtxTooltip, selector: "[mtxTooltip]", inputs: { position: ["mtxTooltipPosition", "position"], disabled: ["mtxTooltipDisabled", "disabled"], showDelay: ["mtxTooltipShowDelay", "showDelay"], hideDelay: ["mtxTooltipHideDelay", "hideDelay"], touchGestures: ["mtxTooltipTouchGestures", "touchGestures"], message: ["mtxTooltip", "message"], tooltipClass: ["mtxTooltipClass", "tooltipClass"] }, host: { classAttribute: "mtx-tooltip-trigger" }, exportAs: ["mtxTooltip"], ngImport: i0 });
521
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.2", ngImport: i0, type: MtxTooltip, decorators: [{
522
522
  type: Directive,
523
523
  args: [{
524
524
  selector: '[mtxTooltip]',
@@ -659,9 +659,9 @@ export class TooltipComponent {
659
659
  this._changeDetectorRef.markForCheck();
660
660
  }
661
661
  }
662
- /** @nocollapse */ TooltipComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: TooltipComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i6.BreakpointObserver }], target: i0.ɵɵFactoryTarget.Component });
663
- /** @nocollapse */ TooltipComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.0", type: TooltipComponent, selector: "mtx-tooltip-component", host: { attributes: { "aria-hidden": "true" }, listeners: { "body:click": "this._handleBodyInteraction()" }, properties: { "style.zoom": "_visibility === \"visible\" ? 1 : null" } }, ngImport: i0, template: "<div class=\"mtx-tooltip\"\n [ngClass]=\"tooltipClass\"\n [class.mtx-tooltip-handset]=\"(_isHandset | async)?.matches\"\n [@state]=\"_visibility\"\n (@state.start)=\"_animationStart()\"\n (@state.done)=\"_animationDone($event)\">\n <ng-template [ngIf]=\"_isTemplateRef(message)\" [ngIfElse]=\"msgStrTpl\">\n <ng-template [ngTemplateOutlet]=\"$any(message)\"></ng-template>\n </ng-template>\n <ng-template #msgStrTpl>{{message}}</ng-template>\n</div>\n", styles: [".mtx-tooltip-panel{pointer-events:none!important}.mtx-tooltip{color:#fff;border-radius:4px;margin:14px;max-width:250px;padding-left:8px;padding-right:8px;overflow:hidden;text-overflow:ellipsis}.cdk-high-contrast-active .mtx-tooltip{outline:solid 1px}.mtx-tooltip-handset{margin:24px;padding-left:16px;padding-right:16px}\n"], dependencies: [{ kind: "directive", type: i7.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i7.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "pipe", type: i7.AsyncPipe, name: "async" }], animations: [mtxTooltipAnimations.tooltipState], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
664
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: TooltipComponent, decorators: [{
662
+ /** @nocollapse */ TooltipComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.2", ngImport: i0, type: TooltipComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i6.BreakpointObserver }], target: i0.ɵɵFactoryTarget.Component });
663
+ /** @nocollapse */ TooltipComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.2", type: TooltipComponent, selector: "mtx-tooltip-component", host: { attributes: { "aria-hidden": "true" }, listeners: { "body:click": "this._handleBodyInteraction()" }, properties: { "style.zoom": "_visibility === \"visible\" ? 1 : null" } }, ngImport: i0, template: "<div class=\"mtx-tooltip\"\n [ngClass]=\"tooltipClass\"\n [class.mtx-tooltip-handset]=\"(_isHandset | async)?.matches\"\n [@state]=\"_visibility\"\n (@state.start)=\"_animationStart()\"\n (@state.done)=\"_animationDone($event)\">\n <ng-template [ngIf]=\"_isTemplateRef(message)\" [ngIfElse]=\"msgStrTpl\">\n <ng-template [ngTemplateOutlet]=\"$any(message)\"></ng-template>\n </ng-template>\n <ng-template #msgStrTpl>{{message}}</ng-template>\n</div>\n", styles: [".mtx-tooltip-panel{pointer-events:none!important}.mtx-tooltip{color:#fff;border-radius:4px;margin:14px;max-width:250px;padding-left:8px;padding-right:8px;overflow:hidden;text-overflow:ellipsis}.cdk-high-contrast-active .mtx-tooltip{outline:solid 1px}.mtx-tooltip-handset{margin:24px;padding-left:16px;padding-right:16px}\n"], dependencies: [{ kind: "directive", type: i7.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i7.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "pipe", type: i7.AsyncPipe, name: "async" }], animations: [mtxTooltipAnimations.tooltipState], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
664
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.2", ngImport: i0, type: TooltipComponent, decorators: [{
665
665
  type: Component,
666
666
  args: [{ selector: 'mtx-tooltip-component', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, animations: [mtxTooltipAnimations.tooltipState], host: {
667
667
  // Forces the element to have a layout in IE and Edge. This fixes issues where the element
@@ -4,7 +4,7 @@ import * as i1 from '@angular/common';
4
4
  import { CommonModule } from '@angular/common';
5
5
  import { coerceBooleanProperty } from '@angular/cdk/coercion';
6
6
 
7
- class MtxAlertComponent {
7
+ class MtxAlert {
8
8
  constructor(_changeDetectorRef) {
9
9
  this._changeDetectorRef = _changeDetectorRef;
10
10
  /** The alert's type. Can be `default`, `info`, `success`, `warning` or `danger`. */
@@ -30,9 +30,9 @@ class MtxAlertComponent {
30
30
  this.closed.emit(this);
31
31
  }
32
32
  }
33
- /** @nocollapse */ MtxAlertComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: MtxAlertComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
34
- /** @nocollapse */ MtxAlertComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.0", type: MtxAlertComponent, selector: "mtx-alert", inputs: { type: "type", dismissible: "dismissible", elevation: "elevation" }, outputs: { closed: "closed" }, host: { attributes: { "role": "alert" }, properties: { "class.mtx-alert": "true", "class.mtx-alert-dismissible": "dismissible", "class": "this._hostClassList" } }, exportAs: ["mtxAlert"], ngImport: i0, template: "<ng-content></ng-content>\n<ng-template [ngIf]=\"dismissible\">\n <button type=\"button\" class=\"mtx-alert-close\" aria-label=\"Close\" (click)=\"_onClosed()\">\n <span aria-hidden=\"true\">&times;</span>\n </button>\n</ng-template>\n", styles: [".mtx-alert{position:relative;display:block;padding:.75rem 1.25rem;margin-bottom:1rem;border:1px solid transparent;border-radius:.25rem}.mtx-alert-close{position:absolute;top:0;bottom:0;right:0;padding:0 1.25rem;font-size:1.5rem;line-height:1;color:inherit;opacity:.5;background-color:transparent;border:0;cursor:pointer}[dir=rtl] .mtx-alert-close{right:auto;left:0}.mtx-alert-close:hover{opacity:.75}.mtx-alert-dismissible{padding-right:4rem}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
35
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: MtxAlertComponent, decorators: [{
33
+ /** @nocollapse */ MtxAlert.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.2", ngImport: i0, type: MtxAlert, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
34
+ /** @nocollapse */ MtxAlert.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.2", type: MtxAlert, selector: "mtx-alert", inputs: { type: "type", dismissible: "dismissible", elevation: "elevation" }, outputs: { closed: "closed" }, host: { attributes: { "role": "alert" }, properties: { "class.mtx-alert": "true", "class.mtx-alert-dismissible": "dismissible", "class": "this._hostClassList" } }, exportAs: ["mtxAlert"], ngImport: i0, template: "<ng-content></ng-content>\n<ng-template [ngIf]=\"dismissible\">\n <button type=\"button\" class=\"mtx-alert-close\" aria-label=\"Close\" (click)=\"_onClosed()\">\n <span aria-hidden=\"true\">&times;</span>\n </button>\n</ng-template>\n", styles: [".mtx-alert{position:relative;display:block;padding:.75rem 1.25rem;margin-bottom:1rem;border:1px solid transparent;border-radius:.25rem}.mtx-alert-close{position:absolute;top:0;bottom:0;right:0;padding:0 1.25rem;font-size:1.5rem;line-height:1;color:inherit;opacity:.5;background-color:transparent;border:0;cursor:pointer}[dir=rtl] .mtx-alert-close{right:auto;left:0}.mtx-alert-close:hover{opacity:.75}.mtx-alert-dismissible{padding-right:4rem}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
35
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.2", ngImport: i0, type: MtxAlert, decorators: [{
36
36
  type: Component,
37
37
  args: [{ selector: 'mtx-alert', exportAs: 'mtxAlert', host: {
38
38
  '[class.mtx-alert]': 'true',
@@ -54,15 +54,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImpor
54
54
 
55
55
  class MtxAlertModule {
56
56
  }
57
- /** @nocollapse */ MtxAlertModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: MtxAlertModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
58
- /** @nocollapse */ MtxAlertModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.0", ngImport: i0, type: MtxAlertModule, declarations: [MtxAlertComponent], imports: [CommonModule], exports: [MtxAlertComponent] });
59
- /** @nocollapse */ MtxAlertModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: MtxAlertModule, imports: [CommonModule] });
60
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: MtxAlertModule, decorators: [{
57
+ /** @nocollapse */ MtxAlertModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.2", ngImport: i0, type: MtxAlertModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
58
+ /** @nocollapse */ MtxAlertModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.0.2", ngImport: i0, type: MtxAlertModule, declarations: [MtxAlert], imports: [CommonModule], exports: [MtxAlert] });
59
+ /** @nocollapse */ MtxAlertModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.0.2", ngImport: i0, type: MtxAlertModule, imports: [CommonModule] });
60
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.2", ngImport: i0, type: MtxAlertModule, decorators: [{
61
61
  type: NgModule,
62
62
  args: [{
63
63
  imports: [CommonModule],
64
- exports: [MtxAlertComponent],
65
- declarations: [MtxAlertComponent],
64
+ exports: [MtxAlert],
65
+ declarations: [MtxAlert],
66
66
  }]
67
67
  }] });
68
68
 
@@ -70,5 +70,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImpor
70
70
  * Generated bundle index. Do not edit.
71
71
  */
72
72
 
73
- export { MtxAlertComponent, MtxAlertModule };
73
+ export { MtxAlert, MtxAlertModule };
74
+ //# sourceMappingURL=mtxAlert.mjs.map
74
75
  //# sourceMappingURL=mtxAlert.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"mtxAlert.mjs","sources":["../../../projects/extensions/alert/alert.component.ts","../../../projects/extensions/alert/alert.component.html","../../../projects/extensions/alert/alert.module.ts","../../../projects/extensions/alert/mtxAlert.ts"],"sourcesContent":["import {\n Component,\n ChangeDetectionStrategy,\n ViewEncapsulation,\n Input,\n Output,\n EventEmitter,\n ChangeDetectorRef,\n HostBinding,\n} from '@angular/core';\nimport { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\n\nexport type MtxAlertType = 'default' | 'info' | 'success' | 'warning' | 'danger';\n\n@Component({\n selector: 'mtx-alert',\n exportAs: 'mtxAlert',\n host: {\n '[class.mtx-alert]': 'true',\n '[class.mtx-alert-dismissible]': 'dismissible',\n 'role': 'alert',\n },\n templateUrl: './alert.component.html',\n styleUrls: ['./alert.component.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class MtxAlertComponent {\n @HostBinding('class')\n get _hostClassList() {\n return `mtx-alert-${this.type} mat-elevation-z${this.elevation}`;\n }\n\n /** The alert's type. Can be `default`, `info`, `success`, `warning` or `danger`. */\n @Input() type: MtxAlertType = 'default';\n\n /** Whether to display an inline close button. */\n @Input()\n get dismissible(): boolean {\n return this._dismissible;\n }\n set dismissible(value: boolean) {\n this._dismissible = coerceBooleanProperty(value);\n }\n private _dismissible = false;\n\n /** The alert's elevation (0~24). */\n @Input() elevation = 0;\n\n /** Event emitted when the alert closed. */\n @Output() closed = new EventEmitter<MtxAlertComponent>();\n\n constructor(private _changeDetectorRef: ChangeDetectorRef) {}\n\n _onClosed(): void {\n this._changeDetectorRef.markForCheck();\n this.closed.emit(this);\n }\n\n static ngAcceptInputType_dismissible: BooleanInput;\n}\n","<ng-content></ng-content>\n<ng-template [ngIf]=\"dismissible\">\n <button type=\"button\" class=\"mtx-alert-close\" aria-label=\"Close\" (click)=\"_onClosed()\">\n <span aria-hidden=\"true\">&times;</span>\n </button>\n</ng-template>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { MtxAlertComponent } from './alert.component';\n\n@NgModule({\n imports: [CommonModule],\n exports: [MtxAlertComponent],\n declarations: [MtxAlertComponent],\n})\nexport class MtxAlertModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mtxAlert.mjs","sources":["../../../projects/extensions/alert/alert.ts","../../../projects/extensions/alert/alert.html","../../../projects/extensions/alert/alert-module.ts","../../../projects/extensions/alert/mtxAlert.ts"],"sourcesContent":["import {\n Component,\n ChangeDetectionStrategy,\n ViewEncapsulation,\n Input,\n Output,\n EventEmitter,\n ChangeDetectorRef,\n HostBinding,\n} from '@angular/core';\nimport { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\n\nexport type MtxAlertType = 'default' | 'info' | 'success' | 'warning' | 'danger';\n\n@Component({\n selector: 'mtx-alert',\n exportAs: 'mtxAlert',\n host: {\n '[class.mtx-alert]': 'true',\n '[class.mtx-alert-dismissible]': 'dismissible',\n 'role': 'alert',\n },\n templateUrl: './alert.html',\n styleUrls: ['./alert.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class MtxAlert {\n @HostBinding('class')\n get _hostClassList() {\n return `mtx-alert-${this.type} mat-elevation-z${this.elevation}`;\n }\n\n /** The alert's type. Can be `default`, `info`, `success`, `warning` or `danger`. */\n @Input() type: MtxAlertType = 'default';\n\n /** Whether to display an inline close button. */\n @Input()\n get dismissible(): boolean {\n return this._dismissible;\n }\n set dismissible(value: boolean) {\n this._dismissible = coerceBooleanProperty(value);\n }\n private _dismissible = false;\n\n /** The alert's elevation (0~24). */\n @Input() elevation = 0;\n\n /** Event emitted when the alert closed. */\n @Output() closed = new EventEmitter<MtxAlert>();\n\n constructor(private _changeDetectorRef: ChangeDetectorRef) {}\n\n _onClosed(): void {\n this._changeDetectorRef.markForCheck();\n this.closed.emit(this);\n }\n\n static ngAcceptInputType_dismissible: BooleanInput;\n}\n","<ng-content></ng-content>\n<ng-template [ngIf]=\"dismissible\">\n <button type=\"button\" class=\"mtx-alert-close\" aria-label=\"Close\" (click)=\"_onClosed()\">\n <span aria-hidden=\"true\">&times;</span>\n </button>\n</ng-template>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { MtxAlert } from './alert';\n\n@NgModule({\n imports: [CommonModule],\n exports: [MtxAlert],\n declarations: [MtxAlert],\n})\nexport class MtxAlertModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;;;MA2Ba,QAAQ,CAAA;AAyBnB,IAAA,WAAA,CAAoB,kBAAqC,EAAA;AAArC,QAAA,IAAkB,CAAA,kBAAA,GAAlB,kBAAkB,CAAmB;;AAlBhD,QAAA,IAAI,CAAA,IAAA,GAAiB,SAAS,CAAC;AAUhC,QAAA,IAAY,CAAA,YAAA,GAAG,KAAK,CAAC;;AAGpB,QAAA,IAAS,CAAA,SAAA,GAAG,CAAC,CAAC;;AAGb,QAAA,IAAA,CAAA,MAAM,GAAG,IAAI,YAAY,EAAY,CAAC;KAEa;AAxB7D,IAAA,IACI,cAAc,GAAA;QAChB,OAAO,CAAA,UAAA,EAAa,IAAI,CAAC,IAAI,mBAAmB,IAAI,CAAC,SAAS,CAAA,CAAE,CAAC;KAClE;;AAMD,IAAA,IACI,WAAW,GAAA;QACb,OAAO,IAAI,CAAC,YAAY,CAAC;KAC1B;IACD,IAAI,WAAW,CAAC,KAAc,EAAA;AAC5B,QAAA,IAAI,CAAC,YAAY,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;KAClD;IAWD,SAAS,GAAA;AACP,QAAA,IAAI,CAAC,kBAAkB,CAAC,YAAY,EAAE,CAAC;AACvC,QAAA,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;KACxB;;wHA9BU,QAAQ,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAR,mBAAA,QAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,QAAQ,0VC3BrB,kPAMA,EAAA,MAAA,EAAA,CAAA,8bAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;2FDqBa,QAAQ,EAAA,UAAA,EAAA,CAAA;kBAbpB,SAAS;+BACE,WAAW,EAAA,QAAA,EACX,UAAU,EACd,IAAA,EAAA;AACJ,wBAAA,mBAAmB,EAAE,MAAM;AAC3B,wBAAA,+BAA+B,EAAE,aAAa;AAC9C,wBAAA,MAAM,EAAE,OAAO;qBAChB,EAAA,aAAA,EAGc,iBAAiB,CAAC,IAAI,EACpB,eAAA,EAAA,uBAAuB,CAAC,MAAM,EAAA,QAAA,EAAA,kPAAA,EAAA,MAAA,EAAA,CAAA,8bAAA,CAAA,EAAA,CAAA;wGAI3C,cAAc,EAAA,CAAA;sBADjB,WAAW;uBAAC,OAAO,CAAA;gBAMX,IAAI,EAAA,CAAA;sBAAZ,KAAK;gBAIF,WAAW,EAAA,CAAA;sBADd,KAAK;gBAUG,SAAS,EAAA,CAAA;sBAAjB,KAAK;gBAGI,MAAM,EAAA,CAAA;sBAAf,MAAM;;;MExCI,cAAc,CAAA;;8HAAd,cAAc,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAd,mBAAA,cAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,cAAc,EAFV,YAAA,EAAA,CAAA,QAAQ,CAFb,EAAA,OAAA,EAAA,CAAA,YAAY,aACZ,QAAQ,CAAA,EAAA,CAAA,CAAA;AAGP,mBAAA,cAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,cAAc,YAJf,YAAY,CAAA,EAAA,CAAA,CAAA;2FAIX,cAAc,EAAA,UAAA,EAAA,CAAA;kBAL1B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACR,OAAO,EAAE,CAAC,YAAY,CAAC;oBACvB,OAAO,EAAE,CAAC,QAAQ,CAAC;oBACnB,YAAY,EAAE,CAAC,QAAQ,CAAC;iBACzB,CAAA;;;ACTD;;AAEG;;;;"}
@@ -1,16 +1,15 @@
1
1
  import * as i0 from '@angular/core';
2
2
  import { Directive, Input, NgModule } from '@angular/core';
3
3
  import { CommonModule } from '@angular/common';
4
- import * as i1 from '@angular/material/button';
5
4
  import { MatButtonModule } from '@angular/material/button';
6
5
  import { MatProgressSpinner, MatProgressSpinnerModule } from '@angular/material/progress-spinner';
7
6
  import { coerceBooleanProperty } from '@angular/cdk/coercion';
8
7
 
9
- class MatButtonLoadingDirective {
10
- constructor(matButton, viewContainerRef, renderer) {
11
- this.matButton = matButton;
12
- this.viewContainerRef = viewContainerRef;
13
- this.renderer = renderer;
8
+ class MatButtonLoading {
9
+ constructor(_elementRef, _viewContainerRef, _renderer) {
10
+ this._elementRef = _elementRef;
11
+ this._viewContainerRef = _viewContainerRef;
12
+ this._renderer = _renderer;
14
13
  this._loading = false;
15
14
  this._disabled = false;
16
15
  }
@@ -31,23 +30,23 @@ class MatButtonLoadingDirective {
31
30
  return;
32
31
  }
33
32
  if (changes.loading.currentValue) {
34
- this.matButton._elementRef.nativeElement.classList.add('mat-button-loading');
35
- this.matButton.disabled = true;
33
+ this._elementRef.nativeElement.classList.add('mat-button-loading');
34
+ setTimeout(() => this._elementRef.nativeElement.setAttribute('disabled', ''));
36
35
  this.createSpinner();
37
36
  }
38
37
  else if (!changes.loading.firstChange) {
39
- this.matButton._elementRef.nativeElement.classList.remove('mat-button-loading');
40
- this.matButton.disabled = this.disabled;
38
+ this._elementRef.nativeElement.classList.remove('mat-button-loading');
39
+ setTimeout(() => this._elementRef.nativeElement.removeAttribute('disabled'));
41
40
  this.destroySpinner();
42
41
  }
43
42
  }
44
43
  createSpinner() {
45
44
  if (!this.spinner) {
46
- this.spinner = this.viewContainerRef.createComponent(MatProgressSpinner);
45
+ this.spinner = this._viewContainerRef.createComponent(MatProgressSpinner);
47
46
  this.spinner.instance.color = this.color;
48
- this.spinner.instance.diameter = 20;
47
+ this.spinner.instance.diameter = 24;
49
48
  this.spinner.instance.mode = 'indeterminate';
50
- this.renderer.appendChild(this.matButton._elementRef.nativeElement, this.spinner.instance._elementRef.nativeElement);
49
+ this._renderer.appendChild(this._elementRef.nativeElement, this.spinner.instance._elementRef.nativeElement);
51
50
  }
52
51
  }
53
52
  destroySpinner() {
@@ -57,20 +56,20 @@ class MatButtonLoadingDirective {
57
56
  }
58
57
  }
59
58
  }
60
- /** @nocollapse */ MatButtonLoadingDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: MatButtonLoadingDirective, deps: [{ token: i1.MatButton }, { token: i0.ViewContainerRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive });
61
- /** @nocollapse */ MatButtonLoadingDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.0", type: MatButtonLoadingDirective, selector: "button[mat-button][loading],\n button[mat-raised-button][loading],\n button[mat-stroked-button][loading],\n button[mat-flat-button][loading],\n button[mat-icon-button][loading],\n button[mat-fab][loading],\n button[mat-mini-fab][loading]", inputs: { loading: "loading", disabled: "disabled", color: "color" }, usesOnChanges: true, ngImport: i0 });
62
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: MatButtonLoadingDirective, decorators: [{
59
+ /** @nocollapse */ MatButtonLoading.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.2", ngImport: i0, type: MatButtonLoading, deps: [{ token: i0.ElementRef }, { token: i0.ViewContainerRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive });
60
+ /** @nocollapse */ MatButtonLoading.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.2", type: MatButtonLoading, selector: "[mat-button][loading],\n [mat-raised-button][loading],\n [mat-stroked-button][loading],\n [mat-flat-button][loading],\n [mat-icon-button][loading],\n [mat-fab][loading],\n [mat-mini-fab][loading]", inputs: { loading: "loading", disabled: "disabled", color: "color" }, usesOnChanges: true, ngImport: i0 });
61
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.2", ngImport: i0, type: MatButtonLoading, decorators: [{
63
62
  type: Directive,
64
63
  args: [{
65
- selector: `button[mat-button][loading],
66
- button[mat-raised-button][loading],
67
- button[mat-stroked-button][loading],
68
- button[mat-flat-button][loading],
69
- button[mat-icon-button][loading],
70
- button[mat-fab][loading],
71
- button[mat-mini-fab][loading]`,
64
+ selector: `[mat-button][loading],
65
+ [mat-raised-button][loading],
66
+ [mat-stroked-button][loading],
67
+ [mat-flat-button][loading],
68
+ [mat-icon-button][loading],
69
+ [mat-fab][loading],
70
+ [mat-mini-fab][loading]`,
72
71
  }]
73
- }], ctorParameters: function () { return [{ type: i1.MatButton }, { type: i0.ViewContainerRef }, { type: i0.Renderer2 }]; }, propDecorators: { loading: [{
72
+ }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.ViewContainerRef }, { type: i0.Renderer2 }]; }, propDecorators: { loading: [{
74
73
  type: Input
75
74
  }], disabled: [{
76
75
  type: Input
@@ -80,15 +79,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImpor
80
79
 
81
80
  class MtxButtonModule {
82
81
  }
83
- /** @nocollapse */ MtxButtonModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: MtxButtonModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
84
- /** @nocollapse */ MtxButtonModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.0", ngImport: i0, type: MtxButtonModule, declarations: [MatButtonLoadingDirective], imports: [CommonModule, MatButtonModule, MatProgressSpinnerModule], exports: [MatButtonLoadingDirective] });
85
- /** @nocollapse */ MtxButtonModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: MtxButtonModule, imports: [CommonModule, MatButtonModule, MatProgressSpinnerModule] });
86
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: MtxButtonModule, decorators: [{
82
+ /** @nocollapse */ MtxButtonModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.2", ngImport: i0, type: MtxButtonModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
83
+ /** @nocollapse */ MtxButtonModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.0.2", ngImport: i0, type: MtxButtonModule, declarations: [MatButtonLoading], imports: [CommonModule, MatButtonModule, MatProgressSpinnerModule], exports: [MatButtonLoading] });
84
+ /** @nocollapse */ MtxButtonModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.0.2", ngImport: i0, type: MtxButtonModule, imports: [CommonModule, MatButtonModule, MatProgressSpinnerModule] });
85
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.2", ngImport: i0, type: MtxButtonModule, decorators: [{
87
86
  type: NgModule,
88
87
  args: [{
89
88
  imports: [CommonModule, MatButtonModule, MatProgressSpinnerModule],
90
- exports: [MatButtonLoadingDirective],
91
- declarations: [MatButtonLoadingDirective],
89
+ exports: [MatButtonLoading],
90
+ declarations: [MatButtonLoading],
92
91
  }]
93
92
  }] });
94
93
 
@@ -96,5 +95,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImpor
96
95
  * Generated bundle index. Do not edit.
97
96
  */
98
97
 
99
- export { MatButtonLoadingDirective, MtxButtonModule };
98
+ export { MatButtonLoading, MtxButtonModule };
99
+ //# sourceMappingURL=mtxButton.mjs.map
100
100
  //# sourceMappingURL=mtxButton.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"mtxButton.mjs","sources":["../../../projects/extensions/button/button-loading.directive.ts","../../../projects/extensions/button/button.module.ts","../../../projects/extensions/button/mtxButton.ts"],"sourcesContent":["import {\n ComponentRef,\n Directive,\n Input,\n OnChanges,\n Renderer2,\n SimpleChanges,\n ViewContainerRef,\n} from '@angular/core';\nimport { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\nimport { ThemePalette } from '@angular/material/core';\nimport { MatButton } from '@angular/material/button';\nimport { MatProgressSpinner } from '@angular/material/progress-spinner';\n\n@Directive({\n selector: `button[mat-button][loading],\n button[mat-raised-button][loading],\n button[mat-stroked-button][loading],\n button[mat-flat-button][loading],\n button[mat-icon-button][loading],\n button[mat-fab][loading],\n button[mat-mini-fab][loading]`,\n})\nexport class MatButtonLoadingDirective implements OnChanges {\n private spinner!: ComponentRef<MatProgressSpinner> | null;\n\n @Input()\n get loading(): boolean {\n return this._loading;\n }\n set loading(value: boolean) {\n this._loading = coerceBooleanProperty(value);\n }\n private _loading = false;\n\n @Input()\n get disabled(): boolean {\n return this._disabled;\n }\n set disabled(value: boolean) {\n this._disabled = coerceBooleanProperty(value);\n }\n private _disabled = false;\n\n @Input()\n color: ThemePalette;\n\n constructor(\n private matButton: MatButton,\n private viewContainerRef: ViewContainerRef,\n private renderer: Renderer2\n ) {}\n\n ngOnChanges(changes: SimpleChanges): void {\n if (!changes.loading) {\n return;\n }\n\n if (changes.loading.currentValue) {\n this.matButton._elementRef.nativeElement.classList.add('mat-button-loading');\n this.matButton.disabled = true;\n this.createSpinner();\n } else if (!changes.loading.firstChange) {\n this.matButton._elementRef.nativeElement.classList.remove('mat-button-loading');\n this.matButton.disabled = this.disabled;\n this.destroySpinner();\n }\n }\n\n private createSpinner(): void {\n if (!this.spinner) {\n this.spinner = this.viewContainerRef.createComponent(MatProgressSpinner);\n this.spinner.instance.color = this.color;\n this.spinner.instance.diameter = 20;\n this.spinner.instance.mode = 'indeterminate';\n this.renderer.appendChild(\n this.matButton._elementRef.nativeElement,\n this.spinner.instance._elementRef.nativeElement\n );\n }\n }\n\n private destroySpinner(): void {\n if (this.spinner) {\n this.spinner.destroy();\n this.spinner = null;\n }\n }\n\n static ngAcceptInputType_loading: BooleanInput;\n static ngAcceptInputType_disabled: BooleanInput;\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatProgressSpinnerModule } from '@angular/material/progress-spinner';\nimport { MatButtonLoadingDirective } from './button-loading.directive';\n\n@NgModule({\n imports: [CommonModule, MatButtonModule, MatProgressSpinnerModule],\n exports: [MatButtonLoadingDirective],\n declarations: [MatButtonLoadingDirective],\n})\nexport class MtxButtonModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mtxButton.mjs","sources":["../../../projects/extensions/button/button-loading.ts","../../../projects/extensions/button/button-module.ts","../../../projects/extensions/button/mtxButton.ts"],"sourcesContent":["import {\n ComponentRef,\n Directive,\n ElementRef,\n Input,\n OnChanges,\n Renderer2,\n SimpleChanges,\n ViewContainerRef,\n} from '@angular/core';\nimport { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\nimport { ThemePalette } from '@angular/material/core';\nimport { MatProgressSpinner } from '@angular/material/progress-spinner';\n\n@Directive({\n selector: `[mat-button][loading],\n [mat-raised-button][loading],\n [mat-stroked-button][loading],\n [mat-flat-button][loading],\n [mat-icon-button][loading],\n [mat-fab][loading],\n [mat-mini-fab][loading]`,\n})\nexport class MatButtonLoading implements OnChanges {\n private spinner!: ComponentRef<MatProgressSpinner> | null;\n\n @Input()\n get loading(): boolean {\n return this._loading;\n }\n set loading(value: boolean) {\n this._loading = coerceBooleanProperty(value);\n }\n private _loading = false;\n\n @Input()\n get disabled(): boolean {\n return this._disabled;\n }\n set disabled(value: boolean) {\n this._disabled = coerceBooleanProperty(value);\n }\n private _disabled = false;\n\n @Input() color: ThemePalette;\n\n constructor(\n private _elementRef: ElementRef<HTMLButtonElement>,\n private _viewContainerRef: ViewContainerRef,\n private _renderer: Renderer2\n ) {}\n\n ngOnChanges(changes: SimpleChanges): void {\n if (!changes.loading) {\n return;\n }\n\n if (changes.loading.currentValue) {\n this._elementRef.nativeElement.classList.add('mat-button-loading');\n setTimeout(() => this._elementRef.nativeElement.setAttribute('disabled', ''));\n this.createSpinner();\n } else if (!changes.loading.firstChange) {\n this._elementRef.nativeElement.classList.remove('mat-button-loading');\n setTimeout(() => this._elementRef.nativeElement.removeAttribute('disabled'));\n this.destroySpinner();\n }\n }\n\n private createSpinner(): void {\n if (!this.spinner) {\n this.spinner = this._viewContainerRef.createComponent(MatProgressSpinner);\n this.spinner.instance.color = this.color;\n this.spinner.instance.diameter = 24;\n this.spinner.instance.mode = 'indeterminate';\n this._renderer.appendChild(\n this._elementRef.nativeElement,\n this.spinner.instance._elementRef.nativeElement\n );\n }\n }\n\n private destroySpinner(): void {\n if (this.spinner) {\n this.spinner.destroy();\n this.spinner = null;\n }\n }\n\n static ngAcceptInputType_loading: BooleanInput;\n static ngAcceptInputType_disabled: BooleanInput;\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatProgressSpinnerModule } from '@angular/material/progress-spinner';\nimport { MatButtonLoading } from './button-loading';\n\n@NgModule({\n imports: [CommonModule, MatButtonModule, MatProgressSpinnerModule],\n exports: [MatButtonLoading],\n declarations: [MatButtonLoading],\n})\nexport class MtxButtonModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
@@ -17,7 +17,7 @@ class MtxCheckboxBase {
17
17
  this.value = value;
18
18
  }
19
19
  }
20
- class MtxCheckboxGroupComponent {
20
+ class MtxCheckboxGroup {
21
21
  constructor(_changeDetectorRef, _focusMonitor, _elementRef) {
22
22
  this._changeDetectorRef = _changeDetectorRef;
23
23
  this._focusMonitor = _focusMonitor;
@@ -195,25 +195,25 @@ class MtxCheckboxGroupComponent {
195
195
  this._getSelectedItems(index);
196
196
  }
197
197
  }
198
- /** @nocollapse */ MtxCheckboxGroupComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: MtxCheckboxGroupComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i1.FocusMonitor }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
199
- /** @nocollapse */ MtxCheckboxGroupComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.0", type: MtxCheckboxGroupComponent, selector: "mtx-checkbox-group", inputs: { items: "items", bindLabel: "bindLabel", bindValue: "bindValue", showSelectAll: "showSelectAll", selectAllLabel: "selectAllLabel", compareWith: "compareWith", disabled: "disabled" }, outputs: { change: "change" }, host: { classAttribute: "mtx-checkbox-group" }, providers: [
198
+ /** @nocollapse */ MtxCheckboxGroup.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.2", ngImport: i0, type: MtxCheckboxGroup, deps: [{ token: i0.ChangeDetectorRef }, { token: i1.FocusMonitor }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
199
+ /** @nocollapse */ MtxCheckboxGroup.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.2", type: MtxCheckboxGroup, selector: "mtx-checkbox-group", inputs: { items: "items", bindLabel: "bindLabel", bindValue: "bindValue", showSelectAll: "showSelectAll", selectAllLabel: "selectAllLabel", compareWith: "compareWith", disabled: "disabled" }, outputs: { change: "change" }, host: { classAttribute: "mtx-checkbox-group" }, providers: [
200
200
  {
201
201
  provide: NG_VALUE_ACCESSOR,
202
- useExisting: forwardRef((() => MtxCheckboxGroupComponent)),
202
+ useExisting: forwardRef((() => MtxCheckboxGroup)),
203
203
  multi: true,
204
204
  },
205
- ], queries: [{ propertyName: "_checkboxes", predicate: i0.forwardRef(function () { return MatCheckbox; }), descendants: true }], exportAs: ["mtxCheckboxGroup"], ngImport: i0, template: "<mat-checkbox class=\"mtx-checkbox-master\"\n *ngIf=\"showSelectAll\"\n [checked]=\"selectAll\"\n [(indeterminate)]=\"selectAllIndeterminate\"\n [disabled]=\"disabled\"\n (change)=\"_updateMasterCheckboxState($event, -1);\">\n {{selectAllLabel}}\n</mat-checkbox>\n\n<mat-checkbox class=\"mtx-checkbox-normal\"\n *ngFor=\"let option of items; let i = index;\"\n [(ngModel)]=\"option.checked\"\n [ngModelOptions]=\"{standalone: true}\"\n [aria-describedby]=\"option.ariaDescribedby\"\n [aria-label]=\"option.ariaLabel\"\n [aria-labelledby]=\"option.ariaLabelledby\"\n [color]=\"option.color\"\n [disabled]=\"option.disabled || disabled\"\n [disableRipple]=\"option.disableRipple\"\n [labelPosition]=\"option.labelPosition\"\n [required]=\"option.required\"\n (change)=\"_updateNormalCheckboxState($event, i)\">\n {{option[bindLabel] | toObservable | async}}\n</mat-checkbox>\n", styles: [".mtx-checkbox-group{display:block}.mtx-checkbox-group .mat-checkbox{margin-right:16px}[dir=rtl] .mtx-checkbox-group .mat-checkbox{margin-right:auto;margin-left:16px}\n"], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i4.MatCheckbox, selector: "mat-checkbox", inputs: ["disableRipple", "color", "tabIndex"], exportAs: ["matCheckbox"] }, { kind: "directive", type: i4.MatCheckboxRequiredValidator, selector: "mat-checkbox[required][formControlName], mat-checkbox[required][formControl], mat-checkbox[required][ngModel]" }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }, { kind: "pipe", type: i5.MtxToObservablePipe, name: "toObservable" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
206
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: MtxCheckboxGroupComponent, decorators: [{
205
+ ], queries: [{ propertyName: "_checkboxes", predicate: i0.forwardRef(function () { return MatCheckbox; }), descendants: true }], exportAs: ["mtxCheckboxGroup"], ngImport: i0, template: "<mat-checkbox class=\"mtx-checkbox-master\"\n *ngIf=\"showSelectAll\"\n [checked]=\"selectAll\"\n [(indeterminate)]=\"selectAllIndeterminate\"\n [disabled]=\"disabled\"\n (change)=\"_updateMasterCheckboxState($event, -1);\">\n {{selectAllLabel}}\n</mat-checkbox>\n\n<mat-checkbox class=\"mtx-checkbox-normal\"\n *ngFor=\"let option of items; let i = index;\"\n [(ngModel)]=\"option.checked\"\n [ngModelOptions]=\"{standalone: true}\"\n [aria-describedby]=\"option.ariaDescribedby\"\n [aria-label]=\"option.ariaLabel\"\n [aria-labelledby]=\"option.ariaLabelledby\"\n [color]=\"option.color\"\n [disabled]=\"option.disabled || disabled\"\n [disableRipple]=\"option.disableRipple\"\n [labelPosition]=\"option.labelPosition\"\n [required]=\"option.required\"\n (change)=\"_updateNormalCheckboxState($event, i)\">\n {{option[bindLabel] | toObservable | async}}\n</mat-checkbox>\n", styles: [""], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i4.MatCheckbox, selector: "mat-checkbox", inputs: ["disableRipple", "color", "tabIndex"], exportAs: ["matCheckbox"] }, { kind: "directive", type: i4.MatCheckboxRequiredValidator, selector: "mat-checkbox[required][formControlName], mat-checkbox[required][formControl], mat-checkbox[required][ngModel]" }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }, { kind: "pipe", type: i5.MtxToObservablePipe, name: "toObservable" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
206
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.2", ngImport: i0, type: MtxCheckboxGroup, decorators: [{
207
207
  type: Component,
208
208
  args: [{ selector: 'mtx-checkbox-group', exportAs: 'mtxCheckboxGroup', host: {
209
209
  class: 'mtx-checkbox-group',
210
210
  }, encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [
211
211
  {
212
212
  provide: NG_VALUE_ACCESSOR,
213
- useExisting: forwardRef((() => MtxCheckboxGroupComponent)),
213
+ useExisting: forwardRef((() => MtxCheckboxGroup)),
214
214
  multi: true,
215
215
  },
216
- ], template: "<mat-checkbox class=\"mtx-checkbox-master\"\n *ngIf=\"showSelectAll\"\n [checked]=\"selectAll\"\n [(indeterminate)]=\"selectAllIndeterminate\"\n [disabled]=\"disabled\"\n (change)=\"_updateMasterCheckboxState($event, -1);\">\n {{selectAllLabel}}\n</mat-checkbox>\n\n<mat-checkbox class=\"mtx-checkbox-normal\"\n *ngFor=\"let option of items; let i = index;\"\n [(ngModel)]=\"option.checked\"\n [ngModelOptions]=\"{standalone: true}\"\n [aria-describedby]=\"option.ariaDescribedby\"\n [aria-label]=\"option.ariaLabel\"\n [aria-labelledby]=\"option.ariaLabelledby\"\n [color]=\"option.color\"\n [disabled]=\"option.disabled || disabled\"\n [disableRipple]=\"option.disableRipple\"\n [labelPosition]=\"option.labelPosition\"\n [required]=\"option.required\"\n (change)=\"_updateNormalCheckboxState($event, i)\">\n {{option[bindLabel] | toObservable | async}}\n</mat-checkbox>\n", styles: [".mtx-checkbox-group{display:block}.mtx-checkbox-group .mat-checkbox{margin-right:16px}[dir=rtl] .mtx-checkbox-group .mat-checkbox{margin-right:auto;margin-left:16px}\n"] }]
216
+ ], template: "<mat-checkbox class=\"mtx-checkbox-master\"\n *ngIf=\"showSelectAll\"\n [checked]=\"selectAll\"\n [(indeterminate)]=\"selectAllIndeterminate\"\n [disabled]=\"disabled\"\n (change)=\"_updateMasterCheckboxState($event, -1);\">\n {{selectAllLabel}}\n</mat-checkbox>\n\n<mat-checkbox class=\"mtx-checkbox-normal\"\n *ngFor=\"let option of items; let i = index;\"\n [(ngModel)]=\"option.checked\"\n [ngModelOptions]=\"{standalone: true}\"\n [aria-describedby]=\"option.ariaDescribedby\"\n [aria-label]=\"option.ariaLabel\"\n [aria-labelledby]=\"option.ariaLabelledby\"\n [color]=\"option.color\"\n [disabled]=\"option.disabled || disabled\"\n [disableRipple]=\"option.disableRipple\"\n [labelPosition]=\"option.labelPosition\"\n [required]=\"option.required\"\n (change)=\"_updateNormalCheckboxState($event, i)\">\n {{option[bindLabel] | toObservable | async}}\n</mat-checkbox>\n" }]
217
217
  }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i1.FocusMonitor }, { type: i0.ElementRef }]; }, propDecorators: { _checkboxes: [{
218
218
  type: ContentChildren,
219
219
  args: [forwardRef(() => MatCheckbox), { descendants: true }]
@@ -237,15 +237,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImpor
237
237
 
238
238
  class MtxCheckboxGroupModule {
239
239
  }
240
- /** @nocollapse */ MtxCheckboxGroupModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: MtxCheckboxGroupModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
241
- /** @nocollapse */ MtxCheckboxGroupModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.0", ngImport: i0, type: MtxCheckboxGroupModule, declarations: [MtxCheckboxGroupComponent], imports: [CommonModule, FormsModule, MatCheckboxModule, MtxPipesModule], exports: [MtxCheckboxGroupComponent, MtxPipesModule] });
242
- /** @nocollapse */ MtxCheckboxGroupModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: MtxCheckboxGroupModule, imports: [CommonModule, FormsModule, MatCheckboxModule, MtxPipesModule, MtxPipesModule] });
243
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: MtxCheckboxGroupModule, decorators: [{
240
+ /** @nocollapse */ MtxCheckboxGroupModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.2", ngImport: i0, type: MtxCheckboxGroupModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
241
+ /** @nocollapse */ MtxCheckboxGroupModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.0.2", ngImport: i0, type: MtxCheckboxGroupModule, declarations: [MtxCheckboxGroup], imports: [CommonModule, FormsModule, MatCheckboxModule, MtxPipesModule], exports: [MtxCheckboxGroup, MtxPipesModule] });
242
+ /** @nocollapse */ MtxCheckboxGroupModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.0.2", ngImport: i0, type: MtxCheckboxGroupModule, imports: [CommonModule, FormsModule, MatCheckboxModule, MtxPipesModule, MtxPipesModule] });
243
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.2", ngImport: i0, type: MtxCheckboxGroupModule, decorators: [{
244
244
  type: NgModule,
245
245
  args: [{
246
246
  imports: [CommonModule, FormsModule, MatCheckboxModule, MtxPipesModule],
247
- exports: [MtxCheckboxGroupComponent, MtxPipesModule],
248
- declarations: [MtxCheckboxGroupComponent],
247
+ exports: [MtxCheckboxGroup, MtxPipesModule],
248
+ declarations: [MtxCheckboxGroup],
249
249
  }]
250
250
  }] });
251
251
 
@@ -253,5 +253,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImpor
253
253
  * Generated bundle index. Do not edit.
254
254
  */
255
255
 
256
- export { MtxCheckboxBase, MtxCheckboxGroupComponent, MtxCheckboxGroupModule };
256
+ export { MtxCheckboxBase, MtxCheckboxGroup, MtxCheckboxGroupModule };
257
+ //# sourceMappingURL=mtxCheckboxGroup.mjs.map
257
258
  //# sourceMappingURL=mtxCheckboxGroup.mjs.map