@acorex/components 7.2.8 → 7.3.2

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 (464) hide show
  1. package/action-sheet/index.d.ts +1 -1
  2. package/action-sheet/lib/action-sheet.class.d.ts +31 -0
  3. package/action-sheet/lib/action-sheet.component.d.ts +12 -13
  4. package/action-sheet/lib/action-sheet.module.d.ts +2 -1
  5. package/action-sheet/lib/action-sheet.service.d.ts +4 -8
  6. package/alert/lib/alert.component.d.ts +10 -10
  7. package/button/lib/button-group.component.d.ts +6 -6
  8. package/button/lib/button-item.class.d.ts +6 -2
  9. package/button/lib/button-item.component.d.ts +6 -6
  10. package/button/lib/button.component.d.ts +5 -3
  11. package/calendar/lib/calendar.component.d.ts +1 -1
  12. package/check-box/README.md +3 -0
  13. package/check-box/index.d.ts +2 -0
  14. package/check-box/lib/check-box.component.d.ts +14 -0
  15. package/{checkbox/lib/checkbox.module.d.ts → check-box/lib/check-box.module.d.ts} +1 -1
  16. package/color-palette/lib/color-palette-input.component.d.ts +1 -1
  17. package/color-palette/lib/color-palette.module.d.ts +1 -1
  18. package/color-picker/lib/color-picker.component.d.ts +17 -24
  19. package/color-picker/lib/color-picker.module.d.ts +1 -1
  20. package/common/index.d.ts +3 -3
  21. package/common/lib/classes/components.class.d.ts +12 -3
  22. package/common/lib/classes/datalist.class.d.ts +11 -0
  23. package/common/lib/common.module.d.ts +3 -4
  24. package/common/lib/components/base-component.class.d.ts +9 -3
  25. package/common/lib/components/input-base-value-component.class.d.ts +1 -0
  26. package/common/lib/components/value-component.class.d.ts +9 -2
  27. package/common/lib/directives/auto-focus.directive.d.ts +6 -5
  28. package/common/lib/directives/delayed-value-changed.directive.d.ts +17 -0
  29. package/common/lib/services/dom.service.d.ts +6 -0
  30. package/data-pager/lib/data-pager-base.component.d.ts +18 -13
  31. package/data-pager/lib/data-pager-info.component.d.ts +3 -9
  32. package/data-pager/lib/data-pager-input-selector.component.d.ts +5 -9
  33. package/data-pager/lib/data-pager-next-buttons.components.d.ts +2 -8
  34. package/data-pager/lib/data-pager-numeric-selector.component.d.ts +2 -7
  35. package/data-pager/lib/data-pager-pagesize-dropdown.component.d.ts +2 -6
  36. package/data-pager/lib/data-pager-prev-buttons.component.d.ts +2 -7
  37. package/data-pager/lib/data-pager.component.d.ts +17 -18
  38. package/data-pager/lib/data-pager.module.d.ts +6 -5
  39. package/data-table/index.d.ts +0 -1
  40. package/data-table/lib/data-column.directive.d.ts +3 -8
  41. package/data-table/lib/data-table.component.d.ts +6 -7
  42. package/data-table/lib/data-table.module.d.ts +6 -7
  43. package/date-picker/lib/datepicker.component.d.ts +7 -6
  44. package/date-picker/lib/datepicker.module.d.ts +1 -1
  45. package/decorators/index.d.ts +2 -12
  46. package/decorators/lib/clear-button.component.d.ts +13 -0
  47. package/decorators/lib/close-button.component.d.ts +5 -8
  48. package/decorators/lib/decorators.module.d.ts +6 -15
  49. package/decorators/lib/generic-content.component.d.ts +6 -0
  50. package/decorators/lib/icon.component.d.ts +2 -4
  51. package/dialog/lib/dialog.class.d.ts +11 -3
  52. package/dialog/lib/dialog.component.d.ts +15 -11
  53. package/dialog/lib/dialog.module.d.ts +4 -3
  54. package/dialog/lib/dialog.service.d.ts +4 -12
  55. package/drawer/lib/drawer-container.component.d.ts +2 -5
  56. package/drawer/lib/drawer.component.d.ts +6 -7
  57. package/esm2022/action-sheet/index.mjs +2 -2
  58. package/esm2022/action-sheet/lib/action-sheet.class.mjs +2 -0
  59. package/esm2022/action-sheet/lib/action-sheet.component.mjs +50 -38
  60. package/esm2022/action-sheet/lib/action-sheet.module.mjs +11 -7
  61. package/esm2022/action-sheet/lib/action-sheet.service.mjs +32 -72
  62. package/esm2022/alert/lib/alert.component.mjs +14 -16
  63. package/esm2022/alert/lib/alert.module.mjs +7 -7
  64. package/esm2022/avatar/lib/avatar-group.component.mjs +3 -3
  65. package/esm2022/avatar/lib/avatar.component.mjs +3 -3
  66. package/esm2022/avatar/lib/avatar.module.mjs +4 -4
  67. package/esm2022/badge/lib/badge.component.mjs +6 -6
  68. package/esm2022/badge/lib/badge.module.mjs +4 -4
  69. package/esm2022/breadcrumbs/lib/breadcrumbs-item.component.mjs +3 -3
  70. package/esm2022/breadcrumbs/lib/breadcrumbs.component.mjs +3 -3
  71. package/esm2022/breadcrumbs/lib/breadcrumbs.module.mjs +4 -4
  72. package/esm2022/button/lib/button-group.component.mjs +3 -3
  73. package/esm2022/button/lib/button-item.class.mjs +1 -1
  74. package/esm2022/button/lib/button-item.component.mjs +3 -3
  75. package/esm2022/button/lib/button.component.mjs +35 -17
  76. package/esm2022/button/lib/button.module.mjs +4 -4
  77. package/esm2022/calendar/lib/calendar-range.component.mjs +5 -5
  78. package/esm2022/calendar/lib/calendar.class.mjs +3 -3
  79. package/esm2022/calendar/lib/calendar.component.mjs +7 -5
  80. package/esm2022/calendar/lib/calendar.module.mjs +4 -4
  81. package/esm2022/check-box/acorex-components-check-box.mjs +5 -0
  82. package/esm2022/check-box/index.mjs +3 -0
  83. package/esm2022/check-box/lib/check-box.component.mjs +76 -0
  84. package/esm2022/check-box/lib/check-box.module.mjs +21 -0
  85. package/esm2022/chips/lib/chips.component.mjs +3 -3
  86. package/esm2022/chips/lib/chips.module.mjs +4 -4
  87. package/esm2022/collapse/lib/collapse-group.component.mjs +3 -3
  88. package/esm2022/collapse/lib/collapse.component.mjs +3 -3
  89. package/esm2022/collapse/lib/collapse.module.mjs +4 -4
  90. package/esm2022/color-palette/lib/color-palette-input.component.mjs +18 -12
  91. package/esm2022/color-palette/lib/color-palette-picker.component.mjs +3 -3
  92. package/esm2022/color-palette/lib/color-palette-preview.component.mjs +3 -3
  93. package/esm2022/color-palette/lib/color-palette-swatches.component.mjs +3 -3
  94. package/esm2022/color-palette/lib/color-palette.class.mjs +6 -6
  95. package/esm2022/color-palette/lib/color-palette.component.mjs +5 -5
  96. package/esm2022/color-palette/lib/color-palette.module.mjs +6 -6
  97. package/esm2022/color-picker/lib/color-picker.component.mjs +12 -6
  98. package/esm2022/color-picker/lib/color-picker.module.mjs +6 -6
  99. package/esm2022/common/index.mjs +4 -4
  100. package/esm2022/common/lib/classes/components.class.mjs +26 -19
  101. package/esm2022/common/lib/classes/datalist.class.mjs +3 -0
  102. package/esm2022/common/lib/common.module.mjs +5 -10
  103. package/esm2022/common/lib/components/base-component.class.mjs +21 -11
  104. package/esm2022/common/lib/components/input-base-value-component.class.mjs +4 -4
  105. package/esm2022/common/lib/components/value-component.class.mjs +18 -10
  106. package/esm2022/common/lib/directives/auto-focus.directive.mjs +18 -11
  107. package/esm2022/common/lib/directives/delayed-value-changed.directive.mjs +49 -0
  108. package/esm2022/common/lib/directives/hotkey.directive.mjs +3 -3
  109. package/esm2022/common/lib/directives/infinite-scroll.directive.mjs +3 -3
  110. package/esm2022/common/lib/directives/responsive.directive.mjs +3 -3
  111. package/esm2022/common/lib/services/dom.service.mjs +16 -0
  112. package/esm2022/common/lib/services/hotkey.service.mjs +3 -3
  113. package/esm2022/context-menu/lib/context-menu.component.mjs +5 -5
  114. package/esm2022/context-menu/lib/context-menu.module.mjs +4 -4
  115. package/esm2022/data-pager/lib/data-pager-base.component.mjs +35 -21
  116. package/esm2022/data-pager/lib/data-pager-info.component.mjs +13 -26
  117. package/esm2022/data-pager/lib/data-pager-input-selector.component.mjs +27 -31
  118. package/esm2022/data-pager/lib/data-pager-next-buttons.components.mjs +19 -33
  119. package/esm2022/data-pager/lib/data-pager-numeric-selector.component.mjs +31 -38
  120. package/esm2022/data-pager/lib/data-pager-pagesize-dropdown.component.mjs +22 -31
  121. package/esm2022/data-pager/lib/data-pager-prev-buttons.component.mjs +19 -29
  122. package/esm2022/data-pager/lib/data-pager.component.mjs +66 -38
  123. package/esm2022/data-pager/lib/data-pager.module.mjs +8 -7
  124. package/esm2022/data-table/index.mjs +1 -2
  125. package/esm2022/data-table/lib/data-column.directive.mjs +7 -22
  126. package/esm2022/data-table/lib/data-table.component.mjs +30 -30
  127. package/esm2022/data-table/lib/data-table.module.mjs +6 -7
  128. package/esm2022/date-picker/lib/datepicker.component.mjs +19 -16
  129. package/esm2022/date-picker/lib/datepicker.module.mjs +6 -6
  130. package/esm2022/decorators/index.mjs +3 -13
  131. package/esm2022/decorators/lib/clear-button.component.mjs +58 -0
  132. package/esm2022/decorators/lib/close-button.component.mjs +16 -20
  133. package/esm2022/decorators/lib/decorators.module.mjs +13 -49
  134. package/esm2022/decorators/lib/generic-content.component.mjs +17 -0
  135. package/esm2022/decorators/lib/icon.component.mjs +8 -11
  136. package/esm2022/dialog/lib/dialog.class.mjs +1 -1
  137. package/esm2022/dialog/lib/dialog.component.mjs +41 -23
  138. package/esm2022/dialog/lib/dialog.module.mjs +10 -8
  139. package/esm2022/dialog/lib/dialog.service.mjs +41 -49
  140. package/esm2022/drawer/lib/drawer-container.component.mjs +9 -13
  141. package/esm2022/drawer/lib/drawer.component.mjs +22 -27
  142. package/esm2022/drawer/lib/drawer.module.mjs +4 -4
  143. package/esm2022/dropdown/lib/dropdown-panel.component.mjs +5 -5
  144. package/esm2022/dropdown/lib/dropdown.module.mjs +4 -4
  145. package/esm2022/form/lib/form-field.component.mjs +9 -12
  146. package/esm2022/form/lib/form.component.mjs +38 -42
  147. package/esm2022/form/lib/form.module.mjs +4 -4
  148. package/esm2022/form/lib/validation-rule.widget.mjs +24 -15
  149. package/esm2022/form/lib/validation-summary.component.mjs +15 -14
  150. package/esm2022/image/lib/image.component.mjs +13 -17
  151. package/esm2022/image/lib/image.module.mjs +4 -4
  152. package/esm2022/label/lib/label.component.mjs +18 -18
  153. package/esm2022/label/lib/label.module.mjs +4 -4
  154. package/esm2022/loading/index.mjs +2 -1
  155. package/esm2022/loading/lib/loading-spinner.component.mjs +4 -5
  156. package/esm2022/loading/lib/loading.component.mjs +22 -25
  157. package/esm2022/loading/lib/loading.config.mjs +17 -0
  158. package/esm2022/loading/lib/loading.directive.mjs +20 -51
  159. package/esm2022/loading/lib/loading.module.mjs +7 -18
  160. package/esm2022/loading/lib/loading.service.mjs +36 -60
  161. package/esm2022/menu/lib/menu.component.mjs +26 -19
  162. package/esm2022/menu/lib/menu.module.mjs +4 -4
  163. package/esm2022/mixin/index.mjs +1 -2
  164. package/esm2022/mixin/lib/base-components.class.mjs +3 -3
  165. package/esm2022/mixin/lib/color-look-mixing.class.mjs +1 -1
  166. package/esm2022/notification/index.mjs +2 -1
  167. package/esm2022/notification/lib/notification.class.mjs +1 -1
  168. package/esm2022/notification/lib/notification.component.mjs +51 -35
  169. package/esm2022/notification/lib/notification.config.mjs +20 -0
  170. package/esm2022/notification/lib/notification.module.mjs +11 -7
  171. package/esm2022/notification/lib/notification.service.mjs +46 -59
  172. package/esm2022/number-box/lib/number-box.component.mjs +101 -90
  173. package/esm2022/number-box/lib/number-box.module.mjs +4 -4
  174. package/esm2022/otp/lib/otp.component.mjs +38 -48
  175. package/esm2022/otp/lib/otp.module.mjs +4 -4
  176. package/esm2022/page/lib/base-page.class.mjs +22 -23
  177. package/esm2022/page/lib/page.component.mjs +13 -13
  178. package/esm2022/page/lib/page.module.mjs +4 -4
  179. package/esm2022/password-box/lib/password-box.component.mjs +37 -25
  180. package/esm2022/password-box/lib/password-box.module.mjs +4 -4
  181. package/esm2022/popover/lib/dropdown-component.class.mjs +3 -3
  182. package/esm2022/popover/lib/popover.component.mjs +62 -23
  183. package/esm2022/popover/lib/popover.module.mjs +4 -4
  184. package/esm2022/popup/index.mjs +2 -1
  185. package/esm2022/popup/lib/popup.component.mjs +49 -69
  186. package/esm2022/popup/lib/popup.interface.mjs +2 -0
  187. package/esm2022/popup/lib/popup.module.mjs +27 -12
  188. package/esm2022/popup/lib/popup.service.mjs +31 -86
  189. package/esm2022/progress-bar/lib/progress-bar.component.mjs +9 -13
  190. package/esm2022/progress-bar/lib/progress-bar.module.mjs +4 -4
  191. package/esm2022/radio/lib/radio.component.mjs +4 -4
  192. package/esm2022/radio/lib/radio.module.mjs +4 -4
  193. package/esm2022/range-slider/lib/range-slider.component.mjs +3 -3
  194. package/esm2022/range-slider/lib/range-slider.module.mjs +4 -4
  195. package/esm2022/result/lib/result.component.mjs +3 -3
  196. package/esm2022/result/lib/result.module.mjs +4 -4
  197. package/esm2022/scheduler/acorex-components-scheduler.mjs +5 -0
  198. package/esm2022/scheduler/index.mjs +4 -0
  199. package/esm2022/scheduler/lib/scheduler-month-view.component.mjs +45 -0
  200. package/esm2022/scheduler/lib/scheduler.component.mjs +30 -0
  201. package/esm2022/scheduler/lib/scheduler.module.mjs +26 -0
  202. package/esm2022/search-box/lib/search-box.component.mjs +35 -44
  203. package/esm2022/search-box/lib/search-box.module.mjs +28 -7
  204. package/esm2022/select-box/lib/select-box.component.mjs +11 -9
  205. package/esm2022/select-box/lib/select-box.module.mjs +7 -7
  206. package/esm2022/selection-list/lib/selection-list.component.mjs +3 -3
  207. package/esm2022/selection-list/lib/selection-list.module.mjs +6 -6
  208. package/esm2022/switch/lib/switch-content.component.mjs +3 -3
  209. package/esm2022/switch/lib/switch.component.mjs +4 -4
  210. package/esm2022/switch/lib/switch.module.mjs +4 -4
  211. package/esm2022/tabs/lib/tab-content.directive.mjs +3 -3
  212. package/esm2022/tabs/lib/tab-item.component.mjs +3 -3
  213. package/esm2022/tabs/lib/tabs.component.mjs +3 -3
  214. package/esm2022/tabs/lib/tabs.module.mjs +4 -4
  215. package/esm2022/tag/lib/tag.component.mjs +3 -3
  216. package/esm2022/tag/lib/tag.module.mjs +4 -4
  217. package/esm2022/text-area/acorex-components-text-area.mjs +5 -0
  218. package/esm2022/text-area/index.mjs +3 -0
  219. package/esm2022/text-area/lib/text-area.component.mjs +36 -0
  220. package/esm2022/text-area/lib/text-area.module.mjs +19 -0
  221. package/esm2022/{checkbox/acorex-components-checkbox.mjs → text-box/acorex-components-text-box.mjs} +1 -1
  222. package/esm2022/text-box/index.mjs +4 -0
  223. package/esm2022/text-box/lib/mask-options.directive.mjs +17 -0
  224. package/esm2022/text-box/lib/text-box.component.mjs +111 -0
  225. package/esm2022/text-box/lib/text-box.module.mjs +38 -0
  226. package/esm2022/time-box/lib/time-box.component.mjs +5 -5
  227. package/esm2022/time-box/lib/time-box.module.mjs +4 -4
  228. package/esm2022/toast/index.mjs +2 -1
  229. package/esm2022/toast/lib/toast.class.mjs +1 -1
  230. package/esm2022/toast/lib/toast.component.mjs +37 -25
  231. package/esm2022/toast/lib/toast.config.mjs +25 -0
  232. package/esm2022/toast/lib/toast.module.mjs +16 -8
  233. package/esm2022/toast/lib/toast.service.mjs +46 -55
  234. package/esm2022/tooltip/lib/tooltip.component.mjs +3 -3
  235. package/esm2022/tooltip/lib/tooltip.directive.mjs +3 -3
  236. package/esm2022/tooltip/lib/tooltip.module.mjs +4 -4
  237. package/esm2022/uploader/lib/uploader.component.mjs +3 -3
  238. package/esm2022/uploader/lib/uploader.module.mjs +4 -4
  239. package/fesm2022/acorex-components-action-sheet.mjs +99 -125
  240. package/fesm2022/acorex-components-action-sheet.mjs.map +1 -1
  241. package/fesm2022/acorex-components-alert.mjs +16 -18
  242. package/fesm2022/acorex-components-alert.mjs.map +1 -1
  243. package/fesm2022/acorex-components-avatar.mjs +10 -10
  244. package/fesm2022/acorex-components-badge.mjs +8 -8
  245. package/fesm2022/acorex-components-badge.mjs.map +1 -1
  246. package/fesm2022/acorex-components-breadcrumbs.mjs +10 -10
  247. package/fesm2022/acorex-components-button.mjs +42 -24
  248. package/fesm2022/acorex-components-button.mjs.map +1 -1
  249. package/fesm2022/acorex-components-calendar.mjs +17 -15
  250. package/fesm2022/acorex-components-calendar.mjs.map +1 -1
  251. package/fesm2022/acorex-components-check-box.mjs +100 -0
  252. package/fesm2022/acorex-components-check-box.mjs.map +1 -0
  253. package/fesm2022/acorex-components-chips.mjs +7 -7
  254. package/fesm2022/acorex-components-collapse.mjs +10 -10
  255. package/fesm2022/acorex-components-color-palette.mjs +42 -36
  256. package/fesm2022/acorex-components-color-palette.mjs.map +1 -1
  257. package/fesm2022/acorex-components-color-picker.mjs +16 -10
  258. package/fesm2022/acorex-components-color-picker.mjs.map +1 -1
  259. package/fesm2022/acorex-components-common.mjs +155 -261
  260. package/fesm2022/acorex-components-common.mjs.map +1 -1
  261. package/fesm2022/acorex-components-context-menu.mjs +8 -8
  262. package/fesm2022/acorex-components-context-menu.mjs.map +1 -1
  263. package/fesm2022/acorex-components-data-pager.mjs +214 -228
  264. package/fesm2022/acorex-components-data-pager.mjs.map +1 -1
  265. package/fesm2022/acorex-components-data-table.mjs +41 -71
  266. package/fesm2022/acorex-components-data-table.mjs.map +1 -1
  267. package/fesm2022/acorex-components-date-picker.mjs +25 -22
  268. package/fesm2022/acorex-components-date-picker.mjs.map +1 -1
  269. package/fesm2022/acorex-components-decorators.mjs +80 -283
  270. package/fesm2022/acorex-components-decorators.mjs.map +1 -1
  271. package/fesm2022/acorex-components-dialog.mjs +97 -88
  272. package/fesm2022/acorex-components-dialog.mjs.map +1 -1
  273. package/fesm2022/acorex-components-drawer.mjs +30 -39
  274. package/fesm2022/acorex-components-drawer.mjs.map +1 -1
  275. package/fesm2022/acorex-components-dropdown.mjs +8 -8
  276. package/fesm2022/acorex-components-dropdown.mjs.map +1 -1
  277. package/fesm2022/acorex-components-form.mjs +80 -77
  278. package/fesm2022/acorex-components-form.mjs.map +1 -1
  279. package/fesm2022/acorex-components-image.mjs +15 -19
  280. package/fesm2022/acorex-components-image.mjs.map +1 -1
  281. package/fesm2022/acorex-components-label.mjs +21 -21
  282. package/fesm2022/acorex-components-label.mjs.map +1 -1
  283. package/fesm2022/acorex-components-loading.mjs +123 -178
  284. package/fesm2022/acorex-components-loading.mjs.map +1 -1
  285. package/fesm2022/acorex-components-menu.mjs +29 -22
  286. package/fesm2022/acorex-components-menu.mjs.map +1 -1
  287. package/fesm2022/acorex-components-mixin.mjs +4 -22
  288. package/fesm2022/acorex-components-mixin.mjs.map +1 -1
  289. package/fesm2022/acorex-components-notification.mjs +131 -107
  290. package/fesm2022/acorex-components-notification.mjs.map +1 -1
  291. package/fesm2022/acorex-components-number-box.mjs +106 -96
  292. package/fesm2022/acorex-components-number-box.mjs.map +1 -1
  293. package/fesm2022/acorex-components-otp.mjs +40 -50
  294. package/fesm2022/acorex-components-otp.mjs.map +1 -1
  295. package/fesm2022/acorex-components-page.mjs +55 -56
  296. package/fesm2022/acorex-components-page.mjs.map +1 -1
  297. package/fesm2022/acorex-components-password-box.mjs +41 -30
  298. package/fesm2022/acorex-components-password-box.mjs.map +1 -1
  299. package/fesm2022/acorex-components-popover.mjs +68 -29
  300. package/fesm2022/acorex-components-popover.mjs.map +1 -1
  301. package/fesm2022/acorex-components-popup.mjs +107 -170
  302. package/fesm2022/acorex-components-popup.mjs.map +1 -1
  303. package/fesm2022/acorex-components-progress-bar.mjs +12 -16
  304. package/fesm2022/acorex-components-progress-bar.mjs.map +1 -1
  305. package/fesm2022/acorex-components-radio.mjs +8 -8
  306. package/fesm2022/acorex-components-radio.mjs.map +1 -1
  307. package/fesm2022/acorex-components-range-slider.mjs +7 -7
  308. package/fesm2022/acorex-components-result.mjs +7 -7
  309. package/fesm2022/acorex-components-scheduler.mjs +98 -0
  310. package/fesm2022/acorex-components-scheduler.mjs.map +1 -0
  311. package/fesm2022/acorex-components-search-box.mjs +61 -49
  312. package/fesm2022/acorex-components-search-box.mjs.map +1 -1
  313. package/fesm2022/acorex-components-select-box.mjs +16 -14
  314. package/fesm2022/acorex-components-select-box.mjs.map +1 -1
  315. package/fesm2022/acorex-components-selection-list.mjs +8 -8
  316. package/fesm2022/acorex-components-selection-list.mjs.map +1 -1
  317. package/fesm2022/acorex-components-switch.mjs +11 -11
  318. package/fesm2022/acorex-components-tabs.mjs +13 -13
  319. package/fesm2022/acorex-components-tag.mjs +7 -7
  320. package/fesm2022/acorex-components-text-area.mjs +59 -0
  321. package/fesm2022/acorex-components-text-area.mjs.map +1 -0
  322. package/fesm2022/{acorex-components-textbox.mjs → acorex-components-text-box.mjs} +20 -20
  323. package/fesm2022/acorex-components-text-box.mjs.map +1 -0
  324. package/fesm2022/acorex-components-time-box.mjs +8 -8
  325. package/fesm2022/acorex-components-time-box.mjs.map +1 -1
  326. package/fesm2022/acorex-components-toast.mjs +126 -94
  327. package/fesm2022/acorex-components-toast.mjs.map +1 -1
  328. package/fesm2022/acorex-components-tooltip.mjs +10 -10
  329. package/fesm2022/acorex-components-uploader.mjs +7 -7
  330. package/form/lib/form-field.component.d.ts +2 -4
  331. package/form/lib/form.component.d.ts +12 -17
  332. package/form/lib/validation-rule.widget.d.ts +9 -6
  333. package/form/lib/validation-summary.component.d.ts +7 -9
  334. package/image/lib/image.component.d.ts +7 -13
  335. package/label/lib/label.component.d.ts +4 -7
  336. package/loading/index.d.ts +1 -0
  337. package/loading/lib/loading.component.d.ts +9 -12
  338. package/loading/lib/loading.config.d.ts +8 -0
  339. package/loading/lib/loading.directive.d.ts +10 -17
  340. package/loading/lib/loading.module.d.ts +1 -2
  341. package/loading/lib/loading.service.d.ts +10 -33
  342. package/menu/lib/menu.component.d.ts +4 -2
  343. package/mixin/index.d.ts +0 -1
  344. package/mixin/lib/base-components.class.d.ts +2 -2
  345. package/mixin/lib/base-menu-mixin.class.d.ts +5 -5
  346. package/mixin/lib/button-mixin.class.d.ts +2 -2
  347. package/mixin/lib/clickable-mixin.class.d.ts +2 -2
  348. package/mixin/lib/color-look-mixing.class.d.ts +3 -3
  349. package/mixin/lib/datalist-component.class.d.ts +10 -10
  350. package/mixin/lib/dropdown-mixin.class.d.ts +2 -2
  351. package/mixin/lib/interactive-mixin.class.d.ts +4 -4
  352. package/mixin/lib/mixin.class.d.ts +61 -61
  353. package/mixin/lib/page-component.class.d.ts +2 -2
  354. package/mixin/lib/selection-component.class.d.ts +2 -2
  355. package/mixin/lib/sizable-mixin.class.d.ts +2 -2
  356. package/mixin/lib/textbox-mixin.class.d.ts +2 -2
  357. package/mixin/lib/value-mixin.class.d.ts +8 -8
  358. package/notification/index.d.ts +1 -0
  359. package/notification/lib/notification.class.d.ts +29 -7
  360. package/notification/lib/notification.component.d.ts +13 -14
  361. package/notification/lib/notification.config.d.ts +13 -0
  362. package/notification/lib/notification.module.d.ts +4 -1
  363. package/notification/lib/notification.service.d.ts +5 -9
  364. package/number-box/lib/number-box.component.d.ts +12 -17
  365. package/otp/lib/otp.component.d.ts +7 -14
  366. package/package.json +41 -38
  367. package/page/lib/base-page.class.d.ts +8 -12
  368. package/page/lib/page.component.d.ts +4 -4
  369. package/password-box/lib/password-box.component.d.ts +8 -11
  370. package/popover/lib/popover.component.d.ts +13 -5
  371. package/popup/index.d.ts +1 -0
  372. package/popup/lib/popup.component.d.ts +14 -19
  373. package/popup/lib/popup.interface.d.ts +26 -0
  374. package/popup/lib/popup.module.d.ts +4 -4
  375. package/popup/lib/popup.service.d.ts +4 -25
  376. package/progress-bar/lib/progress-bar.component.d.ts +3 -8
  377. package/scheduler/README.md +3 -0
  378. package/scheduler/index.d.ts +3 -0
  379. package/scheduler/lib/scheduler-month-view.component.d.ts +20 -0
  380. package/scheduler/lib/scheduler.component.d.ts +11 -0
  381. package/scheduler/lib/scheduler.module.d.ts +13 -0
  382. package/search-box/lib/search-box.component.d.ts +8 -16
  383. package/search-box/lib/search-box.module.d.ts +7 -5
  384. package/select-box/lib/select-box.module.d.ts +2 -2
  385. package/selection-list/lib/selection-list.module.d.ts +1 -1
  386. package/tabs/lib/tab-item.component.d.ts +2 -2
  387. package/text-area/README.md +3 -0
  388. package/text-area/index.d.ts +2 -0
  389. package/text-area/lib/text-area.component.d.ts +11 -0
  390. package/text-area/lib/text-area.module.d.ts +9 -0
  391. package/text-box/README.md +3 -0
  392. package/text-box/index.d.ts +3 -0
  393. package/{textbox/lib/textbox.component.d.ts → text-box/lib/text-box.component.d.ts} +1 -3
  394. package/{textbox/lib/textbox.module.d.ts → text-box/lib/text-box.module.d.ts} +1 -1
  395. package/time-box/lib/time-box.component.d.ts +1 -1
  396. package/toast/index.d.ts +1 -0
  397. package/toast/lib/toast.class.d.ts +14 -5
  398. package/toast/lib/toast.component.d.ts +13 -12
  399. package/toast/lib/toast.config.d.ts +12 -0
  400. package/toast/lib/toast.module.d.ts +4 -1
  401. package/toast/lib/toast.service.d.ts +5 -9
  402. package/action-sheet/lib/action-sheet.interface.d.ts +0 -21
  403. package/checkbox/README.md +0 -3
  404. package/checkbox/index.d.ts +0 -2
  405. package/checkbox/lib/checkbox.component.d.ts +0 -18
  406. package/common/lib/directives/debounce-time.directive.d.ts +0 -17
  407. package/common/lib/services/custom-cdk-overlay.service.d.ts +0 -19
  408. package/common/lib/services/overlay.service.d.ts +0 -34
  409. package/data-table/lib/data-column-cell-template.directive.d.ts +0 -8
  410. package/decorators/lib/content.component.d.ts +0 -9
  411. package/decorators/lib/divider.component.d.ts +0 -5
  412. package/decorators/lib/footer.component.d.ts +0 -9
  413. package/decorators/lib/form-hint.component.d.ts +0 -8
  414. package/decorators/lib/header.component.d.ts +0 -9
  415. package/decorators/lib/overlay.component.d.ts +0 -6
  416. package/decorators/lib/placeholder.component.d.ts +0 -5
  417. package/decorators/lib/prefix.component.d.ts +0 -9
  418. package/decorators/lib/sub-title.component.d.ts +0 -9
  419. package/decorators/lib/suffix.component.d.ts +0 -9
  420. package/decorators/lib/text.component.d.ts +0 -9
  421. package/decorators/lib/title.component.d.ts +0 -8
  422. package/esm2022/action-sheet/lib/action-sheet.interface.mjs +0 -2
  423. package/esm2022/checkbox/index.mjs +0 -3
  424. package/esm2022/checkbox/lib/checkbox.component.mjs +0 -65
  425. package/esm2022/checkbox/lib/checkbox.module.mjs +0 -21
  426. package/esm2022/common/lib/directives/debounce-time.directive.mjs +0 -48
  427. package/esm2022/common/lib/services/custom-cdk-overlay.service.mjs +0 -49
  428. package/esm2022/common/lib/services/overlay.service.mjs +0 -113
  429. package/esm2022/data-table/lib/data-column-cell-template.directive.mjs +0 -17
  430. package/esm2022/decorators/lib/content.component.mjs +0 -26
  431. package/esm2022/decorators/lib/divider.component.mjs +0 -17
  432. package/esm2022/decorators/lib/footer.component.mjs +0 -26
  433. package/esm2022/decorators/lib/form-hint.component.mjs +0 -20
  434. package/esm2022/decorators/lib/header.component.mjs +0 -26
  435. package/esm2022/decorators/lib/overlay.component.mjs +0 -22
  436. package/esm2022/decorators/lib/placeholder.component.mjs +0 -14
  437. package/esm2022/decorators/lib/prefix.component.mjs +0 -26
  438. package/esm2022/decorators/lib/sub-title.component.mjs +0 -26
  439. package/esm2022/decorators/lib/suffix.component.mjs +0 -26
  440. package/esm2022/decorators/lib/text.component.mjs +0 -21
  441. package/esm2022/decorators/lib/title.component.mjs +0 -20
  442. package/esm2022/mixin/lib/loading-mixin.class.mjs +0 -18
  443. package/esm2022/textarea/acorex-components-textarea.mjs +0 -5
  444. package/esm2022/textarea/index.mjs +0 -3
  445. package/esm2022/textarea/lib/textarea.component.mjs +0 -37
  446. package/esm2022/textarea/lib/textarea.module.mjs +0 -19
  447. package/esm2022/textbox/acorex-components-textbox.mjs +0 -5
  448. package/esm2022/textbox/index.mjs +0 -4
  449. package/esm2022/textbox/lib/mask-options.directive.mjs +0 -17
  450. package/esm2022/textbox/lib/textbox.component.mjs +0 -111
  451. package/esm2022/textbox/lib/textbox.module.mjs +0 -38
  452. package/fesm2022/acorex-components-checkbox.mjs +0 -89
  453. package/fesm2022/acorex-components-checkbox.mjs.map +0 -1
  454. package/fesm2022/acorex-components-textarea.mjs +0 -60
  455. package/fesm2022/acorex-components-textarea.mjs.map +0 -1
  456. package/fesm2022/acorex-components-textbox.mjs.map +0 -1
  457. package/mixin/lib/loading-mixin.class.d.ts +0 -40
  458. package/textarea/README.md +0 -3
  459. package/textarea/index.d.ts +0 -2
  460. package/textarea/lib/textarea.component.d.ts +0 -14
  461. package/textarea/lib/textarea.module.d.ts +0 -9
  462. package/textbox/README.md +0 -3
  463. package/textbox/index.d.ts +0 -3
  464. /package/{textbox → text-box}/lib/mask-options.directive.d.ts +0 -0
