@acorex/components 7.2.8 → 7.3.1

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 (454) 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 +2 -1
  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 +34 -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 +3 -2
  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/custom-cdk-overlay.service.mjs +6 -6
  112. package/esm2022/common/lib/services/dom.service.mjs +16 -0
  113. package/esm2022/common/lib/services/hotkey.service.mjs +3 -3
  114. package/esm2022/common/lib/services/overlay.service.mjs +3 -3
  115. package/esm2022/context-menu/lib/context-menu.component.mjs +5 -5
  116. package/esm2022/context-menu/lib/context-menu.module.mjs +4 -4
  117. package/esm2022/data-pager/lib/data-pager-base.component.mjs +35 -21
  118. package/esm2022/data-pager/lib/data-pager-info.component.mjs +13 -26
  119. package/esm2022/data-pager/lib/data-pager-input-selector.component.mjs +27 -31
  120. package/esm2022/data-pager/lib/data-pager-next-buttons.components.mjs +19 -33
  121. package/esm2022/data-pager/lib/data-pager-numeric-selector.component.mjs +31 -38
  122. package/esm2022/data-pager/lib/data-pager-pagesize-dropdown.component.mjs +22 -31
  123. package/esm2022/data-pager/lib/data-pager-prev-buttons.component.mjs +19 -29
  124. package/esm2022/data-pager/lib/data-pager.component.mjs +66 -38
  125. package/esm2022/data-pager/lib/data-pager.module.mjs +8 -7
  126. package/esm2022/data-table/index.mjs +1 -2
  127. package/esm2022/data-table/lib/data-column.directive.mjs +7 -22
  128. package/esm2022/data-table/lib/data-table.component.mjs +30 -30
  129. package/esm2022/data-table/lib/data-table.module.mjs +6 -7
  130. package/esm2022/date-picker/lib/datepicker.component.mjs +19 -16
  131. package/esm2022/date-picker/lib/datepicker.module.mjs +6 -6
  132. package/esm2022/decorators/index.mjs +3 -13
  133. package/esm2022/decorators/lib/clear-button.component.mjs +58 -0
  134. package/esm2022/decorators/lib/close-button.component.mjs +16 -20
  135. package/esm2022/decorators/lib/decorators.module.mjs +13 -49
  136. package/esm2022/decorators/lib/generic-content.component.mjs +17 -0
  137. package/esm2022/decorators/lib/icon.component.mjs +8 -11
  138. package/esm2022/dialog/lib/dialog.class.mjs +1 -1
  139. package/esm2022/dialog/lib/dialog.component.mjs +41 -23
  140. package/esm2022/dialog/lib/dialog.module.mjs +10 -8
  141. package/esm2022/dialog/lib/dialog.service.mjs +41 -49
  142. package/esm2022/drawer/lib/drawer-container.component.mjs +9 -13
  143. package/esm2022/drawer/lib/drawer.component.mjs +22 -27
  144. package/esm2022/drawer/lib/drawer.module.mjs +4 -4
  145. package/esm2022/dropdown/lib/dropdown-panel.component.mjs +4 -4
  146. package/esm2022/dropdown/lib/dropdown.module.mjs +4 -4
  147. package/esm2022/form/lib/form-field.component.mjs +9 -12
  148. package/esm2022/form/lib/form.component.mjs +38 -42
  149. package/esm2022/form/lib/form.module.mjs +4 -4
  150. package/esm2022/form/lib/validation-rule.widget.mjs +24 -15
  151. package/esm2022/form/lib/validation-summary.component.mjs +15 -14
  152. package/esm2022/image/lib/image.component.mjs +13 -17
  153. package/esm2022/image/lib/image.module.mjs +4 -4
  154. package/esm2022/label/lib/label.component.mjs +18 -18
  155. package/esm2022/label/lib/label.module.mjs +4 -4
  156. package/esm2022/loading/index.mjs +2 -1
  157. package/esm2022/loading/lib/loading-spinner.component.mjs +4 -5
  158. package/esm2022/loading/lib/loading.component.mjs +22 -25
  159. package/esm2022/loading/lib/loading.config.mjs +17 -0
  160. package/esm2022/loading/lib/loading.directive.mjs +4 -4
  161. package/esm2022/loading/lib/loading.module.mjs +6 -17
  162. package/esm2022/loading/lib/loading.service.mjs +4 -36
  163. package/esm2022/menu/lib/menu.component.mjs +26 -19
  164. package/esm2022/menu/lib/menu.module.mjs +4 -4
  165. package/esm2022/mixin/lib/base-components.class.mjs +3 -3
  166. package/esm2022/mixin/lib/color-look-mixing.class.mjs +1 -1
  167. package/esm2022/notification/index.mjs +2 -1
  168. package/esm2022/notification/lib/notification.class.mjs +1 -1
  169. package/esm2022/notification/lib/notification.component.mjs +51 -35
  170. package/esm2022/notification/lib/notification.config.mjs +20 -0
  171. package/esm2022/notification/lib/notification.module.mjs +11 -7
  172. package/esm2022/notification/lib/notification.service.mjs +46 -59
  173. package/esm2022/number-box/lib/number-box.component.mjs +101 -90
  174. package/esm2022/number-box/lib/number-box.module.mjs +4 -4
  175. package/esm2022/otp/lib/otp.component.mjs +38 -48
  176. package/esm2022/otp/lib/otp.module.mjs +4 -4
  177. package/esm2022/page/lib/base-page.class.mjs +6 -6
  178. package/esm2022/page/lib/page.component.mjs +3 -3
  179. package/esm2022/page/lib/page.module.mjs +4 -4
  180. package/esm2022/password-box/lib/password-box.component.mjs +37 -25
  181. package/esm2022/password-box/lib/password-box.module.mjs +4 -4
  182. package/esm2022/popover/lib/dropdown-component.class.mjs +3 -3
  183. package/esm2022/popover/lib/popover.component.mjs +3 -3
  184. package/esm2022/popover/lib/popover.module.mjs +4 -4
  185. package/esm2022/popup/index.mjs +2 -1
  186. package/esm2022/popup/lib/popup.component.mjs +49 -69
  187. package/esm2022/popup/lib/popup.interface.mjs +2 -0
  188. package/esm2022/popup/lib/popup.module.mjs +27 -12
  189. package/esm2022/popup/lib/popup.service.mjs +31 -86
  190. package/esm2022/progress-bar/lib/progress-bar.component.mjs +3 -3
  191. package/esm2022/progress-bar/lib/progress-bar.module.mjs +4 -4
  192. package/esm2022/radio/lib/radio.component.mjs +4 -4
  193. package/esm2022/radio/lib/radio.module.mjs +4 -4
  194. package/esm2022/range-slider/lib/range-slider.component.mjs +3 -3
  195. package/esm2022/range-slider/lib/range-slider.module.mjs +4 -4
  196. package/esm2022/result/lib/result.component.mjs +3 -3
  197. package/esm2022/result/lib/result.module.mjs +4 -4
  198. package/esm2022/scheduler/acorex-components-scheduler.mjs +5 -0
  199. package/esm2022/scheduler/index.mjs +4 -0
  200. package/esm2022/scheduler/lib/scheduler-month-view.component.mjs +45 -0
  201. package/esm2022/scheduler/lib/scheduler.component.mjs +30 -0
  202. package/esm2022/scheduler/lib/scheduler.module.mjs +26 -0
  203. package/esm2022/search-box/lib/search-box.component.mjs +35 -44
  204. package/esm2022/search-box/lib/search-box.module.mjs +28 -7
  205. package/esm2022/select-box/lib/select-box.component.mjs +11 -9
  206. package/esm2022/select-box/lib/select-box.module.mjs +7 -7
  207. package/esm2022/selection-list/lib/selection-list.component.mjs +3 -3
  208. package/esm2022/selection-list/lib/selection-list.module.mjs +6 -6
  209. package/esm2022/switch/lib/switch-content.component.mjs +3 -3
  210. package/esm2022/switch/lib/switch.component.mjs +4 -4
  211. package/esm2022/switch/lib/switch.module.mjs +4 -4
  212. package/esm2022/tabs/lib/tab-content.directive.mjs +3 -3
  213. package/esm2022/tabs/lib/tab-item.component.mjs +3 -3
  214. package/esm2022/tabs/lib/tabs.component.mjs +3 -3
  215. package/esm2022/tabs/lib/tabs.module.mjs +4 -4
  216. package/esm2022/tag/lib/tag.component.mjs +3 -3
  217. package/esm2022/tag/lib/tag.module.mjs +4 -4
  218. package/esm2022/text-area/acorex-components-text-area.mjs +5 -0
  219. package/esm2022/text-area/index.mjs +3 -0
  220. package/esm2022/text-area/lib/text-area.component.mjs +36 -0
  221. package/esm2022/text-area/lib/text-area.module.mjs +19 -0
  222. package/esm2022/{checkbox/acorex-components-checkbox.mjs → text-box/acorex-components-text-box.mjs} +1 -1
  223. package/esm2022/text-box/index.mjs +4 -0
  224. package/esm2022/text-box/lib/mask-options.directive.mjs +17 -0
  225. package/esm2022/text-box/lib/text-box.component.mjs +111 -0
  226. package/esm2022/text-box/lib/text-box.module.mjs +38 -0
  227. package/esm2022/time-box/lib/time-box.component.mjs +5 -5
  228. package/esm2022/time-box/lib/time-box.module.mjs +4 -4
  229. package/esm2022/toast/index.mjs +2 -1
  230. package/esm2022/toast/lib/toast.class.mjs +1 -1
  231. package/esm2022/toast/lib/toast.component.mjs +37 -25
  232. package/esm2022/toast/lib/toast.config.mjs +19 -0
  233. package/esm2022/toast/lib/toast.module.mjs +12 -8
  234. package/esm2022/toast/lib/toast.service.mjs +46 -55
  235. package/esm2022/tooltip/lib/tooltip.component.mjs +3 -3
  236. package/esm2022/tooltip/lib/tooltip.directive.mjs +3 -3
  237. package/esm2022/tooltip/lib/tooltip.module.mjs +4 -4
  238. package/esm2022/uploader/lib/uploader.component.mjs +3 -3
  239. package/esm2022/uploader/lib/uploader.module.mjs +4 -4
  240. package/fesm2022/acorex-components-action-sheet.mjs +99 -125
  241. package/fesm2022/acorex-components-action-sheet.mjs.map +1 -1
  242. package/fesm2022/acorex-components-alert.mjs +16 -18
  243. package/fesm2022/acorex-components-alert.mjs.map +1 -1
  244. package/fesm2022/acorex-components-avatar.mjs +10 -10
  245. package/fesm2022/acorex-components-badge.mjs +8 -8
  246. package/fesm2022/acorex-components-badge.mjs.map +1 -1
  247. package/fesm2022/acorex-components-breadcrumbs.mjs +10 -10
  248. package/fesm2022/acorex-components-button.mjs +41 -24
  249. package/fesm2022/acorex-components-button.mjs.map +1 -1
  250. package/fesm2022/acorex-components-calendar.mjs +17 -15
  251. package/fesm2022/acorex-components-calendar.mjs.map +1 -1
  252. package/fesm2022/acorex-components-check-box.mjs +100 -0
  253. package/fesm2022/acorex-components-check-box.mjs.map +1 -0
  254. package/fesm2022/acorex-components-chips.mjs +7 -7
  255. package/fesm2022/acorex-components-collapse.mjs +10 -10
  256. package/fesm2022/acorex-components-color-palette.mjs +42 -36
  257. package/fesm2022/acorex-components-color-palette.mjs.map +1 -1
  258. package/fesm2022/acorex-components-color-picker.mjs +16 -10
  259. package/fesm2022/acorex-components-color-picker.mjs.map +1 -1
  260. package/fesm2022/acorex-components-common.mjs +169 -125
  261. package/fesm2022/acorex-components-common.mjs.map +1 -1
  262. package/fesm2022/acorex-components-context-menu.mjs +8 -8
  263. package/fesm2022/acorex-components-context-menu.mjs.map +1 -1
  264. package/fesm2022/acorex-components-data-pager.mjs +214 -228
  265. package/fesm2022/acorex-components-data-pager.mjs.map +1 -1
  266. package/fesm2022/acorex-components-data-table.mjs +41 -71
  267. package/fesm2022/acorex-components-data-table.mjs.map +1 -1
  268. package/fesm2022/acorex-components-date-picker.mjs +25 -22
  269. package/fesm2022/acorex-components-date-picker.mjs.map +1 -1
  270. package/fesm2022/acorex-components-decorators.mjs +80 -283
  271. package/fesm2022/acorex-components-decorators.mjs.map +1 -1
  272. package/fesm2022/acorex-components-dialog.mjs +97 -88
  273. package/fesm2022/acorex-components-dialog.mjs.map +1 -1
  274. package/fesm2022/acorex-components-drawer.mjs +30 -39
  275. package/fesm2022/acorex-components-drawer.mjs.map +1 -1
  276. package/fesm2022/acorex-components-dropdown.mjs +7 -7
  277. package/fesm2022/acorex-components-dropdown.mjs.map +1 -1
  278. package/fesm2022/acorex-components-form.mjs +80 -77
  279. package/fesm2022/acorex-components-form.mjs.map +1 -1
  280. package/fesm2022/acorex-components-image.mjs +15 -19
  281. package/fesm2022/acorex-components-image.mjs.map +1 -1
  282. package/fesm2022/acorex-components-label.mjs +21 -21
  283. package/fesm2022/acorex-components-label.mjs.map +1 -1
  284. package/fesm2022/acorex-components-loading.mjs +51 -83
  285. package/fesm2022/acorex-components-loading.mjs.map +1 -1
  286. package/fesm2022/acorex-components-menu.mjs +29 -22
  287. package/fesm2022/acorex-components-menu.mjs.map +1 -1
  288. package/fesm2022/acorex-components-mixin.mjs +3 -3
  289. package/fesm2022/acorex-components-mixin.mjs.map +1 -1
  290. package/fesm2022/acorex-components-notification.mjs +131 -107
  291. package/fesm2022/acorex-components-notification.mjs.map +1 -1
  292. package/fesm2022/acorex-components-number-box.mjs +106 -96
  293. package/fesm2022/acorex-components-number-box.mjs.map +1 -1
  294. package/fesm2022/acorex-components-otp.mjs +40 -50
  295. package/fesm2022/acorex-components-otp.mjs.map +1 -1
  296. package/fesm2022/acorex-components-page.mjs +12 -12
  297. package/fesm2022/acorex-components-page.mjs.map +1 -1
  298. package/fesm2022/acorex-components-password-box.mjs +41 -30
  299. package/fesm2022/acorex-components-password-box.mjs.map +1 -1
  300. package/fesm2022/acorex-components-popover.mjs +10 -10
  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 +7 -7
  304. package/fesm2022/acorex-components-radio.mjs +8 -8
  305. package/fesm2022/acorex-components-radio.mjs.map +1 -1
  306. package/fesm2022/acorex-components-range-slider.mjs +7 -7
  307. package/fesm2022/acorex-components-result.mjs +7 -7
  308. package/fesm2022/acorex-components-scheduler.mjs +98 -0
  309. package/fesm2022/acorex-components-scheduler.mjs.map +1 -0
  310. package/fesm2022/acorex-components-search-box.mjs +61 -49
  311. package/fesm2022/acorex-components-search-box.mjs.map +1 -1
  312. package/fesm2022/acorex-components-select-box.mjs +16 -14
  313. package/fesm2022/acorex-components-select-box.mjs.map +1 -1
  314. package/fesm2022/acorex-components-selection-list.mjs +8 -8
  315. package/fesm2022/acorex-components-selection-list.mjs.map +1 -1
  316. package/fesm2022/acorex-components-switch.mjs +11 -11
  317. package/fesm2022/acorex-components-tabs.mjs +13 -13
  318. package/fesm2022/acorex-components-tag.mjs +7 -7
  319. package/fesm2022/acorex-components-text-area.mjs +59 -0
  320. package/fesm2022/acorex-components-text-area.mjs.map +1 -0
  321. package/fesm2022/{acorex-components-textbox.mjs → acorex-components-text-box.mjs} +20 -20
  322. package/fesm2022/acorex-components-text-box.mjs.map +1 -0
  323. package/fesm2022/acorex-components-time-box.mjs +8 -8
  324. package/fesm2022/acorex-components-time-box.mjs.map +1 -1
  325. package/fesm2022/acorex-components-toast.mjs +116 -94
  326. package/fesm2022/acorex-components-toast.mjs.map +1 -1
  327. package/fesm2022/acorex-components-tooltip.mjs +10 -10
  328. package/fesm2022/acorex-components-uploader.mjs +7 -7
  329. package/form/lib/form-field.component.d.ts +2 -4
  330. package/form/lib/form.component.d.ts +12 -17
  331. package/form/lib/validation-rule.widget.d.ts +9 -6
  332. package/form/lib/validation-summary.component.d.ts +7 -9
  333. package/image/lib/image.component.d.ts +7 -13
  334. package/label/lib/label.component.d.ts +4 -7
  335. package/loading/index.d.ts +1 -0
  336. package/loading/lib/loading.component.d.ts +9 -12
  337. package/loading/lib/loading.config.d.ts +8 -0
  338. package/loading/lib/loading.directive.d.ts +5 -5
  339. package/loading/lib/loading.module.d.ts +0 -1
  340. package/loading/lib/loading.service.d.ts +0 -18
  341. package/menu/lib/menu.component.d.ts +4 -2
  342. package/mixin/lib/base-components.class.d.ts +2 -2
  343. package/mixin/lib/base-menu-mixin.class.d.ts +5 -5
  344. package/mixin/lib/button-mixin.class.d.ts +2 -2
  345. package/mixin/lib/clickable-mixin.class.d.ts +2 -2
  346. package/mixin/lib/color-look-mixing.class.d.ts +3 -3
  347. package/mixin/lib/datalist-component.class.d.ts +10 -10
  348. package/mixin/lib/dropdown-mixin.class.d.ts +2 -2
  349. package/mixin/lib/interactive-mixin.class.d.ts +4 -4
  350. package/mixin/lib/loading-mixin.class.d.ts +2 -2
  351. package/mixin/lib/mixin.class.d.ts +61 -61
  352. package/mixin/lib/page-component.class.d.ts +2 -2
  353. package/mixin/lib/selection-component.class.d.ts +2 -2
  354. package/mixin/lib/sizable-mixin.class.d.ts +2 -2
  355. package/mixin/lib/textbox-mixin.class.d.ts +2 -2
  356. package/mixin/lib/value-mixin.class.d.ts +8 -8
  357. package/notification/index.d.ts +1 -0
  358. package/notification/lib/notification.class.d.ts +29 -7
  359. package/notification/lib/notification.component.d.ts +13 -14
  360. package/notification/lib/notification.config.d.ts +13 -0
  361. package/notification/lib/notification.module.d.ts +4 -1
  362. package/notification/lib/notification.service.d.ts +5 -9
  363. package/number-box/lib/number-box.component.d.ts +12 -17
  364. package/otp/lib/otp.component.d.ts +7 -14
  365. package/package.json +46 -40
  366. package/page/lib/base-page.class.d.ts +2 -2
  367. package/password-box/lib/password-box.component.d.ts +8 -11
  368. package/popup/index.d.ts +1 -0
  369. package/popup/lib/popup.component.d.ts +14 -19
  370. package/popup/lib/popup.interface.d.ts +26 -0
  371. package/popup/lib/popup.module.d.ts +4 -4
  372. package/popup/lib/popup.service.d.ts +4 -25
  373. package/scheduler/README.md +3 -0
  374. package/scheduler/index.d.ts +3 -0
  375. package/scheduler/lib/scheduler-month-view.component.d.ts +20 -0
  376. package/scheduler/lib/scheduler.component.d.ts +11 -0
  377. package/scheduler/lib/scheduler.module.d.ts +13 -0
  378. package/search-box/lib/search-box.component.d.ts +8 -16
  379. package/search-box/lib/search-box.module.d.ts +7 -5
  380. package/select-box/lib/select-box.module.d.ts +2 -2
  381. package/selection-list/lib/selection-list.module.d.ts +1 -1
  382. package/tabs/lib/tab-item.component.d.ts +2 -2
  383. package/text-area/README.md +3 -0
  384. package/text-area/index.d.ts +2 -0
  385. package/text-area/lib/text-area.component.d.ts +11 -0
  386. package/text-area/lib/text-area.module.d.ts +9 -0
  387. package/text-box/README.md +3 -0
  388. package/text-box/index.d.ts +3 -0
  389. package/{textbox/lib/textbox.component.d.ts → text-box/lib/text-box.component.d.ts} +1 -3
  390. package/{textbox/lib/textbox.module.d.ts → text-box/lib/text-box.module.d.ts} +1 -1
  391. package/time-box/lib/time-box.component.d.ts +1 -1
  392. package/toast/index.d.ts +1 -0
  393. package/toast/lib/toast.class.d.ts +14 -5
  394. package/toast/lib/toast.component.d.ts +13 -12
  395. package/toast/lib/toast.config.d.ts +12 -0
  396. package/toast/lib/toast.module.d.ts +4 -1
  397. package/toast/lib/toast.service.d.ts +5 -9
  398. package/action-sheet/lib/action-sheet.interface.d.ts +0 -21
  399. package/checkbox/README.md +0 -3
  400. package/checkbox/index.d.ts +0 -2
  401. package/checkbox/lib/checkbox.component.d.ts +0 -18
  402. package/common/lib/directives/debounce-time.directive.d.ts +0 -17
  403. package/data-table/lib/data-column-cell-template.directive.d.ts +0 -8
  404. package/decorators/lib/content.component.d.ts +0 -9
  405. package/decorators/lib/divider.component.d.ts +0 -5
  406. package/decorators/lib/footer.component.d.ts +0 -9
  407. package/decorators/lib/form-hint.component.d.ts +0 -8
  408. package/decorators/lib/header.component.d.ts +0 -9
  409. package/decorators/lib/overlay.component.d.ts +0 -6
  410. package/decorators/lib/placeholder.component.d.ts +0 -5
  411. package/decorators/lib/prefix.component.d.ts +0 -9
  412. package/decorators/lib/sub-title.component.d.ts +0 -9
  413. package/decorators/lib/suffix.component.d.ts +0 -9
  414. package/decorators/lib/text.component.d.ts +0 -9
  415. package/decorators/lib/title.component.d.ts +0 -8
  416. package/esm2022/action-sheet/lib/action-sheet.interface.mjs +0 -2
  417. package/esm2022/checkbox/index.mjs +0 -3
  418. package/esm2022/checkbox/lib/checkbox.component.mjs +0 -65
  419. package/esm2022/checkbox/lib/checkbox.module.mjs +0 -21
  420. package/esm2022/common/lib/directives/debounce-time.directive.mjs +0 -48
  421. package/esm2022/data-table/lib/data-column-cell-template.directive.mjs +0 -17
  422. package/esm2022/decorators/lib/content.component.mjs +0 -26
  423. package/esm2022/decorators/lib/divider.component.mjs +0 -17
  424. package/esm2022/decorators/lib/footer.component.mjs +0 -26
  425. package/esm2022/decorators/lib/form-hint.component.mjs +0 -20
  426. package/esm2022/decorators/lib/header.component.mjs +0 -26
  427. package/esm2022/decorators/lib/overlay.component.mjs +0 -22
  428. package/esm2022/decorators/lib/placeholder.component.mjs +0 -14
  429. package/esm2022/decorators/lib/prefix.component.mjs +0 -26
  430. package/esm2022/decorators/lib/sub-title.component.mjs +0 -26
  431. package/esm2022/decorators/lib/suffix.component.mjs +0 -26
  432. package/esm2022/decorators/lib/text.component.mjs +0 -21
  433. package/esm2022/decorators/lib/title.component.mjs +0 -20
  434. package/esm2022/textarea/acorex-components-textarea.mjs +0 -5
  435. package/esm2022/textarea/index.mjs +0 -3
  436. package/esm2022/textarea/lib/textarea.component.mjs +0 -37
  437. package/esm2022/textarea/lib/textarea.module.mjs +0 -19
  438. package/esm2022/textbox/acorex-components-textbox.mjs +0 -5
  439. package/esm2022/textbox/index.mjs +0 -4
  440. package/esm2022/textbox/lib/mask-options.directive.mjs +0 -17
  441. package/esm2022/textbox/lib/textbox.component.mjs +0 -111
  442. package/esm2022/textbox/lib/textbox.module.mjs +0 -38
  443. package/fesm2022/acorex-components-checkbox.mjs +0 -89
  444. package/fesm2022/acorex-components-checkbox.mjs.map +0 -1
  445. package/fesm2022/acorex-components-textarea.mjs +0 -60
  446. package/fesm2022/acorex-components-textarea.mjs.map +0 -1
  447. package/fesm2022/acorex-components-textbox.mjs.map +0 -1
  448. package/textarea/README.md +0 -3
  449. package/textarea/index.d.ts +0 -2
  450. package/textarea/lib/textarea.component.d.ts +0 -14
  451. package/textarea/lib/textarea.module.d.ts +0 -9
  452. package/textbox/README.md +0 -3
  453. package/textbox/index.d.ts +0 -3
  454. /package/{textbox → text-box}/lib/mask-options.directive.d.ts +0 -0
