primevue 3.28.0 → 3.29.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (420) hide show
  1. package/README.md +3 -3
  2. package/autocomplete/AutoComplete.d.ts +153 -1
  3. package/autocomplete/AutoComplete.vue +46 -17
  4. package/autocomplete/autocomplete.cjs.js +80 -74
  5. package/autocomplete/autocomplete.cjs.min.js +1 -1
  6. package/autocomplete/autocomplete.esm.js +80 -75
  7. package/autocomplete/autocomplete.esm.min.js +1 -1
  8. package/autocomplete/autocomplete.js +81 -76
  9. package/autocomplete/autocomplete.min.js +1 -1
  10. package/basecomponent/BaseComponent.vue +19 -5
  11. package/basecomponent/basecomponent.cjs.js +19 -5
  12. package/basecomponent/basecomponent.cjs.min.js +1 -1
  13. package/basecomponent/basecomponent.esm.js +19 -5
  14. package/basecomponent/basecomponent.esm.min.js +1 -1
  15. package/basecomponent/basecomponent.js +20 -7
  16. package/basecomponent/basecomponent.min.js +1 -1
  17. package/calendar/Calendar.d.ts +269 -0
  18. package/calendar/Calendar.vue +75 -59
  19. package/calendar/calendar.cjs.js +223 -259
  20. package/calendar/calendar.cjs.min.js +1 -1
  21. package/calendar/calendar.esm.js +223 -260
  22. package/calendar/calendar.esm.min.js +1 -1
  23. package/calendar/calendar.js +224 -261
  24. package/calendar/calendar.min.js +1 -1
  25. package/carousel/Carousel.d.ts +154 -0
  26. package/carousel/Carousel.vue +27 -14
  27. package/carousel/carousel.cjs.js +64 -65
  28. package/carousel/carousel.cjs.min.js +1 -1
  29. package/carousel/carousel.esm.js +64 -66
  30. package/carousel/carousel.esm.min.js +1 -1
  31. package/carousel/carousel.js +65 -67
  32. package/carousel/carousel.min.js +1 -1
  33. package/cascadeselect/CascadeSelect.d.ts +133 -0
  34. package/cascadeselect/CascadeSelect.vue +15 -12
  35. package/cascadeselect/CascadeSelectSub.vue +7 -3
  36. package/cascadeselect/cascadeselect.cjs.js +63 -66
  37. package/cascadeselect/cascadeselect.cjs.min.js +1 -1
  38. package/cascadeselect/cascadeselect.esm.js +63 -67
  39. package/cascadeselect/cascadeselect.esm.min.js +1 -1
  40. package/cascadeselect/cascadeselect.js +64 -68
  41. package/cascadeselect/cascadeselect.min.js +1 -1
  42. package/checkbox/Checkbox.d.ts +60 -0
  43. package/checkbox/Checkbox.vue +7 -5
  44. package/checkbox/checkbox.cjs.js +17 -15
  45. package/checkbox/checkbox.cjs.min.js +1 -1
  46. package/checkbox/checkbox.esm.js +17 -16
  47. package/checkbox/checkbox.esm.min.js +1 -1
  48. package/checkbox/checkbox.js +18 -17
  49. package/checkbox/checkbox.min.js +1 -1
  50. package/chips/Chips.d.ts +80 -0
  51. package/chips/Chips.vue +9 -5
  52. package/chips/chips.cjs.js +23 -24
  53. package/chips/chips.cjs.min.js +1 -1
  54. package/chips/chips.esm.js +23 -25
  55. package/chips/chips.esm.min.js +1 -1
  56. package/chips/chips.js +24 -26
  57. package/chips/chips.min.js +1 -1
  58. package/colorpicker/ColorPicker.d.ts +76 -0
  59. package/colorpicker/ColorPicker.vue +11 -9
  60. package/colorpicker/colorpicker.cjs.js +28 -27
  61. package/colorpicker/colorpicker.cjs.min.js +1 -1
  62. package/colorpicker/colorpicker.esm.js +28 -28
  63. package/colorpicker/colorpicker.esm.min.js +1 -1
  64. package/colorpicker/colorpicker.js +29 -29
  65. package/colorpicker/colorpicker.min.js +1 -1
  66. package/column/Column.d.ts +303 -2
  67. package/column/Column.vue +3 -0
  68. package/column/column.cjs.js +7 -0
  69. package/column/column.cjs.min.js +1 -1
  70. package/column/column.esm.js +3 -0
  71. package/column/column.esm.min.js +1 -1
  72. package/column/column.js +7 -2
  73. package/column/column.min.js +1 -1
  74. package/columngroup/ColumnGroup.d.ts +34 -0
  75. package/columngroup/ColumnGroup.vue +3 -0
  76. package/columngroup/columngroup.cjs.js +7 -0
  77. package/columngroup/columngroup.cjs.min.js +1 -1
  78. package/columngroup/columngroup.esm.js +3 -0
  79. package/columngroup/columngroup.esm.min.js +1 -1
  80. package/columngroup/columngroup.js +7 -2
  81. package/columngroup/columngroup.min.js +1 -1
  82. package/config/PrimeVue.d.ts +163 -2
  83. package/confirmdialog/ConfirmDialog.d.ts +14 -7
  84. package/contextmenu/ContextMenu.d.ts +1 -1
  85. package/core/core.js +448 -331
  86. package/core/core.min.js +9 -9
  87. package/datatable/BodyCell.vue +29 -13
  88. package/datatable/ColumnFilter.vue +49 -20
  89. package/datatable/DataTable.d.ts +188 -1
  90. package/datatable/DataTable.vue +25 -14
  91. package/datatable/FooterCell.vue +15 -1
  92. package/datatable/HeaderCell.vue +31 -6
  93. package/datatable/HeaderCheckbox.vue +35 -5
  94. package/datatable/RowCheckbox.vue +36 -5
  95. package/datatable/RowRadioButton.vue +26 -6
  96. package/datatable/TableBody.vue +41 -11
  97. package/datatable/TableFooter.vue +31 -5
  98. package/datatable/TableHeader.vue +53 -6
  99. package/datatable/datatable.cjs.js +559 -376
  100. package/datatable/datatable.cjs.min.js +1 -1
  101. package/datatable/datatable.esm.js +559 -377
  102. package/datatable/datatable.esm.min.js +1 -1
  103. package/datatable/datatable.js +560 -378
  104. package/datatable/datatable.min.js +1 -1
  105. package/dataview/DataView.d.ts +72 -0
  106. package/dataview/DataView.vue +13 -8
  107. package/dataview/dataview.cjs.js +33 -37
  108. package/dataview/dataview.cjs.min.js +1 -1
  109. package/dataview/dataview.esm.js +33 -38
  110. package/dataview/dataview.esm.min.js +1 -1
  111. package/dataview/dataview.js +33 -38
  112. package/dataview/dataview.min.js +1 -1
  113. package/dataviewlayoutoptions/DataViewLayoutOptions.d.ts +65 -0
  114. package/dataviewlayoutoptions/DataViewLayoutOptions.vue +7 -5
  115. package/dataviewlayoutoptions/dataviewlayoutoptions.cjs.js +19 -17
  116. package/dataviewlayoutoptions/dataviewlayoutoptions.cjs.min.js +1 -1
  117. package/dataviewlayoutoptions/dataviewlayoutoptions.esm.js +19 -18
  118. package/dataviewlayoutoptions/dataviewlayoutoptions.esm.min.js +1 -1
  119. package/dataviewlayoutoptions/dataviewlayoutoptions.js +20 -19
  120. package/dataviewlayoutoptions/dataviewlayoutoptions.min.js +1 -1
  121. package/dialog/Dialog.d.ts +6 -4
  122. package/dialog/Dialog.vue +2 -3
  123. package/dialog/dialog.cjs.js +4 -5
  124. package/dialog/dialog.cjs.min.js +1 -1
  125. package/dialog/dialog.esm.js +4 -5
  126. package/dialog/dialog.esm.min.js +1 -1
  127. package/dialog/dialog.js +4 -5
  128. package/dialog/dialog.min.js +1 -1
  129. package/dropdown/Dropdown.d.ts +162 -1
  130. package/dropdown/Dropdown.vue +44 -25
  131. package/dropdown/dropdown.cjs.js +97 -93
  132. package/dropdown/dropdown.cjs.min.js +1 -1
  133. package/dropdown/dropdown.esm.js +97 -94
  134. package/dropdown/dropdown.esm.min.js +1 -1
  135. package/dropdown/dropdown.js +98 -95
  136. package/dropdown/dropdown.min.js +1 -1
  137. package/editor/Editor.d.ts +67 -0
  138. package/editor/Editor.vue +35 -33
  139. package/editor/editor.cjs.js +88 -73
  140. package/editor/editor.cjs.min.js +1 -1
  141. package/editor/editor.esm.js +85 -74
  142. package/editor/editor.esm.min.js +1 -1
  143. package/editor/editor.js +89 -75
  144. package/editor/editor.min.js +1 -1
  145. package/fileupload/FileUpload.d.ts +23 -23
  146. package/fileupload/FileUpload.vue +3 -3
  147. package/fileupload/fileupload.cjs.js +4 -4
  148. package/fileupload/fileupload.cjs.min.js +1 -1
  149. package/fileupload/fileupload.esm.js +4 -4
  150. package/fileupload/fileupload.esm.min.js +1 -1
  151. package/fileupload/fileupload.js +4 -4
  152. package/fileupload/fileupload.min.js +1 -1
  153. package/galleria/Galleria.d.ts +196 -0
  154. package/galleria/Galleria.vue +5 -3
  155. package/galleria/GalleriaContent.vue +10 -6
  156. package/galleria/GalleriaItem.vue +12 -9
  157. package/galleria/GalleriaThumbnails.vue +46 -9
  158. package/galleria/galleria.cjs.js +106 -104
  159. package/galleria/galleria.cjs.min.js +1 -1
  160. package/galleria/galleria.esm.js +106 -105
  161. package/galleria/galleria.esm.min.js +1 -1
  162. package/galleria/galleria.js +107 -106
  163. package/galleria/galleria.min.js +1 -1
  164. package/image/Image.d.ts +170 -0
  165. package/image/Image.vue +49 -21
  166. package/image/image.cjs.js +94 -59
  167. package/image/image.cjs.min.js +1 -1
  168. package/image/image.esm.js +94 -60
  169. package/image/image.esm.min.js +1 -1
  170. package/image/image.js +95 -61
  171. package/image/image.min.js +1 -1
  172. package/inputmask/InputMask.d.ts +25 -0
  173. package/inputmask/InputMask.vue +3 -1
  174. package/inputmask/inputmask.cjs.js +9 -3
  175. package/inputmask/inputmask.cjs.min.js +1 -1
  176. package/inputmask/inputmask.esm.js +6 -4
  177. package/inputmask/inputmask.esm.min.js +1 -1
  178. package/inputmask/inputmask.js +10 -5
  179. package/inputmask/inputmask.min.js +1 -1
  180. package/inputnumber/InputNumber.d.ts +69 -0
  181. package/inputnumber/InputNumber.vue +13 -11
  182. package/inputnumber/inputnumber.cjs.js +19 -28
  183. package/inputnumber/inputnumber.cjs.min.js +1 -1
  184. package/inputnumber/inputnumber.esm.js +19 -29
  185. package/inputnumber/inputnumber.esm.min.js +1 -1
  186. package/inputnumber/inputnumber.js +20 -30
  187. package/inputnumber/inputnumber.min.js +1 -1
  188. package/inputswitch/InputSwitch.d.ts +51 -0
  189. package/inputswitch/InputSwitch.vue +7 -4
  190. package/inputswitch/inputswitch.cjs.js +15 -11
  191. package/inputswitch/inputswitch.cjs.min.js +1 -1
  192. package/inputswitch/inputswitch.esm.js +12 -12
  193. package/inputswitch/inputswitch.esm.min.js +1 -1
  194. package/inputswitch/inputswitch.js +16 -13
  195. package/inputswitch/inputswitch.min.js +1 -1
  196. package/inputtext/InputText.d.ts +25 -0
  197. package/inputtext/InputText.vue +4 -1
  198. package/inputtext/inputtext.cjs.js +9 -3
  199. package/inputtext/inputtext.cjs.min.js +1 -1
  200. package/inputtext/inputtext.esm.js +6 -4
  201. package/inputtext/inputtext.esm.min.js +1 -1
  202. package/inputtext/inputtext.js +10 -5
  203. package/inputtext/inputtext.min.js +1 -1
  204. package/knob/Knob.d.ts +78 -0
  205. package/knob/Knob.vue +8 -4
  206. package/knob/knob.cjs.js +17 -13
  207. package/knob/knob.cjs.min.js +1 -1
  208. package/knob/knob.esm.js +14 -14
  209. package/knob/knob.esm.min.js +1 -1
  210. package/knob/knob.js +18 -15
  211. package/knob/knob.min.js +1 -1
  212. package/listbox/Listbox.d.ts +137 -1
  213. package/listbox/Listbox.vue +28 -15
  214. package/listbox/listbox.cjs.js +83 -78
  215. package/listbox/listbox.cjs.min.js +1 -1
  216. package/listbox/listbox.esm.js +83 -79
  217. package/listbox/listbox.esm.min.js +1 -1
  218. package/listbox/listbox.js +84 -80
  219. package/listbox/listbox.min.js +1 -1
  220. package/megamenu/MegaMenu.d.ts +5 -5
  221. package/menu/Menu.d.ts +4 -4
  222. package/menubar/Menubar.d.ts +1 -1
  223. package/multiselect/MultiSelect.d.ts +223 -1
  224. package/multiselect/MultiSelect.vue +72 -41
  225. package/multiselect/multiselect.cjs.js +156 -151
  226. package/multiselect/multiselect.cjs.min.js +1 -1
  227. package/multiselect/multiselect.esm.js +156 -152
  228. package/multiselect/multiselect.esm.min.js +1 -1
  229. package/multiselect/multiselect.js +157 -153
  230. package/multiselect/multiselect.min.js +1 -1
  231. package/orderlist/OrderList.d.ts +94 -0
  232. package/orderlist/OrderList.vue +38 -18
  233. package/orderlist/orderlist.cjs.js +50 -36
  234. package/orderlist/orderlist.cjs.min.js +1 -1
  235. package/orderlist/orderlist.esm.js +50 -37
  236. package/orderlist/orderlist.esm.min.js +1 -1
  237. package/orderlist/orderlist.js +51 -38
  238. package/orderlist/orderlist.min.js +1 -1
  239. package/organizationchart/OrganizationChart.d.ts +129 -0
  240. package/organizationchart/OrganizationChart.vue +14 -2
  241. package/organizationchart/OrganizationChartNode.vue +37 -16
  242. package/organizationchart/organizationchart.cjs.js +77 -61
  243. package/organizationchart/organizationchart.cjs.min.js +1 -1
  244. package/organizationchart/organizationchart.esm.js +77 -62
  245. package/organizationchart/organizationchart.esm.min.js +1 -1
  246. package/organizationchart/organizationchart.js +78 -63
  247. package/organizationchart/organizationchart.min.js +1 -1
  248. package/package.json +1 -1
  249. package/paginator/CurrentPageReport.vue +5 -1
  250. package/paginator/FirstPageLink.vue +13 -2
  251. package/paginator/JumpToPageDropdown.vue +3 -1
  252. package/paginator/JumpToPageInput.vue +3 -1
  253. package/paginator/LastPageLink.vue +13 -2
  254. package/paginator/NextPageLink.vue +13 -2
  255. package/paginator/PageLinks.vue +12 -2
  256. package/paginator/Paginator.d.ts +133 -0
  257. package/paginator/Paginator.vue +23 -12
  258. package/paginator/PrevPageLink.vue +13 -2
  259. package/paginator/RowsPerPageDropdown.vue +3 -1
  260. package/paginator/paginator.cjs.js +135 -76
  261. package/paginator/paginator.cjs.min.js +1 -1
  262. package/paginator/paginator.esm.js +135 -77
  263. package/paginator/paginator.esm.min.js +1 -1
  264. package/paginator/paginator.js +136 -78
  265. package/paginator/paginator.min.js +1 -1
  266. package/panelmenu/PanelMenu.d.ts +4 -8
  267. package/password/Password.d.ts +104 -0
  268. package/password/Password.vue +11 -9
  269. package/password/password.cjs.js +26 -28
  270. package/password/password.cjs.min.js +1 -1
  271. package/password/password.esm.js +26 -29
  272. package/password/password.esm.min.js +1 -1
  273. package/password/password.js +27 -30
  274. package/password/password.min.js +1 -1
  275. package/picklist/PickList.d.ts +160 -0
  276. package/picklist/PickList.vue +46 -34
  277. package/picklist/picklist.cjs.js +111 -85
  278. package/picklist/picklist.cjs.min.js +1 -1
  279. package/picklist/picklist.esm.js +111 -86
  280. package/picklist/picklist.esm.min.js +1 -1
  281. package/picklist/picklist.js +112 -87
  282. package/picklist/picklist.min.js +1 -1
  283. package/radiobutton/RadioButton.d.ts +55 -0
  284. package/radiobutton/RadioButton.vue +7 -5
  285. package/radiobutton/radiobutton.cjs.js +19 -16
  286. package/radiobutton/radiobutton.cjs.min.js +1 -1
  287. package/radiobutton/radiobutton.esm.js +16 -17
  288. package/radiobutton/radiobutton.esm.min.js +1 -1
  289. package/radiobutton/radiobutton.js +20 -18
  290. package/radiobutton/radiobutton.min.js +1 -1
  291. package/rating/Rating.d.ts +96 -0
  292. package/rating/Rating.vue +32 -9
  293. package/rating/rating.cjs.js +41 -34
  294. package/rating/rating.cjs.min.js +1 -1
  295. package/rating/rating.esm.js +41 -35
  296. package/rating/rating.esm.min.js +1 -1
  297. package/rating/rating.js +42 -36
  298. package/rating/rating.min.js +1 -1
  299. package/row/Row.d.ts +29 -0
  300. package/row/Row.vue +3 -0
  301. package/row/row.cjs.js +7 -0
  302. package/row/row.cjs.min.js +1 -1
  303. package/row/row.esm.js +3 -0
  304. package/row/row.esm.min.js +1 -1
  305. package/row/row.js +7 -2
  306. package/row/row.min.js +1 -1
  307. package/selectbutton/SelectButton.d.ts +68 -0
  308. package/selectbutton/SelectButton.vue +13 -2
  309. package/selectbutton/selectbutton.cjs.js +20 -10
  310. package/selectbutton/selectbutton.cjs.min.js +1 -1
  311. package/selectbutton/selectbutton.esm.js +20 -11
  312. package/selectbutton/selectbutton.esm.min.js +1 -1
  313. package/selectbutton/selectbutton.js +21 -12
  314. package/selectbutton/selectbutton.min.js +1 -1
  315. package/slider/Slider.d.ts +48 -0
  316. package/slider/Slider.vue +7 -2
  317. package/slider/slider.cjs.js +22 -16
  318. package/slider/slider.cjs.min.js +1 -1
  319. package/slider/slider.esm.js +19 -17
  320. package/slider/slider.esm.min.js +1 -1
  321. package/slider/slider.js +23 -18
  322. package/slider/slider.min.js +1 -1
  323. package/splitbutton/SplitButton.d.ts +0 -4
  324. package/splitbutton/SplitButton.vue +2 -2
  325. package/splitbutton/splitbutton.cjs.js +7 -6
  326. package/splitbutton/splitbutton.cjs.min.js +1 -1
  327. package/splitbutton/splitbutton.esm.js +7 -6
  328. package/splitbutton/splitbutton.esm.min.js +1 -1
  329. package/splitbutton/splitbutton.js +7 -6
  330. package/splitbutton/splitbutton.min.js +1 -1
  331. package/splitter/Splitter.d.ts +3 -3
  332. package/textarea/Textarea.d.ts +32 -0
  333. package/textarea/Textarea.vue +4 -1
  334. package/textarea/textarea.cjs.js +9 -3
  335. package/textarea/textarea.cjs.min.js +1 -1
  336. package/textarea/textarea.esm.js +6 -4
  337. package/textarea/textarea.esm.min.js +1 -1
  338. package/textarea/textarea.js +10 -5
  339. package/textarea/textarea.min.js +1 -1
  340. package/timeline/Timeline.d.ts +49 -0
  341. package/timeline/Timeline.vue +9 -7
  342. package/timeline/timeline.cjs.js +19 -21
  343. package/timeline/timeline.cjs.min.js +1 -1
  344. package/timeline/timeline.esm.js +16 -22
  345. package/timeline/timeline.esm.min.js +1 -1
  346. package/timeline/timeline.js +20 -23
  347. package/timeline/timeline.min.js +1 -1
  348. package/toast/Toast.d.ts +4 -0
  349. package/toast/Toast.vue +1 -1
  350. package/toast/toast.cjs.js +3 -3
  351. package/toast/toast.cjs.min.js +1 -1
  352. package/toast/toast.esm.js +3 -3
  353. package/toast/toast.esm.min.js +1 -1
  354. package/toast/toast.js +3 -3
  355. package/toast/toast.min.js +1 -1
  356. package/togglebutton/ToggleButton.d.ts +59 -0
  357. package/togglebutton/ToggleButton.vue +7 -5
  358. package/togglebutton/togglebutton.cjs.js +15 -14
  359. package/togglebutton/togglebutton.cjs.min.js +1 -1
  360. package/togglebutton/togglebutton.esm.js +15 -15
  361. package/togglebutton/togglebutton.esm.min.js +1 -1
  362. package/togglebutton/togglebutton.js +16 -16
  363. package/togglebutton/togglebutton.min.js +1 -1
  364. package/tooltip/Tooltip.d.ts +10 -0
  365. package/tooltip/tooltip.cjs.js +51 -9
  366. package/tooltip/tooltip.cjs.min.js +1 -1
  367. package/tooltip/tooltip.esm.js +52 -10
  368. package/tooltip/tooltip.esm.min.js +1 -1
  369. package/tooltip/tooltip.js +51 -9
  370. package/tooltip/tooltip.min.js +1 -1
  371. package/tree/Tree.d.ts +137 -0
  372. package/tree/Tree.vue +12 -9
  373. package/tree/TreeNode.vue +23 -10
  374. package/tree/tree.cjs.js +85 -79
  375. package/tree/tree.cjs.min.js +1 -1
  376. package/tree/tree.esm.js +85 -80
  377. package/tree/tree.esm.min.js +1 -1
  378. package/tree/tree.js +86 -81
  379. package/tree/tree.min.js +1 -1
  380. package/treeselect/TreeSelect.d.ts +103 -1
  381. package/treeselect/TreeSelect.vue +15 -12
  382. package/treeselect/treeselect.cjs.js +37 -39
  383. package/treeselect/treeselect.cjs.min.js +1 -1
  384. package/treeselect/treeselect.esm.js +37 -40
  385. package/treeselect/treeselect.esm.min.js +1 -1
  386. package/treeselect/treeselect.js +38 -41
  387. package/treeselect/treeselect.min.js +1 -1
  388. package/treetable/BodyCell.vue +38 -10
  389. package/treetable/FooterCell.vue +15 -1
  390. package/treetable/HeaderCell.vue +28 -5
  391. package/treetable/TreeTable.d.ts +162 -0
  392. package/treetable/TreeTable.vue +25 -19
  393. package/treetable/TreeTableRow.vue +5 -0
  394. package/treetable/treetable.cjs.js +205 -158
  395. package/treetable/treetable.cjs.min.js +1 -1
  396. package/treetable/treetable.esm.js +205 -159
  397. package/treetable/treetable.esm.min.js +1 -1
  398. package/treetable/treetable.js +206 -160
  399. package/treetable/treetable.min.js +1 -1
  400. package/tristatecheckbox/TriStateCheckbox.d.ts +93 -0
  401. package/tristatecheckbox/TriStateCheckbox.vue +19 -8
  402. package/tristatecheckbox/tristatecheckbox.cjs.js +31 -22
  403. package/tristatecheckbox/tristatecheckbox.cjs.min.js +1 -1
  404. package/tristatecheckbox/tristatecheckbox.esm.js +31 -23
  405. package/tristatecheckbox/tristatecheckbox.esm.min.js +1 -1
  406. package/tristatecheckbox/tristatecheckbox.js +32 -24
  407. package/tristatecheckbox/tristatecheckbox.min.js +1 -1
  408. package/ts-helpers.d.ts +3 -1
  409. package/vetur-attributes.json +180 -0
  410. package/vetur-tags.json +94 -39
  411. package/virtualscroller/VirtualScroller.d.ts +97 -0
  412. package/virtualscroller/VirtualScroller.vue +7 -5
  413. package/virtualscroller/virtualscroller.cjs.js +22 -19
  414. package/virtualscroller/virtualscroller.cjs.min.js +1 -1
  415. package/virtualscroller/virtualscroller.esm.js +22 -20
  416. package/virtualscroller/virtualscroller.esm.min.js +1 -1
  417. package/virtualscroller/virtualscroller.js +23 -21
  418. package/virtualscroller/virtualscroller.min.js +1 -1
  419. package/web-types.json +467 -3
  420. package/datatable/TableLoadingBody.vue +0 -25
