@acorex/components 5.0.2 → 5.0.4

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 (316) hide show
  1. package/README.md +24 -24
  2. package/acorex-components.d.ts +5 -5
  3. package/bundles/acorex-components.umd.js +6719 -6658
  4. package/bundles/acorex-components.umd.js.map +1 -1
  5. package/esm2015/acorex-components.js +4 -4
  6. package/esm2015/lib/alert/alert-button.component.js +52 -52
  7. package/esm2015/lib/alert/alert-contnet.component.js +21 -21
  8. package/esm2015/lib/alert/alert-footer.component.js +27 -27
  9. package/esm2015/lib/alert/alert-suffix.component.js +27 -27
  10. package/esm2015/lib/alert/alert-title.component.js +23 -23
  11. package/esm2015/lib/alert/alert.component.js +131 -130
  12. package/esm2015/lib/alert/alert.module.js +43 -43
  13. package/esm2015/lib/alert/index.js +8 -8
  14. package/esm2015/lib/avatar/avatar.component.js +55 -55
  15. package/esm2015/lib/avatar/avatar.module.js +21 -21
  16. package/esm2015/lib/avatar/index.js +3 -3
  17. package/esm2015/lib/base/common.module.js +18 -18
  18. package/esm2015/lib/base/custom-cdk-overlay.service.js +47 -47
  19. package/esm2015/lib/base/drawing.class.js +11 -11
  20. package/esm2015/lib/base/events.class.js +53 -47
  21. package/esm2015/lib/base/index.js +7 -7
  22. package/esm2015/lib/base/mixin/base-components.class.js +83 -83
  23. package/esm2015/lib/base/mixin/button-mixin.class.js +129 -129
  24. package/esm2015/lib/base/mixin/clickable-mixin.class.js +24 -24
  25. package/esm2015/lib/base/mixin/constratctor.js +2 -2
  26. package/esm2015/lib/base/mixin/datalist-component.class.js +97 -97
  27. package/esm2015/lib/base/mixin/dropdown-mixin.class.js +36 -36
  28. package/esm2015/lib/base/mixin/index.js +3 -3
  29. package/esm2015/lib/base/mixin/interactive-mixin.class.js +72 -72
  30. package/esm2015/lib/base/mixin/loading-mixin.class.js +18 -18
  31. package/esm2015/lib/base/mixin/mixin.class.js +23 -23
  32. package/esm2015/lib/base/mixin/selection-component.class.js +158 -158
  33. package/esm2015/lib/base/mixin/sizable-mixin.class.js +18 -18
  34. package/esm2015/lib/base/mixin/textbox-mixin.class.js +38 -38
  35. package/esm2015/lib/base/mixin/value-mixin.class.js +190 -190
  36. package/esm2015/lib/base/overlay.service.js +91 -91
  37. package/esm2015/lib/base/responsive.directive.js +34 -34
  38. package/esm2015/lib/base/styles.class.js +4 -4
  39. package/esm2015/lib/button/button-group.component.js +131 -131
  40. package/esm2015/lib/button/button-item.class.js +2 -2
  41. package/esm2015/lib/button/button-item.component.js +81 -81
  42. package/esm2015/lib/button/button.component.js +51 -52
  43. package/esm2015/lib/button/button.module.js +37 -37
  44. package/esm2015/lib/button/dropdown-button.component.js +200 -200
  45. package/esm2015/lib/button/index.js +7 -7
  46. package/esm2015/lib/calendar/calendar.component.js +59 -59
  47. package/esm2015/lib/calendar/calendar.module.js +24 -24
  48. package/esm2015/lib/calendar/index.js +3 -3
  49. package/esm2015/lib/carousel/carousel-arrows.component.js +53 -53
  50. package/esm2015/lib/carousel/carousel-item.component.js +21 -21
  51. package/esm2015/lib/carousel/carousel-pager.component.js +74 -74
  52. package/esm2015/lib/carousel/carousel-splidejs.class.js +82 -82
  53. package/esm2015/lib/carousel/carousel.class.js +10 -10
  54. package/esm2015/lib/carousel/carousel.component.js +246 -246
  55. package/esm2015/lib/carousel/carousel.module.js +24 -24
  56. package/esm2015/lib/carousel/index.js +7 -7
  57. package/esm2015/lib/checkbox/checkbox.component.js +40 -40
  58. package/esm2015/lib/checkbox/checkbox.module.js +20 -20
  59. package/esm2015/lib/checkbox/index.js +3 -3
  60. package/esm2015/lib/datalist/datalist.component.js +81 -81
  61. package/esm2015/lib/datalist/datalist.module.js +22 -22
  62. package/esm2015/lib/datalist/index.js +3 -3
  63. package/esm2015/lib/datepicker/datepicker.component.js +64 -64
  64. package/esm2015/lib/datepicker/datepicker.module.js +23 -23
  65. package/esm2015/lib/datepicker/index.js +3 -3
  66. package/esm2015/lib/decorators/decorators.module.js +22 -22
  67. package/esm2015/lib/decorators/index.js +4 -4
  68. package/esm2015/lib/decorators/prefix.component.js +27 -27
  69. package/esm2015/lib/decorators/suffix.component.js +35 -35
  70. package/esm2015/lib/dialog/dialog.class.js +2 -2
  71. package/esm2015/lib/dialog/dialog.component.js +45 -45
  72. package/esm2015/lib/dialog/dialog.module.js +26 -26
  73. package/esm2015/lib/dialog/dialog.service.js +127 -127
  74. package/esm2015/lib/dialog/index.js +5 -5
  75. package/esm2015/lib/drawer/drawer-container.component.js +73 -73
  76. package/esm2015/lib/drawer/drawer-content.component.js +27 -27
  77. package/esm2015/lib/drawer/drawer.component.js +145 -145
  78. package/esm2015/lib/drawer/drawer.module.js +23 -23
  79. package/esm2015/lib/drawer/index.js +5 -5
  80. package/esm2015/lib/dropdown/dropdown-panel.component.js +194 -191
  81. package/esm2015/lib/dropdown/dropdown.component.js +139 -139
  82. package/esm2015/lib/dropdown/dropdown.module.js +24 -24
  83. package/esm2015/lib/dropdown/index.js +4 -4
  84. package/esm2015/lib/form/form-field.component.js +20 -20
  85. package/esm2015/lib/form/form-field.module.js +21 -21
  86. package/esm2015/lib/form/form-hint.component.js +20 -20
  87. package/esm2015/lib/form/form.component.js +51 -51
  88. package/esm2015/lib/form/index.js +5 -5
  89. package/esm2015/lib/icon/icon.component.js +28 -28
  90. package/esm2015/lib/icon/icon.module.js +21 -21
  91. package/esm2015/lib/icon/index.js +3 -3
  92. package/esm2015/lib/input-mask/index.js +3 -3
  93. package/esm2015/lib/input-mask/input-mask.component.js +42 -42
  94. package/esm2015/lib/input-mask/input-mask.module.js +23 -23
  95. package/esm2015/lib/label/index.js +3 -3
  96. package/esm2015/lib/label/label.component.js +20 -20
  97. package/esm2015/lib/label/label.module.js +21 -21
  98. package/esm2015/lib/loading/index.js +6 -6
  99. package/esm2015/lib/loading/loading-spinner.component.js +32 -32
  100. package/esm2015/lib/loading/loading.component.js +54 -54
  101. package/esm2015/lib/loading/loading.directive.js +67 -67
  102. package/esm2015/lib/loading/loading.module.js +35 -35
  103. package/esm2015/lib/loading/loading.service.js +155 -155
  104. package/esm2015/lib/number-box/index.js +3 -3
  105. package/esm2015/lib/number-box/number-box.component.js +289 -289
  106. package/esm2015/lib/number-box/number-box.module.js +32 -32
  107. package/esm2015/lib/page/base-page.class.js +66 -66
  108. package/esm2015/lib/page/index.js +5 -5
  109. package/esm2015/lib/page/page-footer.component.js +32 -32
  110. package/esm2015/lib/page/page.component.js +33 -33
  111. package/esm2015/lib/page/page.module.js +18 -18
  112. package/esm2015/lib/popover/index.js +3 -3
  113. package/esm2015/lib/popover/popover.component.js +119 -119
  114. package/esm2015/lib/popover/popover.module.js +19 -19
  115. package/esm2015/lib/popup/index.js +4 -4
  116. package/esm2015/lib/popup/popup.component.js +97 -97
  117. package/esm2015/lib/popup/popup.module.js +26 -26
  118. package/esm2015/lib/popup/popup.service.js +94 -94
  119. package/esm2015/lib/range-slider/index.js +3 -0
  120. package/esm2015/lib/range-slider/range-slider.component.js +22 -0
  121. package/esm2015/lib/range-slider/range-slider.module.js +21 -0
  122. package/esm2015/lib/selectbox/index.js +3 -3
  123. package/esm2015/lib/selectbox/selectbox.component.js +193 -193
  124. package/esm2015/lib/selectbox/selectbox.module.js +21 -21
  125. package/esm2015/lib/selection-list/index.js +3 -3
  126. package/esm2015/lib/selection-list/selection-list.component.js +46 -46
  127. package/esm2015/lib/selection-list/selection-list.module.js +21 -21
  128. package/esm2015/lib/side-menu/index.js +3 -3
  129. package/esm2015/lib/side-menu/side-menu.component.js +21 -21
  130. package/esm2015/lib/side-menu/side-menu.module.js +21 -21
  131. package/esm2015/lib/switch/index.js +3 -3
  132. package/esm2015/lib/switch/switch.component.js +30 -30
  133. package/esm2015/lib/switch/switch.module.js +21 -21
  134. package/esm2015/lib/tabs/index.js +6 -6
  135. package/esm2015/lib/tabs/tab-strip.component.js +61 -61
  136. package/esm2015/lib/tabs/tab-view.component.js +46 -46
  137. package/esm2015/lib/tabs/tab.component.js +59 -59
  138. package/esm2015/lib/tabs/tabs.class.js +4 -4
  139. package/esm2015/lib/tabs/tabs.module.js +23 -23
  140. package/esm2015/lib/textbox/index.js +3 -3
  141. package/esm2015/lib/textbox/textbox.component.js +62 -60
  142. package/esm2015/lib/textbox/textbox.module.js +43 -39
  143. package/esm2015/lib/time-box/index.js +3 -3
  144. package/esm2015/lib/time-box/time-box.component.js +134 -134
  145. package/esm2015/lib/time-box/time-box.module.js +32 -32
  146. package/esm2015/lib/toast/index.js +5 -5
  147. package/esm2015/lib/toast/toast.class.js +2 -2
  148. package/esm2015/lib/toast/toast.component.js +50 -50
  149. package/esm2015/lib/toast/toast.module.js +22 -22
  150. package/esm2015/lib/toast/toast.service.js +114 -114
  151. package/esm2015/lib/tooltip/index.js +4 -4
  152. package/esm2015/lib/tooltip/tooltip.component.js +45 -45
  153. package/esm2015/lib/tooltip/tooltip.directive.js +86 -86
  154. package/esm2015/lib/tooltip/tooltip.module.js +23 -23
  155. package/esm2015/lib/validation/index.js +3 -3
  156. package/esm2015/lib/validation/validation-rule.widget.js +113 -113
  157. package/esm2015/lib/validation/validation.class.js +2 -2
  158. package/esm2015/lib/validation/validation.module.js +32 -32
  159. package/esm2015/public-api.js +39 -38
  160. package/fesm2015/acorex-components.js +5811 -5763
  161. package/fesm2015/acorex-components.js.map +1 -1
  162. package/lib/alert/alert-button.component.d.ts +13 -13
  163. package/lib/alert/alert-contnet.component.d.ts +5 -5
  164. package/lib/alert/alert-footer.component.d.ts +5 -5
  165. package/lib/alert/alert-suffix.component.d.ts +5 -5
  166. package/lib/alert/alert-title.component.d.ts +5 -5
  167. package/lib/alert/alert.component.d.ts +46 -46
  168. package/lib/alert/alert.module.d.ts +13 -13
  169. package/lib/alert/index.d.ts +7 -7
  170. package/lib/avatar/avatar.component.d.ts +20 -20
  171. package/lib/avatar/avatar.module.d.ts +8 -8
  172. package/lib/avatar/index.d.ts +2 -2
  173. package/lib/base/common.module.d.ts +7 -7
  174. package/lib/base/custom-cdk-overlay.service.d.ts +19 -19
  175. package/lib/base/drawing.class.d.ts +9 -9
  176. package/lib/base/events.class.d.ts +72 -65
  177. package/lib/base/index.d.ts +6 -6
  178. package/lib/base/mixin/base-components.class.d.ts +84 -84
  179. package/lib/base/mixin/button-mixin.class.d.ts +79 -79
  180. package/lib/base/mixin/clickable-mixin.class.d.ts +42 -42
  181. package/lib/base/mixin/constratctor.d.ts +4 -4
  182. package/lib/base/mixin/datalist-component.class.d.ts +54 -54
  183. package/lib/base/mixin/dropdown-mixin.class.d.ts +47 -47
  184. package/lib/base/mixin/index.d.ts +2 -2
  185. package/lib/base/mixin/interactive-mixin.class.d.ts +60 -63
  186. package/lib/base/mixin/loading-mixin.class.d.ts +46 -48
  187. package/lib/base/mixin/mixin.class.d.ts +814 -814
  188. package/lib/base/mixin/selection-component.class.d.ts +55 -55
  189. package/lib/base/mixin/sizable-mixin.class.d.ts +40 -40
  190. package/lib/base/mixin/textbox-mixin.class.d.ts +59 -61
  191. package/lib/base/mixin/value-mixin.class.d.ts +68 -71
  192. package/lib/base/overlay.service.d.ts +31 -31
  193. package/lib/base/responsive.directive.d.ts +10 -10
  194. package/lib/base/styles.class.d.ts +17 -17
  195. package/lib/button/button-group.component.d.ts +36 -35
  196. package/lib/button/button-item.class.d.ts +22 -22
  197. package/lib/button/button-item.component.d.ts +92 -92
  198. package/lib/button/button.component.d.ts +18 -18
  199. package/lib/button/button.module.d.ts +13 -13
  200. package/lib/button/dropdown-button.component.d.ts +234 -234
  201. package/lib/button/index.d.ts +6 -6
  202. package/lib/calendar/calendar.component.d.ts +16 -16
  203. package/lib/calendar/calendar.module.d.ts +11 -11
  204. package/lib/calendar/index.d.ts +2 -2
  205. package/lib/carousel/carousel-arrows.component.d.ts +14 -14
  206. package/lib/carousel/carousel-item.component.d.ts +8 -8
  207. package/lib/carousel/carousel-pager.component.d.ts +22 -22
  208. package/lib/carousel/carousel-splidejs.class.d.ts +18 -18
  209. package/lib/carousel/carousel.class.d.ts +48 -48
  210. package/lib/carousel/carousel.component.d.ts +62 -62
  211. package/lib/carousel/carousel.module.d.ts +11 -11
  212. package/lib/carousel/index.d.ts +6 -6
  213. package/lib/checkbox/checkbox.component.d.ts +12 -12
  214. package/lib/checkbox/checkbox.module.d.ts +9 -9
  215. package/lib/checkbox/index.d.ts +2 -2
  216. package/lib/datalist/datalist.component.d.ts +25 -25
  217. package/lib/datalist/datalist.module.d.ts +9 -9
  218. package/lib/datalist/index.d.ts +2 -2
  219. package/lib/datepicker/datepicker.component.d.ts +18 -18
  220. package/lib/datepicker/datepicker.module.d.ts +10 -10
  221. package/lib/datepicker/index.d.ts +2 -2
  222. package/lib/decorators/decorators.module.d.ts +9 -9
  223. package/lib/decorators/index.d.ts +3 -3
  224. package/lib/decorators/prefix.component.d.ts +8 -8
  225. package/lib/decorators/suffix.component.d.ts +8 -8
  226. package/lib/dialog/dialog.class.d.ts +12 -12
  227. package/lib/dialog/dialog.component.d.ts +15 -15
  228. package/lib/dialog/dialog.module.d.ts +13 -13
  229. package/lib/dialog/dialog.service.d.ts +18 -18
  230. package/lib/dialog/index.d.ts +4 -4
  231. package/lib/drawer/drawer-container.component.d.ts +13 -13
  232. package/lib/drawer/drawer-content.component.d.ts +8 -8
  233. package/lib/drawer/drawer.component.d.ts +30 -30
  234. package/lib/drawer/drawer.module.d.ts +10 -10
  235. package/lib/drawer/index.d.ts +4 -4
  236. package/lib/dropdown/dropdown-panel.component.d.ts +117 -116
  237. package/lib/dropdown/dropdown.component.d.ts +31 -31
  238. package/lib/dropdown/dropdown.module.d.ts +13 -13
  239. package/lib/dropdown/index.d.ts +3 -3
  240. package/lib/form/form-field.component.d.ts +8 -8
  241. package/lib/form/form-field.module.d.ts +10 -10
  242. package/lib/form/form-hint.component.d.ts +8 -8
  243. package/lib/form/form.component.d.ts +13 -13
  244. package/lib/form/index.d.ts +4 -4
  245. package/lib/icon/icon.component.d.ts +10 -10
  246. package/lib/icon/icon.module.d.ts +8 -8
  247. package/lib/icon/index.d.ts +2 -2
  248. package/lib/input-mask/index.d.ts +2 -2
  249. package/lib/input-mask/input-mask.component.d.ts +14 -14
  250. package/lib/input-mask/input-mask.module.d.ts +9 -9
  251. package/lib/label/index.d.ts +2 -2
  252. package/lib/label/label.component.d.ts +8 -8
  253. package/lib/label/label.module.d.ts +8 -8
  254. package/lib/loading/index.d.ts +5 -5
  255. package/lib/loading/loading-spinner.component.d.ts +5 -5
  256. package/lib/loading/loading.component.d.ts +19 -19
  257. package/lib/loading/loading.directive.d.ts +22 -22
  258. package/lib/loading/loading.module.d.ts +13 -13
  259. package/lib/loading/loading.service.d.ts +48 -48
  260. package/lib/number-box/index.d.ts +2 -2
  261. package/lib/number-box/number-box.component.d.ts +69 -69
  262. package/lib/number-box/number-box.module.d.ts +11 -11
  263. package/lib/page/base-page.class.d.ts +37 -37
  264. package/lib/page/index.d.ts +4 -4
  265. package/lib/page/page-footer.component.d.ts +7 -7
  266. package/lib/page/page.component.d.ts +13 -13
  267. package/lib/page/page.module.d.ts +7 -7
  268. package/lib/popover/index.d.ts +2 -2
  269. package/lib/popover/popover.component.d.ts +30 -30
  270. package/lib/popover/popover.module.d.ts +8 -8
  271. package/lib/popup/index.d.ts +3 -3
  272. package/lib/popup/popup.component.d.ts +33 -33
  273. package/lib/popup/popup.module.d.ts +12 -12
  274. package/lib/popup/popup.service.d.ts +37 -37
  275. package/lib/range-slider/index.d.ts +2 -0
  276. package/lib/range-slider/range-slider.component.d.ts +8 -0
  277. package/lib/range-slider/range-slider.module.d.ts +8 -0
  278. package/lib/selectbox/index.d.ts +2 -2
  279. package/lib/selectbox/selectbox.component.d.ts +28 -28
  280. package/lib/selectbox/selectbox.module.d.ts +10 -10
  281. package/lib/selection-list/index.d.ts +2 -2
  282. package/lib/selection-list/selection-list.component.d.ts +10 -10
  283. package/lib/selection-list/selection-list.module.d.ts +10 -10
  284. package/lib/side-menu/index.d.ts +2 -2
  285. package/lib/side-menu/side-menu.component.d.ts +8 -8
  286. package/lib/side-menu/side-menu.module.d.ts +8 -8
  287. package/lib/switch/index.d.ts +2 -2
  288. package/lib/switch/switch.component.d.ts +9 -9
  289. package/lib/switch/switch.module.d.ts +9 -9
  290. package/lib/tabs/index.d.ts +5 -5
  291. package/lib/tabs/tab-strip.component.d.ts +17 -17
  292. package/lib/tabs/tab-view.component.d.ts +14 -14
  293. package/lib/tabs/tab.component.d.ts +18 -18
  294. package/lib/tabs/tabs.class.d.ts +18 -18
  295. package/lib/tabs/tabs.module.d.ts +10 -10
  296. package/lib/textbox/index.d.ts +2 -2
  297. package/lib/textbox/textbox.component.d.ts +19 -19
  298. package/lib/textbox/textbox.module.d.ts +13 -12
  299. package/lib/time-box/index.d.ts +2 -2
  300. package/lib/time-box/time-box.component.d.ts +29 -29
  301. package/lib/time-box/time-box.module.d.ts +11 -11
  302. package/lib/toast/index.d.ts +4 -4
  303. package/lib/toast/toast.class.d.ts +14 -14
  304. package/lib/toast/toast.component.d.ts +16 -16
  305. package/lib/toast/toast.module.d.ts +9 -9
  306. package/lib/toast/toast.service.d.ts +18 -18
  307. package/lib/tooltip/index.d.ts +3 -3
  308. package/lib/tooltip/tooltip.component.d.ts +10 -10
  309. package/lib/tooltip/tooltip.directive.d.ts +18 -18
  310. package/lib/tooltip/tooltip.module.d.ts +10 -10
  311. package/lib/validation/index.d.ts +2 -2
  312. package/lib/validation/validation-rule.widget.d.ts +25 -25
  313. package/lib/validation/validation.class.d.ts +17 -17
  314. package/lib/validation/validation.module.d.ts +9 -9
  315. package/package.json +18 -18
  316. package/public-api.d.ts +37 -36
