@ng-matero/extensions 15.5.1 → 16.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 (324) hide show
  1. package/alert/alert.d.ts +1 -1
  2. package/button/button-loading.d.ts +1 -1
  3. package/checkbox-group/checkbox-group.d.ts +1 -1
  4. package/colorpicker/colorpicker-input.d.ts +1 -1
  5. package/colorpicker/colorpicker-toggle.d.ts +1 -1
  6. package/colorpicker/colorpicker.d.ts +2 -2
  7. package/datetimepicker/calendar-body.d.ts +1 -1
  8. package/datetimepicker/calendar.d.ts +1 -1
  9. package/datetimepicker/clock.d.ts +1 -1
  10. package/datetimepicker/clock.scss +1 -4
  11. package/datetimepicker/datetimepicker-input.d.ts +1 -1
  12. package/datetimepicker/datetimepicker-toggle.d.ts +1 -1
  13. package/datetimepicker/datetimepicker.d.ts +2 -2
  14. package/datetimepicker/month-view.d.ts +1 -1
  15. package/datetimepicker/multi-year-view.d.ts +1 -1
  16. package/datetimepicker/time.d.ts +2 -2
  17. package/datetimepicker/year-view.d.ts +1 -1
  18. package/esm2022/alert/alert-module.mjs +19 -0
  19. package/esm2022/alert/alert.mjs +53 -0
  20. package/esm2022/button/button-loading.mjs +77 -0
  21. package/esm2022/button/button-module.mjs +21 -0
  22. package/esm2022/checkbox-group/checkbox-group-module.mjs +22 -0
  23. package/esm2022/checkbox-group/checkbox-group.mjs +234 -0
  24. package/esm2022/colorpicker/colorpicker-input.mjs +229 -0
  25. package/esm2022/colorpicker/colorpicker-module.mjs +64 -0
  26. package/esm2022/colorpicker/colorpicker-toggle.mjs +103 -0
  27. package/esm2022/colorpicker/colorpicker.mjs +367 -0
  28. package/esm2022/column-resize/column-resize-directives/column-resize-flex.mjs +46 -0
  29. package/esm2022/column-resize/column-resize-directives/column-resize.mjs +46 -0
  30. package/esm2022/column-resize/column-resize-module.mjs +29 -0
  31. package/esm2022/column-resize/column-resize-notifier.mjs +49 -0
  32. package/esm2022/column-resize/column-resize.mjs +83 -0
  33. package/esm2022/column-resize/column-size-store.mjs +21 -0
  34. package/esm2022/column-resize/event-dispatcher.mjs +68 -0
  35. package/esm2022/column-resize/overlay-handle.mjs +147 -0
  36. package/esm2022/column-resize/resizable.mjs +200 -0
  37. package/esm2022/column-resize/resize-strategy.mjs +235 -0
  38. package/{esm2020 → esm2022}/core/datetime/datetime-adapter.mjs +1 -1
  39. package/esm2022/core/datetime/datetime.module.mjs +44 -0
  40. package/esm2022/core/datetime/native-datetime-adapter.mjs +139 -0
  41. package/esm2022/core/pipes/is-template-ref.pipe.mjs +15 -0
  42. package/esm2022/core/pipes/pipes.module.mjs +20 -0
  43. package/esm2022/core/pipes/to-observable.pipe.mjs +16 -0
  44. package/esm2022/datetimepicker/calendar-body.mjs +79 -0
  45. package/esm2022/datetimepicker/calendar.mjs +672 -0
  46. package/esm2022/datetimepicker/clock.mjs +354 -0
  47. package/esm2022/datetimepicker/datetimepicker-input.mjs +350 -0
  48. package/esm2022/datetimepicker/datetimepicker-intl.mjs +64 -0
  49. package/esm2022/datetimepicker/datetimepicker-module.mjs +83 -0
  50. package/esm2022/datetimepicker/datetimepicker-toggle.mjs +106 -0
  51. package/esm2022/datetimepicker/datetimepicker.mjs +529 -0
  52. package/esm2022/datetimepicker/month-view.mjs +149 -0
  53. package/esm2022/datetimepicker/multi-year-view.mjs +215 -0
  54. package/esm2022/datetimepicker/time.mjs +458 -0
  55. package/esm2022/datetimepicker/year-view.mjs +139 -0
  56. package/esm2022/dialog/dialog-container.mjs +36 -0
  57. package/esm2022/dialog/dialog-module.mjs +25 -0
  58. package/esm2022/dialog/dialog.mjs +75 -0
  59. package/esm2022/drawer/drawer-container.mjs +253 -0
  60. package/esm2022/drawer/drawer-module.mjs +23 -0
  61. package/esm2022/drawer/drawer.mjs +167 -0
  62. package/esm2022/grid/cell.mjs +117 -0
  63. package/{esm2020 → esm2022}/grid/column-menu.mjs +6 -5
  64. package/esm2022/grid/column-resize/column-resize-directives/column-resize-flex.mjs +38 -0
  65. package/esm2022/grid/column-resize/column-resize-directives/column-resize.mjs +38 -0
  66. package/esm2022/grid/column-resize/column-resize-module.mjs +44 -0
  67. package/esm2022/grid/column-resize/overlay-handle.mjs +61 -0
  68. package/esm2022/grid/column-resize/resizable-directives/resizable.mjs +63 -0
  69. package/esm2022/grid/column-resize/resize-strategy.mjs +43 -0
  70. package/esm2022/grid/expansion-toggle.mjs +65 -0
  71. package/esm2022/grid/grid-module.mjs +137 -0
  72. package/esm2022/grid/grid-pipes.mjs +113 -0
  73. package/esm2022/grid/grid-utils.mjs +64 -0
  74. package/esm2022/grid/grid.mjs +630 -0
  75. package/esm2022/loader/loader-module.mjs +21 -0
  76. package/esm2022/loader/loader.mjs +70 -0
  77. package/esm2022/popover/popover-content.mjs +92 -0
  78. package/esm2022/popover/popover-module.mjs +25 -0
  79. package/esm2022/popover/popover-target.mjs +18 -0
  80. package/esm2022/popover/popover-trigger.mjs +472 -0
  81. package/esm2022/popover/popover.mjs +384 -0
  82. package/esm2022/progress/progress-module.mjs +19 -0
  83. package/esm2022/progress/progress.mjs +56 -0
  84. package/esm2022/select/option.mjs +58 -0
  85. package/esm2022/select/select-module.mjs +75 -0
  86. package/esm2022/select/select.mjs +561 -0
  87. package/esm2022/select/templates.mjs +135 -0
  88. package/esm2022/slider/slider-module.mjs +20 -0
  89. package/esm2022/slider/slider.mjs +1116 -0
  90. package/esm2022/split/split-module.mjs +20 -0
  91. package/esm2022/split/split-pane.mjs +150 -0
  92. package/esm2022/split/split.mjs +635 -0
  93. package/esm2022/tooltip/tooltip-module.mjs +25 -0
  94. package/esm2022/tooltip/tooltip.mjs +930 -0
  95. package/{fesm2020 → fesm2022}/mtxAlert.mjs +7 -7
  96. package/{fesm2020 → fesm2022}/mtxAlert.mjs.map +1 -1
  97. package/{fesm2020 → fesm2022}/mtxButton.mjs +7 -7
  98. package/{fesm2015 → fesm2022}/mtxButton.mjs.map +1 -1
  99. package/{fesm2020 → fesm2022}/mtxCheckboxGroup.mjs +13 -13
  100. package/{fesm2020 → fesm2022}/mtxCheckboxGroup.mjs.map +1 -1
  101. package/{fesm2020 → fesm2022}/mtxColorpicker.mjs +41 -41
  102. package/{fesm2020 → fesm2022}/mtxColorpicker.mjs.map +1 -1
  103. package/{fesm2020 → fesm2022}/mtxColumnResize.mjs +46 -46
  104. package/{fesm2015 → fesm2022}/mtxColumnResize.mjs.map +1 -1
  105. package/{fesm2020 → fesm2022}/mtxCore.mjs +26 -26
  106. package/fesm2022/mtxCore.mjs.map +1 -0
  107. package/{fesm2020 → fesm2022}/mtxDatetimepicker.mjs +84 -80
  108. package/fesm2022/mtxDatetimepicker.mjs.map +1 -0
  109. package/{fesm2020 → fesm2022}/mtxDialog.mjs +10 -10
  110. package/{fesm2015 → fesm2022}/mtxDialog.mjs.map +1 -1
  111. package/{fesm2020 → fesm2022}/mtxDrawer.mjs +10 -10
  112. package/{fesm2020 → fesm2022}/mtxDrawer.mjs.map +1 -1
  113. package/{fesm2020 → fesm2022}/mtxGrid.mjs +120 -120
  114. package/{fesm2020 → fesm2022}/mtxGrid.mjs.map +1 -1
  115. package/{fesm2020 → fesm2022}/mtxLoader.mjs +7 -7
  116. package/{fesm2020 → fesm2022}/mtxLoader.mjs.map +1 -1
  117. package/{fesm2020 → fesm2022}/mtxPopover.mjs +19 -19
  118. package/{fesm2020 → fesm2022}/mtxPopover.mjs.map +1 -1
  119. package/{fesm2020 → fesm2022}/mtxProgress.mjs +7 -7
  120. package/{fesm2015 → fesm2022}/mtxProgress.mjs.map +1 -1
  121. package/{fesm2020 → fesm2022}/mtxSelect.mjs +67 -67
  122. package/{fesm2015 → fesm2022}/mtxSelect.mjs.map +1 -1
  123. package/{fesm2020 → fesm2022}/mtxSlider.mjs +7 -7
  124. package/{fesm2020 → fesm2022}/mtxSlider.mjs.map +1 -1
  125. package/{fesm2020 → fesm2022}/mtxSplit.mjs +10 -10
  126. package/{fesm2020 → fesm2022}/mtxSplit.mjs.map +1 -1
  127. package/{fesm2020 → fesm2022}/mtxTooltip.mjs +16 -16
  128. package/{fesm2015 → fesm2022}/mtxTooltip.mjs.map +1 -1
  129. package/grid/cell.d.ts +1 -1
  130. package/grid/column-menu.d.ts +1 -1
  131. package/grid/column-resize/resizable-directives/resizable.d.ts +1 -1
  132. package/grid/expansion-toggle.d.ts +1 -1
  133. package/grid/grid.d.ts +2 -2
  134. package/loader/loader.d.ts +1 -1
  135. package/package.json +69 -109
  136. package/popover/popover-trigger.d.ts +1 -1
  137. package/popover/popover.d.ts +1 -1
  138. package/progress/progress.d.ts +1 -1
  139. package/select/option.d.ts +1 -1
  140. package/select/select.d.ts +1 -1
  141. package/slider/slider.d.ts +1 -1
  142. package/split/split-pane.d.ts +1 -1
  143. package/split/split.d.ts +1 -1
  144. package/tooltip/tooltip.d.ts +1 -1
  145. package/tooltip/tooltip.scss +1 -4
  146. package/esm2020/alert/alert-module.mjs +0 -18
  147. package/esm2020/alert/alert.mjs +0 -52
  148. package/esm2020/button/button-loading.mjs +0 -76
  149. package/esm2020/button/button-module.mjs +0 -20
  150. package/esm2020/checkbox-group/checkbox-group-module.mjs +0 -21
  151. package/esm2020/checkbox-group/checkbox-group.mjs +0 -233
  152. package/esm2020/colorpicker/colorpicker-input.mjs +0 -228
  153. package/esm2020/colorpicker/colorpicker-module.mjs +0 -63
  154. package/esm2020/colorpicker/colorpicker-toggle.mjs +0 -101
  155. package/esm2020/colorpicker/colorpicker.mjs +0 -365
  156. package/esm2020/column-resize/column-resize-directives/column-resize-flex.mjs +0 -45
  157. package/esm2020/column-resize/column-resize-directives/column-resize.mjs +0 -45
  158. package/esm2020/column-resize/column-resize-module.mjs +0 -28
  159. package/esm2020/column-resize/column-resize-notifier.mjs +0 -47
  160. package/esm2020/column-resize/column-resize.mjs +0 -82
  161. package/esm2020/column-resize/column-size-store.mjs +0 -20
  162. package/esm2020/column-resize/event-dispatcher.mjs +0 -67
  163. package/esm2020/column-resize/overlay-handle.mjs +0 -146
  164. package/esm2020/column-resize/resizable.mjs +0 -199
  165. package/esm2020/column-resize/resize-strategy.mjs +0 -232
  166. package/esm2020/core/datetime/datetime.module.mjs +0 -42
  167. package/esm2020/core/datetime/native-datetime-adapter.mjs +0 -138
  168. package/esm2020/core/pipes/is-template-ref.pipe.mjs +0 -14
  169. package/esm2020/core/pipes/pipes.module.mjs +0 -19
  170. package/esm2020/core/pipes/to-observable.pipe.mjs +0 -15
  171. package/esm2020/datetimepicker/calendar-body.mjs +0 -78
  172. package/esm2020/datetimepicker/calendar.mjs +0 -671
  173. package/esm2020/datetimepicker/clock.mjs +0 -349
  174. package/esm2020/datetimepicker/datetimepicker-input.mjs +0 -349
  175. package/esm2020/datetimepicker/datetimepicker-intl.mjs +0 -63
  176. package/esm2020/datetimepicker/datetimepicker-module.mjs +0 -82
  177. package/esm2020/datetimepicker/datetimepicker-toggle.mjs +0 -104
  178. package/esm2020/datetimepicker/datetimepicker.mjs +0 -527
  179. package/esm2020/datetimepicker/month-view.mjs +0 -148
  180. package/esm2020/datetimepicker/multi-year-view.mjs +0 -214
  181. package/esm2020/datetimepicker/time.mjs +0 -456
  182. package/esm2020/datetimepicker/year-view.mjs +0 -138
  183. package/esm2020/dialog/dialog-container.mjs +0 -35
  184. package/esm2020/dialog/dialog-module.mjs +0 -24
  185. package/esm2020/dialog/dialog.mjs +0 -74
  186. package/esm2020/drawer/drawer-container.mjs +0 -252
  187. package/esm2020/drawer/drawer-module.mjs +0 -22
  188. package/esm2020/drawer/drawer.mjs +0 -166
  189. package/esm2020/grid/cell.mjs +0 -116
  190. package/esm2020/grid/column-resize/column-resize-directives/column-resize-flex.mjs +0 -37
  191. package/esm2020/grid/column-resize/column-resize-directives/column-resize.mjs +0 -37
  192. package/esm2020/grid/column-resize/column-resize-module.mjs +0 -42
  193. package/esm2020/grid/column-resize/overlay-handle.mjs +0 -60
  194. package/esm2020/grid/column-resize/resizable-directives/resizable.mjs +0 -62
  195. package/esm2020/grid/column-resize/resize-strategy.mjs +0 -42
  196. package/esm2020/grid/expansion-toggle.mjs +0 -64
  197. package/esm2020/grid/grid-module.mjs +0 -136
  198. package/esm2020/grid/grid-pipes.mjs +0 -108
  199. package/esm2020/grid/grid-utils.mjs +0 -63
  200. package/esm2020/grid/grid.mjs +0 -628
  201. package/esm2020/loader/loader-module.mjs +0 -20
  202. package/esm2020/loader/loader.mjs +0 -69
  203. package/esm2020/popover/popover-content.mjs +0 -90
  204. package/esm2020/popover/popover-module.mjs +0 -24
  205. package/esm2020/popover/popover-target.mjs +0 -17
  206. package/esm2020/popover/popover-trigger.mjs +0 -471
  207. package/esm2020/popover/popover.mjs +0 -383
  208. package/esm2020/progress/progress-module.mjs +0 -18
  209. package/esm2020/progress/progress.mjs +0 -55
  210. package/esm2020/select/option.mjs +0 -57
  211. package/esm2020/select/select-module.mjs +0 -74
  212. package/esm2020/select/select.mjs +0 -560
  213. package/esm2020/select/templates.mjs +0 -124
  214. package/esm2020/slider/slider-module.mjs +0 -19
  215. package/esm2020/slider/slider.mjs +0 -1115
  216. package/esm2020/split/split-module.mjs +0 -19
  217. package/esm2020/split/split-pane.mjs +0 -149
  218. package/esm2020/split/split.mjs +0 -634
  219. package/esm2020/tooltip/tooltip-module.mjs +0 -24
  220. package/esm2020/tooltip/tooltip.mjs +0 -926
  221. package/fesm2015/mtxAlert.mjs +0 -74
  222. package/fesm2015/mtxAlert.mjs.map +0 -1
  223. package/fesm2015/mtxButton.mjs +0 -99
  224. package/fesm2015/mtxCheckboxGroup.mjs +0 -256
  225. package/fesm2015/mtxCheckboxGroup.mjs.map +0 -1
  226. package/fesm2015/mtxColorpicker.mjs +0 -767
  227. package/fesm2015/mtxColorpicker.mjs.map +0 -1
  228. package/fesm2015/mtxColumnResize.mjs +0 -959
  229. package/fesm2015/mtxCore.mjs +0 -374
  230. package/fesm2015/mtxCore.mjs.map +0 -1
  231. package/fesm2015/mtxDatetimepicker.mjs +0 -3164
  232. package/fesm2015/mtxDatetimepicker.mjs.map +0 -1
  233. package/fesm2015/mtxDialog.mjs +0 -130
  234. package/fesm2015/mtxDrawer.mjs +0 -578
  235. package/fesm2015/mtxDrawer.mjs.map +0 -1
  236. package/fesm2015/mtxGrid.mjs +0 -1514
  237. package/fesm2015/mtxGrid.mjs.map +0 -1
  238. package/fesm2015/mtxLoader.mjs +0 -93
  239. package/fesm2015/mtxLoader.mjs.map +0 -1
  240. package/fesm2015/mtxPopover.mjs +0 -1027
  241. package/fesm2015/mtxPopover.mjs.map +0 -1
  242. package/fesm2015/mtxProgress.mjs +0 -77
  243. package/fesm2015/mtxSelect.mjs +0 -814
  244. package/fesm2015/mtxSlider.mjs +0 -1139
  245. package/fesm2015/mtxSlider.mjs.map +0 -1
  246. package/fesm2015/mtxSplit.mjs +0 -1025
  247. package/fesm2015/mtxSplit.mjs.map +0 -1
  248. package/fesm2015/mtxTooltip.mjs +0 -982
  249. package/fesm2020/mtxButton.mjs.map +0 -1
  250. package/fesm2020/mtxColumnResize.mjs.map +0 -1
  251. package/fesm2020/mtxCore.mjs.map +0 -1
  252. package/fesm2020/mtxDatetimepicker.mjs.map +0 -1
  253. package/fesm2020/mtxDialog.mjs.map +0 -1
  254. package/fesm2020/mtxProgress.mjs.map +0 -1
  255. package/fesm2020/mtxSelect.mjs.map +0 -1
  256. package/fesm2020/mtxTooltip.mjs.map +0 -1
  257. package/fesm2020/ng-matero-extensions.mjs +0 -9
  258. package/fesm2020/ng-matero-extensions.mjs.map +0 -1
  259. /package/{esm2020 → esm2022}/alert/mtxAlert.mjs +0 -0
  260. /package/{esm2020 → esm2022}/alert/public-api.mjs +0 -0
  261. /package/{esm2020 → esm2022}/button/mtxButton.mjs +0 -0
  262. /package/{esm2020 → esm2022}/button/public-api.mjs +0 -0
  263. /package/{esm2020 → esm2022}/checkbox-group/interfaces.mjs +0 -0
  264. /package/{esm2020 → esm2022}/checkbox-group/mtxCheckboxGroup.mjs +0 -0
  265. /package/{esm2020 → esm2022}/checkbox-group/public-api.mjs +0 -0
  266. /package/{esm2020 → esm2022}/colorpicker/colorpicker-animations.mjs +0 -0
  267. /package/{esm2020 → esm2022}/colorpicker/mtxColorpicker.mjs +0 -0
  268. /package/{esm2020 → esm2022}/colorpicker/public-api.mjs +0 -0
  269. /package/{esm2020 → esm2022}/column-resize/column-resize-directives/constants.mjs +0 -0
  270. /package/{esm2020 → esm2022}/column-resize/mtxColumnResize.mjs +0 -0
  271. /package/{esm2020 → esm2022}/column-resize/polyfill.mjs +0 -0
  272. /package/{esm2020 → esm2022}/column-resize/public-api.mjs +0 -0
  273. /package/{esm2020 → esm2022}/column-resize/resize-ref.mjs +0 -0
  274. /package/{esm2020 → esm2022}/column-resize/selectors.mjs +0 -0
  275. /package/{esm2020 → esm2022}/core/datetime/datetime-formats.mjs +0 -0
  276. /package/{esm2020 → esm2022}/core/datetime/index.mjs +0 -0
  277. /package/{esm2020 → esm2022}/core/datetime/native-datetime-formats.mjs +0 -0
  278. /package/{esm2020 → esm2022}/core/mtxCore.mjs +0 -0
  279. /package/{esm2020 → esm2022}/core/pipes/index.mjs +0 -0
  280. /package/{esm2020 → esm2022}/core/public-api.mjs +0 -0
  281. /package/{esm2020 → esm2022}/datetimepicker/datetimepicker-animations.mjs +0 -0
  282. /package/{esm2020 → esm2022}/datetimepicker/datetimepicker-errors.mjs +0 -0
  283. /package/{esm2020 → esm2022}/datetimepicker/datetimepicker-filtertype.mjs +0 -0
  284. /package/{esm2020 → esm2022}/datetimepicker/datetimepicker-types.mjs +0 -0
  285. /package/{esm2020 → esm2022}/datetimepicker/mtxDatetimepicker.mjs +0 -0
  286. /package/{esm2020 → esm2022}/datetimepicker/public-api.mjs +0 -0
  287. /package/{esm2020 → esm2022}/dialog/dialog-config.mjs +0 -0
  288. /package/{esm2020 → esm2022}/dialog/mtxDialog.mjs +0 -0
  289. /package/{esm2020 → esm2022}/dialog/public-api.mjs +0 -0
  290. /package/{esm2020 → esm2022}/drawer/drawer-animation.mjs +0 -0
  291. /package/{esm2020 → esm2022}/drawer/drawer-config.mjs +0 -0
  292. /package/{esm2020 → esm2022}/drawer/drawer-ref.mjs +0 -0
  293. /package/{esm2020 → esm2022}/drawer/mtxDrawer.mjs +0 -0
  294. /package/{esm2020 → esm2022}/drawer/public-api.mjs +0 -0
  295. /package/{esm2020 → esm2022}/grid/column-resize/column-resize-directives/common.mjs +0 -0
  296. /package/{esm2020 → esm2022}/grid/column-resize/resizable-directives/common.mjs +0 -0
  297. /package/{esm2020 → esm2022}/grid/interfaces.mjs +0 -0
  298. /package/{esm2020 → esm2022}/grid/mtxGrid.mjs +0 -0
  299. /package/{esm2020 → esm2022}/grid/public-api.mjs +0 -0
  300. /package/{esm2020 → esm2022}/loader/mtxLoader.mjs +0 -0
  301. /package/{esm2020 → esm2022}/loader/public-api.mjs +0 -0
  302. /package/{esm2020 → esm2022}/ng-matero-extensions.mjs +0 -0
  303. /package/{esm2020 → esm2022}/popover/mtxPopover.mjs +0 -0
  304. /package/{esm2020 → esm2022}/popover/popover-animations.mjs +0 -0
  305. /package/{esm2020 → esm2022}/popover/popover-errors.mjs +0 -0
  306. /package/{esm2020 → esm2022}/popover/popover-interfaces.mjs +0 -0
  307. /package/{esm2020 → esm2022}/popover/popover-types.mjs +0 -0
  308. /package/{esm2020 → esm2022}/popover/public-api.mjs +0 -0
  309. /package/{esm2020 → esm2022}/progress/mtxProgress.mjs +0 -0
  310. /package/{esm2020 → esm2022}/progress/public-api.mjs +0 -0
  311. /package/{esm2020 → esm2022}/public-api.mjs +0 -0
  312. /package/{esm2020 → esm2022}/select/mtxSelect.mjs +0 -0
  313. /package/{esm2020 → esm2022}/select/public-api.mjs +0 -0
  314. /package/{esm2020 → esm2022}/slider/mtxSlider.mjs +0 -0
  315. /package/{esm2020 → esm2022}/slider/public-api.mjs +0 -0
  316. /package/{esm2020 → esm2022}/split/interfaces.mjs +0 -0
  317. /package/{esm2020 → esm2022}/split/mtxSplit.mjs +0 -0
  318. /package/{esm2020 → esm2022}/split/public-api.mjs +0 -0
  319. /package/{esm2020 → esm2022}/split/utils.mjs +0 -0
  320. /package/{esm2020 → esm2022}/tooltip/mtxTooltip.mjs +0 -0
  321. /package/{esm2020 → esm2022}/tooltip/public-api.mjs +0 -0
  322. /package/{esm2020 → esm2022}/tooltip/tooltip-animations.mjs +0 -0
  323. /package/{fesm2015 → fesm2022}/ng-matero-extensions.mjs +0 -0
  324. /package/{fesm2015 → fesm2022}/ng-matero-extensions.mjs.map +0 -0
