primevue 4.3.5 → 4.3.6

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 (209) hide show
  1. package/accordion/index.mjs.map +1 -1
  2. package/accordioncontent/AccordionContent.vue +2 -2
  3. package/accordioncontent/index.mjs +2 -2
  4. package/accordioncontent/index.mjs.map +1 -1
  5. package/accordionheader/AccordionHeader.vue +2 -2
  6. package/accordionheader/index.mjs +2 -2
  7. package/accordionheader/index.mjs.map +1 -1
  8. package/accordionpanel/index.mjs.map +1 -1
  9. package/accordiontab/index.mjs.map +1 -1
  10. package/animateonscroll/index.mjs.map +1 -1
  11. package/autocomplete/AutoComplete.vue +3 -1
  12. package/autocomplete/index.mjs +2 -1
  13. package/autocomplete/index.mjs.map +1 -1
  14. package/autocomplete/style/index.mjs +6 -5
  15. package/autocomplete/style/index.mjs.map +1 -1
  16. package/avatar/index.mjs.map +1 -1
  17. package/avatargroup/index.mjs.map +1 -1
  18. package/badge/index.mjs.map +1 -1
  19. package/badge/style/index.mjs.map +1 -1
  20. package/badgedirective/index.mjs.map +1 -1
  21. package/blockui/index.mjs.map +1 -1
  22. package/breadcrumb/index.mjs.map +1 -1
  23. package/button/Button.vue +1 -1
  24. package/button/index.d.ts +4 -0
  25. package/button/index.mjs +5 -4
  26. package/button/index.mjs.map +1 -1
  27. package/button/style/index.mjs.map +1 -1
  28. package/buttongroup/index.mjs.map +1 -1
  29. package/card/index.mjs.map +1 -1
  30. package/carousel/index.mjs.map +1 -1
  31. package/cascadeselect/index.mjs.map +1 -1
  32. package/chart/index.mjs.map +1 -1
  33. package/checkbox/index.mjs.map +1 -1
  34. package/checkboxgroup/index.mjs.map +1 -1
  35. package/chip/Chip.vue +1 -1
  36. package/chip/index.mjs +1 -1
  37. package/chip/index.mjs.map +1 -1
  38. package/colorpicker/index.mjs.map +1 -1
  39. package/column/index.mjs.map +1 -1
  40. package/columngroup/index.mjs.map +1 -1
  41. package/confirmdialog/index.mjs.map +1 -1
  42. package/confirmpopup/index.mjs.map +1 -1
  43. package/contextmenu/index.mjs.map +1 -1
  44. package/datatable/BodyCell.vue +1 -1
  45. package/datatable/ColumnFilter.vue +2 -13
  46. package/datatable/DataTable.vue +1 -1
  47. package/datatable/index.d.ts +2 -2
  48. package/datatable/index.mjs +17 -29
  49. package/datatable/index.mjs.map +1 -1
  50. package/dataview/index.mjs.map +1 -1
  51. package/datepicker/DatePicker.vue +13 -2
  52. package/datepicker/index.mjs +14 -5
  53. package/datepicker/index.mjs.map +1 -1
  54. package/deferredcontent/index.mjs.map +1 -1
  55. package/dialog/Dialog.vue +1 -1
  56. package/dialog/index.mjs +1 -1
  57. package/dialog/index.mjs.map +1 -1
  58. package/dialog/style/index.mjs.map +1 -1
  59. package/divider/index.mjs.map +1 -1
  60. package/dock/index.mjs.map +1 -1
  61. package/dock/style/index.mjs.map +1 -1
  62. package/drawer/index.mjs.map +1 -1
  63. package/drawer/style/index.mjs.map +1 -1
  64. package/dynamicdialog/index.mjs.map +1 -1
  65. package/editor/index.mjs.map +1 -1
  66. package/fieldset/index.mjs.map +1 -1
  67. package/fileupload/FileUpload.vue +27 -25
  68. package/fileupload/index.d.ts +5 -0
  69. package/fileupload/index.mjs +4 -2
  70. package/fileupload/index.mjs.map +1 -1
  71. package/fileupload/style/index.d.ts +5 -1
  72. package/fileupload/style/index.mjs +2 -1
  73. package/fileupload/style/index.mjs.map +1 -1
  74. package/floatlabel/index.mjs.map +1 -1
  75. package/fluid/index.mjs.map +1 -1
  76. package/focustrap/index.mjs.map +1 -1
  77. package/galleria/index.mjs.map +1 -1
  78. package/iconfield/index.mjs.map +1 -1
  79. package/iftalabel/index.mjs.map +1 -1
  80. package/image/index.mjs.map +1 -1
  81. package/imagecompare/index.mjs.map +1 -1
  82. package/inlinemessage/index.mjs.map +1 -1
  83. package/inplace/index.mjs.map +1 -1
  84. package/inputchips/index.mjs.map +1 -1
  85. package/inputgroup/index.mjs.map +1 -1
  86. package/inputgroupaddon/index.mjs.map +1 -1
  87. package/inputicon/index.mjs.map +1 -1
  88. package/inputmask/index.mjs.map +1 -1
  89. package/inputnumber/InputNumber.vue +10 -1
  90. package/inputnumber/index.mjs +8 -1
  91. package/inputnumber/index.mjs.map +1 -1
  92. package/inputotp/index.mjs.map +1 -1
  93. package/inputtext/index.mjs.map +1 -1
  94. package/keyfilter/index.mjs.map +1 -1
  95. package/knob/index.mjs +2 -2
  96. package/knob/index.mjs.map +1 -1
  97. package/listbox/BaseListbox.vue +4 -0
  98. package/listbox/Listbox.vue +8 -6
  99. package/listbox/index.d.ts +5 -0
  100. package/listbox/index.mjs +12 -6
  101. package/listbox/index.mjs.map +1 -1
  102. package/listbox/style/index.mjs +1 -0
  103. package/listbox/style/index.mjs.map +1 -1
  104. package/megamenu/index.d.ts +0 -1
  105. package/megamenu/index.mjs.map +1 -1
  106. package/menu/index.mjs.map +1 -1
  107. package/menubar/MenubarSub.vue +0 -1
  108. package/menubar/index.d.ts +0 -2
  109. package/menubar/index.mjs +1 -2
  110. package/menubar/index.mjs.map +1 -1
  111. package/message/index.mjs.map +1 -1
  112. package/metergroup/index.mjs.map +1 -1
  113. package/multiselect/MultiSelect.vue +10 -5
  114. package/multiselect/index.mjs +9 -5
  115. package/multiselect/index.mjs.map +1 -1
  116. package/orderlist/index.mjs.map +1 -1
  117. package/organizationchart/index.mjs.map +1 -1
  118. package/overlaybadge/index.mjs.map +1 -1
  119. package/package.json +6 -6
  120. package/paginator/index.mjs.map +1 -1
  121. package/paginator/style/index.mjs.map +1 -1
  122. package/panel/index.mjs.map +1 -1
  123. package/panelmenu/index.mjs.map +1 -1
  124. package/passthrough/index.mjs.map +1 -1
  125. package/password/Password.vue +0 -1
  126. package/password/index.mjs +1 -4
  127. package/password/index.mjs.map +1 -1
  128. package/picklist/PickList.vue +8 -11
  129. package/picklist/index.mjs +15 -7
  130. package/picklist/index.mjs.map +1 -1
  131. package/popover/index.mjs.map +1 -1
  132. package/portal/index.mjs.map +1 -1
  133. package/progressbar/index.mjs.map +1 -1
  134. package/progressspinner/index.mjs.map +1 -1
  135. package/radiobutton/index.mjs.map +1 -1
  136. package/radiobuttongroup/index.mjs.map +1 -1
  137. package/rating/Rating.vue +2 -2
  138. package/rating/index.d.ts +10 -0
  139. package/rating/index.mjs +7 -1
  140. package/rating/index.mjs.map +1 -1
  141. package/ripple/index.mjs.map +1 -1
  142. package/row/index.mjs.map +1 -1
  143. package/scrollpanel/ScrollPanel.vue +3 -1
  144. package/scrollpanel/index.mjs +2 -1
  145. package/scrollpanel/index.mjs.map +1 -1
  146. package/scrolltop/index.mjs.map +1 -1
  147. package/select/Select.vue +2 -2
  148. package/select/index.mjs +2 -2
  149. package/select/index.mjs.map +1 -1
  150. package/selectbutton/BaseSelectButton.vue +4 -0
  151. package/selectbutton/index.d.ts +25 -0
  152. package/selectbutton/index.mjs +4 -0
  153. package/selectbutton/index.mjs.map +1 -1
  154. package/selectbutton/style/index.mjs +5 -2
  155. package/selectbutton/style/index.mjs.map +1 -1
  156. package/skeleton/index.mjs.map +1 -1
  157. package/slider/index.mjs.map +1 -1
  158. package/speeddial/index.mjs.map +1 -1
  159. package/speeddial/style/index.mjs.map +1 -1
  160. package/splitbutton/index.mjs.map +1 -1
  161. package/splitter/index.mjs.map +1 -1
  162. package/splitterpanel/index.mjs.map +1 -1
  163. package/step/index.mjs.map +1 -1
  164. package/stepitem/index.mjs.map +1 -1
  165. package/steplist/index.mjs.map +1 -1
  166. package/steppanel/index.mjs.map +1 -1
  167. package/steppanels/index.mjs.map +1 -1
  168. package/stepper/index.mjs.map +1 -1
  169. package/steps/index.mjs.map +1 -1
  170. package/styleclass/index.mjs.map +1 -1
  171. package/tab/index.mjs.map +1 -1
  172. package/tablist/index.mjs.map +1 -1
  173. package/tabmenu/index.mjs.map +1 -1
  174. package/tabpanel/index.mjs.map +1 -1
  175. package/tabpanels/index.mjs.map +1 -1
  176. package/tabs/index.mjs.map +1 -1
  177. package/tabview/index.mjs.map +1 -1
  178. package/tag/index.mjs.map +1 -1
  179. package/terminal/index.mjs.map +1 -1
  180. package/textarea/index.mjs.map +1 -1
  181. package/tieredmenu/index.mjs.map +1 -1
  182. package/timeline/index.mjs.map +1 -1
  183. package/toast/Toast.vue +3 -0
  184. package/toast/ToastMessage.vue +20 -8
  185. package/toast/index.d.ts +16 -4
  186. package/toast/index.mjs +26 -13
  187. package/toast/index.mjs.map +1 -1
  188. package/toast/style/index.mjs.map +1 -1
  189. package/togglebutton/BaseToggleButton.vue +4 -0
  190. package/togglebutton/index.d.ts +5 -0
  191. package/togglebutton/index.mjs +4 -0
  192. package/togglebutton/index.mjs.map +1 -1
  193. package/togglebutton/style/index.mjs +1 -0
  194. package/togglebutton/style/index.mjs.map +1 -1
  195. package/toggleswitch/index.mjs.map +1 -1
  196. package/toolbar/index.mjs.map +1 -1
  197. package/tooltip/index.mjs.map +1 -1
  198. package/tree/index.mjs.map +1 -1
  199. package/treeselect/index.mjs.map +1 -1
  200. package/treetable/TreeTable.vue +1 -1
  201. package/treetable/index.mjs +1 -1
  202. package/treetable/index.mjs.map +1 -1
  203. package/umd/primevue.min.js +1 -12213
  204. package/useconfirm/index.mjs.map +1 -1
  205. package/usedialog/index.mjs.map +1 -1
  206. package/usetoast/index.mjs.map +1 -1
  207. package/virtualscroller/index.mjs.map +1 -1
  208. package/virtualscroller/style/index.mjs.map +1 -1
  209. package/web-types.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../src/inputotp/BaseInputOtp.vue","../../src/inputotp/InputOtp.vue","../../src/inputotp/InputOtp.vue?vue&type=template&id=05b21321&lang.js"],"sourcesContent":["<script>\nimport BaseInput from '@primevue/core/baseinput';\nimport InputOtpStyle from 'primevue/inputotp/style';\n\nexport default {\n name: 'BaseInputOtp',\n extends: BaseInput,\n props: {\n readonly: {\n type: Boolean,\n default: false\n },\n tabindex: {\n type: Number,\n default: null\n },\n length: {\n type: Number,\n default: 4\n },\n mask: {\n type: Boolean,\n default: false\n },\n integerOnly: {\n type: Boolean,\n default: false\n }\n },\n style: InputOtpStyle,\n provide() {\n return {\n $pcInputOtp: this,\n $parentInstance: this\n };\n }\n};\n</script>\n","<template>\n <div :class=\"cx('root')\" v-bind=\"ptmi('root')\">\n <template v-for=\"i in length\" :key=\"i\">\n <slot :events=\"getTemplateEvents(i - 1)\" :attrs=\"getTemplateAttrs(i - 1)\" :index=\"i\">\n <OtpInputText\n :value=\"tokens[i - 1]\"\n :type=\"inputType\"\n :class=\"cx('pcInputText')\"\n :name=\"$formName\"\n :inputmode=\"inputMode\"\n :variant=\"variant\"\n :readonly=\"readonly\"\n :disabled=\"disabled\"\n :size=\"size\"\n :invalid=\"invalid\"\n :tabindex=\"tabindex\"\n :unstyled=\"unstyled\"\n @input=\"onInput($event, i - 1)\"\n @focus=\"onFocus($event)\"\n @blur=\"onBlur($event)\"\n @paste=\"onPaste($event)\"\n @keydown=\"onKeyDown($event)\"\n @click=\"onClick($event)\"\n :pt=\"ptm('pcInputText')\"\n />\n </slot>\n </template>\n </div>\n</template>\n\n<script>\nimport { isTouchDevice } from '@primeuix/utils/dom';\nimport InputText from 'primevue/inputtext';\nimport BaseInputOtp from './BaseInputOtp.vue';\n\nexport default {\n name: 'InputOtp',\n extends: BaseInputOtp,\n inheritAttrs: false,\n emits: ['change', 'focus', 'blur'],\n data() {\n return {\n tokens: []\n };\n },\n watch: {\n modelValue: {\n immediate: true,\n handler(newValue) {\n this.tokens = newValue ? newValue.split('') : new Array(this.length);\n }\n }\n },\n methods: {\n getTemplateAttrs(index) {\n return {\n value: this.tokens[index]\n };\n },\n getTemplateEvents(index) {\n return {\n input: (event) => this.onInput(event, index),\n keydown: (event) => this.onKeyDown(event),\n focus: (event) => this.onFocus(event),\n blur: (event) => this.onBlur(event),\n paste: (event) => this.onPaste(event)\n };\n },\n onInput(event, index) {\n this.tokens[index] = event.target.value;\n this.updateModel(event);\n\n if (event.inputType === 'deleteContentBackward') {\n this.moveToPrev(event);\n } else if (event.inputType === 'insertText' || event.inputType === 'deleteContentForward' || (isTouchDevice() && event instanceof CustomEvent)) {\n this.moveToNext(event);\n }\n },\n updateModel(event) {\n const newValue = this.tokens.join('');\n\n this.writeValue(newValue, event);\n this.$emit('change', {\n originalEvent: event,\n value: newValue\n });\n },\n moveToPrev(event) {\n let prevInput = this.findPrevInput(event.target);\n\n if (prevInput) {\n prevInput.focus();\n prevInput.select();\n }\n },\n moveToNext(event) {\n let nextInput = this.findNextInput(event.target);\n\n if (nextInput) {\n nextInput.focus();\n nextInput.select();\n }\n },\n findNextInput(element) {\n let nextElement = element.nextElementSibling;\n\n if (!nextElement) return;\n\n return nextElement.nodeName === 'INPUT' ? nextElement : this.findNextInput(nextElement);\n },\n findPrevInput(element) {\n let prevElement = element.previousElementSibling;\n\n if (!prevElement) return;\n\n return prevElement.nodeName === 'INPUT' ? prevElement : this.findPrevInput(prevElement);\n },\n onFocus(event) {\n event.target.select();\n this.$emit('focus', event);\n },\n onBlur(event) {\n this.$emit('blur', event);\n },\n onClick(event) {\n setTimeout(() => event.target.select(), 1);\n },\n onKeyDown(event) {\n if (event.ctrlKey || event.metaKey) {\n return;\n }\n\n switch (event.code) {\n case 'ArrowLeft':\n this.moveToPrev(event);\n event.preventDefault();\n\n break;\n\n case 'ArrowUp':\n case 'ArrowDown':\n event.preventDefault();\n\n break;\n\n case 'Backspace':\n if (event.target.value.length === 0) {\n this.moveToPrev(event);\n event.preventDefault();\n }\n\n break;\n\n case 'ArrowRight':\n this.moveToNext(event);\n event.preventDefault();\n\n break;\n\n case 'Enter':\n case 'NumpadEnter':\n case 'Tab':\n break;\n\n default:\n if ((this.integerOnly && !(event.code !== 'Space' && Number(event.key) >= 0 && Number(event.key) <= 9)) || (this.tokens.join('').length >= this.length && event.code !== 'Delete')) {\n event.preventDefault();\n }\n\n break;\n }\n },\n onPaste(event) {\n let paste = event.clipboardData.getData('text');\n\n if (paste.length) {\n let pastedCode = paste.substring(0, this.length);\n\n if (!this.integerOnly || !isNaN(pastedCode)) {\n this.tokens = pastedCode.split('');\n this.updateModel(event);\n }\n }\n\n event.preventDefault();\n }\n },\n computed: {\n inputMode() {\n return this.integerOnly ? 'numeric' : 'text';\n },\n inputType() {\n return this.mask ? 'password' : 'text';\n }\n },\n components: {\n OtpInputText: InputText\n }\n};\n</script>\n","<template>\n <div :class=\"cx('root')\" v-bind=\"ptmi('root')\">\n <template v-for=\"i in length\" :key=\"i\">\n <slot :events=\"getTemplateEvents(i - 1)\" :attrs=\"getTemplateAttrs(i - 1)\" :index=\"i\">\n <OtpInputText\n :value=\"tokens[i - 1]\"\n :type=\"inputType\"\n :class=\"cx('pcInputText')\"\n :name=\"$formName\"\n :inputmode=\"inputMode\"\n :variant=\"variant\"\n :readonly=\"readonly\"\n :disabled=\"disabled\"\n :size=\"size\"\n :invalid=\"invalid\"\n :tabindex=\"tabindex\"\n :unstyled=\"unstyled\"\n @input=\"onInput($event, i - 1)\"\n @focus=\"onFocus($event)\"\n @blur=\"onBlur($event)\"\n @paste=\"onPaste($event)\"\n @keydown=\"onKeyDown($event)\"\n @click=\"onClick($event)\"\n :pt=\"ptm('pcInputText')\"\n />\n </slot>\n </template>\n </div>\n</template>\n\n<script>\nimport { isTouchDevice } from '@primeuix/utils/dom';\nimport InputText from 'primevue/inputtext';\nimport BaseInputOtp from './BaseInputOtp.vue';\n\nexport default {\n name: 'InputOtp',\n extends: BaseInputOtp,\n inheritAttrs: false,\n emits: ['change', 'focus', 'blur'],\n data() {\n return {\n tokens: []\n };\n },\n watch: {\n modelValue: {\n immediate: true,\n handler(newValue) {\n this.tokens = newValue ? newValue.split('') : new Array(this.length);\n }\n }\n },\n methods: {\n getTemplateAttrs(index) {\n return {\n value: this.tokens[index]\n };\n },\n getTemplateEvents(index) {\n return {\n input: (event) => this.onInput(event, index),\n keydown: (event) => this.onKeyDown(event),\n focus: (event) => this.onFocus(event),\n blur: (event) => this.onBlur(event),\n paste: (event) => this.onPaste(event)\n };\n },\n onInput(event, index) {\n this.tokens[index] = event.target.value;\n this.updateModel(event);\n\n if (event.inputType === 'deleteContentBackward') {\n this.moveToPrev(event);\n } else if (event.inputType === 'insertText' || event.inputType === 'deleteContentForward' || (isTouchDevice() && event instanceof CustomEvent)) {\n this.moveToNext(event);\n }\n },\n updateModel(event) {\n const newValue = this.tokens.join('');\n\n this.writeValue(newValue, event);\n this.$emit('change', {\n originalEvent: event,\n value: newValue\n });\n },\n moveToPrev(event) {\n let prevInput = this.findPrevInput(event.target);\n\n if (prevInput) {\n prevInput.focus();\n prevInput.select();\n }\n },\n moveToNext(event) {\n let nextInput = this.findNextInput(event.target);\n\n if (nextInput) {\n nextInput.focus();\n nextInput.select();\n }\n },\n findNextInput(element) {\n let nextElement = element.nextElementSibling;\n\n if (!nextElement) return;\n\n return nextElement.nodeName === 'INPUT' ? nextElement : this.findNextInput(nextElement);\n },\n findPrevInput(element) {\n let prevElement = element.previousElementSibling;\n\n if (!prevElement) return;\n\n return prevElement.nodeName === 'INPUT' ? prevElement : this.findPrevInput(prevElement);\n },\n onFocus(event) {\n event.target.select();\n this.$emit('focus', event);\n },\n onBlur(event) {\n this.$emit('blur', event);\n },\n onClick(event) {\n setTimeout(() => event.target.select(), 1);\n },\n onKeyDown(event) {\n if (event.ctrlKey || event.metaKey) {\n return;\n }\n\n switch (event.code) {\n case 'ArrowLeft':\n this.moveToPrev(event);\n event.preventDefault();\n\n break;\n\n case 'ArrowUp':\n case 'ArrowDown':\n event.preventDefault();\n\n break;\n\n case 'Backspace':\n if (event.target.value.length === 0) {\n this.moveToPrev(event);\n event.preventDefault();\n }\n\n break;\n\n case 'ArrowRight':\n this.moveToNext(event);\n event.preventDefault();\n\n break;\n\n case 'Enter':\n case 'NumpadEnter':\n case 'Tab':\n break;\n\n default:\n if ((this.integerOnly && !(event.code !== 'Space' && Number(event.key) >= 0 && Number(event.key) <= 9)) || (this.tokens.join('').length >= this.length && event.code !== 'Delete')) {\n event.preventDefault();\n }\n\n break;\n }\n },\n onPaste(event) {\n let paste = event.clipboardData.getData('text');\n\n if (paste.length) {\n let pastedCode = paste.substring(0, this.length);\n\n if (!this.integerOnly || !isNaN(pastedCode)) {\n this.tokens = pastedCode.split('');\n this.updateModel(event);\n }\n }\n\n event.preventDefault();\n }\n },\n computed: {\n inputMode() {\n return this.integerOnly ? 'numeric' : 'text';\n },\n inputType() {\n return this.mask ? 'password' : 'text';\n }\n },\n components: {\n OtpInputText: InputText\n }\n};\n</script>\n"],"names":["name","BaseInput","props","readonly","type","Boolean","tabindex","Number","length","mask","integerOnly","style","InputOtpStyle","provide","$pcInputOtp","$parentInstance","BaseInputOtp","inheritAttrs","emits","data","tokens","watch","modelValue","immediate","handler","newValue","split","Array","methods","getTemplateAttrs","index","value","getTemplateEvents","_this","input","event","onInput","keydown","onKeyDown","focus","onFocus","blur","onBlur","paste","onPaste","target","updateModel","inputType","moveToPrev","isTouchDevice","CustomEvent","moveToNext","join","writeValue","$emit","originalEvent","prevInput","findPrevInput","select","nextInput","findNextInput","element","nextElement","nextElementSibling","nodeName","prevElement","previousElementSibling","onClick","setTimeout","ctrlKey","metaKey","code","preventDefault","key","clipboardData","getData","pastedCode","substring","isNaN","computed","inputMode","components","OtpInputText","InputText","_openBlock","_createElementBlock","_mergeProps","_ctx","cx","ptmi","_Fragment","_renderList","i","_renderSlot","$slots","events","$options","attrs","_createVNode","_component_OtpInputText","$data","$formName","inputmode","variant","disabled","size","invalid","unstyled","$event","_cache","onKeydown","pt","ptm"],"mappings":"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"}