@@ -1 +1 @@
1
- import e from"primevue/button";import t from"primevue/icons/angledown";import n from"primevue/icons/angleup";import i from"primevue/inputtext";import{DomHandler as s}from"primevue/utils";import{resolveComponent as r,openBlock as u,createElementBlock as l,normalizeClass as a,createVNode as o,mergeProps as p,toHandlers as h,withCtx as c,renderSlot as d,createBlock as m,resolveDynamicComponent as f,createCommentVNode as g}from"vue";var b={name:"InputNumber",emits:["update:modelValue","input","focus","blur"],props:{modelValue:{type:Number,default:null},format:{type:Boolean,default:!0},showButtons:{type:Boolean,default:!1},buttonLayout:{type:String,default:"stacked"},incrementButtonClass:{type:String,default:null},decrementButtonClass:{type:String,default:null},incrementButtonIcon:{type:String,default:void 0},decrementButtonIcon:{type:String,default:void 0},locale:{type:String,default:void 0},localeMatcher:{type:String,default:void 0},mode:{type:String,default:"decimal"},prefix:{type:String,default:null},suffix:{type:String,default:null},currency:{type:String,default:void 0},currencyDisplay:{type:String,default:void 0},useGrouping:{type:Boolean,default:!0},minFractionDigits:{type:Number,default:void 0},maxFractionDigits:{type:Number,default:void 0},min:{type:Number,default:null},max:{type:Number,default:null},step:{type:Number,default:1},allowEmpty:{type:Boolean,default:!0},highlightOnFocus:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},placeholder:{type:String,default:null},inputId:{type:String,default:null},inputClass:{type:[String,Object],default:null},inputStyle:{type:Object,default:null},inputProps:{type:null,default:null},incrementButtonProps:{type:null,default:null},decrementButtonProps:{type:null,default:null},"aria-labelledby":{type:String,default:null},"aria-label":{type:String,default:null}},numberFormat:null,_numeral:null,_decimal:null,_group:null,_minusSign:null,_currency:null,_suffix:null,_prefix:null,_index:null,groupChar:"",isSpecialChar:null,prefixChar:null,suffixChar:null,timer:null,data(){return{d_modelValue:this.modelValue,focused:!1}},watch:{modelValue(e){this.d_modelValue=e},locale(e,t){this.updateConstructParser(e,t)},localeMatcher(e,t){this.updateConstructParser(e,t)},mode(e,t){this.updateConstructParser(e,t)},currency(e,t){this.updateConstructParser(e,t)},currencyDisplay(e,t){this.updateConstructParser(e,t)},useGrouping(e,t){this.updateConstructParser(e,t)},minFractionDigits(e,t){this.updateConstructParser(e,t)},maxFractionDigits(e,t){this.updateConstructParser(e,t)},suffix(e,t){this.updateConstructParser(e,t)},prefix(e,t){this.updateConstructParser(e,t)}},created(){this.constructParser()},methods:{getOptions(){return{localeMatcher:this.localeMatcher,style:this.mode,currency:this.currency,currencyDisplay:this.currencyDisplay,useGrouping:this.useGrouping,minimumFractionDigits:this.minFractionDigits,maximumFractionDigits:this.maxFractionDigits}},constructParser(){this.numberFormat=new Intl.NumberFormat(this.locale,this.getOptions());const e=[...new Intl.NumberFormat(this.locale,{useGrouping:!1}).format(9876543210)].reverse(),t=new Map(e.map(((e,t)=>[e,t])));this._numeral=new RegExp(`[${e.join("")}]`,"g"),this._group=this.getGroupingExpression(),this._minusSign=this.getMinusSignExpression(),this._currency=this.getCurrencyExpression(),this._decimal=this.getDecimalExpression(),this._suffix=this.getSuffixExpression(),this._prefix=this.getPrefixExpression(),this._index=e=>t.get(e)},updateConstructParser(e,t){e!==t&&this.constructParser()},escapeRegExp:e=>e.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),getDecimalExpression(){const e=new Intl.NumberFormat(this.locale,{...this.getOptions(),useGrouping:!1});return new RegExp(`[${e.format(1.1).replace(this._currency,"").trim().replace(this._numeral,"")}]`,"g")},getGroupingExpression(){const e=new Intl.NumberFormat(this.locale,{useGrouping:!0});return this.groupChar=e.format(1e6).trim().replace(this._numeral,"").charAt(0),new RegExp(`[${this.groupChar}]`,"g")},getMinusSignExpression(){const e=new Intl.NumberFormat(this.locale,{useGrouping:!1});return new RegExp(`[${e.format(-1).trim().replace(this._numeral,"")}]`,"g")},getCurrencyExpression(){if(this.currency){const e=new Intl.NumberFormat(this.locale,{style:"currency",currency:this.currency,currencyDisplay:this.currencyDisplay,minimumFractionDigits:0,maximumFractionDigits:0});return new RegExp(`[${e.format(1).replace(/\s/g,"").replace(this._numeral,"").replace(this._group,"")}]`,"g")}return new RegExp("[]","g")},getPrefixExpression(){if(this.prefix)this.prefixChar=this.prefix;else{const e=new Intl.NumberFormat(this.locale,{style:this.mode,currency:this.currency,currencyDisplay:this.currencyDisplay});this.prefixChar=e.format(1).split("1")[0]}return new RegExp(`${this.escapeRegExp(this.prefixChar||"")}`,"g")},getSuffixExpression(){if(this.suffix)this.suffixChar=this.suffix;else{const e=new Intl.NumberFormat(this.locale,{style:this.mode,currency:this.currency,currencyDisplay:this.currencyDisplay,minimumFractionDigits:0,maximumFractionDigits:0});this.suffixChar=e.format(1).split("1")[1]}return new RegExp(`${this.escapeRegExp(this.suffixChar||"")}`,"g")},formatValue(e){if(null!=e){if("-"===e)return e;if(this.format){let t=new Intl.NumberFormat(this.locale,this.getOptions()).format(e);return this.prefix&&(t=this.prefix+t),this.suffix&&(t+=this.suffix),t}return e.toString()}return""},parseValue(e){let t=e.replace(this._suffix,"").replace(this._prefix,"").trim().replace(/\s/g,"").replace(this._currency,"").replace(this._group,"").replace(this._minusSign,"-").replace(this._decimal,".").replace(this._numeral,this._index);if(t){if("-"===t)return t;let e=+t;return isNaN(e)?null:e}return null},repeat(e,t,n){if(this.readonly)return;let i=t||500;this.clearTimer(),this.timer=setTimeout((()=>{this.repeat(e,40,n)}),i),this.spin(e,n)},spin(e,t){if(this.$refs.input){let n=this.step*t,i=this.parseValue(this.$refs.input.$el.value)||0,s=this.validateValue(i+n);this.updateInput(s,null,"spin"),this.updateModel(e,s),this.handleOnInput(e,i,s)}},onUpButtonMouseDown(e){this.disabled||(this.$refs.input.$el.focus(),this.repeat(e,null,1),e.preventDefault())},onUpButtonMouseUp(){this.disabled||this.clearTimer()},onUpButtonMouseLeave(){this.disabled||this.clearTimer()},onUpButtonKeyUp(){this.disabled||this.clearTimer()},onUpButtonKeyDown(e){32!==e.keyCode&&13!==e.keyCode||this.repeat(e,null,1)},onDownButtonMouseDown(e){this.disabled||(this.$refs.input.$el.focus(),this.repeat(e,null,-1),e.preventDefault())},onDownButtonMouseUp(){this.disabled||this.clearTimer()},onDownButtonMouseLeave(){this.disabled||this.clearTimer()},onDownButtonKeyUp(){this.disabled||this.clearTimer()},onDownButtonKeyDown(e){32!==e.keyCode&&13!==e.keyCode||this.repeat(e,null,-1)},onUserInput(){this.isSpecialChar&&(this.$refs.input.$el.value=this.lastValue),this.isSpecialChar=!1},onInputKeyDown(e){if(this.readonly)return;if(this.lastValue=e.target.value,e.shiftKey||e.altKey)return void(this.isSpecialChar=!0);let t=e.target.selectionStart,n=e.target.selectionEnd,i=e.target.value,s=null;switch(e.altKey&&e.preventDefault(),e.code){case"ArrowUp":this.spin(e,1),e.preventDefault();break;case"ArrowDown":this.spin(e,-1),e.preventDefault();break;case"ArrowLeft":this.isNumeralChar(i.charAt(t-1))||e.preventDefault();break;case"ArrowRight":this.isNumeralChar(i.charAt(t))||e.preventDefault();break;case"Tab":case"Enter":s=this.validateValue(this.parseValue(i)),this.$refs.input.$el.value=this.formatValue(s),this.$refs.input.$el.setAttribute("aria-valuenow",s),this.updateModel(e,s);break;case"Backspace":if(e.preventDefault(),t===n){const n=i.charAt(t-1),{decimalCharIndex:r,decimalCharIndexWithoutPrefix:u}=this.getDecimalCharIndexes(i);if(this.isNumeralChar(n)){const e=this.getDecimalLength(i);if(this._group.test(n))this._group.lastIndex=0,s=i.slice(0,t-2)+i.slice(t-1);else if(this._decimal.test(n))this._decimal.lastIndex=0,e?this.$refs.input.$el.setSelectionRange(t-1,t-1):s=i.slice(0,t-1)+i.slice(t);else if(r>0&&t>r){const n=this.isDecimalMode()&&(this.minFractionDigits||0)<e?"":"0";s=i.slice(0,t-1)+n+i.slice(t)}else 1===u?(s=i.slice(0,t-1)+"0"+i.slice(t),s=this.parseValue(s)>0?s:""):s=i.slice(0,t-1)+i.slice(t)}this.updateValue(e,s,null,"delete-single")}else s=this.deleteRange(i,t,n),this.updateValue(e,s,null,"delete-range");break;case"Delete":if(e.preventDefault(),t===n){const n=i.charAt(t),{decimalCharIndex:r,decimalCharIndexWithoutPrefix:u}=this.getDecimalCharIndexes(i);if(this.isNumeralChar(n)){const e=this.getDecimalLength(i);if(this._group.test(n))this._group.lastIndex=0,s=i.slice(0,t)+i.slice(t+2);else if(this._decimal.test(n))this._decimal.lastIndex=0,e?this.$refs.input.$el.setSelectionRange(t+1,t+1):s=i.slice(0,t)+i.slice(t+1);else if(r>0&&t>r){const n=this.isDecimalMode()&&(this.minFractionDigits||0)<e?"":"0";s=i.slice(0,t)+n+i.slice(t+1)}else 1===u?(s=i.slice(0,t)+"0"+i.slice(t+1),s=this.parseValue(s)>0?s:""):s=i.slice(0,t)+i.slice(t+1)}this.updateValue(e,s,null,"delete-back-single")}else s=this.deleteRange(i,t,n),this.updateValue(e,s,null,"delete-range");break;case"Home":this.min&&(this.updateModel(e,this.min),e.preventDefault());break;case"End":this.max&&(this.updateModel(e,this.max),e.preventDefault())}},onInputKeyPress(e){if(this.readonly)return;e.preventDefault();let t=e.which||e.keyCode,n=String.fromCharCode(t);const i=this.isDecimalSign(n),s=this.isMinusSign(n);(48<=t&&t<=57||s||i)&&this.insert(e,n,{isDecimalSign:i,isMinusSign:s})},onPaste(e){e.preventDefault();let t=(e.clipboardData||window.clipboardData).getData("Text");if(t){let n=this.parseValue(t);null!=n&&this.insert(e,n.toString())}},allowMinusSign(){return null===this.min||this.min<0},isMinusSign(e){return!(!this._minusSign.test(e)&&"-"!==e)&&(this._minusSign.lastIndex=0,!0)},isDecimalSign(e){return!!this._decimal.test(e)&&(this._decimal.lastIndex=0,!0)},isDecimalMode(){return"decimal"===this.mode},getDecimalCharIndexes(e){let t=e.search(this._decimal);this._decimal.lastIndex=0;const n=e.replace(this._prefix,"").trim().replace(/\s/g,"").replace(this._currency,"").search(this._decimal);return this._decimal.lastIndex=0,{decimalCharIndex:t,decimalCharIndexWithoutPrefix:n}},getCharIndexes(e){const t=e.search(this._decimal);this._decimal.lastIndex=0;const n=e.search(this._minusSign);this._minusSign.lastIndex=0;const i=e.search(this._suffix);this._suffix.lastIndex=0;const s=e.search(this._currency);return this._currency.lastIndex=0,{decimalCharIndex:t,minusCharIndex:n,suffixCharIndex:i,currencyCharIndex:s}},insert(e,t,n={isDecimalSign:!1,isMinusSign:!1}){const i=t.search(this._minusSign);if(this._minusSign.lastIndex=0,!this.allowMinusSign()&&-1!==i)return;const s=this.$refs.input.$el.selectionStart,r=this.$refs.input.$el.selectionEnd;let u=this.$refs.input.$el.value.trim();const{decimalCharIndex:l,minusCharIndex:a,suffixCharIndex:o,currencyCharIndex:p}=this.getCharIndexes(u);let h;if(n.isMinusSign)0===s&&(h=u,-1!==a&&0===r||(h=this.insertText(u,t,0,r)),this.updateValue(e,h,t,"insert"));else if(n.isDecimalSign)l>0&&s===l?this.updateValue(e,u,t,"insert"):(l>s&&l<r||-1===l&&this.maxFractionDigits)&&(h=this.insertText(u,t,s,r),this.updateValue(e,h,t,"insert"));else{const n=this.numberFormat.resolvedOptions().maximumFractionDigits,i=s!==r?"range-insert":"insert";if(l>0&&s>l){if(s+t.length-(l+1)<=n){const n=p>=s?p-1:o>=s?o:u.length;h=u.slice(0,s)+t+u.slice(s+t.length,n)+u.slice(n),this.updateValue(e,h,t,i)}}else h=this.insertText(u,t,s,r),this.updateValue(e,h,t,i)}},insertText(e,t,n,i){if(2===("."===t?t:t.split(".")).length){const s=e.slice(n,i).search(this._decimal);return this._decimal.lastIndex=0,s>0?e.slice(0,n)+this.formatValue(t)+e.slice(i):e||this.formatValue(t)}return i-n===e.length?this.formatValue(t):0===n?t+e.slice(i):i===e.length?e.slice(0,n)+t:e.slice(0,n)+t+e.slice(i)},deleteRange(e,t,n){let i;return i=n-t===e.length?"":0===t?e.slice(n):n===e.length?e.slice(0,t):e.slice(0,t)+e.slice(n),i},initCursor(){let e=this.$refs.input.$el.selectionStart,t=this.$refs.input.$el.value,n=t.length,i=null,s=(this.prefixChar||"").length;t=t.replace(this._prefix,""),e-=s;let r=t.charAt(e);if(this.isNumeralChar(r))return e+s;let u=e-1;for(;u>=0;){if(r=t.charAt(u),this.isNumeralChar(r)){i=u+s;break}u--}if(null!==i)this.$refs.input.$el.setSelectionRange(i+1,i+1);else{for(u=e;u<n;){if(r=t.charAt(u),this.isNumeralChar(r)){i=u+s;break}u++}null!==i&&this.$refs.input.$el.setSelectionRange(i,i)}return i||0},onInputClick(){const e=this.$refs.input.$el.value;this.readonly||e===s.getSelection()||this.initCursor()},isNumeralChar(e){return!(1!==e.length||!(this._numeral.test(e)||this._decimal.test(e)||this._group.test(e)||this._minusSign.test(e)))&&(this.resetRegex(),!0)},resetRegex(){this._numeral.lastIndex=0,this._decimal.lastIndex=0,this._group.lastIndex=0,this._minusSign.lastIndex=0},updateValue(e,t,n,i){let s=this.$refs.input.$el.value,r=null;null!=t&&(r=this.parseValue(t),r=r||this.allowEmpty?r:0,this.updateInput(r,n,i,t),this.handleOnInput(e,s,r))},handleOnInput(e,t,n){this.isValueChanged(t,n)&&this.$emit("input",{originalEvent:e,value:n,formattedValue:t})},isValueChanged(e,t){if(null===t&&null!==e)return!0;if(null!=t){return t!==("string"==typeof e?this.parseValue(e):e)}return!1},validateValue(e){return"-"===e||null==e?null:null!=this.min&&e<this.min?this.min:null!=this.max&&e>this.max?this.max:e},updateInput(e,t,n,i){t=t||"";let s=this.$refs.input.$el.value,r=this.formatValue(e),u=s.length;if(r!==i&&(r=this.concatValues(r,i)),0===u){this.$refs.input.$el.value=r,this.$refs.input.$el.setSelectionRange(0,0);const e=this.initCursor()+t.length;this.$refs.input.$el.setSelectionRange(e,e)}else{let e=this.$refs.input.$el.selectionStart,i=this.$refs.input.$el.selectionEnd;this.$refs.input.$el.value=r;let l=r.length;if("range-insert"===n){const n=this.parseValue((s||"").slice(0,e)),u=(null!==n?n.toString():"").split("").join(`(${this.groupChar})?`),l=new RegExp(u,"g");l.test(r);const a=t.split("").join(`(${this.groupChar})?`),o=new RegExp(a,"g");o.test(r.slice(l.lastIndex)),i=l.lastIndex+o.lastIndex,this.$refs.input.$el.setSelectionRange(i,i)}else if(l===u)"insert"===n||"delete-back-single"===n?this.$refs.input.$el.setSelectionRange(i+1,i+1):"delete-single"===n?this.$refs.input.$el.setSelectionRange(i-1,i-1):"delete-range"!==n&&"spin"!==n||this.$refs.input.$el.setSelectionRange(i,i);else if("delete-back-single"===n){let e=s.charAt(i-1),t=s.charAt(i),n=u-l,r=this._group.test(t);r&&1===n?i+=1:!r&&this.isNumeralChar(e)&&(i+=-1*n+1),this._group.lastIndex=0,this.$refs.input.$el.setSelectionRange(i,i)}else if("-"===s&&"insert"===n){this.$refs.input.$el.setSelectionRange(0,0);const e=this.initCursor()+t.length+1;this.$refs.input.$el.setSelectionRange(e,e)}else i+=l-u,this.$refs.input.$el.setSelectionRange(i,i)}this.$refs.input.$el.setAttribute("aria-valuenow",e)},concatValues(e,t){if(e&&t){let n=t.search(this._decimal);return this._decimal.lastIndex=0,this.suffixChar?e.replace(this.suffixChar,"").split(this._decimal)[0]+t.replace(this.suffixChar,"").slice(n)+this.suffixChar:-1!==n?e.split(this._decimal)[0]+t.slice(n):e}return e},getDecimalLength(e){if(e){const t=e.split(this._decimal);if(2===t.length)return t[1].replace(this._suffix,"").trim().replace(/\s/g,"").replace(this._currency,"").length}return 0},updateModel(e,t){this.d_modelValue=t,this.$emit("update:modelValue",t)},onInputFocus(e){this.focused=!0,this.disabled||this.readonly||this.$refs.input.$el.value===s.getSelection()||!this.highlightOnFocus||e.target.select(),this.$emit("focus",e)},onInputBlur(e){this.focused=!1;let t=e.target,n=this.validateValue(this.parseValue(t.value));this.$emit("blur",{originalEvent:e,value:t.value}),t.value=this.formatValue(n),t.setAttribute("aria-valuenow",n),this.updateModel(e,n)},clearTimer(){this.timer&&clearInterval(this.timer)},maxBoundry(){return this.d_modelValue>=this.max},minBoundry(){return this.d_modelValue<=this.min}},computed:{containerClass(){return["p-inputnumber p-component p-inputwrapper",{"p-inputwrapper-filled":this.filled,"p-inputwrapper-focus":this.focused,"p-inputnumber-buttons-stacked":this.showButtons&&"stacked"===this.buttonLayout,"p-inputnumber-buttons-horizontal":this.showButtons&&"horizontal"===this.buttonLayout,"p-inputnumber-buttons-vertical":this.showButtons&&"vertical"===this.buttonLayout}]},upButtonClass(){return["p-inputnumber-button p-inputnumber-button-up",this.incrementButtonClass,{"p-disabled":this.showButtons&&null!==this.max&&this.maxBoundry()}]},downButtonClass(){return["p-inputnumber-button p-inputnumber-button-down",this.decrementButtonClass,{"p-disabled":this.showButtons&&null!==this.min&&this.minBoundry()}]},filled(){return null!=this.modelValue&&this.modelValue.toString().length>0},upButtonListeners(){return{mousedown:e=>this.onUpButtonMouseDown(e),mouseup:e=>this.onUpButtonMouseUp(e),mouseleave:e=>this.onUpButtonMouseLeave(e),keydown:e=>this.onUpButtonKeyDown(e),keyup:e=>this.onUpButtonKeyUp(e)}},downButtonListeners(){return{mousedown:e=>this.onDownButtonMouseDown(e),mouseup:e=>this.onDownButtonMouseUp(e),mouseleave:e=>this.onDownButtonMouseLeave(e),keydown:e=>this.onDownButtonKeyDown(e),keyup:e=>this.onDownButtonKeyUp(e)}},formattedValue(){const e=this.modelValue||this.allowEmpty?this.modelValue:0;return this.formatValue(e)},getFormatter(){return this.numberFormat}},components:{INInputText:i,INButton:e,AngleUpIcon:n,AngleDownIcon:t}};const x={key:0,class:"p-inputnumber-button-group"};!function(e,t){void 0===t&&(t={});var n=t.insertAt;if(e&&"undefined"!=typeof document){var i=document.head||document.getElementsByTagName("head")[0],s=document.createElement("style");s.type="text/css","top"===n&&i.firstChild?i.insertBefore(s,i.firstChild):i.appendChild(s),s.styleSheet?s.styleSheet.cssText=e:s.appendChild(document.createTextNode(e))}}("\n.p-inputnumber {\n display: inline-flex;\n}\n.p-inputnumber-button {\n display: flex;\n align-items: center;\n justify-content: center;\n flex: 0 0 auto;\n}\n.p-inputnumber-buttons-stacked .p-button.p-inputnumber-button .p-button-label,\n.p-inputnumber-buttons-horizontal .p-button.p-inputnumber-button .p-button-label {\n display: none;\n}\n.p-inputnumber-buttons-stacked .p-button.p-inputnumber-button-up {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n border-bottom-right-radius: 0;\n padding: 0;\n}\n.p-inputnumber-buttons-stacked .p-inputnumber-input {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n}\n.p-inputnumber-buttons-stacked .p-button.p-inputnumber-button-down {\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n border-bottom-left-radius: 0;\n padding: 0;\n}\n.p-inputnumber-buttons-stacked .p-inputnumber-button-group {\n display: flex;\n flex-direction: column;\n}\n.p-inputnumber-buttons-stacked .p-inputnumber-button-group .p-button.p-inputnumber-button {\n flex: 1 1 auto;\n}\n.p-inputnumber-buttons-horizontal .p-button.p-inputnumber-button-up {\n order: 3;\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n}\n.p-inputnumber-buttons-horizontal .p-inputnumber-input {\n order: 2;\n border-radius: 0;\n}\n.p-inputnumber-buttons-horizontal .p-button.p-inputnumber-button-down {\n order: 1;\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n}\n.p-inputnumber-buttons-vertical {\n flex-direction: column;\n}\n.p-inputnumber-buttons-vertical .p-button.p-inputnumber-button-up {\n order: 1;\n border-bottom-left-radius: 0;\n border-bottom-right-radius: 0;\n width: 100%;\n}\n.p-inputnumber-buttons-vertical .p-inputnumber-input {\n order: 2;\n border-radius: 0;\n text-align: center;\n}\n.p-inputnumber-buttons-vertical .p-button.p-inputnumber-button-down {\n order: 3;\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n width: 100%;\n}\n.p-inputnumber-input {\n flex: 1 1 auto;\n}\n.p-fluid .p-inputnumber {\n width: 100%;\n}\n.p-fluid .p-inputnumber .p-inputnumber-input {\n width: 1%;\n}\n.p-fluid .p-inputnumber-buttons-vertical .p-inputnumber-input {\n width: 100%;\n}\n"),b.render=function(e,t,n,i,s,b){const y=r("INInputText"),C=r("INButton");return u(),l("span",{class:a(b.containerClass)},[o(y,p({ref:"input",id:n.inputId,class:["p-inputnumber-input",n.inputClass],role:"spinbutton",style:n.inputStyle,value:b.formattedValue,"aria-valuemin":n.min,"aria-valuemax":n.max,"aria-valuenow":n.modelValue,disabled:n.disabled,readonly:n.readonly,placeholder:n.placeholder,"aria-labelledby":e.ariaLabelledby,"aria-label":e.ariaLabel,onInput:b.onUserInput,onKeydown:b.onInputKeyDown,onKeypress:b.onInputKeyPress,onPaste:b.onPaste,onClick:b.onInputClick,onFocus:b.onInputFocus,onBlur:b.onInputBlur},n.inputProps),null,16,["id","class","style","value","aria-valuemin","aria-valuemax","aria-valuenow","disabled","readonly","placeholder","aria-labelledby","aria-label","onInput","onKeydown","onKeypress","onPaste","onClick","onFocus","onBlur"]),n.showButtons&&"stacked"===n.buttonLayout?(u(),l("span",x,[o(C,p({class:b.upButtonClass},h(b.upButtonListeners),{disabled:n.disabled,tabindex:-1,"aria-hidden":"true"},n.incrementButtonProps),{icon:c((()=>[d(e.$slots,"incrementbuttonicon",{},(()=>[(u(),m(f(n.incrementButtonIcon?"span":"AngleUpIcon"),{class:a(n.incrementButtonIcon)},null,8,["class"]))]))])),_:3},16,["class","disabled"]),o(C,p({class:b.downButtonClass},h(b.downButtonListeners),{disabled:n.disabled,tabindex:-1,"aria-hidden":"true"},n.decrementButtonProps),{icon:c((()=>[d(e.$slots,"decrementbuttonicon",{},(()=>[(u(),m(f(n.decrementButtonIcon?"span":"AngleDownIcon"),{class:a(n.decrementButtonIcon)},null,8,["class"]))]))])),_:3},16,["class","disabled"])])):g("",!0),n.showButtons&&"stacked"!==n.buttonLayout?(u(),m(C,p({key:1,class:b.upButtonClass},h(b.upButtonListeners),{disabled:n.disabled,tabindex:-1,"aria-hidden":"true"},n.incrementButtonProps),{icon:c((()=>[d(e.$slots,"incrementbuttonicon",{},(()=>[(u(),m(f(n.incrementButtonIcon?"span":"AngleUpIcon"),{class:a(n.incrementButtonIcon)},null,8,["class"]))]))])),_:3},16,["class","disabled"])):g("",!0),n.showButtons&&"stacked"!==n.buttonLayout?(u(),m(C,p({key:2,class:b.downButtonClass},h(b.downButtonListeners),{disabled:n.disabled,tabindex:-1,"aria-hidden":"true"},n.decrementButtonProps),{icon:c((()=>[d(e.$slots,"decrementbuttonicon",{},(()=>[(u(),m(f(n.decrementButtonIcon?"span":"AngleDownIcon"),{class:a(n.decrementButtonIcon)},null,8,["class"]))]))])),_:3},16,["class","disabled"])):g("",!0)],2)};export{b as default};
1
+ import t from"primevue/basecomponent";import e from"primevue/button";import n from"primevue/icons/angledown";import i from"primevue/icons/angleup";import s from"primevue/inputtext";import{DomHandler as r}from"primevue/utils";import{resolveComponent as u,openBlock as l,createElementBlock as a,mergeProps as o,createVNode as p,toHandlers as h,withCtx as c,renderSlot as d,createBlock as m,resolveDynamicComponent as f,createCommentVNode as g}from"vue";var b={name:"InputNumber",extends:t,emits:["update:modelValue","input","focus","blur"],props:{modelValue:{type:Number,default:null},format:{type:Boolean,default:!0},showButtons:{type:Boolean,default:!1},buttonLayout:{type:String,default:"stacked"},incrementButtonClass:{type:String,default:null},decrementButtonClass:{type:String,default:null},incrementButtonIcon:{type:String,default:void 0},decrementButtonIcon:{type:String,default:void 0},locale:{type:String,default:void 0},localeMatcher:{type:String,default:void 0},mode:{type:String,default:"decimal"},prefix:{type:String,default:null},suffix:{type:String,default:null},currency:{type:String,default:void 0},currencyDisplay:{type:String,default:void 0},useGrouping:{type:Boolean,default:!0},minFractionDigits:{type:Number,default:void 0},maxFractionDigits:{type:Number,default:void 0},min:{type:Number,default:null},max:{type:Number,default:null},step:{type:Number,default:1},allowEmpty:{type:Boolean,default:!0},highlightOnFocus:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},placeholder:{type:String,default:null},inputId:{type:String,default:null},inputClass:{type:[String,Object],default:null},inputStyle:{type:Object,default:null},inputProps:{type:null,default:null},incrementButtonProps:{type:null,default:null},decrementButtonProps:{type:null,default:null},"aria-labelledby":{type:String,default:null},"aria-label":{type:String,default:null}},numberFormat:null,_numeral:null,_decimal:null,_group:null,_minusSign:null,_currency:null,_suffix:null,_prefix:null,_index:null,groupChar:"",isSpecialChar:null,prefixChar:null,suffixChar:null,timer:null,data(){return{d_modelValue:this.modelValue,focused:!1}},watch:{modelValue(t){this.d_modelValue=t},locale(t,e){this.updateConstructParser(t,e)},localeMatcher(t,e){this.updateConstructParser(t,e)},mode(t,e){this.updateConstructParser(t,e)},currency(t,e){this.updateConstructParser(t,e)},currencyDisplay(t,e){this.updateConstructParser(t,e)},useGrouping(t,e){this.updateConstructParser(t,e)},minFractionDigits(t,e){this.updateConstructParser(t,e)},maxFractionDigits(t,e){this.updateConstructParser(t,e)},suffix(t,e){this.updateConstructParser(t,e)},prefix(t,e){this.updateConstructParser(t,e)}},created(){this.constructParser()},methods:{getOptions(){return{localeMatcher:this.localeMatcher,style:this.mode,currency:this.currency,currencyDisplay:this.currencyDisplay,useGrouping:this.useGrouping,minimumFractionDigits:this.minFractionDigits,maximumFractionDigits:this.maxFractionDigits}},constructParser(){this.numberFormat=new Intl.NumberFormat(this.locale,this.getOptions());const t=[...new Intl.NumberFormat(this.locale,{useGrouping:!1}).format(9876543210)].reverse(),e=new Map(t.map(((t,e)=>[t,e])));this._numeral=new RegExp(`[${t.join("")}]`,"g"),this._group=this.getGroupingExpression(),this._minusSign=this.getMinusSignExpression(),this._currency=this.getCurrencyExpression(),this._decimal=this.getDecimalExpression(),this._suffix=this.getSuffixExpression(),this._prefix=this.getPrefixExpression(),this._index=t=>e.get(t)},updateConstructParser(t,e){t!==e&&this.constructParser()},escapeRegExp:t=>t.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),getDecimalExpression(){const t=new Intl.NumberFormat(this.locale,{...this.getOptions(),useGrouping:!1});return new RegExp(`[${t.format(1.1).replace(this._currency,"").trim().replace(this._numeral,"")}]`,"g")},getGroupingExpression(){const t=new Intl.NumberFormat(this.locale,{useGrouping:!0});return this.groupChar=t.format(1e6).trim().replace(this._numeral,"").charAt(0),new RegExp(`[${this.groupChar}]`,"g")},getMinusSignExpression(){const t=new Intl.NumberFormat(this.locale,{useGrouping:!1});return new RegExp(`[${t.format(-1).trim().replace(this._numeral,"")}]`,"g")},getCurrencyExpression(){if(this.currency){const t=new Intl.NumberFormat(this.locale,{style:"currency",currency:this.currency,currencyDisplay:this.currencyDisplay,minimumFractionDigits:0,maximumFractionDigits:0});return new RegExp(`[${t.format(1).replace(/\s/g,"").replace(this._numeral,"").replace(this._group,"")}]`,"g")}return new RegExp("[]","g")},getPrefixExpression(){if(this.prefix)this.prefixChar=this.prefix;else{const t=new Intl.NumberFormat(this.locale,{style:this.mode,currency:this.currency,currencyDisplay:this.currencyDisplay});this.prefixChar=t.format(1).split("1")[0]}return new RegExp(`${this.escapeRegExp(this.prefixChar||"")}`,"g")},getSuffixExpression(){if(this.suffix)this.suffixChar=this.suffix;else{const t=new Intl.NumberFormat(this.locale,{style:this.mode,currency:this.currency,currencyDisplay:this.currencyDisplay,minimumFractionDigits:0,maximumFractionDigits:0});this.suffixChar=t.format(1).split("1")[1]}return new RegExp(`${this.escapeRegExp(this.suffixChar||"")}`,"g")},formatValue(t){if(null!=t){if("-"===t)return t;if(this.format){let e=new Intl.NumberFormat(this.locale,this.getOptions()).format(t);return this.prefix&&(e=this.prefix+e),this.suffix&&(e+=this.suffix),e}return t.toString()}return""},parseValue(t){let e=t.replace(this._suffix,"").replace(this._prefix,"").trim().replace(/\s/g,"").replace(this._currency,"").replace(this._group,"").replace(this._minusSign,"-").replace(this._decimal,".").replace(this._numeral,this._index);if(e){if("-"===e)return e;let t=+e;return isNaN(t)?null:t}return null},repeat(t,e,n){if(this.readonly)return;let i=e||500;this.clearTimer(),this.timer=setTimeout((()=>{this.repeat(t,40,n)}),i),this.spin(t,n)},spin(t,e){if(this.$refs.input){let n=this.step*e,i=this.parseValue(this.$refs.input.$el.value)||0,s=this.validateValue(i+n);this.updateInput(s,null,"spin"),this.updateModel(t,s),this.handleOnInput(t,i,s)}},onUpButtonMouseDown(t){this.disabled||(this.$refs.input.$el.focus(),this.repeat(t,null,1),t.preventDefault())},onUpButtonMouseUp(){this.disabled||this.clearTimer()},onUpButtonMouseLeave(){this.disabled||this.clearTimer()},onUpButtonKeyUp(){this.disabled||this.clearTimer()},onUpButtonKeyDown(t){32!==t.keyCode&&13!==t.keyCode||this.repeat(t,null,1)},onDownButtonMouseDown(t){this.disabled||(this.$refs.input.$el.focus(),this.repeat(t,null,-1),t.preventDefault())},onDownButtonMouseUp(){this.disabled||this.clearTimer()},onDownButtonMouseLeave(){this.disabled||this.clearTimer()},onDownButtonKeyUp(){this.disabled||this.clearTimer()},onDownButtonKeyDown(t){32!==t.keyCode&&13!==t.keyCode||this.repeat(t,null,-1)},onUserInput(){this.isSpecialChar&&(this.$refs.input.$el.value=this.lastValue),this.isSpecialChar=!1},onInputKeyDown(t){if(this.readonly)return;if(this.lastValue=t.target.value,t.shiftKey||t.altKey)return void(this.isSpecialChar=!0);let e=t.target.selectionStart,n=t.target.selectionEnd,i=t.target.value,s=null;switch(t.altKey&&t.preventDefault(),t.code){case"ArrowUp":this.spin(t,1),t.preventDefault();break;case"ArrowDown":this.spin(t,-1),t.preventDefault();break;case"ArrowLeft":this.isNumeralChar(i.charAt(e-1))||t.preventDefault();break;case"ArrowRight":this.isNumeralChar(i.charAt(e))||t.preventDefault();break;case"Tab":case"Enter":s=this.validateValue(this.parseValue(i)),this.$refs.input.$el.value=this.formatValue(s),this.$refs.input.$el.setAttribute("aria-valuenow",s),this.updateModel(t,s);break;case"Backspace":if(t.preventDefault(),e===n){const n=i.charAt(e-1),{decimalCharIndex:r,decimalCharIndexWithoutPrefix:u}=this.getDecimalCharIndexes(i);if(this.isNumeralChar(n)){const t=this.getDecimalLength(i);if(this._group.test(n))this._group.lastIndex=0,s=i.slice(0,e-2)+i.slice(e-1);else if(this._decimal.test(n))this._decimal.lastIndex=0,t?this.$refs.input.$el.setSelectionRange(e-1,e-1):s=i.slice(0,e-1)+i.slice(e);else if(r>0&&e>r){const n=this.isDecimalMode()&&(this.minFractionDigits||0)<t?"":"0";s=i.slice(0,e-1)+n+i.slice(e)}else 1===u?(s=i.slice(0,e-1)+"0"+i.slice(e),s=this.parseValue(s)>0?s:""):s=i.slice(0,e-1)+i.slice(e)}this.updateValue(t,s,null,"delete-single")}else s=this.deleteRange(i,e,n),this.updateValue(t,s,null,"delete-range");break;case"Delete":if(t.preventDefault(),e===n){const n=i.charAt(e),{decimalCharIndex:r,decimalCharIndexWithoutPrefix:u}=this.getDecimalCharIndexes(i);if(this.isNumeralChar(n)){const t=this.getDecimalLength(i);if(this._group.test(n))this._group.lastIndex=0,s=i.slice(0,e)+i.slice(e+2);else if(this._decimal.test(n))this._decimal.lastIndex=0,t?this.$refs.input.$el.setSelectionRange(e+1,e+1):s=i.slice(0,e)+i.slice(e+1);else if(r>0&&e>r){const n=this.isDecimalMode()&&(this.minFractionDigits||0)<t?"":"0";s=i.slice(0,e)+n+i.slice(e+1)}else 1===u?(s=i.slice(0,e)+"0"+i.slice(e+1),s=this.parseValue(s)>0?s:""):s=i.slice(0,e)+i.slice(e+1)}this.updateValue(t,s,null,"delete-back-single")}else s=this.deleteRange(i,e,n),this.updateValue(t,s,null,"delete-range");break;case"Home":this.min&&(this.updateModel(t,this.min),t.preventDefault());break;case"End":this.max&&(this.updateModel(t,this.max),t.preventDefault())}},onInputKeyPress(t){if(this.readonly)return;t.preventDefault();let e=t.which||t.keyCode,n=String.fromCharCode(e);const i=this.isDecimalSign(n),s=this.isMinusSign(n);(48<=e&&e<=57||s||i)&&this.insert(t,n,{isDecimalSign:i,isMinusSign:s})},onPaste(t){t.preventDefault();let e=(t.clipboardData||window.clipboardData).getData("Text");if(e){let n=this.parseValue(e);null!=n&&this.insert(t,n.toString())}},allowMinusSign(){return null===this.min||this.min<0},isMinusSign(t){return!(!this._minusSign.test(t)&&"-"!==t)&&(this._minusSign.lastIndex=0,!0)},isDecimalSign(t){return!!this._decimal.test(t)&&(this._decimal.lastIndex=0,!0)},isDecimalMode(){return"decimal"===this.mode},getDecimalCharIndexes(t){let e=t.search(this._decimal);this._decimal.lastIndex=0;const n=t.replace(this._prefix,"").trim().replace(/\s/g,"").replace(this._currency,"").search(this._decimal);return this._decimal.lastIndex=0,{decimalCharIndex:e,decimalCharIndexWithoutPrefix:n}},getCharIndexes(t){const e=t.search(this._decimal);this._decimal.lastIndex=0;const n=t.search(this._minusSign);this._minusSign.lastIndex=0;const i=t.search(this._suffix);this._suffix.lastIndex=0;const s=t.search(this._currency);return this._currency.lastIndex=0,{decimalCharIndex:e,minusCharIndex:n,suffixCharIndex:i,currencyCharIndex:s}},insert(t,e,n={isDecimalSign:!1,isMinusSign:!1}){const i=e.search(this._minusSign);if(this._minusSign.lastIndex=0,!this.allowMinusSign()&&-1!==i)return;const s=this.$refs.input.$el.selectionStart,r=this.$refs.input.$el.selectionEnd;let u=this.$refs.input.$el.value.trim();const{decimalCharIndex:l,minusCharIndex:a,suffixCharIndex:o,currencyCharIndex:p}=this.getCharIndexes(u);let h;if(n.isMinusSign)0===s&&(h=u,-1!==a&&0===r||(h=this.insertText(u,e,0,r)),this.updateValue(t,h,e,"insert"));else if(n.isDecimalSign)l>0&&s===l?this.updateValue(t,u,e,"insert"):(l>s&&l<r||-1===l&&this.maxFractionDigits)&&(h=this.insertText(u,e,s,r),this.updateValue(t,h,e,"insert"));else{const n=this.numberFormat.resolvedOptions().maximumFractionDigits,i=s!==r?"range-insert":"insert";if(l>0&&s>l){if(s+e.length-(l+1)<=n){const n=p>=s?p-1:o>=s?o:u.length;h=u.slice(0,s)+e+u.slice(s+e.length,n)+u.slice(n),this.updateValue(t,h,e,i)}}else h=this.insertText(u,e,s,r),this.updateValue(t,h,e,i)}},insertText(t,e,n,i){if(2===("."===e?e:e.split(".")).length){const s=t.slice(n,i).search(this._decimal);return this._decimal.lastIndex=0,s>0?t.slice(0,n)+this.formatValue(e)+t.slice(i):t||this.formatValue(e)}return i-n===t.length?this.formatValue(e):0===n?e+t.slice(i):i===t.length?t.slice(0,n)+e:t.slice(0,n)+e+t.slice(i)},deleteRange(t,e,n){let i;return i=n-e===t.length?"":0===e?t.slice(n):n===t.length?t.slice(0,e):t.slice(0,e)+t.slice(n),i},initCursor(){let t=this.$refs.input.$el.selectionStart,e=this.$refs.input.$el.value,n=e.length,i=null,s=(this.prefixChar||"").length;e=e.replace(this._prefix,""),t-=s;let r=e.charAt(t);if(this.isNumeralChar(r))return t+s;let u=t-1;for(;u>=0;){if(r=e.charAt(u),this.isNumeralChar(r)){i=u+s;break}u--}if(null!==i)this.$refs.input.$el.setSelectionRange(i+1,i+1);else{for(u=t;u<n;){if(r=e.charAt(u),this.isNumeralChar(r)){i=u+s;break}u++}null!==i&&this.$refs.input.$el.setSelectionRange(i,i)}return i||0},onInputClick(){const t=this.$refs.input.$el.value;this.readonly||t===r.getSelection()||this.initCursor()},isNumeralChar(t){return!(1!==t.length||!(this._numeral.test(t)||this._decimal.test(t)||this._group.test(t)||this._minusSign.test(t)))&&(this.resetRegex(),!0)},resetRegex(){this._numeral.lastIndex=0,this._decimal.lastIndex=0,this._group.lastIndex=0,this._minusSign.lastIndex=0},updateValue(t,e,n,i){let s=this.$refs.input.$el.value,r=null;null!=e&&(r=this.parseValue(e),r=r||this.allowEmpty?r:0,this.updateInput(r,n,i,e),this.handleOnInput(t,s,r))},handleOnInput(t,e,n){this.isValueChanged(e,n)&&this.$emit("input",{originalEvent:t,value:n,formattedValue:e})},isValueChanged(t,e){if(null===e&&null!==t)return!0;if(null!=e){return e!==("string"==typeof t?this.parseValue(t):t)}return!1},validateValue(t){return"-"===t||null==t?null:null!=this.min&&t<this.min?this.min:null!=this.max&&t>this.max?this.max:t},updateInput(t,e,n,i){e=e||"";let s=this.$refs.input.$el.value,r=this.formatValue(t),u=s.length;if(r!==i&&(r=this.concatValues(r,i)),0===u){this.$refs.input.$el.value=r,this.$refs.input.$el.setSelectionRange(0,0);const t=this.initCursor()+e.length;this.$refs.input.$el.setSelectionRange(t,t)}else{let t=this.$refs.input.$el.selectionStart,i=this.$refs.input.$el.selectionEnd;this.$refs.input.$el.value=r;let l=r.length;if("range-insert"===n){const n=this.parseValue((s||"").slice(0,t)),u=(null!==n?n.toString():"").split("").join(`(${this.groupChar})?`),l=new RegExp(u,"g");l.test(r);const a=e.split("").join(`(${this.groupChar})?`),o=new RegExp(a,"g");o.test(r.slice(l.lastIndex)),i=l.lastIndex+o.lastIndex,this.$refs.input.$el.setSelectionRange(i,i)}else if(l===u)"insert"===n||"delete-back-single"===n?this.$refs.input.$el.setSelectionRange(i+1,i+1):"delete-single"===n?this.$refs.input.$el.setSelectionRange(i-1,i-1):"delete-range"!==n&&"spin"!==n||this.$refs.input.$el.setSelectionRange(i,i);else if("delete-back-single"===n){let t=s.charAt(i-1),e=s.charAt(i),n=u-l,r=this._group.test(e);r&&1===n?i+=1:!r&&this.isNumeralChar(t)&&(i+=-1*n+1),this._group.lastIndex=0,this.$refs.input.$el.setSelectionRange(i,i)}else if("-"===s&&"insert"===n){this.$refs.input.$el.setSelectionRange(0,0);const t=this.initCursor()+e.length+1;this.$refs.input.$el.setSelectionRange(t,t)}else i+=l-u,this.$refs.input.$el.setSelectionRange(i,i)}this.$refs.input.$el.setAttribute("aria-valuenow",t)},concatValues(t,e){if(t&&e){let n=e.search(this._decimal);return this._decimal.lastIndex=0,this.suffixChar?t.replace(this.suffixChar,"").split(this._decimal)[0]+e.replace(this.suffixChar,"").slice(n)+this.suffixChar:-1!==n?t.split(this._decimal)[0]+e.slice(n):t}return t},getDecimalLength(t){if(t){const e=t.split(this._decimal);if(2===e.length)return e[1].replace(this._suffix,"").trim().replace(/\s/g,"").replace(this._currency,"").length}return 0},updateModel(t,e){this.d_modelValue=e,this.$emit("update:modelValue",e)},onInputFocus(t){this.focused=!0,this.disabled||this.readonly||this.$refs.input.$el.value===r.getSelection()||!this.highlightOnFocus||t.target.select(),this.$emit("focus",t)},onInputBlur(t){this.focused=!1;let e=t.target,n=this.validateValue(this.parseValue(e.value));this.$emit("blur",{originalEvent:t,value:e.value}),e.value=this.formatValue(n),e.setAttribute("aria-valuenow",n),this.updateModel(t,n)},clearTimer(){this.timer&&clearInterval(this.timer)},maxBoundry(){return this.d_modelValue>=this.max},minBoundry(){return this.d_modelValue<=this.min}},computed:{containerClass(){return["p-inputnumber p-component p-inputwrapper",{"p-inputwrapper-filled":this.filled,"p-inputwrapper-focus":this.focused,"p-inputnumber-buttons-stacked":this.showButtons&&"stacked"===this.buttonLayout,"p-inputnumber-buttons-horizontal":this.showButtons&&"horizontal"===this.buttonLayout,"p-inputnumber-buttons-vertical":this.showButtons&&"vertical"===this.buttonLayout}]},upButtonClass(){return["p-inputnumber-button p-inputnumber-button-up",this.incrementButtonClass,{"p-disabled":this.showButtons&&null!==this.max&&this.maxBoundry()}]},downButtonClass(){return["p-inputnumber-button p-inputnumber-button-down",this.decrementButtonClass,{"p-disabled":this.showButtons&&null!==this.min&&this.minBoundry()}]},filled(){return null!=this.modelValue&&this.modelValue.toString().length>0},upButtonListeners(){return{mousedown:t=>this.onUpButtonMouseDown(t),mouseup:t=>this.onUpButtonMouseUp(t),mouseleave:t=>this.onUpButtonMouseLeave(t),keydown:t=>this.onUpButtonKeyDown(t),keyup:t=>this.onUpButtonKeyUp(t)}},downButtonListeners(){return{mousedown:t=>this.onDownButtonMouseDown(t),mouseup:t=>this.onDownButtonMouseUp(t),mouseleave:t=>this.onDownButtonMouseLeave(t),keydown:t=>this.onDownButtonKeyDown(t),keyup:t=>this.onDownButtonKeyUp(t)}},formattedValue(){const t=this.modelValue||this.allowEmpty?this.modelValue:0;return this.formatValue(t)},getFormatter(){return this.numberFormat}},components:{INInputText:s,INButton:e,AngleUpIcon:i,AngleDownIcon:n}};!function(t,e){void 0===e&&(e={});var n=e.insertAt;if(t&&"undefined"!=typeof document){var i=document.head||document.getElementsByTagName("head")[0],s=document.createElement("style");s.type="text/css","top"===n&&i.firstChild?i.insertBefore(s,i.firstChild):i.appendChild(s),s.styleSheet?s.styleSheet.cssText=t:s.appendChild(document.createTextNode(t))}}("\n.p-inputnumber {\n display: inline-flex;\n}\n.p-inputnumber-button {\n display: flex;\n align-items: center;\n justify-content: center;\n flex: 0 0 auto;\n}\n.p-inputnumber-buttons-stacked .p-button.p-inputnumber-button .p-button-label,\n.p-inputnumber-buttons-horizontal .p-button.p-inputnumber-button .p-button-label {\n display: none;\n}\n.p-inputnumber-buttons-stacked .p-button.p-inputnumber-button-up {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n border-bottom-right-radius: 0;\n padding: 0;\n}\n.p-inputnumber-buttons-stacked .p-inputnumber-input {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n}\n.p-inputnumber-buttons-stacked .p-button.p-inputnumber-button-down {\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n border-bottom-left-radius: 0;\n padding: 0;\n}\n.p-inputnumber-buttons-stacked .p-inputnumber-button-group {\n display: flex;\n flex-direction: column;\n}\n.p-inputnumber-buttons-stacked .p-inputnumber-button-group .p-button.p-inputnumber-button {\n flex: 1 1 auto;\n}\n.p-inputnumber-buttons-horizontal .p-button.p-inputnumber-button-up {\n order: 3;\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n}\n.p-inputnumber-buttons-horizontal .p-inputnumber-input {\n order: 2;\n border-radius: 0;\n}\n.p-inputnumber-buttons-horizontal .p-button.p-inputnumber-button-down {\n order: 1;\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n}\n.p-inputnumber-buttons-vertical {\n flex-direction: column;\n}\n.p-inputnumber-buttons-vertical .p-button.p-inputnumber-button-up {\n order: 1;\n border-bottom-left-radius: 0;\n border-bottom-right-radius: 0;\n width: 100%;\n}\n.p-inputnumber-buttons-vertical .p-inputnumber-input {\n order: 2;\n border-radius: 0;\n text-align: center;\n}\n.p-inputnumber-buttons-vertical .p-button.p-inputnumber-button-down {\n order: 3;\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n width: 100%;\n}\n.p-inputnumber-input {\n flex: 1 1 auto;\n}\n.p-fluid .p-inputnumber {\n width: 100%;\n}\n.p-fluid .p-inputnumber .p-inputnumber-input {\n width: 1%;\n}\n.p-fluid .p-inputnumber-buttons-vertical .p-inputnumber-input {\n width: 100%;\n}\n"),b.render=function(t,e,n,i,s,r){const b=u("INInputText"),x=u("INButton");return l(),a("span",o({class:r.containerClass},t.ptm("root")),[p(b,o({ref:"input",id:n.inputId,class:["p-inputnumber-input",n.inputClass],role:"spinbutton",style:n.inputStyle,value:r.formattedValue,"aria-valuemin":n.min,"aria-valuemax":n.max,"aria-valuenow":n.modelValue,disabled:n.disabled,readonly:n.readonly,placeholder:n.placeholder,"aria-labelledby":t.ariaLabelledby,"aria-label":t.ariaLabel,onInput:r.onUserInput,onKeydown:r.onInputKeyDown,onKeypress:r.onInputKeyPress,onPaste:r.onPaste,onClick:r.onInputClick,onFocus:r.onInputFocus,onBlur:r.onInputBlur},{...n.inputProps,...t.ptm("input")}),null,16,["id","class","style","value","aria-valuemin","aria-valuemax","aria-valuenow","disabled","readonly","placeholder","aria-labelledby","aria-label","onInput","onKeydown","onKeypress","onPaste","onClick","onFocus","onBlur"]),n.showButtons&&"stacked"===n.buttonLayout?(l(),a("span",o({key:0,class:"p-inputnumber-button-group"},t.ptm("buttonGroup")),[p(x,o({class:r.upButtonClass},h(r.upButtonListeners),{disabled:n.disabled,tabindex:-1,"aria-hidden":"true"},{...n.incrementButtonProps,...t.ptm("incrementButton")}),{icon:c((()=>[d(t.$slots,"incrementbuttonicon",{},(()=>[(l(),m(f(n.incrementButtonIcon?"span":"AngleUpIcon"),o({class:n.incrementButtonIcon},t.ptm("incrementButton").icon),null,16,["class"]))]))])),_:3},16,["class","disabled"]),p(x,o({class:r.downButtonClass},h(r.downButtonListeners),{disabled:n.disabled,tabindex:-1,"aria-hidden":"true"},{...n.decrementButtonProps,...t.ptm("decrementButton")}),{icon:c((()=>[d(t.$slots,"decrementbuttonicon",{},(()=>[(l(),m(f(n.decrementButtonIcon?"span":"AngleDownIcon"),o({class:n.decrementButtonIcon},t.ptm("decrementButton").icon),null,16,["class"]))]))])),_:3},16,["class","disabled"])],16)):g("",!0),n.showButtons&&"stacked"!==n.buttonLayout?(l(),m(x,o({key:1,class:r.upButtonClass},h(r.upButtonListeners),{disabled:n.disabled,tabindex:-1,"aria-hidden":"true"},{...n.incrementButtonProps,...t.ptm("incrementButton")}),{icon:c((()=>[d(t.$slots,"incrementbuttonicon",{},(()=>[(l(),m(f(n.incrementButtonIcon?"span":"AngleUpIcon"),o({class:n.incrementButtonIcon},t.ptm("incrementButton").icon),null,16,["class"]))]))])),_:3},16,["class","disabled"])):g("",!0),n.showButtons&&"stacked"!==n.buttonLayout?(l(),m(x,o({key:2,class:r.downButtonClass},h(r.downButtonListeners),{disabled:n.disabled,tabindex:-1,"aria-hidden":"true"},{...n.decrementButtonProps,...t.ptm("decrementButton")}),{icon:c((()=>[d(t.$slots,"decrementbuttonicon",{},(()=>[(l(),m(f(n.decrementButtonIcon?"span":"AngleDownIcon"),o({class:n.decrementButtonIcon},t.ptm("decrementButton").icon),null,16,["class"]))]))])),_:3},16,["class","disabled"])):g("",!0)],16)};export{b as default};
@@ -1,9 +1,10 @@
1
1
  this.primevue = this.primevue || {};