@@ -1,14 +1,14 @@
1
- import { createMask } from 'imask';
1
+ import * as i0 from '@angular/core';
2
+ import { forwardRef, Component, ChangeDetectionStrategy, ViewEncapsulation, ViewChild, Input, NgModule } from '@angular/core';
2
3
  import * as i3 from 'angular-imask';
3
4
  import { IMaskDirective, IMaskModule } from 'angular-imask';
4
- import * as i0 from '@angular/core';
5
- import { Component, ChangeDetectionStrategy, ViewEncapsulation, ViewChild, Input, NgModule } from '@angular/core';
5
+ import { createMask } from 'imask';
6
+ import { MXInputBaseValueComponent, AXComponent, AXFocusableComponent, AXClearableComponent } from '@acorex/components/common';
7
+ import * as i2 from '@angular/forms';
8
+ import { NG_VALUE_ACCESSOR, FormsModule } from '@angular/forms';
6
9
  import { toNumber } from 'lodash-es';
7
- import { AXBaseTextBoxMixin } from '@acorex/components/mixin';
8
10
  import * as i1 from '@angular/common';
9
11
  import { CommonModule } from '@angular/common';
10
- import * as i2 from '@angular/forms';
11
- import { FormsModule } from '@angular/forms';
12
12
  import { AXButtonModule } from '@acorex/components/button';