1
+ {"version":3,"file":"index.mjs","sources":["../../src/inputotp/BaseInputOtp.vue","../../src/inputotp/InputOtp.vue","../../src/inputotp/InputOtp.vue?vue&type=template&id=05b21321&lang.js"],"sourcesContent":["<script>\nimport BaseInput from '@primevue/core/baseinput';\nimport InputOtpStyle from 'primevue/inputotp/style';\n\nexport default {\n name: 'BaseInputOtp',\n extends: BaseInput,\n props: {\n readonly: {\n type: Boolean,\n default: false\n },\n tabindex: {\n type: Number,\n default: null\n },\n length: {\n type: Number,\n default: 4\n },\n mask: {\n type: Boolean,\n default: false\n },\n integerOnly: {\n type: Boolean,\n default: false\n }\n },\n style: InputOtpStyle,\n provide() {\n return {\n $pcInputOtp: this,\n $parentInstance: this\n };\n }\n};\n</script>\n","<template>\n <div :class=\"cx('root')\" v-bind=\"ptmi('root')\">\n <template v-for=\"i in length\" :key=\"i\">\n <slot :events=\"getTemplateEvents(i - 1)\" :attrs=\"getTemplateAttrs(i - 1)\" :index=\"i\">\n <OtpInputText\n :value=\"tokens[i - 1]\"\n :type=\"inputType\"\n :class=\"cx('pcInputText')\"\n :name=\"$formName\"\n :inputmode=\"inputMode\"\n :variant=\"variant\"\n :readonly=\"readonly\"\n :disabled=\"disabled\"\n :size=\"size\"\n :invalid=\"invalid\"\n :tabindex=\"tabindex\"\n :unstyled=\"unstyled\"\n @input=\"onInput($event, i - 1)\"\n @focus=\"onFocus($event)\"\n @blur=\"onBlur($event)\"\n @paste=\"onPaste($event)\"\n @keydown=\"onKeyDown($event)\"\n @click=\"onClick($event)\"\n :pt=\"ptm('pcInputText')\"\n />\n </slot>\n </template>\n </div>\n</template>\n\n<script>\nimport { isTouchDevice } from '@primeuix/utils/dom';\nimport InputText from 'primevue/inputtext';\nimport BaseInputOtp from './BaseInputOtp.vue';\n\nexport default {\n name: 'InputOtp',\n extends: BaseInputOtp,\n inheritAttrs: false,\n emits: ['change', 'focus', 'blur'],\n data() {\n return {\n tokens: []\n };\n },\n watch: {\n modelValue: {\n immediate: true,\n handler(newValue) {\n this.tokens = newValue ? newValue.split('') : new Array(this.length);\n }\n }\n },\n methods: {\n getTemplateAttrs(index) {\n return {\n value: this.tokens[index]\n };\n },\n getTemplateEvents(index) {\n return {\n input: (event) => this.onInput(event, index),\n keydown: (event) => this.onKeyDown(event),\n focus: (event) => this.onFocus(event),\n blur: (event) => this.onBlur(event),\n paste: (event) => this.onPaste(event)\n };\n },\n onInput(event, index) {\n this.tokens[index] = event.target.value;\n this.updateModel(event);\n\n if (event.inputType === 'deleteContentBackward') {\n this.moveToPrev(event);\n } else if (event.inputType === 'insertText' || event.inputType === 'deleteContentForward' || (isTouchDevice() && event instanceof CustomEvent)) {\n this.moveToNext(event);\n }\n },\n updateModel(event) {\n const newValue = this.tokens.join('');\n\n this.writeValue(newValue, event);\n this.$emit('change', {\n originalEvent: event,\n value: newValue\n });\n },\n moveToPrev(event) {\n let prevInput = this.findPrevInput(event.target);\n\n if (prevInput) {\n prevInput.focus();\n prevInput.select();\n }\n },\n moveToNext(event) {\n let nextInput = this.findNextInput(event.target);\n\n if (nextInput) {\n nextInput.focus();\n nextInput.select();\n }\n },\n findNextInput(element) {\n let nextElement = element.nextElementSibling;\n\n if (!nextElement) return;\n\n return nextElement.nodeName === 'INPUT' ? nextElement : this.findNextInput(nextElement);\n },\n findPrevInput(element) {\n let prevElement = element.previousElementSibling;\n\n if (!prevElement) return;\n\n return prevElement.nodeName === 'INPUT' ? prevElement : this.findPrevInput(prevElement);\n },\n onFocus(event) {\n event.target.select();\n this.$emit('focus', event);\n },\n onBlur(event) {\n this.$emit('blur', event);\n },\n onClick(event) {\n setTimeout(() => event.target.select(), 1);\n },\n onKeyDown(event) {\n if (event.ctrlKey || event.metaKey) {\n return;\n }\n\n switch (event.code) {\n case 'ArrowLeft':\n this.moveToPrev(event);\n event.preventDefault();\n\n break;\n\n case 'ArrowUp':\n case 'ArrowDown':\n event.preventDefault();\n\n break;\n\n case 'Backspace':\n if (event.target.value.length === 0) {\n this.moveToPrev(event);\n event.preventDefault();\n }\n\n break;\n\n case 'ArrowRight':\n this.moveToNext(event);\n event.preventDefault();\n\n break;\n\n case 'Enter':\n case 'NumpadEnter':\n case 'Tab':\n break;\n\n default:\n if ((this.integerOnly && !(event.code !== 'Space' && Number(event.key) >= 0 && Number(event.key) <= 9)) || (this.tokens.join('').length >= this.length && event.code !== 'Delete')) {\n event.preventDefault();\n }\n\n break;\n }\n },\n onPaste(event) {\n let paste = event.clipboardData.getData('text');\n\n if (paste.length) {\n let pastedCode = paste.substring(0, this.length);\n\n if (!this.integerOnly || !isNaN(pastedCode)) {\n this.tokens = pastedCode.split('');\n this.updateModel(event);\n }\n }\n\n event.preventDefault();\n }\n },\n computed: {\n inputMode() {\n return this.integerOnly ? 'numeric' : 'text';\n },\n inputType() {\n return this.mask ? 'password' : 'text';\n }\n },\n components: {\n OtpInputText: InputText\n }\n};\n</script>\n","<template>\n <div :class=\"cx('root')\" v-bind=\"ptmi('root')\">\n <template v-for=\"i in length\" :key=\"i\">\n <slot :events=\"getTemplateEvents(i - 1)\" :attrs=\"getTemplateAttrs(i - 1)\" :index=\"i\">\n <OtpInputText\n :value=\"tokens[i - 1]\"\n :type=\"inputType\"\n :class=\"cx('pcInputText')\"\n :name=\"$formName\"\n :inputmode=\"inputMode\"\n :variant=\"variant\"\n :readonly=\"readonly\"\n :disabled=\"disabled\"\n :size=\"size\"\n :invalid=\"invalid\"\n :tabindex=\"tabindex\"\n :unstyled=\"unstyled\"\n @input=\"onInput($event, i - 1)\"\n @focus=\"onFocus($event)\"\n @blur=\"onBlur($event)\"\n @paste=\"onPaste($event)\"\n @keydown=\"onKeyDown($event)\"\n @click=\"onClick($event)\"\n :pt=\"ptm('pcInputText')\"\n />\n </slot>\n </template>\n </div>\n</template>\n\n<script>\nimport { isTouchDevice } from '@primeuix/utils/dom';\nimport InputText from 'primevue/inputtext';\nimport BaseInputOtp from './BaseInputOtp.vue';\n\nexport default {\n name: 'InputOtp',\n extends: BaseInputOtp,\n inheritAttrs: false,\n emits: ['change', 'focus', 'blur'],\n data() {\n return {\n tokens: []\n };\n },\n watch: {\n modelValue: {\n immediate: true,\n handler(newValue) {\n this.tokens = newValue ? newValue.split('') : new Array(this.length);\n }\n }\n },\n methods: {\n getTemplateAttrs(index) {\n return {\n value: this.tokens[index]\n };\n },\n getTemplateEvents(index) {\n return {\n input: (event) => this.onInput(event, index),\n keydown: (event) => this.onKeyDown(event),\n focus: (event) => this.onFocus(event),\n blur: (event) => this.onBlur(event),\n paste: (event) => this.onPaste(event)\n };\n },\n onInput(event, index) {\n this.tokens[index] = event.target.value;\n this.updateModel(event);\n\n if (event.inputType === 'deleteContentBackward') {\n this.moveToPrev(event);\n } else if (event.inputType === 'insertText' || event.inputType === 'deleteContentForward' || (isTouchDevice() && event instanceof CustomEvent)) {\n this.moveToNext(event);\n }\n },\n updateModel(event) {\n const newValue = this.tokens.join('');\n\n this.writeValue(newValue, event);\n this.$emit('change', {\n originalEvent: event,\n value: newValue\n });\n },\n moveToPrev(event) {\n let prevInput = this.findPrevInput(event.target);\n\n if (prevInput) {\n prevInput.focus();\n prevInput.select();\n }\n },\n moveToNext(event) {\n let nextInput = this.findNextInput(event.target);\n\n if (nextInput) {\n nextInput.focus();\n nextInput.select();\n }\n },\n findNextInput(element) {\n let nextElement = element.nextElementSibling;\n\n if (!nextElement) return;\n\n return nextElement.nodeName === 'INPUT' ? nextElement : this.findNextInput(nextElement);\n },\n findPrevInput(element) {\n let prevElement = element.previousElementSibling;\n\n if (!prevElement) return;\n\n return prevElement.nodeName === 'INPUT' ? prevElement : this.findPrevInput(prevElement);\n },\n onFocus(event) {\n event.target.select();\n this.$emit('focus', event);\n },\n onBlur(event) {\n this.$emit('blur', event);\n },\n onClick(event) {\n setTimeout(() => event.target.select(), 1);\n },\n onKeyDown(event) {\n if (event.ctrlKey || event.metaKey) {\n return;\n }\n\n switch (event.code) {\n case 'ArrowLeft':\n this.moveToPrev(event);\n event.preventDefault();\n\n break;\n\n case 'ArrowUp':\n case 'ArrowDown':\n event.preventDefault();\n\n break;\n\n case 'Backspace':\n if (event.target.value.length === 0) {\n this.moveToPrev(event);\n event.preventDefault();\n }\n\n break;\n\n case 'ArrowRight':\n this.moveToNext(event);\n event.preventDefault();\n\n break;\n\n case 'Enter':\n case 'NumpadEnter':\n case 'Tab':\n break;\n\n default:\n if ((this.integerOnly && !(event.code !== 'Space' && Number(event.key) >= 0 && Number(event.key) <= 9)) || (this.tokens.join('').length >= this.length && event.code !== 'Delete')) {\n event.preventDefault();\n }\n\n break;\n }\n },\n onPaste(event) {\n let paste = event.clipboardData.getData('text');\n\n if (paste.length) {\n let pastedCode = paste.substring(0, this.length);\n\n if (!this.integerOnly || !isNaN(pastedCode)) {\n this.tokens = pastedCode.split('');\n this.updateModel(event);\n }\n }\n\n event.preventDefault();\n }\n },\n computed: {\n inputMode() {\n return this.integerOnly ? 'numeric' : 'text';\n },\n inputType() {\n return this.mask ? 'password' : 'text';\n }\n },\n components: {\n OtpInputText: InputText\n }\n};\n</script>\n"],"names":["name","BaseInput","props","readonly","type","Boolean","tabindex","Number","length","mask","integerOnly","style","InputOtpStyle","provide","$pcInputOtp","$parentInstance","BaseInputOtp","inheritAttrs","emits","data","tokens","watch","modelValue","immediate","handler","newValue","split","Array","methods","getTemplateAttrs","index","value","getTemplateEvents","_this","input","event","onInput","keydown","onKeyDown","focus","onFocus","blur","onBlur","paste","onPaste","target","updateModel","inputType","moveToPrev","isTouchDevice","CustomEvent","moveToNext","join","writeValue","$emit","originalEvent","prevInput","findPrevInput","select","nextInput","findNextInput","element","nextElement","nextElementSibling","nodeName","prevElement","previousElementSibling","onClick","setTimeout","ctrlKey","metaKey","code","preventDefault","key","clipboardData","getData","pastedCode","substring","isNaN","computed","inputMode","components","OtpInputText","InputText","_openBlock","_createElementBlock","_mergeProps","_ctx","cx","ptmi","_Fragment","_renderList","i","_renderSlot","$slots","events","$options","attrs","_createVNode","_component_OtpInputText","$data","$formName","inputmode","variant","disabled","size","invalid","unstyled","$event","_cache","onKeydown","pt","ptm"],"mappings":";;;;;;AAIA,eAAe;AACXA,EAAAA,IAAI,EAAE,cAAc;AACpB,EAAA,SAAA,EAASC,SAAS;AAClBC,EAAAA,KAAK,EAAE;AACHC,IAAAA,QAAQ,EAAE;AACNC,MAAAA,IAAI,EAAEC,OAAO;MACb,SAAA,EAAS;KACZ;AACDC,IAAAA,QAAQ,EAAE;AACNF,MAAAA,IAAI,EAAEG,MAAM;MACZ,SAAA,EAAS;KACZ;AACDC,IAAAA,MAAM,EAAE;AACJJ,MAAAA,IAAI,EAAEG,MAAM;MACZ,SAAA,EAAS;KACZ;AACDE,IAAAA,IAAI,EAAE;AACFL,MAAAA,IAAI,EAAEC,OAAO;MACb,SAAA,EAAS;KACZ;AACDK,IAAAA,WAAW,EAAE;AACTN,MAAAA,IAAI,EAAEC,OAAO;MACb,SAAA,EAAS;AACb;GACH;AACDM,EAAAA,KAAK,EAAEC,aAAa;EACpBC,OAAO,EAAA,SAAPA,OAAOA,GAAG;IACN,OAAO;AACHC,MAAAA,WAAW,EAAE,IAAI;AACjBC,MAAAA,eAAe,EAAE;KACpB;AACL;AACJ,CAAC;;ACDD,aAAe;AACXf,EAAAA,IAAI,EAAE,UAAU;AAChB,EAAA,SAAA,EAASgB,QAAY;AACrBC,EAAAA,YAAY,EAAE,KAAK;AACnBC,EAAAA,KAAK,EAAE,CAAC,QAAQ,EAAE,OAAO,EAAE,MAAM,CAAC;EAClCC,IAAI,EAAA,SAAJA,IAAIA,GAAG;IACH,OAAO;AACHC,MAAAA,MAAM,EAAE;KACX;GACJ;AACDC,EAAAA,KAAK,EAAE;AACHC,IAAAA,UAAU,EAAE;AACRC,MAAAA,SAAS,EAAE,IAAI;AACfC,MAAAA,OAAO,EAAA,SAAPA,OAAOA,CAACC,QAAQ,EAAE;AACd,QAAA,IAAI,CAACL,MAAK,GAAIK,QAAO,GAAIA,QAAQ,CAACC,KAAK,CAAC,EAAE,CAAA,GAAI,IAAIC,KAAK,CAAC,IAAI,CAACnB,MAAM,CAAC;AACxE;AACJ;GACH;AACDoB,EAAAA,OAAO,EAAE;AACLC,IAAAA,gBAAgB,EAAA,SAAhBA,gBAAgBA,CAACC,KAAK,EAAE;MACpB,OAAO;AACHC,QAAAA,KAAK,EAAE,IAAI,CAACX,MAAM,CAACU,KAAK;OAC3B;KACJ;AACDE,IAAAA,iBAAiB,EAAA,SAAjBA,iBAAiBA,CAACF,KAAK,EAAE;AAAA,MAAA,IAAAG,KAAA,GAAA,IAAA;MACrB,OAAO;AACHC,QAAAA,KAAK,EAAE,SAAPA,KAAKA,CAAGC,KAAK,EAAA;AAAA,UAAA,OAAKF,KAAI,CAACG,OAAO,CAACD,KAAK,EAAEL,KAAK,CAAC;AAAA,SAAA;AAC5CO,QAAAA,OAAO,EAAE,SAATA,OAAOA,CAAGF,KAAK,EAAA;AAAA,UAAA,OAAKF,KAAI,CAACK,SAAS,CAACH,KAAK,CAAC;AAAA,SAAA;AACzCI,QAAAA,KAAK,EAAE,SAAPA,KAAKA,CAAGJ,KAAK,EAAA;AAAA,UAAA,OAAKF,KAAI,CAACO,OAAO,CAACL,KAAK,CAAC;AAAA,SAAA;AACrCM,QAAAA,IAAI,EAAE,SAANA,IAAIA,CAAGN,KAAK,EAAA;AAAA,UAAA,OAAKF,KAAI,CAACS,MAAM,CAACP,KAAK,CAAC;AAAA,SAAA;AACnCQ,QAAAA,KAAK,EAAE,SAAPA,KAAKA,CAAGR,KAAK,EAAA;AAAA,UAAA,OAAKF,KAAI,CAACW,OAAO,CAACT,KAAK,CAAA;AAAA;OACvC;KACJ;AACDC,IAAAA,OAAO,WAAPA,OAAOA,CAACD,KAAK,EAAEL,KAAK,EAAE;MAClB,IAAI,CAACV,MAAM,CAACU,KAAK,CAAA,GAAIK,KAAK,CAACU,MAAM,CAACd,KAAK;AACvC,MAAA,IAAI,CAACe,WAAW,CAACX,KAAK,CAAC;AAEvB,MAAA,IAAIA,KAAK,CAACY,SAAQ,KAAM,uBAAuB,EAAE;AAC7C,QAAA,IAAI,CAACC,UAAU,CAACb,KAAK,CAAC;OAC1B,MAAO,IAAIA,KAAK,CAACY,SAAQ,KAAM,YAAW,IAAKZ,KAAK,CAACY,SAAQ,KAAM,sBAAqB,IAAME,aAAa,EAAC,IAAKd,KAAI,YAAae,WAAY,EAAE;AAC5I,QAAA,IAAI,CAACC,UAAU,CAAChB,KAAK,CAAC;AAC1B;KACH;AACDW,IAAAA,WAAW,EAAA,SAAXA,WAAWA,CAACX,KAAK,EAAE;MACf,IAAMV,QAAO,GAAI,IAAI,CAACL,MAAM,CAACgC,IAAI,CAAC,EAAE,CAAC;AAErC,MAAA,IAAI,CAACC,UAAU,CAAC5B,QAAQ,EAAEU,KAAK,CAAC;AAChC,MAAA,IAAI,CAACmB,KAAK,CAAC,QAAQ,EAAE;AACjBC,QAAAA,aAAa,EAAEpB,KAAK;AACpBJ,QAAAA,KAAK,EAAEN;AACX,OAAC,CAAC;KACL;AACDuB,IAAAA,UAAU,EAAA,SAAVA,UAAUA,CAACb,KAAK,EAAE;MACd,IAAIqB,SAAQ,GAAI,IAAI,CAACC,aAAa,CAACtB,KAAK,CAACU,MAAM,CAAC;AAEhD,MAAA,IAAIW,SAAS,EAAE;QACXA,SAAS,CAACjB,KAAK,EAAE;QACjBiB,SAAS,CAACE,MAAM,EAAE;AACtB;KACH;AACDP,IAAAA,UAAU,EAAA,SAAVA,UAAUA,CAAChB,KAAK,EAAE;MACd,IAAIwB,SAAQ,GAAI,IAAI,CAACC,aAAa,CAACzB,KAAK,CAACU,MAAM,CAAC;AAEhD,MAAA,IAAIc,SAAS,EAAE;QACXA,SAAS,CAACpB,KAAK,EAAE;QACjBoB,SAAS,CAACD,MAAM,EAAE;AACtB;KACH;AACDE,IAAAA,aAAa,EAAA,SAAbA,aAAaA,CAACC,OAAO,EAAE;AACnB,MAAA,IAAIC,WAAU,GAAID,OAAO,CAACE,kBAAkB;MAE5C,IAAI,CAACD,WAAW,EAAE;AAElB,MAAA,OAAOA,WAAW,CAACE,QAAO,KAAM,OAAM,GAAIF,cAAc,IAAI,CAACF,aAAa,CAACE,WAAW,CAAC;KAC1F;AACDL,IAAAA,aAAa,EAAA,SAAbA,aAAaA,CAACI,OAAO,EAAE;AACnB,MAAA,IAAII,cAAcJ,OAAO,CAACK,sBAAsB;MAEhD,IAAI,CAACD,WAAW,EAAE;AAElB,MAAA,OAAOA,WAAW,CAACD,QAAO,KAAM,OAAM,GAAIC,cAAc,IAAI,CAACR,aAAa,CAACQ,WAAW,CAAC;KAC1F;AACDzB,IAAAA,OAAO,EAAA,SAAPA,OAAOA,CAACL,KAAK,EAAE;AACXA,MAAAA,KAAK,CAACU,MAAM,CAACa,MAAM,EAAE;AACrB,MAAA,IAAI,CAACJ,KAAK,CAAC,OAAO,EAAEnB,KAAK,CAAC;KAC7B;AACDO,IAAAA,MAAM,EAAA,SAANA,MAAMA,CAACP,KAAK,EAAE;AACV,MAAA,IAAI,CAACmB,KAAK,CAAC,MAAM,EAAEnB,KAAK,CAAC;KAC5B;AACDgC,IAAAA,OAAO,EAAA,SAAPA,OAAOA,CAAChC,KAAK,EAAE;AACXiC,MAAAA,UAAU,CAAC,YAAA;AAAA,QAAA,OAAMjC,KAAK,CAACU,MAAM,CAACa,MAAM,EAAE;AAAA,OAAA,EAAE,CAAC,CAAC;KAC7C;AACDpB,IAAAA,SAAS,EAAA,SAATA,SAASA,CAACH,KAAK,EAAE;AACb,MAAA,IAAIA,KAAK,CAACkC,OAAM,IAAKlC,KAAK,CAACmC,OAAO,EAAE;AAChC,QAAA;AACJ;MAEA,QAAQnC,KAAK,CAACoC,IAAI;AACd,QAAA,KAAK,WAAW;AACZ,UAAA,IAAI,CAACvB,UAAU,CAACb,KAAK,CAAC;UACtBA,KAAK,CAACqC,cAAc,EAAE;AAEtB,UAAA;AAEJ,QAAA,KAAK,SAAS;AACd,QAAA,KAAK,WAAW;UACZrC,KAAK,CAACqC,cAAc,EAAE;AAEtB,UAAA;AAEJ,QAAA,KAAK,WAAW;UACZ,IAAIrC,KAAK,CAACU,MAAM,CAACd,KAAK,CAACvB,MAAK,KAAM,CAAC,EAAE;AACjC,YAAA,IAAI,CAACwC,UAAU,CAACb,KAAK,CAAC;YACtBA,KAAK,CAACqC,cAAc,EAAE;AAC1B;AAEA,UAAA;AAEJ,QAAA,KAAK,YAAY;AACb,UAAA,IAAI,CAACrB,UAAU,CAAChB,KAAK,CAAC;UACtBA,KAAK,CAACqC,cAAc,EAAE;AAEtB,UAAA;AAEJ,QAAA,KAAK,OAAO;AACZ,QAAA,KAAK,aAAa;AAClB,QAAA,KAAK,KAAK;AACN,UAAA;AAEJ,QAAA;UACI,IAAK,IAAI,CAAC9D,WAAU,IAAK,EAAEyB,KAAK,CAACoC,IAAG,KAAM,OAAM,IAAKhE,MAAM,CAAC4B,KAAK,CAACsC,GAAG,CAAA,IAAK,CAAA,IAAKlE,MAAM,CAAC4B,KAAK,CAACsC,GAAG,CAAA,IAAK,CAAC,CAAC,IAAM,IAAI,CAACrD,MAAM,CAACgC,IAAI,CAAC,EAAE,CAAC,CAAC5C,MAAK,IAAK,IAAI,CAACA,MAAK,IAAK2B,KAAK,CAACoC,IAAG,KAAM,QAAS,EAAE;YAChLpC,KAAK,CAACqC,cAAc,EAAE;AAC1B;AAEA,UAAA;AACR;KACH;AACD5B,IAAAA,OAAO,EAAA,SAAPA,OAAOA,CAACT,KAAK,EAAE;MACX,IAAIQ,QAAQR,KAAK,CAACuC,aAAa,CAACC,OAAO,CAAC,MAAM,CAAC;MAE/C,IAAIhC,KAAK,CAACnC,MAAM,EAAE;QACd,IAAIoE,UAAS,GAAIjC,KAAK,CAACkC,SAAS,CAAC,CAAC,EAAE,IAAI,CAACrE,MAAM,CAAC;QAEhD,IAAI,CAAC,IAAI,CAACE,WAAU,IAAK,CAACoE,KAAK,CAACF,UAAU,CAAC,EAAE;UACzC,IAAI,CAACxD,MAAK,GAAIwD,UAAU,CAAClD,KAAK,CAAC,EAAE,CAAC;AAClC,UAAA,IAAI,CAACoB,WAAW,CAACX,KAAK,CAAC;AAC3B;AACJ;MAEAA,KAAK,CAACqC,cAAc,EAAE;AAC1B;GACH;AACDO,EAAAA,QAAQ,EAAE;IACNC,SAAS,EAAA,SAATA,SAASA,GAAG;AACR,MAAA,OAAO,IAAI,CAACtE,cAAc,YAAY,MAAM;KAC/C;IACDqC,SAAS,EAAA,SAATA,SAASA,GAAG;AACR,MAAA,OAAO,IAAI,CAACtC,IAAG,GAAI,UAAS,GAAI,MAAM;AAC1C;GACH;AACDwE,EAAAA,UAAU,EAAE;AACRC,IAAAA,YAAY,EAAEC;AAClB;AACJ,CAAC;;;;ECrMG,OAAAC,SAAA,EAAA,EAAAC,kBAAA,CA0BK,OA1BLC,UAAA,CA0BK;AA1BC,IAAA,OAAA,EAAOC,IAAA,CAAAC,EAAE,CAAA,MAAA;KAAkBD,IAAA,CAAAE,IAAI,CAAA,MAAA,CAAA,CAAA,EAAA,mBACjCJ,kBAAA,CAwBUK,QAAA,EAAA,IAAA,EAAAC,UAAA,CAxBYJ,IAAA,CAAA/E,MAAM,EAAA,UAAXoF,CAAA,EAAA;WACbC,UAAA,CAsBMN,IAAA,CAAAO,MAAA,EAAA,SAAA,EAAA;WAvB0BF,CAAC;MAC1BG,MAAM,EAAEC,QAAA,CAAAhE,iBAAiB,CAAC4D,CAAA,GAAA,CAAA,CAAA;MAASK,KAAK,EAAED,QAAA,CAAAnE,gBAAgB,CAAC+D,CAAA,GAAA,CAAA,CAAA;AAAS9D,MAAAA,KAAK,EAAE8D;OAAlF,YAAA;AAAA,MAAA,OAsBM,CArBFM,WAAA,CAoBCC,uBAAA,EAAA;QAnBIpE,KAAK,EAAEqE,KAAA,CAAAhF,MAAM,CAACwE,CAAA,GAAA,CAAA,CAAA;QACdxF,IAAI,EAAE4F,QAAA,CAAAjD,SAAS;QACf,OAAA,iBAAOwC,IAAA,CAAAC,EAAE,CAAA,aAAA,CAAA,CAAA;QACTxF,IAAI,EAAEuF,IAAA,CAAAc,SAAS;QACfC,SAAS,EAAEN,QAAA,CAAAhB,SAAS;QACpBuB,OAAO,EAAEhB,IAAA,CAAAgB,OAAO;QAChBpG,QAAQ,EAAEoF,IAAA,CAAApF,QAAQ;QAClBqG,QAAQ,EAAEjB,IAAA,CAAAiB,QAAQ;QAClBC,IAAI,EAAElB,IAAA,CAAAkB,IAAI;QACVC,OAAO,EAAEnB,IAAA,CAAAmB,OAAO;QAChBpG,QAAQ,EAAEiF,IAAA,CAAAjF,QAAQ;QAClBqG,QAAQ,EAAEpB,IAAA,CAAAoB,QAAQ;AAClBvE,QAAAA,OAAK,EAAA,SAALA,OAAKA,CAAAwE,MAAA,EAAA;UAAA,OAAEZ,QAAA,CAAA5D,OAAO,CAACwE,MAAM,EAAEhB,CAAA,GAAA,CAAA,CAAA;SAAA;AACvBpD,QAAAA,OAAK,EAAAqE,MAAA,CAAA,CAAA,CAAA,KAAAA,MAAA,CAAA,CAAA,CAAA,GAAA,UAAAD,MAAA,EAAA;AAAA,UAAA,OAAEZ,QAAA,CAAAxD,OAAO,CAACoE,MAAM,CAAA;AAAA,SAAA,CAAA;AACrBlE,QAAAA,MAAI,EAAAmE,MAAA,CAAA,CAAA,CAAA,KAAAA,MAAA,CAAA,CAAA,CAAA,GAAA,UAAAD,MAAA,EAAA;AAAA,UAAA,OAAEZ,QAAA,CAAAtD,MAAM,CAACkE,MAAM,CAAA;AAAA,SAAA,CAAA;AACnBhE,QAAAA,OAAK,EAAAiE,MAAA,CAAA,CAAA,CAAA,KAAAA,MAAA,CAAA,CAAA,CAAA,GAAA,UAAAD,MAAA,EAAA;AAAA,UAAA,OAAEZ,QAAA,CAAApD,OAAO,CAACgE,MAAM,CAAA;AAAA,SAAA,CAAA;AACrBE,QAAAA,SAAO,EAAAD,MAAA,CAAA,CAAA,CAAA,KAAAA,MAAA,CAAA,CAAA,CAAA,GAAA,UAAAD,MAAA,EAAA;AAAA,UAAA,OAAEZ,QAAA,CAAA1D,SAAS,CAACsE,MAAM,CAAA;AAAA,SAAA,CAAA;AACzBzC,QAAAA,OAAK,EAAA0C,MAAA,CAAA,CAAA,CAAA,KAAAA,MAAA,CAAA,CAAA,CAAA,GAAA,UAAAD,MAAA,EAAA;AAAA,UAAA,OAAEZ,QAAA,CAAA7B,OAAO,CAACyC,MAAM,CAAA;AAAA,SAAA,CAAA;AACrBG,QAAAA,EAAE,EAAExB,IAAA,CAAAyB,GAAG,CAAA,aAAA;;;;;;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../src/inputtext/BaseInputText.vue","../../src/inputtext/InputText.vue","../../src/inputtext/InputText.vue?vue&type=template&id=f81a40ac&lang.js"],"sourcesContent":["<script>\nimport BaseInput from '@primevue/core/baseinput';\nimport InputTextStyle from 'primevue/inputtext/style';\n\nexport default {\n name: 'BaseInputText',\n extends: BaseInput,\n style: InputTextStyle,\n provide() {\n return {\n $pcInputText: this,\n $parentInstance: this\n };\n }\n};\n</script>\n","<template>\n <input type=\"text\" :class=\"cx('root')\" :value=\"d_value\" :name=\"name\" :disabled=\"disabled\" :aria-invalid=\"$invalid || undefined\" :data-p=\"dataP\" @input=\"onInput\" v-bind=\"attrs\" />\n</template>\n\n<script>\nimport { cn } from '@primeuix/utils';\nimport { mergeProps } from 'vue';\nimport BaseInputText from './BaseInputText.vue';\n\nexport default {\n name: 'InputText',\n extends: BaseInputText,\n inheritAttrs: false,\n methods: {\n onInput(event) {\n this.writeValue(event.target.value, event);\n }\n },\n computed: {\n attrs() {\n return mergeProps(\n this.ptmi('root', {\n context: {\n filled: this.$filled,\n disabled: this.disabled\n }\n }),\n this.formField\n );\n },\n dataP() {\n return cn({\n invalid: this.$invalid,\n fluid: this.$fluid,\n filled: this.$variant === 'filled',\n [this.size]: this.size\n });\n }\n }\n};\n</script>\n","<template>\n <input type=\"text\" :class=\"cx('root')\" :value=\"d_value\" :name=\"name\" :disabled=\"disabled\" :aria-invalid=\"$invalid || undefined\" :data-p=\"dataP\" @input=\"onInput\" v-bind=\"attrs\" />\n</template>\n\n<script>\nimport { cn } from '@primeuix/utils';\nimport { mergeProps } from 'vue';\nimport BaseInputText from './BaseInputText.vue';\n\nexport default {\n name: 'InputText',\n extends: BaseInputText,\n inheritAttrs: false,\n methods: {\n onInput(event) {\n this.writeValue(event.target.value, event);\n }\n },\n computed: {\n attrs() {\n return mergeProps(\n this.ptmi('root', {\n context: {\n filled: this.$filled,\n disabled: this.disabled\n }\n }),\n this.formField\n );\n },\n dataP() {\n return cn({\n invalid: this.$invalid,\n fluid: this.$fluid,\n filled: this.$variant === 'filled',\n [this.size]: this.size\n });\n }\n }\n};\n</script>\n"],"names":["name","BaseInput","style","InputTextStyle","provide","$pcInputText","$parentInstance","BaseInputText","inheritAttrs","methods","onInput","event","writeValue","target","value","computed","attrs","mergeProps","ptmi","context","filled","$filled","disabled","formField","dataP","cn","_defineProperty","invalid","$invalid","fluid","$fluid","$variant","size","_openBlock","_createElementBlock","_mergeProps","type","_ctx","cx","d_value","undefined","$options","apply","arguments","_hoisted_1"],"mappings":";;;;;AAIA,eAAe;AACXA,EAAAA,IAAI,EAAE,eAAe;AACrB,EAAA,SAAA,EAASC,SAAS;AAClBC,EAAAA,KAAK,EAAEC,cAAc;EACrBC,OAAO,EAAA,SAAPA,OAAOA,GAAG;IACN,OAAO;AACHC,MAAAA,YAAY,EAAE,IAAI;AAClBC,MAAAA,eAAe,EAAE;KACpB;AACL;AACJ,CAAC;;;;;;ACLD,aAAe;AACXN,EAAAA,IAAI,EAAE,WAAW;AACjB,EAAA,SAAA,EAASO,QAAa;AACtBC,EAAAA,YAAY,EAAE,KAAK;AACnBC,EAAAA,OAAO,EAAE;AACLC,IAAAA,OAAO,EAAPA,SAAAA,OAAOA,CAACC,KAAK,EAAE;MACX,IAAI,CAACC,UAAU,CAACD,KAAK,CAACE,MAAM,CAACC,KAAK,EAAEH,KAAK,CAAC;AAC9C;GACH;AACDI,EAAAA,QAAQ,EAAE;IACNC,KAAK,EAAA,SAALA,KAAKA,GAAG;AACJ,MAAA,OAAOC,UAAU,CACb,IAAI,CAACC,IAAI,CAAC,MAAM,EAAE;AACdC,QAAAA,OAAO,EAAE;UACLC,MAAM,EAAE,IAAI,CAACC,OAAO;UACpBC,QAAQ,EAAE,IAAI,CAACA;AACnB;AACJ,OAAC,CAAC,EACF,IAAI,CAACC,SACT,CAAC;KACJ;IACDC,KAAK,EAAA,SAALA,KAAKA,GAAG;MACJ,OAAOC,EAAE,CAAAC,eAAA,CAAA;QACLC,OAAO,EAAE,IAAI,CAACC,QAAQ;QACtBC,KAAK,EAAE,IAAI,CAACC,MAAM;AAClBV,QAAAA,MAAM,EAAE,IAAI,CAACW,QAAS,KAAI;OACzB,EAAA,IAAI,CAACC,IAAI,EAAG,IAAI,CAACA,IAAG,CACxB,CAAC;AACN;AACJ;AACJ,CAAC;;;;ECtCG,OAAAC,SAAA,EAAA,EAAAC,kBAAA,CAAiL,SAAjLC,UAAiL,CAAA;AAA1KC,IAAAA,IAAI,EAAC;AAAQ,IAAA,OAAA,EAAOC,IAAE,CAAAC,EAAA,CAAA,MAAA,CAAA;IAAWxB,KAAK,EAAEuB,IAAO,CAAAE,OAAA;IAAGvC,IAAI,EAAEqC,IAAI,CAAArC,IAAA;IAAGsB,QAAQ,EAAEe,IAAQ,CAAAf,QAAA;AAAG,IAAA,cAAY,EAAEe,IAAS,CAAAT,QAAA,IAAGY,SAAS;IAAG,QAAM,EAAEC,QAAK,CAAAjB,KAAA;IAAGd,OAAK;aAAE+B,QAAO,CAAA/B,OAAA,IAAA+B,QAAA,CAAA/B,OAAA,CAAAgC,KAAA,CAAAD,QAAA,EAAAE,SAAA,CAAA;KAAA;KAAUF,QAAK,CAAAzB,KAAA,CAAA,EAAA,IAAA,EAAA,EAAA,EAAA4B,UAAA,CAAA;;;;;;;"}
1
+ {"version":3,"file":"index.mjs","sources":["../../src/inputtext/BaseInputText.vue","../../src/inputtext/InputText.vue","../../src/inputtext/InputText.vue?vue&type=template&id=f81a40ac&lang.js"],"sourcesContent":["<script>\nimport BaseInput from '@primevue/core/baseinput';\nimport InputTextStyle from 'primevue/inputtext/style';\n\nexport default {\n name: 'BaseInputText',\n extends: BaseInput,\n style: InputTextStyle,\n provide() {\n return {\n $pcInputText: this,\n $parentInstance: this\n };\n }\n};\n</script>\n","<template>\n <input type=\"text\" :class=\"cx('root')\" :value=\"d_value\" :name=\"name\" :disabled=\"disabled\" :aria-invalid=\"$invalid || undefined\" :data-p=\"dataP\" @input=\"onInput\" v-bind=\"attrs\" />\n</template>\n\n<script>\nimport { cn } from '@primeuix/utils';\nimport { mergeProps } from 'vue';\nimport BaseInputText from './BaseInputText.vue';\n\nexport default {\n name: 'InputText',\n extends: BaseInputText,\n inheritAttrs: false,\n methods: {\n onInput(event) {\n this.writeValue(event.target.value, event);\n }\n },\n computed: {\n attrs() {\n return mergeProps(\n this.ptmi('root', {\n context: {\n filled: this.$filled,\n disabled: this.disabled\n }\n }),\n this.formField\n );\n },\n dataP() {\n return cn({\n invalid: this.$invalid,\n fluid: this.$fluid,\n filled: this.$variant === 'filled',\n [this.size]: this.size\n });\n }\n }\n};\n</script>\n","<template>\n <input type=\"text\" :class=\"cx('root')\" :value=\"d_value\" :name=\"name\" :disabled=\"disabled\" :aria-invalid=\"$invalid || undefined\" :data-p=\"dataP\" @input=\"onInput\" v-bind=\"attrs\" />\n</template>\n\n<script>\nimport { cn } from '@primeuix/utils';\nimport { mergeProps } from 'vue';\nimport BaseInputText from './BaseInputText.vue';\n\nexport default {\n name: 'InputText',\n extends: BaseInputText,\n inheritAttrs: false,\n methods: {\n onInput(event) {\n this.writeValue(event.target.value, event);\n }\n },\n computed: {\n attrs() {\n return mergeProps(\n this.ptmi('root', {\n context: {\n filled: this.$filled,\n disabled: this.disabled\n }\n }),\n this.formField\n );\n },\n dataP() {\n return cn({\n invalid: this.$invalid,\n fluid: this.$fluid,\n filled: this.$variant === 'filled',\n [this.size]: this.size\n });\n }\n }\n};\n</script>\n"],"names":["name","BaseInput","style","InputTextStyle","provide","$pcInputText","$parentInstance","BaseInputText","inheritAttrs","methods","onInput","event","writeValue","target","value","computed","attrs","mergeProps","ptmi","context","filled","$filled","disabled","formField","dataP","cn","_defineProperty","invalid","$invalid","fluid","$fluid","$variant","size","_openBlock","_createElementBlock","_mergeProps","type","_ctx","cx","d_value","undefined","$options","apply","arguments","_hoisted_1"],"mappings":";;;;;AAIA,eAAe;AACXA,EAAAA,IAAI,EAAE,eAAe;AACrB,EAAA,SAAA,EAASC,SAAS;AAClBC,EAAAA,KAAK,EAAEC,cAAc;EACrBC,OAAO,EAAA,SAAPA,OAAOA,GAAG;IACN,OAAO;AACHC,MAAAA,YAAY,EAAE,IAAI;AAClBC,MAAAA,eAAe,EAAE;KACpB;AACL;AACJ,CAAC;;;;;;ACLD,aAAe;AACXN,EAAAA,IAAI,EAAE,WAAW;AACjB,EAAA,SAAA,EAASO,QAAa;AACtBC,EAAAA,YAAY,EAAE,KAAK;AACnBC,EAAAA,OAAO,EAAE;AACLC,IAAAA,OAAO,EAAA,SAAPA,OAAOA,CAACC,KAAK,EAAE;MACX,IAAI,CAACC,UAAU,CAACD,KAAK,CAACE,MAAM,CAACC,KAAK,EAAEH,KAAK,CAAC;AAC9C;GACH;AACDI,EAAAA,QAAQ,EAAE;IACNC,KAAK,EAAA,SAALA,KAAKA,GAAG;AACJ,MAAA,OAAOC,UAAU,CACb,IAAI,CAACC,IAAI,CAAC,MAAM,EAAE;AACdC,QAAAA,OAAO,EAAE;UACLC,MAAM,EAAE,IAAI,CAACC,OAAO;UACpBC,QAAQ,EAAE,IAAI,CAACA;AACnB;AACJ,OAAC,CAAC,EACF,IAAI,CAACC,SACT,CAAC;KACJ;IACDC,KAAK,EAAA,SAALA,KAAKA,GAAG;MACJ,OAAOC,EAAE,CAAAC,eAAA,CAAA;QACLC,OAAO,EAAE,IAAI,CAACC,QAAQ;QACtBC,KAAK,EAAE,IAAI,CAACC,MAAM;AAClBV,QAAAA,MAAM,EAAE,IAAI,CAACW,QAAO,KAAM;OAAQ,EACjC,IAAI,CAACC,IAAI,EAAG,IAAI,CAACA,IAAG,CACxB,CAAC;AACN;AACJ;AACJ,CAAC;;;;ECtCG,OAAAC,SAAA,EAAA,EAAAC,kBAAA,CAAiL,SAAjLC,UAAA,CAAiL;AAA1KC,IAAAA,IAAI,EAAC;AAAQ,IAAA,OAAA,EAAOC,IAAA,CAAAC,EAAE,CAAA,MAAA,CAAA;IAAWxB,KAAK,EAAEuB,IAAA,CAAAE,OAAO;IAAGvC,IAAI,EAAEqC,IAAA,CAAArC,IAAI;IAAGsB,QAAQ,EAAEe,IAAA,CAAAf,QAAQ;AAAG,IAAA,cAAY,EAAEe,IAAA,CAAAT,QAAO,IAAKY,SAAS;IAAG,QAAM,EAAEC,QAAA,CAAAjB,KAAK;IAAGd,OAAK;aAAE+B,QAAA,CAAA/B,OAAA,IAAA+B,QAAA,CAAA/B,OAAA,CAAAgC,KAAA,CAAAD,QAAA,EAAAE,SAAA,CAAO;KAAA;KAAUF,QAAA,CAAAzB,KAAK,CAAA,EAAA,IAAA,EAAA,EAAA,EAAA4B,UAAA,CAAA;;;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../src/keyfilter/BaseKeyFilter.js","../../src/keyfilter/KeyFilter.js"],"sourcesContent":["import BaseDirective from '@primevue/core/basedirective';\nimport KeyFilterStyle from 'primevue/keyfilter/style';\n\nconst BaseKeyFilter = BaseDirective.extend({\n style: KeyFilterStyle\n});\n\nexport default BaseKeyFilter;\n","import { isAttributeEquals } from '@primeuix/utils/dom';\nimport BaseKeyFilter from './BaseKeyFilter';\n\nconst KeyFilter = BaseKeyFilter.extend('keyfilter', {\n beforeMount(el, options) {\n let target = this.getTarget(el);\n\n if (!target) return;\n\n target.$_pkeyfilterModifier = this.getModifiers(options);\n\n if (options.value !== undefined) {\n target.$_pkeyfilterPattern = options.value?.pattern || options.value;\n target.$_pkeyfilterValidateOnly = options.value?.validateOnly || false;\n }\n\n this.bindEvents(target);\n\n target.setAttribute('data-pd-keyfilter', true);\n },\n updated(el, options) {\n let target = this.getTarget(el);\n\n if (!target) return;\n\n target.$_pkeyfilterModifier = this.getModifiers(options);\n this.unbindEvents(el, options);\n\n if (options.value !== undefined) {\n target.$_pkeyfilterPattern = options.value?.pattern || options.value;\n target.$_pkeyfilterValidateOnly = options.value?.validateOnly || false;\n }\n\n this.bindEvents(target);\n },\n unmounted(el, options) {\n this.unbindEvents(el, options);\n },\n DEFAULT_PATTERNS: {\n pint: /[\\d]/,\n int: /[\\d-]/,\n pnum: /[\\d.]/,\n money: /[\\d.\\s,]/,\n num: /[\\d-.]/,\n hex: /[0-9a-f]/i,\n email: /[a-z0-9_.-@]/i,\n alpha: /[a-z_]/i,\n alphanum: /[a-z0-9_]/\n },\n methods: {\n getTarget(el) {\n return isAttributeEquals(el, 'data-pc-name', 'inputtext') || isAttributeEquals(el, 'data-pc-name', 'textarea') ? el : null;\n },\n getModifiers(options) {\n if (options.modifiers && Object.keys(options.modifiers).length) {\n return Object.keys(options.modifiers)[Object.keys.length - 1];\n }\n\n return '';\n },\n getRegex(target) {\n return target.$_pkeyfilterPattern ? target.$_pkeyfilterPattern : target.$_pkeyfilterModifier ? this.DEFAULT_PATTERNS[target.$_pkeyfilterModifier] : /./;\n },\n bindEvents(el) {\n el.$_keyfilterKeydownEvent = (event) => this.onKeydown(event, el);\n el.$_keyfilterPasteEvent = (event) => this.onPaste(event, el);\n\n el.addEventListener('keypress', el.$_keyfilterKeydownEvent);\n el.addEventListener('paste', el.$_keyfilterPasteEvent);\n },\n unbindEvents(el) {\n el.removeEventListener('keypress', el.$_keyfilterKeydownEvent);\n el.removeEventListener('paste', el.$_keyfilterPasteEvent);\n\n el.$_keyfilterKeydownEvent = null;\n el.$_keyfilterPasteEvent = null;\n },\n onKeydown(event, target) {\n if (event.ctrlKey || event.altKey || event.metaKey || event.key === 'Tab') {\n return;\n }\n\n let regex = this.getRegex(target);\n\n if (regex === '') {\n return;\n }\n\n let testKey = `${event.key}`;\n\n if (target.$_pkeyfilterValidateOnly) {\n testKey = `${target.value.substring(0, target.selectionStart)}${event.key}${target.value.substring(target.selectionEnd)}`;\n }\n\n if (!regex.test(testKey)) {\n // runs before @update:modelValue emit\n event.preventDefault();\n }\n },\n onPaste(event, target) {\n let regex = this.getRegex(target);\n\n if (regex === '') {\n return;\n }\n\n const clipboard = event.clipboardData.getData('text');\n\n if (target.$_pkeyfilterValidateOnly) {\n const newValue = `${target.value.substring(0, target.selectionStart)}${clipboard}${target.value.substring(target.selectionEnd)}`;\n\n if (!regex.test(newValue)) {\n event.preventDefault();\n }\n } else {\n for (let i = 0; i < clipboard.length; i++) {\n if (!regex.test(clipboard[i])) {\n event.preventDefault();\n\n return;\n }\n }\n }\n }\n }\n});\n\nexport default KeyFilter;\n"],"names":["BaseKeyFilter","BaseDirective","extend","style","KeyFilterStyle","KeyFilter","beforeMount","el","options","target","getTarget","$_pkeyfilterModifier","getModifiers","value","undefined","_options$value","_options$value2","$_pkeyfilterPattern","pattern","$_pkeyfilterValidateOnly","validateOnly","bindEvents","setAttribute","updated","unbindEvents","_options$value3","_options$value4","unmounted","DEFAULT_PATTERNS","pint","pnum","money","num","hex","email","alpha","alphanum","methods","isAttributeEquals","modifiers","Object","keys","length","getRegex","_this","$_keyfilterKeydownEvent","event","onKeydown","$_keyfilterPasteEvent","onPaste","addEventListener","removeEventListener","ctrlKey","altKey","metaKey","key","regex","testKey","concat","substring","selectionStart","selectionEnd","test","preventDefault","clipboard","clipboardData","getData","newValue","i"],"mappings":"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"}
1
+ {"version":3,"file":"index.mjs","sources":["../../src/keyfilter/BaseKeyFilter.js","../../src/keyfilter/KeyFilter.js"],"sourcesContent":["import BaseDirective from '@primevue/core/basedirective';\nimport KeyFilterStyle from 'primevue/keyfilter/style';\n\nconst BaseKeyFilter = BaseDirective.extend({\n style: KeyFilterStyle\n});\n\nexport default BaseKeyFilter;\n","import { isAttributeEquals } from '@primeuix/utils/dom';\nimport BaseKeyFilter from './BaseKeyFilter';\n\nconst KeyFilter = BaseKeyFilter.extend('keyfilter', {\n beforeMount(el, options) {\n let target = this.getTarget(el);\n\n if (!target) return;\n\n target.$_pkeyfilterModifier = this.getModifiers(options);\n\n if (options.value !== undefined) {\n target.$_pkeyfilterPattern = options.value?.pattern || options.value;\n target.$_pkeyfilterValidateOnly = options.value?.validateOnly || false;\n }\n\n this.bindEvents(target);\n\n target.setAttribute('data-pd-keyfilter', true);\n },\n updated(el, options) {\n let target = this.getTarget(el);\n\n if (!target) return;\n\n target.$_pkeyfilterModifier = this.getModifiers(options);\n this.unbindEvents(el, options);\n\n if (options.value !== undefined) {\n target.$_pkeyfilterPattern = options.value?.pattern || options.value;\n target.$_pkeyfilterValidateOnly = options.value?.validateOnly || false;\n }\n\n this.bindEvents(target);\n },\n unmounted(el, options) {\n this.unbindEvents(el, options);\n },\n DEFAULT_PATTERNS: {\n pint: /[\\d]/,\n int: /[\\d-]/,\n pnum: /[\\d.]/,\n money: /[\\d.\\s,]/,\n num: /[\\d-.]/,\n hex: /[0-9a-f]/i,\n email: /[a-z0-9_.-@]/i,\n alpha: /[a-z_]/i,\n alphanum: /[a-z0-9_]/\n },\n methods: {\n getTarget(el) {\n return isAttributeEquals(el, 'data-pc-name', 'inputtext') || isAttributeEquals(el, 'data-pc-name', 'textarea') ? el : null;\n },\n getModifiers(options) {\n if (options.modifiers && Object.keys(options.modifiers).length) {\n return Object.keys(options.modifiers)[Object.keys.length - 1];\n }\n\n return '';\n },\n getRegex(target) {\n return target.$_pkeyfilterPattern ? target.$_pkeyfilterPattern : target.$_pkeyfilterModifier ? this.DEFAULT_PATTERNS[target.$_pkeyfilterModifier] : /./;\n },\n bindEvents(el) {\n el.$_keyfilterKeydownEvent = (event) => this.onKeydown(event, el);\n el.$_keyfilterPasteEvent = (event) => this.onPaste(event, el);\n\n el.addEventListener('keypress', el.$_keyfilterKeydownEvent);\n el.addEventListener('paste', el.$_keyfilterPasteEvent);\n },\n unbindEvents(el) {\n el.removeEventListener('keypress', el.$_keyfilterKeydownEvent);\n el.removeEventListener('paste', el.$_keyfilterPasteEvent);\n\n el.$_keyfilterKeydownEvent = null;\n el.$_keyfilterPasteEvent = null;\n },\n onKeydown(event, target) {\n if (event.ctrlKey || event.altKey || event.metaKey || event.key === 'Tab') {\n return;\n }\n\n let regex = this.getRegex(target);\n\n if (regex === '') {\n return;\n }\n\n let testKey = `${event.key}`;\n\n if (target.$_pkeyfilterValidateOnly) {\n testKey = `${target.value.substring(0, target.selectionStart)}${event.key}${target.value.substring(target.selectionEnd)}`;\n }\n\n if (!regex.test(testKey)) {\n // runs before @update:modelValue emit\n event.preventDefault();\n }\n },\n onPaste(event, target) {\n let regex = this.getRegex(target);\n\n if (regex === '') {\n return;\n }\n\n const clipboard = event.clipboardData.getData('text');\n\n if (target.$_pkeyfilterValidateOnly) {\n const newValue = `${target.value.substring(0, target.selectionStart)}${clipboard}${target.value.substring(target.selectionEnd)}`;\n\n if (!regex.test(newValue)) {\n event.preventDefault();\n }\n } else {\n for (let i = 0; i < clipboard.length; i++) {\n if (!regex.test(clipboard[i])) {\n event.preventDefault();\n\n return;\n }\n }\n }\n }\n }\n});\n\nexport default KeyFilter;\n"],"names":["BaseKeyFilter","BaseDirective","extend","style","KeyFilterStyle","KeyFilter","beforeMount","el","options","target","getTarget","$_pkeyfilterModifier","getModifiers","value","undefined","_options$value","_options$value2","$_pkeyfilterPattern","pattern","$_pkeyfilterValidateOnly","validateOnly","bindEvents","setAttribute","updated","unbindEvents","_options$value3","_options$value4","unmounted","DEFAULT_PATTERNS","pint","pnum","money","num","hex","email","alpha","alphanum","methods","isAttributeEquals","modifiers","Object","keys","length","getRegex","_this","$_keyfilterKeydownEvent","event","onKeydown","$_keyfilterPasteEvent","onPaste","addEventListener","removeEventListener","ctrlKey","altKey","metaKey","key","regex","testKey","concat","substring","selectionStart","selectionEnd","test","preventDefault","clipboard","clipboardData","getData","newValue","i"],"mappings":"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"}
package/knob/index.mjs CHANGED
@@ -92,7 +92,7 @@ var script = {
92
92
  midX: 50,
93
93
  midY: 50,
94
94
  minRadians: 4 * Math_PI / 3,
95
- maxRadians: -3.14159265358979 / 3
95
+ maxRadians: -Math_PI / 3
96
96
  };