2
- this.primevue.inputnumber = (function (Button, AngleDownIcon, AngleUpIcon, InputText, utils, vue) {
2
+ this.primevue.inputnumber = (function (BaseComponent, Button, AngleDownIcon, AngleUpIcon, InputText, utils, vue) {
3
3
  'use strict';
4
4
 
5
5
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
6
6
 
7
+ var BaseComponent__default = /*#__PURE__*/_interopDefaultLegacy(BaseComponent);
7
8
  var Button__default = /*#__PURE__*/_interopDefaultLegacy(Button);
8
9
  var AngleDownIcon__default = /*#__PURE__*/_interopDefaultLegacy(AngleDownIcon);
9
10
  var AngleUpIcon__default = /*#__PURE__*/_interopDefaultLegacy(AngleUpIcon);
@@ -11,6 +12,7 @@ this.primevue.inputnumber = (function (Button, AngleDownIcon, AngleUpIcon, Input
11
12
 
12
13
  var script = {
13
14
  name: 'InputNumber',
15
+ extends: BaseComponent__default["default"],
14
16
  emits: ['update:modelValue', 'input', 'focus', 'blur'],
15
17
  props: {
16
18
  modelValue: {
@@ -1070,18 +1072,11 @@ this.primevue.inputnumber = (function (Button, AngleDownIcon, AngleUpIcon, Input
1070
1072
  }
1071
1073
  };
1072
1074
 
1073
- const _hoisted_1 = {
1074
- key: 0,
1075
- class: "p-inputnumber-button-group"
1076
- };
1077
-
1078
1075
  function render(_ctx, _cache, $props, $setup, $data, $options) {
1079
1076
  const _component_INInputText = vue.resolveComponent("INInputText");
1080
1077
  const _component_INButton = vue.resolveComponent("INButton");
1081
1078
 
1082
- return (vue.openBlock(), vue.createElementBlock("span", {
1083
- class: vue.normalizeClass($options.containerClass)
1084
- }, [
1079
+ return (vue.openBlock(), vue.createElementBlock("span", vue.mergeProps({ class: $options.containerClass }, _ctx.ptm('root')), [
1085
1080
  vue.createVNode(_component_INInputText, vue.mergeProps({
1086
1081
  ref: "input",
1087
1082
  id: $props.inputId,
@@ -1104,19 +1099,20 @@ this.primevue.inputnumber = (function (Button, AngleDownIcon, AngleUpIcon, Input
1104
1099
  onClick: $options.onInputClick,
1105
1100
  onFocus: $options.onInputFocus,
1106
1101
  onBlur: $options.onInputBlur
1107
- }, $props.inputProps), null, 16, ["id", "class", "style", "value", "aria-valuemin", "aria-valuemax", "aria-valuenow", "disabled", "readonly", "placeholder", "aria-labelledby", "aria-label", "onInput", "onKeydown", "onKeypress", "onPaste", "onClick", "onFocus", "onBlur"]),
1102
+ }, { ...$props.inputProps, ..._ctx.ptm('input') }), null, 16, ["id", "class", "style", "value", "aria-valuemin", "aria-valuemax", "aria-valuenow", "disabled", "readonly", "placeholder", "aria-labelledby", "aria-label", "onInput", "onKeydown", "onKeypress", "onPaste", "onClick", "onFocus", "onBlur"]),
1108
1103
  ($props.showButtons && $props.buttonLayout === 'stacked')
1109
- ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_1, [
1104
+ ? (vue.openBlock(), vue.createElementBlock("span", vue.mergeProps({
1105
+ key: 0,
1106
+ class: "p-inputnumber-button-group"
1107
+ }, _ctx.ptm('buttonGroup')), [
1110
1108
  vue.createVNode(_component_INButton, vue.mergeProps({ class: $options.upButtonClass }, vue.toHandlers($options.upButtonListeners), {
1111
1109
  disabled: $props.disabled,
1112
1110
  tabindex: -1,
1113
1111
  "aria-hidden": "true"
1114
- }, $props.incrementButtonProps), {
1112
+ }, { ...$props.incrementButtonProps, ..._ctx.ptm('incrementButton') }), {
1115
1113
  icon: vue.withCtx(() => [
1116
1114
  vue.renderSlot(_ctx.$slots, "incrementbuttonicon", {}, () => [
1117
- (vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent($props.incrementButtonIcon ? 'span' : 'AngleUpIcon'), {
1118
- class: vue.normalizeClass($props.incrementButtonIcon)
1119
- }, null, 8, ["class"]))
1115
+ (vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent($props.incrementButtonIcon ? 'span' : 'AngleUpIcon'), vue.mergeProps({ class: $props.incrementButtonIcon }, _ctx.ptm('incrementButton')['icon']), null, 16, ["class"]))
1120
1116
  ])
1121
1117
  ]),
1122
1118
  _: 3
@@ -1125,17 +1121,15 @@ this.primevue.inputnumber = (function (Button, AngleDownIcon, AngleUpIcon, Input
1125
1121
  disabled: $props.disabled,
1126
1122
  tabindex: -1,
1127
1123
  "aria-hidden": "true"
1128
- }, $props.decrementButtonProps), {
1124
+ }, { ...$props.decrementButtonProps, ..._ctx.ptm('decrementButton') }), {
1129
1125
  icon: vue.withCtx(() => [
1130
1126
  vue.renderSlot(_ctx.$slots, "decrementbuttonicon", {}, () => [
1131
- (vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent($props.decrementButtonIcon ? 'span' : 'AngleDownIcon'), {
1132
- class: vue.normalizeClass($props.decrementButtonIcon)
1133
- }, null, 8, ["class"]))
1127
+ (vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent($props.decrementButtonIcon ? 'span' : 'AngleDownIcon'), vue.mergeProps({ class: $props.decrementButtonIcon }, _ctx.ptm('decrementButton')['icon']), null, 16, ["class"]))
1134
1128
  ])
1135
1129
  ]),
1136
1130
  _: 3
1137
1131
  }, 16, ["class", "disabled"])
1138
- ]))
1132
+ ], 16))
1139
1133
  : vue.createCommentVNode("", true),
1140
1134
  ($props.showButtons && $props.buttonLayout !== 'stacked')
1141
1135
  ? (vue.openBlock(), vue.createBlock(_component_INButton, vue.mergeProps({
@@ -1145,12 +1139,10 @@ this.primevue.inputnumber = (function (Button, AngleDownIcon, AngleUpIcon, Input
1145
1139
  disabled: $props.disabled,
1146
1140
  tabindex: -1,
1147
1141
  "aria-hidden": "true"
1148
- }, $props.incrementButtonProps), {
1142
+ }, { ...$props.incrementButtonProps, ..._ctx.ptm('incrementButton') }), {
1149
1143
  icon: vue.withCtx(() => [
1150
1144
  vue.renderSlot(_ctx.$slots, "incrementbuttonicon", {}, () => [
1151
- (vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent($props.incrementButtonIcon ? 'span' : 'AngleUpIcon'), {
1152
- class: vue.normalizeClass($props.incrementButtonIcon)
1153
- }, null, 8, ["class"]))
1145
+ (vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent($props.incrementButtonIcon ? 'span' : 'AngleUpIcon'), vue.mergeProps({ class: $props.incrementButtonIcon }, _ctx.ptm('incrementButton')['icon']), null, 16, ["class"]))
1154
1146
  ])
1155
1147
  ]),
1156
1148
  _: 3
@@ -1164,18 +1156,16 @@ this.primevue.inputnumber = (function (Button, AngleDownIcon, AngleUpIcon, Input
1164
1156
  disabled: $props.disabled,
1165
1157
  tabindex: -1,
1166
1158
  "aria-hidden": "true"
1167
- }, $props.decrementButtonProps), {
1159
+ }, { ...$props.decrementButtonProps, ..._ctx.ptm('decrementButton') }), {
1168
1160
  icon: vue.withCtx(() => [
1169
1161
  vue.renderSlot(_ctx.$slots, "decrementbuttonicon", {}, () => [
1170
- (vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent($props.decrementButtonIcon ? 'span' : 'AngleDownIcon'), {
1171
- class: vue.normalizeClass($props.decrementButtonIcon)
1172
- }, null, 8, ["class"]))
1162
+ (vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent($props.decrementButtonIcon ? 'span' : 'AngleDownIcon'), vue.mergeProps({ class: $props.decrementButtonIcon }, _ctx.ptm('decrementButton')['icon']), null, 16, ["class"]))
1173
1163
  ])
1174
1164
  ]),
1175
1165
  _: 3
1176
1166
  }, 16, ["class", "disabled"]))
1177
1167
  : vue.createCommentVNode("", true)
1178
- ], 2))
1168
+ ], 16))
1179
1169
  }