@@ -1,18 +1,16 @@
1
- import { AXEvent, MXValueComponent, MXInteractiveComponent } from '@acorex/components/common';
1
+ import { AXEvent, MXValueComponent } from '@acorex/components/common';
2
2
  import * as i0 from '@angular/core';
3
3
  import { EventEmitter, Component, ChangeDetectionStrategy, ViewEncapsulation, Input, Output, NgModule } from '@angular/core';
4
- import { classes } from 'polytype';
5
4
  import * as i1 from '@angular/common';
6
5
  import { CommonModule } from '@angular/common';
7
6
 
8
7
  class AXOtpCompletedEvent extends AXEvent {
9
8
  }
10
9
 
11
- class AXOtpComponent extends classes((MXValueComponent), MXInteractiveComponent) {
12
- constructor(elementRef) {
13
- super();
14
- this.elementRef = elementRef;
15
- this.length = 6;
10
+ class AXOtpComponent extends MXValueComponent {
11
+ constructor() {
12
+ super(...arguments);
13
+ this.length = 4;
16
14
  this.inputs = [];
17
15
  this.onCompleted = new EventEmitter();
18
16
  this._numbers = [];
@@ -24,11 +22,11 @@ class AXOtpComponent extends classes((MXValueComponent), MXInteractiveComponent)
24
22
  .map((x, i) => i);
25
23
  }
26
24
  ngAfterViewInit() {
27
- this.elementRef.nativeElement.querySelectorAll('.ax-input')[0].focus();
25
+ this.getHostElement().querySelector('.ax-input').focus();
28
26
  }
29
27
  onInput(event, i) {
30
- const input = this.elementRef.nativeElement.querySelectorAll('.ax-input');
31
- var numberRegex = /^\d+$/;
28
+ const inputs = this.getHostElement().querySelectorAll('.ax-input');
29
+ const numberRegex = /^\d+$/;
32
30
  if (!numberRegex.test(event.target.value)) {
33
31
  event.target.value = '';
34
32
  return;
@@ -38,54 +36,44 @@ class AXOtpComponent extends classes((MXValueComponent), MXInteractiveComponent)
38
36
  event.target.value = '';
39
37
  event.target.value = currentValue.slice(-1);
40
38
  }
41
- if (input[i + 1]) {
42
- input[i + 1].focus();
39
+ if (inputs[i + 1]) {
40
+ inputs[i + 1].select();
43
41
  }
44
42
  this._numbers[i] = event.target.value;
45
43
  if (this._numbers.filter((c) => c).length === this.length) {
44
+ this.setState('success');
46
45
  this.onCompleted.emit({
47
46
  component: AXOtpComponent,
48
47
  value: this._numbers.join(''),
49
48
  });
50
49
  }
51
- // console.log(this._numbers);
52
- // if (this._numbers.filter(c => c).length === this.length) {
53
- // this.setState('success');
54
- // this.onCompleted.emit({
55
- // component: AXOtpComponent,
56
- // value: this._numbers.join(''),
57
- // });
58
- // } else {
59
- // this.setState('error');
60
- // }
61
- // this.value = '124';
62
50
  }
63
51
  onKeyDown(event, i) {
64
- const input = this.elementRef.nativeElement.querySelectorAll('.ax-input');
52
+ const inputs = this.getHostElement().querySelectorAll('.ax-input');
65
53
  switch (event.key) {
66
54
  case 'Backspace':
67
- input[i].value = '';
68
- if (input[i - 1]) {
69
- input[i - 1].focus();
55
+ inputs[i].value = '';
56
+ if (inputs[i - 1]) {
57
+ inputs[i - 1].select();
70
58
  event.preventDefault();
71
59
  }
72
- this._numbers[i] = undefined;
60
+ this._numbers[i] = NaN;
73
61
  break;
74
62
  case 'ArrowRight':
75
- if (input[i + 1]) {
76
- input[i + 1].focus();
63
+ if (inputs[i + 1]) {
64
+ inputs[i + 1].select();
77
65
  }
78
66
  break;
79
67
  case 'ArrowLeft':
80
- if (input[i - 1]) {
81
- input[i - 1].focus();
68
+ if (inputs[i - 1]) {
69
+ inputs[i - 1].select();
82
70
  }
83
71
  break;
84
72
  case 'Home':
85
- input[0].focus();
73
+ inputs[0].focus();
86
74
  break;
87
75
  case 'End':
88
- input[this.length - 1].focus();
76
+ inputs[this.length - 1].select();
89
77
  break;
90
78
  case 'ArrowUp':
91
79
  case 'ArrowDown':
@@ -94,23 +82,25 @@ class AXOtpComponent extends classes((MXValueComponent), MXInteractiveComponent)
94
82
  }
95
83
  }
96
84
  onPaste(event) {
97
- let paste = event.clipboardData.getData('text');
98
- const input = this.elementRef.nativeElement.querySelectorAll('.ax-input');
99
- input[input.length - 1].focus();
85
+ const data = event.clipboardData.getData('text');
86
+ const inputs = this.getHostElement().querySelectorAll('.ax-input');
87
+ inputs[inputs.length - 1].focus();
100
88
  this._numbers = [];
101
- for (let i = 0; i < paste.length; i++) {
102
- this._numbers[i] = paste[i];
89
+ for (let i = 0; i < data.length; i++) {
90
+ this._numbers[i] = data[i];
103
91
  }
104
- console.log(this._numbers);
105
- console.log(paste);
106
92
  }
107
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.6", ngImport: i0, type: AXOtpComponent, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
108
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.6", type: AXOtpComponent, selector: "ax-otp", inputs: { length: "length" }, outputs: { onCompleted: "onCompleted" }, host: { classAttribute: "ax-otp" }, usesInheritance: true, ngImport: i0, template: "<div class=\"ax-otp-input-container ax-editor-container\" [ngStyle]=\"{ 'grid-template-columns': 'repeat(' + inputs.length + ', minmax(0, 1fr))' }\" (paste)=\"onPaste($event)\">\n <ng-container *ngFor=\"let input of inputs; let i = index\">\n <input class=\"ax-input\" type=\"number\" [value]=\"_numbers[i]\" (input)=\"onInput($event, i)\" (keydown)=\"onKeyDown($event, i)\" maxlength=\"1\" [disabled]=\"disabled\" [readonly]=\"readonly\" />\n </ng-container>\n</div>\n<ng-template #name></ng-template>\n", styles: [".ax-otp-input-container{display:grid;gap:.5rem}.ax-otp-input-container.ax-editor-container{border:none;height:auto;outline-color:transparent;overflow:initial}.ax-otp-input-container.ax-editor-container:focus-within,.ax-otp-input-container.ax-editor-container:focus{border:none!important;box-shadow:none!important}.ax-otp-input-container.ax-editor-container.ax-state-error .ax-input{box-shadow:0 0 0 1px rgba(var(--ax-color-danger-500))}.ax-otp-input-container.ax-editor-container.ax-state-error .ax-input::placeholder{color:rgba(var(--ax-color-danger-500))}.ax-otp-input-container.ax-editor-container.ax-state-error .ax-input:focus{border-color:rgba(var(--ax-color-danger-500));box-shadow:0 0 0 1px rgba(var(--ax-color-danger-500))}.ax-otp-input-container.ax-editor-container.ax-state-success .ax-input{box-shadow:0 0 0 1px rgba(var(--ax-color-success-500))}.ax-otp-input-container.ax-editor-container.ax-state-success .ax-input:focus{border-color:rgba(var(--ax-color-success-500));box-shadow:0 0 0 1px rgba(var(--ax-color-success-500))}.ax-otp-input-container.ax-editor-container.ax-state-success .ax-input::placeholder{color:rgba(var(--ax-color-success-500))}.ax-otp-input-container.ax-editor-container .ax-input{text-align:center;font-size:200%;overflow:hidden;aspect-ratio:1;border:1px solid;border-color:rgba(var(--ax-color-border-default));border-radius:var(--ax-rounded-border-default)}.ax-otp-input-container.ax-editor-container .ax-input:disabled{opacity:.5;cursor:not-allowed}.ax-otp-input-container.ax-editor-container .ax-input:read-only{opacity:.8;cursor:text}.ax-otp-input-container.ax-editor-container .ax-input:focus{border-color:rgba(var(--ax-color-primary-500));box-shadow:0 0 0 1px rgba(var(--ax-color-primary-500))}@media (max-width: 599px){.ax-otp-input-container.ax-editor-container .ax-input{font-size:100%}}.ax-otp-input-container.ax-editor-container .ax-input[type=number]{-moz-appearance:textfield}.ax-otp-input-container.ax-editor-container .ax-input[type=number]::-webkit-inner-spin-button,.ax-otp-input-container.ax-editor-container .ax-input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
93
+ onClick(event, i) {
94
+ const inputs = this.getHostElement().querySelectorAll('.ax-input');
95
+ inputs[i].select();
96
+ }
97
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: AXOtpComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
98
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.8", type: AXOtpComponent, selector: "ax-otp", inputs: { state: "state", disabled: "disabled", length: "length" }, outputs: { stateChange: "stateChange", disabledChange: "disabledChange", onCompleted: "onCompleted" }, usesInheritance: true, ngImport: i0, template: "<div\n class=\"ax-otp-input-container ax-editor-container\"\n [ngStyle]=\"{ 'grid-template-columns': 'repeat(' + inputs.length + ', minmax(0, 1fr))' }\"\n (paste)=\"onPaste($event)\"\n>\n <ng-container *ngFor=\"let input of inputs; let i = index\">\n <input\n class=\"ax-input\"\n type=\"number\"\n [class.ax-state-disabled]=\"disabled\"\n maxlength=\"1\"\n [value]=\"_numbers[i]\"\n [disabled]=\"disabled\"\n [readonly]=\"readonly\"\n (click)=\"onClick($event, i)\"\n (input)=\"onInput($event, i)\"\n (keydown)=\"onKeyDown($event, i)\"\n disabled=\"disabled\"\n />\n </ng-container>\n</div>\n<ng-template #name></ng-template>\n", styles: [".ax-otp-input-container{display:grid;gap:.5rem}.ax-otp-input-container.ax-editor-container{border:none;height:auto;outline-color:transparent;overflow:initial}.ax-otp-input-container.ax-editor-container:focus-within,.ax-otp-input-container.ax-editor-container:focus{border:none!important;box-shadow:none!important}.ax-otp-input-container.ax-editor-container.ax-state-error .ax-input{box-shadow:0 0 0 1px rgba(var(--ax-color-danger-500))}.ax-otp-input-container.ax-editor-container.ax-state-error .ax-input::placeholder{color:rgba(var(--ax-color-danger-500))}.ax-otp-input-container.ax-editor-container.ax-state-error .ax-input:focus{border-color:rgba(var(--ax-color-danger-500));box-shadow:0 0 0 1px rgba(var(--ax-color-danger-500))}.ax-otp-input-container.ax-editor-container.ax-state-success .ax-input{box-shadow:0 0 0 1px rgba(var(--ax-color-success-500))}.ax-otp-input-container.ax-editor-container.ax-state-success .ax-input:focus{border-color:rgba(var(--ax-color-success-500));box-shadow:0 0 0 1px rgba(var(--ax-color-success-500))}.ax-otp-input-container.ax-editor-container.ax-state-success .ax-input::placeholder{color:rgba(var(--ax-color-success-500))}.ax-otp-input-container.ax-editor-container .ax-input{text-align:center;font-size:200%;overflow:hidden;aspect-ratio:1;border:1px solid;border-color:rgba(var(--ax-color-border-default));border-radius:var(--ax-rounded-border-default)}.ax-otp-input-container.ax-editor-container .ax-input:disabled{opacity:.5;cursor:not-allowed}.ax-otp-input-container.ax-editor-container .ax-input:read-only{opacity:.8;cursor:text}.ax-otp-input-container.ax-editor-container .ax-input:focus{border-color:rgba(var(--ax-color-primary-500));box-shadow:0 0 0 1px rgba(var(--ax-color-primary-500))}@media (max-width: 599px){.ax-otp-input-container.ax-editor-container .ax-input{font-size:100%}}.ax-otp-input-container.ax-editor-container .ax-input[type=number]{-moz-appearance:textfield}.ax-otp-input-container.ax-editor-container .ax-input[type=number]::-webkit-inner-spin-button,.ax-otp-input-container.ax-editor-container .ax-input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
109
99
  }
110
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.6", ngImport: i0, type: AXOtpComponent, decorators: [{
100
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: AXOtpComponent, decorators: [{
111
101
  type: Component,
112
- args: [{ selector: 'ax-otp', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, host: { class: 'ax-otp' }, template: "<div class=\"ax-otp-input-container ax-editor-container\" [ngStyle]=\"{ 'grid-template-columns': 'repeat(' + inputs.length + ', minmax(0, 1fr))' }\" (paste)=\"onPaste($event)\">\n <ng-container *ngFor=\"let input of inputs; let i = index\">\n <input class=\"ax-input\" type=\"number\" [value]=\"_numbers[i]\" (input)=\"onInput($event, i)\" (keydown)=\"onKeyDown($event, i)\" maxlength=\"1\" [disabled]=\"disabled\" [readonly]=\"readonly\" />\n </ng-container>\n</div>\n<ng-template #name></ng-template>\n", styles: [".ax-otp-input-container{display:grid;gap:.5rem}.ax-otp-input-container.ax-editor-container{border:none;height:auto;outline-color:transparent;overflow:initial}.ax-otp-input-container.ax-editor-container:focus-within,.ax-otp-input-container.ax-editor-container:focus{border:none!important;box-shadow:none!important}.ax-otp-input-container.ax-editor-container.ax-state-error .ax-input{box-shadow:0 0 0 1px rgba(var(--ax-color-danger-500))}.ax-otp-input-container.ax-editor-container.ax-state-error .ax-input::placeholder{color:rgba(var(--ax-color-danger-500))}.ax-otp-input-container.ax-editor-container.ax-state-error .ax-input:focus{border-color:rgba(var(--ax-color-danger-500));box-shadow:0 0 0 1px rgba(var(--ax-color-danger-500))}.ax-otp-input-container.ax-editor-container.ax-state-success .ax-input{box-shadow:0 0 0 1px rgba(var(--ax-color-success-500))}.ax-otp-input-container.ax-editor-container.ax-state-success .ax-input:focus{border-color:rgba(var(--ax-color-success-500));box-shadow:0 0 0 1px rgba(var(--ax-color-success-500))}.ax-otp-input-container.ax-editor-container.ax-state-success .ax-input::placeholder{color:rgba(var(--ax-color-success-500))}.ax-otp-input-container.ax-editor-container .ax-input{text-align:center;font-size:200%;overflow:hidden;aspect-ratio:1;border:1px solid;border-color:rgba(var(--ax-color-border-default));border-radius:var(--ax-rounded-border-default)}.ax-otp-input-container.ax-editor-container .ax-input:disabled{opacity:.5;cursor:not-allowed}.ax-otp-input-container.ax-editor-container .ax-input:read-only{opacity:.8;cursor:text}.ax-otp-input-container.ax-editor-container .ax-input:focus{border-color:rgba(var(--ax-color-primary-500));box-shadow:0 0 0 1px rgba(var(--ax-color-primary-500))}@media (max-width: 599px){.ax-otp-input-container.ax-editor-container .ax-input{font-size:100%}}.ax-otp-input-container.ax-editor-container .ax-input[type=number]{-moz-appearance:textfield}.ax-otp-input-container.ax-editor-container .ax-input[type=number]::-webkit-inner-spin-button,.ax-otp-input-container.ax-editor-container .ax-input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}\n"] }]
113
- }], ctorParameters: function () { return [{ type: i0.ElementRef }]; }, propDecorators: { length: [{
102
+ args: [{ selector: 'ax-otp', inputs: ['state', 'disabled'], outputs: ['stateChange', 'disabledChange'], changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, template: "<div\n class=\"ax-otp-input-container ax-editor-container\"\n [ngStyle]=\"{ 'grid-template-columns': 'repeat(' + inputs.length + ', minmax(0, 1fr))' }\"\n (paste)=\"onPaste($event)\"\n>\n <ng-container *ngFor=\"let input of inputs; let i = index\">\n <input\n class=\"ax-input\"\n type=\"number\"\n [class.ax-state-disabled]=\"disabled\"\n maxlength=\"1\"\n [value]=\"_numbers[i]\"\n [disabled]=\"disabled\"\n [readonly]=\"readonly\"\n (click)=\"onClick($event, i)\"\n (input)=\"onInput($event, i)\"\n (keydown)=\"onKeyDown($event, i)\"\n disabled=\"disabled\"\n />\n </ng-container>\n</div>\n<ng-template #name></ng-template>\n", styles: [".ax-otp-input-container{display:grid;gap:.5rem}.ax-otp-input-container.ax-editor-container{border:none;height:auto;outline-color:transparent;overflow:initial}.ax-otp-input-container.ax-editor-container:focus-within,.ax-otp-input-container.ax-editor-container:focus{border:none!important;box-shadow:none!important}.ax-otp-input-container.ax-editor-container.ax-state-error .ax-input{box-shadow:0 0 0 1px rgba(var(--ax-color-danger-500))}.ax-otp-input-container.ax-editor-container.ax-state-error .ax-input::placeholder{color:rgba(var(--ax-color-danger-500))}.ax-otp-input-container.ax-editor-container.ax-state-error .ax-input:focus{border-color:rgba(var(--ax-color-danger-500));box-shadow:0 0 0 1px rgba(var(--ax-color-danger-500))}.ax-otp-input-container.ax-editor-container.ax-state-success .ax-input{box-shadow:0 0 0 1px rgba(var(--ax-color-success-500))}.ax-otp-input-container.ax-editor-container.ax-state-success .ax-input:focus{border-color:rgba(var(--ax-color-success-500));box-shadow:0 0 0 1px rgba(var(--ax-color-success-500))}.ax-otp-input-container.ax-editor-container.ax-state-success .ax-input::placeholder{color:rgba(var(--ax-color-success-500))}.ax-otp-input-container.ax-editor-container .ax-input{text-align:center;font-size:200%;overflow:hidden;aspect-ratio:1;border:1px solid;border-color:rgba(var(--ax-color-border-default));border-radius:var(--ax-rounded-border-default)}.ax-otp-input-container.ax-editor-container .ax-input:disabled{opacity:.5;cursor:not-allowed}.ax-otp-input-container.ax-editor-container .ax-input:read-only{opacity:.8;cursor:text}.ax-otp-input-container.ax-editor-container .ax-input:focus{border-color:rgba(var(--ax-color-primary-500));box-shadow:0 0 0 1px rgba(var(--ax-color-primary-500))}@media (max-width: 599px){.ax-otp-input-container.ax-editor-container .ax-input{font-size:100%}}.ax-otp-input-container.ax-editor-container .ax-input[type=number]{-moz-appearance:textfield}.ax-otp-input-container.ax-editor-container .ax-input[type=number]::-webkit-inner-spin-button,.ax-otp-input-container.ax-editor-container .ax-input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}\n"] }]
103
+ }], propDecorators: { length: [{
114
104
  type: Input
115
105
  }], onCompleted: [{
116
106
  type: Output
@@ -119,11 +109,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.6", ngImpor
119
109
  const COMPONENT = [AXOtpComponent];
120
110
  const MODULES = [CommonModule];
121
111
  class AXOtpModule {
122
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.6", ngImport: i0, type: AXOtpModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
123
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.1.6", ngImport: i0, type: AXOtpModule, declarations: [AXOtpComponent], imports: [CommonModule], exports: [AXOtpComponent] }); }
124
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.1.6", ngImport: i0, type: AXOtpModule, imports: [MODULES] }); }
112
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: AXOtpModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
113
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.1.8", ngImport: i0, type: AXOtpModule, declarations: [AXOtpComponent], imports: [CommonModule], exports: [AXOtpComponent] }); }
114
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: AXOtpModule, imports: [MODULES] }); }
125
115
  }
126
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.6", ngImport: i0, type: AXOtpModule, decorators: [{
116
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: AXOtpModule, decorators: [{
127
117
  type: NgModule,
128
118
  args: [{
129
119
  declarations: [...COMPONENT],
@@ -1 +1 @@
1
- {"version":3,"file":"acorex-components-otp.mjs","sources":["../../../../libs/components/otp/src/lib/otp.class.ts","../../../../libs/components/otp/src/lib/otp.component.ts","../../../../libs/components/otp/src/lib/otp.component.html","../../../../libs/components/otp/src/lib/otp.module.ts","../../../../libs/components/otp/src/acorex-components-otp.ts"],"sourcesContent":["import { AXEvent } from '@acorex/components/common';\n\nexport class AXOtpCompletedEvent extends AXEvent {\n value: string;\n}\n","import {\n Component,\n ViewEncapsulation,\n ChangeDetectionStrategy,\n ElementRef,\n ChangeDetectorRef,\n Input,\n ViewChild,\n ViewChildren,\n QueryList,\n Output,\n EventEmitter,\n} from '@angular/core';\nimport { classes } from 'polytype';\nimport { MXInteractiveComponent, MXValueComponent } from '@acorex/components/common';\nimport { AXOtpCompletedEvent } from './otp.class';\n\n@Component({\n selector: 'ax-otp',\n templateUrl: './otp.component.html',\n styleUrls: ['./otp.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: { class: 'ax-otp' },\n})\nexport class AXOtpComponent extends classes(MXValueComponent<string>, MXInteractiveComponent) {\n @Input() length: number = 6;\n inputs: number[] = [];\n\n @Output() onCompleted: EventEmitter<AXOtpCompletedEvent> =\n new EventEmitter<AXOtpCompletedEvent>();\n\n _numbers: number[] = [];\n\n constructor(private elementRef: ElementRef) {\n super();\n }\n\n override ngOnInit(): void {\n super.ngOnInit();\n this.inputs = Array(this.length)\n .fill(1)\n .map((x, i) => i);\n }\n\n protected override ngAfterViewInit(): void {\n this.elementRef.nativeElement.querySelectorAll('.ax-input')[0].focus();\n }\n\n onInput(event: any, i: number) {\n const input = this.elementRef.nativeElement.querySelectorAll('.ax-input');\n var numberRegex = /^\\d+$/;\n if (!numberRegex.test(event.target.value)) {\n event.target.value = '';\n return;\n }\n if (event.target.value.length > 1) {\n const currentValue = event.target.value;\n event.target.value = '';\n event.target.value = currentValue.slice(-1);\n }\n if (input[i + 1]) {\n input[i + 1].focus();\n }\n this._numbers[i] = event.target.value;\n if (this._numbers.filter((c) => c).length === this.length) {\n this.onCompleted.emit({\n component: AXOtpComponent,\n value: this._numbers.join(''),\n });\n }\n // console.log(this._numbers);\n // if (this._numbers.filter(c => c).length === this.length) {\n // this.setState('success');\n // this.onCompleted.emit({\n // component: AXOtpComponent,\n // value: this._numbers.join(''),\n // });\n // } else {\n // this.setState('error');\n // }\n\n // this.value = '124';\n }\n onKeyDown(event: KeyboardEvent, i: number) {\n const input: any[] = this.elementRef.nativeElement.querySelectorAll('.ax-input');\n switch (event.key) {\n case 'Backspace':\n input[i].value = '';\n if (input[i - 1]) {\n input[i - 1].focus();\n event.preventDefault();\n }\n this._numbers[i] = undefined;\n break;\n case 'ArrowRight':\n if (input[i + 1]) {\n input[i + 1].focus();\n }\n break;\n\n case 'ArrowLeft':\n if (input[i - 1]) {\n input[i - 1].focus();\n }\n break;\n case 'Home':\n input[0].focus();\n break;\n case 'End':\n input[this.length - 1].focus();\n break;\n case 'ArrowUp':\n case 'ArrowDown':\n event.preventDefault();\n break;\n }\n }\n onPaste(event: any) {\n let paste = event.clipboardData.getData('text');\n const input: any[] = this.elementRef.nativeElement.querySelectorAll('.ax-input');\n input[input.length - 1].focus();\n this._numbers = [];\n for (let i = 0; i < paste.length; i++) {\n this._numbers[i] = paste[i];\n }\n console.log(this._numbers);\n console.log(paste);\n }\n}\n","<div class=\"ax-otp-input-container ax-editor-container\" [ngStyle]=\"{ 'grid-template-columns': 'repeat(' + inputs.length + ', minmax(0, 1fr))' }\" (paste)=\"onPaste($event)\">\n <ng-container *ngFor=\"let input of inputs; let i = index\">\n <input class=\"ax-input\" type=\"number\" [value]=\"_numbers[i]\" (input)=\"onInput($event, i)\" (keydown)=\"onKeyDown($event, i)\" maxlength=\"1\" [disabled]=\"disabled\" [readonly]=\"readonly\" />\n </ng-container>\n</div>\n<ng-template #name></ng-template>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { AXOtpComponent } from './otp.component';\n\nconst COMPONENT = [AXOtpComponent];\nconst MODULES = [CommonModule];\n\n@NgModule({\n declarations: [...COMPONENT],\n imports: [...MODULES],\n exports: [...COMPONENT],\n providers: [],\n})\nexport class AXOtpModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"acorex-components-otp.mjs","sources":["../../../../libs/components/otp/src/lib/otp.class.ts","../../../../libs/components/otp/src/lib/otp.component.ts","../../../../libs/components/otp/src/lib/otp.component.html","../../../../libs/components/otp/src/lib/otp.module.ts","../../../../libs/components/otp/src/acorex-components-otp.ts"],"sourcesContent":["import { AXEvent } from '@acorex/components/common';\n\nexport class AXOtpCompletedEvent extends AXEvent {\n value: string;\n}\n","import { MXValueComponent } from '@acorex/components/common';\nimport {\n AfterViewInit,\n ChangeDetectionStrategy,\n Component,\n EventEmitter,\n Input,\n OnInit,\n Output,\n ViewEncapsulation,\n} from '@angular/core';\nimport { AXOtpCompletedEvent } from './otp.class';\n\n@Component({\n selector: 'ax-otp',\n templateUrl: './otp.component.html',\n styleUrls: ['./otp.component.scss'],\n inputs: ['state', 'disabled'],\n outputs: ['stateChange', 'disabledChange'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n})\nexport class AXOtpComponent extends MXValueComponent<string> implements OnInit, AfterViewInit {\n @Input() length = 4;\n inputs: number[] = [];\n\n @Output() onCompleted: EventEmitter<AXOtpCompletedEvent> = new EventEmitter<AXOtpCompletedEvent>();\n\n protected _numbers: number[] = [];\n\n override ngOnInit(): void {\n super.ngOnInit();\n this.inputs = Array(this.length)\n .fill(1)\n .map((x, i) => i);\n }\n\n override ngAfterViewInit(): void {\n this.getHostElement().querySelector<HTMLInputElement>('.ax-input').focus();\n }\n\n onInput(event: any, i: number) {\n const inputs = this.getHostElement().querySelectorAll<HTMLInputElement>('.ax-input');\n const numberRegex = /^\\d+$/;\n if (!numberRegex.test(event.target.value)) {\n event.target.value = '';\n return;\n }\n if (event.target.value.length > 1) {\n const currentValue = event.target.value;\n event.target.value = '';\n event.target.value = currentValue.slice(-1);\n }\n if (inputs[i + 1]) {\n inputs[i + 1].select();\n }\n this._numbers[i] = event.target.value;\n if (this._numbers.filter((c) => c).length === this.length) {\n this.setState('success');\n this.onCompleted.emit({\n component: AXOtpComponent,\n value: this._numbers.join(''),\n });\n }\n }\n\n onKeyDown(event: KeyboardEvent, i: number) {\n const inputs = this.getHostElement().querySelectorAll<HTMLInputElement>('.ax-input');\n switch (event.key) {\n case 'Backspace':\n inputs[i].value = '';\n if (inputs[i - 1]) {\n inputs[i - 1].select();\n event.preventDefault();\n }\n this._numbers[i] = NaN;\n break;\n case 'ArrowRight':\n if (inputs[i + 1]) {\n inputs[i + 1].select();\n }\n break;\n\n case 'ArrowLeft':\n if (inputs[i - 1]) {\n inputs[i - 1].select();\n }\n break;\n case 'Home':\n inputs[0].focus();\n break;\n case 'End':\n inputs[this.length - 1].select();\n break;\n case 'ArrowUp':\n case 'ArrowDown':\n event.preventDefault();\n break;\n }\n }\n onPaste(event: any) {\n const data = event.clipboardData.getData('text');\n const inputs = this.getHostElement().querySelectorAll<HTMLInputElement>('.ax-input');\n inputs[inputs.length - 1].focus();\n this._numbers = [];\n for (let i = 0; i < data.length; i++) {\n this._numbers[i] = data[i];\n }\n }\n\n onClick(event: any, i) {\n const inputs = this.getHostElement().querySelectorAll<HTMLInputElement>('.ax-input');\n inputs[i].select();\n }\n}\n","<div\n class=\"ax-otp-input-container ax-editor-container\"\n [ngStyle]=\"{ 'grid-template-columns': 'repeat(' + inputs.length + ', minmax(0, 1fr))' }\"\n (paste)=\"onPaste($event)\"\n>\n <ng-container *ngFor=\"let input of inputs; let i = index\">\n <input\n class=\"ax-input\"\n type=\"number\"\n [class.ax-state-disabled]=\"disabled\"\n maxlength=\"1\"\n [value]=\"_numbers[i]\"\n [disabled]=\"disabled\"\n [readonly]=\"readonly\"\n (click)=\"onClick($event, i)\"\n (input)=\"onInput($event, i)\"\n (keydown)=\"onKeyDown($event, i)\"\n disabled=\"disabled\"\n />\n </ng-container>\n</div>\n<ng-template #name></ng-template>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { AXOtpComponent } from './otp.component';\n\nconst COMPONENT = [AXOtpComponent];\nconst MODULES = [CommonModule];\n\n@NgModule({\n declarations: [...COMPONENT],\n imports: [...MODULES],\n exports: [...COMPONENT],\n providers: [],\n})\nexport class AXOtpModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -1,21 +1,23 @@
1
1
  import * as i0 from '@angular/core';
2
- import { EventEmitter, Injectable, Inject, Output, Input, ViewChild, NgModule } from '@angular/core';
2
+ import { inject, EventEmitter, Injectable, ViewChild, Output, Input, Inject, NgModule } from '@angular/core';
3
+ import { MXBaseComponent } from '@acorex/components/common';
4
+ import '@acorex/components/decorators';
3
5
  import { AXLoadingService } from '@acorex/components/loading';
4
- import { AXBaseComponentMixin } from '@acorex/components/mixin';
5
- import { AXDecoratorFooterComponent } from '@acorex/components/decorators';
6
6
 
7
- class AXPageComponent extends AXBaseComponentMixin {
8
- constructor(elementRef, cdr, _loadingService) {
9
- super(elementRef, cdr);
10
- this._loadingService = _loadingService;
7
+ class AXBasePageComponent extends MXBaseComponent {
8
+ constructor() {
9
+ super(...arguments);
10
+ this._loadingService = inject(AXLoadingService);
11
11
  this.isLoadingChange = new EventEmitter();
12
12
  this._isLoading = false;
13
+ this._isPopup = false;
14
+ this.onClosed = new EventEmitter();
13
15
  }
14
16
  get isLoading() {
15
17
  return this._isLoading;
16
18
  }
17
19
  set isLoading(v) {
18
- this._setOption({
20
+ this.setOption({
19
21
  name: 'isLoading',
20
22
  value: v,
21
23
  afterCallback: () => {
@@ -24,77 +26,74 @@ class AXPageComponent extends AXBaseComponentMixin {
24
26
  this._loadingId = 0;
25
27
  }
26
28
  if (v) {
27
- this._loadingId = this._loadingService.show(this._getHostElement());
29
+ this._loadingId = this._loadingService.show({ location: this.getHostElement().closest('.ax-loading-container') });
28
30
  }
29
- this._cdr.markForCheck();
31
+ this.cdr.markForCheck();
30
32
  },
31
33
  });
32
34
  }
33
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.6", ngImport: i0, type: AXPageComponent, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: AXLoadingService }], target: i0.ɵɵFactoryTarget.Injectable }); }
34
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.6", ngImport: i0, type: AXPageComponent }); }
35
+ get isPopup() {
36
+ return this._isPopup;
37
+ }
38
+ close(data) {
39
+ this.onClosed.emit({
40
+ component: this,
41
+ data: data,
42
+ });
43
+ }
44
+ onClosing(e) { }
45
+ ngOnDestroy() {
46
+ this.onClosed.unsubscribe();
47
+ }
48
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: AXBasePageComponent, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
49
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: AXBasePageComponent }); }
35
50
  }
36
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.6", ngImport: i0, type: AXPageComponent, decorators: [{
51
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: AXBasePageComponent, decorators: [{
37
52
  type: Injectable
38
- }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: undefined, decorators: [{
39
- type: Inject,
40
- args: [AXLoadingService]
41
- }] }]; }, propDecorators: { isLoadingChange: [{
53
+ }], propDecorators: { footer: [{
54
+ type: ViewChild,
55
+ args: ["ax-footer", { static: true }]
56
+ }], isLoadingChange: [{
42
57
  type: Output
43
58
  }], isLoading: [{
44
59
  type: Input
45
60
  }] } });
46
61
 
47
- class AXBasePageComponent extends AXBaseComponentMixin {
48
- /**
49
- * @ignore
50
- */
51
- constructor(elementRef, cdr) {
52
- super(elementRef, cdr);
62
+ class AXPageComponent extends MXBaseComponent {
63
+ constructor(_loadingService) {
64
+ super();
65
+ this._loadingService = _loadingService;
53
66
  this.isLoadingChange = new EventEmitter();
54
67
  this._isLoading = false;
55
- this._isPopup = false;
56
- this.onClosed = new EventEmitter();
57
68
  }
58
69
  get isLoading() {
59
70
  return this._isLoading;
60
71
  }
61
72
  set isLoading(v) {
62
- this._setOption({
73
+ this.setOption({
63
74
  name: 'isLoading',
64
75
  value: v,
65
76
  afterCallback: () => {
66
- if (this.pageContainer) {
67
- this.pageContainer.isLoading = this.isLoading;
77
+ if (this._loadingId && !v) {
78
+ this._loadingService.hide(this._loadingId);
79
+ this._loadingId = 0;
68
80
  }
69
- this._cdr.markForCheck();
81
+ if (v) {
82
+ this._loadingId = this._loadingService.show(this.getHostElement());
83
+ }
84
+ this.cdr.markForCheck();
70
85
  },
71
86
  });
72
87
  }
73
- get isPopup() {
74
- return this._isPopup;
75
- }
76
- close(data) {
77
- this.onClosed.emit({
78
- component: this,
79
- data: data,
80
- });
81
- }
82
- onClosing(e) { }
83
- ngOnDestroy() {
84
- this.onClosed.unsubscribe();
85
- }
86
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.6", ngImport: i0, type: AXBasePageComponent, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Injectable }); }
87
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.6", ngImport: i0, type: AXBasePageComponent }); }
88
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: AXPageComponent, deps: [{ token: AXLoadingService }], target: i0.ɵɵFactoryTarget.Injectable }); }
89
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: AXPageComponent }); }
88
90
  }
89
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.6", ngImport: i0, type: AXBasePageComponent, decorators: [{
91
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: AXPageComponent, decorators: [{
90
92
  type: Injectable
91
- }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { pageContainer: [{
92
- type: ViewChild,
93
- args: [AXPageComponent, { static: true }]
94
- }], footer: [{
95
- type: ViewChild,
96
- args: [AXDecoratorFooterComponent, { static: true }]
97
- }], isLoadingChange: [{
93
+ }], ctorParameters: function () { return [{ type: undefined, decorators: [{
94
+ type: Inject,
95
+ args: [AXLoadingService]
96
+ }] }]; }, propDecorators: { isLoadingChange: [{
98
97
  type: Output
99
98
  }], isLoading: [{
100
99
  type: Input
@@ -102,11 +101,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.6", ngImpor
102
101
 
103
102
  // TODO: Module is empty!?
104
103
  class AXPageModule {
105
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.6", ngImport: i0, type: AXPageModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
106
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.1.6", ngImport: i0, type: AXPageModule }); }
107
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.1.6", ngImport: i0, type: AXPageModule }); }
104
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: AXPageModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
105
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.1.8", ngImport: i0, type: AXPageModule }); }
106
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: AXPageModule }); }
108
107
  }
109
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.6", ngImport: i0, type: AXPageModule, decorators: [{
108
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: AXPageModule, decorators: [{
110
109
  type: NgModule,
111
110
  args: [{
112
111
  imports: [],
@@ -1 +1 @@
1
- {"version":3,"file":"acorex-components-page.mjs","sources":["../../../../libs/components/page/src/lib/page.component.ts","../../../../libs/components/page/src/lib/base-page.class.ts","../../../../libs/components/page/src/lib/page.module.ts","../../../../libs/components/page/src/acorex-components-page.ts"],"sourcesContent":["import {\n ChangeDetectorRef,\n ElementRef,\n EventEmitter,\n Inject,\n Injectable,\n Input,\n Output,\n} from '@angular/core';\nimport { AXLoadingService } from '@acorex/components/loading';\nimport { AXBaseComponentMixin } from '@acorex/components/mixin';\n\n@Injectable()\nexport abstract class AXPageComponent extends AXBaseComponentMixin {\n constructor(\n elementRef: ElementRef,\n cdr: ChangeDetectorRef,\n @Inject(AXLoadingService) private _loadingService\n ) {\n super(elementRef, cdr);\n }\n\n private _loadingId: number;\n\n @Output()\n isLoadingChange = new EventEmitter<boolean>();\n\n private _isLoading: boolean = false;\n @Input()\n public get isLoading(): boolean {\n return this._isLoading;\n }\n public set isLoading(v: boolean) {\n this._setOption({\n name: 'isLoading',\n value: v,\n afterCallback: () => {\n if (this._loadingId && !v) {\n this._loadingService.hide(this._loadingId);\n this._loadingId = 0;\n }\n if (v) {\n this._loadingId = this._loadingService.show(this._getHostElement());\n }\n this._cdr.markForCheck();\n },\n });\n }\n}\n","import {\n ChangeDetectorRef,\n ElementRef,\n EventEmitter,\n Injectable,\n Input,\n Output,\n ViewChild,\n} from '@angular/core';\nimport { AXPageComponent } from './page.component';\nimport { AXDecoratorFooterComponent } from '@acorex/components/decorators';\nimport { AXBaseComponentMixin } from '@acorex/components/mixin';\nimport { AXComponentCloseEvent, AXComponentClosing } from '@acorex/components/common';\n\n@Injectable()\nexport class AXBasePageComponent extends AXBaseComponentMixin {\n /**\n * @ignore\n */\n constructor(elementRef: ElementRef, cdr: ChangeDetectorRef) {\n super(elementRef, cdr);\n }\n\n @ViewChild(AXPageComponent, { static: true })\n private pageContainer: AXPageComponent;\n\n @ViewChild(AXDecoratorFooterComponent, { static: true })\n footer: AXDecoratorFooterComponent;\n\n @Output()\n isLoadingChange = new EventEmitter<boolean>();\n\n private _isLoading: boolean = false;\n @Input()\n public get isLoading(): boolean {\n return this._isLoading;\n }\n public set isLoading(v: boolean) {\n this._setOption({\n name: 'isLoading',\n value: v,\n afterCallback: () => {\n if (this.pageContainer) {\n this.pageContainer.isLoading = this.isLoading;\n }\n this._cdr.markForCheck();\n },\n });\n }\n\n private _isPopup: boolean = false;\n public get isPopup(): boolean {\n return this._isPopup;\n }\n\n onClosed: EventEmitter<AXComponentCloseEvent> = new EventEmitter<AXComponentCloseEvent>();\n\n close(data?: any) {\n this.onClosed.emit({\n component: this,\n data: data,\n });\n }\n\n onClosing(e: AXComponentClosing): void | Promise<void> {}\n\n override ngOnDestroy() {\n this.onClosed.unsubscribe();\n }\n}\n","import { NgModule } from '@angular/core';\n\n\n// TODO: Module is empty!?\n@NgModule({\n imports: [],\n exports: [],\n declarations: [],\n providers: [],\n})\nexport class AXPageModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"acorex-components-page.mjs","sources":["../../../../libs/components/page/src/lib/base-page.class.ts","../../../../libs/components/page/src/lib/page.component.ts","../../../../libs/components/page/src/lib/page.module.ts","../../../../libs/components/page/src/acorex-components-page.ts"],"sourcesContent":["import {\n EventEmitter,\n Injectable,\n Input,\n Output,\n ViewChild,\n inject,\n} from '@angular/core';\nimport { AXComponentCloseEvent, AXComponentClosing, MXBaseComponent } from '@acorex/components/common';\nimport { AXDecoratorGenericComponent } from '@acorex/components/decorators';\nimport { AXLoadingService } from '@acorex/components/loading';\n\n@Injectable()\nexport class AXBasePageComponent extends MXBaseComponent {\n\n private _loadingId: number;\n private _loadingService = inject(AXLoadingService);\n\n @ViewChild(\"ax-footer\", { static: true })\n footer: AXDecoratorGenericComponent;\n\n @Output()\n isLoadingChange = new EventEmitter<boolean>();\n\n private _isLoading = false;\n @Input()\n public get isLoading(): boolean {\n return this._isLoading;\n }\n public set isLoading(v: boolean) {\n this.setOption({\n name: 'isLoading',\n value: v,\n afterCallback: () => {\n if (this._loadingId && !v) {\n this._loadingService.hide(this._loadingId);\n this._loadingId = 0;\n }\n if (v) {\n this._loadingId = this._loadingService.show({ location: this.getHostElement().closest('.ax-loading-container') });\n }\n this.cdr.markForCheck();\n },\n });\n }\n\n private _isPopup = false;\n public get isPopup(): boolean {\n return this._isPopup;\n }\n\n onClosed: EventEmitter<AXComponentCloseEvent> = new EventEmitter<AXComponentCloseEvent>();\n\n close(data?: unknown) {\n this.onClosed.emit({\n component: this,\n data: data,\n });\n }\n\n onClosing(e: AXComponentClosing): void | Promise<void> { }\n\n ngOnDestroy() {\n this.onClosed.unsubscribe();\n }\n}\n","import {\n EventEmitter,\n Inject,\n Injectable,\n Input,\n Output,\n} from '@angular/core';\nimport { AXLoadingService } from '@acorex/components/loading';\nimport { MXBaseComponent } from '@acorex/components/common';\n\n@Injectable()\nexport abstract class AXPageComponent extends MXBaseComponent {\n constructor(\n @Inject(AXLoadingService) private _loadingService\n ) {\n super();\n }\n\n private _loadingId: number;\n\n @Output()\n isLoadingChange = new EventEmitter<boolean>();\n\n private _isLoading: boolean = false;\n @Input()\n public get isLoading(): boolean {\n return this._isLoading;\n }\n public set isLoading(v: boolean) {\n this.setOption({\n name: 'isLoading',\n value: v,\n afterCallback: () => {\n if (this._loadingId && !v) {\n this._loadingService.hide(this._loadingId);\n this._loadingId = 0;\n }\n if (v) {\n this._loadingId = this._loadingService.show(this.getHostElement());\n }\n this.cdr.markForCheck();\n },\n });\n }\n}\n","import { NgModule } from '@angular/core';\n\n\n// TODO: Module is empty!?\n@NgModule({\n imports: [],\n exports: [],\n declarations: [],\n providers: [],\n})\nexport class AXPageModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -1,10 +1,10 @@
1
- import { AXBaseTextBoxMixin } from '@acorex/components/mixin';
2
1
  import * as i0 from '@angular/core';
3
- import { Component, ViewEncapsulation, ChangeDetectionStrategy, ViewChild, Input, NgModule } from '@angular/core';
2
+ import { forwardRef, Component, ViewEncapsulation, ChangeDetectionStrategy, ViewChild, Input, NgModule } from '@angular/core';
3
+ import { MXInputBaseValueComponent, AXComponent, AXFocusableComponent, AXClearableComponent } from '@acorex/components/common';
4
+ import * as i2 from '@angular/forms';
5
+ import { NG_VALUE_ACCESSOR, FormsModule } from '@angular/forms';
4
6
  import * as i1 from '@angular/common';
5
7
  import { CommonModule } from '@angular/common';
6
- import * as i2 from '@angular/forms';
7
- import { FormsModule } from '@angular/forms';
8
8
  import { AXButtonModule } from '@acorex/components/button';
9
9
  import { AXDecoratorModule } from '@acorex/components/decorators';
10
10
 
@@ -13,21 +13,19 @@ import { AXDecoratorModule } from '@acorex/components/decorators';
13
13
  *
14
14
  * @category Components
15
15
  */
16
- class AXPasswordBoxComponent extends AXBaseTextBoxMixin {
17
- /**
18
- * @ignore
19
- */
20
- constructor(elementRef, cdr) {
21
- super(elementRef, cdr);
16
+ class AXPasswordBoxComponent extends MXInputBaseValueComponent {
17
+ constructor() {
18
+ super(...arguments);
22
19
  this._type = 'password';
23
20
  this._icon = 'ax-icon-visibility';
21
+ this.autoComplete = 'one-time-code';
24
22
  /**
25
23
  * A flag for showing or hiding password button.
26
24
  */
27
25
  this.showToggleButton = true;
28
26
  }
29
- focus() {
30
- this.input.nativeElement.focus();
27
+ _handleModelChange(value) {
28
+ this.commitValue(value, true);
31
29
  }
32
30
  toggleType() {
33
31
  if (this._type === 'password') {
@@ -39,31 +37,44 @@ class AXPasswordBoxComponent extends AXBaseTextBoxMixin {
39
37
  this._icon = 'ax-icon-visibility';
40
38
  }
41
39
  }
42
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.6", ngImport: i0, type: AXPasswordBoxComponent, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
43
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.6", type: AXPasswordBoxComponent, selector: "ax-password-box", inputs: { disabled: "disabled", readonly: "readonly", tabIndex: "tabIndex", cssClass: "cssClass", size: "size", placeholder: "placeholder", maxLength: "maxLength", allowNull: "allowNull", type: "type", autoComplete: "autoComplete", value: "value", name: "name", checked: "checked", showToggleButton: "showToggleButton" }, outputs: { valueChange: "valueChange", onValueChanged: "onValueChanged", onBlur: "onBlur", onFocus: "onFocus" }, host: { classAttribute: "ax-password-box ax-editor-container" }, viewQueries: [{ propertyName: "input", first: true, predicate: ["input"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-content select=\"ax-prefix\">\n</ng-content>\n<input #input class=\"ax-input\" [attr.name]=\"name\" [type]=\"_type\" [attr.placeholder]=\"placeholder\" [attr.maxlength]=\"maxLength\" [class.ax-state-disabled]=\"disabled\" [class.ax-state-readonly]=\"readonly\" [disabled]=\"disabled\" [readonly]=\"readonly\" [tabindex]=\"tabIndex\"\n [(ngModel)]=\"value\" (focus)=\"_emitOnFocusEvent($event)\" (blur)=\"_emitOnBlurEvent($event)\" [attr.autocomplete]=\"autoComplete\">\n\n<ng-content select=\"ax-suffix\">\n\n</ng-content>\n<ng-content select=\"ax-validation-rule\">\n</ng-content>\n<button class=\"ax-general-button ax-button-icon\" (click)=\"toggleType()\" [tabIndex]=\"-1\" *ngIf=\"showToggleButton\">\n <span class=\"ax-icon {{_icon}}\"></span>\n</button>", dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
40
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: AXPasswordBoxComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
41
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.8", type: AXPasswordBoxComponent, selector: "ax-password-box", inputs: { disabled: "disabled", readonly: "readonly", tabIndex: "tabIndex", placeholder: "placeholder", value: "value", state: "state", name: "name", id: "id", autoComplete: "autoComplete", showToggleButton: "showToggleButton" }, outputs: { valueChange: "valueChange", stateChange: "stateChange", onValueChanged: "onValueChanged", onBlur: "onBlur", onFocus: "onFocus", readonlyChange: "readonlyChange", disabledChange: "disabledChange" }, host: { classAttribute: "ax-editor-container" }, providers: [
42
+ { provide: AXComponent, useExisting: AXPasswordBoxComponent },
43
+ { provide: AXFocusableComponent, useExisting: AXPasswordBoxComponent },
44
+ { provide: AXClearableComponent, useExisting: AXPasswordBoxComponent },
45
+ {
46
+ provide: NG_VALUE_ACCESSOR,
47
+ useExisting: forwardRef(() => AXPasswordBoxComponent),
48
+ multi: true
49
+ }
50
+ ], viewQueries: [{ propertyName: "input", first: true, predicate: ["input"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-content select=\"ax-prefix\">\n</ng-content>\n<input #input class=\"ax-input\" [name]=\"name\" [type]=\"_type\" [id]=\"id\" [attr.placeholder]=\"placeholder\"\n [class.ax-state-disabled]=\"disabled\" [class.ax-state-readonly]=\"readonly\" [disabled]=\"disabled\"\n [readonly]=\"readonly\" [tabindex]=\"tabIndex\" [ngModel]=\"value\" [attr.autocomplete]=\"autoComplete\"\n (ngModelChange)=\"_handleModelChange($event)\" (keydown)=\"emitOnKeydownEvent($event)\"\n (keyup)=\"emitOnKeyupEvent($event)\" (keypress)=\"emitOnKeypressEvent($event)\" (focus)=\"emitOnFocusEvent($event)\"\n (blur)=\"emitOnBlurEvent($event)\">\n<ng-content select=\"ax-clear-button\"></ng-content>\n<button type=\"button\" class=\"ax-general-button ax-button-icon\" (click)=\"toggleType()\" [tabIndex]=\"-1\"\n *ngIf=\"showToggleButton\">\n <span class=\"ax-icon {{_icon}}\"></span>\n</button>\n<ng-content select=\"ax-suffix\">\n</ng-content>\n<ng-content select=\"ax-validation-rule\">\n</ng-content>", dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
44
51
  }
45
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.6", ngImport: i0, type: AXPasswordBoxComponent, decorators: [{
52
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: AXPasswordBoxComponent, decorators: [{
46
53
  type: Component,
47
54
  args: [{ selector: 'ax-password-box', inputs: [
48
55
  'disabled',
49
56
  'readonly',
50
57
  'tabIndex',
51
- 'cssClass',
52
- 'size',
53
58
  'placeholder',
54
- 'maxLength',
55
- 'allowNull',
56
- 'type',
57
- 'autoComplete',
58
- 'readonly',
59
- 'allowNull',
60
59
  'value',
60
+ 'state',
61
61
  'name',
62
- 'checked',
63
- ], outputs: ['valueChange', 'onValueChanged', 'onBlur', 'onFocus', 'valueChange', 'onValueChanged'], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, host: { class: 'ax-password-box ax-editor-container' }, template: "<ng-content select=\"ax-prefix\">\n</ng-content>\n<input #input class=\"ax-input\" [attr.name]=\"name\" [type]=\"_type\" [attr.placeholder]=\"placeholder\" [attr.maxlength]=\"maxLength\" [class.ax-state-disabled]=\"disabled\" [class.ax-state-readonly]=\"readonly\" [disabled]=\"disabled\" [readonly]=\"readonly\" [tabindex]=\"tabIndex\"\n [(ngModel)]=\"value\" (focus)=\"_emitOnFocusEvent($event)\" (blur)=\"_emitOnBlurEvent($event)\" [attr.autocomplete]=\"autoComplete\">\n\n<ng-content select=\"ax-suffix\">\n\n</ng-content>\n<ng-content select=\"ax-validation-rule\">\n</ng-content>\n<button class=\"ax-general-button ax-button-icon\" (click)=\"toggleType()\" [tabIndex]=\"-1\" *ngIf=\"showToggleButton\">\n <span class=\"ax-icon {{_icon}}\"></span>\n</button>" }]
64
- }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { input: [{
62
+ 'id'
63
+ ], outputs: ['valueChange', 'stateChange', 'onValueChanged', 'onBlur', 'onFocus', 'readonlyChange', 'disabledChange'], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, host: { class: 'ax-editor-container' }, providers: [
64
+ { provide: AXComponent, useExisting: AXPasswordBoxComponent },
65
+ { provide: AXFocusableComponent, useExisting: AXPasswordBoxComponent },
66
+ { provide: AXClearableComponent, useExisting: AXPasswordBoxComponent },
67
+ {
68
+ provide: NG_VALUE_ACCESSOR,
69
+ useExisting: forwardRef(() => AXPasswordBoxComponent),
70
+ multi: true
71
+ }
72
+ ], template: "<ng-content select=\"ax-prefix\">\n</ng-content>\n<input #input class=\"ax-input\" [name]=\"name\" [type]=\"_type\" [id]=\"id\" [attr.placeholder]=\"placeholder\"\n [class.ax-state-disabled]=\"disabled\" [class.ax-state-readonly]=\"readonly\" [disabled]=\"disabled\"\n [readonly]=\"readonly\" [tabindex]=\"tabIndex\" [ngModel]=\"value\" [attr.autocomplete]=\"autoComplete\"\n (ngModelChange)=\"_handleModelChange($event)\" (keydown)=\"emitOnKeydownEvent($event)\"\n (keyup)=\"emitOnKeyupEvent($event)\" (keypress)=\"emitOnKeypressEvent($event)\" (focus)=\"emitOnFocusEvent($event)\"\n (blur)=\"emitOnBlurEvent($event)\">\n<ng-content select=\"ax-clear-button\"></ng-content>\n<button type=\"button\" class=\"ax-general-button ax-button-icon\" (click)=\"toggleType()\" [tabIndex]=\"-1\"\n *ngIf=\"showToggleButton\">\n <span class=\"ax-icon {{_icon}}\"></span>\n</button>\n<ng-content select=\"ax-suffix\">\n</ng-content>\n<ng-content select=\"ax-validation-rule\">\n</ng-content>" }]
73
+ }], propDecorators: { input: [{
65
74
  type: ViewChild,
66
75
  args: ['input']
76
+ }], autoComplete: [{
77
+ type: Input
67
78
  }], showToggleButton: [{
68
79
  type: Input
69
80
  }] } });
@@ -76,14 +87,14 @@ const MODULES = [
76
87
  AXDecoratorModule,
77
88
  ];
78
89
  class AXPasswordBoxModule {
79
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.6", ngImport: i0, type: AXPasswordBoxModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
80
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.1.6", ngImport: i0, type: AXPasswordBoxModule, declarations: [AXPasswordBoxComponent], imports: [CommonModule,
90
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: AXPasswordBoxModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
91
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.1.8", ngImport: i0, type: AXPasswordBoxModule, declarations: [AXPasswordBoxComponent], imports: [CommonModule,
81
92
  FormsModule,
82
93
  AXButtonModule,
83
94
  AXDecoratorModule], exports: [AXPasswordBoxComponent] }); }
84
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.1.6", ngImport: i0, type: AXPasswordBoxModule, imports: [MODULES] }); }
95
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: AXPasswordBoxModule, imports: [MODULES] }); }
85
96
  }
86
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.6", ngImport: i0, type: AXPasswordBoxModule, decorators: [{
97
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: AXPasswordBoxModule, decorators: [{
87
98
  type: NgModule,
88
99
  args: [{
89
100
  declarations: [...COMPONENT],