97
97
  },
98
98
  methods: {
@@ -100,7 +100,7 @@ var script = {
100
100
  var dx = offsetX - this.size / 2;
101
101
  var dy = this.size / 2 - offsetY;
102
102
  var angle = Math.atan2(dy, dx);
103
- var start = -3.14159265358979 / 2 - Math_PI / 6;
103
+ var start = -Math_PI / 2 - Math_PI / 6;
104
104
  this.updateModel(angle, start);
105
105
  },
106
106
  updateModel: function updateModel(angle, start) {
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../src/knob/BaseKnob.vue","../../src/knob/Knob.vue","../../src/knob/Knob.vue?vue&type=template&id=464685c1&lang.js"],"sourcesContent":["<script>\nimport { $dt } from '@primeuix/styled';\nimport BaseEditableHolder from '@primevue/core/baseeditableholder';\nimport KnobStyle from 'primevue/knob/style';\n\nexport default {\n name: 'BaseKnob',\n extends: BaseEditableHolder,\n props: {\n size: {\n type: Number,\n default: 100\n },\n readonly: {\n type: Boolean,\n default: false\n },\n step: {\n type: Number,\n default: 1\n },\n min: {\n type: Number,\n default: 0\n },\n max: {\n type: Number,\n default: 100\n },\n valueColor: {\n type: String,\n default: () => {\n return $dt('knob.value.background').variable;\n }\n },\n rangeColor: {\n type: String,\n default: () => {\n return $dt('knob.range.background').variable;\n }\n },\n textColor: {\n type: String,\n default: () => {\n return $dt('knob.text.color').variable;\n }\n },\n strokeWidth: {\n type: Number,\n default: 14\n },\n showValue: {\n type: Boolean,\n default: true\n },\n valueTemplate: {\n type: [String, Function],\n default: '{value}'\n },\n tabindex: {\n type: Number,\n default: 0\n },\n ariaLabelledby: {\n type: String,\n default: null\n },\n ariaLabel: {\n type: String,\n default: null\n }\n },\n style: KnobStyle,\n provide() {\n return {\n $pcKnob: this,\n $parentInstance: this\n };\n }\n};\n</script>\n","<template>\n <div :class=\"cx('root')\" v-bind=\"ptmi('root')\">\n <svg\n viewBox=\"0 0 100 100\"\n role=\"slider\"\n :width=\"size\"\n :height=\"size\"\n :tabindex=\"readonly || disabled ? -1 : tabindex\"\n :aria-valuemin=\"min\"\n :aria-valuemax=\"max\"\n :aria-valuenow=\"d_value\"\n :aria-labelledby=\"ariaLabelledby\"\n :aria-label=\"ariaLabel\"\n @click=\"onClick\"\n @blur=\"onBlur\"\n @keydown=\"onKeyDown\"\n @mousedown=\"onMouseDown\"\n @mouseup=\"onMouseUp\"\n @touchstart=\"onTouchStart\"\n @touchend=\"onTouchEnd\"\n v-bind=\"ptm('svg')\"\n >\n <path :d=\"rangePath\" :stroke-width=\"strokeWidth\" :stroke=\"rangeColor\" :class=\"cx('range')\" v-bind=\"ptm('range')\"></path>\n <path :d=\"valuePath\" :stroke-width=\"strokeWidth\" :stroke=\"valueColor\" :class=\"cx('value')\" v-bind=\"ptm('value')\"></path>\n <text v-if=\"showValue\" :x=\"50\" :y=\"57\" text-anchor=\"middle\" :fill=\"textColor\" :class=\"cx('text')\" v-bind=\"ptm('text')\">{{ valueToDisplay }}</text>\n </svg>\n </div>\n</template>\n\n<script>\nimport BaseKnob from './BaseKnob.vue';\n\n// Set fix value for SSR.\nconst Math_PI = 3.14159265358979;\n\nexport default {\n name: 'Knob',\n extends: BaseKnob,\n inheritAttrs: false,\n emits: ['change'],\n data() {\n return {\n radius: 40,\n midX: 50,\n midY: 50,\n minRadians: (4 * Math_PI) / 3,\n maxRadians: -Math_PI / 3\n };\n },\n methods: {\n updateValueByOffset(offsetX, offsetY) {\n let dx = offsetX - this.size / 2;\n let dy = this.size / 2 - offsetY;\n let angle = Math.atan2(dy, dx);\n let start = -Math_PI / 2 - Math_PI / 6;\n\n this.updateModel(angle, start);\n },\n updateModel(angle, start) {\n let mappedValue;\n\n if (angle > this.maxRadians) mappedValue = this.mapRange(angle, this.minRadians, this.maxRadians, this.min, this.max);\n else if (angle < start) mappedValue = this.mapRange(angle + 2 * Math_PI, this.minRadians, this.maxRadians, this.min, this.max);\n else return;\n\n let newValue = Math.round((mappedValue - this.min) / this.step) * this.step + this.min;\n\n this.writeValue(newValue);\n this.$emit('change', newValue);\n },\n updateModelValue(newValue) {\n if (newValue > this.max) this.writeValue(this.max);\n else if (newValue < this.min) this.writeValue(this.min);\n else this.writeValue(newValue);\n },\n mapRange(x, inMin, inMax, outMin, outMax) {\n return ((x - inMin) * (outMax - outMin)) / (inMax - inMin) + outMin;\n },\n onClick(event) {\n if (!this.disabled && !this.readonly) {\n this.updateValueByOffset(event.offsetX, event.offsetY);\n }\n },\n onBlur(event) {\n this.formField.onBlur?.(event);\n },\n onMouseDown(event) {\n if (!this.disabled && !this.readonly) {\n window.addEventListener('mousemove', this.onMouseMove);\n window.addEventListener('mouseup', this.onMouseUp);\n event.preventDefault();\n }\n },\n onMouseUp(event) {\n if (!this.disabled && !this.readonly) {\n window.removeEventListener('mousemove', this.onMouseMove);\n window.removeEventListener('mouseup', this.onMouseUp);\n event.preventDefault();\n }\n },\n onTouchStart(event) {\n if (!this.disabled && !this.readonly) {\n window.addEventListener('touchmove', this.onTouchMove);\n window.addEventListener('touchend', this.onTouchEnd);\n event.preventDefault();\n }\n },\n onTouchEnd(event) {\n if (!this.disabled && !this.readonly) {\n window.removeEventListener('touchmove', this.onTouchMove);\n window.removeEventListener('touchend', this.onTouchEnd);\n event.preventDefault();\n }\n },\n onMouseMove(event) {\n if (!this.disabled && !this.readonly) {\n this.updateValueByOffset(event.offsetX, event.offsetY);\n event.preventDefault();\n }\n },\n onTouchMove(event) {\n if (!this.disabled && !this.readonly && event.touches.length == 1) {\n const rect = this.$el.getBoundingClientRect();\n const touch = event.targetTouches.item(0);\n const offsetX = touch.clientX - rect.left;\n const offsetY = touch.clientY - rect.top;\n\n this.updateValueByOffset(offsetX, offsetY);\n }\n },\n onKeyDown(event) {\n if (!this.disabled && !this.readonly) {\n switch (event.code) {\n case 'ArrowRight':\n\n case 'ArrowUp': {\n event.preventDefault();\n this.updateModelValue(this.d_value + this.step);\n break;\n }\n\n case 'ArrowLeft':\n\n case 'ArrowDown': {\n event.preventDefault();\n this.updateModelValue(this.d_value - this.step);\n break;\n }\n\n case 'Home': {\n event.preventDefault();\n this.writeValue(this.min);\n break;\n }\n\n case 'End': {\n event.preventDefault();\n this.writeValue(this.max);\n break;\n }\n\n case 'PageUp': {\n event.preventDefault();\n this.updateModelValue(this.d_value + 10);\n break;\n }\n\n case 'PageDown': {\n event.preventDefault();\n this.updateModelValue(this.d_value - 10);\n break;\n }\n }\n }\n }\n },\n computed: {\n rangePath() {\n return `M ${this.minX} ${this.minY} A ${this.radius} ${this.radius} 0 1 1 ${this.maxX} ${this.maxY}`;\n },\n valuePath() {\n return `M ${this.zeroX} ${this.zeroY} A ${this.radius} ${this.radius} 0 ${this.largeArc} ${this.sweep} ${this.valueX} ${this.valueY}`;\n },\n zeroRadians() {\n if (this.min > 0 && this.max > 0) return this.mapRange(this.min, this.min, this.max, this.minRadians, this.maxRadians);\n else return this.mapRange(0, this.min, this.max, this.minRadians, this.maxRadians);\n },\n valueRadians() {\n return this.mapRange(this.d_value, this.min, this.max, this.minRadians, this.maxRadians);\n },\n minX() {\n return this.midX + Math.cos(this.minRadians) * this.radius;\n },\n minY() {\n return this.midY - Math.sin(this.minRadians) * this.radius;\n },\n maxX() {\n return this.midX + Math.cos(this.maxRadians) * this.radius;\n },\n maxY() {\n return this.midY - Math.sin(this.maxRadians) * this.radius;\n },\n zeroX() {\n return this.midX + Math.cos(this.zeroRadians) * this.radius;\n },\n zeroY() {\n return this.midY - Math.sin(this.zeroRadians) * this.radius;\n },\n valueX() {\n return this.midX + Math.cos(this.valueRadians) * this.radius;\n },\n valueY() {\n return this.midY - Math.sin(this.valueRadians) * this.radius;\n },\n largeArc() {\n return Math.abs(this.zeroRadians - this.valueRadians) < Math_PI ? 0 : 1;\n },\n sweep() {\n return this.valueRadians > this.zeroRadians ? 0 : 1;\n },\n valueToDisplay() {\n if (typeof this.valueTemplate === 'string') {\n return this.valueTemplate.replace(/{value}/g, this.d_value);\n } else {\n return this.valueTemplate(this.d_value);\n }\n }\n }\n};\n//Derived and forked from https://github.com/kramer99/vue-knob-control\n</script>\n","<template>\n <div :class=\"cx('root')\" v-bind=\"ptmi('root')\">\n <svg\n viewBox=\"0 0 100 100\"\n role=\"slider\"\n :width=\"size\"\n :height=\"size\"\n :tabindex=\"readonly || disabled ? -1 : tabindex\"\n :aria-valuemin=\"min\"\n :aria-valuemax=\"max\"\n :aria-valuenow=\"d_value\"\n :aria-labelledby=\"ariaLabelledby\"\n :aria-label=\"ariaLabel\"\n @click=\"onClick\"\n @blur=\"onBlur\"\n @keydown=\"onKeyDown\"\n @mousedown=\"onMouseDown\"\n @mouseup=\"onMouseUp\"\n @touchstart=\"onTouchStart\"\n @touchend=\"onTouchEnd\"\n v-bind=\"ptm('svg')\"\n >\n <path :d=\"rangePath\" :stroke-width=\"strokeWidth\" :stroke=\"rangeColor\" :class=\"cx('range')\" v-bind=\"ptm('range')\"></path>\n <path :d=\"valuePath\" :stroke-width=\"strokeWidth\" :stroke=\"valueColor\" :class=\"cx('value')\" v-bind=\"ptm('value')\"></path>\n <text v-if=\"showValue\" :x=\"50\" :y=\"57\" text-anchor=\"middle\" :fill=\"textColor\" :class=\"cx('text')\" v-bind=\"ptm('text')\">{{ valueToDisplay }}</text>\n </svg>\n </div>\n</template>\n\n<script>\nimport BaseKnob from './BaseKnob.vue';\n\n// Set fix value for SSR.\nconst Math_PI = 3.14159265358979;\n\nexport default {\n name: 'Knob',\n extends: BaseKnob,\n inheritAttrs: false,\n emits: ['change'],\n data() {\n return {\n radius: 40,\n midX: 50,\n midY: 50,\n minRadians: (4 * Math_PI) / 3,\n maxRadians: -Math_PI / 3\n };\n },\n methods: {\n updateValueByOffset(offsetX, offsetY) {\n let dx = offsetX - this.size / 2;\n let dy = this.size / 2 - offsetY;\n let angle = Math.atan2(dy, dx);\n let start = -Math_PI / 2 - Math_PI / 6;\n\n this.updateModel(angle, start);\n },\n updateModel(angle, start) {\n let mappedValue;\n\n if (angle > this.maxRadians) mappedValue = this.mapRange(angle, this.minRadians, this.maxRadians, this.min, this.max);\n else if (angle < start) mappedValue = this.mapRange(angle + 2 * Math_PI, this.minRadians, this.maxRadians, this.min, this.max);\n else return;\n\n let newValue = Math.round((mappedValue - this.min) / this.step) * this.step + this.min;\n\n this.writeValue(newValue);\n this.$emit('change', newValue);\n },\n updateModelValue(newValue) {\n if (newValue > this.max) this.writeValue(this.max);\n else if (newValue < this.min) this.writeValue(this.min);\n else this.writeValue(newValue);\n },\n mapRange(x, inMin, inMax, outMin, outMax) {\n return ((x - inMin) * (outMax - outMin)) / (inMax - inMin) + outMin;\n },\n onClick(event) {\n if (!this.disabled && !this.readonly) {\n this.updateValueByOffset(event.offsetX, event.offsetY);\n }\n },\n onBlur(event) {\n this.formField.onBlur?.(event);\n },\n onMouseDown(event) {\n if (!this.disabled && !this.readonly) {\n window.addEventListener('mousemove', this.onMouseMove);\n window.addEventListener('mouseup', this.onMouseUp);\n event.preventDefault();\n }\n },\n onMouseUp(event) {\n if (!this.disabled && !this.readonly) {\n window.removeEventListener('mousemove', this.onMouseMove);\n window.removeEventListener('mouseup', this.onMouseUp);\n event.preventDefault();\n }\n },\n onTouchStart(event) {\n if (!this.disabled && !this.readonly) {\n window.addEventListener('touchmove', this.onTouchMove);\n window.addEventListener('touchend', this.onTouchEnd);\n event.preventDefault();\n }\n },\n onTouchEnd(event) {\n if (!this.disabled && !this.readonly) {\n window.removeEventListener('touchmove', this.onTouchMove);\n window.removeEventListener('touchend', this.onTouchEnd);\n event.preventDefault();\n }\n },\n onMouseMove(event) {\n if (!this.disabled && !this.readonly) {\n this.updateValueByOffset(event.offsetX, event.offsetY);\n event.preventDefault();\n }\n },\n onTouchMove(event) {\n if (!this.disabled && !this.readonly && event.touches.length == 1) {\n const rect = this.$el.getBoundingClientRect();\n const touch = event.targetTouches.item(0);\n const offsetX = touch.clientX - rect.left;\n const offsetY = touch.clientY - rect.top;\n\n this.updateValueByOffset(offsetX, offsetY);\n }\n },\n onKeyDown(event) {\n if (!this.disabled && !this.readonly) {\n switch (event.code) {\n case 'ArrowRight':\n\n case 'ArrowUp': {\n event.preventDefault();\n this.updateModelValue(this.d_value + this.step);\n break;\n }\n\n case 'ArrowLeft':\n\n case 'ArrowDown': {\n event.preventDefault();\n this.updateModelValue(this.d_value - this.step);\n break;\n }\n\n case 'Home': {\n event.preventDefault();\n this.writeValue(this.min);\n break;\n }\n\n case 'End': {\n event.preventDefault();\n this.writeValue(this.max);\n break;\n }\n\n case 'PageUp': {\n event.preventDefault();\n this.updateModelValue(this.d_value + 10);\n break;\n }\n\n case 'PageDown': {\n event.preventDefault();\n this.updateModelValue(this.d_value - 10);\n break;\n }\n }\n }\n }\n },\n computed: {\n rangePath() {\n return `M ${this.minX} ${this.minY} A ${this.radius} ${this.radius} 0 1 1 ${this.maxX} ${this.maxY}`;\n },\n valuePath() {\n return `M ${this.zeroX} ${this.zeroY} A ${this.radius} ${this.radius} 0 ${this.largeArc} ${this.sweep} ${this.valueX} ${this.valueY}`;\n },\n zeroRadians() {\n if (this.min > 0 && this.max > 0) return this.mapRange(this.min, this.min, this.max, this.minRadians, this.maxRadians);\n else return this.mapRange(0, this.min, this.max, this.minRadians, this.maxRadians);\n },\n valueRadians() {\n return this.mapRange(this.d_value, this.min, this.max, this.minRadians, this.maxRadians);\n },\n minX() {\n return this.midX + Math.cos(this.minRadians) * this.radius;\n },\n minY() {\n return this.midY - Math.sin(this.minRadians) * this.radius;\n },\n maxX() {\n return this.midX + Math.cos(this.maxRadians) * this.radius;\n },\n maxY() {\n return this.midY - Math.sin(this.maxRadians) * this.radius;\n },\n zeroX() {\n return this.midX + Math.cos(this.zeroRadians) * this.radius;\n },\n zeroY() {\n return this.midY - Math.sin(this.zeroRadians) * this.radius;\n },\n valueX() {\n return this.midX + Math.cos(this.valueRadians) * this.radius;\n },\n valueY() {\n return this.midY - Math.sin(this.valueRadians) * this.radius;\n },\n largeArc() {\n return Math.abs(this.zeroRadians - this.valueRadians) < Math_PI ? 0 : 1;\n },\n sweep() {\n return this.valueRadians > this.zeroRadians ? 0 : 1;\n },\n valueToDisplay() {\n if (typeof this.valueTemplate === 'string') {\n return this.valueTemplate.replace(/{value}/g, this.d_value);\n } else {\n return this.valueTemplate(this.d_value);\n }\n }\n }\n};\n//Derived and forked from https://github.com/kramer99/vue-knob-control\n</script>\n"],"names":["name","BaseEditableHolder","props","size","type","Number","readonly","Boolean","step","min","max","valueColor","String","default","$dt","variable","rangeColor","textColor","strokeWidth","showValue","valueTemplate","Function","tabindex","ariaLabelledby","ariaLabel","style","KnobStyle","provide","$pcKnob","$parentInstance","Math_PI","BaseKnob","inheritAttrs","emits","data","radius","midX","midY","minRadians","maxRadians","methods","updateValueByOffset","offsetX","offsetY","dx","dy","angle","Math","atan2","start","updateModel","mappedValue","mapRange","newValue","round","writeValue","$emit","updateModelValue","x","inMin","inMax","outMin","outMax","onClick","event","disabled","onBlur","_this$formField$onBlu","_this$formField","formField","call","onMouseDown","window","addEventListener","onMouseMove","onMouseUp","preventDefault","removeEventListener","onTouchStart","onTouchMove","onTouchEnd","touches","length","rect","$el","getBoundingClientRect","touch","targetTouches","item","clientX","left","clientY","top","onKeyDown","code","d_value","computed","rangePath","concat","minX","minY","maxX","maxY","valuePath","zeroX","zeroY","largeArc","sweep","valueX","valueY","zeroRadians","valueRadians","cos","sin","abs","valueToDisplay","replace","_openBlock","_createElementBlock","_mergeProps","_ctx","cx","ptmi","viewBox","role","width","height","$options","apply","arguments","onKeydown","onMousedown","onMouseup","onTouchstart","onTouchend","ptm","_createElementVNode","d","stroke","_hoisted_2","_hoisted_3","y","fill","_hoisted_4"],"mappings":"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"}
1
+ {"version":3,"file":"index.mjs","sources":["../../src/knob/BaseKnob.vue","../../src/knob/Knob.vue","../../src/knob/Knob.vue?vue&type=template&id=464685c1&lang.js"],"sourcesContent":["<script>\nimport { $dt } from '@primeuix/styled';\nimport BaseEditableHolder from '@primevue/core/baseeditableholder';\nimport KnobStyle from 'primevue/knob/style';\n\nexport default {\n name: 'BaseKnob',\n extends: BaseEditableHolder,\n props: {\n size: {\n type: Number,\n default: 100\n },\n readonly: {\n type: Boolean,\n default: false\n },\n step: {\n type: Number,\n default: 1\n },\n min: {\n type: Number,\n default: 0\n },\n max: {\n type: Number,\n default: 100\n },\n valueColor: {\n type: String,\n default: () => {\n return $dt('knob.value.background').variable;\n }\n },\n rangeColor: {\n type: String,\n default: () => {\n return $dt('knob.range.background').variable;\n }\n },\n textColor: {\n type: String,\n default: () => {\n return $dt('knob.text.color').variable;\n }\n },\n strokeWidth: {\n type: Number,\n default: 14\n },\n showValue: {\n type: Boolean,\n default: true\n },\n valueTemplate: {\n type: [String, Function],\n default: '{value}'\n },\n tabindex: {\n type: Number,\n default: 0\n },\n ariaLabelledby: {\n type: String,\n default: null\n },\n ariaLabel: {\n type: String,\n default: null\n }\n },\n style: KnobStyle,\n provide() {\n return {\n $pcKnob: this,\n $parentInstance: this\n };\n }\n};\n</script>\n","<template>\n <div :class=\"cx('root')\" v-bind=\"ptmi('root')\">\n <svg\n viewBox=\"0 0 100 100\"\n role=\"slider\"\n :width=\"size\"\n :height=\"size\"\n :tabindex=\"readonly || disabled ? -1 : tabindex\"\n :aria-valuemin=\"min\"\n :aria-valuemax=\"max\"\n :aria-valuenow=\"d_value\"\n :aria-labelledby=\"ariaLabelledby\"\n :aria-label=\"ariaLabel\"\n @click=\"onClick\"\n @blur=\"onBlur\"\n @keydown=\"onKeyDown\"\n @mousedown=\"onMouseDown\"\n @mouseup=\"onMouseUp\"\n @touchstart=\"onTouchStart\"\n @touchend=\"onTouchEnd\"\n v-bind=\"ptm('svg')\"\n >\n <path :d=\"rangePath\" :stroke-width=\"strokeWidth\" :stroke=\"rangeColor\" :class=\"cx('range')\" v-bind=\"ptm('range')\"></path>\n <path :d=\"valuePath\" :stroke-width=\"strokeWidth\" :stroke=\"valueColor\" :class=\"cx('value')\" v-bind=\"ptm('value')\"></path>\n <text v-if=\"showValue\" :x=\"50\" :y=\"57\" text-anchor=\"middle\" :fill=\"textColor\" :class=\"cx('text')\" v-bind=\"ptm('text')\">{{ valueToDisplay }}</text>\n </svg>\n </div>\n</template>\n\n<script>\nimport BaseKnob from './BaseKnob.vue';\n\n// Set fix value for SSR.\nconst Math_PI = 3.14159265358979;\n\nexport default {\n name: 'Knob',\n extends: BaseKnob,\n inheritAttrs: false,\n emits: ['change'],\n data() {\n return {\n radius: 40,\n midX: 50,\n midY: 50,\n minRadians: (4 * Math_PI) / 3,\n maxRadians: -Math_PI / 3\n };\n },\n methods: {\n updateValueByOffset(offsetX, offsetY) {\n let dx = offsetX - this.size / 2;\n let dy = this.size / 2 - offsetY;\n let angle = Math.atan2(dy, dx);\n let start = -Math_PI / 2 - Math_PI / 6;\n\n this.updateModel(angle, start);\n },\n updateModel(angle, start) {\n let mappedValue;\n\n if (angle > this.maxRadians) mappedValue = this.mapRange(angle, this.minRadians, this.maxRadians, this.min, this.max);\n else if (angle < start) mappedValue = this.mapRange(angle + 2 * Math_PI, this.minRadians, this.maxRadians, this.min, this.max);\n else return;\n\n let newValue = Math.round((mappedValue - this.min) / this.step) * this.step + this.min;\n\n this.writeValue(newValue);\n this.$emit('change', newValue);\n },\n updateModelValue(newValue) {\n if (newValue > this.max) this.writeValue(this.max);\n else if (newValue < this.min) this.writeValue(this.min);\n else this.writeValue(newValue);\n },\n mapRange(x, inMin, inMax, outMin, outMax) {\n return ((x - inMin) * (outMax - outMin)) / (inMax - inMin) + outMin;\n },\n onClick(event) {\n if (!this.disabled && !this.readonly) {\n this.updateValueByOffset(event.offsetX, event.offsetY);\n }\n },\n onBlur(event) {\n this.formField.onBlur?.(event);\n },\n onMouseDown(event) {\n if (!this.disabled && !this.readonly) {\n window.addEventListener('mousemove', this.onMouseMove);\n window.addEventListener('mouseup', this.onMouseUp);\n event.preventDefault();\n }\n },\n onMouseUp(event) {\n if (!this.disabled && !this.readonly) {\n window.removeEventListener('mousemove', this.onMouseMove);\n window.removeEventListener('mouseup', this.onMouseUp);\n event.preventDefault();\n }\n },\n onTouchStart(event) {\n if (!this.disabled && !this.readonly) {\n window.addEventListener('touchmove', this.onTouchMove);\n window.addEventListener('touchend', this.onTouchEnd);\n event.preventDefault();\n }\n },\n onTouchEnd(event) {\n if (!this.disabled && !this.readonly) {\n window.removeEventListener('touchmove', this.onTouchMove);\n window.removeEventListener('touchend', this.onTouchEnd);\n event.preventDefault();\n }\n },\n onMouseMove(event) {\n if (!this.disabled && !this.readonly) {\n this.updateValueByOffset(event.offsetX, event.offsetY);\n event.preventDefault();\n }\n },\n onTouchMove(event) {\n if (!this.disabled && !this.readonly && event.touches.length == 1) {\n const rect = this.$el.getBoundingClientRect();\n const touch = event.targetTouches.item(0);\n const offsetX = touch.clientX - rect.left;\n const offsetY = touch.clientY - rect.top;\n\n this.updateValueByOffset(offsetX, offsetY);\n }\n },\n onKeyDown(event) {\n if (!this.disabled && !this.readonly) {\n switch (event.code) {\n case 'ArrowRight':\n\n case 'ArrowUp': {\n event.preventDefault();\n this.updateModelValue(this.d_value + this.step);\n break;\n }\n\n case 'ArrowLeft':\n\n case 'ArrowDown': {\n event.preventDefault();\n this.updateModelValue(this.d_value - this.step);\n break;\n }\n\n case 'Home': {\n event.preventDefault();\n this.writeValue(this.min);\n break;\n }\n\n case 'End': {\n event.preventDefault();\n this.writeValue(this.max);\n break;\n }\n\n case 'PageUp': {\n event.preventDefault();\n this.updateModelValue(this.d_value + 10);\n break;\n }\n\n case 'PageDown': {\n event.preventDefault();\n this.updateModelValue(this.d_value - 10);\n break;\n }\n }\n }\n }\n },\n computed: {\n rangePath() {\n return `M ${this.minX} ${this.minY} A ${this.radius} ${this.radius} 0 1 1 ${this.maxX} ${this.maxY}`;\n },\n valuePath() {\n return `M ${this.zeroX} ${this.zeroY} A ${this.radius} ${this.radius} 0 ${this.largeArc} ${this.sweep} ${this.valueX} ${this.valueY}`;\n },\n zeroRadians() {\n if (this.min > 0 && this.max > 0) return this.mapRange(this.min, this.min, this.max, this.minRadians, this.maxRadians);\n else return this.mapRange(0, this.min, this.max, this.minRadians, this.maxRadians);\n },\n valueRadians() {\n return this.mapRange(this.d_value, this.min, this.max, this.minRadians, this.maxRadians);\n },\n minX() {\n return this.midX + Math.cos(this.minRadians) * this.radius;\n },\n minY() {\n return this.midY - Math.sin(this.minRadians) * this.radius;\n },\n maxX() {\n return this.midX + Math.cos(this.maxRadians) * this.radius;\n },\n maxY() {\n return this.midY - Math.sin(this.maxRadians) * this.radius;\n },\n zeroX() {\n return this.midX + Math.cos(this.zeroRadians) * this.radius;\n },\n zeroY() {\n return this.midY - Math.sin(this.zeroRadians) * this.radius;\n },\n valueX() {\n return this.midX + Math.cos(this.valueRadians) * this.radius;\n },\n valueY() {\n return this.midY - Math.sin(this.valueRadians) * this.radius;\n },\n largeArc() {\n return Math.abs(this.zeroRadians - this.valueRadians) < Math_PI ? 0 : 1;\n },\n sweep() {\n return this.valueRadians > this.zeroRadians ? 0 : 1;\n },\n valueToDisplay() {\n if (typeof this.valueTemplate === 'string') {\n return this.valueTemplate.replace(/{value}/g, this.d_value);\n } else {\n return this.valueTemplate(this.d_value);\n }\n }\n }\n};\n//Derived and forked from https://github.com/kramer99/vue-knob-control\n</script>\n","<template>\n <div :class=\"cx('root')\" v-bind=\"ptmi('root')\">\n <svg\n viewBox=\"0 0 100 100\"\n role=\"slider\"\n :width=\"size\"\n :height=\"size\"\n :tabindex=\"readonly || disabled ? -1 : tabindex\"\n :aria-valuemin=\"min\"\n :aria-valuemax=\"max\"\n :aria-valuenow=\"d_value\"\n :aria-labelledby=\"ariaLabelledby\"\n :aria-label=\"ariaLabel\"\n @click=\"onClick\"\n @blur=\"onBlur\"\n @keydown=\"onKeyDown\"\n @mousedown=\"onMouseDown\"\n @mouseup=\"onMouseUp\"\n @touchstart=\"onTouchStart\"\n @touchend=\"onTouchEnd\"\n v-bind=\"ptm('svg')\"\n >\n <path :d=\"rangePath\" :stroke-width=\"strokeWidth\" :stroke=\"rangeColor\" :class=\"cx('range')\" v-bind=\"ptm('range')\"></path>\n <path :d=\"valuePath\" :stroke-width=\"strokeWidth\" :stroke=\"valueColor\" :class=\"cx('value')\" v-bind=\"ptm('value')\"></path>\n <text v-if=\"showValue\" :x=\"50\" :y=\"57\" text-anchor=\"middle\" :fill=\"textColor\" :class=\"cx('text')\" v-bind=\"ptm('text')\">{{ valueToDisplay }}</text>\n </svg>\n </div>\n</template>\n\n<script>\nimport BaseKnob from './BaseKnob.vue';\n\n// Set fix value for SSR.\nconst Math_PI = 3.14159265358979;\n\nexport default {\n name: 'Knob',\n extends: BaseKnob,\n inheritAttrs: false,\n emits: ['change'],\n data() {\n return {\n radius: 40,\n midX: 50,\n midY: 50,\n minRadians: (4 * Math_PI) / 3,\n maxRadians: -Math_PI / 3\n };\n },\n methods: {\n updateValueByOffset(offsetX, offsetY) {\n let dx = offsetX - this.size / 2;\n let dy = this.size / 2 - offsetY;\n let angle = Math.atan2(dy, dx);\n let start = -Math_PI / 2 - Math_PI / 6;\n\n this.updateModel(angle, start);\n },\n updateModel(angle, start) {\n let mappedValue;\n\n if (angle > this.maxRadians) mappedValue = this.mapRange(angle, this.minRadians, this.maxRadians, this.min, this.max);\n else if (angle < start) mappedValue = this.mapRange(angle + 2 * Math_PI, this.minRadians, this.maxRadians, this.min, this.max);\n else return;\n\n let newValue = Math.round((mappedValue - this.min) / this.step) * this.step + this.min;\n\n this.writeValue(newValue);\n this.$emit('change', newValue);\n },\n updateModelValue(newValue) {\n if (newValue > this.max) this.writeValue(this.max);\n else if (newValue < this.min) this.writeValue(this.min);\n else this.writeValue(newValue);\n },\n mapRange(x, inMin, inMax, outMin, outMax) {\n return ((x - inMin) * (outMax - outMin)) / (inMax - inMin) + outMin;\n },\n onClick(event) {\n if (!this.disabled && !this.readonly) {\n this.updateValueByOffset(event.offsetX, event.offsetY);\n }\n },\n onBlur(event) {\n this.formField.onBlur?.(event);\n },\n onMouseDown(event) {\n if (!this.disabled && !this.readonly) {\n window.addEventListener('mousemove', this.onMouseMove);\n window.addEventListener('mouseup', this.onMouseUp);\n event.preventDefault();\n }\n },\n onMouseUp(event) {\n if (!this.disabled && !this.readonly) {\n window.removeEventListener('mousemove', this.onMouseMove);\n window.removeEventListener('mouseup', this.onMouseUp);\n event.preventDefault();\n }\n },\n onTouchStart(event) {\n if (!this.disabled && !this.readonly) {\n window.addEventListener('touchmove', this.onTouchMove);\n window.addEventListener('touchend', this.onTouchEnd);\n event.preventDefault();\n }\n },\n onTouchEnd(event) {\n if (!this.disabled && !this.readonly) {\n window.removeEventListener('touchmove', this.onTouchMove);\n window.removeEventListener('touchend', this.onTouchEnd);\n event.preventDefault();\n }\n },\n onMouseMove(event) {\n if (!this.disabled && !this.readonly) {\n this.updateValueByOffset(event.offsetX, event.offsetY);\n event.preventDefault();\n }\n },\n onTouchMove(event) {\n if (!this.disabled && !this.readonly && event.touches.length == 1) {\n const rect = this.$el.getBoundingClientRect();\n const touch = event.targetTouches.item(0);\n const offsetX = touch.clientX - rect.left;\n const offsetY = touch.clientY - rect.top;\n\n this.updateValueByOffset(offsetX, offsetY);\n }\n },\n onKeyDown(event) {\n if (!this.disabled && !this.readonly) {\n switch (event.code) {\n case 'ArrowRight':\n\n case 'ArrowUp': {\n event.preventDefault();\n this.updateModelValue(this.d_value + this.step);\n break;\n }\n\n case 'ArrowLeft':\n\n case 'ArrowDown': {\n event.preventDefault();\n this.updateModelValue(this.d_value - this.step);\n break;\n }\n\n case 'Home': {\n event.preventDefault();\n this.writeValue(this.min);\n break;\n }\n\n case 'End': {\n event.preventDefault();\n this.writeValue(this.max);\n break;\n }\n\n case 'PageUp': {\n event.preventDefault();\n this.updateModelValue(this.d_value + 10);\n break;\n }\n\n case 'PageDown': {\n event.preventDefault();\n this.updateModelValue(this.d_value - 10);\n break;\n }\n }\n }\n }\n },\n computed: {\n rangePath() {\n return `M ${this.minX} ${this.minY} A ${this.radius} ${this.radius} 0 1 1 ${this.maxX} ${this.maxY}`;\n },\n valuePath() {\n return `M ${this.zeroX} ${this.zeroY} A ${this.radius} ${this.radius} 0 ${this.largeArc} ${this.sweep} ${this.valueX} ${this.valueY}`;\n },\n zeroRadians() {\n if (this.min > 0 && this.max > 0) return this.mapRange(this.min, this.min, this.max, this.minRadians, this.maxRadians);\n else return this.mapRange(0, this.min, this.max, this.minRadians, this.maxRadians);\n },\n valueRadians() {\n return this.mapRange(this.d_value, this.min, this.max, this.minRadians, this.maxRadians);\n },\n minX() {\n return this.midX + Math.cos(this.minRadians) * this.radius;\n },\n minY() {\n return this.midY - Math.sin(this.minRadians) * this.radius;\n },\n maxX() {\n return this.midX + Math.cos(this.maxRadians) * this.radius;\n },\n maxY() {\n return this.midY - Math.sin(this.maxRadians) * this.radius;\n },\n zeroX() {\n return this.midX + Math.cos(this.zeroRadians) * this.radius;\n },\n zeroY() {\n return this.midY - Math.sin(this.zeroRadians) * this.radius;\n },\n valueX() {\n return this.midX + Math.cos(this.valueRadians) * this.radius;\n },\n valueY() {\n return this.midY - Math.sin(this.valueRadians) * this.radius;\n },\n largeArc() {\n return Math.abs(this.zeroRadians - this.valueRadians) < Math_PI ? 0 : 1;\n },\n sweep() {\n return this.valueRadians > this.zeroRadians ? 0 : 1;\n },\n valueToDisplay() {\n if (typeof this.valueTemplate === 'string') {\n return this.valueTemplate.replace(/{value}/g, this.d_value);\n } else {\n return this.valueTemplate(this.d_value);\n }\n }\n }\n};\n//Derived and forked from https://github.com/kramer99/vue-knob-control\n</script>\n"],"names":["name","BaseEditableHolder","props","size","type","Number","readonly","Boolean","step","min","max","valueColor","String","default","$dt","variable","rangeColor","textColor","strokeWidth","showValue","valueTemplate","Function","tabindex","ariaLabelledby","ariaLabel","style","KnobStyle","provide","$pcKnob","$parentInstance","Math_PI","BaseKnob","inheritAttrs","emits","data","radius","midX","midY","minRadians","maxRadians","methods","updateValueByOffset","offsetX","offsetY","dx","dy","angle","Math","atan2","start","updateModel","mappedValue","mapRange","newValue","round","writeValue","$emit","updateModelValue","x","inMin","inMax","outMin","outMax","onClick","event","disabled","onBlur","_this$formField$onBlu","_this$formField","formField","call","onMouseDown","window","addEventListener","onMouseMove","onMouseUp","preventDefault","removeEventListener","onTouchStart","onTouchMove","onTouchEnd","touches","length","rect","$el","getBoundingClientRect","touch","targetTouches","item","clientX","left","clientY","top","onKeyDown","code","d_value","computed","rangePath","concat","minX","minY","maxX","maxY","valuePath","zeroX","zeroY","largeArc","sweep","valueX","valueY","zeroRadians","valueRadians","cos","sin","abs","valueToDisplay","replace","_openBlock","_createElementBlock","_mergeProps","_ctx","cx","ptmi","viewBox","role","width","height","$options","apply","arguments","onKeydown","onMousedown","onMouseup","onTouchstart","onTouchend","ptm","_createElementVNode","d","stroke","_hoisted_2","_hoisted_3","y","fill","_hoisted_4"],"mappings":"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"}
@@ -93,6 +93,10 @@ export default {
93
93
  type: Number,
94
94
  default: 0
95
95
  },