1180
1170
 
1181
1171
  function styleInject(css, ref) {
@@ -1212,4 +1202,4 @@ this.primevue.inputnumber = (function (Button, AngleDownIcon, AngleUpIcon, Input
1212
1202
 
1213
1203
  return script;
1214
1204
 
1215
- })(primevue.button, primevue.icons.angledown, primevue.icons.angleup, primevue.inputtext, primevue.utils, Vue);
1205
+ })(primevue.basecomponent, primevue.button, primevue.icons.angledown, primevue.icons.angleup, primevue.inputtext, primevue.utils, Vue);
@@ -1 +1 @@
1
- this.primevue=this.primevue||{},this.primevue.inputnumber=function(e,t,n,i,s,r){"use strict";function l(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var u=l(e),a=l(t),o=l(n),p={name:"InputNumber",emits:["update:modelValue","input","focus","blur"],props:{modelValue:{type:Number,default:null},format:{type:Boolean,default:!0},showButtons:{type:Boolean,default:!1},buttonLayout:{type:String,default:"stacked"},incrementButtonClass:{type:String,default:null},decrementButtonClass:{type:String,default:null},incrementButtonIcon:{type:String,default:void 0},decrementButtonIcon:{type:String,default:void 0},locale:{type:String,default:void 0},localeMatcher:{type:String,default:void 0},mode:{type:String,default:"decimal"},prefix:{type:String,default:null},suffix:{type:String,default:null},currency:{type:String,default:void 0},currencyDisplay:{type:String,default:void 0},useGrouping:{type:Boolean,default:!0},minFractionDigits:{type:Number,default:void 0},maxFractionDigits:{type:Number,default:void 0},min:{type:Number,default:null},max:{type:Number,default:null},step:{type:Number,default:1},allowEmpty:{type:Boolean,default:!0},highlightOnFocus:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},placeholder:{type:String,default:null},inputId:{type:String,default:null},inputClass:{type:[String,Object],default:null},inputStyle:{type:Object,default:null},inputProps:{type:null,default:null},incrementButtonProps:{type:null,default:null},decrementButtonProps:{type:null,default:null},"aria-labelledby":{type:String,default:null},"aria-label":{type:String,default:null}},numberFormat:null,_numeral:null,_decimal:null,_group:null,_minusSign:null,_currency:null,_suffix:null,_prefix:null,_index:null,groupChar:"",isSpecialChar:null,prefixChar:null,suffixChar:null,timer:null,data(){return{d_modelValue:this.modelValue,focused:!1}},watch:{modelValue(e){this.d_modelValue=e},locale(e,t){this.updateConstructParser(e,t)},localeMatcher(e,t){this.updateConstructParser(e,t)},mode(e,t){this.updateConstructParser(e,t)},currency(e,t){this.updateConstructParser(e,t)},currencyDisplay(e,t){this.updateConstructParser(e,t)},useGrouping(e,t){this.updateConstructParser(e,t)},minFractionDigits(e,t){this.updateConstructParser(e,t)},maxFractionDigits(e,t){this.updateConstructParser(e,t)},suffix(e,t){this.updateConstructParser(e,t)},prefix(e,t){this.updateConstructParser(e,t)}},created(){this.constructParser()},methods:{getOptions(){return{localeMatcher:this.localeMatcher,style:this.mode,currency:this.currency,currencyDisplay:this.currencyDisplay,useGrouping:this.useGrouping,minimumFractionDigits:this.minFractionDigits,maximumFractionDigits:this.maxFractionDigits}},constructParser(){this.numberFormat=new Intl.NumberFormat(this.locale,this.getOptions());const e=[...new Intl.NumberFormat(this.locale,{useGrouping:!1}).format(9876543210)].reverse(),t=new Map(e.map(((e,t)=>[e,t])));this._numeral=new RegExp(`[${e.join("")}]`,"g"),this._group=this.getGroupingExpression(),this._minusSign=this.getMinusSignExpression(),this._currency=this.getCurrencyExpression(),this._decimal=this.getDecimalExpression(),this._suffix=this.getSuffixExpression(),this._prefix=this.getPrefixExpression(),this._index=e=>t.get(e)},updateConstructParser(e,t){e!==t&&this.constructParser()},escapeRegExp:e=>e.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),getDecimalExpression(){const e=new Intl.NumberFormat(this.locale,{...this.getOptions(),useGrouping:!1});return new RegExp(`[${e.format(1.1).replace(this._currency,"").trim().replace(this._numeral,"")}]`,"g")},getGroupingExpression(){const e=new Intl.NumberFormat(this.locale,{useGrouping:!0});return this.groupChar=e.format(1e6).trim().replace(this._numeral,"").charAt(0),new RegExp(`[${this.groupChar}]`,"g")},getMinusSignExpression(){const e=new Intl.NumberFormat(this.locale,{useGrouping:!1});return new RegExp(`[${e.format(-1).trim().replace(this._numeral,"")}]`,"g")},getCurrencyExpression(){if(this.currency){const e=new Intl.NumberFormat(this.locale,{style:"currency",currency:this.currency,currencyDisplay:this.currencyDisplay,minimumFractionDigits:0,maximumFractionDigits:0});return new RegExp(`[${e.format(1).replace(/\s/g,"").replace(this._numeral,"").replace(this._group,"")}]`,"g")}return new RegExp("[]","g")},getPrefixExpression(){if(this.prefix)this.prefixChar=this.prefix;else{const e=new Intl.NumberFormat(this.locale,{style:this.mode,currency:this.currency,currencyDisplay:this.currencyDisplay});this.prefixChar=e.format(1).split("1")[0]}return new RegExp(`${this.escapeRegExp(this.prefixChar||"")}`,"g")},getSuffixExpression(){if(this.suffix)this.suffixChar=this.suffix;else{const e=new Intl.NumberFormat(this.locale,{style:this.mode,currency:this.currency,currencyDisplay:this.currencyDisplay,minimumFractionDigits:0,maximumFractionDigits:0});this.suffixChar=e.format(1).split("1")[1]}return new RegExp(`${this.escapeRegExp(this.suffixChar||"")}`,"g")},formatValue(e){if(null!=e){if("-"===e)return e;if(this.format){let t=new Intl.NumberFormat(this.locale,this.getOptions()).format(e);return this.prefix&&(t=this.prefix+t),this.suffix&&(t+=this.suffix),t}return e.toString()}return""},parseValue(e){let t=e.replace(this._suffix,"").replace(this._prefix,"").trim().replace(/\s/g,"").replace(this._currency,"").replace(this._group,"").replace(this._minusSign,"-").replace(this._decimal,".").replace(this._numeral,this._index);if(t){if("-"===t)return t;let e=+t;return isNaN(e)?null:e}return null},repeat(e,t,n){if(this.readonly)return;let i=t||500;this.clearTimer(),this.timer=setTimeout((()=>{this.repeat(e,40,n)}),i),this.spin(e,n)},spin(e,t){if(this.$refs.input){let n=this.step*t,i=this.parseValue(this.$refs.input.$el.value)||0,s=this.validateValue(i+n);this.updateInput(s,null,"spin"),this.updateModel(e,s),this.handleOnInput(e,i,s)}},onUpButtonMouseDown(e){this.disabled||(this.$refs.input.$el.focus(),this.repeat(e,null,1),e.preventDefault())},onUpButtonMouseUp(){this.disabled||this.clearTimer()},onUpButtonMouseLeave(){this.disabled||this.clearTimer()},onUpButtonKeyUp(){this.disabled||this.clearTimer()},onUpButtonKeyDown(e){32!==e.keyCode&&13!==e.keyCode||this.repeat(e,null,1)},onDownButtonMouseDown(e){this.disabled||(this.$refs.input.$el.focus(),this.repeat(e,null,-1),e.preventDefault())},onDownButtonMouseUp(){this.disabled||this.clearTimer()},onDownButtonMouseLeave(){this.disabled||this.clearTimer()},onDownButtonKeyUp(){this.disabled||this.clearTimer()},onDownButtonKeyDown(e){32!==e.keyCode&&13!==e.keyCode||this.repeat(e,null,-1)},onUserInput(){this.isSpecialChar&&(this.$refs.input.$el.value=this.lastValue),this.isSpecialChar=!1},onInputKeyDown(e){if(this.readonly)return;if(this.lastValue=e.target.value,e.shiftKey||e.altKey)return void(this.isSpecialChar=!0);let t=e.target.selectionStart,n=e.target.selectionEnd,i=e.target.value,s=null;switch(e.altKey&&e.preventDefault(),e.code){case"ArrowUp":this.spin(e,1),e.preventDefault();break;case"ArrowDown":this.spin(e,-1),e.preventDefault();break;case"ArrowLeft":this.isNumeralChar(i.charAt(t-1))||e.preventDefault();break;case"ArrowRight":this.isNumeralChar(i.charAt(t))||e.preventDefault();break;case"Tab":case"Enter":s=this.validateValue(this.parseValue(i)),this.$refs.input.$el.value=this.formatValue(s),this.$refs.input.$el.setAttribute("aria-valuenow",s),this.updateModel(e,s);break;case"Backspace":if(e.preventDefault(),t===n){const n=i.charAt(t-1),{decimalCharIndex:r,decimalCharIndexWithoutPrefix:l}=this.getDecimalCharIndexes(i);if(this.isNumeralChar(n)){const e=this.getDecimalLength(i);if(this._group.test(n))this._group.lastIndex=0,s=i.slice(0,t-2)+i.slice(t-1);else if(this._decimal.test(n))this._decimal.lastIndex=0,e?this.$refs.input.$el.setSelectionRange(t-1,t-1):s=i.slice(0,t-1)+i.slice(t);else if(r>0&&t>r){const n=this.isDecimalMode()&&(this.minFractionDigits||0)<e?"":"0";s=i.slice(0,t-1)+n+i.slice(t)}else 1===l?(s=i.slice(0,t-1)+"0"+i.slice(t),s=this.parseValue(s)>0?s:""):s=i.slice(0,t-1)+i.slice(t)}this.updateValue(e,s,null,"delete-single")}else s=this.deleteRange(i,t,n),this.updateValue(e,s,null,"delete-range");break;case"Delete":if(e.preventDefault(),t===n){const n=i.charAt(t),{decimalCharIndex:r,decimalCharIndexWithoutPrefix:l}=this.getDecimalCharIndexes(i);if(this.isNumeralChar(n)){const e=this.getDecimalLength(i);if(this._group.test(n))this._group.lastIndex=0,s=i.slice(0,t)+i.slice(t+2);else if(this._decimal.test(n))this._decimal.lastIndex=0,e?this.$refs.input.$el.setSelectionRange(t+1,t+1):s=i.slice(0,t)+i.slice(t+1);else if(r>0&&t>r){const n=this.isDecimalMode()&&(this.minFractionDigits||0)<e?"":"0";s=i.slice(0,t)+n+i.slice(t+1)}else 1===l?(s=i.slice(0,t)+"0"+i.slice(t+1),s=this.parseValue(s)>0?s:""):s=i.slice(0,t)+i.slice(t+1)}this.updateValue(e,s,null,"delete-back-single")}else s=this.deleteRange(i,t,n),this.updateValue(e,s,null,"delete-range");break;case"Home":this.min&&(this.updateModel(e,this.min),e.preventDefault());break;case"End":this.max&&(this.updateModel(e,this.max),e.preventDefault())}},onInputKeyPress(e){if(this.readonly)return;e.preventDefault();let t=e.which||e.keyCode,n=String.fromCharCode(t);const i=this.isDecimalSign(n),s=this.isMinusSign(n);(48<=t&&t<=57||s||i)&&this.insert(e,n,{isDecimalSign:i,isMinusSign:s})},onPaste(e){e.preventDefault();let t=(e.clipboardData||window.clipboardData).getData("Text");if(t){let n=this.parseValue(t);null!=n&&this.insert(e,n.toString())}},allowMinusSign(){return null===this.min||this.min<0},isMinusSign(e){return!(!this._minusSign.test(e)&&"-"!==e)&&(this._minusSign.lastIndex=0,!0)},isDecimalSign(e){return!!this._decimal.test(e)&&(this._decimal.lastIndex=0,!0)},isDecimalMode(){return"decimal"===this.mode},getDecimalCharIndexes(e){let t=e.search(this._decimal);this._decimal.lastIndex=0;const n=e.replace(this._prefix,"").trim().replace(/\s/g,"").replace(this._currency,"").search(this._decimal);return this._decimal.lastIndex=0,{decimalCharIndex:t,decimalCharIndexWithoutPrefix:n}},getCharIndexes(e){const t=e.search(this._decimal);this._decimal.lastIndex=0;const n=e.search(this._minusSign);this._minusSign.lastIndex=0;const i=e.search(this._suffix);this._suffix.lastIndex=0;const s=e.search(this._currency);return this._currency.lastIndex=0,{decimalCharIndex:t,minusCharIndex:n,suffixCharIndex:i,currencyCharIndex:s}},insert(e,t,n={isDecimalSign:!1,isMinusSign:!1}){const i=t.search(this._minusSign);if(this._minusSign.lastIndex=0,!this.allowMinusSign()&&-1!==i)return;const s=this.$refs.input.$el.selectionStart,r=this.$refs.input.$el.selectionEnd;let l=this.$refs.input.$el.value.trim();const{decimalCharIndex:u,minusCharIndex:a,suffixCharIndex:o,currencyCharIndex:p}=this.getCharIndexes(l);let c;if(n.isMinusSign)0===s&&(c=l,-1!==a&&0===r||(c=this.insertText(l,t,0,r)),this.updateValue(e,c,t,"insert"));else if(n.isDecimalSign)u>0&&s===u?this.updateValue(e,l,t,"insert"):(u>s&&u<r||-1===u&&this.maxFractionDigits)&&(c=this.insertText(l,t,s,r),this.updateValue(e,c,t,"insert"));else{const n=this.numberFormat.resolvedOptions().maximumFractionDigits,i=s!==r?"range-insert":"insert";if(u>0&&s>u){if(s+t.length-(u+1)<=n){const n=p>=s?p-1:o>=s?o:l.length;c=l.slice(0,s)+t+l.slice(s+t.length,n)+l.slice(n),this.updateValue(e,c,t,i)}}else c=this.insertText(l,t,s,r),this.updateValue(e,c,t,i)}},insertText(e,t,n,i){if(2===("."===t?t:t.split(".")).length){const s=e.slice(n,i).search(this._decimal);return this._decimal.lastIndex=0,s>0?e.slice(0,n)+this.formatValue(t)+e.slice(i):e||this.formatValue(t)}return i-n===e.length?this.formatValue(t):0===n?t+e.slice(i):i===e.length?e.slice(0,n)+t:e.slice(0,n)+t+e.slice(i)},deleteRange(e,t,n){let i;return i=n-t===e.length?"":0===t?e.slice(n):n===e.length?e.slice(0,t):e.slice(0,t)+e.slice(n),i},initCursor(){let e=this.$refs.input.$el.selectionStart,t=this.$refs.input.$el.value,n=t.length,i=null,s=(this.prefixChar||"").length;t=t.replace(this._prefix,""),e-=s;let r=t.charAt(e);if(this.isNumeralChar(r))return e+s;let l=e-1;for(;l>=0;){if(r=t.charAt(l),this.isNumeralChar(r)){i=l+s;break}l--}if(null!==i)this.$refs.input.$el.setSelectionRange(i+1,i+1);else{for(l=e;l<n;){if(r=t.charAt(l),this.isNumeralChar(r)){i=l+s;break}l++}null!==i&&this.$refs.input.$el.setSelectionRange(i,i)}return i||0},onInputClick(){const e=this.$refs.input.$el.value;this.readonly||e===s.DomHandler.getSelection()||this.initCursor()},isNumeralChar(e){return!(1!==e.length||!(this._numeral.test(e)||this._decimal.test(e)||this._group.test(e)||this._minusSign.test(e)))&&(this.resetRegex(),!0)},resetRegex(){this._numeral.lastIndex=0,this._decimal.lastIndex=0,this._group.lastIndex=0,this._minusSign.lastIndex=0},updateValue(e,t,n,i){let s=this.$refs.input.$el.value,r=null;null!=t&&(r=this.parseValue(t),r=r||this.allowEmpty?r:0,this.updateInput(r,n,i,t),this.handleOnInput(e,s,r))},handleOnInput(e,t,n){this.isValueChanged(t,n)&&this.$emit("input",{originalEvent:e,value:n,formattedValue:t})},isValueChanged(e,t){if(null===t&&null!==e)return!0;if(null!=t){return t!==("string"==typeof e?this.parseValue(e):e)}return!1},validateValue(e){return"-"===e||null==e?null:null!=this.min&&e<this.min?this.min:null!=this.max&&e>this.max?this.max:e},updateInput(e,t,n,i){t=t||"";let s=this.$refs.input.$el.value,r=this.formatValue(e),l=s.length;if(r!==i&&(r=this.concatValues(r,i)),0===l){this.$refs.input.$el.value=r,this.$refs.input.$el.setSelectionRange(0,0);const e=this.initCursor()+t.length;this.$refs.input.$el.setSelectionRange(e,e)}else{let e=this.$refs.input.$el.selectionStart,i=this.$refs.input.$el.selectionEnd;this.$refs.input.$el.value=r;let u=r.length;if("range-insert"===n){const n=this.parseValue((s||"").slice(0,e)),l=(null!==n?n.toString():"").split("").join(`(${this.groupChar})?`),u=new RegExp(l,"g");u.test(r);const a=t.split("").join(`(${this.groupChar})?`),o=new RegExp(a,"g");o.test(r.slice(u.lastIndex)),i=u.lastIndex+o.lastIndex,this.$refs.input.$el.setSelectionRange(i,i)}else if(u===l)"insert"===n||"delete-back-single"===n?this.$refs.input.$el.setSelectionRange(i+1,i+1):"delete-single"===n?this.$refs.input.$el.setSelectionRange(i-1,i-1):"delete-range"!==n&&"spin"!==n||this.$refs.input.$el.setSelectionRange(i,i);else if("delete-back-single"===n){let e=s.charAt(i-1),t=s.charAt(i),n=l-u,r=this._group.test(t);r&&1===n?i+=1:!r&&this.isNumeralChar(e)&&(i+=-1*n+1),this._group.lastIndex=0,this.$refs.input.$el.setSelectionRange(i,i)}else if("-"===s&&"insert"===n){this.$refs.input.$el.setSelectionRange(0,0);const e=this.initCursor()+t.length+1;this.$refs.input.$el.setSelectionRange(e,e)}else i+=u-l,this.$refs.input.$el.setSelectionRange(i,i)}this.$refs.input.$el.setAttribute("aria-valuenow",e)},concatValues(e,t){if(e&&t){let n=t.search(this._decimal);return this._decimal.lastIndex=0,this.suffixChar?e.replace(this.suffixChar,"").split(this._decimal)[0]+t.replace(this.suffixChar,"").slice(n)+this.suffixChar:-1!==n?e.split(this._decimal)[0]+t.slice(n):e}return e},getDecimalLength(e){if(e){const t=e.split(this._decimal);if(2===t.length)return t[1].replace(this._suffix,"").trim().replace(/\s/g,"").replace(this._currency,"").length}return 0},updateModel(e,t){this.d_modelValue=t,this.$emit("update:modelValue",t)},onInputFocus(e){this.focused=!0,this.disabled||this.readonly||this.$refs.input.$el.value===s.DomHandler.getSelection()||!this.highlightOnFocus||e.target.select(),this.$emit("focus",e)},onInputBlur(e){this.focused=!1;let t=e.target,n=this.validateValue(this.parseValue(t.value));this.$emit("blur",{originalEvent:e,value:t.value}),t.value=this.formatValue(n),t.setAttribute("aria-valuenow",n),this.updateModel(e,n)},clearTimer(){this.timer&&clearInterval(this.timer)},maxBoundry(){return this.d_modelValue>=this.max},minBoundry(){return this.d_modelValue<=this.min}},computed:{containerClass(){return["p-inputnumber p-component p-inputwrapper",{"p-inputwrapper-filled":this.filled,"p-inputwrapper-focus":this.focused,"p-inputnumber-buttons-stacked":this.showButtons&&"stacked"===this.buttonLayout,"p-inputnumber-buttons-horizontal":this.showButtons&&"horizontal"===this.buttonLayout,"p-inputnumber-buttons-vertical":this.showButtons&&"vertical"===this.buttonLayout}]},upButtonClass(){return["p-inputnumber-button p-inputnumber-button-up",this.incrementButtonClass,{"p-disabled":this.showButtons&&null!==this.max&&this.maxBoundry()}]},downButtonClass(){return["p-inputnumber-button p-inputnumber-button-down",this.decrementButtonClass,{"p-disabled":this.showButtons&&null!==this.min&&this.minBoundry()}]},filled(){return null!=this.modelValue&&this.modelValue.toString().length>0},upButtonListeners(){return{mousedown:e=>this.onUpButtonMouseDown(e),mouseup:e=>this.onUpButtonMouseUp(e),mouseleave:e=>this.onUpButtonMouseLeave(e),keydown:e=>this.onUpButtonKeyDown(e),keyup:e=>this.onUpButtonKeyUp(e)}},downButtonListeners(){return{mousedown:e=>this.onDownButtonMouseDown(e),mouseup:e=>this.onDownButtonMouseUp(e),mouseleave:e=>this.onDownButtonMouseLeave(e),keydown:e=>this.onDownButtonKeyDown(e),keyup:e=>this.onDownButtonKeyUp(e)}},formattedValue(){const e=this.modelValue||this.allowEmpty?this.modelValue:0;return this.formatValue(e)},getFormatter(){return this.numberFormat}},components:{INInputText:l(i).default,INButton:u.default,AngleUpIcon:o.default,AngleDownIcon:a.default}};const c={key:0,class:"p-inputnumber-button-group"};return function(e,t){void 0===t&&(t={});var n=t.insertAt;if(e&&"undefined"!=typeof document){var i=document.head||document.getElementsByTagName("head")[0],s=document.createElement("style");s.type="text/css","top"===n&&i.firstChild?i.insertBefore(s,i.firstChild):i.appendChild(s),s.styleSheet?s.styleSheet.cssText=e:s.appendChild(document.createTextNode(e))}}("\n.p-inputnumber {\n display: inline-flex;\n}\n.p-inputnumber-button {\n display: flex;\n align-items: center;\n justify-content: center;\n flex: 0 0 auto;\n}\n.p-inputnumber-buttons-stacked .p-button.p-inputnumber-button .p-button-label,\n.p-inputnumber-buttons-horizontal .p-button.p-inputnumber-button .p-button-label {\n display: none;\n}\n.p-inputnumber-buttons-stacked .p-button.p-inputnumber-button-up {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n border-bottom-right-radius: 0;\n padding: 0;\n}\n.p-inputnumber-buttons-stacked .p-inputnumber-input {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n}\n.p-inputnumber-buttons-stacked .p-button.p-inputnumber-button-down {\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n border-bottom-left-radius: 0;\n padding: 0;\n}\n.p-inputnumber-buttons-stacked .p-inputnumber-button-group {\n display: flex;\n flex-direction: column;\n}\n.p-inputnumber-buttons-stacked .p-inputnumber-button-group .p-button.p-inputnumber-button {\n flex: 1 1 auto;\n}\n.p-inputnumber-buttons-horizontal .p-button.p-inputnumber-button-up {\n order: 3;\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n}\n.p-inputnumber-buttons-horizontal .p-inputnumber-input {\n order: 2;\n border-radius: 0;\n}\n.p-inputnumber-buttons-horizontal .p-button.p-inputnumber-button-down {\n order: 1;\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n}\n.p-inputnumber-buttons-vertical {\n flex-direction: column;\n}\n.p-inputnumber-buttons-vertical .p-button.p-inputnumber-button-up {\n order: 1;\n border-bottom-left-radius: 0;\n border-bottom-right-radius: 0;\n width: 100%;\n}\n.p-inputnumber-buttons-vertical .p-inputnumber-input {\n order: 2;\n border-radius: 0;\n text-align: center;\n}\n.p-inputnumber-buttons-vertical .p-button.p-inputnumber-button-down {\n order: 3;\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n width: 100%;\n}\n.p-inputnumber-input {\n flex: 1 1 auto;\n}\n.p-fluid .p-inputnumber {\n width: 100%;\n}\n.p-fluid .p-inputnumber .p-inputnumber-input {\n width: 1%;\n}\n.p-fluid .p-inputnumber-buttons-vertical .p-inputnumber-input {\n width: 100%;\n}\n"),p.render=function(e,t,n,i,s,l){const u=r.resolveComponent("INInputText"),a=r.resolveComponent("INButton");return r.openBlock(),r.createElementBlock("span",{class:r.normalizeClass(l.containerClass)},[r.createVNode(u,r.mergeProps({ref:"input",id:n.inputId,class:["p-inputnumber-input",n.inputClass],role:"spinbutton",style:n.inputStyle,value:l.formattedValue,"aria-valuemin":n.min,"aria-valuemax":n.max,"aria-valuenow":n.modelValue,disabled:n.disabled,readonly:n.readonly,placeholder:n.placeholder,"aria-labelledby":e.ariaLabelledby,"aria-label":e.ariaLabel,onInput:l.onUserInput,onKeydown:l.onInputKeyDown,onKeypress:l.onInputKeyPress,onPaste:l.onPaste,onClick:l.onInputClick,onFocus:l.onInputFocus,onBlur:l.onInputBlur},n.inputProps),null,16,["id","class","style","value","aria-valuemin","aria-valuemax","aria-valuenow","disabled","readonly","placeholder","aria-labelledby","aria-label","onInput","onKeydown","onKeypress","onPaste","onClick","onFocus","onBlur"]),n.showButtons&&"stacked"===n.buttonLayout?(r.openBlock(),r.createElementBlock("span",c,[r.createVNode(a,r.mergeProps({class:l.upButtonClass},r.toHandlers(l.upButtonListeners),{disabled:n.disabled,tabindex:-1,"aria-hidden":"true"},n.incrementButtonProps),{icon:r.withCtx((()=>[r.renderSlot(e.$slots,"incrementbuttonicon",{},(()=>[(r.openBlock(),r.createBlock(r.resolveDynamicComponent(n.incrementButtonIcon?"span":"AngleUpIcon"),{class:r.normalizeClass(n.incrementButtonIcon)},null,8,["class"]))]))])),_:3},16,["class","disabled"]),r.createVNode(a,r.mergeProps({class:l.downButtonClass},r.toHandlers(l.downButtonListeners),{disabled:n.disabled,tabindex:-1,"aria-hidden":"true"},n.decrementButtonProps),{icon:r.withCtx((()=>[r.renderSlot(e.$slots,"decrementbuttonicon",{},(()=>[(r.openBlock(),r.createBlock(r.resolveDynamicComponent(n.decrementButtonIcon?"span":"AngleDownIcon"),{class:r.normalizeClass(n.decrementButtonIcon)},null,8,["class"]))]))])),_:3},16,["class","disabled"])])):r.createCommentVNode("",!0),n.showButtons&&"stacked"!==n.buttonLayout?(r.openBlock(),r.createBlock(a,r.mergeProps({key:1,class:l.upButtonClass},r.toHandlers(l.upButtonListeners),{disabled:n.disabled,tabindex:-1,"aria-hidden":"true"},n.incrementButtonProps),{icon:r.withCtx((()=>[r.renderSlot(e.$slots,"incrementbuttonicon",{},(()=>[(r.openBlock(),r.createBlock(r.resolveDynamicComponent(n.incrementButtonIcon?"span":"AngleUpIcon"),{class:r.normalizeClass(n.incrementButtonIcon)},null,8,["class"]))]))])),_:3},16,["class","disabled"])):r.createCommentVNode("",!0),n.showButtons&&"stacked"!==n.buttonLayout?(r.openBlock(),r.createBlock(a,r.mergeProps({key:2,class:l.downButtonClass},r.toHandlers(l.downButtonListeners),{disabled:n.disabled,tabindex:-1,"aria-hidden":"true"},n.decrementButtonProps),{icon:r.withCtx((()=>[r.renderSlot(e.$slots,"decrementbuttonicon",{},(()=>[(r.openBlock(),r.createBlock(r.resolveDynamicComponent(n.decrementButtonIcon?"span":"AngleDownIcon"),{class:r.normalizeClass(n.decrementButtonIcon)},null,8,["class"]))]))])),_:3},16,["class","disabled"])):r.createCommentVNode("",!0)],2)},p}(primevue.button,primevue.icons.angledown,primevue.icons.angleup,primevue.inputtext,primevue.utils,Vue);
1
+ this.primevue=this.primevue||{},this.primevue.inputnumber=function(e,t,n,i,s,r,l){"use strict";function u(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var a=u(e),o=u(t),p=u(n),c=u(i),h=u(s),d={name:"InputNumber",extends:a.default,emits:["update:modelValue","input","focus","blur"],props:{modelValue:{type:Number,default:null},format:{type:Boolean,default:!0},showButtons:{type:Boolean,default:!1},buttonLayout:{type:String,default:"stacked"},incrementButtonClass:{type:String,default:null},decrementButtonClass:{type:String,default:null},incrementButtonIcon:{type:String,default:void 0},decrementButtonIcon:{type:String,default:void 0},locale:{type:String,default:void 0},localeMatcher:{type:String,default:void 0},mode:{type:String,default:"decimal"},prefix:{type:String,default:null},suffix:{type:String,default:null},currency:{type:String,default:void 0},currencyDisplay:{type:String,default:void 0},useGrouping:{type:Boolean,default:!0},minFractionDigits:{type:Number,default:void 0},maxFractionDigits:{type:Number,default:void 0},min:{type:Number,default:null},max:{type:Number,default:null},step:{type:Number,default:1},allowEmpty:{type:Boolean,default:!0},highlightOnFocus:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},placeholder:{type:String,default:null},inputId:{type:String,default:null},inputClass:{type:[String,Object],default:null},inputStyle:{type:Object,default:null},inputProps:{type:null,default:null},incrementButtonProps:{type:null,default:null},decrementButtonProps:{type:null,default:null},"aria-labelledby":{type:String,default:null},"aria-label":{type:String,default:null}},numberFormat:null,_numeral:null,_decimal:null,_group:null,_minusSign:null,_currency:null,_suffix:null,_prefix:null,_index:null,groupChar:"",isSpecialChar:null,prefixChar:null,suffixChar:null,timer:null,data(){return{d_modelValue:this.modelValue,focused:!1}},watch:{modelValue(e){this.d_modelValue=e},locale(e,t){this.updateConstructParser(e,t)},localeMatcher(e,t){this.updateConstructParser(e,t)},mode(e,t){this.updateConstructParser(e,t)},currency(e,t){this.updateConstructParser(e,t)},currencyDisplay(e,t){this.updateConstructParser(e,t)},useGrouping(e,t){this.updateConstructParser(e,t)},minFractionDigits(e,t){this.updateConstructParser(e,t)},maxFractionDigits(e,t){this.updateConstructParser(e,t)},suffix(e,t){this.updateConstructParser(e,t)},prefix(e,t){this.updateConstructParser(e,t)}},created(){this.constructParser()},methods:{getOptions(){return{localeMatcher:this.localeMatcher,style:this.mode,currency:this.currency,currencyDisplay:this.currencyDisplay,useGrouping:this.useGrouping,minimumFractionDigits:this.minFractionDigits,maximumFractionDigits:this.maxFractionDigits}},constructParser(){this.numberFormat=new Intl.NumberFormat(this.locale,this.getOptions());const e=[...new Intl.NumberFormat(this.locale,{useGrouping:!1}).format(9876543210)].reverse(),t=new Map(e.map(((e,t)=>[e,t])));this._numeral=new RegExp(`[${e.join("")}]`,"g"),this._group=this.getGroupingExpression(),this._minusSign=this.getMinusSignExpression(),this._currency=this.getCurrencyExpression(),this._decimal=this.getDecimalExpression(),this._suffix=this.getSuffixExpression(),this._prefix=this.getPrefixExpression(),this._index=e=>t.get(e)},updateConstructParser(e,t){e!==t&&this.constructParser()},escapeRegExp:e=>e.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),getDecimalExpression(){const e=new Intl.NumberFormat(this.locale,{...this.getOptions(),useGrouping:!1});return new RegExp(`[${e.format(1.1).replace(this._currency,"").trim().replace(this._numeral,"")}]`,"g")},getGroupingExpression(){const e=new Intl.NumberFormat(this.locale,{useGrouping:!0});return this.groupChar=e.format(1e6).trim().replace(this._numeral,"").charAt(0),new RegExp(`[${this.groupChar}]`,"g")},getMinusSignExpression(){const e=new Intl.NumberFormat(this.locale,{useGrouping:!1});return new RegExp(`[${e.format(-1).trim().replace(this._numeral,"")}]`,"g")},getCurrencyExpression(){if(this.currency){const e=new Intl.NumberFormat(this.locale,{style:"currency",currency:this.currency,currencyDisplay:this.currencyDisplay,minimumFractionDigits:0,maximumFractionDigits:0});return new RegExp(`[${e.format(1).replace(/\s/g,"").replace(this._numeral,"").replace(this._group,"")}]`,"g")}return new RegExp("[]","g")},getPrefixExpression(){if(this.prefix)this.prefixChar=this.prefix;else{const e=new Intl.NumberFormat(this.locale,{style:this.mode,currency:this.currency,currencyDisplay:this.currencyDisplay});this.prefixChar=e.format(1).split("1")[0]}return new RegExp(`${this.escapeRegExp(this.prefixChar||"")}`,"g")},getSuffixExpression(){if(this.suffix)this.suffixChar=this.suffix;else{const e=new Intl.NumberFormat(this.locale,{style:this.mode,currency:this.currency,currencyDisplay:this.currencyDisplay,minimumFractionDigits:0,maximumFractionDigits:0});this.suffixChar=e.format(1).split("1")[1]}return new RegExp(`${this.escapeRegExp(this.suffixChar||"")}`,"g")},formatValue(e){if(null!=e){if("-"===e)return e;if(this.format){let t=new Intl.NumberFormat(this.locale,this.getOptions()).format(e);return this.prefix&&(t=this.prefix+t),this.suffix&&(t+=this.suffix),t}return e.toString()}return""},parseValue(e){let t=e.replace(this._suffix,"").replace(this._prefix,"").trim().replace(/\s/g,"").replace(this._currency,"").replace(this._group,"").replace(this._minusSign,"-").replace(this._decimal,".").replace(this._numeral,this._index);if(t){if("-"===t)return t;let e=+t;return isNaN(e)?null:e}return null},repeat(e,t,n){if(this.readonly)return;let i=t||500;this.clearTimer(),this.timer=setTimeout((()=>{this.repeat(e,40,n)}),i),this.spin(e,n)},spin(e,t){if(this.$refs.input){let n=this.step*t,i=this.parseValue(this.$refs.input.$el.value)||0,s=this.validateValue(i+n);this.updateInput(s,null,"spin"),this.updateModel(e,s),this.handleOnInput(e,i,s)}},onUpButtonMouseDown(e){this.disabled||(this.$refs.input.$el.focus(),this.repeat(e,null,1),e.preventDefault())},onUpButtonMouseUp(){this.disabled||this.clearTimer()},onUpButtonMouseLeave(){this.disabled||this.clearTimer()},onUpButtonKeyUp(){this.disabled||this.clearTimer()},onUpButtonKeyDown(e){32!==e.keyCode&&13!==e.keyCode||this.repeat(e,null,1)},onDownButtonMouseDown(e){this.disabled||(this.$refs.input.$el.focus(),this.repeat(e,null,-1),e.preventDefault())},onDownButtonMouseUp(){this.disabled||this.clearTimer()},onDownButtonMouseLeave(){this.disabled||this.clearTimer()},onDownButtonKeyUp(){this.disabled||this.clearTimer()},onDownButtonKeyDown(e){32!==e.keyCode&&13!==e.keyCode||this.repeat(e,null,-1)},onUserInput(){this.isSpecialChar&&(this.$refs.input.$el.value=this.lastValue),this.isSpecialChar=!1},onInputKeyDown(e){if(this.readonly)return;if(this.lastValue=e.target.value,e.shiftKey||e.altKey)return void(this.isSpecialChar=!0);let t=e.target.selectionStart,n=e.target.selectionEnd,i=e.target.value,s=null;switch(e.altKey&&e.preventDefault(),e.code){case"ArrowUp":this.spin(e,1),e.preventDefault();break;case"ArrowDown":this.spin(e,-1),e.preventDefault();break;case"ArrowLeft":this.isNumeralChar(i.charAt(t-1))||e.preventDefault();break;case"ArrowRight":this.isNumeralChar(i.charAt(t))||e.preventDefault();break;case"Tab":case"Enter":s=this.validateValue(this.parseValue(i)),this.$refs.input.$el.value=this.formatValue(s),this.$refs.input.$el.setAttribute("aria-valuenow",s),this.updateModel(e,s);break;case"Backspace":if(e.preventDefault(),t===n){const n=i.charAt(t-1),{decimalCharIndex:r,decimalCharIndexWithoutPrefix:l}=this.getDecimalCharIndexes(i);if(this.isNumeralChar(n)){const e=this.getDecimalLength(i);if(this._group.test(n))this._group.lastIndex=0,s=i.slice(0,t-2)+i.slice(t-1);else if(this._decimal.test(n))this._decimal.lastIndex=0,e?this.$refs.input.$el.setSelectionRange(t-1,t-1):s=i.slice(0,t-1)+i.slice(t);else if(r>0&&t>r){const n=this.isDecimalMode()&&(this.minFractionDigits||0)<e?"":"0";s=i.slice(0,t-1)+n+i.slice(t)}else 1===l?(s=i.slice(0,t-1)+"0"+i.slice(t),s=this.parseValue(s)>0?s:""):s=i.slice(0,t-1)+i.slice(t)}this.updateValue(e,s,null,"delete-single")}else s=this.deleteRange(i,t,n),this.updateValue(e,s,null,"delete-range");break;case"Delete":if(e.preventDefault(),t===n){const n=i.charAt(t),{decimalCharIndex:r,decimalCharIndexWithoutPrefix:l}=this.getDecimalCharIndexes(i);if(this.isNumeralChar(n)){const e=this.getDecimalLength(i);if(this._group.test(n))this._group.lastIndex=0,s=i.slice(0,t)+i.slice(t+2);else if(this._decimal.test(n))this._decimal.lastIndex=0,e?this.$refs.input.$el.setSelectionRange(t+1,t+1):s=i.slice(0,t)+i.slice(t+1);else if(r>0&&t>r){const n=this.isDecimalMode()&&(this.minFractionDigits||0)<e?"":"0";s=i.slice(0,t)+n+i.slice(t+1)}else 1===l?(s=i.slice(0,t)+"0"+i.slice(t+1),s=this.parseValue(s)>0?s:""):s=i.slice(0,t)+i.slice(t+1)}this.updateValue(e,s,null,"delete-back-single")}else s=this.deleteRange(i,t,n),this.updateValue(e,s,null,"delete-range");break;case"Home":this.min&&(this.updateModel(e,this.min),e.preventDefault());break;case"End":this.max&&(this.updateModel(e,this.max),e.preventDefault())}},onInputKeyPress(e){if(this.readonly)return;e.preventDefault();let t=e.which||e.keyCode,n=String.fromCharCode(t);const i=this.isDecimalSign(n),s=this.isMinusSign(n);(48<=t&&t<=57||s||i)&&this.insert(e,n,{isDecimalSign:i,isMinusSign:s})},onPaste(e){e.preventDefault();let t=(e.clipboardData||window.clipboardData).getData("Text");if(t){let n=this.parseValue(t);null!=n&&this.insert(e,n.toString())}},allowMinusSign(){return null===this.min||this.min<0},isMinusSign(e){return!(!this._minusSign.test(e)&&"-"!==e)&&(this._minusSign.lastIndex=0,!0)},isDecimalSign(e){return!!this._decimal.test(e)&&(this._decimal.lastIndex=0,!0)},isDecimalMode(){return"decimal"===this.mode},getDecimalCharIndexes(e){let t=e.search(this._decimal);this._decimal.lastIndex=0;const n=e.replace(this._prefix,"").trim().replace(/\s/g,"").replace(this._currency,"").search(this._decimal);return this._decimal.lastIndex=0,{decimalCharIndex:t,decimalCharIndexWithoutPrefix:n}},getCharIndexes(e){const t=e.search(this._decimal);this._decimal.lastIndex=0;const n=e.search(this._minusSign);this._minusSign.lastIndex=0;const i=e.search(this._suffix);this._suffix.lastIndex=0;const s=e.search(this._currency);return this._currency.lastIndex=0,{decimalCharIndex:t,minusCharIndex:n,suffixCharIndex:i,currencyCharIndex:s}},insert(e,t,n={isDecimalSign:!1,isMinusSign:!1}){const i=t.search(this._minusSign);if(this._minusSign.lastIndex=0,!this.allowMinusSign()&&-1!==i)return;const s=this.$refs.input.$el.selectionStart,r=this.$refs.input.$el.selectionEnd;let l=this.$refs.input.$el.value.trim();const{decimalCharIndex:u,minusCharIndex:a,suffixCharIndex:o,currencyCharIndex:p}=this.getCharIndexes(l);let c;if(n.isMinusSign)0===s&&(c=l,-1!==a&&0===r||(c=this.insertText(l,t,0,r)),this.updateValue(e,c,t,"insert"));else if(n.isDecimalSign)u>0&&s===u?this.updateValue(e,l,t,"insert"):(u>s&&u<r||-1===u&&this.maxFractionDigits)&&(c=this.insertText(l,t,s,r),this.updateValue(e,c,t,"insert"));else{const n=this.numberFormat.resolvedOptions().maximumFractionDigits,i=s!==r?"range-insert":"insert";if(u>0&&s>u){if(s+t.length-(u+1)<=n){const n=p>=s?p-1:o>=s?o:l.length;c=l.slice(0,s)+t+l.slice(s+t.length,n)+l.slice(n),this.updateValue(e,c,t,i)}}else c=this.insertText(l,t,s,r),this.updateValue(e,c,t,i)}},insertText(e,t,n,i){if(2===("."===t?t:t.split(".")).length){const s=e.slice(n,i).search(this._decimal);return this._decimal.lastIndex=0,s>0?e.slice(0,n)+this.formatValue(t)+e.slice(i):e||this.formatValue(t)}return i-n===e.length?this.formatValue(t):0===n?t+e.slice(i):i===e.length?e.slice(0,n)+t:e.slice(0,n)+t+e.slice(i)},deleteRange(e,t,n){let i;return i=n-t===e.length?"":0===t?e.slice(n):n===e.length?e.slice(0,t):e.slice(0,t)+e.slice(n),i},initCursor(){let e=this.$refs.input.$el.selectionStart,t=this.$refs.input.$el.value,n=t.length,i=null,s=(this.prefixChar||"").length;t=t.replace(this._prefix,""),e-=s;let r=t.charAt(e);if(this.isNumeralChar(r))return e+s;let l=e-1;for(;l>=0;){if(r=t.charAt(l),this.isNumeralChar(r)){i=l+s;break}l--}if(null!==i)this.$refs.input.$el.setSelectionRange(i+1,i+1);else{for(l=e;l<n;){if(r=t.charAt(l),this.isNumeralChar(r)){i=l+s;break}l++}null!==i&&this.$refs.input.$el.setSelectionRange(i,i)}return i||0},onInputClick(){const e=this.$refs.input.$el.value;this.readonly||e===r.DomHandler.getSelection()||this.initCursor()},isNumeralChar(e){return!(1!==e.length||!(this._numeral.test(e)||this._decimal.test(e)||this._group.test(e)||this._minusSign.test(e)))&&(this.resetRegex(),!0)},resetRegex(){this._numeral.lastIndex=0,this._decimal.lastIndex=0,this._group.lastIndex=0,this._minusSign.lastIndex=0},updateValue(e,t,n,i){let s=this.$refs.input.$el.value,r=null;null!=t&&(r=this.parseValue(t),r=r||this.allowEmpty?r:0,this.updateInput(r,n,i,t),this.handleOnInput(e,s,r))},handleOnInput(e,t,n){this.isValueChanged(t,n)&&this.$emit("input",{originalEvent:e,value:n,formattedValue:t})},isValueChanged(e,t){if(null===t&&null!==e)return!0;if(null!=t){return t!==("string"==typeof e?this.parseValue(e):e)}return!1},validateValue(e){return"-"===e||null==e?null:null!=this.min&&e<this.min?this.min:null!=this.max&&e>this.max?this.max:e},updateInput(e,t,n,i){t=t||"";let s=this.$refs.input.$el.value,r=this.formatValue(e),l=s.length;if(r!==i&&(r=this.concatValues(r,i)),0===l){this.$refs.input.$el.value=r,this.$refs.input.$el.setSelectionRange(0,0);const e=this.initCursor()+t.length;this.$refs.input.$el.setSelectionRange(e,e)}else{let e=this.$refs.input.$el.selectionStart,i=this.$refs.input.$el.selectionEnd;this.$refs.input.$el.value=r;let u=r.length;if("range-insert"===n){const n=this.parseValue((s||"").slice(0,e)),l=(null!==n?n.toString():"").split("").join(`(${this.groupChar})?`),u=new RegExp(l,"g");u.test(r);const a=t.split("").join(`(${this.groupChar})?`),o=new RegExp(a,"g");o.test(r.slice(u.lastIndex)),i=u.lastIndex+o.lastIndex,this.$refs.input.$el.setSelectionRange(i,i)}else if(u===l)"insert"===n||"delete-back-single"===n?this.$refs.input.$el.setSelectionRange(i+1,i+1):"delete-single"===n?this.$refs.input.$el.setSelectionRange(i-1,i-1):"delete-range"!==n&&"spin"!==n||this.$refs.input.$el.setSelectionRange(i,i);else if("delete-back-single"===n){let e=s.charAt(i-1),t=s.charAt(i),n=l-u,r=this._group.test(t);r&&1===n?i+=1:!r&&this.isNumeralChar(e)&&(i+=-1*n+1),this._group.lastIndex=0,this.$refs.input.$el.setSelectionRange(i,i)}else if("-"===s&&"insert"===n){this.$refs.input.$el.setSelectionRange(0,0);const e=this.initCursor()+t.length+1;this.$refs.input.$el.setSelectionRange(e,e)}else i+=u-l,this.$refs.input.$el.setSelectionRange(i,i)}this.$refs.input.$el.setAttribute("aria-valuenow",e)},concatValues(e,t){if(e&&t){let n=t.search(this._decimal);return this._decimal.lastIndex=0,this.suffixChar?e.replace(this.suffixChar,"").split(this._decimal)[0]+t.replace(this.suffixChar,"").slice(n)+this.suffixChar:-1!==n?e.split(this._decimal)[0]+t.slice(n):e}return e},getDecimalLength(e){if(e){const t=e.split(this._decimal);if(2===t.length)return t[1].replace(this._suffix,"").trim().replace(/\s/g,"").replace(this._currency,"").length}return 0},updateModel(e,t){this.d_modelValue=t,this.$emit("update:modelValue",t)},onInputFocus(e){this.focused=!0,this.disabled||this.readonly||this.$refs.input.$el.value===r.DomHandler.getSelection()||!this.highlightOnFocus||e.target.select(),this.$emit("focus",e)},onInputBlur(e){this.focused=!1;let t=e.target,n=this.validateValue(this.parseValue(t.value));this.$emit("blur",{originalEvent:e,value:t.value}),t.value=this.formatValue(n),t.setAttribute("aria-valuenow",n),this.updateModel(e,n)},clearTimer(){this.timer&&clearInterval(this.timer)},maxBoundry(){return this.d_modelValue>=this.max},minBoundry(){return this.d_modelValue<=this.min}},computed:{containerClass(){return["p-inputnumber p-component p-inputwrapper",{"p-inputwrapper-filled":this.filled,"p-inputwrapper-focus":this.focused,"p-inputnumber-buttons-stacked":this.showButtons&&"stacked"===this.buttonLayout,"p-inputnumber-buttons-horizontal":this.showButtons&&"horizontal"===this.buttonLayout,"p-inputnumber-buttons-vertical":this.showButtons&&"vertical"===this.buttonLayout}]},upButtonClass(){return["p-inputnumber-button p-inputnumber-button-up",this.incrementButtonClass,{"p-disabled":this.showButtons&&null!==this.max&&this.maxBoundry()}]},downButtonClass(){return["p-inputnumber-button p-inputnumber-button-down",this.decrementButtonClass,{"p-disabled":this.showButtons&&null!==this.min&&this.minBoundry()}]},filled(){return null!=this.modelValue&&this.modelValue.toString().length>0},upButtonListeners(){return{mousedown:e=>this.onUpButtonMouseDown(e),mouseup:e=>this.onUpButtonMouseUp(e),mouseleave:e=>this.onUpButtonMouseLeave(e),keydown:e=>this.onUpButtonKeyDown(e),keyup:e=>this.onUpButtonKeyUp(e)}},downButtonListeners(){return{mousedown:e=>this.onDownButtonMouseDown(e),mouseup:e=>this.onDownButtonMouseUp(e),mouseleave:e=>this.onDownButtonMouseLeave(e),keydown:e=>this.onDownButtonKeyDown(e),keyup:e=>this.onDownButtonKeyUp(e)}},formattedValue(){const e=this.modelValue||this.allowEmpty?this.modelValue:0;return this.formatValue(e)},getFormatter(){return this.numberFormat}},components:{INInputText:h.default,INButton:o.default,AngleUpIcon:c.default,AngleDownIcon:p.default}};return function(e,t){void 0===t&&(t={});var n=t.insertAt;if(e&&"undefined"!=typeof document){var i=document.head||document.getElementsByTagName("head")[0],s=document.createElement("style");s.type="text/css","top"===n&&i.firstChild?i.insertBefore(s,i.firstChild):i.appendChild(s),s.styleSheet?s.styleSheet.cssText=e:s.appendChild(document.createTextNode(e))}}("\n.p-inputnumber {\n display: inline-flex;\n}\n.p-inputnumber-button {\n display: flex;\n align-items: center;\n justify-content: center;\n flex: 0 0 auto;\n}\n.p-inputnumber-buttons-stacked .p-button.p-inputnumber-button .p-button-label,\n.p-inputnumber-buttons-horizontal .p-button.p-inputnumber-button .p-button-label {\n display: none;\n}\n.p-inputnumber-buttons-stacked .p-button.p-inputnumber-button-up {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n border-bottom-right-radius: 0;\n padding: 0;\n}\n.p-inputnumber-buttons-stacked .p-inputnumber-input {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n}\n.p-inputnumber-buttons-stacked .p-button.p-inputnumber-button-down {\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n border-bottom-left-radius: 0;\n padding: 0;\n}\n.p-inputnumber-buttons-stacked .p-inputnumber-button-group {\n display: flex;\n flex-direction: column;\n}\n.p-inputnumber-buttons-stacked .p-inputnumber-button-group .p-button.p-inputnumber-button {\n flex: 1 1 auto;\n}\n.p-inputnumber-buttons-horizontal .p-button.p-inputnumber-button-up {\n order: 3;\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n}\n.p-inputnumber-buttons-horizontal .p-inputnumber-input {\n order: 2;\n border-radius: 0;\n}\n.p-inputnumber-buttons-horizontal .p-button.p-inputnumber-button-down {\n order: 1;\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n}\n.p-inputnumber-buttons-vertical {\n flex-direction: column;\n}\n.p-inputnumber-buttons-vertical .p-button.p-inputnumber-button-up {\n order: 1;\n border-bottom-left-radius: 0;\n border-bottom-right-radius: 0;\n width: 100%;\n}\n.p-inputnumber-buttons-vertical .p-inputnumber-input {\n order: 2;\n border-radius: 0;\n text-align: center;\n}\n.p-inputnumber-buttons-vertical .p-button.p-inputnumber-button-down {\n order: 3;\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n width: 100%;\n}\n.p-inputnumber-input {\n flex: 1 1 auto;\n}\n.p-fluid .p-inputnumber {\n width: 100%;\n}\n.p-fluid .p-inputnumber .p-inputnumber-input {\n width: 1%;\n}\n.p-fluid .p-inputnumber-buttons-vertical .p-inputnumber-input {\n width: 100%;\n}\n"),d.render=function(e,t,n,i,s,r){const u=l.resolveComponent("INInputText"),a=l.resolveComponent("INButton");return l.openBlock(),l.createElementBlock("span",l.mergeProps({class:r.containerClass},e.ptm("root")),[l.createVNode(u,l.mergeProps({ref:"input",id:n.inputId,class:["p-inputnumber-input",n.inputClass],role:"spinbutton",style:n.inputStyle,value:r.formattedValue,"aria-valuemin":n.min,"aria-valuemax":n.max,"aria-valuenow":n.modelValue,disabled:n.disabled,readonly:n.readonly,placeholder:n.placeholder,"aria-labelledby":e.ariaLabelledby,"aria-label":e.ariaLabel,onInput:r.onUserInput,onKeydown:r.onInputKeyDown,onKeypress:r.onInputKeyPress,onPaste:r.onPaste,onClick:r.onInputClick,onFocus:r.onInputFocus,onBlur:r.onInputBlur},{...n.inputProps,...e.ptm("input")}),null,16,["id","class","style","value","aria-valuemin","aria-valuemax","aria-valuenow","disabled","readonly","placeholder","aria-labelledby","aria-label","onInput","onKeydown","onKeypress","onPaste","onClick","onFocus","onBlur"]),n.showButtons&&"stacked"===n.buttonLayout?(l.openBlock(),l.createElementBlock("span",l.mergeProps({key:0,class:"p-inputnumber-button-group"},e.ptm("buttonGroup")),[l.createVNode(a,l.mergeProps({class:r.upButtonClass},l.toHandlers(r.upButtonListeners),{disabled:n.disabled,tabindex:-1,"aria-hidden":"true"},{...n.incrementButtonProps,...e.ptm("incrementButton")}),{icon:l.withCtx((()=>[l.renderSlot(e.$slots,"incrementbuttonicon",{},(()=>[(l.openBlock(),l.createBlock(l.resolveDynamicComponent(n.incrementButtonIcon?"span":"AngleUpIcon"),l.mergeProps({class:n.incrementButtonIcon},e.ptm("incrementButton").icon),null,16,["class"]))]))])),_:3},16,["class","disabled"]),l.createVNode(a,l.mergeProps({class:r.downButtonClass},l.toHandlers(r.downButtonListeners),{disabled:n.disabled,tabindex:-1,"aria-hidden":"true"},{...n.decrementButtonProps,...e.ptm("decrementButton")}),{icon:l.withCtx((()=>[l.renderSlot(e.$slots,"decrementbuttonicon",{},(()=>[(l.openBlock(),l.createBlock(l.resolveDynamicComponent(n.decrementButtonIcon?"span":"AngleDownIcon"),l.mergeProps({class:n.decrementButtonIcon},e.ptm("decrementButton").icon),null,16,["class"]))]))])),_:3},16,["class","disabled"])],16)):l.createCommentVNode("",!0),n.showButtons&&"stacked"!==n.buttonLayout?(l.openBlock(),l.createBlock(a,l.mergeProps({key:1,class:r.upButtonClass},l.toHandlers(r.upButtonListeners),{disabled:n.disabled,tabindex:-1,"aria-hidden":"true"},{...n.incrementButtonProps,...e.ptm("incrementButton")}),{icon:l.withCtx((()=>[l.renderSlot(e.$slots,"incrementbuttonicon",{},(()=>[(l.openBlock(),l.createBlock(l.resolveDynamicComponent(n.incrementButtonIcon?"span":"AngleUpIcon"),l.mergeProps({class:n.incrementButtonIcon},e.ptm("incrementButton").icon),null,16,["class"]))]))])),_:3},16,["class","disabled"])):l.createCommentVNode("",!0),n.showButtons&&"stacked"!==n.buttonLayout?(l.openBlock(),l.createBlock(a,l.mergeProps({key:2,class:r.downButtonClass},l.toHandlers(r.downButtonListeners),{disabled:n.disabled,tabindex:-1,"aria-hidden":"true"},{...n.decrementButtonProps,...e.ptm("decrementButton")}),{icon:l.withCtx((()=>[l.renderSlot(e.$slots,"decrementbuttonicon",{},(()=>[(l.openBlock(),l.createBlock(l.resolveDynamicComponent(n.decrementButtonIcon?"span":"AngleDownIcon"),l.mergeProps({class:n.decrementButtonIcon},e.ptm("decrementButton").icon),null,16,["class"]))]))])),_:3},16,["class","disabled"])):l.createCommentVNode("",!0)],16)},d}(primevue.basecomponent,primevue.button,primevue.icons.angledown,primevue.icons.angleup,primevue.inputtext,primevue.utils,Vue);
@@ -10,6 +10,57 @@
10
10
  import { InputHTMLAttributes } from 'vue';