13
13
  import { AXDecoratorModule } from '@acorex/components/decorators';
14
14
 
@@ -17,7 +17,26 @@ import { AXDecoratorModule } from '@acorex/components/decorators';
17
17
  *
18
18
  * @category Components
19
19
  */
20
- class AXNumberBoxComponent extends AXBaseTextBoxMixin {
20
+ class AXNumberBoxComponent extends MXInputBaseValueComponent {
21
+ constructor() {
22
+ super(...arguments);
23
+ this._padDecimalZeros = false;
24
+ /**
25
+ * Specifies the value that is used to increment or decrement the **Integer** part of number
26
+ */
27
+ this.step = 1;
28
+ this._decimals = 0;
29
+ /**
30
+ * Specifies the value that is used to increment or decrement the **Deciaml** part of number
31
+ */
32
+ this.decimalStep = 'auto';
33
+ /**
34
+ * Specifies whether the Up and Down spin buttons will be rendered or not
35
+ */
36
+ this.showSpinButtons = true;
37
+ this._minValue = Number.MIN_SAFE_INTEGER;
38
+ this._maxValue = Number.MAX_SAFE_INTEGER;
39
+ }
21
40
  /**
22
41
  * A character value that specifies the separator character.
23
42
  */
@@ -25,7 +44,7 @@ class AXNumberBoxComponent extends AXBaseTextBoxMixin {
25
44
  return this._thousandsSeparator;
26
45
  }
27
46
  set thousandsSeparator(v) {
28
- this._setOption({
47
+ this.setOption({
29
48
  name: 'thousandsSeparator',
30
49
  value: v ?? '',
31
50
  });
@@ -37,7 +56,7 @@ class AXNumberBoxComponent extends AXBaseTextBoxMixin {
37
56
  return this._padDecimalZeros;
38
57
  }
39
58
  set padDecimalZeros(v) {
40
- this._setOption({
59
+ this.setOption({
41
60
  name: 'padDecimalZeros',
42
61
  value: v,
43
62
  });
@@ -49,7 +68,7 @@ class AXNumberBoxComponent extends AXBaseTextBoxMixin {
49
68
  return this._decimals;
50
69
  }
51
70
  set decimals(v) {
52
- this._setOption({
71
+ this.setOption({
53
72
  name: 'decimals',
54
73
  value: v ?? 0,
55
74
  });
@@ -61,7 +80,7 @@ class AXNumberBoxComponent extends AXBaseTextBoxMixin {
61
80
  return this._minValue;
62
81
  }
63
82
  set minValue(v) {
64
- this._setOption({
83
+ this.setOption({
65
84
  name: 'minValue',
66
85
  value: v != null ? Number(v) : Number.MIN_SAFE_INTEGER,
67
86
  });
@@ -73,44 +92,28 @@ class AXNumberBoxComponent extends AXBaseTextBoxMixin {
73
92
  return this._maxValue;
74
93
  }
75
94
  set maxValue(v) {
76
- this._setOption({
95
+ this.setOption({
77
96
  name: 'maxValue',
78
97
  value: v != null ? Number(v) : Number.MAX_SAFE_INTEGER,
79
98
  });
80
99
  }
81
- /**
82
- * @ignore
83
- */
84
- constructor(elementRef, cdr) {
85
- super(elementRef, cdr);
86
- this.cdr = cdr;
87
- this._padDecimalZeros = false;
88
- /**
89
- * Specifies the value that is used to increment or decrement the **Integer** part of number
90
- */
91
- this.step = 1;
92
- this._decimals = 0;
93
- /**
94
- * Specifies the value that is used to increment or decrement the **Deciaml** part of number
95
- */
96
- this.decimalStep = 'auto';
97
- /**
98
- * Specifies whether the Up and Down spin buttons will be rendered or not
99
- */
100
- this.showSpinButtons = true;
101
- this._minValue = Number.MIN_SAFE_INTEGER;
102
- this._maxValue = Number.MAX_SAFE_INTEGER;
103
- }
104
- onViewInit() {
105
- super.onViewInit();
100
+ ngAfterViewInit() {
106
101
  this._updateMask();
107
102
  }
108
- _onOptionChanged(option) {
109
- super._onOptionChanged(option);
103
+ internalOptionChanged(option) {
110
104
  this._updateMask();
111
105
  }
112
- focus() {
113
- this.input.nativeElement.focus();
106
+ internalSetValue(value) {
107
+ // || (value == 0 && !this._maskObj.value)
108
+ if (value == null) {
109
+ return this.defaultValue;
110
+ }
111
+ const v = toNumber(value);
112
+ if (v < this.minValue)
113
+ return this.minValue;
114
+ if (v > this.maxValue)
115
+ return this.maxValue;
116
+ return v;
114
117
  }
115
118
  _updateMask() {
116
119
  if (!this._maskObj) {
@@ -123,6 +126,14 @@ class AXNumberBoxComponent extends AXBaseTextBoxMixin {
123
126
  radix: '.',
124
127
  padFractionalZeros: this.decimals > 0 && this.padDecimalZeros,
125
128
  });
129
+ this._maskObj.format = (v, m) => {
130
+ return !isNaN(v)
131
+ ? v.toLocaleString('en-US', {
132
+ useGrouping: false,
133
+ maximumFractionDigits: 20,
134
+ })
135
+ : '';
136
+ };
126
137
  }
127
138
  else {
128
139
  this._maskObj.updateOptions({
@@ -137,6 +148,9 @@ class AXNumberBoxComponent extends AXBaseTextBoxMixin {
137
148
  this._maskDirective?.maskRef?.updateValue();
138
149
  this._maskDirective?.maskRef?.updateControl();
139
150
  }
151
+ _handleModelChange(value) {
152
+ this.commitValue(value, true);
153
+ }
140
154
  _handleOnKeydownEvent(e) {
141
155
  if (this.disabled || this.readonly)
142
156
  return;
@@ -144,90 +158,86 @@ class AXNumberBoxComponent extends AXBaseTextBoxMixin {
144
158
  e.preventDefault();
145
159
  e.stopPropagation();
146
160
  };
147
- this._setUserInteraction();
148
161
  const input = e.target;
149
162
  const valStr = input.value;
150
163
  const decimalPointIndex = valStr.indexOf('.');
151
164
  const _cursorPos = input.selectionStart;
152
165
  if (e.key === 'ArrowUp' || e.key === 'ArrowDown') {
153
166
  if (decimalPointIndex > 0 && _cursorPos > decimalPointIndex && this.decimals > 0) {
154
- e.key === 'ArrowDown' ? this.decimalStepDown() : this.decimalStepUp();
167
+ e.key === 'ArrowDown' ? this.decimalStepDown(true) : this.decimalStepUp(true);
155
168
  }
156
169
  else {
157
- e.key === 'ArrowDown' ? this.stepDown() : this.stepUp();
170
+ e.key === 'ArrowDown' ? this.stepDown(true) : this.stepUp(true);
158
171
  }
159
172
  ignore();
160
173
  setTimeout(() => {
161
174
  input.setSelectionRange(_cursorPos, _cursorPos);
162
175
  }, 5);
163
176
  }
164
- super._emitOnKeydownEvent(e);
177
+ super.emitOnKeydownEvent(e);
165
178
  }
166
179
  _handleUpDownClick(v) {
167
180
  if (this.disabled || this.readonly)
168
181
  return;
169
- this._setUserInteraction();
170
- v == 1 ? this.stepUp() : this.stepDown();
171
- }
172
- _setValue(value) {
173
- if ((value == null || (value == 0 && !this._maskObj.value)) && this.allowNull) {
174
- return null;
175
- }
176
- const v = toNumber(value);
177
- if (v < this.minValue)
178
- return this.minValue;
179
- if (v > this.maxValue)
180
- return this.maxValue;
181
- return v;
182
+ v == 1 ? this.stepUp(true) : this.stepDown(true);
182
183
  }
183
- stepUp() {
184
+ stepUp(u = false) {
184
185
  if (!this.value) {
185
- this.value = Math.max(this.minValue, 0);
186
+ this.commitValue(Math.max(this.minValue, 0), u);
186
187
  }
187
- this.value += toNumber(this.step);
188
+ this.commitValue(this.value + toNumber(this.step), u);
188
189
  }
189
- stepDown() {
190
+ stepDown(u = false) {
190
191
  if (!this.value) {
191
- this.value = Math.max(this.minValue, 0);
192
+ this.commitValue(Math.max(this.minValue, 0), u);
192
193
  }
193
- this.value -= toNumber(this.step);
194
+ this.commitValue(this.value - toNumber(this.step), u);
194
195
  }
195
- decimalStepUp() {
196
+ decimalStepUp(u = false) {
196
197
  if (!this.value) {
197
- this.value = Math.max(this.minValue, 0);
198
+ this.commitValue(Math.max(this.minValue, 0), u);
198
199
  }
199
- this.value += toNumber(this.decimalStep == 'auto' ? 1 / Math.pow(10, this.decimals) : this.decimalStep);
200
+ this.commitValue(this.value + toNumber(this.decimalStep == 'auto' ? 1 / Math.pow(10, this.decimals) : this.decimalStep), u);
200
201
  }
201
- decimalStepDown() {
202
+ decimalStepDown(u = false) {
202
203
  if (!this.value) {
203
- this.value = Math.max(this.minValue, 0);
204
+ this.commitValue(Math.max(this.minValue, 0), u);
204
205
  }
205
- this.value -= toNumber(this.decimalStep == 'auto' ? 1 / Math.pow(10, this.decimals) : this.decimalStep);
206
+ this.commitValue(this.value - toNumber(this.decimalStep == 'auto' ? 1 / Math.pow(10, this.decimals) : this.decimalStep), u);
206
207
  }
207
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.6", ngImport: i0, type: AXNumberBoxComponent, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
208
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.6", type: AXNumberBoxComponent, selector: "ax-number-box", inputs: { disabled: "disabled", readonly: "readonly", tabIndex: "tabIndex", size: "size", value: "value", state: "state", placeholder: "placeholder", maxLength: "maxLength", allowNull: "allowNull", type: "type", autoComplete: "autoComplete", name: "name", checked: "checked", thousandsSeparator: "thousandsSeparator", padDecimalZeros: "padDecimalZeros", step: "step", decimals: "decimals", decimalStep: "decimalStep", showSpinButtons: "showSpinButtons", minValue: "minValue", maxValue: "maxValue" }, outputs: { valueChange: "valueChange", stateChange: "stateChange", onValueChanged: "onValueChanged", onBlur: "onBlur", onFocus: "onFocus" }, host: { classAttribute: "ax-editor-container" }, viewQueries: [{ propertyName: "input", first: true, predicate: ["input"], descendants: true }, { propertyName: "_maskDirective", first: true, predicate: IMaskDirective, descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-content select=\"ax-prefix\"> </ng-content>\n<input\n #input\n class=\"ax-input\"\n type=\"text\"\n [attr.placeholder]=\"placeholder\"\n [attr.autocomplete]=\"autoComplete\"\n [imask]=\"_maskObj\"\n [unmask]=\"'typed'\"\n [attr.min]=\"minValue\"\n [attr.max]=\"maxValue\"\n [class.ax-state-disabled]=\"disabled\"\n [class.ax-state-readonly]=\"readonly\"\n [disabled]=\"disabled\"\n [readonly]=\"readonly\"\n [tabindex]=\"tabIndex\"\n [(ngModel)]=\"value\"\n (keydown)=\"_handleOnKeydownEvent($event)\"\n (keyup)=\"_emitOnKeyupEvent($event)\"\n (keypress)=\"_emitOnKeypressEvent($event)\"\n (focus)=\"_emitOnFocusEvent($event)\"\n (blur)=\"_emitOnBlurEvent($event)\" />\n\n<div class=\"ax-number-box-control\" *ngIf=\"showSpinButtons\">\n <button class=\"ax-general-button ax-button-icon\" (click)=\"_handleUpDownClick(1)\" tabindex=\"-1\">\n <span class=\"ax-icon ax-icon-arrow-up\"></span>\n </button>\n <button class=\"ax-general-button ax-button-icon\" (click)=\"_handleUpDownClick(-1)\">\n <span class=\"ax-icon ax-icon-arrow-down\" tabindex=\"-1\"></span>\n </button>\n</div>\n\n<!-- <div class=\"ax-number-box-arrows\" *ngIf=\"showSpinButtons && !(disabled || readonly)\">\n <ax-button color=\"light\" look=\"blank\" (onClick)=\"_handleUpDownClick($event,1)\" [tabIndex]=\"-1\">\n <ax-prefix>\n <ax-icon class=\"ax-icon-arrow-fill ax-rotation-90\">\n </ax-icon>\n </ax-prefix>\n </ax-button>\n <ax-button color=\"light\" look=\"blank\" (onClick)=\"_handleUpDownClick($event,-1)\" [tabIndex]=\"-1\">\n <ax-prefix>\n <ax-icon class=\"ax-icon-arrow-fill -ax-rotation-90\">\n </ax-icon>\n </ax-prefix>\n </ax-button>\n</div> -->\n<ng-content select=\"ax-suffix\"> </ng-content>\n<ng-content select=\"ax-validation-rule\"> </ng-content>\n", styles: [".ax-number-box-control{display:flex;height:100%;align-items:center;justify-content:center;margin-inline-end:.25rem;flex-direction:column}.ax-number-box-control .ax-general-button{display:flex;width:1.25rem;height:1rem;border-radius:.2rem}\n"], 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"] }, { kind: "directive", type: i3.IMaskDirective, selector: "[imask]", inputs: ["imask", "unmask", "imaskElement"], outputs: ["accept", "complete"], exportAs: ["imask"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
208
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: AXNumberBoxComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
209
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.7", type: AXNumberBoxComponent, selector: "ax-number-box", inputs: { disabled: "disabled", readonly: "readonly", tabIndex: "tabIndex", placeholder: "placeholder", value: "value", state: "state", name: "name", id: "id", thousandsSeparator: "thousandsSeparator", padDecimalZeros: "padDecimalZeros", step: "step", decimals: "decimals", decimalStep: "decimalStep", showSpinButtons: "showSpinButtons", minValue: "minValue", maxValue: "maxValue" }, outputs: { valueChange: "valueChange", stateChange: "stateChange", onValueChanged: "onValueChanged", onBlur: "onBlur", onFocus: "onFocus", readonlyChange: "readonlyChange", disabledChange: "disabledChange" }, host: { classAttribute: "ax-editor-container" }, providers: [
210
+ { provide: AXComponent, useExisting: AXNumberBoxComponent },
211
+ { provide: AXFocusableComponent, useExisting: AXNumberBoxComponent },
212
+ { provide: AXClearableComponent, useExisting: AXNumberBoxComponent },
213
+ {
214
+ provide: NG_VALUE_ACCESSOR,
215
+ useExisting: forwardRef(() => AXNumberBoxComponent),
216
+ multi: true,
217
+ },
218
+ ], viewQueries: [{ propertyName: "input", first: true, predicate: ["input"], descendants: true }, { propertyName: "_maskDirective", first: true, predicate: IMaskDirective, descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-content select=\"ax-prefix\"> </ng-content>\n<input\n #input\n class=\"ax-input\"\n type=\"text\"\n [id]=\"id\"\n [name]=\"name\"\n [attr.placeholder]=\"placeholder\"\n [attr.autocomplete]=\"'off'\"\n [imask]=\"_maskObj\"\n [unmask]=\"'typed'\"\n [attr.min]=\"minValue\"\n [attr.max]=\"maxValue\"\n [class.ax-state-disabled]=\"disabled\"\n [class.ax-state-readonly]=\"readonly\"\n [disabled]=\"disabled\"\n [readonly]=\"readonly\"\n [tabindex]=\"tabIndex\"\n [ngModel]=\"value\"\n (ngModelChange)=\"_handleModelChange($event)\"\n (keydown)=\"_handleOnKeydownEvent($event)\"\n (keyup)=\"emitOnKeyupEvent($event)\"\n (keypress)=\"emitOnKeypressEvent($event)\"\n (focus)=\"emitOnFocusEvent($event)\"\n (blur)=\"emitOnBlurEvent($event)\"\n/>\n<ng-content select=\"ax-clear-button\"></ng-content>\n<div class=\"ax-number-box-control\" *ngIf=\"showSpinButtons\">\n <button\n type=\"button\"\n class=\"ax-general-button ax-button-icon ax-number-box-increment\"\n [class.ax-state-disabled]=\"disabled\"\n (click)=\"_handleUpDownClick(1)\"\n tabindex=\"-1\"\n [disabled]=\"disabled\"\n >\n <span class=\"ax-icon ax-icon-arrow-up\"></span>\n </button>\n <button\n type=\"button\"\n class=\"ax-general-button ax-button-icon ax-number-box-decrement\"\n [class.ax-state-disabled]=\"disabled\"\n (click)=\"_handleUpDownClick(-1)\"\n [disabled]=\"disabled\"\n >\n <span class=\"ax-icon ax-icon-arrow-down\" tabindex=\"-1\"></span>\n </button>\n</div>\n<ng-content select=\"ax-suffix\"> </ng-content>\n<ng-content select=\"ax-validation-rule\"> </ng-content>\n", styles: [".ax-number-box-control{display:flex;height:100%;align-items:center;justify-content:center;margin-inline-end:.25rem;flex-direction:column}.ax-number-box-control .ax-general-button{display:flex;width:1.25rem;height:1rem;border-radius:.2rem}.ax-number-box-control .ax-general-button.ax-number-box-increment i:hover,.ax-number-box-control .ax-general-button.ax-number-box-decrement i:hover{align-items:center}.ax-number-box-control .ax-general-button.ax-number-box-increment{align-items:flex-start}.ax-number-box-control .ax-general-button.ax-number-box-decrement{align-items:flex-end}\n"], 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"] }, { kind: "directive", type: i3.IMaskDirective, selector: "[imask]", inputs: ["imask", "unmask", "imaskElement"], outputs: ["accept", "complete"], exportAs: ["imask"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
209
219
  }
210
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.6", ngImport: i0, type: AXNumberBoxComponent, decorators: [{
220
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: AXNumberBoxComponent, decorators: [{
211
221
  type: Component,
212
- args: [{ selector: 'ax-number-box', inputs: [
213
- 'disabled',
214
- 'readonly',
215
- 'tabIndex',
216
- 'size',
217
- 'value',
218
- 'state',
219
- 'placeholder',
220
- 'maxLength',
221
- 'allowNull',
222
- 'type',
223
- 'autoComplete',
224
- 'readonly',
225
- 'allowNull',
226
- 'value',
227
- 'name',
228
- 'checked',
229
- ], outputs: ['valueChange', 'stateChange', 'onValueChanged', 'onBlur', 'onFocus'], changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, host: { class: 'ax-editor-container' }, template: "<ng-content select=\"ax-prefix\"> </ng-content>\n<input\n #input\n class=\"ax-input\"\n type=\"text\"\n [attr.placeholder]=\"placeholder\"\n [attr.autocomplete]=\"autoComplete\"\n [imask]=\"_maskObj\"\n [unmask]=\"'typed'\"\n [attr.min]=\"minValue\"\n [attr.max]=\"maxValue\"\n [class.ax-state-disabled]=\"disabled\"\n [class.ax-state-readonly]=\"readonly\"\n [disabled]=\"disabled\"\n [readonly]=\"readonly\"\n [tabindex]=\"tabIndex\"\n [(ngModel)]=\"value\"\n (keydown)=\"_handleOnKeydownEvent($event)\"\n (keyup)=\"_emitOnKeyupEvent($event)\"\n (keypress)=\"_emitOnKeypressEvent($event)\"\n (focus)=\"_emitOnFocusEvent($event)\"\n (blur)=\"_emitOnBlurEvent($event)\" />\n\n<div class=\"ax-number-box-control\" *ngIf=\"showSpinButtons\">\n <button class=\"ax-general-button ax-button-icon\" (click)=\"_handleUpDownClick(1)\" tabindex=\"-1\">\n <span class=\"ax-icon ax-icon-arrow-up\"></span>\n </button>\n <button class=\"ax-general-button ax-button-icon\" (click)=\"_handleUpDownClick(-1)\">\n <span class=\"ax-icon ax-icon-arrow-down\" tabindex=\"-1\"></span>\n </button>\n</div>\n\n<!-- <div class=\"ax-number-box-arrows\" *ngIf=\"showSpinButtons && !(disabled || readonly)\">\n <ax-button color=\"light\" look=\"blank\" (onClick)=\"_handleUpDownClick($event,1)\" [tabIndex]=\"-1\">\n <ax-prefix>\n <ax-icon class=\"ax-icon-arrow-fill ax-rotation-90\">\n </ax-icon>\n </ax-prefix>\n </ax-button>\n <ax-button color=\"light\" look=\"blank\" (onClick)=\"_handleUpDownClick($event,-1)\" [tabIndex]=\"-1\">\n <ax-prefix>\n <ax-icon class=\"ax-icon-arrow-fill -ax-rotation-90\">\n </ax-icon>\n </ax-prefix>\n </ax-button>\n</div> -->\n<ng-content select=\"ax-suffix\"> </ng-content>\n<ng-content select=\"ax-validation-rule\"> </ng-content>\n", styles: [".ax-number-box-control{display:flex;height:100%;align-items:center;justify-content:center;margin-inline-end:.25rem;flex-direction:column}.ax-number-box-control .ax-general-button{display:flex;width:1.25rem;height:1rem;border-radius:.2rem}\n"] }]
230
- }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { input: [{
222
+ args: [{ selector: 'ax-number-box', inputs: ['disabled', 'readonly', 'tabIndex', 'placeholder', 'value', 'state', 'name', 'id'], outputs: [
223
+ 'valueChange',
224
+ 'stateChange',
225
+ 'onValueChanged',
226
+ 'onBlur',
227
+ 'onFocus',
228
+ 'readonlyChange',
229
+ 'disabledChange',
230
+ ], changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, host: { class: 'ax-editor-container' }, providers: [
231
+ { provide: AXComponent, useExisting: AXNumberBoxComponent },
232
+ { provide: AXFocusableComponent, useExisting: AXNumberBoxComponent },
233
+ { provide: AXClearableComponent, useExisting: AXNumberBoxComponent },
234
+ {
235
+ provide: NG_VALUE_ACCESSOR,
236
+ useExisting: forwardRef(() => AXNumberBoxComponent),
237
+ multi: true,
238
+ },
239
+ ], template: "<ng-content select=\"ax-prefix\"> </ng-content>\n<input\n #input\n class=\"ax-input\"\n type=\"text\"\n [id]=\"id\"\n [name]=\"name\"\n [attr.placeholder]=\"placeholder\"\n [attr.autocomplete]=\"'off'\"\n [imask]=\"_maskObj\"\n [unmask]=\"'typed'\"\n [attr.min]=\"minValue\"\n [attr.max]=\"maxValue\"\n [class.ax-state-disabled]=\"disabled\"\n [class.ax-state-readonly]=\"readonly\"\n [disabled]=\"disabled\"\n [readonly]=\"readonly\"\n [tabindex]=\"tabIndex\"\n [ngModel]=\"value\"\n (ngModelChange)=\"_handleModelChange($event)\"\n (keydown)=\"_handleOnKeydownEvent($event)\"\n (keyup)=\"emitOnKeyupEvent($event)\"\n (keypress)=\"emitOnKeypressEvent($event)\"\n (focus)=\"emitOnFocusEvent($event)\"\n (blur)=\"emitOnBlurEvent($event)\"\n/>\n<ng-content select=\"ax-clear-button\"></ng-content>\n<div class=\"ax-number-box-control\" *ngIf=\"showSpinButtons\">\n <button\n type=\"button\"\n class=\"ax-general-button ax-button-icon ax-number-box-increment\"\n [class.ax-state-disabled]=\"disabled\"\n (click)=\"_handleUpDownClick(1)\"\n tabindex=\"-1\"\n [disabled]=\"disabled\"\n >\n <span class=\"ax-icon ax-icon-arrow-up\"></span>\n </button>\n <button\n type=\"button\"\n class=\"ax-general-button ax-button-icon ax-number-box-decrement\"\n [class.ax-state-disabled]=\"disabled\"\n (click)=\"_handleUpDownClick(-1)\"\n [disabled]=\"disabled\"\n >\n <span class=\"ax-icon ax-icon-arrow-down\" tabindex=\"-1\"></span>\n </button>\n</div>\n<ng-content select=\"ax-suffix\"> </ng-content>\n<ng-content select=\"ax-validation-rule\"> </ng-content>\n", styles: [".ax-number-box-control{display:flex;height:100%;align-items:center;justify-content:center;margin-inline-end:.25rem;flex-direction:column}.ax-number-box-control .ax-general-button{display:flex;width:1.25rem;height:1rem;border-radius:.2rem}.ax-number-box-control .ax-general-button.ax-number-box-increment i:hover,.ax-number-box-control .ax-general-button.ax-number-box-decrement i:hover{align-items:center}.ax-number-box-control .ax-general-button.ax-number-box-increment{align-items:flex-start}.ax-number-box-control .ax-general-button.ax-number-box-decrement{align-items:flex-end}\n"] }]
240
+ }], propDecorators: { input: [{
231
241
  type: ViewChild,
232
242
  args: ['input']
233
243
  }], thousandsSeparator: [{
@@ -260,15 +270,15 @@ const MODULES = [
260
270
  IMaskModule
261
271
  ];
262
272
  class AXNumberBoxModule {
263
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.6", ngImport: i0, type: AXNumberBoxModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
264
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.1.6", ngImport: i0, type: AXNumberBoxModule, declarations: [AXNumberBoxComponent], imports: [CommonModule,
273
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: AXNumberBoxModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
274
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.1.7", ngImport: i0, type: AXNumberBoxModule, declarations: [AXNumberBoxComponent], imports: [CommonModule,
265
275
  FormsModule,
266
276
  AXButtonModule,
267
277
  AXDecoratorModule,
268
278
  IMaskModule], exports: [AXNumberBoxComponent] }); }
269
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.1.6", ngImport: i0, type: AXNumberBoxModule, imports: [MODULES] }); }
279
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: AXNumberBoxModule, imports: [MODULES] }); }
270
280
  }
271
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.6", ngImport: i0, type: AXNumberBoxModule, decorators: [{
281
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: AXNumberBoxModule, decorators: [{
272
282
  type: NgModule,
273
283
  args: [{
274
284
  declarations: [...COMPONENT],
@@ -1 +1 @@
1
- {"version":3,"file":"acorex-components-number-box.mjs","sources":["../../../../libs/components/number-box/src/lib/number-box.component.ts","../../../../libs/components/number-box/src/lib/number-box.component.html","../../../../libs/components/number-box/src/lib/number-box.module.ts","../../../../libs/components/number-box/src/acorex-components-number-box.ts"],"sourcesContent":["import { MaskedNumber, createMask } from 'imask';\nimport { IMaskDirective } from 'angular-imask';\nimport {\n Component,\n ViewEncapsulation,\n ChangeDetectionStrategy,\n ElementRef,\n ChangeDetectorRef,\n Input,\n ViewChild,\n} from '@angular/core';\n\nimport { toNumber } from 'lodash-es';\nimport { AXBaseTextBoxMixin, AXComponentOptionChanged } from '@acorex/components/mixin';\n\n/**\n * The NumberBox is a component which detects user interaction and triggers a corresponding event\n *\n * @category Components\n */\n@Component({\n selector: 'ax-number-box',\n templateUrl: './number-box.component.html',\n styleUrls: ['./number-box.component.scss'],\n inputs: [\n 'disabled',\n 'readonly',\n 'tabIndex',\n 'size',\n 'value',\n 'state',\n 'placeholder',\n 'maxLength',\n 'allowNull',\n 'type',\n 'autoComplete',\n 'readonly',\n 'allowNull',\n 'value',\n 'name',\n 'checked',\n ],\n outputs: ['valueChange', 'stateChange', 'onValueChanged', 'onBlur', 'onFocus'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: { class: 'ax-editor-container' },\n})\nexport class AXNumberBoxComponent extends AXBaseTextBoxMixin {\n @ViewChild('input') input: ElementRef<HTMLInputElement>;\n\n private _thousandsSeparator: string;\n /**\n * A character value that specifies the separator character.\n */\n @Input()\n public get thousandsSeparator(): string {\n return this._thousandsSeparator;\n }\n public set thousandsSeparator(v: string) {\n this._setOption({\n name: 'thousandsSeparator',\n value: v ?? '',\n });\n }\n\n private _padDecimalZeros: boolean = false;\n /**\n * A character value that specifies the separator character.\n */\n @Input()\n public get padDecimalZeros(): boolean {\n return this._padDecimalZeros;\n }\n public set padDecimalZeros(v: boolean) {\n this._setOption({\n name: 'padDecimalZeros',\n value: v,\n });\n }\n\n /**\n * Specifies the value that is used to increment or decrement the **Integer** part of number\n */\n @Input()\n step: number = 1;\n\n private _decimals: number = 0;\n /**\n * Specifies the number of decimals that the user can enter\n */\n @Input()\n public get decimals(): number {\n return this._decimals;\n }\n public set decimals(v: number) {\n this._setOption({\n name: 'decimals',\n value: v ?? 0,\n });\n }\n\n /**\n * Specifies the value that is used to increment or decrement the **Deciaml** part of number\n */\n @Input()\n decimalStep: number | 'auto' = 'auto';\n\n /**\n * Specifies whether the Up and Down spin buttons will be rendered or not\n */\n @Input()\n showSpinButtons: boolean = true;\n\n private _minValue: number = Number.MIN_SAFE_INTEGER;\n /**\n * Specifies the smallest value that is valid\n */\n @Input()\n public get minValue(): number {\n return this._minValue;\n }\n public set minValue(v: number) {\n this._setOption({\n name: 'minValue',\n value: v != null ? Number(v) : Number.MIN_SAFE_INTEGER,\n });\n }\n\n private _maxValue: number = Number.MAX_SAFE_INTEGER;\n /**\n * Specifies the greatest value that is valid\n */\n @Input()\n public get maxValue(): number {\n return this._maxValue;\n }\n public set maxValue(v: number) {\n this._setOption({\n name: 'maxValue',\n value: v != null ? Number(v) : Number.MAX_SAFE_INTEGER,\n });\n }\n\n /**\n * @ignore\n */\n _maskObj: MaskedNumber;\n\n @ViewChild(IMaskDirective)\n private _maskDirective: IMaskDirective<MaskedNumber>;\n\n /**\n * @ignore\n */\n constructor(elementRef: ElementRef, private cdr: ChangeDetectorRef) {\n super(elementRef, cdr);\n }\n\n override onViewInit(): void {\n super.onViewInit();\n this._updateMask();\n }\n\n override _onOptionChanged(option: AXComponentOptionChanged): void {\n super._onOptionChanged(option);\n this._updateMask();\n }\n\n override focus(): void {\n this.input.nativeElement.focus();\n }\n\n private _updateMask() {\n if (!this._maskObj) {\n this._maskObj = createMask({\n mask: Number,\n min: this.minValue,\n max: this.maxValue,\n thousandsSeparator: this.thousandsSeparator || '',\n scale: this.decimals,\n radix: '.',\n padFractionalZeros: this.decimals > 0 && this.padDecimalZeros,\n });\n } else {\n this._maskObj.updateOptions({\n min: this.minValue,\n max: this.maxValue,\n thousandsSeparator: this.thousandsSeparator || '',\n scale: this.decimals,\n radix: '.',\n padFractionalZeros: this.decimals > 0 && this.padDecimalZeros,\n });\n }\n this._maskDirective?.maskRef?.updateValue();\n this._maskDirective?.maskRef?.updateControl();\n }\n\n _handleOnKeydownEvent(e: KeyboardEvent) {\n if (this.disabled || this.readonly) return;\n const ignore = () => {\n e.preventDefault();\n e.stopPropagation();\n };\n this._setUserInteraction();\n const input = e.target as HTMLInputElement;\n const valStr = input.value;\n const decimalPointIndex = valStr.indexOf('.');\n const _cursorPos = input.selectionStart!;\n\n if (e.key === 'ArrowUp' || e.key === 'ArrowDown') {\n if (decimalPointIndex > 0 && _cursorPos > decimalPointIndex && this.decimals > 0) {\n e.key === 'ArrowDown' ? this.decimalStepDown() : this.decimalStepUp();\n } else {\n e.key === 'ArrowDown' ? this.stepDown() : this.stepUp();\n }\n ignore();\n setTimeout(() => {\n input.setSelectionRange(_cursorPos, _cursorPos);\n }, 5);\n }\n super._emitOnKeydownEvent(e);\n }\n\n _handleUpDownClick(v: -1 | 1) {\n if (this.disabled || this.readonly) return;\n this._setUserInteraction();\n v == 1 ? this.stepUp() : this.stepDown();\n }\n\n override _setValue(value: any) {\n if ((value == null || (value == 0 && !this._maskObj.value)) && this.allowNull) {\n return null;\n }\n const v = toNumber(value);\n if (v < this.minValue) return this.minValue;\n if (v > this.maxValue) return this.maxValue;\n return v;\n }\n\n stepUp() {\n if (!this.value) {\n this.value = Math.max(this.minValue, 0);\n }\n this.value += toNumber(this.step);\n }\n\n stepDown() {\n if (!this.value) {\n this.value = Math.max(this.minValue, 0);\n }\n this.value -= toNumber(this.step);\n }\n\n decimalStepUp() {\n if (!this.value) {\n this.value = Math.max(this.minValue, 0);\n }\n this.value += toNumber(\n this.decimalStep == 'auto' ? 1 / Math.pow(10, this.decimals) : this.decimalStep\n );\n }\n\n decimalStepDown() {\n if (!this.value) {\n this.value = Math.max(this.minValue, 0);\n }\n this.value -= toNumber(\n this.decimalStep == 'auto' ? 1 / Math.pow(10, this.decimals) : this.decimalStep\n );\n }\n}\n","<ng-content select=\"ax-prefix\"> </ng-content>\n<input\n #input\n class=\"ax-input\"\n type=\"text\"\n [attr.placeholder]=\"placeholder\"\n [attr.autocomplete]=\"autoComplete\"\n [imask]=\"_maskObj\"\n [unmask]=\"'typed'\"\n [attr.min]=\"minValue\"\n [attr.max]=\"maxValue\"\n [class.ax-state-disabled]=\"disabled\"\n [class.ax-state-readonly]=\"readonly\"\n [disabled]=\"disabled\"\n [readonly]=\"readonly\"\n [tabindex]=\"tabIndex\"\n [(ngModel)]=\"value\"\n (keydown)=\"_handleOnKeydownEvent($event)\"\n (keyup)=\"_emitOnKeyupEvent($event)\"\n (keypress)=\"_emitOnKeypressEvent($event)\"\n (focus)=\"_emitOnFocusEvent($event)\"\n (blur)=\"_emitOnBlurEvent($event)\" />\n\n<div class=\"ax-number-box-control\" *ngIf=\"showSpinButtons\">\n <button class=\"ax-general-button ax-button-icon\" (click)=\"_handleUpDownClick(1)\" tabindex=\"-1\">\n <span class=\"ax-icon ax-icon-arrow-up\"></span>\n </button>\n <button class=\"ax-general-button ax-button-icon\" (click)=\"_handleUpDownClick(-1)\">\n <span class=\"ax-icon ax-icon-arrow-down\" tabindex=\"-1\"></span>\n </button>\n</div>\n\n<!-- <div class=\"ax-number-box-arrows\" *ngIf=\"showSpinButtons && !(disabled || readonly)\">\n <ax-button color=\"light\" look=\"blank\" (onClick)=\"_handleUpDownClick($event,1)\" [tabIndex]=\"-1\">\n <ax-prefix>\n <ax-icon class=\"ax-icon-arrow-fill ax-rotation-90\">\n </ax-icon>\n </ax-prefix>\n </ax-button>\n <ax-button color=\"light\" look=\"blank\" (onClick)=\"_handleUpDownClick($event,-1)\" [tabIndex]=\"-1\">\n <ax-prefix>\n <ax-icon class=\"ax-icon-arrow-fill -ax-rotation-90\">\n </ax-icon>\n </ax-prefix>\n </ax-button>\n</div> -->\n<ng-content select=\"ax-suffix\"> </ng-content>\n<ng-content select=\"ax-validation-rule\"> </ng-content>\n","import { NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { CommonModule } from '@angular/common';\nimport {IMaskModule} from 'angular-imask';\nimport { AXButtonModule } from '@acorex/components/button';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXNumberBoxComponent } from './number-box.component';\n\nconst COMPONENT = [AXNumberBoxComponent];\nconst MODULES = [\n CommonModule,\n FormsModule,\n AXButtonModule,\n AXDecoratorModule,\n IMaskModule\n];\n\n@NgModule({\n declarations: [...COMPONENT],\n imports: [...MODULES],\n exports: [...COMPONENT],\n providers: [],\n})\nexport class AXNumberBoxModule { }\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-number-box.mjs","sources":["../../../../libs/components/number-box/src/lib/number-box.component.ts","../../../../libs/components/number-box/src/lib/number-box.component.html","../../../../libs/components/number-box/src/lib/number-box.module.ts","../../../../libs/components/number-box/src/acorex-components-number-box.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n Input,\n ViewChild,\n ViewEncapsulation,\n forwardRef,\n} from '@angular/core';\nimport { IMaskDirective } from 'angular-imask';\nimport { MaskedNumber, createMask } from 'imask';\n\nimport {\n AXClearableComponent,\n AXComponent,\n AXFocusableComponent,\n MXComponentOptionChanged,\n MXInputBaseValueComponent,\n} from '@acorex/components/common';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { toNumber } from 'lodash-es';\n\n/**\n * The NumberBox is a component which detects user interaction and triggers a corresponding event\n *\n * @category Components\n */\n@Component({\n selector: 'ax-number-box',\n templateUrl: './number-box.component.html',\n styleUrls: ['./number-box.component.scss'],\n inputs: ['disabled', 'readonly', 'tabIndex', 'placeholder', 'value', 'state', 'name', 'id'],\n outputs: [\n 'valueChange',\n 'stateChange',\n 'onValueChanged',\n 'onBlur',\n 'onFocus',\n 'readonlyChange',\n 'disabledChange',\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: { class: 'ax-editor-container' },\n providers: [\n { provide: AXComponent, useExisting: AXNumberBoxComponent },\n { provide: AXFocusableComponent, useExisting: AXNumberBoxComponent },\n { provide: AXClearableComponent, useExisting: AXNumberBoxComponent },\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => AXNumberBoxComponent),\n multi: true,\n },\n ],\n})\nexport class AXNumberBoxComponent extends MXInputBaseValueComponent<number> {\n @ViewChild('input') input: ElementRef<HTMLInputElement>;\n\n private _thousandsSeparator: string;\n /**\n * A character value that specifies the separator character.\n */\n @Input()\n public get thousandsSeparator(): string {\n return this._thousandsSeparator;\n }\n public set thousandsSeparator(v: string) {\n this.setOption({\n name: 'thousandsSeparator',\n value: v ?? '',\n });\n }\n\n private _padDecimalZeros: boolean = false;\n /**\n * A character value that specifies the separator character.\n */\n @Input()\n public get padDecimalZeros(): boolean {\n return this._padDecimalZeros;\n }\n public set padDecimalZeros(v: boolean) {\n this.setOption({\n name: 'padDecimalZeros',\n value: v,\n });\n }\n\n /**\n * Specifies the value that is used to increment or decrement the **Integer** part of number\n */\n @Input()\n step: number = 1;\n\n private _decimals: number = 0;\n /**\n * Specifies the number of decimals that the user can enter\n */\n @Input()\n public get decimals(): number {\n return this._decimals;\n }\n public set decimals(v: number) {\n this.setOption({\n name: 'decimals',\n value: v ?? 0,\n });\n }\n\n /**\n * Specifies the value that is used to increment or decrement the **Deciaml** part of number\n */\n @Input()\n decimalStep: number | 'auto' = 'auto';\n\n /**\n * Specifies whether the Up and Down spin buttons will be rendered or not\n */\n @Input()\n showSpinButtons: boolean = true;\n\n private _minValue: number = Number.MIN_SAFE_INTEGER;\n /**\n * Specifies the smallest value that is valid\n */\n @Input()\n public get minValue(): number {\n return this._minValue;\n }\n public set minValue(v: number) {\n this.setOption({\n name: 'minValue',\n value: v != null ? Number(v) : Number.MIN_SAFE_INTEGER,\n });\n }\n\n private _maxValue: number = Number.MAX_SAFE_INTEGER;\n /**\n * Specifies the greatest value that is valid\n */\n @Input()\n public get maxValue(): number {\n return this._maxValue;\n }\n public set maxValue(v: number) {\n this.setOption({\n name: 'maxValue',\n value: v != null ? Number(v) : Number.MAX_SAFE_INTEGER,\n });\n }\n\n /**\n * @ignore\n */\n _maskObj: MaskedNumber;\n\n @ViewChild(IMaskDirective)\n private _maskDirective: IMaskDirective<MaskedNumber>;\n\n override ngAfterViewInit(): void {\n this._updateMask();\n }\n\n override internalOptionChanged(option: MXComponentOptionChanged): void {\n this._updateMask();\n }\n\n override internalSetValue(value: any): number {\n // || (value == 0 && !this._maskObj.value)\n if (value == null) {\n return this.defaultValue;\n }\n const v = toNumber(value);\n if (v < this.minValue) return this.minValue;\n if (v > this.maxValue) return this.maxValue;\n return v;\n }\n\n private _updateMask() {\n if (!this._maskObj) {\n this._maskObj = createMask({\n mask: Number,\n min: this.minValue,\n max: this.maxValue,\n thousandsSeparator: this.thousandsSeparator || '',\n scale: this.decimals,\n radix: '.',\n padFractionalZeros: this.decimals > 0 && this.padDecimalZeros,\n });\n\n this._maskObj.format = (v: number, m) => {\n return !isNaN(v)\n ? v.toLocaleString('en-US', {\n useGrouping: false,\n maximumFractionDigits: 20,\n })\n : '';\n };\n } else {\n this._maskObj.updateOptions({\n min: this.minValue,\n max: this.maxValue,\n thousandsSeparator: this.thousandsSeparator || '',\n scale: this.decimals,\n radix: '.',\n padFractionalZeros: this.decimals > 0 && this.padDecimalZeros,\n });\n }\n this._maskDirective?.maskRef?.updateValue();\n this._maskDirective?.maskRef?.updateControl();\n }\n\n _handleModelChange(value: number) {\n this.commitValue(value, true);\n }\n\n _handleOnKeydownEvent(e: KeyboardEvent) {\n if (this.disabled || this.readonly) return;\n const ignore = () => {\n e.preventDefault();\n e.stopPropagation();\n };\n const input = e.target as HTMLInputElement;\n const valStr = input.value;\n const decimalPointIndex = valStr.indexOf('.');\n const _cursorPos = input.selectionStart!;\n\n if (e.key === 'ArrowUp' || e.key === 'ArrowDown') {\n if (decimalPointIndex > 0 && _cursorPos > decimalPointIndex && this.decimals > 0) {\n e.key === 'ArrowDown' ? this.decimalStepDown(true) : this.decimalStepUp(true);\n } else {\n e.key === 'ArrowDown' ? this.stepDown(true) : this.stepUp(true);\n }\n ignore();\n setTimeout(() => {\n input.setSelectionRange(_cursorPos, _cursorPos);\n }, 5);\n }\n super.emitOnKeydownEvent(e);\n }\n\n _handleUpDownClick(v: -1 | 1) {\n if (this.disabled || this.readonly) return;\n v == 1 ? this.stepUp(true) : this.stepDown(true);\n }\n\n stepUp(u: boolean = false) {\n if (!this.value) {\n this.commitValue(Math.max(this.minValue, 0), u);\n }\n this.commitValue(this.value + toNumber(this.step), u);\n }\n\n stepDown(u: boolean = false) {\n if (!this.value) {\n this.commitValue(Math.max(this.minValue, 0), u);\n }\n this.commitValue(this.value - toNumber(this.step), u);\n }\n\n decimalStepUp(u: boolean = false) {\n if (!this.value) {\n this.commitValue(Math.max(this.minValue, 0), u);\n }\n this.commitValue(\n this.value + toNumber(this.decimalStep == 'auto' ? 1 / Math.pow(10, this.decimals) : this.decimalStep),\n u,\n );\n }\n\n decimalStepDown(u: boolean = false) {\n if (!this.value) {\n this.commitValue(Math.max(this.minValue, 0), u);\n }\n this.commitValue(\n this.value - toNumber(this.decimalStep == 'auto' ? 1 / Math.pow(10, this.decimals) : this.decimalStep),\n u,\n );\n }\n}\n","<ng-content select=\"ax-prefix\"> </ng-content>\n<input\n #input\n class=\"ax-input\"\n type=\"text\"\n [id]=\"id\"\n [name]=\"name\"\n [attr.placeholder]=\"placeholder\"\n [attr.autocomplete]=\"'off'\"\n [imask]=\"_maskObj\"\n [unmask]=\"'typed'\"\n [attr.min]=\"minValue\"\n [attr.max]=\"maxValue\"\n [class.ax-state-disabled]=\"disabled\"\n [class.ax-state-readonly]=\"readonly\"\n [disabled]=\"disabled\"\n [readonly]=\"readonly\"\n [tabindex]=\"tabIndex\"\n [ngModel]=\"value\"\n (ngModelChange)=\"_handleModelChange($event)\"\n (keydown)=\"_handleOnKeydownEvent($event)\"\n (keyup)=\"emitOnKeyupEvent($event)\"\n (keypress)=\"emitOnKeypressEvent($event)\"\n (focus)=\"emitOnFocusEvent($event)\"\n (blur)=\"emitOnBlurEvent($event)\"\n/>\n<ng-content select=\"ax-clear-button\"></ng-content>\n<div class=\"ax-number-box-control\" *ngIf=\"showSpinButtons\">\n <button\n type=\"button\"\n class=\"ax-general-button ax-button-icon ax-number-box-increment\"\n [class.ax-state-disabled]=\"disabled\"\n (click)=\"_handleUpDownClick(1)\"\n tabindex=\"-1\"\n [disabled]=\"disabled\"\n >\n <span class=\"ax-icon ax-icon-arrow-up\"></span>\n </button>\n <button\n type=\"button\"\n class=\"ax-general-button ax-button-icon ax-number-box-decrement\"\n [class.ax-state-disabled]=\"disabled\"\n (click)=\"_handleUpDownClick(-1)\"\n [disabled]=\"disabled\"\n >\n <span class=\"ax-icon ax-icon-arrow-down\" tabindex=\"-1\"></span>\n </button>\n</div>\n<ng-content select=\"ax-suffix\"> </ng-content>\n<ng-content select=\"ax-validation-rule\"> </ng-content>\n","import { NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { CommonModule } from '@angular/common';\nimport {IMaskModule} from 'angular-imask';\nimport { AXButtonModule } from '@acorex/components/button';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXNumberBoxComponent } from './number-box.component';\n\nconst COMPONENT = [AXNumberBoxComponent];\nconst MODULES = [\n CommonModule,\n FormsModule,\n AXButtonModule,\n AXDecoratorModule,\n IMaskModule\n];\n\n@NgModule({\n declarations: [...COMPONENT],\n imports: [...MODULES],\n exports: [...COMPONENT],\n providers: [],\n})\nexport class AXNumberBoxModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}