96
+ fluid: {
97
+ type: Boolean,
98
+ default: null
99
+ },
96
100
  ariaLabel: {
97
101
  type: String,
98
102
  default: null
@@ -349,6 +349,7 @@ export default {
349
349
  let valueChanged = false;
350
350
  let value = null;
351
351
  let metaSelection = this.optionTouched ? false : this.metaKeySelection;
352
+ const _value = this.getOptionValue(option) !== '' ? this.getOptionValue(option) : this.getOptionLabel(option);
352
353
 
353
354
  if (metaSelection) {
354
355
  let metaKey = event && (event.metaKey || event.ctrlKey);
@@ -359,11 +360,11 @@ export default {
359
360
  valueChanged = true;
360
361
  }
361
362
  } else {
362
- value = this.getOptionValue(option);
363
+ value = _value;
363
364
  valueChanged = true;
364
365
  }
365
366
  } else {
366
- value = selected ? null : this.getOptionValue(option);
367
+ value = selected ? null : _value;
367
368
  valueChanged = true;
368
369
  }
369
370
 
@@ -375,18 +376,19 @@ export default {
375
376
  let selected = this.isSelected(option);
376
377
  let value = null;
377
378
  let metaSelection = this.optionTouched ? false : this.metaKeySelection;
379
+ const _value = this.getOptionValue(option) !== '' ? this.getOptionValue(option) : this.getOptionLabel(option);
378
380
 
379
381
  if (metaSelection) {
380
382
  let metaKey = event.metaKey || event.ctrlKey;
381
383
 
382
384
  if (selected) {
383
- value = metaKey ? this.removeOption(option) : [this.getOptionValue(option)];
385
+ value = metaKey ? this.removeOption(option) : [_value];
384
386
  } else {
385
387
  value = metaKey ? this.d_value || [] : [];
386
- value = [...value, this.getOptionValue(option)];
388
+ value = [...value, _value];
387
389
  }
388
390
  } else {
389
- value = selected ? this.removeOption(option) : [...(this.d_value || []), this.getOptionValue(option)];
391
+ value = selected ? this.removeOption(option) : [...(this.d_value || []), _value];
390
392
  }
391
393
 
392
394
  this.updateModel(event, value);
@@ -555,7 +557,7 @@ export default {
555
557
  return equals(value1, value2, this.equalityKey);
556
558
  },
557
559
  isSelected(option) {
558
- const optionValue = this.getOptionValue(option);
560
+ const optionValue = this.getOptionValue(option) !== '' ? this.getOptionValue(option) : this.getOptionLabel(option);
559
561
 
560
562
  if (this.multiple) return (this.d_value || []).some((value) => this.isEquals(value, optionValue));
561
563
  else return this.isEquals(this.d_value, optionValue);
@@ -314,6 +314,11 @@ export interface ListboxProps {
314
314
  * @defaultValue false
315
315
  */
316
316
  disabled?: boolean | undefined;
317
+ /**
318
+ * Spans 100% width of the container when enabled.
319
+ * @defaultValue null
320
+ */
321
+ fluid?: boolean | undefined;
317
322
  /**
318
323
  * A property to uniquely identify an option.
319
324
  */
package/listbox/index.mjs CHANGED
@@ -105,6 +105,10 @@ var script$1 = {
105
105
  type: Number,
106
106
  "default": 0
107
107
  },
108
+ fluid: {
109
+ type: Boolean,
110
+ "default": null
111
+ },
108
112
  ariaLabel: {
109
113
  type: String,
110
114
  "default": null
@@ -320,6 +324,7 @@ var script = {
320
324
  var valueChanged = false;
321
325
  var value = null;
322
326
  var metaSelection = this.optionTouched ? false : this.metaKeySelection;
327
+ var _value = this.getOptionValue(option) !== '' ? this.getOptionValue(option) : this.getOptionLabel(option);
323
328
  if (metaSelection) {
324
329
  var metaKey = event && (event.metaKey || event.ctrlKey);
325
330
  if (selected) {
@@ -328,11 +333,11 @@ var script = {
328
333
  valueChanged = true;
329
334
  }
330
335
  } else {
331
- value = this.getOptionValue(option);
336
+ value = _value;
332
337
  valueChanged = true;
333
338
  }
334
339
  } else {
335
- value = selected ? null : this.getOptionValue(option);
340
+ value = selected ? null : _value;
336
341
  valueChanged = true;
337
342
  }
338
343
  if (valueChanged) {
@@ -343,16 +348,17 @@ var script = {
343
348
  var selected = this.isSelected(option);
344
349
  var value = null;
345
350
  var metaSelection = this.optionTouched ? false : this.metaKeySelection;
351
+ var _value = this.getOptionValue(option) !== '' ? this.getOptionValue(option) : this.getOptionLabel(option);
346
352
  if (metaSelection) {
347
353
  var metaKey = event.metaKey || event.ctrlKey;
348
354
  if (selected) {
349
- value = metaKey ? this.removeOption(option) : [this.getOptionValue(option)];
355
+ value = metaKey ? this.removeOption(option) : [_value];
350
356
  } else {
351
357
  value = metaKey ? this.d_value || [] : [];
352
- value = [].concat(_toConsumableArray(value), [this.getOptionValue(option)]);
358
+ value = [].concat(_toConsumableArray(value), [_value]);
353
359
  }
354
360
  } else {
355
- value = selected ? this.removeOption(option) : [].concat(_toConsumableArray(this.d_value || []), [this.getOptionValue(option)]);
361
+ value = selected ? this.removeOption(option) : [].concat(_toConsumableArray(this.d_value || []), [_value]);
356
362
  }
357
363
  this.updateModel(event, value);
358
364
  },
@@ -508,7 +514,7 @@ var script = {
508
514
  },
509
515
  isSelected: function isSelected(option) {
510
516
  var _this4 = this;
511
- var optionValue = this.getOptionValue(option);
517
+ var optionValue = this.getOptionValue(option) !== '' ? this.getOptionValue(option) : this.getOptionLabel(option);
512
518
  if (this.multiple) return (this.d_value || []).some(function (value) {
513
519
  return _this4.isEquals(value, optionValue);
514
520
  });else return this.isEquals(this.d_value, optionValue);