11
11
  import { ClassComponent, GlobalComponentConstructor } from '../ts-helpers';
12
12
 
13
+ export declare type InputSwitchPassThroughOptionType = InputSwitchPassThroughAttributes | ((options: InputSwitchPassThroughMethodOptions) => InputSwitchPassThroughAttributes) | null | undefined;
14
+
15
+ /**
16
+ * Custom passthrough(pt) option method.
17
+ */
18
+ export interface InputSwitchPassThroughMethodOptions {
19
+ props: InputSwitchProps;
20
+ state: InputSwitchState;
21
+ }
22
+
23
+ /**
24
+ * Custom passthrough(pt) options.
25
+ * @see {@link InputSwitchProps.pt}
26
+ */
27
+ export interface InputSwitchPassThroughOptions {
28
+ /**
29
+ * Uses to pass attributes to the root's DOM element.
30
+ */
31
+ root?: InputSwitchPassThroughOptionType;
32
+ /**
33
+ * Uses to pass attributes to the slider's DOM element.
34
+ */
35
+ slider?: InputSwitchPassThroughOptionType;
36
+ /**
37
+ * Uses to pass attributes to the hidden input wrapper's DOM element.
38
+ */
39
+ hiddenInputWrapper?: InputSwitchPassThroughOptionType;
40
+ /**
41
+ * Uses to pass attributes to the hidden input's DOM element.
42
+ */
43
+ hiddenInput?: InputSwitchPassThroughOptionType;
44
+ }
45
+
46
+ /**
47
+ * Custom passthrough attributes for each DOM elements
48
+ */
49
+ export interface InputSwitchPassThroughAttributes {
50
+ [key: string]: any;
51
+ }
52
+
53
+ /**
54
+ * Defines current inline state in InputSwitch component.
55
+ */
56
+ export interface InputSwitchState {
57
+ /**
58
+ * Current focus state as a boolean.
59
+ * @defaultValue false
60
+ */
61
+ focused: boolean;
62
+ }
63
+
13
64
  /**
14
65
  * Defines valid properties in InputSwitch component.
15
66
  */