@@ -0,0 +1,350 @@
1
+ import { Directive, EventEmitter, forwardRef, Inject, Input, Optional, Output, } from '@angular/core';
2
+ import { NG_VALIDATORS, NG_VALUE_ACCESSOR, Validators, } from '@angular/forms';
3
+ import { coerceBooleanProperty } from '@angular/cdk/coercion';
4
+ import { DOWN_ARROW } from '@angular/cdk/keycodes';
5
+ import { MAT_INPUT_VALUE_ACCESSOR } from '@angular/material/input';
6
+ import { Subscription } from 'rxjs';
7
+ import { MTX_DATETIME_FORMATS, } from '@ng-matero/extensions/core';
8
+ import { createMissingDateImplError } from './datetimepicker-errors';
9
+ import { MtxDatetimepickerFilterType } from './datetimepicker-filtertype';
10
+ import * as i0 from "@angular/core";
11
+ import * as i1 from "@ng-matero/extensions/core";
12
+ import * as i2 from "@angular/material/form-field";
13
+ export const MAT_DATETIMEPICKER_VALUE_ACCESSOR = {
14
+ provide: NG_VALUE_ACCESSOR,
15
+ useExisting: forwardRef(() => MtxDatetimepickerInput),
16
+ multi: true,
17
+ };
18
+ export const MAT_DATETIMEPICKER_VALIDATORS = {
19
+ provide: NG_VALIDATORS,
20
+ useExisting: forwardRef(() => MtxDatetimepickerInput),
21
+ multi: true,
22
+ };
23
+ /**
24
+ * An event used for datetimepicker input and change events. We don't always have access to a native
25
+ * input or change event because the event may have been triggered by the user clicking on the
26
+ * calendar popup. For consistency, we always use MtxDatetimepickerInputEvent instead.
27
+ */
28
+ export class MtxDatetimepickerInputEvent {
29
+ constructor(target, targetElement) {
30
+ this.target = target;
31
+ this.targetElement = targetElement;
32
+ this.value = this.target.value;
33
+ }
34
+ }
35
+ /** Directive used to connect an input to a MtxDatetimepicker. */
36
+ class MtxDatetimepickerInput {
37
+ constructor(_elementRef, _dateAdapter, _dateFormats, _formField) {
38
+ this._elementRef = _elementRef;
39
+ this._dateAdapter = _dateAdapter;
40
+ this._dateFormats = _dateFormats;
41
+ this._formField = _formField;
42
+ /** Emits when a `change` event is fired on this `<input>`. */
43
+ this.dateChange = new EventEmitter();
44
+ /** Emits when an `input` event is fired on this `<input>`. */
45
+ this.dateInput = new EventEmitter();
46
+ /** Emits when the value changes (either due to user input or programmatic change). */
47
+ this._valueChange = new EventEmitter();
48
+ /** Emits when the disabled state has changed */
49
+ this._disabledChange = new EventEmitter();
50
+ this._datetimepickerSubscription = Subscription.EMPTY;
51
+ this._localeSubscription = Subscription.EMPTY;
52
+ /** Whether the last value set on the input was valid. */
53
+ this._lastValueValid = false;
54
+ this._onTouched = () => { };
55
+ this._cvaOnChange = () => { };
56
+ this._validatorOnChange = () => { };
57
+ /** The form control validator for whether the input parses. */
58
+ this._parseValidator = () => {
59
+ return this._lastValueValid
60
+ ? null
61
+ : { mtxDatetimepickerParse: { text: this._elementRef.nativeElement.value } };
62
+ };
63
+ /** The form control validator for the min date. */
64
+ this._minValidator = (control) => {
65
+ const controlValue = this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(control.value));
66
+ return !this.min ||
67
+ !controlValue ||
68
+ this._dateAdapter.compareDatetime(this.min, controlValue) <= 0
69
+ ? null
70
+ : { mtxDatetimepickerMin: { min: this.min, actual: controlValue } };
71
+ };
72
+ /** The form control validator for the max date. */
73
+ this._maxValidator = (control) => {
74
+ const controlValue = this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(control.value));
75
+ return !this.max ||
76
+ !controlValue ||
77
+ this._dateAdapter.compareDatetime(this.max, controlValue) >= 0
78
+ ? null
79
+ : { mtxDatetimepickerMax: { max: this.max, actual: controlValue } };
80
+ };
81
+ /** The form control validator for the date filter. */
82
+ this._filterValidator = (control) => {
83
+ const controlValue = this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(control.value));
84
+ return !this._dateFilter ||
85
+ !controlValue ||
86
+ this._dateFilter(controlValue, MtxDatetimepickerFilterType.DATE)
87
+ ? null
88
+ : { mtxDatetimepickerFilter: true };
89
+ };
90
+ /** The combined form control validator for this input. */
91
+ this._validator = Validators.compose([
92
+ this._parseValidator,
93
+ this._minValidator,
94
+ this._maxValidator,
95
+ this._filterValidator,
96
+ ]);
97
+ if (!this._dateAdapter) {
98
+ throw createMissingDateImplError('DatetimeAdapter');
99
+ }
100
+ if (!this._dateFormats) {
101
+ throw createMissingDateImplError('MTX_DATETIME_FORMATS');
102
+ }
103
+ // Update the displayed date when the locale changes.
104
+ this._localeSubscription = _dateAdapter.localeChanges.subscribe(() => {
105
+ this.value = this._dateAdapter.deserialize(this.value);
106
+ });
107
+ }
108
+ /** The datetimepicker that this input is associated with. */
109
+ set mtxDatetimepicker(value) {
110
+ this.registerDatetimepicker(value);
111
+ }
112
+ set mtxDatetimepickerFilter(filter) {
113
+ this._dateFilter = filter;
114
+ this._validatorOnChange();
115
+ }
116
+ /** The value of the input. */
117
+ get value() {
118
+ return this._value;
119
+ }
120
+ set value(value) {
121
+ value = this._dateAdapter.deserialize(value);
122
+ this._lastValueValid = !value || this._dateAdapter.isValid(value);
123
+ value = this._dateAdapter.getValidDateOrNull(value);
124
+ const oldDate = this.value;
125
+ this._value = value;
126
+ this._formatValue(value);
127
+ // use timeout to ensure the datetimepicker is instantiated and we get the correct format
128
+ setTimeout(() => {
129
+ if (!this._dateAdapter.sameDatetime(oldDate, value)) {
130
+ this._valueChange.emit(value);
131
+ }
132
+ });
133
+ }
134
+ /** The minimum valid date. */
135
+ get min() {
136
+ return this._min;
137
+ }
138
+ set min(value) {
139
+ this._min = this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(value));
140
+ this._validatorOnChange();
141
+ }
142
+ /** The maximum valid date. */
143
+ get max() {
144
+ return this._max;
145
+ }
146
+ set max(value) {
147
+ this._max = this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(value));
148
+ this._validatorOnChange();
149
+ }
150
+ /** Whether the datetimepicker-input is disabled. */
151
+ get disabled() {
152
+ return !!this._disabled;
153
+ }
154
+ set disabled(value) {
155
+ const newValue = coerceBooleanProperty(value);
156
+ if (this._disabled !== newValue) {
157
+ this._disabled = newValue;
158
+ this._disabledChange.emit(newValue);
159
+ }
160
+ }
161
+ ngAfterContentInit() {
162
+ if (this._datetimepicker) {
163
+ this._datetimepickerSubscription = this._datetimepicker.selectedChanged.subscribe((selected) => {
164
+ this.value = selected;
165
+ this._cvaOnChange(selected);
166
+ this._onTouched();
167
+ this.dateInput.emit(new MtxDatetimepickerInputEvent(this, this._elementRef.nativeElement));
168
+ this.dateChange.emit(new MtxDatetimepickerInputEvent(this, this._elementRef.nativeElement));
169
+ });
170
+ }
171
+ }
172
+ ngOnDestroy() {
173
+ this._datetimepickerSubscription.unsubscribe();
174
+ this._localeSubscription.unsubscribe();
175
+ this._valueChange.complete();
176
+ this._disabledChange.complete();
177
+ }
178
+ registerOnValidatorChange(fn) {
179
+ this._validatorOnChange = fn;
180
+ }
181
+ validate(c) {
182
+ return this._validator ? this._validator(c) : null;
183
+ }
184
+ /**
185
+ * Gets the element that the datetimepicker popup should be connected to.
186
+ * @return The element to connect the popup to.
187
+ */
188
+ getConnectedOverlayOrigin() {
189
+ return this._formField ? this._formField.getConnectedOverlayOrigin() : this._elementRef;
190
+ }
191
+ /** Gets the ID of an element that should be used a description for the calendar overlay. */
192
+ getOverlayLabelId() {
193
+ if (this._formField) {
194
+ return this._formField.getLabelId();
195
+ }
196
+ return this._elementRef.nativeElement.getAttribute('aria-labelledby');
197
+ }
198
+ // Implemented as part of ControlValueAccessor
199
+ writeValue(value) {
200
+ this.value = value;
201
+ }
202
+ // Implemented as part of ControlValueAccessor
203
+ registerOnChange(fn) {
204
+ this._cvaOnChange = fn;
205
+ }
206
+ // Implemented as part of ControlValueAccessor
207
+ registerOnTouched(fn) {
208
+ this._onTouched = fn;
209
+ }
210
+ // Implemented as part of ControlValueAccessor
211
+ setDisabledState(disabled) {
212
+ this.disabled = disabled;
213
+ }
214
+ _onKeydown(event) {
215
+ if (event.altKey && event.keyCode === DOWN_ARROW) {
216
+ this._datetimepicker.open();
217
+ event.preventDefault();
218
+ }
219
+ }
220
+ _onInput(value) {
221
+ let date = this._dateAdapter.parse(value, this.getParseFormat());
222
+ this._lastValueValid = !date || this._dateAdapter.isValid(date);
223
+ date = this._dateAdapter.getValidDateOrNull(date);
224
+ this._value = date;
225
+ this._cvaOnChange(date);
226
+ this._valueChange.emit(date);
227
+ this.dateInput.emit(new MtxDatetimepickerInputEvent(this, this._elementRef.nativeElement));
228
+ }
229
+ _onChange() {
230
+ this.dateChange.emit(new MtxDatetimepickerInputEvent(this, this._elementRef.nativeElement));
231
+ }
232
+ /** Handles blur events on the input. */
233
+ _onBlur() {
234
+ // Reformat the input only if we have a valid value.
235
+ if (this.value) {
236
+ this._formatValue(this.value);
237
+ }
238
+ this._onTouched();
239
+ }
240
+ registerDatetimepicker(value) {
241
+ if (value) {
242
+ this._datetimepicker = value;
243
+ this._datetimepicker._registerInput(this);
244
+ }
245
+ }
246
+ getDisplayFormat() {
247
+ switch (this._datetimepicker.type) {
248
+ case 'date':
249
+ return this._dateFormats.display.dateInput;
250
+ case 'datetime':
251
+ return this._dateFormats.display.datetimeInput;
252
+ case 'time':
253
+ return this._dateFormats.display.timeInput;
254
+ case 'month':
255
+ return this._dateFormats.display.monthInput;
256
+ case 'year':
257
+ return this._dateFormats.display.yearInput;
258
+ }
259
+ }
260
+ getParseFormat() {
261
+ let parseFormat;
262
+ switch (this._datetimepicker.type) {
263
+ case 'date':
264
+ parseFormat = this._dateFormats.parse.dateInput;
265
+ break;
266
+ case 'datetime':
267
+ parseFormat = this._dateFormats.parse.datetimeInput;
268
+ break;
269
+ case 'time':
270
+ parseFormat = this._dateFormats.parse.timeInput;
271
+ break;
272
+ case 'month':
273
+ parseFormat = this._dateFormats.parse.monthInput;
274
+ break;
275
+ case 'year':
276
+ parseFormat = this._dateFormats.parse.yearInput;
277
+ break;
278
+ }
279
+ if (!parseFormat) {
280
+ parseFormat = this._dateFormats.parse.dateInput;
281
+ }
282
+ return parseFormat;
283
+ }
284
+ /** Formats a value and sets it on the input element. */
285
+ _formatValue(value) {
286
+ this._elementRef.nativeElement.value = value
287
+ ? this._dateAdapter.format(value, this.getDisplayFormat())
288
+ : '';
289
+ }
290
+ /** Returns the palette used by the input's form field, if any. */
291
+ getThemePalette() {
292
+ return this._formField ? this._formField.color : undefined;
293
+ }
294
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.3", ngImport: i0, type: MtxDatetimepickerInput, deps: [{ token: i0.ElementRef }, { token: i1.DatetimeAdapter, optional: true }, { token: MTX_DATETIME_FORMATS, optional: true }, { token: i2.MatFormField, optional: true }], target: i0.ɵɵFactoryTarget.Directive }); }
295
+ /** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.0.3", type: MtxDatetimepickerInput, selector: "input[mtxDatetimepicker]", inputs: { mtxDatetimepicker: "mtxDatetimepicker", mtxDatetimepickerFilter: "mtxDatetimepickerFilter", value: "value", min: "min", max: "max", disabled: "disabled" }, outputs: { dateChange: "dateChange", dateInput: "dateInput" }, host: { listeners: { "input": "_onInput($event.target.value)", "change": "_onChange()", "blur": "_onBlur()", "keydown": "_onKeydown($event)" }, properties: { "attr.aria-haspopup": "true", "attr.aria-owns": "(_datetimepicker?.opened && _datetimepicker.id) || null", "attr.min": "min ? _dateAdapter.toIso8601(min) : null", "attr.max": "max ? _dateAdapter.toIso8601(max) : null", "disabled": "disabled" } }, providers: [
296
+ MAT_DATETIMEPICKER_VALUE_ACCESSOR,
297
+ MAT_DATETIMEPICKER_VALIDATORS,
298
+ { provide: MAT_INPUT_VALUE_ACCESSOR, useExisting: MtxDatetimepickerInput },
299
+ ], exportAs: ["mtxDatetimepickerInput"], ngImport: i0 }); }
300
+ }
301
+ export { MtxDatetimepickerInput };
302
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.3", ngImport: i0, type: MtxDatetimepickerInput, decorators: [{
303
+ type: Directive,
304
+ args: [{
305
+ selector: 'input[mtxDatetimepicker]',
306
+ providers: [
307
+ MAT_DATETIMEPICKER_VALUE_ACCESSOR,
308
+ MAT_DATETIMEPICKER_VALIDATORS,
309
+ { provide: MAT_INPUT_VALUE_ACCESSOR, useExisting: MtxDatetimepickerInput },
310
+ ],
311
+ host: {
312
+ '[attr.aria-haspopup]': 'true',
313
+ '[attr.aria-owns]': '(_datetimepicker?.opened && _datetimepicker.id) || null',
314
+ '[attr.min]': 'min ? _dateAdapter.toIso8601(min) : null',
315
+ '[attr.max]': 'max ? _dateAdapter.toIso8601(max) : null',
316
+ '[disabled]': 'disabled',
317
+ '(input)': '_onInput($event.target.value)',
318
+ '(change)': '_onChange()',
319
+ '(blur)': '_onBlur()',
320
+ '(keydown)': '_onKeydown($event)',
321
+ },
322
+ exportAs: 'mtxDatetimepickerInput',
323
+ }]
324
+ }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i1.DatetimeAdapter, decorators: [{
325
+ type: Optional
326
+ }] }, { type: undefined, decorators: [{
327
+ type: Optional
328
+ }, {
329
+ type: Inject,
330
+ args: [MTX_DATETIME_FORMATS]
331
+ }] }, { type: i2.MatFormField, decorators: [{
332
+ type: Optional
333
+ }] }]; }, propDecorators: { dateChange: [{
334
+ type: Output
335
+ }], dateInput: [{
336
+ type: Output
337
+ }], mtxDatetimepicker: [{
338
+ type: Input
339
+ }], mtxDatetimepickerFilter: [{
340
+ type: Input
341
+ }], value: [{
342
+ type: Input
343
+ }], min: [{
344
+ type: Input
345
+ }], max: [{
346
+ type: Input
347
+ }], disabled: [{
348
+ type: Input
349
+ }] } });
350
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZXRpbWVwaWNrZXItaW5wdXQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9leHRlbnNpb25zL2RhdGV0aW1lcGlja2VyL2RhdGV0aW1lcGlja2VyLWlucHV0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFTCxTQUFTLEVBRVQsWUFBWSxFQUNaLFVBQVUsRUFDVixNQUFNLEVBQ04sS0FBSyxFQUVMLFFBQVEsRUFDUixNQUFNLEdBQ1AsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUdMLGFBQWEsRUFDYixpQkFBaUIsRUFJakIsVUFBVSxHQUNYLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEIsT0FBTyxFQUFnQixxQkFBcUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQzVFLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUVuRCxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUVuRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3BDLE9BQU8sRUFFTCxvQkFBb0IsR0FFckIsTUFBTSw0QkFBNEIsQ0FBQztBQUVwQyxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUNyRSxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQzs7OztBQUUxRSxNQUFNLENBQUMsTUFBTSxpQ0FBaUMsR0FBUTtJQUNwRCxPQUFPLEVBQUUsaUJBQWlCO0lBQzFCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsc0JBQXNCLENBQUM7SUFDckQsS0FBSyxFQUFFLElBQUk7Q0FDWixDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sNkJBQTZCLEdBQVE7SUFDaEQsT0FBTyxFQUFFLGFBQWE7SUFDdEIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxzQkFBc0IsQ0FBQztJQUNy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RCxVQUFVO3NCQUFuQixNQUFNO2dCQUdHLFNBQVM7c0JBQWxCLE1BQU07Z0JBb0NILGlCQUFpQjtzQkFEcEIsS0FBSztnQkFNRix1QkFBdUI7c0JBRDFCLEtBQUs7Z0JBVUYsS0FBSztzQkFEUixLQUFLO2dCQXVCRixHQUFHO3NCQUROLEtBQUs7Z0JBWUYsR0FBRztzQkFETixLQUFLO2dCQVlGLFFBQVE7c0JBRFgsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEFmdGVyQ29udGVudEluaXQsXG4gIERpcmVjdGl2ZSxcbiAgRWxlbWVudFJlZixcbiAgRXZlbnRFbWl0dGVyLFxuICBmb3J3YXJkUmVmLFxuICBJbmplY3QsXG4gIElucHV0LFxuICBPbkRlc3Ryb3ksXG4gIE9wdGlvbmFsLFxuICBPdXRwdXQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgQWJzdHJhY3RDb250cm9sLFxuICBDb250cm9sVmFsdWVBY2Nlc3NvcixcbiAgTkdfVkFMSURBVE9SUyxcbiAgTkdfVkFMVUVfQUNDRVNTT1IsXG4gIFZhbGlkYXRpb25FcnJvcnMsXG4gIFZhbGlkYXRvcixcbiAgVmFsaWRhdG9yRm4sXG4gIFZhbGlkYXRvcnMsXG59IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IEJvb2xlYW5JbnB1dCwgY29lcmNlQm9vbGVhblByb3BlcnR5IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2NvZXJjaW9uJztcbmltcG9ydCB7IERPV05fQVJST1cgfSBmcm9tICdAYW5ndWxhci9jZGsva2V5Y29kZXMnO1xuaW1wb3J0IHsgVGhlbWVQYWxldHRlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvY29yZSc7XG5pbXBvcnQgeyBNQVRfSU5QVVRfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pbnB1dCc7XG5pbXBvcnQgeyBNYXRGb3JtRmllbGQgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9mb3JtLWZpZWxkJztcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtcbiAgRGF0ZXRpbWVBZGFwdGVyLFxuICBNVFhfREFURVRJTUVfRk9STUFUUyxcbiAgTXR4RGF0ZXRpbWVGb3JtYXRzLFxufSBmcm9tICdAbmctbWF0ZXJvL2V4dGVuc2lvbnMvY29yZSc7XG5pbXBvcnQgeyBNdHhEYXRldGltZXBpY2tlciB9IGZyb20gJy4vZGF0ZXRpbWVwaWNrZXInO1xuaW1wb3J0IHsgY3JlYXRlTWlzc2luZ0RhdGVJbXBsRXJyb3IgfSBmcm9tICcuL2RhdGV0aW1lcGlja2VyLWVycm9ycyc7XG5pbXBvcnQgeyBNdHhEYXRldGltZXBpY2tlckZpbHRlclR5cGUgfSBmcm9tICcuL2RhdGV0aW1lcGlja2VyLWZpbHRlcnR5cGUnO1xuXG5leHBvcnQgY29uc3QgTUFUX0RBVEVUSU1FUElDS0VSX1ZBTFVFX0FDQ0VTU09SOiBhbnkgPSB7XG4gIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBNdHhEYXRldGltZXBpY2tlcklucHV0KSxcbiAgbXVsdGk6IHRydWUsXG59O1xuXG5leHBvcnQgY29uc3QgTUFUX0RBVEVUSU1FUElDS0VSX1ZBTElEQVRPUlM6IGFueSA9IHtcbiAgcHJvdmlkZTogTkdfVkFMSURBVE9SUyxcbiAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gTXR4RGF0ZXRpbWVwaWNrZXJJbnB1dCksXG4gIG11bHRpOiB0cnVlLFxufTtcblxuLyoqXG4gKiBBbiBldmVudCB1c2VkIGZvciBkYXRldGltZXBpY2tlciBpbnB1dCBhbmQgY2hhbmdlIGV2ZW50cy4gV2UgZG9uJ3QgYWx3YXlzIGhhdmUgYWNjZXNzIHRvIGEgbmF0aXZlXG4gKiBpbnB1dCBvciBjaGFuZ2UgZXZlbnQgYmVjYXVzZSB0aGUgZXZlbnQgbWF5IGhhdmUgYmVlbiB0cmlnZ2VyZWQgYnkgdGhlIHVzZXIgY2xpY2tpbmcgb24gdGhlXG4gKiBjYWxlbmRhciBwb3B1cC4gRm9yIGNvbnNpc3RlbmN5LCB3ZSBhbHdheXMgdXNlIE10eERhdGV0aW1lcGlja2VySW5wdXRFdmVudCBpbnN0ZWFkLlxuICovXG5leHBvcnQgY2xhc3MgTXR4RGF0ZXRpbWVwaWNrZXJJbnB1dEV2ZW50PEQ+IHtcbiAgLyoqIFRoZSBuZXcgdmFsdWUgZm9yIHRoZSB0YXJnZXQgZGF0ZXRpbWVwaWNrZXIgaW5wdXQuICovXG4gIHZhbHVlOiBEIHwgbnVsbDtcblxuICBjb25zdHJ1Y3RvcihwdWJsaWMgdGFyZ2V0OiBNdHhEYXRldGltZXBpY2tlcklucHV0PEQ+LCBwdWJsaWMgdGFyZ2V0RWxlbWVudDogSFRNTEVsZW1lbnQpIHtcbiAgICB0aGlzLnZhbHVlID0gdGhpcy50YXJnZXQudmFsdWU7XG4gIH1cbn1cblxuLyoqIERpcmVjdGl2ZSB1c2VkIHRvIGNvbm5lY3QgYW4gaW5wdXQgdG8gYSBNdHhEYXRldGltZXBpY2tlci4gKi9cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ2lucHV0W210eERhdGV0aW1lcGlja2VyXScsXG4gIHByb3ZpZGVyczogW1xuICAgIE1BVF9EQVRFVElNRVBJQ0tFUl9WQUxVRV9BQ0NFU1NPUixcbiAgICBNQVRfREFURVRJTUVQSUNLRVJfVkFMSURBVE9SUyxcbiAgICB7IHByb3ZpZGU6IE1BVF9JTlBVVF9WQUxVRV9BQ0NFU1NPUiwgdXNlRXhpc3Rpbmc6IE10eERhdGV0aW1lcGlja2VySW5wdXQgfSxcbiAgXSxcbiAgaG9zdDoge1xuICAgICdbYXR0ci5hcmlhLWhhc3BvcHVwXSc6ICd0cnVlJyxcbiAgICAnW2F0dHIuYXJpYS1vd25zXSc6ICcoX2RhdGV0aW1lcGlja2VyPy5vcGVuZWQgJiYgX2RhdGV0aW1lcGlja2VyLmlkKSB8fCBudWxsJyxcbiAgICAnW2F0dHIubWluXSc6ICdtaW4gPyBfZGF0ZUFkYXB0ZXIudG9Jc284NjAxKG1pbikgOiBudWxsJyxcbiAgICAnW2F0dHIubWF4XSc6ICdtYXggPyBfZGF0ZUFkYXB0ZXIudG9Jc284NjAxKG1heCkgOiBudWxsJyxcbiAgICAnW2Rpc2FibGVkXSc6ICdkaXNhYmxlZCcsXG4gICAgJyhpbnB1dCknOiAnX29uSW5wdXQoJGV2ZW50LnRhcmdldC52YWx1ZSknLFxuICAgICcoY2hhbmdlKSc6ICdfb25DaGFuZ2UoKScsXG4gICAgJyhibHVyKSc6ICdfb25CbHVyKCknLFxuICAgICcoa2V5ZG93biknOiAnX29uS2V5ZG93bigkZXZlbnQpJyxcbiAgfSxcbiAgZXhwb3J0QXM6ICdtdHhEYXRldGltZXBpY2tlcklucHV0Jyxcbn0pXG5leHBvcnQgY2xhc3MgTXR4RGF0ZXRpbWVwaWNrZXJJbnB1dDxEPlxuICBpbXBsZW1lbnRzIEFmdGVyQ29udGVudEluaXQsIENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBPbkRlc3Ryb3ksIFZhbGlkYXRvclxue1xuICBfZGF0ZXRpbWVwaWNrZXIhOiBNdHhEYXRldGltZXBpY2tlcjxEPjtcblxuICBfZGF0ZUZpbHRlciE6IChkYXRlOiBEIHwgbnVsbCwgdHlwZTogTXR4RGF0ZXRpbWVwaWNrZXJGaWx0ZXJUeXBlKSA9PiBib29sZWFuO1xuXG4gIC8qKiBFbWl0cyB3aGVuIGEgYGNoYW5nZWAgZXZlbnQgaXMgZmlyZWQgb24gdGhpcyBgPGlucHV0PmAuICovXG4gIEBPdXRwdXQoKSBkYXRlQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxNdHhEYXRldGltZXBpY2tlcklucHV0RXZlbnQ8RD4+KCk7XG5cbiAgLyoqIEVtaXRzIHdoZW4gYW4gYGlucHV0YCBldmVudCBpcyBmaXJlZCBvbiB0aGlzIGA8aW5wdXQ+YC4gKi9cbiAgQE91dHB1dCgpIGRhdGVJbnB1dCA9IG5ldyBFdmVudEVtaXR0ZXI8TXR4RGF0ZXRpbWVwaWNrZXJJbnB1dEV2ZW50PEQ+PigpO1xuXG4gIC8qKiBFbWl0cyB3aGVuIHRoZSB2YWx1ZSBjaGFuZ2VzIChlaXRoZXIgZHVlIHRvIHVzZXIgaW5wdXQgb3IgcHJvZ3JhbW1hdGljIGNoYW5nZSkuICovXG4gIF92YWx1ZUNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8RCB8IG51bGw+KCk7XG5cbiAgLyoqIEVtaXRzIHdoZW4gdGhlIGRpc2FibGVkIHN0YXRlIGhhcyBjaGFuZ2VkICovXG4gIF9kaXNhYmxlZENoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKTtcblxuICBwcml2YXRlIF9kYXRldGltZXBpY2tlclN1YnNjcmlwdGlvbiA9IFN1YnNjcmlwdGlvbi5FTVBUWTtcblxuICBwcml2YXRlIF9sb2NhbGVTdWJzY3JpcHRpb24gPSBTdWJzY3JpcHRpb24uRU1QVFk7XG5cbiAgLyoqIFdoZXRoZXIgdGhlIGxhc3QgdmFsdWUgc2V0IG9uIHRoZSBpbnB1dCB3YXMgdmFsaWQuICovXG4gIHByaXZhdGUgX2xhc3RWYWx1ZVZhbGlkID0gZmFsc2U7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBfZWxlbWVudFJlZjogRWxlbWVudFJlZixcbiAgICBAT3B0aW9uYWwoKSBwdWJsaWMgX2RhdGVBZGFwdGVyOiBEYXRldGltZUFkYXB0ZXI8RD4sXG4gICAgQE9wdGlvbmFsKCkgQEluamVjdChNVFhfREFURVRJTUVfRk9STUFUUykgcHJpdmF0ZSBfZGF0ZUZvcm1hdHM6IE10eERhdGV0aW1lRm9ybWF0cyxcbiAgICBAT3B0aW9uYWwoKSBwcml2YXRlIF9mb3JtRmllbGQ6IE1hdEZvcm1GaWVsZFxuICApIHtcbiAgICBpZiAoIXRoaXMuX2RhdGVBZGFwdGVyKSB7XG4gICAgICB0aHJvdyBjcmVhdGVNaXNzaW5nRGF0ZUltcGxFcnJvcignRGF0ZXRpbWVBZGFwdGVyJyk7XG4gICAgfVxuICAgIGlmICghdGhpcy5fZGF0ZUZvcm1hdHMpIHtcbiAgICAgIHRocm93IGNyZWF0ZU1pc3NpbmdEYXRlSW1wbEVycm9yKCdNVFhfREFURVRJTUVfRk9STUFUUycpO1xuICAgIH1cblxuICAgIC8vIFVwZGF0ZSB0aGUgZGlzcGxheWVkIGRhdGUgd2hlbiB0aGUgbG9jYWxlIGNoYW5nZXMuXG4gICAgdGhpcy5fbG9jYWxlU3Vic2NyaXB0aW9uID0gX2RhdGVBZGFwdGVyLmxvY2FsZUNoYW5nZXMuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgIHRoaXMudmFsdWUgPSB0aGlzLl9kYXRlQWRhcHRlci5kZXNlcmlhbGl6ZSh0aGlzLnZhbHVlKTtcbiAgICB9KTtcbiAgfVxuXG4gIC8qKiBUaGUgZGF0ZXRpbWVwaWNrZXIgdGhhdCB0aGlzIGlucHV0IGlzIGFzc29jaWF0ZWQgd2l0aC4gKi9cbiAgQElucHV0KClcbiAgc2V0IG10eERhdGV0aW1lcGlja2VyKHZhbHVlOiBNdHhEYXRldGltZXBpY2tlcjxEPikge1xuICAgIHRoaXMucmVnaXN0ZXJEYXRldGltZXBpY2tlcih2YWx1ZSk7XG4gIH1cblxuICBASW5wdXQoKVxuICBzZXQgbXR4RGF0ZXRpbWVwaWNrZXJGaWx0ZXIoXG4gICAgZmlsdGVyOiAoZGF0ZTogRCB8IG51bGwsIHR5cGU6IE10eERhdGV0aW1lcGlja2VyRmlsdGVyVHlwZSkgPT4gYm9vbGVhblxuICApIHtcbiAgICB0aGlzLl9kYXRlRmlsdGVyID0gZmlsdGVyO1xuICAgIHRoaXMuX3ZhbGlkYXRvck9uQ2hhbmdlKCk7XG4gIH1cblxuICAvKiogVGhlIHZhbHVlIG9mIHRoZSBpbnB1dC4gKi9cbiAgQElucHV0KClcbiAgZ2V0IHZhbHVlKCk6IEQgfCBudWxsIHtcbiAgICByZXR1cm4gdGhpcy5fdmFsdWU7XG4gIH1cbiAgc2V0IHZhbHVlKHZhbHVlOiBEIHwgbnVsbCkge1xuICAgIHZhbHVlID0gdGhpcy5fZGF0ZUFkYXB0ZXIuZGVzZXJpYWxpemUodmFsdWUpO1xuICAgIHRoaXMuX2xhc3RWYWx1ZVZhbGlkID0gIXZhbHVlIHx8IHRoaXMuX2RhdGVBZGFwdGVyLmlzVmFsaWQodmFsdWUpO1xuICAgIHZhbHVlID0gdGhpcy5fZGF0ZUFkYXB0ZXIuZ2V0VmFsaWREYXRlT3JOdWxsKHZhbHVlKTtcbiAgICBjb25zdCBvbGREYXRlID0gdGhpcy52YWx1ZTtcbiAgICB0aGlzLl92YWx1ZSA9IHZhbHVlO1xuICAgIHRoaXMuX2Zvcm1hdFZhbHVlKHZhbHVlKTtcblxuICAgIC8vIHVzZSB0aW1lb3V0IHRvIGVuc3VyZSB0aGUgZGF0ZXRpbWVwaWNrZXIgaXMgaW5zdGFudGlhdGVkIGFuZCB3ZSBnZXQgdGhlIGNvcnJlY3QgZm9ybWF0XG4gICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICBpZiAoIXRoaXMuX2RhdGVBZGFwdGVyLnNhbWVEYXRldGltZShvbGREYXRlLCB2YWx1ZSkpIHtcbiAgICAgICAgdGhpcy5fdmFsdWVDaGFuZ2UuZW1pdCh2YWx1ZSk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cbiAgcHJpdmF0ZSBfdmFsdWUhOiBEIHwgbnVsbDtcblxuICAvKiogVGhlIG1pbmltdW0gdmFsaWQgZGF0ZS4gKi9cbiAgQElucHV0KClcbiAgZ2V0IG1pbigpOiBEIHwgbnVsbCB7XG4gICAgcmV0dXJuIHRoaXMuX21pbjtcbiAgfVxuICBzZXQgbWluKHZhbHVlOiBEIHwgbnVsbCkge1xuICAgIHRoaXMuX21pbiA9IHRoaXMuX2RhdGVBZGFwdGVyLmdldFZhbGlkRGF0ZU9yTnVsbCh0aGlzLl9kYXRlQWRhcHRlci5kZXNlcmlhbGl6ZSh2YWx1ZSkpO1xuICAgIHRoaXMuX3ZhbGlkYXRvck9uQ2hhbmdlKCk7XG4gIH1cbiAgcHJpdmF0ZSBfbWluITogRCB8IG51bGw7XG5cbiAgLyoqIFRoZSBtYXhpbXVtIHZhbGlkIGRhdGUuICovXG4gIEBJbnB1dCgpXG4gIGdldCBtYXgoKTogRCB8IG51bGwge1xuICAgIHJldHVybiB0aGlzLl9tYXg7XG4gIH1cbiAgc2V0IG1heCh2YWx1ZTogRCB8IG51bGwpIHtcbiAgICB0aGlzLl9tYXggPSB0aGlzLl9kYXRlQWRhcHRlci5nZXRWYWxpZERhdGVPck51bGwodGhpcy5fZGF0ZUFkYXB0ZXIuZGVzZXJpYWxpemUodmFsdWUpKTtcbiAgICB0aGlzLl92YWxpZGF0b3JPbkNoYW5nZSgpO1xuICB9XG4gIHByaXZhdGUgX21heCE6IEQgfCBudWxsO1xuXG4gIC8qKiBXaGV0aGVyIHRoZSBkYXRldGltZXBpY2tlci1pbnB1dCBpcyBkaXNhYmxlZC4gKi9cbiAgQElucHV0KClcbiAgZ2V0IGRpc2FibGVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAhIXRoaXMuX2Rpc2FibGVkO1xuICB9XG4gIHNldCBkaXNhYmxlZCh2YWx1ZTogYm9vbGVhbikge1xuICAgIGNvbnN0IG5ld1ZhbHVlID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcblxuICAgIGlmICh0aGlzLl9kaXNhYmxlZCAhPT0gbmV3VmFsdWUpIHtcbiAgICAgIHRoaXMuX2Rpc2FibGVkID0gbmV3VmFsdWU7XG4gICAgICB0aGlzLl9kaXNhYmxlZENoYW5nZS5lbWl0KG5ld1ZhbHVlKTtcbiAgICB9XG4gIH1cbiAgcHJpdmF0ZSBfZGlzYWJsZWQhOiBib29sZWFuO1xuXG4gIF9vblRvdWNoZWQgPSAoKSA9PiB7fTtcblxuICBuZ0FmdGVyQ29udGVudEluaXQoKSB7XG4gICAgaWYgKHRoaXMuX2RhdGV0aW1lcGlja2VyKSB7XG4gICAgICB0aGlzLl9kYXRldGltZXBpY2tlclN1YnNjcmlwdGlvbiA9IHRoaXMuX2RhdGV0aW1lcGlja2VyLnNlbGVjdGVkQ2hhbmdlZC5zdWJzY3JpYmUoXG4gICAgICAgIChzZWxlY3RlZDogRCkgPT4ge1xuICAgICAgICAgIHRoaXMudmFsdWUgPSBzZWxlY3RlZDtcbiAgICAgICAgICB0aGlzLl9jdmFPbkNoYW5nZShzZWxlY3RlZCk7XG4gICAgICAgICAgdGhpcy5fb25Ub3VjaGVkKCk7XG4gICAgICAgICAgdGhpcy5kYXRlSW5wdXQuZW1pdChcbiAgICAgICAgICAgIG5ldyBNdHhEYXRldGltZXBpY2tlcklucHV0RXZlbnQodGhpcywgdGhpcy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50KVxuICAgICAgICAgICk7XG4gICAgICAgICAgdGhpcy5kYXRlQ2hhbmdlLmVtaXQoXG4gICAgICAgICAgICBuZXcgTXR4RGF0ZXRpbWVwaWNrZXJJbnB1dEV2ZW50KHRoaXMsIHRoaXMuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudClcbiAgICAgICAgICApO1xuICAgICAgICB9XG4gICAgICApO1xuICAgIH1cbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMuX2RhdGV0aW1lcGlja2VyU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgdGhpcy5fbG9jYWxlU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgdGhpcy5fdmFsdWVDaGFuZ2UuY29tcGxldGUoKTtcbiAgICB0aGlzLl9kaXNhYmxlZENoYW5nZS5jb21wbGV0ZSgpO1xuICB9XG5cbiAgcmVnaXN0ZXJPblZhbGlkYXRvckNoYW5nZShmbjogKCkgPT4gdm9pZCk6IHZvaWQge1xuICAgIHRoaXMuX3ZhbGlkYXRvck9uQ2hhbmdlID0gZm47XG4gIH1cblxuICB2YWxpZGF0ZShjOiBBYnN0cmFjdENvbnRyb2wpOiBWYWxpZGF0aW9uRXJyb3JzIHwgbnVsbCB7XG4gICAgcmV0dXJuIHRoaXMuX3ZhbGlkYXRvciA/IHRoaXMuX3ZhbGlkYXRvcihjKSA6IG51bGw7XG4gIH1cblxuICAvKipcbiAgICogR2V0cyB0aGUgZWxlbWVudCB0aGF0IHRoZSBkYXRldGltZXBpY2tlciBwb3B1cCBzaG91bGQgYmUgY29ubmVjdGVkIHRvLlxuICAgKiBAcmV0dXJuIFRoZSBlbGVtZW50IHRvIGNvbm5lY3QgdGhlIHBvcHVwIHRvLlxuICAgKi9cbiAgZ2V0Q29ubmVjdGVkT3ZlcmxheU9yaWdpbigpOiBFbGVtZW50UmVmIHtcbiAgICByZXR1cm4gdGhpcy5fZm9ybUZpZWxkID8gdGhpcy5fZm9ybUZpZWxkLmdldENvbm5lY3RlZE92ZXJsYXlPcmlnaW4oKSA6IHRoaXMuX2VsZW1lbnRSZWY7XG4gIH1cblxuICAvKiogR2V0cyB0aGUgSUQgb2YgYW4gZWxlbWVudCB0aGF0IHNob3VsZCBiZSB1c2VkIGEgZGVzY3JpcHRpb24gZm9yIHRoZSBjYWxlbmRhciBvdmVybGF5LiAqL1xuICBnZXRPdmVybGF5TGFiZWxJZCgpOiBzdHJpbmcgfCBudWxsIHtcbiAgICBpZiAodGhpcy5fZm9ybUZpZWxkKSB7XG4gICAgICByZXR1cm4gdGhpcy5fZm9ybUZpZWxkLmdldExhYmVsSWQoKTtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmdldEF0dHJpYnV0ZSgnYXJpYS1sYWJlbGxlZGJ5Jyk7XG4gIH1cblxuICAvLyBJbXBsZW1lbnRlZCBhcyBwYXJ0IG9mIENvbnRyb2xWYWx1ZUFjY2Vzc29yXG4gIHdyaXRlVmFsdWUodmFsdWU6IEQpOiB2b2lkIHtcbiAgICB0aGlzLnZhbHVlID0gdmFsdWU7XG4gIH1cblxuICAvLyBJbXBsZW1lbnRlZCBhcyBwYXJ0IG9mIENvbnRyb2xWYWx1ZUFjY2Vzc29yXG4gIHJlZ2lzdGVyT25DaGFuZ2UoZm46ICh2YWx1ZTogYW55KSA9PiB2b2lkKTogdm9pZCB7XG4gICAgdGhpcy5fY3ZhT25DaGFuZ2UgPSBmbjtcbiAgfVxuXG4gIC8vIEltcGxlbWVudGVkIGFzIHBhcnQgb2YgQ29udHJvbFZhbHVlQWNjZXNzb3JcbiAgcmVnaXN0ZXJPblRvdWNoZWQoZm46ICgpID0+IHZvaWQpOiB2b2lkIHtcbiAgICB0aGlzLl9vblRvdWNoZWQgPSBmbjtcbiAgfVxuXG4gIC8vIEltcGxlbWVudGVkIGFzIHBhcnQgb2YgQ29udHJvbFZhbHVlQWNjZXNzb3JcbiAgc2V0RGlzYWJsZWRTdGF0ZShkaXNhYmxlZDogYm9vbGVhbik6IHZvaWQge1xuICAgIHRoaXMuZGlzYWJsZWQgPSBkaXNhYmxlZDtcbiAgfVxuXG4gIF9vbktleWRvd24oZXZlbnQ6IEtleWJvYXJkRXZlbnQpIHtcbiAgICBpZiAoZXZlbnQuYWx0S2V5ICYmIGV2ZW50LmtleUNvZGUgPT09IERPV05fQVJST1cpIHtcbiAgICAgIHRoaXMuX2RhdGV0aW1lcGlja2VyLm9wZW4oKTtcbiAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgfVxuICB9XG5cbiAgX29uSW5wdXQodmFsdWU6IHN0cmluZykge1xuICAgIGxldCBkYXRlID0gdGhpcy5fZGF0ZUFkYXB0ZXIucGFyc2UodmFsdWUsIHRoaXMuZ2V0UGFyc2VGb3JtYXQoKSk7XG4gICAgdGhpcy5fbGFzdFZhbHVlVmFsaWQgPSAhZGF0ZSB8fCB0aGlzLl9kYXRlQWRhcHRlci5pc1ZhbGlkKGRhdGUpO1xuICAgIGRhdGUgPSB0aGlzLl9kYXRlQWRhcHRlci5nZXRWYWxpZERhdGVPck51bGwoZGF0ZSk7XG4gICAgdGhpcy5fdmFsdWUgPSBkYXRlO1xuICAgIHRoaXMuX2N2YU9uQ2hhbmdlKGRhdGUpO1xuICAgIHRoaXMuX3ZhbHVlQ2hhbmdlLmVtaXQoZGF0ZSk7XG4gICAgdGhpcy5kYXRlSW5wdXQuZW1pdChuZXcgTXR4RGF0ZXRpbWVwaWNrZXJJbnB1dEV2ZW50KHRoaXMsIHRoaXMuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudCkpO1xuICB9XG5cbiAgX29uQ2hhbmdlKCkge1xuICAgIHRoaXMuZGF0ZUNoYW5nZS5lbWl0KG5ldyBNdHhEYXRldGltZXBpY2tlcklucHV0RXZlbnQodGhpcywgdGhpcy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50KSk7XG4gIH1cblxuICAvKiogSGFuZGxlcyBibHVyIGV2ZW50cyBvbiB0aGUgaW5wdXQuICovXG4gIF9vbkJsdXIoKSB7XG4gICAgLy8gUmVmb3JtYXQgdGhlIGlucHV0IG9ubHkgaWYgd2UgaGF2ZSBhIHZhbGlkIHZhbHVlLlxuICAgIGlmICh0aGlzLnZhbHVlKSB7XG4gICAgICB0aGlzLl9mb3JtYXRWYWx1ZSh0aGlzLnZhbHVlKTtcbiAgICB9XG5cbiAgICB0aGlzLl9vblRvdWNoZWQoKTtcbiAgfVxuXG4gIHByaXZhdGUgcmVnaXN0ZXJEYXRldGltZXBpY2tlcih2YWx1ZTogTXR4RGF0ZXRpbWVwaWNrZXI8RD4pIHtcbiAgICBpZiAodmFsdWUpIHtcbiAgICAgIHRoaXMuX2RhdGV0aW1lcGlja2VyID0gdmFsdWU7XG4gICAgICB0aGlzLl9kYXRldGltZXBpY2tlci5fcmVnaXN0ZXJJbnB1dCh0aGlzKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGdldERpc3BsYXlGb3JtYXQoKSB7XG4gICAgc3dpdGNoICh0aGlzLl9kYXRldGltZXBpY2tlci50eXBlKSB7XG4gICAgICBjYXNlICdkYXRlJzpcbiAgICAgICAgcmV0dXJuIHRoaXMuX2RhdGVGb3JtYXRzLmRpc3BsYXkuZGF0ZUlucHV0O1xuICAgICAgY2FzZSAnZGF0ZXRpbWUnOlxuICAgICAgICByZXR1cm4gdGhpcy5fZGF0ZUZvcm1hdHMuZGlzcGxheS5kYXRldGltZUlucHV0O1xuICAgICAgY2FzZSAndGltZSc6XG4gICAgICAgIHJldHVybiB0aGlzLl9kYXRlRm9ybWF0cy5kaXNwbGF5LnRpbWVJbnB1dDtcbiAgICAgIGNhc2UgJ21vbnRoJzpcbiAgICAgICAgcmV0dXJuIHRoaXMuX2RhdGVGb3JtYXRzLmRpc3BsYXkubW9udGhJbnB1dDtcbiAgICAgIGNhc2UgJ3llYXInOlxuICAgICAgICByZXR1cm4gdGhpcy5fZGF0ZUZvcm1hdHMuZGlzcGxheS55ZWFySW5wdXQ7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBnZXRQYXJzZUZvcm1hdCgpIHtcbiAgICBsZXQgcGFyc2VGb3JtYXQ7XG5cbiAgICBzd2l0Y2ggKHRoaXMuX2RhdGV0aW1lcGlja2VyLnR5cGUpIHtcbiAgICAgIGNhc2UgJ2RhdGUnOlxuICAgICAgICBwYXJzZUZvcm1hdCA9IHRoaXMuX2RhdGVGb3JtYXRzLnBhcnNlLmRhdGVJbnB1dDtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlICdkYXRldGltZSc6XG4gICAgICAgIHBhcnNlRm9ybWF0ID0gdGhpcy5fZGF0ZUZvcm1hdHMucGFyc2UuZGF0ZXRpbWVJbnB1dDtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlICd0aW1lJzpcbiAgICAgICAgcGFyc2VGb3JtYXQgPSB0aGlzLl9kYXRlRm9ybWF0cy5wYXJzZS50aW1lSW5wdXQ7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAnbW9udGgnOlxuICAgICAgICBwYXJzZUZvcm1hdCA9IHRoaXMuX2RhdGVGb3JtYXRzLnBhcnNlLm1vbnRoSW5wdXQ7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAneWVhcic6XG4gICAgICAgIHBhcnNlRm9ybWF0ID0gdGhpcy5fZGF0ZUZvcm1hdHMucGFyc2UueWVhcklucHV0O1xuICAgICAgICBicmVhaztcbiAgICB9XG4gICAgaWYgKCFwYXJzZUZvcm1hdCkge1xuICAgICAgcGFyc2VGb3JtYXQgPSB0aGlzLl9kYXRlRm9ybWF0cy5wYXJzZS5kYXRlSW5wdXQ7XG4gICAgfVxuXG4gICAgcmV0dXJuIHBhcnNlRm9ybWF0O1xuICB9XG5cbiAgcHJpdmF0ZSBfY3ZhT25DaGFuZ2U6ICh2YWx1ZTogYW55KSA9PiB2b2lkID0gKCkgPT4ge307XG5cbiAgcHJpdmF0ZSBfdmFsaWRhdG9yT25DaGFuZ2UgPSAoKSA9PiB7fTtcblxuICAvKiogVGhlIGZvcm0gY29udHJvbCB2YWxpZGF0b3IgZm9yIHdoZXRoZXIgdGhlIGlucHV0IHBhcnNlcy4gKi9cbiAgcHJpdmF0ZSBfcGFyc2VWYWxpZGF0b3I6IFZhbGlkYXRvckZuID0gKCk6IFZhbGlkYXRpb25FcnJvcnMgfCBudWxsID0+IHtcbiAgICByZXR1cm4gdGhpcy5fbGFzdFZhbHVlVmFsaWRcbiAgICAgID8gbnVsbFxuICAgICAgOiB7IG10eERhdGV0aW1lcGlja2VyUGFyc2U6IHsgdGV4dDogdGhpcy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnZhbHVlIH0gfTtcbiAgfTtcblxuICAvKiogVGhlIGZvcm0gY29udHJvbCB2YWxpZGF0b3IgZm9yIHRoZSBtaW4gZGF0ZS4gKi9cbiAgcHJpdmF0ZSBfbWluVmFsaWRhdG9yOiBWYWxpZGF0b3JGbiA9IChjb250cm9sOiBBYnN0cmFjdENvbnRyb2wpOiBWYWxpZGF0aW9uRXJyb3JzIHwgbnVsbCA9PiB7XG4gICAgY29uc3QgY29udHJvbFZhbHVlID0gdGhpcy5fZGF0ZUFkYXB0ZXIuZ2V0VmFsaWREYXRlT3JOdWxsKFxuICAgICAgdGhpcy5fZGF0ZUFkYXB0ZXIuZGVzZXJpYWxpemUoY29udHJvbC52YWx1ZSlcbiAgICApO1xuICAgIHJldHVybiAhdGhpcy5taW4gfHxcbiAgICAgICFjb250cm9sVmFsdWUgfHxcbiAgICAgICh0aGlzLl9kYXRlQWRhcHRlci5jb21wYXJlRGF0ZXRpbWUodGhpcy5taW4sIGNvbnRyb2xWYWx1ZSkgYXMgbnVtYmVyKSA8PSAwXG4gICAgICA/IG51bGxcbiAgICAgIDogeyBtdHhEYXRldGltZXBpY2tlck1pbjogeyBtaW46IHRoaXMubWluLCBhY3R1YWw6IGNvbnRyb2xWYWx1ZSB9IH07XG4gIH07XG5cbiAgLyoqIFRoZSBmb3JtIGNvbnRyb2wgdmFsaWRhdG9yIGZvciB0aGUgbWF4IGRhdGUuICovXG4gIHByaXZhdGUgX21heFZhbGlkYXRvcjogVmFsaWRhdG9yRm4gPSAoY29udHJvbDogQWJzdHJhY3RDb250cm9sKTogVmFsaWRhdGlvbkVycm9ycyB8IG51bGwgPT4ge1xuICAgIGNvbnN0IGNvbnRyb2xWYWx1ZSA9IHRoaXMuX2RhdGVBZGFwdGVyLmdldFZhbGlkRGF0ZU9yTnVsbChcbiAgICAgIHRoaXMuX2RhdGVBZGFwdGVyLmRlc2VyaWFsaXplKGNvbnRyb2wudmFsdWUpXG4gICAgKTtcbiAgICByZXR1cm4gIXRoaXMubWF4IHx8XG4gICAgICAhY29udHJvbFZhbHVlIHx8XG4gICAgICAodGhpcy5fZGF0ZUFkYXB0ZXIuY29tcGFyZURhdGV0aW1lKHRoaXMubWF4LCBjb250cm9sVmFsdWUpIGFzIG51bWJlcikgPj0gMFxuICAgICAgPyBudWxsXG4gICAgICA6IHsgbXR4RGF0ZXRpbWVwaWNrZXJNYXg6IHsgbWF4OiB0aGlzLm1heCwgYWN0dWFsOiBjb250cm9sVmFsdWUgfSB9O1xuICB9O1xuXG4gIC8qKiBUaGUgZm9ybSBjb250cm9sIHZhbGlkYXRvciBmb3IgdGhlIGRhdGUgZmlsdGVyLiAqL1xuICBwcml2YXRlIF9maWx0ZXJWYWxpZGF0b3I6IFZhbGlkYXRvckZuID0gKGNvbnRyb2w6IEFic3RyYWN0Q29udHJvbCk6IFZhbGlkYXRpb25FcnJvcnMgfCBudWxsID0+IHtcbiAgICBjb25zdCBjb250cm9sVmFsdWUgPSB0aGlzLl9kYXRlQWRhcHRlci5nZXRWYWxpZERhdGVPck51bGwoXG4gICAgICB0aGlzLl9kYXRlQWRhcHRlci5kZXNlcmlhbGl6ZShjb250cm9sLnZhbHVlKVxuICAgICk7XG4gICAgcmV0dXJuICF0aGlzLl9kYXRlRmlsdGVyIHx8XG4gICAgICAhY29udHJvbFZhbHVlIHx8XG4gICAgICB0aGlzLl9kYXRlRmlsdGVyKGNvbnRyb2xWYWx1ZSwgTXR4RGF0ZXRpbWVwaWNrZXJGaWx0ZXJUeXBlLkRBVEUpXG4gICAgICA/IG51bGxcbiAgICAgIDogeyBtdHhEYXRldGltZXBpY2tlckZpbHRlcjogdHJ1ZSB9O1xuICB9O1xuXG4gIC8qKiBUaGUgY29tYmluZWQgZm9ybSBjb250cm9sIHZhbGlkYXRvciBmb3IgdGhpcyBpbnB1dC4gKi9cbiAgcHJpdmF0ZSBfdmFsaWRhdG9yOiBWYWxpZGF0b3JGbiB8IG51bGwgPSBWYWxpZGF0b3JzLmNvbXBvc2UoW1xuICAgIHRoaXMuX3BhcnNlVmFsaWRhdG9yLFxuICAgIHRoaXMuX21pblZhbGlkYXRvcixcbiAgICB0aGlzLl9tYXhWYWxpZGF0b3IsXG4gICAgdGhpcy5fZmlsdGVyVmFsaWRhdG9yLFxuICBdKTtcblxuICAvKiogRm9ybWF0cyBhIHZhbHVlIGFuZCBzZXRzIGl0IG9uIHRoZSBpbnB1dCBlbGVtZW50LiAqL1xuICBwcml2YXRlIF9mb3JtYXRWYWx1ZSh2YWx1ZTogRCB8IG51bGwpIHtcbiAgICB0aGlzLl9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQudmFsdWUgPSB2YWx1ZVxuICAgICAgPyB0aGlzLl9kYXRlQWRhcHRlci5mb3JtYXQodmFsdWUsIHRoaXMuZ2V0RGlzcGxheUZvcm1hdCgpKVxuICAgICAgOiAnJztcbiAgfVxuXG4gIC8qKiBSZXR1cm5zIHRoZSBwYWxldHRlIHVzZWQgYnkgdGhlIGlucHV0J3MgZm9ybSBmaWVsZCwgaWYgYW55LiAqL1xuICBnZXRUaGVtZVBhbGV0dGUoKTogVGhlbWVQYWxldHRlIHtcbiAgICByZXR1cm4gdGhpcy5fZm9ybUZpZWxkID8gdGhpcy5fZm9ybUZpZWxkLmNvbG9yIDogdW5kZWZpbmVkO1xuICB9XG5cbiAgc3RhdGljIG5nQWNjZXB0SW5wdXRUeXBlX2Rpc2FibGVkOiBCb29sZWFuSW5wdXQ7XG59XG4iXX0=
@@ -0,0 +1,64 @@
1
+ import { Injectable } from '@angular/core';
2
+ import { Subject } from 'rxjs';
3
+ import * as i0 from "@angular/core";
4
+ class MtxDatetimepickerIntl {
5
+ constructor() {
6
+ /**
7
+ * Stream to emit from when labels are changed. Use this to notify components when the labels have
8
+ * changed after initialization.
9
+ */
10
+ this.changes = new Subject();
11
+ /** A label for the calendar popup (used by screen readers). */
12
+ this.calendarLabel = 'Calendar';
13
+ /** A label for the button used to open the calendar popup (used by screen readers). */
14
+ this.openCalendarLabel = 'Open calendar';
15
+ /** Label for the button used to close the calendar popup. */
16
+ this.closeCalendarLabel = 'Close calendar';
17
+ /** A label for the previous month button (used by screen readers). */
18
+ this.prevMonthLabel = 'Previous month';
19
+ /** A label for the next month button (used by screen readers). */
20
+ this.nextMonthLabel = 'Next month';
21
+ /** A label for the previous year button (used by screen readers). */
22
+ this.prevYearLabel = 'Previous year';
23
+ /** A label for the next year button (used by screen readers). */
24
+ this.nextYearLabel = 'Next year';
25
+ /** A label for the previous multi-year button (used by screen readers). */
26
+ this.prevMultiYearLabel = 'Previous 24 years';
27
+ /** A label for the next multi-year button (used by screen readers). */
28
+ this.nextMultiYearLabel = 'Next 24 years';
29
+ /** A label for the 'switch to month view' button (used by screen readers). */
30
+ this.switchToMonthViewLabel = 'Choose date';
31
+ /** A label for the 'switch to year view' button (used by screen readers). */
32
+ this.switchToYearViewLabel = 'Choose month';
33
+ /** A label for the 'switch to multi-year view' button (used by screen readers). */
34
+ this.switchToMultiYearViewLabel = 'Choose month and year';
35
+ /** A label for the first date of a range of dates (used by screen readers). */
36
+ this.startDateLabel = 'Start date';
37
+ /** A label for the last date of a range of dates (used by screen readers). */
38
+ this.endDateLabel = 'End date';
39
+ /** A label for the 'switch to clock hour view' button (used by screen readers). */
40
+ this.switchToClockHourViewLabel = 'Choose hour';
41
+ /** A label for the 'switch to clock minute view' button (used by screen readers). */
42
+ this.switchToClockMinuteViewLabel = 'Choose minute';
43
+ /** Label used for ok button within the manual time input. */
44
+ this.okLabel = 'OK';
45
+ /** Label used for cancel button within the manual time input. */
46
+ this.cancelLabel = 'Cancel';
47
+ }
48
+ /** Formats a range of years (used for visuals). */
49
+ formatYearRange(start, end) {
50
+ return `${start} \u2013 ${end}`;
51
+ }
52
+ /** Formats a label for a range of years (used by screen readers). */
53
+ formatYearRangeLabel(start, end) {
54
+ return `${start} to ${end}`;
55
+ }
56
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.3", ngImport: i0, type: MtxDatetimepickerIntl, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
57
+ /** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.0.3", ngImport: i0, type: MtxDatetimepickerIntl, providedIn: 'root' }); }
58
+ }
59
+ export { MtxDatetimepickerIntl };
60
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.3", ngImport: i0, type: MtxDatetimepickerIntl, decorators: [{
61
+ type: Injectable,
62
+ args: [{ providedIn: 'root' }]
63
+ }] });
64
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZXRpbWVwaWNrZXItaW50bC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2V4dGVuc2lvbnMvZGF0ZXRpbWVwaWNrZXIvZGF0ZXRpbWVwaWNrZXItaW50bC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7O0FBRS9CLE1BQ2EscUJBQXFCO0lBRGxDO1FBRUU7OztXQUdHO1FBQ00sWUFBTyxHQUFHLElBQUksT0FBTyxFQUFRLENBQUM7UUFFdkMsK0RBQStEO1FBQy9ELGtCQUFhLEdBQUcsVUFBVSxDQUFDO1FBRTNCLHVGQUF1RjtRQUN2RixzQkFBaUIsR0FBRyxlQUFlLENBQUM7UUFFcEMsNkRBQTZEO1FBQzdELHVCQUFrQixHQUFHLGdCQUFnQixDQUFDO1FBRXRDLHNFQUFzRTtRQUN0RSxtQkFBYyxHQUFHLGdCQUFnQixDQUFDO1FBRWxDLGtFQUFrRTtRQUNsRSxtQkFBYyxHQUFHLFlBQVksQ0FBQztRQUU5QixxRUFBcUU7UUFDckUsa0JBQWEsR0FBRyxlQUFlLENBQUM7UUFFaEMsaUVBQWlFO1FBQ2pFLGtCQUFhLEdBQUcsV0FBVyxDQUFDO1FBRTVCLDJFQUEyRTtRQUMzRSx1QkFBa0IsR0FBRyxtQkFBbUIsQ0FBQztRQUV6Qyx1RUFBdUU7UUFDdkUsdUJBQWtCLEdBQUcsZUFBZSxDQUFDO1FBRXJDLDhFQUE4RTtRQUM5RSwyQkFBc0IsR0FBRyxhQUFhLENBQUM7UUFFdkMsNkVBQTZFO1FBQzdFLDBCQUFxQixHQUFHLGNBQWMsQ0FBQztRQUV2QyxtRkFBbUY7UUFDbkYsK0JBQTBCLEdBQUcsdUJBQXVCLENBQUM7UUFFckQsK0VBQStFO1FBQy9FLG1CQUFjLEdBQUcsWUFBWSxDQUFDO1FBRTlCLDhFQUE4RTtRQUM5RSxpQkFBWSxHQUFHLFVBQVUsQ0FBQztRQVkxQixtRkFBbUY7UUFDbkYsK0JBQTBCLEdBQUcsYUFBYSxDQUFDO1FBRTNDLHFGQUFxRjtRQUNyRixpQ0FBNEIsR0FBRyxlQUFlLENBQUM7UUFFL0MsNkRBQTZEO1FBQzdELFlBQU8sR0FBRyxJQUFJLENBQUM7UUFFZixpRUFBaUU7UUFDakUsZ0JBQVcsR0FBRyxRQUFRLENBQUM7S0FDeEI7SUFyQkMsbURBQW1EO0lBQ25ELGVBQWUsQ0FBQyxLQUFhLEVBQUUsR0FBVztRQUN4QyxPQUFPLEdBQUcsS0FBSyxXQUFXLEdBQUcsRUFBRSxDQUFDO0lBQ2xDLENBQUM7SUFFRCxxRUFBcUU7SUFDckUsb0JBQW9CLENBQUMsS0FBYSxFQUFFLEdBQVc7UUFDN0MsT0FBTyxHQUFHLEtBQUssT0FBTyxHQUFHLEVBQUUsQ0FBQztJQUM5QixDQUFDO2lJQXpEVSxxQkFBcUI7cUlBQXJCLHFCQUFxQixjQURSLE1BQU07O1NBQ25CLHFCQUFxQjsyRkFBckIscUJBQXFCO2tCQURqQyxVQUFVO21CQUFDLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tICdyeGpzJztcblxuQEluamVjdGFibGUoeyBwcm92aWRlZEluOiAncm9vdCcgfSlcbmV4cG9ydCBjbGFzcyBNdHhEYXRldGltZXBpY2tlckludGwge1xuICAvKipcbiAgICogU3RyZWFtIHRvIGVtaXQgZnJvbSB3aGVuIGxhYmVscyBhcmUgY2hhbmdlZC4gVXNlIHRoaXMgdG8gbm90aWZ5IGNvbXBvbmVudHMgd2hlbiB0aGUgbGFiZWxzIGhhdmVcbiAgICogY2hhbmdlZCBhZnRlciBpbml0aWFsaXphdGlvbi5cbiAgICovXG4gIHJlYWRvbmx5IGNoYW5nZXMgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gIC8qKiBBIGxhYmVsIGZvciB0aGUgY2FsZW5kYXIgcG9wdXAgKHVzZWQgYnkgc2NyZWVuIHJlYWRlcnMpLiAqL1xuICBjYWxlbmRhckxhYmVsID0gJ0NhbGVuZGFyJztcblxuICAvKiogQSBsYWJlbCBmb3IgdGhlIGJ1dHRvbiB1c2VkIHRvIG9wZW4gdGhlIGNhbGVuZGFyIHBvcHVwICh1c2VkIGJ5IHNjcmVlbiByZWFkZXJzKS4gKi9cbiAgb3BlbkNhbGVuZGFyTGFiZWwgPSAnT3BlbiBjYWxlbmRhcic7XG5cbiAgLyoqIExhYmVsIGZvciB0aGUgYnV0dG9uIHVzZWQgdG8gY2xvc2UgdGhlIGNhbGVuZGFyIHBvcHVwLiAqL1xuICBjbG9zZUNhbGVuZGFyTGFiZWwgPSAnQ2xvc2UgY2FsZW5kYXInO1xuXG4gIC8qKiBBIGxhYmVsIGZvciB0aGUgcHJldmlvdXMgbW9udGggYnV0dG9uICh1c2VkIGJ5IHNjcmVlbiByZWFkZXJzKS4gKi9cbiAgcHJldk1vbnRoTGFiZWwgPSAnUHJldmlvdXMgbW9udGgnO1xuXG4gIC8qKiBBIGxhYmVsIGZvciB0aGUgbmV4dCBtb250aCBidXR0b24gKHVzZWQgYnkgc2NyZWVuIHJlYWRlcnMpLiAqL1xuICBuZXh0TW9udGhMYWJlbCA9ICdOZXh0IG1vbnRoJztcblxuICAvKiogQSBsYWJlbCBmb3IgdGhlIHByZXZpb3VzIHllYXIgYnV0dG9uICh1c2VkIGJ5IHNjcmVlbiByZWFkZXJzKS4gKi9cbiAgcHJldlllYXJMYWJlbCA9ICdQcmV2aW91cyB5ZWFyJztcblxuICAvKiogQSBsYWJlbCBmb3IgdGhlIG5leHQgeWVhciBidXR0b24gKHVzZWQgYnkgc2NyZWVuIHJlYWRlcnMpLiAqL1xuICBuZXh0WWVhckxhYmVsID0gJ05leHQgeWVhcic7XG5cbiAgLyoqIEEgbGFiZWwgZm9yIHRoZSBwcmV2aW91cyBtdWx0aS15ZWFyIGJ1dHRvbiAodXNlZCBieSBzY3JlZW4gcmVhZGVycykuICovXG4gIHByZXZNdWx0aVllYXJMYWJlbCA9ICdQcmV2aW91cyAyNCB5ZWFycyc7XG5cbiAgLyoqIEEgbGFiZWwgZm9yIHRoZSBuZXh0IG11bHRpLXllYXIgYnV0dG9uICh1c2VkIGJ5IHNjcmVlbiByZWFkZXJzKS4gKi9cbiAgbmV4dE11bHRpWWVhckxhYmVsID0gJ05leHQgMjQgeWVhcnMnO1xuXG4gIC8qKiBBIGxhYmVsIGZvciB0aGUgJ3N3aXRjaCB0byBtb250aCB2aWV3JyBidXR0b24gKHVzZWQgYnkgc2NyZWVuIHJlYWRlcnMpLiAqL1xuICBzd2l0Y2hUb01vbnRoVmlld0xhYmVsID0gJ0Nob29zZSBkYXRlJztcblxuICAvKiogQSBsYWJlbCBmb3IgdGhlICdzd2l0Y2ggdG8geWVhciB2aWV3JyBidXR0b24gKHVzZWQgYnkgc2NyZWVuIHJlYWRlcnMpLiAqL1xuICBzd2l0Y2hUb1llYXJWaWV3TGFiZWwgPSAnQ2hvb3NlIG1vbnRoJztcblxuICAvKiogQSBsYWJlbCBmb3IgdGhlICdzd2l0Y2ggdG8gbXVsdGkteWVhciB2aWV3JyBidXR0b24gKHVzZWQgYnkgc2NyZWVuIHJlYWRlcnMpLiAqL1xuICBzd2l0Y2hUb011bHRpWWVhclZpZXdMYWJlbCA9ICdDaG9vc2UgbW9udGggYW5kIHllYXInO1xuXG4gIC8qKiBBIGxhYmVsIGZvciB0aGUgZmlyc3QgZGF0ZSBvZiBhIHJhbmdlIG9mIGRhdGVzICh1c2VkIGJ5IHNjcmVlbiByZWFkZXJzKS4gKi9cbiAgc3RhcnREYXRlTGFiZWwgPSAnU3RhcnQgZGF0ZSc7XG5cbiAgLyoqIEEgbGFiZWwgZm9yIHRoZSBsYXN0IGRhdGUgb2YgYSByYW5nZSBvZiBkYXRlcyAodXNlZCBieSBzY3JlZW4gcmVhZGVycykuICovXG4gIGVuZERhdGVMYWJlbCA9ICdFbmQgZGF0ZSc7XG5cbiAgLyoqIEZvcm1hdHMgYSByYW5nZSBvZiB5ZWFycyAodXNlZCBmb3IgdmlzdWFscykuICovXG4gIGZvcm1hdFllYXJSYW5nZShzdGFydDogc3RyaW5nLCBlbmQ6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgcmV0dXJuIGAke3N0YXJ0fSBcXHUyMDEzICR7ZW5kfWA7XG4gIH1cblxuICAvKiogRm9ybWF0cyBhIGxhYmVsIGZvciBhIHJhbmdlIG9mIHllYXJzICh1c2VkIGJ5IHNjcmVlbiByZWFkZXJzKS4gKi9cbiAgZm9ybWF0WWVhclJhbmdlTGFiZWwoc3RhcnQ6IHN0cmluZywgZW5kOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIHJldHVybiBgJHtzdGFydH0gdG8gJHtlbmR9YDtcbiAgfVxuXG4gIC8qKiBBIGxhYmVsIGZvciB0aGUgJ3N3aXRjaCB0byBjbG9jayBob3VyIHZpZXcnIGJ1dHRvbiAodXNlZCBieSBzY3JlZW4gcmVhZGVycykuICovXG4gIHN3aXRjaFRvQ2xvY2tIb3VyVmlld0xhYmVsID0gJ0Nob29zZSBob3VyJztcblxuICAvKiogQSBsYWJlbCBmb3IgdGhlICdzd2l0Y2ggdG8gY2xvY2sgbWludXRlIHZpZXcnIGJ1dHRvbiAodXNlZCBieSBzY3JlZW4gcmVhZGVycykuICovXG4gIHN3aXRjaFRvQ2xvY2tNaW51dGVWaWV3TGFiZWwgPSAnQ2hvb3NlIG1pbnV0ZSc7XG5cbiAgLyoqIExhYmVsIHVzZWQgZm9yIG9rIGJ1dHRvbiB3aXRoaW4gdGhlIG1hbnVhbCB0aW1lIGlucHV0LiAqL1xuICBva0xhYmVsID0gJ09LJztcblxuICAvKiogTGFiZWwgdXNlZCBmb3IgY2FuY2VsIGJ1dHRvbiB3aXRoaW4gdGhlIG1hbnVhbCB0aW1lIGlucHV0LiAqL1xuICBjYW5jZWxMYWJlbCA9ICdDYW5jZWwnO1xufVxuIl19
@@ -0,0 +1,83 @@
1
+ import { A11yModule } from '@angular/cdk/a11y';
2
+ import { OverlayModule } from '@angular/cdk/overlay';
3
+ import { PortalModule } from '@angular/cdk/portal';
4
+ import { CommonModule } from '@angular/common';
5
+ import { NgModule } from '@angular/core';
6
+ import { MatButtonModule } from '@angular/material/button';
7
+ import { MtxCalendar } from './calendar';
8
+ import { MtxCalendarBody } from './calendar-body';
9
+ import { MtxClock } from './clock';
10
+ import { MtxTime, MtxTimeInput } from './time';
11
+ import { MtxDatetimepicker, MtxDatetimepickerContent, MTX_DATETIMEPICKER_SCROLL_STRATEGY_FACTORY_PROVIDER, } from './datetimepicker';
12
+ import { MtxDatetimepickerInput } from './datetimepicker-input';
13
+ import { MtxDatetimepickerToggle, MtxDatetimepickerToggleIcon } from './datetimepicker-toggle';
14
+ import { MtxMonthView } from './month-view';
15
+ import { MtxYearView } from './year-view';
16
+ import { MtxMultiYearView } from './multi-year-view';
17
+ import * as i0 from "@angular/core";
18
+ class MtxDatetimepickerModule {
19
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.3", ngImport: i0, type: MtxDatetimepickerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
20
+ /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.0.3", ngImport: i0, type: MtxDatetimepickerModule, declarations: [MtxCalendar,
21
+ MtxCalendarBody,
22
+ MtxClock,
23
+ MtxTime,
24
+ MtxTimeInput,
25
+ MtxDatetimepicker,
26
+ MtxDatetimepickerToggle,
27
+ MtxDatetimepickerToggleIcon,
28
+ MtxDatetimepickerInput,
29
+ MtxDatetimepickerContent,
30
+ MtxMonthView,
31
+ MtxYearView,
32
+ MtxMultiYearView], imports: [CommonModule, MatButtonModule, OverlayModule, A11yModule, PortalModule], exports: [MtxCalendar,
33
+ MtxCalendarBody,
34
+ MtxClock,
35
+ MtxTime,
36
+ MtxDatetimepicker,
37
+ MtxDatetimepickerToggle,
38
+ MtxDatetimepickerToggleIcon,
39
+ MtxDatetimepickerInput,
40
+ MtxDatetimepickerContent,
41
+ MtxMonthView,
42
+ MtxYearView,
43
+ MtxMultiYearView] }); }
44
+ /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.0.3", ngImport: i0, type: MtxDatetimepickerModule, providers: [MTX_DATETIMEPICKER_SCROLL_STRATEGY_FACTORY_PROVIDER], imports: [CommonModule, MatButtonModule, OverlayModule, A11yModule, PortalModule] }); }
45
+ }
46
+ export { MtxDatetimepickerModule };
47
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.3", ngImport: i0, type: MtxDatetimepickerModule, decorators: [{
48
+ type: NgModule,
49
+ args: [{
50
+ imports: [CommonModule, MatButtonModule, OverlayModule, A11yModule, PortalModule],
51
+ declarations: [
52
+ MtxCalendar,
53
+ MtxCalendarBody,
54
+ MtxClock,
55
+ MtxTime,
56
+ MtxTimeInput,
57
+ MtxDatetimepicker,
58
+ MtxDatetimepickerToggle,
59
+ MtxDatetimepickerToggleIcon,
60
+ MtxDatetimepickerInput,
61
+ MtxDatetimepickerContent,
62
+ MtxMonthView,
63
+ MtxYearView,
64
+ MtxMultiYearView,
65
+ ],
66
+ exports: [
67
+ MtxCalendar,
68
+ MtxCalendarBody,
69
+ MtxClock,
70
+ MtxTime,
71
+ MtxDatetimepicker,
72
+ MtxDatetimepickerToggle,
73
+ MtxDatetimepickerToggleIcon,
74
+ MtxDatetimepickerInput,
75
+ MtxDatetimepickerContent,
76
+ MtxMonthView,
77
+ MtxYearView,
78
+ MtxMultiYearView,
79
+ ],
80
+ providers: [MTX_DATETIMEPICKER_SCROLL_STRATEGY_FACTORY_PROVIDER],
81
+ }]
82
+ }] });
83
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZXRpbWVwaWNrZXItbW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvZXh0ZW5zaW9ucy9kYXRldGltZXBpY2tlci9kYXRldGltZXBpY2tlci1tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNyRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDbkQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzNELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFDekMsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFDbkMsT0FBTyxFQUFFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxRQUFRLENBQUM7QUFDL0MsT0FBTyxFQUNMLGlCQUFpQixFQUNqQix3QkFBd0IsRUFDeEIsbURBQW1ELEdBQ3BELE1BQU0sa0JBQWtCLENBQUM7QUFDMUIsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDaEUsT0FBTyxFQUFFLHVCQUF1QixFQUFFLDJCQUEyQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDL0YsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUM1QyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQzFDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG1CQUFtQixDQUFDOztBQUVyRCxNQWlDYSx1QkFBdUI7aUlBQXZCLHVCQUF1QjtrSUFBdkIsdUJBQXVCLGlCQTlCaEMsV0FBVztZQUNYLGVBQWU7WUFDZixRQUFRO1lBQ1IsT0FBTztZQUNQLFlBQVk7WUFDWixpQkFBaUI7WUFDakIsdUJBQXVCO1lBQ3ZCLDJCQUEyQjtZQUMzQixzQkFBc0I7WUFDdEIsd0JBQXdCO1lBQ3hCLFlBQVk7WUFDWixXQUFXO1lBQ1gsZ0JBQWdCLGFBZFIsWUFBWSxFQUFFLGVBQWUsRUFBRSxhQUFhLEVBQUUsVUFBVSxFQUFFLFlBQVksYUFpQjlFLFdBQVc7WUFDWCxlQUFlO1lBQ2YsUUFBUTtZQUNSLE9BQU87WUFDUCxpQkFBaUI7WUFDakIsdUJBQXVCO1lBQ3ZCLDJCQUEyQjtZQUMzQixzQkFBc0I7WUFDdEIsd0JBQXdCO1lBQ3hCLFlBQVk7WUFDWixXQUFXO1lBQ1gsZ0JBQWdCO2tJQUlQLHVCQUF1QixhQUZ2QixDQUFDLG1EQUFtRCxDQUFDLFlBOUJ0RCxZQUFZLEVBQUUsZUFBZSxFQUFFLGFBQWEsRUFBRSxVQUFVLEVBQUUsWUFBWTs7U0FnQ3JFLHVCQUF1QjsyRkFBdkIsdUJBQXVCO2tCQWpDbkMsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUUsQ0FBQyxZQUFZLEVBQUUsZUFBZSxFQUFFLGFBQWEsRUFBRSxVQUFVLEVBQUUsWUFBWSxDQUFDO29CQUNqRixZQUFZLEVBQUU7d0JBQ1osV0FBVzt3QkFDWCxlQUFlO3dCQUNmLFFBQVE7d0JBQ1IsT0FBTzt3QkFDUCxZQUFZO3dCQUNaLGlCQUFpQjt3QkFDakIsdUJBQXVCO3dCQUN2QiwyQkFBMkI7d0JBQzNCLHNCQUFzQjt3QkFDdEIsd0JBQXdCO3dCQUN4QixZQUFZO3dCQUNaLFdBQVc7d0JBQ1gsZ0JBQWdCO3FCQUNqQjtvQkFDRCxPQUFPLEVBQUU7d0JBQ1AsV0FBVzt3QkFDWCxlQUFlO3dCQUNmLFFBQVE7d0JBQ1IsT0FBTzt3QkFDUCxpQkFBaUI7d0JBQ2pCLHVCQUF1Qjt3QkFDdkIsMkJBQTJCO3dCQUMzQixzQkFBc0I7d0JBQ3RCLHdCQUF3Qjt3QkFDeEIsWUFBWTt3QkFDWixXQUFXO3dCQUNYLGdCQUFnQjtxQkFDakI7b0JBQ0QsU0FBUyxFQUFFLENBQUMsbURBQW1ELENBQUM7aUJBQ2pFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQTExeU1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9hMTF5JztcbmltcG9ydCB7IE92ZXJsYXlNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jZGsvb3ZlcmxheSc7XG5pbXBvcnQgeyBQb3J0YWxNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jZGsvcG9ydGFsJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTWF0QnV0dG9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYnV0dG9uJztcbmltcG9ydCB7IE10eENhbGVuZGFyIH0gZnJvbSAnLi9jYWxlbmRhcic7XG5pbXBvcnQgeyBNdHhDYWxlbmRhckJvZHkgfSBmcm9tICcuL2NhbGVuZGFyLWJvZHknO1xuaW1wb3J0IHsgTXR4Q2xvY2sgfSBmcm9tICcuL2Nsb2NrJztcbmltcG9ydCB7IE10eFRpbWUsIE10eFRpbWVJbnB1dCB9IGZyb20gJy4vdGltZSc7XG5pbXBvcnQge1xuICBNdHhEYXRldGltZXBpY2tlcixcbiAgTXR4RGF0ZXRpbWVwaWNrZXJDb250ZW50LFxuICBNVFhfREFURVRJTUVQSUNLRVJfU0NST0xMX1NUUkFURUdZX0ZBQ1RPUllfUFJPVklERVIsXG59IGZyb20gJy4vZGF0ZXRpbWVwaWNrZXInO1xuaW1wb3J0IHsgTXR4RGF0ZXRpbWVwaWNrZXJJbnB1dCB9IGZyb20gJy4vZGF0ZXRpbWVwaWNrZXItaW5wdXQnO1xuaW1wb3J0IHsgTXR4RGF0ZXRpbWVwaWNrZXJUb2dnbGUsIE10eERhdGV0aW1lcGlja2VyVG9nZ2xlSWNvbiB9IGZyb20gJy4vZGF0ZXRpbWVwaWNrZXItdG9nZ2xlJztcbmltcG9ydCB7IE10eE1vbnRoVmlldyB9IGZyb20gJy4vbW9udGgtdmlldyc7XG5pbXBvcnQgeyBNdHhZZWFyVmlldyB9IGZyb20gJy4veWVhci12aWV3JztcbmltcG9ydCB7IE10eE11bHRpWWVhclZpZXcgfSBmcm9tICcuL211bHRpLXllYXItdmlldyc7XG5cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIE1hdEJ1dHRvbk1vZHVsZSwgT3ZlcmxheU1vZHVsZSwgQTExeU1vZHVsZSwgUG9ydGFsTW9kdWxlXSxcbiAgZGVjbGFyYXRpb25zOiBbXG4gICAgTXR4Q2FsZW5kYXIsXG4gICAgTXR4Q2FsZW5kYXJCb2R5LFxuICAgIE10eENsb2NrLFxuICAgIE10eFRpbWUsXG4gICAgTXR4VGltZUlucHV0LFxuICAgIE10eERhdGV0aW1lcGlja2VyLFxuICAgIE10eERhdGV0aW1lcGlja2VyVG9nZ2xlLFxuICAgIE10eERhdGV0aW1lcGlja2VyVG9nZ2xlSWNvbixcbiAgICBNdHhEYXRldGltZXBpY2tlcklucHV0LFxuICAgIE10eERhdGV0aW1lcGlja2VyQ29udGVudCxcbiAgICBNdHhNb250aFZpZXcsXG4gICAgTXR4WWVhclZpZXcsXG4gICAgTXR4TXVsdGlZZWFyVmlldyxcbiAgXSxcbiAgZXhwb3J0czogW1xuICAgIE10eENhbGVuZGFyLFxuICAgIE10eENhbGVuZGFyQm9keSxcbiAgICBNdHhDbG9jayxcbiAgICBNdHhUaW1lLFxuICAgIE10eERhdGV0aW1lcGlja2VyLFxuICAgIE10eERhdGV0aW1lcGlja2VyVG9nZ2xlLFxuICAgIE10eERhdGV0aW1lcGlja2VyVG9nZ2xlSWNvbixcbiAgICBNdHhEYXRldGltZXBpY2tlcklucHV0LFxuICAgIE10eERhdGV0aW1lcGlja2VyQ29udGVudCxcbiAgICBNdHhNb250aFZpZXcsXG4gICAgTXR4WWVhclZpZXcsXG4gICAgTXR4TXVsdGlZZWFyVmlldyxcbiAgXSxcbiAgcHJvdmlkZXJzOiBbTVRYX0RBVEVUSU1FUElDS0VSX1NDUk9MTF9TVFJBVEVHWV9GQUNUT1JZX1BST1ZJREVSXSxcbn0pXG5leHBvcnQgY2xhc3MgTXR4RGF0ZXRpbWVwaWNrZXJNb2R1bGUge31cbiJdfQ==