@@ -1,60 +1,62 @@
1
- import { ChangeDetectionStrategy, Component, ContentChild, HostBinding, ViewEncapsulation, } from '@angular/core';
2
- import { AXBaseTextBoxMixin } from '../base/mixin/mixin.class';
3
- import { TEXTBOX_INPUTS, TEXTBOX_OUTPUT, } from '../base/mixin/textbox-mixin.class';
4
- import { AXInputMaskComponent } from '../input-mask';
5
- import * as i0 from "@angular/core";
6
- import * as i1 from "../button/button.component";
7
- import * as i2 from "ngx-mask";
8
- import * as i3 from "@angular/forms";
9
- import * as i4 from "@angular/common";
10
- /**
11
- * The Textbox is a component which detects user interaction and triggers a corresponding event
12
- *
13
- * @category Components
14
- */
15
- export class AXTextBoxComponent extends AXBaseTextBoxMixin {
16
- /**
17
- * @ignore
18
- */
19
- constructor(elementRef, cdr) {
20
- super(elementRef, cdr);
21
- }
22
- //TODO: prefix suffix text
23
- get hostClass() {
24
- return `${this.cssClass} ax-${this.size}`;
25
- }
26
- }
27
- AXTextBoxComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: AXTextBoxComponent, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
28
- AXTextBoxComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.6", type: AXTextBoxComponent, selector: "ax-text-box", inputs: { disabled: "disabled", readonly: "readonly", tabIndex: "tabIndex", cssClass: "cssClass", size: "size", placeholder: "placeholder", maxLength: "maxLength", allowNull: "allowNull", debounceTime: "debounceTime", value: "value", name: "name" }, outputs: { valueChange: "valueChange", onValueChanged: "onValueChanged", onBlur: "onBlur", onFocus: "onFocus" }, host: { properties: { "class": "this.hostClass" }, classAttribute: "ax-text-box" }, queries: [{ propertyName: "_contentMask", first: true, predicate: AXInputMaskComponent, descendants: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"ax-editor-container\">\r\n <ng-content select=\"ax-prefix\">\r\n </ng-content>\r\n <input class=\"ax-input\" [attr.name]=\"name\" type=\"text\" [mask]=\"_contentMask?.mask\" [prefix]=\"_contentMask?.prefix\" [suffix]=\"_contentMask?.suffix\" [showMaskTyped]=\"_contentMask?.showMaskTyped\" [attr.placeholder]=\"placeholder\" [attr.maxlength]=\"maxLength\"\r\n [class.ax-state-disabled]=\"disabled\" [class.ax-state-readonly]=\"readonly\" [disabled]=\"disabled\" [readonly]=\"readonly\" [tabindex]=\"tabIndex\" [(ngModel)]=\"value\" (focus)=\"_emitOnFocusEvent($event)\" (blur)=\"_emitOnBlurEvent($event)\" [attr.autocomplete]=\"autoComplete ? 'on': 'off'\">\r\n <ax-button color=\"light\" look=\"blank\" (onClick)=\"clear()\" [tabIndex]=\"-1\" *ngIf=\"value && allowNull && !(disabled || readonly)\" iconClass=\"ax-ic ax-ic-clear\">\r\n </ax-button>\r\n <ng-content select=\"ax-suffix\">\r\n </ng-content>\r\n <ng-content select=\"ax-validation-rule\">\r\n </ng-content>\r\n <ng-content select=\"ax-input-mask\">\r\n </ng-content>\r\n</div>", components: [{ type: i1.AXButtonComponent, selector: "ax-button", inputs: ["disabled", "tabIndex", "size", "cssClass", "cssStyle", "text", "submitBehavior", "cancelBehavior", "color", "look", "toggleable", "selected"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange"] }], directives: [{ type: i2.MaskDirective, selector: "input[mask], textarea[mask]", inputs: ["mask", "specialCharacters", "patterns", "prefix", "suffix", "thousandSeparator", "decimalMarker", "dropSpecialCharacters", "hiddenInput", "showMaskTyped", "placeHolderCharacter", "shownMaskExpression", "showTemplate", "clearIfNotMatch", "validation", "separatorLimit", "allowNegativeNumbers", "leadZeroDateTime"] }, { type: i3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i3.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
29
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: AXTextBoxComponent, decorators: [{
30
- type: Component,
31
- args: [{
32
- selector: 'ax-text-box',
33
- templateUrl: 'textbox.component.html',
34
- inputs: [
35
- 'disabled',
36
- 'readonly',
37
- 'tabIndex',
38
- 'cssClass',
39
- 'size',
40
- ...TEXTBOX_INPUTS,
41
- ],
42
- outputs: [
43
- 'valueChange',
44
- 'onValueChanged',
45
- 'onBlur',
46
- 'onFocus',
47
- ...TEXTBOX_OUTPUT,
48
- ],
49
- encapsulation: ViewEncapsulation.None,
50
- changeDetection: ChangeDetectionStrategy.OnPush,
51
- host: { class: 'ax-text-box' },
52
- }]
53
- }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { _contentMask: [{
54
- type: ContentChild,
55
- args: [AXInputMaskComponent]
56
- }], hostClass: [{
57
- type: HostBinding,
58
- args: ['class']
59
- }] } });
60
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dGJveC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hY29yZXgvY29tcG9uZW50cy9zcmMvbGliL3RleHRib3gvdGV4dGJveC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hY29yZXgvY29tcG9uZW50cy9zcmMvbGliL3RleHRib3gvdGV4dGJveC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBRXZCLFNBQVMsRUFDVCxZQUFZLEVBRVosV0FBVyxFQUdYLGlCQUFpQixHQUNsQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUMvRCxPQUFPLEVBQ0wsY0FBYyxFQUNkLGNBQWMsR0FDZixNQUFNLG1DQUFtQyxDQUFDO0FBQzNDLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7Ozs7O0FBRXJEOzs7O0dBSUc7QUF1QkgsTUFBTSxPQUFPLGtCQUFtQixTQUFRLGtCQUFrQjtJQVl4RDs7TUFFRTtJQUNGLFlBQVksVUFBc0IsRUFBRSxHQUFzQjtRQUN4RCxLQUFLLENBQUMsVUFBVSxFQUFFLEdBQUcsQ0FBQyxDQUFDO0lBQ3pCLENBQUM7SUFiRCwwQkFBMEI7SUFHMUIsSUFDSSxTQUFTO1FBQ1gsT0FBTyxHQUFHLElBQUksQ0FBQyxRQUFRLE9BQU8sSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQzVDLENBQUM7OytHQVZVLGtCQUFrQjttR0FBbEIsa0JBQWtCLDRoQkFDZixvQkFBb0IsdUVDOUNwQyx3a0NBYU07MkZEZ0NPLGtCQUFrQjtrQkF0QjlCLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGFBQWE7b0JBQ3ZCLFdBQVcsRUFBRSx3QkFBd0I7b0JBQ3JDLE1BQU0sRUFBRTt3QkFDTixVQUFVO3dCQUNWLFVBQVU7d0JBQ1YsVUFBVTt3QkFDVixVQUFVO3dCQUNWLE1BQU07d0JBQ04sR0FBRyxjQUFjO3FCQUNsQjtvQkFDRCxPQUFPLEVBQUU7d0JBQ1AsYUFBYTt3QkFDYixnQkFBZ0I7d0JBQ2hCLFFBQVE7d0JBQ1IsU0FBUzt3QkFDVCxHQUFHLGNBQWM7cUJBQ2xCO29CQUNELGFBQWEsRUFBRSxpQkFBaUIsQ0FBQyxJQUFJO29CQUNyQyxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtvQkFDL0MsSUFBSSxFQUFFLEVBQUUsS0FBSyxFQUFFLGFBQWEsRUFBRTtpQkFDL0I7aUlBR0MsWUFBWTtzQkFEWCxZQUFZO3VCQUFDLG9CQUFvQjtnQkFPOUIsU0FBUztzQkFEWixXQUFXO3VCQUFDLE9BQU8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxyXG4gIENoYW5nZURldGVjdG9yUmVmLFxyXG4gIENvbXBvbmVudCxcclxuICBDb250ZW50Q2hpbGQsXHJcbiAgRWxlbWVudFJlZixcclxuICBIb3N0QmluZGluZyxcclxuICBPbkluaXQsXHJcbiAgVmlld0NoaWxkLFxyXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBBWEJhc2VUZXh0Qm94TWl4aW4gfSBmcm9tICcuLi9iYXNlL21peGluL21peGluLmNsYXNzJztcclxuaW1wb3J0IHtcclxuICBURVhUQk9YX0lOUFVUUyxcclxuICBURVhUQk9YX09VVFBVVCxcclxufSBmcm9tICcuLi9iYXNlL21peGluL3RleHRib3gtbWl4aW4uY2xhc3MnO1xyXG5pbXBvcnQgeyBBWElucHV0TWFza0NvbXBvbmVudCB9IGZyb20gJy4uL2lucHV0LW1hc2snO1xyXG5cclxuLyoqXHJcbiAqIFRoZSBUZXh0Ym94IGlzIGEgY29tcG9uZW50IHdoaWNoIGRldGVjdHMgdXNlciBpbnRlcmFjdGlvbiBhbmQgdHJpZ2dlcnMgYSBjb3JyZXNwb25kaW5nIGV2ZW50XHJcbiAqXHJcbiAqIEBjYXRlZ29yeSBDb21wb25lbnRzXHJcbiAqL1xyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2F4LXRleHQtYm94JyxcclxuICB0ZW1wbGF0ZVVybDogJ3RleHRib3guY29tcG9uZW50Lmh0bWwnLFxyXG4gIGlucHV0czogW1xyXG4gICAgJ2Rpc2FibGVkJyxcclxuICAgICdyZWFkb25seScsXHJcbiAgICAndGFiSW5kZXgnLFxyXG4gICAgJ2Nzc0NsYXNzJyxcclxuICAgICdzaXplJyxcclxuICAgIC4uLlRFWFRCT1hfSU5QVVRTLFxyXG4gIF0sXHJcbiAgb3V0cHV0czogW1xyXG4gICAgJ3ZhbHVlQ2hhbmdlJyxcclxuICAgICdvblZhbHVlQ2hhbmdlZCcsXHJcbiAgICAnb25CbHVyJyxcclxuICAgICdvbkZvY3VzJyxcclxuICAgIC4uLlRFWFRCT1hfT1VUUFVULFxyXG4gIF0sXHJcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxuICBob3N0OiB7IGNsYXNzOiAnYXgtdGV4dC1ib3gnIH0sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBWFRleHRCb3hDb21wb25lbnQgZXh0ZW5kcyBBWEJhc2VUZXh0Qm94TWl4aW4ge1xyXG4gIEBDb250ZW50Q2hpbGQoQVhJbnB1dE1hc2tDb21wb25lbnQpXHJcbiAgX2NvbnRlbnRNYXNrOiBBWElucHV0TWFza0NvbXBvbmVudDtcclxuXHJcbiAgLy9UT0RPOiBwcmVmaXggc3VmZml4IHRleHRcclxuXHJcblxyXG4gIEBIb3N0QmluZGluZygnY2xhc3MnKVxyXG4gIGdldCBob3N0Q2xhc3MoKTogc3RyaW5nIHtcclxuICAgIHJldHVybiBgJHt0aGlzLmNzc0NsYXNzfSBheC0ke3RoaXMuc2l6ZX1gO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgKiAgQGlnbm9yZVxyXG4gICovXHJcbiAgY29uc3RydWN0b3IoZWxlbWVudFJlZjogRWxlbWVudFJlZiwgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZikge1xyXG4gICAgc3VwZXIoZWxlbWVudFJlZiwgY2RyKTtcclxuICB9XHJcbn1cclxuIiwiPGRpdiBjbGFzcz1cImF4LWVkaXRvci1jb250YWluZXJcIj5cclxuICAgIDxuZy1jb250ZW50IHNlbGVjdD1cImF4LXByZWZpeFwiPlxyXG4gICAgPC9uZy1jb250ZW50PlxyXG4gICAgPGlucHV0IGNsYXNzPVwiYXgtaW5wdXRcIiBbYXR0ci5uYW1lXT1cIm5hbWVcIiB0eXBlPVwidGV4dFwiIFttYXNrXT1cIl9jb250ZW50TWFzaz8ubWFza1wiIFtwcmVmaXhdPVwiX2NvbnRlbnRNYXNrPy5wcmVmaXhcIiBbc3VmZml4XT1cIl9jb250ZW50TWFzaz8uc3VmZml4XCIgW3Nob3dNYXNrVHlwZWRdPVwiX2NvbnRlbnRNYXNrPy5zaG93TWFza1R5cGVkXCIgW2F0dHIucGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXJcIiBbYXR0ci5tYXhsZW5ndGhdPVwibWF4TGVuZ3RoXCJcclxuICAgICAgICBbY2xhc3MuYXgtc3RhdGUtZGlzYWJsZWRdPVwiZGlzYWJsZWRcIiBbY2xhc3MuYXgtc3RhdGUtcmVhZG9ubHldPVwicmVhZG9ubHlcIiBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIiBbcmVhZG9ubHldPVwicmVhZG9ubHlcIiBbdGFiaW5kZXhdPVwidGFiSW5kZXhcIiBbKG5nTW9kZWwpXT1cInZhbHVlXCIgKGZvY3VzKT1cIl9lbWl0T25Gb2N1c0V2ZW50KCRldmVudClcIiAoYmx1cik9XCJfZW1pdE9uQmx1ckV2ZW50KCRldmVudClcIiBbYXR0ci5hdXRvY29tcGxldGVdPVwiYXV0b0NvbXBsZXRlID8gJ29uJzogJ29mZidcIj5cclxuICAgIDxheC1idXR0b24gY29sb3I9XCJsaWdodFwiIGxvb2s9XCJibGFua1wiIChvbkNsaWNrKT1cImNsZWFyKClcIiBbdGFiSW5kZXhdPVwiLTFcIiAqbmdJZj1cInZhbHVlICYmIGFsbG93TnVsbCAmJiAgIShkaXNhYmxlZCB8fCByZWFkb25seSlcIiBpY29uQ2xhc3M9XCJheC1pYyBheC1pYy1jbGVhclwiPlxyXG4gICAgPC9heC1idXR0b24+XHJcbiAgICA8bmctY29udGVudCBzZWxlY3Q9XCJheC1zdWZmaXhcIj5cclxuICAgIDwvbmctY29udGVudD5cclxuICAgIDxuZy1jb250ZW50IHNlbGVjdD1cImF4LXZhbGlkYXRpb24tcnVsZVwiPlxyXG4gICAgPC9uZy1jb250ZW50PlxyXG4gICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiYXgtaW5wdXQtbWFza1wiPlxyXG4gICAgPC9uZy1jb250ZW50PlxyXG48L2Rpdj4iXX0=
1
+ import { ChangeDetectionStrategy, Component, ContentChild, HostBinding, ViewEncapsulation, } from '@angular/core';
2
+ import { AXBaseTextBoxMixin } from '../base/mixin/mixin.class';
3
+ import { TEXTBOX_INPUTS, TEXTBOX_OUTPUT, } from '../base/mixin/textbox-mixin.class';
4
+ import { AXInputMaskComponent } from '../input-mask';
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "../button/button.component";
7
+ import * as i2 from "../decorators/prefix.component";
8
+ import * as i3 from "../icon/icon.component";
9
+ import * as i4 from "ngx-mask";
10
+ import * as i5 from "@angular/forms";
11
+ import * as i6 from "@angular/common";
12
+ /**
13
+ * The Textbox is a component which detects user interaction and triggers a corresponding event
14
+ *
15
+ * @category Components
16
+ */
17
+ export class AXTextBoxComponent extends AXBaseTextBoxMixin {
18
+ /**
19
+ * @ignore
20
+ */
21
+ constructor(elementRef, cdr) {
22
+ super(elementRef, cdr);
23
+ }
24
+ //TODO: prefix suffix text
25
+ get hostClass() {
26
+ return `${this.cssClass} ax-${this.size}`;
27
+ }
28
+ }
29
+ AXTextBoxComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: AXTextBoxComponent, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
30
+ AXTextBoxComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.6", type: AXTextBoxComponent, selector: "ax-text-box", inputs: { disabled: "disabled", readonly: "readonly", tabIndex: "tabIndex", cssClass: "cssClass", size: "size", placeholder: "placeholder", maxLength: "maxLength", allowNull: "allowNull", debounceTime: "debounceTime", value: "value", name: "name" }, outputs: { valueChange: "valueChange", onValueChanged: "onValueChanged", onBlur: "onBlur", onFocus: "onFocus" }, host: { properties: { "class": "this.hostClass" }, classAttribute: "ax-text-box ax-editor-container" }, queries: [{ propertyName: "_contentMask", first: true, predicate: AXInputMaskComponent, descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-content select=\"ax-prefix\">\n</ng-content>\n<input class=\"ax-input\" [attr.name]=\"name\" type=\"text\" [mask]=\"_contentMask?.mask\" [prefix]=\"_contentMask?.prefix\"\n [suffix]=\"_contentMask?.suffix\" [showMaskTyped]=\"_contentMask?.showMaskTyped\" [attr.placeholder]=\"placeholder\"\n [attr.maxlength]=\"maxLength\" [class.ax-state-disabled]=\"disabled\" [class.ax-state-readonly]=\"readonly\"\n [disabled]=\"disabled\" [readonly]=\"readonly\" [tabindex]=\"tabIndex\" [(ngModel)]=\"value\"\n (focus)=\"_emitOnFocusEvent($event)\" (blur)=\"_emitOnBlurEvent($event)\"\n [attr.autocomplete]=\"autoComplete ? 'on': 'off'\">\n<ax-button color=\"light\" look=\"blank\" [size]=\"size\" (onClick)=\"clear()\" [tabIndex]=\"-1\"\n *ngIf=\"value && allowNull && !(disabled || readonly)\">\n <ax-prefix>\n <ax-icon icon=\"ax-ic ax-ic-close\"></ax-icon>\n </ax-prefix>\n</ax-button>\n<ng-content select=\"ax-suffix\">\n</ng-content>\n<ng-content select=\"ax-validation-rule\">\n</ng-content>\n<ng-content select=\"ax-input-mask\">\n</ng-content>", components: [{ type: i1.AXButtonComponent, selector: "ax-button", inputs: ["disabled", "tabIndex", "size", "cssClass", "cssStyle", "text", "submitBehavior", "cancelBehavior", "color", "look", "toggleable", "selected"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange"] }, { type: i2.AXDecoratorPrefixComponent, selector: "ax-prefix" }, { type: i3.AXIconComponent, selector: "ax-icon", inputs: ["icon"] }], directives: [{ type: i4.MaskDirective, selector: "input[mask], textarea[mask]", inputs: ["mask", "specialCharacters", "patterns", "prefix", "suffix", "thousandSeparator", "decimalMarker", "dropSpecialCharacters", "hiddenInput", "showMaskTyped", "placeHolderCharacter", "shownMaskExpression", "showTemplate", "clearIfNotMatch", "validation", "separatorLimit", "allowNegativeNumbers", "leadZeroDateTime"] }, { type: i5.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i5.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
31
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: AXTextBoxComponent, decorators: [{
32
+ type: Component,
33
+ args: [{
34
+ selector: 'ax-text-box',
35
+ templateUrl: 'textbox.component.html',
36
+ inputs: [
37
+ 'disabled',
38
+ 'readonly',
39
+ 'tabIndex',
40
+ 'cssClass',
41
+ 'size',
42
+ ...TEXTBOX_INPUTS,
43
+ ],
44
+ outputs: [
45
+ 'valueChange',
46
+ 'onValueChanged',
47
+ 'onBlur',
48
+ 'onFocus',
49
+ ...TEXTBOX_OUTPUT,
50
+ ],
51
+ encapsulation: ViewEncapsulation.None,
52
+ changeDetection: ChangeDetectionStrategy.OnPush,
53
+ host: { class: 'ax-text-box ax-editor-container' },
54
+ }]
55
+ }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { _contentMask: [{
56
+ type: ContentChild,
57
+ args: [AXInputMaskComponent]
58
+ }], hostClass: [{
59
+ type: HostBinding,
60
+ args: ['class']
61
+ }] } });
62
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dGJveC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hY29yZXgvY29tcG9uZW50cy9zcmMvbGliL3RleHRib3gvdGV4dGJveC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hY29yZXgvY29tcG9uZW50cy9zcmMvbGliL3RleHRib3gvdGV4dGJveC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBRXZCLFNBQVMsRUFDVCxZQUFZLEVBRVosV0FBVyxFQUdYLGlCQUFpQixHQUNsQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUMvRCxPQUFPLEVBQ0wsY0FBYyxFQUNkLGNBQWMsR0FDZixNQUFNLG1DQUFtQyxDQUFDO0FBQzNDLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7Ozs7Ozs7QUFFckQ7Ozs7R0FJRztBQXVCSCxNQUFNLE9BQU8sa0JBQW1CLFNBQVEsa0JBQWtCO0lBWXhEOztNQUVFO0lBQ0YsWUFBWSxVQUFzQixFQUFFLEdBQXNCO1FBQ3hELEtBQUssQ0FBQyxVQUFVLEVBQUUsR0FBRyxDQUFDLENBQUM7SUFDekIsQ0FBQztJQWJELDBCQUEwQjtJQUcxQixJQUNJLFNBQVM7UUFDWCxPQUFPLEdBQUcsSUFBSSxDQUFDLFFBQVEsT0FBTyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDNUMsQ0FBQzs7K0dBVlUsa0JBQWtCO21HQUFsQixrQkFBa0IsZ2pCQUNmLG9CQUFvQix1RUM5Q3BDLHFqQ0FtQmE7MkZEMEJBLGtCQUFrQjtrQkF0QjlCLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGFBQWE7b0JBQ3ZCLFdBQVcsRUFBRSx3QkFBd0I7b0JBQ3JDLE1BQU0sRUFBRTt3QkFDTixVQUFVO3dCQUNWLFVBQVU7d0JBQ1YsVUFBVTt3QkFDVixVQUFVO3dCQUNWLE1BQU07d0JBQ04sR0FBRyxjQUFjO3FCQUNsQjtvQkFDRCxPQUFPLEVBQUU7d0JBQ1AsYUFBYTt3QkFDYixnQkFBZ0I7d0JBQ2hCLFFBQVE7d0JBQ1IsU0FBUzt3QkFDVCxHQUFHLGNBQWM7cUJBQ2xCO29CQUNELGFBQWEsRUFBRSxpQkFBaUIsQ0FBQyxJQUFJO29CQUNyQyxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtvQkFDL0MsSUFBSSxFQUFFLEVBQUUsS0FBSyxFQUFFLGlDQUFpQyxFQUFFO2lCQUNuRDtpSUFHQyxZQUFZO3NCQURYLFlBQVk7dUJBQUMsb0JBQW9CO2dCQU85QixTQUFTO3NCQURaLFdBQVc7dUJBQUMsT0FBTyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBDb250ZW50Q2hpbGQsXG4gIEVsZW1lbnRSZWYsXG4gIEhvc3RCaW5kaW5nLFxuICBPbkluaXQsXG4gIFZpZXdDaGlsZCxcbiAgVmlld0VuY2Fwc3VsYXRpb24sXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQVhCYXNlVGV4dEJveE1peGluIH0gZnJvbSAnLi4vYmFzZS9taXhpbi9taXhpbi5jbGFzcyc7XG5pbXBvcnQge1xuICBURVhUQk9YX0lOUFVUUyxcbiAgVEVYVEJPWF9PVVRQVVQsXG59IGZyb20gJy4uL2Jhc2UvbWl4aW4vdGV4dGJveC1taXhpbi5jbGFzcyc7XG5pbXBvcnQgeyBBWElucHV0TWFza0NvbXBvbmVudCB9IGZyb20gJy4uL2lucHV0LW1hc2snO1xuXG4vKipcbiAqIFRoZSBUZXh0Ym94IGlzIGEgY29tcG9uZW50IHdoaWNoIGRldGVjdHMgdXNlciBpbnRlcmFjdGlvbiBhbmQgdHJpZ2dlcnMgYSBjb3JyZXNwb25kaW5nIGV2ZW50XG4gKlxuICogQGNhdGVnb3J5IENvbXBvbmVudHNcbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXgtdGV4dC1ib3gnLFxuICB0ZW1wbGF0ZVVybDogJ3RleHRib3guY29tcG9uZW50Lmh0bWwnLFxuICBpbnB1dHM6IFtcbiAgICAnZGlzYWJsZWQnLFxuICAgICdyZWFkb25seScsXG4gICAgJ3RhYkluZGV4JyxcbiAgICAnY3NzQ2xhc3MnLFxuICAgICdzaXplJyxcbiAgICAuLi5URVhUQk9YX0lOUFVUUyxcbiAgXSxcbiAgb3V0cHV0czogW1xuICAgICd2YWx1ZUNoYW5nZScsXG4gICAgJ29uVmFsdWVDaGFuZ2VkJyxcbiAgICAnb25CbHVyJyxcbiAgICAnb25Gb2N1cycsXG4gICAgLi4uVEVYVEJPWF9PVVRQVVQsXG4gIF0sXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBob3N0OiB7IGNsYXNzOiAnYXgtdGV4dC1ib3ggYXgtZWRpdG9yLWNvbnRhaW5lcicgfSxcbn0pXG5leHBvcnQgY2xhc3MgQVhUZXh0Qm94Q29tcG9uZW50IGV4dGVuZHMgQVhCYXNlVGV4dEJveE1peGluIHtcbiAgQENvbnRlbnRDaGlsZChBWElucHV0TWFza0NvbXBvbmVudClcbiAgX2NvbnRlbnRNYXNrOiBBWElucHV0TWFza0NvbXBvbmVudDtcblxuICAvL1RPRE86IHByZWZpeCBzdWZmaXggdGV4dFxuXG5cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcycpXG4gIGdldCBob3N0Q2xhc3MoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gYCR7dGhpcy5jc3NDbGFzc30gYXgtJHt0aGlzLnNpemV9YDtcbiAgfVxuXG4gIC8qKlxuICAqICBAaWdub3JlXG4gICovXG4gIGNvbnN0cnVjdG9yKGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYsIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYpIHtcbiAgICBzdXBlcihlbGVtZW50UmVmLCBjZHIpO1xuICB9XG59XG4iLCI8bmctY29udGVudCBzZWxlY3Q9XCJheC1wcmVmaXhcIj5cbjwvbmctY29udGVudD5cbjxpbnB1dCBjbGFzcz1cImF4LWlucHV0XCIgW2F0dHIubmFtZV09XCJuYW1lXCIgdHlwZT1cInRleHRcIiBbbWFza109XCJfY29udGVudE1hc2s/Lm1hc2tcIiBbcHJlZml4XT1cIl9jb250ZW50TWFzaz8ucHJlZml4XCJcbiAgICBbc3VmZml4XT1cIl9jb250ZW50TWFzaz8uc3VmZml4XCIgW3Nob3dNYXNrVHlwZWRdPVwiX2NvbnRlbnRNYXNrPy5zaG93TWFza1R5cGVkXCIgW2F0dHIucGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXJcIlxuICAgIFthdHRyLm1heGxlbmd0aF09XCJtYXhMZW5ndGhcIiBbY2xhc3MuYXgtc3RhdGUtZGlzYWJsZWRdPVwiZGlzYWJsZWRcIiBbY2xhc3MuYXgtc3RhdGUtcmVhZG9ubHldPVwicmVhZG9ubHlcIlxuICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiIFtyZWFkb25seV09XCJyZWFkb25seVwiIFt0YWJpbmRleF09XCJ0YWJJbmRleFwiIFsobmdNb2RlbCldPVwidmFsdWVcIlxuICAgIChmb2N1cyk9XCJfZW1pdE9uRm9jdXNFdmVudCgkZXZlbnQpXCIgKGJsdXIpPVwiX2VtaXRPbkJsdXJFdmVudCgkZXZlbnQpXCJcbiAgICBbYXR0ci5hdXRvY29tcGxldGVdPVwiYXV0b0NvbXBsZXRlID8gJ29uJzogJ29mZidcIj5cbjxheC1idXR0b24gY29sb3I9XCJsaWdodFwiIGxvb2s9XCJibGFua1wiIFtzaXplXT1cInNpemVcIiAob25DbGljayk9XCJjbGVhcigpXCIgW3RhYkluZGV4XT1cIi0xXCJcbiAgICAqbmdJZj1cInZhbHVlICYmIGFsbG93TnVsbCAmJiAgIShkaXNhYmxlZCB8fCByZWFkb25seSlcIj5cbiAgICA8YXgtcHJlZml4PlxuICAgICAgICA8YXgtaWNvbiBpY29uPVwiYXgtaWMgYXgtaWMtY2xvc2VcIj48L2F4LWljb24+XG4gICAgPC9heC1wcmVmaXg+XG48L2F4LWJ1dHRvbj5cbjxuZy1jb250ZW50IHNlbGVjdD1cImF4LXN1ZmZpeFwiPlxuPC9uZy1jb250ZW50PlxuPG5nLWNvbnRlbnQgc2VsZWN0PVwiYXgtdmFsaWRhdGlvbi1ydWxlXCI+XG48L25nLWNvbnRlbnQ+XG48bmctY29udGVudCBzZWxlY3Q9XCJheC1pbnB1dC1tYXNrXCI+XG48L25nLWNvbnRlbnQ+Il19
@@ -1,39 +1,43 @@
1
- import { CommonModule } from '@angular/common';
2
- import { NgModule } from '@angular/core';
3
- import { FormsModule } from '@angular/forms';
4
- import { NgxMaskModule } from 'ngx-mask';
5
- import { AXButtonModule } from '../button';
6
- import { AXEditorDecoratorModule } from '../decorators';
7
- import { AXTextBoxComponent } from './textbox.component';
8
- import * as i0 from "@angular/core";
9
- import * as i1 from "ngx-mask";
10
- export class AXTextBoxModule {
11
- }
12
- AXTextBoxModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: AXTextBoxModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
13
- AXTextBoxModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: AXTextBoxModule, declarations: [AXTextBoxComponent], imports: [CommonModule,
14
- FormsModule,
15
- AXButtonModule,
16
- AXEditorDecoratorModule, i1.NgxMaskModule], exports: [AXTextBoxComponent] });
17
- AXTextBoxModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: AXTextBoxModule, providers: [], imports: [[
18
- CommonModule,
19
- FormsModule,
20
- AXButtonModule,
21
- AXEditorDecoratorModule,
22
- NgxMaskModule.forChild()
23
- ]] });
24
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: AXTextBoxModule, decorators: [{
25
- type: NgModule,
26
- args: [{
27
- imports: [
28
- CommonModule,
29
- FormsModule,
30
- AXButtonModule,
31
- AXEditorDecoratorModule,
32
- NgxMaskModule.forChild()
33
- ],
34
- exports: [AXTextBoxComponent],
35
- declarations: [AXTextBoxComponent],
36
- providers: [],
37
- }]
38
- }] });
39
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dGJveC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hY29yZXgvY29tcG9uZW50cy9zcmMvbGliL3RleHRib3gvdGV4dGJveC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDekMsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUMzQyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDeEQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0scUJBQXFCLENBQUM7OztBQWV6RCxNQUFNLE9BQU8sZUFBZTs7NEdBQWYsZUFBZTs2R0FBZixlQUFlLGlCQUhULGtCQUFrQixhQVA3QixZQUFZO1FBQ1osV0FBVztRQUNYLGNBQWM7UUFDZCx1QkFBdUIsK0JBR2pCLGtCQUFrQjs2R0FJbkIsZUFBZSxhQUZiLEVBQUUsWUFUSjtZQUNMLFlBQVk7WUFDWixXQUFXO1lBQ1gsY0FBYztZQUNkLHVCQUF1QjtZQUN2QixhQUFhLENBQUMsUUFBUSxFQUFFO1NBQzNCOzJGQUtRLGVBQWU7a0JBWjNCLFFBQVE7bUJBQUM7b0JBQ04sT0FBTyxFQUFFO3dCQUNMLFlBQVk7d0JBQ1osV0FBVzt3QkFDWCxjQUFjO3dCQUNkLHVCQUF1Qjt3QkFDdkIsYUFBYSxDQUFDLFFBQVEsRUFBRTtxQkFDM0I7b0JBQ0QsT0FBTyxFQUFFLENBQUMsa0JBQWtCLENBQUM7b0JBQzdCLFlBQVksRUFBRSxDQUFDLGtCQUFrQixDQUFDO29CQUNsQyxTQUFTLEVBQUUsRUFBRTtpQkFDaEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgTmd4TWFza01vZHVsZSB9IGZyb20gJ25neC1tYXNrJztcclxuaW1wb3J0IHsgQVhCdXR0b25Nb2R1bGUgfSBmcm9tICcuLi9idXR0b24nO1xyXG5pbXBvcnQgeyBBWEVkaXRvckRlY29yYXRvck1vZHVsZSB9IGZyb20gJy4uL2RlY29yYXRvcnMnO1xyXG5pbXBvcnQgeyBBWFRleHRCb3hDb21wb25lbnQgfSBmcm9tICcuL3RleHRib3guY29tcG9uZW50JztcclxuXHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gICAgaW1wb3J0czogW1xyXG4gICAgICAgIENvbW1vbk1vZHVsZSwgXHJcbiAgICAgICAgRm9ybXNNb2R1bGUsIFxyXG4gICAgICAgIEFYQnV0dG9uTW9kdWxlLFxyXG4gICAgICAgIEFYRWRpdG9yRGVjb3JhdG9yTW9kdWxlLFxyXG4gICAgICAgIE5neE1hc2tNb2R1bGUuZm9yQ2hpbGQoKVxyXG4gICAgXSxcclxuICAgIGV4cG9ydHM6IFtBWFRleHRCb3hDb21wb25lbnRdLFxyXG4gICAgZGVjbGFyYXRpb25zOiBbQVhUZXh0Qm94Q29tcG9uZW50XSxcclxuICAgIHByb3ZpZGVyczogW10sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBWFRleHRCb3hNb2R1bGUgeyB9XHJcbiJdfQ==
1
+ import { CommonModule } from '@angular/common';
2
+ import { NgModule } from '@angular/core';
3
+ import { FormsModule } from '@angular/forms';
4
+ import { NgxMaskModule } from 'ngx-mask';
5
+ import { AXButtonModule } from '../button';
6
+ import { AXEditorDecoratorModule } from '../decorators';
7
+ import { AXIconModule } from '../icon';
8
+ import { AXTextBoxComponent } from './textbox.component';
9
+ import * as i0 from "@angular/core";
10
+ import * as i1 from "ngx-mask";
11
+ export class AXTextBoxModule {
12
+ }
13
+ AXTextBoxModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: AXTextBoxModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
14
+ AXTextBoxModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: AXTextBoxModule, declarations: [AXTextBoxComponent], imports: [CommonModule,
15
+ FormsModule,
16
+ AXButtonModule,
17
+ AXEditorDecoratorModule,
18
+ AXIconModule, i1.NgxMaskModule], exports: [AXTextBoxComponent] });
19
+ AXTextBoxModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: AXTextBoxModule, providers: [], imports: [[
20
+ CommonModule,
21
+ FormsModule,
22
+ AXButtonModule,
23
+ AXEditorDecoratorModule,
24
+ AXIconModule,
25
+ NgxMaskModule.forChild()
26
+ ]] });
27
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: AXTextBoxModule, decorators: [{
28
+ type: NgModule,
29
+ args: [{
30
+ imports: [
31
+ CommonModule,
32
+ FormsModule,
33
+ AXButtonModule,
34
+ AXEditorDecoratorModule,
35
+ AXIconModule,
36
+ NgxMaskModule.forChild()
37
+ ],
38
+ exports: [AXTextBoxComponent],
39
+ declarations: [AXTextBoxComponent],
40
+ providers: [],
41
+ }]
42
+ }] });
43
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dGJveC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hY29yZXgvY29tcG9uZW50cy9zcmMvbGliL3RleHRib3gvdGV4dGJveC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDekMsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUMzQyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDeEQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUN2QyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQzs7O0FBZ0J6RCxNQUFNLE9BQU8sZUFBZTs7NEdBQWYsZUFBZTs2R0FBZixlQUFlLGlCQUhULGtCQUFrQixhQVI3QixZQUFZO1FBQ1osV0FBVztRQUNYLGNBQWM7UUFDZCx1QkFBdUI7UUFDdkIsWUFBWSwrQkFHTixrQkFBa0I7NkdBSW5CLGVBQWUsYUFGYixFQUFFLFlBVko7WUFDTCxZQUFZO1lBQ1osV0FBVztZQUNYLGNBQWM7WUFDZCx1QkFBdUI7WUFDdkIsWUFBWTtZQUNaLGFBQWEsQ0FBQyxRQUFRLEVBQUU7U0FDM0I7MkZBS1EsZUFBZTtrQkFiM0IsUUFBUTttQkFBQztvQkFDTixPQUFPLEVBQUU7d0JBQ0wsWUFBWTt3QkFDWixXQUFXO3dCQUNYLGNBQWM7d0JBQ2QsdUJBQXVCO3dCQUN2QixZQUFZO3dCQUNaLGFBQWEsQ0FBQyxRQUFRLEVBQUU7cUJBQzNCO29CQUNELE9BQU8sRUFBRSxDQUFDLGtCQUFrQixDQUFDO29CQUM3QixZQUFZLEVBQUUsQ0FBQyxrQkFBa0IsQ0FBQztvQkFDbEMsU0FBUyxFQUFFLEVBQUU7aUJBQ2hCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IE5neE1hc2tNb2R1bGUgfSBmcm9tICduZ3gtbWFzayc7XG5pbXBvcnQgeyBBWEJ1dHRvbk1vZHVsZSB9IGZyb20gJy4uL2J1dHRvbic7XG5pbXBvcnQgeyBBWEVkaXRvckRlY29yYXRvck1vZHVsZSB9IGZyb20gJy4uL2RlY29yYXRvcnMnO1xuaW1wb3J0IHsgQVhJY29uTW9kdWxlIH0gZnJvbSAnLi4vaWNvbic7XG5pbXBvcnQgeyBBWFRleHRCb3hDb21wb25lbnQgfSBmcm9tICcuL3RleHRib3guY29tcG9uZW50JztcblxuXG5ATmdNb2R1bGUoe1xuICAgIGltcG9ydHM6IFtcbiAgICAgICAgQ29tbW9uTW9kdWxlLFxuICAgICAgICBGb3Jtc01vZHVsZSxcbiAgICAgICAgQVhCdXR0b25Nb2R1bGUsXG4gICAgICAgIEFYRWRpdG9yRGVjb3JhdG9yTW9kdWxlLFxuICAgICAgICBBWEljb25Nb2R1bGUsXG4gICAgICAgIE5neE1hc2tNb2R1bGUuZm9yQ2hpbGQoKVxuICAgIF0sXG4gICAgZXhwb3J0czogW0FYVGV4dEJveENvbXBvbmVudF0sXG4gICAgZGVjbGFyYXRpb25zOiBbQVhUZXh0Qm94Q29tcG9uZW50XSxcbiAgICBwcm92aWRlcnM6IFtdLFxufSlcbmV4cG9ydCBjbGFzcyBBWFRleHRCb3hNb2R1bGUgeyB9XG4iXX0=
@@ -1,3 +1,3 @@
1
- export * from './time-box.component';
2
- export * from './time-box.module';
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hY29yZXgvY29tcG9uZW50cy9zcmMvbGliL3RpbWUtYm94L2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsc0JBQXNCLENBQUM7QUFDckMsY0FBYyxtQkFBbUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vdGltZS1ib3guY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi90aW1lLWJveC5tb2R1bGUnO1xyXG4iXX0=
1
+ export * from './time-box.component';
2
+ export * from './time-box.module';
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hY29yZXgvY29tcG9uZW50cy9zcmMvbGliL3RpbWUtYm94L2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsc0JBQXNCLENBQUM7QUFDckMsY0FBYyxtQkFBbUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vdGltZS1ib3guY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vdGltZS1ib3gubW9kdWxlJztcbiJdfQ==
@@ -1,134 +1,134 @@
1
- import { AXDateTime } from '@acorex/core';
2
- import { Component, ViewEncapsulation, ChangeDetectionStrategy, EventEmitter, Output, Input, HostBinding } from '@angular/core';
3
- import { AXBaseTextBoxMixin } from '../base';
4
- import { TEXTBOX_INPUTS, TEXTBOX_OUTPUT } from '../base/mixin/textbox-mixin.class';
5
- import * as i0 from "@angular/core";
6
- import * as i1 from "ngx-mask";
7
- import * as i2 from "../button/button.component";
8
- import * as i3 from "@angular/forms";
9
- import * as i4 from "@angular/common";
10
- export class AXTimeBoxComponent extends AXBaseTextBoxMixin {
11
- constructor(elementRef, cdr, _maskService) {
12
- super(elementRef, cdr);
13
- this.cdr = cdr;
14
- this._maskService = _maskService;
15
- this.format = 'HH:mm';
16
- this.displayTextChange = new EventEmitter();
17
- this._displayText = "";
18
- }
19
- get hostClass() {
20
- return `${this.cssClass} ax-${this.size}`;
21
- }
22
- get minValue() {
23
- return this._minValue;
24
- }
25
- set minValue(v) {
26
- this._minValue = v;
27
- }
28
- get maxValue() {
29
- return this._maxValue;
30
- }
31
- set maxValue(v) {
32
- this._maxValue = v;
33
- }
34
- get displayText() {
35
- return this._displayText;
36
- }
37
- set displayText(v) {
38
- this._displayText = v;
39
- this.displayTextChange.emit(v);
40
- }
41
- _handleOnKeydownEvent(e) {
42
- const ignore = () => {
43
- e.preventDefault();
44
- e.stopPropagation();
45
- };
46
- const toDate = (val) => {
47
- return new Date(val);
48
- };
49
- const nums = Array(10).fill(0).map((v, i) => i.toString());
50
- const chars = [':', 'Backspace', 'ArrowDown', 'ArrowUp', 'ArrowRight', 'ArrowLeft', 'Tab', 'Enter'];
51
- const input = e.target;
52
- const key = (e.key);
53
- const valStr = input.value;
54
- const val = toDate(valStr);
55
- const selectionStart = input.selectionStart;
56
- const selectionEnd = input.selectionEnd;
57
- //
58
- //
59
- if (![...nums, ...chars].includes(key)) {
60
- ignore();
61
- }
62
- if (e.key === 'ArrowDown' || e.key === 'ArrowUp') {
63
- // const stepVal = decimalPointIndex > -1 ? (selectionStart >= decimalPointIndex ? this.decimalStep : this.step) : this.step;
64
- // if (e.key === 'ArrowDown') {
65
- // this.value = val - stepVal;
66
- // }
67
- // else {
68
- // this.value = val + stepVal;
69
- // }
70
- ignore();
71
- input.setSelectionRange(selectionStart, selectionStart);
72
- }
73
- else if (e.key == 'Backspace') {
74
- }
75
- else if (nums.includes(key)) {
76
- }
77
- super._emitOnKeydownEvent(e);
78
- }
79
- _onValueChanging(value) {
80
- return this._fixValue(value);
81
- }
82
- _fixValue(value) {
83
- if ((value == null || value == undefined)) {
84
- return this.allowNull ? null : this.minValue;
85
- }
86
- else if (value > this.maxValue) {
87
- return this.maxValue;
88
- }
89
- else if (value < this.minValue) {
90
- return this.minValue;
91
- }
92
- return value;
93
- }
94
- _format(value) {
95
- return new AXDateTime(value).format(this.format);
96
- }
97
- _onValueChanged(oldValue, newValue) {
98
- this.displayText = this._format(newValue);
99
- }
100
- _handleOnBlurEvent(e) {
101
- const input = e.target;
102
- this.value = this._fixValue(this.value);
103
- input.value = this._format(this.value);
104
- this._emitOnFocusEvent(e);
105
- }
106
- }
107
- AXTimeBoxComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: AXTimeBoxComponent, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i1.MaskApplierService }], target: i0.ɵɵFactoryTarget.Component });
108
- AXTimeBoxComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.6", type: AXTimeBoxComponent, selector: "ax-time-box", inputs: { disabled: "disabled", readonly: "readonly", tabIndex: "tabIndex", size: "size", value: "value", placeholder: "placeholder", maxLength: "maxLength", allowNull: "allowNull", debounceTime: "debounceTime", name: "name", minValue: "minValue", maxValue: "maxValue", format: "format", displayText: "displayText" }, outputs: { valueChange: "valueChange", onValueChanged: "onValueChanged", onBlur: "onBlur", onFocus: "onFocus", displayTextChange: "displayTextChange" }, host: { properties: { "class": "this.hostClass" }, classAttribute: "ax-time-box ax-editor-container" }, usesInheritance: true, ngImport: i0, template: "<ng-content select=\"ax-prefix\">\r\n</ng-content>\r\n<input class=\"ax-input\" type=\"text\" [attr.pattern]=\"'[\\d\\.]*'\" [attr.placeholder]=\"placeholder\"\r\n [class.ax-state-disabled]=\"disabled\" [class.ax-state-readonly]=\"readonly\" [disabled]=\"disabled\"\r\n [readonly]=\"readonly\" [tabindex]=\"tabIndex\" [ngModel]=\"displayText\" (focus)=\"_emitOnFocusEvent($event)\"\r\n (blur)=\"_emitOnBlurEvent($event)\" (keydown)=\"_handleOnKeydownEvent($event)\">\r\n<ax-button color=\"light\" look=\"blank\" (onClick)=\"clear()\" [tabIndex]=\"-1\"\r\n *ngIf=\"value && allowNull && !(disabled || readonly)\">\r\n <i class=\"ax-icon-x icon\"></i>\r\n</ax-button>\r\n<ng-content select=\"ax-suffix\">\r\n</ng-content>\r\n<ng-content select=\"ax-validation-rule\">\r\n</ng-content>", components: [{ type: i2.AXButtonComponent, selector: "ax-button", inputs: ["disabled", "tabIndex", "size", "cssClass", "cssStyle", "text", "submitBehavior", "cancelBehavior", "color", "look", "toggleable", "selected"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange"] }], directives: [{ type: i3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i3.PatternValidator, selector: "[pattern][formControlName],[pattern][formControl],[pattern][ngModel]", inputs: ["pattern"] }, { type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
109
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: AXTimeBoxComponent, decorators: [{
110
- type: Component,
111
- args: [{
112
- selector: 'ax-time-box',
113
- templateUrl: './time-box.component.html',
114
- inputs: ['disabled', 'readonly', 'tabIndex', 'size', 'value', ...TEXTBOX_INPUTS],
115
- outputs: ['valueChange', 'onValueChanged', 'onBlur', 'onFocus', ...TEXTBOX_OUTPUT],
116
- changeDetection: ChangeDetectionStrategy.OnPush,
117
- encapsulation: ViewEncapsulation.None,
118
- host: { class: 'ax-time-box ax-editor-container' },
119
- }]
120
- }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: i1.MaskApplierService }]; }, propDecorators: { hostClass: [{
121
- type: HostBinding,
122
- args: ['class']
123
- }], minValue: [{
124
- type: Input
125
- }], maxValue: [{
126
- type: Input
127
- }], format: [{
128
- type: Input
129
- }], displayTextChange: [{
130
- type: Output
131
- }], displayText: [{
132
- type: Input
133
- }] } });
134
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGltZS1ib3guY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYWNvcmV4L2NvbXBvbmVudHMvc3JjL2xpYi90aW1lLWJveC90aW1lLWJveC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hY29yZXgvY29tcG9uZW50cy9zcmMvbGliL3RpbWUtYm94L3RpbWUtYm94LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDMUMsT0FBTyxFQUFFLFNBQVMsRUFBRSxpQkFBaUIsRUFBRSx1QkFBdUIsRUFBaUMsWUFBWSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsV0FBVyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRS9KLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUM3QyxPQUFPLEVBQUUsY0FBYyxFQUFFLGNBQWMsRUFBRSxNQUFNLG1DQUFtQyxDQUFDOzs7Ozs7QUFXbkYsTUFBTSxPQUFPLGtCQUFtQixTQUFRLGtCQUFrQjtJQStDdEQsWUFDSSxVQUFzQixFQUNkLEdBQXNCLEVBQ3RCLFlBQWdDO1FBRXhDLEtBQUssQ0FBQyxVQUFVLEVBQUUsR0FBRyxDQUFDLENBQUM7UUFIZixRQUFHLEdBQUgsR0FBRyxDQUFtQjtRQUN0QixpQkFBWSxHQUFaLFlBQVksQ0FBb0I7UUF0QjVDLFdBQU0sR0FBVyxPQUFPLENBQUM7UUFLbEIsc0JBQWlCLEdBQXlCLElBQUksWUFBWSxFQUFVLENBQUM7UUFDcEUsaUJBQVksR0FBVyxFQUFFLENBQUM7SUFtQmxDLENBQUM7SUFuREQsSUFDSSxTQUFTO1FBQ1gsT0FBTyxHQUFHLElBQUksQ0FBQyxRQUFRLE9BQU8sSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQzVDLENBQUM7SUFJRCxJQUNXLFFBQVE7UUFDZixP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QUFNLEVBQUUsQ0FBQyxVQUFVLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLEdBQUcsY0FBYyxDQUFDO29CQUNoRixPQUFPLEVBQUUsQ0FBQyxhQUFhLEVBQUUsZ0JBQWdCLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBRSxHQUFHLGNBQWMsQ0FBQztvQkFDbEYsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07b0JBQy9DLGFBQWEsRUFBRSxpQkFBaUIsQ0FBQyxJQUFJO29CQUNyQyxJQUFJLEVBQUUsRUFBRSxLQUFLLEVBQUUsaUNBQWlDLEVBQUU7aUJBQ3JEO2tLQUlPLFNBQVM7c0JBRFosV0FBVzt1QkFBQyxPQUFPO2dCQVFULFFBQVE7c0JBRGxCLEtBQUs7Z0JBVUssUUFBUTtzQkFEbEIsS0FBSztnQkFVTixNQUFNO3NCQURMLEtBQUs7Z0JBTUMsaUJBQWlCO3NCQUR2QixNQUFNO2dCQUtJLFdBQVc7c0JBRHJCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWERhdGVUaW1lIH0gZnJvbSAnQGFjb3JleC9jb3JlJztcclxuaW1wb3J0IHsgQ29tcG9uZW50LCBWaWV3RW5jYXBzdWxhdGlvbiwgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIEVsZW1lbnRSZWYsIENoYW5nZURldGVjdG9yUmVmLCBFdmVudEVtaXR0ZXIsIE91dHB1dCwgSW5wdXQsIEhvc3RCaW5kaW5nIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE1hc2tBcHBsaWVyU2VydmljZSB9IGZyb20gJ25neC1tYXNrJztcclxuaW1wb3J0IHsgQVhCYXNlVGV4dEJveE1peGluIH0gZnJvbSAnLi4vYmFzZSc7XHJcbmltcG9ydCB7IFRFWFRCT1hfSU5QVVRTLCBURVhUQk9YX09VVFBVVCB9IGZyb20gJy4uL2Jhc2UvbWl4aW4vdGV4dGJveC1taXhpbi5jbGFzcyc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiAnYXgtdGltZS1ib3gnLFxyXG4gICAgdGVtcGxhdGVVcmw6ICcuL3RpbWUtYm94LmNvbXBvbmVudC5odG1sJyxcclxuICAgIGlucHV0czogWydkaXNhYmxlZCcsICdyZWFkb25seScsICd0YWJJbmRleCcsICdzaXplJywgJ3ZhbHVlJywgLi4uVEVYVEJPWF9JTlBVVFNdLFxyXG4gICAgb3V0cHV0czogWyd2YWx1ZUNoYW5nZScsICdvblZhbHVlQ2hhbmdlZCcsICdvbkJsdXInLCAnb25Gb2N1cycsIC4uLlRFWFRCT1hfT1VUUFVUXSxcclxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcclxuICAgIGhvc3Q6IHsgY2xhc3M6ICdheC10aW1lLWJveCBheC1lZGl0b3ItY29udGFpbmVyJyB9LFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQVhUaW1lQm94Q29tcG9uZW50IGV4dGVuZHMgQVhCYXNlVGV4dEJveE1peGluIHtcclxuXHJcbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzJylcclxuICAgIGdldCBob3N0Q2xhc3MoKTogc3RyaW5nIHtcclxuICAgICAgcmV0dXJuIGAke3RoaXMuY3NzQ2xhc3N9IGF4LSR7dGhpcy5zaXplfWA7XHJcbiAgICB9XHJcblxyXG5cclxuICAgIHByaXZhdGUgX21pblZhbHVlOiBEYXRlO1xyXG4gICAgQElucHV0KClcclxuICAgIHB1YmxpYyBnZXQgbWluVmFsdWUoKTogRGF0ZSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX21pblZhbHVlO1xyXG4gICAgfVxyXG4gICAgcHVibGljIHNldCBtaW5WYWx1ZSh2OiBEYXRlKSB7XHJcbiAgICAgICAgdGhpcy5fbWluVmFsdWUgPSB2O1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgX21heFZhbHVlOiBEYXRlO1xyXG4gICAgQElucHV0KClcclxuICAgIHB1YmxpYyBnZXQgbWF4VmFsdWUoKTogRGF0ZSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX21heFZhbHVlO1xyXG4gICAgfVxyXG4gICAgcHVibGljIHNldCBtYXhWYWx1ZSh2OiBEYXRlKSB7XHJcbiAgICAgICAgdGhpcy5fbWF4VmFsdWUgPSB2O1xyXG4gICAgfVxyXG5cclxuXHJcbiAgICBASW5wdXQoKVxyXG4gICAgZm9ybWF0OiBzdHJpbmcgPSAnSEg6bW0nO1xyXG5cclxuXHJcblxyXG4gICAgQE91dHB1dCgpXHJcbiAgICBwdWJsaWMgZGlzcGxheVRleHRDaGFuZ2U6IEV2ZW50RW1pdHRlcjxzdHJpbmc+ID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XHJcbiAgICBwcml2YXRlIF9kaXNwbGF5VGV4dDogc3RyaW5nID0gXCJcIjtcclxuXHJcbiAgICBASW5wdXQoKVxyXG4gICAgcHVibGljIGdldCBkaXNwbGF5VGV4dCgpOiBzdHJpbmcge1xyXG4gICAgICAgIHJldHVybiB0aGlzLl9kaXNwbGF5VGV4dDtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgc2V0IGRpc3BsYXlUZXh0KHY6IHN0cmluZykge1xyXG4gICAgICAgIHRoaXMuX2Rpc3BsYXlUZXh0ID0gdjtcclxuICAgICAgICB0aGlzLmRpc3BsYXlUZXh0Q2hhbmdlLmVtaXQodik7XHJcbiAgICB9XHJcblxyXG5cclxuICAgIGNvbnN0cnVjdG9yKFxyXG4gICAgICAgIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYsXHJcbiAgICAgICAgcHJpdmF0ZSBjZHI6IENoYW5nZURldGVjdG9yUmVmLFxyXG4gICAgICAgIHByaXZhdGUgX21hc2tTZXJ2aWNlOiBNYXNrQXBwbGllclNlcnZpY2VcclxuICAgICkge1xyXG4gICAgICAgIHN1cGVyKGVsZW1lbnRSZWYsIGNkcik7XHJcbiAgICB9XHJcblxyXG4gICAgX2hhbmRsZU9uS2V5ZG93bkV2ZW50KGU6IEtleWJvYXJkRXZlbnQpIHtcclxuICAgICAgICBjb25zdCBpZ25vcmUgPSAoKSA9PiB7XHJcbiAgICAgICAgICAgIGUucHJldmVudERlZmF1bHQoKTtcclxuICAgICAgICAgICAgZS5zdG9wUHJvcGFnYXRpb24oKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgY29uc3QgdG9EYXRlID0gKHZhbDogc3RyaW5nKSA9PiB7XHJcbiAgICAgICAgICAgIHJldHVybiBuZXcgRGF0ZSh2YWwpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBjb25zdCBudW1zOiBzdHJpbmdbXSA9IEFycmF5KDEwKS5maWxsKDApLm1hcCgodiwgaSkgPT4gaS50b1N0cmluZygpKTtcclxuICAgICAgICBjb25zdCBjaGFyczogc3RyaW5nW10gPSBbJzonLCAnQmFja3NwYWNlJywgJ0Fycm93RG93bicsICdBcnJvd1VwJywgJ0Fycm93UmlnaHQnLCAnQXJyb3dMZWZ0JywgJ1RhYicsICdFbnRlciddO1xyXG4gICAgICAgIGNvbnN0IGlucHV0ID0gKGUudGFyZ2V0IGFzIEhUTUxJbnB1dEVsZW1lbnQpO1xyXG4gICAgICAgIGNvbnN0IGtleSA9IChlLmtleSk7XHJcbiAgICAgICAgY29uc3QgdmFsU3RyID0gaW5wdXQudmFsdWU7XHJcbiAgICAgICAgY29uc3QgdmFsID0gdG9EYXRlKHZhbFN0cik7XHJcbiAgICAgICAgY29uc3Qgc2VsZWN0aW9uU3RhcnQgPSBpbnB1dC5zZWxlY3Rpb25TdGFydDtcclxuICAgICAgICBjb25zdCBzZWxlY3Rpb25FbmQgPSBpbnB1dC5zZWxlY3Rpb25FbmQ7XHJcbiAgICAgICAgLy9cclxuXHJcbiAgICAgICAgLy9cclxuICAgICAgICBpZiAoIVsuLi5udW1zLCAuLi5jaGFyc10uaW5jbHVkZXMoa2V5KSkge1xyXG4gICAgICAgICAgICBpZ25vcmUoKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKGUua2V5ID09PSAnQXJyb3dEb3duJyB8fCBlLmtleSA9PT0gJ0Fycm93VXAnKSB7XHJcbiAgICAgICAgICAgIC8vIGNvbnN0IHN0ZXBWYWwgPSBkZWNpbWFsUG9pbnRJbmRleCA+IC0xID8gKHNlbGVjdGlvblN0YXJ0ID49IGRlY2ltYWxQb2ludEluZGV4ID8gdGhpcy5kZWNpbWFsU3RlcCA6IHRoaXMuc3RlcCkgOiB0aGlzLnN0ZXA7XHJcbiAgICAgICAgICAgIC8vIGlmIChlLmtleSA9PT0gJ0Fycm93RG93bicpIHtcclxuICAgICAgICAgICAgLy8gICAgIHRoaXMudmFsdWUgPSB2YWwgLSBzdGVwVmFsO1xyXG4gICAgICAgICAgICAvLyB9XHJcbiAgICAgICAgICAgIC8vIGVsc2Uge1xyXG4gICAgICAgICAgICAvLyAgICAgdGhpcy52YWx1ZSA9IHZhbCArIHN0ZXBWYWw7XHJcbiAgICAgICAgICAgIC8vIH1cclxuICAgICAgICAgICAgaWdub3JlKCk7XHJcbiAgICAgICAgICAgIGlucHV0LnNldFNlbGVjdGlvblJhbmdlKHNlbGVjdGlvblN0YXJ0LCBzZWxlY3Rpb25TdGFydCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2UgaWYgKGUua2V5ID09ICdCYWNrc3BhY2UnKSB7XHJcblxyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNlIGlmIChudW1zLmluY2x1ZGVzKGtleSkpIHtcclxuXHJcbiAgICAgICAgfVxyXG4gICAgICAgIHN1cGVyLl9lbWl0T25LZXlkb3duRXZlbnQoZSk7XHJcbiAgICB9XHJcblxyXG4gICAgX29uVmFsdWVDaGFuZ2luZyh2YWx1ZTogRGF0ZSkge1xyXG4gICAgICAgIHJldHVybiB0aGlzLl9maXhWYWx1ZSh2YWx1ZSk7XHJcbiAgICB9XHJcblxyXG4gICAgX2ZpeFZhbHVlKHZhbHVlOiBEYXRlKTogRGF0ZSB7XHJcbiAgICAgICAgaWYgKCh2YWx1ZSA9PSBudWxsIHx8IHZhbHVlID09IHVuZGVmaW5lZCkpIHtcclxuICAgICAgICAgICAgcmV0dXJuIHRoaXMuYWxsb3dOdWxsID8gbnVsbCA6IHRoaXMubWluVmFsdWU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2UgaWYgKHZhbHVlID4gdGhpcy5tYXhWYWx1ZSkge1xyXG4gICAgICAgICAgICByZXR1cm4gdGhpcy5tYXhWYWx1ZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSBpZiAodmFsdWUgPCB0aGlzLm1pblZhbHVlKSB7XHJcbiAgICAgICAgICAgIHJldHVybiB0aGlzLm1pblZhbHVlO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gdmFsdWU7XHJcbiAgICB9XHJcblxyXG4gICAgX2Zvcm1hdCh2YWx1ZTogRGF0ZSk6IHN0cmluZyB7XHJcbiAgICAgICAgcmV0dXJuIG5ldyBBWERhdGVUaW1lKHZhbHVlKS5mb3JtYXQodGhpcy5mb3JtYXQpO1xyXG4gICAgfVxyXG5cclxuICAgIF9vblZhbHVlQ2hhbmdlZChvbGRWYWx1ZTogYW55LCBuZXdWYWx1ZTogYW55KTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5kaXNwbGF5VGV4dCA9IHRoaXMuX2Zvcm1hdChuZXdWYWx1ZSk7XHJcbiAgICB9XHJcblxyXG4gICAgX2hhbmRsZU9uQmx1ckV2ZW50KGU6IEZvY3VzRXZlbnQpIHtcclxuICAgICAgICBjb25zdCBpbnB1dCA9IChlLnRhcmdldCBhcyBIVE1MSW5wdXRFbGVtZW50KTtcclxuICAgICAgICB0aGlzLnZhbHVlID0gdGhpcy5fZml4VmFsdWUodGhpcy52YWx1ZSk7XHJcbiAgICAgICAgaW5wdXQudmFsdWUgPSB0aGlzLl9mb3JtYXQodGhpcy52YWx1ZSk7XHJcbiAgICAgICAgdGhpcy5fZW1pdE9uRm9jdXNFdmVudChlKTtcclxuICAgIH1cclxuXHJcbn1cclxuIiwiPG5nLWNvbnRlbnQgc2VsZWN0PVwiYXgtcHJlZml4XCI+XHJcbjwvbmctY29udGVudD5cclxuPGlucHV0IGNsYXNzPVwiYXgtaW5wdXRcIiB0eXBlPVwidGV4dFwiIFthdHRyLnBhdHRlcm5dPVwiJ1tcXGRcXC5dKidcIiBbYXR0ci5wbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlclwiXHJcbiAgICBbY2xhc3MuYXgtc3RhdGUtZGlzYWJsZWRdPVwiZGlzYWJsZWRcIiBbY2xhc3MuYXgtc3RhdGUtcmVhZG9ubHldPVwicmVhZG9ubHlcIiBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxyXG4gICAgW3JlYWRvbmx5XT1cInJlYWRvbmx5XCIgW3RhYmluZGV4XT1cInRhYkluZGV4XCIgW25nTW9kZWxdPVwiZGlzcGxheVRleHRcIiAoZm9jdXMpPVwiX2VtaXRPbkZvY3VzRXZlbnQoJGV2ZW50KVwiXHJcbiAgICAoYmx1cik9XCJfZW1pdE9uQmx1ckV2ZW50KCRldmVudClcIiAoa2V5ZG93bik9XCJfaGFuZGxlT25LZXlkb3duRXZlbnQoJGV2ZW50KVwiPlxyXG48YXgtYnV0dG9uIGNvbG9yPVwibGlnaHRcIiBsb29rPVwiYmxhbmtcIiAob25DbGljayk9XCJjbGVhcigpXCIgW3RhYkluZGV4XT1cIi0xXCJcclxuICAgICpuZ0lmPVwidmFsdWUgJiYgYWxsb3dOdWxsICYmICEoZGlzYWJsZWQgfHwgcmVhZG9ubHkpXCI+XHJcbiAgICA8aSBjbGFzcz1cImF4LWljb24teCBpY29uXCI+PC9pPlxyXG48L2F4LWJ1dHRvbj5cclxuPG5nLWNvbnRlbnQgc2VsZWN0PVwiYXgtc3VmZml4XCI+XHJcbjwvbmctY29udGVudD5cclxuPG5nLWNvbnRlbnQgc2VsZWN0PVwiYXgtdmFsaWRhdGlvbi1ydWxlXCI+XHJcbjwvbmctY29udGVudD4iXX0=
1
+ import { AXDateTime } from '@acorex/core';
2
+ import { Component, ViewEncapsulation, ChangeDetectionStrategy, EventEmitter, Output, Input, HostBinding } from '@angular/core';
3
+ import { AXBaseTextBoxMixin } from '../base';
4
+ import { TEXTBOX_INPUTS, TEXTBOX_OUTPUT } from '../base/mixin/textbox-mixin.class';
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "ngx-mask";
7
+ import * as i2 from "../button/button.component";
8
+ import * as i3 from "@angular/forms";
9
+ import * as i4 from "@angular/common";
10
+ export class AXTimeBoxComponent extends AXBaseTextBoxMixin {
11
+ constructor(elementRef, cdr, _maskService) {
12
+ super(elementRef, cdr);
13
+ this.cdr = cdr;
14
+ this._maskService = _maskService;
15
+ this.format = 'HH:mm';
16
+ this.displayTextChange = new EventEmitter();
17
+ this._displayText = "";
18
+ }
19
+ get hostClass() {
20
+ return `${this.cssClass} ax-${this.size}`;
21
+ }
22
+ get minValue() {
23
+ return this._minValue;
24
+ }
25
+ set minValue(v) {
26
+ this._minValue = v;
27
+ }
28
+ get maxValue() {
29
+ return this._maxValue;
30
+ }
31
+ set maxValue(v) {
32
+ this._maxValue = v;
33
+ }
34
+ get displayText() {
35
+ return this._displayText;
36
+ }
37
+ set displayText(v) {
38
+ this._displayText = v;
39
+ this.displayTextChange.emit(v);
40
+ }
41
+ _handleOnKeydownEvent(e) {
42
+ const ignore = () => {
43
+ e.preventDefault();
44
+ e.stopPropagation();
45
+ };
46
+ const toDate = (val) => {
47
+ return new Date(val);
48
+ };
49
+ const nums = Array(10).fill(0).map((v, i) => i.toString());
50
+ const chars = [':', 'Backspace', 'ArrowDown', 'ArrowUp', 'ArrowRight', 'ArrowLeft', 'Tab', 'Enter'];
51
+ const input = e.target;
52
+ const key = (e.key);
53
+ const valStr = input.value;
54
+ const val = toDate(valStr);
55
+ const selectionStart = input.selectionStart;
56
+ const selectionEnd = input.selectionEnd;
57
+ //
58
+ //
59
+ if (![...nums, ...chars].includes(key)) {
60
+ ignore();
61
+ }
62
+ if (e.key === 'ArrowDown' || e.key === 'ArrowUp') {
63
+ // const stepVal = decimalPointIndex > -1 ? (selectionStart >= decimalPointIndex ? this.decimalStep : this.step) : this.step;
64
+ // if (e.key === 'ArrowDown') {
65
+ // this.value = val - stepVal;
66
+ // }
67
+ // else {
68
+ // this.value = val + stepVal;
69
+ // }
70
+ ignore();
71
+ input.setSelectionRange(selectionStart, selectionStart);
72
+ }
73
+ else if (e.key == 'Backspace') {
74
+ }
75
+ else if (nums.includes(key)) {
76
+ }
77
+ super._emitOnKeydownEvent(e);
78
+ }
79
+ _onValueChanging(value) {
80
+ return this._fixValue(value);
81
+ }
82
+ _fixValue(value) {
83
+ if ((value == null || value == undefined)) {
84
+ return this.allowNull ? null : this.minValue;
85
+ }
86
+ else if (value > this.maxValue) {
87
+ return this.maxValue;
88
+ }
89
+ else if (value < this.minValue) {
90
+ return this.minValue;
91
+ }
92
+ return value;
93
+ }
94
+ _format(value) {
95
+ return new AXDateTime(value).format(this.format);
96
+ }
97
+ _onValueChanged(oldValue, newValue) {
98
+ this.displayText = this._format(newValue);
99
+ }
100
+ _handleOnBlurEvent(e) {
101
+ const input = e.target;
102
+ this.value = this._fixValue(this.value);
103
+ input.value = this._format(this.value);
104
+ this._emitOnFocusEvent(e);
105
+ }
106
+ }
107
+ AXTimeBoxComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: AXTimeBoxComponent, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i1.MaskApplierService }], target: i0.ɵɵFactoryTarget.Component });
108
+ AXTimeBoxComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.6", type: AXTimeBoxComponent, selector: "ax-time-box", inputs: { disabled: "disabled", readonly: "readonly", tabIndex: "tabIndex", size: "size", value: "value", placeholder: "placeholder", maxLength: "maxLength", allowNull: "allowNull", debounceTime: "debounceTime", name: "name", minValue: "minValue", maxValue: "maxValue", format: "format", displayText: "displayText" }, outputs: { valueChange: "valueChange", onValueChanged: "onValueChanged", onBlur: "onBlur", onFocus: "onFocus", displayTextChange: "displayTextChange" }, host: { properties: { "class": "this.hostClass" }, classAttribute: "ax-time-box ax-editor-container" }, usesInheritance: true, ngImport: i0, template: "<ng-content select=\"ax-prefix\">\n</ng-content>\n<input class=\"ax-input\" type=\"text\" [attr.pattern]=\"'[\\d\\.]*'\" [attr.placeholder]=\"placeholder\"\n [class.ax-state-disabled]=\"disabled\" [class.ax-state-readonly]=\"readonly\" [disabled]=\"disabled\"\n [readonly]=\"readonly\" [tabindex]=\"tabIndex\" [ngModel]=\"displayText\" (focus)=\"_emitOnFocusEvent($event)\"\n (blur)=\"_emitOnBlurEvent($event)\" (keydown)=\"_handleOnKeydownEvent($event)\">\n<ax-button color=\"light\" look=\"blank\" (onClick)=\"clear()\" [tabIndex]=\"-1\"\n *ngIf=\"value && allowNull && !(disabled || readonly)\">\n <i class=\"ax-icon-x icon\"></i>\n</ax-button>\n<ng-content select=\"ax-suffix\">\n</ng-content>\n<ng-content select=\"ax-validation-rule\">\n</ng-content>", components: [{ type: i2.AXButtonComponent, selector: "ax-button", inputs: ["disabled", "tabIndex", "size", "cssClass", "cssStyle", "text", "submitBehavior", "cancelBehavior", "color", "look", "toggleable", "selected"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange"] }], directives: [{ type: i3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i3.PatternValidator, selector: "[pattern][formControlName],[pattern][formControl],[pattern][ngModel]", inputs: ["pattern"] }, { type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
109
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: AXTimeBoxComponent, decorators: [{
110
+ type: Component,
111
+ args: [{
112
+ selector: 'ax-time-box',
113
+ templateUrl: './time-box.component.html',
114
+ inputs: ['disabled', 'readonly', 'tabIndex', 'size', 'value', ...TEXTBOX_INPUTS],
115
+ outputs: ['valueChange', 'onValueChanged', 'onBlur', 'onFocus', ...TEXTBOX_OUTPUT],
116
+ changeDetection: ChangeDetectionStrategy.OnPush,
117
+ encapsulation: ViewEncapsulation.None,
118
+ host: { class: 'ax-time-box ax-editor-container' },
119
+ }]
120
+ }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: i1.MaskApplierService }]; }, propDecorators: { hostClass: [{
121
+ type: HostBinding,
122
+ args: ['class']
123
+ }], minValue: [{
124
+ type: Input
125
+ }], maxValue: [{
126
+ type: Input
127
+ }], format: [{
128
+ type: Input
129
+ }], displayTextChange: [{
130
+ type: Output
131
+ }], displayText: [{
132
+ type: Input
133
+ }] } });
134
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGltZS1ib3guY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYWNvcmV4L2NvbXBvbmVudHMvc3JjL2xpYi90aW1lLWJveC90aW1lLWJveC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hY29yZXgvY29tcG9uZW50cy9zcmMvbGliL3RpbWUtYm94L3RpbWUtYm94LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDMUMsT0FBTyxFQUFFLFNBQVMsRUFBRSxpQkFBaUIsRUFBRSx1QkFBdUIsRUFBaUMsWUFBWSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsV0FBVyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRS9KLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUM3QyxPQUFPLEVBQUUsY0FBYyxFQUFFLGNBQWMsRUFBRSxNQUFNLG1DQUFtQyxDQUFDOzs7Ozs7QUFXbkYsTUFBTSxPQUFPLGtCQUFtQixTQUFRLGtCQUFrQjtJQStDdEQsWUFDSSxVQUFzQixFQUNkLEdBQXNCLEVBQ3RCLFlBQWdDO1FBRXhDLEtBQUssQ0FBQyxVQUFVLEVBQUUsR0FBRyxDQUFDLENBQUM7UUFIZixRQUFHLEdBQUgsR0FBRyxDQUFtQjtRQUN0QixpQkFBWSxHQUFaLFlBQVksQ0FBb0I7UUF0QjVDLFdBQU0sR0FBVyxPQUFPLENBQUM7UUFLbEIsc0JBQWlCLEdBQXlCLElBQUksWUFBWSxFQUFVLENBQUM7UUFDcEUsaUJBQVksR0FBVyxFQUFFLENBQUM7SUFtQmxDLENBQUM7SUFuREQsSUFDSSxTQUFTO1FBQ1gsT0FBTyxHQUFHLElBQUksQ0FBQyxRQUFRLE9BQU8sSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQzVDLENBQUM7SUFJRCxJQUNXLFFBQVE7UUFDZixP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QUFNLEVBQUUsQ0FBQyxVQUFVLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLEdBQUcsY0FBYyxDQUFDO29CQUNoRixPQUFPLEVBQUUsQ0FBQyxhQUFhLEVBQUUsZ0JBQWdCLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBRSxHQUFHLGNBQWMsQ0FBQztvQkFDbEYsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07b0JBQy9DLGFBQWEsRUFBRSxpQkFBaUIsQ0FBQyxJQUFJO29CQUNyQyxJQUFJLEVBQUUsRUFBRSxLQUFLLEVBQUUsaUNBQWlDLEVBQUU7aUJBQ3JEO2tLQUlPLFNBQVM7c0JBRFosV0FBVzt1QkFBQyxPQUFPO2dCQVFULFFBQVE7c0JBRGxCLEtBQUs7Z0JBVUssUUFBUTtzQkFEbEIsS0FBSztnQkFVTixNQUFNO3NCQURMLEtBQUs7Z0JBTUMsaUJBQWlCO3NCQUR2QixNQUFNO2dCQUtJLFdBQVc7c0JBRHJCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWERhdGVUaW1lIH0gZnJvbSAnQGFjb3JleC9jb3JlJztcbmltcG9ydCB7IENvbXBvbmVudCwgVmlld0VuY2Fwc3VsYXRpb24sIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBFbGVtZW50UmVmLCBDaGFuZ2VEZXRlY3RvclJlZiwgRXZlbnRFbWl0dGVyLCBPdXRwdXQsIElucHV0LCBIb3N0QmluZGluZyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTWFza0FwcGxpZXJTZXJ2aWNlIH0gZnJvbSAnbmd4LW1hc2snO1xuaW1wb3J0IHsgQVhCYXNlVGV4dEJveE1peGluIH0gZnJvbSAnLi4vYmFzZSc7XG5pbXBvcnQgeyBURVhUQk9YX0lOUFVUUywgVEVYVEJPWF9PVVRQVVQgfSBmcm9tICcuLi9iYXNlL21peGluL3RleHRib3gtbWl4aW4uY2xhc3MnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2F4LXRpbWUtYm94JyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vdGltZS1ib3guY29tcG9uZW50Lmh0bWwnLFxuICAgIGlucHV0czogWydkaXNhYmxlZCcsICdyZWFkb25seScsICd0YWJJbmRleCcsICdzaXplJywgJ3ZhbHVlJywgLi4uVEVYVEJPWF9JTlBVVFNdLFxuICAgIG91dHB1dHM6IFsndmFsdWVDaGFuZ2UnLCAnb25WYWx1ZUNoYW5nZWQnLCAnb25CbHVyJywgJ29uRm9jdXMnLCAuLi5URVhUQk9YX09VVFBVVF0sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgICBob3N0OiB7IGNsYXNzOiAnYXgtdGltZS1ib3ggYXgtZWRpdG9yLWNvbnRhaW5lcicgfSxcbn0pXG5leHBvcnQgY2xhc3MgQVhUaW1lQm94Q29tcG9uZW50IGV4dGVuZHMgQVhCYXNlVGV4dEJveE1peGluIHtcblxuICAgIEBIb3N0QmluZGluZygnY2xhc3MnKVxuICAgIGdldCBob3N0Q2xhc3MoKTogc3RyaW5nIHtcbiAgICAgIHJldHVybiBgJHt0aGlzLmNzc0NsYXNzfSBheC0ke3RoaXMuc2l6ZX1gO1xuICAgIH1cblxuXG4gICAgcHJpdmF0ZSBfbWluVmFsdWU6IERhdGU7XG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgZ2V0IG1pblZhbHVlKCk6IERhdGUge1xuICAgICAgICByZXR1cm4gdGhpcy5fbWluVmFsdWU7XG4gICAgfVxuICAgIHB1YmxpYyBzZXQgbWluVmFsdWUodjogRGF0ZSkge1xuICAgICAgICB0aGlzLl9taW5WYWx1ZSA9IHY7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBfbWF4VmFsdWU6IERhdGU7XG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgZ2V0IG1heFZhbHVlKCk6IERhdGUge1xuICAgICAgICByZXR1cm4gdGhpcy5fbWF4VmFsdWU7XG4gICAgfVxuICAgIHB1YmxpYyBzZXQgbWF4VmFsdWUodjogRGF0ZSkge1xuICAgICAgICB0aGlzLl9tYXhWYWx1ZSA9IHY7XG4gICAgfVxuXG5cbiAgICBASW5wdXQoKVxuICAgIGZvcm1hdDogc3RyaW5nID0gJ0hIOm1tJztcblxuXG5cbiAgICBAT3V0cHV0KClcbiAgICBwdWJsaWMgZGlzcGxheVRleHRDaGFuZ2U6IEV2ZW50RW1pdHRlcjxzdHJpbmc+ID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XG4gICAgcHJpdmF0ZSBfZGlzcGxheVRleHQ6IHN0cmluZyA9IFwiXCI7XG5cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBnZXQgZGlzcGxheVRleHQoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2Rpc3BsYXlUZXh0O1xuICAgIH1cblxuICAgIHB1YmxpYyBzZXQgZGlzcGxheVRleHQodjogc3RyaW5nKSB7XG4gICAgICAgIHRoaXMuX2Rpc3BsYXlUZXh0ID0gdjtcbiAgICAgICAgdGhpcy5kaXNwbGF5VGV4dENoYW5nZS5lbWl0KHYpO1xuICAgIH1cblxuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYsXG4gICAgICAgIHByaXZhdGUgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICAgICAgcHJpdmF0ZSBfbWFza1NlcnZpY2U6IE1hc2tBcHBsaWVyU2VydmljZVxuICAgICkge1xuICAgICAgICBzdXBlcihlbGVtZW50UmVmLCBjZHIpO1xuICAgIH1cblxuICAgIF9oYW5kbGVPbktleWRvd25FdmVudChlOiBLZXlib2FyZEV2ZW50KSB7XG4gICAgICAgIGNvbnN0IGlnbm9yZSA9ICgpID0+IHtcbiAgICAgICAgICAgIGUucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgICAgIGUuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgdG9EYXRlID0gKHZhbDogc3RyaW5nKSA9PiB7XG4gICAgICAgICAgICByZXR1cm4gbmV3IERhdGUodmFsKTtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBudW1zOiBzdHJpbmdbXSA9IEFycmF5KDEwKS5maWxsKDApLm1hcCgodiwgaSkgPT4gaS50b1N0cmluZygpKTtcbiAgICAgICAgY29uc3QgY2hhcnM6IHN0cmluZ1tdID0gWyc6JywgJ0JhY2tzcGFjZScsICdBcnJvd0Rvd24nLCAnQXJyb3dVcCcsICdBcnJvd1JpZ2h0JywgJ0Fycm93TGVmdCcsICdUYWInLCAnRW50ZXInXTtcbiAgICAgICAgY29uc3QgaW5wdXQgPSAoZS50YXJnZXQgYXMgSFRNTElucHV0RWxlbWVudCk7XG4gICAgICAgIGNvbnN0IGtleSA9IChlLmtleSk7XG4gICAgICAgIGNvbnN0IHZhbFN0ciA9IGlucHV0LnZhbHVlO1xuICAgICAgICBjb25zdCB2YWwgPSB0b0RhdGUodmFsU3RyKTtcbiAgICAgICAgY29uc3Qgc2VsZWN0aW9uU3RhcnQgPSBpbnB1dC5zZWxlY3Rpb25TdGFydDtcbiAgICAgICAgY29uc3Qgc2VsZWN0aW9uRW5kID0gaW5wdXQuc2VsZWN0aW9uRW5kO1xuICAgICAgICAvL1xuXG4gICAgICAgIC8vXG4gICAgICAgIGlmICghWy4uLm51bXMsIC4uLmNoYXJzXS5pbmNsdWRlcyhrZXkpKSB7XG4gICAgICAgICAgICBpZ25vcmUoKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoZS5rZXkgPT09ICdBcnJvd0Rvd24nIHx8IGUua2V5ID09PSAnQXJyb3dVcCcpIHtcbiAgICAgICAgICAgIC8vIGNvbnN0IHN0ZXBWYWwgPSBkZWNpbWFsUG9pbnRJbmRleCA+IC0xID8gKHNlbGVjdGlvblN0YXJ0ID49IGRlY2ltYWxQb2ludEluZGV4ID8gdGhpcy5kZWNpbWFsU3RlcCA6IHRoaXMuc3RlcCkgOiB0aGlzLnN0ZXA7XG4gICAgICAgICAgICAvLyBpZiAoZS5rZXkgPT09ICdBcnJvd0Rvd24nKSB7XG4gICAgICAgICAgICAvLyAgICAgdGhpcy52YWx1ZSA9IHZhbCAtIHN0ZXBWYWw7XG4gICAgICAgICAgICAvLyB9XG4gICAgICAgICAgICAvLyBlbHNlIHtcbiAgICAgICAgICAgIC8vICAgICB0aGlzLnZhbHVlID0gdmFsICsgc3RlcFZhbDtcbiAgICAgICAgICAgIC8vIH1cbiAgICAgICAgICAgIGlnbm9yZSgpO1xuICAgICAgICAgICAgaW5wdXQuc2V0U2VsZWN0aW9uUmFuZ2Uoc2VsZWN0aW9uU3RhcnQsIHNlbGVjdGlvblN0YXJ0KTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIGlmIChlLmtleSA9PSAnQmFja3NwYWNlJykge1xuXG4gICAgICAgIH1cbiAgICAgICAgZWxzZSBpZiAobnVtcy5pbmNsdWRlcyhrZXkpKSB7XG5cbiAgICAgICAgfVxuICAgICAgICBzdXBlci5fZW1pdE9uS2V5ZG93bkV2ZW50KGUpO1xuICAgIH1cblxuICAgIF9vblZhbHVlQ2hhbmdpbmcodmFsdWU6IERhdGUpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2ZpeFZhbHVlKHZhbHVlKTtcbiAgICB9XG5cbiAgICBfZml4VmFsdWUodmFsdWU6IERhdGUpOiBEYXRlIHtcbiAgICAgICAgaWYgKCh2YWx1ZSA9PSBudWxsIHx8IHZhbHVlID09IHVuZGVmaW5lZCkpIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLmFsbG93TnVsbCA/IG51bGwgOiB0aGlzLm1pblZhbHVlO1xuICAgICAgICB9XG4gICAgICAgIGVsc2UgaWYgKHZhbHVlID4gdGhpcy5tYXhWYWx1ZSkge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMubWF4VmFsdWU7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSBpZiAodmFsdWUgPCB0aGlzLm1pblZhbHVlKSB7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5taW5WYWx1ZTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdmFsdWU7XG4gICAgfVxuXG4gICAgX2Zvcm1hdCh2YWx1ZTogRGF0ZSk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBuZXcgQVhEYXRlVGltZSh2YWx1ZSkuZm9ybWF0KHRoaXMuZm9ybWF0KTtcbiAgICB9XG5cbiAgICBfb25WYWx1ZUNoYW5nZWQob2xkVmFsdWU6IGFueSwgbmV3VmFsdWU6IGFueSk6IHZvaWQge1xuICAgICAgICB0aGlzLmRpc3BsYXlUZXh0ID0gdGhpcy5fZm9ybWF0KG5ld1ZhbHVlKTtcbiAgICB9XG5cbiAgICBfaGFuZGxlT25CbHVyRXZlbnQoZTogRm9jdXNFdmVudCkge1xuICAgICAgICBjb25zdCBpbnB1dCA9IChlLnRhcmdldCBhcyBIVE1MSW5wdXRFbGVtZW50KTtcbiAgICAgICAgdGhpcy52YWx1ZSA9IHRoaXMuX2ZpeFZhbHVlKHRoaXMudmFsdWUpO1xuICAgICAgICBpbnB1dC52YWx1ZSA9IHRoaXMuX2Zvcm1hdCh0aGlzLnZhbHVlKTtcbiAgICAgICAgdGhpcy5fZW1pdE9uRm9jdXNFdmVudChlKTtcbiAgICB9XG5cbn1cbiIsIjxuZy1jb250ZW50IHNlbGVjdD1cImF4LXByZWZpeFwiPlxuPC9uZy1jb250ZW50PlxuPGlucHV0IGNsYXNzPVwiYXgtaW5wdXRcIiB0eXBlPVwidGV4dFwiIFthdHRyLnBhdHRlcm5dPVwiJ1tcXGRcXC5dKidcIiBbYXR0ci5wbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlclwiXG4gICAgW2NsYXNzLmF4LXN0YXRlLWRpc2FibGVkXT1cImRpc2FibGVkXCIgW2NsYXNzLmF4LXN0YXRlLXJlYWRvbmx5XT1cInJlYWRvbmx5XCIgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICBbcmVhZG9ubHldPVwicmVhZG9ubHlcIiBbdGFiaW5kZXhdPVwidGFiSW5kZXhcIiBbbmdNb2RlbF09XCJkaXNwbGF5VGV4dFwiIChmb2N1cyk9XCJfZW1pdE9uRm9jdXNFdmVudCgkZXZlbnQpXCJcbiAgICAoYmx1cik9XCJfZW1pdE9uQmx1ckV2ZW50KCRldmVudClcIiAoa2V5ZG93bik9XCJfaGFuZGxlT25LZXlkb3duRXZlbnQoJGV2ZW50KVwiPlxuPGF4LWJ1dHRvbiBjb2xvcj1cImxpZ2h0XCIgbG9vaz1cImJsYW5rXCIgKG9uQ2xpY2spPVwiY2xlYXIoKVwiIFt0YWJJbmRleF09XCItMVwiXG4gICAgKm5nSWY9XCJ2YWx1ZSAmJiBhbGxvd051bGwgJiYgIShkaXNhYmxlZCB8fCByZWFkb25seSlcIj5cbiAgICA8aSBjbGFzcz1cImF4LWljb24teCBpY29uXCI+PC9pPlxuPC9heC1idXR0b24+XG48bmctY29udGVudCBzZWxlY3Q9XCJheC1zdWZmaXhcIj5cbjwvbmctY29udGVudD5cbjxuZy1jb250ZW50IHNlbGVjdD1cImF4LXZhbGlkYXRpb24tcnVsZVwiPlxuPC9uZy1jb250ZW50PiJdfQ==