@@ -1,6 +1,6 @@
1
1
  <template>
2
- <div :class="containerClass" @click="onClick($event)">
3
- <div class="p-hidden-accessible">
2
+ <div :class="containerClass" @click="onClick($event)" v-bind="ptm('root')">
3
+ <div class="p-hidden-accessible" v-bind="ptm('hiddenInputWrapper')">
4
4
  <input
5
5
  ref="input"
6
6
  :id="inputId"
@@ -15,16 +15,19 @@
15
15
  :aria-label="ariaLabel"
16
16
  @focus="onFocus($event)"
17
17
  @blur="onBlur($event)"
18
- v-bind="inputProps"
18
+ v-bind="ptm('hiddenInput')"
19
19
  />
20
20
  </div>
21
- <span class="p-inputswitch-slider"></span>
21
+ <span class="p-inputswitch-slider" v-bind="{ ...inputProps, ...ptm('slider') }"></span>
22
22
  </div>
23
23
  </template>
24
24
 
25
25
  <script>
26
+ import BaseComponent from 'primevue/basecomponent';
27
+
26
28
  export default {
27
29
  name: 'InputSwitch',
30
+ extends: BaseComponent,
28
31
  emits: ['click', 'update:modelValue', 'change', 'input', 'focus', 'blur'],
29
32
  props: {
30
33
  modelValue: {
@@ -1,9 +1,15 @@
1
1
  'use strict';
2
2
 
3
+ var BaseComponent = require('primevue/basecomponent');
3
4
  var vue = require('vue');
4
5
 
6
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
7
+
8
+ var BaseComponent__default = /*#__PURE__*/_interopDefaultLegacy(BaseComponent);
9
+
5
10
  var script = {
6
11
  name: 'InputSwitch',
12
+ extends: BaseComponent__default["default"],
7
13
  emits: ['click', 'update:modelValue', 'change', 'input', 'focus', 'blur'],
8
14
  props: {
9
15
  modelValue: {
@@ -92,16 +98,14 @@ var script = {
92
98
  }
93
99
  };
94
100
 
95
- const _hoisted_1 = { class: "p-hidden-accessible" };
96
- const _hoisted_2 = ["id", "checked", "disabled", "aria-checked", "aria-labelledby", "aria-label"];
97
- const _hoisted_3 = /*#__PURE__*/vue.createElementVNode("span", { class: "p-inputswitch-slider" }, null, -1);
101
+ const _hoisted_1 = ["id", "checked", "disabled", "aria-checked", "aria-labelledby", "aria-label"];
98
102
 
99
103
  function render(_ctx, _cache, $props, $setup, $data, $options) {
100
- return (vue.openBlock(), vue.createElementBlock("div", {
101
- class: vue.normalizeClass($options.containerClass),
104
+ return (vue.openBlock(), vue.createElementBlock("div", vue.mergeProps({
105
+ class: $options.containerClass,
102
106
  onClick: _cache[2] || (_cache[2] = $event => ($options.onClick($event)))
103
- }, [
104
- vue.createElementVNode("div", _hoisted_1, [
107
+ }, _ctx.ptm('root')), [
108
+ vue.createElementVNode("div", vue.mergeProps({ class: "p-hidden-accessible" }, _ctx.ptm('hiddenInputWrapper')), [
105
109
  vue.createElementVNode("input", vue.mergeProps({
106
110
  ref: "input",
107
111
  id: $props.inputId,
@@ -116,10 +120,10 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
116
120
  "aria-label": _ctx.ariaLabel,
117
121
  onFocus: _cache[0] || (_cache[0] = $event => ($options.onFocus($event))),
118
122
  onBlur: _cache[1] || (_cache[1] = $event => ($options.onBlur($event)))
119
- }, $props.inputProps), null, 16, _hoisted_2)
120
- ]),
121
- _hoisted_3
122
- ], 2))
123
+ }, _ctx.ptm('hiddenInput')), null, 16, _hoisted_1)
124
+ ], 16),
125
+ vue.createElementVNode("span", vue.mergeProps({ class: "p-inputswitch-slider" }, { ...$props.inputProps, ..._ctx.ptm('slider') }), null, 16)
126
+ ], 16))
123
127
  }
124
128
 
125
129
  function styleInject(css, ref) {
@@ -1 +1 @@
1
- "use strict";var e=require("vue"),t={name:"InputSwitch",emits:["click","update:modelValue","change","input","focus","blur"],props:{modelValue:{type:null,default:!1},trueValue:{type:null,default:!0},falseValue:{type:null,default:!1},disabled:{type:Boolean,default:!1},inputId:{type:String,default:null},inputClass:{type:[String,Object],default:null},inputStyle:{type:Object,default:null},inputProps:{type:null,default:null},"aria-labelledby":{type:String,default:null},"aria-label":{type:String,default:null}},data:()=>({focused:!1}),methods:{onClick(e){if(!this.disabled){const t=this.checked?this.falseValue:this.trueValue;this.$emit("click",e),this.$emit("update:modelValue",t),this.$emit("change",e),this.$emit("input",t),this.$refs.input.focus()}e.preventDefault()},onFocus(e){this.focused=!0,this.$emit("focus",e)},onBlur(e){this.focused=!1,this.$emit("blur",e)}},computed:{containerClass(){return["p-inputswitch p-component",{"p-inputswitch-checked":this.checked,"p-disabled":this.disabled,"p-focus":this.focused}]},checked(){return this.modelValue===this.trueValue}}};const l={class:"p-hidden-accessible"},i=["id","checked","disabled","aria-checked","aria-labelledby","aria-label"],n=e.createElementVNode("span",{class:"p-inputswitch-slider"},null,-1);!function(e,t){void 0===t&&(t={});var l=t.insertAt;if(e&&"undefined"!=typeof document){var i=document.head||document.getElementsByTagName("head")[0],n=document.createElement("style");n.type="text/css","top"===l&&i.firstChild?i.insertBefore(n,i.firstChild):i.appendChild(n),n.styleSheet?n.styleSheet.cssText=e:n.appendChild(document.createTextNode(e))}}("\n.p-inputswitch {\n position: relative;\n display: inline-block;\n}\n.p-inputswitch-slider {\n position: absolute;\n cursor: pointer;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n border: 1px solid transparent;\n}\n.p-inputswitch-slider:before {\n position: absolute;\n content: '';\n top: 50%;\n}\n"),t.render=function(t,s,a,u,d,c){return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(c.containerClass),onClick:s[2]||(s[2]=e=>c.onClick(e))},[e.createElementVNode("div",l,[e.createElementVNode("input",e.mergeProps({ref:"input",id:a.inputId,type:"checkbox",role:"switch",class:a.inputClass,style:a.inputStyle,checked:c.checked,disabled:a.disabled,"aria-checked":c.checked,"aria-labelledby":t.ariaLabelledby,"aria-label":t.ariaLabel,onFocus:s[0]||(s[0]=e=>c.onFocus(e)),onBlur:s[1]||(s[1]=e=>c.onBlur(e))},a.inputProps),null,16,i)]),n],2)},module.exports=t;
1
+ "use strict";var e=require("primevue/basecomponent"),t=require("vue");function l(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var n={name:"InputSwitch",extends:l(e).default,emits:["click","update:modelValue","change","input","focus","blur"],props:{modelValue:{type:null,default:!1},trueValue:{type:null,default:!0},falseValue:{type:null,default:!1},disabled:{type:Boolean,default:!1},inputId:{type:String,default:null},inputClass:{type:[String,Object],default:null},inputStyle:{type:Object,default:null},inputProps:{type:null,default:null},"aria-labelledby":{type:String,default:null},"aria-label":{type:String,default:null}},data:()=>({focused:!1}),methods:{onClick(e){if(!this.disabled){const t=this.checked?this.falseValue:this.trueValue;this.$emit("click",e),this.$emit("update:modelValue",t),this.$emit("change",e),this.$emit("input",t),this.$refs.input.focus()}e.preventDefault()},onFocus(e){this.focused=!0,this.$emit("focus",e)},onBlur(e){this.focused=!1,this.$emit("blur",e)}},computed:{containerClass(){return["p-inputswitch p-component",{"p-inputswitch-checked":this.checked,"p-disabled":this.disabled,"p-focus":this.focused}]},checked(){return this.modelValue===this.trueValue}}};const i=["id","checked","disabled","aria-checked","aria-labelledby","aria-label"];!function(e,t){void 0===t&&(t={});var l=t.insertAt;if(e&&"undefined"!=typeof document){var n=document.head||document.getElementsByTagName("head")[0],i=document.createElement("style");i.type="text/css","top"===l&&n.firstChild?n.insertBefore(i,n.firstChild):n.appendChild(i),i.styleSheet?i.styleSheet.cssText=e:i.appendChild(document.createTextNode(e))}}("\n.p-inputswitch {\n position: relative;\n display: inline-block;\n}\n.p-inputswitch-slider {\n position: absolute;\n cursor: pointer;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n border: 1px solid transparent;\n}\n.p-inputswitch-slider:before {\n position: absolute;\n content: '';\n top: 50%;\n}\n"),n.render=function(e,l,n,s,a,u){return t.openBlock(),t.createElementBlock("div",t.mergeProps({class:u.containerClass,onClick:l[2]||(l[2]=e=>u.onClick(e))},e.ptm("root")),[t.createElementVNode("div",t.mergeProps({class:"p-hidden-accessible"},e.ptm("hiddenInputWrapper")),[t.createElementVNode("input",t.mergeProps({ref:"input",id:n.inputId,type:"checkbox",role:"switch",class:n.inputClass,style:n.inputStyle,checked:u.checked,disabled:n.disabled,"aria-checked":u.checked,"aria-labelledby":e.ariaLabelledby,"aria-label":e.ariaLabel,onFocus:l[0]||(l[0]=e=>u.onFocus(e)),onBlur:l[1]||(l[1]=e=>u.onBlur(e))},e.ptm("hiddenInput")),null,16,i)],16),t.createElementVNode("span",t.mergeProps({class:"p-inputswitch-slider"},{...n.inputProps,...e.ptm("slider")}),null,16)],16)},module.exports=n;
@@ -1,7 +1,9 @@
1
- import { openBlock, createElementBlock, normalizeClass, createElementVNode, mergeProps } from 'vue';
1
+ import BaseComponent from 'primevue/basecomponent';
2
+ import { openBlock, createElementBlock, mergeProps, createElementVNode } from 'vue';
2
3
 
3
4
  var script = {
4
5
  name: 'InputSwitch',
6
+ extends: BaseComponent,
5
7
  emits: ['click', 'update:modelValue', 'change', 'input', 'focus', 'blur'],
6
8
  props: {
7
9
  modelValue: {
@@ -90,16 +92,14 @@ var script = {
90
92
  }
91
93
  };
92
94
 
93
- const _hoisted_1 = { class: "p-hidden-accessible" };
94
- const _hoisted_2 = ["id", "checked", "disabled", "aria-checked", "aria-labelledby", "aria-label"];
95
- const _hoisted_3 = /*#__PURE__*/createElementVNode("span", { class: "p-inputswitch-slider" }, null, -1);
95
+ const _hoisted_1 = ["id", "checked", "disabled", "aria-checked", "aria-labelledby", "aria-label"];
96
96
 
97
97
  function render(_ctx, _cache, $props, $setup, $data, $options) {
98
- return (openBlock(), createElementBlock("div", {
99
- class: normalizeClass($options.containerClass),
98
+ return (openBlock(), createElementBlock("div", mergeProps({
99
+ class: $options.containerClass,
100
100
  onClick: _cache[2] || (_cache[2] = $event => ($options.onClick($event)))
101
- }, [
102
- createElementVNode("div", _hoisted_1, [
101
+ }, _ctx.ptm('root')), [
102
+ createElementVNode("div", mergeProps({ class: "p-hidden-accessible" }, _ctx.ptm('hiddenInputWrapper')), [
103
103
  createElementVNode("input", mergeProps({
104
104
  ref: "input",
105
105
  id: $props.inputId,
@@ -114,10 +114,10 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
114
114
  "aria-label": _ctx.ariaLabel,
115
115
  onFocus: _cache[0] || (_cache[0] = $event => ($options.onFocus($event))),
116
116
  onBlur: _cache[1] || (_cache[1] = $event => ($options.onBlur($event)))
117
- }, $props.inputProps), null, 16, _hoisted_2)
118
- ]),
119
- _hoisted_3
120
- ], 2))
117
+ }, _ctx.ptm('hiddenInput')), null, 16, _hoisted_1)
118
+ ], 16),
119
+ createElementVNode("span", mergeProps({ class: "p-inputswitch-slider" }, { ...$props.inputProps, ..._ctx.ptm('slider') }), null, 16)
120
+ ], 16))
121
121
  }
122
122
 
123
123
  function styleInject(css, ref) {
@@ -1 +1 @@
1
- import{openBlock as e,createElementBlock as t,normalizeClass as l,createElementVNode as i,mergeProps as n}from"vue";var s={name:"InputSwitch",emits:["click","update:modelValue","change","input","focus","blur"],props:{modelValue:{type:null,default:!1},trueValue:{type:null,default:!0},falseValue:{type:null,default:!1},disabled:{type:Boolean,default:!1},inputId:{type:String,default:null},inputClass:{type:[String,Object],default:null},inputStyle:{type:Object,default:null},inputProps:{type:null,default:null},"aria-labelledby":{type:String,default:null},"aria-label":{type:String,default:null}},data:()=>({focused:!1}),methods:{onClick(e){if(!this.disabled){const t=this.checked?this.falseValue:this.trueValue;this.$emit("click",e),this.$emit("update:modelValue",t),this.$emit("change",e),this.$emit("input",t),this.$refs.input.focus()}e.preventDefault()},onFocus(e){this.focused=!0,this.$emit("focus",e)},onBlur(e){this.focused=!1,this.$emit("blur",e)}},computed:{containerClass(){return["p-inputswitch p-component",{"p-inputswitch-checked":this.checked,"p-disabled":this.disabled,"p-focus":this.focused}]},checked(){return this.modelValue===this.trueValue}}};const a={class:"p-hidden-accessible"},u=["id","checked","disabled","aria-checked","aria-labelledby","aria-label"],d=i("span",{class:"p-inputswitch-slider"},null,-1);!function(e,t){void 0===t&&(t={});var l=t.insertAt;if(e&&"undefined"!=typeof document){var i=document.head||document.getElementsByTagName("head")[0],n=document.createElement("style");n.type="text/css","top"===l&&i.firstChild?i.insertBefore(n,i.firstChild):i.appendChild(n),n.styleSheet?n.styleSheet.cssText=e:n.appendChild(document.createTextNode(e))}}("\n.p-inputswitch {\n position: relative;\n display: inline-block;\n}\n.p-inputswitch-slider {\n position: absolute;\n cursor: pointer;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n border: 1px solid transparent;\n}\n.p-inputswitch-slider:before {\n position: absolute;\n content: '';\n top: 50%;\n}\n"),s.render=function(s,c,o,p,r,h){return e(),t("div",{class:l(h.containerClass),onClick:c[2]||(c[2]=e=>h.onClick(e))},[i("div",a,[i("input",n({ref:"input",id:o.inputId,type:"checkbox",role:"switch",class:o.inputClass,style:o.inputStyle,checked:h.checked,disabled:o.disabled,"aria-checked":h.checked,"aria-labelledby":s.ariaLabelledby,"aria-label":s.ariaLabel,onFocus:c[0]||(c[0]=e=>h.onFocus(e)),onBlur:c[1]||(c[1]=e=>h.onBlur(e))},o.inputProps),null,16,u)]),d],2)};export{s as default};
1
+ import e from"primevue/basecomponent";import{openBlock as t,createElementBlock as i,mergeProps as l,createElementVNode as n}from"vue";var s={name:"InputSwitch",extends:e,emits:["click","update:modelValue","change","input","focus","blur"],props:{modelValue:{type:null,default:!1},trueValue:{type:null,default:!0},falseValue:{type:null,default:!1},disabled:{type:Boolean,default:!1},inputId:{type:String,default:null},inputClass:{type:[String,Object],default:null},inputStyle:{type:Object,default:null},inputProps:{type:null,default:null},"aria-labelledby":{type:String,default:null},"aria-label":{type:String,default:null}},data:()=>({focused:!1}),methods:{onClick(e){if(!this.disabled){const t=this.checked?this.falseValue:this.trueValue;this.$emit("click",e),this.$emit("update:modelValue",t),this.$emit("change",e),this.$emit("input",t),this.$refs.input.focus()}e.preventDefault()},onFocus(e){this.focused=!0,this.$emit("focus",e)},onBlur(e){this.focused=!1,this.$emit("blur",e)}},computed:{containerClass(){return["p-inputswitch p-component",{"p-inputswitch-checked":this.checked,"p-disabled":this.disabled,"p-focus":this.focused}]},checked(){return this.modelValue===this.trueValue}}};const a=["id","checked","disabled","aria-checked","aria-labelledby","aria-label"];!function(e,t){void 0===t&&(t={});var i=t.insertAt;if(e&&"undefined"!=typeof document){var l=document.head||document.getElementsByTagName("head")[0],n=document.createElement("style");n.type="text/css","top"===i&&l.firstChild?l.insertBefore(n,l.firstChild):l.appendChild(n),n.styleSheet?n.styleSheet.cssText=e:n.appendChild(document.createTextNode(e))}}("\n.p-inputswitch {\n position: relative;\n display: inline-block;\n}\n.p-inputswitch-slider {\n position: absolute;\n cursor: pointer;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n border: 1px solid transparent;\n}\n.p-inputswitch-slider:before {\n position: absolute;\n content: '';\n top: 50%;\n}\n"),s.render=function(e,s,u,d,p,c){return t(),i("div",l({class:c.containerClass,onClick:s[2]||(s[2]=e=>c.onClick(e))},e.ptm("root")),[n("div",l({class:"p-hidden-accessible"},e.ptm("hiddenInputWrapper")),[n("input",l({ref:"input",id:u.inputId,type:"checkbox",role:"switch",class:u.inputClass,style:u.inputStyle,checked:c.checked,disabled:u.disabled,"aria-checked":c.checked,"aria-labelledby":e.ariaLabelledby,"aria-label":e.ariaLabel,onFocus:s[0]||(s[0]=e=>c.onFocus(e)),onBlur:s[1]||(s[1]=e=>c.onBlur(e))},e.ptm("hiddenInput")),null,16,a)],16),n("span",l({class:"p-inputswitch-slider"},{...u.inputProps,...e.ptm("slider")}),null,16)],16)};export{s as default};